| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 29 | | adverbTagCount | 2 | | adverbTags | | 0 | "Silas said finally [finally]" | | 1 | "Marcus said quietly [quietly]" |
| | dialogueSentences | 61 | | tagDensity | 0.475 | | leniency | 0.951 | | rawRatio | 0.069 | | effectiveRatio | 0.066 | |
| 97.17% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1766 | | totalAiIsmAdverbs | 1 | | found | | | highlights | | |
| 60.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) | |
| 51.87% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1766 | | totalAiIsms | 17 | | found | | 0 | | | 1 | | | 2 | | word | "practiced ease" | | count | 1 |
| | 3 | | | 4 | | | 5 | | | 6 | | | 7 | | | 8 | | | 9 | |
| | highlights | | 0 | "weight" | | 1 | "measured" | | 2 | "practiced ease" | | 3 | "silence" | | 4 | "comfortable" | | 5 | "throbbed" | | 6 | "perfect" | | 7 | "eyebrow" | | 8 | "could feel" | | 9 | "unspoken" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 1 | | maxInWindow | 1 | | found | | 0 | | label | "hung in the air" | | count | 1 |
|
| | highlights | | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 95 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 1 | | narrationSentences | 95 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 127 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 52 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1746 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 16 | | unquotedAttributions | 0 | | matches | (empty) | |
| 33.33% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 73 | | wordCount | 1184 | | uniqueNames | 19 | | maxNameDensity | 2.28 | | worstName | "Silas" | | maxWindowNameDensity | 4 | | worstWindowName | "Silas" | | discoveredNames | | Raven | 2 | | Nest | 2 | | Blackwood | 1 | | Wednesday | 1 | | November | 1 | | Silas | 27 | | Prague | 1 | | January | 1 | | Marcus | 27 | | Chen | 1 | | Didn | 1 | | Eastern | 1 | | Europe | 1 | | Minsk | 1 | | Czech | 1 | | Kyiv | 1 | | Started | 1 | | Suntory | 1 | | Yamazaki | 1 |
| | persons | | 0 | "Raven" | | 1 | "Blackwood" | | 2 | "Silas" | | 3 | "Marcus" | | 4 | "Chen" | | 5 | "Started" | | 6 | "Suntory" | | 7 | "Yamazaki" |
| | places | | 0 | "Prague" | | 1 | "Eastern" | | 2 | "Europe" | | 3 | "Minsk" | | 4 | "Kyiv" |
| | globalScore | 0.36 | | windowScore | 0.333 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 61 | | glossingSentenceCount | 1 | | matches | | 0 | "sounded like a promise" |
| |
| 28.18% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 3 | | per1kWords | 1.718 | | wordCount | 1746 | | matches | | 0 | "not erased, not forgotten, but perhaps, finally, acknowledged" | | 1 | "not forgotten, but perhaps, finally, acknowledged" | | 2 | "not the careful blankness of a man trained to hide, but something genuine" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 127 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 56 | | mean | 31.18 | | std | 23.83 | | cv | 0.764 | | sampleLengths | | 0 | 98 | | 1 | 27 | | 2 | 4 | | 3 | 70 | | 4 | 13 | | 5 | 59 | | 6 | 22 | | 7 | 7 | | 8 | 60 | | 9 | 28 | | 10 | 34 | | 11 | 9 | | 12 | 36 | | 13 | 12 | | 14 | 33 | | 15 | 5 | | 16 | 35 | | 17 | 30 | | 18 | 6 | | 19 | 30 | | 20 | 56 | | 21 | 2 | | 22 | 35 | | 23 | 10 | | 24 | 2 | | 25 | 4 | | 26 | 19 | | 27 | 6 | | 28 | 36 | | 29 | 76 | | 30 | 4 | | 31 | 56 | | 32 | 78 | | 33 | 47 | | 34 | 5 | | 35 | 24 | | 36 | 85 | | 37 | 46 | | 38 | 70 | | 39 | 5 | | 40 | 21 | | 41 | 41 | | 42 | 11 | | 43 | 40 | | 44 | 50 | | 45 | 47 | | 46 | 37 | | 47 | 6 | | 48 | 8 | | 49 | 41 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 95 | | matches | | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 199 | | matches | (empty) | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 15 | | semicolonCount | 0 | | flaggedSentences | 12 | | totalSentences | 127 | | ratio | 0.094 | | matches | | 0 | "He polished a glass that didn't need polishing and watched the Wednesday crowd—thin tonight, just two university students nursing pints in the corner and a woman in a red coat who'd been nursing the same gin and tonic for forty minutes." | | 1 | "He'd aged—of course he had, they both had—but where Silas felt his own aging in his bones, Marcus wore it on his face." | | 2 | "Marcus's mouth curved—a ghost of the smile that had talked them out of a locked room in Minsk, that had convinced a Czech minister's aide to turn in '97." | | 3 | "Marcus reached into his coat pocket and produced a cigarette case—silver, monogrammed, new—and set it on the bar without opening it." | | 4 | "\"When Pēteris's men came through the east entrance. I could have gone for cover, bought us time to regroup. Instead I went for you.\" His eyes met Silas's—dark, steady, and carrying something that looked almost like exhaustion." | | 5 | "But this—this was different." | | 6 | "He could smell the rain on Marcus's coat, could see the small scar above his left eyebrow—from Kyiv, '96, a training exercise that had gone wrong in the best kind of way." | | 7 | "The flatness in his eyes had given way to something else—something tired and true and unguarded in a way Silas had never seen from him, not even in their closest moments." | | 8 | "Silas reached beneath the bar and pulled out a bottle of Suntory Yamazaki 12—the good one, the one he kept for occasions that mattered, though he'd never articulated what those occasions might look like." | | 9 | "The older man—no, they were both older now, both marked by years neither of them had shared—picked up the glass." | | 10 | "The whiskey burned, clean and bright, and for a moment the years between them felt navigable—not erased, not forgotten, but perhaps, finally, acknowledged." | | 11 | "And for the first time since he'd walked through the door, something in his expression softened—not the professional mask of composure, not the careful blankness of a man trained to hide, but something genuine and uncertain and deeply, unmistakably human." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 583 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 19 | | adverbRatio | 0.032590051457975985 | | lyAdverbCount | 3 | | lyAdverbRatio | 0.005145797598627788 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 127 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 127 | | mean | 13.75 | | std | 11.65 | | cv | 0.848 | | sampleLengths | | 0 | 25 | | 1 | 32 | | 2 | 41 | | 3 | 27 | | 4 | 4 | | 5 | 41 | | 6 | 29 | | 7 | 13 | | 8 | 10 | | 9 | 23 | | 10 | 15 | | 11 | 2 | | 12 | 9 | | 13 | 16 | | 14 | 6 | | 15 | 5 | | 16 | 2 | | 17 | 31 | | 18 | 29 | | 19 | 15 | | 20 | 8 | | 21 | 5 | | 22 | 29 | | 23 | 5 | | 24 | 9 | | 25 | 5 | | 26 | 25 | | 27 | 4 | | 28 | 2 | | 29 | 12 | | 30 | 29 | | 31 | 4 | | 32 | 5 | | 33 | 3 | | 34 | 21 | | 35 | 6 | | 36 | 5 | | 37 | 17 | | 38 | 7 | | 39 | 6 | | 40 | 3 | | 41 | 3 | | 42 | 9 | | 43 | 16 | | 44 | 5 | | 45 | 50 | | 46 | 6 | | 47 | 2 | | 48 | 5 | | 49 | 16 |
| |
| 55.64% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 11 | | diversityRatio | 0.3858267716535433 | | totalSentences | 127 | | uniqueOpeners | 49 | |
| 86.58% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 2 | | totalSentences | 77 | | matches | | 0 | "Then it smoothed over again," | | 1 | "Somewhere in the back, the" |
| | ratio | 0.026 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 12 | | totalSentences | 77 | | matches | | 0 | "He polished a glass that" | | 1 | "He'd aged—of course he had," | | 2 | "His fingers lingered on the" | | 3 | "His hands needed something to" | | 4 | "His eyes met Silas's—dark, steady," | | 5 | "He'd heard interrogations and confessions" | | 6 | "He could smell the rain" | | 7 | "He could feel the years" | | 8 | "He exhaled, a sharp, unsteady" | | 9 | "He poured two measures into" | | 10 | "His fingers wrapped around it," | | 11 | "He cleared his throat." |
| | ratio | 0.156 | |
| 24.94% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 67 | | totalSentences | 77 | | matches | | 0 | "The green neon glow of" | | 1 | "Silas Blackwood stood behind the" | | 2 | "He polished a glass that" | | 3 | "The door swung open, bringing" | | 4 | "Silas's hands stopped moving." | | 5 | "The man stood in the" | | 6 | "The man who'd walked into" | | 7 | "The name left Silas's mouth" | | 8 | "Marcus Chen turned, and the" | | 9 | "He'd aged—of course he had," | | 10 | "The lean lines had softened," | | 11 | "Marcus's voice carried across the" | | 12 | "Silas set down the glass." | | 13 | "Marcus approached the bar, his" | | 14 | "Silas didn't move to pour" | | 15 | "Marcus's gaze drifted across the" | | 16 | "A silence stretched between them." | | 17 | "This silence had weight." | | 18 | "Silas said finally, because he" | | 19 | "Marcus's mouth curved—a ghost of" |
| | ratio | 0.87 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 77 | | matches | (empty) | | ratio | 0 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 32 | | technicalSentenceCount | 7 | | matches | | 0 | "The green neon glow of The Raven's Nest sign bled through the rain-streaked window, casting shifting patterns across the old maps that lined the walls." | | 1 | "He polished a glass that didn't need polishing and watched the Wednesday crowd—thin tonight, just two university students nursing pints in the corner and a woma…" | | 2 | "The door swung open, bringing with it a gust of November air and a man in a charcoal overcoat that cost more than Silas's entire back bar." | | 3 | "The man who'd walked into a Prague warehouse with him on a January night and walked out carrying Silas over his shoulder, both of them bleeding through the snow…" | | 4 | "This was Marcus, who had never said a word he didn't mean, who had lied to arms dealers and intelligence directors with perfect composure, now sitting at his ba…" | | 5 | "Silas reached beneath the bar and pulled out a bottle of Suntory Yamazaki 12—the good one, the one he kept for occasions that mattered, though he'd never articu…" | | 6 | "The neon sign cast its green glow across the wet pavement, and inside The Raven's Nest, two old friends sat together in the quiet and let the weight of all thei…" |
| |
| 73.28% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 29 | | uselessAdditionCount | 3 | | matches | | 0 | "Silas's, as if on cue" | | 1 | "Marcus's voice stayed, but his fingers pressed harder against the cigarette case" | | 2 | "Marcus repeated, and the words sounded like a promise" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 11 | | fancyCount | 2 | | fancyTags | | 0 | "Marcus continued (continue)" | | 1 | "Marcus repeated (repeat)" |
| | dialogueSentences | 61 | | tagDensity | 0.18 | | leniency | 0.361 | | rawRatio | 0.182 | | effectiveRatio | 0.066 | |