integration: search hardening and CI integrity (#38, #75, #80, #81) - #96
Merged
tannerwendland-db merged 6 commits intoJul 24, 2026
Merged
Conversation
This was referenced Jul 24, 2026
…98) Add a `webui-verify-dist` Makefile target that rebuilds the frontend and fails if the committed dist/ diverges from src/, wired into CI's webui job. Uses `git status --porcelain` (not `git diff --exit-code`) so untracked new hashed chunks are caught, not just modified/deleted files. Updates the three docs that claimed no such check existed. Refs #80
A Postgres-invalid POSIX regex (e.g. /[/), negated or not, through search_code, symbol_search, or semantic_search's repo:/file: filters previously reached the database raw and escaped as an uncaught sqlalchemy.exc.DataError instead of a recoverable payload field. Adds a typed RegexInvalidError mapped by a single reraise_or_recoverable(error: DBAPIError) mapper shared across grep/symbols/ references/semantic, surfaced as a new additive `regex_invalid` field on the search_code and semantic_search envelopes, and mapped to a 400 with the Postgres message on the webui /api/search and /api/semantic routes. Refs #75
Switch grep's highlight rescan from stdlib re to the regex module and thread a per-request wall-clock match budget (default 2000ms, CODE_SEARCH_MATCH_BUDGET_MS) through grep_search. A trip stops scanning, keeps fully-scanned files, and surfaces truncated=True + truncation_reason="match_budget" instead of stalling the event loop on a catastrophic-backtracking pattern.
2 tasks
…101) README.md and app/AGENTS.md still said Python `re` in two spots that #38's commit (f27565b) missed when it switched the rescan to the `regex` module elsewhere. webui/frontend/README.md claimed CI does not run a Node build step, which #80's commit (9c4f679) made false by adding make webui-verify-dist to the webui CI job; the point that production deploy doesn't need Node at deploy time is preserved.
IceRhymers
marked this pull request as ready for review
July 24, 2026 14:35
tannerwendland-db
approved these changes
Jul 24, 2026
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.
Search hardening and release integrity
Coordinated delivery for #38, #75, #80, and #81 through
integration/search-hardening-and-ci-integrity.Delivery model
masterremains protected. This PR remains a draft and must be reviewed and merged by a human maintainer only.Delivered changes
9c4f679dist/is stale.e90cac0commit:query-corpus parity coverage.bd51c16regex_invalidpayloads.f27565bregexhighlight scanning with cursor-safematch_budgettruncation.8bdef8cre/regexand CI-build wording.Final verification
Combined integration head:
8bdef8c441ef4e97bf252352cb76ded1e93be774webuijob ran the new committed-dist freshness gate successfully.CI_LAKEBASE_ENABLEDgate; this predates this work.uv sync --all-groups --all-extrasmake lint✅make test✅ — 1082 passedmake webui-test✅ — 209 passedmake webui-verify-dist✅ — production build reproduced the committeddist/with zero drift.Integration exit criteria
Human handoff
Please review the combined diff and this validation record, then merge this draft PR into
masterwhen satisfied. No agent will merge it.