Never double-books you. And you can check.
“Reliable” is easy to say and hard to prove. OpenMeet’s correctness core is a set of guarantees enforced by the database and a DST-correct engine — and covered by a test suite you can run yourself.
A shown slot is bookable
Two bookings for the same host and time cannot both commit — a Postgres GiST EXCLUDE constraint rejects the collision at the database, not a hopeful application-level retry. Concurrency is decided by the one component that cannot race with itself.
The timezone is always right
Slots are computed by a DST-correct engine and shown in the invitee’s own timezone, detected then confirmed before booking — never a silent UTC guess. The engine’s DST transitions are unit-tested directly.
Confirmed means confirmed
The calendar write and the email go through a transactional outbox that reads the event back before it reports success — the guard against the “ACCEPTED but never synced” class of failure that silently erodes trust in other tools.
Failures are visible
A background worker drains the outbox; if it stalls, /api/health reports degraded and the public status page turns yellow. A stuck job is a loud signal, not an invisible pile-up.
Watch the race
The first guarantee — a shown slot is bookable — is the one you can feel. Two people go for the same time; the database decides, and one of them always loses.
Two people click the same time at the same instant. Watch one win and one get turned away — decided by the database, not by luck.
migrations/0000_init.sql:ALTER TABLE bookings ADD CONSTRAINT bookings_no_overlap
EXCLUDE USING gist (
assigned_host_id WITH =,
time_range WITH &&
) WHERE (status IN ('held', 'confirmed'));Reproduce the real race against Postgres
RUN_DB_TESTS=1 pnpm test: tests/integration/booking.int.test.ts fires two real commits at one slot and asserts exactly one wins.Don’t take our word for it
The correctness core is covered by an automated suite — 282 test cases across 28 files: concurrency, DST transitions, the outbox pipeline, and health. It runs the same way on any machine:
pnpm testRuns the 236 DB-free cases. With a migrated Postgres, RUN_DB_TESTS=1 pnpm test adds the 46 integration cases that exercise the EXCLUDE constraint under real concurrency.Ready when you are
Every guarantee on this page is live in the product today. Create your booking link and put it to work.