v1.0.0 — public-stability
armada v1.0.0 — public-stable
First public release of opencode-armada, renamed to armada (PR #100) and stabilized for daily use by external users (PR #101).
Install
npm install -g armada
# or
npx armadaWhat's in this release
- Renamed to
armada(wasopencode-armada) - Node >= 20 required; explicit early-exit on older versions
- Opencode >= 1.18.0 supported; explicit version check
- CI matrix on macOS + Linux × Node 20 + 22 (see
.github/workflows/armada-evidence.yml) - 8 specialist agents with SDK-enforced role boundaries
- Evidence-gated phase delivery with restart-proof state
- Isolated git worktree docks (
sandbox/<feature>/) — main checkout untouched - 22 e2e acceptance tests under
armada/e2e/public-stability/ - 646 unit/integration tests, all green
Phases shipped (7 total, ~42 commits on the lane)
| Phase | Summary |
|---|---|
| P0 | Current-truth + setup/lifecycle baseline (evidence only) |
| P1 | Setup safety + deduplication (6 backend fixes + hotfix) |
| P2 | Runtime/provider compatibility (Node, Opencode, doctor, catalog, CI) |
| P3 | Voyage/worktree/state reliability (atomic + versioned state, isolation, exactly-once resume) |
| P4 | Generated-repo acceptance (packed artifact + 22 e2e tests) |
| P5 | Public docs + release packaging (README 60-second, user/operator/contributor guides, troubleshooting) |
| P6 | Final patrol (5 SEC + 9 ADV triaged, 6 DEFs filed + fixed + closed) |
Defects addressed
- DEF-001 (HIGH):
armada uninstall -vwas destructive (intercepted -h/-v/--version in 6 subcommands) - DEF-002 (MEDIUM): invalid budget silently fell back to balanced
- DEF-003 (MEDIUM):
feature newoverwrote existing features without warning - DEF-004 (MEDIUM): CI actions unpinned (pinned to SHAs + permissions blocks)
- DEF-005 (MEDIUM): dirty-cleanup refusal guard was dead code (wired into
uninstall --all) - DEF-006 (LOW):
armada newallowed..traversal (rejected with clear error)
Known limits
- Linux evidence: collected via CI on
ubuntu-latest; noarmada newsmoke run yet on bare-metal Linux armada/state/modules ship as building blocks; production resume still uses the read-onlysrc/reconcile.js+src/resume-cli.jspatharmada new --helptyped as positional is treated as a project name (now rejected with a clear error)
What's Changed
- feat(voyage-handoff-indicator): HANDOFF block after voyage dispatch by @rafmacalaba in #92
- feat(commands): add subtask: true to all /armada* commands by @rafmacalaba in #93
- feat: ux-revamp voyage — CLI prune, docs slim, role keys by @rafmacalaba in #94
- feat(prompts): orchestrator dispatch narration uses shipName [role] by @rafmacalaba in #95
- docs: overhaul README, add fleet logo & workflow artwork, add Meet the Fleet roster by @rafmacalaba in #96
- docs: audit and update TODO.md roadmap status by @rafmacalaba in #97
- docs: clarify global install and npx options in README quickstart by @rafmacalaba in #98
- chore: support both armada and opencode-armada in package.json bin map by @rafmacalaba in #99
- chore: rename package.json name to armada and update repository URLs by @rafmacalaba in #100
- feat: public-stability — opencode-armada v1.0.0 public release by @rafmacalaba in #101
- docs(todo): flip public-stability to shipped (#101) by @rafmacalaba in #102
- chore(release): bump version to 1.0.0 for public release by @rafmacalaba in #103
Full Changelog: v0.9.2...v1.0.0