| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 14 | | adverbTagCount | 1 | | adverbTags | | 0 | "Isolde said again [again]" |
| | dialogueSentences | 25 | | tagDensity | 0.56 | | leniency | 1 | | rawRatio | 0.071 | | effectiveRatio | 0.071 | |
| 85.88% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1062 | | totalAiIsmAdverbs | 3 | | 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) | |
| 57.63% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1062 | | totalAiIsms | 9 | | found | | | highlights | | 0 | "could feel" | | 1 | "comforting" | | 2 | "weight" | | 3 | "warmth" | | 4 | "resolved" | | 5 | "flickered" | | 6 | "silence" |
| |
| 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 | 43 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 0 | | narrationSentences | 43 | | filterMatches | | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 54 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 66 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1075 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 15 | | unquotedAttributions | 0 | | matches | (empty) | |
| 83.99% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 27 | | wordCount | 909 | | uniqueNames | 6 | | maxNameDensity | 1.32 | | worstName | "Rory" | | maxWindowNameDensity | 2 | | worstWindowName | "Rory" | | discoveredNames | | Rory | 12 | | Richmond | 1 | | Park | 1 | | Heartstone | 1 | | Isolde | 7 | | Nyx | 5 |
| | persons | | | places | | | globalScore | 0.84 | | windowScore | 1 | |
| 69.35% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 31 | | glossingSentenceCount | 1 | | matches | | 0 | "tasted like rain on hot stone" |
| |
| 13.95% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 2 | | per1kWords | 1.86 | | wordCount | 1075 | | matches | | 0 | "not sky but more canopy, branches receding into a green-gold dimness" | | 1 | "not a held breath this time, but something waiting to be spoken" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 54 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 26 | | mean | 41.35 | | std | 28.25 | | cv | 0.683 | | sampleLengths | | 0 | 52 | | 1 | 23 | | 2 | 85 | | 3 | 45 | | 4 | 42 | | 5 | 98 | | 6 | 8 | | 7 | 11 | | 8 | 5 | | 9 | 27 | | 10 | 80 | | 11 | 4 | | 12 | 47 | | 13 | 14 | | 14 | 83 | | 15 | 44 | | 16 | 38 | | 17 | 11 | | 18 | 62 | | 19 | 11 | | 20 | 90 | | 21 | 68 | | 22 | 44 | | 23 | 38 | | 24 | 15 | | 25 | 30 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 0 | | totalSentences | 43 | | matches | (empty) | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 144 | | matches | (empty) | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 13 | | semicolonCount | 0 | | flaggedSentences | 9 | | totalSentences | 54 | | ratio | 0.167 | | matches | | 0 | "The oak stones marked the boundary the way a held breath marks the moment before a scream — Rory felt it before she saw it, a pressure behind her sternum that eased only when she stepped between two of the ancient trunks and into air that tasted like rain on hot stone." | | 1 | "The path they'd followed — dirt and old leaves, ordinary as bread — dissolved somewhere behind them into moss the color of a bruise, thick and faintly luminous, threading between roots that arched overhead like the ribs of something long dead and very large." | | 2 | "No portal here, then — or none close enough to matter." | | 3 | "Somewhere far off — or near, distance seemed a negotiable concept — something sang." | | 4 | "Time did something strange almost immediately — Rory noticed it the way you notice a word is missing from a sentence before you can name which word." | | 5 | "\"I feel thinner.\" Nyx lifted a hand — more suggestion of a hand than hand — and watched violet light bleed faintly through it." | | 6 | "They crossed the stream on stones that hadn't been there a moment before — Rory would have sworn to it, would have sworn the black water ran unbroken from bank to bank, and then there were stones, flat and pale and dry, spaced exactly as far apart as a human stride." | | 7 | "On the far side the trees opened into a clearing where the light thickened into something almost solid, hanging in the air in slow, drifting sheets like curtains nobody had hung, and standing stones — smaller cousins to the ones at the boundary — ringed a patch of grass so green it looked wet, though when Rory crouched to touch it, it was dry and warm as skin." | | 8 | "Rory straightened, and looked at the ring of stones, and felt the same pressure return behind her sternum that she'd felt at the grove's threshold — not a held breath this time, but something waiting to be spoken." |
| |
| 84.23% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 899 | | adjectiveStacks | 1 | | stackExamples | | 0 | "beside black-throated things" |
| | adverbCount | 46 | | adverbRatio | 0.05116796440489433 | | lyAdverbCount | 11 | | lyAdverbRatio | 0.012235817575083427 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 54 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 54 | | mean | 19.91 | | std | 16.38 | | cv | 0.823 | | sampleLengths | | 0 | 52 | | 1 | 21 | | 2 | 2 | | 3 | 9 | | 4 | 44 | | 5 | 32 | | 6 | 8 | | 7 | 29 | | 8 | 8 | | 9 | 23 | | 10 | 6 | | 11 | 2 | | 12 | 11 | | 13 | 8 | | 14 | 56 | | 15 | 14 | | 16 | 2 | | 17 | 3 | | 18 | 15 | | 19 | 8 | | 20 | 5 | | 21 | 6 | | 22 | 5 | | 23 | 27 | | 24 | 2 | | 25 | 27 | | 26 | 9 | | 27 | 6 | | 28 | 36 | | 29 | 4 | | 30 | 24 | | 31 | 23 | | 32 | 3 | | 33 | 11 | | 34 | 41 | | 35 | 42 | | 36 | 20 | | 37 | 24 | | 38 | 5 | | 39 | 33 | | 40 | 11 | | 41 | 35 | | 42 | 27 | | 43 | 5 | | 44 | 6 | | 45 | 51 | | 46 | 39 | | 47 | 68 | | 48 | 34 | | 49 | 10 |
| |
| 96.30% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 2 | | diversityRatio | 0.6296296296296297 | | totalSentences | 54 | | uniqueOpeners | 34 | |
| 98.04% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 34 | | matches | | 0 | "Somewhere far off — or" |
| | ratio | 0.029 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 9 | | totalSentences | 34 | | matches | | 0 | "She walked ahead of them" | | 1 | "It sat quiet against her" | | 2 | "It came from everywhere and" | | 3 | "Her legs ached like she'd" | | 4 | "She glanced at Nyx, whose" | | 5 | "They came to a stream" | | 6 | "she said, mostly to fill" | | 7 | "They crossed the stream on" | | 8 | "She stepped onto the first" |
| | ratio | 0.265 | |
| 33.53% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 29 | | totalSentences | 34 | | matches | | 0 | "The oak stones marked the" | | 1 | "Nyx said, their voice sliding" | | 2 | "The grove did not look" | | 3 | "The path they'd followed —" | | 4 | "Wildflowers grew in defiance of" | | 5 | "Isolde said, without looking back" | | 6 | "She walked ahead of them" | | 7 | "Rory muttered, and tucked her" | | 8 | "It sat quiet against her" | | 9 | "The light had no source" | | 10 | "It came from everywhere and" | | 11 | "A sound like a cello" | | 12 | "A soft huff of breath" | | 13 | "Time did something strange almost" | | 14 | "Her legs ached like she'd" | | 15 | "The light hadn't shifted at" | | 16 | "She glanced at Nyx, whose" | | 17 | "Nyx lifted a hand —" | | 18 | "They came to a stream" | | 19 | "Isolde said again, softer this" |
| | ratio | 0.853 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 34 | | matches | (empty) | | ratio | 0 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 19 | | technicalSentenceCount | 5 | | matches | | 0 | "It came from everywhere and nowhere, a soft golden haze that clung to the undersides of leaves and pooled in the hollows between roots, and when she looked up t…" | | 1 | "A soft huff of breath that might have been Nyx laughing, or might have been the wind finally arriving, three seconds late and from the wrong direction." | | 2 | "They came to a stream that had no business existing, cutting sideways through roots without a sound, its water black and glassy and utterly still despite the cu…" | | 3 | "The little creature hovered a moment longer, regarding her with an attention that felt entirely too intelligent for something the size of a fingernail, then spi…" | | 4 | "They crossed the stream on stones that hadn't been there a moment before — Rory would have sworn to it, would have sworn the black water ran unbroken from bank …" |
| |
| 89.29% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 14 | | uselessAdditionCount | 1 | | matches | | 0 | "Isolde said, without looking back" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 12 | | fancyCount | 1 | | fancyTags | | 0 | "Rory muttered (mutter)" |
| | dialogueSentences | 25 | | tagDensity | 0.48 | | leniency | 0.96 | | rawRatio | 0.083 | | effectiveRatio | 0.08 | |