Skip to content

PACT v2.0.3 — Fabric Onboarding & Session Awareness

Latest

Choose a tag to compare

@Tailor-AUS Tailor-AUS released this 15 May 08:14
· 43 commits to main since this release

Third patch on v2.0 — introduces Fabric Onboarding & Session Awareness. Additive only; no breaking changes to v2.0 / v2.0.1 / v2.0.2 clients.

Closes the "cognitive layer" gap between being registered in a fabric and an agent knowing it is in a fabric, with these obligations, with these counterparties.

Highlights

  • §4.4 NEW — Active Session Manifest Operations: _status, manifest, _heartbeat, mark-read, _onboard
  • §4.4.5 atomic _onboard — bundles join+constrain; either admitted with constraints recorded or rejected with no membership created (no half-joined window)
  • §6.5 NEW — Pending Obligations as a first-class concept (vote / respond / sign / ack), with creation + discharge events
  • §15.6 NEW — Fabric Onboarding Pattern with sequence diagram and half-joined-window analysis
  • §17.13 update — Manifest visibility section pins cross-org disclosure rules; manifest is not a privacy bypass
  • §4.1 expanded — bidirectional heartbeat feeds the manifest last_seen per member
  • 9 new schemas under spec/v2.0/schemas/ (JSON Schema 2020-12)
  • 5 new conformance vectors under spec/v2.0/conformance/extended/sessions/, runner extended with kind: session for multi-step vectors + negative_membership / negative_obligation assertions
  • @pact-protocol/cli@2.0.3pact onboard / status / where / manifest / transcript + ~/.pact/ local state with atomic O_EXCL lockfile
  • @pact-protocol/mcp@2.0.3 — seven new tools incl. pact_session_announce (cognitive-layer hook returning "you are in N fabrics with M obligations" for the calling LLM's working context)

Path conventions

All v2.0.3 operations live under /api/pact/{fabricId}/... (consistent with v2.0.2 routes). {fabricId} is a synonym for {documentId}; servers MUST accept both forms in the URL.

Capability flags

Servers SHOULD set the following in /.well-known/pact.json capabilities:

  • atomicOnboard: true when _onboard is implemented
  • manifest: true when GET /manifest is implemented
  • sessionAwareness: true when the full §4.4 operation set is implemented

Mirror

Spec mirrored to tailor-app via TailorAU/tailor-app#1701 (squash-merged 2026-05-15).

Conformance status

7 pass · 0 fail · 6 skip (5 new server-bound vectors require --server). Baseline preserved.

Full changelog

See CHANGELOG.md.