Surface Parity Matrix
Surface Parity Matrix
Section titled “Surface Parity Matrix”Every public engine operation across the two programmatic surfaces (MCP, CLI). Rows are aligned by the hand-maintained xtask/operations.toml registry; cells render the surface-specific name when present and — when the surface doesn’t expose the operation. The Registry HTTP surface is its own publication layer and not in this matrix.
Matrix
Section titled “Matrix”| Operation | MCP | CLI |
|---|---|---|
entity-read | memstead_entity | entity |
search | memstead_search | search |
list | — | list |
relations-read | — | relations |
context | — | context |
overview | memstead_overview | overview |
status | — | status |
schema-describe | memstead_schema | type |
health | memstead_health | health |
changes-since | memstead_changes_since | changes |
reload | memstead_reload | reload |
fetch | — | fetch |
pull | — | pull |
push | — | push |
mem-fork † | — | mem fork |
proposal-brief | memstead_proposal_brief | proposal brief |
proposal-merge † | — | proposal merge |
proposal-list † | — | proposal list |
branch-reset | — | branch-reset |
create | memstead_create | create |
update | memstead_update | update |
relate | memstead_relate | relate |
delete | memstead_delete | delete |
rename | memstead_rename | rename |
retype | memstead_retype | retype |
check | memstead_check | check |
mem-create | memstead_mem_create | mem |
mem-delete | memstead_mem_delete | mem |
mem-set-version | memstead_mem_set_version | mem |
mem-set-schema | memstead_mem_set_schema | mem set-schema |
mem-configure | memstead_mem_configure | mem |
workspace-allow-create † | — | workspace |
workspace-revoke-create † | — | workspace |
workspace-allow-delete † | — | workspace |
workspace-revoke-delete † | — | workspace |
workspace-grant-cross-link † | — | workspace |
workspace-revoke-cross-link † | — | workspace |
projection-brief | — | projection brief |
projection-init | — | projection init |
projection-advance | — | projection advance |
projection-enable | — | projection enable |
projection-edit | — | projection edit |
projection-exclude | — | projection exclude |
projection-verify | — | projection verify |
projection-check-path | — | projection check-path |
parse-recovery | — | recover |
agent-notes | — | — |
mem-head-sha | — | — |
† These absences are decisions, not gaps. Every other empty cell is simply an operation that surface does not carry.
mem-fork— a fork is a lineage act on the mem-repo (a branch at a recorded ancestor, a config carrying its origin, a fetch from a declared remote): transport and lineage stay on the script and human side beside fetch, pull and push, so the MCP slot stays blank on purposeproposal-merge— the merge is the owner’s act on the owner’s branch: it lands another identity’s work under that identity and the owner’s beside it, commits to the target branch and writes the proposal record, so it stays on the script and human side beside fetch, pull, push and fork; the MCP slot stays blank on purposeproposal-list— the record the merge keeps is read on the same side the merge is made: the owner’s CLI (the brief already serves its re-proposal marks over MCP), so the MCP slot stays blank on purposeworkspace-allow-create— workspace policy decides what an agent may do, so it is an operator surface: the CLI and the operator-authenticated web API, never the agent’s MCP surface. A policy-gated mutation refuses with the exact command to report.workspace-revoke-create— workspace policy decides what an agent may do, so it is an operator surface: the CLI and the operator-authenticated web API, never the agent’s MCP surface. A policy-gated mutation refuses with the exact command to report.workspace-allow-delete— workspace policy decides what an agent may do, so it is an operator surface: the CLI and the operator-authenticated web API, never the agent’s MCP surface. A policy-gated mutation refuses with the exact command to report.workspace-revoke-delete— workspace policy decides what an agent may do, so it is an operator surface: the CLI and the operator-authenticated web API, never the agent’s MCP surface. A policy-gated mutation refuses with the exact command to report.workspace-grant-cross-link— workspace policy decides what an agent may do, so it is an operator surface: the CLI and the operator-authenticated web API, never the agent’s MCP surface. A policy-gated mutation refuses with the exact command to report.workspace-revoke-cross-link— workspace policy decides what an agent may do, so it is an operator surface: the CLI and the operator-authenticated web API, never the agent’s MCP surface. A policy-gated mutation refuses with the exact command to report.
Unaligned
Section titled “Unaligned”Surface entries the registry does not pin to a logical operation. Either add a row to xtask/operations.toml or, if the entry is intentionally surface-local (e.g. CLI-only registry / setup commands), leave it here as a deliberate gap.
Unaligned — MCP
Section titled “Unaligned — MCP”memstead_diff
Unaligned — CLI
Section titled “Unaligned — CLI”anchorsbatch-createbatch-relatebatch-updatechecksconflictsdueexportgatesinitinstallloginlogoutmem-repopublishquickstartreview-markschemauninstallunpublishverify-anchors