story-kit: create 173_bug_pipeline_board_lozenges_dont_update_on_agent_state_changes
This commit is contained in:
@@ -0,0 +1,28 @@
|
||||
---
|
||||
type: bug
|
||||
title: Pipeline board lozenges don't update on agent state changes
|
||||
---
|
||||
|
||||
# Bug 173: Pipeline board lozenges don't update on agent state changes
|
||||
|
||||
## Description
|
||||
|
||||
The pipeline board (`LozengeFlyContext`) only refreshes on `WorkItemChanged` and `PipelineState` WebSocket events (file moves between stages). It does not react to `AgentStateChanged` events. This means lozenge colors (amber=unassigned, green=agent working) don't update in real-time when agents are assigned or complete.
|
||||
|
||||
The coder assignment appeared to work because the file moved from `1_upcoming` to `2_current` at the same time, triggering a `WorkItemChanged` refresh. But QA assignment doesn't move the file (it's already in `3_qa`), so the lozenge stays amber until a full page refresh.
|
||||
|
||||
## Root cause
|
||||
|
||||
`LozengeFlyContext.tsx` does not consume `agentStateVersion` (or any equivalent signal from `AgentStateChanged` WebSocket events). Only `AgentPanel.tsx` reacts to that signal via `stateVersion`.
|
||||
|
||||
## Key files
|
||||
|
||||
- `frontend/src/components/LozengeFlyContext.tsx` — needs to react to `AgentStateChanged`
|
||||
- `frontend/src/components/Chat.tsx:1074` — passes `stateVersion={agentStateVersion}` to `AgentPanel` but not to the pipeline board
|
||||
- `frontend/src/components/AgentPanel.tsx:312` — example of how `stateVersion` triggers a re-fetch
|
||||
|
||||
## Acceptance Criteria
|
||||
|
||||
- [ ] Pipeline board re-fetches and updates lozenge colors when an `AgentStateChanged` event is received
|
||||
- [ ] QA agent assignment turns the lozenge green without a page refresh
|
||||
- [ ] All tests pass
|
||||
Reference in New Issue
Block a user