Error codes
Status: stub. Day 3 will autogenerate from
src/athena/types.ts.
Every issue carries a stable machine code, a severity
(error | warning), a JSON path locating the offending node, a
human-readable message, and optional structured detail. Codes are
stable — write tooling against them.
| Code | Severity | Meaning |
|---|---|---|
SCHEMA_VIOLATION | error | Top-level shape doesn’t match the spec. |
DUPLICATE_RULE_ID | error | Two rules share an id. |
UNDEFINED_RULE_REFERENCE | error | A when references an undeclared input. |
CIRCULAR_DEPENDENCY | error | A rule chain forms a cycle. |
CONTRADICTORY_RULES | error | Two rules accept identical input but emit conflicting decisions. |
REDUNDANT_RULE | warning | A rule is dominated by an earlier rule. |
FALLBACK_MASKED | warning | A rule shadows the fallback clause. |
MISSING_ARRAY_MAX | error | An array-typed input lacks the required max. |
PREDICATE_PARSE_ERROR | error | A when expression failed to parse. |
COMPILER_BOMB_* | error | A DSL hard limit was exceeded — see Hard limits. |