| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 10 | | adverbTagCount | 2 | | adverbTags | | 0 | "She turned away [away]" | | 1 | "She whirled back [back]" |
| | dialogueSentences | 84 | | tagDensity | 0.119 | | leniency | 0.238 | | rawRatio | 0.2 | | effectiveRatio | 0.048 | |
| 96.14% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1296 | | totalAiIsmAdverbs | 1 | | found | | | highlights | | |
| 100.00% | AI-ism character names | Target: 0 AI-default names (16 tracked, −20% each) | | codexExemptions | | | found | (empty) | |
| 100.00% | AI-ism location names | Target: 0 AI-default location names (33 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 49.85% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1296 | | totalAiIsms | 13 | | found | | | highlights | | 0 | "scanning" | | 1 | "stomach" | | 2 | "pulse" | | 3 | "potential" | | 4 | "silence" | | 5 | "eyebrow" | | 6 | "flickered" | | 7 | "weight" | | 8 | "oppressive" | | 9 | "racing" |
| |
| 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 | 98 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 0 | | narrationSentences | 98 | | filterMatches | (empty) | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 171 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 34 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1288 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 15 | | unquotedAttributions | 0 | | matches | (empty) | |
| 92.59% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 17 | | wordCount | 871 | | uniqueNames | 5 | | maxNameDensity | 1.15 | | worstName | "Evan" | | maxWindowNameDensity | 2 | | worstWindowName | "Evan" | | discoveredNames | | Raven | 1 | | Nest | 1 | | Evan | 10 | | Silas | 1 | | Rory | 4 |
| | persons | | 0 | "Raven" | | 1 | "Nest" | | 2 | "Evan" | | 3 | "Silas" | | 4 | "Rory" |
| | places | (empty) | | globalScore | 0.926 | | windowScore | 1 | |
| 70.63% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 63 | | glossingSentenceCount | 2 | | matches | | 0 | "quite a smile" | | 1 | "something like hope" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1288 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 171 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 95 | | mean | 13.56 | | std | 14.2 | | cv | 1.047 | | sampleLengths | | 0 | 71 | | 1 | 4 | | 2 | 65 | | 3 | 3 | | 4 | 26 | | 5 | 26 | | 6 | 1 | | 7 | 22 | | 8 | 9 | | 9 | 14 | | 10 | 8 | | 11 | 2 | | 12 | 3 | | 13 | 21 | | 14 | 1 | | 15 | 2 | | 16 | 31 | | 17 | 18 | | 18 | 8 | | 19 | 3 | | 20 | 3 | | 21 | 18 | | 22 | 2 | | 23 | 2 | | 24 | 23 | | 25 | 24 | | 26 | 20 | | 27 | 3 | | 28 | 2 | | 29 | 15 | | 30 | 21 | | 31 | 7 | | 32 | 2 | | 33 | 4 | | 34 | 10 | | 35 | 17 | | 36 | 27 | | 37 | 41 | | 38 | 9 | | 39 | 16 | | 40 | 5 | | 41 | 3 | | 42 | 1 | | 43 | 13 | | 44 | 27 | | 45 | 4 | | 46 | 2 | | 47 | 4 | | 48 | 11 | | 49 | 26 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 98 | | matches | | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 1 | | totalVerbs | 180 | | matches | | |
| 42.61% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 7 | | semicolonCount | 0 | | flaggedSentences | 6 | | totalSentences | 171 | | ratio | 0.035 | | matches | | 0 | "She leaned against the bar, scanning the room out of habit—old instincts die hard." | | 1 | "His voice was the same—low, smooth, the kind that used to make her stomach flutter." | | 2 | "He stepped closer, close enough that she caught the scent of him—cedar and something sharp, like gun oil." | | 3 | "The secret room was exactly as she remembered—dim, windowless, the air thick with the scent of aged paper and whiskey." | | 4 | "She thought of the way her parents had looked at her when she’d finally told them the truth—disappointment, pity, the quiet horror of realizing their daughter had been broken by someone they’d trusted." | | 5 | "She thought of the girl she’d been before Evan—bright-eyed, ambitious, unafraid." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 878 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 30 | | adverbRatio | 0.03416856492027335 | | lyAdverbCount | 4 | | lyAdverbRatio | 0.004555808656036446 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 171 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 171 | | mean | 7.53 | | std | 5.82 | | cv | 0.773 | | sampleLengths | | 0 | 15 | | 1 | 20 | | 2 | 14 | | 3 | 22 | | 4 | 4 | | 5 | 19 | | 6 | 19 | | 7 | 27 | | 8 | 3 | | 9 | 3 | | 10 | 9 | | 11 | 14 | | 12 | 2 | | 13 | 13 | | 14 | 11 | | 15 | 1 | | 16 | 15 | | 17 | 7 | | 18 | 4 | | 19 | 5 | | 20 | 10 | | 21 | 4 | | 22 | 5 | | 23 | 3 | | 24 | 2 | | 25 | 3 | | 26 | 18 | | 27 | 3 | | 28 | 1 | | 29 | 2 | | 30 | 14 | | 31 | 17 | | 32 | 9 | | 33 | 3 | | 34 | 6 | | 35 | 5 | | 36 | 3 | | 37 | 3 | | 38 | 3 | | 39 | 5 | | 40 | 13 | | 41 | 2 | | 42 | 2 | | 43 | 13 | | 44 | 10 | | 45 | 5 | | 46 | 13 | | 47 | 6 | | 48 | 14 | | 49 | 6 |
| |
| 42.40% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 13 | | diversityRatio | 0.28654970760233917 | | totalSentences | 171 | | uniqueOpeners | 49 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 4 | | totalSentences | 88 | | matches | | 0 | "Then she saw him." | | 1 | "Then his mouth curved into" | | 2 | "Instead, he nodded toward the" | | 3 | "Then she pulled the crumpled" |
| | ratio | 0.045 | |
| 0.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 49 | | totalSentences | 88 | | matches | | 0 | "She leaned against the bar," | | 1 | "His dark hair was shorter" | | 2 | "Her stomach twisted." | | 3 | "She should’ve left." | | 4 | "His eyes locked onto hers," | | 5 | "His voice was the same—low," | | 6 | "She crossed her arms." | | 7 | "He gestured to the bar" | | 8 | "She exhaled through her nose." | | 9 | "He stepped closer, close enough" | | 10 | "She turned away, busying herself" | | 11 | "She didn’t flinch." | | 12 | "She wouldn’t give him the" | | 13 | "She laughed, sharp and bitter." | | 14 | "He studied her, his gaze" | | 15 | "She grabbed a rag and" | | 16 | "He reached out, his fingers" | | 17 | "She met his eyes." | | 18 | "She raised an eyebrow" | | 19 | "He didn’t answer." |
| | ratio | 0.557 | |
| 28.18% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 76 | | totalSentences | 88 | | matches | | 0 | "The Raven’s Nest hummed with" | | 1 | "Rory wiped her hands on" | | 2 | "She leaned against the bar," | | 3 | "The green neon sign outside" | | 4 | "Evan stood near the jukebox," | | 5 | "The years had carved sharper" | | 6 | "His dark hair was shorter" | | 7 | "Her stomach twisted." | | 8 | "She should’ve left." | | 9 | "His eyes locked onto hers," | | 10 | "His voice was the same—low," | | 11 | "She crossed her arms." | | 12 | "He gestured to the bar" | | 13 | "She exhaled through her nose." | | 14 | "He stepped closer, close enough" | | 15 | "She turned away, busying herself" | | 16 | "Evan leaned against the bar," | | 17 | "She didn’t flinch." | | 18 | "She wouldn’t give him the" | | 19 | "She laughed, sharp and bitter." |
| | ratio | 0.864 | |
| 56.82% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 88 | | matches | | | ratio | 0.011 | |
| 73.73% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 31 | | technicalSentenceCount | 3 | | matches | | 0 | "Evan stood near the jukebox, his back to her, fingers tapping against his thigh like he was counting seconds." | | 1 | "His voice was the same—low, smooth, the kind that used to make her stomach flutter." | | 2 | "But she just stood there, her chest heaving, the crumpled paper digging into her palm." |
| |
| 0.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 10 | | uselessAdditionCount | 3 | | matches | | 0 | "He reached out, his fingers hovering just above her wrist before dropping away" | | 1 | "She pushed, her boots thudding against the wooden floor" | | 2 | "She whirled back, her voice shaking" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 2 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 84 | | tagDensity | 0.024 | | leniency | 0.048 | | rawRatio | 0 | | effectiveRatio | 0 | |