| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 20 | | adverbTagCount | 1 | | adverbTags | | 0 | "home twisted just [just]" |
| | dialogueSentences | 32 | | tagDensity | 0.625 | | leniency | 1 | | rawRatio | 0.05 | | effectiveRatio | 0.05 | |
| 93.38% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1511 | | 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) | |
| 0.00% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1511 | | totalAiIsms | 34 | | found | | 0 | | | 1 | | | 2 | | | 3 | | | 4 | | | 5 | | | 6 | | | 7 | | | 8 | | | 9 | | | 10 | | | 11 | | | 12 | | | 13 | | | 14 | | | 15 | | | 16 | | | 17 | | | 18 | | | 19 | | | 20 | | | 21 | | | 22 | | | 23 | | | 24 | | | 25 | | | 26 | | | 27 | |
| | highlights | | 0 | "silk" | | 1 | "scanned" | | 2 | "whisper" | | 3 | "throbbed" | | 4 | "raced" | | 5 | "quivered" | | 6 | "reminder" | | 7 | "crystal" | | 8 | "echoed" | | 9 | "stomach" | | 10 | "delve" | | 11 | "echoes" | | 12 | "pounding" | | 13 | "flickered" | | 14 | "etched" | | 15 | "traced" | | 16 | "playfully" | | 17 | "pulse" | | 18 | "loomed" | | 19 | "spectral" | | 20 | "pulsed" | | 21 | "shattered" | | 22 | "porcelain" | | 23 | "marble" | | 24 | "chill" | | 25 | "maw" | | 26 | "flicked" | | 27 | "footsteps" |
| |
| 66.67% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 2 | | maxInWindow | 2 | | found | | 0 | | label | "eyes widened/narrowed" | | count | 2 |
|
| | highlights | | 0 | "eyes widened" | | 1 | "eyes narrowed" |
| |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 59 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 0 | | narrationSentences | 59 | | filterMatches | | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 65 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 100 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1495 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 10 | | unquotedAttributions | 1 | | matches | | 0 | "Nyx paused, their form rippling as they extended a shadowy tendril to touch a vine. It quivered, leaves rustling in a br…" |
| |
| 83.33% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 51 | | wordCount | 1217 | | uniqueNames | 17 | | maxNameDensity | 1.31 | | worstName | "Aurora" | | maxWindowNameDensity | 2.5 | | worstWindowName | "Aurora" | | discoveredNames | | Heartstone | 1 | | Pendant | 1 | | Veil | 2 | | Fae | 2 | | Grove | 1 | | Richmond | 1 | | Park | 1 | | Nyx | 8 | | Fae-Forged | 1 | | Blade | 1 | | Aurora | 16 | | Isolde | 9 | | Belphegor | 1 | | Cardiff | 1 | | London | 1 | | Dymas | 1 | | One | 3 |
| | persons | | 0 | "Pendant" | | 1 | "Veil" | | 2 | "Nyx" | | 3 | "Aurora" | | 4 | "Isolde" | | 5 | "Belphegor" |
| | places | | 0 | "Fae" | | 1 | "Grove" | | 2 | "Richmond" | | 3 | "Park" | | 4 | "Cardiff" | | 5 | "London" | | 6 | "Dymas" |
| | globalScore | 0.843 | | windowScore | 0.833 | |
| 91.86% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 43 | | glossingSentenceCount | 1 | | matches | | |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.669 | | wordCount | 1495 | | matches | | 0 | "not from a sun but from the sky itself, pulsing faintly as if breathing" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 65 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 35 | | mean | 42.71 | | std | 29.16 | | cv | 0.683 | | sampleLengths | | 0 | 94 | | 1 | 39 | | 2 | 6 | | 3 | 74 | | 4 | 12 | | 5 | 107 | | 6 | 77 | | 7 | 76 | | 8 | 7 | | 9 | 39 | | 10 | 21 | | 11 | 57 | | 12 | 27 | | 13 | 19 | | 14 | 97 | | 15 | 43 | | 16 | 13 | | 17 | 30 | | 18 | 97 | | 19 | 15 | | 20 | 25 | | 21 | 27 | | 22 | 54 | | 23 | 48 | | 24 | 83 | | 25 | 68 | | 26 | 16 | | 27 | 10 | | 28 | 36 | | 29 | 24 | | 30 | 44 | | 31 | 20 | | 32 | 52 | | 33 | 25 | | 34 | 13 |
| |
| 99.32% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 59 | | matches | | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 228 | | matches | (empty) | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 9 | | semicolonCount | 1 | | flaggedSentences | 8 | | totalSentences | 65 | | ratio | 0.123 | | matches | | 0 | "The air hit her first—thick, syrupy, laced with the scent of overripe fruit and something sharper, like fermented honey mixed with smoke from a distant fire." | | 1 | "The group moved forward, Nyx leading with incorporeal grace, slipping between solid and shadow as they scouted. Aurora followed, her hand brushing the hilt of the Fae-Forged Blade at her belt, its moonsilver cool against her skin despite the heat. Isolde trailed, humming a tune that twisted the air, making wildflowers sprout in their wake—though here, the flowers bloomed in impossible hues, petals like bruised plums unfurling to release puffs of golden pollen that tickled Aurora's throat." | | 2 | "They crested a gentle rise, and the true wonder unfolded. Below stretched an orchard of trees that defied earthly logic—trunks spiralling like corkscrews, branches heavy with fruits that shifted shapes as they watched: apples morphing into pears, then into orbs of crystal that chimed softly when the air stirred. In the distance, grand pavilions rose, silken canopies billowing over long tables laden with feasts. Laughter echoed, mingled with the clink of goblets and the sizzle of meats on unseen spits. Figures moved among them—some human-like, others twisted, their forms bloated or elongated, devouring platters that refilled themselves." | | 3 | "Aurora gripped the pendant tighter, its glow intensifying, a compass in this labyrinth of temptation. They descended into the orchard, the air growing heavier, saturated with scents that layered upon each other: roasted nuts, spiced meats, creams whipped with dreams. Aurora's mouth watered, her steps slowing as she passed a tree bearing jewels of fruit that wept nectar, pooling at its base in iridescent puddles. She knelt, dipping a finger in. The liquid cooled her skin, then burned, visions flickering at the edge of her sight—banquets in Cardiff, her parents' laughter, Eva's smile before the shadows came." | | 4 | "Aurora traced the runes with her eyes, her quick mind piecing fragments. The Veil's rifts, the pendant's pull—it all led here. But why? The shadows hunting her in London, Nyx's warnings, Isolde's riddles. Discovery hit like the nectar's burn: this wasn't just escape. Answers lay in Dymas's heart." | | 5 | "They pressed deeper, the orchard giving way to manicured gardens where hedges shaped like colossal mouths snapped playfully at passing butterflies—creatures with wings of stained glass that hummed melodies of forgotten songs. Aurora's skin prickled, the air now vibrating with a low thrum, like the pulse of a giant heart beneath the earth. Unease gnawed at her; every step felt watched, the fruits' whispers growing insistent, promising satiation for the emptiness she'd carried since fleeing Evan, since the bar's underbelly revealed its secrets." | | 6 | "Aurora's hand drifted to the blade, its cold bite grounding her. But the pendant flared hot, pointing inward, toward a arched gateway at the pavilion's rear, framed by bones carved into grapevines—human bones, she realised with a chill, etched with contracts in faded ink." | | 7 | "The chef howled, a sound that shook the pavilion, pastries crumbling to ash. But from the gateway, deeper rumbles echoed—footsteps, heavy and ravenous, approaching fast." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 400 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 15 | | adverbRatio | 0.0375 | | lyAdverbCount | 3 | | lyAdverbRatio | 0.0075 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 65 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 65 | | mean | 23 | | std | 23.69 | | cv | 1.03 | | sampleLengths | | 0 | 18 | | 1 | 22 | | 2 | 26 | | 3 | 28 | | 4 | 21 | | 5 | 18 | | 6 | 6 | | 7 | 16 | | 8 | 22 | | 9 | 26 | | 10 | 10 | | 11 | 12 | | 12 | 10 | | 13 | 15 | | 14 | 31 | | 15 | 51 | | 16 | 77 | | 17 | 76 | | 18 | 3 | | 19 | 2 | | 20 | 2 | | 21 | 39 | | 22 | 2 | | 23 | 9 | | 24 | 10 | | 25 | 17 | | 26 | 40 | | 27 | 27 | | 28 | 9 | | 29 | 10 | | 30 | 97 | | 31 | 4 | | 32 | 1 | | 33 | 38 | | 34 | 1 | | 35 | 2 | | 36 | 3 | | 37 | 7 | | 38 | 30 | | 39 | 97 | | 40 | 12 | | 41 | 3 | | 42 | 14 | | 43 | 11 | | 44 | 10 | | 45 | 10 | | 46 | 2 | | 47 | 5 | | 48 | 54 | | 49 | 48 |
| |
| 85.64% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 1 | | diversityRatio | 0.5230769230769231 | | totalSentences | 65 | | uniqueOpeners | 34 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 49 | | matches | (empty) | | ratio | 0 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 11 | | totalSentences | 49 | | matches | | 0 | "She stumbled forward, the silver" | | 1 | "Her bright blue eyes widened," | | 2 | "She left no imprint on" | | 3 | "She straightened, her straight black" | | 4 | "They tend these groves, feeding" | | 5 | "They crested a gentle rise," | | 6 | "She shook it off, heart" | | 7 | "You said you were trapped" | | 8 | "it calls to the" | | 9 | "They pressed deeper, the orchard" | | 10 | "She did. The pastries pulsed," |
| | ratio | 0.224 | |
| 31.43% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 42 | | totalSentences | 49 | | matches | | 0 | "Aurora's fingers clenched around the" | | 1 | "She stumbled forward, the silver" | | 2 | "The air hit her first—thick," | | 3 | "Her bright blue eyes widened," | | 4 | "Nyx materialised beside her in" | | 5 | "Isolde stepped through last, her" | | 6 | "She left no imprint on" | | 7 | "The ancient oaks that had" | | 8 | "Isolde tilted her head, lips" | | 9 | "Aurora shot her a glance," | | 10 | "The pendant still throbbed against" | | 11 | "She straightened, her straight black" | | 12 | "The group moved forward, Nyx" | | 13 | "The path wound through sprawling" | | 14 | "Nyx paused, their form rippling" | | 15 | "Chefs from your world, contracted" | | 16 | "They tend these groves, feeding" | | 17 | "Aurora's scar on her left" | | 18 | "Isolde plucked a grape without" | | 19 | "They crested a gentle rise," |
| | ratio | 0.857 | |
| 100.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 49 | | matches | | 0 | "Before she could speak, the" |
| | ratio | 0.02 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 24 | | technicalSentenceCount | 11 | | matches | | 0 | "She stumbled forward, the silver chain biting into her palm, and landed on soil that yielded like warm dough beneath her boots." | | 1 | "Her bright blue eyes widened, adjusting to the warm amber glow that bathed everything, not from a sun but from the sky itself, pulsing faintly as if breathing." | | 2 | "The ancient oaks that had marked the Fae Grove's boundary back in Richmond Park now framed a jagged rift behind them, flickering like a dying flame." | | 3 | "The group moved forward, Nyx leading with incorporeal grace, slipping between solid and shadow as they scouted. Aurora followed, her hand brushing the hilt of t…" | | 4 | "The path wound through sprawling vineyards, vines thicker than her arm twisting up obsidian trellises that gleamed wetly. Grapes hung in clusters the size of fi…" | | 5 | "Nyx paused, their form rippling as they extended a shadowy tendril to touch a vine. It quivered, leaves rustling in a breeze that carried no wind, and for a mom…" | | 6 | "Isolde plucked a grape without touching it, the fruit floating to her hand before she crushed it. Juice dripped between her fingers, staining them like old bloo…" | | 7 | "They crested a gentle rise, and the true wonder unfolded. Below stretched an orchard of trees that defied earthly logic—trunks spiralling like corkscrews, branc…" | | 8 | "A pavilion loomed ahead, larger than the others, its canopy woven from vines that dripped with dew-like jewels. Inside, a culinary competition unfolded: helboun…" | | 9 | "Nyx dissolved into shadow, reforming behind the creature with a coil of darkness around its throat. Isolde's hand flicked, wildflowers erupting to ensnare its l…" | | 10 | "The chef howled, a sound that shook the pavilion, pastries crumbling to ash. But from the gateway, deeper rumbles echoed—footsteps, heavy and ravenous, approach…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 9 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 25.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 6 | | fancyCount | 4 | | fancyTags | | 0 | "the indulgence claims (the indulgence claim)" | | 1 | "Isolde laughed (laugh)" | | 2 | "They pressed (press)" | | 3 | "she could (could)" |
| | dialogueSentences | 32 | | tagDensity | 0.188 | | leniency | 0.375 | | rawRatio | 0.667 | | effectiveRatio | 0.25 | |