| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 2 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 4 | | tagDensity | 0.5 | | leniency | 1 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 84.76% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1312 | | totalAiIsmAdverbs | 4 | | found | | | highlights | | |
| 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) | |
| 92.38% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1312 | | totalAiIsms | 2 | | found | | | highlights | | |
| 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 | 73 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 2 | | hedgeCount | 0 | | narrationSentences | 73 | | filterMatches | | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 74 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 66 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 9 | | markdownWords | 46 | | totalWords | 1324 | | ratio | 0.035 | | matches | | 0 | "Charing Cross, February the ninth, two litres of blood on your kitchen floor" | | 1 | "misadventure" | | 2 | "Tomás!" | | 3 | "go" | | 4 | "Way Out" | | 5 | "What do you say?" | | 6 | "taught" | | 7 | "nobody ever died of being patient." | | 8 | "So you did know something, Danny. You knew and you never said, and then it killed you." |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 5 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 41 | | wordCount | 1317 | | uniqueNames | 26 | | maxNameDensity | 0.61 | | worstName | "Quinn" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Quinn" | | discoveredNames | | Quinn | 8 | | Vauxhall | 1 | | Hawley | 1 | | Crescent | 1 | | Tomás | 1 | | Herrera | 6 | | Soho | 1 | | March | 1 | | Cross | 1 | | February | 1 | | Morris | 3 | | Regent | 1 | | Park | 1 | | Camden | 2 | | Road | 1 | | Deptford | 1 | | Tuesday | 1 | | Control | 1 | | Stables | 1 | | Underground | 1 | | Except | 1 | | London | 1 | | Danny | 1 | | Seville | 1 | | Saint | 1 | | Christopher | 1 |
| | persons | | 0 | "Quinn" | | 1 | "Tomás" | | 2 | "Herrera" | | 3 | "Morris" | | 4 | "Regent" | | 5 | "Stables" | | 6 | "Except" | | 7 | "Danny" | | 8 | "Saint" | | 9 | "Christopher" |
| | places | | 0 | "Vauxhall" | | 1 | "Hawley" | | 2 | "Crescent" | | 3 | "Soho" | | 4 | "March" | | 5 | "Camden" | | 6 | "Road" | | 7 | "Deptford" | | 8 | "London" | | 9 | "Seville" |
| | globalScore | 1 | | windowScore | 1 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 53 | | glossingSentenceCount | 1 | | matches | | 0 | "something like burnt sugar and old pennies," |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1324 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 74 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 26 | | mean | 50.92 | | std | 42 | | cv | 0.825 | | sampleLengths | | 0 | 22 | | 1 | 80 | | 2 | 150 | | 3 | 53 | | 4 | 11 | | 5 | 6 | | 6 | 46 | | 7 | 6 | | 8 | 85 | | 9 | 112 | | 10 | 22 | | 11 | 78 | | 12 | 12 | | 13 | 58 | | 14 | 7 | | 15 | 109 | | 16 | 20 | | 17 | 84 | | 18 | 5 | | 19 | 126 | | 20 | 21 | | 21 | 88 | | 22 | 20 | | 23 | 63 | | 24 | 8 | | 25 | 32 |
| |
| 86.04% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 4 | | totalSentences | 73 | | matches | | 0 | "been taught" | | 1 | "been closed" | | 2 | "been taught" | | 3 | "was frightened" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 210 | | matches | | 0 | "was already going" | | 1 | "was doing" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 12 | | semicolonCount | 1 | | flaggedSentences | 7 | | totalSentences | 74 | | ratio | 0.095 | | matches | | 0 | "She'd seen it a hundred times at scenes — that unhurried, economical stride that got you where you needed to be without burning anything you'd want later." | | 1 | "The others in that bar in Soho — the tall one who owned it, the girl who never blinked, the man with the burnt hands — they had lawyers and silences and an unnerving talent for being somewhere else." | | 2 | "He saw her the moment she stepped out — she'd known he would; the streetlight was behind her and there was no clever way to leave a car — and for a half-second neither of them moved." | | 3 | "Four mornings a week around Regent's Park in whatever the sky was doing, and she found the rhythm now, breath in through the nose, weight forward, and she began — slowly, meanly — to close." | | 4 | "Neon smeared past — a kebab shop, a tattoo parlour with its shutter half down, a bin bag split open across the kerb spilling paper cups into the flood." | | 5 | "Beyond it was a stairwell going down — proper municipal tiling, cream and oxblood, the kind that used to say *Way Out* — and the stairs were dry, which made no sense at all in this weather, and warm air came up out of them carrying that smell of pennies and caramel and something green and living." | | 6 | "Somewhere in that noise was a twenty-nine-year-old man from Seville with a Saint Christopher round his neck and a bag full of things he shouldn't have, and Herrera was frightened of her — she'd seen it in the interview room, she'd seen it just now on the towpath — and frightened men talk." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1315 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 29 | | adverbRatio | 0.022053231939163497 | | lyAdverbCount | 6 | | lyAdverbRatio | 0.0045627376425855515 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 74 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 74 | | mean | 17.89 | | std | 16.24 | | cv | 0.908 | | sampleLengths | | 0 | 22 | | 1 | 40 | | 2 | 11 | | 3 | 2 | | 4 | 27 | | 5 | 20 | | 6 | 5 | | 7 | 6 | | 8 | 39 | | 9 | 14 | | 10 | 66 | | 11 | 6 | | 12 | 2 | | 13 | 45 | | 14 | 5 | | 15 | 3 | | 16 | 3 | | 17 | 6 | | 18 | 37 | | 19 | 6 | | 20 | 3 | | 21 | 5 | | 22 | 1 | | 23 | 25 | | 24 | 20 | | 25 | 5 | | 26 | 35 | | 27 | 12 | | 28 | 14 | | 29 | 38 | | 30 | 29 | | 31 | 19 | | 32 | 22 | | 33 | 22 | | 34 | 3 | | 35 | 53 | | 36 | 4 | | 37 | 8 | | 38 | 28 | | 39 | 4 | | 40 | 26 | | 41 | 7 | | 42 | 9 | | 43 | 1 | | 44 | 2 | | 45 | 57 | | 46 | 10 | | 47 | 3 | | 48 | 1 | | 49 | 26 |
| |
| 74.32% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 5 | | diversityRatio | 0.4864864864864865 | | totalSentences | 74 | | uniqueOpeners | 36 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 3 | | totalSentences | 68 | | matches | | 0 | "Then he ran." | | 1 | "Somewhere in that noise was" | | 2 | "Then she stepped through the" |
| | ratio | 0.044 | |
| 43.53% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 30 | | totalSentences | 68 | | matches | | 0 | "She sat low in the" | | 1 | "He walked like a man" | | 2 | "She'd seen it a hundred" | | 3 | "She'd sat across from him" | | 4 | "He'd walked out in ninety" | | 5 | "She'd stood in the car" | | 6 | "He saw her the moment" | | 7 | "She was already going" | | 8 | "He went east along the" | | 9 | "He was twelve years younger" | | 10 | "He took the stairs up" | | 11 | "she shouted at his back," | | 12 | "He turned left where the" | | 13 | "She smelled fat and rot" | | 14 | "Her legs kept going." | | 15 | "Her mind went very quiet" | | 16 | "He hit a panel with" | | 17 | "She put her palm flat" | | 18 | "Her radio was in her" | | 19 | "She took it out and" |
| | ratio | 0.441 | |
| 100.00% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 48 | | totalSentences | 68 | | matches | | 0 | "The rain had been going" | | 1 | "She sat low in the" | | 2 | "He walked like a man" | | 3 | "She'd seen it a hundred" | | 4 | "Herrera wasn't one of them." | | 5 | "The others in that bar" | | 6 | "Herrera had a face that" | | 7 | "She'd sat across from him" | | 8 | "He'd walked out in ninety" | | 9 | "She'd stood in the car" | | 10 | "Herrera stopped under the bridge." | | 11 | "Quinn's hand found the door" | | 12 | "He saw her the moment" | | 13 | "She was already going" | | 14 | "He went east along the" | | 15 | "He was twelve years younger" | | 16 | "He took the stairs up" | | 17 | "A black cab locked its" | | 18 | "Neon smeared past — a" | | 19 | "Every light in Camden had" |
| | ratio | 0.706 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 68 | | matches | (empty) | | ratio | 0 | |
| 87.91% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 39 | | technicalSentenceCount | 3 | | matches | | 0 | "She'd seen it a hundred times at scenes — that unhurried, economical stride that got you where you needed to be without burning anything you'd want later." | | 1 | "She'd stood in the car park afterwards in the sleet and thought about DS Morris and the way the file on his death had been closed with the word *misadventure*, …" | | 2 | "Beyond it was a stairwell going down — proper municipal tiling, cream and oxblood, the kind that used to say *Way Out* — and the stairs were dry, which made no …" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 2 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 0.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 2 | | fancyCount | 1 | | fancyTags | | | dialogueSentences | 4 | | tagDensity | 0.5 | | leniency | 1 | | rawRatio | 0.5 | | effectiveRatio | 0.5 | |