| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | |
| 90.16% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1016 | | 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) | |
| 0.00% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1016 | | totalAiIsms | 29 | | found | | 0 | | | 1 | | | 2 | | | 3 | | | 4 | | | 5 | | | 6 | | | 7 | | | 8 | | | 9 | | | 10 | | | 11 | | | 12 | | | 13 | | | 14 | | | 15 | | | 16 | | | 17 | | | 18 | | word | "down her spine" | | count | 1 |
| | 19 | | | 20 | | | 21 | |
| | highlights | | 0 | "fractured" | | 1 | "pounding" | | 2 | "pulse" | | 3 | "jaw clenched" | | 4 | "reminder" | | 5 | "echo" | | 6 | "footsteps" | | 7 | "flicked" | | 8 | "maw" | | 9 | "resolve" | | 10 | "weight" | | 11 | "sense of" | | 12 | "tinged" | | 13 | "echoed" | | 14 | "scanning" | | 15 | "flicker" | | 16 | "aftermath" | | 17 | "raced" | | 18 | "down her spine" | | 19 | "encounter" | | 20 | "looming" | | 21 | "silence" |
| |
| 66.67% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 3 | | maxInWindow | 2 | | found | | 0 | | label | "jaw/fists clenched" | | count | 1 |
| | 1 | | label | "air was thick with" | | count | 1 |
| | 2 | | label | "hung in the air" | | count | 1 |
|
| | highlights | | 0 | "jaw clenched" | | 1 | "The air was thick with" | | 2 | "hung in the air" |
| |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 61 | | matches | (empty) | |
| 96.02% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 1 | | narrationSentences | 61 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 61 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 43 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 999 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 4 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 13 | | wordCount | 999 | | uniqueNames | 7 | | maxNameDensity | 0.7 | | worstName | "Quinn" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Quinn" | | discoveredNames | | Harlow | 1 | | Quinn | 7 | | Soho | 1 | | Veil | 1 | | Market | 1 | | Camden | 1 | | Glock | 1 |
| | persons | | 0 | "Harlow" | | 1 | "Quinn" | | 2 | "Camden" |
| | places | | | globalScore | 1 | | windowScore | 1 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 53 | | glossingSentenceCount | 0 | | matches | (empty) | |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 999 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 61 | | matches | (empty) | |
| 24.71% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 20 | | mean | 49.95 | | std | 11.81 | | cv | 0.236 | | sampleLengths | | 0 | 66 | | 1 | 58 | | 2 | 58 | | 3 | 63 | | 4 | 75 | | 5 | 43 | | 6 | 55 | | 7 | 50 | | 8 | 62 | | 9 | 36 | | 10 | 52 | | 11 | 54 | | 12 | 49 | | 13 | 52 | | 14 | 38 | | 15 | 49 | | 16 | 42 | | 17 | 35 | | 18 | 34 | | 19 | 28 |
| |
| 88.01% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 3 | | totalSentences | 61 | | matches | | 0 | "were intertwined" | | 1 | "were lined" | | 2 | "was crouched" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 179 | | matches | | 0 | "was heading" | | 1 | "was running" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 19 | | semicolonCount | 1 | | flaggedSentences | 19 | | totalSentences | 61 | | ratio | 0.311 | | matches | | 0 | "He was quick, lithe—too quick to be an ordinary suspect, which only deepened her suspicion." | | 1 | "Her left wrist brushed the worn leather band of her watch — a silent reminder that every second counted." | | 2 | "Quinn darted after him, her heart pounding in her ears as she followed through a narrow alley squeezed between crumbling brick walls plastered with graffiti—some claiming allegiance to secret factions she suspected were intertwined with the clique she sought to uncover." | | 3 | "He reached out, fumbling with a latch that looked almost like an afterthought—until he pulled a small, forged bone token from his pocket, pressing it into a concealed slot." | | 4 | "The door clicked open with a grimace of aged hinges, revealing a dark, yawning maw beneath the street—an entry to shadows." | | 5 | "She knew—intuitively—that following could plunge her into a place she’d only seen glimpses of in the whispers of informants: the Veil Market." | | 6 | "Whatever the suspect carried, whatever he was running from—if she let him slip away into that darkness, she might never find him again, and worse, she might be stepping into the unknown, into territory where her uniform and badge had little meaning." | | 7 | "She nodded to herself—then pushed open the door." | | 8 | "The walls were lined with rough plywood, cobbled together over forgotten bricks, and faint whispers echoed from the shadows—voices speaking in hushed tones, bargaining over forbidden artifacts." | | 9 | "Her hand hovered near her side, ready for anything—weapon drawn, senses alert." | | 10 | "She caught a flicker of movement further down—a silhouette slipping behind a stack of crates." | | 11 | "She remembered the stories, the warnings—this place was a den of mercenaries, smugglers, and worse." | | 12 | "Then she saw him—a flicker of movement behind a torn curtain." | | 13 | "She needed to decide—advance, or retreat?" | | 14 | "Entering this realm meant chaos; it meant flirting with things her department didn't acknowledge existed." | | 15 | "If she followed him deeper, she might be walking into a trap—an ambush of supernatural power, or an encounter she wouldn’t survive unprepared." | | 16 | "It was a gamble—one that could cost her everything she’d fought for, perhaps even her brother’s memory, lost to a case that shifted into shadows he’d warned her about." | | 17 | "She flicked her eyes to the sides—nothing but darkness, the faint shimmer of enchanted objects, the looming silence broken only by her breathing." | | 18 | "With a decisive breath, she stepped into the opening behind the curtain—ready to confront, or to make the call: chase into the storm, or retreat and regroup." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1021 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 29 | | adverbRatio | 0.02840352595494613 | | lyAdverbCount | 11 | | lyAdverbRatio | 0.010773751224289911 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 61 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 61 | | mean | 16.38 | | std | 9.08 | | cv | 0.554 | | sampleLengths | | 0 | 19 | | 1 | 28 | | 2 | 19 | | 3 | 15 | | 4 | 24 | | 5 | 19 | | 6 | 26 | | 7 | 11 | | 8 | 21 | | 9 | 41 | | 10 | 22 | | 11 | 25 | | 12 | 29 | | 13 | 21 | | 14 | 5 | | 15 | 22 | | 16 | 16 | | 17 | 9 | | 18 | 4 | | 19 | 42 | | 20 | 18 | | 21 | 24 | | 22 | 8 | | 23 | 15 | | 24 | 6 | | 25 | 14 | | 26 | 27 | | 27 | 11 | | 28 | 13 | | 29 | 12 | | 30 | 27 | | 31 | 25 | | 32 | 15 | | 33 | 12 | | 34 | 15 | | 35 | 12 | | 36 | 15 | | 37 | 21 | | 38 | 13 | | 39 | 12 | | 40 | 25 | | 41 | 15 | | 42 | 11 | | 43 | 12 | | 44 | 3 | | 45 | 3 | | 46 | 3 | | 47 | 6 | | 48 | 11 | | 49 | 15 |
| |
| 64.48% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 4 | | diversityRatio | 0.4262295081967213 | | totalSentences | 61 | | uniqueOpeners | 26 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 4 | | totalSentences | 61 | | matches | | 0 | "Then her hand gripped the" | | 1 | "Somewhere ahead, a clink of" | | 2 | "Then she saw him—a flicker" | | 3 | "Slowly, she moved forward." |
| | ratio | 0.066 | |
| 75.74% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 22 | | totalSentences | 61 | | matches | | 0 | "Her boots sloshed through puddles," | | 1 | "He was quick, lithe—too quick" | | 2 | "Her left wrist brushed the" | | 3 | "Her hand flicked to her" | | 4 | "He reached out, fumbling with" | | 5 | "She knew—intuitively—that following could plunge" | | 6 | "She knew the stakes." | | 7 | "She closed her eyes for" | | 8 | "She nodded to herself—then pushed" | | 9 | "Her hand hovered near her" | | 10 | "She caught a flicker of" | | 11 | "She remembered the stories, the" | | 12 | "She’d seen the aftermath of" | | 13 | "She moved through the market," | | 14 | "She kept low, pressing upward" | | 15 | "He was crouched, clutching a" | | 16 | "She needed to decide—advance, or" | | 17 | "It was a gamble—one that" | | 18 | "Her grip tightened on her" | | 19 | "Her boots echoed softly on" |
| | ratio | 0.361 | |
| 99.34% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 44 | | totalSentences | 61 | | matches | | 0 | "The rain hammered down in" | | 1 | "Detective Harlow Quinn’s breath fogged" | | 2 | "Her boots sloshed through puddles," | | 3 | "He was quick, lithe—too quick" | | 4 | "Her left wrist brushed the" | | 5 | "The man glanced over his" | | 6 | "Quinn darted after him, her" | | 7 | "Her hand flicked to her" | | 8 | "The suspect was heading toward" | | 9 | "He reached out, fumbling with" | | 10 | "The door clicked open with" | | 11 | "She knew—intuitively—that following could plunge" | | 12 | "The rain battered harder, pounding" | | 13 | "She knew the stakes." | | 14 | "Whatever the suspect carried, whatever" | | 15 | "She closed her eyes for" | | 16 | "She nodded to herself—then pushed" | | 17 | "The smell hit first: damp," | | 18 | "The air was thick with" | | 19 | "The walls were lined with" |
| | ratio | 0.721 | |
| 100.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 2 | | totalSentences | 61 | | matches | | 0 | "Yet, her quarry was already" | | 1 | "If she followed him deeper," |
| | ratio | 0.033 | |
| 100.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 46 | | technicalSentenceCount | 2 | | matches | | 0 | "Quinn darted after him, her heart pounding in her ears as she followed through a narrow alley squeezed between crumbling brick walls plastered with graffiti—som…" | | 1 | "He reached out, fumbling with a latch that looked almost like an afterthought—until he pulled a small, forged bone token from his pocket, pressing it into a con…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 0 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | |