Repository navigation
fix: preserve cache errors and recover at capacity - #2249
Open
utpalsinghdev wants to merge 1 commit into
Open
utpalsinghdev wants to merge 1 commit into
utpalsinghdev wants to merge 1 commit into
Conversation
utpalsinghdev
marked this pull request as ready for review
October 9, 2026 23:03
Preserve limit diagnostics, retention clamping and combined catalog reads. Retain transactional eviction and lease-safe rollback. Bound optional catalog metadata by the complete manifest size.
utpalsinghdev
force-pushed
the
utpalsinghdev/issue-2229-cache-capacity
branch
from
October 11, 2026 01:19
c2be054 to
2ef7161
Compare
This branch has not been deployed
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.
Summary
Closes #2229.
Cache errors now include their safe reason, and reads preserve the reason and limit returned by the host.
When the cache reaches its byte or entry limit, writes reclaim the oldest unleased values within the same transaction. Live loaders and values written by the current command are protected. If no safe eviction can make room, the write rolls back without changing existing values or publication fences.
Catalog reads recover when eviction removes parts referenced by a retained manifest. Storage and decoding errors remain errors rather than triggering rediscovery.
This update preserves current
v2limit diagnostics, retention clamping and combined catalog reads. Optional tool-name metadata is omitted if it would push the complete manifest over the entry limit. The apps version moves from0.0.1-beta.79to0.0.1-beta.80.Verification
Rebased onto
v2atedc9e5dc1301e251b168bdaca909cb27ec7d696a.go test ./...inapps/hosted/self-host/native(ok executor.sh/self-host).Attached Cloud entry-count/cross-build checks were not run here. They need Cloudflare Artifacts credentials that this machine does not have.