opencode-ship 1.1.0 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,17 +2,92 @@
2
2
 
3
3
  All notable changes to `opencode-ship` are recorded here.
4
4
 
5
- ## 1.1.0Engineering-only, easy setup, skill discovery
6
-
7
- Stable release. The 1.1.0-rc.1 tag was promoted to `latest`
8
- after the qualification pipeline passed green on every matrix
9
- lane (npm x pnpm, opencode 1.15.5 + 1.18.10) and the
10
- runtime-source digest was preserved between rc.1 and 1.1.0
11
- (only the `package.json` version, the README "Status" section,
12
- and this changelog header changed). The S5 real 14-step
13
- dogfood is still pending a valid OpenAI provider credential; the
14
- 1.0.0 line's published 0.10.0 digest is the runtime source
15
- witness for both 0.10.0 and 1.1.0.
5
+ ## 1.1.1Stabilization + first self-hosting release (UNRELEASED)
6
+
7
+ > Active stabilization branch: `fix/1.1.1-stabilization`.
8
+ > Parent tracker: https://github.com/Viktorxyz/opencode-ship/issues/40.
9
+ > Authoritative plan: `docs/release/1.1.1-stabilization-plan.md`.
10
+
11
+ This release repairs the consumer-readiness gaps that made
12
+ `1.1.0` unsuitable as a self-hosting control plane:
13
+
14
+ This release repairs the consumer-readiness gaps that made
15
+ `1.1.0` unsuitable as a self-hosting control plane:
16
+
17
+ - Engineering is the only shipped profile. New CLI selection of
18
+ the legacy `core` profile is rejected with exit 2; persisted
19
+ `core` configs and locks migrate to engineering on read.
20
+ - Lock schema v4 adds `manager.setupComplete` and removes
21
+ `cleanupPending` from the install lock (cleanup retry now
22
+ lives under the Git common directory).
23
+ - Workflow agents carry `<model-from-config>` placeholders; the
24
+ installer renders the configured `workflow.models` at install
25
+ time so a model change updates exactly the affected agent
26
+ files. The lock pins the rendered sha256.
27
+ - Default-deny consumers can run the full controller flow
28
+ without manual permission patching. The installer no longer
29
+ owns the Plan Mode permission block; consumers configure it
30
+ via the built-in Plan agent. Subagent depth is pinned to 2.
31
+ - The workflow state machine handles every documented event
32
+ kind (including the previously-missing `task-report`,
33
+ `final-review`, `ready-pending`, `all-tasks-done`).
34
+ - Engineering Ready requires Standards and Spec final reviews
35
+ bound to the same HEAD and package hash, with `verdict: pass`
36
+ on both axes. Legacy single-review manifests continue to
37
+ fall through to the legacy gate.
38
+ - Trusted-auto skill discovery installs from a configurable
39
+ allowlist with immutable provenance; skills land in the
40
+ active issue worktree under `.opencode/skills/<name>/` and
41
+ are recorded in `.opencode/ship.skills.lock.json`.
42
+ - The `/setup-ship-workflow` skill is single (the legacy
43
+ duplicate `setup-engineering-workflow` is removed); it is
44
+ GitHub-only in `1.1.1` and routes model selection through
45
+ the existing CLI update transaction.
46
+ - Release qualification pipeline runs the packed self-hosting
47
+ E2E end-to-end instead of just extracting the tarball.
48
+ - Test contract: zero filename-disabled tests in the test
49
+ runner; tracked `tsconfig.dts.json` removed.
50
+
51
+ See `docs/release/1.1.1-stabilization-plan.md` for the full plan
52
+ and issue #40 for the bounded evidence ledger.
53
+
54
+ ## 1.1.0 — Engineering-only, easy setup, skill discovery (2026-08-08)
55
+
56
+ > **Known gap:** `1.1.0` is the published `latest` but it does
57
+ > not yet pass a real registry dogfood with real OpenCode,
58
+ > GitHub, and models; the workflow surface ships in pieces
59
+ > (skill discovery is dead code, the dual final review is not
60
+ > enforced, and the Plan Mode permission is installer-owned).
61
+ > `1.1.1` is the first fully self-hosting release and should be
62
+ > preferred once it is on `npm dist-tag latest`. The 1.1.0
63
+ > tarball remains available for pinned consumers.
64
+
65
+ Stable release. Promoted to `npm dist-tag latest` after the
66
+ qualification pipeline passed green on every matrix lane
67
+ (npm x pnpm, opencode 1.15.5 + 1.18.10) and the runtime-source
68
+ digest was preserved between rc.1 and 1.1.0 (only the
69
+ `package.json` version, the README "Status" section, and this
70
+ changelog header changed).
71
+
72
+ Distribution:
73
+
74
+ ```text
75
+ npm dist-tags
76
+ latest: 1.1.0
77
+ next: 1.0.0
78
+ ```
79
+
80
+ Verification:
81
+
82
+ ```text
83
+ npm install --prefix /tmp/fresh opencode-ship@latest
84
+ node_modules/.bin/opencode-ship --version
85
+ # prints: opencode-ship 1.1.0
86
+ ```
87
+
88
+ The S5 real 14-step dogfood is still pending a valid OpenAI
89
+ provider credential; the 1.0.0 line's published 0.10.0 digest
90
+ is the runtime source witness for both 0.10.0 and 1.1.0.
16
91
 
