| 100.00% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | |
| 84.73% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1310 | | totalAiIsmAdverbs | 4 | | found | | | highlights | | 0 | "suddenly" | | 1 | "slowly" | | 2 | "very" | | 3 | "quickly" |
| |
| 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) | |
| 50.38% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1310 | | totalAiIsms | 13 | | found | | | highlights | | 0 | "warmth" | | 1 | "traced" | | 2 | "silence" | | 3 | "perfect" | | 4 | "pulsed" | | 5 | "rhythmic" | | 6 | "could feel" | | 7 | "familiar" |
| |
| 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 | 129 | | matches | (empty) | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 0 | | hedgeCount | 3 | | narrationSentences | 129 | | filterMatches | (empty) | | hedgeMatches | | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 129 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 50 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1303 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 0 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 22 | | wordCount | 1303 | | uniqueNames | 11 | | maxNameDensity | 0.54 | | worstName | "Rory" | | maxWindowNameDensity | 1 | | worstWindowName | "Grove" | | discoveredNames | | Aurora | 1 | | Carter | 1 | | Heartstone | 2 | | Richmond | 1 | | Park | 1 | | Grove | 3 | | Cardiff | 1 | | Silas | 1 | | London | 1 | | Rory | 7 | | Flowers | 3 |
| | persons | | 0 | "Aurora" | | 1 | "Carter" | | 2 | "Heartstone" | | 3 | "Silas" | | 4 | "Rory" | | 5 | "Flowers" |
| | places | | 0 | "Richmond" | | 1 | "Park" | | 2 | "Grove" | | 3 | "Cardiff" | | 4 | "London" |
| | globalScore | 1 | | windowScore | 1 | |
| 47.26% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 73 | | glossingSentenceCount | 3 | | matches | | 0 | "felt like skin" | | 1 | "felt like it mattered in a way she coul" | | 2 | "felt like two, maybe three minutes at m" |
| |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1303 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 1 | | totalSentences | 129 | | matches | | |
| 100.00% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 39 | | mean | 33.41 | | std | 24.36 | | cv | 0.729 | | sampleLengths | | 0 | 20 | | 1 | 79 | | 2 | 26 | | 3 | 92 | | 4 | 19 | | 5 | 11 | | 6 | 33 | | 7 | 15 | | 8 | 73 | | 9 | 11 | | 10 | 43 | | 11 | 46 | | 12 | 7 | | 13 | 95 | | 14 | 18 | | 15 | 8 | | 16 | 54 | | 17 | 46 | | 18 | 10 | | 19 | 67 | | 20 | 16 | | 21 | 27 | | 22 | 22 | | 23 | 10 | | 24 | 29 | | 25 | 34 | | 26 | 2 | | 27 | 30 | | 28 | 45 | | 29 | 30 | | 30 | 23 | | 31 | 47 | | 32 | 3 | | 33 | 10 | | 34 | 45 | | 35 | 19 | | 36 | 75 | | 37 | 45 | | 38 | 18 |
| |
| 100.00% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 0 | | totalSentences | 129 | | matches | (empty) | |
| 48.48% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 5 | | totalVerbs | 220 | | matches | | 0 | "was being" | | 1 | "was spooking" | | 2 | "was doing" | | 3 | "were looking" | | 4 | "was breathing" |
| |
| 32.12% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 8 | | semicolonCount | 0 | | flaggedSentences | 5 | | totalSentences | 129 | | ratio | 0.039 | | matches | | 0 | "She had known that would happen—the signal dropped a hundred yards back—but checking was habit." | | 1 | "She knew it now, the same way she knew things sometimes—suddenly, fully, with a certainty that came from nowhere she could identify." | | 2 | "Every part of her that had survived the last year—the part that had packed a bag at two in the morning and fled Cardiff without looking back, the part that had learned to read the weather of a room and know when to get out—said she should leave now." | | 3 | "Whatever was breathing was large, or at least tall—it seemed to come from above her, from the height of a person standing just behind her head." | | 4 | "Not quickly—she did not want to run, did not want to give it the satisfaction, did not want to turn her back on whatever space it occupied—but with purpose, her eyes fixed on the far side of the clearing where more standing stones marked another boundary, another exit." |
| |
| 92.40% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 1315 | | adjectiveStacks | 1 | | stackExamples | | 0 | "same bone-deep certainty" |
| | adverbCount | 55 | | adverbRatio | 0.04182509505703422 | | lyAdverbCount | 13 | | lyAdverbRatio | 0.00988593155893536 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 129 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 129 | | mean | 10.1 | | std | 9.62 | | cv | 0.953 | | sampleLengths | | 0 | 20 | | 1 | 27 | | 2 | 19 | | 3 | 13 | | 4 | 2 | | 5 | 2 | | 6 | 16 | | 7 | 8 | | 8 | 18 | | 9 | 8 | | 10 | 23 | | 11 | 4 | | 12 | 4 | | 13 | 16 | | 14 | 6 | | 15 | 11 | | 16 | 20 | | 17 | 5 | | 18 | 4 | | 19 | 10 | | 20 | 3 | | 21 | 4 | | 22 | 4 | | 23 | 4 | | 24 | 2 | | 25 | 15 | | 26 | 7 | | 27 | 1 | | 28 | 1 | | 29 | 3 | | 30 | 8 | | 31 | 7 | | 32 | 2 | | 33 | 4 | | 34 | 26 | | 35 | 8 | | 36 | 18 | | 37 | 2 | | 38 | 13 | | 39 | 4 | | 40 | 7 | | 41 | 11 | | 42 | 22 | | 43 | 10 | | 44 | 9 | | 45 | 11 | | 46 | 5 | | 47 | 21 | | 48 | 4 | | 49 | 3 |
| |
| 57.11% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 13 | | diversityRatio | 0.40310077519379844 | | totalSentences | 129 | | uniqueOpeners | 52 | |
| 100.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 4 | | totalSentences | 103 | | matches | | 0 | "Just to her left, maybe" | | 1 | "Just more wildflowers, more moss," | | 2 | "Just over her shoulder, close" | | 3 | "Then, from somewhere deep in" |
| | ratio | 0.039 | |
| 100.00% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 28 | | totalSentences | 103 | | matches | | 0 | "She stopped at the boundary," | | 1 | "She had come here because" | | 2 | "She had traced it like" | | 3 | "It should be glowing." | | 4 | "It should be warm." | | 5 | "She had known that would" | | 6 | "She had entered the park" | | 7 | "She stared at the numbers" | | 8 | "She hadn't known that about" | | 9 | "She knew it now, the" | | 10 | "She should leave." | | 11 | "She could walk back the" | | 12 | "She stepped through the gap" | | 13 | "She laughed, a short sound" | | 14 | "She was spooking herself, that" | | 15 | "She hadn't felt that scar" | | 16 | "She turned her head slowly." | | 17 | "She was doing this to" | | 18 | "She didn't turn around." | | 19 | "She stood very still, the" |
| | ratio | 0.272 | |
| 81.36% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 78 | | totalSentences | 103 | | matches | | 0 | "The standing stones rose from" | | 1 | "She stopped at the boundary," | | 2 | "The stones were ancient oak," | | 3 | "A deep, arterial red that" | | 4 | "Rory pressed her back against" | | 5 | "The bark was smooth under" | | 6 | "She had come here because" | | 7 | "The Heartstone had been pulsing" | | 8 | "She had traced it like" | | 9 | "Someone had sent her the" | | 10 | "Someone who knew things about" | | 11 | "The pendant lay still now." | | 12 | "The deep crimson gemstone caught" | | 13 | "That was wrong." | | 14 | "It should be glowing." | | 15 | "It should be warm." | | 16 | "Rory checked her phone." | | 17 | "She had known that would" | | 18 | "Pre-Law had drilled certain behaviors" | | 19 | "The time on her screen" |
| | ratio | 0.757 | |
| 97.09% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 2 | | totalSentences | 103 | | matches | | 0 | "As if they had lost" | | 1 | "As if they were looking" |
| | ratio | 0.019 | |
| 69.97% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 49 | | technicalSentenceCount | 5 | | matches | | 0 | "Beyond them, wildflowers bloomed in colors that had no business existing under moonlight." | | 1 | "The one that had left her with a single perfect curve of pale tissue and a recurring nightmare about falling into water that wasn't water." | | 2 | "The crimson gemstone threw a dim red light across her fingers, and in that light she saw something that made her blood go cold." | | 3 | "The thing that had been breathing behind her had not left." | | 4 | "But she could feel it watching, the same way she could feel her own heartbeat, and she knew with the same bone-deep certainty that had told her about the time t…" |
| |
| 100.00% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 0 | | uselessAdditionCount | 0 | | matches | (empty) | |
| 100.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | |