| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 1 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 1 | | tagDensity | 1 | | leniency | 1 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 95.18% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1037 | | 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) | |
| 61.43% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1037 | | totalAiIsms | 8 | | found | | | highlights | | 0 | "familiar" | | 1 | "silence" | | 2 | "scanning" | | 3 | "sentinels" | | 4 | "whisper" | | 5 | "calculated" | | 6 | "pulsed" |
| |
| 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 | 80 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 1 | | narrationSentences | 80 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 80 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 41 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1015 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 2 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 43 | | wordCount | 1009 | | uniqueNames | 21 | | maxNameDensity | 0.89 | | worstName | "Rory" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Rory" | | discoveredNames | | Aurora | 3 | | Carter | 3 | | Richmond | 4 | | Park | 3 | | Golden | 1 | | Empress | 1 | | Pen | 2 | | Ponds | 2 | | October | 2 | | Rory | 9 | | Heartstone | 2 | | Hel | 1 | | Yu-Fei | 1 | | Evan | 1 | | Earth | 1 | | Fae | 1 | | Rora | 1 | | Cardiff | 1 | | Welsh-inflected | 1 | | Isolde | 1 | | Silas | 2 |
| | persons | | 0 | "Aurora" | | 1 | "Carter" | | 2 | "Empress" | | 3 | "Rory" | | 4 | "Evan" | | 5 | "Silas" |
| | places | | 0 | "Richmond" | | 1 | "Park" | | 2 | "Golden" | | 3 | "Pen" | | 4 | "Hel" | | 5 | "Yu-Fei" | | 6 | "Cardiff" |
| | globalScore | 1 | | windowScore | 1 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 50 | | glossingSentenceCount | 0 | | matches | (empty) | |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.985 | | wordCount | 1015 | | matches | | 0 | "not gradually, but like curtains drawn by impatient hands" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 80 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 36 | | mean | 28.19 | | std | 23.74 | | cv | 0.842 | | sampleLengths | | 0 | 21 | | 1 | 68 | | 2 | 18 | | 3 | 56 | | 4 | 52 | | 5 | 20 | | 6 | 104 | | 7 | 12 | | 8 | 12 | | 9 | 5 | | 10 | 58 | | 11 | 28 | | 12 | 8 | | 13 | 28 | | 14 | 22 | | 15 | 10 | | 16 | 2 | | 17 | 57 | | 18 | 31 | | 19 | 6 | | 20 | 3 | | 21 | 36 | | 22 | 6 | | 23 | 4 | | 24 | 41 | | 25 | 2 | | 26 | 66 | | 27 | 19 | | 28 | 53 | | 29 | 5 | | 30 | 45 | | 31 | 11 | | 32 | 7 | | 33 | 41 | | 34 | 20 | | 35 | 38 |
| |
| 92.11% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 3 | | totalSentences | 80 | | matches | | 0 | "was curved" | | 1 | "were gone" | | 2 | "been eleven" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 170 | | matches | | 0 | "was not pulsing" | | 1 | "was running" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 22 | | semicolonCount | 3 | | flaggedSentences | 19 | | totalSentences | 80 | | ratio | 0.238 | | matches | | 0 | "The path was familiar—gravel, then dirt, flanked by ancient oaks." | | 1 | "The standing stones came first—tall, carven with symbols she could not read, arranged in a circle she did not recognize." | | 2 | "Time moved wrong here; she knew that without knowing how she knew it." | | 3 | "Aurora—Rory, to anyone who mattered—stood with one hand on her handlebars, the other hovering near the Heartstone pendant that rested cold against her sternum." | | 4 | "She came because the delivery address had been here—scrawled in ink that smelled of iron, delivered to Yu-Fei with instructions that made the old woman's eyes narrow." | | 5 | "Now she was alone in a pocket between Earth and Fae, and the reason for her arrival—some package, some message—seemed less important than leaving." | | 6 | "Not steel—something darker, like obsidian that drank light." | | 7 | "The knife's presence was an invitation and a warning; she understood both without understanding the language of either." | | 8 | "Not Isolde—she knew that name from somewhere, a whisper in Silas's bar—but older, hungrier." | | 9 | "She calculated distance—twenty feet." | | 10 | "The bike—useless." | | 11 | "The knife—possible." | | 12 | "The grove went silent—no insects, no distant traffic from Richmond's roads, just the thud of her heart in her ears and the faint, terrible whisper of her name spoken in her mother's dead voice." | | 13 | "Not toward the figure—that was suicide—but perpendicular, through wildflowers that scratched her shins, toward the standing stones that marked the boundary." | | 14 | "The moss tried to hold her boots; she kicked free, the delivery bag swinging useless at her hip, spring rolls scattering like dead offerings." | | 15 | "The Heartstone finally pulsed—once, hot, against her collarbone—but she was running away from whatever portal lay hidden here, not toward it." | | 16 | "The trees were just trees—oak and birch, normal and old, but not sentient." | | 17 | "The time—she checked her phone—had been eleven minutes." | | 18 | "The knife sat on her kitchen table, and by morning, the wildflowers had begun to grow in cracks in her floorboards—white, bell-shaped, glowing faintly in the dark, whispering her name in voices she was trying hard to forget." |
| |
| 94.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1039 | | adjectiveStacks | 1 | | stackExamples | | 0 | "white, bell-shaped blooms" |
| | adverbCount | 30 | | adverbRatio | 0.028873917228103944 | | lyAdverbCount | 7 | | lyAdverbRatio | 0.006737247353224254 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 80 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 80 | | mean | 12.69 | | std | 9.63 | | cv | 0.759 | | sampleLengths | | 0 | 21 | | 1 | 16 | | 2 | 10 | | 3 | 15 | | 4 | 27 | | 5 | 2 | | 6 | 16 | | 7 | 20 | | 8 | 3 | | 9 | 20 | | 10 | 13 | | 11 | 24 | | 12 | 7 | | 13 | 4 | | 14 | 14 | | 15 | 3 | | 16 | 5 | | 17 | 15 | | 18 | 25 | | 19 | 27 | | 20 | 28 | | 21 | 24 | | 22 | 7 | | 23 | 5 | | 24 | 12 | | 25 | 5 | | 26 | 8 | | 27 | 17 | | 28 | 19 | | 29 | 4 | | 30 | 10 | | 31 | 5 | | 32 | 5 | | 33 | 18 | | 34 | 8 | | 35 | 4 | | 36 | 4 | | 37 | 2 | | 38 | 18 | | 39 | 22 | | 40 | 10 | | 41 | 2 | | 42 | 21 | | 43 | 22 | | 44 | 14 | | 45 | 4 | | 46 | 19 | | 47 | 4 | | 48 | 2 | | 49 | 2 |
| |
| 39.58% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 10 | | diversityRatio | 0.3125 | | totalSentences | 80 | | uniqueOpeners | 25 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 4 | | totalSentences | 72 | | matches | | 0 | "Then the trees closed in," | | 1 | "Then the wildflowers." | | 2 | "Instead, she pushed her bike" | | 3 | "Only the knife remained in" |
| | ratio | 0.056 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 21 | | totalSentences | 72 | | matches | | 0 | "She had been cycling home" | | 1 | "She knew the bend near" | | 2 | "Its silence screamed." | | 3 | "She should have turned back." | | 4 | "She came because the delivery" | | 5 | "She left the bike." | | 6 | "Her mother had been dead" | | 7 | "She touched the pendant." | | 8 | "she said to the empty" | | 9 | "She was cool-headed by nature," | | 10 | "She calculated distance—twenty feet." | | 11 | "She took a step toward" | | 12 | "She reached for the knife." | | 13 | "Her fingers closed on the" | | 14 | "It watched, she knew, with" | | 15 | "She burst through the tree" | | 16 | "She ran until her lungs" | | 17 | "She looked back." | | 18 | "She was back." | | 19 | "She did not go home." |
| | ratio | 0.292 | |
| 85.00% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 54 | | totalSentences | 72 | | matches | | 0 | "The delivery bag was still" | | 1 | "She had been cycling home" | | 2 | "The path was familiar—gravel, then" | | 3 | "She knew the bend near" | | 4 | "The bike's front light cast" | | 5 | "The standing stones came first—tall," | | 6 | "Daffodils and bluebells and something" | | 7 | "Time moved wrong here; she" | | 8 | "Aurora—Rory, to anyone who mattered—stood" | | 9 | "The crimson gem, thumbnail-sized, was" | | 10 | "That was wrong too." | | 11 | "Its silence screamed." | | 12 | "She should have turned back." | | 13 | "The grove was a clearing" | | 14 | "She came because the delivery" | | 15 | "Rory had taken the job" | | 16 | "The moss gripped the tires." | | 17 | "The blade was curved, and" | | 18 | "Rory approached slowly, her bright" | | 19 | "She left the bike." |
| | ratio | 0.75 | |
| 69.44% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 72 | | matches | | | ratio | 0.014 | |
| 3.48% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 41 | | technicalSentenceCount | 8 | | matches | | 0 | "Then the trees closed in, not gradually, but like curtains drawn by impatient hands, and the gravel turned to moss that swallowed the sound of her tires." | | 1 | "Daffodils and bluebells and something with white, bell-shaped blooms that should have withered in October, glowing faintly in the dark." | | 2 | "Aurora—Rory, to anyone who mattered—stood with one hand on her handlebars, the other hovering near the Heartstone pendant that rested cold against her sternum." | | 3 | "Instead, she pushed her bike forward, boots sinking into turf that yielded like wet sponge." | | 4 | "She came because the delivery address had been here—scrawled in ink that smelled of iron, delivered to Yu-Fei with instructions that made the old woman's eyes n…" | | 5 | "Tall, wrapped in something that might have been moss and might have been skin, its face hidden behind antlers of blackened bone." | | 6 | "She was cool-headed by nature, quick with the kind of thinking that solved problems before panic could set in." | | 7 | "Not toward the figure—that was suicide—but perpendicular, through wildflowers that scratched her shins, toward the standing stones that marked the boundary." |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 1 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 1 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 1 | | tagDensity | 1 | | leniency | 1 | | rawRatio | 0 | | effectiveRatio | 0 | |