| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 16 | | adverbTagCount | 2 | | adverbTags | | 0 | "She moved around [around]" | | 1 | "she said finally [finally]" |
| | dialogueSentences | 50 | | tagDensity | 0.32 | | leniency | 0.64 | | rawRatio | 0.125 | | effectiveRatio | 0.08 | |
| 86.06% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1793 | | totalAiIsmAdverbs | 5 | | found | | 0 | | | 1 | | | 2 | | adverb | "barely above a whisper" | | count | 1 |
| | 3 | | | 4 | |
| | highlights | | 0 | "slightly" | | 1 | "lazily" | | 2 | "barely above a whisper" | | 3 | "carefully" | | 4 | "very" |
| |
| 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) | |
| 66.54% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1793 | | totalAiIsms | 12 | | found | | | highlights | | 0 | "standard" | | 1 | "shattered" | | 2 | "etched" | | 3 | "magnetic" | | 4 | "velvet" | | 5 | "furrowed" | | 6 | "familiar" | | 7 | "whisper" | | 8 | "intensity" | | 9 | "flickered" | | 10 | "depths" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 0 | | maxInWindow | 0 | | found | (empty) | | highlights | (empty) | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 103 | | matches | (empty) | |
| 59.64% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 2 | | hedgeCount | 4 | | narrationSentences | 103 | | filterMatches | | | hedgeMatches | | 0 | "seemed to" | | 1 | "appeared to" | | 2 | "began to" |
| |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 137 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 45 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1771 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 15 | | unquotedAttributions | 0 | | matches | (empty) | |
| 50.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 64 | | wordCount | 1291 | | uniqueNames | 19 | | maxNameDensity | 1.78 | | worstName | "Quinn" | | maxWindowNameDensity | 3.5 | | worstWindowName | "Quinn" | | discoveredNames | | Detective | 2 | | Harlow | 2 | | Quinn | 23 | | Veil | 4 | | Market | 2 | | Tube | 1 | | Morris | 4 | | Metropolitan | 1 | | Police | 1 | | Glocks | 1 | | Eva | 10 | | Kowalski | 1 | | Ripper | 1 | | Solomon | 2 | | Vance | 2 | | Compass | 2 | | Transport | 1 | | London | 1 | | Three | 3 |
| | persons | | 0 | "Harlow" | | 1 | "Quinn" | | 2 | "Market" | | 3 | "Morris" | | 4 | "Glocks" | | 5 | "Eva" | | 6 | "Kowalski" | | 7 | "Ripper" | | 8 | "Solomon" | | 9 | "Vance" |
| | places | | 0 | "Detective" | | 1 | "Transport" | | 2 | "London" |
| | globalScore | 0.609 | | windowScore | 0.5 | |
| 51.32% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 76 | | glossingSentenceCount | 3 | | matches | | 0 | "blades that seemed to drink the shadows, books bound in materials Quinn chose not to identify" | | 1 | "as if reaching for something that wasn't there anymore" | | 2 | "lenses that seemed to show different images depending on the angle" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1771 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 137 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 62 | | mean | 28.56 | | std | 22.47 | | cv | 0.787 | | sampleLengths | | 0 | 58 | | 1 | 36 | | 2 | 75 | | 3 | 18 | | 4 | 45 | | 5 | 60 | | 6 | 38 | | 7 | 11 | | 8 | 7 | | 9 | 73 | | 10 | 13 | | 11 | 7 | | 12 | 92 | | 13 | 37 | | 14 | 12 | | 15 | 65 | | 16 | 2 | | 17 | 2 | | 18 | 32 | | 19 | 41 | | 20 | 16 | | 21 | 1 | | 22 | 1 | | 23 | 65 | | 24 | 39 | | 25 | 8 | | 26 | 49 | | 27 | 11 | | 28 | 47 | | 29 | 9 | | 30 | 4 | | 31 | 63 | | 32 | 16 | | 33 | 67 | | 34 | 1 | | 35 | 29 | | 36 | 31 | | 37 | 13 | | 38 | 44 | | 39 | 4 | | 40 | 28 | | 41 | 13 | | 42 | 58 | | 43 | 34 | | 44 | 5 | | 45 | 11 | | 46 | 46 | | 47 | 33 | | 48 | 40 | | 49 | 29 |
| |
| 78.01% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 8 | | totalSentences | 103 | | matches | | 0 | "been shattered" | | 1 | "was etched" | | 2 | "were untouched" | | 3 | "been knocked" | | 4 | "been sealed" | | 5 | "been killed" | | 6 | "been hollowed" | | 7 | "been sealed" |
| |
| 49.85% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 5 | | totalVerbs | 222 | | matches | | 0 | "was already cataloging" | | 1 | "was standing" | | 2 | "was only beginning" | | 3 | "was acknowledging" | | 4 | "was coming" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 18 | | semicolonCount | 0 | | flaggedSentences | 15 | | totalSentences | 137 | | ratio | 0.109 | | matches | | 0 | "She'd taken it off a suspect three months ago—a fence who'd died of a heart attack in holding before she could question him properly." | | 1 | "Vendors hawked wares that defied explanation—jars of something that moved, blades that seemed to drink the shadows, books bound in materials Quinn chose not to identify." | | 2 | "The crime scene tape—actual Metropolitan Police tape, incongruous against the supernatural backdrop—cordoned off a stall near the platform's edge." | | 3 | "They had no irises—just endless white, like someone had erased the color." | | 4 | "One piece caught her eye—a compass, its casing showing a patina of verdigris that spoke of decades, maybe centuries, of existence." | | 5 | "Not the pattern of a fight—too deliberate, too geometric." | | 6 | "The rest still held their treasures—more compasses, rings that glowed faintly, a pair of spectacles with lenses that seemed to show different images depending on the angle." | | 7 | "They knew her reputation—eighteen years of decorations, cases closed that should have stayed open, a solve rate that bordered on supernatural." | | 8 | "She pulled a small notebook from her satchel—hand-bound, Quinn noticed, with pages that looked older than the leather cover." | | 9 | "Quinn felt the familiar tightening in her chest—the sensation she'd learned to trust, the one that told her she was standing at the edge of something larger than it appeared." | | 10 | "Quinn had read the files—the real files, the ones that had been sealed and buried and occasionally leaked to conspiracy theorists who had no idea how close to the truth they stumbled." | | 11 | "Now it pointed steadily toward the tunnel at the far end of the platform—the tunnel that, according to Transport for London records, had been sealed with concrete in 1943 after a bombing raid." | | 12 | "The bone token in her pocket hummed against her thigh—a sensation she'd never felt before, as if the market itself was acknowledging her presence." | | 13 | "Whatever had killed Solomon Vance, whatever had taken those compasses, whatever was coming in six months—it had made a mistake." | | 14 | "The floating lights of the Veil Market flickered, and somewhere in the depths of the sealed tunnel, something that might have been wind—but wasn't—began to whisper." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1311 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 41 | | adverbRatio | 0.031273836765827616 | | lyAdverbCount | 12 | | lyAdverbRatio | 0.009153318077803204 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 137 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 137 | | mean | 12.93 | | std | 9.17 | | cv | 0.71 | | sampleLengths | | 0 | 22 | | 1 | 24 | | 2 | 8 | | 3 | 4 | | 4 | 16 | | 5 | 20 | | 6 | 28 | | 7 | 26 | | 8 | 21 | | 9 | 10 | | 10 | 8 | | 11 | 19 | | 12 | 13 | | 13 | 3 | | 14 | 10 | | 15 | 24 | | 16 | 17 | | 17 | 12 | | 18 | 7 | | 19 | 24 | | 20 | 14 | | 21 | 11 | | 22 | 3 | | 23 | 4 | | 24 | 19 | | 25 | 29 | | 26 | 13 | | 27 | 12 | | 28 | 2 | | 29 | 3 | | 30 | 8 | | 31 | 7 | | 32 | 12 | | 33 | 11 | | 34 | 23 | | 35 | 2 | | 36 | 21 | | 37 | 23 | | 38 | 8 | | 39 | 18 | | 40 | 11 | | 41 | 8 | | 42 | 4 | | 43 | 39 | | 44 | 26 | | 45 | 2 | | 46 | 2 | | 47 | 7 | | 48 | 9 | | 49 | 16 |
| |
| 53.53% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 15 | | diversityRatio | 0.38686131386861317 | | totalSentences | 137 | | uniqueOpeners | 53 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 97 | | matches | (empty) | | ratio | 0 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 24 | | totalSentences | 97 | | matches | | 0 | "She'd taken it off a" | | 1 | "She descended the rusted maintenance" | | 2 | "She doubted standard-issue Glocks would" | | 3 | "She clutched her worn leather" | | 4 | "She was already cataloging." | | 5 | "His eyes were open, staring" | | 6 | "They had no irises—just endless" | | 7 | "She'd tucked her hair behind" | | 8 | "She surveyed the broader scene," | | 9 | "It lay open on the" | | 10 | "She moved around the body," | | 11 | "She'd learned to carry them" | | 12 | "They knew her reputation—eighteen years" | | 13 | "They didn't know about Morris." | | 14 | "she said finally" | | 15 | "She pulled a small notebook" | | 16 | "They'd been hollowed." | | 17 | "It had stopped spinning." | | 18 | "She turned to face the" | | 19 | "Her brown eyes swept across" |
| | ratio | 0.247 | |
| 100.00% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 68 | | totalSentences | 97 | | matches | | 0 | "The bone token felt heavier" | | 1 | "She'd taken it off a" | | 2 | "The medical examiner had called" | | 3 | "Quinn had her doubts." | | 4 | "She descended the rusted maintenance" | | 5 | "The abandoned platform materialized below" | | 6 | "The Veil Market sprawled across" | | 7 | "Vendors hawked wares that defied" | | 8 | "The air smelled of incense" | | 9 | "The crime scene tape—actual Metropolitan" | | 10 | "She doubted standard-issue Glocks would" | | 11 | "The voice came from behind" | | 12 | "Eva Kowalski emerged, her curly" | | 13 | "She clutched her worn leather" | | 14 | "Quinn ducked under the tape," | | 15 | "Eva gestured at the scene" | | 16 | "Quinn didn't answer." | | 17 | "She was already cataloging." | | 18 | "The victim lay sprawled across" | | 19 | "His eyes were open, staring" |
| | ratio | 0.701 | |
| 51.55% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 1 | | totalSentences | 97 | | matches | | 0 | "Now it pointed steadily toward" |
| | ratio | 0.01 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 49 | | technicalSentenceCount | 14 | | matches | | 0 | "The air smelled of incense and copper and something older, something that made the hair on her arms stand at attention." | | 1 | "The victim lay sprawled across a display table, arms outstretched as if reaching for something that wasn't there anymore." | | 2 | "Male, early forties, dressed in clothes that might have been expensive once but now bore the peculiar wear of someone who spent too much time in places like thi…" | | 3 | "One piece caught her eye—a compass, its casing showing a patina of verdigris that spoke of decades, maybe centuries, of existence." | | 4 | "And the other stalls nearby were untouched, their vendors watching from safe distances with expressions that ranged from curious to terrified." | | 5 | "The rest still held their treasures—more compasses, rings that glowed faintly, a pair of spectacles with lenses that seemed to show different images depending o…" | | 6 | "They knew her reputation—eighteen years of decorations, cases closed that should have stayed open, a solve rate that bordered on supernatural." | | 7 | "She pulled a small notebook from her satchel—hand-bound, Quinn noticed, with pages that looked older than the leather cover." | | 8 | "Quinn had read the files—the real files, the ones that had been sealed and buried and occasionally leaked to conspiracy theorists who had no idea how close to t…" | | 9 | "Now it pointed steadily toward the tunnel at the far end of the platform—the tunnel that, according to Transport for London records, had been sealed with concre…" | | 10 | "She turned to face the watching vendors, the curious onlookers, the creatures and beings that defied classification." | | 11 | "Her brown eyes swept across them with the steady intensity that had made hardened criminals confess." | | 12 | "The bone token in her pocket hummed against her thigh—a sensation she'd never felt before, as if the market itself was acknowledging her presence." | | 13 | "The floating lights of the Veil Market flickered, and somewhere in the depths of the sealed tunnel, something that might have been wind—but wasn't—began to whis…" |
| |
| 62.50% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 16 | | uselessAdditionCount | 2 | | matches | | 0 | "the constables approached, his voice barely above a whisper" | | 1 | "she announced, her voice carrying across the impossible market" |
| |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 4 | | fancyCount | 1 | | fancyTags | | 0 | "she announced (announce)" |
| | dialogueSentences | 50 | | tagDensity | 0.08 | | leniency | 0.16 | | rawRatio | 0.25 | | effectiveRatio | 0.04 | |