Machine-first reference for agent-native, IR-first compiler, diagnostic, and editor integration.
- Protocol contract: protocol-v1.md
- Schemas:
- check-response.schema.json
- build-response.schema.json
- fix-response.schema.json
- testgen-response.schema.json
- session-response.schema.json
- patch-response.schema.json
- validate-call-response.schema.json
- validate-type-response.schema.json
- suggest-response.schema.json
- context-response.schema.json
- query-response.schema.json
- symbols-response.schema.json
- Patch authoring schema: patch-request.schema.json
docs/diagnostics.schema.json(shared rawaic check --json/aic diag --jsondiagnostics array)
Canonical surface note:
check-response.schema.jsonandbuild-response.schema.jsonapply to daemon JSON-RPCcheck/buildresultpayloads.- CLI
aic check --json/aic diag --jsonusedocs/diagnostics.schema.json.
Diagnostic transport note:
diagnostics[*].reasoningis optional and versioned byreasoning.schema_version.- When the field is absent, treat that as the stable fallback for unsupported diagnostic families.
- LSP capabilities and examples:
examples/agent/lsp_workflow.json - Incremental daemon behavior/troubleshooting: incremental-daemon.md
- Agent cookbook end-to-end loops:
docs/agent-recipes/
- Language feature guidance (when/how to use each implemented feature):
- Full CLI command decision playbook:
- Scaffold command guide with exact command/output pairs:
- Patch authoring guide:
- Deep command guides:
aic contract --jsonaic ast --json <path>aic check <path> --jsonaic context --for function <name> --depth <n> --limit <n> --project examples/e7/context_query --jsonaic query --kind function --name 'validate*' --module demo.search --has-contract --project examples/e7/symbol_query --jsonaic symbols --project examples/e7/symbol_query --jsonaic scaffold fn process_user --param u:User --return 'Result[Int, AppError]' --effect io --capability io --requires 'u.age >= 0' --ensures 'true'aic validate-call <target> --arg <type> --project .aic validate-type <type_expr> --project .aic suggest --partial <text> --project . --limit <n>aic synthesize --from spec <name> --project . --jsonaic testgen --strategy boundary --for function <name> --project . --jsonaic checkpoint diff <checkpoint> [--to <checkpoint>] --project . --jsonaic session merge plans/valid_plan.json --project examples/e7/session_protocol --jsonaic patch --preview patches/valid_patch.json --project examples/e7/patch_protocol --jsonaic diag apply-fixes <path> --dry-run --jsonaic lspaic daemon
Fast-path budget for hallucination-prevention commands:
aic validate-call,aic validate-type, andaic suggest --partialare front-end-only checks.- They may parse, resolve, consult the symbol index, and rank candidates.
- They must not trigger codegen, execution, artifact writes, or daemon/session mutation.
- Schema and fixture validation:
tests/agent_protocol_tests.rs - Recipe docs-as-tests:
tests/agent_recipe_tests.rs - LSP/autofix/daemon integration tests:
tests/lsp_smoke_tests.rs,tests/e7_cli_tests.rs
Before merging command/feature documentation updates:
- Confirm command surface against
src/main.rsanddocs/cli-contract.md. - Validate diagnostic references against
docs/diagnostic-codes.md. - Ensure README and
docs/agent-tooling/README.mdlink to any new agent docs. - Verify examples/command snippets use current flag shapes (
aic <command> --help). - Keep guaranteed behavior in
docs/reference/*; keep forward-looking items indocs/reference/open-issue-contracts.md.
The notes below are for release and epic maintenance. Most contributors can ignore them.
Development note: this project has been developed mainly using GPT-5.3-Codex as the primary implementation agent.
Use this checklist when preparing closure evidence for epic #62. Keep the epic open until every item below is complete and evidenced.
- Protocol docs + schemas match implemented behavior:
docs/agent-tooling/protocol-v1.md,docs/agent-tooling/schemas/parse-response.schema.json,docs/agent-tooling/schemas/ast-response.schema.json,docs/agent-tooling/schemas/check-response.schema.json,docs/agent-tooling/schemas/build-response.schema.json,docs/agent-tooling/schemas/fix-response.schema.json,docs/agent-tooling/schemas/testgen-response.schema.json,docs/agent-tooling/schemas/session-response.schema.json,docs/agent-tooling/schemas/patch-response.schema.json,docs/agent-tooling/schemas/patch-request.schema.json,docs/agent-tooling/schemas/validate-call-response.schema.json,docs/agent-tooling/schemas/validate-type-response.schema.json,docs/agent-tooling/schemas/suggest-response.schema.json,docs/agent-tooling/schemas/context-response.schema.json,docs/agent-tooling/schemas/query-response.schema.json,docs/agent-tooling/schemas/symbols-response.schema.json - Daemon docs reflect current incremental behavior and troubleshooting:
docs/agent-tooling/incremental-daemon.md - LSP workflow example is current and runnable:
examples/agent/lsp_workflow.json - Agent recipes are current for end-to-end loops:
docs/agent-recipes/ - Test gate run:
make test-e7 - Relevant test files are green:
tests/agent_protocol_tests.rs,tests/agent_recipe_tests.rs,tests/lsp_smoke_tests.rs,tests/e7_cli_tests.rs - Epic closure comment contains evidence: commit hash, commands run (
make test-e7), and touched docs/examples/tests