spaghetti-code-killer

Margaret Chen

Chapter 9 of 14

The visitor logs at Sunny Meadows run three years and are handwritten in a ledger system that someone in administration has been threatening to digitize since the facility switched to electronic medical records in 2021. The ledger sits on a shelf in a narrow back office behind the nursing station, next to binders of medication schedules and a printer that's been out of paper since Tuesday. I've been working from a photocopy of the relevant pages — all seven victim files — but the originals are here, and I needed to verify a date discrepancy in the Brooks entry that the photocopy had rendered illegible.

I work through the files in order. Anderson, Brooks, Davis: confirmed. The entries are what you'd expect. Family names, mostly. Occasional chaplain visits, the grief counselors who rotate through every few weeks in their particular economy of presence. The entries bracket each patient's decline in the neutral handwriting of whoever happened to be staffing the front desk — more visitors in the early months, fewer as the year went on, the social rhythm of dying in a facility that tries to manage its paperwork as well as its suffering and succeeds more reliably at the paperwork.

Margaret Chen's log is thinner than the others. She came in with Alzheimer's that was still early enough to let her through conversation intact on the good days — the intake notes Dr. Vance showed me had Margaret Chen discussing her nursing career with specific accuracy, ward numbers and medication protocols from forty years back still precise and retrievable. She had been widowed twice. The facility's records listed an emergency contact: Janet Chen, daughter, Sacramento. Janet visited six times across seventeen months, which tracks as regular given the distance.

There are three entries in Margaret Chen's log that don't belong to Janet. Different handwriting in the visitor signature line — not cursive, just careful block print, the kind of hand a person uses when they're not signing their own name in their own hand. Name: David Wei. Relationship: nephew. Dates: fourteen months ago, twelve months ago, eleven months ago. Three visits in a three-month window, then nothing. No further entries under that name.

I photograph the page. I write the three dates in my notebook. I cross-reference them against the general timeline I've been maintaining in the investigation log — fourteen months ago puts the first visit in the same quarter Marcus Chen was still employed at MediCore. Then I flip to Ruth Goldberg's file and finish what I came here to do. The name doesn't click until I'm in the car.

I open the digital intake packet from Sunny Meadows. The medical records are in the case archive, scanned and indexed by patient name. Margaret Chen's admission paperwork is seventeen pages. I go to page two.

Emergency contact: Janet Chen, daughter. Preferred name: Margaret. Maiden name: Wei.

I sit with that for four seconds. Then I pull Marcus's HR file from MediCore and the background check we ran when his name surfaced. The background check documented his family the way employment records do — addresses, educational history, the shape of a life rendered in fields and checkboxes. Paternal grandmother: Margaret Wei Chen. Address at time of form: Sacramento, California. Prior facility: not listed. Current residence at the time the form was filled out: not Sunny Meadows.

I run the date. The background check was two years old. Margaret Chen entered Sunny Meadows eighteen months before she died.

David Wei. Nephew. Her maiden name. His surname. A name technically correct and technically not his own, an alias a programmer would construct — internally consistent, passes surface inspection, hides in plain sight.

I pull the commit history. The kill mechanism at callback layer 12 was committed at 2:34 AM on a Tuesday. I check the commit date against Margaret Chen's admission date.

Three weeks. She entered Sunny Meadows and three weeks later, at 2:34 AM, he was sitting in front of a laptop committing the code that would eventually kill her.

The fluorescent overhead hums. My coffee from this morning is cold on the desk and I drink it anyway. There are two ways to read what I'm looking at and they are both completely true.

The first reading: he built the kill mechanism because he watched his grandmother enter a system he'd built and understood exactly what kind of system it was — the safety gaps, the unreviewed code, the deprecated libraries nobody touched. A man who had documented the architectural vulnerability in a formal email, had the email filed and forgotten, and who then found his grandmother inside the machine he'd warned about. The grief is real. The visits under a false name are not surveillance — they're a grandson who can't sign his own name because he built the system that manages her medication and coming as himself would mean explaining that. The apology at 2:34 AM. The code pointing at C.

