| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 2 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 17 | | tagDensity | 0.118 | | leniency | 0.235 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 92.37% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1311 | | totalAiIsmAdverbs | 2 | | 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) | |
| 23.72% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1311 | | totalAiIsms | 20 | | found | | | highlights | | 0 | "silence" | | 1 | "comforting" | | 2 | "echoed" | | 3 | "loomed" | | 4 | "warmth" | | 5 | "whisper" | | 6 | "echoing" | | 7 | "chill" | | 8 | "trembled" | | 9 | "searing" | | 10 | "pulsed" | | 11 | "glint" | | 12 | "flickered" | | 13 | "pulse" | | 14 | "beacon" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 1 | | maxInWindow | 1 | | found | | 0 | | label | "clenched jaw/fists" | | count | 1 |
|
| | highlights | | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 100 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 0 | | narrationSentences | 100 | | filterMatches | (empty) | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 113 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 35 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1295 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 7 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 12 | | wordCount | 1157 | | uniqueNames | 7 | | maxNameDensity | 0.26 | | worstName | "Aurora" | | maxWindowNameDensity | 1 | | worstWindowName | "Aurora" | | discoveredNames | | Aurora | 3 | | Carter | 1 | | Richmond | 2 | | Park | 1 | | Heartstone | 3 | | Pendant | 1 | | Grove | 1 |
| | persons | | 0 | "Aurora" | | 1 | "Carter" | | 2 | "Heartstone" | | 3 | "Pendant" | | 4 | "Grove" |
| | places | | | globalScore | 1 | | windowScore | 1 | |
| 88.27% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 81 | | glossingSentenceCount | 2 | | matches | | 0 | "as though considering her challenge" | | 1 | "not quite disappearing, not quite coming close" | | 2 | "not quite coming close" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.772 | | wordCount | 1295 | | matches | | 0 | "Not comforting, but she pressed forward" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 113 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 43 | | mean | 30.12 | | std | 20.6 | | cv | 0.684 | | sampleLengths | | 0 | 74 | | 1 | 42 | | 2 | 76 | | 3 | 49 | | 4 | 59 | | 5 | 39 | | 6 | 59 | | 7 | 30 | | 8 | 4 | | 9 | 27 | | 10 | 70 | | 11 | 28 | | 12 | 43 | | 13 | 16 | | 14 | 27 | | 15 | 8 | | 16 | 25 | | 17 | 17 | | 18 | 22 | | 19 | 23 | | 20 | 54 | | 21 | 12 | | 22 | 55 | | 23 | 7 | | 24 | 15 | | 25 | 52 | | 26 | 48 | | 27 | 11 | | 28 | 10 | | 29 | 49 | | 30 | 8 | | 31 | 3 | | 32 | 4 | | 33 | 6 | | 34 | 9 | | 35 | 27 | | 36 | 24 | | 37 | 4 | | 38 | 43 | | 39 | 22 | | 40 | 15 | | 41 | 38 | | 42 | 41 |
| |
| 98.25% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 2 | | totalSentences | 100 | | matches | | 0 | "been told" | | 1 | "being pressed" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 197 | | matches | (empty) | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 16 | | semicolonCount | 4 | | flaggedSentences | 19 | | totalSentences | 113 | | ratio | 0.168 | | matches | | 0 | "Not the sort of scent that belonged in Richmond Park—not at this hour, after dusk, deep among brambles and muddy deer trails, yet each breath carried it deeper into her lungs." | | 1 | "Her pocket held the Heartstone Pendant—warm, pulsing steady like a second heartbeat." | | 2 | "The pendant’s glow seeped through her fingers—dim, barely more than a smouldering coal, but persistent." | | 3 | "Nothing else called out—none of Richmond’s usual foxes screaming, no distant traffic drone." | | 4 | "She left no trail behind; each step, when she glanced back, erased itself." | | 5 | "She’d come for the Grove’s answer—her answer—and she’d get it, if she could just push past the feeling of being pressed in on all sides, air thick, heavy with watching." | | 6 | "But the sound went on—a dry, implacable scrape, like something restless writhed just out of sight." | | 7 | "She’d heard it before—in a stairwell, behind a locked door." | | 8 | "A ripple moved through flowers to her left; purple petals flattened in a neat line, then sprang upright." | | 9 | "Her name, clipped; no warmth." | | 10 | "Her mouth tasted of old pennies—metallic, spiteful." | | 11 | "She felt, more than heard, a collective sigh—the grove inhaling, exhaling, fleshless and endless." | | 12 | "It pulsed beneath her touch—slow, ponderous, like the thud of something enormous sleeping just beneath the earth." | | 13 | "She glimpsed a foot—bare, pale, the skin wrong and slick." | | 14 | "Petals twitched as the thing moved, always half a second beyond her sight; not quite disappearing, not quite coming close." | | 15 | "She saw the glint of a blade—no, not metal." | | 16 | "The wind found her then—just for a second, ruffling hair cold against her scalp." | | 17 | "Aurora reached to unclasp the chain and knew she wasn’t alone—had never been alone, not since stepping between those blighted oaks." | | 18 | "The shadows pressed close—and she held her ground." |
| |
| 98.42% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1172 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 49 | | adverbRatio | 0.041808873720136516 | | lyAdverbCount | 6 | | lyAdverbRatio | 0.005119453924914676 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 113 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 113 | | mean | 11.46 | | std | 7.06 | | cv | 0.616 | | sampleLengths | | 0 | 8 | | 1 | 35 | | 2 | 31 | | 3 | 12 | | 4 | 8 | | 5 | 22 | | 6 | 6 | | 7 | 20 | | 8 | 12 | | 9 | 17 | | 10 | 21 | | 11 | 16 | | 12 | 18 | | 13 | 15 | | 14 | 6 | | 15 | 15 | | 16 | 10 | | 17 | 18 | | 18 | 10 | | 19 | 10 | | 20 | 7 | | 21 | 13 | | 22 | 5 | | 23 | 2 | | 24 | 2 | | 25 | 3 | | 26 | 7 | | 27 | 13 | | 28 | 6 | | 29 | 30 | | 30 | 4 | | 31 | 5 | | 32 | 5 | | 33 | 16 | | 34 | 2 | | 35 | 2 | | 36 | 18 | | 37 | 9 | | 38 | 13 | | 39 | 21 | | 40 | 10 | | 41 | 26 | | 42 | 16 | | 43 | 12 | | 44 | 18 | | 45 | 13 | | 46 | 4 | | 47 | 8 | | 48 | 12 | | 49 | 4 |
| |
| 46.02% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 8 | | diversityRatio | 0.3185840707964602 | | totalSentences | 113 | | uniqueOpeners | 36 | |
| 70.18% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 2 | | totalSentences | 95 | | matches | | 0 | "Of course, she had to" | | 1 | "Just her own shadow, smeared" |
| | ratio | 0.021 | |
| 38.95% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 43 | | totalSentences | 95 | | matches | | 0 | "She paused, one boot sucking" | | 1 | "She pressed a thumb to" | | 2 | "Her pocket held the Heartstone" | | 3 | "It’d gone hot as a" | | 4 | "She held it in her" | | 5 | "She found the grove: a" | | 6 | "They bent lazily in no" | | 7 | "She took a slow step" | | 8 | "She released it, let the" | | 9 | "She moved deeper." | | 10 | "She left no trail behind;" | | 11 | "She’d come for the Grove’s" | | 12 | "Her voice vanished, swamped by" | | 13 | "She heard it then, quiet" | | 14 | "Her memory snagged on nothing" | | 15 | "She’d heard it before—in a" | | 16 | "She clenched her fists, felt" | | 17 | "she called, careful to keep" | | 18 | "She jerked back, boots landing" | | 19 | "Its eyes caught hers, beads" |
| | ratio | 0.453 | |
| 49.47% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 78 | | totalSentences | 95 | | matches | | 0 | "She paused, one boot sucking" | | 1 | "The slip of leather on" | | 2 | "She pressed a thumb to" | | 3 | "Her pocket held the Heartstone" | | 4 | "It’d gone hot as a" | | 5 | "She held it in her" | | 6 | "She found the grove: a" | | 7 | "The ancient oaks ringed a" | | 8 | "They bent lazily in no" | | 9 | "She took a slow step" | | 10 | "The pendant’s glow seeped through" | | 11 | "She released it, let the" | | 12 | "The stones here, she’d been" | | 13 | "Shadows clung to their bases," | | 14 | "A crow watched from the" | | 15 | "Nothing else called out—none of" | | 16 | "She moved deeper." | | 17 | "The grass didn’t flatten under" | | 18 | "She left no trail behind;" | | 19 | "She’d come for the Grove’s" |
| | ratio | 0.821 | |
| 100.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 2 | | totalSentences | 95 | | matches | | 0 | "No matter how gently Aurora" | | 1 | "To her right, something stepped" |
| | ratio | 0.021 | |
| 87.91% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 52 | | technicalSentenceCount | 4 | | matches | | 0 | "No matter how gently Aurora Carter moved beneath the cover of tree limbs, cold air bit at her uncovered hands and face with a gusty sharpness that carried the s…" | | 1 | "She held it in her fist now, eyes darting under the fringe of black hair that kept tangling against her cheeks." | | 2 | "They bent lazily in no wind at all, petals trembling almost as if they breathed." | | 3 | "She stepped back, cursing, almost tripping over a root that hadn’t been there a moment earlier." |
| |
| 0.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 2 | | uselessAdditionCount | 1 | | matches | | 0 | "she called, careful to keep her tone cool, almost dismissive" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 1 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 17 | | tagDensity | 0.059 | | leniency | 0.118 | | rawRatio | 0 | | effectiveRatio | 0 | |