gastownhall/beads · error
error finding descendants: %w
Error message
error finding descendants: %w
What it means
Once the parent is verified in the proxied path, gatherProxiedHierarchical calls uw.IssueUseCase().GetDescendants; any error from that call is wrapped as 'error finding descendants'.
Source
Thrown at cmd/bd/list_show_filter_modes.go:275
// Hierarchical --parent walks use an unlimited per-level query; never page-truncated.
displayPrettyListWithDepsMode(treeIssues, false, depsByIssueID, in.depsMode, false, in.ReadyFlag)
printSkipLabelsFooter(in.SkipLabels)
return nil
}
func gatherProxiedHierarchical(ctx context.Context, uw uow.UnitOfWork, parentID string, baseFilter types.IssueFilter) ([]*types.Issue, error) {
parent, err := uw.IssueUseCase().GetIssue(ctx, parentID)
if err != nil {
return nil, fmt.Errorf("error checking parent issue: %w", err)
}
if parent == nil {
return nil, fmt.Errorf("parent issue %q not found", parentID)
}
descendants, err := uw.IssueUseCase().GetDescendants(ctx, parentID, baseFilter)
if err != nil {
return nil, fmt.Errorf("error finding descendants: %w", err)
}
if len(descendants) == 0 {
return nil, nil
}
out := make([]*types.Issue, 0, len(descendants)+1)
out = append(out, parent)
out = append(out, descendants...)
return out, nil
}
type currentIssueSearcher interface {
SearchIssues(context.Context, string, types.IssueFilter) ([]*types.Issue, error)
}
// resolveCurrentIssueID determines the current active issue for the agent.
// Priority: in-progress assigned to actor > hooked > last touched.
func resolveCurrentIssueID(ctx context.Context) string {View on GitHub (pinned to 71377f2769)
Solutions
- Retry the command after checking the wrapped root cause
- Verify remote server health and connectivity
- Check server-side logs for the underlying query error
- Reduce query scope (narrow baseFilter) if timeouts occur on huge graphs
Defensive patterns
Strategy: retry
Try / catch
out, err := exec.Command("bd", "list", "--parent", id).CombinedOutput()
if err != nil && strings.Contains(string(out), "error finding descendants") {
// exponential backoff retry; check server logs if persistent
} Prevention
- Bound hierarchy depth to avoid timeout-prone queries
- Monitor remote Dolt server health
- Narrow filters to reduce query load
When it happens
Trigger: Server-side descendant query failure while running `bd list --parent <id>` in server/proxy mode: remote storage error, query timeout on deep hierarchies, or use-case-level validation failures.
Common situations: Remote Dolt server overloaded or timing out; network interruption mid-query; server running an incompatible schema version; very large dependency graphs.
Related errors
- error checking parent issue: %w
- failed to list projects: %w
- failed to remove backup: %w
- clone from remote: %w
- dolt server unreachable at %s:%d (is dolt sql-server running
AI-assisted analysis of gastownhall/beads@71377f2769 (2026-08-30).
Data as JSON: /api/errors/afea03fb59ee5cff.
Report an issue: GitHub.