Run: 2026-03-18-01KM0A4GRXPFHWDBSSWKP721YN

Run Details

Duration:
21.8s
Cost:
$0.006270
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
Aurora Carter kept her key between her fingers until the last click faded in the lock. The flat above the curry house on Brick Lane always smelled like cumin and books at the same time—spice seeping through the floorboards, paper dust hovering where the tabby had stopped to knead. Ptolemy padded across the hall runner, tail up like a question mark, and watched the door with bright, uninterested eyes. The knock didn’t come. The door handle moved anyway. Aurora’s grip tightened. She didn’t yank the door open, didn’t stall to look through the peephole. She leaned her shoulder into the wood and pulled the deadbolt with a slow, controlled turn, then let the door swing inward. Lucien Moreau stood on the other side like he’d stepped out of a painting someone had paid to keep sharp. Charcoal suit. Slicked-back platinum blond. Ivory-handled cane angled down, tip hovering a fraction above the floorboards as if it belonged there. One of his eyes looked amber. The other looked black. Aurora didn’t move away. She didn’t widen her stance, either. Her small crescent scar on her left wrist flashed as she shifted her hand to rest it against the doorframe. “You should’ve knocked,” she said. Lucien’s mouth held a shape that almost passed for a smile. It stayed thin. “You moved the deadbolt last week,” he said. His voice carried that clean, controlled rhythm that made every word sound expensive. “Three locks. One after another. I counted.” Aurora stared him down. The tabby slipped between their legs, circling once before pressing its face against Lucien’s trouser leg like it accepted him. Lucien glanced down, then back up at Aurora without slowing. “You still keep Ptolemy,” he said. “She keeps herself,” Aurora replied. “Who let you in?” Lucien lifted his cane a touch. The motion didn’t threaten. It just announced he could. The ivory handle looked too smooth to trust. “I didn’t open the door,” he said. “You did. You always did.” Aurora’s throat tightened. She hadn’t let herself think about that line in months—hadn’t let herself think about his words at all, not since the night they’d parted and left each other with receipts that didn’t add up. She stepped back half an inch to clear the doorway. Her flatmate’s clutter crowded in behind her: stacked books along the walls, scrolls tucked into bookshelves, notes pinned to corkboards like the room had been mapping a storm for weeks. “Get inside,” she said. “If you’re here for a fight, pick a safer room than the one full of paper.” Lucien crossed the threshold with the slow confidence of a man who’d walked into worse places and walked out with his coat still on. He didn’t bump anything. He didn’t glance at the mess like it annoyed him. He moved as if the room had already agreed to his presence. Aurora watched his cane stay angled just right, blade concealed where no one would think to look. She’d heard rumours. She’d seen enough to believe them. She’d also seen him smile once—warm, quick, almost reckless—before everything turned sour. He paused near the small table by the window. A cup of tea sat there cooling, forgotten. One page from a notebook lay open, pen capped beside it. Lucien looked at the pen first. “Still taking notes,” he said. “Still stalking,” Aurora shot back. He didn’t flinch. He placed his cane carefully beside the table, as if he didn’t want to startle the house. “I walked in because you stopped answering,” he said. “It didn’t seem like the right sort of distance.” Aurora’s jaw tightened. She kept her hands at her sides so she wouldn’t grip anything and tear it apart. Books didn’t deserve that. Paper didn’t deserve her anger. “You left,” she said. “You didn’t stop answering. You stopped existing.” Lucien’s gaze dragged across her face like he searched for something he’d misplaced. “I didn’t leave to disappear,” he said. “I left because you asked me to.” Aurora blinked once. The memory snapped sharp as ice. Her own words from that night—how she’d thrown them like darts and convinced herself the steel wouldn’t hurt him. “I asked you to protect yourself,” she said. “You chose a different kind of protection.” Lucien shifted his weight, cane handle steady. His amber eye caught the dim light from the window. The black one swallowed it. “You wanted the truth,” he said. “You told me you could handle the truth.” Aurora felt heat climb her neck. “Don’t act like you listened to my words.” “I listened,” Lucien said. He leaned slightly forward, not threatening, just close enough that Aurora could smell winter air trapped in his coat and something faintly burnt beneath it. “I listened right up until the moment you decided the truth meant you’d been wrong about me.” Aurora’s fingers twitched against her palm. She pictured that night again: her flat dim, his suit too clean for the room, his voice low and careful. The way she’d latched onto the idea that he wanted her for something cheap and called it instinct. She’d been wrong in ways that still sat under her skin. “That’s not fair,” she said. “Fair,” Lucien repeated, as if he tasted it and didn’t like what it left behind. He glanced at the open notebook and then back at her. “When you left my name in your mouth like it could burn you, you didn’t ask for fair.” Aurora’s mouth opened, then shut. She refused to give him the satisfaction of her flinching. She refused to let the room hear how much her chest had remembered him. “You came here because you’ve got new information,” she said. “That’s what you do. That’s what you call it when you don’t want to admit you miss being near me.” Lucien held her stare. He didn’t deny it. That made her angrier. “I came here,” he said, “because I heard you took a job delivering for Golden Empress.” Aurora frowned. “So?” He took a slow step toward the table, then stopped short as if he’d hit an invisible line she’d drawn with her silence. “So you’ve been tired,” he said. “So you’ve been hungry. So you’ve been pretending the world owes you fewer problems than it keeps offering.” Aurora’s laugh came out short, brittle. “You don’t get to show up and psychoanalyse me.” “I don’t need to,” Lucien said. “I watched you from a distance. I hate that I did.” Aurora’s stomach tightened. “Of course you did. You always—” Lucien cut in, his voice steady but edged. “I never always. Stop turning me into a rule.” Aurora stared at him. The tabby rubbed its cheek against Lucien’s shin again, then sat and stared at Aurora like a judge waiting for the verdict. Aurora took a breath. She let it out through her nose. She moved her gaze to his cane. “Your blade,” she said. “You brought it into a living room.” Lucien glanced at the cane, then at her again. “It was a habit.” “It was a threat,” Aurora replied. “It was a tool,” Lucien corrected, then softened his tone by half a degree without losing its steel. “You think I come here to hurt you. That’s still the story you keep in your head because it makes the hurt easier to swallow.” Aurora’s throat worked. “And you show up unannounced because it makes you feel better.” Lucien’s mouth tightened. “It made me feel worse.” Silence sat between them, thick and lived-in. Aurora heard the curry house below—muffled voices, a spoon clinking against a pot. Life continued with brutal indifference. Aurora crossed to the table and snatched the cooling tea cup without drinking. Heat still lived in the ceramic. “What do you want?” she asked. Lucien’s gaze followed the cup, then her wrist. The scar. He didn’t stare, but Aurora felt it like a finger tracing her skin. “You want me to say it,” he said. “Just say it.” Lucien looked at her properly. No wandering eyes. No checking the room like he expected someone else to appear. His heterochromatic stare steadied on her, amber burning warmer than it should, black absorbing everything she tried to hide. “I wanted to apologise,” he said. Aurora laughed again, and this time it had a bitter edge. “You wanted to apologise, so you kicked my door in?” “I didn’t kick it in,” Lucien said. He took a measured step closer. Aurora didn’t back away; she kept her feet planted like she refused to lose ground. “You opened it. You always did. That’s why I walked in instead of forcing the locks.” Aurora set the tea cup down too hard. The spoon inside clinked. Ptolemy sprang up and trotted away like the sound had offended it. Lucien didn’t react to the clatter. He kept his eyes on Aurora, his hands empty except for the cane handle. “You didn’t apologise the night you left,” Aurora said. “No,” he agreed, like he’d already counted the cost of the silence. “I didn’t. I picked the lie that would keep you safe, and I convinced myself you would thank me for it later.” Aurora’s heartbeat bumped. “What lie?” Lucien’s jaw worked. He looked toward the corkboard covered in notes and strings of pinned paper—her obsession, her attempt to solve the world by lining it up into neat patterns. “I told you the demon in Avaros had no interest in you,” he said. “I told you you’d never get wrapped up in any of it.” Aurora’s skin prickled. “You said it like it was a promise.” Lucien’s voice lowered. “It was a promise I couldn’t afford to break.” Aurora swallowed. The past rose up in her like a tide: the night she’d found something in his pocket, the way his coat had brushed her fingers, the way he’d moved to block her view. Not violence. Not fear. Just control. “Then you lied,” she said. “You told me what you wanted me to believe.” Lucien nodded once. “I did.” Aurora held his gaze. “And you walked away before I could decide what that meant.” “I walked away because you were bleeding,” Lucien said. “You had that cut on your wrist. You’d promised yourself you wouldn’t need anyone. You told me not to touch you.” Aurora’s left hand shot up without permission, thumb pressing over the scar like it could cover the memory. She hated that he remembered that detail. She hated more that he used it like proof. “You think that gives you the right to come back?” she demanded. Lucien didn’t blink. “I think it gives me the chance to stop making you do the hard part alone.” Aurora drew a sharp breath. Her eyes burned. She refused to let tears pull focus; she refused to give him that kind of power again. “What hard part?” she asked. Lucien’s cane shifted as he adjusted his stance. He kept his weight balanced, careful, like he knew the floor could betray him. “The part where you keep choosing responsibility,” he said. “The part where you keep running errands for strangers because you can’t stand asking for help. The part where you keep your anger tucked in your chest like it’s a locked room no one can find.” Aurora’s mouth went dry. “You don’t know me.” Lucien’s expression changed. Not anger. Something more honest. Hurt, pressed into a shape that didn’t fit. “I knew you before you knew yourself,” he said. Aurora’s chest tightened so hard she had to look away to find her footing. Her eyes landed on the open notebook on the table. Lines of writing. A half-drawn diagram in the margin, edges smudged as if she’d dragged her thumb across it in frustration. She’d done the work for weeks. She hadn’t done it for him. She forced her gaze back. “Then tell me why you didn’t come back when it mattered.” Lucien inhaled through his nose. The amber eye flicked over her face like a scan for cracks. “I didn’t trust that you wanted me,” he said. Aurora’s laugh softened into something uglier. “You didn’t trust me.” Lucien shook his head. “I trusted you. I didn’t trust the aftermath. The way you flinch when someone gets close.” Aurora’s breath caught. “I don’t flinch.” Lucien’s mouth twitched. “You flinch so hard your whole body does it. It shows up in your shoulders. In your jaw. In the way you keep your voice flat like you’re bracing against impact.” Aurora stepped back until her calves hit the edge of a chair. She didn’t sit. She couldn’t. She kept standing, stubborn, breath uneven. “Say what you came to say,” she said. Lucien’s gaze dropped to her left wrist again, then returned. “I came to ask you to talk to me. Not through messages you never answered. Not through distance you hid behind. Face to face.” Aurora’s fingers curled against the chair edge until her knuckles whitened. “I didn’t answer,” she said, “because you left me holding a story with no ending.” Lucien nodded. “I deserved that.” Aurora’s voice came out low. “Did you?” Lucien’s eyes held hers. “No.” The honesty in it hit Aurora harder than any insult could. She hated him for it. She wanted him anyway, like wanting had never gone away, only gotten buried under anger and errands and cold nights above bars. She forced herself to steady her voice. “What happened in Avaros?” Lucien’s shoulders tightened. He looked away for half a second, toward the window where London lights smeared against the glass. Then he turned back. “You asked me once,” he said, “why I kept a blade hidden in a cane even when the street felt safe.” Aurora blinked. “I don’t remember asking that.” Lucien’s mouth softened into something almost gentle. “You asked it without words. Your eyes did it. You looked at my cane like you wanted to know if you should be afraid of what you already wanted.” Aurora froze. “I—” Lucien cut her off, but his voice held warmth under it. “You wanted me to tell you I didn’t bring danger with me.” Aurora’s pulse hammered. The room felt smaller. The air felt like it had thickened. “And did you tell me?” she asked. Lucien stepped closer until Aurora had to tilt her chin up to keep looking him in the face. The space between them shrank fast, sharp with electricity. “I told you I was fine,” he said. “I told you I could handle it. I told you it wouldn’t touch you.” Aurora stared at his heterochromatic eyes. “And then it did.” Lucien’s gaze didn’t drop. “It started to.” Aurora swallowed. Her voice turned rough. “So you left.” “Yes.” “Because you thought I’d be better without you.” Lucien’s hand moved, slow as a promise, and stopped just short of her wrist. He didn’t touch her scar. He didn’t claim her. He gave her the choice with the distance. “I left because I wanted to keep you alive,” he said. Aurora’s breath shuddered. Her anger still sat in her throat, but it shifted. It became something else—something that wanted to be named and wouldn’t. “You didn’t do a great job,” she said, sharp enough to keep control. Lucien’s smile flickered, small and pained. “No. I didn’t.” Aurora’s eyes stung. She refused to let emotion turn her into someone easy to read. “What do you do for me now?” she asked. Lucien finally lowered his hand and wrapped his fingers around the cane handle again. He didn’t retreat. He stayed close enough that Aurora could feel his presence like heat from a stove. “I stop running,” he said. “I stop hiding behind bargains and information. I tell you the truth even when it makes you want to slap me.” Aurora let out a breath that sounded like she’d been holding it for months. “You’ll still tell me things I don’t want,” she said. Lucien’s expression steadied. “I will.” “And you’ll still show up unannounced?” Aurora asked. Lucien’s amber eye flashed. “If you open the door.” Aurora stared at him. That sentence pulled straight at the hurt and the attraction tangled together in her chest. He didn’t sound like he expected an answer. He sounded like he’d decided to accept whatever she gave him. Aurora’s fingers loosened on the chair. She let her hand drop. “I opened the door,” she said. “That doesn’t mean I forgive you.” Lucien’s jaw tightened. “Good.” Aurora blinked. “Good?” “Yes,” Lucien said. “Forgiveness takes time. But talking didn’t get you killed. It didn’t ruin your life. It didn’t solve everything, but it kept you in the same room as me, and that mattered.” Aurora’s mouth parted, and she didn’t know what to do with the weight of it. She searched for her usual sharp retorts and found none that didn’t feel like denial. The tabby returned from the kitchen area, tail swishing, and nosed Aurora’s shin once. Aurora glanced down, then back up. “Sit,” she said, surprising herself with how the command sounded like it belonged to her, not her fear. Lucien didn’t hesitate. He eased onto the chair opposite her, posture straight, cane resting across his lap like a restraint instead of a weapon. His charcoal suit looked darker under the flat’s dim light. He looked like someone who didn’t belong in cramped rooms—but he made the room work anyway. Aurora stayed standing for another beat, then pulled the second chair out and sat opposite him. She kept her hands on the table, palms flat. No fidgeting. No reaching. “Start talking,” she said. Lucien’s gaze flicked over her hands. He looked back at her face. “I owed you more than a lie,” he said. “I owed you your right to choose what you believed, even if it hurt.” Aurora’s voice came out softer than she wanted. “You didn’t ask my choice.” Lucien nodded. “I didn’t.” Aurora leaned back slightly, the chair creaking. “Then what did you ask?” Lucien looked at her like he’d been building the answer inside his chest and couldn’t put it down without dropping it. “I asked for a version of you that wouldn’t want me,” he said. Aurora’s breath caught hard. “A version of me?” “Yes,” Lucien said. “I looked at you and I wanted you, but I also knew you carried your hurt like a second heart. If I stayed, I would’ve fed it with lies. With half-truths. With fear dressed up as care.” Aurora stared at him. The words landed with a thud. The hurt in her chest shifted again, not gone, just reshaped into something that recognized itself. “And you thought leaving would starve it,” she said. Lucien didn’t smile. “I thought leaving would stop it from growing.” Aurora held his gaze. “It didn’t stop.” Lucien’s eyes stayed steady. “No. It didn’t.” Aurora’s fingers tightened on the table edge. “So what now?” Lucien’s cane shifted a fraction as he leaned forward. The room didn’t feel cramped anymore. It felt loaded. “Now,” he said, “you tell me what you needed that night. I don’t get to decide the story. You do.” Aurora’s throat worked. She didn’t look away. “I needed you to say you wanted me,” she said. “Not in some clever way. Not dressed up as protection. I needed you to say it plain and keep standing when I got scared.” Lucien’s amber eye softened at the edges. His black eye held the hard part. “And after you got scared?” he asked. Aurora swallowed. “I needed you not to punish me for it.” Lucien’s jaw flexed. “I did punish you.” Aurora’s voice steadied. “With silence.” Lucien nodded once. “With silence.” Ptolemy jumped up onto the window ledge and made a sound like complaint, then sat and watched them with theatrical patience. Aurora lifted her chin. “So don’t do it again.” Lucien didn’t promise. He didn’t smooth it over. He just met her eyes. “I won’t,” he said. Aurora stared until his words stopped sounding like something he could change. Until they sounded like something he intended to carry through. Her fingers lifted from the table, slow, deliberate. She didn’t grab his cane. She didn’t touch him. She just placed her palm on the tabletop between them, offering space, not surrender. “Then start with the truth,” she said. “All of it.” Lucien’s gaze dropped to her hand, then lifted back to her face. He seemed to gather himself around the one thing he’d come here for. “I’ll tell you everything,” he said. “But first—” Aurora’s brow tightened. “But first what?” Lucien leaned forward another fraction, close enough that Aurora felt the heat of him without him pressing. His voice dropped. “First you tell me why you kept the delivery job,” he said. “Why you kept running your route like it could make me disappear.”
created_at"2026-03-18T11:08:47.274Z" 3/18/2026, 11:08:47 AM
model"openai/gpt-5.4-nano-20260317"
app_id182717
external_user(null)
streamedtrue
cancelledfalse
latency3256
moderation_latency(null)
generation_time21573
tokens_prompt1034
tokens_completion5718
native_tokens_prompt927
native_tokens_completion4868
native_tokens_completion_images0
native_tokens_reasoning261
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.0062704
router(null)
provider_responses
0
endpoint_id"0c835f2e-c18d-4e8c-b245-e1e3bd08b97f"
id"resp_01763342274d4a6b0169ba87bf5470819696c86a396fe4a7ef"
is_byokfalse
latency183
model_permaslug"openai/gpt-5.4-nano-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-1773832127-g2jXj3xwABqAST0vEIyw"
upstream_id"resp_01763342274d4a6b0169ba87bf5470819696c86a396fe4a7ef"
total_cost0.0062704
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
totalTags63
adverbTagCount0
adverbTags(empty)
dialogueSentences150
tagDensity0.42
leniency0.84
rawRatio0
effectiveRatio0
95.67% AI-ism adverb frequency
Target: <2% AI-ism adverbs (58 tracked)
wordCount3462
totalAiIsmAdverbs3
found
0
adverb"carefully"
count1
1
adverb"slightly"
count2
highlights
0"carefully"
1"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)
74.00% AI-ism word frequency
Target: <2% AI-ism words (290 tracked)
wordCount3462
totalAiIsms18
found
0
word"weight"
count3
1
word"silence"
count5
2
word"stomach"
count1
3
word"tracing"
count1
4
word"measured"
count1
5
word"flicked"
count2
6
word"aftermath"
count1
7
word"warmth"
count1
8
word"pulse"
count1
9
word"flickered"
count1
10
word"could feel"
count1
highlights
0"weight"
1"silence"
2"stomach"
3"tracing"
4"measured"
5"flicked"
6"aftermath"
7"warmth"
8"pulse"
9"flickered"
10"could feel"
100.00% Cliché density
Target: ≤1 cliche(s) per 800-word window
totalCliches1
maxInWindow1
found
0
label"let out a breath"
count1
highlights
0"let out a breath"
100.00% Emotion telling (show vs. tell)
Target: ≤3% sentences with emotion telling
emotionTells1
narrationSentences310
matches
0"t in frustration"
100.00% Filter word density
Target: ≤3% sentences with filter/hedge words
filterCount3
hedgeCount3
narrationSentences310
filterMatches
0"think think"
1"hear"
hedgeMatches
0"tried to"
1"tended to"
2"seemed to"
100.00% Gibberish response detection
Target: ≤1% gibberish-like sentences (hard fail if a sentence exceeds 800 words)
analyzedSentences397
gibberishSentences0
adjustedGibberishSentences0
longSentenceCount0
runOnParagraphCount0
giantParagraphCount0
wordSaladCount0
repetitionLoopCount0
controlTokenCount0
maxSentenceWordsSeen38
ratio0
matches(empty)
100.00% Markdown formatting overuse
Target: ≤5% words in markdown formatting
markdownSpans0
markdownWords0
totalWords3453
ratio0
matches(empty)
100.00% Missing dialogue indicators (quotation marks)
Target: ≤10% speech attributions without quotation marks
totalAttributions88
unquotedAttributions0
matches(empty)
0.00% Name drop frequency
Target: ≤1.0 per-name mentions per 100 words
totalMentions145
wordCount2279
uniqueNames8
maxNameDensity3.33
worstName"Aurora"
maxWindowNameDensity5.5
worstWindowName"Lucien"
discoveredNames
Carter1
Brick1
Lane1
Moreau1
Lucien61
Aurora76
London1
Ptolemy3
persons
0"Carter"
1"Moreau"
2"Lucien"
3"Aurora"
4"Ptolemy"
places
0"Brick"
1"Lane"
2"London"
globalScore0
windowScore0
28.47% Narrator intent-glossing
Target: ≤2% narration sentences with intent-glossing patterns
analyzedSentences144
glossingSentenceCount7
matches
0"smelled like cumin and books at the same t"
1"felt like it had thickened"
2"sounded like she’d been holding it for mon"
3"sounded like he’d decided to accept whatev"
4"sounded like it belonged to her, not her f"
5"looked like someone who didn’t belong in"
6"sounded like something he intended to carr"
100.00% "Not X but Y" pattern overuse
Target: ≤1 "not X but Y" per 1000 words
totalMatches0
per1kWords0
wordCount3453
matches(empty)
100.00% Overuse of "that" (subordinate clause padding)
Target: ≤2% sentences with "that" clauses
thatCount3
totalSentences397
matches
0"pictured that night"
1"hated that he remembered that detail"
100.00% Paragraph length variance
Target: CV ≥0.5 for paragraph word counts
totalParagraphs194
mean17.8
std11.56
cv0.649
sampleLengths
049
120
29
338
441
510
630
75
814
928
1024
1110
126
139
1423
1512
1637
1740
1820
1938
2012
2138
2228
236
245
255
2620
2718
2828
2911
3013
3114
3228
3315
3422
3514
3614
3746
3844
3911
405
4144
4229
4330
4412
4516
463
4723
4824
4915
100.00% Passive voice overuse
Target: ≤2% passive sentences
passiveCount0
totalSentences310
matches(empty)
100.00% Past progressive (was/were + -ing) overuse
Target: ≤2% past progressive verbs
pastProgressiveCount0
totalVerbs516
matches(empty)
70.89% Em-dash & semicolon overuse
Target: ≤2% sentences with em-dashes/semicolons
emDashCount9
semicolonCount2
flaggedSentences10
totalSentences397
ratio0.025
matches
0"The flat above the curry house on Brick Lane always smelled like cumin and books at the same time—spice seeping through the floorboards, paper dust hovering where the tabby had stopped to knead."
1"She hadn’t let herself think about that line in months—hadn’t let herself think about his words at all, not since the night they’d parted and left each other with receipts that didn’t add up."
2"She’d also seen him smile once—warm, quick, almost reckless—before everything turned sour."
3"Her own words from that night—how she’d thrown them like darts and convinced herself the steel wouldn’t hurt him."
4"Aurora heard the curry house below—muffled voices, a spoon clinking against a pot."
5"Aurora didn’t back away; she kept her feet planted like she refused to lose ground."
6"He looked toward the corkboard covered in notes and strings of pinned paper—her obsession, her attempt to solve the world by lining it up into neat patterns."
7"She refused to let tears pull focus; she refused to give him that kind of power again."
8"It became something else—something that wanted to be named and wouldn’t."
9"He looked like someone who didn’t belong in cramped rooms—but he made the room work anyway."
97.59% Purple prose (modifier overload)
Target: <4% adverbs, <2% -ly adverbs, no adj stacking
wordCount2292
adjectiveStacks0
stackExamples(empty)
adverbCount98
adverbRatio0.04275741710296684
lyAdverbCount7
lyAdverbRatio0.0030541012216404886
100.00% Repeated phrase echo
Target: ≤20% sentences with echoes (window: 2)
totalSentences397
echoCount0
echoWords(empty)
100.00% Sentence length variance
Target: CV ≥0.4 for sentence word counts
totalSentences397
mean8.7
std6.65
cv0.764
sampleLengths
016
133
220
34
45
53
613
722
820
92
103
1116
126
134
144
156
1620
175
1811
193
208
2113
227
234
2420
2510
266
275
284
296
304
315
328
337
345
353
3634
3710
3830
394
4016
4124
424
4310
4412
4517
463
476
4812
499
39.42% Sentence opener variety
Target: ≥60% unique sentence openers
consecutiveRepeats42
diversityRatio0.14357682619647355
totalSentences397
uniqueOpeners57
14.18% Adverb-first sentence starts
Target: ≥3% sentences starting with an adverb
adverbCount1
totalSentences235
matches
0"Then he turned back."
ratio0.004
77.02% Pronoun-first sentence starts
Target: ≤30% sentences starting with a pronoun
pronounCount84
totalSentences235
matches
0"She didn’t yank the door"
1"She leaned her shoulder into"
2"She didn’t widen her stance,"
3"Her small crescent scar on"
4"It stayed thin."
5"His voice carried that clean,"
6"It just announced he could."
7"She hadn’t let herself think"
8"She stepped back half an"
9"Her flatmate’s clutter crowded in"
10"He didn’t bump anything."
11"He didn’t glance at the"
12"He moved as if the"
13"She’d heard rumours."
14"She’d seen enough to believe"
15"She’d also seen him smile"
16"He paused near the small"
17"He didn’t flinch."
18"He placed his cane carefully"
19"She kept her hands at"
ratio0.357
0.00% Subject-first sentence starts
Target: ≤72% sentences starting with a subject
subjectCount225
totalSentences235
matches
0"Aurora Carter kept her key"
1"The flat above the curry"
2"Ptolemy padded across the hall"
3"The knock didn’t come."
4"The door handle moved anyway."
5"Aurora’s grip tightened."
6"She didn’t yank the door"
7"She leaned her shoulder into"
8"Lucien Moreau stood on the"
9"The other looked black."
10"Aurora didn’t move away."
11"She didn’t widen her stance,"
12"Her small crescent scar on"
13"Lucien’s mouth held a shape"
14"It stayed thin."
15"His voice carried that clean,"
16"Aurora stared him down."
17"The tabby slipped between their"
18"Lucien glanced down, then back"
19"Lucien lifted his cane a"
ratio0.957
0.00% Subordinate conjunction sentence starts
Target: ≥2% sentences starting with a subordinating conjunction
subConjCount0
totalSentences235
matches(empty)
ratio0
93.02% Technical jargon density
Target: ≤6% sentences with technical-jargon patterns
analyzedSentences86
technicalSentenceCount6
matches
0"Ivory-handled cane angled down, tip hovering a fraction above the floorboards as if it belonged there."
1"His voice carried that clean, controlled rhythm that made every word sound expensive."
2"The tabby slipped between their legs, circling once before pressing its face against Lucien’s trouser leg like it accepted him."
3"Lucien crossed the threshold with the slow confidence of a man who’d walked into worse places and walked out with his coat still on."
4"He took a slow step toward the table, then stopped short as if he’d hit an invisible line she’d drawn with her silence."
5"A half-drawn diagram in the margin, edges smudged as if she’d dragged her thumb across it in frustration."
100.00% Useless dialogue additions
Target: ≤5% dialogue tags with trailing filler fragments
totalTags63
uselessAdditionCount1
matches
0"Lucien repeated, as if he tasted it and didn’t like what it left behind"
100.00% Dialogue tag variety (said vs. fancy)
Target: ≤10% fancy dialogue tags
totalTags62
fancyCount4
fancyTags
0"Lucien repeated (repeat)"
1"Lucien corrected (correct)"
2"he agreed (agree)"
3"she demanded (demand)"
dialogueSentences150
tagDensity0.413
leniency0.827
rawRatio0.065
effectiveRatio0.053
79.6756%