go-devops/docs/plans/completed/2026-01-29-core-devops-design.md

33 lines
1.3 KiB
Markdown
Raw Normal View History

# Core DevOps CLI Design -- Completion Summary
**Status:** COMPLETED
**Date Completed:** 2026-01-29 (initial extraction), hardened through Phase 0-4
**Plan:** Portable development environment CLI commands for the core-devops LinuxKit image
## What Was Built
Full `devops/` package implementing a portable development environment with sandboxed, immutable LinuxKit-based VMs.
### Key Files
- `devops/devops.go` -- DevOps struct with Boot/Stop/Status/IsRunning
- `devops/config.go` -- Config loading from ~/.core/config.yaml with defaults
- `devops/images.go` -- ImageManager with manifest tracking and multi-source downloads
- `devops/sources/source.go` -- ImageSource interface
- `devops/sources/github.go` -- GitHub Releases source (gh CLI)
- `devops/sources/cdn.go` -- CDN/S3 source with progress reporting
- `devops/shell.go` -- SSH and serial console shell access
- `devops/serve.go` -- Project mounting (SSHFS) and dev server auto-detection
- `devops/test.go` -- Test framework detection and .core/test.yaml support
- `devops/claude.go` -- Sandboxed Claude session with auth forwarding
- `devops/ssh_utils.go` -- SSH utility functions
### Test Coverage
All packages have corresponding `_test.go` files with unit tests.
### Relevant Commits
- `392ad68` feat: extract devops packages from core/go
- `6e346cb` test(devops): Phase 0 test coverage and hardening