| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 21 | | adverbTagCount | 1 | | adverbTags | | 0 | "Isolde said softly [softly]" |
| | dialogueSentences | 43 | | tagDensity | 0.488 | | leniency | 0.977 | | rawRatio | 0.048 | | effectiveRatio | 0.047 | |
| 88.88% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1349 | | totalAiIsmAdverbs | 3 | | found | | | highlights | | 0 | "warmly" | | 1 | "quickly" | | 2 | "softly" |
| |
| 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) | |
| 7.34% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1349 | | totalAiIsms | 25 | | found | | 0 | | | 1 | | | 2 | | | 3 | | | 4 | | | 5 | | | 6 | | | 7 | | | 8 | | | 9 | | | 10 | | | 11 | | | 12 | | | 13 | | | 14 | | | 15 | | | 16 | | | 17 | | | 18 | | | 19 | | | 20 | | | 21 | |
| | highlights | | 0 | "scanning" | | 1 | "perfect" | | 2 | "weight" | | 3 | "velvet" | | 4 | "pulsed" | | 5 | "mosaic" | | 6 | "mechanical" | | 7 | "chill" | | 8 | "complex" | | 9 | "searing" | | 10 | "stomach" | | 11 | "simmering" | | 12 | "pristine" | | 13 | "flicker" | | 14 | "wavering" | | 15 | "crystallized" | | 16 | "intricate" | | 17 | "marble" | | 18 | "shimmered" | | 19 | "pulse" | | 20 | "quickened" | | 21 | "crystalline" |
| |
| 66.67% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 2 | | maxInWindow | 2 | | found | | 0 | | label | "eyes widened/narrowed" | | count | 1 |
| | 1 | | label | "flicker of emotion" | | count | 1 |
|
| | highlights | | 0 | "eyes widened" | | 1 | "a flicker of recognition" |
| |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 84 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 2 | | narrationSentences | 84 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 102 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 47 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1336 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 14 | | unquotedAttributions | 0 | | matches | (empty) | |
| 46.86% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 47 | | wordCount | 1018 | | uniqueNames | 9 | | maxNameDensity | 2.06 | | worstName | "Rory" | | maxWindowNameDensity | 3.5 | | worstWindowName | "Rory" | | discoveredNames | | Nyx | 10 | | Rory | 21 | | Heartstone | 2 | | Platters | 1 | | Isolde | 9 | | Veil | 1 | | Fae-forged | 1 | | Shade | 1 | | Dymas | 1 |
| | persons | | 0 | "Nyx" | | 1 | "Rory" | | 2 | "Platters" | | 3 | "Isolde" | | 4 | "Shade" |
| | places | | | globalScore | 0.469 | | windowScore | 0.5 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 62 | | glossingSentenceCount | 0 | | matches | (empty) | |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1336 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 102 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 43 | | mean | 31.07 | | std | 21.05 | | cv | 0.678 | | sampleLengths | | 0 | 54 | | 1 | 10 | | 2 | 78 | | 3 | 24 | | 4 | 10 | | 5 | 39 | | 6 | 14 | | 7 | 67 | | 8 | 3 | | 9 | 37 | | 10 | 57 | | 11 | 47 | | 12 | 31 | | 13 | 13 | | 14 | 29 | | 15 | 9 | | 16 | 64 | | 17 | 12 | | 18 | 56 | | 19 | 1 | | 20 | 8 | | 21 | 42 | | 22 | 46 | | 23 | 6 | | 24 | 42 | | 25 | 59 | | 26 | 58 | | 27 | 21 | | 28 | 6 | | 29 | 28 | | 30 | 4 | | 31 | 48 | | 32 | 4 | | 33 | 28 | | 34 | 4 | | 35 | 43 | | 36 | 24 | | 37 | 57 | | 38 | 19 | | 39 | 49 | | 40 | 16 | | 41 | 46 | | 42 | 23 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 0 | | totalSentences | 84 | | matches | (empty) | |
| 92.47% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 3 | | totalVerbs | 186 | | matches | | 0 | "was harvesting" | | 1 | "was sampling" | | 2 | "was moving" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 9 | | semicolonCount | 0 | | flaggedSentences | 8 | | totalSentences | 102 | | ratio | 0.078 | | matches | | 0 | "Rory stepped through the shimmering portal and felt a sudden, dizzying shift in the air—thicker, sweet with the scent of ripe fruit and baked earth." | | 1 | "Orchards sprawled in perfect rows, trees bent under the weight of fruit Rory didn’t recognize—some spiked, some smooth and opalescent, others pulsing with soft light." | | 2 | "They moved forward, following a stone path laid with mosaic tiles depicting scenes of feasting—figures laughing, goblets raised, mountains of food." | | 3 | "The soul—for that’s what it was, Rory realized with a chill—was harvesting the glowing fruit with careful, practiced motions." | | 4 | "The air here was thick with smells—caramelized sugar, searing meat, spices Rory could name and others she couldn’t." | | 5 | "Platters piled high with delicacies steamed in the amber light—bread that glistened with crystallized honey, roasted meats glazed in dark sauces, fruits cut into intricate shapes." | | 6 | "And remember—in Dymas, nothing is as it seems." | | 7 | "Rory stood alone by the fountain, the vial clenched in her hand. From beyond the garden walls, the sounds of the feast swelled—music, laughter, the clatter of plates. The amber sky began to darken toward twilight, streaks of orange and crimson bleeding across the honeyed dome." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 929 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 16 | | adverbRatio | 0.017222820236813777 | | lyAdverbCount | 3 | | lyAdverbRatio | 0.0032292787944025836 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 102 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 102 | | mean | 13.1 | | std | 8.73 | | cv | 0.666 | | sampleLengths | | 0 | 15 | | 1 | 25 | | 2 | 14 | | 3 | 10 | | 4 | 8 | | 5 | 22 | | 6 | 25 | | 7 | 23 | | 8 | 4 | | 9 | 9 | | 10 | 8 | | 11 | 3 | | 12 | 8 | | 13 | 2 | | 14 | 13 | | 15 | 12 | | 16 | 12 | | 17 | 2 | | 18 | 2 | | 19 | 12 | | 20 | 21 | | 21 | 10 | | 22 | 10 | | 23 | 26 | | 24 | 3 | | 25 | 19 | | 26 | 10 | | 27 | 8 | | 28 | 16 | | 29 | 18 | | 30 | 18 | | 31 | 5 | | 32 | 21 | | 33 | 10 | | 34 | 16 | | 35 | 17 | | 36 | 14 | | 37 | 8 | | 38 | 5 | | 39 | 19 | | 40 | 10 | | 41 | 5 | | 42 | 4 | | 43 | 30 | | 44 | 26 | | 45 | 8 | | 46 | 8 | | 47 | 4 | | 48 | 22 | | 49 | 12 |
| |
| 68.63% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 5 | | diversityRatio | 0.4411764705882353 | | totalSentences | 102 | | uniqueOpeners | 45 | |
| 88.89% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 2 | | totalSentences | 75 | | matches | | 0 | "Further on, they came across" | | 1 | "Even the food can bind" |
| | ratio | 0.027 | |
| 65.33% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 29 | | totalSentences | 75 | | matches | | 0 | "they whispered, the sound like" | | 1 | "She knelt and ran her" | | 2 | "She straightened, her hand going" | | 3 | "It pulsed warmly against her" | | 4 | "They moved forward, following a" | | 5 | "It wore simple robes, its" | | 6 | "It didn’t glance at them" | | 7 | "Her stomach growled despite herself." | | 8 | "He wiped his hands on" | | 9 | "His smile was broad, welcoming," | | 10 | "His voice was rich, smooth" | | 11 | "He gestured toward a long" | | 12 | "She was sampling a sliver" | | 13 | "She wore simple robes, but" | | 14 | "He leaned closer, lowering his" | | 15 | "Her eyes met Rory’s across" | | 16 | "She raised a hand, a" | | 17 | "They flowed away from Rory," | | 18 | "She didn’t wait." | | 19 | "She ducked under a low-hanging" |
| | ratio | 0.387 | |
| 80.00% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 57 | | totalSentences | 75 | | matches | | 0 | "The amber sky stretched above" | | 1 | "Rory stepped through the shimmering" | | 2 | "they whispered, the sound like" | | 3 | "Orchards sprawled in perfect rows," | | 4 | "Rory took another step." | | 5 | "The grass beneath her boots" | | 6 | "She knelt and ran her" | | 7 | "A low hum filled the" | | 8 | "She straightened, her hand going" | | 9 | "It pulsed warmly against her" | | 10 | "They moved forward, following a" | | 11 | "The tiles were warm underfoot," | | 12 | "The soul—for that’s what it" | | 13 | "It wore simple robes, its" | | 14 | "It didn’t glance at them" | | 15 | "The air here was thick" | | 16 | "Her stomach growled despite herself." | | 17 | "He wiped his hands on" | | 18 | "His smile was broad, welcoming," | | 19 | "His voice was rich, smooth" |
| | ratio | 0.76 | |
| 66.67% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 75 | | matches | | 0 | "Before them lay a landscape" |
| | ratio | 0.013 | |
| 73.17% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 41 | | technicalSentenceCount | 4 | | matches | | 0 | "In the distance, grand pavilions rose above the fields, their silken banners fluttering in a breeze that carried the murmur of distant celebration." | | 1 | "The tiles were warm underfoot, as though heated from below." | | 2 | "Platters piled high with delicacies steamed in the amber light—bread that glistened with crystallized honey, roasted meats glazed in dark sauces, fruits cut int…" | | 3 | "She rounded a corner and nearly collided with Isolde, who stood waiting beside a marble fountain shaped like a gaping mouth, water pouring from its lips into a …" |
| |
| 72.37% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 19 | | uselessAdditionCount | 2 | | matches | | 0 | "they whispered, the sound like rustling leaves," | | 1 | "She stepped back, her form blurring at the edges" |
| |
| 80.23% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 10 | | fancyCount | 3 | | fancyTags | | 0 | "they whispered (whisper)" | | 1 | "Nyx murmured (murmur)" | | 2 | "forged dagger pressed (forge press)" |
| | dialogueSentences | 43 | | tagDensity | 0.233 | | leniency | 0.465 | | rawRatio | 0.3 | | effectiveRatio | 0.14 | |