Expand description
The failure taxonomy — WHOSE problem a failure is.
Defined ONCE here in ops (the leaf crate of the error path — capdag
depends on ops, so this is the deepest shared home) and re-exported by
capdag as the cartridge-contract surface (capdag::AttributionClass).
Cartridge error enums declare a attribution_class() per variant beside
error_code(); the bifaci ERR frame carries the class over the wire (all
four language runtimes mirror it); the orchestrator and the engine carry
it structurally to the run record. No layer ever infers another layer’s
class from message text — an error that reaches a boundary without a
declared class is a contract violation. Attribution is always emitted at
source and is never inferred from message text.
See docs/failure-taxonomy.md (repo root) for the full architecture and
capdag/docs/17.2-error-handling.md for the protocol contract.
Enums§
- Attribution
Class - Whose problem a failure is. Declared at the error’s DEFINITION site, carried structurally through every hop.