Skip to content

v0.7.0 — mcp-core + mcp-rmcp + snapshot-binding correctness

Choose a tag to compare

@github-actions github-actions released this 11 May 01:12
· 126 commits to main since this release

Eighth-crate workspace release: gaze-mcp-core (transport-free PII chokepoint runtime) and gaze-mcp-rmcp (rmcp transport sink) land as real crates. v0.6.5 placeholder content is replaced with the real implementation.

Added

  • gaze-mcp-core — transport-free PII chokepoint runtime with Tool trait, ToolCtx, ToolRegistry, PiiEnvelope::dispatch, Frontend/DispatchHost, ManifestStore, AuthHook, SessionIdPolicy. Public tool structs marked #[non_exhaustive] per pre-1.0 SemVer policy. (#162)
  • gaze-mcp-rmcp — rmcp transport sink that binds the chokepoint runtime to the rmcp protocol surface. (#174)
  • gaze_pii::Session::export_with_extension(DocumentExtension) — opt-in document mode for OCR/PDF/transcript bundles. (#177)
  • gaze_types::DocumentExtension, TextOrigin, CodecAuditRow, CodecCapabilitySet, ExtractionDensityPolicy. (#177)
  • CC-8 token-shape shadow guard at policy + rulepack regex paths — fails closed on patterns that shadow emitted token samples. (#162)
  • gaze-audit columns snapshot_scheme, snapshot_alg, snapshot_key_version for cross-version audit verification. (#179)
  • Coverage feedback loop (Phases 0-5): synthetic corpus + integration test scaffold + info-only trend gate. (#176, #178)
  • Ipv4Parse, Ipv6Parse, EthEip55 validator kinds; eth.address in core-extended. Closes #440.

Changed

  • gaze_pii::Session snapshot reference now binds the final emitted byte sequence rather than an earlier semantic object. Operator-bypass mutations post-snapshot are detectable. (#179)
  • Snapshot envelope: text-only Session::export() stays v3; document-extended Session::export_with_extension() emits v4. v0.6.x readers fail closed on v4. (#177)
  • Workspace bumped 0.6.6 → 0.7.0.

Fixed

  • gaze_pii::default_policy falls back to Tokenize (axis-1 fail-closed). (#175)

Architecture

  • Strict additive SemVer pre-1.0 policy in force: new public types use #[non_exhaustive]; behavioral changes ship behind opt-in flags until v1.0.0.
  • Audit-isolation gate (Dylint gaze_module_isolation lint) remains canonical; gaze-audit is the only crate that depends on rusqlite.

Crates published

gaze-types, gaze-audit, gaze-recognizers, gaze-pii, gaze-assembly, gaze-mcp-core, gaze-mcp-rmcp, gaze-cli.