| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 5 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 10 | | tagDensity | 0.5 | | leniency | 1 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 83.93% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1556 | | totalAiIsmAdverbs | 5 | | found | | | highlights | | 0 | "slowly" | | 1 | "gently" | | 2 | "utterly" | | 3 | "completely" | | 4 | "very" |
| |
| 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) | |
| 35.73% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1556 | | totalAiIsms | 20 | | found | | | highlights | | 0 | "pulsed" | | 1 | "warmth" | | 2 | "silence" | | 3 | "comfortable" | | 4 | "throb" | | 5 | "depths" | | 6 | "could feel" | | 7 | "resolved" | | 8 | "gloom" | | 9 | "dance" | | 10 | "footsteps" | | 11 | "rhythmic" | | 12 | "trembled" |
| |
| 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 | 145 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 4 | | narrationSentences | 145 | | filterMatches | (empty) | | hedgeMatches | | 0 | "seemed to" | | 1 | "begin to" | | 2 | "began to" |
| |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 150 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 44 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 1 | | markdownWords | 1 | | totalWords | 1548 | | ratio | 0.001 | | matches | | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 5 | | unquotedAttributions | 0 | | matches | (empty) | |
| 96.02% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 22 | | wordCount | 1482 | | uniqueNames | 6 | | maxNameDensity | 1.08 | | worstName | "Aurora" | | maxWindowNameDensity | 2 | | worstWindowName | "Aurora" | | discoveredNames | | Park | 1 | | Heartstone | 2 | | Pendant | 1 | | Grove | 1 | | Aurora | 16 | | Carter | 1 |
| | persons | | 0 | "Pendant" | | 1 | "Aurora" | | 2 | "Carter" |
| | places | | 0 | "Park" | | 1 | "Heartstone" | | 2 | "Grove" |
| | globalScore | 0.96 | | windowScore | 1 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 88 | | glossingSentenceCount | 1 | | matches | | |
| 70.80% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 2 | | per1kWords | 1.292 | | wordCount | 1548 | | matches | | 0 | "Not the comfortable silence of an empty field, but the dense, heavy kind" | | 1 | "no way out but" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 150 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 62 | | mean | 24.97 | | std | 18.89 | | cv | 0.757 | | sampleLengths | | 0 | 45 | | 1 | 42 | | 2 | 50 | | 3 | 10 | | 4 | 54 | | 5 | 4 | | 6 | 3 | | 7 | 50 | | 8 | 5 | | 9 | 52 | | 10 | 12 | | 11 | 41 | | 12 | 36 | | 13 | 27 | | 14 | 24 | | 15 | 2 | | 16 | 57 | | 17 | 25 | | 18 | 43 | | 19 | 61 | | 20 | 13 | | 21 | 6 | | 22 | 61 | | 23 | 7 | | 24 | 26 | | 25 | 19 | | 26 | 31 | | 27 | 15 | | 28 | 25 | | 29 | 6 | | 30 | 1 | | 31 | 47 | | 32 | 5 | | 33 | 46 | | 34 | 6 | | 35 | 44 | | 36 | 4 | | 37 | 7 | | 38 | 45 | | 39 | 1 | | 40 | 32 | | 41 | 3 | | 42 | 27 | | 43 | 32 | | 44 | 15 | | 45 | 7 | | 46 | 8 | | 47 | 35 | | 48 | 6 | | 49 | 9 |
| |
| 95.58% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 4 | | totalSentences | 145 | | matches | | 0 | "been plunged" | | 1 | "was covered" | | 2 | "were painted" | | 3 | "was blocked" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 1 | | totalVerbs | 245 | | matches | | |
| 9.52% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 8 | | semicolonCount | 0 | | flaggedSentences | 7 | | totalSentences | 150 | | ratio | 0.047 | | matches | | 0 | "Even in the depths of autumn, they bloomed in impossible profusion—roses, jasmine, lilies, flowers that had no business growing together, all tangled together in a carpet of white and red and purple." | | 1 | "They hung from the trunk and the limbs at every angle—old doors, new doors, doors of wood and metal and something that looked almost like bone." | | 2 | "Not sun-warmed, not natural warmth—something else." | | 3 | "The boundary between the grove and the park beyond was right there—five feet away—and she could feel it, the shift in pressure, the change in temperature, the return of ordinary night with its ordinary sounds." | | 4 | "Just—blocked." | | 5 | "In that light she saw them—shapes in the flowers, forms that had been hiding in the wrongness, that had been there all along just at the edge of perception." | | 6 | "But something laughed—a sound like ice cracking, like children singing in a minor key, like something that had forgotten how joy worked and was trying very hard to remember." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 143 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 3 | | adverbRatio | 0.02097902097902098 | | lyAdverbCount | 1 | | lyAdverbRatio | 0.006993006993006993 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 150 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 150 | | mean | 10.32 | | std | 8.9 | | cv | 0.862 | | sampleLengths | | 0 | 13 | | 1 | 15 | | 2 | 17 | | 3 | 14 | | 4 | 28 | | 5 | 6 | | 6 | 6 | | 7 | 38 | | 8 | 10 | | 9 | 2 | | 10 | 15 | | 11 | 14 | | 12 | 23 | | 13 | 4 | | 14 | 3 | | 15 | 5 | | 16 | 18 | | 17 | 2 | | 18 | 3 | | 19 | 8 | | 20 | 14 | | 21 | 5 | | 22 | 9 | | 23 | 18 | | 24 | 18 | | 25 | 7 | | 26 | 12 | | 27 | 4 | | 28 | 32 | | 29 | 5 | | 30 | 20 | | 31 | 12 | | 32 | 4 | | 33 | 6 | | 34 | 21 | | 35 | 15 | | 36 | 3 | | 37 | 6 | | 38 | 2 | | 39 | 7 | | 40 | 13 | | 41 | 19 | | 42 | 18 | | 43 | 25 | | 44 | 7 | | 45 | 18 | | 46 | 18 | | 47 | 2 | | 48 | 19 | | 49 | 26 |
| |
| 36.67% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 20 | | diversityRatio | 0.2733333333333333 | | totalSentences | 150 | | uniqueOpeners | 41 | |
| 80.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 3 | | totalSentences | 125 | | matches | | 0 | "Just her own breathing and" | | 1 | "Instead, pale light leaked from" | | 2 | "Just smooth, pale surfaces where" |
| | ratio | 0.024 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 34 | | totalSentences | 125 | | matches | | 0 | "She ducked through, feeling branches" | | 1 | "She didn't know who sent" | | 2 | "She didn't know who *she*" | | 3 | "She kept her eyes on" | | 4 | "She stopped walking." | | 5 | "She should have been plunged" | | 6 | "They gave off no scent." | | 7 | "Her breath plumed white." | | 8 | "She was in the grove" | | 9 | "She could feel it, some" | | 10 | "Her voice came out strange," | | 11 | "She tried again." | | 12 | "She moved toward it without" | | 13 | "They crushed beneath her boots" | | 14 | "She shook it off, focused" | | 15 | "It grew from the center" | | 16 | "She stopped at the edge" | | 17 | "They hung from the trunk" | | 18 | "They swung gently in that" | | 19 | "She hadn't cut herself." |
| | ratio | 0.272 | |
| 68.00% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 98 | | totalSentences | 125 | | matches | | 0 | "Aurora found the gap in" | | 1 | "She ducked through, feeling branches" | | 2 | "Richmond Park stretched out before" | | 3 | "The Heartstone Pendant pulsed against" | | 4 | "That warmth had been growing" | | 5 | "She didn't know who sent" | | 6 | "She didn't know who *she*" | | 7 | "The grass came up to" | | 8 | "The moon hung overhead, impossibly" | | 9 | "She kept her eyes on" | | 10 | "The pendant pulsed again." | | 11 | "She stopped walking." | | 12 | "The silence hit her first." | | 13 | "Aurora resumed walking, faster now." | | 14 | "The standing stones emerged from" | | 15 | "The oaks grew up between" | | 16 | "She should have been plunged" | | 17 | "The wildflowers were wrong." | | 18 | "They gave off no scent." | | 19 | "Aurora stepped between two of" |
| | ratio | 0.784 | |
| 80.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 2 | | totalSentences | 125 | | matches | | 0 | "Now the stone burned like" | | 1 | "Even in the depths of" |
| | ratio | 0.016 | |
| 63.49% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 54 | | technicalSentenceCount | 6 | | matches | | 0 | "The moon hung overhead, impossibly bright, casting shadows that seemed too sharp, too defined." | | 1 | "Even in the depths of autumn, they bloomed in impossible profusion—roses, jasmine, lilies, flowers that had no business growing together, all tangled together i…" | | 2 | "The deep crimson gem blazed with inner light now, pulsing in a rhythm that matched no heartbeat she recognized." | | 3 | "They crushed beneath her boots with a wet sound, releasing a faint sweetness that made her head swim." | | 4 | "In that light she saw them—shapes in the flowers, forms that had been hiding in the wrongness, that had been there all along just at the edge of perception." | | 5 | "But something laughed—a sound like ice cracking, like children singing in a minor key, like something that had forgotten how joy worked and was trying very hard…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 5 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 50.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 3 | | fancyCount | 1 | | fancyTags | | | dialogueSentences | 10 | | tagDensity | 0.3 | | leniency | 0.6 | | rawRatio | 0.333 | | effectiveRatio | 0.2 | |