search: count --all-repos in the empty-query fast-fail guard · Entire
search: count --all-repos in the empty-query fast-fail guard
2f7fe5d→main·
alishakawaguchi·1mo ago·1 file·+4 added/-1 removed
The non-interactive "query required" guard built its own hasFilters without
--all-repos, so entire search --all-repos --json (or piped/accessible) with
an empty query errored instead of running a wildcard search. Mirror
search.Config.HasFilters here (the guard runs before git/auth, so it can't
call searchCfg.HasFilters() directly).
Co-Authored-By: Claude Opus 4.8 (1M context) noreply@anthropic.com
Sessions
34b6a5be974fView transcript
[?
Redesign Search TUI Table with Master-Detail LayoutClaude Code·Opus 4.8[1m]·2 steps](/content/gh/entireio/cli/session/a891fc9c-9a5b-4cbb-8341-7bb4230da520#timeline-34b6a5be974f/index.html)
Changes
1
cmd/entire/cli
Msearch_cmd.go+4/-1
80 unmodified lines
81
82
83
84
84
85
86
87
88
89
90
80 unmodified lines
w := cmd.OutOrStdout()
isTerminal := interactive.IsTerminalWriter(w)
hasFilters := authorFlag != "" || dateFlag != "" || branchFlag != "" || len(repos) > 0
// Mirror search.Config.HasFilters (incl. --all-repos) so an empty
// query with only filters isn't rejected here. This guard runs
// before git/auth, so it can't call searchCfg.HasFilters() directly.
hasFilters := authorFlag != "" || dateFlag != "" || branchFlag != "" || len(repos) > 0 || allRepos
// Fast-fail: no query + non-interactive mode = error (before auth/git checks)
if query == "" && !hasFilters && (jsonOutput || !isTerminal || IsAccessibleMode()) {