Chapter 3: Error Cascade
Three days after the System boot, Marcus discovered that he wasn't the only Debugger in Seattle.
He found this out because someone else's patch crashed the weather system for six city blocks.
It started raining upward. Not a metaphor—the rain literally fell from the ground to the sky, droplets rising like reverse tears, pulled toward clouds that flickered between nimbostratus and pure static. Marcus was standing on the roof of the Meridian Tower, scanning the city with [Analyze] Lv.2, when the anomaly caught his eye.
[Weather Subsystem — Sector 7] [Status: CRITICAL ERROR] [Error: Gravity vector inverted in localized zone] [Cause: Incompatible patch applied to atmospheric rendering module] [Cascade Risk: HIGH — If unresolved, error will propagate to adjacent sectors within 4 hours]
"Someone tried to patch the weather," Marcus said to Sarah, who'd become his unofficial second-in-command over the past three days. She'd leveled up to 4, her [Quick Shot] had evolved into [Precision Shot], and she carried a compound bow she'd found in a sporting goods store. "And they messed it up."
"Is that possible? I thought only you had the Debugger class."
"The System wouldn't create a class with only one user. That's bad architecture." He zoomed his [Analyze] toward the center of the anomaly, twelve blocks northwest. "There's another Debugger out there. And they applied a bad patch."
Sarah raised an eyebrow. "In software terms?"
"They pushed to production without testing." Marcus was already heading for the roof access door. "We need to get there before the cascade spreads. If inverted gravity propagates to the structural subsystem, buildings in that zone could literally fall upward."
The streets of Seattle had changed in three days. The System had transformed the urban landscape into something between a city and a dungeon. Creatures roamed in packs—mostly Crimson Stalkers and a new variety called [Flickering Wraiths], ghostly entities that phased in and out of visibility. Safe zones had formed around buildings where people gathered, marked by the same blue barrier technology Marcus had patched on day one.
But the spaces between were dangerous. And getting worse.
Marcus moved through the streets with the confidence of someone who could see the code behind the world. His [Analyze] Lv.2 could now scan a full city block, highlighting threats as red outlines and safe paths as green overlays. It was like having a minimap from a video game, except the stakes were his actual life.
"Contact," Sarah murmured, drawing her bow. Three Crimson Stalkers, Level 7, prowling through the wreckage of a Starbucks.
Marcus used [Analyze].
[Crimson Stalker x3 — Level 7] [Weakness: Auditory overload (sound-based attacks deal 2x damage)] [Bug Detected: Pack AI coordination has 2-second synchronization delay]
"Two-second sync delay in their pack AI," Marcus reported. "If we hit them all within the same two-second window, they can't coordinate a response."
Sarah nocked three arrows. "On your mark."
"Mark."
Three arrows. Three impacts. Two seconds.
The Stalkers howled—but individually, not in their devastating synchronized howl that could shatter glass. They stumbled over each other, confused, their coordination broken by the AI bug Marcus had identified.
[XP gained: 150] [Analyze: 12% to next level]
They pushed through the anomaly zone. The reverse rain was disorienting—water flying upward splashed against their legs before arcing toward the sky, leaving wet trails on their clothes that dried in the wrong direction. Marcus's status screen flickered with interference.
[Warning: You are entering a corrupted zone] [System rendering may be unreliable] [Debugger bonus: Corruption resistance +50%]
At the center of the anomaly, in what used to be a small park, they found her.
A woman in her thirties, short black hair, sitting cross-legged on a park bench that was bolted to the ground—the only reason it hadn't floated away. She had her eyes closed, hands raised, fingers twitching like she was typing on an invisible keyboard.
Her status screen was visible to Marcus's enhanced [Analyze]:
[Lin Yamamoto — Level 5] [Class: Debugger] [Status: Overwhelmed — Too many simultaneous patches attempted] [Current Action: Attempting to revert failed weather patch]
"Hey!" Marcus called out. "Stop what you're doing!"
Lin's eyes snapped open. They were bloodshot, panicked. "I can't! If I stop, the revert fails and the cascade—"
"You're trying to revert a live patch while the cascade is already propagating. That's like trying to git revert on a production branch with active merge conflicts." Marcus stepped closer, raising his hands to show he meant no harm. "You need to isolate the corrupted module first, then patch the root cause, then let the revert cascade naturally."
Lin stared at him. "You're a Debugger too."
"Marcus Chen. Software engineer. Well—former software engineer. Current reality debugger." He sat down next to her on the bench. "Show me what you tried to patch."
Lin pulled up her debug log—Marcus could see it because they shared the same class permissions.
[Debug Log — Lin Yamamoto] [Attempted Patch: Weather rendering — atmospheric pressure calculation] [Original Bug: Pressure values returning NaN in Sector 7] [Patch Applied: Reset pressure to sea level default] [Result: Pressure reset triggered gravity vector recalculation] [Unintended Side Effect: Gravity vector inverted in localized zone]
"Classic," Marcus muttered. He pulled up his own debug interface. "You fixed the pressure bug, but the pressure value was an input to the gravity calculation. When you reset pressure to default, the gravity formula interpreted it as a sign change. The -1 in the pressure normalization function negated the gravity vector."
"I didn't know they were coupled," Lin said miserably.
"Nobody would until they saw the dependency graph." Marcus activated [Debug] on the weather subsystem.
[Weather Subsystem — Sector 7] [Dependency Graph:] [atmospheric_pressure → gravity_vector_calc → local_physics_engine] [Root Cause: gravity_vector_calc uses raw pressure input without absolute value normalization] [Suggested Fix: Apply absolute value wrapper to gravity_vector_calc pressure input, then revert pressure patch]
"There," Marcus said. "We don't just revert your patch. We fix the underlying coupling bug first—add an absolute value wrapper so the gravity calculation can't be inverted regardless of pressure sign. Then your pressure fix will work correctly."
Together, they worked. Lin held the revert while Marcus applied [Patch] to the gravity calculation's input validation. It was delicate work—like performing surgery on a running system. One wrong parameter and they could crash the physics engine for the entire sector.
[Patch applied: gravity_vector_calc — input validation added] [Reverting failed weather patch...] [Revert successful] [Weather Subsystem — Sector 7: RESTORED]
The reverse rain hesitated mid-flight. For one surreal moment, every droplet hung suspended in the air, motionless. Then gravity remembered which direction it was supposed to pull, and the rain fell down again—properly, naturally, beautifully.
[QUEST COMPLETE: Resolve Error Cascade] [Reward: 800 XP, 2 Skill Points] [Marcus Chen is now Level 5] [Lin Yamamoto is now Level 7] [New Skill Unlocked: [Dependency Scan] Lv.1]
[Dependency Scan]: Reveal hidden connections between System modules, entities, and mechanics before patching. Prevents cascade errors.
Marcus leaned back on the bench, exhausted. Lin sat next to him, equally drained.
"How many of us are there?" she asked. "Debuggers?"
Marcus checked his class information.
[Debugger Class — Global Statistics] [Total Debuggers: 847] [Average Level: 3.2] [Highest Level Debugger: Level 9 (Location: Unknown)]
"Eight hundred and forty-seven," he said. "Out of eight billion people. The System is extremely selective about who gets this class."
"Less than a thousand people to debug an entire planet." Lin laughed—a tired, slightly hysterical laugh. "We're understaffed."
"We always were," Marcus said, and despite everything, he smiled.
The rain fell normally now. And somewhere in the distance, a new anomaly was already forming.