From b0d185b88efbb4bd66a189b786f5cfe63ff7dbc6 Mon Sep 17 00:00:00 2001 From: Steve Yegge Date: Sun, 28 Dec 2025 16:15:43 -0800 Subject: [PATCH] fix: Correct JSON field name for swarm task loading (gt-552hb) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit The loadTasksFromBeads() function was reading 'dependents' from bd show output, but the actual JSON field is 'dependencies'. This caused swarms to have empty task lists, requiring manual dispatch. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 --- internal/swarm/manager.go | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/internal/swarm/manager.go b/internal/swarm/manager.go index 77815805..68836d5e 100644 --- a/internal/swarm/manager.go +++ b/internal/swarm/manager.go @@ -292,15 +292,15 @@ func (m *Manager) loadTasksFromBeads(epicID string) ([]SwarmTask, error) { // Parse JSON output - bd show returns an array var issues []struct { - ID string `json:"id"` - Title string `json:"title"` - Status string `json:"status"` - Dependents []struct { + ID string `json:"id"` + Title string `json:"title"` + Status string `json:"status"` + Dependencies []struct { ID string `json:"id"` Title string `json:"title"` Status string `json:"status"` DependencyType string `json:"dependency_type"` - } `json:"dependents"` + } `json:"dependencies"` } if err := json.Unmarshal(stdout.Bytes(), &issues); err != nil { @@ -311,10 +311,10 @@ func (m *Manager) loadTasksFromBeads(epicID string) ([]SwarmTask, error) { return nil, fmt.Errorf("epic not found: %s", epicID) } - // Extract dependents as tasks (issues that depend on/are blocked by this epic) + // Extract dependencies as tasks (issues that depend on/are blocked by this epic) // Accept both "parent-child" and "blocks" relationships var tasks []SwarmTask - for _, dep := range issues[0].Dependents { + for _, dep := range issues[0].Dependencies { if dep.DependencyType != "parent-child" && dep.DependencyType != "blocks" { continue }