Starship Exodus

Chapter 110: Breach

Quick Verification

Please complete the check below to continue reading. This helps us protect our content.

Loading verification...

Vance found it on her second day in the engineering bay, buried in a firmware dependency chain that Santos had cataloged as non-critical.

"Stop," she said.

Santos looked up from his terminal. They'd been working side by side for six hours, an arrangement that neither of them enjoyed and both of them needed. Vance reviewed firmware architecture while Santos mapped hardware damage, and the two streams of information fed into a rebuild timeline that had already shrunk from six months to three. Vance's knowledge of the navigation code was doing exactly what Cross had predicted: cutting the work in half.

The working relationship was professional and cold. Santos spoke to her in the flat voice he used for contractors, the voice that communicated competence without collegiality. Vance responded in kind. They exchanged technical data like two machines passing information through a protocol, efficient and impersonal.

Until she said stop.

"This dependency chain," Vance said. She pointed to her display, where the firmware architecture was rendered as a tree of interconnected systems, each node representing a software module and each connection representing a data pathway between them. "The navigation core shares a data bus with the internal positioning system. IPS. The module that tracks personnel distribution throughout the ship."

"I know what IPS does. We use it for emergency evacuation protocols, life support allocation, population density monitoring. It was on my damage assessment. The IPS sensors took some interference during the cascade but the system reported recovery within four hours. Status: operational."

"The system reported recovery." Vance expanded the dependency chain on her display. The navigation core sat at one end. The IPS module sat at the other. Between them, a shared data bus that carried calibration signals in both directions. "Eduardo, the IPS calibration is derived from the navigation system's position data. The IPS knows where people are inside the ship by triangulating their biometric signatures against sensor nodes mounted throughout the hull. The triangulation requires a reference frame. That reference frame comes from the navigation core."

Santos stared at the display. His hands went still on his keyboard.

"The navigation core is destroyed," he said.

"The navigation core is destroyed. The IPS has been running without its calibration reference for twelve days. It reported recovery because the recovery protocol is a self-diagnostic that checks whether the IPS sensors are physically functional. They are. The sensors work. But the data they're producing is calibrated against a reference frame that no longer exists."

"The IPS is outputting false positions."

"The IPS is outputting positions calibrated to the last known navigation reference, which was corrupted during the cascade. The drift between the actual reference frame and the cached reference frame accumulates over time. After twelve days, the positional error could be—" She calculated. "Significant. Sections of the ship that the IPS reports as occupied may be empty. Sections reported as empty may be occupied."

Santos was already pulling up the IPS dashboard. The display showed the Exodus as a cross-sectional diagram, color-coded by population density: green for normal, yellow for elevated, red for dangerous crowding, gray for evacuated or sealed sections. The pattern looked normal. Residential decks green. Agricultural ring yellow. Evacuated sections gray.

"This looks correct," Santos said.

"It looks correct because the error is systematic, not random. The IPS is applying a consistent offset to all position calculations. The map looks normal because every position is shifted by the same amount. But the people aren't where the map says they are."

"How do we verify?"

Vance pulled up a specific section. Deck 22, Section F. The IPS showed it as gray: evacuated and sealed. According to the system, the section had been cleared of residents three days ago when the environmental systems were taken offline for repair. Life support allocation for Section F had been reduced to maintenance minimum, which was enough to preserve the hardware but not enough to sustain human respiration.

"Deck 22, Section F," Vance said. "Evacuated three days ago according to the IPS. Life support set to maintenance minimum. Environmental repair team scheduled for next week." She looked at Santos. "Has anyone physically visited Section F since the evacuation order?"

Santos checked the work logs. "No. The section was sealed remotely. The evacuation was confirmed by IPS data showing zero occupants."

"Confirmed by IPS data. Not confirmed by physical observation."

Santos picked up his comm. "Deck 22 duty officer, this is Chief Engineer Santos. I need a physical status check on Section F. Immediately. Confirm whether the section is occupied or empty."

The duty officer responded in forty seconds. "Chief, Section F is sealed. IPS shows zero occupants. Environmental set to maintenance minimum per repair protocol."

"I need someone to open the section and look inside. Now."

"That requires breaking the environmental seal. The repair schedule—"

"Break the seal. Get someone to Section F and tell me what they see. This is priority one."

The comm went quiet. Santos looked at Vance. Vance looked at the IPS display, at the gray patch that said nobody was home.