The second reading: Margaret Chen was C. The plan was alphabetical from the beginning — A through G, seven patients, a sequence — and she happened to occupy the third position. The visits were reconnaissance. He was confirming system access, checking medication profiles, verifying the parameters. The false name is operational security, not grief. She was a letter. She was always going to be a letter.

I don't write anything in the investigation log for three minutes. The cursor blinks in the open field where I've been entering notes. Both readings hold. That's the beginning of the problem.

I open the codebase. I know where the conditional check lives: callback layer 12, inside a function called `evaluateDoseApproval`. I've traced the execution path three times in the past week, logged every branch, mapped how the safety limit multiplier gets set. I know what the code does here. I haven't read it today. I read it today.

I scroll to the patient name comparison block — the twelve lines where the algorithm extracts the first character of the patient's last name and holds it against the list. Seven characters hardcoded in a production system that manages medication schedules for a hundred and twelve elderly patients. The list does nothing documented. It triggers nothing visible in the interface. It sits below the functioning surface, doing its own work in the dark.

Above the comparison block, Marcus left a comment. Not a love letter. Not a technical note. Not one of the hybrid blocks where the professional framing holds the other register barely in check.

// 2023.08.14 02:34 // I'm sorry.

That's it. The timestamp matches the commit exactly — he was still in the file when he wrote it, or he opened it again before committing, or both. And two words. Two words against the thousands of other words in this codebase: the love letters, the technical documentation, the hybrid blocks where both registers compete in the same sentence. The Easter eggs I've decoded as pointing to shared history. The comment that told me he built a function the way I taught him to think.

There are fifty-three comment blocks in this codebase. I have forty-seven pinned to my wall in three colors, six more on my desk waiting to be classified. This is the fifty-third. I reached it three days ago in the static analysis and logged it as a timestamp marker and filed it and kept going, because I was protecting something by filing it that way and I knew that then and I know it now with considerably more precision. There is no other apology in this codebase. This is the only one.

I print the block. I uncap my red pen. I circle the timestamp. I circle the two words. I don't write anything in the margin. I don't have the word for what the margin needs.

Ray comes in at eleven-thirty carrying a paper coffee cup from the place two blocks away — not the building machine, which means he's been thinking about something on the walk over. He sets the cup on the corner of my desk and looks at the whiteboard, where I've written the seven names in a column and drawn a bracket around Margaret Chen.

"Walk me through it," he says.

I do. The visitor log. The three dates. David Wei. The maiden name, the surname, the false-nephew alias that holds together under surface inspection. The commit timestamp three weeks after Margaret Chen entered Sunny Meadows. The comment above the conditional check. He listens without interrupting — hands in his coat pockets, the slight forward angle of someone filing everything.

When I finish, he takes a marker off the ledge and draws a circle around the C in my column of names. He caps the marker and sets it down. "Two readings," he says.

"Mercy. He built the system managing his grandmother's care. He knew the safety gaps — he'd documented them in writing, sent the documentation through proper channels, watched it get filed and ignored. She enters the facility. He's inside a machine he warned about and nobody fixed. The kill mechanism is — response to that. The apology is genuine." I pause. "The alphabetical order is cover. Make it look like a pattern so no individual death looks targeted."

"And."

"She was always C. The plan was alphabetical first, and she happened to occupy that position, and the visits were operational — he was on-site, confirming parameters, checking access. The apology is either performance or it's for something he couldn't name, which isn't the same as remorse."

Ray is quiet, looking at the circled C. His coffee sits untouched on my desk. "The timeline is a problem for the first reading," he says.

"I know."

"If she's the reason — if the grandmother is the why — you start at C. You don't kill Eleanor Anderson first." He looks at me directly. "Why is Eleanor Anderson dead?"

I don't have a clean answer. "The plan could have been alphabetical from the beginning, with C as the intended destination, and A and B as the architecture that made the pattern. Or the plan existed before Margaret Chen arrived, and her arrival changed something about the scale of it."

"He was already planning before she arrived."

"The email to Victor was eighteen months before Anderson died. He documented the safety gap in writing before Margaret Chen entered the facility. He knew the vulnerability. He may not have known yet what he would do with that knowledge."

