zmgr/docs/ai/implementation-state.md
Till Wegmueller abdce9c927
Add zmgr: illumos zone manager with IPAM and flat-file registry
Rust CLI that creates/destroys/imports illumos zones from KDL template
configs with automatic IP allocation from named pools. Registry lives
under /etc/zmgr as flat KDL files — zone entries double as the IPAM
ledger. Includes default templates for ipkg (OI) and nlipkg (OFL)
brands, matching the existing shell scripts.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 12:14:09 +01:00

37 lines
1.3 KiB
Markdown

# Implementation State
## Completed
- [x] Project scaffold (Cargo.toml, module structure)
- [x] KDL parsing helpers (`kdl_util.rs`)
- [x] Error types with miette diagnostics (`error.rs`)
- [x] Global config loading (`config.rs`)
- [x] Template loading + defaults (`template.rs`)
- [x] IPAM pool loading, allocation, defaults (`pool.rs`)
- [x] Zone registry CRUD (`zone.rs`)
- [x] Publisher management (`publisher.rs`)
- [x] Exec layer for system commands (`exec.rs`)
- [x] Import logic from existing zones (`import.rs`)
- [x] CLI commands: init, create, destroy, list, status, import
- [x] CLI commands: template list/show, pool list/show
- [x] CLI commands: publisher list/add/remove
- [x] Clean build (zero warnings)
- [x] Tested: init, template list, pool list/show, publisher list, list
## Not Yet Tested on illumos
- [ ] `zmgr create` (requires illumos with zonecfg/zoneadm/dladm)
- [ ] `zmgr destroy`
- [ ] `zmgr import`
- [ ] `zmgr status` (requires zoneadm)
## Dependencies
| Crate | Version | Purpose |
|---|---|---|
| clap | 4.6.0 | CLI parsing (derive) |
| kdl | 6.5.0 | KDL v2 document parsing |
| miette | 7.6.0 | Diagnostic error reporting |
| thiserror | 2.0.18 | Error type derives |
| ipnet | 2.12.0 | IP network arithmetic |
| chrono | 0.4.44 | Date formatting |