chore: sync upstream OpenCode with native goal support
Merge upstream OpenCode dev through dc0bfc5ea4, including the native /goal command and plugin RPC, while preserving Artisan’s OPENCODE_HOME isolation and contribution licensing.
Remove the documentation hunk from the release patch so upstream documentation changes cannot block patched releases. The patch applies cleanly with git am -3 to v2.2.2.
Validation: full upstream lint and typecheck passed (35 packages); 20 native goal/watchdog tests and 3 CLI path tests passed.
![View with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/view-with-codesmith-dark-v3-3x.png)
![Autofix with [code]smith](https://pr-comments-assets.blacksmith.sh/codesmith/autofix-with-codesmith-dark-3x.png)
Need help on this PR? Tag @codesmith-bot with what you need.
Summary by cubic
Merges upstream OpenCode dev into Artisan, adding the native /goal command, plugin RPC, and desktop GUI plugin support while preserving Artisan's OPENCODE_HOME isolation and contribution licensing.
Highlights
- Desktop GUI plugins land the new Extensions › Plugins management screen.
- Release CI is restructured into build, sign, and publish stages with digest-verified artifacts; only releasers can start stable releases.
- Nix hashes now publish through an auto-merged, scope-checked bot pull request.
Release handling
- The documentation hunk is removed from the release patch so upstream doc changes can't block patched releases.
- The patch applies cleanly with
git am -3to v2.2.2.
Validation: lint and typecheck pass across 35 packages; 20 native goal/watchdog tests and 3 CLI path tests pass.