Repository navigation
perf(code-index): skip unrelated sealed evidence on sparse edits - #4789
ScriptedAlchemy wants to merge 15 commits into
Conversation
|
|
Review finding (source-level, not a completed CI result): the new serialized |
|
#4520 ownership / merge coordination: hold PR #4789; do not auto-merge it from the hourly general PR sweep. This is an issue-specific code-index performance fix, not Kev/decision-model work. It was marked ready only so the repository's normal PR workflow schedules the Bazel Linux authority (draft PRs skip that job). Correctness, canonical golden bytes, independent review, and a real 6.6k-file benchmark are not all proven yet. Leave #4520 open and this PR unmerged until those are verified. Current source commits: d009fee (strict revision 22 + rustfmt) and 52db4ab (filterless seal refusal regression). Refs #4520. |
Bind parent-evidence read assertions, cold-derived chunk deltas, and incoming-edge repoint checks to the same sparse successor. Require actual dependent reads, unchanged caller occurrences, positive chunk changes and reuse, and exact nonzero fan-in/fan-out. Refs #4520
|
Published c54dc47, preserving the concurrent formatting repair f1c9564 as its sole parent. Branch update used expected-head, force=false; no duplicate PR or rewritten history. The new parser-backed Validation is still pending, not a claimed pass. Hosted CI for this exact head is https://github.com/ScriptedAlchemy/tracedecay/actions/runs/42435823939. The previous head passed repository formatting/gates and Clippy, but those results do not validate this new test. No local Rust/Bazel execution was possible, and Cargo was not invoked. Keep the merge hold. The canonical manifest state-digest golden must still be obtained from actual Bazel output and reviewed, not guessed or loosened. The real 6.6k-file before/after workload and independent review remain outstanding. The existing native test workflow requires manual Refs #4520 |
Convert SHA-256 bytes to a stable file-occurrence hex prefix instead of requiring LowerHex on GenericArray; addresses hosted Rust E0277 in the sparse publication integration test. Refs #4520
|
Refs #4520 — CI repair published as |
A cold build starts with generation sequence one while a sparse successor advances its parent. Compare every canonical chunk-change partition and validate the actual sealed generation identities, not the two different manifest addresses. Refs #4520
|
Refs #4520 — Additional source-level test correction published in |
Refs #4520 Use actually resolvable module-level `new` calls in both sparse regressions; retain same-name unrelated candidates, real evidence reads, and strict positive repoint and chunk-delta assertions. Pin the revision-22 canonical state digest measured by hosted Bazel code_index_suite (run 42437748915, Linux fleet). Apply rustfmt's exact requested line wrap without changing validation.
|
Refs #4520 — guarded source repair published: Hosted Bazel on the previous head found: (1) canonical manifest payload digest MERGE HOLD REMAINS. Do not merge or close until exact-head Bazel reports nonzero passing regressions and associated suites, 6.6k-file measured workload, independent review, and native verification. CI on the newly published head is unverified as of this comment. No native or benchmark result claimed. No Kev or release work. |
Preserve the concurrent fixture, formatting, and revision-22 golden repair. Require four actual unrelated call edges before taking read baselines and after restoring the measured successor, using qualified symbol identity. Add a falsifiable corruption regression: zero a nonempty target filter, recompute the outer manifest digest, and require the exact semantic evidence-descriptor refusal while the intact original still restores. Refs #4520
|
Refs #4520 — published This commit strengthens the existing integration module without changing production semantics or weakening checks:
Exact-head CI: https://github.com/ScriptedAlchemy/tracedecay/actions/runs/42443667141 (queued when observed; NOT a pass). I inspected the actual prior-head Bazel artifact: code_index_suite 220 passed/2 failed, unit_test 363 passed/1 failed, resident_accounting 4 passed. Those are failure diagnostics, not proof of this new head. No local Rust execution or Cargo invocation occurred. Keep the merge hold. Require nonzero current-head Bazel regressions/full applicable checks, the actual 6.6k-file time/memory/read/reseal benchmark, independent review, and native evidence. No merge, issue closure, release, Kev/decision-model, infrastructure or production changes. |
|
Refs #4520 — hosted verification scheduling blocker, not a test result (observed 2026-11-08 around 05:22 UTC): the exact-head PR #4789 workflow 42443667141, for commit Fresh source review found no confirmed new defect to justify cancelling this costly run with another speculative push. Revision-22 golden was already measured from hosted Bazel and corrected by |
|
Refs #4520 — confirmed exact-head CI failure, merge hold unchanged. On - CodeIndexProductionOwnerV1, CodeIndexPublishedGenerationV1,
- MemorySealedPublicationStoreV1,
+ CodeIndexProductionOwnerV1, CodeIndexPublishedGenerationV1, MemorySealedPublicationStoreV1,All eight completed repository-policy Bazel test targets passed; the formatting genrule prevented the overall gate. Change scope and benchmark harness self-tests passed, but the latter is not the 6.6k-file issue workload. At observation Clippy and Linux Bazel were still building/running on this exact head; native macOS skipped. Intentionally preserving that expensive verification before any next nonforce, expected-head format repair, so additional compiler or behavioral failures can be repaired in one narrow commit. No tests weakened, no benchmark/native pass claimed, no merge/closure. Keep PR #4789 held; PR #4791 and the other issues remain separate. |
Apply the exact Rust 2024 rustfmt change from the hosted Repository gates job for the sparse successor regression. Refs #4520
|
Refs #4520 — new exact-head CI infrastructure blocker; no code regression inferred. PR #4789 workflow 42458746991 on
The prior verified revision-22 golden and all strict sparse/chunk/graph tests remain intact. HOLD MERGE and leave #4520 open until nonzero exact-head Bazel regression passes, real before/after benchmark (reads, graph reseals, changed chunks, time, peak RSS), independent review, and native coverage are proven. No branch commit, workflow/infrastructure modification, or scope-excluded action in this check. |
|
Refs #4520 — new executed Bazel regression failures, not the previous external-fetch 504. Exact-head CI attempt 2 on Source review points to the fixture's ambiguous The broad Linux |
Repair three hosted automation_runner_test failures by supplying the configured executable identity required by the production prefilter. Use the same identity for the prefilter and retained runner, preserving manual-schedule, exact-ledger, live-lock and lock-race assertions. Add a production-prefilter regression for unconfigured refusal, deduplication and same-occurrence recovery after binding, with zero backend calls and no effectful terminal. Do not relax backend admission, change timeouts, or alter the graph publication changes. Refs #4532
|
Refs #4520 — nonzero hosted Bazel regression evidence, on a superseded head only. I downloaded and inspected the actual
The PR subsequently advanced through two unrelated test-file commits to Keep PR #4789 unmerged and issue #4520 open. No merge/auto-merge from the general sweep. |
|
Refs #4520 — new exact-HEAD executed Bazel evidence and separate fleet failure (2026-11-09, run 42592391788, SHA Downloaded hosted Linux-fleet test artifact 13672023782, inspected the actual non-cached
New unrelated fleet blocker: Bazel completed 182/183 test targets passing (95 executed), but STRICT MERGE HOLD remains: original isolated ~6.6k-file before/after comment-only benchmark with file/evidence read counts, graph page reseals, exact changed chunks, wall time and peak RSS is still absent (260-file fixture/harness self-tests do not count); independent HUMAN review is still absent, and hosted native macOS Bazel verification is unavailable under this PR's skipped job. No merge, issue closure, Kev/release/infra modification, or Cargo. |
Count the existing graph-emission span around the actual cold and sparse publication calls. Require a positive whole-corpus cold control, exact three-owner sparse graph work, and byte-identical carried descriptors so redundant resealing cannot hide behind content-addressed deduplication. Check unchanged parent file-segment reads on that same successor alongside the existing evidence-read, cold-delta, graph and corruption assertions. No production, format, golden, dependency or workflow changes. Refs #4520
|
Refs #4520 — review repair published in Confirmed coverage gap: equal graph output and deduplicated writes do not establish that unrelated pages were never regenerated. The same-successor regression now counts the existing graph-emission trace span through the repository's canonical scoped capture. It requires a positive cold control covering all nine fixture files, exactly the edited file plus two genuine dependent graph owners on the sparse publication, and exact preservation of carried descriptors. It also checks no additional reads of the four unrelated caller file segments and their unrelated target. All existing evidence-read, cold chunk/graph equality, incoming-edge, nonzero delta and corruption assertions remain. No production semantics, golden, dependency, format or workflow changed. Validation pending: new exact-head workflow 42722351191 is queued. The 9-versus-3 requirement is a new fixture assertion, NOT an observed benchmark result or full-repository speedup. I independently re-downloaded predecessor artifact 13672023782 and verified 223/223 integration and 364/364 unit passes; those do not validate this new commit. No local Rust execution or Cargo. STRICT MERGE HOLD remains. Preserve the new CI run, fix genuine failures without weakening counts, and still require the original ~6.6k-file measured workload, independent HUMAN review and available native macOS verification before acceptance. No merge or issue closure. |
Refs #4520
Root cause
Merged #4537 fixed the spurious changed-name set comparison, but a comment-only edit still decoded the sealed file-evidence segments of every file mentioning a carried name. Most of those sealed edges did not land in the edited file. The issue's isolated 6.6k-file profile recorded thousands of unrelated reads.
Fix
Regression and verification
df2217b01e4a0148d3892bc681af84bab3295491. Equal output bytes and content-addressed write deduplication can hide redundant graph resealing. The integration test now counts the existingcode_index.seal.collect.emitspan around the real publication calls using the canonical scoped tracing capture. A cold control must observe all nine fixture files; the same sparse successor must emit only its edited file and two actual dependent owners, preserve every carried graph descriptor, and avoid reading the five unrelated parent file segments. All existing evidence-read, cold correctness, nonzero delta, edge and corruption assertions remain. This commit changes onlysparse_comment_publication.rs; production semantics, format/golden, dependencies and workflows are unchanged. These assertions were executed within the current-head noncached Linux Bazelcode_index_suitetarget (passed); they are small-fixture assertions, not measured full-repository performance results. Its success-only Bazel output does not expose individual libtest counts.sha256:08e91a89b2dd82615897c5df08b74740fc483551f8f8cef1ef57cf96a93c837f, obtained from actual hosted Bazel output, not guessed or relaxed.df2217b: hosted Linux Bazel build succeeded (469 targets); 183/183 Bazel test targets passed, 92 executed, including noncached//crates/tracedecay-code-index:code_index_suite(19.6 s) and:unit_test(29.1 s). Exact per-suite libtest case counts are not printed in the success-only job output, so no per-case count is asserted. Clippy, Bazel rustfmt/repository policies, Dashboard, scope and feature gates passed. Windows build/typecheck was still running when checked; its native test step was pending. Hosted macOS was skipped, not passed. Benchmark-harness self-tests passed but are not the original 6.6k-file workload.b5164c11produced non-cachedcode_index_suite223/223 passed (15.63 s) andunit_test364/364 passed (28.30 s), including sparse graph/chunk/read regressions, target-filter tamper refusal and strict revision-22 golden. Linux test-log artifact; evidence discussion. That Linux fleet overall failed an unrelated automation-runtime suite (435 passed / 2 settlement timeouts); it was not fully green. Clippy, repository gates and Windows Bazel build/typecheck passed; native Windows tests and hosted macOS were skipped, not passed. These results do not validate the new assertions ondf2217b.Safety
STRICT MERGE HOLD: Keep this PR unmerged and #4520 open until all acceptance evidence is established. General sweeps must not merge it from predecessor results or substitute fixture measurements for the real workload. No Kev/decision-model, release or infrastructure changes.