Repository navigation
chore: release v0.82.0 - #584
Merged
Merged
Conversation
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Minor release: OpenCode 2.2.5 now shares one process between sessions under
auto, with the same rules as 2.2.3.Behavior changes for hosts
OpenCode 2.2.5 shares a process under
auto(#581)opencodeRuntimenow admits exactly two OpenCode versions for shared placement: 2.2.3 (since 0.81.0) and 2.2.5. A host that runs OpenCode 2.2.5 on Linux x64, macOS arm64 or Windows x64 (as reported by the host's Nodeprocess.platformandprocess.arch) and opens sessions underauto, the default, now gets one shared native process when the 0.81.0 conditions below are met, instead of one process per session.Session.placementthen reportsshared,resources()describes the whole process (scope: "shared_process"; null on Windows), and disposal recordsreleased, as described in the 0.81.0 notes. An explicitsharedrequest on 2.2.5 is now accepted instead of refused.The 0.81.0 rules now apply to both versions:
2.2.5,v2.2.5andopencode v2.2.5are accepted), and the running process must report exactly"2.2.3"or"2.2.5"asagentInfo.versionininitialize. The two need not match: an installation snapshot of 2.2.3 that launches an upgraded 2.2.5 executable still shares. Any other value, including 2.2.4, 2.2.6 or a pre-release such as2.2.5-dev, keeps sessions isolated underautoand is refused for explicitshared.autoand is refused for explicitshared.launchArgs, a relative executable path, a relative home or XDG directory, a relativeOPENCODE_CONFIGorOPENCODE_CONFIG_DIR, any relative or emptyPATHentry (including the./node_modules/.binentry pnpm adds underpnpm run), and other platforms.runtime.execution === "process" ? runtime.withPlacement("isolated") : runtime, as Raft, Ferry and rowrow do, keep isolated OpenCode sessions on every version.UnsupportedOptionErrormessages for the version, platform andinitializerefusals now name both versions; match onoption: "placement", not on the text.The admission rests on a complete three-platform evidence run for 2.2.5: all seven native observations, cross-directory project discovery and user-configuration refresh pass on each platform, and in these samples ten shared sessions used less memory and idle CPU than ten separate processes (admission decisions) (#580). OpenCode's concurrent cold-start database race between separate processes, and its missing MCP tools after a cold resume, still reproduce on 2.2.5 (Linux x64 check) and remain known native limitations.
Tests and CI
checkjob now installs OpenCode 2.2.5 for the shared session behavior suite, the real shared and isolated lifecycle checks, and the isolated tool-cleanup check. CI no longer runs native OpenCode 2.2.3; its admission rests on its recorded evidence and on unit tests, with a scripted agent, of the version gate for both versions (feat(opencode): admit measured 2.2.5 shared placement #581).exitedor terminalcleanuprecord now allow 15 seconds instead of one or five, room for three five-second Windows process-table reads, and print the session records when they fail (test(cleanup): wait for final asynchronous exit records #583).🤖 Generated with Claude Code