Skip to content

Latest commit

 

History

History
131 lines (104 loc) · 23.9 KB

File metadata and controls

131 lines (104 loc) · 23.9 KB

Compatibility Matrix

Current as of the repository state after the v0.14.3 profile additions.

Wire Format Support

Surface Wire 0.2 (interaction-record+jwt) Wire 0.1 (peac-receipt/0.1) Status
@peac/protocol (TS/Node) Full: issue() + verifyLocal() Legacy verify only (verifyLocalWire01(), not exported from barrel) default
@peac/crypto (TS/Node) Full: dual-stack sign/verify/decode Decode and verify only default
@peac/schema (TS/Node) Full: Wire02ClaimsSchema, extension groups, type enforcement Legacy ReceiptClaimsSchema default
@peac/cli Full - default
@peac/mcp-server Full (5 tools); composition guide: MCP composition - default
@peac/middleware-express Full - default
Go SDK (sdks/go/) Full: Issue() + VerifyLocal() + JCS (22 cross-language vectors) Legacy verify only supported (core issue/verify); middleware experimental
Python API-first via reference verifier (httpx examples, >=3.12) - examples only
.NET Offline verifier example (examples/dotnet-quickstart/, net10.0) - examples only (not a PEAC .NET SDK; no NuGet package)
@peac/core - Full (Wire 0.9 locked) archived (at v0.13.0)
@peac/sdk - Full (Wire 0.1) archived (use @peac/protocol)

Runtime Environments

Environment Status Notes
Node.js 24 (Active LTS) Required Canonical development and CI lane
Node.js 22 (Maintenance LTS) Compatibility engines.node >= 22.0.0 floor
Node.js 25+ Advisory Forward-compat CI lane
Go 1.26+ Default Interaction Record format (core issue/verify); middleware experimental
Browser / Edge runtime Partial @peac/schema (no-network), verifier UI, worker surfaces

Hosted Services

Service Status Endpoint
Reference Verifier (POST /v1/verify) Operational (v0.12.11) POST /v1/verify (RFC 9457, OpenAPI 3.1, content negotiation: application/json, application/peac-report+json, text/plain; PEAC-Report-Id header).
Reference Issuer Health (GET /v1/issuer-health) Operational (v0.12.11) GET /v1/issuer-health?issuer=<url> (SSRF-safe, independent rate limit, cached).
Hosted Issue (POST /v1/issue) Alpha (v0.12.8) Disabled by default; BYO-key, provisional.

Adapters, Mappings, Rails, and Transports

This table covers the Layer 4 surfaces most commonly referenced from the reference verifier flows and the adapter test vectors. The full Layer 4 surface set is machine-readable in REPO_SURFACE_STATUS.json and rendered at docs/SURFACE_STATUS.md. Every Layer 4 surface supports Wire 0.2 exclusively.

The Adapter Readiness column classifies each surface using the rubric below. Classifications default to the weaker, more conservative claim under ambiguity. Each row carries an evidence tag ([e1]..[e5]) whose target is documented in the Evidence section.

Surface Coverage Since Status Adapter Readiness
@peac/adapter-core Mapper-boundary finality guard (assertExplicitFinality, MapperBoundaryError) v0.12.11 Shipped conformance-fixture-only [e1]
@peac/adapter-runtime-governance 6 observation-specific type URIs, first runtime-governance mapper, session summary; composition recipe: runtime governance composition v0.12.10 Shipped conformance-fixture-only [e2]
@peac/adapter-managed-agents 6 event families, session summary v0.12.9 Shipped conformance-fixture-only [e3]
@peac/adapter-x402 4-layer verification, dual-header, V2 support, settlement extractor v0.12.1 Shipped conformance-fixture-only [e4]
@peac/adapter-x402-daydreams Daydreams bridge for x402 v0.12.1 Shipped types-only [e5]
@peac/adapter-x402-fluora Fluora bridge for x402 v0.12.1 Shipped types-only [e5]
@peac/adapter-x402-pinata Pinata bridge for x402 v0.12.1 Shipped types-only [e5]
@peac/adapter-eat COSE_Sign1, Ed25519, privacy-first mapping v0.12.0 Shipped conformance-fixture-only [e1]
@peac/adapter-did did:key, did:web, DID Document resolver v0.12.6 Shipped conformance-fixture-only [e1]
@peac/adapter-openai-compatible OpenAI-compatible API surface observation v0.12.6 Shipped types-only [e5]
@peac/adapter-openclaw OpenClaw bridge v0.12.6 Shipped types-only [e5]
@peac/mappings-mcp MCP tool-call receipt attachment v0.11.x Shipped conformance-fixture-only [e1]
@peac/mappings-a2a A2A v1.0 normalizer v0.12.3 Shipped conformance-fixture-only [e1]
@peac/mappings-acp ACP delegated-payment observation mapper v0.12.11 Shipped conformance-fixture-only [e4]
@peac/mappings-paymentauth paymentauth / MPP payment-attempt and settlement mappers v0.12.11 Shipped conformance-fixture-only [e4]
@peac/mappings-ucp UCP / AP2 envelope mapping v0.12.4 Shipped conformance-fixture-only [e1]
@peac/mappings-content-signals Content signals observation mapping v0.11.2 Shipped conformance-fixture-only [e1]
@peac/mappings-aipref AI preferences mapping v0.12.4 Shipped types-only [e5]
@peac/mappings-rsl Really Simple Licensing mapping v0.12.0 Shipped types-only [e5]
@peac/mappings-tap Transaction Authorization Protocol mapping v0.12.0 Shipped types-only [e5]
@peac/mappings-intoto in-toto attestation bridge v0.12.6 Shipped conformance-fixture-only [e1]
@peac/mappings-slsa SLSA provenance bridge v0.12.6 Shipped conformance-fixture-only [e1]
@peac/rails-x402 x402 rail v0.12.1 Shipped conformance-fixture-only [e4]
@peac/rails-stripe Stripe rail (SPT observation) v0.12.4 Shipped conformance-fixture-only [e4]
@peac/rails-card Card-network rail v0.12.4 Shipped types-only [e5]
@peac/rails-razorpay Razorpay rail v0.12.4 Shipped types-only [e5]
@peac/transport-grpc gRPC carrier transport v0.12.6 Shipped types-only [e5]

