Decision 001: First-client product scope
- Status: Proposed pending first-client stakeholder approval
- Date: 25 July 2026
- Decision owners: Booking SaaS product owner and first-client stakeholder
- Source: GitHub issue #10
Context
The demonstration implementation contains broad booking capabilities but leaves onboarding, public discovery, eligibility, cancellation, refunds, renewal, and staff permissions partly implicit. Continuing implementation without a baseline would harden accidental behavior into the API and database.
Decision
Adopt the journey map, decision tables, permission matrix, state transitions, first-release scope, and deferred backlog in First-client scope and journeys.
Drop-in, finite class passes, and monthly subscriptions are the supported first release products. Tenant selection is explicit, public reads are slug-scoped, payments and transitions are auditable, and implementation work must trace back to stable FIRST-CLIENT-JOURNEYS-* identifiers.
Consequences
- The baseline is enforced by API integration tests and browser journeys rather than silently redefining the decision around earlier demo behavior.
- Public catalogue, refund, audit, ownership-transfer, cancellation, and renewal-recovery APIs are implemented behind deterministic CI adapters.
- Critical journey scenarios are release gates through
require-critical-journey-coverage. - Stakeholder approval is required before changing this decision and the corresponding feature status from
draft.