TigerStyle (Dedalus)

TigerBeetle-derived coding style used in Dedalus systems code: design for safety, then performance, then developer experience - in that order, with zero technical debt and assertion-heavy design.

Adapted from TigerBeetle's "TigerStyle," this is the discipline for the highest-stakes Dedalus code (hypervisor, storage, billing, control plane). Style here is a means to an end - safety, performance, DX - not readability for its own sake. Source: dedalus-api/TIGER_STYLE.md § Why Have Style

The ordering: safety > performance > DX

All three matter, but they are ranked. A change is evaluated by whether it advances safety first, then performance, then developer experience. Simplicity is not a concession - it is how the goals come together into one "super idea," and it is the hardest revision, not the first attempt. Source: dedalus-api/TIGER_STYLE.md § On Simplicity And Elegance

Safety (NASA Power of Ten lineage)

Performance and control flow

Zero technical debt

Fix showstoppers in the design phase, not in production. The policy is to not accumulate debt: think hard upfront so implementation, testing, and operation are dwarfed by the quality of the design. This pairs with the Edict's distinction between technical and cognitive debt. Source: TIGER_STYLE.md § Technical Debt

Relationship to other Dedalus style docs

TigerStyle governs systems/Rust code where safety dominates; the Dedalus Edict governs interpretability and interface design across the polyglot monorepo; the Dedalus Style Guide covers the broader hard-limits/IO conventions. Together they form the Dedalus correctness stack.

Applicability

Apply TigerStyle when Use general Dedalus style when
A bug can corrupt money, storage, isolation, or control-plane state The code is ordinary product UI, scripts, or glue
Bounds, assertions, and startup refusal are cheaper than recovery The failure can be represented as a typed user/domain error
Determinism and local reasoning dominate developer convenience Framework conventions own most of the lifecycle
The design can be made simpler before implementation The work is a narrow patch inside an established app pattern

Proof

TigerStyle work needs proof of boundedness, invariants, and failure posture. At minimum, name the bounded loop or allocation decision, show the paired assertions or equivalent invariant checks, and verify with the smallest test that can fail if the invariant is wrong.

Style Rule Contract

This page follows Style Rule Contract: name the default pattern, banned pattern, reason, exception, proof, and codification path clearly enough that the next agent can apply the rule without asking Kevin again. If a local repo has a stricter rule, follow the local rule and update the wiki when the decision becomes durable.


Timeline

  • 2026-07-01 | Aligned this page with Style Rule Contract so style guidance names default behavior, banned patterns, exceptions, proof, and codification expectations. Source: User request, 2026-07-01
  • 2026-07-01 | Added applicability and proof sections so TigerStyle is reserved for safety-critical systems paths and paired with boundedness and invariant evidence. Source: User request, 2026-07-01
  • 2026-05-31 | Page created from dedalus-api/TIGER_STYLE.md. Captured the safety>performance>DX ordering, NASA Power-of-Ten safety rules, assertion pairing, 70-line limit, and zero-technical-debt policy. Source: dedalus-api/TIGER_STYLE.md, 2026-05-31