list-first-scheduling

Notes

  • 2026-09-14 (session 103): P0 of PLAN_LIST_FIRST_SCHEDULING_2026-09-14.md shipped (entirely-api 5ed8b39, entirely-portal 082f2a8). Rulings log added as plan §19: C1 ruled (15 min site time), C2-C5 defaults proceeding, A1-A4 and B1-B10 still open (walked with Dustin, answers pending). P1 (migrations 048/049, geocode cache, drive_matrix, slot_advisor, feasibility badges) gated on A2 + A4. Per-user rate bucket deliberately deferred to P3.
  • 2026-09-14 RULINGS (Dustin, session 103, “go with all your recommendations”): A1 announcer bot may post frozen templates in Slack Connect branch channels; A2 in-production = time-flex same day (engine never moves an in-production day), post-production in-situ = day-flex, scheduler accepts deltas, Jacob countersigns at Gate 2 only; A3 first-accepted wins cross-branch, no disclosure, Jacob’s combined board arbitrates; A4 Dustin’s stops proposable only by Jacob/Dustin, availability blocks mandatory in P1; B1 permit required / plans optional; B2 always a human at Gate 2, Friday list approved before Sunday 7:30 PM; B3 missing docs = stop runs flagged “no permit on file”; B4 wait-list re-proposals Jacob-only first; B5 boundary = has a field stop; B6 red bookable with acknowledge; B7 published one-line format only; B8 Manassas + Baltimore Slack, VB + Richmond email; B9 tentative released on visit date if unapproved; B10 any account scheduler may accept a delta; C1 15 min, C2-C5 defaults. P1 started same session.
  • 2026-09-14 P1 SHIPPED (session 103): migrations 048/049, engine + feasibility API + calendar badges + blocks panel live (see services/scheduling-engine). Next = P2: portal paste/table + email on-ramps, Week Board propose/accept → tentative visits via update_site_visit_columns, Jacob combined board, Add Appointment chips on POST /portal/scheduling/suggest, migration 050 schedule_lists/rows. Blocks not yet drawn on the grid.
  • 2026-09-14 RULING (Dustin, session 103): automatic re-timing of TENTATIVE week-board stops = YES. SCHED_AUTO_MOVE_TENTATIVE=1 set; services/schedule_auto_move runs hourly Mon–Fri 7–19 ET and may move a still-tentative stop on the same inspector’s same day when it lands green and the day stops being red, never for today/tomorrow; owner/admin notified, comm-logged. Confirmed stops never move automatically (Route Board Apply is the human path).