Mockup only. This shows the new widget sitting between the Booked appointments and Acuity windows sections of the Huddle. Numbers tagged live are read straight from the scheduling code in the real build, so they can never drift. Click the header to test collapse/expand. Edit any wording and tell me what to change.
Booked appointments  (section above — real grid content)
▼ new widget goes here ▼
How the Huddle decides — the rules behind today's grid
The left side are hard rules the code never breaks. The right side is the order it chooses when it has options. Think rank #5 should be higher than #1? That's the feedback we want — tell Jason or Brooks.
Floor Throw Speed 7-Star
🔒 Non-Negotiables the code never breaks these
  • Floor coverage never drops below what's needed: 1 coach per 8 athleteslive in the gym. A final check runs after every other decision to guarantee it.
  • A season floor on top of that: at least 4 coacheslive in offseason, 3live in-season and summer, across the 3:30–6:00 PM core.
  • Someone is always on Throw every block from 2:30–6:30 PM (never at 7:00 or 7:30). Never a lone 30-min block: 1 hour minimum, 2 hours maxlive in a row.
  • Someone is always on Speed every block from 2:30–6:30 PM (never at 7:00 or 7:30). 1 hour straight maxlive, then a forced break.
  • Jeremy and Josh are remote coaches: never placed on the floor. Only their appointments and meetings show.
  • Ryan is 7-Star by default and only goes to the floor as a true last resort, when we genuinely can't cover otherwise.
  • A coach is never double-booked. When two appointments collide, the Assessment stays and the other moves to a fallback coach. The fallback is never someone currently on Throw or Speed.
  • Jason takes the first 30 minutes of 1-on-1 Onboardings. The owning coach keeps the rest.
  • A locked day doesn't reshuffle overnight. The floor still flexes up (it promotes a 7-Star) but never pulls anyone off Throw or Speed.
📊 Preference Hierarchy the order it chooses — challenge this
  • 1Cover the floor first. Demand is met before anything optional happens.
  • 2Give every core coach (Neal, Jason, Jake, Jordan, Francisco, Greg) at least 2 7-Star admin blockslive a day, aiming for 2–3, spread roughly even. Whoever has the fewest so far gets the next one.
  • 3Break ties for 7-Star by ownership: the coach who owns the smallest share of athletes on the floor at that time is least needed there, so they get the admin block first.
  • 4Staff Throw with the coach who owns the most throwing athletes in that window.
  • 5Staff Speed with the coach who owns the athletes whose session starts at that exact time (Speed is the first 30 minutes).
  • 6When possible, put one extra coach on the floor beyond the minimum — unless that would cost a coach their 2nd 7-Star block. The 7-Star wins.
  • 7Give a 7-Star buffer right after an Assessment, so the coach has time for post-assessment admin.
  • 8Make each coach's 7-Star blocks back-to-back instead of scattered through the day.
💬 See something ranked wrong? The whole point of this list is your feedback. If preference #5 should sit above #1, say so — that's how we tune what the Huddle prioritizes.
▲ new widget goes here ▲
Acuity windows  (section below — real grid content)