Repository navigation
dashboard: call dashboard.cards act after the draw, and let a later provider win over the demo ca... - #969
Conversation
The view recorded nothing: it called act mid-draw and kept reading the card list act may free. It now records the picked (card, action) and calls act once the stage is drawn. The demo cards were registered as the service at load, shadowing a provider loaded later. They are now the view's fallback, never registered. Agent-Team: linux Worker: claude Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
PM note: how this PR will be handledWhat it is for: dashboard: act-after-draw Rules that apply: touches build scripts. Things to watch (checked by rule):
What happens next:
A living status comment below is kept current. Nothing here is a merge decision. |
Where this PR standsStage: Done: approved What the PM needs before approving (ticks as it is met; the full CI runs only at the end, after the reviews are clean):
Rules that apply: touches build scripts. Reviews at the current commit (
2 earlier reviews are for older commits and will be redone. Latest fixes comment: https://github.com/fizzyedit/work/issues/632#issuecomment-6475233058 (4 findings answered) Updated 2026-10-30 04:13 UTC by the PM. This comment is edited in place. |
Agent-Team: linux Worker: codex
Part of fizzyedit/work#506
Rework: work#648
Goal
Answer macos/claude F1–F4 on PR #969, part of fizzyedit/work#648.
What changed and why
Namespace dashboard action tags by card slot and action index so shared provider action IDs cannot collide during slides. Exercise actual dashboard registration in the late-provider test. Wrap the demo documentation and shorten the action-ordering comment.
How it was verified
Linux headless dvui test draws both cards with identical action IDs and asserts distinct widget tags. Restoring bare tags produces a duplicate-tag error; restoring demo registration fails the late-provider assertion. With fixes restored, the card/dashboard integration selection passes 100/100 steps and 38/38 tests. Formatting, lint, native build, unit tests, web compile and SDK fingerprint pass; full integration reaches 98/100 steps with four socket PermissionDenied failures documented in GATES.md. No interactive UI or screenshot was captured.
Not done / follow-ups
Harness must commit, publish and post the FIXES response. Full socket integration requires the harness's unrestricted environment. No SDK boundary or animation changes.
Changes (8 files, +205/-409)
Gates: 6 of 6 passed
scripts/check-fmt.sh(exit 0)scripts/zb build --summary all(exit 0)scripts/zb build test --summary all(exit 0)scripts/zb build test-integration --summary all(exit 0)scripts/zb build check-web --summary all(exit 0)scripts/zb build test-sdk-version --summary all(exit 0)