| 33.33% | Adverbs in dialogue tags | Target: ≤10% dialogue tags with adverbs | | totalTags | 6 | | adverbTagCount | 1 | | adverbTags | | 0 | "she said simply [simply]" |
| | dialogueSentences | 9 | | tagDensity | 0.667 | | leniency | 1 | | rawRatio | 0.167 | | effectiveRatio | 0.167 | |
| 90.26% | AI-ism adverb frequency | Target: <2% AI-ism adverbs (58 tracked) | | wordCount | 1027 | | totalAiIsmAdverbs | 2 | | 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) | |
| 0.00% | AI-ism word frequency | Target: <2% AI-ism words (290 tracked) | | wordCount | 1027 | | totalAiIsms | 21 | | found | | 0 | | | 1 | | | 2 | | | 3 | | | 4 | | | 5 | | | 6 | | | 7 | | | 8 | | | 9 | | | 10 | | | 11 | | | 12 | | | 13 | | | 14 | | | 15 | | | 16 | | | 17 | |
| | highlights | | 0 | "tantalizing" | | 1 | "clandestine" | | 2 | "scanning" | | 3 | "echoed" | | 4 | "tapestry" | | 5 | "tinged" | | 6 | "whisper" | | 7 | "stomach" | | 8 | "scanned" | | 9 | "familiar" | | 10 | "resolve" | | 11 | "otherworldly" | | 12 | "tension" | | 13 | "sense of" | | 14 | "delved" | | 15 | "spectral" | | 16 | "flicker" | | 17 | "symphony" |
| |
| 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 | 1 | | narrationSentences | 54 | | matches | | |
| 100.00% | Filter word density | Target: ≤3% sentences with filter/hedge words | | filterCount | 1 | | hedgeCount | 0 | | narrationSentences | 54 | | filterMatches | | | hedgeMatches | (empty) | |
| 100.00% | Gibberish response detection | Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words) | | analyzedSentences | 57 | | gibberishSentences | 0 | | adjustedGibberishSentences | 0 | | longSentenceCount | 0 | | runOnParagraphCount | 0 | | giantParagraphCount | 0 | | wordSaladCount | 0 | | repetitionLoopCount | 0 | | controlTokenCount | 0 | | maxSentenceWordsSeen | 37 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Markdown formatting overuse | Target: ≤5% words in markdown formatting | | markdownSpans | 0 | | markdownWords | 0 | | totalWords | 1020 | | ratio | 0 | | matches | (empty) | |
| 100.00% | Missing dialogue indicators (quotation marks) | Target: ≤10% speech attributions without quotation marks | | totalAttributions | 7 | | unquotedAttributions | 0 | | matches | (empty) | |
| 100.00% | Name drop frequency | Target: ≤1.0 per-name mentions per 100 words | | totalMentions | 23 | | wordCount | 974 | | uniqueNames | 13 | | maxNameDensity | 0.82 | | worstName | "Harlow" | | maxWindowNameDensity | 1.5 | | worstWindowName | "Harlow" | | discoveredNames | | Detective | 1 | | Harlow | 8 | | Quinn | 1 | | Soho | 1 | | Morris | 2 | | London | 1 | | Tube | 1 | | Camden | 1 | | Veil | 2 | | Market | 2 | | Saint | 1 | | Christopher | 1 | | Herrera | 1 |
| | persons | | 0 | "Harlow" | | 1 | "Quinn" | | 2 | "Morris" | | 3 | "Market" | | 4 | "Saint" | | 5 | "Christopher" | | 6 | "Herrera" |
| | places | | | globalScore | 1 | | windowScore | 1 | |
| 100.00% | Narrator intent-glossing | Target: ≤2% narration sentences with intent-glossing patterns | | analyzedSentences | 49 | | glossingSentenceCount | 0 | | matches | (empty) | |
| 100.00% | "Not X but Y" pattern overuse | Target: ≤1 "not X but Y" per 1000 words | | totalMatches | 0 | | per1kWords | 0 | | wordCount | 1020 | | matches | (empty) | |
| 100.00% | Overuse of "that" (subordinate clause padding) | Target: ≤2% sentences with "that" clauses | | thatCount | 0 | | totalSentences | 57 | | matches | (empty) | |
| 95.37% | Paragraph length variance | Target: CV ≥0.5 for paragraph word counts | | totalParagraphs | 22 | | mean | 46.36 | | std | 22.43 | | cv | 0.484 | | sampleLengths | | 0 | 69 | | 1 | 91 | | 2 | 70 | | 3 | 60 | | 4 | 73 | | 5 | 46 | | 6 | 55 | | 7 | 51 | | 8 | 58 | | 9 | 9 | | 10 | 25 | | 11 | 37 | | 12 | 30 | | 13 | 4 | | 14 | 54 | | 15 | 8 | | 16 | 20 | | 17 | 49 | | 18 | 48 | | 19 | 63 | | 20 | 63 | | 21 | 37 |
| |
| 92.27% | Passive voice overuse | Target: ≤2% passive sentences | | passiveCount | 2 | | totalSentences | 54 | | matches | | 0 | "been shaken" | | 1 | "been repurposed" |
| |
| 100.00% | Past progressive (was/were + -ing) overuse | Target: ≤2% past progressive verbs | | pastProgressiveCount | 2 | | totalVerbs | 149 | | matches | | 0 | "was not being" | | 1 | "was painting" |
| |
| 0.00% | Em-dash & semicolon overuse | Target: ≤2% sentences with em-dashes/semicolons | | emDashCount | 8 | | semicolonCount | 1 | | flaggedSentences | 9 | | totalSentences | 57 | | ratio | 0.158 | | matches | | 0 | "Tonight's pursuit had started with a tip—an anonymous call that promised a meeting on the edge of the supernatural underworld she had only begun to understand." | | 1 | "Footfalls echoed below—desperate and hurried." | | 2 | "The Veil Market was notorious—a whisper exchanged over pints in the darkest corners of pubs, a place of enchantments and illegal dealings shielded from the prying eyes of enforcement." | | 3 | "There was a low murmur of voices, laughter riding underneath the dense chorus of chatter and clinking wares—a bone token this entry required." | | 4 | "But just as she was about to turn away, a familiar figure brushed past—a man with warm brown eyes and an olive complexion, a Saint Christopher medallion shining at his neck." | | 5 | "Her eyes remained vigilant, scanning for the suspect’s trail amid the sellers of enchanted trinkets and off-record potions—smoke curling up like unanswered questions." | | 6 | "At a corner ahead, a flicker of motion caught her eye—a silhouette, half-turned, cloak caught in a draft from a passing train." | | 7 | "Determination stiffened her spine; the chase wasn’t over." | | 8 | "Harlow drew a breath, the air tasted thick with possibilities, and she pressed forward into the unknown —a tape of courage unspooling from her heart, converging on the shadow of the past she had vowed to reconcile." |
| |
| 88.00% | Purple prose (modifier overload) | Target: <4% adverbs, <2% -ly adverbs, no adj stacking | | wordCount | 985 | | adjectiveStacks | 2 | | stackExamples | | 0 | "former paramedic turned underground healer." | | 1 | "small, bone-carved token." |
| | adverbCount | 23 | | adverbRatio | 0.023350253807106598 | | lyAdverbCount | 16 | | lyAdverbRatio | 0.016243654822335026 | |
| 100.00% | Repeated phrase echo | Target: ≤20% sentences with echoes (window: 2) | | totalSentences | 57 | | echoCount | 0 | | echoWords | (empty) | |
| 100.00% | Sentence length variance | Target: CV ≥0.4 for sentence word counts | | totalSentences | 57 | | mean | 17.89 | | std | 8.79 | | cv | 0.491 | | sampleLengths | | 0 | 20 | | 1 | 24 | | 2 | 25 | | 3 | 17 | | 4 | 20 | | 5 | 28 | | 6 | 26 | | 7 | 28 | | 8 | 22 | | 9 | 20 | | 10 | 20 | | 11 | 5 | | 12 | 12 | | 13 | 23 | | 14 | 24 | | 15 | 20 | | 16 | 29 | | 17 | 10 | | 18 | 16 | | 19 | 20 | | 20 | 20 | | 21 | 35 | | 22 | 5 | | 23 | 23 | | 24 | 23 | | 25 | 31 | | 26 | 6 | | 27 | 7 | | 28 | 14 | | 29 | 9 | | 30 | 12 | | 31 | 13 | | 32 | 18 | | 33 | 19 | | 34 | 8 | | 35 | 22 | | 36 | 2 | | 37 | 2 | | 38 | 13 | | 39 | 13 | | 40 | 14 | | 41 | 14 | | 42 | 5 | | 43 | 3 | | 44 | 20 | | 45 | 26 | | 46 | 23 | | 47 | 19 | | 48 | 29 | | 49 | 22 |
| |
| 78.36% | Sentence opener variety | Target: ≥60% unique sentence openers | | consecutiveRepeats | 2 | | diversityRatio | 0.49122807017543857 | | totalSentences | 57 | | uniqueOpeners | 28 | |
| 0.00% | Adverb-first sentence starts | Target: ≥3% sentences starting with an adverb | | adverbCount | 0 | | totalSentences | 52 | | matches | (empty) | | ratio | 0 | |
| 43.08% | Pronoun-first sentence starts | Target: ≤30% sentences starting with a pronoun | | pronounCount | 23 | | totalSentences | 52 | | matches | | 0 | "Her breath came in steady" | | 1 | "She had been following leads" | | 2 | "Her quarry veered left, slipping" | | 3 | "She slowed at the entrance" | | 4 | "Her hand instinctively brushed against" | | 5 | "She paused, touching the worn" | | 6 | "Her heart beat a steady" | | 7 | "She caught a glimpse of" | | 8 | "Her eyes scanned the muddled" | | 9 | "she called out, her voice" | | 10 | "He turned, the expression of" | | 11 | "he replied, leveling a look" | | 12 | "she said simply, hoping he" | | 13 | "Her eyes darted to the" | | 14 | "His voice trailed off, leaving" | | 15 | "He studied her for a" | | 16 | "he said with a wry" | | 17 | "She clutched the token tightly." | | 18 | "he replied, stepping aside to" | | 19 | "Her steps fell in line" |
| | ratio | 0.442 | |
| 17.69% | Subject-first sentence starts | Target: ≤72% sentences starting with a subject | | subjectCount | 46 | | totalSentences | 52 | | matches | | 0 | "Rain pelted down like a" | | 1 | "Her breath came in steady" | | 2 | "Each step sent cold splashes" | | 3 | "The suspect hurtled down an" | | 4 | "Harlow’s instincts screamed caution, but" | | 5 | "She had been following leads" | | 6 | "Tonight's pursuit had started with" | | 7 | "Water dripped from the tangle" | | 8 | "Her quarry veered left, slipping" | | 9 | "Harlow followed, catching sight of" | | 10 | "She slowed at the entrance" | | 11 | "Footfalls echoed below—desperate and hurried." | | 12 | "Her hand instinctively brushed against" | | 13 | "She paused, touching the worn" | | 14 | "The descent led into a" | | 15 | "Her heart beat a steady" | | 16 | "The Veil Market was notorious—a" | | 17 | "Harlow hesitated at the entrance," | | 18 | "The shout of her instincts" | | 19 | "The entrance yawned before her," |
| | ratio | 0.885 | |
| 0.00% | Subordinate conjunction sentence starts | Target: ≥2% sentences starting with a subordinating conjunction | | subConjCount | 0 | | totalSentences | 52 | | matches | (empty) | | ratio | 0 | |
| 51.28% | Technical jargon density | Target: ≤6% sentences with technical-jargon patterns | | analyzedSentences | 39 | | technicalSentenceCount | 5 | | matches | | 0 | "Tonight's pursuit had started with a tip—an anonymous call that promised a meeting on the edge of the supernatural underworld she had only begun to understand." | | 1 | "She paused, touching the worn leather watch on her left wrist as if it could impart the determination needed for the task ahead." | | 2 | "The descent led into a forgotten corner of London's tapestry, an abandoned Tube station beneath Camden that had been repurposed as the Veil Market." | | 3 | "She wove through the throng, dodging stalls adorned with artifacts of dubious origin, before catching sight of the figure behind a tapestry displaying talismans…" | | 4 | "Harlow drew a breath, the air tasted thick with possibilities, and she pressed forward into the unknown —a tape of courage unspooling from her heart, converging…" |
| |
| 41.67% | Useless dialogue additions | Target: ≤5% dialogue tags with trailing filler fragments | | totalTags | 6 | | uselessAdditionCount | 1 | | matches | | 0 | "she called out, her voice low but firm" |
| |
| 50.00% | Dialogue tag variety (said vs. fancy) | Target: ≤10% fancy dialogue tags | | totalTags | 5 | | fancyCount | 1 | | fancyTags | | 0 | "she called out (call out)" |
| | dialogueSentences | 9 | | tagDensity | 0.556 | | leniency | 1 | | rawRatio | 0.2 | | effectiveRatio | 0.2 | |