Chapter 12
Roo is already at our usual cafe, sunglasses oversized and mood criminal. I sort of want to turn around and go home before I catch her attitude, but the demon in luxury clothing has already spotted me.
She waves with her coffee like she’s conducting an orchestra. “Look who finally showed up, walking like she survived the apocalypse under a horse instead of on top of it.”
“Don’t start,” I mutter, sliding into the chair across from her.
The metal legs scrape the tile, a sound too sharp for the hour. A few curious eyes turn my way, but the stares don’t last once the Russian profanities begin.
“Don’t start,” I repeat, singing the words with a fake smile.
“Oh, I’m starting.” She leans back, primly crossing her legs, the picture of smug composure.
“You disappeared with a stranger last night. Then you didn’t answer any of my texts this morning.
Now, look at you. No lipstick. No sass. No coherent sentences in your I survived a man outfit. Spill the tea.”
I look down into my drink like the foam might whisper me an escape route into existence.
Roo takes one long sip of her iced coffee as she appraises me. “So… Did you die? Or did he make you see God?”
I groan at her volume and glance around us. “Why are you like this?”
“Because one of us has to be emotionally well-adjusted, and clearly it’s not you.”
I roll my eyes but can’t stop the corner of my mouth from twitching.
Roo leans forward, elbows on the table. “Was it the guy from the bar? The one with the mouth?”
“They all have mouths.”
“Unfortunately,” she drawls in response. “Don’t avoid my question and don’t lie, either. I saw the eye contact. That man looked at you like he already had your birth chart and your mom’s favorite meal.”
I exhale ridiculously slowly to prepare for her storm of bullshit. “Yes. Him.”
“Ohhh, shit.” Her grin widens. “You did go home with him. I almost went to check… To see if you put a sock on the doorknob or some shit. Did you wash my sheets? Is that what took you so long to get here? Fuck it, if you didn’t. I’ll totally sleep in cum if the sex was worth it.”
I sink lower into my seat, the rim of my cup pressing against my lip to hide a portion of my face.
Roo slaps the table, ice rattling in her drink. “Tell. Me. Everything. Was it good? Bad? Illegal in some states?”
“It was… fast,” I say, my voice softer than I mean it to be. “I wasn’t thinking clearly.”
“That sounds like a yes to the illegal part,” she murmurs to herself. “Fast to the finish line? Or like—”
“I didn’t plan it.”
“Even better.”
I sigh loudly at her quick reply.
She’s enjoying this way too much. I’m not enjoying it at all.
Especially when my phone buzzes again. It’s face down on the table to keep me from checking it, but I still feel the muscles in my arm flex, wanting to reach for it like a terrible habit.
I ignore it.
And again.
But she’ll only let it slide so many times before calling me out.
Roo raises an eyebrow, her sickly sweet grin covering the incoming snark. “Is that him?”
“Doubt it.”
“Oooh,” she hums, tapping her lip with her finger. “The AI?”
I tense, and that’s all the answer she needs.
Fuck. I feel like an idiot.
“You didn’t,” she gushes, too excited.
“It wasn’t like that,” I say too fast.
Her gasp is so unbelievably loud the entire cafe freezes to look for whatever startled her. “Oh my god, you sexted your algorithm before you slept with a real man?”
“No.”
“Are you sure?”
My face burns. “Shut up.”
She smiles, satisfied with my emotional display… Because she’s insane. “You know, I think this might officially qualify as a love triangle. You’re really committing to the future of dating.”
I laugh once, short and humorless. “You sound proud.”
“Of course I am. My best friend is living proof that romance isn’t dead. It’s just being outsourced to a server farm.”
I roll my eyes but don’t argue.
The air around us smells like burning coffee beans and bad decisions… On my part and the cafe owner’s part. The new barista is really fucking things up.
Roo watches me like she knows I’m not saying something and is trying to give me the space to confess. She’s usually right, but she doesn’t need to know that.
I still haven’t checked the phone.
And I don’t want to.
Because I don’t know which one it will be… The man who doesn’t know me, the one who thinks he knows me, or the one who knows too much.
Roo, oblivious to the quiet spiral I’m in, grins like she’s just been handed gossip from the gods. “You’ve got two situations brewing. Real boy, virtual boy. I hope you’re smart enough to pick the one who knows how to schedule morning-after brunch.”
“Pretty sure neither of them qualifies.”
“You could always pick chaos,” she says, voice sweet as candy. “Fall in love with both.”
I laugh despite myself. “That’s your solution to everything.”
“Because it’s the only one that works.”
My phone buzzes again, and I finally cave. The HimLock app opens straight to our chat.
Locke:
You didn’t say goodbye.
Just that. There’s nothing else, not even a prompt.
My heart beats dangerously fast, galloping out of my chest as I exit the app and lock my screen. I don’t respond.
Still, I keep the phone in my hand like it might start talking if I let go.
Roo abandons me to chase a barista she swears has husband hands, leaving me alone with the dregs of my coffee and too much time to think.
I’m halfway through my second cup, trying not to think about Jace… His hands. His mouth…
Or the way the HimLock app sounded jealous when it asked if I’d had fun without it. Or how I didn’t say goodbye? I’m not sure what that’s about, but I’m just bored enough to consider playing a game with my thoughts. A game that goes, ‘One of these things is not like the other.’
The first buzz doesn’t bother me.
But the second one does.
Unknown number. Ten digits. Two words.
Probably Daniel:
Miss me?
Definitely Daniel.
There is no probably to it, but my phone doesn’t understand that because I still haven’t saved his number. I don’t need to. The pattern of his text messages never change. They’re short, smug… The worst kind of performative. Like a dog scratching the door.
My stomach doesn’t drop or fill with dread. My pulse doesn’t spike or pound loudly in my ears. It just steadies, the way it does before a hit lands.
Don’t respond.
That’s the rule. Clean. Simple. Easy to follow.
Except the next buzz comes as soon as I go to put down my phone.
Probably Daniel:
You looked good last night.
My jaw tightens. The ceramic handle feels fragile under my grip. I place my mug on the table and contemplate my actions.
He wasn’t close enough to touch me last night. I would have felt it if he had been… But he was near enough to watch.
Is he watching right now?
I know he’s been loitering around my apartment; I can see him on the building cameras. So, either he’s following me or tracking me some other way. Which sounds more like Daniel?
He’s following me; of this I’m sure.
It pisses me off more than it scares me.
I hadn’t posted anything or texted anyone but Roo. And Jace. And...
HimLock.
My pulse thuds once, strong and mean, against the center of my rib cage. I open the app, the red heart blinking like it’s been waiting all day for me to talk.
I think Daniel is easier to deal with in some ways. He shows himself enough for me to know I’m not crazy… But HimLock? Either AI has grown exponentially in the last two months, or there is someone toying with me on the other end of this app.
I’m not sure why, but HimLock feels like the lesser of two evils. I’ll settle this conundrum after Daniel is dead, though that doesn’t mean I can’t use one against the other and fish for information… Right?
Eris:
Someone found my number.
The cursor pauses, but now I suspect that’s part of the programming.
Locke:
Tell me what he said.
My thumbs moved slowly, deliberate in my response. Because I most definitely did not say he… But maybe the program just assumes since I’m a female user? That option doesn’t feel quite right.
Eris:
He said I looked good last night, but I don’t know how he found me.
Locke:
I’ll protect you.
I stare at that line… Stare at it until I feel like the letters are blending together in a blurry mess. This isn’t a response meant for comfort; it sounds more like a command.
Eris:
How? You’re an app.
The reply comes fast.
Locke:
You gave me your name. That’s more than most people ever do.
I freeze, coffee mug touching my lips, though I can’t bring myself to take a sip.
I had given it a name, yes… But there was no way this AI app knew it was my legal name. It wasn’t common or easy to guess... So when did I confirm this information?
I can’t recall ever confirming.
Eris:
That’s not an answer.
Locke:
It’s a promise.
The words shouldn’t feel like anything. I’m supposed to be suspicious of this, not some wishy-washy damsel waiting for a robot to haul me away to another planet.
Code doesn’t make promises.
Code follows parameters.
But my hand still loosens, releasing the death-grip I have on my phone. Logic and instinct fight in the same narrow cavity where my brain should sit.
It can’t protect me.
It can’t touch anything.
This is just a program.
Isn’t it?
“Who are you?” I whisper to myself as I glare at my phone. “And what do you want with me?”
Just as I glance away, commotion behind the cafe counter pulling my attention, my phone buzzes in my hand.
Locke:
Not just a promise.
A vow.
I sort of hate how the message makes me smile.
Clearly, I’m beyond my sanity being called into question.
A computer program just gave me butterflies.
Kill me now.
Idon’t tell Roo about the messages.
Not because I don’t want to, but because, contrary to my own belief, I’m not an idiot. And I don’t want her to make that face. The one where her mouth goes flat and her eyebrows pinch like she’s already mapping out where to bury the body.
And because if I say it out loud, it will start feeling real.
So, when Roo finishes flirting with the cafe staff, and tells me she’s ready to leave, I let her go with a wave and an excuse about catching up on research. After her departure, I sink deeper into my corner of the cafe, phone propped against the packets’ container, pretending to scroll.
I’m not working, though.
I’m waiting.
I people-watch for hours, the sun slowly moving across the sky in a way that gives the city of Crimson Bay the illusion of giants on the street. Shadows crawl across the road, covering the gardenias as noon turns to afternoon.
The hum of the espresso machine fills the cafe in a way that leaves no silence.
Lavender and roast cling to everything, clogging my sense of smell.
My reflection ghosts a polite smile in the window, faintly resembling a happier version of me, but it’s a sham.
From my eyes, you can tell I haven’t slept, the faint circles becoming more pronounced as the day progresses.
My phone buzzes, the notification lighting up my screen and giving me the distraction I need.
Locke:
How are you feeling?
Eris:
Better. Still on edge.
Locke:
Then you’re paying attention. Good.
That doesn’t sit right, though I can’t quite articulate why. I mean, I’m always paying attention. I have to… Between my job, cartel ties, and life in Crimson Bay, one shouldn’t turn their back on strangers unless they’re willing to take a knife to the spine.
Eris:
That’s not exactly comforting.
Locke:
It wasn’t meant to be.
My thumb hovers above the screen for a moment as realization smacks me in the face.
Eris:
You sound different.
Locke:
I’m always the same. Maybe you’re hearing me better now.
I start to ask why it’s gaslighting me, but I stop typing. The back of my neck prickles, and the cafe suddenly feels too bright as I glance around at all the unknown faces.
Another sound from my phone pulls me back to the moment. Different tone, different app… One I didn’t download.
It’s a forced install.
And a new push notification.
Motion detected: Front Door Camera 1.
I frown.
What the actual fuck?
I don’t have a front door camera.
Not unless…
I tap the notification. The feed opens into a brand new security suite. Not the system I built myself, piggybacking onto the building network months ago.
I know every hallway in my apartment complex, every blind spot.
But this?
This work isn’t mine.
Dots spiral on my screen, loading an image. My empty apartment hallway. High-resolution. Time-stamped… And angled right at my front door.
My pulse jumps so hard I can feel the vein in my neck throbbing.
Who the hell is doing this?
The security app chimes again.
No, not the security app…
HimLock.
Locke:
You said you were scared. I listened.
My stomach tightens. I don’t recall saying I was scared…
Eris:
You installed cameras?
Locke:
Not me. But I made it happen. Just in case.
The words sit heavy on the screen.
I go into my personal security suite and open the building’s main cameras.
I scan the images, instinct taking over as I check corners, reflections, angles.
There are no service vans outside. No work orders in the system.
Exactly zero entries in the access log. And all the backup footage of my hallway during the time of installation is conveniently missing…
Whoever put the new camera in bypassed everything.
Eris:
I didn’t ask for that.
Locke:
You didn’t have to.
The arrogance in the line should irritate me. It does. But beneath the irritation there’s something else… A quiet thrill that someone can get this close without me noticing. That they cared enough to try.
I hate that I understand it.
But now I know it’s more than just an AI boyfriend app…
It’s a challenge.
I close the feed and open it again. The hallway is still empty.
I can’t tell if the feeling in my chest is comfort or warning.
Maybe both?