gastownhall/beads · error
issue '%s' not found: %v
Error message
issue '%s' not found: %v
What it means
Error from runSwarmStatusProxiedServer in cmd/bd/swarm_proxied_server.go:116. Fires when utils.ResolvePartialID cannot resolve the argument passed to `bd swarm status` in proxied-server mode into a concrete issue ID. The resolver's own error is appended after the colon, distinguishing not-found from ambiguous-prefix cases.
Source
Thrown at cmd/bd/swarm_proxied_server.go:116
// runSwarmStatusProxiedServer ports `bd swarm status` to proxied-server mode.
func runSwarmStatusProxiedServer(_ *cobra.Command, ctx context.Context, args []string) error {
evt := metrics.NewCommandEvent("swarm-status")
defer func() {
if c := metrics.Global(); c != nil {
c.CloseEventAndAdd(evt)
}
}()
if uowProvider == nil {
return HandleErrorRespectJSON("proxied-server UOW provider not initialized")
}
status, err := uow.RunTxRead(ctx, uowProvider, func(ctx context.Context, uw uow.UnitOfWork) (*SwarmStatus, error) {
r := uowMolReader{uw: uw}
issueID, err := utils.ResolvePartialID(ctx, r, args[0])
if err != nil {
return nil, fmt.Errorf("issue '%s' not found: %v", args[0], err)
}
issue, err := uw.IssueUseCase().GetIssue(ctx, issueID)
if gateProxiedNotFound(err) || (err == nil && issue == nil) {
return nil, fmt.Errorf("issue '%s' not found", issueID)
}
if err != nil {
return nil, fmt.Errorf("failed to get issue: %v", err)
}
var epic *types.Issue
if issue.IssueType == "molecule" && issue.MolType == types.MolTypeSwarm {
deps, err := r.GetDependencyRecords(ctx, issue.ID)
if err != nil {
return nil, fmt.Errorf("failed to get swarm dependencies: %v", err)
}
for _, dep := range deps {View on GitHub (pinned to 71377f2769)
Solutions
- Confirm the exact ID with `bd list` or `bd show <full-id>`.
- Use the full ID to eliminate prefix ambiguity.
- Sync if the issue may exist remotely: `bd dolt pull`.
- Read the resolver message after the colon — "multiple matches" means lengthen the prefix.
Example fix
// before bd swarm status bd-1 // matches many issues // after bd swarm status bd-1237
Defensive patterns
Strategy: validation
Validate before calling
bd show "$ISSUE_ID" >/dev/null 2>&1 && bd swarm status "$ISSUE_ID" || echo "resolve the full ID: bd list"
Try / catch
if err != nil && strings.Contains(err.Error(), "not found") {
// lengthen the prefix or look up the full ID via bd list
} Prevention
- Use full issue IDs in scripts
- Sync before querying issues created elsewhere
- Handle ambiguous-prefix resolver messages by extending the prefix
When it happens
Trigger: `bd swarm status <prefix-or-id>` where the prefix matches nothing, is ambiguous, or the resolver's backing lookup errors in proxied-server mode.
Common situations: Typo'd or truncated ID; prefix collision between multiple issues; issue exists only on another machine / not yet synced; issue deleted after being noted in a plan.
Related errors
AI-assisted analysis of gastownhall/beads@71377f2769 (2026-08-30).
Data as JSON: /api/errors/5b722dcfdbfc95f6.
Report an issue: GitHub.