deprecate: make ak run the canonical executor - #84
Merged
Conversation
15 tasks
robertelee78
added a commit
to robertelee78/agentic-kit
that referenced
this pull request
Jul 29, 2026
6 tasks
pacphi
pushed a commit
that referenced
this pull request
Jul 29, 2026
…settled terminal stream (#85) * fix(execution): opencode serve protocol — object-shaped model post + settled terminal stream Found by the #76 three-host live smoke, where every opencode worker failed and the CLI then crashed: 1. prompt_async 400s: the adapter posted the configured model as a bare string, but opencode serve's schema expects {providerID, modelID} or null ("Expected object | null, got \"opencode/kimi-k3\" at [\"model\"]" — verified against serve 1.18.8). provider/model strings are now split on the first slash into the schema object (model ids may contain slashes); a model with no provider prefix is omitted so the server's own configured default applies — never a guessed provider. 2. Process crash after the failure verdict: when the prompt post threw, launch() stopped the owned server but left the terminal SSE promise unconsumed; its socket-close rejection surfaced as an unhandled rejection (TypeError: terminated, UND_ERR_SOCKET) that killed node AFTER the run verdict had printed. A no-op second consumer is attached at creation — observe() still sees genuine terminal rejections. Regression tests: serve-shaped model posts (incl. slash-containing model ids and the bare-id omission), and a 400-prompt teardown asserting no unhandled rejection while the owned server still receives SIGTERM. Verified end-to-end: with this fix, the opencode leg of the #76 smoke completes — ak run feature with all four workers routed to opencode (kimi-k3) succeeded, produced the sandboxed repo mutation, and emitted normalized terminal evidence (observed model, provider, durations). * docs(execution): drop stale 'no command invokes this adapter yet' contract comment The adapter has been the ak run path for opencode workers since #82/#84; the comment was false in a security-sensitive adapter (swarm architecture finding).
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.
Summary
ak runthe canonical execution surface and warn when the legacyak dualwrapper is invokedak dualremains temporarily for existing Claude+Codex scripts, including its legacy escalation behavior; #83 tracks migrating or retiring that capability before removal.Validation
pnpm run check