mirror of
https://github.com/kvcache-ai/AgentENV.git
synced 2026-11-05 01:17:36 +00:00
[PR #368] [MERGED] refactor: move the durable repository out of the snapshot module #381
Labels
No labels
bug
documentation
enhancement
enhancement
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
kvcache-ai/AgentENV#381
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
📋 Pull Request Information
Original PR: https://github.com/kvcache-ai/AgentENV/pull/368
Author: @yingdi-shan
Created: 10/12/2026
Status: ✅ Merged
Merged: 10/13/2026
Merged by: @yingdi-shan
Base:
main← Head:refactor/repository-module📝 Commits (1)
83803cerefactor: move the durable repository out of the snapshot module📊 Changes
52 files changed (+183 additions, -220 deletions)
View changed files
📝
CLAUDE.md(+1 -0)📝
crates/e2e-tests/tests/snapshot_oss_e2e_test.rs(+4 -4)📝
docs/src/configuration/reference.md(+1 -1)📝
docs/src/internals/persistence-artifact-inventory.md(+3 -3)📝
docs/src/internals/template-builder-testing.md(+4 -4)📝
src/api/impls/image_build.rs(+2 -2)📝
src/api/impls/image_build/cache.rs(+1 -1)📝
src/api/impls/image_build/tests.rs(+2 -5)📝
src/api/impls/image_build/worker.rs(+2 -4)📝
src/api/impls/mod.rs(+1 -1)📝
src/api/impls/snapshots.rs(+1 -1)📝
src/api/impls/template.rs(+5 -4)📝
src/image/buildkit/history.rs(+2 -2)📝
src/lib.rs(+1 -0)📝
src/orchestrator/tests.rs(+2 -2)📝
src/repository/backends/common/acr/client.rs(+1 -1)📝
src/repository/backends/common/acr/manifest.rs(+1 -1)📝
src/repository/backends/common/acr/mod.rs(+0 -0)📝
src/repository/backends/common/acr/publisher.rs(+4 -4)📝
src/repository/backends/common/acr/source_image.rs(+1 -1)...and 32 more files
📄 Description
Stacked on #367. Until that merges, this PR also shows its commit. Review only the last commit,
refactor: move the durable repository out of the snapshot module.What
Move
src/snapshot/repository/tosrc/repository/, and rename theSnapshotRepositorytrait toRepository. Its implementations becomeOssRepository,PosixFsRepository, andMockRepository.Why
The repository stores snapshots, volumes, build logs, and the build-cache state, and with #347 and #356 it will also store images and webhook config. Keeping it under
snapshot/makes non-snapshot features look like they belong to snapshots, and the trait name says the same.Related issue
N/A. Second of three stacked PRs from the review behind #367.
Scope and non-goals
[snapshot] repository_backendconfig key and itsSnapshotRepositoryBackendKindenum, which is a user-facing config contract.src/volume/.Design and behavior changes
snapshot/mod.rsno longer re-exportsRepositoryError,RepositoryResult, orSnapshotListFilter; callers import them fromcrate::repository.pub(crate).RuntimeArtifactLeasegains apub(crate)re-export.CLAUDE.mdcode map point at the new path.Compatibility and operations
agentenv::snapshot::repositorytoagentenv::repository. The integration tests and e2e crate are updated. The HTTP API is unchanged.Validation
make fmtmake clippymake test-unitmake -C services test(required whenservices/changes)maketargetCommands and results:
Skipped checks and reasons:
--ignored) and integration suites were not run; nothing outside import paths changed.Risks and reviewer notes
git show -Mshows the renames.crate::snapshot::repository(#347, #356) will need their imports updated when rebasing.Checklist
🤖 Generated with Claude Code
🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.