| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 18 | | adverbTagCount | 1 | | adverbTags | | 0 | "She gestured around [around]" |
| | dialogueSentences | 37 | | tagDensity | 0.486 | | leniency | 0.973 | | rawRatio | 0.056 | | effectiveRatio | 0.054 | |
| 91.10% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1124 | | 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) | |
| 59.96% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1124 | | totalAiIsms | 9 | | found | | | highlights | | 0 | "pulsed" | | 1 | "charged" | | 2 | "shimmered" | | 3 | "whisper" | | 4 | "warmth" | | 5 | "flickered" | | 6 | "cascading" | | 7 | "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 | 55 | | matches | (empty) | |
| 64.94% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 3 | | narrationSentences | 55 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 74 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 41 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1113 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 10 | | unquotedAttributions | 0 | | matches | (empty) | |
| 36.52% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 52 | | wordCount | 749 | | uniqueNames | 12 | | maxNameDensity | 2.27 | | worstName | "Aurora" | | maxWindowNameDensity | 3.5 | | worstWindowName | "Aurora" | | discoveredNames | | Richmond | 1 | | Park | 1 | | Aurora | 17 | | Heartstone | 2 | | Pendant | 1 | | Nyx | 10 | | London | 2 | | Varga | 1 | | Isolde | 12 | | Fae-Forged | 1 | | Blade | 1 | | Fae | 3 |
| | persons | | 0 | "Aurora" | | 1 | "Pendant" | | 2 | "Nyx" | | 3 | "Varga" | | 4 | "Isolde" | | 5 | "Blade" |
| | places | | 0 | "Richmond" | | 1 | "Park" | | 2 | "London" |
| | globalScore | 0.365 | | windowScore | 0.5 | |
| 0.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 50 | | glossingSentenceCount | 3 | | matches | | 0 | "seemed almost black reds that shimmered like fire, whites that glowed with inner light" | | 1 | "eyes that seemed to hold galaxies" | | 2 | "something like pity" |
| |
| 0.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 3 | | per1kWords | 2.695 | | wordCount | 1113 | | matches | | 0 | "not the sky above but stars" | | 1 | "not just between Earth and Hel, but between all realms" | | 2 | "not just as a beautiful, impossible place, but as a glimpse of what could happen if the boundaries between" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 74 | | matches | (empty) | |
| 92.05% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 34 | | mean | 32.74 | | std | 15.46 | | cv | 0.472 | | sampleLengths | | 0 | 37 | | 1 | 19 | | 2 | 43 | | 3 | 40 | | 4 | 35 | | 5 | 19 | | 6 | 58 | | 7 | 18 | | 8 | 36 | | 9 | 11 | | 10 | 43 | | 11 | 21 | | 12 | 17 | | 13 | 22 | | 14 | 20 | | 15 | 43 | | 16 | 31 | | 17 | 44 | | 18 | 21 | | 19 | 17 | | 20 | 53 | | 21 | 19 | | 22 | 39 | | 23 | 33 | | 24 | 12 | | 25 | 69 | | 26 | 29 | | 27 | 31 | | 28 | 65 | | 29 | 27 | | 30 | 17 | | 31 | 55 | | 32 | 52 | | 33 | 17 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 0 | | totalSentences | 55 | | matches | (empty) | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 132 | | matches | (empty) | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 6 | | semicolonCount | 0 | | flaggedSentences | 6 | | totalSentences | 74 | | ratio | 0.081 | | matches | | 0 | "The air changed—crisper, charged with something ancient and wild." | | 1 | "Wildflowers bloomed in impossible colours—blues so deep they seemed almost black, reds that shimmered like fire, whites that glowed with inner light." | | 2 | "The moment her skin made contact, the bloom released a scent unlike anything she'd experienced—honey and thunder and something else she couldn't name." | | 3 | "\"The Veil is thinning not just between Earth and Hel, but between all realms.\" She touched the water's surface, and ripples spread outward, revealing images—creatures of shadow and flame, cities of impossible architecture, a figure with horns cloaked in darkness." | | 4 | "\"You carry the Heartstone, child of two worlds. The pendant chose you for a reason.\" She pointed to a vision forming in the pool—a gateway pulsing with crimson energy, creatures gathering at its edges." | | 5 | "Looking around the grove, she saw it with new eyes—not just as a beautiful, impossible place, but as a glimpse of what could happen if the boundaries between realms collapsed completely." |
| |
| 88.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 760 | | adjectiveStacks | 2 | | stackExamples | | 0 | "small crescent-shaped scar" | | 1 | "slender, leaf-shaped dagger" |
| | adverbCount | 21 | | adverbRatio | 0.02763157894736842 | | lyAdverbCount | 6 | | lyAdverbRatio | 0.007894736842105263 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 74 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 74 | | mean | 15.04 | | std | 7.92 | | cv | 0.526 | | sampleLengths | | 0 | 19 | | 1 | 18 | | 2 | 13 | | 3 | 6 | | 4 | 17 | | 5 | 26 | | 6 | 8 | | 7 | 31 | | 8 | 1 | | 9 | 12 | | 10 | 14 | | 11 | 9 | | 12 | 19 | | 13 | 2 | | 14 | 14 | | 15 | 22 | | 16 | 20 | | 17 | 6 | | 18 | 12 | | 19 | 13 | | 20 | 23 | | 21 | 11 | | 22 | 15 | | 23 | 16 | | 24 | 12 | | 25 | 15 | | 26 | 6 | | 27 | 11 | | 28 | 6 | | 29 | 3 | | 30 | 19 | | 31 | 12 | | 32 | 8 | | 33 | 11 | | 34 | 14 | | 35 | 18 | | 36 | 23 | | 37 | 8 | | 38 | 15 | | 39 | 13 | | 40 | 16 | | 41 | 21 | | 42 | 13 | | 43 | 4 | | 44 | 18 | | 45 | 30 | | 46 | 5 | | 47 | 16 | | 48 | 3 | | 49 | 34 |
| |
| 62.61% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 2 | | diversityRatio | 0.3918918918918919 | | totalSentences | 74 | | uniqueOpeners | 29 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 52 | | matches | (empty) | | ratio | 0 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 10 | | totalSentences | 52 | | matches | | 0 | "She held up the Heartstone" | | 1 | "Their violet eyes glowed brighter" | | 2 | "They moved deeper into the" | | 3 | "It cocked its head, studying" | | 4 | "She reached into the air," | | 5 | "She looked from the blade" | | 6 | "She touched the water's surface," | | 7 | "She pointed to a vision" | | 8 | "She gestured around them" | | 9 | "she asked, her voice steady" |
| | ratio | 0.192 | |
| 27.31% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 45 | | totalSentences | 52 | | matches | | 0 | "Aurora paused at the edge" | | 1 | "Nyx materialised from the shadow" | | 2 | "Nyx whispered, their voice like" | | 3 | "Aurora touched the small crescent-shaped" | | 4 | "She held up the Heartstone" | | 5 | "Nyx gestured toward a cluster" | | 6 | "Their violet eyes glowed brighter" | | 7 | "They moved deeper into the" | | 8 | "The air changed—crisper, charged with" | | 9 | "Nyx confirmed, their form becoming" | | 10 | "Wildflowers bloomed in impossible colours—blues" | | 11 | "Trees twisted into shapes that" | | 12 | "Aurora knelt, reaching out to" | | 13 | "The moment her skin made" | | 14 | "a voice spoke from behind" | | 15 | "Aurora spun around to find" | | 16 | "Isolde Varga left no footprints" | | 17 | "Isolde's voice carried the musicality" | | 18 | "Aurora asked, her hand instinctively" | | 19 | "Isolde smiled faintly." |
| | ratio | 0.865 | |
| 96.15% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 52 | | matches | | 0 | "Before them stretched a clearing" |
| | ratio | 0.019 | |
| 56.28% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 33 | | technicalSentenceCount | 4 | | matches | | 0 | "Wildflowers bloomed in impossible colours—blues so deep they seemed almost black, reds that shimmered like fire, whites that glowed with inner light." | | 1 | "Trees twisted into shapes that defied natural growth patterns, their silver bark reflecting light despite the lack of direct sun." | | 2 | "Silver hair cascaded down her back, and her pale lavender eyes held wisdom that spanned centuries." | | 3 | "It cocked its head, studying her with eyes that seemed to hold galaxies." |
| |
| 41.67% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 18 | | uselessAdditionCount | 3 | | matches | | 0 | "Aurora asked, her hand instinctively closing around the gem" | | 1 | "Nyx explained, their voice a mere whisper" | | 2 | "she asked, her voice steady despite the tremor in her hands" |
| |
| 0.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 10 | | fancyCount | 7 | | fancyTags | | 0 | "Nyx whispered (whisper)" | | 1 | "Nyx confirmed (confirm)" | | 2 | "Nyx warned (warn)" | | 3 | "a voice spoke (speak)" | | 4 | "Isolde explained (explain)" | | 5 | "Aurora breathed (breathe)" | | 6 | "Nyx explained (explain)" |
| | dialogueSentences | 37 | | tagDensity | 0.27 | | leniency | 0.541 | | rawRatio | 0.7 | | effectiveRatio | 0.378 | |