docs(init): validate v0.5 specification

---ci---
project: orca
phase: 0
milestone: v0.5
status: specify
---/ci---
This commit is contained in:
Jon Chery
2026-08-03 17:58:32 +00:00
parent c814afa773
commit a22c41164f
5 changed files with 96 additions and 8 deletions
+7 -7
View File
@@ -1,10 +1,10 @@
{
"phase": 3,
"stage": "complete",
"milestone": "v0.3",
"milestone_slug": "scheduling-streaming",
"phase_role": "final",
"phase": 0,
"stage": "specify",
"milestone": "v0.5",
"milestone_slug": "distribution",
"phase_role": "pre_execution",
"attempts": 0,
"updated_at": "2026-08-01T00:30:00Z",
"milestone_complete": true
"updated_at": "2026-08-03T18:00:00Z",
"milestone_complete": false
}
+37
View File
@@ -141,3 +141,40 @@ despite stale REQUIREMENTS.md marking them Pending. The remaining work:
The vision ("minimalist, offline-first, CLI-first orchestration
engine") is unchanged. v0.3 is a completion milestone, not a direction
change.
## v0.5 Scope Summary — Distribution
v0.5 is a 3-execution-phase milestone that makes Orca installable,
distributable, and containerized. The engine functionality from
v0.1v0.3 is unchanged; this milestone is purely about **delivery
surface**:
- **P01 — Namespace unification.** A single `ORCA_HOME` environment
variable becomes the namespace root for *all* on-disk state (db,
certs, init, daemon). A `--system` flag on the root command selects
the system-level namespace root `/root/.orca`. Backward compatible:
empty `ORCA_HOME``~/.orca`. Covers REQ-041, REQ-042.
- **P02 — `install.sh` + in-place update.** A 1-liner installer pulls
the release binary from the public Gitea release URL, installs at
user level by default (`~/.local/bin/orca`) or system level
(`/usr/local/bin/orca`) with `--system`. Re-running updates the
binary in place while preserving config/db/certs in the namespace
dir. Idempotent. Covers REQ-043, REQ-044. Also updates README
quickstart (REQ-016 completion).
- **P03 — Docker release.** A multi-stage `Dockerfile` builds a
distroless image; `scripts/release.sh` and `.coreci.yml` publish the
image to the Gitea container registry per release. Covers REQ-046.
- **P04 — Final review + ship + audit.** Milestone release.
The vision ("minimalist, offline-first, CLI-first orchestration
engine") is unchanged. v0.5 is a distribution milestone, not a
direction change.
### v0.5 Operational prerequisite (P0 ship)
The Gitea repo `coreci/orca` is currently **private** (returns 404
unauthenticated). P0 ship flips visibility to public via `tea repos
edit coreci/orca --private=false` so that `install.sh` can pull
release binaries unauthenticated (REQ-045). This is an operational
step performed during the P0 ship, verified by an unauth `curl`
against the releases API.
+20
View File
@@ -48,6 +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 |
## v0.1 Milestone Summary
@@ -80,3 +86,17 @@ Re-init SPECIFY audit confirmed all other v0.2-deferred REQs (014, 027,
- pprof endpoint on `orca daemon` (idea I-308, 0.70 confidence): deferred
to keep v0.2 lean; revisit in v0.3 once P02's dispatcher is stable.
## v0.5 Milestone Summary
**Status: In Progress** — Distribution milestone (install, namespace,
docker, public releases). 3 execution phases:
- **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.
+19
View File
@@ -69,3 +69,22 @@ Per `.ciagent/RELEASE_POLICY.md`, every phase tag produces a Gitea release.
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**
Scope: make Orca installable, distributable, and containerized. The
engine functionality from v0.1v0.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`)
**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.
**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`).
+13 -1
View File
@@ -5,7 +5,7 @@
"slug": "orca",
"name": "Orca",
"description": "Offline/CLI-first orchestration engine (Orca) — Nomad-inspired, far simpler than Kubernetes",
"milestone": "v0.3",
"milestone": "v0.5",
"phase": 0,
"milestone_type": "feature",
"default_branch": "main",
@@ -24,6 +24,11 @@
],
"active_project": "orca",
"active_projects": ["orca"],
"ship": {
"per_phase": true,
"allow_skip": false,
"max_release_retries": 3
},
"autonomy": {
"level": "full",
"decision_confidence_threshold": 0.60,
@@ -122,6 +127,13 @@
"owner": "coreci",
"repo": "orca",
"token_env": "GITEA_TOKEN"
},
"container_registry": {
"forge": "gitea",
"registry": "git.cloudinit.dev",
"owner": "coreci",
"image": "orca",
"credential_env": "GITEA_TOKEN"
}
},
"secrets": {