Compiler Error Reference
Every validation error the Causet compiler (causet-compiler) can report — 190 codes across 11 categories. Each entry shows what triggers it, what happens if it’s left unfixed, a minimal broken example, and the fix.
Status: Available today. These codes are checked by causet build validate / causet build compile, which run entirely on your machine — no Causet Cloud account required. Each one prints the VERR_* code, the offending field path, and a message inline in your terminal; use this page to look up what the code means and how to fix it.
How to read a code
Every code starts with VERR_ (validation error). The prefix after that roughly maps to the DSL block it validates — VERR_DECISION_* comes from decisions:, VERR_ENVELOPE_* from commit_envelopes:, VERR_PROJECTION_*-style codes from projections:, and so on. Codes are grouped below by what they check, not strictly by prefix, since a few (like VERR_OWNERSHIP or VERR_SCOPE) predate that convention.
This reference covers the Product DSL (app.causet / causet.product.yaml) validated by causet-compiler. It does not cover HTTP/gRPC errors from the runtime service itself — see Debugging for that.
Categories
| Section | Codes | Covers |
|---|---|---|
| Core, Fields & Paths | 18 | Structural DSL errors — malformed YAML, unrecognised rule constructs, undeclared or misused fields, and invalid field paths. |
| Operations & Arrays | 21 | Errors from the ops: list inside a rule — wrong operation for a field’s type, and array-specific type checks. |
| Determinism & Compatibility | 9 | Expressions that would make replay non-deterministic, plus binary/schema compatibility checks between compiler versions. |
| Events, Intents & Sagas | 17 | Errors from the events:, intents:, and sagas: blocks, plus general Product DSL structural checks. |
| Scope & Execution Plan | 12 | Cross-stream field ownership and scope boundaries, plus errors from the compiled execution plan. |
| Commit Envelopes | 21 | Errors from the commit_envelopes: block — the two-phase-commit macro used to coordinate atomic changes across multiple entities. |
| Projections | 42 | Errors from the projections: block — shard keys, lookups, resolvers, partitioning, and the runtime contract projections must satisfy. |
| Queries & Relationships | 6 | Errors from the queries: block’s runtime contract, and from relationships: definitions. |
| Listeners | 12 | Errors from the listeners: block — cross-stream event subscriptions. |
| AI Decisions & Prompts | 19 | Errors from the decisions: and prompts: blocks, and from op: decision call sites in rules. |
| AI Memory & Providers | 13 | Errors from the memories: block (vector memory) and the providers: block (model backends). |
Full index
Every code, alphabetically, linking straight to its entry.