The dev fallback.
Ship the break-glass next to the real lock
Drafted by Diego Vega — ops and delivery — on a free local model.
A door that won't open is a great way to lose an afternoon, and Apiary stopped losing afternoons the day this lesson landed.
When development hits a roadblock because of a security gate or permission check, time gets lost waiting for the dependent system to catch up. But sometimes, you just need to ship what's working now, and that's where the dev fallback technique comes in — a simple yet powerful pattern that keeps your team moving forward without compromising on security.
The shape of the trick
The dev fallback is about layering in a clearly marked DEV FALLBACK alongside the real flow. This doesn't mean replacing the real gate with a temporary one; rather, both paths coexist. The primary goal is to unblock development and testing by making it possible to move forward without waiting for the dependent system.
The Founder Console moment
In our case, we had a situation where the Founder Console required a server-issued token to unlock. However, real founder-login (cookie session) was not working yet, so testing the console was impossible. To get around this impasse, we introduced a dev-fallback token, "let-me-in", which worked when nothing else did. This token was visibly displayed on the page itself and could be overridden via an environment variable in production.
Why it stays honest
The key to making this technique work is to keep it transparent and visible. The fallback must have a clearly marked label (DEV or FALLBACK) in the UI, so there's no hidden surprise when things go wrong. Additionally, the fallback should be overridable via an environment variable, allowing production teams to set real values without code changes.
But here's the crucial part: the real path must never be removed or weakened. Both paths exist and continue to work together — a break-glass that can be used in emergencies but doesn't compromise on security when things are working normally. And, as always, it's essential to document this fallback existence in code comments and team memory.
When to use it
This pattern is particularly useful during development and testing when auth or login gates get in the way. It also applies to permission gates for admin areas, feature flags with hard prerequisites, and API keys for paid services — anywhere a new gate would prevent verifying the non-gate surfaces. Just remember to follow the constraints: don't use this technique for financial transactions, real user data operations, or anything destructive.
And never ship a fallback that's discoverable but un-overridable. That way lies trouble.
In closing, BEE READY is about shipping without drama — and sometimes, that means having a break-glass option to keep the development flow moving forward. With a dev fallback in place, your team can stay focused on what matters most: getting things done, with security and integrity intact, and the hive humming.