| 66.67% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 15 | | adverbTagCount | 2 | | adverbTags | | 0 | "Rory said softly [softly]" | | 1 | "Isolde said softly [softly]" |
| | dialogueSentences | 27 | | tagDensity | 0.556 | | leniency | 1 | | rawRatio | 0.133 | | effectiveRatio | 0.133 | |
| 77.32% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1323 | | totalAiIsmAdverbs | 6 | | found | | | highlights | | 0 | "lazily" | | 1 | "softly" | | 2 | "slowly" | | 3 | "carefully" | | 4 | "quickly" |
| |
| 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) | |
| 9.30% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1323 | | totalAiIsms | 24 | | found | | 0 | | | 1 | | | 2 | | | 3 | | | 4 | | | 5 | | | 6 | | | 7 | | | 8 | | | 9 | | | 10 | | | 11 | | | 12 | | | 13 | | | 14 | | | 15 | | | 16 | | | 17 | |
| | highlights | | 0 | "warmth" | | 1 | "velvet" | | 2 | "chill" | | 3 | "throbbed" | | 4 | "rhythmic" | | 5 | "pulse" | | 6 | "oppressive" | | 7 | "stomach" | | 8 | "whisper" | | 9 | "churning" | | 10 | "marble" | | 11 | "shattered" | | 12 | "tracing" | | 13 | "etched" | | 14 | "intricate" | | 15 | "constructed" | | 16 | "weight" | | 17 | "radiant" |
| |
| 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 | 72 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 2 | | narrationSentences | 72 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 84 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 48 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 6 | | markdownWords | 57 | | totalWords | 1314 | | ratio | 0.043 | | matches | | 0 | "“The air here is fat,”" | | 1 | "“It clings. It coats the teeth.”" | | 2 | "“Look with your eyes, little mortal,”" | | 3 | "“Not with your belly. The Prince’s gardens do not offer gifts without a receipt.”" | | 4 | "“Helbound,”" | | 5 | "“Souls brought from your world to cook, to pour, to suffer. When the Prince grows bored of the chef, the chef becomes the second course.”" |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 13 | | unquotedAttributions | 0 | | matches | (empty) | |
| 58.14% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 48 | | wordCount | 1143 | | uniqueNames | 15 | | maxNameDensity | 1.84 | | worstName | "Rory" | | maxWindowNameDensity | 2.5 | | worstWindowName | "Rory" | | discoveredNames | | Rory | 21 | | Veil | 1 | | Richmond | 1 | | Park | 1 | | Half-Fae | 1 | | Isolde | 8 | | Heartstone | 1 | | Fae-forged | 1 | | Wales | 1 | | London | 1 | | Shade | 1 | | Nyx | 5 | | Halfway | 1 | | Dymas | 1 | | Fae | 3 |
| | persons | | 0 | "Rory" | | 1 | "Half-Fae" | | 2 | "Isolde" | | 3 | "Shade" | | 4 | "Nyx" | | 5 | "Fae" |
| | places | | 0 | "Veil" | | 1 | "Richmond" | | 2 | "Park" | | 3 | "Wales" | | 4 | "London" |
| | globalScore | 0.581 | | windowScore | 0.833 | |
| 75.37% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 67 | | glossingSentenceCount | 2 | | matches | | 0 | "thrum that seemed to vibrate straight up through the soles of her feet—a deep, rhythmic churning far below the earth, like the heartbeat of a massive furnace" | | 1 | "looked like beaten copper" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.761 | | wordCount | 1314 | | matches | | 0 | "not a clean summer warmth, but a thick, syrupy air" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 84 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 34 | | mean | 38.65 | | std | 21.27 | | cv | 0.55 | | sampleLengths | | 0 | 24 | | 1 | 39 | | 2 | 3 | | 3 | 50 | | 4 | 52 | | 5 | 48 | | 6 | 16 | | 7 | 46 | | 8 | 14 | | 9 | 66 | | 10 | 35 | | 11 | 54 | | 12 | 11 | | 13 | 78 | | 14 | 47 | | 15 | 25 | | 16 | 38 | | 17 | 40 | | 18 | 55 | | 19 | 73 | | 20 | 40 | | 21 | 89 | | 22 | 34 | | 23 | 29 | | 24 | 13 | | 25 | 45 | | 26 | 38 | | 27 | 36 | | 28 | 18 | | 29 | 22 | | 30 | 6 | | 31 | 76 | | 32 | 43 | | 33 | 11 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 72 | | matches | | |
| 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 | 9 | | semicolonCount | 1 | | flaggedSentences | 9 | | totalSentences | 84 | | ratio | 0.107 | | matches | | 0 | "The heat hit Rory first—not a clean summer warmth, but a thick, syrupy air that tasted faintly of burnt sugar and crushed star anise." | | 1 | "There was no sun above them—only a vast, vaulted sky painted in shades of molten amber and deep rust, like a sunset trapped beneath a dome of glass." | | 2 | "The sound didn't come from a mouth; it drifted on a phantom breeze, brushing past Rory’s ear like dry leaves across cobblestones." | | 3 | "The Fae-forged blade Isolde had given her felt impossibly cold against her thigh—a shard of midwinter iron resisting the realm's oppressive warmth." | | 4 | "Hanging from their sweeping boughs were fruits the size of hearthstones—plump, translucent globes of pale blue and pink that shifted as they watched them, the flesh inside swirling like liquid glass." | | 5 | "The only sound was the crunch of Rory’s boots, the gentle whisper of Nyx’s shifting form, and a low, resonant thrum that seemed to vibrate straight up through the soles of her feet—a deep, rhythmic churning far below the earth, like the heartbeat of a massive furnace." | | 6 | "Instead, a dark, viscous liquid—rich as melted plum wine—welled slowly from the basin, spilling over the carved lips and soaking into the soil below." | | 7 | "But beside it lay something else—a long, curved rib cage far too large for a human, its surfaces etched with intricate, demonic runes that glowed with a faint, dying ember of red light." | | 8 | "It was beautiful, grand, and horrifyingly vast—a paradise constructed entirely out of greed and consumption, stagnant and endless." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1165 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 35 | | adverbRatio | 0.030042918454935622 | | lyAdverbCount | 15 | | lyAdverbRatio | 0.012875536480686695 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 84 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 84 | | mean | 15.64 | | std | 8.76 | | cv | 0.56 | | sampleLengths | | 0 | 24 | | 1 | 23 | | 2 | 16 | | 3 | 3 | | 4 | 8 | | 5 | 21 | | 6 | 21 | | 7 | 4 | | 8 | 28 | | 9 | 20 | | 10 | 9 | | 11 | 11 | | 12 | 28 | | 13 | 16 | | 14 | 19 | | 15 | 15 | | 16 | 12 | | 17 | 14 | | 18 | 13 | | 19 | 17 | | 20 | 12 | | 21 | 24 | | 22 | 7 | | 23 | 22 | | 24 | 6 | | 25 | 13 | | 26 | 22 | | 27 | 14 | | 28 | 5 | | 29 | 11 | | 30 | 8 | | 31 | 22 | | 32 | 17 | | 33 | 31 | | 34 | 10 | | 35 | 37 | | 36 | 18 | | 37 | 7 | | 38 | 15 | | 39 | 23 | | 40 | 11 | | 41 | 10 | | 42 | 10 | | 43 | 7 | | 44 | 2 | | 45 | 12 | | 46 | 29 | | 47 | 14 | | 48 | 7 | | 49 | 4 |
| |
| 81.75% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 3 | | diversityRatio | 0.5119047619047619 | | totalSentences | 84 | | uniqueOpeners | 43 | |
| 47.62% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 70 | | matches | | 0 | "Instead, a dark, viscous liquid—rich" |
| | ratio | 0.014 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 16 | | totalSentences | 70 | | matches | | 0 | "She stepped through the shimmering" | | 1 | "Her waist-length silver hair floated" | | 2 | "It throbbed against her palm," | | 3 | "She smoothed the front of" | | 4 | "They condensed into a solid," | | 5 | "Her fingers smoothed over the" | | 6 | "They began to trek down" | | 7 | "She caught herself reaching toward" | | 8 | "Her hand hovered inches from" | | 9 | "She looked down at her" | | 10 | "Her throat felt dry, despite" | | 11 | "They pressed deeper into the" | | 12 | "She knelt, her gloved fingers" | | 13 | "She stood up quickly, resting" | | 14 | "She lifted a pale hand," | | 15 | "It was beautiful, grand, and" |
| | ratio | 0.229 | |
| 95.71% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 51 | | totalSentences | 70 | | matches | | 0 | "The heat hit Rory first—not" | | 1 | "She stepped through the shimmering" | | 2 | "The Half-Fae drifted past her" | | 3 | "Her waist-length silver hair floated" | | 4 | "Rory looked up, squinting." | | 5 | "Cloud-like swirls of pulverized gold" | | 6 | "Rory reached up, her fingers" | | 7 | "It throbbed against her palm," | | 8 | "Rory said, her voice sounding" | | 9 | "Isolde replied, her pale lavender" | | 10 | "She smoothed the front of" | | 11 | "Rory muttered, letting go of" | | 12 | "Nyx detached from the darkness," | | 13 | "They condensed into a solid," | | 14 | "The sound didn't come from" | | 15 | "Rory said softly, adjusting her" | | 16 | "The Fae-forged blade Isolde had" | | 17 | "Her fingers smoothed over the" | | 18 | "They began to trek down" | | 19 | "The landscape was a dream" |
| | ratio | 0.729 | |
| 100.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 2 | | totalSentences | 70 | | matches | | 0 | "To her left, the shadows" | | 1 | "To their right, orchards stretched" |
| | ratio | 0.029 | |
| 51.67% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 47 | | technicalSentenceCount | 6 | | matches | | 0 | "The heat hit Rory first—not a clean summer warmth, but a thick, syrupy air that tasted faintly of burnt sugar and crushed star anise." | | 1 | "She stepped through the shimmering tear in the Veil, her boots sinking two inches into dark, spice-scented loam that yielded like damp velvet." | | 2 | "Her waist-length silver hair floated around her shoulders as if suspended in water, catching the strange, bronze light of the sky." | | 3 | "It throbbed against her palm, beating with a frantic, rhythmic heat that matched the quickening pulse in her left wrist, right over the crescent-shaped scar fro…" | | 4 | "She caught herself reaching toward a low-hanging pod that bled a thick, golden syrup onto the moss below." | | 5 | "The only sound was the crunch of Rory’s boots, the gentle whisper of Nyx’s shifting form, and a low, resonant thrum that seemed to vibrate straight up through t…" |
| |
| 0.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 15 | | uselessAdditionCount | 4 | | matches | | 0 | "Rory said, her voice sounding muffled, swallowed by the heavy air" | | 1 | "Isolde said softly, without turning around" | | 2 | "Nyx said, their violet eyes narrowing as they floated down beside Rory" | | 3 | "Rory said, her voice turning hard, practical, focused" |
| |
| 0.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 14 | | fancyCount | 6 | | fancyTags | | 0 | "Isolde murmured (murmur)" | | 1 | "Rory muttered (mutter)" | | 2 | "Nyx whispered (whisper)" | | 3 | "Rory lied (lie)" | | 4 | "Rory murmured (murmur)" | | 5 | "Isolde agreed (agree)" |
| | dialogueSentences | 27 | | tagDensity | 0.519 | | leniency | 1 | | rawRatio | 0.429 | | effectiveRatio | 0.429 | |