From c3552f2328f1ee059e042e6831a5b87e38b5f719 Mon Sep 17 00:00:00 2001 From: Andraxion Date: Wed, 29 Jul 2026 15:38:49 -0400 Subject: [PATCH] Activate Milestone 5 release contract --- ACTIVE_SLICE.md | 99 ++++++++++++++++++++++++++++++++++++++++---- DEVELOPMENT_NOTES.md | 16 +++++++ 2 files changed, 107 insertions(+), 8 deletions(-) diff --git a/ACTIVE_SLICE.md b/ACTIVE_SLICE.md index 22b7caa..2d5667c 100644 --- a/ACTIVE_SLICE.md +++ b/ACTIVE_SLICE.md @@ -2,14 +2,97 @@ ```text Last completed milestone: 4 — adapter SDK and product documentation. -Evidence: Frozen executable candidate 95271dcf2e48045b9d3aed9b9ea09c7fc155692c; 347 tests and 402 subtests; 3 accessibility flows; offline fresh-wheel adoption; clean 1,002-node graph-plus-Logic benchmark; no secret-scan findings. -Active milestone: None. -Outcome: New projects can adopt DocForge incrementally, and users can understand the CLI, MCP server, policies, adapters, renderers, and agent integration without reading implementation code. -Status: Milestone 4 is closed. Milestone 5 has not started. -Next directional milestone: 5 — stabilization and first DocForge2 release. +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. ``` -Milestone 5 remains directional context. Do not begin release stabilization, versioning, tagging, -or publication without a new active-slice contract based on the Milestone 4 evidence. +## Authority -The completed Milestone 4 contract and its exclusions are preserved in `SLICE_HISTORY.md`. +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`. diff --git a/DEVELOPMENT_NOTES.md b/DEVELOPMENT_NOTES.md index 78f6be8..2cca502 100644 --- a/DEVELOPMENT_NOTES.md +++ b/DEVELOPMENT_NOTES.md @@ -15,6 +15,22 @@ deferred. Stable user and compatibility contracts still belong in dedicated docu - DocForge2 does not self-host during this program. - Release tags and Forgejo releases require Rob's explicit approval. +Milestone 5 was explicitly authorized on 2026-07-29 through the end of the roadmap, including +evidence-based delegation and the milestone release actions frozen in `ACTIVE_SLICE.md`. That +authorization does not widen the project, production-binding, or external-publication boundaries +recorded there. + +## Milestone 5 — active: stabilization and first DocForge2 release + +Milestone 5 starts from the clean, merged, and pushed Milestone 4 closeout +`6d06195950d33bcd2d712f8819bbfb3d6652ad03`. The candidate version is `1.4.0`, subject to the full +release contract rather than version work alone. + +The release work is evidence-first. Maintained compatibility, migration, recovery, concurrency, +policy, projection, task-comparison, package, clone, browser, benchmark, and secret-scan gates must +pass before documentation closeout, tag creation, or publication. `main` remains the Milestone 4 +baseline while implementation proceeds on `dev`. + ## Milestone 0 — complete Milestone 0 established the public successor, preserved the complete lineage and v1 tag, integrated