| 66.67% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 14 | | adverbTagCount | 2 | | adverbTags | | 0 | "Eva corrected quietly [quietly]" | | 1 | "Quinn said quietly [quietly]" |
| | dialogueSentences | 30 | | tagDensity | 0.467 | | leniency | 0.933 | | rawRatio | 0.143 | | effectiveRatio | 0.133 | |
| 88.53% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1743 | | totalAiIsmAdverbs | 4 | | found | | | highlights | | 0 | "softly" | | 1 | "slowly" | | 2 | "slightly" | | 3 | "precisely" |
| |
| 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) | |
| 65.58% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1743 | | totalAiIsms | 12 | | found | | | highlights | | 0 | "flickered" | | 1 | "echoed" | | 2 | "glinting" | | 3 | "etched" | | 4 | "quivered" | | 5 | "could feel" | | 6 | "weight" | | 7 | "navigating" | | 8 | "cataloged" | | 9 | "scanning" |
| |
| 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 | 88 | | matches | (empty) | |
| 94.16% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 2 | | hedgeCount | 1 | | narrationSentences | 88 | | filterMatches | | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 104 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 50 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1731 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 19 | | unquotedAttributions | 0 | | matches | (empty) | |
| 33.33% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 66 | | wordCount | 1305 | | uniqueNames | 18 | | maxNameDensity | 2.15 | | worstName | "Quinn" | | maxWindowNameDensity | 4 | | worstWindowName | "Quinn" | | discoveredNames | | Detective | 1 | | Harlow | 1 | | Quinn | 28 | | Camden | 1 | | Tube | 1 | | Eva | 15 | | Kowalski | 1 | | Oxford | 2 | | Ancient | 1 | | History | 1 | | Aurora | 1 | | British | 1 | | Museum | 1 | | London | 1 | | Morris | 4 | | Veil | 3 | | Compass | 2 | | Market | 1 |
| | persons | | 0 | "Harlow" | | 1 | "Quinn" | | 2 | "Camden" | | 3 | "Eva" | | 4 | "Kowalski" | | 5 | "Aurora" | | 6 | "Museum" | | 7 | "Morris" | | 8 | "Market" |
| | places | | 0 | "Oxford" | | 1 | "Ancient" | | 2 | "British" | | 3 | "London" | | 4 | "Veil" | | 5 | "Compass" |
| | globalScore | 0.427 | | windowScore | 0.333 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 63 | | glossingSentenceCount | 1 | | matches | | 0 | "seemed older in the wrong light" |
| |
| 0.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 7 | | per1kWords | 4.044 | | wordCount | 1731 | | matches | | 0 | "not a token, but a shard, porous" | | 1 | "not a draft, but a vibration wrong enough to make her teeth ache" | | 2 | "not wind, but awareness, hunger, old patience" | | 3 | "not a victim of random violence but a pointer, a breadcrumb left for someone who could read sigi" | | 4 | "not as evidence to be cataloged, but as a tool" | | 5 | "not only goods but access to truths" | | 6 | "not as officer and civilian, but as colleagues who had found, in the discrepancies of a crime" |
| |
| 38.46% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 4 | | totalSentences | 104 | | matches | | 0 | "learning that the" | | 1 | "knew that the" | | 2 | "understood that the" | | 3 | "knew that the" |
| |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 37 | | mean | 46.78 | | std | 24.19 | | cv | 0.517 | | sampleLengths | | 0 | 97 | | 1 | 64 | | 2 | 77 | | 3 | 6 | | 4 | 108 | | 5 | 43 | | 6 | 72 | | 7 | 61 | | 8 | 19 | | 9 | 56 | | 10 | 70 | | 11 | 51 | | 12 | 74 | | 13 | 17 | | 14 | 47 | | 15 | 9 | | 16 | 11 | | 17 | 47 | | 18 | 43 | | 19 | 55 | | 20 | 40 | | 21 | 26 | | 22 | 47 | | 23 | 33 | | 24 | 58 | | 25 | 65 | | 26 | 16 | | 27 | 12 | | 28 | 51 | | 29 | 69 | | 30 | 23 | | 31 | 58 | | 32 | 25 | | 33 | 37 | | 34 | 67 | | 35 | 49 | | 36 | 28 |
| |
| 73.37% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 8 | | totalSentences | 88 | | matches | | 0 | "been turned" | | 1 | "been arranged" | | 2 | "was involved" | | 3 | "were cupped" | | 4 | "were sealed" | | 5 | "been moved" | | 6 | "was etched" | | 7 | "was meant" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 222 | | matches | | 0 | "was lying" | | 1 | "was beginning" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 13 | | semicolonCount | 0 | | flaggedSentences | 11 | | totalSentences | 104 | | ratio | 0.106 | | matches | | 0 | "The air smelled of copper, old limestone, and something mineral, wrong—like wet stone that had been turned inside out." | | 1 | "She suspected the clique—an organized network of supernatural criminality that operated in the margins of police jurisdiction—was involved in more than black-market trade." | | 2 | "The dead man’s hands were cupped, fingers slightly curled, and in the left palm lay a fragment of white bone—not a token, but a shard, porous and crudely carved with the shape of an eye." | | 3 | "Moisture was too high—condensation rising from below, not falling from above." | | 4 | "The face was etched with protective sigils—spirals, angular wards, symbols that Quinn recognized from Morris’s hidden files, from notes she had never fully closed." | | 5 | "Behind the plaster, she could feel it now—not a draft, but a vibration wrong enough to make her teeth ache." | | 6 | "\"The blood is too dark,\" Quinn continued, measuring distances with her eyes—the distance to the pillar, to the stairwell, to the hidden wall." | | 7 | "Behind it, something moved—not wind, but awareness, hunger, old patience." | | 8 | "She tucked the Veil Compass into her pocket—not as evidence to be cataloged, but as a tool." | | 9 | "\"I have one,\" Quinn lied, and though it was not strictly true, she knew that the market was already open—already bleeding—because of the death, and that doors sometimes open for those who have already crossed the threshold." | | 10 | "Together, the detective with the worn leather watch and the occult researcher with the worn leather satchel approached the hidden door—not as officer and civilian, but as colleagues who had found, in the discrepancies of a crime scene, the beginning of a truth that no conventional investigation could hold." |
| |
| 94.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1323 | | adjectiveStacks | 1 | | stackExamples | | 0 | "thin, wrong, hollow behind it" |
| | adverbCount | 52 | | adverbRatio | 0.039304610733182165 | | lyAdverbCount | 22 | | lyAdverbRatio | 0.016628873771730914 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 104 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 104 | | mean | 16.64 | | std | 11.55 | | cv | 0.694 | | sampleLengths | | 0 | 38 | | 1 | 38 | | 2 | 21 | | 3 | 12 | | 4 | 16 | | 5 | 19 | | 6 | 17 | | 7 | 14 | | 8 | 22 | | 9 | 14 | | 10 | 16 | | 11 | 11 | | 12 | 6 | | 13 | 2 | | 14 | 23 | | 15 | 32 | | 16 | 27 | | 17 | 24 | | 18 | 13 | | 19 | 18 | | 20 | 12 | | 21 | 3 | | 22 | 23 | | 23 | 18 | | 24 | 5 | | 25 | 9 | | 26 | 14 | | 27 | 5 | | 28 | 35 | | 29 | 7 | | 30 | 14 | | 31 | 9 | | 32 | 10 | | 33 | 8 | | 34 | 48 | | 35 | 6 | | 36 | 22 | | 37 | 30 | | 38 | 7 | | 39 | 5 | | 40 | 4 | | 41 | 11 | | 42 | 18 | | 43 | 18 | | 44 | 2 | | 45 | 14 | | 46 | 16 | | 47 | 24 | | 48 | 6 | | 49 | 12 |
| |
| 36.54% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 14 | | diversityRatio | 0.23076923076923078 | | totalSentences | 104 | | uniqueOpeners | 24 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 78 | | matches | (empty) | | ratio | 0 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 21 | | totalSentences | 78 | | matches | | 0 | "She was five feet nine" | | 1 | "She had curly red hair" | | 2 | "Her left hand was already" | | 3 | "She wore no police uniform," | | 4 | "Her voice was precise, the" | | 5 | "She suspected the clique—an organized" | | 6 | "She was not a detective." | | 7 | "She was not a colleague" | | 8 | "It was cold, ancient, and" | | 9 | "She had lost her partner," | | 10 | "She was here for evidence." | | 11 | "She examined the floor." | | 12 | "It pointed downward, trembling toward" | | 13 | "She pressed her palm flat." | | 14 | "She looked at the Veil" | | 15 | "It was meant to lead." | | 16 | "She tucked the Veil Compass" | | 17 | "She did not call for" | | 18 | "She did not wait for" | | 19 | "She had lost DS Morris" |
| | ratio | 0.269 | |
| 24.10% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 68 | | totalSentences | 78 | | matches | | 0 | "The damp in the abandoned" | | 1 | "She was five feet nine" | | 2 | "The ticket hall was a" | | 3 | "Emergency lamps flickered overhead, casting" | | 4 | "The air smelled of copper," | | 5 | "Quinn’s boots echoed in the" | | 6 | "A body lay twisted against" | | 7 | "The dead man was middle-aged," | | 8 | "Quinn circled him slowly, her" | | 9 | "The blood was too dark," | | 10 | "She had curly red hair" | | 11 | "Her left hand was already" | | 12 | "She wore no police uniform," | | 13 | "Her voice was precise, the" | | 14 | "Quinn’s jaw tightened." | | 15 | "She suspected the clique—an organized" | | 16 | "She was not a detective." | | 17 | "She was not a colleague" | | 18 | "Quinn knelt beside the corpse." | | 19 | "The dead man’s hands were" |
| | ratio | 0.872 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 78 | | matches | (empty) | | ratio | 0 | |
| 0.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 51 | | technicalSentenceCount | 14 | | matches | | 0 | "The damp in the abandoned station breathed like a mouth, and Detective Harlow Quinn stepped inside with the military precision of a woman who had spent eighteen…" | | 1 | "At forty-one, with closely cropped salt-and-pepper hair, a sharp jaw, and brown eyes that had seen too many explanations fail, she moved through Camden’s disuse…" | | 2 | "Emergency lamps flickered overhead, casting long amber shadows across the curved stairwell that descended into blackness." | | 3 | "The air smelled of copper, old limestone, and something mineral, wrong—like wet stone that had been turned inside out." | | 4 | "The dead man was middle-aged, unidentified, positioned with his arms open, palms upward, as though he had been arranged rather than fallen." | | 5 | "She suspected the clique—an organized network of supernatural criminality that operated in the margins of police jurisdiction—was involved in more than black-ma…" | | 6 | "She had lost her partner, DS Morris, three years ago under unexplained circumstances that had supernatural origins she still didn’t fully understand." | | 7 | "The files were sealed, the explanation absent, and every time she found a sigil that matched Morris’s old notes, she felt the absence like a wire tightening in …" | | 8 | "The casing had a patina of verdigris, a greenish corrosion that spoke of age and neglect." | | 9 | "The needle quivered, spinning once, twice, then stabilizing at an angle that intersected with the stairwell wall." | | 10 | "She had lost DS Morris to the space between official reports and supernatural origins, and she had spent three years refusing to become a detective who pretende…" | | 11 | "Quinn placed her hand against the plaster wall again, feeling the cold draft of the hidden rift, feeling the needle’s direction, feeling the presence of a marke…" | | 12 | "Together, the detective with the worn leather watch and the occult researcher with the worn leather satchel approached the hidden door—not as officer and civili…" | | 13 | "Quinn stepped first, her military bearing precise, her brown eyes scanning the darkness beyond the wall, where the Veil Market waited, and where the evidence fi…" |
| |
| 89.29% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 14 | | uselessAdditionCount | 1 | | matches | | 0 | "Quinn said, not looking up" |
| |
| 16.67% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 13 | | fancyCount | 4 | | fancyTags | | 0 | "Eva corrected quietly (correct)" | | 1 | "Quinn interrupted (interrupt)" | | 2 | "Quinn continued (continue)" | | 3 | "Quinn lied (lie)" |
| | dialogueSentences | 30 | | tagDensity | 0.433 | | leniency | 0.867 | | rawRatio | 0.308 | | effectiveRatio | 0.267 | |