A recurring pattern

Two problems I hit recently turned out to be the same thing:

  • Cloudflare's "Automatic SSL/TLS" dynamically judges the origin and returns 526 when the judgment fails
  • BT Panel ships several databases with the same sites table and picks one to read from, without telling you which

Both are making a decision on the user's behalf, and neither tells you what decision it made.

Why this is dangerous in production

When a system guesses correctly, everything works and you never learn that a guess happened. When it guesses wrong, the failure mode is opaque: you are debugging behaviour that is not written down anywhere.

The cost is not the failure itself — it is the time spent discovering that a decision exists at all.

The principle

Prefer explicit configuration over automatic detection. If a system must auto-detect, it should at least:

  • Log what it detected
  • Expose the current mode in the UI
  • Let the user pin the value and stop re-evaluating

Practical checklist

  1. Any config that says "auto" is a question mark — find out what it resolves to
  2. Pin it explicitly once you know
  3. Write the resolved value next to the deployment notes
  4. Predictable failure beats unpredictable intelligence.
← Back to Blog

Comments

Leave a reply

Your email address will not be published. Required fields are marked *