Skip to content

fix(acp): restore session options and reasoning boundaries - #48225

Merged
nexxeln merged 5 commits into
anomalyco:devfrom
JacobNWolf:jacobwolf/acp-thinking-model-resumption-fix
Sep 11, 2026
Merged

nexxeln merged 5 commits into
anomalyco:devfrom
JacobNWolf:jacobwolf/acp-thinking-model-resumption-fix

Conversation

@JacobNWolf

@JacobNWolf JacobNWolf commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Issue for this PR

Fixes #31961, which was closed but is the same issue as half of this PR.

Type of change

  • Bug fix
  • New feature
  • Refactor / code improvement
  • Documentation

What does this PR do?

This PR fixes two bugs:

  1. Preserves the ACP reasoning-part boundaries during live streaming and transcript relay. Previously thinking chunks from models like OpenAI's GPT-5.6 Sol were being concatenated with no separators (i.e. "Thinking chunk 1Thinking chunk 2").
  2. Restores persisted model, variant, and agent selections when loading, resuming, or forking sessions using ACP. When resuming a session, the model for the session was preselected but its reasoning effort was not picked back up from the session.

How did you verify your code works?

The video below shows me booting a compiled version of OpenCode after the changes in ACP mode in Zed, running a prompt with GPT-5.6 Sol on high effort level, quitting Zed, then reopening and seeing the correct level chosen.

Screenshots / recordings

OpenCodeResumeSession.mp4

Checklist

  • I have tested my changes locally
  • I have not included unrelated changes in this PR

If you do not follow this template your PR will be automatically rejected.

@github-actions github-actions Bot added needs:compliance This means the issue will auto-close after 2 hours. needs:issue labels Sep 9, 2026
@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Thanks for your contribution!

This PR doesn't have a linked issue. All PRs must reference an existing issue.

Please:

  1. Open an issue describing the bug/feature (if one doesn't exist)
  2. Add Fixes #<number> or Closes #<number> to this PR description

See CONTRIBUTING.md for details.

@JacobNWolf
JacobNWolf marked this pull request as ready for review September 9, 2026 21:28
@github-actions github-actions Bot removed needs:issue needs:compliance This means the issue will auto-close after 2 hours. labels Sep 9, 2026
@github-actions

github-actions Bot commented Sep 9, 2026

Copy link
Copy Markdown
Contributor

Thanks for updating your PR! It now meets our contributing guidelines. 👍

@russrapper15-png

russrapper15-png commented Sep 10, 2026 via email

Copy link
Copy Markdown

@nexxeln
nexxeln merged commit 95daf90 into anomalyco:dev Sep 11, 2026
7 of 8 checks passed
rossigee pushed a commit to rossigee/opencode that referenced this pull request Sep 18, 2026
…#48225)

Co-authored-by: Shoubhit Dash <shoubhit2005@gmail.com>
1056674754 added a commit to 1056674754/opencode that referenced this pull request Sep 19, 2026
Upstream v1.18.30 (3104c14, merged at 16220da) -> v1.18.31 (014614d),
25 commits / 108 files. Staged delta vs pre-merge fork HEAD is identical to
the upstream tag-to-tag diff (108 files, +3425/-2146), confirming a clean
adoption.

Functional changes:
- fix(acp): restore session options and reasoning boundaries (anomalyco#48225) —
  acp/service.ts +193 lines; isolated from the fork snapshot architecture.
- fix(opencode): request summarized adaptive thinking (anomalyco#48269) — 1 line in
  github-copilot/models.ts.
- fix(tui): surface remote auth startup errors (anomalyco#49016).
- fix(ui): Merge Gateway logo (anomalyco#42015).
- chore(deps): bump @ai-sdk/gateway to 3.0.191 (anomalyco#48710) and llm package
  (11 packages installed via bun install).
- console/stats/go: route migrated Go inference, batch workspace block
  endpoints, Go billing source forwarding, DeepSeek V4.1 Flash (model +
  stats normalization + promo docs), retention sync timeout fix, GLM-5.3
  allowance docs.

Conflicts resolved: 29 package.json version bumps (rebranded 1.18.31-sscity),
bun.lock (took upstream, rebranded workspace entries via bun install). Zero
source conflicts; fork-sensitive files (transform.ts, provider.ts,
config.ts) untouched upstream in this range. Fork deltas verified intact vs
v1.18.31: ProviderSnapshot architecture (+492 in provider.ts), GLM
normalization (+77 in transform.ts), config getFresh/commitFresh (+14).
Tests: provider, transform, bedrock, config, v2, azure plugin, session
retry/llm — 1058 pass / 0 fail across 15 files; typecheck clean.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ACP: Zed: Deepseek V4 Flash Free doesn't consistently broadcast reasoning effort

3 participants