"Or he knew exactly." Ray pulls a chair from the next desk and sits. He doesn't phrase this as accusation — just names the possibility that has to be spoken before you can evaluate it. "The visits in the last quarter of his employment. He's already built the kill mechanism. He goes to see her three times over three months and doesn't sign his own name."

The whiteboard holds seven names and a circled C and Ray and I on either side of it. "What does the comment tell us?" he says.

"That he felt something. That at 2:34 AM, with the code written and the commit staged, two words were what he had." I look at the circled C. "Or it's the most sympathetic artifact in this codebase and he knew I'd find it."

"Can it be both."

"Everything in this case can be both." I hear how that sounds and don't revise it. "Yes. It can be both."

Ray sits with that. He picks up his coffee. "We document both readings in the case notes. We let Torres sort out what a jury can hold." He stands. "You okay?" I tell him I'm fine, which is a factually defensible position.

He leaves at one for a meeting with Reyes and the institutional machinery that doesn't pause because there's an apology in a comment block that might be genuine and might be calculated and is definitely the only one in this codebase — a fact I can't decide what to do with. The lab is quiet. Server rack behind the glass, the overhead hum, the printout wall with forty-seven comment blocks in three colors and on my desk, separate, unmounted, the fifty-third — timestamp and two words circled in red.

Dr. Vance told me in our first interview that Margaret Chen had a grandson she rarely talked about. It's in my notes from that session, page four, under victim C personal background: family relationships. I flagged it as low-priority background detail and moved to the medication timeline because there was no reason to return to it. There is now. Two and a half years with Marcus Chen. I have been investigating him for twenty days. The twenty days have shown me more.

He never mentioned his grandmother. Not Margaret specifically, not Alzheimer's, not the diagnosis that put her in a facility eventually, not the name. When he talked about his family it was in the organized shorthand of someone who has arranged painful things into manageable categories and gotten used to the arrangement: parents divorced when he was nine, raised by his father, family scattered, the usual. I didn't press. That is the thing about intimacy — you learn the shape of the silences and you read them as ordinary sadness rather than as a wall someone has built with deliberate care.

He had a grandmother who raised him after the divorce. That's in the background check — paternal grandmother: Margaret Wei Chen, Sacramento. Raised him, the background check says, past tense, clinical, a life in six words. A woman who spent forty years caring for other people's families and ended up inside a machine her grandson built.

The whiteboard holds the seven names. I look at the C. Margaret Chen. Eighty-eight years old, still telling her nursing stories on the clear days, the Alzheimer's blurring her edges but not erasing her entirely before the code did. Three weeks after her admission, her grandson drove to Sunny Meadows and signed in as David Wei and sat in a room with her. I don't know what they talked about. I don't know if she knew who he was on that day.

The investigation keeps giving me a Marcus I didn't have. The alias built from her maiden name. The grandmother he didn't mention during two and a half years of nights where you thought you were learning someone. The apology at 2:34 AM, which either means he was alone at a laptop and that's all he could write, or means he knew I'd be here eventually reading the comment block and wanted me to think he was alone at a laptop and that's all he could write. I cannot tell from the code which Marcus was there at 2:34 AM. That's the part that makes my hands go still on the keyboard.

The question I've been asking since layer 8 — can you know someone through their code? — lands differently now. What I mean when I ask it is: did I know him at all without the code to read? Did I have Marcus Chen for two and a half years or did I have the version of Marcus Chen that had organized himself for me — functional, clean at the surface, the load-bearing structures invisible?

He decomposed his grandmother into a letter of the alphabet. He decomposed seven elderly patients into seven letters of the alphabet, and she was the third, and at 2:34 AM on a Tuesday he typed two words that mean one thing or mean another thing or mean both, and then he committed the code.

I look at the circled C on the whiteboard for a long time. The cursor blinks in the investigation log. The lab stays quiet. I'm trying to figure out whether the person who grieved his grandmother and the person who filed her alphabetically have to be different people, and I can't make them separate, and that's the question the case keeps asking me that I don't know how to file.

← PreviousContentsNext →