Skip to content

fix(storage): evict construction cache at durable boundaries - #1081

Merged
DecisionNerd merged 2 commits into
mainfrom
cursor/fix-construction-cache-eviction-5258
Sep 5, 2026
Merged

fix(storage): evict construction cache at durable boundaries#1081
DecisionNerd merged 2 commits into
mainfrom
cursor/fix-construction-cache-eviction-5258

Conversation

@DecisionNerd

@DecisionNerd DecisionNerd commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

Durable construction can exhaust its memory envelope through file-backed cache. Shared filesystem readers and writers now bound active cache windows, synchronize writes before Linux cache advice, and carry measured synchronization evidence through construction and import receipts.

Closes #1110. Refs #951 and #952. #951 retains the full-lifecycle attribution and S20/conditional S22 host outcomes.

The integration fixes three verified defects: empty reads incorrectly marked unread input as exhausted; CAS payload copies discarded periodic synchronization counts; and Windows direct-file certification attempted to synchronize a read-only handle. Boundary tests preserve exact synchronization counts, bytes, hashes, reopened content, and cleanup. Existing Windows CI now exercises the direct-file regression. A reproduced ETXTBSY race in test shell fixtures is fixed by invoking the shell explicitly.

Validation on OVHC-AGENCY:

  • Filesystem: 31 tests passed; storage: 946 passed, 2 unchanged ignores; import: 14 passed; actual 1x/2x/4x scale lifecycle: 23 passed.
  • Benchmark certification: 24 passed; generator: 2 passed; progressive qualification: 17 passed.
  • Boundary regressions failed before the fixes and passed afterward. Native strace confirmed payload synchronization counts 1/1/2 below/at/above each tested window, before successful cache advice. Linux tiny-lifecycle receipt counts reconcile exactly to 38/63/113.
  • Workspace and benchmark all-targets clippy, generator identity, formatting, and fast checks passed. Storage tests used an isolated ext4 temporary root as ubuntu.
  • Independent review found no remaining issues. Exact-head CI Gate, native Windows regression, Rust, bindings, durability, concurrency, and real tiny lifecycle checks passed at c34ae921. Squash-merged as 581b44a2; fix(storage): reconcile bounded cache eviction synchronization #1110 is closed.

No host-scale certification outcome is claimed by this implementation PR.

@coderabbitai

coderabbitai Bot commented Sep 2, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on this repository. Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Team

Run ID: f2f935bf-0069-4e1f-a0bd-d507059fec02

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • 🔍 Trigger review

Warning

Billing warning: we have not been able to collect payment for this subscription for more than 72 hours. Please update the payment method or pay any pending invoices in Billing to avoid service interruption.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@github-actions github-actions Bot added core Core source code changes documentation Improvements or additions to documentation tooling Developer tooling and automation labels Sep 2, 2026
@blacksmith-sh

This comment has been minimized.

@DecisionNerd
DecisionNerd force-pushed the cursor/fix-construction-cache-eviction-5258 branch from bda5d73 to c34ae92 Compare September 5, 2026 00:36
@DecisionNerd
DecisionNerd marked this pull request as ready for review September 5, 2026 00:36
@github-actions github-actions Bot added the ci-cd CI/CD configuration changes label Sep 5, 2026
@DecisionNerd
DecisionNerd merged commit 581b44a into main Sep 5, 2026
21 checks passed
@DecisionNerd
DecisionNerd deleted the cursor/fix-construction-cache-eviction-5258 branch September 5, 2026 00:57
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci-cd CI/CD configuration changes core Core source code changes documentation Improvements or additions to documentation tooling Developer tooling and automation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix(storage): reconcile bounded cache eviction synchronization

1 participant