| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 19 | | adverbTagCount | 0 | | adverbTags | (empty) | | dialogueSentences | 43 | | tagDensity | 0.442 | | leniency | 0.884 | | rawRatio | 0 | | effectiveRatio | 0 | |
| 92.30% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1299 | | totalAiIsmAdverbs | 2 | | found | | 0 | | | 1 | | adverb | "deliberately" | | count | 1 |
|
| | highlights | | |
| 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) | |
| 88.45% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1299 | | totalAiIsms | 3 | | found | | | highlights | | 0 | "traced" | | 1 | "etched" | | 2 | "wavered" |
| |
| 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 | 60 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 0 | | narrationSentences | 60 | | filterMatches | (empty) | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 84 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | repeatedSegmentCount | 0 | | maxSentenceWordsSeen | 79 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1305 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 9 | | unquotedAttributions | 0 | | matches | (empty) | |
| 83.81% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 24 | | wordCount | 831 | | uniqueNames | 6 | | maxNameDensity | 1.32 | | worstName | "Quinn" | | maxWindowNameDensity | 2 | | worstWindowName | "Quinn" | | discoveredNames | | Camden | 1 | | North | 1 | | Quinn | 11 | | Ade | 1 | | Balogun | 9 | | Hendon | 1 |
| | persons | | | places | | | globalScore | 0.838 | | windowScore | 1 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 41 | | glossingSentenceCount | 0 | | matches | (empty) | |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 1 | | per1kWords | 0.766 | | wordCount | 1305 | | matches | | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 84 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 38 | | mean | 34.34 | | std | 30.16 | | cv | 0.878 | | sampleLengths | | 0 | 33 | | 1 | 37 | | 2 | 56 | | 3 | 1 | | 4 | 19 | | 5 | 24 | | 6 | 4 | | 7 | 83 | | 8 | 3 | | 9 | 25 | | 10 | 75 | | 11 | 92 | | 12 | 20 | | 13 | 6 | | 14 | 85 | | 15 | 2 | | 16 | 1 | | 17 | 57 | | 18 | 17 | | 19 | 102 | | 20 | 4 | | 21 | 7 | | 22 | 29 | | 23 | 79 | | 24 | 1 | | 25 | 33 | | 26 | 6 | | 27 | 29 | | 28 | 55 | | 29 | 5 | | 30 | 87 | | 31 | 12 | | 32 | 55 | | 33 | 23 | | 34 | 59 | | 35 | 31 | | 36 | 7 | | 37 | 41 |
| |
| 99.42% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 60 | | matches | | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 0 | | totalVerbs | 133 | | matches | (empty) | |
| 40.82% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 2 | | semicolonCount | 1 | | flaggedSentences | 3 | | totalSentences | 84 | | ratio | 0.036 | | matches | | 0 | "She counted the steps out of habit, lost the count at ninety-something when her torch caught something on the wall — a chalk mark, three curved strokes and a dot, drawn at shoulder height." | | 1 | "Around him the dust described a clean circle roughly ten feet across, and inside that circle there was nothing at all — no scuff, no drag, no footprint but the ones the response team had trodden in from the stairs, which Quinn could read as easily as a signature." | | 2 | "\"Two hundred steps of wet brick dust and standing water and his soles are grey to the welt but the uppers are polished. His trouser cuffs are clean. Mine aren't.\" She lifted a foot; the hem showed a tidemark of rust-coloured damp." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 834 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 21 | | adverbRatio | 0.025179856115107913 | | lyAdverbCount | 5 | | lyAdverbRatio | 0.005995203836930456 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 84 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 84 | | mean | 15.54 | | std | 15.12 | | cv | 0.973 | | sampleLengths | | 0 | 33 | | 1 | 15 | | 2 | 22 | | 3 | 7 | | 4 | 23 | | 5 | 7 | | 6 | 9 | | 7 | 10 | | 8 | 1 | | 9 | 16 | | 10 | 3 | | 11 | 20 | | 12 | 4 | | 13 | 4 | | 14 | 29 | | 15 | 13 | | 16 | 34 | | 17 | 5 | | 18 | 2 | | 19 | 3 | | 20 | 14 | | 21 | 11 | | 22 | 24 | | 23 | 15 | | 24 | 8 | | 25 | 28 | | 26 | 29 | | 27 | 1 | | 28 | 4 | | 29 | 9 | | 30 | 49 | | 31 | 20 | | 32 | 6 | | 33 | 5 | | 34 | 80 | | 35 | 2 | | 36 | 1 | | 37 | 7 | | 38 | 42 | | 39 | 8 | | 40 | 9 | | 41 | 8 | | 42 | 38 | | 43 | 36 | | 44 | 28 | | 45 | 4 | | 46 | 7 | | 47 | 15 | | 48 | 6 | | 49 | 6 |
| |
| 96.43% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 3 | | diversityRatio | 0.6071428571428571 | | totalSentences | 84 | | uniqueOpeners | 51 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 50 | | matches | (empty) | | ratio | 0 | |
| 68.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 19 | | totalSentences | 50 | | matches | | 0 | "She turned it over with" | | 1 | "She stood and wiped her" | | 2 | "He hesitated in a way" | | 3 | "She counted the steps out" | | 4 | "She held the light at" | | 5 | "His face had gone the" | | 6 | "She stood at the edge" | | 7 | "She lifted a foot; the" | | 8 | "She crouched at the circle's" | | 9 | "He was quiet for a" | | 10 | "She stood, knees complaining" | | 11 | "She waited while he gloved" | | 12 | "He came out with two" | | 13 | "It sat in Balogun's palm" | | 14 | "It swung slowly, deliberately, without" | | 15 | "It came around, hesitated, and" | | 16 | "She turned all the way" | | 17 | "It never wavered." | | 18 | "She heard Balogun stop breathing" |
| | ratio | 0.38 | |
| 70.00% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 39 | | totalSentences | 50 | | matches | | 0 | "The service door at the" | | 1 | "The lock lay in the" | | 2 | "She turned it over with" | | 3 | "She stood and wiped her" | | 4 | "He hesitated in a way" | | 5 | "The stairwell smelled of cold" | | 6 | "Quinn felt the cold reach" | | 7 | "She counted the steps out" | | 8 | "She held the light at" | | 9 | "The photographer's flash went off" | | 10 | "A uniformed constable stood at" | | 11 | "The man lay in the" | | 12 | "His face had gone the" | | 13 | "She stood at the edge" | | 14 | "Balogun flipped his notebook" | | 15 | "Quinn pointed with her chin" | | 16 | "She lifted a foot; the" | | 17 | "Balogun's torch beam slid across" | | 18 | "She crouched at the circle's" | | 19 | "Balogun crouched beside her and" |
| | ratio | 0.78 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 50 | | matches | (empty) | | ratio | 0 | |
| 77.92% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 22 | | technicalSentenceCount | 2 | | matches | | 0 | "Under raking light the floor came alive: a fine even fall of tile dust and rust, undisturbed, and at the perimeter of the circle a distinct raised lip, as thoug…" | | 1 | "Quinn walked the perimeter rather than crossing the circle, and where the tiles curved down to meet the tunnel arch she found the chalk again: the same three st…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 19 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 6 | | fancyCount | 1 | | fancyTags | | | dialogueSentences | 43 | | tagDensity | 0.14 | | leniency | 0.279 | | rawRatio | 0.167 | | effectiveRatio | 0.047 | |