Skip to content

chore(opencode.lock): pin to v1.17.3-amicode.10 - #221

Merged
jack-champagne merged 2 commits into
mainfrom
jack/pin-amicode-10
Jul 29, 2026
Merged

chore(opencode.lock): pin to v1.17.3-amicode.10#221
jack-champagne merged 2 commits into
mainfrom
jack/pin-amicode-10

Conversation

@jack-champagne

Copy link
Copy Markdown
Member

Bumps the vendored opencode fork from v1.17.3-amicode.9v1.17.3-amicode.10.

-  "tag": "v1.17.3-amicode.9",
+  "tag": "v1.17.3-amicode.10",
-  "ref": "bbe47b60bd7ffa0fabf96799fc134c57f69e0617",
+  "ref": "e0105cd4d0d517354daaf47f5fd3d4776d708bf8",

plus both platform sha256s.

144 commits since the .9 pin (2026-07-20).

What lands

Claude 5 provider/model transform (opencode#73) reasoning_options from the models.dev catalog drives thinking variants instead of model-ID pattern matching — the fix for Claude 5 thinking being silently hobbled at our v1.17.3 base
/api/event resolved locations (opencode#2) streamed events carried a raw Location.Ref where the wire contract is a resolved Location.Info. Broken in .9 and every release before it
amicode UI organic force-settled context tree, vault side panel, entity modals, a11y + design-system sweep, thinking-word rotation, rail pulse chip
CI that actually runs (opencode#2, #91, #81) see below

The fork's CI was structurally broken and is now fixed

Worth knowing, because it explains why .9 shipped with defects nobody saw:

  • The fork's workflows requested blacksmith-4vcpu-* runners. The org has zero registered under those labels, so every job queued forever — no test job had ever run on the default branch. opencode#2 moved them to GitHub-hosted runners and made test/typecheck fire on push.
  • The unit suite died with exit 137. Not an OOM (peak 0.37 GB of 32 GB) — a segfault in @napi-rs/keyring's native setPassword(), because one test drove the real OS keyring under bun test. Fixed by opencode#91. Production was never affected; verified against Pasqal with real credentials under bun run … serve.
  • The release UI-gate check greped for a minified shape that ead3274d3 had changed. Any tag cut from mainline would have failed its own gate step and published nothing. Fixed by opencode#81, verified against a real 160 MB build.

Verification

Release build: both assets published, gate asserted ON in each.

Locally, from this pin:

$ pnpm --filter amicode fetch:opencode
[fetch-opencode] installed (release harmoniqs/opencode@v1.17.3-amicode.10)

vendored binary: 159M, --version 1.17.3
UI gate:         newLayoutDesigns:Z(()=>!0)      ← ON
Claude 5 port:   reasoning_options present

Fork CI on the tagged commit e0105cd4d: typecheck green; unit (linux) failures limited to the four known stale LLM fixtures (opencode#80 — recordings from May, prompt changed 2026-07-10, already shipping in .9); e2e (linux) 2/7 pre-existing and unchanged from the bare-tip baseline.

Binary smoke-tested before tagging: serve up, core + /amicode/* routes 200, session create/list working, amicode surfaces present in the embedded bundle.

Known-carried, all pre-existing and tracked

opencode#80 stale LLM fixtures · opencode#76 Windows POSIX-path test (that lane is now dropped — the fork ships darwin-arm64 + linux-x64 only) · 2 e2e specs via selectHomeProject · a umask-dependent tool.write permissions assertion

144 commits since amicode.9. Brings the Claude 5 provider/model transform
port, the /api/event resolved-Location fix, and the accumulated amicode UI
work (organic context tree, vault side panel, entity modals, a11y sweep).
opencode ead3274d3 changed settings.tsx to
`newLayoutDesigns: createMemo(() => true)` — unconditional, no channel
dependency. That minifies to `newLayoutDesigns:Z(()=>!0)`, so the grep for
the old channel-gated shape `newLayoutDesigns,<VAR>)` finds nothing and
vsix-gate reds on any binary from amicode.10 onward.

Accept the new shape, keep the legacy channel-gated one as a fallback, and
still fail closed on a genuine gate-OFF build.

Also fixes the silent-failure bug: under `set -euo pipefail` the non-matching
grep aborted the script before its own "pattern not found" diagnostic could
print, so the job failed with no explanation.

Mirrors harmoniqs/opencode#81, which fixed the same two bugs in the fork's
release workflow.
@jack-champagne
jack-champagne merged commit d8f3d03 into main Jul 29, 2026
5 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant