omnigraph/docs/dev
Ragnor Comerford 1786c87772
docs(dev): RFC 001 — inline + stored queries, envelope, MCP
Tracked artifact consolidating the design across MR-656 (this branch),
MR-976 (Phase 1 envelope hardening parent, with MR-977/978/979/980
sub-issues), and MR-969 (stored queries + MCP).

Sections:

* Two paths, one engine — inline `/query` + `/mutate` (this PR) coexist
  with stored `/queries/{name}` (MR-969). Same `run_query` / `run_mutate`
  backend (the fold-in landed in the previous commit).
* Request envelope ("before") — Idempotency-Key, If-Match, X-Deadline,
  X-Trace-Id, expect, dry_run, fields. Phase 1 ships the load-bearing
  subset on `/mutate`.
* Response envelope ("after") — audit_id, snapshot_id, commit_id, stats,
  warnings. Closes the provenance loop today's `ChangeOutput` leaves
  open.
* `.gq` pragmas — `@description`, `@returns`, `@mcp`. Source-of-truth
  for the stored-query agent contract; no separate YAML registry.
* Multi-graph MCP — per-graph `/graphs/{id}/mcp/tools` + `/mcp/invoke`.
  Token binds to one graph by default; cross-graph agents loop.
* Cedar split — `read`/`change` for inline, `invoke_query` for stored.
  Operators deny ad-hoc for agent groups while keeping curated tool
  list open.
* Rejected alternatives — per-env override files, compiled bundles,
  tool-name prefixing across graphs, body-field graph dispatch.

Index entry added under "Active Implementation Plans" so future agents
land on the RFC before touching queries / mutations / envelope code.
`scripts/check-agents-md.sh` clean (35 links, 34 docs).
2026-05-29 11:36:21 +02:00
..
architecture.md Rename repo terminology to graph (#118) 2026-05-24 16:46:00 +01:00
branch-protection.md Rename repo terminology to graph (#118) 2026-05-24 16:46:00 +01:00
ci.md Rename repo terminology to graph (#118) 2026-05-24 16:46:00 +01:00
codeowners.md chore(codeowners): remove aaltshuler as owner 2026-05-28 11:41:38 +02:00
execution.md docs: split user and developer docs (#93) 2026-05-15 03:45:22 +03:00
index.md docs(dev): RFC 001 — inline + stored queries, envelope, MCP 2026-05-29 11:36:21 +02:00
invariants.md docs: split user and developer docs (#93) 2026-05-15 03:45:22 +03:00
lance.md Rename repo terminology to graph (#118) 2026-05-24 16:46:00 +01:00
merge.md docs: split user and developer docs (#93) 2026-05-15 03:45:22 +03:00
rfc-001-queries-envelope-mcp.md docs(dev): RFC 001 — inline + stored queries, envelope, MCP 2026-05-29 11:36:21 +02:00
runs.md docs: split user and developer docs (#93) 2026-05-15 03:45:22 +03:00
schema-lint-v1-plan.md schema-lint chassis v1.0: DropProperty Soft + code-tagged diagnostics (MR-694) (#90) 2026-05-16 16:30:03 +03:00
testing.md Rename repo terminology to graph (#118) 2026-05-24 16:46:00 +01:00