| 59.09% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 11 | | adverbTagCount | 2 | | adverbTags | | 0 | "Rory asked quietly [quietly]" | | 1 | "Isolde turned away [away]" |
| | dialogueSentences | 22 | | tagDensity | 0.5 | | leniency | 1 | | rawRatio | 0.182 | | effectiveRatio | 0.182 | |
| 67.86% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1089 | | totalAiIsmAdverbs | 7 | | found | | | highlights | | 0 | "slightly" | | 1 | "gently" | | 2 | "sweetly" | | 3 | "very" | | 4 | "perfectly" |
| |
| 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) | |
| 58.68% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1089 | | totalAiIsms | 9 | | found | | | highlights | | 0 | "chaotic" | | 1 | "rhythmic" | | 2 | "warmth" | | 3 | "pulsed" | | 4 | "silence" | | 5 | "fractured" | | 6 | "resolving" |
| |
| 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 | 1 | | narrationSentences | 71 | | matches | | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 0 | | narrationSentences | 71 | | filterMatches | (empty) | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 81 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 38 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1095 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 10 | | unquotedAttributions | 0 | | matches | (empty) | |
| 88.90% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 25 | | wordCount | 982 | | uniqueNames | 6 | | maxNameDensity | 1.22 | | worstName | "Rory" | | maxWindowNameDensity | 2 | | worstWindowName | "Rory" | | discoveredNames | | Rory | 12 | | Nyx | 4 | | Heartstone | 1 | | Dymas | 2 | | Isolde | 5 | | Fae | 1 |
| | persons | | | places | | | globalScore | 0.889 | | windowScore | 1 | |
| 97.92% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 48 | | glossingSentenceCount | 1 | | matches | | 0 | "tasted like copper and cold fire, and now" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.913 | | wordCount | 1095 | | matches | | 0 | "not chaotic, but rhythmic, almost ceremonial" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 81 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 38 | | mean | 28.82 | | std | 29.71 | | cv | 1.031 | | sampleLengths | | 0 | 37 | | 1 | 1 | | 2 | 18 | | 3 | 68 | | 4 | 57 | | 5 | 5 | | 6 | 1 | | 7 | 2 | | 8 | 99 | | 9 | 32 | | 10 | 30 | | 11 | 41 | | 12 | 8 | | 13 | 11 | | 14 | 5 | | 15 | 7 | | 16 | 122 | | 17 | 7 | | 18 | 40 | | 19 | 42 | | 20 | 23 | | 21 | 1 | | 22 | 17 | | 23 | 2 | | 24 | 68 | | 25 | 11 | | 26 | 94 | | 27 | 15 | | 28 | 39 | | 29 | 10 | | 30 | 53 | | 31 | 6 | | 32 | 17 | | 33 | 42 | | 34 | 5 | | 35 | 48 | | 36 | 6 | | 37 | 5 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 71 | | matches | | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 1 | | totalVerbs | 151 | | matches | | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 10 | | semicolonCount | 0 | | flaggedSentences | 9 | | totalSentences | 81 | | ratio | 0.111 | | matches | | 0 | "They climbed iron trellises shaped into forms that, if she looked at them directly, resembled reaching hands — fingers spread wide, knuckles bent." | | 1 | "The air tasted of fermenting fruit and something underneath that — something headier and less definable, like the memory of a meal eaten somewhere long ago." | | 2 | "Orchards ran in long geometric rows, trees laden past reason with fruit in impossible colours — gold rinds, silver skins, flesh that glowed faintly from within as though lit by something small and warm buried at each core." | | 3 | "Somewhere beneath all of it, a sound like a vast and distant crowd — not chaotic, but rhythmic, almost ceremonial." | | 4 | "It pulsed — slow, steady, almost like a second heartbeat slotting alongside her own." | | 5 | "In daylight — or whatever passed for daylight here — it was harder for them to fully dissolve, but their silhouette blurred and stretched, bleeding shadow across the path ahead like ink dropped into water." | | 6 | "It smelled of overripe plum and something older beneath it, something she had no name for — the smell of deep earth and great age and things fermenting in darkness over very long spans of time." | | 7 | "One of the trees had a fruit she couldn't identify — roughly pear-shaped, but black, perfectly black, with a surface that reflected no light at all." | | 8 | "Around them the noise of the feast grew, the rhythmic sound resolving itself into something closer to music — low and repetitive, punctuated by sounds that might have been approval or might have been something else entirely." |
| |
| 84.60% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 975 | | adjectiveStacks | 1 | | stackExamples | | 0 | "thick, pressing against her" |
| | adverbCount | 49 | | adverbRatio | 0.050256410256410255 | | lyAdverbCount | 20 | | lyAdverbRatio | 0.020512820512820513 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 81 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 81 | | mean | 13.52 | | std | 10.54 | | cv | 0.779 | | sampleLengths | | 0 | 37 | | 1 | 1 | | 2 | 5 | | 3 | 4 | | 4 | 9 | | 5 | 30 | | 6 | 19 | | 7 | 19 | | 8 | 30 | | 9 | 20 | | 10 | 7 | | 11 | 5 | | 12 | 1 | | 13 | 2 | | 14 | 22 | | 15 | 4 | | 16 | 23 | | 17 | 5 | | 18 | 30 | | 19 | 6 | | 20 | 9 | | 21 | 22 | | 22 | 9 | | 23 | 1 | | 24 | 6 | | 25 | 9 | | 26 | 15 | | 27 | 3 | | 28 | 26 | | 29 | 12 | | 30 | 8 | | 31 | 11 | | 32 | 5 | | 33 | 7 | | 34 | 29 | | 35 | 38 | | 36 | 24 | | 37 | 11 | | 38 | 20 | | 39 | 4 | | 40 | 3 | | 41 | 22 | | 42 | 14 | | 43 | 4 | | 44 | 7 | | 45 | 35 | | 46 | 12 | | 47 | 11 | | 48 | 1 | | 49 | 10 |
| |
| 83.54% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 4 | | diversityRatio | 0.5308641975308642 | | totalSentences | 81 | | uniqueOpeners | 43 | |
| 55.56% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 60 | | matches | | 0 | "Somewhere beneath all of it," |
| | ratio | 0.017 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 17 | | totalSentences | 60 | | matches | | 0 | "She didn't say it aloud." | | 1 | "She lifted her hand and" | | 2 | "Their violet eyes swept the" | | 3 | "They climbed iron trellises shaped" | | 4 | "She looked away from them." | | 5 | "She tilted her head up," | | 6 | "She was right." | | 7 | "It sat at the back" | | 8 | "They crested the first terrace" | | 9 | "It pulsed — slow, steady," | | 10 | "She kept her eyes forward." | | 11 | "It was the first thing" | | 12 | "It caught the amber light" | | 13 | "It was warm." | | 14 | "It smelled of overripe plum" | | 15 | "She wiped her hand on" | | 16 | "They reached the lower path." |
| | ratio | 0.283 | |
| 76.67% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 46 | | totalSentences | 60 | | matches | | 0 | "The portal had tasted like" | | 1 | "She didn't say it aloud." | | 2 | "None of them did." | | 3 | "The word felt presumptuous against" | | 4 | "The sky above her was" | | 5 | "The light simply existed, sourceless" | | 6 | "She lifted her hand and" | | 7 | "Nyx didn't step through the" | | 8 | "Their violet eyes swept the" | | 9 | "The ground rose gently ahead" | | 10 | "Vines covered every level." | | 11 | "They climbed iron trellises shaped" | | 12 | "She looked away from them." | | 13 | "The grapes that hung from" | | 14 | "Some she couldn't name a" | | 15 | "Isolde moved at her left" | | 16 | "Rory had stopped finding that" | | 17 | "She tilted her head up," | | 18 | "She was right." | | 19 | "The air tasted of fermenting" |
| | ratio | 0.767 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 60 | | matches | (empty) | | ratio | 0 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 34 | | technicalSentenceCount | 7 | | matches | | 0 | "The portal had tasted like copper and cold fire, and now Rory stood on the other side of it with her boots sinking slightly into earth that was too soft, too wa…" | | 1 | "The grapes that hung from the vines were extraordinary things, swollen far beyond any natural proportion, clusters of them drooping nearly to the earth, their s…" | | 2 | "Orchards ran in long geometric rows, trees laden past reason with fruit in impossible colours — gold rinds, silver skins, flesh that glowed faintly from within …" | | 3 | "The path between the terraces was narrow and paved with flat stones that had been laid without mortar and had since grown apart, pale yellow moss filling the ga…" | | 4 | "It was the first thing she'd seen in Dymas that was clearly decorative rather than functional, and it arrested her for a moment in spite of herself." | | 5 | "One of the trees had a fruit she couldn't identify — roughly pear-shaped, but black, perfectly black, with a surface that reflected no light at all." | | 6 | "Around them the noise of the feast grew, the rhythmic sound resolving itself into something closer to music — low and repetitive, punctuated by sounds that migh…" |
| |
| 79.55% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 11 | | uselessAdditionCount | 1 | | matches | | 0 | "Rory said, mostly to herself" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 9 | | fancyCount | 1 | | fancyTags | | | dialogueSentences | 22 | | tagDensity | 0.409 | | leniency | 0.818 | | rawRatio | 0.111 | | effectiveRatio | 0.091 | |