Run: 2026-03-18-01KM08MHBTQ14192GVS4C5J3RM

Run Details

Duration:
16.5s
Cost:
$0.014879
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="4412" name="Aurora Carter" aliases="Rory, Laila, Aurora, Carter, Malphora" pronouns="she/her" species="Human" storyRole="Protagonist"> <eyeColor>bright blue</eyeColor> <hair>straight shoulder-length black</hair> <height>5'6"</height> <age>25</age> <scar>small crescent-shaped scar on her left wrist from a childhood accident</scar> <description>Aurora, referred to by her friends as Rory, is cool-headed, intelligent, and known for quick out-of-the-box thinking.</description> <backstory>Born in Cardiff to an Irish barrister father (Brendan Carter) and Welsh teacher mother (Jennifer Carter née Ellis), Rory reluctantly pursued Pre-Law at Cardiff University. She fled to London at the behest of her childhood friend Eva after leaving an abusive ex named Evan. By day, Rory works part-time as a delivery person for Yu-Fei Cheung's Golden Empress restaurant. She lives in a flat above Silas' bar.</backstory> </character> <character id="4415" name="Lucien Moreau" aliases="Lucien, Luc, the Frenchman" pronouns="he/him" species="Half-Demon" storyRole="Ally"> <eyeColor>heterochromatic — one amber, one black</eyeColor> <hair>slicked-back platinum blond</hair> <height>5'11"</height> <age>32</age> <cane>ivory-handled cane that conceals a thin blade</cane> <dress>tailored charcoal suits</dress> <description>An impeccably dressed fixer and information broker in London's supernatural underworld. He speaks four languages fluently.</description> <backstory>Born in Marseille to a human mother and a demon father from the realm of Avaros.</backstory> </character> <location id="858" name="Eva's Flat" aliases="Eva's place, the flat on Brick Lane" realm="Earth"> <cat>tabby cat named Ptolemy</cat> <security>three deadbolts on the front door</security> <description>A cramped one-bedroom flat above a curry house on Brick Lane, East London. Every surface is covered with books, scrolls, and research notes.</description> </location> </codex> Continue the story using the following instructions: <instructions> Write a fully fleshed out scene of at least 1000 words in the romance genre. Two people who parted on complicated terms are forced together again when one shows up unannounced at the other's flat. There's history between them — attraction, hurt, and things left unsaid. Write the scene from the moment the door opens. 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
The first deadbolt clacked free, then the second, then the third, each one sharp in the narrow hallway above the curry house. Rory paused with her hand still on the last lock, her delivery bag hanging off one shoulder, rain dampening the collar of her jacket. She pulled the door in and found Lucien Moreau standing on the landing as if he belonged there, charcoal coat immaculate, platinum hair slicked back, ivory-handled cane tucked against his side. His amber eye fixed on her face. The black one slid to the bag at her shoulder, then back. “You have a talent for making a woman regret opening her own door,” Rory muttered. Ptolemy shot past her ankle and wrapped himself around Lucien’s shoe with all the confidence of a cat who’d never feared consequences in his life. Lucien’s mouth twitched. “I am flattered to be included in your domestic welcome.” Rory stared at him for a beat longer, searching for the reason his presence sat wrong in her chest. She found it in the shape of his shoulders, in the careful stillness he wore when he’d already made up his mind to stand his ground. “You’re not meant to be here.” “I noticed.” She tipped her chin toward the stairwell. “Then you can keep noticing somewhere else.” He looked past her into the flat, into the chaos stacked on every surface, the books and scrolls and scattered notes lit gold by the single lamp in the corner. Eva’s flat looked less like a home than a case that had exploded and never been put back together. Rory had spent enough hours in it to stop seeing the clutter, but under Lucien’s gaze it all seemed to sharpen. “I need two minutes,” he said. Rory laughed once, without humour. “You always needed more than that.” Ptolemy wound around Lucien’s cane next, tail high, purring like a tiny engine. Lucien glanced down at him. “Even your cat has better manners than you.” “He lives here.” “So do you, and yet.” Rory’s fingers tightened on the door. The hallway behind Lucien smelled of wet concrete and old chip fat and the night bus rumbling over Brick Lane. Somewhere below, a shout rose from the curry house kitchen, then died under the hiss of the extractor fan. “You turned up here after eleven,” she said. “Unannounced. On a Tuesday. That’s not a social visit.” “No.” “No?” She leaned into the frame, eyes on his face. “That’s all you’ve got?” His gaze held hers, steady and maddening. “It is not a social visit.” A pulse jumped in her wrist where the crescent scar sat under her cuff. She hated that he still knew exactly where to look when he wanted to unsettle her. Hated more that he didn’t have to try. Rory huffed a breath and stepped back. “Fine. Two minutes. If this turns into one of your little speeches, I’m throwing you down the stairs.” Lucien crossed the threshold with the smooth grace of a man who had never once been thrown anywhere against his will. Ptolemy followed at his heels, pleased with himself, and Rory shut the door hard enough to rattle the frames on the wall. She threw the deadbolts again. One. Two. Three. Lucien watched her from the middle of the cramped living room. “You still lock up as if you expect the walls to bite.” “Living in London makes that sensible.” He tilted his head, taking in the books stacked on the table, the open atlas pinned beneath three teacups, the ring of candles burned to stubs near the sink. “This is Eva’s work. She has not become tidier.” Rory dropped her bag by the sofa. “No. She just took her mess and spread it around me.” Lucien’s mouth curved a fraction at that, though it didn’t reach his eyes. “You always did suit chaos more than you admitted.” “That’s rich coming from you.” His gaze flicked to her mouth and away again. The look lasted less than a second, but it hit with the force of a hand at the waist. Rory moved to the kettle out of reflex, because standing still in front of him had never done her any favours. “You want tea?” “I want you to hear me first.” She set the kettle back on its base with a clack. “That sounded expensive.” “It was.” “Of course it was.” Ptolemy leapt onto the sofa, kneaded Rory’s blanket, and curled into a loaf with his eyes half-closed. Lucien tracked the cat’s movement, then looked back at her. “I have a problem,” he said. Rory crossed her arms. “You have several.” “One in particular.” “Lucien.” “Rory.” The way he used her name made her shoulders pull tight. Not the nickname. Not Carter. Rory, plain and intimate, as if he’d earned the right to shorten her down to one sharp syllable and leave the rest exposed. She folded her expression flat. “Out with it.” He shifted the cane in his hand. “Someone is asking questions about you.” Rory laughed again, this time without any humour at all. “You come here after months of silence to tell me that?” “I came because the questions have become active.” “Active.” “They are not polite inquiries.” She stepped closer before she meant to, anger hot and immediate. “I don’t need your vocabulary lesson, Lucien. Who’s asking?” He studied her face with that strange half-demonic patience, as though her anger had texture he could read with his bare hands. “That depends on the name you still use when you do not want to be found.” Something in the room changed. Even Ptolemy opened one eye. Rory went still. “No.” “Rory—” “No.” She jabbed a finger at his chest, stopping just short of his lapel. “You do not get to walk into Eva’s flat and say things like that after disappearing on me.” His jaw tightened. “I did not disappear.” “You vanished.” Her voice came out low and sharp. “You left a note. One line. ‘It was unwise for us to continue.’ That was it. No explanation. No goodbye. No return of the phone you promised to bring back. Nothing.” His amber eye flashed, and the black one went unreadable, a pool without light. “You wanted honesty. I gave it.” “I wanted more than that.” His gaze dropped to her hand still lifted between them. She jerked it back as if the air around him had burned. Lucien exhaled through his nose. “If I had remained, the consequences would have reached you sooner.” “You don’t know that.” “I do.” “You always think you do.” She folded her arms again, but it did nothing to protect the part of her that still remembered the weight of his coat, the taste of wine on his mouth, the way he’d looked at her like she was a line he wanted to cross and feared crossing at once. “You don’t get to turn up, say some cryptic rubbish, and act like that fixes it.” “I am not asking for absolution.” “Then what are you asking for?” He went quiet. Outside, rain pressed the window with soft, restless taps. The flat hummed around them, the fridge ticking, the kettle beginning to gather heat. Lucien’s mouth settled into a line. “Access.” Rory stared at him. “You’re joking.” “No.” “Lucien.” “Someone came to my office yesterday with one of your old Cardiff names in his mouth.” Her stomach dropped, quick and cold. She didn’t move, but he saw the shift. He always saw too much. “My what?” “An old name,” he said. “Not one of the obvious ones. A name only a small number of people would know.” Rory’s voice flattened. “Tell me who.” “Not here.” “Why not here? You walked into my flat with a threat and you want privacy?” He took one slow step toward her. Rory didn’t retreat. The space between them narrowed until she could smell him, rain and smoke and some expensive cologne with a metallic edge that always reminded her of a knife freshly honed. “Because your walls are thin, and because the man who asked about you followed me for two streets before I led him elsewhere.” Her pulse hammered once, hard. “You led him elsewhere?” “Do you hear another sentence in that?” Her eyes narrowed. “You’re telling me you brought trouble to my door.” “I am telling you I did not allow trouble to remain at your door.” “That’s supposed to comfort me?” “It should.” She stared at him, anger and something much worse turning over in her chest. “You think a few careful words make this all right.” “No.” His voice dropped. “I think I should not have come.” Rory felt that one deep. She hated the way it sounded like a door half-closing. Ptolemy yawned, stretched, and hopped off the sofa to weave around Rory’s ankles before making a circuit of Lucien’s polished shoes. Lucien glanced down and nudged the cat aside with a careful movement of his cane, as if even the gesture had been measured. Rory watched his hands. Long fingers. Clean nails. The cane’s ivory handle catching the lamp light. He looked exactly as he had the last time she’d seen him and not at all like the man she’d spent three months trying not to think about after he left. She crossed to the table and braced her palms on the edge. “Who asked?” Lucien stayed where he was. “You will dislike the answer.” “I dislike your face right now. Get on with it.” “A broker in Soho. Human, by the look of him, though he wore enough warding to make a priest uncomfortable.” Rory’s eyes sharpened. “Name.” “Brodie Vale.” The name meant nothing and too much at once. She searched memory, old faces, old corridors, Cardiff rain, university hallways, Evan’s fingers bruising her arm, the taste of panic, the long running fact of having to reinvent herself just to keep breathing. She hated that the city still held loose threads from her past. Hated more that Lucien had reached into them without asking. “I don’t know him.” “He knew enough about you to use the wrong name.” Lucien’s eye darkened. “And enough about me to believe I would take an interest.” “Why would he think that?” Lucien’s mouth flattened. “Because he was not wrong.” The words landed between them with a heat that turned the room smaller. Rory looked up slowly. “What does that mean?” Lucien’s gaze held hers. He didn’t blink. “It means the part of your life you buried has begun to claw at the surface.” She let out a breath and laughed once, bitter. “You really know how to ruin an evening.” “And yet you still let me in.” “That was a mistake.” His eye tracked the line of her throat, the pulse there. “You have made worse.” The answer should have annoyed her. It should have sent her straight to the door, all three bolts and a final kick for emphasis. Instead it sat there like a hand pressed against a bruise. Rory looked away first, and the movement made her furious. “Tell me what you want,” she said. “Plainly. No velvet, no riddles.” Lucien’s fingers tightened on the cane. He seemed to choose each word with care. “I want you to come with me tonight.” Rory barked a short laugh. “No.” “I expected resistance.” “You expected me to pack a bag and follow you into whatever knife trap you’ve walked into?” “I expected you to ask where.” She folded her arms tighter. “All right. Where?” “Covent Garden.” “And?” “And if I tell you everything here, I risk placing both of us in danger before we reach the street.” Rory stared at him, then at the rain silvering the window, then back to him. He stood so neat and composed in the middle of Eva’s crowded flat that the contrast made him look unreal, like a dangerous illustration cut from a magazine and placed by mistake in the middle of her life. “You show up after months, tell me someone’s digging through my past, and want me to trust you enough to follow you out into the rain.” Her mouth twisted. “You must miss me more than I thought.” For the first time since he’d arrived, Lucien’s composure cracked into something visible. Not much. A tremor in the jaw. A fraction of pain in the set of his mouth. “Yes,” he said. The word hit the room and sat there. Rory went still. Lucien stepped closer, not enough to crowd her, just enough to change the air between them. “I did not come because this was convenient. I came because I heard your name in a place it should not have been spoken, and because I knew you would not hear it from anyone else without deciding you preferred ignorance.” Her throat tightened. She hated that he knew her like that. Hated that he might be right. “And what,” she said quietly, “if I don’t go with you?” His gaze dropped to her wrist, to the crescent scar hidden beneath her cuff, then lifted again. “Then I will spend the night ensuring no one else reaches this flat.” Ptolemy gave a low, offended chirp from the sofa. Rory looked at the cat, then at Lucien, then at the door with its three deadbolts and all the half-forgotten rules she had made for herself after London had swallowed her whole. She should have sent him away. She knew that. She also knew he’d never come here unless something had broken his usual restraint. She grabbed her coat from the chair and shrugged it on in one hard motion. Lucien watched her without moving. “That was quicker than I expected.” “Don’t sound so pleased. I’m not agreeing with you. I’m postponing the argument until after I find out why you dragged your expensive shoes into my life again.” His mouth curved, small and unwilling. “As you wish.” Rory snatched her keys from the dish by the sink and turned back toward him. “If this turns into a set-up, I’ll introduce you to the stairs myself.” Lucien opened the door for her, one hand on the frame, cane angled close to his leg. “I would be disappointed if you did not threaten me properly.” Rory stepped into the hallway, rain damp and close, and glanced back as he followed her out into the narrow landing—
created_at"2026-03-18T10:42:35.018Z" 3/18/2026, 10:42:35 AM
model"openai/gpt-5.4-mini-20260317"
app_id182717
external_user(null)
streamedtrue
cancelledfalse
latency1076
moderation_latency(null)
generation_time16309
tokens_prompt1034
tokens_completion3782
native_tokens_prompt927
native_tokens_completion3152
native_tokens_completion_images0
native_tokens_reasoning75
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.01487925
router(null)
provider_responses
0
endpoint_id"9ee065b2-3d1c-43bc-bdd7-28af3b148282"
id"resp_04dc905d95f0e82e0169ba819b150c8196b25d439d2b3e8598"
is_byokfalse
latency186
model_permaslug"openai/gpt-5.4-mini-20260317"
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-1773830555-PZ97FVou8sf7JUBtMMeC"
upstream_id"resp_04dc905d95f0e82e0169ba819b150c8196b25d439d2b3e8598"
total_cost0.01487925
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
totalTags15
adverbTagCount1
adverbTags
0"she said quietly [quietly]"
dialogueSentences117
tagDensity0.128
leniency0.256
rawRatio0.067
effectiveRatio0.017
95.83% AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount2398
totalAiIsmAdverbs2
found
0
adverb"slowly"
count1
1
adverb"really"
count1
highlights
0"slowly"
1"really"
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)
77.06% AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount2398
totalAiIsms11
found
0
word"pulse"
count3
1
word"flicked"
count1
2
word"silence"
count1
3
word"unreadable"
count1
4
word"weight"
count1
5
word"stomach"
count1
6
word"measured"
count1
7
word"velvet"
count1
8
word"ensuring"
count1
highlights
0"pulse"
1"flicked"
2"silence"
3"unreadable"
4"weight"
5"stomach"
6"measured"
7"velvet"
8"ensuring"
33.33% Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches3
maxInWindow3
found
0
label"let out a breath"
count1
1
label"eyes widened/narrowed"
count1
2
label"stomach dropped/sank"
count1
highlights
0"let out a breath"
1"eyes narrowed"
2"stomach dropped"
100.00% Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells0
narrationSentences143
matches(empty)
100.00% Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount1
hedgeCount2
narrationSentences143
filterMatches
0"look"
hedgeMatches
0"seemed to"
100.00% Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences245
gibberishSentences0
adjustedGibberishSentences0
longSentenceCount0
runOnParagraphCount0
giantParagraphCount0
wordSaladCount0
repetitionLoopCount0
controlTokenCount0
maxSentenceWordsSeen55
ratio0
matches(empty)
100.00% Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans0
markdownWords0
totalWords2398
ratio0
matches(empty)
100.00% Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions32
unquotedAttributions0
matches(empty)
50.00% Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions75
wordCount1537
uniqueNames12
maxNameDensity1.95
worstName"Rory"
maxWindowNameDensity3.5
worstWindowName"Lucien"
discoveredNames
Lucien26
Moreau1
Ptolemy7
Rory30
Brick1
Lane1
Carter1
Cardiff1
Evan1
Eva2
London1
Hated3
persons
0"Lucien"
1"Moreau"
2"Ptolemy"
3"Rory"
4"Carter"
5"Evan"
6"Eva"
places
0"Brick"
1"Lane"
2"Cardiff"
3"London"
globalScore0.524
windowScore0.5
100.00% Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences91
glossingSentenceCount1
matches
0"sounded like a door half-closing"
100.00% "Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches0
per1kWords0
wordCount2398
matches(empty)
100.00% Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount4
totalSentences245
matches
0"hated that he"
1"hated that the"
2"hated that he"
3"Hated that he"
100.00% Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs139
mean17.25
std15.8
cv0.916
sampleLengths
022
155
219
315
425
513
645
76
82
914
1070
116
1211
1326
143
155
1645
1717
181
1914
2013
2138
2225
2351
2423
256
2638
2718
2822
295
3049
313
327
3314
342
354
3627
376
387
393
401
411
4239
438
4413
4521
468
471
485
4920
100.00% Passive voice overuse
Target: ≤2% passive sentences
passiveCount2
totalSentences143
matches
0"been thrown"
1"been measured"
100.00% Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount0
totalVerbs270
matches(empty)
100.00% Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount1
semicolonCount0
flaggedSentences1
totalSentences245
ratio0.004
matches
0"Rory stepped into the hallway, rain damp and close, and glanced back as he followed her out into the narrow landing—"
90.98% Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount1542
adjectiveStacks1
stackExamples
0"strange half-demonic patience,"
adverbCount67
adverbRatio0.04345006485084306
lyAdverbCount5
lyAdverbRatio0.00324254215304799
100.00% Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences245
echoCount0
echoWords(empty)
100.00% Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences245
mean9.79
std8.27
cv0.845
sampleLengths
022
124
231
37
412
515
625
73
810
919
1026
116
122
137
147
1530
1619
1721
186
195
206
2113
225
238
243
255
266
2720
2819
298
309
311
3210
334
347
356
3614
3716
388
397
4018
4121
4222
435
441
451
461
4711
4812
496
45.51% Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats11
diversityRatio0.23673469387755103
totalSentences245
uniqueOpeners58
51.68% Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount2
totalSentences129
matches
0"Somewhere below, a shout rose"
1"Instead it sat there like"
ratio0.016
52.56% Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount54
totalSentences129
matches
0"She pulled the door in"
1"His amber eye fixed on"
2"She found it in the"
3"She tipped her chin toward"
4"He looked past her into"
5"She leaned into the frame,"
6"His gaze held hers, steady"
7"She hated that he still"
8"She threw the deadbolts again."
9"He tilted his head, taking"
10"His gaze flicked to her"
11"She set the kettle back"
12"She folded her expression flat."
13"He shifted the cane in"
14"She stepped closer before she"
15"He studied her face with"
16"She jabbed a finger at"
17"His jaw tightened."
18"Her voice came out low"
19"His amber eye flashed, and"
ratio0.419
0.00% Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount120
totalSentences129
matches
0"The first deadbolt clacked free,"
1"Rory paused with her hand"
2"She pulled the door in"
3"His amber eye fixed on"
4"The black one slid to"
5"Ptolemy shot past her ankle"
6"Lucien’s mouth twitched."
7"Rory stared at him for"
8"She found it in the"
9"She tipped her chin toward"
10"He looked past her into"
11"Eva’s flat looked less like"
12"Rory had spent enough hours"
13"Rory laughed once, without humour."
14"Ptolemy wound around Lucien’s cane"
15"Lucien glanced down at him."
16"Rory’s fingers tightened on the"
17"The hallway behind Lucien smelled"
18"She leaned into the frame,"
19"His gaze held hers, steady"
ratio0.93
38.76% Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount1
totalSentences129
matches
0"Even Ptolemy opened one eye."
ratio0.008
96.02% Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences61
technicalSentenceCount4
matches
0"She pulled the door in and found Lucien Moreau standing on the landing as if he belonged there, charcoal coat immaculate, platinum hair slicked back, ivory-hand…"
1"Ptolemy shot past her ankle and wrapped himself around Lucien’s shoe with all the confidence of a cat who’d never feared consequences in his life."
2"He studied her face with that strange half-demonic patience, as though her anger had texture he could read with his bare hands."
3"She searched memory, old faces, old corridors, Cardiff rain, university hallways, Evan’s fingers bruising her arm, the taste of panic, the long running fact of …"
100.00% Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags15
uselessAdditionCount0
matches(empty)
100.00% Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags8
fancyCount1
fancyTags
0"Rory muttered (mutter)"
dialogueSentences117
tagDensity0.068
leniency0.137
rawRatio0.125
effectiveRatio0.017
84.3912%