Chapter 20
TWENTY
GAGE
I know the second the scan finishes.
Knight doesn’t say anything at first. Just stares at the line of code and leans back, slow and stiff, like he’s afraid if he moves too fast, the truth might get worse.
“Say it,” I murmur.
He doesn’t look at me. “You’re not gonna like it.”
“I already don’t.”
Arrow spins his chair around from the second terminal, brow furrowed. “It’s confirmed. The payload originated from an internal HR workstation. Logged in under user ID…” He trails off, then says it anyway. “TashWills_24.”
Tasha.
River’s best friend.
The same Tasha who brought River cupcakes on her birthday. The same Tasha who told her, You’re too good for NovaPlay.
The same Tasha who just this week stood at her desk like nothing was wrong.
I feel like I’ve been punched.
“She was there the day River reported Mason,” I say aloud.
Knight nods grimly. “She was the one who submitted the formal paperwork for HR to open the file. Her workstation has access to the complaint logs, security badge swipe data, and all internal backup servers—including the private user drive River thought was secure.”
That’s how she got the therapy files.
That’s how she knew about Psalm88.
“She planted it,” I say. “She wanted River to find it.”
Arrow scrubs a hand over his face. “She’s not working alone.”
Knight turns his monitor to show us a second screen. An IP trace.
“Regent,” he says. “Top Cathedral admin. Obscures his logs better than anyone except us. But he slipped up last week. Used a NovaPlay proxy node during a forum upload. We caught the overlap.”
I grit my teeth. “Tasha’s working with him.”
Knight nods once. “We think Regent’s using her to feed Cathedral insider data. NovaPlay’s employee complaint system. Blackmail material. Anything exploitable.”
“And River was just… the perfect target,” I whisper. “She’s high profile. Visible. She made waves.”
Arrow glances up at me, expression tense. “And she trusted the wrong person.”
I push off the wall and start pacing. My whole body’s on fire.
We’ve been playing defense this whole time. Watching for threats, tracking breadcrumbs, building traps. All while River’s closest friend sat ten feet away with a knife behind her back.
I want to break something.
“She has no idea,” I mutter.
“No,” Knight agrees. “But she needs to.”
I stop pacing. “Not yet.”
Arrow blinks. “Gage—”
“Not yet.” My voice comes out rough. “We’re close. If we tell her now, she’ll confront Tasha, and Tasha will bolt. Or worse—Regent will ghost. And we’ll lose our shot.”
Knight’s quiet. Thinking. Calculating.
“You want to use her,” he says.
I don’t say anything.
“She’s already bait,” Arrow says bitterly. “Has been for weeks.”
“She deserves the truth,” Knight says.
“She deserves peace,” I snap back. “And we’ll get it. But we do this right. We trap them both. No holes. No leaks. We finish this so River can actually breathe again.”
Silence.
Then finally, Knight nods. “Okay. We follow the data. And we isolate Regent. Find out who he is.”
Arrow pulls up a new screen. “I’ll set up a digital mirror of Tasha’s account. Anything she opens, we see. Any messages, we intercept. If she so much as whispers ‘Psalm88,’ I’ll have a team on her door.”
I exhale hard. “Good.”
But even with all our tech and all our planning, I can’t stop thinking about River’s face when she smiled at Tasha.
The way she leaned in close. The way she laughed like it was real.
The way she said, I’m just glad things are finally going back to normal.
God.
I step outside for air before I do something reckless.
The alley behind Riverside is quiet. The wind smells like rain and copper. My hands shake as I light a cigarette I don’t really want.
Tasha.
I should’ve known.
And I let it happen.
I had River on twenty-four-hour security. I rewired her safe house, coded surveillance backups, slept on a cot in the server room—and I still missed the threat right under her nose.
I close my eyes and think about her.
River, curled up in that blanket. Whispering about Mask.
How she feels safe with him.
How she wants to meet him.
And it kills me, because I’m right here.
But I can’t come clean. Not yet. Not when every step closer puts her more at risk.
She deserves to feel safe.
Not hunted.
Not used.
Loved.
Even if she never knows it’s me.
My phone buzzes. A text from Knight:
Confirmed — Regent’s uploading again. Using a relay inside NovaPlay’s backup tunnels. Probably prepping for another data dump.
Then another:
We’ve got one shot at this, Gage. Hope your plan’s solid.
I grind out the cigarette and type back:
She’s not getting hurt again. Not on my watch.
I look up at the sky. It’s dark now. Heavy.
Storm’s coming.
Let it.