| 51.85% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 12 | | adverbTagCount | 2 | | adverbTags | | 0 | "they said slowly [slowly]" | | 1 | "the leaves chimed twice [twice]" |
| | dialogueSentences | 27 | | tagDensity | 0.444 | | leniency | 0.889 | | rawRatio | 0.167 | | effectiveRatio | 0.148 | |
| 53.23% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1069 | | totalAiIsmAdverbs | 10 | | found | | 0 | | | 1 | | | 2 | | | 3 | | | 4 | | | 5 | | | 6 | | adverb | "deliberately" | | count | 1 |
|
| | highlights | | 0 | "really" | | 1 | "very" | | 2 | "softly" | | 3 | "utterly" | | 4 | "perfectly" | | 5 | "slowly" | | 6 | "deliberately" |
| |
| 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.90% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1069 | | totalAiIsms | 9 | | found | | | highlights | | 0 | "grave" | | 1 | "comforting" | | 2 | "lurch" | | 3 | "whisper" | | 4 | "shimmered" | | 5 | "crystal" | | 6 | "pulse" | | 7 | "warmth" | | 8 | "intensity" |
| |
| 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 | 0 | | hedgeCount | 1 | | narrationSentences | 43 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 58 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 55 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1059 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 13 | | unquotedAttributions | 0 | | matches | (empty) | |
| 90.62% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 27 | | wordCount | 842 | | uniqueNames | 7 | | maxNameDensity | 1.19 | | worstName | "Rory" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Nyx" | | discoveredNames | | Eva | 1 | | Nyx | 6 | | Rory | 10 | | Shade | 1 | | Heartstone | 1 | | Hel | 1 | | Isolde | 7 |
| | persons | | 0 | "Eva" | | 1 | "Nyx" | | 2 | "Rory" | | 3 | "Isolde" |
| | places | (empty) | | globalScore | 0.906 | | windowScore | 1 | |
| 66.67% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 30 | | glossingSentenceCount | 1 | | matches | | 0 | "not-quite hand found her elbow, steadying her without quite touching" |
| |
| 0.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 3 | | per1kWords | 2.833 | | wordCount | 1059 | | matches | | 0 | "not a wall, exactly, but a promise" | | 1 | "not really, or there was, but it moved like water seen from beneath the surface, pearled" | | 2 | "not fear, exactly, but its quieter cousin" |
| |
| 51.72% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 2 | | totalSentences | 58 | | matches | | 0 | "let that be" | | 1 | "meant that this" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 27 | | mean | 39.22 | | std | 34.78 | | cv | 0.887 | | sampleLengths | | 0 | 96 | | 1 | 33 | | 2 | 36 | | 3 | 74 | | 4 | 11 | | 5 | 5 | | 6 | 10 | | 7 | 116 | | 8 | 5 | | 9 | 42 | | 10 | 89 | | 11 | 3 | | 12 | 2 | | 13 | 51 | | 14 | 79 | | 15 | 41 | | 16 | 15 | | 17 | 90 | | 18 | 3 | | 19 | 23 | | 20 | 4 | | 21 | 9 | | 22 | 73 | | 23 | 5 | | 24 | 29 | | 25 | 84 | | 26 | 31 |
| |
| 80.78% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 3 | | totalSentences | 43 | | matches | | 0 | "been planted" | | 1 | "were gone" | | 2 | "was meant" |
| |
| 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 | 10 | | semicolonCount | 1 | | flaggedSentences | 9 | | totalSentences | 58 | | ratio | 0.155 | | matches | | 0 | "The oaks marked the boundary the way tombstones mark a grave—not a wall, exactly, but a promise that something had ended and something else had begun." | | 1 | "The wildflowers came first—drifts of them, blue and gold and a violet so deep it looked bruised, growing in patterns too deliberate to be wild, spiraling out from the roots of the standing stones like they'd been planted by someone who understood geometry better than gardening." | | 2 | "She looked up—there was no sky, not really, or there was, but it moved like water seen from beneath the surface, pearled and shifting, throwing down light that came from no single direction and cast no shadows at all." | | 3 | "Nyx, beside her, seemed to notice it too; they went very still, the way a person goes still when they step into a room and realize the mirror doesn't show their reflection." | | 4 | "\"I feel absent,\" Nyx answered, and there was something in their whisper-voice she hadn't heard before—not fear, exactly, but its quieter cousin." | | 5 | "The path—if it was a path, if the ground had decided to make walking easier for them out of some obscure courtesy—wound between trees whose bark shimmered faintly, silver-green, and whose leaves chimed very softly when the air moved through them, a sound like struck crystal heard from underwater." | | 6 | "Not far away—gone, swallowed by trees that hadn't been there a moment ago, or had always been there and only now permitted themselves to be seen." | | 7 | "It was perfectly still, black as the space between stars, and standing at its edge Rory could see no reflection of herself, no reflection of Isolde, no reflection of the strange nacreous sky—only, faint and slow, the reflection of somewhere else entirely: a room with candlelight, a chair by a window, rain against glass." | | 8 | "Nyx crouched at the pool's far edge, their violet eyes—the only true color on them now, everything else gone to smoke and suggestion—fixed on the black water with an intensity that made Rory's skin prickle." |
| |
| 81.97% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 858 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 52 | | adverbRatio | 0.06060606060606061 | | lyAdverbCount | 17 | | lyAdverbRatio | 0.019813519813519812 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 58 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 58 | | mean | 18.26 | | std | 14.28 | | cv | 0.782 | | sampleLengths | | 0 | 26 | | 1 | 29 | | 2 | 3 | | 3 | 13 | | 4 | 25 | | 5 | 22 | | 6 | 11 | | 7 | 36 | | 8 | 46 | | 9 | 28 | | 10 | 7 | | 11 | 4 | | 12 | 5 | | 13 | 10 | | 14 | 19 | | 15 | 39 | | 16 | 11 | | 17 | 2 | | 18 | 13 | | 19 | 32 | | 20 | 5 | | 21 | 22 | | 22 | 20 | | 23 | 3 | | 24 | 49 | | 25 | 37 | | 26 | 3 | | 27 | 2 | | 28 | 51 | | 29 | 7 | | 30 | 5 | | 31 | 26 | | 32 | 4 | | 33 | 37 | | 34 | 27 | | 35 | 14 | | 36 | 15 | | 37 | 22 | | 38 | 54 | | 39 | 4 | | 40 | 10 | | 41 | 3 | | 42 | 10 | | 43 | 13 | | 44 | 4 | | 45 | 9 | | 46 | 35 | | 47 | 11 | | 48 | 17 | | 49 | 10 |
| |
| 63.79% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 3 | | diversityRatio | 0.41379310344827586 | | totalSentences | 58 | | uniqueOpeners | 24 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 39 | | matches | (empty) | | ratio | 0 | |
| 86.67% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 13 | | totalSentences | 39 | | matches | | 0 | "She looked up—there was no" | | 1 | "She noticed that last part" | | 2 | "They went deeper." | | 3 | "Her pulse ticked up." | | 4 | "She thought of the Heartstone" | | 5 | "she admitted, because it was," | | 6 | "They came, after a time" | | 7 | "It was perfectly still, black" | | 8 | "She didn't recognize it." | | 9 | "She had the unsettling sense" | | 10 | "they said slowly" | | 11 | "They rose instead, shadow reassembling" | | 12 | "She stepped back instead." |
| | ratio | 0.333 | |
| 0.00% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 37 | | totalSentences | 39 | | matches | | 0 | "The oaks marked the boundary" | | 1 | "Rory counted them as she" | | 2 | "The air changed." | | 3 | "That was the only way" | | 4 | "The air changed, like walking" | | 5 | "Isolde said, though she'd already" | | 6 | "Nyx murmured, their voice a" | | 7 | "The wildflowers came first—drifts of" | | 8 | "Rory crouched to touch one" | | 9 | "Isolde said without turning" | | 10 | "Rory straightened fast enough that" | | 11 | "She looked up—there was no" | | 12 | "She noticed that last part" | | 13 | "Nyx, beside her, seemed to" | | 14 | "Nyx answered, and there was" | | 15 | "They went deeper." | | 16 | "The path—if it was a" | | 17 | "Rory found herself listening for" | | 18 | "Rory looked back the way" | | 19 | "The standing stones were gone." |
| | ratio | 0.949 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 39 | | matches | (empty) | | ratio | 0 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 22 | | technicalSentenceCount | 5 | | matches | | 0 | "The wildflowers came first—drifts of them, blue and gold and a violet so deep it looked bruised, growing in patterns too deliberate to be wild, spiraling out fr…" | | 1 | "Rory crouched to touch one and found it warm, warmer than the air, as if it had swallowed a whole day of sunlight and hadn't finished digesting it." | | 2 | "Not far away—gone, swallowed by trees that hadn't been there a moment ago, or had always been there and only now permitted themselves to be seen." | | 3 | "Nyx crouched at the pool's far edge, their violet eyes—the only true color on them now, everything else gone to smoke and suggestion—fixed on the black water wi…" | | 4 | "They rose instead, shadow reassembling itself into something more solid, more deliberately human-shaped, as though they'd decided this was not a place to be cau…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 12 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 38.89% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 12 | | fancyCount | 3 | | fancyTags | | 0 | "Nyx murmured (murmur)" | | 1 | "she admitted (admit)" | | 2 | "the leaves chimed twice (chime)" |
| | dialogueSentences | 27 | | tagDensity | 0.444 | | leniency | 0.889 | | rawRatio | 0.25 | | effectiveRatio | 0.222 | |