decision

A true argument on the wrong axis: cost is not readiness

2026-07-20 · UX-109

The question

A tool that makes zero network calls costs nothing to serve. Is that sufficient grounds to promote it to the production surface?

Constraints

  • The promotion argument was factually correct: the tool genuinely makes no network calls and has no marginal cost per caller.
  • Promotion is not only a serving decision. Documentation, capability ledgers and UAT scripts all describe what is on production, and none of them was touched.
  • The tool's own readiness — whether it does what a visitor arriving cold would expect — was never assessed.

Alternatives considered

  • Leave the tool on production and correct the documentation to match.

    Rejected — That would make the docs agree with a promotion whose premise was still wrong. Cost and readiness are different axes; aligning the paperwork to a decision made on the wrong axis just spreads it.

  • Keep the promotion but add a capability note explaining it is early.

    Rejected — A note is a hedge, not a decision. It leaves a visitor to discover the gap themselves, which is the failure the product principle names.

  • Take the tool back off production.

    Chosen.

The decision

Reverse the promotion. Zero marginal cost is a reason a tool MAY be public, never a reason it is READY to be. Readiness is assessed separately, and the capability matrix, the docs and the UAT script move together or not at all.

Wrong turns

  • The original promotion changed the code without touching any of the documents that describe production, so it shipped with docs contradicting behaviour.
  • Nothing caught it because the covering UAT case was manual and had no automated counterpart — so a green suite meant nothing about this claim.

Why this record exists at all

The interesting part is not that a promotion was reversed. It is that the argument for the promotion was true, and still wrong — and that the reversal had to be written down, because a future reader encountering "this tool makes zero network calls, so it is safe to expose" would otherwise find it persuasive for the same reasons.

Recording the counter-decision is cheaper than re-deriving it. That is the whole economics of a decisions surface.

The general form

Cost is a permission, not a qualification. Cheap to serve tells you nothing about whether a reader will understand what they are looking at, whether the documentation describes it accurately, or whether anyone has tried it cold.

The corollary is a process rule rather than a product one: a capability flip that does not also move the documents that describe capabilities is incomplete, and the gap will be discovered by a visitor rather than by CI.

What made it detectable in the end

A manual UAT case existed and covered exactly this. It was manual, so nothing ran it on the promotion commit. The durable fix is not "remember to run the case" — it is that a claim of this shape needs an automated counterpart, or it is not a check.

Where this is canonical

docs/backlog/PLAYBOOK_DERIVED_BACKLOG_CANDIDATES_2026-07.mdThe register entry is canonical and may have been amended since. This record is a dated snapshot of the reasoning as it stood.