Skip to content

Overview

ABP is a protocol to book the allocation of a scarce seat to a holder: a credentialed Channel takes a finite unit of a Bucket (the contested availability — a stand, a GA sector), plugs it to an owner (Allocation), under high contention and without accidental oversell (overbooking is deliberate and configurable), with an ephemeral reservation (hold/TTL) and a full lifecycle (confirm → pay → fulfill → use / refund).

The usage band is the family “finite seat/slot tied to an owner”: an event seat, a parking space, an access credential, a calendar slot. It is not general commerce nor “any resource” (that would smell of cloud/provisioning).

It is the shape of EPP (registrars provisioning domains in a central registry) applied to ephemeral, high-contention resources.

  • EPP (RFC 5730+) — prior art for concurrent provisioning. Same uniqueness: just as two registrars can’t register the same domain, two buyers can’t take the same seat.
  • EHUB / PlugHub (legacy) — the first-version implementation from the Ligatech park, glued to tickets. Its sp_ehub_booking_* façade already proved, in production, a neutral contract (Repository/Item/Group/Booking) over three different engines. ABP lifts that rehearsal into a named, implementation-independent protocol — but PlugHub is not the reference implementation.
  • The cdigital in-database FSM — the tickets_booking_transitions() matrix + audit + named side-effect handlers is the reference model for the FSM, lifted from a DB trigger into a service.
LayerWhat it isWhere
ABP (the protocol)the open consumption surface: vocabulary, commands, FSM, guarantees — open by default, no auth, no producer/tenant, no adminthis spec + the .proto
Reservations (reference implementation)the Eventheca product/module (Kotlin/gRPC), owner of the commercial statenanpos/eventheca-apis
Catalog (domain modules)Tickets / Accreditation / Parking — they materialize Units and Push them to Reservationsper-domain modules

ABP/Reservations is domain-agnostic. The seat may be a seat (Tickets), a credential (Accreditation) or a space (Parking) — to the protocol it is all Bucket. The meaning (rich schema, the names Seat/GA) lives in the Catalog; the allocation mechanics (FSM, contention, oversell control) live in Reservations.

The spec + the .proto are public under Apache-2.0 (with a patent grant: “you may implement”). Anyone can build a conformant server on any stack. The control does not come from locking the license — it comes from owning the reference implementation (Reservations, closed), the conformance suite (the stamp “is this ABP?”), and operating registries.