Repository navigation
Conversation
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
7 of 8 tasks
Owner
Author
|
Included in #454, merged as b6f4e75. The commits from reviewed head |
8 tasks done
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
A
--skip-gitignoresearch could return incomplete results after a local or daemon reindex failed. Later queries could miss ignored files even after the error was fixed. Local--all-indicessearches also missed ignored files when an index used the default ignore mode.What changed
Report metadata and reindex failures, including the full daemon error chain. Compare the requested mode with the last successfully indexed mode and index health so the next query retries a failed or interrupted reindex. Prepare each selected workspace before local
--all-indicessearches, using the daemon when it owns indexing. Report daemon search errors instead of silently falling back, and reject a disconnected-daemon fallback if a selected index is incomplete or excludes ignored files.To reproduce on Unix as a non-root user:
The first search reports the permission error. The second finds
secret.txtwithout an explicit reindex.Validation
cargo fmt -- --check,cargo clippy --locked --all-targets -- -D warnings,cargo test --locked --test skip_gitignore, thelocal_reindex_persists_skip_gitignore_falselibrary test, and./test.sh --quickran on macOS. The regression checks repeated failures and recovery for local and live-daemon literal and hybrid searches, including local all-indices and daemon-assisted lexical search. It checks disconnected-daemon fallback and unfinished publication recovery. The full./test.shsuite and neural E2E were not rerun for this focused change.A temporary worktree combined the three PR branches. It ran
cargo test --locked --test skip_gitignore --test literal_cli, the E2E workflow unit tests, andscripts/e2e_all.sh --binary <debug-binary>with an overlongTMPDIR. The browser used one headless worker.The dependency audit fails on the unchanged main-branch lockfile because of existing
rustlsandzipadvisories.Evidence
Not applicable.
Risk
An index with a missing or mismatched mode marker or an unfinished publication is rebuilt before a local
--skip-gitignorequery. Local--all-indicessearches can rebuild multiple workspaces, prompt before indexing broad roots, and fail if any required reindex fails. Revert this change to restore the previous behavior.Downsides
A daemon error for
--skip-gitignorenow fails the query instead of trying local search, even when a local fallback might have worked. A disconnected daemon can still fall back when the selected indexes are healthy and were successfully built in the requested mode.Checklist
./test.sh --quickpassed during iteration../test.shpasses, or Validation explains narrower proportional checks.