| 57.14% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 6 | | adverbTagCount | 1 | | adverbTags | | 0 | "he disappeared around [around]" |
| | dialogueSentences | 14 | | tagDensity | 0.429 | | leniency | 0.857 | | rawRatio | 0.167 | | effectiveRatio | 0.143 | |
| 90.83% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1090 | | 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) | |
| 72.48% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1090 | | totalAiIsms | 6 | | found | | | highlights | | 0 | "resolve" | | 1 | "scanned" | | 2 | "gleaming" | | 3 | "velvet" | | 4 | "racing" | | 5 | "pounding" |
| |
| 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 | 1 | | narrationSentences | 72 | | matches | | |
| 23.81% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 5 | | narrationSentences | 72 | | filterMatches | | | hedgeMatches | | 0 | "seemed to" | | 1 | "began to" | | 2 | "happened to" |
| |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 80 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 40 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1080 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 4 | | unquotedAttributions | 0 | | matches | (empty) | |
| 33.33% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 50 | | wordCount | 989 | | uniqueNames | 14 | | maxNameDensity | 2.22 | | worstName | "Quinn" | | maxWindowNameDensity | 4 | | worstWindowName | "Quinn" | | discoveredNames | | Detective | 1 | | Harlow | 1 | | Quinn | 22 | | Herrera | 11 | | Soho | 1 | | Tomás | 1 | | Raven | 1 | | Nest | 1 | | London | 2 | | Morris | 4 | | Camden | 1 | | Tube | 1 | | Veil | 1 | | Market | 2 |
| | persons | | 0 | "Harlow" | | 1 | "Quinn" | | 2 | "Herrera" | | 3 | "Tomás" | | 4 | "Nest" | | 5 | "Morris" |
| | places | | 0 | "Soho" | | 1 | "Raven" | | 2 | "London" | | 3 | "Camden" |
| | globalScore | 0.388 | | windowScore | 0.333 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 62 | | 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 | 1080 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 80 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 32 | | mean | 33.75 | | std | 17.82 | | cv | 0.528 | | sampleLengths | | 0 | 70 | | 1 | 27 | | 2 | 73 | | 3 | 37 | | 4 | 44 | | 5 | 50 | | 6 | 35 | | 7 | 42 | | 8 | 1 | | 9 | 50 | | 10 | 34 | | 11 | 50 | | 12 | 43 | | 13 | 42 | | 14 | 13 | | 15 | 62 | | 16 | 46 | | 17 | 24 | | 18 | 41 | | 19 | 17 | | 20 | 9 | | 21 | 40 | | 22 | 18 | | 23 | 8 | | 24 | 19 | | 25 | 19 | | 26 | 28 | | 27 | 35 | | 28 | 16 | | 29 | 22 | | 30 | 52 | | 31 | 13 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 72 | | matches | | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 158 | | matches | (empty) | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 10 | | semicolonCount | 0 | | flaggedSentences | 9 | | totalSentences | 80 | | ratio | 0.113 | | matches | | 0 | "She'd been sitting in her car outside The Raven's Nest, watching the distinctive green neon sign reflect in puddles on the street, when Herrera had emerged with that young woman—the one with the inexplicable wounds that had healed overnight." | | 1 | "Herrera was younger, faster, but Quinn had something he didn't—determination fueled by the memory of DS Morris, her partner who had died under circumstances that still kept her up at night." | | 2 | "A flash of movement to her left—Herrera was cutting through an alley." | | 3 | "She scanned the area, noting the deserted Tube station entrance ahead—abandoned for years according to city records." | | 4 | "He reached into his jacket and pulled out something small—a carved bone token that gleamed faintly in the darkness." | | 5 | "Stalls glowed with unnatural light, vendors hawked strange wares, and patrons—some of whom didn't look entirely human—milled about in a cavernous space that shouldn't exist beneath London." | | 6 | "The name surfaced from a file she'd read recently—whispers of a supernatural black market that moved locations with the full moon." | | 7 | "This was what she'd been hunting—these people, this place, the truth behind what had happened to her partner." | | 8 | "She held up empty hands, but there was something unsettling about her smile—too many teeth, too sharp." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1005 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 31 | | adverbRatio | 0.030845771144278607 | | lyAdverbCount | 14 | | lyAdverbRatio | 0.013930348258706468 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 80 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 80 | | mean | 13.5 | | std | 7.01 | | cv | 0.519 | | sampleLengths | | 0 | 27 | | 1 | 24 | | 2 | 19 | | 3 | 27 | | 4 | 5 | | 5 | 39 | | 6 | 12 | | 7 | 17 | | 8 | 20 | | 9 | 17 | | 10 | 31 | | 11 | 13 | | 12 | 12 | | 13 | 13 | | 14 | 10 | | 15 | 15 | | 16 | 14 | | 17 | 15 | | 18 | 6 | | 19 | 8 | | 20 | 17 | | 21 | 17 | | 22 | 1 | | 23 | 10 | | 24 | 10 | | 25 | 17 | | 26 | 13 | | 27 | 9 | | 28 | 9 | | 29 | 16 | | 30 | 13 | | 31 | 19 | | 32 | 18 | | 33 | 3 | | 34 | 13 | | 35 | 27 | | 36 | 3 | | 37 | 21 | | 38 | 14 | | 39 | 4 | | 40 | 13 | | 41 | 17 | | 42 | 17 | | 43 | 6 | | 44 | 22 | | 45 | 9 | | 46 | 18 | | 47 | 19 | | 48 | 7 | | 49 | 17 |
| |
| 62.50% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 5 | | diversityRatio | 0.4125 | | totalSentences | 80 | | uniqueOpeners | 33 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 71 | | matches | (empty) | | ratio | 0 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 14 | | totalSentences | 71 | | matches | | 0 | "She'd been sitting in her" | | 1 | "Her sharp jaw tightened as" | | 2 | "She scanned the area, noting" | | 3 | "She slipped through the gap," | | 4 | "She could hear whispers now," | | 5 | "He reached into his jacket" | | 6 | "He pressed it against a" | | 7 | "She'd dismissed it as fairy" | | 8 | "Her fingers tightened around the" | | 9 | "She reached the wall just" | | 10 | "Her hand pressed against solid" | | 11 | "she muttered, running her hands" | | 12 | "She held up empty hands," | | 13 | "Her decision made, Quinn lowered" |
| | ratio | 0.197 | |
| 65.63% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 56 | | totalSentences | 71 | | matches | | 0 | "Rain lashed against Detective Harlow" | | 1 | "Quinn's voice cut through the" | | 2 | "Quinn cursed under her breath." | | 3 | "She'd been sitting in her" | | 4 | "The same woman who had" | | 5 | "The same woman whose case" | | 6 | "Her sharp jaw tightened as" | | 7 | "Herrera was younger, faster, but" | | 8 | "A flash of movement to" | | 9 | "Quinn followed, her hand instinctively" | | 10 | "The alley narrowed, brick walls" | | 11 | "Water poured from drainpipes overhead," | | 12 | "The usual nighttime crowd had" | | 13 | "Herrera was nowhere to be" | | 14 | "Quinn slowed, her breathing controlled" | | 15 | "She scanned the area, noting" | | 16 | "Quinn approached cautiously, her steps" | | 17 | "The fencing had been cut" | | 18 | "She slipped through the gap," | | 19 | "Emergency lighting cast long shadows" |
| | ratio | 0.789 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 71 | | matches | (empty) | | ratio | 0 | |
| 53.57% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 48 | | technicalSentenceCount | 6 | | matches | | 0 | "She'd been sitting in her car outside The Raven's Nest, watching the distinctive green neon sign reflect in puddles on the street, when Herrera had emerged with…" | | 1 | "Herrera was younger, faster, but Quinn had something he didn't—determination fueled by the memory of DS Morris, her partner who had died under circumstances tha…" | | 2 | "She slipped through the gap, finding herself in a concrete concourse that smelled of damp and decay." | | 3 | "Stalls glowed with unnatural light, vendors hawked strange wares, and patrons—some of whom didn't look entirely human—milled about in a cavernous space that sho…" | | 4 | "The name surfaced from a file she'd read recently—whispers of a supernatural black market that moved locations with the full moon." | | 5 | "The clique that Herrera belonged to, the one she suspected was involved in criminal activity that defied rational explanation." |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 6 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 78.57% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 3 | | fancyCount | 1 | | fancyTags | | | dialogueSentences | 14 | | tagDensity | 0.214 | | leniency | 0.429 | | rawRatio | 0.333 | | effectiveRatio | 0.143 | |