gastownhall/beads · error
not found: %s
Error message
not found: %s
What it means
resolvePartialIDDirect falls through to this error when neither a direct ID lookup nor a prefix search finds any matching issue — the given ID/prefix does not exist in the store.
Source
Thrown at cmd/bd/wisp.go:385
func resolvePartialIDDirect(ctx context.Context, partial string) (string, error) {
// Try direct lookup first
if issue, err := store.GetIssue(ctx, partial); err == nil {
return issue.ID, nil
}
// Search by prefix
issues, err := store.SearchIssues(ctx, "", types.IssueFilter{
IDs: []string{partial + "*"},
})
if err != nil {
return "", err
}
if len(issues) == 1 {
return issues[0].ID, nil
}
if len(issues) > 1 {
return "", fmt.Errorf("ambiguous ID: %s matches %d issues", partial, len(issues))
}
return "", fmt.Errorf("not found: %s", partial)
}
var wispListCmd = &cobra.Command{
Use: "list",
Short: "List all wisps in current context",
Long: `List all wisps (ephemeral molecules) in the current context.
Wisps are issues with Ephemeral=true in the main database. They are stored
locally but not synced via git.
The list shows:
- ID: Issue ID of the wisp
- Title: Wisp title
- Status: Current status (open, in_progress, closed)
- Started: When the wisp was created
- Updated: Last modification time
Old wisp detection:View on GitHub (pinned to 71377f2769)
Solutions
- Verify the ID with `bd show <id>` or `bd list`
- Use `bd wisp list` to confirm the wisp still exists (it may have been GC'd/burned)
- Check you're operating in the correct database/repo context
Example fix
// before bd wisp create bd-wxyz # does not exist // after bd wisp list # find the correct ID, then retry
Defensive patterns
Strategy: validation
Validate before calling
if _, err := store.GetIssue(ctx, id); err != nil {
return fmt.Errorf("issue %s not found; run 'bd list' to find the correct ID", id)
} Try / catch
if err := runWispCreate(id); err != nil {
if strings.HasPrefix(err.Error(), "not found: ") {
// prompt user to check the ID or list existing wisps
}
} Prevention
- Copy IDs from `bd show`/`bd list` output rather than typing them
- Remember wisps are ephemeral — verify with `bd wisp list` that it still exists
- Confirm you are in the right repo/database context
When it happens
Trigger: `bd wisp create <id>` with a mistyped, already-closed/GC'd, or from-another-database issue ID where the prefix search returns zero rows.
Common situations: Typo in the ID; wisp already burned/GC'd; referencing an issue that lives in a different repo/database or hasn't been synced to this clone; stale script referencing deleted wisps.
Understand the failure class
Background: "Not found" and "does not exist" errors: why "Task not found", "No such folder", and "Can't find" fire when a lookup comes back empty — this error's family across 14 libraries.
Related errors
- resolving --deps target %q: %w
- ErrAmbiguousID
- resolving ID %s: no issue found matching %q
- parent issue %s not found
- failed to resolve %s: %w
AI-assisted analysis of gastownhall/beads@71377f2769 (2026-08-30).
Data as JSON: /api/errors/683c1603408e74db.
Report an issue: GitHub.