| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 4 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 11 | | tagDensity | 0.364 | | leniency | 0.727 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 91.99% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 624 | | 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) | |
| 19.87% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 624 | | totalAiIsms | 10 | | found | | | highlights | | 0 | "etched" | | 1 | "whisper" | | 2 | "pulsed" | | 3 | "rhythmic" | | 4 | "echoed" | | 5 | "depths" | | 6 | "flickered" | | 7 | "trembled" | | 8 | "beacon" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 1 | | maxInWindow | 1 | | found | | 0 | | label | "blood ran cold" | | count | 1 |
|
| | highlights | | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 41 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 1 | | narrationSentences | 41 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 48 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 50 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 14 | | markdownWords | 14 | | totalWords | 617 | | ratio | 0.023 | | matches | | 0 | "alive" | | 1 | "feeling" | | 2 | "time" | | 3 | "thumping" | | 4 | "singing" | | 5 | "vein" | | 6 | "shifted" | | 7 | "hungry" | | 8 | "tear" | | 9 | "time" | | 10 | "breathing" | | 11 | "screamed" | | 12 | "rotten" | | 13 | "screamed" |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 6 | | unquotedAttributions | 0 | | matches | (empty) | |
| 66.67% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 20 | | wordCount | 549 | | uniqueNames | 6 | | maxNameDensity | 1.64 | | worstName | "Aurora" | | maxWindowNameDensity | 3 | | worstWindowName | "Aurora" | | discoveredNames | | Fae | 2 | | Grove | 1 | | Fae-forged | 1 | | Aurora | 9 | | Nyx | 4 | | Isolde | 3 |
| | persons | | | places | | | globalScore | 0.68 | | windowScore | 0.667 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 32 | | glossingSentenceCount | 0 | | matches | (empty) | |
| 0.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 5 | | per1kWords | 8.104 | | wordCount | 617 | | matches | | 0 | "not with storm clouds, but with the slow, creeping shadow of something vast" | | 1 | "not of the living, but of things" | | 2 | "not just the rift, but the thing" | | 3 | "not with wind, but with something deeper, something" | | 4 | "not in pain, but in hunger" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 48 | | matches | (empty) | |
| 99.88% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 15 | | mean | 41.13 | | std | 20.55 | | cv | 0.5 | | sampleLengths | | 0 | 30 | | 1 | 66 | | 2 | 60 | | 3 | 39 | | 4 | 76 | | 5 | 42 | | 6 | 8 | | 7 | 73 | | 8 | 33 | | 9 | 10 | | 10 | 22 | | 11 | 49 | | 12 | 49 | | 13 | 22 | | 14 | 38 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 0 | | totalSentences | 41 | | matches | (empty) | |
| 50.19% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 89 | | matches | | 0 | "was holding" | | 1 | "was watching" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 9 | | semicolonCount | 1 | | flaggedSentences | 9 | | totalSentences | 48 | | ratio | 0.188 | | matches | | 0 | "The sky above her darkened—not with storm clouds, but with the slow, creeping shadow of something vast and unseen." | | 1 | "The trees here were not just tall; they were *alive*, their bark etched with patterns that shifted when she blinked." | | 2 | "A scent clung to the air—something sweet and metallic, like crushed violets and old blood." | | 3 | "Then, from the darkness between the trees, a sound—a low, rhythmic *thumping*, like a heartbeat, but not of a living thing." | | 4 | "Instead, she reached into the air and pulled forth a small, glowing orb—pulsing like a dying ember." | | 5 | "The orb burned brighter, and for a second, Aurora saw something—something *hungry*—staring back at her from the depths of the orb." | | 6 | "The orb in Aurora’s hand flared violently, and for a heartbeat, she saw not just the rift, but the thing that lurked beyond it—a shape shifting between shadow and something older, something that had been waiting for this moment for far longer than any of them had been alive." | | 7 | "A low, guttural growl rumbled through the earth, and the trees *screamed*—not with wind, but with something deeper, something that made Aurora’s teeth ache." | | 8 | "Behind her, the grove *screamed*—not in pain, but in hunger." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 556 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 22 | | adverbRatio | 0.039568345323741004 | | lyAdverbCount | 5 | | lyAdverbRatio | 0.008992805755395683 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 48 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 48 | | mean | 12.85 | | std | 8.55 | | cv | 0.665 | | sampleLengths | | 0 | 30 | | 1 | 17 | | 2 | 11 | | 3 | 19 | | 4 | 19 | | 5 | 10 | | 6 | 20 | | 7 | 15 | | 8 | 15 | | 9 | 11 | | 10 | 20 | | 11 | 8 | | 12 | 3 | | 13 | 5 | | 14 | 16 | | 15 | 13 | | 16 | 21 | | 17 | 18 | | 18 | 15 | | 19 | 12 | | 20 | 13 | | 21 | 2 | | 22 | 4 | | 23 | 4 | | 24 | 3 | | 25 | 17 | | 26 | 10 | | 27 | 22 | | 28 | 21 | | 29 | 7 | | 30 | 7 | | 31 | 8 | | 32 | 11 | | 33 | 6 | | 34 | 4 | | 35 | 8 | | 36 | 14 | | 37 | 49 | | 38 | 4 | | 39 | 24 | | 40 | 21 | | 41 | 16 | | 42 | 6 | | 43 | 3 | | 44 | 16 | | 45 | 10 | | 46 | 8 | | 47 | 1 |
| |
| 40.97% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 7 | | diversityRatio | 0.3333333333333333 | | totalSentences | 48 | | uniqueOpeners | 16 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 3 | | totalSentences | 39 | | matches | | 0 | "Then, from the darkness between" | | 1 | "Instead, she reached into the" | | 2 | "Then the ground trembled." |
| | ratio | 0.077 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 7 | | totalSentences | 39 | | matches | | 0 | "She exhaled sharply, her breath" | | 1 | "She wasn’t sure she could." | | 2 | "It echoed through the grove," | | 3 | "She moved without sound, her" | | 4 | "she said, her voice a" | | 5 | "Their voice dropped, lower, darker" | | 6 | "She turned and ran, the" |
| | ratio | 0.179 | |
| 36.92% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 33 | | totalSentences | 39 | | matches | | 0 | "The air in the Fae" | | 1 | "Aurora’s fingers tightened around the" | | 2 | "The moment she stepped through" | | 3 | "The sky above her darkened—not" | | 4 | "The wind carried whispers, not" | | 5 | "She exhaled sharply, her breath" | | 6 | "The trees here were not" | | 7 | "A scent clung to the" | | 8 | "Nyx stepped beside her, their" | | 9 | "Nyx murmured, voice a whisper" | | 10 | "Aurora didn’t answer." | | 11 | "She wasn’t sure she could." | | 12 | "The ground beneath her feet" | | 13 | "The air thickened, pressing against" | | 14 | "It echoed through the grove," | | 15 | "Isolde appeared in the mist," | | 16 | "She moved without sound, her" | | 17 | "she said, her voice a" | | 18 | "Aurora’s blood ran cold." | | 19 | "Isolde didn’t answer." |
| | ratio | 0.846 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 39 | | matches | (empty) | | ratio | 0 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 26 | | technicalSentenceCount | 6 | | matches | | 0 | "The air in the Fae Grove hummed with something older than the trees, something that coiled beneath the earth and whispered through the roots like a breath held …" | | 1 | "One particularly old oak groaned as she passed, its branches swaying as if in greeting." | | 2 | "The ground beneath her feet pulsed faintly, as if the earth itself was holding its breath." | | 3 | "The orb in Aurora’s hand flared violently, and for a heartbeat, she saw not just the rift, but the thing that lurked beyond it—a shape shifting between shadow a…" | | 4 | "A low, guttural growl rumbled through the earth, and the trees *screamed*—not with wind, but with something deeper, something that made Aurora’s teeth ache." | | 5 | "She turned and ran, the orb in her hand glowing like a beacon, pulling her forward." |
| |
| 0.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 4 | | uselessAdditionCount | 1 | | matches | | 0 | "she said, her voice a thread of riddles woven together" |
| |
| 59.09% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 3 | | fancyCount | 1 | | fancyTags | | | dialogueSentences | 11 | | tagDensity | 0.273 | | leniency | 0.545 | | rawRatio | 0.333 | | effectiveRatio | 0.182 | |