Skip to content

Glossary

BA — Booking Automation. The legacy automation tool we’re migrating away from. Hosted product with a web panel and per-booking auto-actions.

Beds24 — The reservation system (channel manager + booking engine front-end). We talk to it via its v2 API. BA sits on top of Beds24 too, so when we read/write a booking, BA sees it.

AA / auto-action — Beds24/BA’s term for an event-driven automation rule (e.g., “7 days before check-in, send this email”). 35 of these in the legacy setup, 30 ported to our workers.

Workflow — Cloudflare’s durable-execution engine. Each per-booking BookingFlagWorkflow instance survives worker restarts, can sleep for days, and replays from snapshot if a step fails.

Phase — One unit of work inside a workflow. Most phases follow the pattern step.sleepUntil(fireAt); step.do(work). Idempotent: re-running a phase doesn’t duplicate side effects.

Touchpoint — A user-facing message (to guest or cleaner) in the cleaning workflow. Heads-up → T-2 reminder → time-commit are the three.

Info code — Per-booking key/value pair stored on the Beds24 booking record. Used for durable cross-system state (CA_PRE_CHECKIN_COMPL, CHECKIN, COHOST_NOTIFIED, etc.). Survives our worker restarts.

Shadow mode — A feature_flags row with shadow_mode=1 means the workflow writes its predictions to shadow_predictions and logs activity but doesn’t actually send / mutate. Used to test parity before flipping a BA AA off.

Self-write debounce — When our worker calls updateBooking, Beds24 fires a modify webhook back to us. The debounce (KV-based, 60s TTL) prevents this from re-spawning the workflow.

MT — Mountain Time (Steamboat is in MDT/MST). Times in BA’s UI are typically MT; our code stores UTC and converts where needed.