feat(errors): IXException + IXErrorCode (spec §8) #2

Merged
goldstein merged 1 commit from feat/errors into main 2026-04-18 08:46:19 +00:00

1 commit

Author SHA1 Message Date
ae595c937a feat(errors): add IXException + IXErrorCode per spec §8
All checks were successful
tests / test (push) Successful in 1m2s
tests / test (pull_request) Successful in 59s
Adds the single exception type used throughout the pipeline. Every failure
maps to one of the ten IX_* codes from the MVP spec §8 with a stable
machine-readable code and an optional free-form detail. The `str()` form is
log-scrapable with a single regex (`IX_xxx_xxx: <msg> (detail=...)`), so
mammon-side reliability UX can classify failures without brittle string
parsing.

Enum values equal names so callers can serialise either.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-18 10:46:01 +02:00