| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 3 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 2 | | tagDensity | 1 | | leniency | 1 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 94.60% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 926 | | totalAiIsmAdverbs | 1 | | 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) | |
| 8.21% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 926 | | totalAiIsms | 17 | | found | | | highlights | | 0 | "throbbed" | | 1 | "chill" | | 2 | "stomach" | | 3 | "silence" | | 4 | "silk" | | 5 | "raced" | | 6 | "echoed" | | 7 | "intensity" | | 8 | "scanned" | | 9 | "loomed" | | 10 | "whisper" | | 11 | "racing" | | 12 | "warmth" | | 13 | "trembled" |
| |
| 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 | 75 | | matches | (empty) | |
| 47.62% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 5 | | narrationSentences | 75 | | filterMatches | (empty) | | hedgeMatches | | 0 | "tended to" | | 1 | "seemed to" | | 2 | "began to" |
| |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 76 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 37 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 926 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 1 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 28 | | wordCount | 899 | | uniqueNames | 16 | | maxNameDensity | 0.89 | | worstName | "Rory" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Rory" | | discoveredNames | | Heartstone | 3 | | Richmond | 2 | | Grove | 2 | | Golden | 1 | | Empress | 1 | | Yu-Fei | 1 | | Park | 1 | | October | 1 | | Fae | 1 | | Cardiff | 2 | | Evan | 1 | | English | 1 | | Rory | 8 | | Aurora | 1 | | Hel | 1 | | Malphora | 1 |
| | persons | | 0 | "Heartstone" | | 1 | "Empress" | | 2 | "Yu-Fei" | | 3 | "October" | | 4 | "Evan" | | 5 | "Rory" |
| | places | | 0 | "Richmond" | | 1 | "Grove" | | 2 | "Golden" | | 3 | "Park" | | 4 | "Fae" | | 5 | "Cardiff" | | 6 | "English" | | 7 | "Hel" |
| | globalScore | 1 | | windowScore | 1 | |
| 11.11% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 54 | | glossingSentenceCount | 3 | | matches | | 0 | "silhouette that seemed to reach for her ankles rather than copy her stance" | | 1 | "not quite human, not quite animal" | | 2 | "not quite animal" | | 3 | "felt like permission" |
| |
| 92.01% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 1.08 | | wordCount | 926 | | matches | | 0 | "not with moonlight, but with something deeper, crimson matching the gem in her hand" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 76 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 17 | | mean | 54.47 | | std | 29.25 | | cv | 0.537 | | sampleLengths | | 0 | 23 | | 1 | 69 | | 2 | 76 | | 3 | 51 | | 4 | 77 | | 5 | 128 | | 6 | 56 | | 7 | 10 | | 8 | 21 | | 9 | 19 | | 10 | 75 | | 11 | 69 | | 12 | 22 | | 13 | 66 | | 14 | 68 | | 15 | 32 | | 16 | 64 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 75 | | matches | | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 147 | | matches | (empty) | |
| 100.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 0 | | semicolonCount | 0 | | flaggedSentences | 0 | | totalSentences | 76 | | ratio | 0 | | matches | (empty) | |
| 84.52% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 52 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 3 | | adverbRatio | 0.057692307692307696 | | lyAdverbCount | 1 | | lyAdverbRatio | 0.019230769230769232 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 76 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 76 | | mean | 12.18 | | std | 8.85 | | cv | 0.727 | | sampleLengths | | 0 | 23 | | 1 | 7 | | 2 | 23 | | 3 | 27 | | 4 | 6 | | 5 | 6 | | 6 | 20 | | 7 | 14 | | 8 | 17 | | 9 | 25 | | 10 | 3 | | 11 | 20 | | 12 | 3 | | 13 | 3 | | 14 | 13 | | 15 | 9 | | 16 | 2 | | 17 | 15 | | 18 | 11 | | 19 | 24 | | 20 | 10 | | 21 | 15 | | 22 | 3 | | 23 | 32 | | 24 | 16 | | 25 | 12 | | 26 | 6 | | 27 | 3 | | 28 | 32 | | 29 | 11 | | 30 | 13 | | 31 | 7 | | 32 | 23 | | 33 | 15 | | 34 | 11 | | 35 | 6 | | 36 | 2 | | 37 | 2 | | 38 | 21 | | 39 | 4 | | 40 | 15 | | 41 | 25 | | 42 | 17 | | 43 | 22 | | 44 | 7 | | 45 | 4 | | 46 | 8 | | 47 | 10 | | 48 | 37 | | 49 | 14 |
| |
| 52.63% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 10 | | diversityRatio | 0.39473684210526316 | | totalSentences | 76 | | uniqueOpeners | 30 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 3 | | totalSentences | 68 | | matches | | 0 | "Even her own breath sounded" | | 1 | "Then, a twig snapped behind" | | 2 | "Only the flowers answered." |
| | ratio | 0.044 | |
| 72.94% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 25 | | totalSentences | 68 | | matches | | 0 | "She had come to Richmond" | | 1 | "She intended to find out" | | 2 | "She walked deeper." | | 3 | "She reached up and touched" | | 4 | "Her phone showed half past" | | 5 | "She knew the lore of" | | 6 | "She needed answers." | | 7 | "She had fled Cardiff to" | | 8 | "She had not expected to" | | 9 | "She checked her shadow against" | | 10 | "It lagged behind her by" | | 11 | "Her cool head, usually quick" | | 12 | "Her voice sounded small, swallowed" | | 13 | "They seemed to lean closer," | | 14 | "Her bright blue eyes scanned" | | 15 | "It waited, patient, learning." | | 16 | "She moved forward, because retreat" | | 17 | "She was certain she'd walked" | | 18 | "Her name, twisted, claimed." | | 19 | "She remembered the note, the" |
| | ratio | 0.368 | |
| 48.24% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 56 | | totalSentences | 68 | | matches | | 0 | "Rory's boot crushed a daisy" | | 1 | "She had come to Richmond" | | 2 | "The delivery shift at Golden" | | 3 | "Someone, or something, wanted her" | | 4 | "She intended to find out" | | 5 | "Wildflowers bloomed in reckless abundance," | | 6 | "Poppies, bluebells, and something paler," | | 7 | "The air smelled of honey" | | 8 | "She walked deeper." | | 9 | "The crunch of her boots" | | 10 | "Nothing but wildflowers swaying with" | | 11 | "She reached up and touched" | | 12 | "Here, in the grove, that" | | 13 | "The silver chain felt cold" | | 14 | "Time felt wrong." | | 15 | "Her phone showed half past" | | 16 | "She knew the lore of" | | 17 | "An hour inside the Fae" | | 18 | "Rory didn't care about the" | | 19 | "She needed answers." |
| | ratio | 0.824 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 68 | | matches | (empty) | | ratio | 0 | |
| 11.28% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 38 | | technicalSentenceCount | 7 | | matches | | 0 | "Ancient oak standing stones marked the boundary, their bark silvered in moonlight that shouldn't reach so deep into the trees." | | 1 | "The air smelled of honey and rot, sweet enough to make her throat close and her stomach turn with a wrongness that felt almost biological." | | 2 | "Her phone showed half past two in the morning, but the moon hung too high, too bright, as if midday had been borrowed for the night and hung carelessly above th…" | | 3 | "It lagged behind her by a full second, a dark silhouette that seemed to reach for her ankles rather than copy her stance." | | 4 | "The Heartstone flared hot against her skin, its crimson light now visible through her shirt, pulsing in time with her racing heart." | | 5 | "The wildflowers had shifted, blocking her path with stems that felt almost muscular, their roots drinking the moonlight." | | 6 | "From the shadows between the oaks, the shape stepped forward, just enough to reveal features arranged like broken pottery, eyes too dark, mouth too wide, a smil…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 3 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | |