Run: 2026-03-09-01KKAC2HN71R1ZRRHE3S1TJQ2N

Run Details

Duration:
1m 22s
Cost:
$0.053567
Provider:
OpenAI

Model input

System
You are an expert fiction writer. Always keep the following rules in mind: - Write in past tense and use General English spelling, grammar, and colloquialisms/slang. - Write in active voice - Always follow the "show, don't tell" principle. - Avoid adverbs and cliches and overused/commonly used phrases. Aim for fresh and original descriptions. - Convey events and story through dialogue. - Mix short, punchy sentences with long, descriptive ones. Drop fill words to add variety. - Skip "he/she said said" dialogue tags and convey people's actions or face expressions through their speech - Avoid mushy dialog and descriptions, have dialogue always continue the action, never stall or add unnecessary fluff. Vary the descriptions to not repeat yourself. - Put dialogue on its own paragraph to separate scene and action. - Reduce indicators of uncertainty like "trying" or "maybe" When writing text: - NEVER conclude the scene on your own, follow the beat instructions very closely. - NEVER end with foreshadowing. - NEVER write further than what I prompt you with. - AVOID imagining possible endings, NEVER deviate from the instructions. - STOP EARLY if the continuation contains what was required in the instructions. You do not need to fill out the full amount of words possible.
User/Human
Take into account the following glossary of characters/locations/items/lore... when writing your response: <codex> <character id="4416" name="Detective Harlow Quinn" aliases="Quinn, Detective Quinn, Harlow" pronouns="she/her" species="Human" storyRole="Antagonist"> <eyeColor>brown</eyeColor> <hair>closely cropped salt-and-pepper</hair> <height>5'9"</height> <age>41</age> <jawline>sharp jaw</jawline> <watch>worn leather watch on her left wrist</watch> <bearing>military precision</bearing> <description>A Metropolitan Police detective with 18 years of decorated service who suspects the clique is involved in criminal activity.</description> <backstory>She lost her partner, DS Morris, during a case three years ago under unexplained circumstances that had supernatural origins she doesn't yet understand.</backstory> </character> <character id="4414" name="Eva Kowalski" aliases="Eva, Evie" pronouns="she/her" species="Human" storyRole="Best Friend"> <eyeColor>green</eyeColor> <hair>curly red</hair> <height>5'4"</height> <age>26</age> <glasses>round glasses</glasses> <satchel>worn leather satchel full of books</satchel> <freckles>freckled complexion</freckles> <nervousHabit>tucking hair behind her left ear</nervousHabit> <description>Aurora's childhood friend and an occult researcher.</description> <backstory>Moved to London two years before Aurora and works as a research assistant at the British Museum's restricted archives. She holds a master's degree in Ancient History from Oxford.</backstory> </character> <location id="856" name="The Veil Market" aliases="Veil Market, the Market, underground market" realm="Earth"> <currentLocation>abandoned Tube station beneath Camden</currentLocation> <entryRequirement>bone token</entryRequirement> <schedule>moves locations every full moon</schedule> <description>A hidden supernatural black market that sells enchanted goods, banned alchemical substances, and information.</description> </location> <item id="2004" name="Veil Compass" aliases="the Compass, shadow compass" type="Tool" origin="The Veil Market"> <casingMaterial>small brass compass</casingMaterial> <faceMarkings>face etched with protective sigils</faceMarkings> <needle>points toward the nearest supernatural rift or portal</needle> <patina>casing has a patina of verdigris</patina> <creator>crafted by a Shade artisan</creator> <description>A compass attuned to supernatural energy.</description> </item> </codex> Continue the story using the following instructions: <instructions> Write a fully fleshed out scene of at least 1000 words in the mystery genre. A detective arrives at a crime scene in an unusual location. Something is wrong — the evidence doesn't add up. A colleague is present, offering a different interpretation. Through careful observation and deduction, the detective begins to see what others have missed. Use the codex entries above as your world reference for characters and setting. Only include the prose of the scene without any markdown or commentary. </instructions>

Model response

AI
Detective Harlow Quinn took the last flight of cracked stairs into the dead station with one hand on the rail and the other on the torch clipped to her jacket. The air below Camden carried a wet mineral chill that belonged in tunnels, not in June. Her boots struck soot-black concrete, each step sharp in the hollow space. Ahead, under strips of temporary police lighting, the abandoned platform opened into something that looked less like a crime scene and more like a fever dream built from stolen tarpaulins and rusted market stalls. Canvas awnings drooped between old iron pillars. Folding tables stood in rows along the platform edge. Glass jars, busted crates, scorched braziers, bird cages, and shelves of things wrapped in oilcloth filled the place with the clutter of a bazaar packed up in a hurry. Above it all hung the station’s original enamel sign, the lettering half-eaten by age. Quinn stopped at the edge of the tape. “What the hell am I looking at?” DS Colin Vale peeled off a latex glove and shoved it into his pocket. He had the stale, bright-eyed look of a man three coffees deep and still annoyed the night had not ended. He stepped over a crate marked with flaking gold paint and lifted the tape for her. “Squatter market. Illegal trading, stolen antiques, bit of drugs, bit of knives. One dead male. Uniforms caught wind of activity down here after some kids posted videos about torchlights in the tunnels. They came in through a maintenance gate and found this.” Quinn ducked under the tape. Her brown eyes moved over everything once, then returned to it in slices. A spent candle guttered on a metal tray. The wax had pooled black, not white. A cage held white feathers and no bird. Someone had abandoned a row of polished animal bones arranged by size with more care than any butcher’s shop. “Squatters took payment in vertebrae?” Vale followed her gaze and snorted. “Performance. You know how these people are. Bit of theatre helps move the merchandise.” Quinn looked at him. “These people.” He opened both hands. “All right. Criminals with flair.” The platform smelt wrong. Not just damp brick and dust and old electricity. Beneath that sat cardamom, hot metal, blood, and a sharp medicinal tang that stung the back of her throat. A constable stood near the tunnel mouth with both arms folded tight, keeping her eyes on the floor. Another photographed a spill of smashed blue bottles near the tracks. Quinn walked deeper into the market. Stalls had been built from whatever could be carried underground and still hold weight: old school desks, doors laid across crates, railway carts with missing wheels. Yet the arrangement had order. A lane down the centre. Side spaces narrow enough to force shoulders to brush. Curtains made from dark velvet split one section from another. There were no handwritten prices. No food wrappers. No cheap lager cans. No signs of people bedding down. “This wasn’t a squat,” Quinn said. Vale stayed at her shoulder. “They used the station.” “They used it for trade. No one lived here.” “How did you get there?” She pointed with two fingers. “No cooking gear. No bedding. No piles of clothes. No extension leads pulled off the mains. No graffiti except the old tags near the stairs. Whoever set this up kept it clean enough to pack fast and move.” Vale rubbed his jaw. “Fine. Organised criminals. Better?” Quinn kept moving. At the far end of the platform, a cluster of officers stood around the body. The victim lay on his back between a toppled cabinet and a low brazier, one arm flung wide, the other folded under him. He wore a dark suit cut too well for the place, though the knees had gone shiny. Mid-fifties. Grey at the temples. Rings on two fingers. His throat had been opened in one hard line from ear to ear. Blood sheeted beneath him, dark and thick under the scene lights, but not enough of it. Not for a cut that deep. The nearest wall carried a fan of blood droplets no higher than Quinn’s knee. She crouched. “Name?” Vale checked his notes. “No ID on him. Prints gave us Tomas Rybak. Fence, broker, receiver, three prior convictions, never stayed inside long. Couple of low-grade informants knew his face. They said if you wanted rare pieces with no paperwork, he could find them.” Quinn studied the dead man’s mouth. Lips grey. Teeth stained. A grain of red dust clung to his lower eyelash. His right hand had locked around a chain, snapped at the end as if something had been torn free. “No weapon?” “Not yet.” “No wallet?” “Gone.” “Phone?” “Gone.” Vale nodded towards the rings. “Whoever did it picked what mattered and left the gold. Robbery wasn’t the point.” Quinn leaned closer to the wound. The edges looked ragged in one place, cleaner in another, as if two cuts overlapped. A thin dark crust marked the collar of his shirt, but the chest beneath showed only a few drops. She pressed two gloved fingers to the fabric over his sternum. Damp. Cold. “Turn him after the photographer finishes.” Vale frowned. “Pathology will do that.” “I’m not asking pathology. Turn him.” He gave her a look, then waved at the SOCO photographer. Two officers rolled the body with care. The shirt on the back had soaked through from shoulder blades to waist. Blood had pooled under him, hidden from the first glance. Quinn watched the stain shape. “There’s your missing blood,” Vale said. Quinn didn’t answer. The rear of the suit jacket had a tear just below the left shoulder blade. Not a slash. A puncture, narrow and neat, with the cloth burnt around the edges. Beneath it, the shirt had stuck to the skin. Quinn lowered her face. “Smell that.” Vale bent, then pulled back. “Like copper.” “And singed hair.” He squinted. “So?” “So he bled from the front after death or near enough. The throat cut made the scene. This”—she pointed at the puncture—“came first.” Vale folded his arms. “Could’ve been stabbed from behind, then finished off in front. Still a deal gone bad.” “Then where’s the cast-off from the first attack? Where’s the struggle?” She looked around the stall. A chair sat upright beside a table laid with velvet pads for jewellery. Three drawers hung open. One had spilled velvet pouches in a tidy crescent on the floor. A brass scale stood at the table’s edge, unbroken. A cup of tea had gone cold beside it and not a drop had spilled. The only thing disturbed near the body was the cabinet on its side. Quinn stood and walked to it. Glass front smashed inward, not out. Inside, on the remaining shelves, velvet-lined slots held shapes where items had been stored. One slot at the centre stood empty and clean while the others held dust. “What was here?” Vale shrugged. “Could’ve been any trinket.” “Not any trinket. This one got cleaned.” She ran her torch along the shelf. The wood around the empty slot bore a fresh scrape, circular, as if metal had been lifted in a hurry by someone with shaking hands. A constable approached, notebook open. “Ma’am, we bagged this near the victim’s left hand.” He held up an evidence bag. Inside lay a small brass compass with a casing gone green at the seams. Protective sigils, thin as scratches, ringed the face. The needle twitched in short violent jerks, though the constable held it still. Vale gave it a quick glance. “Victim’s property?” Quinn took the bag and raised it to the light. The brass had warmth to it despite the cold station. The face held no north markings she recognised, just symbols etched between hairline cracks in the glass. The needle swung, settled towards the dark tunnel beyond the platform, then snapped east, then quivered again. “Where exactly?” “On the floor under his hand, ma’am. Chain seems to match the one he was holding.” Quinn looked back to the broken chain in Rybak’s fist. One end had torn open. The links near the break had black residue fused to them, as if heat had licked the metal. Vale tipped his head. “It’s a gimmick. Smugglers love a flourish.” “Bag his hands for trace again,” Quinn told the constable. “And get that chain tested for residue beyond the standard panel.” The constable nodded and moved off. Vale watched him go. “You wanted a fancy compass tested. That your big revelation?” Quinn ignored the bait. Her eyes moved to the blood on the wall again, low and directional, then to the tracks below. The rails drowned in black water. Between the sleepers sat more broken blue glass and a white line sprinkled in a curve that was too clean for plaster dust. She climbed down from the platform. “Quinn.” She dropped to the ballast and crouched by the track. The white grains gleamed under her torch, not chalk, not concrete. Salt. A deliberate trail, laid in an arc from one tunnel mouth to the other, then broken in the middle where footprints had cut through. Not police boots. Narrow soles, smooth, with a pointed toe. Beside them lay a smear of black wax and three dead moths. Vale climbed down after her with less grace. “We’ve already got prints all over this place. Uniforms came through before they knew what they had.” Quinn shone the light along the rail. More salt had collected at the base of the platform, thickest beneath the victim’s stall. A second set of marks scored the soot on the concrete lip above: parallel grooves, five inches apart, as if something heavy with metal runners had been dragged out from under the table and hauled away. “Did you inventory the cabinet contents?” “Doing it now.” “Did anyone ask the informants what Rybak sold, exactly?” Vale exhaled through his nose. “They said antiques, relics, occult rubbish for rich idiots, bits of church silver, bones that weren’t meant to be in private hands. Pick your poison.” Quinn looked up at him from the tracks. “You left out occult rubbish when you called it a squatter market.” “I left out rubbish.” She stood and brushed grit from her gloves. Beyond Vale, at the edge of the lights, one section of velvet curtain stirred though no draught touched her face. The movement stopped at once. She fixed on it for a beat, then climbed back onto the platform. A young forensic tech waited by the body. “Detective, there’s something else. We found fibres in the victim’s wound. Not from clothing. Black, slick, almost like horsehair, but flatter.” “Bag them.” “Already done. And the burn around the puncture wound—there’s no powder tattooing, no stippling. Not a firearm.” Quinn nodded. “Good.” She walked to the stall opposite Rybak’s. This one had sold books, or had pretended to. Rows of leather-bound volumes sat tied shut with cord. None had titles on the spine. One had fallen open on the floor. Its pages were blank except for a thumbprint in ash near the centre. The ash print carried ridges too long and narrow for a human thumb. Quinn stared at it until Vale joined her. “Please tell me you’re not going to make me write up monster fingerprints.” “I’m going to make you write what you saw.” He laughed once, with no humour in it. “What I saw was an illegal market under Camden run by superstitious crooks. One of them got killed over a valuable item. Your mystery object is gone. The killer used some odd tool, staged the throat cut to send a message, and ran. Clean enough.” Quinn picked up the fallen book by its cover edge and let the pages hang. Fine grey dust drifted out, then stopped halfway to the floor and curled sideways, drawn towards the same tunnel the compass needle had favoured. She closed the book. “Then explain the tea.” Vale stared at her. “The what?” She pointed at the cup beside Rybak’s scales. “Still half full. Skin on top, which means it sat there a while. If someone argued face-to-face, overturned furniture, cut his throat, smashed the cabinet, stole the item, and ran, that cup should be broken or kicked or cold on the ground. Rybak didn’t rise to defend himself. He stayed seated.” Quinn moved to the chair and stood behind it. The seat held a dark smear where blood had soaked through his jacket before he toppled. She placed two fingers on the chair back. “He sat here. Someone came behind him. Put something through his back. Fast. Hot enough to scorch cloth. He died in the chair or near enough. Then the body got moved.” Vale looked to the blood pool. “Not far.” “Far enough to stage the throat.” She pointed at the low wall spatter. “The cut happened after he hit the floor. Low pressure. Little arterial spray. Heart had nearly stopped. Whoever did it wanted any copper to think blade first, message killing, underworld business as usual.” Vale chewed the inside of his cheek. The certainty in his posture loosened by a degree. “Why stage it at all?” “To hide what killed him.” A shout rose near the stairs. Another constable hurried over, flustered. “Detective, there’s a woman upstairs insisting she’s here on your authority. Says she’s from the British Museum. Eva Kowalski?” Vale looked at Quinn. “You bring museum staff to homicides now?” Quinn’s expression didn’t shift, but her eyes narrowed. She hadn’t called anyone from the museum. “No,” she said. “I didn’t.” The constable swallowed. “She knew there’d be a compass, ma’am. Before I mentioned evidence. Said if we touched it bare-handed, we’d make things worse.” Quinn turned the evidence bag in her hand. The needle inside had stopped jerking. It held steady now, aimed past her shoulder, past the platform, straight at the dark velvet curtain that had moved on its own. “Get her down here,” Quinn said. Then she pointed at the curtain. “And nobody touches that section until I see what’s behind it.”
created_at"2026-03-09T22:39:22.288Z" 3/9/2026, 10:39:22 PM
model"openai/gpt-5.4-20260305"
app_id182717
external_user(null)
streamedtrue
cancelledfalse
latency8302
moderation_latency(null)
generation_time82147
tokens_prompt1149
tokens_completion3754
native_tokens_prompt1009
native_tokens_completion3403
native_tokens_completion_images0
native_tokens_reasoning378
native_tokens_cached0
num_media_prompt(null)
num_input_audio_prompt(null)
num_media_completion0
num_search_results(null)
origin"https://ncbench.com/"
is_byokfalse
finish_reason"stop"
native_finish_reason"completed"
usage0.0535675
router(null)
provider_responses
0
endpoint_id"9ff5625c-403f-4d7f-b895-58ac7295062c"
id"resp_0ab88f401f50141b0169af4c1a5ef88194bec8e1b6e754fad8"
is_byokfalse
latency227
model_permaslug"openai/gpt-5.4-20260305"
provider_name"OpenAI"
status200
user_agent"langchainjs-openai/1.0.0 ((node/v24.14.0; linux; x64))"
http_referer(null)
api_type"completions"
id"gen-1773095962-UclZMbLM81n3Ws6JfM2o"
upstream_id"resp_0ab88f401f50141b0169af4c1a5ef88194bec8e1b6e754fad8"
total_cost0.0535675
cache_discount(null)
upstream_inference_cost0
provider_name"OpenAI"

Evaluation details

Result Evaluator Details Meta Data
100.00% Adverbs in dialogue tags
Target: ≤10% dialogue tags with adverbs
totalTags5
adverbTagCount0
adverbTags(empty)
dialogueSentences74
tagDensity0.068
leniency0.135
rawRatio0
effectiveRatio0
100.00% AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount2351
totalAiIsmAdverbs0
found(empty)
highlights(empty)
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)
74.48% AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount2351
totalAiIsms12
found
0
word"chill"
count1
1
word"weight"
count1
2
word"velvet"
count6
3
word"warmth"
count1
4
word"etched"
count1
5
word"quivered"
count1
6
word"standard"
count1
highlights
0"chill"
1"weight"
2"velvet"
3"warmth"
4"etched"
5"quivered"
6"standard"
100.00% Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches1
maxInWindow1
found
0
label"eyes widened/narrowed"
count1
highlights
0"eyes narrowed"
100.00% Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells0
narrationSentences169
matches(empty)
100.00% Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount0
hedgeCount1
narrationSentences169
filterMatches(empty)
hedgeMatches
0"tended to"
100.00% Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences238
gibberishSentences0
adjustedGibberishSentences0
longSentenceCount0
runOnParagraphCount0
giantParagraphCount0
wordSaladCount0
repetitionLoopCount0
controlTokenCount0
maxSentenceWordsSeen53
ratio0
matches(empty)
100.00% Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans0
markdownWords0
totalWords2350
ratio0
matches(empty)
100.00% Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions18
unquotedAttributions0
matches(empty)
62.72% Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions61
wordCount1604
uniqueNames8
maxNameDensity1.75
worstName"Quinn"
maxWindowNameDensity3
worstWindowName"Quinn"
discoveredNames
Harlow1
Quinn28
Camden1
June1
Colin1
Vale22
Rybak3
One4
persons
0"Harlow"
1"Quinn"
2"Camden"
3"Colin"
4"Vale"
places
0"June"
globalScore0.627
windowScore0.667
100.00% Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences115
glossingSentenceCount0
matches(empty)
100.00% "Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches0
per1kWords0
wordCount2350
matches(empty)
100.00% Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount0
totalSentences238
matches(empty)
100.00% Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs138
mean17.03
std20.43
cv1.2
sampleLengths
092
159
28
37
450
542
660
75
86
914
104
112
124
135
1461
156
1673
176
185
194
209
215
2243
234
244
253
2699
2714
282
291
304
3140
3239
332
342
352
361
371
381
395
4014
4153
426
436
446
4511
4635
476
483
4939
92.81% Passive voice overuse
Target: ≤2% passive sentences
passiveCount6
totalSentences169
matches
0"been built"
1"been opened"
2"been torn"
3"been stored"
4"been lifted"
5"been dragged"
100.00% Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount0
totalVerbs251
matches(empty)
100.00% Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount0
semicolonCount0
flaggedSentences0
totalSentences238
ratio0
matches(empty)
94.00% Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount1610
adjectiveStacks1
stackExamples
0"stale, bright-eyed look"
adverbCount38
adverbRatio0.02360248447204969
lyAdverbCount2
lyAdverbRatio0.0012422360248447205
100.00% Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences238
echoCount0
echoWords(empty)
100.00% Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences238
mean9.87
std8.4
cv0.85
sampleLengths
030
116
212
334
47
59
629
714
88
97
1014
1120
1216
1342
145
1513
168
177
188
1919
205
216
2214
234
242
254
265
274
289
2919
3018
3111
326
3326
345
355
369
3710
385
393
404
416
426
435
444
459
465
475
4838
494
58.96% Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats8
diversityRatio0.3739495798319328
totalSentences238
uniqueOpeners89
21.65% Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount1
totalSentences154
matches
0"Then she pointed at the"
ratio0.006
100.00% Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount28
totalSentences154
matches
0"Her boots struck soot-black concrete,"
1"He had the stale, bright-eyed"
2"He stepped over a crate"
3"Her brown eyes moved over"
4"He opened both hands."
5"She pointed with two fingers."
6"He wore a dark suit"
7"His throat had been opened"
8"His right hand had locked"
9"She pressed two gloved fingers"
10"He gave her a look,"
11"She looked around the stall."
12"She ran her torch along"
13"He held up an evidence"
14"Her eyes moved to the"
15"She climbed down from the"
16"She dropped to the ballast"
17"She stood and brushed grit"
18"She fixed on it for"
19"She walked to the stall"
ratio0.182
63.90% Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount122
totalSentences154
matches
0"Detective Harlow Quinn took the"
1"The air below Camden carried"
2"Her boots struck soot-black concrete,"
3"Canvas awnings drooped between old"
4"Glass jars, busted crates, scorched"
5"Quinn stopped at the edge"
6"DS Colin Vale peeled off"
7"He had the stale, bright-eyed"
8"He stepped over a crate"
9"Quinn ducked under the tape."
10"Her brown eyes moved over"
11"A spent candle guttered on"
12"The wax had pooled black,"
13"A cage held white feathers"
14"Someone had abandoned a row"
15"Vale followed her gaze and"
16"Quinn looked at him."
17"He opened both hands."
18"The platform smelt wrong."
19"A constable stood near the"
ratio0.792
0.00% Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount0
totalSentences154
matches(empty)
ratio0
75.89% Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences64
technicalSentenceCount6
matches
0"Ahead, under strips of temporary police lighting, the abandoned platform opened into something that looked less like a crime scene and more like a fever dream b…"
1"Beneath that sat cardamom, hot metal, blood, and a sharp medicinal tang that stung the back of her throat."
2"The wood around the empty slot bore a fresh scrape, circular, as if metal had been lifted in a hurry by someone with shaking hands."
3"Between the sleepers sat more broken blue glass and a white line sprinkled in a curve that was too clean for plaster dust."
4"A second set of marks scored the soot on the concrete lip above: parallel grooves, five inches apart, as if something heavy with metal runners had been dragged …"
5"It held steady now, aimed past her shoulder, past the platform, straight at the dark velvet curtain that had moved on its own."
100.00% Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags5
uselessAdditionCount0
matches(empty)
100.00% Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags5
fancyCount0
fancyTags(empty)
dialogueSentences74
tagDensity0.068
leniency0.135
rawRatio0
effectiveRatio0
88.1467%