Skip to content

Changelog

First published: June 15, 2026. Current Revision: July 8, 2026. Status: proof of concept. Compatibility: pre-1.0; breaking changes may occur.

  • Proves the smallest useful loop: BookingMandate -> lookup -> policy readback -> user approval -> create -> verification if required -> status -> receipt.
  • Defines eight tools: service.describe, availability.find, policy.explain, verification.send, verification.verify, booking.create, booking.status, and handoff.request.
  • Create-only mutation surface: booking.create is the only tool that changes platform state. Slot holds, modification, cancellation, and reschedule are explicit non-goals for this version.
  • Enforces the BookingMandate server-side on every mutation: scope, window, price cap, currency match, and final-confirmation checks run before any platform create call.
  • Rides the Model Context Protocol for transport; binds the tool set to a local stdio MCP server.
  • Keeps payment authorization outside OSBP; when a booking requires payment, the server hands off.
  • Records a redacted local audit event for every tool call, with stable input and result hashes.
  • Ships a credential-free synthetic reference backend, a conformance kit, and an adapter starter.
  • The local stdio MCP server package, the Openings adapter/integration kit, and the adapter’s redacted live booking trace ship in the public repository.
  • Idempotency is local and ephemeral; a production deployment needs durable, platform-enforced idempotency.
  • Final confirmation is adapter-emulated through an approval token that still flows through the agent.
  • Mandates are unsigned JSON; production mandate signing is a roadmap requirement.
  • No slot holds, so booking a scarce slot is a first-come race.

See the v0.1.0 specification for the complete contract and the issues tracker for roadmap discussion.