Nobody chooses a cloud platform for its error messages. But everyone remembers the 3am incident where the error said nothing, the dashboard said everything was fine, and the invoice said otherwise.
We decided early that failures on Harakumo follow rules. They are simple to state and surprisingly hard to keep.
Name the real limit
For a while, uploads past a size threshold failed with Upload deploy failed — no size, no limit, nothing to act on. The embarrassing part: the pipeline knew exactly what was wrong. It had a precise message about which cap was exceeded, and a generic error handler threw that message away on the way out.
Now a too-large upload tells you the number, and tells you the trap: a small compressed archive can expand far past the decompressed cap when it contains a dependency directory. The message names the fix. That is the standard every limit here has to meet — if we measured it, we say it.
Say what happened to your money
Buying a domain involves taking payment — from your balance, or from your card when you ask for that — and then registering the name with the registrar. Two steps, and the second can fail after the first succeeded.
The rule: charge, then act, then refund if the action failed — and say which of those happened. A failed purchase tells you plainly whether you were charged, whether the money went back to your balance or your card, and what happens next if the refund itself did not go through. Renewals follow the same path with an idempotency key pinned to the expiry window, so a retry after a timeout cannot buy a second year.
Never pretend
Some things on the platform are gated until a real prerequisite is met. The temptation is to fake those paths in the meantime — return success, fill in mock data, keep the demo smooth.
We return honest status codes instead: not enabled, balance too small, already taken. A feature that pretends to work is worse than a missing one, because you build on it. The same discipline applies inside: our readiness checks prove capabilities by doing the real thing, because a check that only proves read access reports "ready" right up until a customer's money is on the line.
None of this is glamorous. It is also most of what "reliable" means from the outside.