fix(ci): shorten batch-fold subjects past 72 - #1802
ScriptedAlchemy wants to merge 39 commits into
Conversation
The review asked to add a no-`format`-injection variant of `handle_real_server_tool_call_raw` to `support.rs`, use it from `derives_test.rs`, and revert `CaptureTransport.incoming` to private. The local dispatch in `call_derives` only differed from the existing helper by skipping the default `format` injection, which its explicit `format: "markdown"` and bare-argument error cases depend on. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
# Conflicts: # crates/tracedecay-privacy/src/rules.rs
# Conflicts: # crates/tracedecay-dashboard-api/src/delivery_api.rs # crates/tracedecay-privacy/src/rules.rs
# Conflicts: # crates/tracedecay-privacy/src/rules.rs
# Conflicts: # crates/tracedecay-privacy/src/rules.rs
# Conflicts: # crates/tracedecay-privacy/src/rules.rs
# Conflicts: # crates/tracedecay-privacy/src/rules.rs
# Conflicts: # crates/tracedecay-privacy/src/rules.rs # crates/tracedecay/tests/mcp_suite/mcp_handler_test.rs
# Conflicts: # crates/tracedecay-privacy/src/rules.rs
# Conflicts: # crates/tracedecay-privacy/src/rules.rs
…vior # Conflicts: # crates/tracedecay-privacy/src/rules.rs
# Conflicts: # crates/tracedecay-privacy/src/rules.rs # crates/tracedecay/tests/mcp_suite/mcp_handler_test.rs
# Conflicts: # crates/tracedecay-privacy/src/rules.rs
# Conflicts: # crates/tracedecay-privacy/src/rules.rs # crates/tracedecay/tests/mcp_suite/mcp_handler_test.rs
The review found the two added lines landed between `dependency_hint_test` and `edit_test` instead of their alphabetical slot; the mod list is kept sorted (rustfmt `reorder_modules`). Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
# Conflicts: # crates/tracedecay-privacy/src/rules.rs
# Conflicts: # crates/tracedecay-privacy/src/rules.rs # crates/tracedecay/tests/mcp_suite/mcp_handler_test.rs
The review found `tracedecay_grep_reports_literal_matches_and_typed_failures` ended without `fixture.harness.shutdown().await;`, unlike its siblings in the suite, leaving the production composition to be torn down implicitly. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
# Conflicts: # crates/tracedecay-code-index/tests/code_index_suite/production_orchestration.rs # crates/tracedecay-privacy/src/rules.rs # crates/tracedecay/tests/mcp_suite/mcp_handler_test.rs
# Conflicts: # crates/tracedecay-privacy/src/rules.rs
# Conflicts: # crates/tracedecay-privacy/src/rules.rs # crates/tracedecay/tests/mcp_suite/mcp_handler_test.rs
The review required `git_repository()` to use `common::git_program()`
instead of a bare `Command::new("git")`, matching the rest of the suite so
the fixture does not depend on an ambient `git` on PATH. The merge also
placed `mod project_list_test;` out of its alphabetical slot.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
# Conflicts: # crates/tracedecay/tests/mcp_suite/mcp_handler_test.rs
The review required deleting `.audit/ast-grep-figure.summary.txt` and `.audit/ast-grep-rewrite.tsv`; they are one-off scratch output from the authoring session, not part of the test. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
# Conflicts: # crates/tracedecay-privacy/src/rules.rs # crates/tracedecay/tests/mcp_suite/mcp_handler_test.rs
# Conflicts: # crates/tracedecay/tests/mcp_suite/mcp_handler_test.rs
The review found `IsolatedEnv::acquire()` was bound inside `open_port_order_project()`, so the guard dropped as soon as the fixture was returned and the tests only passed under `--test-threads=1`. Acquire it in each test body instead, matching `affected_tests_behavior_test.rs`. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
# Conflicts: # crates/tracedecay-privacy/src/rules.rs # crates/tracedecay/tests/mcp_suite/mcp_handler_test.rs
# Conflicts: # crates/tracedecay-privacy/src/rules.rs # crates/tracedecay/tests/mcp_suite/support.rs
`cargo clippy --workspace --all-targets --locked -- -D warnings` (the CI Clippy job) fails on `Duration::from_secs(60)` with `clippy::duration_suboptimal_units`. `Duration::from_mins` is the form the rest of the workspace already uses for minute-scale deadlines. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
# Conflicts: # benchmark_data/runtime/tests/test_lifecycle.py # crates/tracedecay-dashboard-api/src/delivery_api.rs # crates/tracedecay-privacy/src/rules.rs # crates/tracedecay/tests/mcp_suite/mcp_handler_test.rs
The review required replacing the file-local `wait_for_graph` status poll with `crate::support::warm_code_index_search(&server, "target")`, matching 1622/1628. The fixture exposes a server through `fixture.harness.server(&fixture.project_root)`, so the swap is direct and the helper also waits on the search generation, not only graph serving. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
…ority" This reverts commit 51402cd.
The registry search ORs whitespace-separated tokens through `LIKE`. The injection probe `search-alpha' OR '1'='1` therefore also searched for the substring `OR`, which matched both fixture roots whenever their shared temp directory drew a name containing it (`.tmpXoRyz`, ~2% of runs; CI run 35408468113 TRY 1). Drop the whitespace so the probe stays a single token that breaks the quote but can match no fixture field. Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
# Conflicts: # crates/tracedecay-mcp/src/handlers/hook_runtime/ingest.rs # crates/tracedecay-mcp/src/handlers/hook_runtime/ingest/kernels.rs
ci: integration batch B (29 reviewed prove-* PRs with follow-up fixes)
Shorten the three non-merge follow-ups that failed header-max-length. Trees match master; only those subjects changed. Co-authored-by: Zack Jackson <ScriptedAlchemy@users.noreply.github.com>
|
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. |
|
Review from the master-repair sweep: recommending we close this one rather than merge it.
Happy to be overruled if there is a constraint I am missing, but as it stands I will not merge a history rewrite. |
|
Cancelled this branch's CI run 35426196773 to free the shared runner queue (10 runs deep, 2 concurrent); see the review comment above for why the PR itself should be closed rather than merged. |
|
Closing: this branch is a history rewrite of 39 already-merged commits with an empty tree diff against master (+0/-0). The commit-header length rule is enforced going forward by the commit-msg hook and by scripts/lint-commit-range.mjs in CI; rewriting landed history is not something we merge. |
Summary
header-max-lengthon master push3f71bccb2d(run 35423924082).92b22f7(73) → 69,4c5275f(75) → 67,943f641(85) → 48. Bodies, trees, and the 72-character rule are unchanged.pull_requestin.github/workflows/ci.yml. test(ci): close three master-tip readiness races #1794 touches different test files and is not absorbed.Motivation
tip-commit-linton the #1796 merge validatedb4aa02ae..3f71bccband failed three non-merge fold follow-ups. Those objects are already onmaster, so their SHAs cannot be edited in place. This branch rebuilds the 38 descendant commits with the same trees and the three subjects shortened, then merges that history ontomaster. The resulting tree matches3f71bccb2d. The next master push lints3f71bccb..<merge>, which contains the replacements and not the already-reachable originals.92b22f71996f(73)80dab83216da(69)fix(pr-1633): warm diagnose fixture through the shared support helper4c5275f31a54(75)6c0be4c3d629(67)fix(pr-1740): resolve git through git_program and sort the mod line943f641111e7(85)f62153bbc929(48)fix(pr-1617): share the exact-arguments dispatchworkflow_dispatchSHA:c60f23a1d9f08fbea8daa043d81fc9c045b33642Do not merge from automation; the tip SHA above is the dispatch target.
Changes
git diff 3f71bccb2d HEADis empty.Test plan
node scripts/lint-commit-range.mjs --repository . 3f71bccb2dba20a3271ba4bb1fc2e2fcc21a2ca5 c60f23a1d9f08fbea8daa043d81fc9c045b33642exits 0 (10 non-merges, the three replacements included)git show --no-patch --format=%B <replacement> \| npm run lint:commitexits 0 for80dab83216da,6c0be4c3d629, andf62153bbc929cargo nextest/ clippy not re-run: the tree is byte-identical to the current tip, so they cannot changeChecklist
.envfiles includedCHANGELOG.mdupdated (history-only; no user-facing change)