| 0.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 4 | | adverbTagCount | 1 | | adverbTags | | 0 | "she said aloud [aloud]" |
| | dialogueSentences | 7 | | tagDensity | 0.571 | | leniency | 1 | | rawRatio | 0.25 | | effectiveRatio | 0.25 | |
| 93.62% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1568 | | 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) | |
| 52.17% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1568 | | totalAiIsms | 15 | | found | | | highlights | | 0 | "comforting" | | 1 | "warmth" | | 2 | "pulsed" | | 3 | "silk" | | 4 | "silence" | | 5 | "rhythmic" | | 6 | "throb" | | 7 | "lurch" | | 8 | "perfect" |
| |
| 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 | 147 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 1 | | narrationSentences | 147 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 150 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 55 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1547 | | ratio | 0 | | matches | (empty) | |
| 83.33% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 6 | | unquotedAttributions | 1 | | matches | | 0 | "Think, she told herself." |
| |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 27 | | wordCount | 1527 | | uniqueNames | 13 | | maxNameDensity | 0.59 | | worstName | "Rory" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Rory" | | discoveredNames | | Aurora | 1 | | Carter | 1 | | Richmond | 2 | | Park | 2 | | Tuesday | 1 | | Heartstone | 2 | | Evan | 1 | | Rory | 9 | | London | 2 | | November | 1 | | English | 1 | | Humming | 1 | | Red | 3 |
| | persons | | 0 | "Aurora" | | 1 | "Carter" | | 2 | "Heartstone" | | 3 | "Evan" | | 4 | "Rory" | | 5 | "Humming" | | 6 | "Red" |
| | places | | 0 | "Richmond" | | 1 | "Park" | | 2 | "London" |
| | globalScore | 1 | | windowScore | 1 | |
| 64.77% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 88 | | glossingSentenceCount | 3 | | matches | | 0 | "colors that seemed to shift when she wasn't looking directly at them" | | 1 | "quite figure out what she was" | | 2 | "something like satisfaction moved through he" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1547 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 150 | | matches | | 0 | "expecting—that something" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 50 | | mean | 30.94 | | std | 20.36 | | cv | 0.658 | | sampleLengths | | 0 | 15 | | 1 | 71 | | 2 | 41 | | 3 | 28 | | 4 | 4 | | 5 | 67 | | 6 | 35 | | 7 | 11 | | 8 | 64 | | 9 | 11 | | 10 | 7 | | 11 | 40 | | 12 | 48 | | 13 | 41 | | 14 | 9 | | 15 | 38 | | 16 | 13 | | 17 | 37 | | 18 | 21 | | 19 | 59 | | 20 | 33 | | 21 | 75 | | 22 | 8 | | 23 | 23 | | 24 | 40 | | 25 | 24 | | 26 | 40 | | 27 | 1 | | 28 | 38 | | 29 | 33 | | 30 | 3 | | 31 | 8 | | 32 | 64 | | 33 | 12 | | 34 | 26 | | 35 | 28 | | 36 | 65 | | 37 | 11 | | 38 | 20 | | 39 | 7 | | 40 | 31 | | 41 | 37 | | 42 | 38 | | 43 | 4 | | 44 | 75 | | 45 | 33 | | 46 | 15 | | 47 | 35 | | 48 | 19 | | 49 | 41 |
| |
| 93.33% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 5 | | totalSentences | 147 | | matches | | 0 | "were gone" | | 1 | "been stretched" | | 2 | "being told" | | 3 | "was tilted" | | 4 | "been meant" | | 5 | "was frightened" |
| |
| 0.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 10 | | totalVerbs | 269 | | matches | | 0 | "were standing" | | 1 | "wasn't looking" | | 2 | "was receding" | | 3 | "was singing" | | 4 | "wasn't hiding" | | 5 | "were shaking" | | 6 | "were dying" | | 7 | "was getting" | | 8 | "was blazing" | | 9 | "were still shaking" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 24 | | semicolonCount | 0 | | flaggedSentences | 17 | | totalSentences | 150 | | ratio | 0.113 | | matches | | 0 | "The oaks were old—older than anything had a right to be in Richmond Park, older than the park itself maybe—and they stood in a rough circle around a clearing that shouldn't exist." | | 1 | "She'd come out here on a feeling—a warmth in a stone she didn't understand, given to her by someone she couldn't remember—and feelings weren't evidence." | | 2 | "But inside the circle, flowers bloomed—bluebells and poppies and things she couldn't name, colors that seemed to shift when she wasn't looking directly at them." | | 3 | "What was she expecting—that something would step out from behind a tree and explain why a magic rock had dragged her across London to a fairy tale clearing in the middle of the night?" | | 4 | "Not filled in—gone, as though the ground had erased them." | | 5 | "Or—" | | 6 | "She could see it clearly—the broken teeth of the standing stones, the dark mass of winter-bare trees beyond—but it was receding, slow and steady, like watching a tide go out." | | 7 | "Not burning—pulsing." | | 8 | "Something moved at the edge of her vision again—right this time—and she turned, and again there was nothing, but she'd seen it." | | 9 | "Not empty silence—full silence." | | 10 | "But underneath that, if she listened, if she really listened—" | | 11 | "She hadn't noticed it happening—one moment it was fresh and silk-soft, the next it was brown and crumpled and dead, petals falling between her fingers like ash." | | 12 | "Tall—too tall, seven feet at least—and thin, its body angled in ways that human bodies didn't angle." | | 13 | "So what—" | | 14 | "It was a terrible sound—like metal on metal and something breaking, something that had never been meant to make sound trying anyway—and it recoiled, folding in on itself, those too-long arms coming up to shield that blank face." | | 15 | "The Heartstone hit the earth and the light exploded outward, and for one blazing instant she saw everything—the true shape of the grove, the thing that waited in the darkness behind the darkness, the way the world folded and creased like wet paper—and then the light folded in on itself and swallowed her." | | 16 | "The normal sounds of Richmond Park at night—distant traffic, a fox barking somewhere, the wind in trees that behaved like trees should." |
| |
| 89.64% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1556 | | adjectiveStacks | 1 | | stackExamples | | 0 | "particular brown-gray pallor" |
| | adverbCount | 70 | | adverbRatio | 0.04498714652956298 | | lyAdverbCount | 12 | | lyAdverbRatio | 0.007712082262210797 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 150 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 150 | | mean | 10.31 | | std | 9.23 | | cv | 0.895 | | sampleLengths | | 0 | 15 | | 1 | 5 | | 2 | 14 | | 3 | 32 | | 4 | 4 | | 5 | 4 | | 6 | 12 | | 7 | 41 | | 8 | 7 | | 9 | 6 | | 10 | 1 | | 11 | 14 | | 12 | 4 | | 13 | 3 | | 14 | 8 | | 15 | 25 | | 16 | 31 | | 17 | 6 | | 18 | 29 | | 19 | 11 | | 20 | 4 | | 21 | 3 | | 22 | 3 | | 23 | 19 | | 24 | 25 | | 25 | 10 | | 26 | 7 | | 27 | 4 | | 28 | 7 | | 29 | 2 | | 30 | 4 | | 31 | 34 | | 32 | 4 | | 33 | 2 | | 34 | 19 | | 35 | 4 | | 36 | 5 | | 37 | 4 | | 38 | 10 | | 39 | 9 | | 40 | 9 | | 41 | 7 | | 42 | 1 | | 43 | 2 | | 44 | 13 | | 45 | 9 | | 46 | 9 | | 47 | 17 | | 48 | 11 | | 49 | 1 |
| |
| 41.11% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 15 | | diversityRatio | 0.30666666666666664 | | totalSentences | 150 | | uniqueOpeners | 46 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 6 | | totalSentences | 131 | | matches | | 0 | "Of course nothing answered." | | 1 | "Just wildflowers stretching into that" | | 2 | "Just smooth, pale skin where" | | 3 | "Actually flinched, taking a stuttering" | | 4 | "Then it took a step" | | 5 | "Maybe she just needed to" |
| | ratio | 0.046 | |
| 97.86% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 40 | | totalSentences | 131 | | matches | | 0 | "She hadn't meant to stop." | | 1 | "Her feet had simply decided," | | 2 | "She'd checked the maps." | | 3 | "She'd checked satellite images." | | 4 | "She should leave." | | 5 | "She'd come out here on" | | 6 | "She stepped between two of" | | 7 | "It was November." | | 8 | "She'd walked through dead leaves" | | 9 | "she said, and immediately felt" | | 10 | "She took another step." | | 11 | "She stopped and looked back." | | 12 | "Her footprints were gone." | | 13 | "She plucked one and held" | | 14 | "It took her a moment" | | 15 | "she said aloud, because the" | | 16 | "She turned around completely." | | 17 | "She could see it clearly—the" | | 18 | "She walked faster." | | 19 | "She stopped, breathing hard, and" |
| | ratio | 0.305 | |
| 100.00% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 94 | | totalSentences | 131 | | matches | | 0 | "The standing stones rose from" | | 1 | "She hadn't meant to stop." | | 2 | "Her feet had simply decided," | | 3 | "The oaks were old—older than" | | 4 | "She'd checked the maps." | | 5 | "She'd checked satellite images." | | 6 | "Rory touched the Heartstone through" | | 7 | "The crimson gem was cool" | | 8 | "That thought wasn't comforting." | | 9 | "She should leave." | | 10 | "That was the rational thing," | | 11 | "She'd come out here on" | | 12 | "Feelings were what had made" | | 13 | "She stepped between two of" | | 14 | "Wildflowers carpeted the ground." | | 15 | "That was wrong." | | 16 | "It was November." | | 17 | "She'd walked through dead leaves" | | 18 | "The air was warmer too," | | 19 | "The pendant pulsed once against" |
| | ratio | 0.718 | |
| 76.34% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 2 | | totalSentences | 131 | | matches | | 0 | "As if it had brought" | | 1 | "Now, looking at the far" |
| | ratio | 0.015 | |
| 66.33% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 56 | | technicalSentenceCount | 6 | | matches | | 0 | "And Rory had learned, in the months since she'd fled to London, that ignoring the thing that makes your chest tight usually leads to worse things than facing it…" | | 1 | "The flowers bent under her boots but didn't crush, springing back up behind her as if she'd never passed." | | 2 | "Tall and thin and wrong-angled, like a person who'd been stretched without being told." | | 3 | "It was a terrible sound—like metal on metal and something breaking, something that had never been meant to make sound trying anyway—and it recoiled, folding in …" | | 4 | "The Heartstone hit the earth and the light exploded outward, and for one blazing instant she saw everything—the true shape of the grove, the thing that waited i…" | | 5 | "The normal sounds of Richmond Park at night—distant traffic, a fox barking somewhere, the wind in trees that behaved like trees should." |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 4 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 4 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 7 | | tagDensity | 0.571 | | leniency | 1 | | rawRatio | 0 | | effectiveRatio | 0 | |