| 82.35% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 10 | | adverbTagCount | 2 | | adverbTags | | 0 | "she said quietly [quietly]" | | 1 | "Harlow said finally [finally]" |
| | dialogueSentences | 34 | | tagDensity | 0.294 | | leniency | 0.588 | | rawRatio | 0.2 | | effectiveRatio | 0.118 | |
| 71.83% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1065 | | totalAiIsmAdverbs | 6 | | found | | | highlights | | 0 | "very" | | 1 | "sharply" | | 2 | "slightly" | | 3 | "tightly" | | 4 | "slowly" |
| |
| 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) | |
| 48.36% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1065 | | totalAiIsms | 11 | | found | | | highlights | | 0 | "shimmered" | | 1 | "silk" | | 2 | "etched" | | 3 | "flicked" | | 4 | "pulse" | | 5 | "quickened" | | 6 | "scanning" | | 7 | "familiar" | | 8 | "racing" | | 9 | "silence" |
| |
| 33.33% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 3 | | maxInWindow | 3 | | found | | 0 | | label | "eyes widened/narrowed" | | count | 2 |
| | 1 | | label | "clenched jaw/fists" | | count | 1 |
|
| | highlights | | 0 | "eyes narrowed" | | 1 | "eyes widened" | | 2 | "clenched into fists" |
| |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 81 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 0 | | narrationSentences | 81 | | filterMatches | | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 104 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 33 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 12 | | markdownWords | 13 | | totalWords | 1053 | | ratio | 0.012 | | matches | | 0 | "Camden Road" | | 1 | "shimmered" | | 2 | "thud" | | 3 | "he" | | 4 | "pulling" | | 5 | "in" | | 6 | "seeped" | | 7 | "glossy" | | 8 | "them" | | 9 | "alive" | | 10 | "test" | | 11 | "change" |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 16 | | unquotedAttributions | 0 | | matches | (empty) | |
| 16.67% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 47 | | wordCount | 826 | | uniqueNames | 10 | | maxNameDensity | 2.3 | | worstName | "Harlow" | | maxWindowNameDensity | 4.5 | | worstWindowName | "Eva" | | discoveredNames | | Tube | 1 | | Harlow | 19 | | Quinn | 1 | | Kowalski | 1 | | Eva | 17 | | Veil | 3 | | Market | 2 | | London | 1 | | Compass | 1 | | Morris | 1 |
| | persons | | 0 | "Harlow" | | 1 | "Quinn" | | 2 | "Kowalski" | | 3 | "Eva" | | 4 | "Market" | | 5 | "Morris" |
| | places | | | globalScore | 0.35 | | windowScore | 0.167 | |
| 0.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 47 | | glossingSentenceCount | 6 | | matches | | 0 | "something like rusted iron and the faint, si" | | 1 | "something between irritation and dread" | | 2 | "as if bracing herself for whatever she’d find" | | 3 | "looked like they’d been carved by somethi" | | 4 | "quite blood—too viscous, too *glossy" | | 5 | "smelled like copper and something metallic" |
| |
| 10.07% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 2 | | per1kWords | 1.899 | | wordCount | 1053 | | matches | | 0 | "not like a reflection, but like wet silk under moonlight, catching the light in uneven" | | 1 | "Not just on the ground, but *in* the ground" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 104 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 41 | | mean | 25.68 | | std | 24.96 | | cv | 0.972 | | sampleLengths | | 0 | 95 | | 1 | 63 | | 2 | 13 | | 3 | 116 | | 4 | 10 | | 5 | 36 | | 6 | 40 | | 7 | 16 | | 8 | 12 | | 9 | 80 | | 10 | 22 | | 11 | 29 | | 12 | 5 | | 13 | 7 | | 14 | 18 | | 15 | 18 | | 16 | 7 | | 17 | 14 | | 18 | 15 | | 19 | 22 | | 20 | 58 | | 21 | 5 | | 22 | 17 | | 23 | 14 | | 24 | 30 | | 25 | 11 | | 26 | 6 | | 27 | 9 | | 28 | 47 | | 29 | 6 | | 30 | 5 | | 31 | 22 | | 32 | 14 | | 33 | 50 | | 34 | 22 | | 35 | 12 | | 36 | 15 | | 37 | 14 | | 38 | 13 | | 39 | 38 | | 40 | 7 |
| |
| 83.60% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 5 | | totalSentences | 81 | | matches | | 0 | "been caught" | | 1 | "were curled" | | 2 | "been carved" | | 3 | "been bound" | | 4 | "were lined" | | 5 | "was written" |
| |
| 0.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 5 | | totalVerbs | 145 | | matches | | 0 | "was peeling" | | 1 | "was tucking" | | 2 | "was still moving" | | 3 | "was already racing" | | 4 | "was rising" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 13 | | semicolonCount | 0 | | flaggedSentences | 12 | | totalSentences | 104 | | ratio | 0.115 | | matches | | 0 | "The abandoned Tube station smelled of damp stone and something older—something like rusted iron and the faint, sickly sweetness of decaying fruit." | | 1 | "The station’s name—*Camden Road*, though no one had seen a train here in decades—was peeling off the tiles in great, jagged strips, as if the very place had been erasing itself." | | 2 | "But what made the scene impossible was the way his skin *shimmered*—not like a reflection, but like wet silk under moonlight, catching the light in uneven patches." | | 3 | "She knew about the Veil Market—every cop in London did, in hushed tones." | | 4 | "There were no ligature marks—just the kind of damage that came from something *pulling* at him, not restraining him." | | 5 | "It wasn’t quite blood—too viscous, too *glossy*." | | 6 | "She knew Harlow’s reputation—her obsession with the unsolved, the unexplained." | | 7 | "The walls were lined with graffiti—most of it old, faded, but some of it fresh, as if someone had been here recently." | | 8 | "It was written in a language she didn’t recognize, but the symbols were familiar—similar to the ones on the Veil Compass." | | 9 | "She could almost hear it—whispers, murmurs, something just beyond the edge of hearing." | | 10 | "The way her hands clenched into fists when she thought about the last case—the one that had taken him, the one that still haunted her in the quiet hours of the night." | | 11 | "She pulled out her watch—a worn leather thing, the kind that had seen too many cases, too many nights." |
| |
| 96.41% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 839 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 37 | | adverbRatio | 0.04410011918951132 | | lyAdverbCount | 12 | | lyAdverbRatio | 0.014302741358760428 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 104 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 104 | | mean | 10.13 | | std | 7.24 | | cv | 0.715 | | sampleLengths | | 0 | 22 | | 1 | 27 | | 2 | 15 | | 3 | 31 | | 4 | 23 | | 5 | 22 | | 6 | 18 | | 7 | 7 | | 8 | 6 | | 9 | 5 | | 10 | 15 | | 11 | 19 | | 12 | 14 | | 13 | 27 | | 14 | 26 | | 15 | 10 | | 16 | 10 | | 17 | 21 | | 18 | 6 | | 19 | 9 | | 20 | 3 | | 21 | 13 | | 22 | 1 | | 23 | 1 | | 24 | 8 | | 25 | 2 | | 26 | 9 | | 27 | 3 | | 28 | 16 | | 29 | 2 | | 30 | 10 | | 31 | 7 | | 32 | 13 | | 33 | 19 | | 34 | 6 | | 35 | 9 | | 36 | 14 | | 37 | 12 | | 38 | 18 | | 39 | 4 | | 40 | 3 | | 41 | 5 | | 42 | 7 | | 43 | 14 | | 44 | 3 | | 45 | 2 | | 46 | 3 | | 47 | 4 | | 48 | 3 | | 49 | 12 |
| |
| 47.44% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 4 | | diversityRatio | 0.3076923076923077 | | totalSentences | 104 | | uniqueOpeners | 32 | |
| 45.66% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 73 | | matches | | 0 | "Then Eva exhaled sharply." |
| | ratio | 0.014 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 18 | | totalSentences | 73 | | matches | | 0 | "She was tucking a strand" | | 1 | "She crouched beside the body," | | 2 | "His face was slack, his" | | 3 | "His fingers were curled around" | | 4 | "She knew about the Veil" | | 5 | "She knelt, examining the stain." | | 6 | "It wasn’t quite blood—too viscous," | | 7 | "It smelled like copper and" | | 8 | "She stood, brushing the dust" | | 9 | "She knew Harlow’s reputation—her obsession" | | 10 | "She crouched, examining a new" | | 11 | "It was written in a" | | 12 | "She gestured to the man" | | 13 | "She walked to the edge" | | 14 | "She could almost hear it—whispers," | | 15 | "she said quietly" | | 16 | "She knew Eva saw the" | | 17 | "She pulled out her watch—a" |
| | ratio | 0.247 | |
| 14.79% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 65 | | totalSentences | 73 | | matches | | 0 | "The abandoned Tube station smelled" | | 1 | "Detective Harlow Quinn adjusted her" | | 2 | "The fluorescent lights hummed overhead," | | 3 | "The station’s name—*Camden Road*, though" | | 4 | "Eva Kowalski stood near the" | | 5 | "She was tucking a strand" | | 6 | "Eva said, her voice tight" | | 7 | "Harlow didn’t answer right away." | | 8 | "She crouched beside the body," | | 9 | "The victim was a man" | | 10 | "His face was slack, his" | | 11 | "His fingers were curled around" | | 12 | "The needle was frozen mid-swing," | | 13 | "Harlow asked, her voice low" | | 14 | "Eva crouched beside her, her" | | 15 | "Harlow’s fingers twitched." | | 16 | "She knew about the Veil" | | 17 | "A corpse with a supernatural" | | 18 | "That was new." | | 19 | "Harlow asked, gesturing to the" |
| | ratio | 0.89 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 73 | | matches | (empty) | | ratio | 0 | |
| 31.25% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 32 | | technicalSentenceCount | 5 | | matches | | 0 | "The station’s name—*Camden Road*, though no one had seen a train here in decades—was peeling off the tiles in great, jagged strips, as if the very place had bee…" | | 1 | "His fingers were curled around a small brass compass, its casing etched with sigils that looked like they’d been carved by something other than human hands." | | 2 | "There were no ligature marks—just the kind of damage that came from something *pulling* at him, not restraining him." | | 3 | "The walls were lined with graffiti—most of it old, faded, but some of it fresh, as if someone had been here recently." | | 4 | "She gestured to the man again, to the way his skin still glowed faintly, as if something inside him was still moving, still *alive* in a way that defied logic." |
| |
| 25.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 10 | | uselessAdditionCount | 2 | | matches | | 0 | "Eva said, her voice tight" | | 1 | "Harlow asked, her voice low" |
| |
| 91.18% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 10 | | fancyCount | 2 | | fancyTags | | 0 | "she murmured (murmur)" | | 1 | "she muttered (mutter)" |
| | dialogueSentences | 34 | | tagDensity | 0.294 | | leniency | 0.588 | | rawRatio | 0.2 | | effectiveRatio | 0.118 | |