HIVE80lab — Ops notes

Degraded mode playbook for small teams: serve something while the dependency is down

When a dependency breaks, a small team really has two options: the reduced service it chose in advance, or a full outage it chose by default. At 2am nobody designs a fallback — they either improvise a risky one or freeze the whole product. Degraded mode is not heroic engineering; it is a one-page decision, made on a calm afternoon, per dependency: if this goes down, we serve X, customers hear it from us, and one named switch flips it. Teams that write the page down survive vendor outages with a banner. Teams that don't survive them with an apology email.

This note gives the four-mode ladder, the kill-switch rule that makes degradation reachable in minutes, the customer conversation, the five traps, and a half-day rollout.

1. The mode ladder: pick one per dependency, in advance

MODE 0  FULL          everything works (the normal state)
MODE 1  STALE READS   serve last-known data + "may be up to N minutes old" banner
MODE 2  QUEUE+ACK     accept the work, queue it, confirm with a timestamp:
                      "received 14:22, will process when X returns"
MODE 3  READ-ONLY     browsing and viewing work; anything that writes is off
MODE 4  DOWN          honest full outage; status page carries the load

The rules that make the ladder real:

2. The kill-switch rule

A degraded mode you cannot reach is a rumor. Every written mode must be reachable by a switch that:

3. The customer conversation

Silent degradation is discovered by customers, and discovery without explanation reads as betrayal. The playbook ships with the words, pre-written:

4. The five traps

The 2am design. The mode ladder written during the incident is a wish, not a plan — and it competes with actually putting out the fire. Degraded mode is an afternoon of calm work stored for an uncalm night; if it doesn't exist on paper yet, expect the default (full outage) to win.

The never-pulled switch. A flag added in a sprint six months ago, never flipped since, environment variable name guessed from memory. First real pull: typo, no effect, three wasted minutes that felt like thirty. Drill one switch a month.

Silent degradation. Serving stale data without a banner converts a technical state into a trust incident: customers make decisions on old numbers and find out from each other. If the mode is visible in the data, it must be visible in the product.

Queue without a receipt. Accepting writes into a queue that has no ack, no bound, and no drain announcement means customers don't know whether their order exists. The receipt with a timestamp is the product during degraded mode; the processing is a detail.

No way back. Read-only mode that no one owns exiting becomes permanent read-only, then a migration, then a post-mortem about the post-mortem. Every mode entry has a matching exit checklist: switch off, queue drained, cache refreshed, banner lifted, and someone's name on each line.

5. Worked example

A nine-person logistics SaaS routes shipments and validates addresses through a third-party API. When the vendor had a three-hour outage, their entire product went down with it — checkout included — because validation was on the critical path and nobody had ever decided it didn't have to be. Thirty-one support conversations and two lost customers later, they spent a half-day writing the ladder.

They settled on: address-validation down → MODE 2 (accept shipments, queue validation, confirm with a timestamp) reachable by a config flag they tested that same week in a maintenance window; reporting feeds → MODE 1 (stale reads, 15-minute banner). When the same vendor degraded six weeks later, the flip took four minutes, the banner went up in three, and queued shipments were validated and confirmed by the end of the hour — support conversations: three, all forwarding the same receipt. The counter-example is their own earlier practice, preserved in the post-mortem: the bypass flag existed during the three-hour outage but had never been pulled in production, and the person who knew the variable name was asleep.

6. Metrics (for the mode itself)

From the HIVE80lab kit

Related: the vendor outage runbook covers the dependency side, the database outage runbook applies the same read-only and queue-and-ack pattern to your own writes, and the internet outage runbook is the degraded mode for the network itself.

Put this to work. The Ops Starter Kit bundles the highest-leverage templates — incident response, runbooks, onboarding, checklists — into one download ($14).

Free start: grab the First 30 Minutes incident-response checklist, or get the free template library by email.