@substrat-run/engine-booking 0.7.21 → 0.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,204 @@
1
+ /**
2
+ * engine-booking's event contract (#696) — what a VERTICAL imports so that
3
+ * consuming this engine by event is checked rather than guessed.
4
+ *
5
+ * TYPES ONLY. The runtime contract is still the fat payload and **the
6
+ * consumer's own Zod parse** (kernel `EventContract`,
7
+ * `packages/kernel/src/scope-host.ts`); `emitBookingEvent` forwards to
8
+ * `ctx.emit` unchanged — one extra call in the stack, and no change in what is
9
+ * emitted.
10
+ *
11
+ * VERTICAL-FACING ONLY. A sibling engine consuming one of these must NOT import
12
+ * it — R1 (star topology) forbids the import, and the defensive parse is what
13
+ * lets an engine ride out #128's dual-emit window.
14
+ *
15
+ * **No completion group.** A group says two events report ONE fact by different
16
+ * routes, so handling a subset strands the entity; the engine-protocol case is
17
+ * the reference, where both events are built from one shared `base` and
18
+ * `complete` rides on whichever signature happens to arrive last. Nothing here
19
+ * has that shape. The four terminal transitions — `completed`, `cancelled`,
20
+ * `expired`, `no-show` — do share a consequence (the lifecycle's "the four
21
+ * terminal ones release capacity"), but they are four different facts about why,
22
+ * each built at its own site, and a consumer that wants only `completed` is not
23
+ * making the mistake #696 was filed for. Grouping them would force three no-op
24
+ * handlers on every reader to buy nothing.
25
+ *
26
+ * Additive, like every other engine surface: a new event type may appear, an
27
+ * existing payload field does not change shape without a `schemaVersion` bump.
28
+ */
29
+ import type { DomainEventInput, Money } from '@substrat-run/contracts';
30
+ import type { OperationContext } from '@substrat-run/kernel';
31
+ /** A resource, as it rides a reservation's fat payload — never the stored row. */
32
+ export interface BookingResourceRef {
33
+ id: string;
34
+ kind: string;
35
+ name: string;
36
+ }
37
+ /** Where a reservation sits, or sat: one resource over one interval. */
38
+ export interface BookingSlot {
39
+ resourceId: string;
40
+ startsAt: string;
41
+ endsAt: string;
42
+ }
43
+ /** A bookable resource was added to the scope. */
44
+ export interface BookingResourceCreatedPayload {
45
+ resourceId: string;
46
+ kind: string;
47
+ name: string;
48
+ capacity: number;
49
+ }
50
+ /** A deadline-bearing claim on capacity — the initial state of every reservation. */
51
+ export interface BookingHeldPayload {
52
+ reservationId: string;
53
+ resource: BookingResourceRef;
54
+ startsAt: string;
55
+ endsAt: string;
56
+ quantity: number;
57
+ expiresAt: string;
58
+ /** How many places are on offer; null for a private booking. */
59
+ fillTarget: number | null;
60
+ }
61
+ /** held → confirmed. Capacity is committed. */
62
+ export interface BookingConfirmedPayload {
63
+ reservationId: string;
64
+ resource: BookingResourceRef;
65
+ startsAt: string;
66
+ endsAt: string;
67
+ quantity: number;
68
+ participantCount: number;
69
+ }
70
+ /**
71
+ * A hold whose deadline passed was swept.
72
+ *
73
+ * Expiry is LAZY: a reservation reads as expired through `effectiveState`
74
+ * without any transition occurring, so this event announces the sweep, not the
75
+ * lapse. A consumer that never sees it has not necessarily missed an expiry.
76
+ */
77
+ export interface BookingExpiredPayload {
78
+ reservationId: string;
79
+ resourceId: string;
80
+ startsAt: string;
81
+ endsAt: string;
82
+ participantCount: number;
83
+ }
84
+ /** Someone joined an open reservation. Filling the last place auto-confirms it. */
85
+ export interface BookingParticipantJoinedPayload {
86
+ reservationId: string;
87
+ participantId: string;
88
+ /**
89
+ * The participant, as an opaque data-subject id — never a `PrincipalId`, and
90
+ * declared as the wire type rather than the brand it is minted as. It is what
91
+ * `subjectId` keys this event's erasure on.
92
+ */
93
+ partyRef: string;
94
+ share: Money | null;
95
+ /** How many are on it after this join. */
96
+ joined: number;
97
+ fillTarget: number | null;
98
+ }
99
+ /** Places were put on offer, or the offer was changed or closed (`fillTarget: null`). */
100
+ export interface BookingOpenedPayload {
101
+ reservationId: string;
102
+ resourceId: string;
103
+ startsAt: string;
104
+ endsAt: string;
105
+ fillTarget: number | null;
106
+ participantCount: number;
107
+ }
108
+ /** A soft leave — the row stays, so the record of who was in stays intact. */
109
+ export interface BookingParticipantLeftPayload {
110
+ reservationId: string;
111
+ participantId: string;
112
+ partyRef: string;
113
+ /** How many are still on it. */
114
+ remaining: number;
115
+ fillTarget: number | null;
116
+ }
117
+ /** Terminal: the reservation was called off before it ran. */
118
+ export interface BookingCancelledPayload {
119
+ reservationId: string;
120
+ resourceId: string;
121
+ startsAt: string;
122
+ endsAt: string;
123
+ reason: string | null;
124
+ participantCount: number;
125
+ }
126
+ /** Rescheduled to another slot and/or resource, keeping identity and participants. */
127
+ export interface BookingMovedPayload {
128
+ reservationId: string;
129
+ from: BookingSlot;
130
+ to: BookingSlot;
131
+ resource: BookingResourceRef;
132
+ participantCount: number;
133
+ }
134
+ /** confirmed → in_service. Starting is optional; a booking may complete without it. */
135
+ export interface BookingStartedPayload {
136
+ reservationId: string;
137
+ resourceId: string;
138
+ }
139
+ /**
140
+ * Terminal: the reservation ran.
141
+ *
142
+ * Deliberately fat — resource, interval and how many were on it — so an
143
+ * invoicing consumer can raise split charges and an out-of-kernel consumer can
144
+ * build cross-club history, neither needing a cross-module read.
145
+ */
146
+ export interface BookingCompletedPayload {
147
+ reservationId: string;
148
+ resource: BookingResourceRef;
149
+ startsAt: string;
150
+ endsAt: string;
151
+ quantity: number;
152
+ participantCount: number;
153
+ }
154
+ /** Terminal: nobody turned up. Distinct from a cancellation, and usually billable. */
155
+ export interface BookingNoShowPayload {
156
+ reservationId: string;
157
+ resourceId: string;
158
+ startsAt: string;
159
+ endsAt: string;
160
+ participantCount: number;
161
+ }
162
+ /**
163
+ * engine-booking's event contract — the twelve event types this engine emits and
164
+ * the payload each one carries.
165
+ *
166
+ * Satisfies the kernel's `EventContract`, so a vertical writes
167
+ * `consumersFor<[BookingEvents]>()({ … })` and gets typed payloads plus
168
+ * rejection of an event type this engine does not emit.
169
+ */
170
+ export type BookingEvents = {
171
+ events: {
172
+ 'booking.resource-created': BookingResourceCreatedPayload;
173
+ 'booking.held': BookingHeldPayload;
174
+ 'booking.confirmed': BookingConfirmedPayload;
175
+ 'booking.expired': BookingExpiredPayload;
176
+ 'booking.participant-joined': BookingParticipantJoinedPayload;
177
+ 'booking.opened': BookingOpenedPayload;
178
+ 'booking.participant-left': BookingParticipantLeftPayload;
179
+ 'booking.cancelled': BookingCancelledPayload;
180
+ 'booking.moved': BookingMovedPayload;
181
+ 'booking.started': BookingStartedPayload;
182
+ 'booking.completed': BookingCompletedPayload;
183
+ 'booking.no-show': BookingNoShowPayload;
184
+ };
185
+ };
186
+ /** Every event type this engine emits. */
187
+ export type BookingEventType = keyof BookingEvents['events'];
188
+ /**
189
+ * `ctx.emit`, with the event type and its payload welded together.
190
+ *
191
+ * This is what stops `BookingEvents` becoming a description nothing holds in
192
+ * agreement. `ctx.emit` takes `payload: unknown`, so a map declared beside the
193
+ * emit sites would be checked by nobody and could rot silently into a lie a
194
+ * vertical compiles against. Routing every emit through here makes the map the
195
+ * *source*: rename a payload field on one side and the other side fails to
196
+ * compile, and emitting a type the map does not declare fails too.
197
+ *
198
+ * Zero runtime behaviour of its own — it forwards to `ctx.emit` unchanged.
199
+ */
200
+ export declare function emitBookingEvent<K extends BookingEventType>(ctx: OperationContext, event: Omit<DomainEventInput, 'type' | 'payload'> & {
201
+ type: K;
202
+ payload: BookingEvents['events'][K];
203
+ }): void;
204
+ //# sourceMappingURL=events.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.d.ts","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"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"}
package/dist/events.js ADDED
@@ -0,0 +1,16 @@
1
+ /**
2
+ * `ctx.emit`, with the event type and its payload welded together.
3
+ *
4
+ * This is what stops `BookingEvents` becoming a description nothing holds in
5
+ * agreement. `ctx.emit` takes `payload: unknown`, so a map declared beside the
6
+ * emit sites would be checked by nobody and could rot silently into a lie a
7
+ * vertical compiles against. Routing every emit through here makes the map the
8
+ * *source*: rename a payload field on one side and the other side fails to
9
+ * compile, and emitting a type the map does not declare fails too.
10
+ *
11
+ * Zero runtime behaviour of its own — it forwards to `ctx.emit` unchanged.
12
+ */
13
+ export function emitBookingEvent(ctx, event) {
14
+ ctx.emit(event);
15
+ }
16
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"events.js","sourceRoot":"","sources":["../src/events.ts"],"names":[],"mappings":"AA4MA;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAC9B,GAAqB,EACrB,KAGC;IAED,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAClB,CAAC"}
package/dist/index.d.ts CHANGED
@@ -33,6 +33,13 @@ export type BookingConflictReason = (typeof BOOKING_CONFLICT_REASONS)[number];
33
33
  export { atInstant, availabilityInput, cancelReservationInput, createResourceInput, freeInterval, holdReservationCall, holdReservationInput, instantIn, joinReservationCall, joinReservationInput, leaveReservationInput, listReservationsInput, listResourcesInput, moveReservationCall, moveReservationInput, openReservationInput, participant, reservation, reservationAtInput, reservationIdIn, reservationState, resource, setResourceActiveInput, toInstant, type CreateResourceInput, type FreeInterval, type HoldReservationInput, type JoinReservationInput, type MoveReservationInput, type Participant, type Reservation, type ReservationState, type Resource, type SetResourceActiveInput, } from './schemas.js';
