Repository navigation
feat(depot): release completed bundle downloads during exports - #100
Merged
nichinichisou0609 merged 1 commit intoOct 18, 2026
Merged
Conversation
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.
Exports release recoverable bundle downloads as each object-conversion batch completes, applying the configured download budget before layout publication. The coordinator waits for worker readers to close and handles batches whose task results are already stored.
An exclusive command lease protects other readers. Failed or interrupted batches and preliminary episode requests retain their inputs. Released files must match their recorded content identity and have an explicit catalog or depot recovery locator. A zero budget visits only finished paths; finite budgets use LRU order while keeping active files. Later requests can fetch released inputs again.
Validation: 1586 tests passed, 7 skipped; Ruff, import contracts and strict documentation build passed. Tests cover cache hits, mixed batches, worker failure, interruption, request expansion, budgets, leases, path boundaries and release before publication. CI checks supported Python versions, types and pinned goldens.