| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 11 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 28 | | tagDensity | 0.393 | | leniency | 0.786 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 95.72% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1169 | | totalAiIsmAdverbs | 1 | | 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) | |
| 48.67% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1169 | | totalAiIsms | 12 | | found | | | highlights | | 0 | "gloom" | | 1 | "measured" | | 2 | "stark" | | 3 | "crystalline" | | 4 | "weight" | | 5 | "silk" | | 6 | "magnetic" | | 7 | "trembled" | | 8 | "mechanical" | | 9 | "tension" | | 10 | "long shadow" |
| |
| 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 | 66 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 0 | | narrationSentences | 66 | | filterMatches | | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 83 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 44 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1166 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 8 | | unquotedAttributions | 0 | | matches | (empty) | |
| 32.57% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 35 | | wordCount | 809 | | uniqueNames | 7 | | maxNameDensity | 2.35 | | worstName | "Harlow" | | maxWindowNameDensity | 4 | | worstWindowName | "Harlow" | | discoveredNames | | Harlow | 19 | | Quinn | 1 | | Camden | 1 | | Tube | 1 | | Victorian | 1 | | Kowalski | 1 | | Eva | 11 |
| | persons | | 0 | "Harlow" | | 1 | "Quinn" | | 2 | "Kowalski" | | 3 | "Eva" |
| | places | | | globalScore | 0.326 | | windowScore | 0.333 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 56 | | glossingSentenceCount | 0 | | matches | (empty) | |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.858 | | wordCount | 1166 | | matches | | 0 | "Not metal or plastic, but a polished slice of dense mammalian bone, carved into an oct" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 83 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 44 | | mean | 26.5 | | std | 19.48 | | cv | 0.735 | | sampleLengths | | 0 | 42 | | 1 | 70 | | 2 | 18 | | 3 | 50 | | 4 | 50 | | 5 | 16 | | 6 | 43 | | 7 | 15 | | 8 | 12 | | 9 | 8 | | 10 | 37 | | 11 | 13 | | 12 | 21 | | 13 | 26 | | 14 | 16 | | 15 | 20 | | 16 | 11 | | 17 | 71 | | 18 | 20 | | 19 | 8 | | 20 | 27 | | 21 | 8 | | 22 | 11 | | 23 | 44 | | 24 | 12 | | 25 | 14 | | 26 | 43 | | 27 | 62 | | 28 | 11 | | 29 | 5 | | 30 | 26 | | 31 | 18 | | 32 | 18 | | 33 | 50 | | 34 | 24 | | 35 | 6 | | 36 | 17 | | 37 | 8 | | 38 | 42 | | 39 | 13 | | 40 | 74 | | 41 | 9 | | 42 | 4 | | 43 | 53 |
| |
| 89.31% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 3 | | totalSentences | 66 | | matches | | 0 | "were curled" | | 1 | "were locked" | | 2 | "been drilled" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 126 | | matches | (empty) | |
| 39.59% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 3 | | semicolonCount | 1 | | flaggedSentences | 3 | | totalSentences | 83 | | ratio | 0.036 | | matches | | 0 | "Dust lay two inches deep over the concourse, grey and undisturbed—except for the single set of heavy boots that preceded her, and the white police halogen lamps buzzing fifty yards down the northern tunnel." | | 1 | "The steel rails beneath the charcoal-suited body had not melted or warped under heat; they were curled upward like wood shavings, peeling toward the ceiling as if drawn by a magnet suspended in empty space." | | 2 | "Sigils—sharp, geometric incisions unlike any classical alphabet—ringed the circumference of the metal face." |
| |
| 94.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 818 | | adjectiveStacks | 1 | | stackExamples | | 0 | "heavy, palm-sized weight." |
| | adverbCount | 20 | | adverbRatio | 0.02444987775061125 | | lyAdverbCount | 7 | | lyAdverbRatio | 0.008557457212713936 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 83 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 83 | | mean | 14.05 | | std | 7.98 | | cv | 0.568 | | sampleLengths | | 0 | 13 | | 1 | 29 | | 2 | 15 | | 3 | 21 | | 4 | 34 | | 5 | 5 | | 6 | 12 | | 7 | 1 | | 8 | 20 | | 9 | 18 | | 10 | 12 | | 11 | 17 | | 12 | 17 | | 13 | 16 | | 14 | 5 | | 15 | 11 | | 16 | 11 | | 17 | 13 | | 18 | 19 | | 19 | 15 | | 20 | 12 | | 21 | 8 | | 22 | 37 | | 23 | 13 | | 24 | 21 | | 25 | 26 | | 26 | 5 | | 27 | 11 | | 28 | 20 | | 29 | 11 | | 30 | 35 | | 31 | 15 | | 32 | 11 | | 33 | 10 | | 34 | 10 | | 35 | 10 | | 36 | 8 | | 37 | 27 | | 38 | 8 | | 39 | 11 | | 40 | 44 | | 41 | 12 | | 42 | 14 | | 43 | 8 | | 44 | 7 | | 45 | 2 | | 46 | 2 | | 47 | 10 | | 48 | 14 | | 49 | 17 |
| |
| 57.03% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 6 | | diversityRatio | 0.3855421686746988 | | totalSentences | 83 | | uniqueOpeners | 32 | |
| 55.56% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 60 | | matches | | 0 | "Instead, it trembled toward the" |
| | ratio | 0.017 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 8 | | totalSentences | 60 | | matches | | 0 | "She checked her left wrist." | | 1 | "Her curly red hair spilled" | | 2 | "Her round glasses caught the" | | 3 | "Her sharp jaw tightened as" | | 4 | "She pushed her glasses up" | | 5 | "She slid two fingers inside" | | 6 | "His fingers were locked in" | | 7 | "She stared at the bricked-up" |
| | ratio | 0.133 | |
| 26.67% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 52 | | totalSentences | 60 | | matches | | 0 | "The iron rungs of the" | | 1 | "Harlow dropped the final two" | | 2 | "The beam of her tactical" | | 3 | "Dust lay two inches deep" | | 4 | "She checked her left wrist." | | 5 | "The glass of her worn" | | 6 | "Eva Kowalski crouched near a" | | 7 | "Her curly red hair spilled" | | 8 | "A worn leather satchel rested" | | 9 | "Eva said, tucking a stray" | | 10 | "Her round glasses caught the" | | 11 | "Harlow approached with measured strides." | | 12 | "Her sharp jaw tightened as" | | 13 | "A man in a charcoal" | | 14 | "Harlow crouched by the rail," | | 15 | "Eva adjusted the focus on" | | 16 | "Harlow aimed her torch at" | | 17 | "The soot coated the red" | | 18 | "Eva frowned, lowering the camera." | | 19 | "She pushed her glasses up" |
| | ratio | 0.867 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 60 | | matches | (empty) | | ratio | 0 | |
| 89.29% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 40 | | technicalSentenceCount | 3 | | matches | | 0 | "Dust lay two inches deep over the concourse, grey and undisturbed—except for the single set of heavy boots that preceded her, and the white police halogen lamps…" | | 1 | "The steel rails beneath the charcoal-suited body had not melted or warped under heat; they were curled upward like wood shavings, peeling toward the ceiling as …" | | 2 | "The bone needle pointed dead center into the solid mortar wall, vibrating with a high-pitched hum that set her teeth on edge." |
| |
| 79.55% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 11 | | uselessAdditionCount | 1 | | matches | | 0 | "Eva said, her voice dropping an octave" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 7 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 28 | | tagDensity | 0.25 | | leniency | 0.5 | | rawRatio | 0 | | effectiveRatio | 0 | |