# Milestone state ```text Last completed milestone: 4 — adapter SDK and product documentation. Baseline: 6d06195950d33bcd2d712f8819bbfb3d6652ad03 on main, dev, origin/main, and origin/dev. Active milestone: 5 — stabilization and first DocForge2 release. Outcome: Compatibility, determinism, recovery, security, performance, and representative task advantage are proven for the first successor release. Status: Active. Release candidate: 1.4.0, subject to every gate below. ``` ## Authority This contract activates Milestone 5 from the clean, merged, and pushed Milestone 4 closeout. The roadmap in `/home/andraxion/.openclaw/workspace/DocForgeOutline.md` supplies direction; this file freezes the executable scope and acceptance criteria. `main` remains the Milestone 4 baseline until the complete Milestone 5 release candidate passes. Implementation occurs on `dev`. ## Required release evidence The release candidate must prove all of the following from maintained, reproducible gates: 1. Legacy one-method adapter compatibility and the frozen package, CLI, MCP, schema, rendering, descriptor, result-envelope, and no-AST surfaces. 2. Exact complete/incremental primary-graph and Logic equivalence for maintained incremental adapters. 3. Deterministic adapter, worker, renderer, command-reference, configuration, and publication output. 4. Detection of concurrent source mutation without publishing or serving a mixed or stale generation. 5. Atomic, crash-safe derived publication and exact recovery from interrupted publication. 6. Corrupt extraction-cache, index, attestation, receipt, fragment, and projection recovery using canonical sources as the authority. 7. No stale reads after source or policy change, including generation-pinned retrieval and viewer behavior. 8. Exact-hash canonical application with project-owned serialization, stale-proposal rejection, and post-application resynchronization. 9. Closed policy precedence across process capability, descriptor policy, `--no-ast`, projection policy, worker enforcement, and viewer enforcement. 10. Manual and portable-graph isolation, immutable package verification, bounded detached workers, rendering-policy enforcement, viewer-policy enforcement, and accessibility. 11. Comparative representative task evidence with fixed questions, answer keys, provenance, latency, and response-size accounting for both graph-assisted and source-only workflows. 12. A fresh-wheel and fresh-clone release rehearsal, full quality and browser gates, maintained benchmarks, secret scans, exact version identity, signed-off release notes, and reproducible release artifacts. ## Deliverables - A maintained Milestone 5 compatibility matrix and aggregate release gate. - Reproducible migration, recovery, concurrency, and comparative-task evidence. - One authoritative package version shared by package metadata, Python, CLI, MCP, viewer manager, reference MCP, generated configuration, and release documentation. - A standard project license file, changelog or release notes, release baseline, closeout record, and machine-readable evidence. - A clean `main` merge, synchronized `main` and `dev`, annotated `v1.4.0` tag, and Forgejo release only after the final documentation-bearing commit passes a fresh-clone gate. ## Fixed boundaries - Preserve the `docforge` package, `docforge` CLI, `docforge-mcp`, MCP tool names, schema version 1 surfaces, effective policy version 1, projection policy version 2, and legacy adapter entry point. - Preserve canonical project sources. Migration may rebuild disposable state but may not rewrite canonical content merely to satisfy the release. - Full rebuild remains the recovery and equivalence oracle. - Derived artifacts must fail closed on malformed, foreign, stale, oversized, or incompatible state. - Version `1.4.0` is additive relative to `1.0.0`; breaking a frozen contract requires a separately justified major-version decision. ## Exclusions - No WorldForge change or benchmark. - No ScrapeStation change, production binding change, or production migration. - No legacy-repository mutation. - No production MCP repointing. - No remote render service, render farm, third-party renderer ecosystem, graph federation, or dedicated graph database. - No arbitrary adapter command execution, compiler execution, remote execution, or expanded launcher authority. - No PyPI publication unless it is separately verified as an intended existing release channel. ## Release sequence 1. Freeze and implement the compatibility, migration, recovery, concurrency, and task-evidence gates. 2. Stabilize version identity, packaging, license, security, and release automation. 3. Freeze one clean executable candidate and run the full repository, browser, benchmark, fresh-wheel, fresh-clone, and secret-scan gates. 4. Close documentation atomically against that candidate and rerun documentation-only validation. 5. Merge and push the final candidate. 6. Rehearse from a fresh anonymous clone at the exact commit. 7. Create and push the annotated `v1.4.0` tag and publish the Forgejo release from the verified artifacts. The completed Milestone 4 contract and exclusions remain preserved in `SLICE_HISTORY.md`.