| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 18 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 63 | | tagDensity | 0.286 | | leniency | 0.571 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 97.73% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 2207 | | totalAiIsmAdverbs | 1 | | found | | | highlights | | |
| 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) | |
| 72.81% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 2207 | | totalAiIsms | 12 | | found | | | highlights | | 0 | "flickered" | | 1 | "silence" | | 2 | "weight" | | 3 | "silk" | | 4 | "navigating" | | 5 | "input" | | 6 | "traced" | | 7 | "solitary" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 1 | | maxInWindow | 1 | | found | | 0 | | label | "let out a breath" | | count | 1 |
|
| | highlights | | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 99 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 2 | | narrationSentences | 99 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 144 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 70 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 2184 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 27 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 43 | | wordCount | 1379 | | uniqueNames | 16 | | maxNameDensity | 0.94 | | worstName | "Marcus" | | maxWindowNameDensity | 2 | | worstWindowName | "Marcus" | | discoveredNames | | Raven | 1 | | Nest | 1 | | Thursday | 2 | | Soho | 1 | | Ottoman | 2 | | Empire | 2 | | Hale | 1 | | Griffith | 1 | | Constitutional | 1 | | Law | 1 | | Denning | 1 | | Evan | 2 | | Cardiff | 1 | | Silas | 5 | | Rory | 8 | | Marcus | 13 |
| | persons | | 0 | "Empire" | | 1 | "Hale" | | 2 | "Griffith" | | 3 | "Denning" | | 4 | "Evan" | | 5 | "Silas" | | 6 | "Rory" | | 7 | "Marcus" |
| | places | | | globalScore | 1 | | windowScore | 1 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 67 | | 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 | 2184 | | matches | (empty) | |
| 74.07% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 4 | | totalSentences | 144 | | matches | | 0 | "learned that tips" | | 1 | "mapped that territory" | | 2 | "understood that some" | | 3 | "say that the" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 76 | | mean | 28.74 | | std | 23.86 | | cv | 0.83 | | sampleLengths | | 0 | 60 | | 1 | 88 | | 2 | 5 | | 3 | 95 | | 4 | 2 | | 5 | 71 | | 6 | 26 | | 7 | 29 | | 8 | 1 | | 9 | 66 | | 10 | 3 | | 11 | 17 | | 12 | 11 | | 13 | 38 | | 14 | 18 | | 15 | 3 | | 16 | 41 | | 17 | 5 | | 18 | 14 | | 19 | 17 | | 20 | 17 | | 21 | 2 | | 22 | 60 | | 23 | 5 | | 24 | 18 | | 25 | 6 | | 26 | 23 | | 27 | 7 | | 28 | 13 | | 29 | 58 | | 30 | 21 | | 31 | 26 | | 32 | 1 | | 33 | 41 | | 34 | 23 | | 35 | 12 | | 36 | 21 | | 37 | 46 | | 38 | 53 | | 39 | 11 | | 40 | 74 | | 41 | 3 | | 42 | 41 | | 43 | 62 | | 44 | 4 | | 45 | 74 | | 46 | 34 | | 47 | 8 | | 48 | 19 | | 49 | 7 |
| |
| 91.09% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 4 | | totalSentences | 99 | | matches | | 0 | "was frayed" | | 1 | "was supposed" | | 2 | "were supposed" | | 3 | "been dissolved" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 1 | | totalVerbs | 233 | | matches | | |
| 3.97% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 10 | | semicolonCount | 0 | | flaggedSentences | 7 | | totalSentences | 144 | | ratio | 0.049 | | matches | | 0 | "The dinner crowd was thin for a Thursday—just the usual collection of Soho drifters and a table of tourists who'd wandered in expecting something more photogenic." | | 1 | "His hair had gone thin on top, and the jawline she remembered—sharp, almost aggressive in its angles—had softened under a layer of weight that sat unevenly on his frame." | | 2 | "But his eyes—brown, almost black—still held that same restless intelligence, the look of a mind that never quite stopped working even when its owner wished it would." | | 3 | "The noise of the bar—the clatter of glasses, the low murmur of conversation, the occasional bark of laughter from the tourists—seemed to recede." | | 4 | "\"Some things.\" He looked at her—really looked, the way he used to when they'd sit in the university library after hours, trading case notes and the kind of confessions that only came out under fluorescent light." | | 5 | "The bar filled incrementally around them—a couple claiming the table near the window, a solitary man in a flat cap settling onto a stool." | | 6 | "Weariness, yes, but also a quality she could only describe as porousness—as if whatever walls he'd once built around himself had been dissolved by chemicals, or therapy, or just the relentless grinding of years against expectation." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1394 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 39 | | adverbRatio | 0.027977044476327116 | | lyAdverbCount | 9 | | lyAdverbRatio | 0.006456241032998565 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 144 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 144 | | mean | 15.17 | | std | 12.53 | | cv | 0.826 | | sampleLengths | | 0 | 25 | | 1 | 35 | | 2 | 39 | | 3 | 26 | | 4 | 23 | | 5 | 5 | | 6 | 33 | | 7 | 29 | | 8 | 6 | | 9 | 27 | | 10 | 2 | | 11 | 14 | | 12 | 14 | | 13 | 17 | | 14 | 26 | | 15 | 26 | | 16 | 4 | | 17 | 25 | | 18 | 1 | | 19 | 4 | | 20 | 12 | | 21 | 23 | | 22 | 27 | | 23 | 3 | | 24 | 10 | | 25 | 7 | | 26 | 11 | | 27 | 2 | | 28 | 5 | | 29 | 28 | | 30 | 3 | | 31 | 15 | | 32 | 3 | | 33 | 3 | | 34 | 14 | | 35 | 27 | | 36 | 5 | | 37 | 5 | | 38 | 7 | | 39 | 2 | | 40 | 17 | | 41 | 4 | | 42 | 13 | | 43 | 2 | | 44 | 4 | | 45 | 18 | | 46 | 3 | | 47 | 35 | | 48 | 5 | | 49 | 2 |
| |
| 56.94% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 13 | | diversityRatio | 0.3958333333333333 | | totalSentences | 144 | | uniqueOpeners | 57 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 86 | | matches | (empty) | | ratio | 0 | |
| 57.21% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 35 | | totalSentences | 86 | | matches | | 0 | "She set the plates down," | | 1 | "She almost didn't see him." | | 2 | "He sat in the far" | | 3 | "His hair had gone thin" | | 4 | "She stood in the middle" | | 5 | "His eyes found hers." | | 6 | "She crossed the room." | | 7 | "His skin had a grayish" | | 8 | "He pulled the chair out" | | 9 | "She hadn't meant to sit." | | 10 | "He repeated it the way" | | 11 | "He nodded, slow, and took" | | 12 | "It wasn't a question." | | 13 | "She let the silence answer" | | 14 | "She almost smiled." | | 15 | "He turned the glass in" | | 16 | "He glanced at Rory, at" | | 17 | "His eyebrows performed a minimal" | | 18 | "She gave him a look" | | 19 | "He drained his glass and" |
| | ratio | 0.407 | |
| 23.95% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 75 | | totalSentences | 86 | | matches | | 0 | "The green neon sign buzzed" | | 1 | "Rory balanced three plates of" | | 2 | "The dinner crowd was thin" | | 3 | "She set the plates down," | | 4 | "She almost didn't see him." | | 5 | "He sat in the far" | | 6 | "His hair had gone thin" | | 7 | "The name surfaced like a" | | 8 | "Marcus, who'd sat next to" | | 9 | "Marcus, who could recite entire" | | 10 | "Marcus, who'd driven her to" | | 11 | "She stood in the middle" | | 12 | "His eyes found hers." | | 13 | "The recognition came slow, filtering" | | 14 | "She crossed the room." | | 15 | "His skin had a grayish" | | 16 | "He pulled the chair out" | | 17 | "She hadn't meant to sit." | | 18 | "Thursday nights she was supposed" | | 19 | "Marcus stared at her like" |
| | ratio | 0.872 | |
| 58.14% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 86 | | matches | | 0 | "If he'd been angry, she" |
| | ratio | 0.012 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 48 | | technicalSentenceCount | 13 | | matches | | 0 | "The green neon sign buzzed and flickered against the wet pavement, casting a sickly glow over the puddles that had collected in the cracked concrete." | | 1 | "Rory balanced three plates of fish and chips along her left arm and a pint of bitter in her right hand, weaving between tables with the practiced economy of som…" | | 2 | "The dinner crowd was thin for a Thursday—just the usual collection of Soho drifters and a table of tourists who'd wandered in expecting something more photogeni…" | | 3 | "He sat in the far corner beneath a faded map of the Ottoman Empire, hunched over a glass of something amber, his coat still on as if he hadn't decided whether t…" | | 4 | "His hair had gone thin on top, and the jawline she remembered—sharp, almost aggressive in its angles—had softened under a layer of weight that sat unevenly on h…" | | 5 | "Marcus, who'd sat next to her for two years in Griffith's Constitutional Law seminar." | | 6 | "Marcus, who'd driven her to the hospital the night Evan shoved her into the kitchen counter, and who she'd never called back after she left Cardiff." | | 7 | "The recognition came slow, filtering through whatever fog he'd been sitting in, and then his face opened in a way that made her chest hurt." | | 8 | "The older man limped over, his hazel eyes moving between them with the quiet assessment of someone who'd spent decades reading rooms for threats." | | 9 | "But he sat there with his soft, ruined face and his honest question, and she had nothing to offer except the truth, which was ugly and insufficient." | | 10 | "Silas returned with two glasses and set them down with the careful economy of a man who understood that some tables carried weight beyond their physical capacit…" | | 11 | "That would have been a gesture from some other version of this reunion, some brighter timeline where they were catching up over drinks and swapping stories abou…" | | 12 | "Weariness, yes, but also a quality she could only describe as porousness—as if whatever walls he'd once built around himself had been dissolved by chemicals, or…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 18 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 11 | | fancyCount | 1 | | fancyTags | | | dialogueSentences | 63 | | tagDensity | 0.175 | | leniency | 0.349 | | rawRatio | 0.091 | | effectiveRatio | 0.032 | |