| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 11 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 32 | | tagDensity | 0.344 | | leniency | 0.688 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 100.00% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1329 | | totalAiIsmAdverbs | 0 | | found | (empty) | | highlights | (empty) | |
| 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) | |
| 20.99% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1329 | | totalAiIsms | 21 | | found | | 0 | | | 1 | | | 2 | | | 3 | | word | "carried the weight" | | count | 1 |
| | 4 | | | 5 | | | 6 | | | 7 | | | 8 | | | 9 | | | 10 | | | 11 | | | 12 | | | 13 | | | 14 | | | 15 | | | 16 | | | 17 | | | 18 | |
| | highlights | | 0 | "loomed" | | 1 | "pulsed" | | 2 | "throb" | | 3 | "carried the weight" | | 4 | "whisper" | | 5 | "crystal" | | 6 | "shimmered" | | 7 | "measured" | | 8 | "predictable" | | 9 | "flickered" | | 10 | "depths" | | 11 | "wavering" | | 12 | "almost alive" | | 13 | "flicked" | | 14 | "silence" | | 15 | "weight" | | 16 | "pulse" | | 17 | "shattered" | | 18 | "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 | 97 | | matches | (empty) | |
| 98.67% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 3 | | narrationSentences | 97 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 118 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 36 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 3 | | markdownWords | 3 | | totalWords | 1315 | | ratio | 0.002 | | matches | | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 15 | | unquotedAttributions | 0 | | matches | (empty) | |
| 50.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 48 | | wordCount | 1087 | | uniqueNames | 11 | | maxNameDensity | 1.75 | | worstName | "Aurora" | | maxWindowNameDensity | 3.5 | | worstWindowName | "Aurora" | | discoveredNames | | November | 1 | | Heartstone | 4 | | Isolde | 9 | | Aurora | 19 | | London | 1 | | Fae-forged | 1 | | English | 1 | | Pain | 1 | | Nyx | 9 | | Richmond | 1 | | Park | 1 |
| | persons | | | places | | 0 | "Heartstone" | | 1 | "London" | | 2 | "Fae-forged" | | 3 | "Richmond" | | 4 | "Park" |
| | globalScore | 0.626 | | windowScore | 0.5 | |
| 76.47% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 68 | | glossingSentenceCount | 2 | | matches | | 0 | "as if confirming what she already knew—this was no ordinary grove" | | 1 | "something like grief" |
| |
| 47.91% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 2 | | per1kWords | 1.521 | | wordCount | 1315 | | matches | | 0 | "Not in the way of blight or decay, but in the way of dreams" | | 1 | "Not the pale, overcast gray of an English autumn, but a swirling vortex of colors: deep violets, molten golds, the" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 118 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 44 | | mean | 29.89 | | std | 23.26 | | cv | 0.778 | | sampleLengths | | 0 | 61 | | 1 | 32 | | 2 | 46 | | 3 | 70 | | 4 | 84 | | 5 | 10 | | 6 | 16 | | 7 | 47 | | 8 | 11 | | 9 | 72 | | 10 | 23 | | 11 | 22 | | 12 | 21 | | 13 | 23 | | 14 | 10 | | 15 | 66 | | 16 | 26 | | 17 | 32 | | 18 | 34 | | 19 | 18 | | 20 | 9 | | 21 | 44 | | 22 | 5 | | 23 | 77 | | 24 | 1 | | 25 | 10 | | 26 | 54 | | 27 | 46 | | 28 | 7 | | 29 | 1 | | 30 | 1 | | 31 | 58 | | 32 | 28 | | 33 | 22 | | 34 | 9 | | 35 | 30 | | 36 | 30 | | 37 | 42 | | 38 | 4 | | 39 | 69 | | 40 | 12 | | 41 | 19 | | 42 | 7 | | 43 | 6 |
| |
| 90.79% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 4 | | totalSentences | 97 | | matches | | 0 | "been painted" | | 1 | "were dusted" | | 2 | "was measured" | | 3 | "was gone" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 180 | | matches | (empty) | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 15 | | semicolonCount | 0 | | flaggedSentences | 13 | | totalSentences | 118 | | ratio | 0.11 | | matches | | 0 | "The Heartstone pendant against her collarbone pulsed once, a warm throb beneath her fingers, as if confirming what she already knew—this was no ordinary grove." | | 1 | "Aurora followed, the soles of her boots sinking into damp earth that smelled of loam and something sweeter—honeysuckle, perhaps, though it was far too late in the year for such blooms." | | 2 | "Not in the way of blight or decay, but in the way of dreams—too tall, their bark too smooth, their branches twisting in impossible spirals." | | 3 | "\"The grove gives gifts to those it favors. It takes from those it does not.\" She plucked a single bloom from the air—it hadn’t been there a moment before—and tucked it behind Aurora’s ear." | | 4 | "But it wasn’t the water that held her gaze—it was the sky reflected in it." | | 5 | "Nyx stepped to the water’s edge, their reflection wavering, shifting—sometimes solid, sometimes a shadow without form." | | 6 | "But this—this was different." | | 7 | "The sky above her was no longer sky at all, but a vast, amber expanse, heavy with the scent of ripe fruit and something darker—smoke, perhaps, or the iron tang of blood." | | 8 | "A figure moved between the vines—a woman with skin like polished mahogany, her hands stained purple with juice." | | 9 | "Then—" | | 10 | "Nyx was at her side in an instant, their hands—solid now, warm—gripping her shoulders." | | 11 | "For the briefest moment, Aurora thought she saw a face in the water—her own, but older, harder, her bright blue eyes shadowed with something like grief." | | 12 | "When they stepped between the standing stones, the noise of the city rushed back in—a car horn, the distant wail of a siren, the bark of a dog." |
| |
| 98.54% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1104 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 46 | | adverbRatio | 0.041666666666666664 | | lyAdverbCount | 2 | | lyAdverbRatio | 0.0018115942028985507 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 118 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 118 | | mean | 11.14 | | std | 7.84 | | cv | 0.704 | | sampleLengths | | 0 | 23 | | 1 | 13 | | 2 | 25 | | 3 | 15 | | 4 | 13 | | 5 | 4 | | 6 | 16 | | 7 | 8 | | 8 | 16 | | 9 | 6 | | 10 | 31 | | 11 | 11 | | 12 | 28 | | 13 | 5 | | 14 | 25 | | 15 | 27 | | 16 | 15 | | 17 | 12 | | 18 | 2 | | 19 | 8 | | 20 | 12 | | 21 | 4 | | 22 | 7 | | 23 | 34 | | 24 | 6 | | 25 | 4 | | 26 | 7 | | 27 | 13 | | 28 | 13 | | 29 | 3 | | 30 | 26 | | 31 | 4 | | 32 | 13 | | 33 | 8 | | 34 | 7 | | 35 | 8 | | 36 | 4 | | 37 | 18 | | 38 | 10 | | 39 | 8 | | 40 | 3 | | 41 | 14 | | 42 | 9 | | 43 | 10 | | 44 | 15 | | 45 | 15 | | 46 | 25 | | 47 | 11 | | 48 | 16 | | 49 | 5 |
| |
| 48.87% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 4 | | diversityRatio | 0.3135593220338983 | | totalSentences | 118 | | uniqueOpeners | 37 | |
| 38.76% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 86 | | matches | | | ratio | 0.012 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 17 | | totalSentences | 86 | | matches | | 0 | "they murmured, voice like wind" | | 1 | "She left no footprints in" | | 2 | "she said, and though her" | | 3 | "She plucked a single bloom" | | 4 | "It was cool and smooth" | | 5 | "They moved deeper, following a" | | 6 | "She had spent her life" | | 7 | "She had spent years running" | | 8 | "She reached into the water." | | 9 | "She knew it the way" | | 10 | "She turned, and her eyes" | | 11 | "she said, her voice like" | | 12 | "She tried to step back," | | 13 | "She collapsed onto the damp" | | 14 | "Her touch was cool, soothing." | | 15 | "Her legs trembled, but she" | | 16 | "She didn’t have to." |
| | ratio | 0.198 | |
| 23.95% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 75 | | totalSentences | 86 | | matches | | 0 | "The standing stones loomed like" | | 1 | "Aurora hesitated at the threshold," | | 2 | "The Heartstone pendant against her" | | 3 | "Nyx materialized beside her, their" | | 4 | "they murmured, voice like wind" | | 5 | "Isolde stepped between the stones" | | 6 | "She left no footprints in" | | 7 | "she said, and though her" | | 8 | "Aurora followed, the soles of" | | 9 | "The moment she crossed the" | | 10 | "The distant hum of London" | | 11 | "The trees here were wrong." | | 12 | "Wildflowers carpeted the ground in" | | 13 | "Aurora crouched, brushing her fingers" | | 14 | "Aurora muttered, wiping her hand" | | 15 | "The gold didn’t smear." | | 16 | "Isolde laughed, the sound like" | | 17 | "She plucked a single bloom" | | 18 | "Aurora touched the flower." | | 19 | "It was cool and smooth" |
| | ratio | 0.872 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 86 | | matches | (empty) | | ratio | 0 | |
| 15.87% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 45 | | technicalSentenceCount | 8 | | matches | | 0 | "The Heartstone pendant against her collarbone pulsed once, a warm throb beneath her fingers, as if confirming what she already knew—this was no ordinary grove." | | 1 | "Aurora followed, the soles of her boots sinking into damp earth that smelled of loam and something sweeter—honeysuckle, perhaps, though it was far too late in t…" | | 2 | "Wildflowers carpeted the ground in riotous color, petals too vivid, too *alive*, as if each one had been painted by a hand that loved beauty too much." | | 3 | "Aurora crouched, brushing her fingers against a cluster of bluebells that shimmered like stained glass." | | 4 | "But it wasn’t the water that held her gaze—it was the sky reflected in it." | | 5 | "Nyx stepped to the water’s edge, their reflection wavering, shifting—sometimes solid, sometimes a shadow without form." | | 6 | "She had spent years running from things she couldn’t control, from men who thought her silence was permission, from the weight of expectations that weren’t hers…" | | 7 | "She collapsed onto the damp earth, gasping, her wrist throbbing where the crescent scar had split open, weeping blood." |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 11 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 56.25% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 9 | | fancyCount | 3 | | fancyTags | | 0 | "they murmured (murmur)" | | 1 | "Aurora muttered (mutter)" | | 2 | "she murmured (murmur)" |
| | dialogueSentences | 32 | | tagDensity | 0.281 | | leniency | 0.563 | | rawRatio | 0.333 | | effectiveRatio | 0.188 | |