17
92
  The breaking change set, the engineering-only `init` flow, the
18
93
  `setup-ship-workflow` skill, the `find-skills` discovery
package/README.md CHANGED
@@ -2,9 +2,9 @@
2
2
 
3
3
  > npm-distributed OpenCode installer and delivery plugin: a single command materialises the lifecycle plugin, reviewer/verifier agents, and skills into any consumer repository, with a recoverable lock and never silently overwrites managed files.
4
4
  >
5
- > **Status:** `1.1.0` is on `npm dist-tag latest`. `1.0.0` is on `npm dist-tag next`. `release/0.10.0` is the historical live release branch; `release/1.1.0-engineering-only` ships the engineering profile directly without a separate `core` profile. From 1.1.0 forward the engineering profile is the only supported profile; the previous `core` profile was removed in the 1.1.0 hard cut. `init` works as a one-liner: `pnpm dlx opencode-ship@latest init`. The user fills in the AI model roles through a one-shot `setup-ship-workflow` skill that runs after the install. Skill discovery is integrated; trusted-source skills auto-install locally to the repo. The deep-research gate now asks first and only generates a prompt on explicit consent. See `docs/release/1.1.0-execution-plan.md` for the authoritative plan.
5
+ > **Status:** `1.1.0` is on `npm dist-tag latest`. The `1.1.x` stabilization line (parent issue #40) is in progress on the `fix/1.1.1-stabilization` branch. When `1.1.1` ships it becomes the first self-hosting release and `1.1.0` is deprecated. The `release/1.1.0-engineering-only` branch ships the engineering profile directly without a separate `core` profile. The `1.1.0` tag is immutable; consumers should use `opencode-ship@1.1.0` today and switch to `opencode-ship@1.1.1` once it is promoted to `latest`. See `docs/release/1.1.1-stabilization-plan.md` for the authoritative plan and issue #40 for the bounded evidence ledger.
6
6
  >
7
- > Consumers should use `opencode-ship@1.1.0` (or `opencode-ship@latest`).
7
+ > Consumers should use `opencode-ship@1.1.0` (or `@latest`) until `1.1.1` ships. The previous `1.0.0` is on `next`; consumers who pinned to `1.0.x` will continue to receive updates on that channel.
8
8
 
9
9
  ---
10
10
 
@@ -38,22 +38,23 @@ The `init` command succeeds without any model flags. The setup skill writes the
38
38
 
39
39
  `opencode-ship` is the npm-distributed successor to `opencode-delivery`. From 1.1.0 it bundles:
40
40
 
41
- - a **24-tool OpenCode plugin** that auto-loads from `.opencode/plugins/opencode-ship.js`;
42
- - **8 ship agents** (controller, planner, builder, task-reviewer, final-standards-reviewer, final-spec-reviewer) plus the two legacy delivery agents (reviewer, verifier);
43
- - **3 ship commands** (`ship-deliver`, `ship-resume`, `ship-status`) plus the new one-shot `setup-ship-workflow`;
44
- - **26 skills** (delivery-workflow, planning-research-checkpoint, the Matt + Superpowers engineering catalog, the new setup-ship-workflow and skill-discovery);
41
+ - a **typed OpenCode plugin** that auto-loads from `.opencode/plugins/opencode-ship.js`;
42
+ - **ship agents** (controller, planner, task-builder, task-reviewer, final-standards-reviewer, final-spec-reviewer) plus the two legacy delivery agents (reviewer, verifier) for backward compatibility;
43
+ - **ship commands** (`ship-deliver`, `ship-resume`, `ship-status`) plus the one-shot `setup-ship-workflow`;
44
+ - **the engineering skill catalog** (delivery-workflow, planning-research-checkpoint, the Matt + Superpowers methodology catalog, the new setup-ship-workflow and skill-discovery);
45
45
  - **setup-ship-workflow skill** that walks the user through tracker / labels / docs / model roles;
46
- - **skill-discovery** that auto-installs trusted-source skills from the open agent skills ecosystem.
46
+ - **skill-discovery** that auto-installs trusted-source skills into the active issue worktree with immutable provenance.
47
47
  - a **lifecycle state machine** for one issue → one worktree → one PR → one merge → one cleanup;
48
48
  - a **Git worktree driver** (no rebase-after-push, no force-push, no `--force-with-lease`);
49
49
  - a **GitHub CLI driver** that talks only to typed `gh pr/issue` verbs (never `gh api`);
50
50
  - a **project adapter** (`.opencode/ship.config.json`) so any project can declare its own verify/bootstrap/CI commands;
51
- - **reviewer** and **verifier** subagents, both with strictly bounded `delivery_*` permissions;
52
- - a **delivery-workflow** skill that drives the canonical lifecycle;
53
- - a **planning-research-checkpoint** skill that offers a single, optional Deep Research gate per non-trivial plan;
54
- - a **delivery doctor** that walks every catalog entry to verify install state and lock consistency;
51
+ - **reviewer** and **verifier** subagents, both with strictly bounded permissions;
52
+ - **delivery-workflow** skill that drives the canonical lifecycle;
53
+ - **planning-research-checkpoint** skill that offers a single, optional Deep Research gate per non-trivial plan;
54
+ - a **doctor** that walks every catalog entry to verify install state and lock consistency;
55
55
  - an **install/doctor/diff/update/uninstall** CLI with stable exit codes and `--json` envelopes;
56
- - a **.opencode/ship.lock.json** lock that records managed paths, hashes, and the installer-owned JSON pointers;
56
+ - a **.opencode/ship.lock.json** install lock that records managed paths, hashes, and the installer-owned root permissions;
57
+ - a **.opencode/ship.skills.lock.json** skill inventory that records project-local dynamic skills with immutable provenance;
57
58
  - **recovery** for interrupted cleanup, half-written state files, and stale worktrees.
58
59
 
59
60
  The package **does not** own:
@@ -157,7 +158,7 @@ The shipped artifact is built by esbuild (`scripts/build.mjs`); self-contained `
157
158
  ## Status and licensing
158
159
 
159
160
  - **License:** MIT. See `LICENSE`.
160
- - **Versioning:** SemVer. v0.2.0 is the first npm-distributed release. v0.3.0 is the installer foundation with core-only defaults. v0.4.0 adds the profile-aware installer foundation (`--profile` flag, lock schema v2, profile precedence) that issue #18 requires. v0.5.0 ships the engineering profile content (triage + grill-with-docs SKILL.md placeholders) required by issue #20. v0.6.0 ships the durable plan artifact + Plan Mode permission integration required by issue #21. v0.7.0 ships the M3 task loop contract (run store, task brief, Spec/Quality verdicts, 3-round breaker, commit binding, compaction context) required by issue #22. v0.8.0 ships the Ready gate contract (parallel GPT Standards/Spec + verifier + CI on one HEAD; Build cannot self-record) required by issue #23. v0.9.0 ships the transition matrix smoke (core omits engineering, engineering adds engineering, lock tracks the active profile) required by issue #24.
161
+ - **Versioning:** SemVer. v0.2.0 is the first npm-distributed release. v0.3.0 is the installer foundation. v0.4.0 adds the profile-aware installer foundation (`--profile` flag, lock schema v2, profile precedence) that issue #18 requires. v0.5.0 ships the engineering profile content (triage + grill-with-docs SKILL.md placeholders) required by issue #20. v0.6.0 ships the durable plan artifact + Plan Mode permission integration required by issue #21. v0.7.0 ships the M3 task loop contract (run store, task brief, Spec/Quality verdicts, 3-round breaker, commit binding, compaction context) required by issue #22. v0.8.0 ships the Ready gate contract (parallel Standards/Spec + verifier + CI on one HEAD) required by issue #23. v0.9.0 ships the transition matrix smoke (engineering installs all assets, lock tracks the active profile) required by issue #24. v1.0.0 promotes the dogfooded 0.10.0 to stable. v1.1.0 removes the legacy core profile and ships the one-liner init + setup-ship-workflow skill. v1.1.1 is the first fully self-hosting release (see `docs/release/1.1.1-stabilization-plan.md`).
161
162
  - **Compatibility:** the bundled plugin targets `@opencode-ai/plugin >= 1.15.5 < 2` and OpenCode `>= 1.15.5`.
162
163
 
163
164
  ## FAQ
@@ -1,6 +1,6 @@
1
1
  # Third-Party Notices
2
2
 
3
- `opencode-ship@1.1.0` ships the complete Matt Pocock and Superpowers
3
+ `opencode-ship@1.1.1` ships the complete Matt Pocock and Superpowers
4
4
  methodology under the MIT license, plus the Ship-owned installer,
5
5
  plugin, agents, and skills. The complete immutable pin list is in
6
6
  `vendor/sources.json`; the upstream snapshots are under
@@ -2,7 +2,7 @@
2
2
  description: Deterministic Ship controller. Owns durable workflow state, Git/GitHub mutations, and the same-HEAD Ready / merge gates. Use for `ship-deliver`, `ship-resume`, and `ship-status`.
3
3
  mode: subagent
4
4
  temperature: 0.1
5
- model: minimax/MiniMax-M3
5
+ model: <model-from-config>
6
6
  steps: 12
7
7
  permission:
8
8
  edit: deny
@@ -2,7 +2,7 @@
2
2
  description: Strong Spec final reviewer. Records the Spec axis of the final review through `delivery_review` with `axis: spec`. Independent of the Standards reviewer and the controller.
3
3
  mode: subagent
4
4
  temperature: 0.2
5
- model: openai/gpt-5.6-sol
5
+ model: <model-from-config>
6
6
  steps: 10
7
7
  permission:
8
8
  edit: deny
@@ -2,7 +2,7 @@
2
2
  description: Strong Standards final reviewer. Records the Standards axis of the final review through `delivery_review` with `axis: standards`. Independent of the Spec reviewer and the controller.
3
3
  mode: subagent
4
4
  temperature: 0.2
5
- model: openai/gpt-5.6-sol
5
+ model: <model-from-config>
6
6
  steps: 10
7
7
  permission:
8
8
  edit: deny
@@ -2,7 +2,7 @@
2
2
  description: Read-only strong planner. Writes the PlanV2 contract and submits it to the durable plan store. Never edits source, never commits.
3
3
  mode: subagent
4
4
  temperature: 0.3
5
- model: openai/gpt-5.6-sol
5
+ model: <model-from-config>
6
6
  steps: 10
7
7
  permission:
8
8
  edit: deny
@@ -2,7 +2,7 @@
2
2
  description: Cheap task builder. Implements one task at a time. Reports through `ship_task_report`. Cannot commit, push, mutate GitHub, or record reviews.
3
3
  mode: subagent
4
4
  temperature: 0.2
5
- model: minimax/MiniMax-M3
5
+ model: <model-from-config>
6
6
  steps: 8
7
7
  permission:
8
8
  edit: allow
@@ -2,7 +2,7 @@
2
2
  description: Task reviewer. Records a single Spec + Quality verdict through `ship_task_review`. Independent of the builder.
3
3
  mode: subagent
4
4
  temperature: 0.2
5
- model: minimax/MiniMax-M3
5
+ model: <model-from-config>
6
6
  steps: 8
7
7
  permission:
8
8
  edit: deny