| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 1 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 0 | | tagDensity | 1 | | leniency | 1 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 91.60% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1190 | | 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) | |
| 36.97% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1190 | | totalAiIsms | 15 | | found | | | highlights | | 0 | "silk" | | 1 | "weight" | | 2 | "scanned" | | 3 | "mosaic" | | 4 | "whisper" | | 5 | "velvet" | | 6 | "chill" | | 7 | "resonance" | | 8 | "unreadable" | | 9 | "desire" | | 10 | "glint" | | 11 | "intensity" | | 12 | "marble" |
| |
| 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 | 77 | | matches | (empty) | |
| 31.54% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 5 | | narrationSentences | 77 | | filterMatches | | | hedgeMatches | | 0 | "seemed to" | | 1 | "began to" | | 2 | "started to" |
| |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 77 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 42 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1185 | | ratio | 0 | | matches | (empty) | |
| 0.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 5 | | unquotedAttributions | 4 | | matches | | 0 | "Keep your eyes on the pattern of the roots, Isolde whispered, her voice melodic and strangely detached." | | 1 | "Something feels wrong, Nyx murmured, their voice a whisper carried on a draft that smelled of ozone and ancient dust." | | 2 | "You seek the path to Dymas, Isolde said, neither asking nor confirming, but merely stating a fact as old as the stones t…" | | 3 | "I have to know why I was given this, she said, her voice sounding small in the vast, quiet expanse of the grove." |
| |
| 99.02% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 56 | | wordCount | 1177 | | uniqueNames | 20 | | maxNameDensity | 1.02 | | worstName | "Rory" | | maxWindowNameDensity | 2 | | worstWindowName | "Rory" | | discoveredNames | | Richmond | 1 | | Park | 1 | | London | 5 | | Rory | 12 | | Heartstone | 2 | | Nyx | 6 | | Shade | 1 | | Fae | 3 | | Grove | 1 | | Isolde | 8 | | Veil | 2 | | Fae-forged | 1 | | Dymas | 3 | | Aurora | 1 | | Carter | 1 | | Gluttony | 2 | | Prince | 1 | | Cardiff | 1 | | Chinese | 1 | | You | 3 |
| | persons | | 0 | "Rory" | | 1 | "Heartstone" | | 2 | "Nyx" | | 3 | "Shade" | | 4 | "Isolde" | | 5 | "Aurora" | | 6 | "Carter" | | 7 | "You" |
| | places | | 0 | "Richmond" | | 1 | "Park" | | 2 | "London" | | 3 | "Fae" | | 4 | "Grove" | | 5 | "Fae-forged" | | 6 | "Dymas" | | 7 | "Gluttony" | | 8 | "Cardiff" | | 9 | "Chinese" |
| | globalScore | 0.99 | | windowScore | 1 | |
| 36.36% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 66 | | glossingSentenceCount | 3 | | matches | | 0 | "lilies that seemed to turn their heads to track their passage" | | 1 | "sounded like glass wind chimes when the br" | | 2 | "felt like a magnet pointing toward trou" | | 3 | "quite left behind, and a future that felt increasingly like a trap" |
| |
| 0.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 3 | | per1kWords | 2.532 | | wordCount | 1185 | | matches | | 0 | "not a grey London expanse, but a swirling, iridescent dome of violet" | | 1 | "neither asking nor" | | 2 | "not of trees or sky, but of sprawling, amber-lit vineyards" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 77 | | matches | (empty) | |
| 78.45% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 25 | | mean | 47.4 | | std | 20.13 | | cv | 0.425 | | sampleLengths | | 0 | 60 | | 1 | 85 | | 2 | 56 | | 3 | 53 | | 4 | 37 | | 5 | 44 | | 6 | 45 | | 7 | 60 | | 8 | 39 | | 9 | 23 | | 10 | 105 | | 11 | 52 | | 12 | 58 | | 13 | 6 | | 14 | 47 | | 15 | 37 | | 16 | 33 | | 17 | 46 | | 18 | 60 | | 19 | 23 | | 20 | 44 | | 21 | 48 | | 22 | 52 | | 23 | 58 | | 24 | 14 |
| |
| 87.04% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 4 | | totalSentences | 77 | | matches | | 0 | "is frayed" | | 1 | "was given" | | 2 | "were sealed" | | 3 | "was replaced" |
| |
| 96.91% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 3 | | totalVerbs | 194 | | matches | | 0 | "was radiating" | | 1 | "was peering" | | 2 | "were roiling" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 5 | | semicolonCount | 1 | | flaggedSentences | 6 | | totalSentences | 77 | | ratio | 0.078 | | matches | | 0 | "Her feet did not disturb the carpet of wildflowers—bluebells that sounded like glass wind chimes when the breeze brushed them, and strange, pale lilies that seemed to turn their heads to track their passage." | | 1 | "I can feel the pull of other places—places of gluttony and burning ash." | | 2 | "Beneath the surface, images were roiling—not of trees or sky, but of sprawling, amber-lit vineyards and tables groaning under the weight of impossible feasts." | | 3 | "The air thickened with the scent of fermented fruit and burnt spices—the signature aroma of Dymas." | | 4 | "It wasn't just beautiful; it was hungry." | | 5 | "The sensation was immediate—a violent, icy pull that threatened to unspool her very atoms." |
| |
| 94.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 541 | | adjectiveStacks | 1 | | stackExamples | | 0 | "slick, obsidian-colored soil." |
| | adverbCount | 15 | | adverbRatio | 0.027726432532347505 | | lyAdverbCount | 8 | | lyAdverbRatio | 0.014787430683918669 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 77 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 77 | | mean | 15.39 | | std | 9.02 | | cv | 0.586 | | sampleLengths | | 0 | 41 | | 1 | 19 | | 2 | 14 | | 3 | 31 | | 4 | 6 | | 5 | 21 | | 6 | 13 | | 7 | 23 | | 8 | 33 | | 9 | 15 | | 10 | 4 | | 11 | 34 | | 12 | 17 | | 13 | 11 | | 14 | 9 | | 15 | 3 | | 16 | 15 | | 17 | 26 | | 18 | 20 | | 19 | 5 | | 20 | 7 | | 21 | 13 | | 22 | 11 | | 23 | 16 | | 24 | 18 | | 25 | 15 | | 26 | 26 | | 27 | 13 | | 28 | 23 | | 29 | 12 | | 30 | 4 | | 31 | 24 | | 32 | 34 | | 33 | 23 | | 34 | 8 | | 35 | 5 | | 36 | 15 | | 37 | 18 | | 38 | 14 | | 39 | 4 | | 40 | 15 | | 41 | 24 | | 42 | 15 | | 43 | 4 | | 44 | 2 | | 45 | 17 | | 46 | 10 | | 47 | 13 | | 48 | 7 | | 49 | 7 |
| |
| 48.92% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 9 | | diversityRatio | 0.36363636363636365 | | totalSentences | 77 | | uniqueOpeners | 28 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 75 | | matches | (empty) | | ratio | 0 | |
| 97.33% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 23 | | totalSentences | 75 | | matches | | 0 | "She made no sound." | | 1 | "Her feet did not disturb" | | 2 | "It is thin enough to" | | 3 | "I can feel the pull" | | 4 | "They reached the center of" | | 5 | "You seek the path to" | | 6 | "She had no choice." | | 7 | "I have to know why" | | 8 | "I have to know what" | | 9 | "You carry the mark of" | | 10 | "It is a siren song" | | 11 | "They were sealed in." | | 12 | "You have the steel, Isolde" | | 13 | "It is the only thing" | | 14 | "She gripped the pommel of" | | 15 | "She realized then that the" | | 16 | "It wasn't just beautiful; it" | | 17 | "She wasn't just a delivery" | | 18 | "She was a trespasser in" | | 19 | "She reached into the spiraling" |
| | ratio | 0.307 | |
| 73.33% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 58 | | totalSentences | 75 | | matches | | 0 | "The air in Richmond Park" | | 1 | "The transition felt less like" | | 2 | "Rory steadied herself, her hand" | | 3 | "The Heartstone pendant, usually a" | | 4 | "The Shade did not walk" | | 5 | "The creature’s violet eyes scanned" | | 6 | "This was the Fae Grove," | | 7 | "Isolde moved ahead of them," | | 8 | "She made no sound." | | 9 | "Her feet did not disturb" | | 10 | "The earth here remembers the" | | 11 | "Rory looked down." | | 12 | "The ground beneath the canopy" | | 13 | "Nyx drifted further to the" | | 14 | "Something feels wrong, Nyx murmured," | | 15 | "The Veil is frayed here." | | 16 | "It is thin enough to" | | 17 | "I can feel the pull" | | 18 | "Rory shifted her grip on" | | 19 | "They reached the center of" |
| | ratio | 0.773 | |
| 100.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 5 | | totalSentences | 75 | | matches | | 0 | "Now, the coldness of the" | | 1 | "To enter the garden of" | | 2 | "If you go, you will" | | 3 | "If you are to face" | | 4 | "If you feel the hunger" |
| | ratio | 0.067 | |
| 50.26% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 54 | | technicalSentenceCount | 7 | | matches | | 0 | "The air in Richmond Park was heavy with the damp, earthy scent of London in late autumn, but as Rory stepped between the two gnarled, moss-thickened oak stones,…" | | 1 | "The Heartstone pendant, usually a dormant weight against her skin, was radiating a low-frequency hum, its crimson surface pulsing with an interior light that fe…" | | 2 | "Above them, the sky was not a grey London expanse, but a swirling, iridescent dome of violet and gold, as if the sun were permanently caught in the throes of an…" | | 3 | "Her feet did not disturb the carpet of wildflowers—bluebells that sounded like glass wind chimes when the breeze brushed them, and strange, pale lilies that see…" | | 4 | "The sight was intoxicating, even from this distance, promising a satiety that bordered on madness." | | 5 | "The silver water began to surge, rising in a spiraling column that defied gravity." | | 6 | "The sensation was immediate—a violent, icy pull that threatened to unspool her very atoms." |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 1 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | |