| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 3 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 6 | | tagDensity | 0.5 | | leniency | 1 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 90.43% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1045 | | 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) | |
| 66.51% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1045 | | totalAiIsms | 7 | | found | | | highlights | | 0 | "pulse" | | 1 | "silence" | | 2 | "pulsed" | | 3 | "firmly" | | 4 | "perfect" | | 5 | "warmth" |
| |
| 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 | 82 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 1 | | narrationSentences | 82 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 85 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 50 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1034 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 3 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 11 | | wordCount | 1007 | | uniqueNames | 9 | | maxNameDensity | 0.2 | | worstName | "Richmond" | | maxWindowNameDensity | 1 | | worstWindowName | "Richmond" | | discoveredNames | | Richmond | 2 | | Park | 1 | | Eva | 1 | | Heartstone | 1 | | Robin | 1 | | Hood | 1 | | Gate | 1 | | November | 2 | | Isolde | 1 |
| | persons | | 0 | "Eva" | | 1 | "Robin" | | 2 | "Hood" | | 3 | "Gate" |
| | places | | 0 | "Richmond" | | 1 | "Park" | | 2 | "November" |
| | globalScore | 1 | | windowScore | 1 | |
| 0.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 54 | | glossingSentenceCount | 4 | | matches | | 0 | "quite match her own" | | 1 | "felt like stepping into a warm bath" | | 2 | "felt like standing at the edge of a mou" | | 3 | "something like the air in a house that had b" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1034 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 85 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 35 | | mean | 29.54 | | std | 26.59 | | cv | 0.9 | | sampleLengths | | 0 | 26 | | 1 | 83 | | 2 | 94 | | 3 | 4 | | 4 | 67 | | 5 | 42 | | 6 | 17 | | 7 | 11 | | 8 | 6 | | 9 | 55 | | 10 | 67 | | 11 | 26 | | 12 | 6 | | 13 | 17 | | 14 | 8 | | 15 | 69 | | 16 | 4 | | 17 | 13 | | 18 | 8 | | 19 | 31 | | 20 | 23 | | 21 | 8 | | 22 | 13 | | 23 | 60 | | 24 | 16 | | 25 | 77 | | 26 | 7 | | 27 | 46 | | 28 | 5 | | 29 | 59 | | 30 | 18 | | 31 | 31 | | 32 | 4 | | 33 | 3 | | 34 | 10 |
| |
| 92.43% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 3 | | totalSentences | 82 | | matches | | 0 | "was swallowed" | | 1 | "being taught" | | 2 | "was gone" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 1 | | totalVerbs | 161 | | matches | | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 10 | | semicolonCount | 0 | | flaggedSentences | 8 | | totalSentences | 85 | | ratio | 0.094 | | matches | | 0 | "Richmond at night was never truly quiet—foxes screamed somewhere in the city, owls worked the tree lines—but the closer she walked to the standing stones, the more the sound thinned out, as if the park were holding its breath around her." | | 1 | "The temperature changed first—warmer, the way it had been before, and that wrongness alone made her skin crawl, because nothing here should be warm in November." | | 2 | "The grove was bigger inside than it had appeared from the outside—she knew that, it was a fae thing, space bent in here—but tonight the far edge of the clearing was swallowed in a darkness her light gave up on four metres out." | | 3 | "There, at the very end of the light—a shimmer, like heat off tarmac, vertical and tall and thin as a door left ajar." | | 4 | "She walked the circle instead of heading straight for it, the way her father taught her to walk a room before a case—get the shape of it first, know your exits." | | 5 | "It came from behind her—soft, tuneless, a woman's voice carrying a melody with no edges." | | 6 | "Running in fae ground was a rule she'd absorbed without ever being taught it—running was an invitation, running was a scent." | | 7 | "The portal hung in the dark like a split in a photograph—taller than she'd thought, taller than a person, edges trembling." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1019 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 27 | | adverbRatio | 0.02649656526005888 | | lyAdverbCount | 7 | | lyAdverbRatio | 0.0068694798822374874 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 85 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 85 | | mean | 12.16 | | std | 10.86 | | cv | 0.893 | | sampleLengths | | 0 | 8 | | 1 | 18 | | 2 | 8 | | 3 | 32 | | 4 | 25 | | 5 | 16 | | 6 | 1 | | 7 | 1 | | 8 | 18 | | 9 | 27 | | 10 | 8 | | 11 | 41 | | 12 | 4 | | 13 | 8 | | 14 | 28 | | 15 | 31 | | 16 | 5 | | 17 | 26 | | 18 | 11 | | 19 | 11 | | 20 | 6 | | 21 | 11 | | 22 | 6 | | 23 | 26 | | 24 | 29 | | 25 | 12 | | 26 | 43 | | 27 | 6 | | 28 | 6 | | 29 | 1 | | 30 | 2 | | 31 | 23 | | 32 | 6 | | 33 | 3 | | 34 | 14 | | 35 | 8 | | 36 | 31 | | 37 | 32 | | 38 | 6 | | 39 | 4 | | 40 | 6 | | 41 | 7 | | 42 | 8 | | 43 | 15 | | 44 | 4 | | 45 | 4 | | 46 | 8 | | 47 | 4 | | 48 | 19 | | 49 | 8 |
| |
| 68.24% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 7 | | diversityRatio | 0.4588235294117647 | | totalSentences | 85 | | uniqueOpeners | 39 | |
| 45.66% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 73 | | matches | | 0 | "Then the smell hit her:" |
| | ratio | 0.014 | |
| 66.58% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 28 | | totalSentences | 73 | | matches | | 0 | "She'd told herself she wouldn't" | | 1 | "She'd told Eva the same" | | 2 | "Her torch made a small" | | 3 | "She only noticed the silence" | | 4 | "She stopped at the boundary." | | 5 | "Her voice came out flat" | | 6 | "She crossed the line of" | | 7 | "Her torch beam didn't seem" | | 8 | "She swept the beam along" | | 9 | "Her breath didn't fog in" | | 10 | "She walked the circle instead" | | 11 | "She counted them without meaning" | | 12 | "She didn't know what they" | | 13 | "She decided, firmly, not to" | | 14 | "It came from behind her—soft," | | 15 | "She spun, torch up." | | 16 | "She hadn't imagined it." | | 17 | "It had been right there," | | 18 | "She backed toward the gap" | | 19 | "Her heel caught on something" |
| | ratio | 0.384 | |
| 69.59% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 57 | | totalSentences | 73 | | matches | | 0 | "The gates of Richmond Park" | | 1 | "Rory climbed the wall instead," | | 2 | "She'd told herself she wouldn't" | | 3 | "She'd told Eva the same" | | 4 | "A faint rhythm under her" | | 5 | "The grove lay a mile" | | 6 | "Her torch made a small" | | 7 | "She only noticed the silence" | | 8 | "Richmond at night was never" | | 9 | "The pendant beat faster." | | 10 | "The oaks rose out of" | | 11 | "She stopped at the boundary." | | 12 | "The last time she'd come" | | 13 | "Her voice came out flat" | | 14 | "The pendant pulsed so hard" | | 15 | "She crossed the line of" | | 16 | "The temperature changed first—warmer, the" | | 17 | "Her torch beam didn't seem" | | 18 | "The grove was bigger inside" | | 19 | "She swept the beam along" |
| | ratio | 0.781 | |
| 68.49% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 73 | | matches | | 0 | "Now it felt like standing" |
| | ratio | 0.014 | |
| 61.22% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 35 | | technicalSentenceCount | 4 | | matches | | 0 | "Richmond at night was never truly quiet—foxes screamed somewhere in the city, owls worked the tree lines—but the closer she walked to the standing stones, the m…" | | 1 | "Then the smell hit her: loam and honey and underneath it something older, something like the air in a house that had been shut up for a long time." | | 2 | "Around its body the wildflowers had grown up and through it, stems threading between its ribs, blooming in a perfect ring." | | 3 | "Shapes crossing the shimmer the way fish pass under ice, unhurried, patient, and each time one passed her torchlight caught a wet gleam that might have been an …" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 3 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 0.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 1 | | fancyCount | 1 | | fancyTags | | 0 | "she whispered (whisper)" |
| | dialogueSentences | 6 | | tagDensity | 0.167 | | leniency | 0.333 | | rawRatio | 1 | | effectiveRatio | 0.333 | |