| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 13 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 28 | | tagDensity | 0.464 | | leniency | 0.929 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 89.27% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1398 | | totalAiIsmAdverbs | 3 | | found | | | highlights | | 0 | "completely" | | 1 | "slowly" | | 2 | "really" |
| |
| 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) | |
| 39.20% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1398 | | totalAiIsms | 17 | | found | | | highlights | | 0 | "stomach" | | 1 | "lurch" | | 2 | "warmth" | | 3 | "pulsed" | | 4 | "whisper" | | 5 | "could feel" | | 6 | "flickered" | | 7 | "pulse" | | 8 | "rhythmic" | | 9 | "structure" | | 10 | "weight" |
| |
| 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 | 82 | | matches | (empty) | |
| 90.59% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 2 | | narrationSentences | 82 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 97 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 46 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 2 | | markdownWords | 30 | | totalWords | 1382 | | ratio | 0.022 | | matches | | 0 | "The hunger that feeds the soul is not the hunger that empties it. Remember which you carry." | | 1 | "The hunger that feeds the soul is not the hunger that empties it." |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 8 | | unquotedAttributions | 0 | | matches | (empty) | |
| 66.67% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 40 | | wordCount | 1154 | | uniqueNames | 12 | | maxNameDensity | 1.13 | | worstName | "Aurora" | | maxWindowNameDensity | 3 | | worstWindowName | "Nyx" | | discoveredNames | | Aurora | 13 | | Heartstone | 1 | | London | 3 | | Isolde | 2 | | Typical | 1 | | Fae | 2 | | Nyx | 13 | | One | 1 | | Evan | 1 | | Silas | 1 | | Shade | 1 | | Gluttony | 1 |
| | persons | | 0 | "Aurora" | | 1 | "Isolde" | | 2 | "Nyx" | | 3 | "Evan" | | 4 | "Silas" |
| | places | | | globalScore | 0.937 | | windowScore | 0.667 | |
| 74.24% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 66 | | glossingSentenceCount | 2 | | matches | | 0 | "looked like a cross between a pomegranate" | | 1 | "gardens that seemed to shift and rearrange themselves as she watched" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1382 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 97 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 47 | | mean | 29.4 | | std | 22.29 | | cv | 0.758 | | sampleLengths | | 0 | 22 | | 1 | 33 | | 2 | 4 | | 3 | 70 | | 4 | 54 | | 5 | 68 | | 6 | 18 | | 7 | 32 | | 8 | 2 | | 9 | 9 | | 10 | 55 | | 11 | 41 | | 12 | 7 | | 13 | 69 | | 14 | 2 | | 15 | 76 | | 16 | 18 | | 17 | 1 | | 18 | 38 | | 19 | 36 | | 20 | 11 | | 21 | 36 | | 22 | 9 | | 23 | 62 | | 24 | 35 | | 25 | 8 | | 26 | 38 | | 27 | 37 | | 28 | 4 | | 29 | 73 | | 30 | 29 | | 31 | 15 | | 32 | 75 | | 33 | 10 | | 34 | 6 | | 35 | 26 | | 36 | 40 | | 37 | 34 | | 38 | 7 | | 39 | 16 | | 40 | 34 | | 41 | 39 | | 42 | 7 | | 43 | 13 | | 44 | 41 | | 45 | 11 | | 46 | 11 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 0 | | totalSentences | 82 | | matches | (empty) | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 202 | | matches | | 0 | "were hearing" | | 1 | "wasn't triggering" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 15 | | semicolonCount | 0 | | flaggedSentences | 14 | | totalSentences | 97 | | ratio | 0.144 | | matches | | 0 | "Thick with the scent of something impossibly sweet—ripe peaches and honey and woodsmoke all tangled together in a way that made her mouth water against her will." | | 1 | "No sun hung visible—just that diffuse warmth radiating from somewhere beyond the horizon, as if the color itself carried heat." | | 2 | "Before them stretched an expanse of rolling hills dotted with orchards heavy with fruit she couldn't name—globes of deep purple hanging from silver-barked trees, something that looked like a cross between a pomegranate and a rose blooming on twisted vines that climbed toward nowhere." | | 3 | "Time moved strangely here—she could feel it in the way her thoughts seemed to stretch and compress, the amber light never shifting even as they covered ground that should have taken much longer." | | 4 | "They looked human at first glance—men and women in simple clothes, harvesting fruit into woven baskets—but something was wrong with their movements." | | 5 | "One of the figures looked up, and Aurora caught a flash of eyes that held no whites—just darkness, deep and absolute, like staring into a well at midnight." | | 6 | "Aurora's legs burned with the effort—her body still anchored to mortal physics, still subject to gravity and fatigue." | | 7 | "Her hand had found the pendant again, and this time the pulse was stronger—a rhythmic thrum against her sternum that matched her heartbeat but faster, more urgent." | | 8 | "Fountains sent arcs of liquid gold into the air, and the sound that drifted upward wasn't water—it was music, a thousand delicate notes played in harmony." | | 9 | "She thought of Evan, of the night she'd finally run—the way he'd smiled when he told her she'd never escape him, that he'd find her no matter where she went." | | 10 | "She looked at the Shade—really looked, for the first time since they'd arrived." | | 11 | "\"Expect nothing. Anticipate everything. And remember—\" they gestured toward the palace below, its music drifting up like a promise, \"—the most dangerous prisons are the ones that do not feel like prisons at all.\"" | | 12 | "The wind shifted, carrying scents that made Aurora's head swim—fresh bread and roasting meat, wine aged beyond human lifespans, spices she had no names for." | | 13 | "The realm would offer her everything she'd ever desired—and each offering would be another chain." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1048 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 40 | | adverbRatio | 0.03816793893129771 | | lyAdverbCount | 8 | | lyAdverbRatio | 0.007633587786259542 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 97 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 97 | | mean | 14.25 | | std | 9.25 | | cv | 0.649 | | sampleLengths | | 0 | 22 | | 1 | 4 | | 2 | 1 | | 3 | 1 | | 4 | 27 | | 5 | 4 | | 6 | 17 | | 7 | 20 | | 8 | 17 | | 9 | 16 | | 10 | 10 | | 11 | 23 | | 12 | 13 | | 13 | 8 | | 14 | 24 | | 15 | 44 | | 16 | 10 | | 17 | 8 | | 18 | 20 | | 19 | 12 | | 20 | 2 | | 21 | 9 | | 22 | 13 | | 23 | 22 | | 24 | 20 | | 25 | 37 | | 26 | 4 | | 27 | 1 | | 28 | 6 | | 29 | 10 | | 30 | 33 | | 31 | 14 | | 32 | 12 | | 33 | 2 | | 34 | 13 | | 35 | 27 | | 36 | 22 | | 37 | 2 | | 38 | 2 | | 39 | 10 | | 40 | 3 | | 41 | 15 | | 42 | 1 | | 43 | 14 | | 44 | 24 | | 45 | 28 | | 46 | 8 | | 47 | 3 | | 48 | 8 | | 49 | 10 |
| |
| 82.13% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 7 | | diversityRatio | 0.5360824742268041 | | totalSentences | 97 | | uniqueOpeners | 52 | |
| 88.89% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 2 | | totalSentences | 75 | | matches | | 0 | "Then the air changed." | | 1 | "Instead, she took another step" |
| | ratio | 0.027 | |
| 92.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 24 | | totalSentences | 75 | | matches | | 0 | "She opened her eyes." | | 1 | "They had solidified the moment" | | 2 | "Their violet eyes swept the" | | 3 | "She didn't phrase it as" | | 4 | "She thought of Isolde's parting" | | 5 | "They walked for what might" | | 6 | "They looked human at first" | | 7 | "She didn't answer." | | 8 | "She wasn't sure she wanted" | | 9 | "Her hand had found the" | | 10 | "She pulled the chain over" | | 11 | "It glowed from within, a" | | 12 | "It was a palace, but" | | 13 | "She thought of Evan, of" | | 14 | "She thought of London's grey" | | 15 | "She thought of how badly" | | 16 | "she said, her voice steadier" | | 17 | "She looked at the Shade—really" | | 18 | "Their violet eyes held something" | | 19 | "they gestured toward the palace" |
| | ratio | 0.32 | |
| 46.67% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 62 | | totalSentences | 75 | | matches | | 0 | "The world folded in on" | | 1 | "She opened her eyes." | | 2 | "The sky above them burned" | | 3 | "Aurora's hand drifted to her" | | 4 | "The gem pulsed against her" | | 5 | "Nyx's whisper of a voice" | | 6 | "They had solidified the moment" | | 7 | "Their violet eyes swept the" | | 8 | "Aurora took a step forward," | | 9 | "She didn't phrase it as" | | 10 | "The pendant's warmth had told" | | 11 | "Nyx drifted beside her, their" | | 12 | "Aurora moved deeper into the" | | 13 | "The skin was smooth as" | | 14 | "The tree shuddered overhead, a" | | 15 | "She thought of Isolde's parting" | | 16 | "They walked for what might" | | 17 | "Time moved strangely here—she could" | | 18 | "The Fae blade at her" | | 19 | "Whatever lived in this place," |
| | ratio | 0.827 | |
| 100.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 2 | | totalSentences | 75 | | matches | | 0 | "Before them stretched an expanse" | | 1 | "As though they were all" |
| | ratio | 0.027 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 46 | | technicalSentenceCount | 12 | | matches | | 0 | "Thick with the scent of something impossibly sweet—ripe peaches and honey and woodsmoke all tangled together in a way that made her mouth water against her will…" | | 1 | "No sun hung visible—just that diffuse warmth radiating from somewhere beyond the horizon, as if the color itself carried heat." | | 2 | "Aurora's hand drifted to her chest without thinking, her fingers finding the Heartstone pendant beneath her shirt." | | 3 | "They had solidified the moment they passed through, their shadowy form taking on edges and definition that seemed almost human in this light." | | 4 | "Their violet eyes swept the landscape with something that might have been recognition." | | 5 | "Aurora took a step forward, her boots crunching on grass that was too green, too vibrant, each blade seeming to shimmer at its edges." | | 6 | "Before them stretched an expanse of rolling hills dotted with orchards heavy with fruit she couldn't name—globes of deep purple hanging from silver-barked trees…" | | 7 | "She thought of Isolde's parting words, delivered in that silver-light voice that always made Aurora feel as though she were hearing half a conversation: *The hu…" | | 8 | "Her hand had found the pendant again, and this time the pulse was stronger—a rhythmic thrum against her sternum that matched her heartbeat but faster, more urge…" | | 9 | "The valley below held a structure that made her breath catch." | | 10 | "Pavilions of pale stone stretched across the landscape, connected by covered walkways and surrounded by gardens that seemed to shift and rearrange themselves as…" | | 11 | "The wind shifted, carrying scents that made Aurora's head swim—fresh bread and roasting meat, wine aged beyond human lifespans, spices she had no names for." |
| |
| 0.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 13 | | uselessAdditionCount | 6 | | matches | | 0 | "Nyx drifted, their feet leaving no impression in the grass" | | 1 | "Nyx's form flickered, shadows rippling across their features" | | 2 | "Nyx's voice had, careful" | | 3 | "she said, her voice steadier than she felt" | | 4 | "Nyx's form shifted, shadows consolidating into something more solid beside her" | | 5 | "they gestured, its music drifting up like a promise," |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 2 | | fancyCount | 1 | | fancyTags | | | dialogueSentences | 28 | | tagDensity | 0.071 | | leniency | 0.143 | | rawRatio | 0.5 | | effectiveRatio | 0.071 | |