1
0
Fork 0
Code Issues Pull requests Projects Releases 2 Packages Wiki Activity Actions Pages

Release DocForge 2.0.0

This commit is contained in:
Andraxion 2026-08-02 20:52:36 -04:00
parent 7b21541ab3
commit 3d5fa4e9e8
12 changed files with 86 additions and 37 deletions

View file

@ -2,8 +2,8 @@
Milestone 0 establishes DocForge2 as the successor repository without renaming or replacing the
working DocForge interfaces. Compatibility changes require an explicit decision, a contract-test
update, and migration guidance. DocForge 1.4.0 preserves that baseline and adds the adapter,
rendering, recovery, and release surfaces recorded below.
update, and migration guidance. DocForge 2.0.0 preserves that baseline and the complete 1.4
adapter, rendering, recovery, and release surfaces recorded below.
The compatibility gate is:
@ -69,9 +69,9 @@ names and arguments remain supported. Additive commands, tools, and response fie
Removing or changing an existing name, required argument, stable error code, or safety boundary
requires an explicit compatibility decision.
Version `1.4.0` comes from one `docforge._version` authority. The four maintained executable
surfaces report `docforge 1.4.0`, `docforge-mcp 1.4.0`,
`python -m docforge.reference_mcp 1.4.0`, and `docforge-viewer-manager 1.4.0` for `--version`.
Version `2.0.0` comes from one `docforge._version` authority. The four maintained executable
surfaces report `docforge 2.0.0`, `docforge-mcp 2.0.0`,
`python -m docforge.reference_mcp 2.0.0`, and `docforge-viewer-manager 2.0.0` for `--version`.
Generated generic and adapter client configurations include and hash-bind the same
`docforge_version`.
@ -285,7 +285,7 @@ other users and ordinary path access; deliberate arbitrary tampering by another
same operating-system UID is outside the compatibility boundary.
The historical `v1.0.0` release carried distribution metadata `1.0.0` while its module and MCP
runtime reported `0.15.0`. Version 1.4.0 records that inherited mismatch in its maintained
runtime reported `0.15.0`. Version 2.0.0 records that inherited mismatch in its maintained
migration proof and resolves current identity through one authority. See
[migrating from v1](MIGRATING_FROM_V1.md).

View file

@ -1,4 +1,4 @@
# DocForge 1.4 contract
# DocForge 2.0 contract
## Authority boundary
@ -34,7 +34,7 @@ commit when Git is available; it cannot change repository state.
- Reference adapter configuration: `schemas/reference-adapter.schema.json`, version 1.
- Index schema: version 3, disposable and reproducible.
- Index attestation: schema version 1, disposable and reproducible.
- Distribution, Python package, CLI, generic MCP, reference MCP, and viewer manager: version 1.4.0.
- Distribution, Python package, CLI, generic MCP, reference MCP, and viewer manager: version 2.0.0.
- Incremental extraction cache: version 1, disposable and reproducible.
Schema files describe the generic interchange contract. Runtime validation remains responsible for
@ -42,8 +42,8 @@ path confinement, source hashing, relationship resolution, dependency cycles, pr
state, and adapter-specific rules that JSON Schema cannot prove by itself.
`src/docforge/_version.py` is the sole package-version authority. The maintained executable
surfaces report exactly `docforge 1.4.0`, `docforge-mcp 1.4.0`,
`python -m docforge.reference_mcp 1.4.0`, and `docforge-viewer-manager 1.4.0` for `--version`.
surfaces report exactly `docforge 2.0.0`, `docforge-mcp 2.0.0`,
`python -m docforge.reference_mcp 2.0.0`, and `docforge-viewer-manager 2.0.0` for `--version`.
Generated generic and adapter client configurations bind `docforge_version` into their validated
hashes.

View file

@ -22,13 +22,13 @@ Disposable index and cache schemas may change. Rebuild them rather than copying
## Maintained v1.0.0 migration evidence
`make migration-m5` archives and executes the actual annotated `v1.0.0` release, then opens its
fixture, index, and active proposal through DocForge 1.4.0. The frozen tag object is
fixture, index, and active proposal through DocForge 2.0.0. The frozen tag object is
`2d7d306a37da89f1c860c7f0be161c45386acf61`; it identifies commit
`593c173b453236a6872d0a4e88e7a51a67a21cde`.
The tagged release contains an inherited identity mismatch that the migration proof records
rather than hiding: distribution metadata says `1.0.0`, while `docforge.__version__` and the MCP
server report `0.15.0`. DocForge 1.4.0 replaces that duplicated state with one authoritative
server report `0.15.0`. DocForge 2.0.0 replaces that duplicated state with one authoritative
version and requires its package and server values to agree.
The maintained fixture evidence is exact:

View file

@ -5,8 +5,8 @@ people and AI agents can search, inspect, visualize, and change through reviewab
Canonical project files remain authoritative. The SQLite graph, previews, rendered manuals, and
viewer processes are derived and can be rebuilt.
This manual describes the DocForge 1.4.0 release. The tagged `v1.0.0` baseline was the first stable
product release. Version 1.4.0 preserves its project-scoped graph, CLI and MCP query
This manual describes the DocForge 2.0.0 release. The tagged `v1.0.0` baseline was the first stable
product release. Version 2.0.0 preserves its project-scoped graph, CLI and MCP query
surfaces, hash-approved proposal application, generic and project-owned adapters, declared
rendering, and Nodes/Flow/Web model while adding the maintained incremental, projection, adapter
SDK, recovery, and release proofs documented below.
@ -132,8 +132,8 @@ python -m docforge.reference_mcp --version
python -m docforge.viewer_manager --version
```
For version 1.4.0 these report `docforge 1.4.0`, `docforge-mcp 1.4.0`,
`python -m docforge.reference_mcp 1.4.0`, and `docforge-viewer-manager 1.4.0`. Package metadata,
For version 2.0.0 these report `docforge 2.0.0`, `docforge-mcp 2.0.0`,
`python -m docforge.reference_mcp 2.0.0`, and `docforge-viewer-manager 2.0.0`. Package metadata,
Python imports, generated generic and adapter configurations, and these commands share the same
version authority.
@ -1310,7 +1310,7 @@ make fresh-clone-m5
recovery, task-evidence, fresh-wheel, version, artifact, secret-scan, and benchmark suite.
`fresh-clone-m5` anonymously clones the exact published candidate over HTTPS, fetches and verifies
the frozen annotated `v1.0.0` migration tag, and repeats `release-gate`. Release operators use
`make release-pretag` before creating `v1.4.0` and `make release-posttag` after the annotated tag
`make release-pretag` before creating `v2.0.0` and `make release-posttag` after the annotated tag
points to the exact release commit.
Project-specific vocabulary, extraction rules, and serialization belong in the project adapter.