| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 12 | | adverbTagCount | 1 | | adverbTags | | 0 | "she said quietly [quietly]" |
| | dialogueSentences | 32 | | tagDensity | 0.375 | | leniency | 0.75 | | rawRatio | 0.083 | | effectiveRatio | 0.063 | |
| 65.58% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1743 | | totalAiIsmAdverbs | 12 | | found | | | highlights | | 0 | "carefully" | | 1 | "sharply" | | 2 | "suddenly" | | 3 | "softly" | | 4 | "completely" | | 5 | "very" | | 6 | "slowly" |
| |
| 80.00% | AI-ism character names | Target: 0 AI-default names (17 tracked, −20% each) | | codexExemptions | (empty) | | found | | |
| 100.00% | AI-ism location names | Target: 0 AI-default location names (33 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 65.58% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1743 | | totalAiIsms | 12 | | found | | | highlights | | 0 | "footfall" | | 1 | "measured" | | 2 | "perfect" | | 3 | "weight" | | 4 | "etched" | | 5 | "stomach" | | 6 | "trembled" | | 7 | "racing" | | 8 | "could feel" | | 9 | "comfortable" |
| |
| 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 | 117 | | matches | (empty) | |
| 81.81% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 4 | | narrationSentences | 117 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 137 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 47 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1736 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 19 | | unquotedAttributions | 0 | | matches | (empty) | |
| 97.05% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 43 | | wordCount | 1322 | | uniqueNames | 12 | | maxNameDensity | 1.06 | | worstName | "Quinn" | | maxWindowNameDensity | 2 | | worstWindowName | "Quinn" | | discoveredNames | | Tube | 2 | | Harlow | 5 | | Quinn | 14 | | London | 2 | | Patel | 10 | | Underground | 1 | | Northern | 1 | | Kowalski | 1 | | Aurora | 2 | | Eva | 2 | | Morris | 1 | | Detective | 2 |
| | persons | | 0 | "Harlow" | | 1 | "Quinn" | | 2 | "Patel" | | 3 | "Kowalski" | | 4 | "Aurora" | | 5 | "Eva" | | 6 | "Morris" |
| | places | | | globalScore | 0.97 | | windowScore | 1 | |
| 63.79% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 87 | | glossingSentenceCount | 3 | | matches | | 0 | "quite make out in the poor light—a circle bisected by three jagged lines" | | 1 | "darkness that seemed to drink the light from her torch" | | 2 | "looked like he wanted to argue, then thou" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1736 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 137 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 56 | | mean | 31 | | std | 23.58 | | cv | 0.761 | | sampleLengths | | 0 | 74 | | 1 | 88 | | 2 | 16 | | 3 | 64 | | 4 | 54 | | 5 | 3 | | 6 | 25 | | 7 | 47 | | 8 | 2 | | 9 | 42 | | 10 | 59 | | 11 | 11 | | 12 | 12 | | 13 | 35 | | 14 | 43 | | 15 | 60 | | 16 | 31 | | 17 | 13 | | 18 | 2 | | 19 | 8 | | 20 | 34 | | 21 | 70 | | 22 | 42 | | 23 | 33 | | 24 | 48 | | 25 | 35 | | 26 | 3 | | 27 | 71 | | 28 | 6 | | 29 | 18 | | 30 | 2 | | 31 | 57 | | 32 | 17 | | 33 | 64 | | 34 | 15 | | 35 | 5 | | 36 | 20 | | 37 | 3 | | 38 | 5 | | 39 | 72 | | 40 | 13 | | 41 | 47 | | 42 | 30 | | 43 | 28 | | 44 | 47 | | 45 | 7 | | 46 | 25 | | 47 | 1 | | 48 | 18 | | 49 | 42 |
| |
| 78.27% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 9 | | totalSentences | 117 | | matches | | 0 | "was stretched" | | 1 | "been closed" | | 2 | "was caved" | | 3 | "been cordoned" | | 4 | "been scraped" | | 5 | "been bricked" | | 6 | "were gone" | | 7 | "was etched" | | 8 | "were blackened" |
| |
| 46.39% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 5 | | totalVerbs | 217 | | matches | | 0 | "was staring" | | 1 | "was listening" | | 2 | "was already racing" | | 3 | "was photographing" | | 4 | "wasn’t planning" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 6 | | semicolonCount | 1 | | flaggedSentences | 7 | | totalSentences | 137 | | ratio | 0.051 | | matches | | 0 | "The abandoned Tube platform smelled of mildew, ozone, and something sharper—iron and scorched paper." | | 1 | "The platform had been closed for six years; the only people who should have known how to get down here were maintenance crews and urban explorers." | | 2 | "Etched on one side was a symbol she couldn’t quite make out in the poor light—a circle bisected by three jagged lines." | | 3 | "Beneath the hum of the generator and the distant rumble of early morning trains on the Northern line, she could hear something else—whispers, like dozens of voices speaking at once just below the threshold of hearing." | | 4 | "The face was etched with symbols she didn’t recognize—circles, triangles, something that looked almost like a stylized eye." | | 5 | "Harlow had met her twice—at Aurora’s birthday last year and again at some pretentious gallery opening." | | 6 | "After three years working together he knew that look on her face—the one that said she’d already stepped off the normal path and wasn’t planning on coming back anytime soon." |
| |
| 81.57% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1332 | | adjectiveStacks | 1 | | stackExamples | | 0 | "quiet red-haired woman" |
| | adverbCount | 69 | | adverbRatio | 0.0518018018018018 | | lyAdverbCount | 30 | | lyAdverbRatio | 0.02252252252252252 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 137 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 137 | | mean | 12.67 | | std | 8.77 | | cv | 0.692 | | sampleLengths | | 0 | 14 | | 1 | 24 | | 2 | 12 | | 3 | 24 | | 4 | 25 | | 5 | 23 | | 6 | 18 | | 7 | 22 | | 8 | 13 | | 9 | 3 | | 10 | 13 | | 11 | 18 | | 12 | 18 | | 13 | 15 | | 14 | 23 | | 15 | 1 | | 16 | 26 | | 17 | 4 | | 18 | 3 | | 19 | 25 | | 20 | 7 | | 21 | 12 | | 22 | 8 | | 23 | 13 | | 24 | 7 | | 25 | 2 | | 26 | 12 | | 27 | 30 | | 28 | 11 | | 29 | 6 | | 30 | 19 | | 31 | 23 | | 32 | 11 | | 33 | 3 | | 34 | 9 | | 35 | 27 | | 36 | 8 | | 37 | 4 | | 38 | 39 | | 39 | 3 | | 40 | 9 | | 41 | 23 | | 42 | 3 | | 43 | 22 | | 44 | 12 | | 45 | 16 | | 46 | 3 | | 47 | 5 | | 48 | 8 | | 49 | 2 |
| |
| 66.67% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 6 | | diversityRatio | 0.4264705882352941 | | totalSentences | 136 | | uniqueOpeners | 58 | |
| 61.16% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 2 | | totalSentences | 109 | | matches | | 0 | "Only now the bricks were" | | 1 | "Then, very slowly, it began" |
| | ratio | 0.018 | |
| 95.23% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 34 | | totalSentences | 109 | | matches | | 0 | "Her boots rang against the" | | 1 | "His right hand was stretched" | | 2 | "His round face was tighter" | | 3 | "He’d been first on scene" | | 4 | "She crouched beside the corpse" | | 5 | "She tilted her head, considering" | | 6 | "She rose, knees popping faintly," | | 7 | "She ran a gloved finger" | | 8 | "she said quietly" | | 9 | "She was staring at the" | | 10 | "She photographed it with her" | | 11 | "Her skin prickled." | | 12 | "she said, voice low" | | 13 | "He hesitated just long enough" | | 14 | "She moved along the platform" | | 15 | "She played the beam across" | | 16 | "It clung to the edges" | | 17 | "She was listening." | | 18 | "She crouched again, examining the" | | 19 | "Her stomach tightened." |
| | ratio | 0.312 | |
| 47.16% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 90 | | totalSentences | 109 | | matches | | 0 | "The abandoned Tube platform smelled" | | 1 | "Detective Harlow Quinn descended the" | | 2 | "Her boots rang against the" | | 3 | "The body lay halfway between" | | 4 | "A man in his late" | | 5 | "His right hand was stretched" | | 6 | "a voice called from the" | | 7 | "DS Patel stepped into the" | | 8 | "His round face was tighter" | | 9 | "He’d been first on scene" | | 10 | "Quinn noted the tremor in" | | 11 | "She crouched beside the corpse" | | 12 | "The platform had been closed" | | 13 | "This man was neither." | | 14 | "Quinn studied the angle of" | | 15 | "The blood had flowed mostly" | | 16 | "The back of his skull" | | 17 | "She tilted her head, considering" | | 18 | "Patel gestured toward a chunk" | | 19 | "She rose, knees popping faintly," |
| | ratio | 0.826 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 109 | | matches | (empty) | | ratio | 0 | |
| 58.11% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 59 | | technicalSentenceCount | 7 | | matches | | 0 | "Detective Harlow Quinn descended the emergency stairwell with the calm precision of a woman who had walked into worse places and walked out again." | | 1 | "The body lay halfway between the platform edge and the tiled wall, face-down in a spreading pool of blood that had already begun to congeal." | | 2 | "A man in his late thirties, expensive coat, expensive shoes, the kind of tailored wool that cost more than most people’s monthly rent." | | 3 | "His right hand was stretched out as though he’d been trying to reach something just beyond his fingertips." | | 4 | "She ran a gloved finger along a horizontal line that didn’t belong, a perfect seam where mortar had been scraped away and replaced." | | 5 | "The front of the expensive coat was soaked through with blood that had nothing to do with blunt force trauma." | | 6 | "A single clean puncture wound directly over the heart, the edges cauterized as though burned from the inside." |
| |
| 83.33% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 12 | | uselessAdditionCount | 1 | | matches | | |
| 56.25% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 9 | | fancyCount | 3 | | fancyTags | | 0 | "She sniffed (sniff)" | | 1 | "Patel muttered (mutter)" | | 2 | "Quinn murmured (murmur)" |
| | dialogueSentences | 32 | | tagDensity | 0.281 | | leniency | 0.563 | | rawRatio | 0.333 | | effectiveRatio | 0.188 | |