| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 10 | | adverbTagCount | 1 | | adverbTags | | 0 | "She kicked away [away]" |
| | dialogueSentences | 26 | | tagDensity | 0.385 | | leniency | 0.769 | | rawRatio | 0.1 | | effectiveRatio | 0.077 | |
| 95.08% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1016 | | totalAiIsmAdverbs | 1 | | found | | | 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) | |
| 1.57% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1016 | | totalAiIsms | 20 | | found | | | highlights | | 0 | "chill" | | 1 | "determined" | | 2 | "firmly" | | 3 | "echoed" | | 4 | "pounding" | | 5 | "stark" | | 6 | "navigate" | | 7 | "scanning" | | 8 | "efficient" | | 9 | "flickered" | | 10 | "clandestine" | | 11 | "echoing" | | 12 | "footsteps" | | 13 | "amidst" | | 14 | "hulking" | | 15 | "flicker" |
| |
| 100.00% | Cliché density | Target: ≤1 cliche(s) per 800-word window | | totalCliches | 1 | | maxInWindow | 1 | | found | | 0 | | label | "eyes widened/narrowed" | | count | 1 |
|
| | highlights | | |
| 100.00% | Emotion telling (show vs. tell) | Target: ≤3% sentences with emotion telling | | emotionTells | 1 | | narrationSentences | 73 | | matches | | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 1 | | narrationSentences | 73 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 88 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 41 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 2 | | markdownWords | 4 | | totalWords | 1013 | | ratio | 0.004 | | matches | | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 8 | | unquotedAttributions | 0 | | matches | (empty) | |
| 77.27% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 36 | | wordCount | 825 | | uniqueNames | 13 | | maxNameDensity | 1.45 | | worstName | "Quinn" | | maxWindowNameDensity | 2.5 | | worstWindowName | "Quinn" | | discoveredNames | | Soho | 1 | | Detective | 1 | | Harlow | 2 | | Quinn | 12 | | Shaftesbury | 1 | | Avenue | 1 | | Herrera | 2 | | Tomás | 9 | | London | 1 | | Underground | 1 | | Veil | 1 | | Market | 1 | | Tomas | 3 |
| | persons | | 0 | "Detective" | | 1 | "Harlow" | | 2 | "Quinn" | | 3 | "Herrera" | | 4 | "Tomás" | | 5 | "Market" | | 6 | "Tomas" |
| | places | | 0 | "Soho" | | 1 | "Shaftesbury" | | 2 | "Avenue" | | 3 | "London" |
| | globalScore | 0.773 | | windowScore | 0.833 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 61 | | glossingSentenceCount | 1 | | matches | | 0 | "urface of this seemingly mundane urban lands" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1013 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 88 | | matches | (empty) | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 31 | | mean | 32.68 | | std | 22.51 | | cv | 0.689 | | sampleLengths | | 0 | 113 | | 1 | 43 | | 2 | 9 | | 3 | 38 | | 4 | 39 | | 5 | 48 | | 6 | 7 | | 7 | 21 | | 8 | 9 | | 9 | 21 | | 10 | 19 | | 11 | 11 | | 12 | 39 | | 13 | 36 | | 14 | 25 | | 15 | 24 | | 16 | 18 | | 17 | 62 | | 18 | 38 | | 19 | 89 | | 20 | 28 | | 21 | 39 | | 22 | 50 | | 23 | 28 | | 24 | 22 | | 25 | 33 | | 26 | 19 | | 27 | 29 | | 28 | 3 | | 29 | 30 | | 30 | 23 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 1 | | totalSentences | 73 | | matches | | |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 1 | | totalVerbs | 145 | | matches | | |
| 12.99% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 3 | | semicolonCount | 2 | | flaggedSentences | 4 | | totalSentences | 88 | | ratio | 0.045 | | matches | | 0 | "She knew she startled him; his head snapped towards her." | | 1 | "A distant car horn, the buzz of a neon sign, the slosh of water underfoot—all hints of life that stood in stark contrast to the dark secrets she knew were hidden beneath the surface of this seemingly mundane urban landscape." | | 2 | "His knowledge of back alleys and shortcuts surprised her; he was an efficient guide, weaving through the city's nocturnal maze with practised ease." | | 3 | "The closed ticket barriers—locked at this time—blocked their way, but Tomás produced a shiny, small object, smooth and worn." |
| |
| 100.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 828 | | adjectiveStacks | 0 | | stackExamples | (empty) | | adverbCount | 18 | | adverbRatio | 0.021739130434782608 | | lyAdverbCount | 6 | | lyAdverbRatio | 0.007246376811594203 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 88 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 88 | | mean | 11.51 | | std | 6.18 | | cv | 0.536 | | sampleLengths | | 0 | 18 | | 1 | 9 | | 2 | 11 | | 3 | 10 | | 4 | 26 | | 5 | 2 | | 6 | 13 | | 7 | 16 | | 8 | 8 | | 9 | 14 | | 10 | 10 | | 11 | 13 | | 12 | 3 | | 13 | 3 | | 14 | 4 | | 15 | 5 | | 16 | 10 | | 17 | 15 | | 18 | 13 | | 19 | 10 | | 20 | 16 | | 21 | 13 | | 22 | 13 | | 23 | 11 | | 24 | 5 | | 25 | 9 | | 26 | 10 | | 27 | 7 | | 28 | 15 | | 29 | 6 | | 30 | 9 | | 31 | 4 | | 32 | 17 | | 33 | 10 | | 34 | 9 | | 35 | 11 | | 36 | 19 | | 37 | 20 | | 38 | 13 | | 39 | 7 | | 40 | 16 | | 41 | 21 | | 42 | 4 | | 43 | 6 | | 44 | 8 | | 45 | 10 | | 46 | 14 | | 47 | 4 | | 48 | 9 | | 49 | 13 |
| |
| 62.88% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 3 | | diversityRatio | 0.3977272727272727 | | totalSentences | 88 | | uniqueOpeners | 35 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 71 | | matches | (empty) | | ratio | 0 | |
| 67.89% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 27 | | totalSentences | 71 | | matches | | 0 | "Her breath clouded the air," | | 1 | "She tensed as a figure" | | 2 | "She lunged out of the" | | 3 | "She pressed forward, closing the" | | 4 | "she shouted, her voice carrying" | | 5 | "She knew she startled him;" | | 6 | "She glanced at the item" | | 7 | "Her eyes narrowed." | | 8 | "He didn't slow down." | | 9 | "she called out" | | 10 | "He swerved to his left," | | 11 | "She peaked around the corner." | | 12 | "He lay on the pavement," | | 13 | "She kicked away the pack" | | 14 | "He paused, steeling himself" | | 15 | "She tilted her head, considering" | | 16 | "His hands splayed, indicating the" | | 17 | "she said with a smirk" | | 18 | "She motioned towards the end" | | 19 | "They emerged from the alley," |
| | ratio | 0.38 | |
| 23.38% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 62 | | totalSentences | 71 | | matches | | 0 | "The neon signs of Soho" | | 1 | "A downpour turned Shaftesbury Avenue" | | 2 | "Her breath clouded the air," | | 3 | "A blurred reflection of her" | | 4 | "She tensed as a figure" | | 5 | "The detective didn't need to" | | 6 | "She lunged out of the" | | 7 | "She pressed forward, closing the" | | 8 | "she shouted, her voice carrying" | | 9 | "She knew she startled him;" | | 10 | "She glanced at the item" | | 11 | "Her eyes narrowed." | | 12 | "He didn't slow down." | | 13 | "Quinn's jaw set firmly as" | | 14 | "The rain made the cobblestones" | | 15 | "she called out" | | 16 | "He swerved to his left," | | 17 | "The clicking of her heels" | | 18 | "Quinn slowed her pace, her" | | 19 | "The sound of his quick," |
| | ratio | 0.873 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 71 | | matches | (empty) | | ratio | 0 | |
| 100.00% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 41 | | technicalSentenceCount | 2 | | matches | | 0 | "A distant car horn, the buzz of a neon sign, the slosh of water underfoot—all hints of life that stood in stark contrast to the dark secrets she knew were hidde…" | | 1 | "Empty save for one other figure: a hulking silhouette that blended into the shadows." |
| |
| 25.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 10 | | uselessAdditionCount | 2 | | matches | | 0 | "she shouted, her voice carrying over the patter of rain" | | 1 | "she stated, her voice echoing around them" |
| |
| 34.62% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 4 | | fancyCount | 3 | | fancyTags | | 0 | "she shouted (shout)" | | 1 | "she stated (state)" | | 2 | "His voice faltered (falter)" |
| | dialogueSentences | 26 | | tagDensity | 0.154 | | leniency | 0.308 | | rawRatio | 0.75 | | effectiveRatio | 0.231 | |