| 28.57% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 12 | | adverbTagCount | 3 | | adverbTags | | 0 | "she said flatly [flatly]" | | 1 | "she said slowly [slowly]" | | 2 | "she said softly [softly]" |
| | dialogueSentences | 35 | | tagDensity | 0.343 | | leniency | 0.686 | | rawRatio | 0.25 | | effectiveRatio | 0.171 | |
| 74.09% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1351 | | totalAiIsmAdverbs | 7 | | found | | 0 | | | 1 | | adverb | "ever so slightly" | | count | 1 |
| | 2 | | | 3 | | | 4 | |
| | highlights | | 0 | "slightly" | | 1 | "ever so slightly" | | 2 | "slowly" | | 3 | "softly" | | 4 | "lightly" |
| |
| 100.00% | AI-ism character names | Target: 0 AI-default names (16 tracked, −20% each) | | codexExemptions | | | found | (empty) | |
| 100.00% | AI-ism location names | Target: 0 AI-default location names (33 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 40.78% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1351 | | totalAiIsms | 16 | | found | | | highlights | | 0 | "pulsed" | | 1 | "scanned" | | 2 | "familiar" | | 3 | "glinting" | | 4 | "unreadable" | | 5 | "calculating" | | 6 | "pulse" | | 7 | "roaring" | | 8 | "trembled" | | 9 | "weight" | | 10 | "unraveling" | | 11 | "resolve" | | 12 | "flickered" | | 13 | "tracing" | | 14 | "glistening" |
| |
| 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 | 115 | | matches | | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 0 | | narrationSentences | 115 | | filterMatches | | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 136 | | 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 | 4 | | markdownWords | 29 | | totalWords | 1333 | | ratio | 0.022 | | matches | | 0 | "you’ll thank me later" | | 1 | "You don’t need to work that hard. I can take care of you. You’re better off letting me handle things." | | 2 | "Golden Empress Delivery" | | 3 | "looking inward" |
| |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 13 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 39 | | wordCount | 1033 | | uniqueNames | 16 | | maxNameDensity | 0.77 | | worstName | "Aurora" | | maxWindowNameDensity | 2 | | worstWindowName | "Evan" | | discoveredNames | | Raven | 1 | | Nest | 2 | | Szechuan | 1 | | Carter | 1 | | Golden | 2 | | Empress | 2 | | Evan | 7 | | Cardiff | 1 | | Aurora | 8 | | Billie | 1 | | Holiday | 1 | | Calmer | 1 | | Delivery | 1 | | Yeats | 1 | | Silas | 6 | | Signs | 3 |
| | persons | | 0 | "Raven" | | 1 | "Carter" | | 2 | "Empress" | | 3 | "Evan" | | 4 | "Aurora" | | 5 | "Billie" | | 6 | "Holiday" | | 7 | "Silas" |
| | places | | | globalScore | 1 | | windowScore | 1 | |
| 63.79% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 58 | | glossingSentenceCount | 2 | | matches | | 0 | "appeared then, silent as a shadow, a fresh glass of club soda in hand" | | 1 | "as if filing it away" |
| |
| 0.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 3 | | per1kWords | 2.251 | | wordCount | 1333 | | matches | | 0 | "not since she’d slipped out of her flat in Cardiff with nothing but a duffel" | | 1 | "not running, not hiding, but standing, whole, in the truth of who she had become" | | 2 | "not hiding, but standing, whole, in the truth of who she had become" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 2 | | totalSentences | 136 | | matches | | 0 | "sounded that way" | | 1 | "screamed that her" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 56 | | mean | 23.8 | | std | 26.07 | | cv | 1.095 | | sampleLengths | | 0 | 144 | | 1 | 58 | | 2 | 87 | | 3 | 5 | | 4 | 65 | | 5 | 3 | | 6 | 4 | | 7 | 10 | | 8 | 24 | | 9 | 13 | | 10 | 13 | | 11 | 8 | | 12 | 6 | | 13 | 55 | | 14 | 9 | | 15 | 5 | | 16 | 60 | | 17 | 5 | | 18 | 41 | | 19 | 34 | | 20 | 48 | | 21 | 6 | | 22 | 22 | | 23 | 8 | | 24 | 4 | | 25 | 31 | | 26 | 6 | | 27 | 31 | | 28 | 26 | | 29 | 24 | | 30 | 2 | | 31 | 16 | | 32 | 7 | | 33 | 63 | | 34 | 3 | | 35 | 65 | | 36 | 13 | | 37 | 7 | | 38 | 50 | | 39 | 8 | | 40 | 5 | | 41 | 26 | | 42 | 16 | | 43 | 3 | | 44 | 22 | | 45 | 14 | | 46 | 17 | | 47 | 4 | | 48 | 8 | | 49 | 11 |
| |
| 96.11% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 3 | | totalSentences | 115 | | matches | | 0 | "been swallowed" | | 1 | "was gone" | | 2 | "was meant" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 1 | | totalVerbs | 194 | | matches | | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 16 | | semicolonCount | 0 | | flaggedSentences | 12 | | totalSentences | 136 | | ratio | 0.088 | | matches | | 0 | "The Raven’s Nest hummed with its usual late-evening hush—just loud enough to mask a whispered secret, just quiet enough to make you feel like you shouldn’t." | | 1 | "Her eyes, bright blue and watchful, scanned the room not for customers—her shift at the Golden Empress ended hours ago—but for signs." | | 2 | "He gave her a nod—an unreadable tilt of the chin—and disappeared behind the bar to pour himself a tumbler of single malt." | | 3 | "But the eyes—hazel, calculating, with that unnerving stillness she remembered—those were the same." | | 4 | "She could smell his cologne—sandalwood and something sharp, expensive." | | 5 | "She saw him flinch—ever so slightly—and something in her twisted." | | 6 | "But she had missed, god help her, the version of herself that existed before him—the girl who laughed easily, who dreamed of justice, who trusted." | | 7 | "She remembered, too—late nights in the library, her head on his shoulder, the future outlined in careful pen strokes." | | 8 | "“Clearly.” He glanced at her jacket—logo stitched across the chest: *Golden Empress Delivery*." | | 9 | "For a moment, she saw the boy she’d fallen for—the one who held her hand through her father’s trial, who recited Yeats at 3 a.m." | | 10 | "A gesture so subtle it could mean anything—to a stranger, just bartender courtesy." | | 11 | "And for the first time in years, Aurora felt the quiet, unshakable certainty that she was exactly where she was meant to be—not running, not hiding, but standing, whole, in the truth of who she had become." |
| |
| 93.41% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1052 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 50 | | adverbRatio | 0.04752851711026616 | | lyAdverbCount | 16 | | lyAdverbRatio | 0.015209125475285171 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 136 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 136 | | mean | 9.8 | | std | 8.22 | | cv | 0.839 | | sampleLengths | | 0 | 26 | | 1 | 24 | | 2 | 24 | | 3 | 33 | | 4 | 5 | | 5 | 22 | | 6 | 3 | | 7 | 4 | | 8 | 3 | | 9 | 26 | | 10 | 16 | | 11 | 16 | | 12 | 25 | | 13 | 25 | | 14 | 22 | | 15 | 6 | | 16 | 9 | | 17 | 5 | | 18 | 9 | | 19 | 11 | | 20 | 19 | | 21 | 9 | | 22 | 4 | | 23 | 13 | | 24 | 3 | | 25 | 2 | | 26 | 2 | | 27 | 4 | | 28 | 6 | | 29 | 8 | | 30 | 1 | | 31 | 15 | | 32 | 3 | | 33 | 2 | | 34 | 8 | | 35 | 5 | | 36 | 2 | | 37 | 6 | | 38 | 5 | | 39 | 3 | | 40 | 4 | | 41 | 2 | | 42 | 5 | | 43 | 9 | | 44 | 23 | | 45 | 12 | | 46 | 6 | | 47 | 9 | | 48 | 5 | | 49 | 3 |
| |
| 50.49% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 8 | | diversityRatio | 0.3382352941176471 | | totalSentences | 136 | | uniqueOpeners | 46 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 4 | | totalSentences | 102 | | matches | | 0 | "Then the door opened again." | | 1 | "Then the ghost of a" | | 2 | "Just stood there, his hazel" | | 3 | "Then he was gone, the" |
| | ratio | 0.039 | |
| 59.22% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 41 | | totalSentences | 102 | | matches | | 0 | "She hadn’t touched the drink." | | 1 | "Her eyes, bright blue and" | | 2 | "She hadn’t seen Evan in" | | 3 | "He gave her a nod—an" | | 4 | "He stood a moment in" | | 5 | "His voice was softer than" | | 6 | "She didn’t move." | | 7 | "Her fingers pressed the cool" | | 8 | "She forced her voice level." | | 9 | "He paused, head tilting." | | 10 | "She could smell his cologne—sandalwood" | | 11 | "She saw him flinch—ever so" | | 12 | "She hadn’t missed this." | | 13 | "she replied, though he hadn’t" | | 14 | "He slid into the booth" | | 15 | "She didn’t answer." | | 16 | "She remembered, too—late nights in" | | 17 | "*You don’t need to work" | | 18 | "I can take care of" | | 19 | "You’re better off letting me" |
| | ratio | 0.402 | |
| 92.35% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 75 | | totalSentences | 102 | | matches | | 0 | "The Raven’s Nest hummed with" | | 1 | "The green neon above the" | | 2 | "Aurora Carter sat in her" | | 3 | "She hadn’t touched the drink." | | 4 | "Her eyes, bright blue and" | | 5 | "Signs of surveillance." | | 6 | "Signs of familiar faces." | | 7 | "Signs of him." | | 8 | "She hadn’t seen Evan in" | | 9 | "The bell above the door" | | 10 | "Silas appeared in the doorway," | | 11 | "He gave her a nod—an" | | 12 | "Aurora exhaled, shoulders dropping a" | | 13 | "Silas never said much, but" | | 14 | "This time, the man who" | | 15 | "He stood a moment in" | | 16 | "A sharp chin, clean-shaven." | | 17 | "Aurora’s breath stalled." | | 18 | "His voice was softer than" | | 19 | "She didn’t move." |
| | ratio | 0.735 | |
| 98.04% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 2 | | totalSentences | 102 | | matches | | 0 | "Now, he held his hands" | | 1 | "If anything, he looked more" |
| | ratio | 0.02 | |
| 79.83% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 34 | | technicalSentenceCount | 3 | | matches | | 0 | "If anything, he looked more at ease in his skin, as if the years had only sharpened his control." | | 1 | "For a moment, she saw the boy she’d fallen for—the one who held her hand through her father’s trial, who recited Yeats at 3 a.m." | | 2 | "But that boy had been swallowed whole by the man who locked her keys in the drawer, who told her no one else would want her, who made her believe she was crazy …" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 12 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 7 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 35 | | tagDensity | 0.2 | | leniency | 0.4 | | rawRatio | 0 | | effectiveRatio | 0 | |