| 57.14% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 7 | | adverbTagCount | 1 | | adverbTags | | 0 | "the voice said again [again]" |
| | dialogueSentences | 13 | | tagDensity | 0.538 | | leniency | 1 | | rawRatio | 0.143 | | effectiveRatio | 0.143 | |
| 77.49% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1555 | | totalAiIsmAdverbs | 7 | | found | | | highlights | | 0 | "carefully" | | 1 | "sharply" | | 2 | "very" | | 3 | "gently" | | 4 | "perfectly" |
| |
| 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) | |
| 51.77% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1555 | | totalAiIsms | 15 | | found | | | highlights | | 0 | "pulsed" | | 1 | "throbbed" | | 2 | "footsteps" | | 3 | "pulse" | | 4 | "weight" | | 5 | "silence" | | 6 | "lilt" | | 7 | "perfect" | | 8 | "stomach" | | 9 | "warmth" | | 10 | "flickered" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 1 | | maxInWindow | 1 | | found | | 0 | | label | "stomach dropped/sank" | | count | 1 |
|
| | highlights | | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 105 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 2 | | narrationSentences | 105 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 110 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 71 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 2 | | markdownWords | 16 | | totalWords | 1574 | | ratio | 0.01 | | matches | | 0 | "Go to the grove in Richmond. The night of the new moon. Wear it." | | 1 | "come here" |
| |
| 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 | 26 | | wordCount | 1511 | | uniqueNames | 11 | | maxNameDensity | 0.4 | | worstName | "Eva" | | maxWindowNameDensity | 2 | | worstWindowName | "Eva" | | discoveredNames | | Richmond | 2 | | Park | 1 | | Heartstone | 1 | | Eva | 6 | | January | 1 | | London | 3 | | Cardiff-softened | 1 | | Warm | 1 | | Pleased | 1 | | Evan | 4 | | Rory | 5 |
| | persons | | | places | | 0 | "Richmond" | | 1 | "Park" | | 2 | "London" | | 3 | "Warm" |
| | globalScore | 1 | | windowScore | 1 | |
| 27.05% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 61 | | glossingSentenceCount | 3 | | matches | | 0 | "smelled like incense and worse, had once c" | | 1 | "felt like a full minute, her pulse tick" | | 2 | "felt like when someone wanted to positi" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1574 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 2 | | totalSentences | 110 | | matches | | 0 | "knew that the" | | 1 | "was that the" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 32 | | mean | 49.19 | | std | 35.14 | | cv | 0.714 | | sampleLengths | | 0 | 70 | | 1 | 12 | | 2 | 68 | | 3 | 122 | | 4 | 108 | | 5 | 4 | | 6 | 64 | | 7 | 103 | | 8 | 38 | | 9 | 113 | | 10 | 55 | | 11 | 17 | | 12 | 50 | | 13 | 5 | | 14 | 104 | | 15 | 9 | | 16 | 16 | | 17 | 1 | | 18 | 60 | | 19 | 3 | | 20 | 28 | | 21 | 78 | | 22 | 8 | | 23 | 58 | | 24 | 58 | | 25 | 15 | | 26 | 69 | | 27 | 40 | | 28 | 40 | | 29 | 45 | | 30 | 78 | | 31 | 35 |
| |
| 95.24% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 3 | | totalSentences | 105 | | matches | | 0 | "was supposed" | | 1 | "was supposed" | | 2 | "was gone" |
| |
| 41.27% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 6 | | totalVerbs | 252 | | matches | | 0 | "was starting" | | 1 | "were absorbing" | | 2 | "were blooming" | | 3 | "was standing" | | 4 | "was explaining" | | 5 | "was waiting" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 19 | | semicolonCount | 1 | | flaggedSentences | 17 | | totalSentences | 110 | | ratio | 0.155 | | matches | | 0 | "Rory noticed that first — the chain coiled neatly on the ground beside the post, as if someone had set it down carefully, the way you'd put away a tool you intended to use again." | | 1 | "She knew that the way you know a stove is hot — abstractly, until you touch it." | | 2 | "Then, after a hundred meters, they were too quiet — muffled, as if the ground were absorbing them, keeping them." | | 3 | "There was a stand of oaks, dark and patient, and between two of them — she was almost sure it hadn't been there when she'd looked a moment ago — a gap, a corridor of clear air through the trees." | | 4 | "The flowers were blooming anyway — small white ones, five-petaled, open and dew-wet, swaying gently in a breeze she could not feel." | | 5 | "It opened into a clearing ringed by standing stones — she counted nine before she stopped counting, because they weren't all where she'd counted them." | | 6 | "They were oak, which was its own wrongness; stones that had once been trees, or trees pretending to be stones, their surfaces carved with grain and knots and what might have been faces if faces could be made of weather." | | 7 | "Wildflowers carpeted the whole clearing, white and luminous under her phone's light, and the sky above was full of stars in a pattern she did not recognize — too many, too bright, arranged in spirals that hurt to look at directly." | | 8 | "She turned in a slow circle, looking for what she was supposed to find — a person, an object, a door." | | 9 | "They came from the trees on the far side of the clearing, unhurried, soft on the flower carpet, and they matched her own stride exactly — she knew because she'd been listening to her own footsteps for twenty minutes and these were the same weight, the same slight drag of her left boot with its worn heel." | | 10 | "Except Eva was in London, in her flat, asleep, and this voice had come from everywhere at once — the stones, the ground, the flowers, the space behind her own teeth." | | 11 | "She had spent two years learning, muscle by muscle, what it felt like when someone wanted to position her — a hand at her elbow, a voice that said *come here* like it was kindness." | | 12 | "It made no sound at all, and that was somehow the worst thing yet — hundreds of flowers moving in perfect silence, the way a crowd turns to watch." | | 13 | "She turned toward the corridor between the stones — the way she'd come — and the corridor was gone." | | 14 | "Some deep, animal certainty told her that whatever stood there had no face yet — that it was waiting, patiently, the way the whole grove was patient, for her to look so it could finally decide what to show her." | | 15 | "Then, very quietly, the screen went dark, and in the black mirror of it, held low at her hip where she could see it without turning, there was a reflection of the clearing that had nothing to do with the clearing around her — a reflection in which the flowers were teeth, and the stones were taller, and the shape behind her was not shaped like anything she had a word for." | | 16 | "Rory stood very still in the ring of stones, in the grove between the worlds, and began — calmly, methodically, because it was the only thing she had left — to think her way out." |
| |
| 89.20% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1495 | | adjectiveStacks | 1 | | stackExamples | | 0 | "particular Cardiff-softened lilt," |
| | adverbCount | 68 | | adverbRatio | 0.04548494983277592 | | lyAdverbCount | 21 | | lyAdverbRatio | 0.014046822742474917 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 110 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 110 | | mean | 14.31 | | std | 14.21 | | cv | 0.993 | | sampleLengths | | 0 | 12 | | 1 | 2 | | 2 | 35 | | 3 | 6 | | 4 | 3 | | 5 | 3 | | 6 | 9 | | 7 | 12 | | 8 | 10 | | 9 | 33 | | 10 | 17 | | 11 | 6 | | 12 | 2 | | 13 | 6 | | 14 | 17 | | 15 | 14 | | 16 | 48 | | 17 | 27 | | 18 | 1 | | 19 | 1 | | 20 | 8 | | 21 | 12 | | 22 | 14 | | 23 | 10 | | 24 | 19 | | 25 | 28 | | 26 | 5 | | 27 | 20 | | 28 | 4 | | 29 | 5 | | 30 | 40 | | 31 | 5 | | 32 | 14 | | 33 | 3 | | 34 | 5 | | 35 | 22 | | 36 | 13 | | 37 | 32 | | 38 | 5 | | 39 | 23 | | 40 | 4 | | 41 | 34 | | 42 | 7 | | 43 | 25 | | 44 | 40 | | 45 | 41 | | 46 | 4 | | 47 | 2 | | 48 | 4 | | 49 | 4 |
| |
| 49.53% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 12 | | diversityRatio | 0.3644859813084112 | | totalSentences | 107 | | uniqueOpeners | 39 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 5 | | totalSentences | 88 | | matches | | 0 | "Then, after a hundred meters," | | 1 | "Then she heard the footsteps." | | 2 | "Perfectly Eva's voice, the particular" | | 3 | "Exactly Evan's, the low patient" | | 4 | "Then, very quietly, the screen" |
| | ratio | 0.057 | |
| 47.27% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 38 | | totalSentences | 88 | | matches | | 0 | "She told herself it was" | | 1 | "She'd found the envelope on" | | 2 | "She should have thrown it" | | 3 | "She knew that the way" | | 4 | "She'd walked here before, daytime," | | 5 | "Her footsteps were too loud." | | 6 | "She stopped walking and stood" | | 7 | "It was January." | | 8 | "She could see her breath." | | 9 | "She had knocked on the" | | 10 | "She was not easily rattled." | | 11 | "She went in anyway." | | 12 | "She would spend a long" | | 13 | "It opened into a clearing" | | 14 | "They were oak, which was" | | 15 | "She checked her phone." | | 16 | "She watched the numbers." | | 17 | "They did not change." | | 18 | "She watched them for what" | | 19 | "she said, aloud, because her" |
| | ratio | 0.432 | |
| 62.27% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 70 | | totalSentences | 88 | | matches | | 0 | "The gate to Richmond Park" | | 1 | "Rory noticed that first —" | | 2 | "She told herself it was" | | 3 | "Groundskeepers got lazy." | | 4 | "Teenagers got in." | | 5 | "London was full of small," | | 6 | "The Heartstone pendant pulsed against" | | 7 | "She'd found the envelope on" | | 8 | "The note had been a" | | 9 | "The night of the new" | | 10 | "She should have thrown it" | | 11 | "She knew that the way" | | 12 | "The park at night was" | | 13 | "She'd walked here before, daytime," | | 14 | "The paths had felt open" | | 15 | "The wind moved through the" | | 16 | "Her footsteps were too loud." | | 17 | "The pendant pulled left." | | 18 | "Wildflowers grew along its edges." | | 19 | "She stopped walking and stood" |
| | ratio | 0.795 | |
| 100.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 2 | | totalSentences | 88 | | matches | | 0 | "Now, walking the black length" | | 1 | "Now the trees leaned over" |
| | ratio | 0.023 | |
| 79.37% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 45 | | technicalSentenceCount | 4 | | matches | | 0 | "Then, after a hundred meters, they were too quiet — muffled, as if the ground were absorbing them, keeping them." | | 1 | "She stopped walking and stood very still, her breath fogging, and stared at them." | | 2 | "She had knocked on the doors of flats that smelled like incense and worse, had once carried sixty pounds of noodles up nine flights to a man who paid entirely i…" | | 3 | "Wildflowers carpeted the whole clearing, white and luminous under her phone's light, and the sky above was full of stars in a pattern she did not recognize — to…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 7 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 73.08% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 6 | | fancyCount | 1 | | fancyTags | | 0 | "she whispered (whisper)" |
| | dialogueSentences | 13 | | tagDensity | 0.462 | | leniency | 0.923 | | rawRatio | 0.167 | | effectiveRatio | 0.154 | |