Four minutes passed. Santos's hands moved on his keyboard, pulling up the environmental control data for Deck 22, Section F. Atmospheric composition. Oxygen levels. CO2 concentration. The numbers showed what maintenance minimum looked like: oxygen at 16 percent and falling, CO2 at 3.2 percent and climbing. Breathable, barely, for a sealed empty space. Not breathable for a sealed space with people in it.

If there were people in Section F, they'd been breathing air that was getting worse for three days.

The duty officer came back on the comm. His voice had changed.

"Chief. Section F is occupied. I count—there are people in here. Families. They didn't evacuate. The evacuation order went to the IPS notification system and the IPS sent it to the wrong terminals. These people never received the order."

"How many?"

"I'm still counting. Three hundred at least. Chief, some of them are on the floor. They're conscious but—the air is bad in here. Really bad. Some of the children aren't responsive."

Santos stood up so fast his chair hit the wall behind him. "Get medical teams to Deck 22, Section F. Full atmospheric emergency protocol. Open every seal on that section. Get them air."

He was running before he finished the sentence. Vance was two steps behind him.

---

The sealed bulkheads on Section F opened in sequence, each one releasing a pocket of stale air that smelled like too many people breathing the same molecules for too long. The first emergency responders through the doors found what the duty officer had described: three hundred and forty-two people in a residential section that the ship's systems had forgotten existed.

They'd been living in gradually thinning air for seventy-two hours. The first day, most of them hadn't noticed. Oxygen at 18 percent was lower than normal but not dangerous. By the second day, the children were sluggish and the elderly were short of breath and the adults had headaches they attributed to stress. By the third day, oxygen was at 16 percent, CO2 was at 3.2 percent, and eighteen people had lost consciousness.

The children were the worst. Small bodies metabolized oxygen faster relative to their mass, and the youngest had been breathing compromised air for the highest proportion of their lives. Victor's medical teams found seven children under the age of eight who were unresponsive. Two of them had been unresponsive for more than six hours, long enough that the hypoxia might have caused the same kind of brain damage that the Deck 14 victims had suffered.

Victor was in the section within twenty minutes. He'd been in the pharmaceutical lab reviewing Sharma's first synthesis batch when the emergency call came through. He arrived with his kit and his team and the particular expression he wore when the ship had found a new way to hurt the people he was supposed to protect.

"Oxygen supplementation for everyone in the section," he said. "Priority to the children and the unresponsive patients. Get me pulse oximetry on every person here. Anyone below 85 percent saturation goes to the medical ward immediately."

The emergency atmospheric systems kicked in. Fresh air flooded Section F through the opened bulkheads, mixing with the depleted atmosphere and slowly raising the oxygen concentration. The residents who were conscious moved toward the open doors on instinct, pressing toward the better air the way drowning people pressed toward the surface.

Santos and Vance worked from the environmental control panel at the section's main junction. Santos restored the atmospheric systems while Vance traced the IPS error that had caused the crisis.

"The evacuation notification was sent to terminal addresses calculated by the IPS," Vance said. She was working fast, her fingers moving across the interface with the familiarity of someone who'd designed it. "The IPS position offset shifted the terminal addresses by approximately forty meters. The evacuation notifications went to Section G, not Section F. The residents of Section G received evacuation orders and left. The residents of Section F received nothing."

"And the IPS confirmed evacuation by checking whether anyone was in the wrong location," Santos said.

"The IPS checked the sensor data for Section F's mapped coordinates, which were actually Section G's physical coordinates. Section G was empty because the residents had evacuated. The IPS confirmed: Section F evacuated. Life support allocation reduced to maintenance minimum."

The system had worked perfectly. Every component had functioned as designed. The sensors sensed. The notifications notified. The confirmations confirmed. And three hundred and forty-two people had been sealed in a section with decreasing oxygen because every component was referencing a map that was forty meters wrong.

"Eduardo." Vance's voice had changed. Not the professional coldness of their working relationship. Something underneath it. "This isn't limited to Deck 22."

Santos looked at her.

"The IPS calibration error is systematic. It affects every sensor on every deck. The offset magnitude varies by distance from the navigation core, which means the error is smaller near the center of the ship and larger at the extremities. Deck 22 is in the outer residential band. The offset there is approximately forty meters. On the outermost decks, 40 through 50, the offset could be a hundred meters or more."

"How many sections have been sealed based on IPS data since the cascade?"

Santos pulled the records. The list populated his screen. His face went gray.

