Complete catalog of error codes used across the Gaius platform.
#<COMPONENT>.<SEQUENCE>.<MNEMONIC>
Code Description Fix
#DS.00000001.SVCNOTINITDatasetService not initialized /health fix dataset
Code Description Fix
#NF.00000001.UNREACHABLENiFi not reachable /health fix nifi
Code Description Fix
#EN.00001.GRPC_BINDgRPC port bind failure Check port 50051
#EN.00000014.DUALBINDSecond gaius-engine dual-bound :50051 (SO_REUSEPORT / extra devenv daemon) /health fix engine; ss -ltnp | grep 50051 and stop the extra stack
#EN.00000015.NOREFLECTgrpcio-reflection import failed (protobuf gencode/runtime mismatch) uv sync --extra grpc (lock pins grpcio-reflection<1.82)
#EN.00000016.NOTUNIT:50051 is gaius.engine but not this checkout’s process-compose (setsid leftover)sudo systemctl restart gaius.service or devenv processes restart gaius-engine — setsid only while devenv is down (tests)
#EN.00000017.SERVEDESYNC:50051 dead or wedged while process-compose reports “ready” (in-engine observer dies with it). Out-of-band gaius-engine-ready watchdog exhausted its recycle budget (recurrence) → ACP root-cause/health fix engine; just reboot-hardening-install to arm the watchdog; check [[uv-run-churns-live-engine-venv]]
#EN.00002.VLLM_STARTvLLM startup failure /health fix endpoints
#EN.00003.GPU_OOMGPU out of memory just gpu-cleanup
#EN.00004.ORPHAN_PROCOrphan vLLM process just gpu-cleanup
Code Description Fix
#EP.00000001.GPUOOMGPU out of memory during inference /health fix endpoints
#EP.00000002.NOAGENTUnknown agent alias Use thinking (Qwen3.8-27B) or open-thinking (Olmo)
#EP.00000003.CTXFITQwen3.8-27B --max-model-len did not fit 4×4090 BF16 Set resources.context-length in agents.conf to the largest value that starts
#EP.00000004.VLLMARGSvLLM rejected flags or model config (e.g. qwen3_5 / transformers) Match vllm + transformers to the Qwen3.8 recipe; do not guess flags
#EP.00000005.TINYBOXCUDAQwen3.8 JIT cicc loaded Nix libstdc++ (needs glibc 2.38) Host gcc-11 + scripts/lib/tinybox-nvcc.sh as $CUDA_HOME/bin/nvcc; do not install CUDA 13
#EP.00000006.VLLMTIMEOUTvLLM HTTP read timed out on Complete (thinking + queue > read timeout) /health fix endpoints; sitrep follow-up needs the 180s read timeout
#EP.00000007.SHMFULL/dev/shm full — leftover vllm_offload_*.mmap / psm_* after unclean vLLM stop/health fix endpoints (reclaims unheld segments); just gpu-cleanup
#EP.00000016.NOTREADYComplete hit a vLLM that is absent/STARTING Wait for /gpu status HEALTHY; Settings starts light or medium Ask. Charts do not wait.
#EP.00000017.NOTELEMETRYSignals kind=telemetry surface missing or :9410 returned 503 Confirm SIGNALS_ENGINE_TARGET Status.surfaces; dcgm-exporter on :9400; no DCGM dep in Gaius
#EP.00000018.THINKNOLOADAn intent the engine DECLARES it’s serving (via Engine/WatchWorkload) stays not-SERVING past its warmup while SETTLED — the engine couldn’t self-restore it (e.g. venv clobber / yunikorn admit race). NOT an eviction (evicted intents drop out of the profile). The continuous gaius-thinking-ready workload watchdog complete-recycles the unit (budget-bounded); a recycle-can’t-fix cause (e.g. gaius-venv-cuda13-clobber-repair ) trips the budget and needs a manual fix /health fix endpoints; check GPU VRAM + journalctl -u gaius-thinking-ready
#EP.00000020.NOMIXA dual-constraint Complete(capabilities=[...]) conjunction is unsatisfiable: ≥2 method caps, ≥2 model caps, or an unknown/unservable token (the message lists the offered models × methods) Use ≤1 method + ≤1 model capability from the offered sets, e.g. ["cot_reasoning","thinking"]; check ServerQuery(WORKLOADS) methods
#EP.00000021.METHODTRACEA planned method fulfilled through the optillm proxy dropped the MODEL reasoning layer (only the method scaffold survived the hop) — warning, not a failure Engine-native techniques (cot_reflection) keep both layers; multi-call methods lose the model layer until upstream optillm forwards reasoning_content
#EP.00000022.NOTTEXTComplete (or a method conjunction) was asked for decisions. That capability is a structured read, not a text completionCall Engine/Decide. A workload that requires decisions keeps thinking on the heavy queue and starts dual-d3-flash on the light queue
#EP.00000023.NODECISIONPOST /v1/systemone failed: transport error, HTTP 503, a non-decision response, or a replica that is not d3_server/gpu logs d3-flash-0. The server is the checkpoint’s d3_server.py for vllm-sr/d3-flash, one process per light replica. Do not fall back to thinking
#EP.00000024.BADDECISIONThe decision request is not a valid d3 body (question type, limits, criteria, state JSON, a non-string state with instructions, or a non-empty cache_salt). HTTP 422 from d3_server lands here Fix the request. Limits: 64 questions, 255 choice options, 2–10 distinct score levels. The HTTP body is {model, state, questions}
#EP.00000025.D3RUNTIMEThe d3 side interpreter is missing, so a flash replica cannot start scripts/d3_runtime_venv.sh, or set GAIUS_D3_PYTHON to that interpreter. Do not install the d3 pins into the product venv
Code Description Fix
#OPT.00000001.WATCHDOGgunicorn auto-restart failed (often :8000 held by a foreign master) /health fix optillm
#OPT.00000002.NOTSTARTEDOptillmController never started /health fix optillm
#OPT.00000003.UNHEALTHYoptillm HTTP not 200 /health fix optillm (reaps foreign :8000)
#OPT.00000004.NOVLLMNo healthy generate vLLM provided and thinking demand failed /health fix endpoints; optillm binds any provided vLLM
#OPT.00000010.STALLEDoptillm’s vLLM heartbeat saw no forward progress (no running requests AND no new tokens) for idle_timeout /health fix optillm; check thinking VRAM/health during the request
#OPT.00000011.VLLMRESTARTThe bound vLLM (thinking) restarted or became unreachable MID-request (cumulative generation_tokens_total went backward) — optillm fails fast instead of mislabeling it STALLED. Callers should re-ensure thinking and retry Keep thinking healthy (workload watchdog); /health fix endpoints. article-curate now retries select_article
Code Description Fix
#DI.00000001.NODBDiscover has no engine db_pool /health fix postgres
#DI.00000002.BADWINDOWWindow not 1h / 24h / 36h / 7d Pass a 1..3660 day window
#DI.00000003.BADLIMITlimit not in 1..200 Pass 50
#DI.00000004.BADBREAKbreakdown not stream/source/layer Pass source
#DI.00000005.BADFEATUREfeature pin not layer:index feature:12:4412
#DI.00000006.SURFACEDiscover SQL failed /health fix postgres
Code Description Fix
#AG.00000001.NOKBGAIUS_KB_ROOT missing or not a directorySet GAIUS_KB_ROOT (default build/dev)
#AG.00000002.BADKINDkind not note, list, or event /agenda create note <title>
#AG.00000003.BADPATHPath escape, missing file, or not under scratch/ Use the path returned by create
#AG.00000004.BADWINDOWwindow_days not in 1..3660Pass 14
#AG.00000005.EMITFAILScheduled surface could not write an Agenda zettel Confirm GAIUS_KB_ROOT and /agenda cards
#AG.00000006.NOMEETTIMEintent=session without startsPass an ISO start; Agenda is the calendar
#AG.00000007.BADINTENTintent not brief, reminder, or session /agenda create with a valid intent
#AG.00000008.NOWRITEThinking did not emit an Agenda write artifact Retry Ask, or Agenda +
#AG.00000009.BADORIGINorigin is not YYYY-MM-DDPass the caller’s calendar today
#AG.00000010.BADTZtimezone is not a valid IANA namePass America/Denver, not MDT
#AG.00000011.NOTITLEAgenda item title is empty Pass a title
#AG.00000012.PUTFAILPutAgendaItem failed to write Check KB root and origin fields
#AG.00000013.ATTACHBOUNDattachments_allowed=false with a nonempty listSet attachments_allowed=true or omit attachments (SHACL maxCount 0)
Code Description Fix
#SS.00000001.NOGITgit missing for ServerQuery remotesInstall git on the engine host
#SS.00000002.NOREPOCheckout is not a git repository Set GAIUS_REPO_ROOT / DEVENV_ROOT
Code Description Fix
#WS.00000001.NOKBGAIUS_KB_ROOT missing or not a directorySet GAIUS_KB_ROOT (default build/dev)
#WS.00000002.BADWEEKISO week not YYYY-Www Pass 2026-W34
#WS.00000003.ACPFAILACP could not compose the readout grok login --device-auth; /health fix engine
#WS.00000004.BADPATHPath is not a *_wWW-summary.md under scratch/ /summary list
#WS.00000005.BADSECTIONcollection not ontology/heuristic/articles/projects/thoughts /summary knowledge
#WS.00000006.BADLENSlens not articles, projects, or thoughts /summary index heuristic thoughts
#WS.00000007.NOLINK[[wiki]] target does not resolve/summary hop <from> <target>
#WS.00000008.NOPAGESummary page missing or outside the KB jail /summary index
#WS.00000009.NOFORKvirtual lens page, or peer ServerQuery NOTE unimplemented Fork a real KB path; wait for peer S2S
#WS.00000010.NOSCHEDcron.job catalog unreadable/health fix postgres
#WS.00000011.NOTRIGClock does not enqueue scheduled_tasks /summary schedules
#WS.00000012.NOSECTIONcurrent/ontology or current/heuristics missingCreate the collection under GAIUS_KB_ROOT
#WS.00000013.BADKPATHWrite escaped the ontology/heuristics jail /summary knowledge
#WS.00000014.NOTHOUGHTthought/<id> not in cognition_thoughtsOpen it from /cognition
Code Description Fix
#COG.00000002.DBREADFailed to read cognition_thoughts /health fix postgres
#COG.00000018.NOSVCCognition service missing on TriggerCognition /health fix engine
#COG.00000024.NOSVCCognition service missing on CognitionSurface /health fix engine
#COG.00000025.NODBSurface needs the engine database pool /health fix postgres
#COG.00000026.BADWINDOWwindow_days not in 1..3660/thoughts surface 365
#COG.00000027.BADLIMITthought_limit not in 1..200Pass 80
#COG.00000028.SURFACESurface query failed /health fix postgres
#COG.00000029.NOENGINEThin client cannot reach engine gRPC for surface /health fix engine
#COG.00000030.BADWFWINCognition waterfall window_s not in 1..3600 /thoughts waterfall 60
#COG.00000031.NOWHFDWWaterfall window_s > 60 but devenv Postgres impala_fdw gpu_metrics is unreachable kinit; psql :5455 SELECT from gpu_metrics
#COG.00000032.SYNTHFAILCognition synthesis via thinking failed /gpu status thinking; check HX llm.generations
#COG.00000034.NOTOKENIZERQwen3.8-27B tokenizer missing; cannot size thinking Completes HF_HOME=/raid/cache/huggingface; snapshot Qwen/Qwen3.8-27B
#COG.00000036.CTXGATHERCognition cycle could not gather KB context (DB fault, not an empty KB) /health fix postgres
#COG.00000037.THINKBURNThinking consumed the whole token budget; no answer text produced Raise max_tokens for the call (xhigh effort ≈ ~8 tok/s; deadline auto-scales)
#VLLM.00000005.STALLEDStreamed generation produced no tokens for GAIUS_INFERENCE_STALL_S (default 120s) — progress stall, not a wall-clock kill /health fix endpoints; check thinking VRAM/health
Code Description Fix
#THETA.00000007.NOSVCThetaService not registered on the engine/health fix engine
#THETA.00000008.NOENGINEThin client (CLI / TUI / MCP) cannot reach engine gRPC /health fix engine
Code Description Fix
#EM.00000001.NOVISIONColBERT-Zero asked to embed an image/PDF Use Qwen3.8-27B vision; index extracted text
#EM.00000002.NOPYLATEpylate not installeduv sync
#EM.00000003.RETIREDColPali / ColNomic / ColQwen requested Use lightonai/ColBERT-Zero
Code Description Fix
#GR.00000001.CONNFAILgRPC connection failed Check engine status
#GR.00000002.NOLATTICEMetaflow step cannot reach zndx.engine.v1.Engine Set GAIUS_ENGINE_GRPC; apply infra/k8s/gaius-engine-host-bridge.yaml
#GR.00000003.NOCAPLattice Complete capability missing Use capability=thinking
#GR.00000014.NOWORKLOADPROFILEEngine/WatchWorkload opened but the orchestrator/workload-profile publisher isn’t up (engine still starting)Retry after Engine/Status is healthy; the workload watchdog reconnects on its own
Code Description Fix
#ACP.00000001.CONNFAILACP connection failed Check grok CLI / thinking façade
#ACP.00000002.TIMEOUTACP connection timeout Retry
#ACP.SEC.00000002.NOTALLOWEDRepo not in allowlist Update acp.conf
#ACP.SEC.00000003.NOTPRIVATERepo not private Make repo private
Code Description Fix
#MF.00000001.DBNOTCONNMetaflow metadata DB connection failed Check platform PG / just metaflow-platform
#MF.00000002.QUERYERRMetaflow metadata query failed Inspect Metaflow service logs
#MF.00000003.STACKDOWNGaius-local Metaflow stack down /health fix metaflow (standalone only)
#MF.00000004.DNSDOWNIn-cluster DNS for Metaflow pods Check CoreDNS
#MF.00000005.NOSCHEDSignals Status reachable but scheduler/metaflow capability unhealthy just signals-ready; YuniKorn :30080
#MF.00000006.NOPLATFORMSignals present but Metaflow :30180 not ready just metaflow-platform in Signals; do not start Gaius Tilt
#MF.00000007.NOPROFILEPlatform mode selected but platform.json missing Set SIGNALS_ROOT or add config/metaflow/platform.json
Code Description Fix
#YK.00000001.NOADMITkubectl apply of the extract Application failed Check federation-signals ns; stamp yunikorn.apache.org/queue
#YK.00000002.NOTADMITTEDPod never reached Running on the leaf ListQueueApplications on Signals :50551; GPU tokens advertised?
#YK.00000003.NOAPPBeginWorkload without an admitted ApplicationStart the flow so apply_and_admit runs first
#YK.00000004.ENVELOPEMore than one Gaius Application on extract (1 GPU cap) Yield the extra claim; bind_workload_id must reuse
#YK.00000005.DISKThis kind’s write mount past floor (/ 32Gi for KB/PG lanes; /raid 64Gi for RustFS product lanes; or >98% used) dust -d 1 on the mount in the guru text; product/FMP check /raid only
#YK.00000006.MEMHost MemAvailable below 8Gi Stop extra host children; do not mint another vLLM
#YK.00000007.SHAREFAILSignals rejected RequestQueueShare (cannot persist occupancy intent) Signals :50551 Scheduler; do not write queues.yaml from Gaius
#YK.00000008.GPUCOLLIDEHost CUDA would land on a GPU another admitted WRK occupies Declare light/medium/heavy (gpu_tokens 1/2/4) and admit that Application; in-process CUDA without Metaflow is the collision
Code Description Fix
#DP.00000001.NOPUBLISHgaius.prospects.corpus review into Signals warehouse faileduv run python -m signals.ops review-product gaius.prospects.corpus in $SIGNALS_ROOT; just signals-ready
#DP.00000002.NORUSTFSProduct facts would point at a local / non-RustFS datastore GAIUS_METAFLOW_MODE=platform (Signals :30180 + RustFS :9010)
Code Description Fix
#UI.00000001.NOGROKGrok Build binary not found for the PTY harness export GAIUS_GROK_BIN=$(command -v grok) or build external/oss-grok-build
#UI.00000002.NOBWRAPbwrap missing; --sandbox workspace cannot enforce its deny listRe-enter devenv (pkgs.bubblewrap) or apt install -y bubblewrap
#UI.00000003.NOMCPPYDevenv venv python missing for sandboxed MCP uv sync so .devenv/state/venv/bin/python exists
#UI.00000004.BRANDPACKLogo pack missing or custom slot empty Upload a Weathership-shaped .tgz on /settings
#UI.00000005.BRANDTGZBrand archive invalid or too large Flat logo.svg+favicon.svg or logo/lockup/lockup-mono-white.svg
#UI.00000006.BRANDSAVECould not persist GAIUS_UI_CONFIG Check write access to build/dev/.gaius-ui.json
#UI.00000007.BADARTIFACTAsk artifact missing type/fields type is ohlc/markdown/table; ohlc bars need t,o,h,l,c
#UI.00000008.NOBARSohlc artifact has no bars Pass FMP symbol to gaius__ask_present or a non-empty bars array
#UI.00000009.ASKBACKENDSettings Ask backend not clt-pair or sae-9b Choose 2×1.7B+CLT or 1×9B+SAE
Code Description Fix
#KB.00000001.NOROOTConfigured KB root directory is missing Create build/dev or set kb.root
#KB.00000002.UMAPLIVERefused to overwrite a live UMAP current_state with topology /reindex to refresh embeddings; do not publish kb_topology over it
Code Description Fix
#SDG.00000001.NOCORPORAexternal/sdg-corpora vocabulary missinggit submodule update --init external/sdg-corpora
#SDG.00000002.UNKCODEAttention token not in corpora SKOS and not in strategy aiming C Check annotations.csv / aperture.snapshot.json; do not invent codes
#SDG.00000003.NOSTRATEGYexternal/sdg-strategy aperture spec missinggit submodule update --init external/sdg-strategy
#SDG.00000005.NOMAXSIMsdg_aperture not in Qdrant; CLT SKOS ingest will not admit-allLoad the aiming collection or pass a MaxSim callback
#CLT.00000010.OFFMISMATCHCLT token position outside offset_mapping Extract and ground with the same tokenizer
#CLT.00000011.ACPJSONACP SKOS alignment reply was not JSON Re-run acp_align; agent must return only the verdict object
#CLT.00000012.TOOEARLYSKOS alignment invoked before admit/extract succeeded Wait for MaxSim admit + CLT extract rows; do not align on skip/empty extract
#SDG.00000004.NOAPERTUREStrategy checkout present but snapshot / registered τ incomplete Re-sync sdg-strategy from Aegir’s published pin
#SDG.00000005.NOENTRYrecord_attention on a source_id that was never mergedMerge into the cognition scratchpad first
Code Description Fix
#COL.00000015.NOINFLOWFeatured collection empty and no public feed URLs to admit Confirm feed_check writes content_items.url; devenv processes restart gaius-engine
#COL.00000016.NOENRICHPending cards did not get LuxCore image + local open-weights RenderCards + thinking; Brave/Cerebras optional
Code Description Fix
#HX.00000001.NORUSTFSHX cannot reach Signals RustFS; filesystem/MinIO fallback refused just signals-ready; confirm :9010 signals-dataproducts; devenv MinIO is not a warehouse
#HX.00000002.NOPOLARISPolarisfork Iceberg REST :8181 not reachable sudo systemctl start signals-polaris.service (signals.target); not a Gaius process
Code Description Fix
#ACF.00000013.NOHINTSEmpty keywords in article frontmatter Add keywords/news_queries
Code Description Fix
#XB.00000001.NOTOKENNo auth token Complete OAuth flow
#XB.00000011.NOFOLDERFolders API unavailable (403) Upgrade API tier
Code Description Fix
#HL.00001.GRPC_DOWNgRPC connection down just restart-clean
#HL.00002.GPU_OOMGPU memory exhausted just gpu-cleanup
Note : This is a representative subset. Guru codes are assigned as new failure modes are identified. See CLAUDE.md for the full format specification.