| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 19 | | adverbTagCount | 2 | | adverbTags | | 0 | "She swallowed hard [hard]" | | 1 | "she said quietly [quietly]" |
| | dialogueSentences | 72 | | tagDensity | 0.264 | | leniency | 0.528 | | rawRatio | 0.105 | | effectiveRatio | 0.056 | |
| 84.58% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1945 | | totalAiIsmAdverbs | 6 | | found | | 0 | | | 1 | | | 2 | | | 3 | | adverb | "barely above a whisper" | | count | 1 |
| | 4 | |
| | highlights | | 0 | "precisely" | | 1 | "slowly" | | 2 | "perfectly" | | 3 | "barely above a whisper" | | 4 | "completely" |
| |
| 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) | |
| 66.58% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1945 | | totalAiIsms | 13 | | found | | | highlights | | 0 | "echoed" | | 1 | "footsteps" | | 2 | "chill" | | 3 | "traced" | | 4 | "dancing" | | 5 | "etched" | | 6 | "silence" | | 7 | "whisper" | | 8 | "charged" | | 9 | "flickered" | | 10 | "perfect" |
| |
| 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 | 132 | | matches | (empty) | |
| 99.57% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 3 | | narrationSentences | 132 | | filterMatches | | | hedgeMatches | | |
| 99.72% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 185 | | gibberishSentences | 1 | | adjustedGibberishSentences | 1 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 45 | | ratio | 0.005 | | matches | | 0 | "Not cut—peeled, the bones弯曲 outward like flower petals, the skin stretched but not torn." |
| |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1927 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 14 | | unquotedAttributions | 0 | | matches | (empty) | |
| 16.67% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 55 | | wordCount | 1198 | | uniqueNames | 16 | | maxNameDensity | 1.84 | | worstName | "Quinn" | | maxWindowNameDensity | 4.5 | | worstWindowName | "Quinn" | | discoveredNames | | Tube | 1 | | Camden | 1 | | Harlow | 1 | | Quinn | 22 | | Marcus | 1 | | Webb | 8 | | Transport | 1 | | London | 1 | | Wham | 1 | | George | 1 | | Michael | 1 | | Whitechapel | 1 | | Brixton | 1 | | Morris | 3 | | Davies | 9 | | Hassan | 2 |
| | persons | | 0 | "Camden" | | 1 | "Harlow" | | 2 | "Quinn" | | 3 | "Marcus" | | 4 | "Webb" | | 5 | "George" | | 6 | "Michael" | | 7 | "Morris" | | 8 | "Davies" | | 9 | "Hassan" |
| | places | | 0 | "London" | | 1 | "Whitechapel" | | 2 | "Brixton" |
| | globalScore | 0.582 | | windowScore | 0.167 | |
| 94.44% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 90 | | glossingSentenceCount | 2 | | matches | | 0 | "pattern that seemed to shift under direct light" | | 1 | "quite hear" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.519 | | wordCount | 1927 | | matches | | 0 | "Not cut—peeled, the bones弯曲 outward like flower petals, the skin stretched but not torn" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 2 | | totalSentences | 185 | | matches | | 0 | "expecting that response" | | 1 | "understand that the" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 87 | | mean | 22.15 | | std | 17.58 | | cv | 0.794 | | sampleLengths | | 0 | 33 | | 1 | 61 | | 2 | 3 | | 3 | 51 | | 4 | 43 | | 5 | 4 | | 6 | 47 | | 7 | 47 | | 8 | 3 | | 9 | 40 | | 10 | 7 | | 11 | 41 | | 12 | 6 | | 13 | 35 | | 14 | 33 | | 15 | 10 | | 16 | 4 | | 17 | 23 | | 18 | 58 | | 19 | 21 | | 20 | 21 | | 21 | 3 | | 22 | 20 | | 23 | 11 | | 24 | 9 | | 25 | 25 | | 26 | 11 | | 27 | 41 | | 28 | 55 | | 29 | 13 | | 30 | 49 | | 31 | 34 | | 32 | 4 | | 33 | 13 | | 34 | 44 | | 35 | 4 | | 36 | 41 | | 37 | 7 | | 38 | 52 | | 39 | 2 | | 40 | 37 | | 41 | 12 | | 42 | 36 | | 43 | 2 | | 44 | 1 | | 45 | 18 | | 46 | 9 | | 47 | 44 | | 48 | 11 | | 49 | 3 |
| |
| 99.95% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 2 | | totalSentences | 132 | | matches | | 0 | "been assigned" | | 1 | "been opened" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 211 | | matches | (empty) | |
| 81.08% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 4 | | semicolonCount | 0 | | flaggedSentences | 4 | | totalSentences | 185 | | ratio | 0.022 | | matches | | 0 | "Quinn recognised it before she saw him—DC Marcus Webb, three years her junior, ambitious enough to volunteer for the night shift but not bright enough to question why he'd been assigned to a subway station that didn't appear on any Transport for London maps." | | 1 | "Dark hair matted with something that wasn't blood—too dark, too viscous." | | 2 | "The station felt different now—charged, like the air before a storm." | | 3 | "Not cut—peeled, the bones弯曲 outward like flower petals, the skin stretched but not torn." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1035 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 32 | | adverbRatio | 0.030917874396135265 | | lyAdverbCount | 7 | | lyAdverbRatio | 0.00676328502415459 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 185 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 185 | | mean | 10.42 | | std | 8.34 | | cv | 0.801 | | sampleLengths | | 0 | 9 | | 1 | 24 | | 2 | 18 | | 3 | 13 | | 4 | 15 | | 5 | 15 | | 6 | 3 | | 7 | 7 | | 8 | 44 | | 9 | 11 | | 10 | 15 | | 11 | 7 | | 12 | 10 | | 13 | 4 | | 14 | 8 | | 15 | 33 | | 16 | 6 | | 17 | 6 | | 18 | 19 | | 19 | 7 | | 20 | 11 | | 21 | 4 | | 22 | 3 | | 23 | 12 | | 24 | 28 | | 25 | 7 | | 26 | 6 | | 27 | 2 | | 28 | 20 | | 29 | 13 | | 30 | 6 | | 31 | 7 | | 32 | 28 | | 33 | 7 | | 34 | 4 | | 35 | 7 | | 36 | 4 | | 37 | 11 | | 38 | 10 | | 39 | 4 | | 40 | 4 | | 41 | 19 | | 42 | 13 | | 43 | 20 | | 44 | 2 | | 45 | 23 | | 46 | 10 | | 47 | 11 | | 48 | 3 | | 49 | 18 |
| |
| 66.85% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 8 | | diversityRatio | 0.42702702702702705 | | totalSentences | 185 | | uniqueOpeners | 79 | |
| 28.74% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 116 | | matches | | 0 | "Somewhere in the dark, the" |
| | ratio | 0.009 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 33 | | totalSentences | 116 | | matches | | 0 | "She freed it with a" | | 1 | "She approached the tunnel, her" | | 2 | "He lowered his voice, though" | | 3 | "She leaned closer, squinting." | | 4 | "She stood, rolling her shoulders" | | 5 | "Her gaze traced the platform's" | | 6 | "She walked the platform's perimeter," | | 7 | "She'd seen similar scratches on" | | 8 | "Her beam caught something wedged" | | 9 | "She knelt, fishing out a" | | 10 | "She slipped it into an" | | 11 | "He raised both hands, a" | | 12 | "She thought of Morris, of" | | 13 | "She'd learned to catalogue the" | | 14 | "It didn't make it easier" | | 15 | "She pushed through into the" | | 16 | "She jumped when Quinn approached." | | 17 | "She trailed off, tugging at" | | 18 | "She met Quinn's eyes for" | | 19 | "She swallowed hard" |
| | ratio | 0.284 | |
| 37.59% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 98 | | totalSentences | 116 | | matches | | 0 | "The abandoned Tube station smelled" | | 1 | "Detective Harlow Quinn ducked beneath" | | 2 | "She freed it with a" | | 3 | "Water dripped somewhere in the" | | 4 | "The voice echoed from the" | | 5 | "Quinn recognised it before she" | | 6 | "She approached the tunnel, her" | | 7 | "The walls bore faded posters" | | 8 | "Someone had spray-painted sigils over" | | 9 | "advertisement, the symbols dark and" | | 10 | "Webb gestured toward the tracks" | | 11 | "He lowered his voice, though" | | 12 | "Quinn crouched at the platform's" | | 13 | "The body lay sprawled across" | | 14 | "She leaned closer, squinting." | | 15 | "Webb stepped beside her, his" | | 16 | "She stood, rolling her shoulders" | | 17 | "Her gaze traced the platform's" | | 18 | "Webb scratched his jaw" | | 19 | "Quinn turned slowly, taking in" |
| | ratio | 0.845 | |
| 43.10% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 116 | | matches | | 0 | "Whoever had sealed this place" |
| | ratio | 0.009 | |
| 72.83% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 51 | | technicalSentenceCount | 5 | | matches | | 0 | "Yellow crime scene tape stretched across the rotting turnstiles, fluttering in a breeze that had no business existing three hundred feet below Camden's streets." | | 1 | "Quinn recognised it before she saw him—DC Marcus Webb, three years her junior, ambitious enough to volunteer for the night shift but not bright enough to questi…" | | 2 | "Dark hair matted with something that wasn't blood—too dark, too viscous." | | 3 | "Cream-coloured, no bigger than a coin, etched with a spiral pattern that seemed to shift under direct light." | | 4 | "She traced the pattern without touching it, her mind cataloguing details she couldn't yet explain." |
| |
| 72.37% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 19 | | uselessAdditionCount | 2 | | matches | | 0 | "Webb stepped, his breath visible in the underground chill" | | 1 | "She kept, firm" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 2 | | fancyCount | 1 | | fancyTags | | 0 | "Quinn murmured (murmur)" |
| | dialogueSentences | 72 | | tagDensity | 0.028 | | leniency | 0.056 | | rawRatio | 0.5 | | effectiveRatio | 0.028 | |