Saga Dashboard · Design decision board · issue #654

Notices, Warnings & Confirmations

The framework that warns an admin when an edit reaches past what's on screen — a student already in another pod, a tutor in a sibling group, a rotation change that wipes other groups' pods. The logic is built; we need your call on the look & feel and the wording. Everything below is rendered with the real app styles. Pick an option in each section — or tell us it's none of these.

A

The severity ladder

Three levels, escalating by how much they interrupt. Seriousness is judged per situation, not by the type of collision. Decide: is this the right set of three, and the right weight/colour for each? (Today only Warning and Confirmation are used in the build — Notice's blue treatment is built but not yet shown anywhere.)

Notice
passive · role=status
Allowed, but usually worth avoiding.
built · unused today
Maya Ellis is also scheduled this day in Period 4 (1:00 pm · Mr. Diaz).
Warning
non-blocking · offers a fix
A real collision they probably didn't intend.
in build
Maya Ellis is also in another pod this period — remove from ?
Confirmation
blocking · role=alertdialog
Destructive / irreversible — names what will be lost.
in build (#552)
Blocking modal — see section D ↓
B

Inline signal — visual treatment

Same warning, three treatments. Decide: how loud should an inline signal be? Full-fill reads as more urgent; the left-accent reads calmer and sits better in a dense board; the iconed version adds a glance-level severity cue.

C

Inline signal — wording

The action idiom is the framework's signature move: fix the off-screen thing without leaving the screen. Decide: which voice? All name the specific rotation (never a vague "elsewhere"). Applies to all three inline signals (double-booking, day-scope, tutor cross-group).

D

Confirmation dialog — treatment & button copy

The blocking rung, shown as a "ledger of losses" (the #552 rotation-wipe case). The dialog treatment is settled (danger modal, safe button focused). Decide the button copy convention — today it's inconsistent across the app (sessions say "Yes, …" / "Never mind"; program-config says bare verbs / "Cancel"). Pick one for everywhere.

⚠ Change rotation pattern?

Changing the rotation pattern will clear all pod assignments. This will also delete pods in other groups of this period:

  • Group 202 — 3 pods
  • Group 204 — 1 pod

This cannot be undone.

The confirm button never takes focus on open — Cancel is focused, so a stray Enter can't trigger the destructive action. That stays regardless of copy.
E

New: aggregation — many impacts, one signal

When one person triggers several off-screen impacts at once, we can gather them into a single expandable summary instead of stacking separate toasts. Decide: is this the right collapsed wording and the right affordance? (First real use: a student added to a pod who's also scheduled elsewhere that day — two signals today, one below.) Click to expand.

▸Maya Ellis has 2 scheduling conflictstap to review
Also in another pod this period — remove from ?
Also scheduled this day in Period 4 (1:00 pm · Mr. Diaz) — remove from ?
Each item keeps its own level (amber warning, blue notice) and its own fix. Open question: collapsed label — "2 scheduling conflicts" vs "2 things to check" vs a per-kind count? And should it start expanded or collapsed?
F

Wording rules already in play

These are settled conventions the copy follows — flagged so they're not accidentally overridden. Confirm or override.

this day · not today — the edited date may be in the future.
group · not cohort — "cohort" is the backend term (SD26).
Tutor · not host

What we need from you

Pick one option in each lettered section above (they highlight green when selected), or note a different direction. Six decisions:

  1. A · Ladder — confirm the three levels + each one's colour/weight (esp. Notice-blue, currently unseen).
  2. B · Treatment — full-fill vs left-accent vs iconed for inline signals.
  3. C · Wording — inline-question vs statement+action vs terse.
  4. D · Confirm copy — bare verbs vs verb-echo, applied app-wide.
  5. E · Aggregation — collapsed label + expand-vs-collapsed default.
  6. F · Wording rules — confirm this day / group / Tutor.