| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 1 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 2 | | tagDensity | 0.5 | | leniency | 1 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 85.96% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 2136 | | totalAiIsmAdverbs | 6 | | found | | | highlights | | 0 | "slightly" | | 1 | "quickly" | | 2 | "slowly" | | 3 | "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) | |
| 62.55% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 2136 | | totalAiIsms | 16 | | found | | | highlights | | 0 | "stomach" | | 1 | "could feel" | | 2 | "pulsed" | | 3 | "warmth" | | 4 | "silence" | | 5 | "rhythmic" | | 6 | "pulse" | | 7 | "crystalline" | | 8 | "wavering" | | 9 | "resolve" | | 10 | "quickened" | | 11 | "sense of" |
| |
| 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 | 2 | | narrationSentences | 154 | | matches | | 0 | "was scared" | | 1 | "was terrified" |
| |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 2 | | narrationSentences | 154 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 155 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 54 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 3 | | markdownWords | 5 | | totalWords | 2160 | | ratio | 0.002 | | matches | | 0 | "The Grove. Tonight." | | 1 | "watching" | | 2 | "Aurora." |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 10 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 47 | | wordCount | 2152 | | uniqueNames | 15 | | maxNameDensity | 0.56 | | worstName | "Rory" | | maxWindowNameDensity | 2 | | worstWindowName | "Rory" | | discoveredNames | | Waterloo | 1 | | Rory | 12 | | Richmond | 3 | | Isabella | 1 | | Plantation | 1 | | Petersham | 1 | | Road | 1 | | Eva | 4 | | Grove | 9 | | Silas | 1 | | Park | 1 | | Heartstone | 8 | | November | 2 | | Isolde | 1 | | London | 1 |
| | persons | | 0 | "Rory" | | 1 | "Eva" | | 2 | "Silas" | | 3 | "Heartstone" |
| | places | | 0 | "Richmond" | | 1 | "Isabella" | | 2 | "Plantation" | | 3 | "Petersham" | | 4 | "Road" | | 5 | "Grove" | | 6 | "Park" | | 7 | "November" | | 8 | "London" |
| | globalScore | 1 | | windowScore | 1 | |
| 50.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 100 | | glossingSentenceCount | 4 | | matches | | 0 | "looked like petrified cloth" | | 1 | "blooms that seemed to generate their own faint luminescence" | | 2 | "looked like it had texture, like it would" | | 3 | "not quite managing" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 2 | | per1kWords | 0.926 | | wordCount | 2160 | | matches | | 0 | "not physical, not a wall, but a reluctance, a vast" | | 1 | "not a wall, but a reluctance, a vast" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 3 | | totalSentences | 155 | | matches | | 0 | "grooved that it" | | 1 | "panic — that she" | | 2 | "terrified that she" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 43 | | mean | 50.23 | | std | 41.12 | | cv | 0.818 | | sampleLengths | | 0 | 120 | | 1 | 13 | | 2 | 102 | | 3 | 20 | | 4 | 81 | | 5 | 98 | | 6 | 103 | | 7 | 24 | | 8 | 118 | | 9 | 11 | | 10 | 64 | | 11 | 8 | | 12 | 87 | | 13 | 86 | | 14 | 5 | | 15 | 7 | | 16 | 81 | | 17 | 7 | | 18 | 65 | | 19 | 88 | | 20 | 5 | | 21 | 4 | | 22 | 96 | | 23 | 3 | | 24 | 4 | | 25 | 62 | | 26 | 4 | | 27 | 56 | | 28 | 119 | | 29 | 14 | | 30 | 8 | | 31 | 114 | | 32 | 17 | | 33 | 87 | | 34 | 16 | | 35 | 33 | | 36 | 59 | | 37 | 2 | | 38 | 110 | | 39 | 21 | | 40 | 68 | | 41 | 17 | | 42 | 53 |
| |
| 96.15% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 4 | | totalSentences | 154 | | matches | | 0 | "was closed" | | 1 | "been closed" | | 2 | "been nineteen" | | 3 | "was terrified" |
| |
| 0.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 19 | | totalVerbs | 338 | | matches | | 0 | "was already pulling" | | 1 | "were moving" | | 2 | "were leaving" | | 3 | "was standing" | | 4 | "were hiding" | | 5 | "was choosing" | | 6 | "were drawing" | | 7 | "was standing" | | 8 | "was standing" | | 9 | "was standing" | | 10 | "was moving " | | 11 | "were adjusting" | | 12 | "was filling" | | 13 | "was producing" | | 14 | "were rearranging" | | 15 | "was trying" | | 16 | "were doing" | | 17 | "was shaking" | | 18 | "was running" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 25 | | semicolonCount | 0 | | flaggedSentences | 19 | | totalSentences | 155 | | ratio | 0.123 | | matches | | 0 | "Rory had called back four times and gotten voicemail each time — Eva's cheerful, slightly breathless recording, the one she'd made two years ago after too many ciders, the one that still ended with her laughing at something Rory couldn't remember." | | 1 | "She touched it through her shirt — a reflex, like pressing a tongue to a sore tooth." | | 2 | "But they were moving in the wrong direction — away from the center of the park, toward the perimeter, toward the roads and the fences and the human noise they normally avoided." | | 3 | "They didn't appear so much as accumulate — a thickening of shadow here, a too-regular shape there, until she was standing at the edge of the ring and the ancient oaks rose around her like dark pillars, their bark so weathered and grooved that it looked like petrified cloth." | | 4 | "It was warmer on this side — not much, just enough to notice, like stepping into a room where someone had recently been sitting." | | 5 | "In a normal clearing, even at night, sound would carry — bounce off trees, scatter into the sky, find its way to the ears of whatever small creatures were hiding in the undergrowth." | | 6 | "Between them, beyond the boundary of the Grove, the park should have been visible — trees, paths, the distant amber smear of London's light pollution." | | 7 | "It was underneath everything — underneath the nothing, underneath the suffocating quiet." | | 8 | "Not the gentle pulse she'd grown accustomed to — this was a sharp, sudden burn, like a coal pressed against her skin, and she gasped and yanked the pendant out from under her shirt by its silver chain." | | 9 | "But the shadow on the grass behind her was moving — not in the way shadows moved when a light source shifted, not the gentle sway of a cast shape responding to the motion of the body that threw it." | | 10 | "She was scared, and she was tired, and her brain was filling the silence with patterns that weren't there, the way brains did when—" | | 11 | "Rory became aware — with the specific, crystalline clarity that came right before panic — that she could no longer see the spaces between the standing oaks." | | 12 | "One of the standing oaks — the largest, the one she'd always used to orient herself when she entered the Grove — was moving." | | 13 | "The deep grooves in its bark were rearranging themselves with slow, grinding deliberation, the petrified cloth of its surface folding and unfolding, and in the shifting patterns of its grain she saw — or thought she saw, or was terrified that she saw — the suggestion of a face." | | 14 | "Some were almost recognizable — the long, severe lines of something fae, the hollow suggestion of eyes, the dark groove that might have been a mouth." | | 15 | "From somewhere beyond the ring of oaks — from inside the dark, from the place that was no longer the park and might never have been the park — something called her name." | | 16 | "She chose the gap between two oaks where the darkness looked thinnest, where she thought — hoped — prayed — the park still existed on the other side, and she threw herself at it." | | 17 | "She hit the boundary of the Grove and for one terrible, elongated moment she felt resistance — not physical, not a wall, but a reluctance, a vast and patient unwillingness to let her go, like pulling free from a hand that wasn't gripping but simply hadn't decided to open." | | 18 | "She climbed it badly, cutting her left wrist on the finial — a bright line of pain across the old crescent scar she'd carried since childhood." |
| |
| 90.83% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 2132 | | adjectiveStacks | 1 | | stackExamples | | 0 | "Slow, deep, steady breathing," |
| | adverbCount | 93 | | adverbRatio | 0.04362101313320826 | | lyAdverbCount | 23 | | lyAdverbRatio | 0.010787992495309569 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 155 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 155 | | mean | 13.94 | | std | 12.89 | | cv | 0.925 | | sampleLengths | | 0 | 54 | | 1 | 6 | | 2 | 6 | | 3 | 33 | | 4 | 13 | | 5 | 8 | | 6 | 13 | | 7 | 11 | | 8 | 4 | | 9 | 3 | | 10 | 2 | | 11 | 41 | | 12 | 41 | | 13 | 20 | | 14 | 17 | | 15 | 38 | | 16 | 26 | | 17 | 8 | | 18 | 13 | | 19 | 16 | | 20 | 8 | | 21 | 53 | | 22 | 8 | | 23 | 25 | | 24 | 2 | | 25 | 5 | | 26 | 32 | | 27 | 21 | | 28 | 3 | | 29 | 7 | | 30 | 3 | | 31 | 21 | | 32 | 20 | | 33 | 49 | | 34 | 22 | | 35 | 6 | | 36 | 21 | | 37 | 11 | | 38 | 4 | | 39 | 24 | | 40 | 4 | | 41 | 24 | | 42 | 4 | | 43 | 4 | | 44 | 8 | | 45 | 3 | | 46 | 1 | | 47 | 8 | | 48 | 33 | | 49 | 16 |
| |
| 33.12% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 27 | | diversityRatio | 0.3032258064516129 | | totalSentences | 155 | | uniqueOpeners | 47 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 5 | | totalSentences | 140 | | matches | | 0 | "More like breathing." | | 1 | "Just a shadow." | | 2 | "Just her shadow, thrown by" | | 3 | "Just enough to notice." | | 4 | "Then she was through, and" |
| | ratio | 0.036 | |
| 88.57% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 46 | | totalSentences | 140 | | matches | | 0 | "It had been closed since" | | 1 | "She climbed the fence where" | | 2 | "She stood in the wet" | | 3 | "She touched it through her" | | 4 | "She followed the path she" | | 5 | "She used the torch on" | | 6 | "She heard the deer before" | | 7 | "She watched their shapes pass" | | 8 | "They moved quickly." | | 9 | "They moved like things that" | | 10 | "They didn't appear so much" | | 11 | "She'd asked Isolde about that" | | 12 | "It was warmer on this" | | 13 | "she said, and her voice" | | 14 | "It was full." | | 15 | "It was the silence of" | | 16 | "She didn't reach into it." | | 17 | "She pulled out her phone." | | 18 | "She'd entered the park at" | | 19 | "She'd walked for at least" |
| | ratio | 0.329 | |
| 74.29% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 108 | | totalSentences | 140 | | matches | | 0 | "The last train from Waterloo" | | 1 | "The park was closed, of" | | 2 | "It had been closed since" | | 3 | "She climbed the fence where" | | 4 | "The sound of the fabric" | | 5 | "Everything was louder than it" | | 6 | "She stood in the wet" | | 7 | "The text had come from" | | 8 | "Tonight.* No follow-up." | | 9 | "Rory had called back four" | | 10 | "Each time the message played," | | 11 | "She touched it through her" | | 12 | "The crimson gem had been" | | 13 | "She followed the path she" | | 14 | "The moon was behind clouds" | | 15 | "She used the torch on" | | 16 | "She heard the deer before" | | 17 | "A rustle in the bracken" | | 18 | "Richmond was full of them." | | 19 | "She watched their shapes pass" |
| | ratio | 0.771 | |
| 71.43% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 2 | | totalSentences | 140 | | matches | | 0 | "Now she was here, in" | | 1 | "As though whatever was producing" |
| | ratio | 0.014 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 69 | | technicalSentenceCount | 15 | | matches | | 0 | "She used the torch on her phone sparingly, in quick sweeps, because the battery was at nineteen percent and because every time she turned it on, the light seeme…" | | 1 | "Wildflowers grew between them even now, even in November, small white and violet blooms that seemed to generate their own faint luminescence." | | 2 | "Here, her voice traveled about six feet and stopped, as though it had hit something solid." | | 3 | "Slow, deep, steady breathing, as though the ground itself were drawing air and releasing it, and she was standing on the chest of something impossibly large." | | 4 | "But the shadow on the grass behind her was moving — not in the way shadows moved when a light source shifted, not the gentle sway of a cast shape responding to …" | | 5 | "The shadow's edges rippled and rearranged, as though something beneath the surface of it were adjusting its position." | | 6 | "As though whatever was producing it had also been holding its breath, and had just released it, and was now settling into a new rhythm that was slightly, increm…" | | 7 | "Rory became aware — with the specific, crystalline clarity that came right before panic — that she could no longer see the spaces between the standing oaks." | | 8 | "The darkness that had filled those gaps had thickened, had advanced, had crept inward while she'd been watching her shadow, and now it pressed against the oaks …" | | 9 | "And from the Heartstone, which blazed against her palm like a small red star." | | 10 | "The deep grooves in its bark were rearranging themselves with slow, grinding deliberation, the petrified cloth of its surface folding and unfolding, and in the …" | | 11 | "Something with too many planes and angles, something that was trying to resolve itself into an expression she could read and not quite managing." | | 12 | "Some were almost recognizable — the long, severe lines of something fae, the hollow suggestion of eyes, the dark groove that might have been a mouth." | | 13 | "From somewhere beyond the ring of oaks — from inside the dark, from the place that was no longer the park and might never have been the park — something called …" | | 14 | "She hit the boundary of the Grove and for one terrible, elongated moment she felt resistance — not physical, not a wall, but a reluctance, a vast and patient un…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 1 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 1 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 2 | | tagDensity | 0.5 | | leniency | 1 | | rawRatio | 0 | | effectiveRatio | 0 | |