Repository navigation
Conversation
Signed-off-by: Tee8z <tee8z@protonmail.com>
Signed-off-by: Tee8z <tee8z@protonmail.com>
Signed-off-by: Tee8z <tee8z@protonmail.com>
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: true
|
|
Independent agent review of No blocking correctness, security, or agreed-contract findings remain. Minimalism: 9/10. Elegance: 9/10. Correctness: 9/10. I inspected the archive-plan boundary, capacity accounting, neutral Git import, process-group teardown, cancellation, safe-link ordering, read-only permissions, and atomic no-replacement publication. The final platform source matches the reviewed freeze ( Independent runtime checks from the pinned final executable:
Logs: This evidence covers the restore foundation. It does not attest the unfinished CLI request/download flow, full ACP snapshot journey, final combined CI, native Paseo interaction, or human acceptance. Keep this PR draft until the repository checklist is satisfied. |
Signed-off-by: Tee8z <tee8z@protonmail.com>
Signed-off-by: Tee8z <tee8z@protonmail.com>
|
Follow-up review of the executable-mode correction in The reproduced case is concrete: a source file with mode I inspected both deltas and independently ran the pinned final production-seam regression, No remaining blocker in the reviewed restore delta. Minimalism, elegance, and correctness remain 9/10. Corrected normal-image producer validation and the complete upload/CLI journey remain separate checks; keep this PR draft pending those gates and human testing. |
Restore authorized snapshot plaintext into a fresh, owner-only, read-only Git mirror. The reader validates the archive before staging, reserves explicit work/store capacity, imports and verifies self-contained bundles, and publishes with atomic no-replacement semantics. Local history, branches, shallow boundaries and working diffs survive. Excluded tracked files stay absent without appearing deleted; genuine deletions remain visible.
This layer follows archive-plan #171. It exposes the library API needed by the next snapshot CLI consumer; it adds no user restore command.
check_git().awaitrefuses unsupported platforms or unavailable/denied Git before a request. Linux and macOS require Git 2.29+. Paseo keeps itshost-tools=onprerequisite.Restore uses a private staging area, fixed bounded Git commands, full object integrity/inventory checks, explicit cancellation with cleanup, and owner-only 0400/0500 output. Each store serializes restores. Filesystem free space and configured budgets both gate admission; free space does not reveal an emptyDir quota. Callers cancel the token and await completion instead of aborting the future. Delivered local copies remain after grant expiry.
Validation:
just cipassed full workspace all-target Clippy in 10m10s, then stopped at a noninteractive pnpm dependency refresh. Fresh worktree dependencies are installed; the remaining broad gate retry is pending. This draft does not claim the broad gate is green.The PR carries two already-reviewed prerequisites without rewriting published history: #168 Docker-context fix
1a1d563deas129d5f3f4, and #170 encrypted-frame fix119b065ccas5e471aa9a. Their owning PRs remain authoritative.The diff has 1,608 changed lines: 199 carried prerequisite lines, and 1,409 for this layer including 496 realistic test lines. The bounded archive parser was already split into #171. The remaining staging, Git validation, cleanup and atomic publication form one filesystem safety boundary; splitting them would expose an incomplete restore API.
Independent final-source review and human integrated testing remain pending. Draft status is preserved; no deployment or review attestation.