Silent Failure
A failure that produces no signal, so the absence of an error reads as success.
A silent failure is one that produces no error, no log line, and no visible difference — so the system reports success while doing nothing. It is the most expensive class of bug because the cost is paid later, by someone who reasonably believed the thing worked.
Silent failures cluster around a few shapes. A configuration key the parser does not recognise is ignored rather than rejected. A glob pattern that matches zero files exits successfully — see Glob. A required secret that resolves to an empty string is passed along as an empty string. A style rule scoped to a selector that never matches simply does not apply. A write that names a field the storage layer does not know about is dropped.
The structural defence is to make the quiet path loud. Prefer a crash to a Defensive Default when a required value is missing. Assert that a check can fail before trusting it, per Falsifiability. Count matches before believing a search, per Truncation Bias. And when a gate is added, prove it reds on a deliberately broken input.
The rhetorical version is just as costly: an "everything passes" claim assembled from checks that never ran. See Vacuous Truth.
See also5
Hand-picked in the note itself — the neighbours worth reading next.
Root Cause Analysis
Escalating past the visible symptom until you find the layer that actually produced it.
Method21 connections
Ground Truth
The measurement that arbitrates, as opposed to the artifact that merely reports.
Method30 connections
Fail Fast
Crash at the point of misconfiguration rather than degrading quietly into a wrong state.
Method12 connections
Observability
How much of a system's internal state can be inferred from what it emits.
Method15 connections
Coverage Gate
A build check that fails when coverage falls below a threshold, and what that pressure produces.
Testing & Verification14 connections
Linked from44
Notes elsewhere in the wiki that reach for this one.
- Agent SkillAgents & Language Models
A packaged, invocable set of instructions that loads into an agent's context on demand.
- AssertionTesting & Verification
The statement in a test that must hold, and the only part that can actually fail.
- Branch CoverageTesting & Verification
The proportion of conditional outcomes exercised — the strictest ordinary coverage metric, and the most informative.
- Branching ModelVersion Control & Delivery
The convention governing what branches exist, what they mean, and how work reaches production.
- CascadeDesign & Interface
The algorithm deciding which declaration wins when several apply to the same element.
- Character EncodingSystems & Tooling
The mapping between characters and bytes, and the source of a specific family of invisible bugs.
- Chesterton's FenceMethod
Do not remove something whose purpose you cannot explain.
- Code SigningSystems & Tooling
Cryptographically attesting who produced a binary, and the operating-system checks built on it.
- ContainerizationSystems & Tooling
Packaging an application with its dependencies into an isolated, reproducible runtime unit.
- Continuous DeploymentVersion Control & Delivery
Automatically releasing every change that passes validation.
- Coverage GateTesting & Verification
A build check that fails when coverage falls below a threshold, and what that pressure produces.
- Critical Rendering PathWeb Platform
The sequence of steps between receiving HTML and painting pixels, and everything that blocks it.
- CronSystems & Tooling
Time-based scheduling of recurring jobs, and the reasons scheduled jobs quietly stop working.
- CSS Custom PropertyDesign & Interface
A user-defined CSS property that participates in the cascade and inherits down the tree.
- DaemonSystems & Tooling
A long-running background process managed by the operating system's service supervisor.
- Dark ModeDesign & Interface
Serving an alternate palette for low-light preference, and the three states that implies.
- Defensive DefaultMethod
A substituted value that papers over a missing input and hides the misconfiguration that produced it.
- DeprecationMethod
Marking something as superseded and scheduled for removal, without removing it yet.
- Design TokenDesign & Interface
Named design decisions — colour, spacing, radius, type — stored as data so they can be shared and re-themed.
- Environment VariableSystems & Tooling
A named value in a process's environment, inherited by its children — the standard configuration channel.
- Exhaustive ClaimMethod
A statement of the form "the last one" or "nothing else does this" — load-bearing, and only as good as the search behind it.
- Fail FastMethod
Crash at the point of misconfiguration rather than degrading quietly into a wrong state.
- FalsifiabilityMethod
A claim is only worth something if you know what observation would refute it.
- GlobSystems & Tooling
Wildcard pattern matching over filenames, similar enough to regular expressions to mislead.
- Goodhart's LawMethod
When a measure becomes a target, it stops being a good measure.
- Ground TruthMethod
The measurement that arbitrates, as opposed to the artifact that merely reports.
- LockfileVersion Control & Delivery
A generated file recording the exact dependency versions an install resolved to.
- MonorepoSystems & Tooling
Several packages developed in one repository with shared tooling and atomic cross-package changes.
- ObservabilityMethod
How much of a system's internal state can be inferred from what it emits.
- OKLCHDesign & Interface
A perceptually uniform colour space that makes lightness and chroma behave predictably.
- Package ManagerSystems & Tooling
The tool that resolves, fetches, and installs dependencies, and pins them for reproducibility.
- ProcessSystems & Tooling
A running program with its own memory, environment, and identity.
- Root Cause AnalysisMethod
Escalating past the visible symptom until you find the layer that actually produced it.
- Scoped StylingDesign & Interface
Confining a set of style decisions to a subtree so the same component can look different in different contexts.
- Secret ManagementSystems & Tooling
Storing, distributing, and rotating credentials without embedding them in code or history.
- Semantic VersioningVersion Control & Delivery
A version-numbering convention where the number communicates the kind of change.
- ShellSystems & Tooling
The interactive command interpreter, and a programming language with unusually sharp edges.
- Supply Chain SecurityVersion Control & Delivery
Protecting against compromise arriving through the code and tooling a project depends on.
- Truncation BiasMethod
Reading a truncated result as if it were the whole result, so every counterexample is invisible.
- Typographic ScaleDesign & Interface
A constrained set of type sizes and their paired line heights and spacing.
- Unreachable CodeTesting & Verification
Code no input can execute — usually a guard against a state the surrounding invariants forbid.
- Utility-First CSSDesign & Interface
Composing styles from many small single-purpose classes rather than authoring semantic rules.
- Vacuous TruthMethod
A statement that holds only because its subject set is empty — a green result that measured nothing.
- Web Font LoadingWeb Platform
How custom typefaces are fetched and shown, and why the cost is easy to misattribute.