Adapter Readiness rubric

One classification per Layer 4 surface. Under ambiguity between two defensible classifications, choose the one making the weaker claim about current readiness. Strength ordering from weakest to strongest: paused < experimental < types-only < conformance-fixture-only < live-upstream-tested.

Classification Binding definition Typical evidence
live-upstream-tested CI exercises the real upstream (or a faithful, dated fixture replay of a real upstream artifact) within the last release cycle. Upstream format changes surface as CI diffs. Recorded round-trip against live endpoint; fixture set stamped with upstream release.
conformance-fixture-only Pinned conformance fixtures only, no upstream coupling. Mapper behavior is tested; upstream conformance is asserted against frozen fixtures. specs/conformance/<mapper>/ vectors plus stable test; no network.
types-only TS and/or Go types compile against the upstream shape; no end-to-end runtime flow exercised in CI. Type-definition file committed; no runtime assertions beyond structural checks.
experimental Public but explicitly subject to change; @experimental JSDoc; breaking changes allowed with CHANGELOG note. JSDoc tag.
paused Intentionally not maintained in this release cycle; paused_reason and resumption_target recorded in the row. Row-level rationale documented in the matrix.

As of v0.14.4, no Layer 4 surface is live-upstream-tested: no CI step exercises a live upstream endpoint today. Promotion from conformance-fixture-only to live-upstream-tested requires committing a recorded round-trip fixture stamped with the upstream release and wiring it into CI.

Evidence

Each tag below points at the conformance vectors and test paths that justify the classification in the row above.

Profile Coverage

Profiles add normative semantic constraints on top of the wire envelope for a registered extension namespace. Each profile registers its extension namespace, type URI set, validator, and conformance section in the registries; this table summarizes profiles whose validator and parity corpus are shipped alongside the extension.

Namespace Profile version Scope Stability Spec Conformance fixtures
org.peacprotocol/provisioning-lifecycle 0.1 Observer Stable specs/PROVISIONING-LIFECYCLE-PROFILE.md specs/conformance/parity-corpus/provisioning-lifecycle/ (10 positive + 19 negative vectors; provisioning.invalid_utf8 and provisioning.structure_too_deep covered in schema unit tests) plus Section 31 requirement IDs.
org.peacprotocol/agent-action 0.1 Observer Stable specs/AGENT-ACTION-RECORDS.md specs/conformance/parity-corpus/agent-action/ (6 positive vectors covering all *-observed event kinds) plus Section 32 requirement IDs AGENT-ACT-001..010.
org.peacprotocol/commerce-mandate 0.1 Observer Stable specs/COMMERCE-MANDATE-RECORDS.md specs/conformance/parity-corpus/commerce-mandate/ (7 positive vectors covering all *-observed event kinds) plus Section 33 requirement IDs COMM-MAN-001..010.
org.peacprotocol/gateway-export 0.1 Observer Stable specs/GATEWAY-EXPORT-RECORDS.md specs/conformance/parity-corpus/gateway-export/ (8 positive vectors covering all *-observed event kinds: 7 settlement/recovery states plus 1 facilitator-timeout trigger observation) plus Section 34 requirement IDs GATE-EXP-001..010.

The Observer scope means PEAC records what an external system reports happened. Type URIs across these profiles all carry the *-observed suffix to make the observer scope explicit at the record-type layer. PEAC does not authorize actions, validate credentials, approve or deny decisions, process payments, settle transactions, route payments, contact gateways, verify on-chain state, monitor settlements, enforce recovery policy, or operate the upstream workflow.

Performance Targets

Informational and regression-oriented. Operator-facing service-level objectives are tracked in docs/SLO.md when published. Benchmark methodology: docs/BENCHMARK-METHODOLOGY.md when published.

Operation p95 Target (CI) p95 Target (Prod) Model
verifyLocal() 15 ms 10 ms Regression-based
issue() 10 ms 5 ms Regression-based

Deprecation Schedule

Surface Deprecated since Removal target Migration
@peac/core v0.10.0 v0.13.0 (archived) Use @peac/kernel plus @peac/schema plus @peac/crypto plus @peac/protocol.
@peac/sdk v0.12.7 v0.13.0 (archived) Use @peac/protocol directly.
@peac/disc v0.12.14 v0.13.0 (archived) Use @peac/policy-kit for peac.txt policy-document loading.
@peac/pref v0.12.14 v0.13.0 (archived) Use @peac/mappings-content-signals for AIPREF / robots.txt / tdmrep parsing.
API /verify endpoint v0.12.7 post-Sunset (2026-11-01) Use /v1/verify. Legacy /verify delegates in-process; carries RFC 9745 / RFC 8594 / RFC 8288.
apps/bridge v0.12.7 v0.13.0 Use @peac/protocol or /api/v1/verify.
Wire 0.1 default teaching v0.12.7 Immediate All defaults now Wire 0.2.