34
34
  export { bookingOperations, BOOKING_PERMISSIONS } from './operations.js';
35
35
  export { bookingLifecycles } from './lifecycle.js';
36
+ /**
37
+ * The event contract (#696) — what a VERTICAL imports so that consuming this
38
+ * engine by event is checked rather than guessed. `events.ts` says what these
39
+ * are and what they are not: types only, vertical-facing only, and why there is
40
+ * no completion group here.
41
+ */
42
+ export { type BookingEvents, type BookingEventType, type BookingResourceRef, type BookingSlot, type BookingResourceCreatedPayload, type BookingHeldPayload, type BookingConfirmedPayload, type BookingExpiredPayload, type BookingParticipantJoinedPayload, type BookingOpenedPayload, type BookingParticipantLeftPayload, type BookingCancelledPayload, type BookingMovedPayload, type BookingStartedPayload, type BookingCompletedPayload, type BookingNoShowPayload, } from './events.js';
36
43
  import { type CreateResourceInput, type FreeInterval, type HoldReservationInput, type JoinReservationInput, type MoveReservationInput, type Participant, type Reservation, type ReservationState, type Resource } from './schemas.js';
37
44
  export { bookingEntities, reservationRow, resourceRow } from './entities.js';
38
45
  import { type ModuleRegistration, type OperationContext, type PageParams } from '@substrat-run/kernel';
