Error code reference¶
Each FloxError carries a stable code (e.g. E_SYM_001), a human message,
and a help URL pointing to the per-code page in this section. AI agents
reading FLOX errors can resolve the code to a documented fix without
parsing free-text messages.
Code format¶
E_<DOMAIN>_<NUMBER> — DOMAIN is a short uppercase tag identifying the
subsystem; NUMBER is a zero-padded 3-digit counter within that domain.
Codes never change meaning once published; if the cause shifts, a new
code is allocated.
| Domain | Subsystem |
|---|---|
SYM |
Symbol registry / lookups |
DATA |
Input data loading and parsing |
INPUT |
Tape loading and input validation |
KEY |
Event field lookups and required keys |
TIME |
Calendar, intervals, timestamps |
LEN |
Array length mismatches |
VAL |
Binding argument validation |
GRAPH |
Indicator graph construction |
ADF |
ADF stationarity test |
RUN |
Backtest / runner lifecycle |
BACKTEST |
Backtest configuration and execution |
IO |
Filesystem and binary log I/O |
Catalog¶
Every code has its own page in this directory (E_<DOMAIN>_<NNN>.md); a few
representative entries:
| Code | Message |
|---|---|
E_SYM_001 |
Symbol is not registered |
E_RUN_003 |
Invalid factory return value (GridSearch) |
E_ADF_001 |
ADF — invalid regression mode |
Browse the full set by opening any E_*.md in this folder.
How to add a new code¶
- Decide on a domain. If a new domain is needed, add it to the table above.
- Pick the next number in that domain.
- Write a Markdown page
docs/errors/<code>.mdwith the frontmatter shown below. -
Use the code at the throw site:
-
Run
python3 scripts/check_error_codes.py(it also runs in CI). It verifies every code referenced from source has a Markdown page and vice-versa.