# DocForge2 completed milestones This file records DocForge2 milestones only. Product behavior is defined by the current contracts under `docs/`, not by milestone notes. ## 2026-08-02 - DocForge 2.0 release - Verified the unreleased explicit accepted-writer policy at development commit `7b21541ab37c35dc9f3d47f631fef0c1884f9525` against released `v1.4.0` commit `f9a05f868eec6c35e2b74a69467459e6ff2190bf` in isolated locked environments. - Preserved same-identity application as the default, kept contributor processes without an application tool, and proved explicit allowlisted application with creator and applier receipts. - The development repository gate passed 142 contract tests plus 272 subtests, 381 complete tests plus 422 subtests, three accessibility flows, and all static, build, documentation, and smoke benchmark checks. - Compatibility passed 116 tests plus 263 subtests, concurrency and application passed 31 tests plus 2 subtests, recovery passed 72 tests plus 62 subtests, and adoption, reproducible-artifact, migration, secret-scan, and anonymous fresh-clone release gates passed. - All full maintained benchmark tracks passed. The median absolute difference across 66 multi-sample operations was 0.71%, exact adapter graph and Logic evidence matched, and all six representative task answers remained exact. - Released the verified candidate as `2.0.0`, giving DocForge2 an unambiguous distribution and executable identity while preserving its versioned schemas and compatibility contracts. ## 2026-07-31 - live-documentation boundary cleanup - Replaced the historical application-decision memo with the current canonical-application contract. - Removed predecessor rollout chronology and transition-only repository notes from the live documentation tree. Repository history remains the archive. - Updated live documentation references and validation requirements. - Formatting, lint, command-reference, web, and 33-page documentation checks passed. Focused adapter and changeset tests passed 45 tests plus 2 subtests. ## Milestone 5 - stabilization and first release - Released DocForge2 `1.4.0` from synchronized `main` and `dev` branches. - Centralized version identity across package metadata, Python, CLI, MCP, generated client configuration, and release evidence. - Proved compatibility, deterministic output, recovery, concurrency, security, representative task advantage, reproducible artifacts, fresh-wheel adoption, and fresh-clone installation. - Hardened derived publication and exact-hash canonical application against measured race windows. - Published the Forgejo release with reproducible wheel, source distribution, and machine-readable identity evidence. The final documentation-bearing candidate passed 378 tests plus 422 subtests, all maintained quality and benchmark gates, three accessibility flows, secret scans, artifact reproduction, and the anonymous fresh-clone rehearsal. ## Milestone 4 - adapter SDK and product documentation - Added the stable `docforge.adapter_sdk` authoring surface and complete/incremental conformance helper. - Added bounded Python, JavaScript, TypeScript, and C++ reference integrations. - Added a closed reference-adapter descriptor and fixed read-only reference MCP server. - Added deterministic client configuration generation for custom project adapters. - Generated CLI and MCP references from live implementation metadata. - Added onboarding, authority, descriptor, policy, adapter, rendering, security, recovery, and agent-integration documentation. The candidate passed 347 tests plus 402 subtests, strict typing and lint gates, all maintained benchmarks, package adoption, and three accessibility flows. ## Milestone 3 - independent projections - Separated manual rendering, portable graph rendering, and live visualization policy. - Added immutable render plans and packages, fixed detached workers, content-addressed publication, receipts, recovery, and accessibility gates. - Added semantic manual fragments with deterministic full-render equivalence. - Pinned live viewer reads to one validated index generation. - Replaced recursive cycle planning with an iterative traversal proven at 10,000 nodes. The complete gate passed 281 tests plus 272 subtests and all maintained scale, response-size, determinism, no-work, package, and browser checks. ## Milestone 2 - project policy and task-shaped context - Added capability-aware bootstrap, effective policy, retrieval plans, bounded context capsules, transition receipts, deterministic client fragments, and read-only diagnostics. - Kept normal MCP work project-bound and explicit about enabled read, proposal, application, rendering, and viewer capabilities. - Added fixed configuration, policy, response-size, counter, and memory contracts. The complete gate passed 205 tests plus 120 subtests, strict types and lint, package builds, and all maintained milestone benchmarks. ## Milestone 1 - fast observable core - Removed repeated whole-project parsing from routine warm reads. - Added versioned generation receipts and generation-pinned SQLite retrieval. - Kept complete loading and deep validation as recovery and equivalence oracles. - Added structured work counters proving that retrieval and status calls do not hide builds, parsing, rendering, or complete-project hashing. The maintained 1,000-node benchmark kept exact retrieval, search, filtering, traversal, context, render status, and visualization status within their recorded latency and response-size gates. ## Milestone 0 - successor foundation - Established the public DocForge2 repository and its `main` and `dev` workflow. - Froze package, CLI, MCP, adapter, schema, changeset, rendering, safety, and no-AST compatibility contracts. - Added repository-native aggregate, contract, build, and performance gates. - Recorded cold and warm latency, startup, memory, rendering, response-size, incremental, and pinned-SQLite baselines. The aggregate gate passed formatting, Python and web lint, strict types, compilation, public contract checks, tests, dependency validation, package builds, and the maintained benchmark.