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
Owner

Adds the single exception type and the ten IX_* error codes per MVP spec §8.

Every pipeline step and adapter raises IXException(IXErrorCode.XXX, detail=...); the pipeline orchestrator turns that into ResponseIX.error. Default messages follow the spec wording; values == names so callers can serialise either.

CI trigger is flaky for now; local tests green (7 passed, ruff clean).

Adds the single exception type and the ten IX_* error codes per MVP spec §8. Every pipeline step and adapter raises `IXException(IXErrorCode.XXX, detail=...)`; the pipeline orchestrator turns that into `ResponseIX.error`. Default messages follow the spec wording; values == names so callers can serialise either. CI trigger is flaky for now; local tests green (7 passed, ruff clean).
goldstein added 1 commit 2026-04-18 08:46:13 +00:00
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
ae595c937a
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>
goldstein merged commit ebdba99d9f into main 2026-04-18 08:46:19 +00:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: goldstein/infoxtractor#2
No description provided.