fix(opencode): close Linux stop orphan windows#460
Draft
vansin wants to merge 1 commit into
Draft
Conversation
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.
Outcome
This draft closes the Linux OpenCode stop-orphan window and records the
2.3.0-preview.35/2.5.0-preview.27evidence pair. It does not publish either package or change any dist-tag.Root cause
The old launcher could time out and SIGKILL only the
agent-nodewrapper while its detached OpenCode ACP process survived. A second race allowed a turn queued before SIGTERM to enter the OpenCode opening path after shutdown had already cleaned the first client, leaving a credential-scoped launch root behind.Linux validation on commit
1f1f04d9All seven RFC-029/OpenCode Docker gates passed on this exact source tree:
opencode-ai@1.18.1kernel-live — PASS, zero post-stop PIDsgit diff --checkis clean. The staged secret scan found only explicitly synthetic test fixtures; no real credential was added.DO NOT MERGE / promote remains frozen
This is intentionally a draft. Review found two unresolved blockers:
/proc. Windows/macOS bound stop therefore fails closed rather than completing successfully. A platform design plus real Windows validation is required.Required before merge/promote: resolve both blockers, rerun affected gates on the new head, pass true Windows validation, and review the draft CI (especially the hard
rename-ghost-gate).