| 78.57% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 7 | | adverbTagCount | 1 | | adverbTags | | 0 | "They gestured vaguely [vaguely]" |
| | dialogueSentences | 12 | | tagDensity | 0.583 | | leniency | 1 | | rawRatio | 0.143 | | effectiveRatio | 0.143 | |
| 83.11% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 592 | | 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) | |
| 0.00% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 592 | | totalAiIsms | 15 | | found | | | highlights | | 0 | "familiar" | | 1 | "shimmered" | | 2 | "whisper" | | 3 | "traced" | | 4 | "sentinel" | | 5 | "vibrated" | | 6 | "cacophony" | | 7 | "pulsed" | | 8 | "enigmatic" | | 9 | "beacon" | | 10 | "warmth" | | 11 | "pulse" | | 12 | "stark" | | 13 | "resonated" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 0 | | maxInWindow | 0 | | found | (empty) | | highlights | (empty) | |
| 96.26% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 1 | | narrationSentences | 29 | | matches | | |
| 0.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 3 | | narrationSentences | 29 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 34 | | 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 | 587 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 4 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 15 | | wordCount | 475 | | uniqueNames | 7 | | maxNameDensity | 0.84 | | worstName | "Aurora" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Aurora" | | discoveredNames | | London | 1 | | Fae-Forged | 2 | | Blade | 2 | | Aurora | 4 | | Isolde | 3 | | Heartstone | 2 | | Dymas | 1 |
| | persons | | 0 | "Blade" | | 1 | "Aurora" | | 2 | "Isolde" |
| | places | | | globalScore | 1 | | windowScore | 1 | |
| 0.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 28 | | glossingSentenceCount | 4 | | matches | | 0 | "light that seemed to emanate from the very sky itself" | | 1 | "silhouette that seemed to absorb the light around them" | | 2 | "looked like a castle made of living coral" | | 3 | "knives that seemed to glow with inner fire, preparing dishes that looked like living sculptures—fruits that pulsed with light, meats that steamed with an ethereal steam" | | 4 | "looked like living sculptures—fruits that" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 587 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 34 | | matches | (empty) | |
| 65.58% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 8 | | mean | 73.38 | | std | 27.85 | | cv | 0.38 | | sampleLengths | | 0 | 97 | | 1 | 48 | | 2 | 94 | | 3 | 104 | | 4 | 43 | | 5 | 35 | | 6 | 60 | | 7 | 106 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 0 | | totalSentences | 29 | | matches | (empty) | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 77 | | matches | (empty) | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 2 | | semicolonCount | 0 | | flaggedSentences | 2 | | totalSentences | 34 | | ratio | 0.059 | | matches | | 0 | "The air thickened, heavy with the scent of overripe fruit and something else—something faintly metallic, like blood." | | 1 | "She saw chefs, their faces obscured by tall hats, wielding knives that seemed to glow with inner fire, preparing dishes that looked like living sculptures—fruits that pulsed with light, meats that steamed with an ethereal steam." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 480 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 14 | | adverbRatio | 0.029166666666666667 | | lyAdverbCount | 8 | | lyAdverbRatio | 0.016666666666666666 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 34 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 34 | | mean | 17.26 | | std | 10.61 | | cv | 0.615 | | sampleLengths | | 0 | 17 | | 1 | 9 | | 2 | 9 | | 3 | 25 | | 4 | 19 | | 5 | 18 | | 6 | 14 | | 7 | 27 | | 8 | 7 | | 9 | 38 | | 10 | 14 | | 11 | 34 | | 12 | 8 | | 13 | 6 | | 14 | 5 | | 15 | 15 | | 16 | 22 | | 17 | 36 | | 18 | 20 | | 19 | 11 | | 20 | 8 | | 21 | 15 | | 22 | 9 | | 23 | 13 | | 24 | 13 | | 25 | 9 | | 26 | 8 | | 27 | 34 | | 28 | 18 | | 29 | 12 | | 30 | 12 | | 31 | 17 | | 32 | 13 | | 33 | 52 |
| |
| 60.78% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 1 | | diversityRatio | 0.38235294117647056 | | totalSentences | 34 | | uniqueOpeners | 13 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 29 | | matches | (empty) | | ratio | 0 | |
| 82.07% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 10 | | totalSentences | 29 | | matches | | 0 | "They shifted, their form flickering" | | 1 | "she murmured, her voice low" | | 2 | "She traced a finger along" | | 3 | "She saw chefs, their faces" | | 4 | "She reached out, her fingers" | | 5 | "It felt alive, warm, humming" | | 6 | "They gestured vaguely towards the" | | 7 | "She looked towards the pavilion," | | 8 | "She drew the Fae-Forged Blade," | | 9 | "She took a deep breath," |
| | ratio | 0.345 | |
| 11.72% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 26 | | totalSentences | 29 | | matches | | 0 | "The air thickened, heavy with" | | 1 | "Aurora’s nostrils flared as she" | | 2 | "The world outside, the familiar" | | 3 | "Vines, thick as serpents, coiled" | | 4 | "The ground beneath her boots" | | 5 | "Nyx breathed, their voice a" | | 6 | "They shifted, their form flickering" | | 7 | "Isolde stood beside her, her" | | 8 | "she murmured, her voice low" | | 9 | "She traced a finger along" | | 10 | "Aurora’s gaze swept over the" | | 11 | "The sheer scale was staggering." | | 12 | "The air vibrated with the" | | 13 | "She saw chefs, their faces" | | 14 | "Aurora breathed, a tremor of" | | 15 | "She reached out, her fingers" | | 16 | "It felt alive, warm, humming" | | 17 | "Nyx stated, their shadow-form flickering" | | 18 | "They gestured vaguely towards the" | | 19 | "Isolde’s lips curved into a" |
| | ratio | 0.897 | |
| 100.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 29 | | matches | | 0 | "Before her stretched a valley" |
| | ratio | 0.034 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 16 | | technicalSentenceCount | 5 | | matches | | 0 | "Before her stretched a valley carved from impossible stone, bathed in a warm, honeyed amber light that seemed to emanate from the very sky itself." | | 1 | "They shifted, their form flickering like a shadow caught in a candle flame, solidifying into a tall, slender silhouette that seemed to absorb the light around t…" | | 2 | "She saw chefs, their faces obscured by tall hats, wielding knives that seemed to glow with inner fire, preparing dishes that looked like living sculptures—fruit…" | | 3 | "It felt alive, warm, humming with a low, resonant frequency that vibrated in her bones." | | 4 | "She took a deep breath, the scent of decay and excess filling her lungs, and stepped forward, following Isolde’s silent lead towards the heart of the valley, th…" |
| |
| 0.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 7 | | uselessAdditionCount | 5 | | matches | | 0 | "Nyx breathed, their voice a whisper carried on the wind" | | 1 | "she murmured, her voice low and resonant" | | 2 | "Aurora breathed, a tremor of awe in her voice" | | 3 | "Nyx stated, their shadow-form flickering as they turned to face her" | | 4 | "She looked, her eyes sharp" |
| |
| 0.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 4 | | fancyCount | 4 | | fancyTags | | 0 | "Nyx breathed (breathe)" | | 1 | "she murmured (murmur)" | | 2 | "Aurora breathed (breathe)" | | 3 | "Nyx stated (state)" |
| | dialogueSentences | 12 | | tagDensity | 0.333 | | leniency | 0.667 | | rawRatio | 1 | | effectiveRatio | 0.667 | |