Implements Manifest and Entry structs with YAML tags, New() constructor, Load(path) for reading, and Save(path) with atomic write (temp file + rename). Tests cover round-trip serialization, atomic save cleanup, entry type invariants, nonexistent file error, and empty manifest. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1.5 KiB
1.5 KiB
PROGRESS.md
Tracks implementation status. See PROJECT_PLAN.md for the full plan and ARCHITECTURE.md for design details.
If you are picking this up mid-implementation, read this file first.
Current Status
Phase: Step 2 complete. Ready for Step 3 (Store Package) and then Step 4.
Last updated: 2026-03-23
Completed Steps
- Step 1: Project Scaffolding — removed old C++ files and
.trunk/config, initialized Go module, added cobra + yaml.v3 deps, created package dirs, set up cobra root command with--repoflag. - Step 2: Manifest Package —
ManifestandEntrystructs with YAML tags,New(),Load(path), andSave(path)with atomic write. Tests cover round-trip, atomic save, entry types, nonexistent file, and empty manifest.
In Progress
(none)
Up Next
Step 3 (Store Package), then Step 4 (Garden Core).
Known Issues / Decisions Deferred
- Blob durability: blobs are not stored in git. A strategy for backup or replication is deferred to a future phase.
- gRPC remote mode: Phase 2. Package structure is designed to accommodate it (garden core separates logic from CLI wiring).
Change Log
| Date | Step | Summary |
|---|---|---|
| 2026-03-23 | — | Design phase complete. ARCHITECTURE.md and PROJECT_PLAN.md written. |
| 2026-03-23 | 1 | Scaffolding complete. Old C++ removed, Go module initialized, cobra root command. |
| 2026-03-23 | 2 | Manifest package complete. Structs, Load/Save with atomic write, full test suite. |