Verified builddomainserver

Desk Booking

src/features/desk-booking

Members reserve a desk for a day; admins approve or cancel.

Brick

  • __tests__/

  • domain/

  • host/

  • server/

  • testing/

Host adapter (not part of the brick)

domain/index.ts
1/**
2 * The pure entrypoint: types and logic with no React and no I/O. Importable
3 * from both server and client code.
4 */
5
6export type { Status, Booking, StatusValue, BookingStatus, NotifyEveryoneInput, ISODateTime } from './types';
7export { DeskBookingError, NotImplemented } from './errors';
8export type { DeskBookingErrorCode } from './errors';
9export { initialBookingStatus, canBooking, transitionBooking, availableBookingEvents } from './lifecycle';
10export type { BookingEvent } from './lifecycle';
11

Requirements

  • ✓

    REQ-1Must be able to notify everyone included in a message in real time

    ✓ [REQ-1] Must be able to notify everyone included in a message in real time #1

  • ✓

    GATE-PORTABLESelf-contained: relative imports only, nothing escapes the brick (R1–R6)

    brick-lint + builder harness

  • ✓

    GATE-CONTRACTVendored host contract is byte-identical (R8)

    sha-256 comparison

  • ✓

    GATE-TYPESTypechecks under the strictest-superset tsconfig

    in-process tsc

  • ✓

    GATE-TESTSShips its own tests and they pass (R12)

    9 passing

  • ✓

    GATE-LIFECYCLE-BOOKINGBooking.status only changes through declared transitions

    8 generated lifecycle tests

Built 03/10/2026, 12:18:52 · 9 tests passing · operations by local