| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 29 | | adverbTagCount | 3 | | adverbTags | | 0 | "Megan gestured vaguely [vaguely]" | | 1 | "Aurora said slowly [slowly]" | | 2 | "Megan said finally [finally]" |
| | dialogueSentences | 77 | | tagDensity | 0.377 | | leniency | 0.753 | | rawRatio | 0.103 | | effectiveRatio | 0.078 | |
| 87.75% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 2041 | | totalAiIsmAdverbs | 5 | | found | | | highlights | | 0 | "perfectly" | | 1 | "suddenly" | | 2 | "slowly" | | 3 | "very" | | 4 | "really" |
| |
| 80.00% | AI-ism character names | Target: 0 AI-default names (16 tracked, −20% each) | |
| 100.00% | AI-ism location names | Target: 0 AI-default location names (33 tracked, −20% each) | | codexExemptions | (empty) | | found | (empty) | |
| 70.60% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 2041 | | totalAiIsms | 12 | | found | | 0 | | | 1 | | | 2 | | | 3 | | | 4 | | | 5 | | | 6 | | word | "practiced ease" | | count | 1 |
| | 7 | | | 8 | |
| | highlights | | 0 | "warmth" | | 1 | "scanned" | | 2 | "familiar" | | 3 | "weight" | | 4 | "perfect" | | 5 | "flickered" | | 6 | "practiced ease" | | 7 | "potential" | | 8 | "silence" |
| |
| 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 | 137 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 2 | | narrationSentences | 137 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 185 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 57 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 2017 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 26 | | unquotedAttributions | 0 | | matches | (empty) | |
| 0.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 79 | | wordCount | 1302 | | uniqueNames | 15 | | maxNameDensity | 2.38 | | worstName | "Aurora" | | maxWindowNameDensity | 5 | | worstWindowName | "Megan" | | discoveredNames | | Raven | 2 | | Nest | 2 | | November | 1 | | Silas | 4 | | London | 2 | | Aurora | 31 | | Megan | 28 | | French | 1 | | Three | 1 | | Swallowed | 1 | | July | 1 | | Evan | 2 | | Eva | 1 | | Broken | 1 | | Cardiff | 1 |
| | persons | | 0 | "Raven" | | 1 | "Nest" | | 2 | "Silas" | | 3 | "Aurora" | | 4 | "Megan" | | 5 | "Evan" | | 6 | "Eva" |
| | places | | 0 | "London" | | 1 | "July" | | 2 | "Cardiff" |
| | globalScore | 0.31 | | windowScore | 0 | |
| 85.90% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 78 | | glossingSentenceCount | 2 | | matches | | 0 | "something between a smile and grimace" | | 1 | "felt like a canyon" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 2017 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 3 | | totalSentences | 185 | | matches | | 0 | "believe, that the" | | 1 | "remembered that summer" | | 2 | "believe that she" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 86 | | mean | 23.45 | | std | 21.17 | | cv | 0.903 | | sampleLengths | | 0 | 39 | | 1 | 82 | | 2 | 51 | | 3 | 43 | | 4 | 6 | | 5 | 4 | | 6 | 1 | | 7 | 1 | | 8 | 36 | | 9 | 1 | | 10 | 21 | | 11 | 2 | | 12 | 55 | | 13 | 1 | | 14 | 22 | | 15 | 54 | | 16 | 61 | | 17 | 7 | | 18 | 38 | | 19 | 37 | | 20 | 9 | | 21 | 42 | | 22 | 30 | | 23 | 2 | | 24 | 52 | | 25 | 2 | | 26 | 50 | | 27 | 22 | | 28 | 36 | | 29 | 2 | | 30 | 4 | | 31 | 1 | | 32 | 41 | | 33 | 23 | | 34 | 36 | | 35 | 1 | | 36 | 24 | | 37 | 2 | | 38 | 62 | | 39 | 19 | | 40 | 8 | | 41 | 43 | | 42 | 65 | | 43 | 10 | | 44 | 70 | | 45 | 74 | | 46 | 21 | | 47 | 9 | | 48 | 61 | | 49 | 20 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 137 | | matches | | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 1 | | totalVerbs | 243 | | matches | | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 14 | | semicolonCount | 0 | | flaggedSentences | 12 | | totalSentences | 185 | | ratio | 0.065 | | matches | | 0 | "The warmth hit her first—that particular blend of body heat, old wood, and whiskey that Silas's place always carried." | | 1 | "Yu-Fei had kept her late—some catering order gone sideways—and now her lower back screamed and her fingers still felt locked in throttle position." | | 2 | "The glass slid across the scarred wood, and she caught it, brought it to her lips—" | | 3 | "She folded her hands on the table, and Aurora noticed her nails—perfect French tips, not a chip in sight." | | 4 | "\"We were.\" Something flickered across Megan's face—a shadow that didn't match her polished exterior." | | 5 | "One of them caught her eye and made a gesture—leaving, call tomorrow—and she nodded with the practiced ease of someone who'd mastered the language of professional obligation." | | 6 | "Megan's composure slipped, just for a moment, and underneath Aurora glimpsed the girl she'd known—the one who'd cry at sad commercials and laugh too loud and believe, genuinely believe, that the world would bend to accommodate her dreams." | | 7 | "Aurora watched her swallow whatever she'd been about to say—something condescending, probably, something about wasted potential and law school and all the things Aurora had heard from her parents before she'd stopped taking their calls too." | | 8 | "The Raven's Nest hummed around them—low conversation, the clink of glasses, someone feeding coins into the ancient jukebox in the corner." | | 9 | "Her fingers brushed Megan's wrist—a touch so light it barely qualified as contact." | | 10 | "The past lived in that number—Cardiff and Evan and the girl she'd been before she'd learned what it meant to survive." | | 11 | "She scrawled a mobile number on the back in handwriting Aurora recognized—still messy, still slanting left, unchanged by all the years between them." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1321 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 50 | | adverbRatio | 0.03785011355034065 | | lyAdverbCount | 22 | | lyAdverbRatio | 0.016654049962149888 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 185 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 185 | | mean | 10.9 | | std | 10.55 | | cv | 0.968 | | sampleLengths | | 0 | 26 | | 1 | 13 | | 2 | 19 | | 3 | 14 | | 4 | 4 | | 5 | 9 | | 6 | 12 | | 7 | 24 | | 8 | 4 | | 9 | 24 | | 10 | 23 | | 11 | 11 | | 12 | 21 | | 13 | 11 | | 14 | 6 | | 15 | 4 | | 16 | 1 | | 17 | 1 | | 18 | 20 | | 19 | 16 | | 20 | 1 | | 21 | 6 | | 22 | 1 | | 23 | 14 | | 24 | 2 | | 25 | 19 | | 26 | 22 | | 27 | 6 | | 28 | 8 | | 29 | 1 | | 30 | 7 | | 31 | 1 | | 32 | 14 | | 33 | 15 | | 34 | 39 | | 35 | 9 | | 36 | 21 | | 37 | 5 | | 38 | 10 | | 39 | 16 | | 40 | 7 | | 41 | 25 | | 42 | 13 | | 43 | 9 | | 44 | 28 | | 45 | 5 | | 46 | 4 | | 47 | 24 | | 48 | 6 | | 49 | 4 |
| |
| 61.62% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 11 | | diversityRatio | 0.40540540540540543 | | totalSentences | 185 | | uniqueOpeners | 75 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 4 | | totalSentences | 117 | | matches | | 0 | "Bright green, same as always," | | 1 | "Maybe it would never stop" | | 2 | "Really thought about it." | | 3 | "Then she walked away, heels" |
| | ratio | 0.034 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 29 | | totalSentences | 117 | | matches | | 0 | "She shook the rain from" | | 1 | "She needed a drink." | | 2 | "He stood behind the counter," | | 3 | "His silver signet ring caught" | | 4 | "He poured without measuring, two" | | 5 | "Her blonde hair, once wild" | | 6 | "She clutched a designer handbag" | | 7 | "She also didn't know what" | | 8 | "Her delivery jacket still dripped." | | 9 | "Her jeans had a curry" | | 10 | "She became acutely conscious of" | | 11 | "She felt Silas's attention like" | | 12 | "They settled into a booth" | | 13 | "She folded her hands on" | | 14 | "She'd done the maths." | | 15 | "She remembered that summer." | | 16 | "She remembered packing a single" | | 17 | "She'd never said goodbye to" | | 18 | "She'd simply vanished, leaving her" | | 19 | "She blinked rapidly, fighting for" |
| | ratio | 0.248 | |
| 41.20% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 98 | | totalSentences | 117 | | matches | | 0 | "The green neon glow of" | | 1 | "Aurora pushed through them, shoulders" | | 2 | "The warmth hit her first—that" | | 3 | "She shook the rain from" | | 4 | "Tuesday nights ran quiet." | | 5 | "A handful of regulars nursed" | | 6 | "Some student types commandeered the" | | 7 | "The old maps on the" | | 8 | "She needed a drink." | | 9 | "Yu-Fei had kept her late—some" | | 10 | "Aurora made her way toward" | | 11 | "He stood behind the counter," | | 12 | "His silver signet ring caught" | | 13 | "He poured without measuring, two" | | 14 | "The glass slid across the" | | 15 | "The voice came from behind" | | 16 | "The woman standing three feet" | | 17 | "Her blonde hair, once wild" | | 18 | "Diamond studs glinted at her" | | 19 | "She clutched a designer handbag" |
| | ratio | 0.838 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 117 | | matches | (empty) | | ratio | 0 | |
| 100.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 43 | | technicalSentenceCount | 2 | | matches | | 0 | "One of them caught her eye and made a gesture—leaving, call tomorrow—and she nodded with the practiced ease of someone who'd mastered the language of profession…" | | 1 | "Remembered Evan's voice in her ear, telling her she was worthless, telling her no one would believe her, telling her she deserved everything he gave her." |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 29 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 15 | | fancyCount | 2 | | fancyTags | | 0 | "She faltered (falter)" | | 1 | "Megan laughed (laugh)" |
| | dialogueSentences | 77 | | tagDensity | 0.195 | | leniency | 0.39 | | rawRatio | 0.133 | | effectiveRatio | 0.052 | |