| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 10 | | adverbTagCount | 1 | | adverbTags | | 0 | "Eva said quietly [quietly]" |
| | dialogueSentences | 41 | | tagDensity | 0.244 | | leniency | 0.488 | | rawRatio | 0.1 | | effectiveRatio | 0.049 | |
| 93.75% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1600 | | totalAiIsmAdverbs | 2 | | 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) | |
| 87.50% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1600 | | totalAiIsms | 4 | | found | | | highlights | | 0 | "etched" | | 1 | "chill" | | 2 | "could feel" | | 3 | "pulse" |
| |
| 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 | 100 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 0 | | narrationSentences | 100 | | filterMatches | (empty) | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 131 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 63 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1587 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 11 | | unquotedAttributions | 0 | | matches | (empty) | |
| 66.67% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 31 | | wordCount | 1192 | | uniqueNames | 9 | | maxNameDensity | 1.26 | | worstName | "Quinn" | | maxWindowNameDensity | 3 | | worstWindowName | "Quinn" | | discoveredNames | | Harlow | 1 | | Quinn | 15 | | Camden | 2 | | Town | 1 | | London | 1 | | North | 1 | | Eva | 8 | | Kowalski | 1 | | Morris | 1 |
| | persons | | 0 | "Harlow" | | 1 | "Quinn" | | 2 | "Eva" | | 3 | "Kowalski" | | 4 | "Morris" |
| | places | | 0 | "Camden" | | 1 | "Town" | | 2 | "London" |
| | globalScore | 0.871 | | windowScore | 0.667 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 63 | | glossingSentenceCount | 0 | | matches | (empty) | |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1587 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 131 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 58 | | mean | 27.36 | | std | 26.07 | | cv | 0.953 | | sampleLengths | | 0 | 34 | | 1 | 67 | | 2 | 80 | | 3 | 6 | | 4 | 3 | | 5 | 7 | | 6 | 10 | | 7 | 78 | | 8 | 7 | | 9 | 71 | | 10 | 15 | | 11 | 9 | | 12 | 40 | | 13 | 7 | | 14 | 50 | | 15 | 7 | | 16 | 12 | | 17 | 54 | | 18 | 73 | | 19 | 3 | | 20 | 25 | | 21 | 3 | | 22 | 23 | | 23 | 44 | | 24 | 7 | | 25 | 63 | | 26 | 3 | | 27 | 5 | | 28 | 8 | | 29 | 8 | | 30 | 3 | | 31 | 62 | | 32 | 4 | | 33 | 71 | | 34 | 10 | | 35 | 4 | | 36 | 10 | | 37 | 54 | | 38 | 15 | | 39 | 3 | | 40 | 3 | | 41 | 22 | | 42 | 40 | | 43 | 111 | | 44 | 10 | | 45 | 47 | | 46 | 6 | | 47 | 41 | | 48 | 6 | | 49 | 6 |
| |
| 84.21% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 6 | | totalSentences | 100 | | matches | | 0 | "was used" | | 1 | "been called" | | 2 | "being asked" | | 3 | "were folded" | | 4 | "was curled" | | 5 | "were scuffed" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 184 | | matches | | 0 | "was holding" | | 1 | "wasn't listening" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 11 | | semicolonCount | 1 | | flaggedSentences | 8 | | totalSentences | 131 | | ratio | 0.061 | | matches | | 0 | "Colder, mineral, with an undertow smell of wet brick and something sweeter beneath it—candle wax, maybe, or incense long burned down." | | 1 | "His hands were folded over his chest—no, not folded." | | 2 | "His soles were scuffed at the toes and along the outer edges—the wear of a man who walked a great deal on hard pavements—but the uppers were clean." | | 3 | "Just those seven, laid down in a straight line, and then—nothing." | | 4 | "Human, probably—off-white, worn smooth, drilled through the centre and threaded on a length of black cord." | | 5 | "She saw, at intervals along the platform, small marks scratched into the tile at hip height—not graffiti, too regular for graffiti, a repeated symbol no bigger than a thumbprint." | | 6 | "It spun once, lazily, like something waking, and then settled—steady, insistent—pointing straight at the tunnel wall." | | 7 | "Dry, and warm, and under her hand she could feel the faintest pulse—not a heartbeat, nothing so crude; the slow tidal pressure of something breathing on the other side." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1210 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 35 | | adverbRatio | 0.028925619834710745 | | lyAdverbCount | 5 | | lyAdverbRatio | 0.004132231404958678 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 131 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 131 | | mean | 12.11 | | std | 11.08 | | cv | 0.914 | | sampleLengths | | 0 | 34 | | 1 | 3 | | 2 | 6 | | 3 | 29 | | 4 | 22 | | 5 | 7 | | 6 | 10 | | 7 | 6 | | 8 | 21 | | 9 | 19 | | 10 | 24 | | 11 | 6 | | 12 | 3 | | 13 | 7 | | 14 | 1 | | 15 | 9 | | 16 | 29 | | 17 | 25 | | 18 | 3 | | 19 | 21 | | 20 | 7 | | 21 | 15 | | 22 | 9 | | 23 | 2 | | 24 | 2 | | 25 | 9 | | 26 | 34 | | 27 | 15 | | 28 | 5 | | 29 | 4 | | 30 | 6 | | 31 | 19 | | 32 | 15 | | 33 | 7 | | 34 | 33 | | 35 | 17 | | 36 | 5 | | 37 | 2 | | 38 | 12 | | 39 | 7 | | 40 | 13 | | 41 | 28 | | 42 | 2 | | 43 | 4 | | 44 | 6 | | 45 | 25 | | 46 | 4 | | 47 | 38 | | 48 | 3 | | 49 | 11 |
| |
| 57.25% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 15 | | diversityRatio | 0.4122137404580153 | | totalSentences | 131 | | uniqueOpeners | 54 | |
| 37.04% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 90 | | matches | | 0 | "Just those seven, laid down" |
| | ratio | 0.011 | |
| 95.56% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 28 | | totalSentences | 90 | | matches | | 0 | "She was used to the" | | 1 | "She descended the emergency stair" | | 2 | "Her torch swept the walls" | | 3 | "She liked the young ones" | | 4 | "She filed that away and" | | 5 | "His hands were folded over" | | 6 | "His left hand was curled" | | 7 | "She had her satchel open" | | 8 | "She tucked a strand of" | | 9 | "She came and looked at" | | 10 | "His soles were scuffed at" | | 11 | "She counted seven before the" | | 12 | "It stopped in the middle" | | 13 | "She adjusted her glasses" | | 14 | "She moved past it." | | 15 | "She saw what she'd taken" | | 16 | "She saw a rusted bracket." | | 17 | "She saw, at intervals along" | | 18 | "She had seen that symbol" | | 19 | "She had seen it chalked" |
| | ratio | 0.311 | |
| 87.78% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 67 | | totalSentences | 90 | | matches | | 0 | "The call came in at" | | 1 | "She was used to the" | | 2 | "None of the calls had" | | 3 | "She descended the emergency stair" | | 4 | "Her torch swept the walls" | | 5 | "She liked the young ones" | | 6 | "The platform opened up ahead" | | 7 | "The tiles on the platform" | | 8 | "Southwark North was on the" | | 9 | "She filed that away and" | | 10 | "The body lay face-up near" | | 11 | "A man, late fifties, in" | | 12 | "His hands were folded over" | | 13 | "His left hand was curled" | | 14 | "Quinn stopped six feet short." | | 15 | "Eva didn't look up" | | 16 | "She had her satchel open" | | 17 | "She tucked a strand of" | | 18 | "Quinn took out her notebook." | | 19 | "She came and looked at" |
| | ratio | 0.744 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 90 | | matches | (empty) | | ratio | 0 | |
| 93.02% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 43 | | technicalSentenceCount | 3 | | matches | | 0 | "His left hand was curled around something small and pale, and his right hand was pressed flat to his sternum as if he'd been reaching for the inside of his coat…" | | 1 | "His soles were scuffed at the toes and along the outer edges—the wear of a man who walked a great deal on hard pavements—but the uppers were clean." | | 2 | "Damp in the low ground near the track, drier along the wall, and bone-dry in a rough circle about the body, three feet in radius, as if someone had drawn a ring…" |
| |
| 75.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 10 | | uselessAdditionCount | 1 | | matches | | 0 | "She tucked, glasses catching the arc light into two flat coins" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 6 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 41 | | tagDensity | 0.146 | | leniency | 0.293 | | rawRatio | 0 | | effectiveRatio | 0 | |