| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 18 | | adverbTagCount | 1 | | adverbTags | | 0 | "she said finally [finally]" |
| | dialogueSentences | 44 | | tagDensity | 0.409 | | leniency | 0.818 | | rawRatio | 0.056 | | effectiveRatio | 0.045 | |
| 95.31% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 2132 | | totalAiIsmAdverbs | 2 | | found | | | highlights | | |
| 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) | |
| 74.20% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 2132 | | totalAiIsms | 11 | | found | | | highlights | | 0 | "silence" | | 1 | "weight" | | 2 | "navigate" | | 3 | "unspoken" | | 4 | "sanctuary" | | 5 | "pulsed" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 1 | | maxInWindow | 1 | | found | | 0 | | label | "eyes widened/narrowed" | | count | 1 |
|
| | highlights | | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 111 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 1 | | narrationSentences | 111 | | filterMatches | (empty) | | hedgeMatches | | |
| 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 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 83 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 2113 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 23 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 38 | | wordCount | 1530 | | uniqueNames | 19 | | maxNameDensity | 0.52 | | worstName | "Silas" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Silas" | | discoveredNames | | Raven | 1 | | Nest | 2 | | Soho | 1 | | Carter | 3 | | Blackwood | 1 | | November | 1 | | Cardiff | 2 | | Evan | 3 | | Eva | 3 | | Golden | 1 | | Empress | 1 | | Balkans | 1 | | Brendan | 1 | | Get | 1 | | Rory | 4 | | Silas | 8 | | Italian | 2 | | Prague | 1 | | Manchester | 1 |
| | persons | | 0 | "Raven" | | 1 | "Nest" | | 2 | "Carter" | | 3 | "Blackwood" | | 4 | "Evan" | | 5 | "Eva" | | 6 | "Empress" | | 7 | "Balkans" | | 8 | "Brendan" | | 9 | "Get" | | 10 | "Rory" | | 11 | "Silas" |
| | places | | 0 | "Soho" | | 1 | "Cardiff" | | 2 | "Italian" | | 3 | "Prague" | | 4 | "Manchester" |
| | globalScore | 1 | | windowScore | 1 | |
| 26.54% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 81 | | glossingSentenceCount | 4 | | matches | | 0 | "felt like surrender" | | 1 | "appeared in front of her" | | 2 | "not quite touching" | | 3 | "as if testing the night for weaknesses" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 2113 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 136 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 46 | | mean | 45.93 | | std | 31.23 | | cv | 0.68 | | sampleLengths | | 0 | 96 | | 1 | 5 | | 2 | 76 | | 3 | 58 | | 4 | 4 | | 5 | 58 | | 6 | 1 | | 7 | 60 | | 8 | 20 | | 9 | 52 | | 10 | 18 | | 11 | 87 | | 12 | 8 | | 13 | 37 | | 14 | 21 | | 15 | 33 | | 16 | 86 | | 17 | 22 | | 18 | 36 | | 19 | 36 | | 20 | 41 | | 21 | 64 | | 22 | 48 | | 23 | 17 | | 24 | 75 | | 25 | 6 | | 26 | 81 | | 27 | 26 | | 28 | 20 | | 29 | 77 | | 30 | 59 | | 31 | 93 | | 32 | 72 | | 33 | 55 | | 34 | 74 | | 35 | 13 | | 36 | 6 | | 37 | 135 | | 38 | 87 | | 39 | 28 | | 40 | 33 | | 41 | 39 | | 42 | 43 | | 43 | 11 | | 44 | 11 | | 45 | 85 |
| |
| 92.62% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 4 | | totalSentences | 111 | | matches | | 0 | "been invited" | | 1 | "was shot" | | 2 | "was gone" | | 3 | "been broken" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 253 | | matches | (empty) | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 16 | | semicolonCount | 2 | | flaggedSentences | 12 | | totalSentences | 136 | | ratio | 0.088 | | matches | | 0 | "The air inside was the same—whiskey, dust, and the faint mineral tang of old paper." | | 1 | "Grey had claimed more of his auburn hair; the neat beard was shot through with it now." | | 2 | "Hazel eyes, still sharp beneath the heavy lids, travelled the length of her—shoulder-length black hair damp at the ends, the same bright blue stare that had once made him call her a walking lie detector, the leaner frame inside a coat too thin for November." | | 3 | "She slid onto the stool she had always claimed—second from the left, close enough to the whisky but far enough from the door to watch anyone who entered." | | 4 | "Delivery work for the Golden Empress had taught her how to navigate alleys and colleagues who spoke three languages before breakfast; nights alone above this very bar—or later, far from it—had taught her other currencies." | | 5 | "The mention of Brendan Carter landed like a pebble in still water—small, spreading rings." | | 6 | "She thought of the night she almost came back—stood across the street exactly where she had stood tonight—and then turned around because the neon made her want things she no longer trusted herself to keep." | | 7 | "The bar hummed around them—the low refrigerator note, someone’s quieter laughter, the creak of old timber adjusting to weather." | | 8 | "The proximity carried weather of its own—old tobacco, cedar soap, the metallic ghost of a life spent knowing too much." | | 9 | "He spoke less but listened with the full stillness she remembered—the stillness that had once made her confess things she had sworn to keep buried." | | 10 | "The old instinct rose—to embrace, to clasp shoulder, to offer any bridge that speech had left unfinished—and then subsided." | | 11 | "Aurora Carter—Rory again, or something adjacent—pulled her collar up and stepped into the weather, carrying the weight of three unspoken years and the quieter knowledge that some rooms never stop waiting for the people who leave them." |
| |
| 89.48% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1557 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 81 | | adverbRatio | 0.05202312138728324 | | lyAdverbCount | 8 | | lyAdverbRatio | 0.005138086062941554 | |
| 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 | 15.54 | | std | 12.96 | | cv | 0.834 | | sampleLengths | | 0 | 22 | | 1 | 41 | | 2 | 5 | | 3 | 28 | | 4 | 5 | | 5 | 15 | | 6 | 10 | | 7 | 32 | | 8 | 8 | | 9 | 11 | | 10 | 24 | | 11 | 17 | | 12 | 17 | | 13 | 4 | | 14 | 7 | | 15 | 45 | | 16 | 6 | | 17 | 1 | | 18 | 8 | | 19 | 12 | | 20 | 12 | | 21 | 28 | | 22 | 9 | | 23 | 11 | | 24 | 14 | | 25 | 12 | | 26 | 10 | | 27 | 16 | | 28 | 15 | | 29 | 3 | | 30 | 2 | | 31 | 23 | | 32 | 13 | | 33 | 35 | | 34 | 14 | | 35 | 5 | | 36 | 3 | | 37 | 20 | | 38 | 17 | | 39 | 10 | | 40 | 11 | | 41 | 16 | | 42 | 17 | | 43 | 12 | | 44 | 13 | | 45 | 23 | | 46 | 23 | | 47 | 15 | | 48 | 7 | | 49 | 7 |
| |
| 57.35% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 12 | | diversityRatio | 0.39705882352941174 | | totalSentences | 136 | | uniqueOpeners | 54 | |
| 34.01% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 1 | | totalSentences | 98 | | matches | | 0 | "Instead she held his gaze" |
| | ratio | 0.01 | |
| 68.98% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 37 | | totalSentences | 98 | | matches | | 0 | "She had counted them in" | | 1 | "She pushed the door open." | | 2 | "She crossed the room because" | | 3 | "She slid onto the stool" | | 4 | "Her voice came out steadier" | | 5 | "He set the glass down" | | 6 | "She wore the change the" | | 7 | "He poured for himself, a" | | 8 | "She turned the glass once," | | 9 | "He leaned against the back" | | 10 | "She remembered the night he" | | 11 | "She had been twenty-two, still" | | 12 | "He had been fifty-five and" | | 13 | "She tasted the whisky." | | 14 | "It burned clean, the same" | | 15 | "He lifted his glass in" | | 16 | "She let the old joke" | | 17 | "She thought of carpet that" | | 18 | "She thought of the night" | | 19 | "He nodded as if she" |
| | ratio | 0.378 | |
| 51.84% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 80 | | totalSentences | 98 | | matches | | 0 | "The green neon sign of" | | 1 | "Aurora Carter stood beneath it" | | 2 | "She had counted them in" | | 3 | "She pushed the door open." | | 4 | "The air inside was the" | | 5 | "The walls still wore their" | | 6 | "Nothing had moved, and somehow" | | 7 | "Time had been invited in" | | 8 | "Silas Blackwood looked up." | | 9 | "Hazel eyes, still sharp beneath" | | 10 | "Recognition arrived like a delayed" | | 11 | "The name landed soft and" | | 12 | "She crossed the room because" | | 13 | "Boots scuffed the floorboards that" | | 14 | "She slid onto the stool" | | 15 | "Her voice came out steadier" | | 16 | "A smile cracked the corner" | | 17 | "He set the glass down" | | 18 | "The silver signet ring on" | | 19 | "The girl who had once" |
| | ratio | 0.816 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 98 | | matches | (empty) | | ratio | 0 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 59 | | technicalSentenceCount | 16 | | matches | | 0 | "Aurora Carter stood beneath it longer than she meant to, shoulders hunched against a wind that smelled of rain and diesel, fingers worrying the crescent scar on…" | | 1 | "She had counted them in rented rooms and borrowed beds, in the quiet arithmetic of someone who had learned to keep score of everything she walked away from." | | 2 | "The walls still wore their patchwork of maps and black-and-white photographs: fog-choked streets in cities whose names she once tried to memorize, faces of men …" | | 3 | "Behind the counter a man polished a glass with the slow, precise motions of someone who had once disassembled and reassembled more delicate instruments." | | 4 | "Hazel eyes, still sharp beneath the heavy lids, travelled the length of her—shoulder-length black hair damp at the ends, the same bright blue stare that had onc…" | | 5 | "Delivery work for the Golden Empress had taught her how to navigate alleys and colleagues who spoke three languages before breakfast; nights alone above this ve…" | | 6 | "She had been twenty-two, still arranging her face into the bright composure of someone who had not yet been broken and mended badly." | | 7 | "She thought of carpet that never quite lost the smell of other people’s cigarettes, of windows that looked onto brick walls, of the careful way she still unlock…" | | 8 | "He nodded as if she had recited an operational report he already half-knew." | | 9 | "Rory found her gaze snagging on one she remembered: a young woman in a trench coat lighting a cigarette outside a Prague tram stop, eyes already somewhere else." | | 10 | "The limp brought him around the bar until he stood nearer, close enough that she could see the finer lines around his eyes, the ones that hadn’t been there when…" | | 11 | "Unspoken things crowded the space between stool and man: the almost-conversation on the stairs the night she left, the way he had looked at her scar once and no…" | | 12 | "She told him, in pieces, about the intermediate years: the jobs that required strong legs and stronger forgetfulness, the near-miss in Manchester with a man who…" | | 13 | "He spoke less but listened with the full stillness she remembered—the stillness that had once made her confess things she had sworn to keep buried." | | 14 | "He mentioned a few of the old regulars, the ones who had drifted or died or simply stopped needing the Nest’s particular brand of sanctuary." | | 15 | "Aurora Carter—Rory again, or something adjacent—pulled her collar up and stepped into the weather, carrying the weight of three unspoken years and the quieter k…" |
| |
| 97.22% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 18 | | uselessAdditionCount | 1 | | matches | | 0 | "He rested, not quite touching" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 11 | | fancyCount | 0 | | fancyTags | (empty) | | dialogueSentences | 44 | | tagDensity | 0.25 | | leniency | 0.5 | | rawRatio | 0 | | effectiveRatio | 0 | |