68 lines
3.1 KiB
Markdown
68 lines
3.1 KiB
Markdown
# Milestone 2 closeout
|
|
|
|
## Outcome
|
|
|
|
Milestone 2 is complete. One project-bound server can expose an explicit effective policy and
|
|
return compact, task-shaped, explainable context. Users can generate deterministic client
|
|
fragments and inspect their bindings without hidden runtime work.
|
|
|
|
Implemented contracts:
|
|
|
|
- Version-1 effective policy and capability-aware bootstrap.
|
|
- Version-1 retrieval plans and context capsules.
|
|
- Bounded task-context pagination with evidence gaps and explicit omissions.
|
|
- One disposable latest-generation transition receipt and paged read surface.
|
|
- Deterministic Codex, Claude, and OpenClaw standalone configuration fragments.
|
|
- Fixed-inventory read-only doctor results.
|
|
- Dedicated configuration and doctor JSON schemas.
|
|
- Repository-native Milestone 2 contract, smoke, scale, response-size, counter, and memory gates.
|
|
|
|
## Candidate evidence
|
|
|
|
The frozen implementation candidate is
|
|
`fb0df5e4a1c591c2a84788fd4814d98550f11863`.
|
|
|
|
The complete repository gate passed:
|
|
|
|
- Ruff formatting and lint.
|
|
- HTML, rendered-manual HTML, CSS, and JavaScript checks.
|
|
- Pyright with zero diagnostics.
|
|
- Warning-strict compilation and tests.
|
|
- 205 tests and 120 subtests.
|
|
- Lock and npm dependency-tree checks.
|
|
- Wheel and source-distribution builds.
|
|
- Milestone 0, 1, and 2 smoke benchmarks.
|
|
|
|
Three independent read-only adversarial audits covered client publication and policy binding,
|
|
doctor race and malformed-input behavior, and benchmark/contract evidence. Reproduced descriptor,
|
|
parent, target, filesystem, policy, secret-redaction, ambiguity, parser, response-size, and hidden
|
|
work defects were fixed and regression-tested before the candidate was frozen.
|
|
|
|
The clean ten-sample 1,000-node benchmark passed every threshold. Exact measurements and counter
|
|
ranges are recorded in
|
|
[`MILESTONE_2_BASELINE.md`](MILESTONE_2_BASELINE.md) and
|
|
[`benchmarks/milestone2-2026-07-29.json`](../benchmarks/milestone2-2026-07-29.json).
|
|
|
|
## Preserved boundaries
|
|
|
|
- The `docforge` package, imports, CLI executable, MCP executable, and existing tool names remain.
|
|
- Legacy one-method `load_projection()` adapters remain supported.
|
|
- The no-AST shorthand and legacy adapter-policy payload remain compatible.
|
|
- Project descriptor schema version 1 remains unchanged.
|
|
- No storage replacement was introduced.
|
|
- No legacy DocForge MCP or DocForge2 self-hosting was used.
|
|
- WorldForge and ScrapeStation were not touched.
|
|
- No production MCP integration was repointed.
|
|
- The legacy Forgejo repository and `legacy` remote were not changed.
|
|
- No tag, release, release announcement, or visibility change was created.
|
|
|
|
## Known follow-up work
|
|
|
|
The next active milestone may improve projection independence. It must not silently absorb these
|
|
separate future ideas:
|
|
|
|
- Avoid recomputing a complete task capsule for every continuation page.
|
|
- Add authenticated cursors only if a stronger threat model requires them.
|
|
- Verify Claude's native timeout representation.
|
|
- Add versioned adapter-owned launcher metadata before generating custom-adapter configurations.
|
|
- Keep doctor read-only; a live connection test must be an explicit separate operation.
|