| 82.35% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 18 | | adverbTagCount | 3 | | adverbTags | | 0 | "Eva said quietly [quietly]" | | 1 | "Eva said carefully [carefully]" | | 2 | "Eva said finally [finally]" |
| | dialogueSentences | 51 | | tagDensity | 0.353 | | leniency | 0.706 | | rawRatio | 0.167 | | effectiveRatio | 0.118 | |
| 83.79% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 2159 | | totalAiIsmAdverbs | 7 | | found | | | highlights | | 0 | "precisely" | | 1 | "loosely" | | 2 | "slightly" | | 3 | "carefully" | | 4 | "sharply" | | 5 | "quickly" |
| |
| 100.00% | AI-ism character names | Target: 0 AI-default names (17 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 100.00% | AI-ism location names | Target: 0 AI-default location names (33 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 60.63% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 2159 | | totalAiIsms | 17 | | found | | | highlights | | 0 | "etched" | | 1 | "intricate" | | 2 | "shattered" | | 3 | "weight" | | 4 | "calibrated" | | 5 | "chill" | | 6 | "measured" | | 7 | "electric" | | 8 | "pristine" | | 9 | "magnetic" | | 10 | "analyzed" | | 11 | "calculating" | | 12 | "flickered" | | 13 | "silence" | | 14 | "trembled" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 0 | | maxInWindow | 0 | | found | (empty) | | highlights | (empty) | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 125 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 0 | | narrationSentences | 125 | | filterMatches | | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 157 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 57 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 2185 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 29 | | unquotedAttributions | 0 | | matches | (empty) | |
| 16.67% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 66 | | wordCount | 1558 | | uniqueNames | 15 | | maxNameDensity | 1.67 | | worstName | "Quinn" | | maxWindowNameDensity | 4.5 | | worstWindowName | "Quinn" | | discoveredNames | | Harlow | 2 | | Quinn | 26 | | Tube | 2 | | Transport | 1 | | London | 1 | | Hargreaves | 3 | | Bermondsey | 2 | | Aaron | 1 | | Morris | 3 | | Eva | 19 | | Kowalski | 2 | | Veil | 1 | | Compass | 1 | | Camden | 1 | | Detective | 1 |
| | persons | | 0 | "Harlow" | | 1 | "Quinn" | | 2 | "Aaron" | | 3 | "Morris" | | 4 | "Eva" | | 5 | "Kowalski" |
| | places | | 0 | "Tube" | | 1 | "Transport" | | 2 | "London" | | 3 | "Hargreaves" | | 4 | "Bermondsey" | | 5 | "Compass" |
| | globalScore | 0.666 | | windowScore | 0.167 | |
| 63.79% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 87 | | glossingSentenceCount | 3 | | matches | | 0 | "as if lying down to sleep" | | 1 | "smelled like ozone before a storm, sharp a" | | 2 | "something like it once before" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 2 | | per1kWords | 0.915 | | wordCount | 2185 | | matches | | 0 | "not north but toward the tunnel mouth at the far end of the platform, into" | | 1 | "not clutched in rigor but held, suggesting he'd been holding it" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 157 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 65 | | mean | 33.62 | | std | 30.13 | | cv | 0.896 | | sampleLengths | | 0 | 28 | | 1 | 104 | | 2 | 6 | | 3 | 47 | | 4 | 6 | | 5 | 3 | | 6 | 77 | | 7 | 65 | | 8 | 73 | | 9 | 5 | | 10 | 13 | | 11 | 103 | | 12 | 6 | | 13 | 7 | | 14 | 106 | | 15 | 2 | | 16 | 87 | | 17 | 11 | | 18 | 21 | | 19 | 56 | | 20 | 52 | | 21 | 11 | | 22 | 6 | | 23 | 14 | | 24 | 57 | | 25 | 23 | | 26 | 72 | | 27 | 7 | | 28 | 5 | | 29 | 16 | | 30 | 36 | | 31 | 34 | | 32 | 2 | | 33 | 9 | | 34 | 30 | | 35 | 26 | | 36 | 17 | | 37 | 58 | | 38 | 93 | | 39 | 22 | | 40 | 2 | | 41 | 1 | | 42 | 19 | | 43 | 71 | | 44 | 4 | | 45 | 11 | | 46 | 73 | | 47 | 48 | | 48 | 1 | | 49 | 83 |
| |
| 82.81% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 8 | | totalSentences | 125 | | matches | | 0 | "been placed" | | 1 | "been sealed" | | 2 | "been swept" | | 3 | "was curled" | | 4 | "was coated" | | 5 | "was etched" | | 6 | "been dragged" | | 7 | "been moved" | | 8 | "been dismantled" | | 9 | "been calibrated" |
| |
| 22.56% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 7 | | totalVerbs | 263 | | matches | | 0 | "was already cooling" | | 1 | "was losing" | | 2 | "was clutching" | | 3 | "was writing" | | 4 | "was watching" | | 5 | "was pointing" | | 6 | "was only beginning" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 13 | | semicolonCount | 0 | | flaggedSentences | 12 | | totalSentences | 157 | | ratio | 0.076 | | matches | | 0 | "The air down here tasted of chalk dust and something else — something faintly metallic, like the residue left when you struck flint against steel." | | 1 | "His eyes were open, fixed on the vaulted ceiling with an expression she'd seen only once before — three years ago, in a warehouse in Bermondsey, on the face of DS Aaron Morris." | | 2 | "She studied his hands — clean, manicured, no defensive wounds, no bruising on the knuckles." | | 3 | "The evidence didn't make sense, and she had learned years ago to pay attention to that feeling — the specific cognitive friction of a scene that resisted narrative." | | 4 | "His shoes — expensive brogues, recently polished — showed no scuffing on the heels." | | 5 | "They'd been dismantled in haste — she could see the ghost outlines on the concrete where tables had stood, the faint rectangles of dust disruption, a dropped cloth here, a scattering of dried herbs there." | | 6 | "Quinn could see the calculation happening behind those round glasses — the weighing of cooperation against self-preservation, the silent negotiation that people conducted with themselves when they knew more than they wanted to admit." | | 7 | "It didn't smell like anything she could name — not alcohol, not chemical, not organic decay." | | 8 | "The compass gripped loosely — not clutched in rigor but held, suggesting he'd been holding it when he died." | | 9 | "She looked at the compass needle pointing into the darkness, then at the dead man's astonished face, and then at Eva Kowalski, who was watching her with an expression that balanced precariously between relief and dread — the look of someone who'd been carrying a secret and had just realized someone else could see the shape of it." | | 10 | "Behind her glasses, her green eyes were wide and calculating and, Quinn thought, frightened — but not of the detective." | | 11 | "Somewhere deep in the tunnel, in the direction the compass pointed, something shifted — a sound like settling earth, or like a breath drawn and held." |
| |
| 94.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1548 | | adjectiveStacks | 1 | | stackExamples | | 0 | "terrible open-mouthed wonder," |
| | adverbCount | 57 | | adverbRatio | 0.03682170542635659 | | lyAdverbCount | 21 | | lyAdverbRatio | 0.013565891472868217 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 157 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 157 | | mean | 13.92 | | std | 12.36 | | cv | 0.888 | | sampleLengths | | 0 | 28 | | 1 | 23 | | 2 | 25 | | 3 | 56 | | 4 | 6 | | 5 | 7 | | 6 | 14 | | 7 | 26 | | 8 | 6 | | 9 | 3 | | 10 | 11 | | 11 | 13 | | 12 | 3 | | 13 | 33 | | 14 | 2 | | 15 | 2 | | 16 | 1 | | 17 | 12 | | 18 | 17 | | 19 | 15 | | 20 | 1 | | 21 | 15 | | 22 | 11 | | 23 | 6 | | 24 | 2 | | 25 | 25 | | 26 | 3 | | 27 | 2 | | 28 | 15 | | 29 | 26 | | 30 | 5 | | 31 | 13 | | 32 | 12 | | 33 | 28 | | 34 | 7 | | 35 | 9 | | 36 | 4 | | 37 | 14 | | 38 | 6 | | 39 | 23 | | 40 | 6 | | 41 | 7 | | 42 | 35 | | 43 | 26 | | 44 | 15 | | 45 | 8 | | 46 | 22 | | 47 | 2 | | 48 | 22 | | 49 | 21 |
| |
| 52.65% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 14 | | diversityRatio | 0.36942675159235666 | | totalSentences | 157 | | uniqueOpeners | 58 | |
| 90.09% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 3 | | totalSentences | 111 | | matches | | 0 | "Then Eva ducked under the" | | 1 | "Still pointing toward the tunnel" | | 2 | "Somewhere deep in the tunnel," |
| | ratio | 0.027 | |
| 90.27% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 36 | | totalSentences | 111 | | matches | | 0 | "She ducked under the crime" | | 1 | "He was young, eager, and" | | 2 | "His eyes were open, fixed" | | 3 | "She pressed two fingers against" | | 4 | "Her worn leather watch ticked" | | 5 | "She studied his hands —" | | 6 | "His left hand was curled" | | 7 | "She leaned closer without touching" | | 8 | "His coat wasn't rumpled." | | 9 | "His shoes — expensive brogues," | | 10 | "He hadn't been moved after" | | 11 | "He'd walked here under his" | | 12 | "They'd been dismantled in haste" | | 13 | "She was short, freckled, with" | | 14 | "She had a worn leather" | | 15 | "Her face went pale beneath" | | 16 | "It wasn't a question." | | 17 | "She crouched where Quinn had" | | 18 | "Her breath fogged briefly in" | | 19 | "She stopped, recalibrated" |
| | ratio | 0.324 | |
| 59.10% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 89 | | totalSentences | 111 | | matches | | 0 | "The body lay on the" | | 1 | "She ducked under the crime" | | 2 | "The air down here tasted" | | 3 | "The station had been sealed" | | 4 | "DC Hargreaves looked up from" | | 5 | "He was young, eager, and" | | 6 | "Quinn pulled on her nitrile" | | 7 | "His eyes were open, fixed" | | 8 | "She pressed two fingers against" | | 9 | "Her worn leather watch ticked" | | 10 | "She studied his hands —" | | 11 | "His left hand was curled" | | 12 | "She leaned closer without touching" | | 13 | "The casing was coated in" | | 14 | "Symbols of some kind, intricate" | | 15 | "The needle was frozen, pointing" | | 16 | "Quinn straightened and let her" | | 17 | "The evidence didn't make sense," | | 18 | "His coat wasn't rumpled." | | 19 | "His shoes — expensive brogues," |
| | ratio | 0.802 | |
| 45.05% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 111 | | matches | | | ratio | 0.009 | |
| 23.81% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 54 | | technicalSentenceCount | 9 | | matches | | 0 | "The station had been sealed off from the Tube network decades ago, according to Transport for London's records, but the fluorescent work lamps her team had set …" | | 1 | "Male, mid-thirties, dressed in a dark wool coat that had cost serious money." | | 2 | "The evidence didn't make sense, and she had learned years ago to pay attention to that feeling — the specific cognitive friction of a scene that resisted narrat…" | | 3 | "He'd walked here under his own power and died standing up, then settled onto the platform edge as if lying down to sleep." | | 4 | "She was short, freckled, with a halo of curly red hair pulled back with a clip that was losing the battle." | | 5 | "She had a worn leather satchel slung across her body that sagged with the unmistakable weight of books, and she was clutching a small white card that she held u…" | | 6 | "Quinn could see the calculation happening behind those round glasses — the weighing of cooperation against self-preservation, the silent negotiation that people…" | | 7 | "She looked at the compass needle pointing into the darkness, then at the dead man's astonished face, and then at Eva Kowalski, who was watching her with an expr…" | | 8 | "The needle trembled faintly, straining toward the tunnel mouth, toward whatever invisible threshold the market had worn thin with its gatherings and its strange…" |
| |
| 97.22% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 18 | | uselessAdditionCount | 1 | | matches | | 0 | "The words came out, her hand flying to her ear again" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 10 | | fancyCount | 2 | | fancyTags | | 0 | "Quinn repeated (repeat)" | | 1 | "she murmured (murmur)" |
| | dialogueSentences | 51 | | tagDensity | 0.196 | | leniency | 0.392 | | rawRatio | 0.2 | | effectiveRatio | 0.078 | |