| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 9 | | adverbTagCount | 1 | | adverbTags | | 0 | "Silas said again [again]" |
| | dialogueSentences | 23 | | tagDensity | 0.391 | | leniency | 0.783 | | rawRatio | 0.111 | | effectiveRatio | 0.087 | |
| 84.72% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1309 | | totalAiIsmAdverbs | 4 | | found | | | highlights | | 0 | "quickly" | | 1 | "slightly" | | 2 | "really" |
| |
| 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) | |
| 38.88% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1309 | | totalAiIsms | 16 | | found | | 0 | | | 1 | | | 2 | | word | "carried the weight" | | count | 1 |
| | 3 | | | 4 | | | 5 | | | 6 | | | 7 | | | 8 | | | 9 | | | 10 | | | 11 | | | 12 | | | 13 | | | 14 | |
| | highlights | | 0 | "mechanical" | | 1 | "familiar" | | 2 | "carried the weight" | | 3 | "flicker" | | 4 | "intensity" | | 5 | "unspoken" | | 6 | "flickered" | | 7 | "pulse" | | 8 | "wavered" | | 9 | "tracing" | | 10 | "pulsed" | | 11 | "otherworldly" | | 12 | "dance" | | 13 | "echoed" | | 14 | "depths" |
| |
| 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 | 64 | | matches | (empty) | |
| 75.89% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 2 | | narrationSentences | 64 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 78 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 35 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1297 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 11 | | unquotedAttributions | 0 | | matches | (empty) | |
| 50.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 47 | | wordCount | 1045 | | uniqueNames | 14 | | maxNameDensity | 1.72 | | worstName | "Quinn" | | maxWindowNameDensity | 3.5 | | worstWindowName | "Quinn" | | discoveredNames | | Soho | 1 | | Harlow | 2 | | Quinn | 18 | | Tomás | 2 | | Herrera | 6 | | Thames | 1 | | Saint | 1 | | Christopher | 1 | | Raven | 1 | | Nest | 1 | | Silas | 8 | | Morris | 2 | | London | 1 | | Detective | 2 |
| | persons | | 0 | "Harlow" | | 1 | "Quinn" | | 2 | "Tomás" | | 3 | "Herrera" | | 4 | "Saint" | | 5 | "Christopher" | | 6 | "Raven" | | 7 | "Silas" | | 8 | "Morris" |
| | places | | 0 | "Soho" | | 1 | "Thames" | | 2 | "London" |
| | globalScore | 0.639 | | windowScore | 0.5 | |
| 13.64% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 55 | | glossingSentenceCount | 3 | | matches | | 0 | "not quite but recognition" | | 1 | "as if responding to some unspoken command, the sign flickered once, twice, before settling into a steady pulse of emerald light" | | 2 | "light that seemed to dance just beyond sight" |
| |
| 0.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 3 | | per1kWords | 2.313 | | wordCount | 1297 | | matches | | 0 | "not fear, not quite, but recognition" | | 1 | "not quite, but recognition" | | 2 | "not recognition, but calculation" |
| |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 78 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 37 | | mean | 35.05 | | std | 20.15 | | cv | 0.575 | | sampleLengths | | 0 | 76 | | 1 | 74 | | 2 | 3 | | 3 | 39 | | 4 | 1 | | 5 | 64 | | 6 | 55 | | 7 | 44 | | 8 | 59 | | 9 | 28 | | 10 | 22 | | 11 | 31 | | 12 | 33 | | 13 | 51 | | 14 | 24 | | 15 | 25 | | 16 | 10 | | 17 | 26 | | 18 | 41 | | 19 | 35 | | 20 | 31 | | 21 | 40 | | 22 | 22 | | 23 | 14 | | 24 | 45 | | 25 | 8 | | 26 | 12 | | 27 | 68 | | 28 | 15 | | 29 | 30 | | 30 | 49 | | 31 | 75 | | 32 | 21 | | 33 | 46 | | 34 | 11 | | 35 | 40 | | 36 | 29 |
| |
| 99.78% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 64 | | matches | | |
| 81.66% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 3 | | totalVerbs | 169 | | matches | | 0 | "was studying" | | 1 | "was speaking" | | 2 | "was waiting" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 11 | | semicolonCount | 0 | | flaggedSentences | 8 | | totalSentences | 78 | | ratio | 0.103 | | matches | | 0 | "Eighteen years on the force had taught her to read people, to anticipate moves before they happened, but this one—this one was different." | | 1 | "He looked up, and for a moment she saw something in his eyes—not fear, not quite, but recognition." | | 2 | "Silas finally met her gaze, and Quinn caught something in the way his pupils dilated—not recognition, but calculation." | | 3 | "For a moment, Quinn thought she saw the green of his eyes flicker—just for an instant—into something darker, something that didn’t belong in this world." | | 4 | "Quinn smiled—a cold, professional thing." | | 5 | "And Herrera—paramedic turned fugitive—was tangled up in it somehow." | | 6 | "The decision wasn’t easy—every instinct screamed at her to call for backup, to wait for reinforcements—but something deeper, something she couldn’t name, urged her forward." | | 7 | "She paused at the entrance, the cool air from below carrying with it scents she couldn’t identify—ozone and incense, decay and something sweet like overripe fruit." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1058 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 33 | | adverbRatio | 0.031190926275992438 | | lyAdverbCount | 11 | | lyAdverbRatio | 0.010396975425330813 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 78 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 78 | | mean | 16.63 | | std | 7.83 | | cv | 0.471 | | sampleLengths | | 0 | 27 | | 1 | 26 | | 2 | 23 | | 3 | 26 | | 4 | 21 | | 5 | 27 | | 6 | 3 | | 7 | 23 | | 8 | 16 | | 9 | 1 | | 10 | 18 | | 11 | 15 | | 12 | 31 | | 13 | 19 | | 14 | 15 | | 15 | 21 | | 16 | 14 | | 17 | 21 | | 18 | 9 | | 19 | 15 | | 20 | 21 | | 21 | 23 | | 22 | 7 | | 23 | 21 | | 24 | 22 | | 25 | 18 | | 26 | 13 | | 27 | 25 | | 28 | 8 | | 29 | 11 | | 30 | 25 | | 31 | 15 | | 32 | 24 | | 33 | 11 | | 34 | 14 | | 35 | 3 | | 36 | 7 | | 37 | 9 | | 38 | 17 | | 39 | 24 | | 40 | 17 | | 41 | 35 | | 42 | 9 | | 43 | 22 | | 44 | 17 | | 45 | 23 | | 46 | 5 | | 47 | 17 | | 48 | 7 | | 49 | 7 |
| |
| 69.23% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 1 | | diversityRatio | 0.4230769230769231 | | totalSentences | 78 | | uniqueOpeners | 33 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 4 | | totalSentences | 61 | | matches | | 0 | "Then he was moving, slipping" | | 1 | "Then he was studying the" | | 2 | "Instead, she pulled out her" | | 3 | "Somewhere in the depths beneath" |
| | ratio | 0.066 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 13 | | totalSentences | 61 | | matches | | 0 | "She’d been tracking Tomás Herrera" | | 1 | "She eased her grip on" | | 2 | "He looked up, and for" | | 3 | "She followed, her boots splashing" | | 4 | "She watched through the window" | | 5 | "She moved with purpose toward" | | 6 | "His voice carried the weight" | | 7 | "She leaned forward, letting her" | | 8 | "She matched his movement, her" | | 9 | "She’d caught wind of whispers," | | 10 | "She made her way toward" | | 11 | "She’d seen the symbols carved" | | 12 | "She paused at the entrance," |
| | ratio | 0.213 | |
| 100.00% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 42 | | totalSentences | 61 | | matches | | 0 | "The rain had turned the" | | 1 | "Detective Harlow Quinn pulled her" | | 2 | "She’d been tracking Tomás Herrera" | | 3 | "The boy they found in" | | 4 | "Quinn spotted him ahead, hunched" | | 5 | "She eased her grip on" | | 6 | "He looked up, and for" | | 7 | "The way he straightened, the" | | 8 | "She followed, her boots splashing" | | 9 | "The bar was still open," | | 10 | "Quinn slowed her pursuit as" | | 11 | "She watched through the window" | | 12 | "The bartender, Silas by name," | | 13 | "Quinn waited another minute, then" | | 14 | "The familiar smell of stale" | | 15 | "She moved with purpose toward" | | 16 | "Silas said without looking up" | | 17 | "His voice carried the weight" | | 18 | "Silas finally met her gaze," | | 19 | "Quinn slid a photograph across" |
| | ratio | 0.689 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 61 | | matches | (empty) | | ratio | 0 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 47 | | technicalSentenceCount | 10 | | matches | | 0 | "Detective Harlow Quinn pulled her coat tighter around her shoulders, the worn leather of her watch catching the occasional flash of lightning that split the sky…" | | 1 | "Then he was moving, slipping around the corner with the kind of agility that told her he’d been running long enough to know these streets like the back of his h…" | | 2 | "She followed, her boots splashing through puddles that reflected the green glow of the Raven’s Nest sign above them." | | 3 | "For a moment, Quinn thought she saw the green of his eyes flicker—just for an instant—into something darker, something that didn’t belong in this world." | | 4 | "And indeed, as if responding to some unspoken command, the sign flickered once, twice, before settling into a steady pulse of emerald light." | | 5 | "She’d caught wind of whispers, rumors about a hidden market that moved with the phases of the moon, about supernatural dealers who traded in things that defied …" | | 6 | "Behind her, Silas was speaking rapidly, his words carrying an edge that made her turn." | | 7 | "Instead, she pulled out her phone, snapping a photo of the hidden doorway before slipping the device back into her pocket." | | 8 | "Three years ago, DS Morris had died chasing shadows, investigating a case that reeked of the impossible." | | 9 | "The passage stretched into darkness, punctuated only by the occasional flicker of light that seemed to dance just beyond sight." |
| |
| 0.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 9 | | uselessAdditionCount | 3 | | matches | | 0 | "Quinn stood, her chair scraping against the floorboards" | | 1 | "Silas insisted, but his voice wavered" | | 2 | "Silas said again, his voice quieter now, almost pleading" |
| |
| 63.04% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 5 | | fancyCount | 2 | | fancyTags | | 0 | "she pressed (press)" | | 1 | "Silas insisted (insist)" |
| | dialogueSentences | 23 | | tagDensity | 0.217 | | leniency | 0.435 | | rawRatio | 0.4 | | effectiveRatio | 0.174 | |