"Fourteen sections across eight decks sealed for environmental repair, structural assessment, or power grid maintenance. All confirmed empty by IPS data. None confirmed by physical inspection."

Fourteen sections. The IPS said they were empty. The IPS had said Section F was empty. Three hundred and forty-two people in Section F said otherwise.

"We need to check every one of them," Santos said. "Right now."

"You need to do more than that. You need to physically verify the population of every section on this ship. Every deck, every compartment, every sealed and unsealed space. The IPS cannot be trusted until it's recalibrated, and recalibration requires a working navigation reference frame, which requires the navigation rebuild." Vance looked at him. "Until navigation is online, you are flying a ship where you don't know where your own people are."

---

Zara reached Deck 22 forty minutes after the emergency call. She found the section opened, the air cycling, the medical teams working through rows of residents sitting against corridor walls with oxygen masks pressed to their faces. Seven children were being loaded onto portable beds for transport to the medical ward. Two of them were still unresponsive.

Victor intercepted her at the section entrance. His hands were steady this time. The surgeon's hands, working.

"Three hundred and forty-two residents. Eighteen were unconscious when we arrived. Seven children with potentially significant hypoxia exposure. Two of those seven have been unresponsive for an estimated six to eight hours. Wouldn't you agree that their prognosis depends on how long the oxygen deprivation continued at critical levels?" He answered his own question. "The prognosis is uncertain. We will know more in twenty-four hours."

"Two more children."

"Two more children. Yes." Victor looked at her with the expression that was becoming their baseline: the uncle who wanted to reach the niece, held back by the doctor who kept counting casualties that the captain kept causing. "This was not your decision, Zara. This was a system failure."

"It was a system failure that we should have caught twelve days ago."

"Should anyone have anticipated that the IPS calibration was linked to the navigation reference frame? That is an engineering dependency that was not in Santos's damage assessment. It was not in anyone's damage assessment."

"It was in Vance's head. She found it in six hours. Santos has been working on the rebuild for two weeks."

"Santos is a hardware engineer, not the ship's architect. The dependency was buried in a firmware layer that only the designer would know to check." Victor paused. "This is why you brought Vance into the rebuild."

"This is why I brought Vance into the rebuild. And this is what she found on day two."

A woman walked past them carrying a toddler. The child's face was pressed against her shoulder, eyes half-closed, an oxygen mask strapped to his face with a rubber band because the pediatric masks were all in use. The woman didn't look at Zara. She walked through the open bulkhead into the fresh air of the adjoining section and kept walking.

Santos appeared from the environmental control junction. Grease on his hands, tablet in his grip, the face of a man whose damage assessment had missed something that was now hurting people.

"Captain. I've dispatched teams to all fourteen sealed sections. Three are confirmed empty. Two more are confirmed occupied: Deck 28, Section B has ninety-seven residents. Deck 34, Section D has two hundred and twelve. Both sections had life support reduced. Deck 28 has been at reduced oxygen for forty-eight hours. Deck 34 for thirty-six."

"Get them air."

"Already in progress. The remaining nine sections are being checked now. Results within the hour."

"And the rest of the ship?"

Santos looked at his tablet. At the IPS map that showed a ship full of people in places they weren't. "The rest of the ship requires a deck-by-deck physical census. Every section, every compartment. Manual headcount compared against IPS data. I estimate four days for a complete survey using all available security and engineering personnel."

"You have four days. Coordinate with Cross for the security manpower."

Santos nodded. He looked at Vance, who was standing near the environmental panel, watching the atmospheric readings climb toward normal. The woman who'd found the problem. The woman who'd designed the system that created the problem. The woman who'd sabotaged the navigation that broke the calibration that shifted the map that sealed three hundred and forty-two people in a box with shrinking air.

"Captain," Santos said. His voice was quiet enough that Vance couldn't hear. "I missed this. The IPS dependency was in the system documentation. I read the documentation. I missed it because I was focused on the navigation hardware and I did not follow the firmware dependencies to their full extent." He held her gaze. "That is my failure."

"It's a failure we fix. Start the census."

He left. Zara stood in the corridor of Section F and watched the residents file past, oxygen masks on their faces, carrying children and belongings and the stunned expression of people who'd been slowly suffocating without knowing it.

Two million people. Fifty decks. Hundreds of sections. And the system that was supposed to track them all was pointing at the wrong walls.

What else had the cascade broken that they hadn't found yet?