Skip to content

docs: freeze the conformance contract (contract-v1)#78

Merged
sepehr-safari merged 1 commit into
mainfrom
docs/freeze-contract-v1
Jul 12, 2026
Merged

docs: freeze the conformance contract (contract-v1)#78
sepehr-safari merged 1 commit into
mainfrom
docs/freeze-contract-v1

Conversation

@sepehr-safari

Copy link
Copy Markdown
Member

Elevates the Studio ⇄ toolkit conformance contract to a public, front-door document and freezes it as the 0.5.0 baseline — the trust hook for the launch.

What's here

  • docs/CONTRACT.md — the public contract: the trust story (two independent implementations, one format, checked in CI on every change), what it covers (trace format, event model, session correlation, the 16-rule failure taxonomy — 4 critical / 10 warning / 2 info — and the 15 shared scenarios), how conformance is enforced (native test / studio ci assert Studio's failure-code set equals the toolkit-generated goldens; 15/15 or the release is blocked), and the freeze + versioning policy (contract-v1 is immutable; any change to detected output is a new version). It links to the vendored fixtures/goldens/harness in src/ocpp/conformance/ rather than duplicating the mechanics.
  • docs/adr/0012-freeze-contract-v1.md — records the freeze decision, refining the versioning half of ADR-0001.
  • Cross-links — the README's "two implementations, one format" hook and cli-parity.md now point at CONTRACT.md; the ADR index is updated.

Docs only — no code change. The existing src/ocpp/conformance/README.md (vendored mechanics + regeneration recipe) is unchanged; CONTRACT.md is the public complement.

Verification

Conformance unchanged and green — studio ci15/15, exit 0. All of CONTRACT.md's relative links resolve.

Closes #72.

Elevate the Studio ⇄ toolkit conformance contract to a public, front-door
doc and freeze it as the 0.5.0 baseline.

- docs/CONTRACT.md: the trust story (two independent implementations, one
  format, CI-checked), what the contract covers (trace format, event model,
  session correlation, the 16-rule taxonomy — 4 critical / 10 warning / 2
  info, 15 scenarios), how conformance is enforced (15/15 or a release is
  blocked), and the freeze + versioning policy (contract-v1 immutable; a
  change to detected output is a new version). Links to the vendored
  mechanics in src/ocpp/conformance/ rather than duplicating them.
- docs/adr/0012-freeze-contract-v1.md: records the freeze decision, refining
  the versioning half of ADR-0001.
- Cross-links: the README trust hook and cli-parity.md now point at
  CONTRACT.md; ADR index updated.

Conformance unchanged and still green (15/15; `studio ci` exit 0).

Closes #72.
@sepehr-safari sepehr-safari merged commit cfa9c7f into main Jul 12, 2026
3 checks passed
@sepehr-safari sepehr-safari deleted the docs/freeze-contract-v1 branch July 12, 2026 18:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

docs: freeze the conformance contract (contract-v1)

1 participant