| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 1 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 1 | | tagDensity | 1 | | leniency | 1 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 75.35% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 2028 | | totalAiIsmAdverbs | 10 | | found | | | highlights | | 0 | "perfectly" | | 1 | "slowly" | | 2 | "suddenly" | | 3 | "completely" | | 4 | "very" | | 5 | "slightly" |
| |
| 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.90% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 2028 | | totalAiIsms | 26 | | found | | | highlights | | 0 | "could feel" | | 1 | "silence" | | 2 | "traced" | | 3 | "warmth" | | 4 | "echo" | | 5 | "lurch" | | 6 | "weight" | | 7 | "pulsed" | | 8 | "resolve" | | 9 | "predator" | | 10 | "throb" | | 11 | "lurched" | | 12 | "roaring" | | 13 | "unravel" | | 14 | "measured" |
| |
| 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 | 165 | | matches | (empty) | |
| 99.57% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 3 | | hedgeCount | 2 | | narrationSentences | 165 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 165 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 68 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 2 | | markdownWords | 4 | | totalWords | 2054 | | ratio | 0.002 | | matches | | 0 | "The grove. Midnight." | | 1 | "suggestion" |
| |
| 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 | 25 | | wordCount | 2053 | | uniqueNames | 13 | | maxNameDensity | 0.39 | | worstName | "Rory" | | maxWindowNameDensity | 1 | | worstWindowName | "Rory" | | discoveredNames | | Rory | 8 | | Park | 1 | | Tuesday | 1 | | Heartstone | 2 | | Tube | 2 | | Richmond | 2 | | Fae | 1 | | Grove | 1 | | November | 1 | | London | 2 | | Stupid | 1 | | Evan | 1 | | English | 2 |
| | persons | | 0 | "Rory" | | 1 | "Heartstone" | | 2 | "Evan" |
| | places | | 0 | "Park" | | 1 | "Richmond" | | 2 | "Fae" | | 3 | "Grove" | | 4 | "London" |
| | globalScore | 1 | | windowScore | 1 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 101 | | glossingSentenceCount | 1 | | matches | | 0 | "looked like it had been extracted from th" |
| |
| 53.94% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 3 | | per1kWords | 1.461 | | wordCount | 2054 | | matches | | 0 | "not as a thought but as a physical sensation" | | 1 | "not behind her, she decided, but to her left" | | 2 | "not into a shape exactly, but into the *suggestion* of a shape" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 165 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 53 | | mean | 38.75 | | std | 31.17 | | cv | 0.804 | | sampleLengths | | 0 | 37 | | 1 | 27 | | 2 | 69 | | 3 | 79 | | 4 | 12 | | 5 | 81 | | 6 | 71 | | 7 | 15 | | 8 | 7 | | 9 | 45 | | 10 | 3 | | 11 | 125 | | 12 | 47 | | 13 | 43 | | 14 | 60 | | 15 | 5 | | 16 | 83 | | 17 | 21 | | 18 | 15 | | 19 | 69 | | 20 | 4 | | 21 | 57 | | 22 | 5 | | 23 | 61 | | 24 | 16 | | 25 | 7 | | 26 | 76 | | 27 | 4 | | 28 | 67 | | 29 | 19 | | 30 | 49 | | 31 | 3 | | 32 | 62 | | 33 | 39 | | 34 | 17 | | 35 | 69 | | 36 | 5 | | 37 | 60 | | 38 | 72 | | 39 | 8 | | 40 | 2 | | 41 | 70 | | 42 | 2 | | 43 | 109 | | 44 | 64 | | 45 | 6 | | 46 | 15 | | 47 | 39 | | 48 | 10 | | 49 | 26 |
| |
| 92.50% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 6 | | totalSentences | 165 | | matches | | 0 | "been clawed" | | 1 | "were supposed" | | 2 | "been soundproofed" | | 3 | "been extracted" | | 4 | "are supposed" | | 5 | "were locked" |
| |
| 74.61% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 6 | | totalVerbs | 319 | | matches | | 0 | "was passing" | | 1 | "was standing" | | 2 | "was studying" | | 3 | "was giving" | | 4 | "was standing" | | 5 | "was stumbling" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 27 | | semicolonCount | 0 | | flaggedSentences | 20 | | totalSentences | 165 | | ratio | 0.121 | | matches | | 0 | "The deer were somewhere out in that blackness — she could feel them the way you feel someone watching from across a pub." | | 1 | "Her torch swept across bark so old it had turned to something closer to stone — grey and grooved in deep vertical channels, like the thing had been clawed by centuries of patient fingers." | | 2 | "She followed them like breadcrumbs, counting under her breath — three, four, five — until the trees around her thickened and the canopy overhead closed like a fist and the sounds of the park fell away." | | 3 | "The silence was so complete it had texture — a cottony pressure against her eardrums, the way silence feels in a room that's been soundproofed." | | 4 | "Wildflowers carpeted the ground in defiance of November — bluebells and primroses and things she couldn't name, all leached of colour by the darkness but visible somehow, as though they generated their own faint luminescence." | | 5 | "She knew it was overcast tonight — she'd checked the weather, she'd seen the low orange ceiling of London clouds from the train — but here the sky was clear and full of stars she didn't recognise." | | 6 | "Not from wind — there was no wind — but a slow, directional swaying, as though something was passing through them just below her line of sight." | | 7 | "The certainty arrived fully formed, not as a thought but as a physical sensation — the same lurch in the gut she'd felt the night she realised Evan had locked the front door from the inside." | | 8 | "Something was there — not behind her, she decided, but to her left." | | 9 | "But as she stared at it, the darkness seemed to resolve — not into a shape exactly, but into the *suggestion* of a shape." | | 10 | "She had the terrible impression that it was studying her with the same careful attention she was giving it — that they were locked in a mutual observation, predator and prey, and she wasn't sure which one she was." | | 11 | "She pressed her hand to it through her shirt and felt the crimson stone throb against her palm— a rhythm that didn't match her heartbeat." | | 12 | "A low, resonant vibration that she felt in the soles of her feet before her ears caught up — a hum, almost musical, almost beautiful, rising through the earth like something vast turning over in its sleep and beginning to wake." | | 13 | "They'd been bluebells a moment ago — she was certain of that — but now they were something else." | | 14 | "She lurched sideways, out of the dark patch, and the flowers she stepped into were normal again — pale, cool, ordinary." | | 15 | "A single, low exhalation that nevertheless contained in it the architecture of laughter — the rhythm, the breath pattern, the suggestion of amusement — translated into a register that human vocal cords couldn't produce." | | 16 | "She hit the treeline at full sprint and crashed through undergrowth that grabbed and tore and suddenly the sounds of the world came roaring back — wind and distant traffic and a fox screaming somewhere to the west — and she was stumbling through ordinary English woodland in ordinary English dark with branches whipping at her face and her heart hammering so hard she could feel it in her teeth." | | 17 | "Her phone had survived — somehow still clutched in her left hand, the hand with the crescent scar, her knuckles bone-white around it." | | 18 | "She did not look back, because she understood now — the way the body understands before the mind catches up — that the grove had let her leave." | | 19 | "The stars overhead were London's stars again — dim and sparse and mercifully, blessedly wrong in all the right ways." |
| |
| 95.38% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 2032 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 92 | | adverbRatio | 0.045275590551181105 | | lyAdverbCount | 26 | | lyAdverbRatio | 0.012795275590551181 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 165 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 165 | | mean | 12.45 | | std | 11.66 | | cv | 0.937 | | sampleLengths | | 0 | 37 | | 1 | 4 | | 2 | 23 | | 3 | 22 | | 4 | 23 | | 5 | 16 | | 6 | 8 | | 7 | 16 | | 8 | 42 | | 9 | 11 | | 10 | 4 | | 11 | 6 | | 12 | 12 | | 13 | 34 | | 14 | 18 | | 15 | 6 | | 16 | 23 | | 17 | 8 | | 18 | 20 | | 19 | 7 | | 20 | 36 | | 21 | 2 | | 22 | 2 | | 23 | 11 | | 24 | 3 | | 25 | 3 | | 26 | 1 | | 27 | 3 | | 28 | 2 | | 29 | 2 | | 30 | 25 | | 31 | 13 | | 32 | 3 | | 33 | 20 | | 34 | 35 | | 35 | 5 | | 36 | 37 | | 37 | 3 | | 38 | 2 | | 39 | 23 | | 40 | 9 | | 41 | 4 | | 42 | 3 | | 43 | 31 | | 44 | 9 | | 45 | 33 | | 46 | 1 | | 47 | 1 | | 48 | 4 | | 49 | 3 |
| |
| 40.65% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 20 | | diversityRatio | 0.3170731707317073 | | totalSentences | 164 | | uniqueOpeners | 52 | |
| 94.56% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 4 | | totalSentences | 141 | | matches | | 0 | "Too many stars." | | 1 | "More than enough." | | 2 | "Just flowers and starlight and" | | 3 | "More than three hours had" |
| | ratio | 0.028 | |
| 72.48% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 52 | | totalSentences | 141 | | matches | | 0 | "She was, of course." | | 1 | "She kept her torch fixed" | | 2 | "It had been warm when" | | 3 | "She didn't know what that" | | 4 | "She found the first oak" | | 5 | "Her torch swept across bark" | | 6 | "It stood apart from any" | | 7 | "She reached out and touched" | | 8 | "She turned slowly, sweeping the" | | 9 | "She followed them like breadcrumbs," | | 10 | "She stopped walking." | | 11 | "She swallowed and heard the" | | 12 | "She stepped between the last" | | 13 | "She knew it was overcast" | | 14 | "It painted the grove in" | | 15 | "She'd come because the message" | | 16 | "She knew that." | | 17 | "She'd known it while lacing" | | 18 | "She checked the time." | | 19 | "She tracked the movement as" |
| | ratio | 0.369 | |
| 80.57% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 107 | | totalSentences | 141 | | matches | | 0 | "The last dog-walker had disappeared" | | 1 | "She was, of course." | | 2 | "Richmond Park at eleven o'clock" | | 3 | "The deer were somewhere out" | | 4 | "Hundreds of dark eyes in" | | 5 | "She kept her torch fixed" | | 6 | "The Heartstone pendant lay flat" | | 7 | "It had been warm when" | | 8 | "She didn't know what that" | | 9 | "She found the first oak" | | 10 | "Her torch swept across bark" | | 11 | "It stood apart from any" | | 12 | "She reached out and touched" | | 13 | "The wood was dry and" | | 14 | "She turned slowly, sweeping the" | | 15 | "The third, another twenty feet" | | 16 | "She followed them like breadcrumbs," | | 17 | "She stopped walking." | | 18 | "The silence was so complete" | | 19 | "She swallowed and heard the" |
| | ratio | 0.759 | |
| 100.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 5 | | totalSentences | 141 | | matches | | 0 | "By the time she reached" | | 1 | "Now it was cold." | | 2 | "As if someone had pressed" | | 3 | "Before, it had been the" | | 4 | "Now it was the silence" |
| | ratio | 0.035 | |
| 57.14% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 75 | | technicalSentenceCount | 9 | | matches | | 0 | "The last dog-walker had disappeared down the path twenty minutes ago, and Rory stood at the edge of the treeline with her phone's torch cutting a thin blade thr…" | | 1 | "Wildflowers carpeted the ground in defiance of November — bluebells and primroses and things she couldn't name, all leached of colour by the darkness but visibl…" | | 2 | "Arranged in constellations that looked almost right but weren't, the way a word looks almost right when you've stared at it too long." | | 3 | "Not from wind — there was no wind — but a slow, directional swaying, as though something was passing through them just below her line of sight." | | 4 | "She tracked the movement as it curved wide around the clearing's edge, a rippling wake in the bluebells that traced a lazy semicircle and then stopped." | | 5 | "She pressed her hand to it through her shirt and felt the crimson stone throb against her palm— a rhythm that didn't match her heartbeat." | | 6 | "All of them, all at once, a collective tremor that rippled outward from the centre of the clearing." | | 7 | "She hit the treeline at full sprint and crashed through undergrowth that grabbed and tore and suddenly the sounds of the world came roaring back — wind and dist…" | | 8 | "The pendant lay against her sternum, cooling steadily, its crimson glow fading to something barely visible through the fabric of her shirt." |
| |
| 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 | |