gastownhall/beads · error

resolving ID %s: no issue found matching %q

Error message

resolving ID %s: no issue found matching %q

What it means

Thrown when every resolution path (local store, prefix routing, contributor auto-routing) fails to find an issue matching the given ID during `bd close`. The message repeats the raw argument so the user can see exactly which input was unmatched.

Source

Thrown at cmd/bd/close.go:756

			return nil, func() {}, fmt.Errorf("resolving ID %s: %w", id, err)
		}
		// Write-intent: a prefix-routed target opens writable so the close
		// commits on the target head (#4141). Contributor auto-routing below
		// stays read-only: it hydrates foreign projects that must not be mutated.
		if r, err := resolveViaPrefixRoutingWithAccess(ctx, id, true); err == nil {
			results = append(results, r)
			continue
		}
		// Contributor auto-routing uses one shared store for the whole batch.
		if rs, rerr := ensureShared(); rerr == nil {
			if r, err := resolveAndGetFromStore(ctx, rs, id, true); err == nil {
				// Per-id RoutedResult does not own the shared handle; cleanup() does.
				results = append(results, r)
				continue
			}
		}
		cleanup()
		return nil, func() {}, fmt.Errorf("resolving ID %s: no issue found matching %q", id, id)
	}
	return results, cleanup, nil
}

View on GitHub (pinned to 71377f2769)

Solutions

  1. Run `bd list` or `bd show <prefix>` to find the correct full ID
  2. Check for typos — copy the ID from `bd ready` or `bd list` output instead of typing it
  3. Verify you're in the right workspace/repo; prefix-routed IDs only resolve if the target project is reachable
  4. If the issue should exist, run `bd dolt pull` to sync and confirm it wasn't deleted

Example fix

// before
bd close bd-42a          // no match
// after
bd list | grep bd-42     # find exact ID
bd close bd-42a1
Defensive patterns

Strategy: validation

Validate before calling

// confirm the ID resolves before closing
bd show "$ID" >/dev/null || { echo "ID $ID not found"; exit 1; }

Prevention

When it happens

Trigger: Running `bd close <arg>` where `<arg>` matches no issue: wrong ID, truncated/partial ID with no unique match, closing an already-deleted issue, or referencing an issue in another repo not reachable via prefix routing.

Common situations: Typo in the issue ID, closing an issue from a teammate's project whose database isn't hydrated, or the issue was deleted/synced away.

Related errors


AI-assisted analysis of gastownhall/beads@71377f2769 (2026-08-30). Data as JSON: /api/errors/8505185615e2345e. Report an issue: GitHub.