You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
contextgraph-types and contextgraph-host therefore need 2.0.0, while the protocol version stays contextgraph/1.0 — the two-axis distinction docs/stability.md describes, and its first substantive instance.
Definition of done
Decide and apply the version bump across the workspace.workspace.package.version1.0.0 → 2.0.0; all nine members inherit it. Verified: contextgraph-types v2.0.0 and contextgraph-host v2.0.0 in Cargo.lock.
Move the internal dependency floors.contextgraph-* path deps went >=1.0.0 → >=2.0.0 in contextgraph-host, contextgraph-conformance, contextgraph-trace, contextgraph-mcp-bridge, contextgraph-mcp-server. This was not cosmetic: contextgraph-host 2.0.0 does not compile against contextgraph-types 1.x, so the old floor admitted a resolvable-but-unbuildable pair.
A MIGRATION.md entry.§5 covers the wildcard match arm, .clone() where Copy was relied on, and & at frame_kind_name call sites — each a compile error, none a silent runtime change — plus the SDK lockstep note.
Check whether the other published crates need a bump for re-exported surface. They do, and they get it automatically: contextgraph-conformance and contextgraph-trace both re-export contextgraph-types surface and inherit the workspace version. Verified they cargo check clean at the new floors.
Correct the stability contract that forbade this bump.docs/stability.md said a breaking redesign required "both contextgraph/2.0 and crate version 2.0.0" — two lines after declaring the axes independent, which would have made a wire-compatible crate major illegal. It now states the implication in the direction that holds.
Tests, docs, CI.cargo check/test/clippy -D warnings clean on contextgraph-types + contextgraph-host (136 host tests, 132 types under --features attestation, 5 reference vectors, 0 failures); cargo fmt --check clean; CHANGELOG.md records the bump and the reasoning under [Unreleased].
Out of scope, tracked separately
The Go SDK is unchanged in this release; porting it is #93. The Python and TypeScript SDK manifests did move to 2.0.0 here, because FrameKind widens in both type systems and an exhaustive switch relying on never-narrowing stops type-checking — the same break in a different language, so lockstep was the honest call rather than deferred work.
PR #87 makes
FrameKindan open vocabulary (ADR 0011). Wire-compatible, Rust-semver breaking:Unknown(String)variant#[non_exhaustive]Copycontextgraph_host::frame_kind_namebecomesfn(&FrameKind) -> &strcontextgraph-typesandcontextgraph-hosttherefore need2.0.0, while the protocol version stayscontextgraph/1.0— the two-axis distinctiondocs/stability.mddescribes, and its first substantive instance.Definition of done
workspace.package.version1.0.0→2.0.0; all nine members inherit it. Verified:contextgraph-types v2.0.0andcontextgraph-host v2.0.0inCargo.lock.contextgraph-*path deps went>=1.0.0→>=2.0.0incontextgraph-host,contextgraph-conformance,contextgraph-trace,contextgraph-mcp-bridge,contextgraph-mcp-server. This was not cosmetic:contextgraph-host2.0.0 does not compile againstcontextgraph-types1.x, so the old floor admitted a resolvable-but-unbuildable pair.MIGRATION.mdentry. §5 covers the wildcardmatcharm,.clone()whereCopywas relied on, and&atframe_kind_namecall sites — each a compile error, none a silent runtime change — plus the SDK lockstep note.contextgraph-conformanceandcontextgraph-traceboth re-exportcontextgraph-typessurface and inherit the workspace version. Verified theycargo checkclean at the new floors.stella builds against CGP HEADjob passes on Sign the provenance chain, open the FrameKind vocabulary #87.docs/stability.mdsaid a breaking redesign required "bothcontextgraph/2.0and crate version2.0.0" — two lines after declaring the axes independent, which would have made a wire-compatible crate major illegal. It now states the implication in the direction that holds.cargo check/test/clippy -D warningsclean oncontextgraph-types+contextgraph-host(136 host tests, 132 types under--features attestation, 5 reference vectors, 0 failures);cargo fmt --checkclean;CHANGELOG.mdrecords the bump and the reasoning under[Unreleased].Out of scope, tracked separately
The Go SDK is unchanged in this release; porting it is #93. The Python and TypeScript SDK manifests did move to
2.0.0here, becauseFrameKindwidens in both type systems and an exhaustiveswitchrelying onnever-narrowing stops type-checking — the same break in a different language, so lockstep was the honest call rather than deferred work.