Retention Under Removal Uncertainty¶
Core Idea¶
Retention under removal uncertainty is the pattern in which a durable system accumulates obsolete-but-not-removable elements because each removal decision faces an asymmetric cost: investigation costs labor, getting the call wrong carries downside, and per-cycle retention is cheap. The small carrying cost loses each decision and wins only the integral — a tragedy of the commons in time — so the fault is the geometry, not lazy or careless actors.
How would you explain it like I'm…
Keeping It Just In Case
The Pile That Grows
Default to Keeping
Broad Use¶
- Software codebases: the "lava flow" — obsolete code kept because safe removal means reading the whole call graph.
- Legal codes: zombie statutes and dead-letter laws never formally repealed.
- Regulatory codes: outdated rules persisting because rescission has its own cost and someone might still rely on them.
- Curricula: vestigial units surviving because removal might break sequencing or accreditation language.
- Physical infrastructure: abandoned-in-place pipelines and derelict spur lines.
- Databases and bureaucracy: unused columns kept to avoid migration risk; sign-off requirements whose purpose was solved decades ago.
Clarity¶
Names a failure regime that emerges from individually-rational decisions, separating two prescriptions: do not exhort decision-makers (their call is rational), but restructure the cost calculation so the asymmetry shrinks.
Manages Complexity¶
Gives four measurable variables — investigation cost, wrong-removal risk, retention cost per cycle, retention horizon — and two intervention axes — cut investigation cost, cut wrong-removal risk — turning "the system is cluttered" into a targetable decision geometry.
Abstract Reasoning¶
Exposes a temporal externality (the present decision-maker discounts the future carrying cost the future maintainer pays in full) and a blame asymmetry (the remover is blamed for breakage, the retainer never for the carrying cost).
Knowledge Transfer¶
- Software → law: dead-code tooling and soft-delete are the same moves as sunset clauses and scheduled repeal review.
- Code → databases: dependency mapping and revert windows recur as column-level usage telemetry and shadow-environment removal.
- Across substrates: pairs with Chesterton's fence — the prime is the cost condition under which honoring the fence produces accumulation if the investigation is never funded.
Example¶
An engineer confronting legacyTaxAdjust() must read the call graph and risk owning any breakage to remove it, while leaving it costs almost nothing today, so retention is individually rational; dead code stratifies until the module is illegible, and the fix is dead-code analyzers and feature-flagged soft-deletes, not exhortation.
Relationships to Other Abstractions¶
Current abstraction Retention Under Removal Uncertainty Prime
Parents (1) — more general patterns this builds on
-
Retention Under Removal Uncertainty presupposes Uncertainty Prime
The retention dynamic depends on uncertainty about an element's hidden function or the consequences of removing it.
Children (1) — more specific cases that build on this
-
Lava Flow (Anti-Pattern) Domain-specific is a kind of Retention Under Removal Uncertainty
Lava Flow is obsolete-element retention under asymmetric removal uncertainty specialized to a codebase with inadequate dependency evidence.
Hierarchy path (1) — routes to 1 parentless root
- Retention Under Removal Uncertainty → Uncertainty
Not to Be Confused With¶
- Retention Under Removal Uncertainty is not Maintenance because it is the passive non-removal of maybe-dead elements, whereas maintenance is active upkeep of elements one intends to keep.
- Retention Under Removal Uncertainty is not Technical Debt because it is undeliberate accumulation, whereas technical debt is consciously incurred with a known cost owed later.
- Retention Under Removal Uncertainty is not Status-Quo Bias because it would persist among perfectly-calibrated actors (retention is the correct local response), whereas status-quo bias is a deviation from rationality.