Saga Dashboard · Escalation · issue #654 · phase 2

Pick the wording for each spot

For every place we warn or confirm, here's the actual wording of each option. The one we ship today is marked. Read them and tell us if we should lean softer or stronger — the note under each says which way and when.

Softer → stronger Notice · just inform→ Warning + Remove · they act→ Auto + Undo · we act, they reverse→ Confirmation · blocks first
Someone is already placed elsewhere

Student in two pods, same period

They're placed in this pod but already sit in another pod of the same period.

Notice
Maya Ellis is also in another pod this period.✕
Ships todayWarning + Remove
Maya Ellis is also in another pod this period — remove from ?✕
Auto + Undo
Removed Maya Ellis from Rotation 2.Undo

Hold here. Which pod to keep is the admin's call, so auto-removing is presumptuous. Lean softer (Notice, no button) only if being in two pods is often intended; lean stronger isn't warranted — it's allowed and reversible.

Student scheduled elsewhere the same day

They're added here but already have another session that day, in another period.

Notice
Maya Ellis is also scheduled this day in Period 4 (1:00 pm · Mr. Diaz).✕
Ships todayNotice + Remove
Maya Ellis is also scheduled this day in Period 4 — remove from ?✕
Warning + Remove
Maya Ellis is also scheduled this day in Period 4 — remove from ?✕

Likely lean softer. Having two sessions in a day is often legitimate, so this may want to be inform-only (drop the Remove). Lean stronger (amber Warning) only if same-day double-booking is usually a mistake.

Tutor already in a sibling group

The tutor is assigned here but already holds a pod in another group of this period.

Notice
Alex R. is also assigned to a pod in group 202.✕
Ships todayWarning + Remove
Alex R. is also assigned to a pod in group 202 — remove from ?✕

Hold here. Lean softer (Notice) if tutors intentionally span groups a lot; keeping the Remove is safe otherwise.

Blocking today — but reversible, so could soften

Cancel a session

Marks students not-meeting for the day. The app says this is reversible.

Auto + Undo
Session cancelled — students marked not meeting.Undo
Ships todayConfirmation

Cancel this session?

Students will be marked as not meeting on Tue, Jan 14. It will still show in Ended with a strike-through; cancellations are reversible.

Likely lean softer. It's reversible, so a blocking dialog is heavy — an Undo snackbar is lower-friction. Keep the dialog only if "not meeting" has heavy downstream effects (attendance, reporting) that make a slip costly.

Remove a pod for the day

Cancels one pod's meeting for a single day. Today it's "cannot be undone."

Auto + Undoneeds reversible
Pod removed for Tue, Jan 14.Undo
Ships todayConfirmation

Remove this pod for the day?

This cancels that pod's meeting on this day only. It cannot be undone — the recurring schedule is unaffected.

Could lean softer to an Undo snackbar if we make it reversible (narrow blast — one pod, one day). If it stays non-reversible, keep the confirmation.

Destructive & irreversible — stay blocking (no softer option)

These keep their confirmation dialog

Each is irreversible and/or high-blast, so a blocking confirm is right. Wording shown as it ships; the only "err" direction here is stronger, not softer.

ShipsConfirmation

Change rotation pattern?

Clears all pod assignments — and deletes pods in other groups of this period (Group 202 — 3 pods; Group 204 — 1 pod). Cannot be undone.

ShipsConfirmation

Reset student workspaces?

Warning: changing content will reset all student workspaces. Continue?

ShipsConfirmation

Switch schedule type?

Clears all schedule configuration — day types, day selections, calendar. Cannot be undone.

ShipsConfirmation

Delete this tutoring period?

Removes the period and its times / day-type blocks. Students stay enrolled. Cannot be undone.

Only err stronger. For Reset student workspaces (it wipes student work), consider a stronger gate than one click — e.g. naming what's lost, or type-to-confirm. The rest are fine as blocking confirms.

Not built yet — decide the level up front

Pod has no tutor (#343)

A pod has students but no tutor assigned.

Warning · passive flag
Pod 3 has no tutor assigned.✕
Confirmation · at session creation

Create sessions with an unstaffed pod?

Pod 3 has students but no tutor — they'll have no one to meet with.

New — pick a level. Softer: a passive flag while building. Stronger: block at the "generate sessions" step so no unstaffed pod ships. (These can coexist — flag early, confirm at the gate. The flag's standing-state delivery is on the Passive board.)

Students left unassigned (#461)

A roster sync left students in no pod — not something the admin just did.

Passive / standing state
3 students aren't in a pod yet. ✕

Not an escalation call — it's passive. Auto-arising, with no action to escalate. How it's surfaced (amber count-badge trail / notification bell) is its own question — see the Passive board.