@substrat-run/engine-booking 0.4.3 → 0.5.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.
- package/dist/index.d.ts +100 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +173 -62
- package/dist/index.js.map +1 -1
- package/dist/model.d.ts +9 -0
- package/dist/model.d.ts.map +1 -0
- package/dist/model.js +12 -0
- package/dist/model.js.map +1 -0
- package/package.json +5 -5
package/dist/index.d.ts
CHANGED
|
@@ -9,7 +9,7 @@ import { type Money } from '@substrat-run/contracts';
|
|
|
9
9
|
* Additive only, like every other engine surface: new reasons may appear, existing ones
|
|
10
10
|
* do not change spelling.
|
|
11
11
|
*/
|
|
12
|
-
export declare const BOOKING_CONFLICT_REASONS: readonly ['already_joined', 'already_left', 'capacity_below_joined', 'hold_expired',
|
|
12
|
+
export declare const BOOKING_CONFLICT_REASONS: readonly ['already_joined', 'already_left', 'capacity_below_joined', 'hold_expired', "invalid_transition", 'not_yet_expired', 'reservation_full', 'resource_inactive'];
|
|
13
13
|
export type BookingConflictReason = (typeof BOOKING_CONFLICT_REASONS)[number];
|
|
14
14
|
export { bookingEntities, reservationRow, resourceRow } from './entities.js';
|
|
15
15
|
import { type ModuleRegistration, type OperationContext } from '@substrat-run/kernel';
|
|
@@ -91,6 +91,13 @@ export declare const bookingManifest: {
|
|
|
91
91
|
idColumn?: string | undefined;
|
|
92
92
|
tokenizer?: "prefix" | "substring" | undefined;
|
|
93
93
|
}[] | undefined;
|
|
94
|
+
lists?: {
|
|
95
|
+
entityType: string;
|
|
96
|
+
sortable: string[];
|
|
97
|
+
filterable?: string[] | undefined;
|
|
98
|
+
table?: string | undefined;
|
|
99
|
+
idColumn?: string | undefined;
|
|
100
|
+
}[] | undefined;
|
|
94
101
|
ui?: {
|
|
95
102
|
routes?: {
|
|
96
103
|
path: string;
|
|
@@ -131,6 +138,15 @@ export declare class SlotUnavailable extends Error {
|
|
|
131
138
|
readonly code = "SLOT_UNAVAILABLE";
|
|
132
139
|
constructor(resourceId: string, startsAt: string, endsAt: string);
|
|
133
140
|
}
|
|
141
|
+
/**
|
|
142
|
+
* The reservation's states — **taken from the entity registry, not restated**.
|
|
143
|
+
*
|
|
144
|
+
* These seven values used to be written out twice: here, and as the `state`
|
|
145
|
+
* column's `z.enum` in `entities.ts`. Two descriptions of one fact, agreeing
|
|
146
|
+
* only by everyone remembering to change both (#844). Reading the column's own
|
|
147
|
+
* schema makes storage and domain unable to disagree, the same way
|
|
148
|
+
* `engine-workorder` takes its published `status` from the registry.
|
|
149
|
+
*/
|
|
134
150
|
export declare const reservationState: z.ZodEnum<{
|
|
135
151
|
cancelled: "cancelled";
|
|
136
152
|
completed: "completed";
|
|
@@ -347,4 +363,87 @@ export declare function availability(ctx: OperationContext, input: {
|
|
|
347
363
|
now?: string;
|
|
348
364
|
}): FreeInterval[];
|
|
349
365
|
export declare const bookingModule: ModuleRegistration;
|
|
366
|
+
/**
|
|
367
|
+
* The reservation's state machine, declared (#844).
|
|
368
|
+
*
|
|
369
|
+
* ## `on` versus `allow` — the distinction this engine forced
|
|
370
|
+
*
|
|
371
|
+
* Three of the nine guards gate operations that move NOTHING. `booking/move`
|
|
372
|
+
* changes a reservation's times, `booking/open` its fill target, `booking/join`
|
|
373
|
+
* adds a participant — each legal only in `held` or `confirmed`, and none of
|
|
374
|
+
* them a transition. Declaring them as edges would have put three self-loops on
|
|
375
|
+
* the diagram that no code performs.
|
|
376
|
+
*
|
|
377
|
+
* ## Why `booking/join` is `allow` even though joining can confirm
|
|
378
|
+
*
|
|
379
|
+
* A join that fills the last place calls `confirmReservation` — so a join CAN
|
|
380
|
+
* end with a confirmed reservation. It is still not an edge. The move is
|
|
381
|
+
* `booking/confirm`'s, performed by the in-scope function join composes, and it
|
|
382
|
+
* goes through this same check on the way. Declaring `join: 'confirmed'` would
|
|
383
|
+
* claim every join confirms, which is false for all but the last one.
|
|
384
|
+
*
|
|
385
|
+
* That is the composition rule holding: an engine composed BY CALL gets its
|
|
386
|
+
* invariant from the callee, so the machine describes what each verb does
|
|
387
|
+
* itself, not what its callees might do next.
|
|
388
|
+
*
|
|
389
|
+
* ## Lazy expiry is not an edge either
|
|
390
|
+
*
|
|
391
|
+
* `held → expired` IS declared — `booking/expire` performs it. What is not
|
|
392
|
+
* declared is the lapse: a hold past its deadline reads as `expired` through
|
|
393
|
+
* `effectiveStateOf` without any transition occurring, which is a projection for
|
|
394
|
+
* display and allocation. The condition on the edge (`not_yet_expired`) stays in
|
|
395
|
+
* the handler, where a lifecycle deliberately cannot reach.
|
|
396
|
+
*
|
|
397
|
+
* ## No `extensible` states
|
|
398
|
+
*
|
|
399
|
+
* Every state here carries an allocation or capacity consequence, and the four
|
|
400
|
+
* terminal ones release capacity. Refining any of them is not a vertical's to do
|
|
401
|
+
* yet, and the absence says so rather than leaving it to be inferred.
|
|
402
|
+
*/
|
|
403
|
+
export declare const bookingLifecycles: {
|
|
404
|
+
readonly reservation: {
|
|
405
|
+
readonly field: "state";
|
|
406
|
+
readonly initial: "held";
|
|
407
|
+
readonly states: {
|
|
408
|
+
/** A deadline-bearing claim on capacity. */
|
|
409
|
+
readonly held: {
|
|
410
|
+
readonly on: {
|
|
411
|
+
readonly 'booking/confirm': "confirmed";
|
|
412
|
+
readonly 'booking/expire': "expired";
|
|
413
|
+
readonly 'booking/cancel': "cancelled";
|
|
414
|
+
};
|
|
415
|
+
readonly allow: readonly ["booking/join", "booking/open", "booking/move"];
|
|
416
|
+
};
|
|
417
|
+
/** Capacity is committed. `complete` may skip `in_service` — starting is optional. */
|
|
418
|
+
readonly confirmed: {
|
|
419
|
+
readonly on: {
|
|
420
|
+
readonly 'booking/start': "in_service";
|
|
421
|
+
readonly 'booking/complete': "completed";
|
|
422
|
+
readonly 'booking/no-show': "no_show";
|
|
423
|
+
readonly 'booking/cancel': "cancelled";
|
|
424
|
+
};
|
|
425
|
+
readonly allow: readonly ["booking/join", "booking/open", "booking/move"];
|
|
426
|
+
};
|
|
427
|
+
/** Under way. No longer cancellable, and no longer re-timeable. */
|
|
428
|
+
readonly in_service: {
|
|
429
|
+
readonly on: {
|
|
430
|
+
readonly 'booking/complete': "completed";
|
|
431
|
+
readonly 'booking/no-show': "no_show";
|
|
432
|
+
};
|
|
433
|
+
};
|
|
434
|
+
readonly expired: {
|
|
435
|
+
readonly terminal: true;
|
|
436
|
+
};
|
|
437
|
+
readonly cancelled: {
|
|
438
|
+
readonly terminal: true;
|
|
439
|
+
};
|
|
440
|
+
readonly completed: {
|
|
441
|
+
readonly terminal: true;
|
|
442
|
+
};
|
|
443
|
+
readonly no_show: {
|
|
444
|
+
readonly terminal: true;
|
|
445
|
+
};
|
|
446
|
+
};
|
|
447
|
+
};
|
|
448
|
+
};
|
|
350
449
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from 'zod';
|
|
2
|
-
import { dataSubjectId, moduleManifest, money, permissionKey, substratError, } from '@substrat-run/contracts';
|
|
2
|
+
import { assertTransition, dataSubjectId, defineLifecycles, INVALID_TRANSITION, moduleManifest, money, permissionKey, substratError, } from '@substrat-run/contracts';
|
|
3
3
|
/**
|
|
4
4
|
* The conflict reasons this engine raises — its own vocabulary, narrowing the platform's
|
|
5
5
|
* `conflict` code (#113). Exported so a vertical can branch on WHY a refusal happened
|
|
@@ -14,7 +14,9 @@ export const BOOKING_CONFLICT_REASONS = [
|
|
|
14
14
|
'already_left',
|
|
15
15
|
'capacity_below_joined',
|
|
16
16
|
'hold_expired',
|
|
17
|
-
|
|
17
|
+
// Raised by `assertTransition` from the declared lifecycle (#844), not by this
|
|
18
|
+
// file — so it is the shared constant rather than a second spelling of it.
|
|
19
|
+
INVALID_TRANSITION,
|
|
18
20
|
'not_yet_expired',
|
|
19
21
|
'reservation_full',
|
|
20
22
|
'resource_inactive',
|
|
@@ -24,6 +26,7 @@ const conflict = (reason, message) => substratError('conflict', message, { reaso
|
|
|
24
26
|
// The entity registry is PUBLIC: a vertical composing this engine needs the
|
|
25
27
|
// entity-type constants its relation edges name, and the row schema to declare
|
|
26
28
|
// an operation's output against without retyping this engine's shape.
|
|
29
|
+
import { bookingEntities } from './entities.js';
|
|
27
30
|
export { bookingEntities, reservationRow, resourceRow } from './entities.js';
|
|
28
31
|
import { assertAllowed, ulid, } from '@substrat-run/kernel';
|
|
29
32
|
// ============================================================================
|
|
@@ -156,8 +159,12 @@ const instantIn = z
|
|
|
156
159
|
.string()
|
|
157
160
|
.refine((s) => !Number.isNaN(Date.parse(s)), { message: 'invalid instant' })
|
|
158
161
|
.transform(toInstant);
|
|
159
|
-
/**
|
|
160
|
-
|
|
162
|
+
/**
|
|
163
|
+
* `now` is injectable so hold expiry is testable and replayable; absent, it is the
|
|
164
|
+
* operation's instant (#812) rather than a fresh wall-clock reading, so every
|
|
165
|
+
* expiry decision inside one operation is judged against the same moment.
|
|
166
|
+
*/
|
|
167
|
+
const nowOr = (ctx, now) => (now ? toInstant(now) : ctx.now());
|
|
161
168
|
// ---------------------------------------------------------------------------
|
|
162
169
|
// Errors
|
|
163
170
|
// ---------------------------------------------------------------------------
|
|
@@ -178,15 +185,16 @@ export class SlotUnavailable extends Error {
|
|
|
178
185
|
// ---------------------------------------------------------------------------
|
|
179
186
|
// Schemas & shapes
|
|
180
187
|
// ---------------------------------------------------------------------------
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
188
|
+
/**
|
|
189
|
+
* The reservation's states — **taken from the entity registry, not restated**.
|
|
190
|
+
*
|
|
191
|
+
* These seven values used to be written out twice: here, and as the `state`
|
|
192
|
+
* column's `z.enum` in `entities.ts`. Two descriptions of one fact, agreeing
|
|
193
|
+
* only by everyone remembering to change both (#844). Reading the column's own
|
|
194
|
+
* schema makes storage and domain unable to disagree, the same way
|
|
195
|
+
* `engine-workorder` takes its published `status` from the registry.
|
|
196
|
+
*/
|
|
197
|
+
export const reservationState = bookingEntities.reservation.fields.shape.state;
|
|
190
198
|
/** States that consume capacity. `held` additionally requires an unexpired `expires_at`. */
|
|
191
199
|
const LIVE_STATES = ['held', 'confirmed', 'in_service'];
|
|
192
200
|
export const createResourceInput = z.object({
|
|
@@ -288,10 +296,26 @@ function getRow(ctx, id) {
|
|
|
288
296
|
throw substratError('not_found', `reservation not found: ${id}`);
|
|
289
297
|
return row;
|
|
290
298
|
}
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
299
|
+
/**
|
|
300
|
+
* The declared machine, applied (#844).
|
|
301
|
+
*
|
|
302
|
+
* The seven states used to be written out twice — once as the `state` enum in
|
|
303
|
+
* `entities.ts`, once as `reservationState` above (now derived from it) — and
|
|
304
|
+
* the EDGES between them a third time, as the states each of these nine call
|
|
305
|
+
* sites happened to pass. The
|
|
306
|
+
* machine now lives in `bookingLifecycles` (bottom of this file), where the
|
|
307
|
+
* compiler holds it to that enum.
|
|
308
|
+
*
|
|
309
|
+
* **Gated on the STORED state, not the effective one, and that is deliberate.**
|
|
310
|
+
* Lazy expiry means a `held` row past its deadline reads as `expired`
|
|
311
|
+
* (`effectiveStateOf`) — but that is a projection for display and allocation,
|
|
312
|
+
* not a transition that happened. `confirmReservation` still refuses a lapsed
|
|
313
|
+
* hold; it does so with its own `hold_expired` reason, which tells a caller
|
|
314
|
+
* something `invalid_transition` never could. Feeding the effective state in
|
|
315
|
+
* here would collapse those two refusals into one worse message.
|
|
316
|
+
*/
|
|
317
|
+
function requireTransition(row, operation) {
|
|
318
|
+
assertTransition(bookingLifecycles.reservation, `reservation ${row.id}`, row.state, operation);
|
|
295
319
|
}
|
|
296
320
|
/** Participants who have not left — the count the fill target is measured against. */
|
|
297
321
|
function activeParticipants(ctx, reservationId) {
|
|
@@ -335,7 +359,7 @@ function allocatedOver(ctx, resourceId, startsAt, endsAt, now, excludeReservatio
|
|
|
335
359
|
export function createResource(ctx, rawInput) {
|
|
336
360
|
const input = createResourceInput.parse(rawInput);
|
|
337
361
|
const id = ulid();
|
|
338
|
-
const createdAt =
|
|
362
|
+
const createdAt = ctx.now();
|
|
339
363
|
ctx.sql.exec(`INSERT INTO booking_resources (id, kind, name, capacity, active, created_at)
|
|
340
364
|
VALUES (?, ?, ?, ?, 1, ?)`, [id, input.kind, input.name, input.capacity ?? 1, createdAt]);
|
|
341
365
|
ctx.emit({
|
|
@@ -370,7 +394,7 @@ export function listResources(ctx, kind) {
|
|
|
370
394
|
*/
|
|
371
395
|
export function holdReservation(ctx, rawInput) {
|
|
372
396
|
const input = holdReservationInput.parse(rawInput);
|
|
373
|
-
const now = nowOr(input.now);
|
|
397
|
+
const now = nowOr(ctx, input.now);
|
|
374
398
|
if (input.startsAt >= input.endsAt) {
|
|
375
399
|
throw substratError('validation_failed', `invalid interval: ${input.startsAt} is not before ${input.endsAt}`);
|
|
376
400
|
}
|
|
@@ -425,8 +449,8 @@ export function holdReservation(ctx, rawInput) {
|
|
|
425
449
|
*/
|
|
426
450
|
export function confirmReservation(ctx, input) {
|
|
427
451
|
const row = getRow(ctx, input.reservationId);
|
|
428
|
-
|
|
429
|
-
const now = nowOr(input.now);
|
|
452
|
+
requireTransition(row, 'booking/confirm');
|
|
453
|
+
const now = nowOr(ctx, input.now);
|
|
430
454
|
if (row.expires_at && row.expires_at <= now) {
|
|
431
455
|
throw conflict('hold_expired', `hold expired at ${row.expires_at}`);
|
|
432
456
|
}
|
|
@@ -450,7 +474,7 @@ export function confirmReservation(ctx, input) {
|
|
|
450
474
|
participantCount: activeParticipants(ctx, row.id).length,
|
|
451
475
|
},
|
|
452
476
|
});
|
|
453
|
-
return toReservation(getRow(ctx, row.id), nowOr(input.now));
|
|
477
|
+
return toReservation(getRow(ctx, row.id), nowOr(ctx, input.now));
|
|
454
478
|
}
|
|
455
479
|
/**
|
|
456
480
|
* Expire a hold whose deadline has passed. Idempotent-ish: only `held` rows move.
|
|
@@ -459,8 +483,8 @@ export function confirmReservation(ctx, input) {
|
|
|
459
483
|
*/
|
|
460
484
|
export function expireReservation(ctx, input) {
|
|
461
485
|
const row = getRow(ctx, input.reservationId);
|
|
462
|
-
|
|
463
|
-
const now = nowOr(input.now);
|
|
486
|
+
requireTransition(row, 'booking/expire');
|
|
487
|
+
const now = nowOr(ctx, input.now);
|
|
464
488
|
if (!row.expires_at || row.expires_at > now) {
|
|
465
489
|
throw conflict('not_yet_expired', `reservation ${row.id} has not expired yet`);
|
|
466
490
|
}
|
|
@@ -487,8 +511,8 @@ export function expireReservation(ctx, input) {
|
|
|
487
511
|
export function joinReservation(ctx, rawInput) {
|
|
488
512
|
const input = joinReservationInput.parse(rawInput);
|
|
489
513
|
const row = getRow(ctx, input.reservationId);
|
|
490
|
-
|
|
491
|
-
const now = nowOr(input.now);
|
|
514
|
+
requireTransition(row, 'booking/join');
|
|
515
|
+
const now = nowOr(ctx, input.now);
|
|
492
516
|
const active = activeParticipants(ctx, row.id);
|
|
493
517
|
if (active.some((p) => p.party_ref === input.partyRef)) {
|
|
494
518
|
throw conflict('already_joined', `party ${input.partyRef} has already joined ${row.id}`);
|
|
@@ -538,7 +562,7 @@ export function joinReservation(ctx, rawInput) {
|
|
|
538
562
|
*/
|
|
539
563
|
export function openReservation(ctx, input) {
|
|
540
564
|
const row = getRow(ctx, input.reservationId);
|
|
541
|
-
|
|
565
|
+
requireTransition(row, 'booking/open');
|
|
542
566
|
const joined = activeParticipants(ctx, row.id).length;
|
|
543
567
|
if (input.fillTarget !== null && input.fillTarget < joined) {
|
|
544
568
|
throw conflict('capacity_below_joined', `cannot open ${input.fillTarget} places: ${joined} are already on this reservation`);
|
|
@@ -561,11 +585,11 @@ export function openReservation(ctx, input) {
|
|
|
561
585
|
participantCount: joined,
|
|
562
586
|
},
|
|
563
587
|
});
|
|
564
|
-
return toReservation(getRow(ctx, row.id), nowOr(input.now));
|
|
588
|
+
return toReservation(getRow(ctx, row.id), nowOr(ctx, input.now));
|
|
565
589
|
}
|
|
566
590
|
export function leaveReservation(ctx, input) {
|
|
567
591
|
const row = getRow(ctx, input.reservationId);
|
|
568
|
-
const now = nowOr(input.now);
|
|
592
|
+
const now = nowOr(ctx, input.now);
|
|
569
593
|
const participant = ctx.sql.query('SELECT * FROM booking_participants WHERE id = ? AND reservation_id = ?', [input.participantId, row.id])[0];
|
|
570
594
|
if (!participant)
|
|
571
595
|
throw substratError('not_found', `participant not found: ${input.participantId}`);
|
|
@@ -590,7 +614,7 @@ export function leaveReservation(ctx, input) {
|
|
|
590
614
|
}
|
|
591
615
|
export function cancelReservation(ctx, input) {
|
|
592
616
|
const row = getRow(ctx, input.reservationId);
|
|
593
|
-
|
|
617
|
+
requireTransition(row, 'booking/cancel');
|
|
594
618
|
ctx.sql.exec(`UPDATE booking_reservations SET state = 'cancelled' WHERE id = ?`, [row.id]);
|
|
595
619
|
ctx.emit({
|
|
596
620
|
type: 'booking.cancelled',
|
|
@@ -606,7 +630,7 @@ export function cancelReservation(ctx, input) {
|
|
|
606
630
|
participantCount: activeParticipants(ctx, row.id).length,
|
|
607
631
|
},
|
|
608
632
|
});
|
|
609
|
-
return toReservation(getRow(ctx, row.id), nowOr(input.now));
|
|
633
|
+
return toReservation(getRow(ctx, row.id), nowOr(ctx, input.now));
|
|
610
634
|
}
|
|
611
635
|
/**
|
|
612
636
|
* Reschedule to another slot and/or resource, keeping the reservation's identity
|
|
@@ -624,8 +648,8 @@ export function cancelReservation(ctx, input) {
|
|
|
624
648
|
export function moveReservation(ctx, rawInput) {
|
|
625
649
|
const input = moveReservationInput.parse(rawInput);
|
|
626
650
|
const row = getRow(ctx, input.reservationId);
|
|
627
|
-
|
|
628
|
-
const now = nowOr(input.now);
|
|
651
|
+
requireTransition(row, 'booking/move');
|
|
652
|
+
const now = nowOr(ctx, input.now);
|
|
629
653
|
const targetResourceId = input.resourceId ?? row.resource_id;
|
|
630
654
|
let startsAt = input.startsAt ?? row.starts_at;
|
|
631
655
|
let endsAt;
|
|
@@ -666,11 +690,11 @@ export function moveReservation(ctx, rawInput) {
|
|
|
666
690
|
participantCount: activeParticipants(ctx, row.id).length,
|
|
667
691
|
},
|
|
668
692
|
});
|
|
669
|
-
return toReservation(getRow(ctx, row.id), nowOr(input.now));
|
|
693
|
+
return toReservation(getRow(ctx, row.id), nowOr(ctx, input.now));
|
|
670
694
|
}
|
|
671
695
|
export function startReservation(ctx, input) {
|
|
672
696
|
const row = getRow(ctx, input.reservationId);
|
|
673
|
-
|
|
697
|
+
requireTransition(row, 'booking/start');
|
|
674
698
|
ctx.sql.exec(`UPDATE booking_reservations SET state = 'in_service' WHERE id = ?`, [row.id]);
|
|
675
699
|
ctx.emit({
|
|
676
700
|
type: 'booking.started',
|
|
@@ -679,7 +703,7 @@ export function startReservation(ctx, input) {
|
|
|
679
703
|
piiClass: 'none',
|
|
680
704
|
payload: { reservationId: row.id, resourceId: row.resource_id },
|
|
681
705
|
});
|
|
682
|
-
return toReservation(getRow(ctx, row.id), nowOr(input.now));
|
|
706
|
+
return toReservation(getRow(ctx, row.id), nowOr(ctx, input.now));
|
|
683
707
|
}
|
|
684
708
|
/**
|
|
685
709
|
* The terminal success transition. The payload is deliberately **fat** — resource,
|
|
@@ -689,7 +713,7 @@ export function startReservation(ctx, input) {
|
|
|
689
713
|
*/
|
|
690
714
|
export function completeReservation(ctx, input) {
|
|
691
715
|
const row = getRow(ctx, input.reservationId);
|
|
692
|
-
|
|
716
|
+
requireTransition(row, 'booking/complete');
|
|
693
717
|
const resource = getResourceRow(ctx, row.resource_id);
|
|
694
718
|
ctx.sql.exec(`UPDATE booking_reservations SET state = 'completed' WHERE id = ?`, [row.id]);
|
|
695
719
|
ctx.emit({
|
|
@@ -706,11 +730,11 @@ export function completeReservation(ctx, input) {
|
|
|
706
730
|
participantCount: activeParticipants(ctx, row.id).length,
|
|
707
731
|
},
|
|
708
732
|
});
|
|
709
|
-
return toReservation(getRow(ctx, row.id), nowOr(input.now));
|
|
733
|
+
return toReservation(getRow(ctx, row.id), nowOr(ctx, input.now));
|
|
710
734
|
}
|
|
711
735
|
export function markNoShow(ctx, input) {
|
|
712
736
|
const row = getRow(ctx, input.reservationId);
|
|
713
|
-
|
|
737
|
+
requireTransition(row, 'booking/no-show');
|
|
714
738
|
ctx.sql.exec(`UPDATE booking_reservations SET state = 'no_show' WHERE id = ?`, [row.id]);
|
|
715
739
|
ctx.emit({
|
|
716
740
|
type: 'booking.no-show',
|
|
@@ -725,11 +749,11 @@ export function markNoShow(ctx, input) {
|
|
|
725
749
|
participantCount: activeParticipants(ctx, row.id).length,
|
|
726
750
|
},
|
|
727
751
|
});
|
|
728
|
-
return toReservation(getRow(ctx, row.id), nowOr(input.now));
|
|
752
|
+
return toReservation(getRow(ctx, row.id), nowOr(ctx, input.now));
|
|
729
753
|
}
|
|
730
754
|
export function getReservation(ctx, reservationId, now) {
|
|
731
755
|
return {
|
|
732
|
-
reservation: toReservation(getRow(ctx, reservationId), nowOr(now)),
|
|
756
|
+
reservation: toReservation(getRow(ctx, reservationId), nowOr(ctx, now)),
|
|
733
757
|
participants: allParticipants(ctx, reservationId),
|
|
734
758
|
};
|
|
735
759
|
}
|
|
@@ -749,7 +773,7 @@ export function listReservations(ctx, input) {
|
|
|
749
773
|
params.push(toInstant(input.from));
|
|
750
774
|
}
|
|
751
775
|
const where = clauses.length ? ` WHERE ${clauses.join(' AND ')}` : '';
|
|
752
|
-
const now = nowOr(input.now);
|
|
776
|
+
const now = nowOr(ctx, input.now);
|
|
753
777
|
return ctx.sql
|
|
754
778
|
.query(`SELECT * FROM booking_reservations${where} ORDER BY starts_at, id`, params)
|
|
755
779
|
.map((r) => toReservation(r, now));
|
|
@@ -770,7 +794,7 @@ export function availability(ctx, input) {
|
|
|
770
794
|
const to = toInstant(input.to);
|
|
771
795
|
if (from >= to)
|
|
772
796
|
return [];
|
|
773
|
-
const now = nowOr(input.now);
|
|
797
|
+
const now = nowOr(ctx, input.now);
|
|
774
798
|
const resource = getResourceRow(ctx, input.resourceId);
|
|
775
799
|
if (resource.active !== 1)
|
|
776
800
|
return [];
|
|
@@ -879,27 +903,114 @@ const availabilityOp = async (ctx, input) => {
|
|
|
879
903
|
assertAllowed(await ctx.check(PERM.read));
|
|
880
904
|
return availability(ctx, input);
|
|
881
905
|
};
|
|
906
|
+
/**
|
|
907
|
+
* The registered handlers, extracted so the lifecycle below can be checked
|
|
908
|
+
* against them.
|
|
909
|
+
*
|
|
910
|
+
* This is why booking's lifecycle lives at the bottom of `index.ts` rather than
|
|
911
|
+
* in its own `lifecycle.ts` the way workorder's does: booking has not adopted
|
|
912
|
+
* `defineOperations`, so the only description of its operation surface is this
|
|
913
|
+
* map — and a separate file importing it would close a cycle. Declaring an
|
|
914
|
+
* operation-name list beside it instead would be exactly the second description
|
|
915
|
+
* this change exists to delete.
|
|
916
|
+
*/
|
|
917
|
+
const OPERATIONS = {
|
|
918
|
+
'booking/create-resource': createResourceOp,
|
|
919
|
+
'booking/set-resource-active': setResourceActiveOp,
|
|
920
|
+
'booking/list-resources': listResourcesOp,
|
|
921
|
+
'booking/hold': holdOp,
|
|
922
|
+
'booking/confirm': confirmOp,
|
|
923
|
+
'booking/expire': expireOp,
|
|
924
|
+
'booking/join': joinOp,
|
|
925
|
+
'booking/leave': leaveOp,
|
|
926
|
+
'booking/cancel': cancelOp,
|
|
927
|
+
'booking/move': moveOp,
|
|
928
|
+
'booking/open': openOp,
|
|
929
|
+
'booking/start': startOp,
|
|
930
|
+
'booking/complete': completeOp,
|
|
931
|
+
'booking/no-show': noShowOp,
|
|
932
|
+
'booking/get': getOp,
|
|
933
|
+
'booking/list': listOp,
|
|
934
|
+
'booking/availability': availabilityOp,
|
|
935
|
+
};
|
|
882
936
|
export const bookingModule = {
|
|
883
937
|
manifest: bookingManifest,
|
|
884
938
|
migrations: bookingMigrations,
|
|
885
|
-
operations:
|
|
886
|
-
'booking/create-resource': createResourceOp,
|
|
887
|
-
'booking/set-resource-active': setResourceActiveOp,
|
|
888
|
-
'booking/list-resources': listResourcesOp,
|
|
889
|
-
'booking/hold': holdOp,
|
|
890
|
-
'booking/confirm': confirmOp,
|
|
891
|
-
'booking/expire': expireOp,
|
|
892
|
-
'booking/join': joinOp,
|
|
893
|
-
'booking/leave': leaveOp,
|
|
894
|
-
'booking/cancel': cancelOp,
|
|
895
|
-
'booking/move': moveOp,
|
|
896
|
-
'booking/open': openOp,
|
|
897
|
-
'booking/start': startOp,
|
|
898
|
-
'booking/complete': completeOp,
|
|
899
|
-
'booking/no-show': noShowOp,
|
|
900
|
-
'booking/get': getOp,
|
|
901
|
-
'booking/list': listOp,
|
|
902
|
-
'booking/availability': availabilityOp,
|
|
903
|
-
},
|
|
939
|
+
operations: OPERATIONS,
|
|
904
940
|
};
|
|
941
|
+
/**
|
|
942
|
+
* The reservation's state machine, declared (#844).
|
|
943
|
+
*
|
|
944
|
+
* ## `on` versus `allow` — the distinction this engine forced
|
|
945
|
+
*
|
|
946
|
+
* Three of the nine guards gate operations that move NOTHING. `booking/move`
|
|
947
|
+
* changes a reservation's times, `booking/open` its fill target, `booking/join`
|
|
948
|
+
* adds a participant — each legal only in `held` or `confirmed`, and none of
|
|
949
|
+
* them a transition. Declaring them as edges would have put three self-loops on
|
|
950
|
+
* the diagram that no code performs.
|
|
951
|
+
*
|
|
952
|
+
* ## Why `booking/join` is `allow` even though joining can confirm
|
|
953
|
+
*
|
|
954
|
+
* A join that fills the last place calls `confirmReservation` — so a join CAN
|
|
955
|
+
* end with a confirmed reservation. It is still not an edge. The move is
|
|
956
|
+
* `booking/confirm`'s, performed by the in-scope function join composes, and it
|
|
957
|
+
* goes through this same check on the way. Declaring `join: 'confirmed'` would
|
|
958
|
+
* claim every join confirms, which is false for all but the last one.
|
|
959
|
+
*
|
|
960
|
+
* That is the composition rule holding: an engine composed BY CALL gets its
|
|
961
|
+
* invariant from the callee, so the machine describes what each verb does
|
|
962
|
+
* itself, not what its callees might do next.
|
|
963
|
+
*
|
|
964
|
+
* ## Lazy expiry is not an edge either
|
|
965
|
+
*
|
|
966
|
+
* `held → expired` IS declared — `booking/expire` performs it. What is not
|
|
967
|
+
* declared is the lapse: a hold past its deadline reads as `expired` through
|
|
968
|
+
* `effectiveStateOf` without any transition occurring, which is a projection for
|
|
969
|
+
* display and allocation. The condition on the edge (`not_yet_expired`) stays in
|
|
970
|
+
* the handler, where a lifecycle deliberately cannot reach.
|
|
971
|
+
*
|
|
972
|
+
* ## No `extensible` states
|
|
973
|
+
*
|
|
974
|
+
* Every state here carries an allocation or capacity consequence, and the four
|
|
975
|
+
* terminal ones release capacity. Refining any of them is not a vertical's to do
|
|
976
|
+
* yet, and the absence says so rather than leaving it to be inferred.
|
|
977
|
+
*/
|
|
978
|
+
export const bookingLifecycles = defineLifecycles(bookingEntities, OPERATIONS)({
|
|
979
|
+
reservation: {
|
|
980
|
+
field: 'state',
|
|
981
|
+
initial: 'held',
|
|
982
|
+
states: {
|
|
983
|
+
/** A deadline-bearing claim on capacity. */
|
|
984
|
+
held: {
|
|
985
|
+
on: {
|
|
986
|
+
'booking/confirm': 'confirmed',
|
|
987
|
+
'booking/expire': 'expired',
|
|
988
|
+
'booking/cancel': 'cancelled',
|
|
989
|
+
},
|
|
990
|
+
allow: ['booking/join', 'booking/open', 'booking/move'],
|
|
991
|
+
},
|
|
992
|
+
/** Capacity is committed. `complete` may skip `in_service` — starting is optional. */
|
|
993
|
+
confirmed: {
|
|
994
|
+
on: {
|
|
995
|
+
'booking/start': 'in_service',
|
|
996
|
+
'booking/complete': 'completed',
|
|
997
|
+
'booking/no-show': 'no_show',
|
|
998
|
+
'booking/cancel': 'cancelled',
|
|
999
|
+
},
|
|
1000
|
+
allow: ['booking/join', 'booking/open', 'booking/move'],
|
|
1001
|
+
},
|
|
1002
|
+
/** Under way. No longer cancellable, and no longer re-timeable. */
|
|
1003
|
+
in_service: {
|
|
1004
|
+
on: {
|
|
1005
|
+
'booking/complete': 'completed',
|
|
1006
|
+
'booking/no-show': 'no_show',
|
|
1007
|
+
},
|
|
1008
|
+
},
|
|
1009
|
+
expired: { terminal: true },
|
|
1010
|
+
cancelled: { terminal: true },
|
|
1011
|
+
completed: { terminal: true },
|
|
1012
|
+
no_show: { terminal: true },
|
|
1013
|
+
},
|
|
1014
|
+
},
|
|
1015
|
+
});
|
|
905
1016
|
//# sourceMappingURL=index.js.map
|
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/dist/model.d.ts
ADDED
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The artifact of record for this engine (#697/#844).
|
|
3
|
+
*
|
|
4
|
+
* It imports the lifecycle from `index.ts` rather than a `lifecycle.ts`, because
|
|
5
|
+
* that is where booking's operation map lives — see the note on `OPERATIONS`.
|
|
6
|
+
* Nothing imports this file back, so the direction stays acyclic.
|
|
7
|
+
*/
|
|
8
|
+
export declare const bookingModel: import("@substrat-run/contracts").EmittedModel;
|
|
9
|
+
//# sourceMappingURL=model.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model.d.ts","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAIA;;;;;;GAMG;AACH,eAAO,MAAM,YAAY,gDAAgE,CAAC"}
|
package/dist/model.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { emitModel } from '@substrat-run/contracts';
|
|
2
|
+
import { bookingEntities } from './entities.js';
|
|
3
|
+
import { bookingLifecycles } from './index.js';
|
|
4
|
+
/**
|
|
5
|
+
* The artifact of record for this engine (#697/#844).
|
|
6
|
+
*
|
|
7
|
+
* It imports the lifecycle from `index.ts` rather than a `lifecycle.ts`, because
|
|
8
|
+
* that is where booking's operation map lives — see the note on `OPERATIONS`.
|
|
9
|
+
* Nothing imports this file back, so the direction stays acyclic.
|
|
10
|
+
*/
|
|
11
|
+
export const bookingModel = emitModel(bookingEntities, { lifecycles: bookingLifecycles });
|
|
12
|
+
//# sourceMappingURL=model.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model.js","sourceRoot":"","sources":["../src/model.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAChD,OAAO,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AAE/C;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,SAAS,CAAC,eAAe,EAAE,EAAE,UAAU,EAAE,iBAAiB,EAAE,CAAC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@substrat-run/engine-booking",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.5.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,15 +25,15 @@
|
|
|
25
25
|
"access": "public"
|
|
26
26
|
},
|
|
27
27
|
"dependencies": {
|
|
28
|
-
"@substrat-run/contracts": "^0.
|
|
29
|
-
"@substrat-run/kernel": "^0.
|
|
28
|
+
"@substrat-run/contracts": "^0.85.0",
|
|
29
|
+
"@substrat-run/kernel": "^0.85.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/engine-test-kit": "^0.3.
|
|
36
|
-
"@substrat-run/model-emit": "0.
|
|
35
|
+
"@substrat-run/engine-test-kit": "^0.3.12",
|
|
36
|
+
"@substrat-run/model-emit": "0.7.1"
|
|
37
37
|
},
|
|
38
38
|
"peerDependencies": {
|
|
39
39
|
"zod": "^4.4.0"
|