| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 7 | | adverbTagCount | 1 | | adverbTags | | 0 | "Harlow said finally [finally]" |
| | dialogueSentences | 23 | | tagDensity | 0.304 | | leniency | 0.609 | | rawRatio | 0.143 | | effectiveRatio | 0.087 | |
| 87.01% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1155 | | totalAiIsmAdverbs | 3 | | found | | 0 | | | 1 | | adverb | "barely above a whisper" | | count | 1 |
| | 2 | |
| | highlights | | 0 | "slightly" | | 1 | "barely above a whisper" | | 2 | "carefully" |
| |
| 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) | |
| 65.37% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1155 | | totalAiIsms | 8 | | found | | | highlights | | 0 | "shattered" | | 1 | "whisper" | | 2 | "stark" | | 3 | "stomach" | | 4 | "tinged" | | 5 | "pulse" | | 6 | "racing" | | 7 | "analyzed" |
| |
| 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 | 110 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 0 | | narrationSentences | 110 | | filterMatches | | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 124 | | 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 | 6 | | markdownWords | 6 | | totalWords | 1146 | | ratio | 0.005 | | matches | | 0 | "wrong" | | 1 | "magic" | | 2 | "is" | | 3 | "testing" | | 4 | "my" | | 5 | "someone’s" |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 8 | | unquotedAttributions | 0 | | matches | (empty) | |
| 33.33% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 43 | | wordCount | 961 | | uniqueNames | 10 | | maxNameDensity | 2.19 | | worstName | "Harlow" | | maxWindowNameDensity | 4 | | worstWindowName | "Harlow" | | discoveredNames | | Tube | 1 | | Harlow | 21 | | Quinn | 2 | | Veil | 2 | | Market | 1 | | Morris | 2 | | Kowalski | 1 | | Eva | 9 | | Compass | 1 | | One | 3 |
| | persons | | 0 | "Harlow" | | 1 | "Quinn" | | 2 | "Market" | | 3 | "Morris" | | 4 | "Kowalski" | | 5 | "Eva" |
| | places | (empty) | | globalScore | 0.407 | | windowScore | 0.333 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 60 | | glossingSentenceCount | 1 | | matches | | 0 | "looked like it had been tailored for some" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.873 | | wordCount | 1146 | | matches | | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 124 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 45 | | mean | 25.47 | | std | 22.69 | | cv | 0.891 | | sampleLengths | | 0 | 105 | | 1 | 5 | | 2 | 90 | | 3 | 4 | | 4 | 38 | | 5 | 63 | | 6 | 10 | | 7 | 62 | | 8 | 21 | | 9 | 8 | | 10 | 55 | | 11 | 9 | | 12 | 34 | | 13 | 7 | | 14 | 20 | | 15 | 52 | | 16 | 51 | | 17 | 42 | | 18 | 7 | | 19 | 31 | | 20 | 19 | | 21 | 41 | | 22 | 2 | | 23 | 23 | | 24 | 28 | | 25 | 4 | | 26 | 12 | | 27 | 15 | | 28 | 14 | | 29 | 25 | | 30 | 5 | | 31 | 4 | | 32 | 12 | | 33 | 16 | | 34 | 31 | | 35 | 38 | | 36 | 29 | | 37 | 3 | | 38 | 24 | | 39 | 13 | | 40 | 29 | | 41 | 19 | | 42 | 5 | | 43 | 4 | | 44 | 17 |
| |
| 82.93% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 7 | | totalSentences | 110 | | matches | | 0 | "been sealed" | | 1 | "were scrawled" | | 2 | "was gone" | | 3 | "were curled" | | 4 | "been tailored" | | 5 | "were rusted" | | 6 | "were folded" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 163 | | matches | | 0 | "were doing" | | 1 | "was watching" |
| |
| 4.61% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 6 | | semicolonCount | 0 | | flaggedSentences | 6 | | totalSentences | 124 | | ratio | 0.048 | | matches | | 0 | "The air in the abandoned Tube station was thick with the scent of damp concrete and something older—something metallic, like old blood left to rust." | | 1 | "Three years since his death—three years since the case that had unraveled like a cheap suit, threads snapping under pressure." | | 2 | "She let her gaze sweep the scene—the body sprawled near the tracks, the way the blood pooled unnaturally dark, the way the victim’s fingers were curled into claws." | | 3 | "His palm was smooth, unmarked—except for a faint, almost imperceptible sigil burned into his skin." | | 4 | "But beneath the grime, she saw something else—a faint shimmer in the air, like heat rising from pavement." | | 5 | "People who vanished without a trace, only to reappear months later—changed." |
| |
| 96.21% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 970 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 43 | | adverbRatio | 0.0443298969072165 | | lyAdverbCount | 14 | | lyAdverbRatio | 0.01443298969072165 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 124 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 124 | | mean | 9.24 | | std | 6.86 | | cv | 0.742 | | sampleLengths | | 0 | 25 | | 1 | 21 | | 2 | 26 | | 3 | 18 | | 4 | 15 | | 5 | 5 | | 6 | 11 | | 7 | 20 | | 8 | 17 | | 9 | 5 | | 10 | 16 | | 11 | 5 | | 12 | 1 | | 13 | 8 | | 14 | 2 | | 15 | 5 | | 16 | 4 | | 17 | 16 | | 18 | 5 | | 19 | 4 | | 20 | 13 | | 21 | 10 | | 22 | 20 | | 23 | 33 | | 24 | 10 | | 25 | 5 | | 26 | 28 | | 27 | 15 | | 28 | 14 | | 29 | 15 | | 30 | 6 | | 31 | 4 | | 32 | 4 | | 33 | 12 | | 34 | 20 | | 35 | 12 | | 36 | 4 | | 37 | 3 | | 38 | 1 | | 39 | 1 | | 40 | 2 | | 41 | 9 | | 42 | 11 | | 43 | 23 | | 44 | 3 | | 45 | 4 | | 46 | 13 | | 47 | 7 | | 48 | 15 | | 49 | 8 |
| |
| 42.74% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 12 | | diversityRatio | 0.31451612903225806 | | totalSentences | 124 | | uniqueOpeners | 39 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 4 | | totalSentences | 97 | | matches | | 0 | "Too early for this." | | 1 | "Too early for the kind" | | 2 | "Then, carefully, she turned the" | | 3 | "Instead, she stood abruptly, her" |
| | ratio | 0.041 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 19 | | totalSentences | 97 | | matches | | 0 | "She exhaled through her nose," | | 1 | "They’d been chasing a lead" | | 2 | "She adjusted the strap of" | | 3 | "She turned, her green eyes" | | 4 | "She let her gaze sweep" | | 5 | "His tie was loose, his" | | 6 | "His lips were blue-tinged, like" | | 7 | "It was too relaxed, like" | | 8 | "She reached into her satchel," | | 9 | "His palm was smooth, unmarked—except" | | 10 | "She’d seen that symbol before." | | 11 | "She crouched, pressing her palm" | | 12 | "She pulled the Veil Compass" | | 13 | "She stood, her eyes flicking" | | 14 | "His polished shoes." | | 15 | "She turned back to the" | | 16 | "She’d need to get it" | | 17 | "She turned back to the" | | 18 | "It was an invitation." |
| | ratio | 0.196 | |
| 83.71% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 73 | | totalSentences | 97 | | matches | | 0 | "The air in the abandoned" | | 1 | "Detective Harlow Quinn stepped over" | | 2 | "The station had been sealed" | | 3 | "The walls were scrawled with" | | 4 | "She exhaled through her nose," | | 5 | "DS Morris would’ve hated this." | | 6 | "The thought hit her like" | | 7 | "They’d been chasing a lead" | | 8 | "The next, he was just…" | | 9 | "The official report had called" | | 10 | "A misstep in the dark." | | 11 | "She adjusted the strap of" | | 12 | "The time read 3:17 AM." | | 13 | "A figure moved in the" | | 14 | "Eva Kowalski, her red curls" | | 15 | "She turned, her green eyes" | | 16 | "Eva said, her voice barely" | | 17 | "Harlow didn’t answer right away." | | 18 | "She let her gaze sweep" | | 19 | "The medical examiner’s team was" |
| | ratio | 0.753 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 97 | | matches | (empty) | | ratio | 0 | |
| 84.94% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 37 | | technicalSentenceCount | 3 | | matches | | 0 | "Detective Harlow Quinn stepped over the yellow tape, her boots crunching on shattered glass that glinted under the flickering fluorescent lights." | | 1 | "Three years since his death—three years since the case that had unraveled like a cheap suit, threads snapping under pressure." | | 2 | "She turned, her green eyes wide behind the lenses, and Harlow could see the way her fingers twitched at her sides, as if she wanted to reach out but wasn’t sure…" |
| |
| 0.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 7 | | uselessAdditionCount | 3 | | matches | | 0 | "Eva said, her voice barely above a whisper" | | 1 | "Harlow said finally, her jaw tight" | | 2 | "Harlow stepped, her boots scuffing against the gravel" |
| |
| 63.04% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 5 | | fancyCount | 2 | | fancyTags | | 0 | "Eva muttered (mutter)" | | 1 | "Harlow snapped (snap)" |
| | dialogueSentences | 23 | | tagDensity | 0.217 | | leniency | 0.435 | | rawRatio | 0.4 | | effectiveRatio | 0.174 | |