1
0
Fork 0
Code Issues Pull requests Projects Releases 2 Packages Wiki Activity Actions Pages

feat: add adapter read-only MCP boundary

This commit is contained in:
Andraxion 2026-07-22 05:59:20 -04:00
parent 1943c36ef3
commit f1e31487c0
17 changed files with 209 additions and 45 deletions

View file

@ -1,4 +1,4 @@
# DocForge 0.4 contract
# DocForge 0.5 contract
## Authority boundary
@ -18,7 +18,7 @@ commit when Git is available; it cannot change repository state.
- Result envelope: `schemas/result.schema.json`, version 1.
- Changeset schema: `schemas/changeset.schema.json`, version 1.
- Index schema: version 1, disposable and reproducible.
- Core, CLI, and MCP server: version 0.4.0.
- Core, CLI, and MCP server: version 0.5.0.
Schema files describe the generic interchange contract. Runtime validation remains responsible for
path confinement, source hashing, relationship resolution, dependency cycles, project limits, stale
@ -89,4 +89,8 @@ index. The loader is called again during an operation so identity or source chan
Adapters own stricter project semantics such as authority precedence, phase rules, context
selection, query ordering, and render-model composition. They may not weaken root confinement,
canonical authority, graph validation, hashing, stale-state checks, or derived-output boundaries.
Shadow adapters are explicit local integrations and are not loaded by the normal MCP process.
Shadow adapters are explicit local integrations and are not loaded by the normal generic MCP
process. A project integration may explicitly construct a read-only MCP server from one validated
`ProjectService` and an optional project-owned context provider. That server exposes only the fixed
read tool surface. The core does not discover adapters, choose projects or sessions, or import
project policy.

View file

@ -21,6 +21,11 @@ configured `--proposal-writer`. It does not expose an HTTP port in the first rel
Each response states that document text is project content, not higher-priority instructions. Each
response includes project identity, revision, source hash, adapter version, and staleness state.
The normal command binds the generic project loader. An explicit project integration may instead
construct the same read-only surface from a validated `ProjectService` and project-owned context
provider. This form cannot register proposal tools. Project discovery, session selection, family
partitioning, and custom context policy remain outside the DocForge core.
## Isolated proposal tools
- `docforge_create_changeset`