fix(ui): a session's port chip says when a port is waiting on you #117
No reviewers
Labels
No labels
bug
duplicate
enhancement
help wanted
invalid
question
wontfix
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
lz/agent-nexus!117
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "fix/pending-ports-chip"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
notify-previewlands a port aspendingand forwards nothing until the operator approves it — but the sidebar chip counted pending and approved together and painted both in the same accent. A session with a dead port looked exactly like one whose ports work.The chip now goes amber and says so:
2 ports · 1 pending. Same vocabulary as the Ports panel's ownpending/approve, and the same signal the command palette's "Needs you" group already surfaced frompendingPreviews. The sidebar was the one surface of the three staying silent.A second gap found while looking
The workspace shell row had no ports chip at all.
/workspace's previews belong to the shell's session row (seepreviewsForWorker), so a port registered from the workspace shell — pending included — was invisible in the sidebar entirely. Both rows now render one shared snippet rather than two copies that could drift.Notes
pendingPortCountis a loop rather thanpendingPreviews().filter(...)for the same reasonportCountbeside it is one: it runs per row per render..chip.wrnis written for a label, so it carries neither the fill nor the pointer that make.chip.accread as a control — this chip is a button in both states and needed both restored for the amber one.Verification
Browser, against a seeded instance covering all three cases, measured off the live DOM:
1 port · 1 pendingrgb(255,179,71)amber2 portsrgb(205,220,57)accent2 ports · 1 pendingThe per-session guard is negative-controlled: dropping the session test from the filter fails the new test with
expected 1 to be +0. A guard that cannot fail is worse than none.Gates: typecheck 0 errors, lint clean, 121 files / 1202 tests.
bad62c594ad74e0c99dc