Run: 2026-03-09-01KKABZSJY7JH9TKB077CE4QB2

Run Details

Duration:
1m 36s
Cost:
$0.060968
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 slid back with a hard metal scrape. Then the second. Then the third. Aurora pulled the door open six inches and froze. Lucien Moreau stood in the narrow hall outside Eva’s flat as if Brick Lane had turned itself into a stage and thrown up the wrong actor. Rain glazed the shoulders of his charcoal coat. His pale hair, usually pressed into place with insulting precision, had come loose at the temples. One hand rested on the ivory handle of his cane. The other held a folded black umbrella that dripped onto the threadbare landing. For a beat, neither of them moved. Ptolemy wound around Aurora’s bare ankles and let out a rusty complaint. Lucien’s amber eye flicked to the cat, then back to her face. His black eye gave nothing away. “You changed the locks.” Aurora kept the chain on. “You noticed from outside?” “You took long enough with the bolts.” “You took long enough to knock.” His mouth shifted, not a smile, not yet. “You always did believe in a warm welcome.” She should have shut the door. That part came to her at once, clear and sensible. Shut it. Walk back into Eva’s flat. Let him stand in the corridor with his expensive shoes and his bad timing. Instead she looked at him properly, and that ruined it. Rain had darkened the line of his collar. A thin cut marked the edge of his jaw, half hidden beneath the clean angle of a shave that looked fresh enough to sting. He had lost weight since she’d last seen him. It sharpened him. Made him look less polished, more dangerous. More real. She hated that she noticed. “What are you doing here?” “Good evening to you as well, Rory.” “Don’t call me that.” The answer landed too fast. Too sharp. It cut through the little patch of air between them. Lucien’s fingers tightened around the umbrella handle. “Then I deserved that.” “You deserved worse.” “That, too.” He did not push. He did not lean on the frame and charm his way in. If anything, the stillness unsettled her more. Lucien had always known how to fill a room, a street, a conversation. Now he stood in silence and let the rain tick from his coat. Behind her, the flat looked like a paper storm had gone through it. Books in stacks on the floor. Scrolls tied in red cord on the arm of the sofa. Eva’s notes spread across the kitchen counter in a burst of arrows, circles, and frantic underlining. The air smelled of cardamom drifting up from the curry house below and dust warmed by the radiator. Lucien glanced past her shoulder. “Eva’s not here.” “No.” “She left you alone.” Aurora folded her arms. “I’m twenty-five, Lucien. Not a child.” “I noticed that as well.” His gaze dropped for half a second. Bare legs. One of Eva’s oversized jumpers hanging off one shoulder. Her left hand still braced against the door, scar pale against the wood. Heat climbed her neck. She hated that too. “What do you want?” “I needed to see you.” She gave a small, dry laugh. “That line worked for you often?” “It’s not a line.” “No, of course not. You only turn up on my doorstep after months of silence because you felt poetic.” “I did not come for poetry.” “Pity. It would’ve been cheaper than whatever this suit cost.” That almost drew the smile out of him. Almost. It vanished before it reached his mouth. The corridor light buzzed overhead. Somewhere downstairs, a delivery scooter coughed to life and rattled off into the wet street. Aurora shifted her grip on the door. “If this is business, I’m off the clock.” “It isn’t business.” “Then you’ve come to the wrong place.” She started to close the door. Lucien put his palm flat against the wood. He used no force. He did not need to. The gesture alone sent a bolt of old memory through her—his hand on the wall beside her head in a dim back room in Soho, his voice low, his body held tight as wire because if he touched her then he would not have stopped at touching. Aurora’s breath caught. She hated that most of all. “Five minutes,” he said. “You had months.” “I know.” “That answer supposed to fix it?” “No. But it’s the truth.” She looked at his hand against her door. Elegant fingers. A narrow scar across the knuckles she did not remember. New. There had been several nights in London when she had wondered where those hands were and resented herself every time the thought arrived. “Move your hand.” Lucien took it off at once. That should have made shutting him out easier. It did not. She unhooked the chain and stepped back. “Five minutes. If Eva walks in and finds you here, you can explain yourself to her.” “Your friend still hates me?” “She’s become more articulate about it.” He dipped his head and crossed the threshold. Ptolemy stopped in front of Lucien’s shoes, sniffed the wet leather, and sat down as if judging him. Lucien closed the umbrella, set it by the door, and leaned his cane against the wall with care that made the small hallway feel suddenly intimate. He had been here once before, late, bloody, and grinning through a split lip while Eva threatened to brain him with a frying pan. Aurora had stitched his shoulder at the kitchen table that night. He had watched her the whole time with that unbearable, unblinking focus, and she had made the mistake of looking up. Tonight there was no blood on him that she could see. That should have eased her. It didn’t. “Stay there,” she said. He glanced around the cramped room. “There are not many places to go.” “Use one of them.” Aurora moved into the kitchen alcove and put the counter between them. Her pulse beat in her throat. She reached for the kettle because her hands needed work. The old thing was already half full. “You still make tea when you’re angry.” She flicked the switch. “You still mistake observation for insight.” “It was both.” Steam began its low shudder. Rain tapped the single window above the sink. Across the room, Lucien remained where she had left him, one shoulder near the bookshelf, coat still on, posture held with that effortless grace that had first annoyed her before it fascinated her. He took in the papers on the table. “Research?” “None of your concern.” “Anything dangerous?” “In this flat? Always.” A corner of his mouth tipped. “There you are.” “There who is?” “The woman who insulted me in three languages over a bottle of terrible wine.” Aurora reached for two mugs, then stopped and took only one. “That woman learned her lesson.” “Did she.” “She did not let pretty liars into her life again.” That landed. Properly. She saw it in the shift of his shoulders, small but sharp. “You think that was all it was.” “What, between us?” She turned and faced him across the cramped room. “No, Lucien. I think that would’ve been simpler.” The kettle clicked off. Neither of them moved for it. Lucien looked at her with that split gaze, amber warmth cut by the blank depth of the other eye. It made him look divided, dangerous, impossible to read unless you knew him, and knowing him had caused enough damage to count as a bad habit. “I left because if I stayed,” he said, “you would have been used against me.” Aurora barked a laugh. “You do love that one. Protection. Men always polish it until it shines.” “Rory—” “Don’t.” His jaw set. She stepped away from the counter. “You didn’t leave because you were noble. You left because you don’t trust anybody with the ugly parts. You left because the second things became real, you cut the line and called it mercy.” “That is not what happened.” “Then enlighten me.” He held her gaze. “The people I had dealings with knew your face.” “And?” “And one of them asked what I would trade for your address.” The room tightened. Aurora folded her arms harder across herself. “You could have told me.” “Yes.” “You could have warned me.” “Yes.” “You could have let me decide whether I wanted to stay involved with a man whose enemies shopped for my location.” “Yes.” Each answer came clean. No excuse. No spin. Her anger wobbled for a beat, then came back with teeth. “But you decided for me.” “I did.” “Why?” Lucien exhaled through his nose. “Because I knew what your answer would have been.” She stared at him. He stepped away from the bookshelf. One pace. Then another. He stopped near the table, leaving enough space that she could have crossed it or kept it. His coat hung open now, rainwater dark at the lapels. The cut at his jaw stood out more under the kitchen light. “You would have asked questions,” he said. “You would have wanted names, routes, leverage. You would have looked for angles I had missed. You would have involved yourself because you cannot leave a problem alone once it starts speaking to you.” “That’s called competence.” “It’s called you.” He swallowed. “And I wanted you out of it.” Aurora’s hands dropped to her sides. “You don’t get to want things for me like that.” “I know.” “Do you? Because it sounds like you learned nothing.” His expression changed then, not much, only enough to strip the polish off him. Weariness showed through. Regret. Something rougher. “I learned precisely how much damage I could do by disappearing.” The words hit with the blunt weight of honesty. She did not trust honesty from him. She had wanted it too long. Ptolemy jumped onto the sofa and began washing one paw with obscene calm. Aurora looked away first. She reached for the mug, poured hot water over the tea bag, and watched the brown swirl spread. The domestic motion steadied her. A little. “When did you decide to come here?” “An hour ago.” “That’s unlike you. You usually plan a dramatic entrance.” “I was in the area.” She shot him a flat look. He inclined his head. “I was not in the area.” “Better.” “I stood across the street for ten minutes.” “Worse.” “I know.” She wrapped both hands around the mug. “What changed?” Lucien’s gaze flicked to the rain-ribboned window. “A contact brought me news tonight. The person who made that enquiry about you is dead. The others tied to him are gone, bought off, buried, or frightened into religion. Whatever threat touched you through me has ended.” Aurora took that in. Relief came first, thin and late, followed by offence so sharp it almost made her laugh. “So you came because it’s safe now.” “I came because I had no excuse left.” Silence spread between them, thick as velvet. In the flat below, someone shouted for more naan. A pan clanged. The building gave a small shiver under a passing lorry. Ordinary life kept moving with indecent ease. Aurora set the mug down untouched. “You could have written.” “I wrote six letters.” “Where are they?” “I burned them.” She stared. “They all sounded like lies,” he said. “Or apologies shaped to spare myself.” “That would have been a first.” His mouth twitched with something pained. “You see why I liked you.” “Liked?” “Poor choice.” “Yes.” He took another step closer. This close, she could smell rain, wool, and the faint spice of whatever expensive soap he used when he wanted the world at a distance. Beneath it sat the metallic trace of blood, hidden but not gone. Her eyes dropped to his jaw again. “Who cut you?” “No one important.” “Lucien.” “Glass.” “Yours or someone else’s?” “Someone else’s window.” She held out her hand. “Sit.” His brow lifted. “You’ve got blood under your collar and if you drip on Eva’s notes she’ll salt your grave with footnotes.” That drew a real smile, brief and dangerous. “You assume I intend to survive the evening.” “I intend it. Sit down.” He lowered himself into the chair at the table with a care he tried to disguise. The cane stayed within reach. Aurora pulled open a drawer, found the battered first-aid tin, and set it down with more force than needed. “I am not forgiving you.” “I did not ask.” “Good.” She came around behind him, close enough to feel the heat coming off his skin through the damp coat. “Take this off.” He slid the coat from his shoulders and folded it over the chair back. The suit beneath had a tear near the left side, clean and narrow. When she peeled the fabric aside she found a slice along his upper ribs, no longer fresh but not clean enough for comfort. “You call this nothing.” “I’ve had worse.” “That isn’t a standard. Hold still.” She soaked gauze in antiseptic. Lucien braced one hand on the edge of the table. “This will sting.” “I remember your bedside manner.” Aurora pressed the gauze to the cut. His breath hissed through his teeth. “Christ.” “Language.” “You just assaulted me with alcohol.” “You turned up uninvited.” “Fair.” She cleaned the wound in silence for a moment, fingers steady despite everything else. His skin was warm. The muscles beneath it tensed and shifted with each breath. Too many memories lived in her hands. The line of his shoulder under her palm. The flex of him when he laughed against her throat. The way he had once taken her wrist and pressed his mouth to the crescent scar there as if it deserved reverence. She drew back before the memory could root. Lucien turned his head slightly. “You’re angry enough to hurt.” “That’s rich.” “I did not mean physically.” “I know what you meant.” “Then you know I earned it.” Aurora set fresh gauze in place and taped it down. “You don’t get points for admitting fault after the damage.” “No.” “Stop agreeing with everything. It’s irritating.” His head turned a touch more, enough that she caught the edge of his profile. “Would you prefer a fight?” “I would have preferred honesty six months ago.” That stopped them both. Her hand remained against his side for a beat too long. She felt his breath pause beneath her palm. When she stepped back, the air turned cold. Lucien faced forward again and looked at the spread of Eva’s notes without seeing them. “I stood outside your building three times before tonight.” Aurora blinked. “What?” “I came in November. Then again in January. Once last month.” He rested his hand on the table, long fingers splayed against the paper. “Each time I left.” She stared at the back of his head, at the pale line where damp hair had dried at his collar. “Why tell me that now?” “Because if I keep choosing silence, I will lose what little chance remains to speak plainly.” Her chest tightened. “And now you can speak plainly.” “Yes.” She moved around the table until she stood in front of him. Lucien lifted his face to hers. Seated, he still carried that impossible steadiness, but from here she could see strain in the lines around his eyes. He looked like a man who had finally stopped rehearsing. “Then do it,” she said. His gaze dropped to her mouth and came back up without shame. “I wanted you from the first night you looked at me as if you saw every trick and stayed anyway.” Aurora’s pulse jumped. “I left because wanting you became something worse,” he went on. “It became need, and I do not handle need with grace.” “That I noticed.” A breath of humour crossed his face and vanished. “I thought distance would blunt it,” he said. “It did not. It made me rude, sleepless, and unfit for company. Marseille was unbearable. Soho was worse. Every clever woman in London sounded disappointing.” She folded her arms to keep from reaching for him. “That sounded dangerously close to charm.” “It was an insult to London, not a seduction.” “Mm.” “I missed you.” His voice roughened on the last word, stripped of all the polished edges she had once accused him of hiding behind. “I missed your mind. I missed your temper. I missed the way you looked at me when you were one question away from anger and one breath away from kissing me.” The room seemed to tilt. Aurora swallowed. “You made that last part impossible.” “I know.” “You don’t get to walk in here, bleed on Eva’s furniture, and speak as if nothing happened.” “I am not asking for nothing.” “Then what are you asking for?” Lucien held her gaze. He did not reach for her. Did not tip the moment with some easy line. He sat there with a bandage at his ribs and rain still drying on his cuffs and looked more open than she had ever seen him. “A conversation you should have had months ago,” he said. “And if you still want me gone after that, I will go.” Aurora breathed in. Cardamom. Wet wool. Antiseptic. Him. Outside, Brick Lane muttered under the rain. Inside, Ptolemy leapt down from the sofa and threaded between her ankles, tail high, impatient with human damage. Aurora glanced at the bolts on the door, then back at Lucien. “You’ve had your five minutes.” He waited. She pulled out the chair opposite him and sat. “Start with the part you left out when you disappeared.”
created_at"2026-03-09T22:37:52.111Z" 3/9/2026, 10:37:52 PM
model"openai/gpt-5.4-20260305"
app_id182717
external_user(null)
streamedtrue
cancelledfalse
latency6251
moderation_latency(null)
generation_time95434
tokens_prompt1034
tokens_completion4783
native_tokens_prompt927
native_tokens_completion3910
native_tokens_completion_images0
native_tokens_reasoning176
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.0609675
router(null)
provider_responses
0
endpoint_id"9ff5625c-403f-4d7f-b895-58ac7295062c"
id"resp_0caf58001bdc25b10169af4bc09b6c8197a14ac3d634fcfcbd"
is_byokfalse
latency309
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-1773095872-6SOHXkhipE6xjSzRrQOU"
upstream_id"resp_0caf58001bdc25b10169af4bc09b6c8197a14ac3d634fcfcbd"
total_cost0.0609675
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
totalTags13
adverbTagCount0
adverbTags(empty)
dialogueSentences170
tagDensity0.076
leniency0.153
rawRatio0
effectiveRatio0
94.88% AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount2927
totalAiIsmAdverbs3
found
0
adverb"suddenly"
count1
1
adverb"precisely"
count1
2
adverb"slightly"
count1
highlights
0"suddenly"
1"precisely"
2"slightly"
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)
65.84% AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount2927
totalAiIsms20
found
0
word"flicked"
count3
1
word"weight"
count2
2
word"charm"
count2
3
word"unsettled"
count1
4
word"silence"
count5
5
word"pulse"
count2
6
word"effortless"
count1
7
word"warmth"
count1
8
word"velvet"
count1
9
word"grave"
count1
10
word"standard"
count1
highlights
0"flicked"
1"weight"
2"charm"
3"unsettled"
4"silence"
5"pulse"
6"effortless"
7"warmth"
8"velvet"
9"grave"
10"standard"
100.00% Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches0
maxInWindow0
found(empty)
highlights(empty)
100.00% Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells0
narrationSentences220
matches(empty)
100.00% Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount3
hedgeCount3
narrationSentences220
filterMatches
0"look"
1"feel"
hedgeMatches
0"started to"
1"tried to"
2"seemed to"
100.00% Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences377
gibberishSentences0
adjustedGibberishSentences0
longSentenceCount0
runOnParagraphCount0
giantParagraphCount0
wordSaladCount0
repetitionLoopCount0
controlTokenCount0
maxSentenceWordsSeen48
ratio0
matches(empty)
100.00% Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans0
markdownWords0
totalWords2926
ratio0
matches(empty)
100.00% Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions31
unquotedAttributions0
matches(empty)
88.63% Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions65
wordCount1874
uniqueNames11
maxNameDensity1.23
worstName"Aurora"
maxWindowNameDensity2
worstWindowName"Aurora"
discoveredNames
Moreau1
Eva6
Brick2
Lane2
Aurora23
Soho1
London1
Lucien19
Ptolemy4
Rain3
One3
persons
0"Moreau"
1"Eva"
2"Aurora"
3"Lucien"
4"Ptolemy"
5"Rain"
places
0"Brick"
1"Lane"
2"Soho"
3"London"
globalScore0.886
windowScore1
95.65% Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences138
glossingSentenceCount3
matches
0"looked like a paper storm had gone throug"
1"as if judging him"
2"looked like a man who had finally stopped"
100.00% "Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches1
per1kWords0.342
wordCount2926
matches
0"no longer fresh but"
100.00% Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount1
totalSentences377
matches
0"hated that she"
100.00% Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs226
mean12.95
std15.16
cv1.171
sampleLengths
016
19
273
37
412
518
64
79
87
96
1016
1137
1210
1353
145
155
167
174
1817
1911
203
212
2249
2364
248
251
264
2710
285
2931
308
314
325
3312
344
3519
366
3710
3816
3920
4015
413
427
436
4464
459
464
473
482
496
100.00% Passive voice overuse
Target: ≤2% passive sentences
passiveCount0
totalSentences220
matches(empty)
100.00% Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount0
totalVerbs320
matches(empty)
100.00% Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount1
semicolonCount0
flaggedSentences1
totalSentences377
ratio0.003
matches
0"The gesture alone sent a bolt of old memory through her—his hand on the wall beside her head in a dim back room in Soho, his voice low, his body held tight as wire because if he touched her then he would not have stopped at touching."
100.00% Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount1877
adjectiveStacks0
stackExamples(empty)
adverbCount73
adverbRatio0.038891848694725624
lyAdverbCount8
lyAdverbRatio0.004262120404901438
100.00% Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences377
echoCount0
echoWords(empty)
100.00% Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences377
mean7.76
std6.56
cv0.846
sampleLengths
010
13
23
39
426
58
616
710
813
97
1012
1112
126
134
145
154
167
176
188
198
206
2110
222
235
2414
2510
268
2724
289
293
307
312
325
335
347
354
365
372
3810
397
404
413
422
434
4412
457
4613
4713
4813
496
45.49% Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats17
diversityRatio0.27320954907161804
totalSentences377
uniqueOpeners103
89.61% Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount5
totalSentences186
matches
0"Then the second."
1"Then the third."
2"Instead she looked at him"
3"Somewhere downstairs, a delivery scooter"
4"Too many memories lived in"
ratio0.027
56.56% Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount76
totalSentences186
matches
0"His pale hair, usually pressed"
1"His black eye gave nothing"
2"His mouth shifted, not a"
3"She should have shut the"
4"He had lost weight since"
5"It sharpened him."
6"She hated that she noticed."
7"It cut through the little"
8"He did not push."
9"He did not lean on"
10"His gaze dropped for half"
11"Her left hand still braced"
12"She hated that too."
13"She gave a small, dry"
14"It vanished before it reached"
15"She started to close the"
16"He used no force."
17"He did not need to."
18"She hated that most of"
19"She looked at his hand"
ratio0.409
27.20% Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount161
totalSentences186
matches
0"The first deadbolt slid back"
1"Aurora pulled the door open"
2"Lucien Moreau stood in the"
3"Rain glazed the shoulders of"
4"His pale hair, usually pressed"
5"The other held a folded"
6"Ptolemy wound around Aurora’s bare"
7"Lucien’s amber eye flicked to"
8"His black eye gave nothing"
9"Aurora kept the chain on."
10"His mouth shifted, not a"
11"She should have shut the"
12"That part came to her"
13"Walk back into Eva’s flat."
14"Rain had darkened the line"
15"A thin cut marked the"
16"He had lost weight since"
17"It sharpened him."
18"She hated that she noticed."
19"The answer landed too fast."
ratio0.866
53.76% Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount2
totalSentences186
matches
0"If anything, the stillness unsettled"
1"Now he stood in silence"
ratio0.011
100.00% Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences72
technicalSentenceCount4
matches
0"Lucien Moreau stood in the narrow hall outside Eva’s flat as if Brick Lane had turned itself into a stage and thrown up the wrong actor."
1"A thin cut marked the edge of his jaw, half hidden beneath the clean angle of a shave that looked fresh enough to sting."
2"Across the room, Lucien remained where she had left him, one shoulder near the bookshelf, coat still on, posture held with that effortless grace that had first …"
3"The way he had once taken her wrist and pressed his mouth to the crescent scar there as if it deserved reverence."
100.00% Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags13
uselessAdditionCount0
matches(empty)
100.00% Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags8
fancyCount0
fancyTags(empty)
dialogueSentences170
tagDensity0.047
leniency0.094
rawRatio0
effectiveRatio0
90.5873%