Steps 12 & 12b: gRPC server and directory recursion + mirror.
Step 12: GardenSync gRPC server with 5 RPC handlers — PushManifest (timestamp comparison, missing blob detection), PushBlobs (chunked streaming, manifest replacement), PullManifest, PullBlobs, Prune. Added store.List() and garden.ListBlobs()/DeleteBlob() for prune. In-process tests via bufconn. Step 12b: Add now recurses directories (walks files/symlinks, skips dir entries). Mirror up syncs filesystem → manifest (add new, remove deleted, rehash changed). Mirror down syncs manifest → filesystem (restore + delete untracked with optional confirm). 7 tests. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -7,7 +7,7 @@ ARCHITECTURE.md for design details.
|
||||
|
||||
## Current Status
|
||||
|
||||
**Phase:** Phase 2 in progress. Steps 9–11 complete, ready for Step 12.
|
||||
**Phase:** Phase 2 in progress. Steps 9–12b complete, ready for Step 13.
|
||||
|
||||
**Last updated:** 2026-03-23
|
||||
|
||||
@@ -42,7 +42,7 @@ Phase 2: gRPC Remote Sync.
|
||||
|
||||
## Up Next
|
||||
|
||||
Step 12: Server Implementation (No Auth).
|
||||
Step 13: Client Library (No Auth).
|
||||
|
||||
## Known Issues / Decisions Deferred
|
||||
|
||||
@@ -71,3 +71,5 @@ Step 12: Server Implementation (No Auth).
|
||||
| 2026-03-23 | 9 | Proto definitions: 5 RPCs (Push/Pull manifest+blobs, Prune), generated sgardpb, Makefile, deps added. |
|
||||
| 2026-03-23 | 10 | Garden accessor methods: GetManifest, BlobExists, ReadBlob, WriteBlob, ReplaceManifest. 5 tests. |
|
||||
| 2026-03-23 | 11 | Proto-manifest conversion: ManifestToProto/ProtoToManifest with round-trip tests. |
|
||||
| 2026-03-23 | 12 | gRPC server: 5 RPC handlers (push/pull manifest+blobs, prune), bufconn tests, store.List. |
|
||||
| 2026-03-23 | 12b | Directory recursion in Add, mirror up/down commands, 7 tests. |
|
||||
|
||||
Reference in New Issue
Block a user