1
0
Fork 0
Code Issues Pull requests Projects Releases 2 Packages Wiki Activity Actions Pages
DocForge2/docs/MILESTONE_5_CLOSEOUT.md

97 lines
4.7 KiB
Markdown

# Milestone 5 closeout
## Outcome
DocForge `1.4.0` completes the first DocForge2 successor release. Compatibility, migration,
determinism, concurrency, recovery, policy, projection isolation, accessibility, performance,
adoption, artifact reproducibility, and representative real-task evidence are maintained and
passing.
The documentation-bearing candidate passed its complete local release gate. Its final
documentation-only descendant passes the anonymous exact-commit clone gate and is identified by
the annotated `v1.4.0` tag and public Forgejo release.
## Candidate lineage
- Merged Milestone 4 baseline:
`6d06195950d33bcd2d712f8819bbfb3d6652ad03`.
- Frozen executable implementation:
`d2bb95fe6190e659cf66ba57c78be53b63b53240`.
- Fresh-clone legacy-tag verification:
`97f3b6b1ae303c972387508557a3d54ea621a702`.
- Maintained aggregate recovery proof:
`2b98059b44f4d46b4d4cce776f163e893c647c76`.
- Release version and tag: `1.4.0` and `v1.4.0`.
- Publication channel: public Forgejo release only.
The tag resolves to the final documentation-bearing descendant of this lineage, never to the
earlier executable-only commit.
## Closed release evidence
The clean executable release gate passed:
- Formatting, Python and web lint, strict types, compilation, lock, dependency, package-build,
generated-reference, and documentation checks.
- 142 contract tests plus 272 subtests.
- 378 complete tests plus 422 subtests.
- Three interactive accessibility flows.
- 116 compatibility tests plus 263 subtests.
- 29 concurrency tests plus 2 subtests.
- Offline fresh-wheel adoption.
- Reproducible wheel and source-distribution builds with exact version and MIT license identity.
- Gitleaks scans of reachable history and the candidate directory with no findings.
- Full maintained Milestone 0, 1, 2, 3, and 4 benchmarks.
The proof-only recovery commit adds four maintained tests. The aggregate recovery gate passes 72
tests plus 62 subtests.
Detailed migration identities, artifact evidence, recovery boundaries, and task measurements are
in the [Milestone 5 baseline](MILESTONE_5_BASELINE.md).
## Compatibility and migration result
Version `1.4.0` preserves the established distribution, imports, CLI, MCP, schema-1 descriptor,
generic-project, one-method adapter, exact-hash changeset, rendering, result-envelope, and no-AST
surfaces. New adapter, retrieval, projection, and release capabilities are additive.
The real annotated `v1.0.0` archive migrates without canonical or proposal changes. Its schema-1
index rebuilds as schema 3, and its graph identity remains exact. The current CLI and MCP
registrations are supersets of the version-1 surfaces. The proof reports the inherited version-1
metadata/runtime mismatch instead of hiding it.
## Representative task result
The pinned real-package comparison uses `markdown-it-py 4.2.0`, 66 Python files, and 225,945 bytes.
Graph-assisted and source-only workflows both return exact reviewed answers for direct
dependencies, bounded reverse impact, and a dependency path.
Graph-assisted medians were 0.008, 0.009, and 0.013 ms after one-time preparation, versus 1.341,
32.108, and 32.142 ms for source-only inspection. Graph-assisted work also reduced inspected bytes
from 10,628 to 349, from 225,945 to 419, and from 225,945 to 212. Source-only final responses were
smaller, so no universal response-size advantage is claimed.
## Preserved boundaries
- Canonical project files remain authoritative. Indexes, caches, receipts, render output, graph
output, client fragments, and viewer state remain disposable.
- Full rebuild remains the recovery and equivalence oracle.
- Derived publication is durable and atomic. Multi-file canonical application does not claim
process-death atomicity.
- `--no-ast` remains a restrictive binding policy, not a parser detector or filesystem sandbox.
- Reference adapters publish narrow static evidence and do not claim resolved calls, types,
inheritance, runtime behavior, compiler semantics, or semantic ownership.
- Reference MCP remains read-only.
- No WorldForge, ScrapeStation, legacy repository, production binding, storage, or self-hosting
change belongs to this release.
- No PyPI publication belongs to this release.
## Publication
`main`, `dev`, `origin/main`, and `origin/dev` resolve to the exact documentation-bearing release
commit. An anonymous HTTPS clone of that commit verifies the frozen annotated `v1.0.0` migration
tag and repeats the complete release gate before `v1.4.0` is created.
The public Forgejo release attaches the reproducible wheel, source distribution, and
machine-readable release-identity evidence containing their exact SHA-256 checksums. No PyPI
publication, production binding change, or legacy-repository mutation is part of this release.