docs(calendar): refresh escalation-ladder prose for CI calm-rotation - #21
Conversation
ci_status no longer draws at PRIORITY_ALERT (60); its failure/stuck frames rotate at the overlay tier (21). Softens the now-dated 'persistent CI failure alert buries the calendar' framing to reflect that the calendar's climb above the overlay tier is what keeps an imminent event visible. Docs only. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: eaa5142388
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| ## Escalation ladder | ||
|
|
||
| An operator-reported UX gap: a persistent CI failure alert (`ci_status`, `PRIORITY_ALERT`) permanently evicted the calendar, hiding an imminent event with no way for the calendar to ever reclaim the screen -- the ambient tier has no dwell/silence contract of its own the way the overlay tier does. v1.5.2's fix is a state-dependent draw priority: as an upcoming event gets closer, the calendar climbs `busybar/display.py`'s shared priority ladder so it can no longer be silently buried, first by the overlay-tier CI badge/quota rotation and then by a genuine alert itself. | ||
| An operator-reported UX gap: a persistent CI failure alert (`ci_status`, then drawn at `PRIORITY_ALERT`) permanently evicted the calendar, hiding an imminent event with no way for the calendar to ever reclaim the screen -- the ambient tier has no dwell/silence contract of its own the way the overlay tier does. v1.5.2's fix is a state-dependent draw priority: as an upcoming event gets closer, the calendar climbs `busybar/display.py`'s shared priority ladder so it can no longer be silently buried by the overlay-tier rotation. (As of the calm-rotation change, `ci_status` no longer draws at `PRIORITY_ALERT` at all -- its failure/stuck frames now rotate at the overlay tier (21) alongside the running badge and quota gauges, so the calendar's climb above that tier is what keeps an imminent event visible.) |
There was a problem hiding this comment.
Update the remaining eviction paragraph
This accurately introduces the calm overlay rotation, but it now directly contradicts the later “The eviction/409 interplay” paragraph, which still says ci_status uses an alert with no dwell contract, redraws every poll, and reasserts after receiving 409s. In the reviewed ci_status/main.py, failure and stuck frames instead pass through the overlay dwell/silence gate at PRIORITY_OVERLAY; leaving the old paragraph unchanged gives operators two incompatible descriptions of current behavior in the same section.
Useful? React with 👍 / 👎.
Follow-up to #20.
ci_statusno longer draws atPRIORITY_ALERT(60) — its failure/stuck frames rotate at the overlay tier (21). This softens the now-dated "a persistent CI failure alert buries the calendar" framing in the escalation-ladder section so it reflects the new model (the calendar's climb above the overlay tier is what keeps an imminent event visible). Docs only — no behavior change.🤖 Generated with Claude Code