@@ -73,6 +80,10 @@ export declare const bookingManifest: {
73
80
  readPermission: string & z.$brand<"PermissionKey">;
74
81
  writePermission?: (string & z.$brand<"PermissionKey">) | undefined;
75
82
  }[];
83
+ liveTargets?: {
84
+ entityType: string;
85
+ readPermission: string & z.$brand<"PermissionKey">;
86
+ }[] | undefined;
76
87
  entityRelations?: {
77
88
  entityType: string;
78
89
  parentType: string;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -53,6 +53,14 @@ export { bookingOperations, BOOKING_PERMISSIONS } from './operations.js';
53
53
  import { bookingOperations } from './operations.js';
54
54
  export { bookingLifecycles } from './lifecycle.js';
55
55
  import { bookingLifecycles } from './lifecycle.js';
56
+ /**
57
+ * The event contract (#696) — what a VERTICAL imports so that consuming this
58
+ * engine by event is checked rather than guessed. `events.ts` says what these
59
+ * are and what they are not: types only, vertical-facing only, and why there is
60
+ * no completion group here.
61
+ */
62
+ export {} from './events.js';
63
+ import { emitBookingEvent } from './events.js';
56
64
  import { createResourceInput, freeInterval as freeIntervalShape, holdReservationCall, joinReservationCall, moveReservationCall, participant as participantShape, reservation as reservationShape, resource as resourceShape, toInstant, } from './schemas.js';
57
65
  export { bookingEntities, reservationRow, resourceRow } from './entities.js';
58
66
  import { reservationRow, resourceRow } from './entities.js';
@@ -381,7 +389,7 @@ export function createResource(ctx, rawInput) {
381
389
  const createdAt = ctx.now();
382
390
  ctx.sql.exec(`INSERT INTO booking_resources (id, kind, name, capacity, active, created_at)
383
391
  VALUES (?, ?, ?, ?, 1, ?)`, [id, input.kind, input.name, input.capacity ?? 1, createdAt]);
384
- ctx.emit({
392
+ emitBookingEvent(ctx, {
385
393
  type: 'booking.resource-created',
386
394
  schemaVersion: 1,
387
395
  entity: resourceRef(id),
@@ -461,7 +469,7 @@ export function holdReservation(ctx, rawInput) {
461
469
  now,
462
470
  ]);
463
471
  ctx.link(reservationRef(id), resourceRef(resource.id));
464
- ctx.emit({
472
+ emitBookingEvent(ctx, {
465
473
  type: 'booking.held',
466
474
  schemaVersion: 1,
467
475
  entity: reservationRef(id),
@@ -495,7 +503,7 @@ export function confirmReservation(ctx, input) {
495
503
  throw new SlotUnavailable(row.resource_id, row.starts_at, row.ends_at);
496
504
  }
497
505
  ctx.sql.exec(`UPDATE booking_reservations SET state = 'confirmed', expires_at = NULL WHERE id = ?`, [row.id]);
498
- ctx.emit({
506
+ emitBookingEvent(ctx, {
499
507
  type: 'booking.confirmed',
500
508
  schemaVersion: 1,
501
509
  entity: reservationRef(row.id),
@@ -524,7 +532,7 @@ export function expireReservation(ctx, input) {
524
532
  throw conflict('not_yet_expired', `reservation ${row.id} has not expired yet`);
525
533
  }
526
534
  ctx.sql.exec(`UPDATE booking_reservations SET state = 'expired' WHERE id = ?`, [row.id]);
527
- ctx.emit({
535
+ emitBookingEvent(ctx, {
528
536
  type: 'booking.expired',
529
537
  schemaVersion: 1,
530
538
  entity: reservationRef(row.id),
@@ -559,7 +567,7 @@ export function joinReservation(ctx, rawInput) {
559
567
  ctx.sql.exec(`INSERT INTO booking_participants
560
568
  (id, reservation_id, party_ref, share_amount, share_currency, joined_at)
561
569
  VALUES (?, ?, ?, ?, ?, ?)`, [id, row.id, input.partyRef, input.share?.amount ?? null, input.share?.currency ?? null, now]);
562
- ctx.emit({
570
+ emitBookingEvent(ctx, {
563
571
  type: 'booking.participant-joined',
564
572
  schemaVersion: 1,
565
573
  entity: reservationRef(row.id),
@@ -608,7 +616,7 @@ export function openReservation(ctx, input) {
608
616
  input.fillTarget,
609
617
  row.id,
610
618
  ]);
611
- ctx.emit({
619
+ emitBookingEvent(ctx, {
612
620
  type: 'booking.opened',
613
621
  schemaVersion: 1,
614
622
  entity: reservationRef(row.id),
@@ -633,7 +641,7 @@ export function leaveReservation(ctx, input) {
633
641
  if (participant.left_at)
634
642
  throw conflict('already_left', `participant already left: ${input.participantId}`);
635
643
  ctx.sql.exec('UPDATE booking_participants SET left_at = ? WHERE id = ?', [now, participant.id]);
636
- ctx.emit({
644
+ emitBookingEvent(ctx, {
637
645
  type: 'booking.participant-left',
638
646
  schemaVersion: 1,
639
647
  entity: reservationRef(row.id),
@@ -653,7 +661,7 @@ export function cancelReservation(ctx, input) {
653
661
  const row = getRow(ctx, input.reservationId);
654
662
  requireTransition(row, 'booking/cancel');
655
663
  ctx.sql.exec(`UPDATE booking_reservations SET state = 'cancelled' WHERE id = ?`, [row.id]);
656
- ctx.emit({
664
+ emitBookingEvent(ctx, {
657
665
  type: 'booking.cancelled',
658
666
  schemaVersion: 1,
659
667
  entity: reservationRef(row.id),
@@ -714,7 +722,7 @@ export function moveReservation(ctx, rawInput) {
714
722
  }
715
723
  const from = { resourceId: row.resource_id, startsAt: row.starts_at, endsAt: row.ends_at };
716
724
  ctx.sql.exec('UPDATE booking_reservations SET resource_id = ?, starts_at = ?, ends_at = ? WHERE id = ?', [target.id, startsAt, endsAt, row.id]);
717
- ctx.emit({
725
+ emitBookingEvent(ctx, {
718
726
  type: 'booking.moved',
719
727
  schemaVersion: 1,
720
728
  entity: reservationRef(row.id),
@@ -733,7 +741,7 @@ export function startReservation(ctx, input) {
733
741
  const row = getRow(ctx, input.reservationId);
734
742
  requireTransition(row, 'booking/start');
735
743
  ctx.sql.exec(`UPDATE booking_reservations SET state = 'in_service' WHERE id = ?`, [row.id]);
736
- ctx.emit({
744
+ emitBookingEvent(ctx, {
737
745
  type: 'booking.started',
738
746
  schemaVersion: 1,
739
747
  entity: reservationRef(row.id),
@@ -753,7 +761,7 @@ export function completeReservation(ctx, input) {
753
761
  requireTransition(row, 'booking/complete');
754
762
  const resource = getResourceRow(ctx, row.resource_id);
755
763
  ctx.sql.exec(`UPDATE booking_reservations SET state = 'completed' WHERE id = ?`, [row.id]);
756
- ctx.emit({
764
+ emitBookingEvent(ctx, {
757
765
  type: 'booking.completed',
758
766
  schemaVersion: 1,
759
767
  entity: reservationRef(row.id),
@@ -773,7 +781,7 @@ export function markNoShow(ctx, input) {
773
781
  const row = getRow(ctx, input.reservationId);
774
782
  requireTransition(row, 'booking/no-show');
775
783
  ctx.sql.exec(`UPDATE booking_reservations SET state = 'no_show' WHERE id = ?`, [row.id]);
776
- ctx.emit({
784
+ emitBookingEvent(ctx, {
777
785
  type: 'booking.no-show',
778
786
  schemaVersion: 1,
779
787
  entity: reservationRef(row.id),
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@substrat-run/engine-booking",
3
- "version": "0.7.21",
3
+ "version": "0.8.1",
4
4
  "description": "Substrat engine: reservations — resource + interval + capacity, one allocation invariant, no locks",
5
5
  "license": "AGPL-3.0-only",
6
6
  "repository": {
@@ -25,16 +25,16 @@
25
25
  "access": "public"
26
26
  },
27
27
  "dependencies": {
28
- "@substrat-run/contracts": "^0.114.0",
29
- "@substrat-run/kernel": "^0.114.0"
28
+ "@substrat-run/contracts": "^0.117.0",
29
+ "@substrat-run/kernel": "^0.117.0"
30
30
  },
31
31
  "devDependencies": {
32
32
  "typescript": "^7.0.0",
33
33
  "vitest": "^3.2.7",
34
34
  "zod": "^4.4.3",
35
- "@substrat-run/contract-tests": "^0.114.0",
36
- "@substrat-run/engine-test-kit": "^0.3.41",
37
- "@substrat-run/model-emit": "0.9.6"
35
+ "@substrat-run/contract-tests": "^0.117.0",
36
+ "@substrat-run/model-emit": "0.9.9",
37
+ "@substrat-run/engine-test-kit": "^0.3.44"
38
38
  },
39
39
  "peerDependencies": {
40
40
  "zod": "^4.4.0"