From 70431fb836fc5ab6b542d70df128dbc14664b7d4 Mon Sep 17 00:00:00 2001 From: "bert.hausmans" Date: Fri, 8 May 2026 21:30:18 +0200 Subject: [PATCH] docs(backlog): record EVENT-START-END-TIME for events-table schema upgrade MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Surfaced during Session 2 review: events.start_date/end_date (date type) forces day-boundary semantics in WithinEventBounds. Adding start_time/ end_time would let the Session 4 timetable viewport honour real event hours and boundary checks reject post-event-close performances. Cross-cutting schema change — out of scope for Artist Timetable sprint per Charter §2. Tracked for opportunistic landing alongside a future events-module sprint OR concrete UX-gap discovery during Session 4. Co-Authored-By: Claude Opus 4.7 (1M context) --- dev-docs/BACKLOG.md | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) diff --git a/dev-docs/BACKLOG.md b/dev-docs/BACKLOG.md index 786f4c06..e2b0b8c4 100644 --- a/dev-docs/BACKLOG.md +++ b/dev-docs/BACKLOG.md @@ -736,6 +736,43 @@ de divergentie totdat een legitieme amendement langskomt. --- +### EVENT-START-END-TIME + +`events` table currently has `start_date`/`end_date` (date type), which +forces day-boundary semantics in `WithinEventBounds` and similar checks. +For festivals running past midnight or with intentionally non-24h +operating windows, a `start_time`/`end_time` pair (or a unified +`start_at`/`end_at` datetime) on the `events` table would let: + +- the timetable viewport (Session 4 frontend) honour real event hours + instead of always showing 00:00 → 23:59 +- boundary checks like `WithinEventBounds` reject performances that + run past the event's actual close time, even within the same date + +**Why not now:** +- Cross-cutting schema change touching the `events` table — used by + 30+ modules across the codebase +- Out of scope for the Artist Timetable sprint per Charter §2 (no + opportunistic feature-creep) +- Sub-events absorb the granularity in 90% of cases via Performance + datetimes + +**When:** +- Session 4 frontend timetable viewport reveals concrete UX gaps from + date-only event bounds +- OR a customer onboards with a non-day-aligned schedule (e.g. a club + with a 22:00 → 06:00 nightly window) + +**Surfaced during:** Session 2 review of +`app/Rules/Artist/WithinEventBounds.php`, which uses +`startOfDay()`/`endOfDay()` to bridge the date-vs-datetime gap. That +bridge is correct given current schema; this ticket is about the +schema, not the rule. + +**Prioriteit:** Middel — works today; upgrade is feature-not-bug. + +--- + ### AUTH-PERMISSIONS-MIGRATION — Migrate alle policies van hasRole() naar hasPermissionTo() **Aanleiding:** Crewli gebruikt vandaag uitsluitend Spatie *roles*; geen