| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 3 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 10 | | tagDensity | 0.3 | | leniency | 0.6 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 97.01% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1673 | | totalAiIsmAdverbs | 1 | | 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) | |
| 31.26% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1673 | | totalAiIsms | 23 | | found | | | highlights | | 0 | "scanned" | | 1 | "warmth" | | 2 | "pulse" | | 3 | "reminder" | | 4 | "silence" | | 5 | "stomach" | | 6 | "chaotic" | | 7 | "charged" | | 8 | "rhythmic" | | 9 | "pulsed" | | 10 | "glint" | | 11 | "oppressive" | | 12 | "echoed" |
| |
| 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 | 66 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 1 | | narrationSentences | 66 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 75 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 52 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1641 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 8 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 31 | | wordCount | 1352 | | uniqueNames | 14 | | maxNameDensity | 0.81 | | worstName | "Grove" | | maxWindowNameDensity | 2 | | worstWindowName | "Grove" | | discoveredNames | | London | 2 | | Richmond | 1 | | Park | 1 | | Fae | 2 | | Grove | 11 | | Evan | 4 | | Pre-Law | 1 | | Cardiff | 2 | | Eva | 1 | | Fae-touched | 1 | | Earth | 1 | | Yu-Fei | 1 | | Hel | 2 | | Stay | 1 |
| | persons | | | places | | 0 | "London" | | 1 | "Richmond" | | 2 | "Park" | | 3 | "Fae" | | 4 | "Grove" | | 5 | "Cardiff" | | 6 | "Earth" |
| | globalScore | 1 | | windowScore | 1 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 58 | | glossingSentenceCount | 0 | | matches | (empty) | |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1641 | | matches | (empty) | |
| 77.78% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 2 | | totalSentences | 75 | | matches | | 0 | "read that an" | | 1 | "learned that trick" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 29 | | mean | 56.59 | | std | 44.09 | | cv | 0.779 | | sampleLengths | | 0 | 228 | | 1 | 25 | | 2 | 21 | | 3 | 95 | | 4 | 11 | | 5 | 43 | | 6 | 100 | | 7 | 31 | | 8 | 96 | | 9 | 90 | | 10 | 36 | | 11 | 71 | | 12 | 57 | | 13 | 27 | | 14 | 51 | | 15 | 85 | | 16 | 61 | | 17 | 3 | | 18 | 3 | | 19 | 3 | | 20 | 58 | | 21 | 69 | | 22 | 62 | | 23 | 30 | | 24 | 66 | | 25 | 21 | | 26 | 87 | | 27 | 27 | | 28 | 84 |
| |
| 89.31% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 3 | | totalSentences | 66 | | matches | | 0 | "was dotted" | | 1 | "was joined" | | 2 | "was gone" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 224 | | matches | | 0 | "was leaving" | | 1 | "was hiding" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 13 | | semicolonCount | 2 | | flaggedSentences | 12 | | totalSentences | 75 | | ratio | 0.16 | | matches | | 0 | "The note tucked in her jacket pocket—scrawled in ink that shifted from black to green when she blinked—had led her here: Richmond Park’s hidden Fae Grove, the only place her unknown benefactor had named as a reference for the pendant’s erratic pulses." | | 1 | "She’d studied the Grove’s lore during her Pre-Law lulls in Cardiff, had laughed off Eva’s warnings about Fae-touched pockets of Earth as childhood fantasy—until the pendant had started pulsing so fiercely during that last delivery that she’d dropped the styrofoam container." | | 2 | "She’d read that an hour inside the Grove could stretch to a day outside; she’d already missed her next shift, Yu-Fei would be furious, but that was the least of her worries." | | 3 | "Its crimson gem—roughly the size of her thumbnail—glowed brighter now, its pulse matching the thud of her heart, and the warmth seeped into her palm until she had to curl her fingers to keep from dropping it." | | 4 | "She stood, her knees cracking, and scanned the clearing again, the pendant’s glow illuminating more wildflowers—tulips, sunflowers, lilacs—all blooming in chaotic profusion, their scents mixing into a cloying cloud that made her throat tight." | | 5 | "She’d charged it fully before leaving the flat; the Grove’s time distortion must have stripped its battery in seconds." | | 6 | "Nothing stood behind her, but the earth at her feet was dotted with small, circular indentations—like the prints of a bare foot with too many toes, each pad coated in that same iron-scented sap." | | 7 | "The high whine returned, louder now, and it was joined by a rhythmic tapping—soft, wet, like a finger drumming on a waterlogged log." | | 8 | "She’d learned that trick with Evan—controlling her breathing to keep him from seeing her fear." | | 9 | "The earth beneath her fingers shifted, and a faint, guttural murmur rose from the ground—too low to make out words, but thick with malice, like the sound Evan had made when he’d realized she was leaving him." | | 10 | "She didn’t see its face, but she saw the glint of a silver chain around its neck—identical to the pendant’s chain, the same thin links that had dug into her collarbone during her hurried drive to the park." | | 11 | "She’d relied on that glow to guide her, to warn her—now she was blind to whatever was hiding in the Grove’s shadows." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 219 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 4 | | adverbRatio | 0.0182648401826484 | | lyAdverbCount | 0 | | lyAdverbRatio | 0 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 75 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 75 | | mean | 21.88 | | std | 11.25 | | cv | 0.514 | | sampleLengths | | 0 | 30 | | 1 | 39 | | 2 | 42 | | 3 | 48 | | 4 | 39 | | 5 | 30 | | 6 | 6 | | 7 | 5 | | 8 | 9 | | 9 | 5 | | 10 | 16 | | 11 | 5 | | 12 | 22 | | 13 | 41 | | 14 | 32 | | 15 | 11 | | 16 | 27 | | 17 | 16 | | 18 | 11 | | 19 | 37 | | 20 | 52 | | 21 | 18 | | 22 | 13 | | 23 | 20 | | 24 | 34 | | 25 | 8 | | 26 | 34 | | 27 | 24 | | 28 | 34 | | 29 | 32 | | 30 | 11 | | 31 | 19 | | 32 | 6 | | 33 | 17 | | 34 | 18 | | 35 | 36 | | 36 | 23 | | 37 | 34 | | 38 | 27 | | 39 | 29 | | 40 | 22 | | 41 | 23 | | 42 | 25 | | 43 | 15 | | 44 | 22 | | 45 | 16 | | 46 | 20 | | 47 | 25 | | 48 | 3 | | 49 | 3 |
| |
| 30.00% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 15 | | diversityRatio | 0.21333333333333335 | | totalSentences | 75 | | uniqueOpeners | 16 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 65 | | matches | (empty) | | ratio | 0 | |
| 0.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 37 | | totalSentences | 65 | | matches | | 0 | "She’d fled her flat above" | | 1 | "She’d grabbed the note after" | | 2 | "She’d wiped the oozing sauce" | | 3 | "She fidgeted with the small" | | 4 | "She pressed a hand to" | | 5 | "Her gaze darted to the" | | 6 | "She’d studied the Grove’s lore" | | 7 | "She’d read that an hour" | | 8 | "She spun, her jacket flapping" | | 9 | "She unzipped her jacket, yanking" | | 10 | "Its crimson gem—roughly the size" | | 11 | "It wove through the Grove’s" | | 12 | "She stepped toward the daisy" | | 13 | "She pulled her hand back," | | 14 | "She stood, her knees cracking," | | 15 | "She’d never been prone to" | | 16 | "She pulled out her phone," | | 17 | "She’d charged it fully before" | | 18 | "She turned back to the" | | 19 | "She’d read about Hel portals" |
| | ratio | 0.569 | |
| 0.00% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 62 | | totalSentences | 65 | | matches | | 0 | "Rory slipped through the gap" | | 1 | "She’d fled her flat above" | | 2 | "The note tucked in her" | | 3 | "She’d grabbed the note after" | | 4 | "She’d wiped the oozing sauce" | | 5 | "She fidgeted with the small" | | 6 | "The Grove swallowed sound whole." | | 7 | "She pressed a hand to" | | 8 | "Her gaze darted to the" | | 9 | "She’d studied the Grove’s lore" | | 10 | "She’d read that an hour" | | 11 | "A wet rustle snaked through" | | 12 | "She spun, her jacket flapping" | | 13 | "She unzipped her jacket, yanking" | | 14 | "Its crimson gem—roughly the size" | | 15 | "The scar on her wrist" | | 16 | "Another sound cut through the" | | 17 | "It wove through the Grove’s" | | 18 | "She stepped toward the daisy" | | 19 | "She pulled her hand back," |
| | ratio | 0.954 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 65 | | matches | (empty) | | ratio | 0 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 53 | | technicalSentenceCount | 15 | | matches | | 0 | "Rory slipped through the gap between two gnarled oak standing stones, her scuffed delivery boots crunching over a carpet of clover and poppies that shouldn’t bl…" | | 1 | "The note tucked in her jacket pocket—scrawled in ink that shifted from black to green when she blinked—had led her here: Richmond Park’s hidden Fae Grove, the o…" | | 2 | "She’d wiped the oozing sauce from the doorstep with a napkin, her face burning with the same embarrassment she’d felt when Evan had yelled at her for misplacing…" | | 3 | "She fidgeted with the small crescent scar on her left wrist, the old childhood accident’s memento catching the faint moonlight that filtered through the Grove’s…" | | 4 | "She spun, her jacket flapping around her hips, but saw only a cluster of daisies bending as if pushed by a wind that didn’t stir her hair." | | 5 | "Its crimson gem—roughly the size of her thumbnail—glowed brighter now, its pulse matching the thud of her heart, and the warmth seeped into her palm until she h…" | | 6 | "A flash of movement caught her peripheral vision: a shadow stretching from the farthest standing stone, its length doubling in a heartbeat before vanishing." | | 7 | "She stood, her knees cracking, and scanned the clearing again, the pendant’s glow illuminating more wildflowers—tulips, sunflowers, lilacs—all blooming in chaot…" | | 8 | "She pulled out her phone, its screen flickering before dying completely." | | 9 | "The wet rustle returned, closer this time, and she spun, her jacket catching on a wildflower stem that snapped with a sharp crack." | | 10 | "She realized the tapping matched the thud of her heart, speeding up when she breathed faster, slowing when she forced her breaths to even out." | | 11 | "A cluster of poppies bent without wind, their petals opening to reveal tiny, black eyes that blinked once before closing." | | 12 | "She didn’t see its face, but she saw the glint of a silver chain around its neck—identical to the pendant’s chain, the same thin links that had dug into her col…" | | 13 | "She waited, her hand still hovering over the runes, the scar on her wrist throbbing with a cold pain that had nothing to do with the old wound." | | 14 | "The wildflowers at her feet turned to dust, their stems crumbling into the earth, and the glowing crimson patch vanished, leaving no trace of its existence." |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 3 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | |