CT1/CT2/CT3/CT4: Compiler pipeline — driver, CompileBackend; blockchain, wasm, native, edge = real codegen.
Wire: module resolution so dal build works with imports and multi-file projects.
See docs/development/implementation/COMPILE_TARGET_IMPLEMENTATION_PLAN.md.
DAL summary for agent context (P3). Produces a serializable summary from parsed DAL
(services, top-level functions, imports, capabilities) for inclusion in the prompt.
Fleet: named set of agents, optionally created from a mold (N instances).
Off-chain only. Storage: in-memory; when base path is provided, also persisted to .dal/fleets.json.
See COMPREHENSIVE_AGENT_AND_MOLD_PLANS.md §5.
Project init: run dal init logic from code (CLI and agent dal_init tool).
Templates: general (main.dal), chain (chain.dal), iot (iot.dal), agent (agent.dal + evolve).
Path and name validation for the dal-registry HTTP server (src/bin/registry_server.rs).
Kept in the library so unit tests and mutation testing can target this logic without the binary.
Maximum number of lexer::tokens::TokenWithPosition entries allowed after lexing (including the
final EOF). The lexer uses this same value; it checks tokens.len() >= before each new
non-EOF token, then appends EOF once. parse_source rejects len > MAX_PARSE_TOKEN_COUNT
on the finished vector as defense in depth.
Execute DAL source and return (user_functions, scope) for HTTP server runtime factory.
Use when you need to serve HTTP routes whose handlers are defined in DAL.
The returned runtime state can be used with create_router_with_runtime_factory.
Like execute_dal_and_extract_handlers but resolves imports using entry_path.
Use this for dal serve <file> so that handlers and their imports (e.g. workflows.dal) load correctly and all @route handlers are registered.
The third and fourth tuple values are stdlib import aliases and per-alias module exports; dal serve copies them into each per-request runtime.
Execute a DAL file (e.g. agent.dal for serve behavior). Resolves imports when present.
Used by dal agent serve --behavior path so the script can spawn an agent and call agent::set_serve_agent(agent_id).