| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 10 | | adverbTagCount | 1 | | adverbTags | | 0 | "His file had only [only]" |
| | dialogueSentences | 16 | | tagDensity | 0.625 | | leniency | 1 | | rawRatio | 0.1 | | effectiveRatio | 0.1 | |
| 100.00% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1577 | | totalAiIsmAdverbs | 0 | | found | (empty) | | highlights | (empty) | |
| 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) | |
| 39.76% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1577 | | totalAiIsms | 19 | | found | | | highlights | | 0 | "shattered" | | 1 | "jaw clenched" | | 2 | "etched" | | 3 | "pulse" | | 4 | "flicked" | | 5 | "scanned" | | 6 | "calculated" | | 7 | "absolutely" | | 8 | "anticipation" | | 9 | "flickered" | | 10 | "echoed" | | 11 | "chill" | | 12 | "spectral" | | 13 | "echoes" | | 14 | "gloom" | | 15 | "tension" | | 16 | "silence" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 1 | | maxInWindow | 1 | | found | | 0 | | label | "jaw/fists clenched" | | count | 1 |
|
| | highlights | | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 0 | | narrationSentences | 111 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 2 | | hedgeCount | 0 | | narrationSentences | 111 | | filterMatches | | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 118 | | 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 | 1539 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 5 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 33 | | wordCount | 1400 | | uniqueNames | 18 | | maxNameDensity | 0.86 | | worstName | "Quinn" | | maxWindowNameDensity | 2 | | worstWindowName | "Quinn" | | discoveredNames | | Harlow | 1 | | Quinn | 12 | | Dean | 1 | | Street | 3 | | Bateman | 1 | | Raven | 1 | | Nest | 1 | | Greek | 1 | | Family | 1 | | Recipes | 1 | | Curses | 1 | | Removed | 1 | | Gin | 1 | | Anticipation | 1 | | Polish | 1 | | Saint | 1 | | Christopher | 1 | | Ahead | 3 |
| | persons | | 0 | "Harlow" | | 1 | "Quinn" | | 2 | "Raven" | | 3 | "Gin" | | 4 | "Anticipation" | | 5 | "Saint" | | 6 | "Christopher" |
| | places | | 0 | "Dean" | | 1 | "Street" | | 2 | "Bateman" | | 3 | "Greek" |
| | globalScore | 1 | | windowScore | 1 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 93 | | glossingSentenceCount | 1 | | matches | | 0 | "as though weighing up what to offer for a slice of her unease" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1539 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 118 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 51 | | mean | 30.18 | | std | 20.58 | | cv | 0.682 | | sampleLengths | | 0 | 92 | | 1 | 63 | | 2 | 55 | | 3 | 50 | | 4 | 54 | | 5 | 50 | | 6 | 58 | | 7 | 20 | | 8 | 70 | | 9 | 41 | | 10 | 14 | | 11 | 4 | | 12 | 71 | | 13 | 31 | | 14 | 40 | | 15 | 42 | | 16 | 13 | | 17 | 16 | | 18 | 14 | | 19 | 10 | | 20 | 40 | | 21 | 32 | | 22 | 24 | | 23 | 22 | | 24 | 16 | | 25 | 30 | | 26 | 28 | | 27 | 7 | | 28 | 14 | | 29 | 56 | | 30 | 11 | | 31 | 43 | | 32 | 47 | | 33 | 40 | | 34 | 16 | | 35 | 50 | | 36 | 34 | | 37 | 47 | | 38 | 5 | | 39 | 35 | | 40 | 4 | | 41 | 10 | | 42 | 14 | | 43 | 18 | | 44 | 11 | | 45 | 8 | | 46 | 11 | | 47 | 22 | | 48 | 9 | | 49 | 14 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 111 | | matches | | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 252 | | matches | (empty) | |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 26 | | semicolonCount | 4 | | flaggedSentences | 27 | | totalSentences | 118 | | ratio | 0.229 | | matches | | 0 | "A bus rumbled past and made her glimpse herself in a puddle—a wet outline in bad trousers, with the city’s filth on her shoes and her purpose gritted between her teeth." | | 1 | "The suspect—a thin man, faster than she’d predicted—slipped under a scaffolding canopy." | | 2 | "Ahead, sudden laughter—no, shouts—spilled from the open door of The Raven’s Nest." | | 3 | "Onwards—less than half a block, then she glimpsed him again, running hard, coat flapping behind." | | 4 | "He leapt over a toppled shopping trolley—she hurdled it, breath rasping." | | 5 | "Then, as she passed a black door, something gleamed in rain among the grime: a staircase, slick and ancient, plunging down under a half-broken sign—PIE & EEL | Family Recipes." | | 6 | "Beneath the splash of her boots were hurried, smacking footfalls—he hadn’t gotten far." | | 7 | "He’d tossed something behind—she nearly stopped to check, but that would mean losing him." | | 8 | "Huddled knots of figures—some masked, some shrouded, some all-too-normal—bargained with fast, furtive hands." | | 9 | "Her suspect, that thin blue jacket, darted between a curtain of ratty rugs and a display case labelled\"Amulets—Curses Removed (No Refunds).\" Quinn stopped dead at the platform’s mouth—the Underground’s yellowed sign hanging over a booth that offered “Wormwood Gin (No Questions)”." | | 10 | "Blending in was hopeless; her haircut, her bearing, the tilt of her nose all marked her as foreign to this world." | | 11 | "Still, she scanned the crowd for blue jacket—there, cutting towards a filthy sign scrawled on a battered sandwich board: ‘Entries for Next Market, This Way — Token Only’." | | 12 | "She caught movement at the edge of her vision—a set of pale knuckles, gripping rough bone tokens." | | 13 | "Her mind calculated what she’d already learned—strange abductions, stories the brass in the station didn’t believe, people showing up half-mad with tales of monsters in tube tunnels." | | 14 | "She felt the worn badge in her pocket—absolutely useless here." | | 15 | "His file had only cryptic hints—two unsolved disappearances, found objects burnt to slag, a single word he’d scrawled on an interview room table: \"Veil.\"" | | 16 | "He hadn’t noticed her hesitation—yet." | | 17 | "He weighed her—watch, stance, crackle of silent command in her muscles." | | 18 | "The word hit her gut—had he guessed, had someone tipped him off?" | | 19 | "She pressed onwards, trailing through a maze of stalls where scabbed hands offered jars of something that moved and whispered, ashen faces bartered for locks of hair, and once—impossibly—a pair of empty red boots drifted five centimetres above cracked pavement." | | 20 | "Her focus had to narrow now—one man, blue coat, thinning hair, the back of his neck slick with sweat even in the chill." | | 21 | "They exchanged rapid words—inaudible, but his agitation showed in the twitch of his hands." | | 22 | "No visible weapon, no obvious way out—unless the tunnels ran deeper, which of course they must." | | 23 | "She almost lost him again; only the glimmer of his Saint Christopher medallion in the dim blue glow betrayed him as he turned, urgent, towards another, smaller archway choked with cobwebbed rope." | | 24 | "Echoes twisted in strange directions; somewhere music played on a tinny gramophone." | | 25 | "She interrupted, three slow steps forward; her boots swallowed the silence." | | 26 | "Distantly, vendors shouted, an alarm or a warning—Quinn’s heart gave an extra painful thud." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 633 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 14 | | adverbRatio | 0.022116903633491312 | | lyAdverbCount | 3 | | lyAdverbRatio | 0.004739336492890996 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 118 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 118 | | mean | 13.04 | | std | 8.01 | | cv | 0.614 | | sampleLengths | | 0 | 4 | | 1 | 11 | | 2 | 35 | | 3 | 11 | | 4 | 31 | | 5 | 7 | | 6 | 12 | | 7 | 18 | | 8 | 14 | | 9 | 2 | | 10 | 10 | | 11 | 12 | | 12 | 14 | | 13 | 8 | | 14 | 6 | | 15 | 15 | | 16 | 18 | | 17 | 21 | | 18 | 11 | | 19 | 30 | | 20 | 5 | | 21 | 8 | | 22 | 11 | | 23 | 14 | | 24 | 19 | | 25 | 4 | | 26 | 13 | | 27 | 10 | | 28 | 14 | | 29 | 8 | | 30 | 15 | | 31 | 11 | | 32 | 14 | | 33 | 6 | | 34 | 13 | | 35 | 13 | | 36 | 22 | | 37 | 13 | | 38 | 9 | | 39 | 41 | | 40 | 14 | | 41 | 4 | | 42 | 22 | | 43 | 21 | | 44 | 28 | | 45 | 4 | | 46 | 7 | | 47 | 3 | | 48 | 17 | | 49 | 17 |
| |
| 49.44% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 5 | | diversityRatio | 0.3220338983050847 | | totalSentences | 118 | | uniqueOpeners | 38 | |
| 93.46% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 3 | | totalSentences | 107 | | matches | | 0 | "Then, as she passed a" | | 1 | "Then, with a grunt, he" | | 2 | "Distantly, vendors shouted, an alarm" |
| | ratio | 0.028 | |
| 33.08% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 50 | | totalSentences | 107 | | matches | | 0 | "Her torch beam snatched brief" | | 1 | "She chased him, lungs burning," | | 2 | "She gained on him near" | | 3 | "She pushed through it, rain" | | 4 | "She refused to let him" | | 5 | "She skidded past the entrance," | | 6 | "She followed into an alley" | | 7 | "Her right shoe slid in" | | 8 | "He leapt over a toppled" | | 9 | "Her suspect dived down it." | | 10 | "She landed in a lightless" | | 11 | "Her torch played over mossy" | | 12 | "She passed a locked maintenance" | | 13 | "He’d tossed something behind—she nearly" | | 14 | "She moved forward, following the" | | 15 | "Her suspect, that thin blue" | | 16 | "She moved after him." | | 17 | "She caught movement at the" | | 18 | "They changed hands as fast" | | 19 | "Her mind calculated what she’d" |
| | ratio | 0.467 | |
| 44.11% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 89 | | totalSentences | 107 | | matches | | 0 | "Boots slapped through water." | | 1 | "Her torch beam snatched brief" | | 2 | "She chased him, lungs burning," | | 3 | "A bus rumbled past and" | | 4 | "She gained on him near" | | 5 | "The suspect—a thin man, faster" | | 6 | "She pushed through it, rain" | | 7 | "The radio hissed at her" | | 8 | "She refused to let him" | | 9 | "Neon bled green across the" | | 10 | "She skidded past the entrance," | | 11 | "She followed into an alley" | | 12 | "Her right shoe slid in" | | 13 | "He leapt over a toppled" | | 14 | "Her suspect dived down it." | | 15 | "Quinn’s body moved before doubt" | | 16 | "She landed in a lightless" | | 17 | "Her torch played over mossy" | | 18 | "The air grew colder." | | 19 | "She passed a locked maintenance" |
| | ratio | 0.832 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 107 | | matches | (empty) | | ratio | 0 | |
| 100.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 67 | | technicalSentenceCount | 4 | | matches | | 0 | "She pushed through it, rain drumming on canvas inches above her head, her flashlight darting over slick brickwork." | | 1 | "Quinn slowed, pressing herself against damp brick, breathing through her nose, peering around the corner." | | 2 | "Stalls lined the platform edge: someone sold bird skulls threaded on twine, another displayed books with titles that shifted when she blinked." | | 3 | "She pressed onwards, trailing through a maze of stalls where scabbed hands offered jars of something that moved and whispered, ashen faces bartered for locks of…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 10 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 87.50% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 3 | | fancyCount | 1 | | fancyTags | | | dialogueSentences | 16 | | tagDensity | 0.188 | | leniency | 0.375 | | rawRatio | 0.333 | | effectiveRatio | 0.125 | |