8000 bug: opencode-plugin folder not included in install zip · Issue #149 · amirlehmam/wmux · GitHub
[go: up one dir, main page]

Skip to content

bug: opencode-plugin folder not included in install zip #149

Closed
8000

Description

@kudlosh

The resources/opencode-plugin/ folder is not present in the distributed .zip release.

Steps to reproduce:

  1. Download the latest wmux--win-x64.zip from the releases page
  2. Extract it
  3. Look in resources/ — there is no opencode-plugin/ folder

Expected: resources/opencode-plugin/wmux.js should be present in the release zip, the same way wmux-orchestrator/ is.

Why it matters: the OpenCode plugin is required for OpenCode integration, and is missing from the zip.

Activity

  1. changed the title [-]opencode-plugin folder not included in install zip[/-] [+]bug: opencode-plugin folder not included in install zip[/+] on Aug 9, 2026
  2. amirlehmam commented on Aug 10, 2026

    @amirlehmam
    Owner

    Confirmed and fixed in v0.47.0. Your reproduction was exact — the folder was never in the zip, in any release since the plugin was introduced.

    Cause

    resources/opencode-plugin was simply absent from extraResources in electron-builder.json, so it was never copied next to app.asar. One line:

    { "from": "resources/opencode-plugin", "to": "opencode-plugin" }

    What made it invisible is the fallback in ensureOpencodePlugin(). It resolves process.resourcesPath/opencode-plugin/wmux.js when packaged and a repo-relative path otherwise, and on a miss it warns to a console no user sees and returns. So it worked perfectly in npm run dev and silently did nothing in every install — the failure mode had no symptom beyond the one you noticed by looking.

    Why the test suite didn't catch it

    There was already a packaging.test.ts. It was written after #81 (wmux-hook.js missing from extraResources, which broke every Claude Code hook) and it asserted two literal entries — the two that had already broken. A test that enumerates the failures it knows about can only ever catch those, and this walked straight past it.

    That's now derived instead of enumerated: the test scans src/main/ for process.resourcesPath references and requires each one to be listed in extraResources. Adding a runtime resource without packaging it fails npm test, which gates the release build, so a tag that would ship this bug can't become a download. Verified it fails without the fix before trusting it.

    Verified in the artifact, not just the config

    resources/opencode-plugin/wmux.js  (2366 bytes)
    

    read out of the published wmux-0.47.0-win-x64.zip.

    Upgrading

    Install 0.47.0 and the plugin installs itself to ~/.config/opencode/plugin/wmux.js on next launch — provided agent integration is enabled, since that write lives behind the consent gate from #132 (Settings → General → Agent integration → Orchestrator plugin). If you'd previously dropped wmux.js in there by hand, wmux will update it in place; it's version-marked, so your own file would have been left alone.

    Thanks for the clean report — steps, expected, and why it matters, which is what made it a one-line diagnosis.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      0