| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 14 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 38 | | tagDensity | 0.368 | | leniency | 0.737 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 95.91% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1223 | | 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) | |
| 30.50% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1223 | | totalAiIsms | 17 | | found | | | highlights | | 0 | "pulsed" | | 1 | "warmth" | | 2 | "flicker" | | 3 | "chill" | | 4 | "unsettled" | | 5 | "reminder" | | 6 | "whisper" | | 7 | "perfect" | | 8 | "silence" | | 9 | "rhythmic" | | 10 | "cascading" | | 11 | "mosaic" |
| |
| 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 | 83 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 0 | | narrationSentences | 83 | | filterMatches | | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 106 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 37 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1214 | | ratio | 0 | | matches | (empty) | |
| 97.22% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 9 | | unquotedAttributions | 1 | | matches | | 0 | "The Heartstone burned against her chest, and behind her, Nyx whispered her name in a voice like wind through broken glas…" |
| |
| 83.33% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 42 | | wordCount | 977 | | uniqueNames | 13 | | maxNameDensity | 1.33 | | worstName | "Rory" | | maxWindowNameDensity | 2.5 | | worstWindowName | "Rory" | | discoveredNames | | Nyx | 9 | | Rory | 13 | | Heartstone | 3 | | Hel | 2 | | November | 1 | | English | 1 | | Photoshop | 1 | | British | 1 | | Fae-forged | 1 | | Hel-portal | 1 | | Fae | 3 | | Isolde | 5 | | Seer | 1 |
| | persons | | 0 | "Nyx" | | 1 | "Rory" | | 2 | "Heartstone" | | 3 | "November" | | 4 | "Isolde" | | 5 | "Seer" |
| | places | | | globalScore | 0.835 | | windowScore | 0.833 | |
| 59.09% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 55 | | glossingSentenceCount | 2 | | matches | | 0 | "looked like decades" | | 1 | "looked like lavender but glowed faintly g" |
| |
| 0.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 3 | | per1kWords | 2.471 | | wordCount | 1214 | | matches | | 0 | "not the warmth she'd learned meant a Hel portal, but something else" | | 1 | "Not with words, but with a pull behind her sternum, a sudden certainty" | | 2 | "no dominion but" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 106 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 49 | | mean | 24.78 | | std | 21.25 | | cv | 0.858 | | sampleLengths | | 0 | 61 | | 1 | 7 | | 2 | 43 | | 3 | 3 | | 4 | 20 | | 5 | 48 | | 6 | 4 | | 7 | 33 | | 8 | 8 | | 9 | 55 | | 10 | 4 | | 11 | 69 | | 12 | 34 | | 13 | 18 | | 14 | 10 | | 15 | 32 | | 16 | 2 | | 17 | 22 | | 18 | 4 | | 19 | 20 | | 20 | 6 | | 21 | 47 | | 22 | 79 | | 23 | 4 | | 24 | 78 | | 25 | 11 | | 26 | 48 | | 27 | 8 | | 28 | 11 | | 29 | 22 | | 30 | 3 | | 31 | 41 | | 32 | 16 | | 33 | 18 | | 34 | 3 | | 35 | 5 | | 36 | 42 | | 37 | 32 | | 38 | 5 | | 39 | 58 | | 40 | 28 | | 41 | 5 | | 42 | 37 | | 43 | 9 | | 44 | 39 | | 45 | 6 | | 46 | 29 | | 47 | 24 | | 48 | 3 |
| |
| 96.81% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 2 | | totalSentences | 83 | | matches | | 0 | "been trimmed" | | 1 | "been given" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 1 | | totalVerbs | 162 | | matches | | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 9 | | semicolonCount | 0 | | flaggedSentences | 8 | | totalSentences | 106 | | ratio | 0.075 | | matches | | 0 | "The crimson gem pulsed faintly against her collarbone—not the warmth she'd learned meant a Hel portal, but something else." | | 1 | "It hit her like stepping into a bath—warm, dense, almost liquid." | | 2 | "Wildflowers carpeted the ground in drifts of color that had no business existing in late autumn—bluebells nodding beside white foxglove, crimson poppies blazing beside something that looked like lavender but glowed faintly gold at the edges." | | 3 | "A butterfly drifted past her face—pale blue, almost translucent, with wingspan too wide for any British species." | | 4 | "Now she found it grounding—a constant reminder that the world had teeth, and she'd been given one of her own." | | 5 | "The Heartstone flared warm—warning warm, Hel-portal warm—and she snatched her hand back." | | 6 | "A sound reached her then—soft, rhythmic, like someone humming." | | 7 | "Her voice carried that particular Fae cadence—too musical, too precise, each word placed like a stone in a mosaic." |
| |
| 93.61% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 989 | | adjectiveStacks | 1 | | stackExamples | | 0 | "over smooth white stones," |
| | adverbCount | 40 | | adverbRatio | 0.04044489383215369 | | lyAdverbCount | 10 | | lyAdverbRatio | 0.010111223458038422 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 106 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 106 | | mean | 11.45 | | std | 8.51 | | cv | 0.743 | | sampleLengths | | 0 | 14 | | 1 | 17 | | 2 | 30 | | 3 | 7 | | 4 | 19 | | 5 | 10 | | 6 | 14 | | 7 | 3 | | 8 | 14 | | 9 | 6 | | 10 | 8 | | 11 | 19 | | 12 | 2 | | 13 | 2 | | 14 | 17 | | 15 | 4 | | 16 | 33 | | 17 | 8 | | 18 | 11 | | 19 | 11 | | 20 | 13 | | 21 | 1 | | 22 | 3 | | 23 | 16 | | 24 | 4 | | 25 | 11 | | 26 | 36 | | 27 | 22 | | 28 | 15 | | 29 | 2 | | 30 | 17 | | 31 | 16 | | 32 | 2 | | 33 | 7 | | 34 | 3 | | 35 | 5 | | 36 | 7 | | 37 | 20 | | 38 | 2 | | 39 | 14 | | 40 | 8 | | 41 | 4 | | 42 | 8 | | 43 | 12 | | 44 | 6 | | 45 | 21 | | 46 | 26 | | 47 | 17 | | 48 | 18 | | 49 | 4 |
| |
| 72.96% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 1 | | diversityRatio | 0.44339622641509435 | | totalSentences | 106 | | uniqueOpeners | 47 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 69 | | matches | (empty) | | ratio | 0 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 16 | | totalSentences | 69 | | matches | | 0 | "Their bark had gone silver" | | 1 | "Their voice came soft, carried" | | 2 | "She pulled the chain out" | | 3 | "It hit her like stepping" | | 4 | "She straightened, inhaling automatically, and" | | 5 | "They stood at the boundary," | | 6 | "Their voice dropped to something" | | 7 | "They moved toward the center" | | 8 | "It landed on a foxglove" | | 9 | "She looked away quickly." | | 10 | "It flowed uphill over the" | | 11 | "She stood and wiped her" | | 12 | "It came from the far" | | 13 | "She was barefoot." | | 14 | "Her voice carried that particular" | | 15 | "She kept walking." |
| | ratio | 0.232 | |
| 46.96% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 57 | | totalSentences | 69 | | matches | | 0 | "Rory stopped at the edge" | | 1 | "Their bark had gone silver" | | 2 | "Nyx materialized from the shadow" | | 3 | "Their voice came soft, carried" | | 4 | "Rory touched the Heartstone pendant" | | 5 | "The crimson gem pulsed faintly" | | 6 | "She pulled the chain out" | | 7 | "Nyx drifted forward, and Rory" | | 8 | "The air changed three steps" | | 9 | "It hit her like stepping" | | 10 | "The November chill that had" | | 11 | "She straightened, inhaling automatically, and" | | 12 | "Something floral she couldn't name," | | 13 | "The grove spread before her," | | 14 | "Wildflowers carpeted the ground in" | | 15 | "The grass itself was wrong," | | 16 | "Rory walked forward, boots pressing" | | 17 | "Rory looked back at them." | | 18 | "Nyx hadn't crossed fully into" | | 19 | "They stood at the boundary," |
| | ratio | 0.826 | |
| 100.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 2 | | totalSentences | 69 | | matches | | 0 | "Now she found it grounding—a" | | 1 | "Even from a few feet" |
| | ratio | 0.029 | |
| 69.60% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 39 | | technicalSentenceCount | 4 | | matches | | 0 | "Nyx materialized from the shadow of a nearby holly bush, their form consolidating from smoke into something approximating solid." | | 1 | "Wildflowers carpeted the ground in drifts of color that had no business existing in late autumn—bluebells nodding beside white foxglove, crimson poppies blazing…" | | 2 | "Isolde emerged from the bloom like a figure from a painting, silver hair cascading past her waist, pale lavender eyes fixed on Rory with an expression that migh…" | | 3 | "The wildflowers bent away from her feet without touching them, as if even the plants knew better than to leave a mark." |
| |
| 89.29% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 14 | | uselessAdditionCount | 1 | | matches | | 0 | "Rory walked, boots pressing into soft earth that gave like a mattress" |
| |
| 97.37% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 6 | | fancyCount | 2 | | fancyTags | | 0 | "she breathed (breathe)" | | 1 | "Nyx corrected (correct)" |
| | dialogueSentences | 38 | | tagDensity | 0.158 | | leniency | 0.316 | | rawRatio | 0.333 | | effectiveRatio | 0.105 | |