beadboard/tests/components
zenchantlive 512a836db4 feat(graph): add Assign button and archetype dropdown to GraphNodeCard
## The Collaboration Story
User requested ability to assign agent archetypes to tasks directly from
graph nodes. This was the core UI feature request.

## Design Decisions Made Together
1. **Placement**: We decided to put the assign UI at the bottom of the card
   to not interfere with existing status/badges display
2. **Pattern**: Used Radix dropdown-menu (already in project) for consistency
3. **Visual feedback**: Added loading spinner during API calls, success/error
   messages that auto-dismiss
4. **Closed tasks**: Excluded closed tasks from assignment (logical constraint)

## Issues We Encountered
- Initially only added POST handler for assignment
- User pointed out we needed DELETE for unassign - added that
- The unassign button (X) needed to call DELETE not POST

## API Changes
- Added DELETE handler to /api/swarm/prep for removing agent assignments
- Uses 'bd label remove' under the hood

## What the UI Shows
- Dropdown with available archetypes
- Badge showing assigned archetype name with color
- X button to unassign (on each badge)
- 'Assigned' label on already-assigned archetypes in dropdown

## Test Coverage
- Added graph-node-assign.test.tsx with 6 TDD tests

## Beads: beadboard-brq (closed)
2026-02-24 16:14:56 -08:00
..
graph feat(graph): add Assign button and archetype dropdown to GraphNodeCard 2026-02-24 16:14:56 -08:00
sessions chore: add utility scripts and additional test coverage 2026-02-15 21:19:31 -08:00
shared refactor: BaseCard hard style shadow, SocialCard blocking lists, AgentAvatar ZFC states 2026-02-16 22:41:56 -08:00
social feat(ui3): elegant earthy task feed redesign 2026-02-16 23:20:47 -08:00
swarm feat(swarm): modify unified-shell to render swarm layout 2026-02-20 17:25:05 -08:00
unified-shell.test.tsx chore: checkpoint before DAG views UX overhaul 2026-02-22 20:43:59 -08:00