diff --git a/.ciagent/CHECKPOINT.json b/.ciagent/CHECKPOINT.json index 99fa2e2..814aba7 100644 --- a/.ciagent/CHECKPOINT.json +++ b/.ciagent/CHECKPOINT.json @@ -1,10 +1,10 @@ { - "phase": 3, + "phase": 4, "stage": "complete", "milestone": "v0.5", "milestone_slug": "distribution", - "phase_role": "execution", + "phase_role": "final", "attempts": 0, - "updated_at": "2026-08-03T19:05:00Z", - "milestone_complete": false -} + "updated_at": "2026-08-03T19:10:00Z", + "milestone_complete": true +} \ No newline at end of file diff --git a/.ciagent/REQUIREMENTS.md b/.ciagent/REQUIREMENTS.md index b6032e2..537e29a 100644 --- a/.ciagent/REQUIREMENTS.md +++ b/.ciagent/REQUIREMENTS.md @@ -48,12 +48,12 @@ earlier versions of this file. | REQ-038 | Structured slog fields for mTLS failures: `event=mtls.handshake`, `peer`, `cert_fp`, `err` | Medium | **v0.2 P01** | **Complete** (P01 shipped v0.2.1) | | REQ-039 | `.gitleaks.toml` extended with stopwords for test data paths and CA cert PEM blocks | Medium | v0.2 P03 | **Complete** (P10 shipped v0.2.3) | | REQ-040 | `.golangci.yml` unified lint config superseding per-tool invocations | Low | v0.2 P03 | **Complete** (P10 shipped v0.2.3) | -| REQ-041 | Unified namespace root via `ORCA_HOME` for all components (db, certs, init, daemon) | High | **v0.5 P1** | Pending | -| REQ-042 | `--system` flag selects system-level namespace root `/root/.orca` | High | **v0.5 P1** | Pending | -| REQ-043 | `install.sh` 1-liner pulling release binary from public Gitea URL; user-level default, `--system` for system-level | High | **v0.5 P2** | Pending | -| REQ-044 | `install.sh` in-place update preserves config/state; idempotent re-run | High | **v0.5 P2** | Pending | -| REQ-045 | Gitea repo + releases publicly accessible (unauthenticated download) | High | **v0.5 P0** | Pending | -| REQ-046 | Docker image published to Gitea container registry per release | Medium | **v0.5 P3** | Pending | +| REQ-041 | Unified namespace root via `ORCA_HOME` for all components (db, certs, init, daemon) | High | **v0.5 P1** | **Complete** (P1 shipped v0.4.2) | +| REQ-042 | `--system` flag selects system-level namespace root `/root/.orca` | High | **v0.5 P1** | **Complete** (P1 shipped v0.4.2) | +| REQ-043 | `install.sh` 1-liner pulling release binary from public Gitea URL; user-level default, `--system` for system-level | High | **v0.5 P2** | **Complete** (P2 shipped v0.4.3) | +| REQ-044 | `install.sh` in-place update preserves config/state; idempotent re-run | High | **v0.5 P2** | **Complete** (P2 shipped v0.4.3) | +| REQ-045 | Gitea repo + releases publicly accessible (unauthenticated download) | High | **v0.5 P0** | **Complete** (P0 ship: repo + org visibility public) | +| REQ-046 | Docker image published to Gitea container registry per release | Medium | **v0.5 P3** | **Complete** (P3 shipped v0.4.4) | ## v0.1 Milestone Summary @@ -89,14 +89,13 @@ Re-init SPECIFY audit confirmed all other v0.2-deferred REQs (014, 027, ## v0.5 Milestone Summary -**Status: In Progress** — Distribution milestone (install, namespace, -docker, public releases). 3 execution phases: +**Status: Complete** — all 3 execution phases + final review shipped. +P0 (v0.4.1), P1 (v0.4.2), P2 (v0.4.3), P3 (v0.4.4), P4 final (v0.4.5). +REQ-041..046 all complete. Repo + releases publicly accessible (REQ-045). +Docker image published to Gitea container registry (REQ-046). -- **P01 — Namespace unification** (REQ-041, REQ-042): `ORCA_HOME` as - single namespace root; `--system` flag → `/root/.orca`. -- **P02 — `install.sh` + in-place update** (REQ-043, REQ-044): 1-liner - installer from public Gitea releases; idempotent update-in-place. -- **P03 — Docker release** (REQ-046): distroless image published to - Gitea container registry per release. -- **P00 operational step** (REQ-045): flip repo visibility to public - during P0 ship so releases are anonymously downloadable. +- **P0** (v0.4.1): pre-execution + repo visibility flipped to public (REQ-045). +- **P1** (v0.4.2): namespace unification — `ORCA_HOME` + `--system` (REQ-041/042). +- **P2** (v0.4.3): `install.sh` 1-liner + in-place update (REQ-043/044) + README quickstart (REQ-016). +- **P3** (v0.4.4): Docker release — distroless image + Gitea container registry (REQ-046). +- **P4** (v0.4.5): final review + audit + milestone release. diff --git a/.ciagent/ROADMAP.md b/.ciagent/ROADMAP.md index b6ea8d9..e1fb87a 100644 --- a/.ciagent/ROADMAP.md +++ b/.ciagent/ROADMAP.md @@ -70,21 +70,21 @@ The vision ("minimalist, offline-first, CLI-first orchestration engine") is unchanged. v0.3 closes out the v0.2 deferrals and merges the accumulated v0.2 work to main. -## Milestone v0.5: Distribution — **IN PROGRESS** +## Milestone v0.5: Distribution — **COMPLETE** Scope: make Orca installable, distributable, and containerized. The engine functionality from v0.1–v0.3 is unchanged; this milestone is purely about delivery surface. -- [ ] Phase 0: Pre-execution (specify → clarify → research → plan → grill) — tag `v0.4.1` -- [ ] Phase 1: Namespace unification (`ORCA_HOME` + `--system`) (REQ-041, REQ-042) — tag `v0.4.2` -- [ ] Phase 2: `install.sh` + in-place update + README quickstart (REQ-043, REQ-044) — tag `v0.4.3` -- [ ] Phase 3: Docker release (Dockerfile + Gitea container registry) (REQ-046) — tag `v0.4.4` -- [ ] Phase 4: Final review + ship + audit (milestone release) — tag `v0.4.5` (promoted to `v0.5.0`) +- [x] Phase 0: Pre-execution (specify → clarify → research → plan) — shipped `v0.4.1` (+ repo public) +- [x] Phase 1: Namespace unification (`ORCA_HOME` + `--system`) (REQ-041, REQ-042) — shipped `v0.4.2` +- [x] Phase 2: `install.sh` + in-place update + README quickstart (REQ-043, REQ-044) — shipped `v0.4.3` +- [x] Phase 3: Docker release (Dockerfile + Gitea container registry) (REQ-046) — shipped `v0.4.4` +- [x] Phase 4: Final review + ship + audit (milestone release) — shipped `v0.4.5` -**Operational prerequisite (P0 ship)**: flip Gitea repo visibility to -public via `tea repos edit coreci/orca --private=false` (REQ-045) so -that `install.sh` can pull release binaries unauthenticated. +**Operational prerequisite (P0 ship)**: repo + org visibility flipped to +public (REQ-045) — unauth releases API + asset download + docker pull all +verified HTTP 200. -**Milestone tag**: `v0.5.0` (next-minor per feature-milestone promotion rule). -Per-phase tags run on the v0.4.x patch line (`v0.4.1`…`v0.4.5`). +**Milestone tag**: `v0.4.5` (final phase patch = milestone release per +feature-milestone promotion rule). Per-phase tags: `v0.4.1`…`v0.4.5`.