Skip to content

feat: update volcengine-plan models to match official Coding Plan list#1350

Open
Astro-Han wants to merge 5 commits into
devfrom
pawwork/volcengine-plan-models-update
Open

feat: update volcengine-plan models to match official Coding Plan list#1350
Astro-Han wants to merge 5 commits into
devfrom
pawwork/volcengine-plan-models-update

Conversation

@Astro-Han

@Astro-Han Astro-Han commented Jun 17, 2026

Copy link
Copy Markdown
Owner

Summary

Update volcengine-plan visible model list from 11 to 10 models, matching the official Coding Plan model list as of 2026-06-17. Add minimax-m3, glm-5.2, deepseek-v4-flash, deepseek-v4-pro. Remove minimax-m2.5, glm-5.1, glm-4.7, deepseek-v3.2, kimi-k2.5.

Why

The official volcengine Coding Plan model list has changed. GLM-5.1 is deprecated (即将下线), replaced by GLM-5.2. Several models were removed and new ones added. PawWork's local overlay needs to stay in sync.

Related Issue

None.

Human Review Status

Pending

Review Focus

  • Model parameter accuracy (context window, output limit, reasoning flags, interleaved)
  • Table-driven test coverage for key model parameters

Risk Notes

  • DeepSeek V4 Flash/Pro: added interleaved: { field: "reasoning_content" } based on Volcengine Ark live testing (reasoning_content returned in responses, accepted in multi-turn input). This matches GLM/Kimi pattern. If DeepSeek official API differs from Ark, this may need provider-specific override.
  • Kimi K2.6 output corrected from 32768 to 131072 based on Volcengine Ark live testing (131072 accepted, 262144 rejected by API).
  • GLM-5.2 context set to 1,000,000 per models.dev (not 8M as initially configured).

How To Verify

Model list: 10 visible models match volcengine docs 快速开始 page
GLM-5.2: ctx=1,000,000 (models.dev confirmed)
DeepSeek V4 Flash/Pro: reasoning=true, interleaved={field:"reasoning_content"} (Ark live test confirmed)
Kimi K2.6: output=131,072 (Ark live test: 131072 accepted, 262144 rejected)
Table-driven test: locks context/output/reasoning/interleaved for all 5 new/changed models
Provider test diff: only model assertion changes, no formatting noise

Screenshots or Recordings

Not applicable — no visible UI changes.

Checklist

  • Type label — this PR carries exactly one of bug, enhancement, task, documentation. Type labels are author-added; the labeler bot does NOT assign them. Add the label in the GitHub UI, then tick this.
  • Routing labels — this PR carries at least one of app, ui, platform, harness, ci. The labeler bot assigns these on PR open based on changed paths. Confirm the bot's choice (or override if wrong), then tick this.
  • Priority label — this PR carries exactly one of P0, P1, P2, P3. The priority-triage bot suggests one on PR open. Confirm or override, then tick this.
  • Human Review Status above is set to Pending, Approved by @<reviewer>, or Not required: <reason> (default is Pending; "not required" is restricted to bot-authored low-risk PRs).
  • I linked the related issue, or stated in Summary why there is no issue.
  • I described the review focus and any meaningful risks.
  • I replaced the example block in How To Verify with the real verification steps and the key result for each.
  • I did not introduce unrelated refactors, dependencies, generated files, or file changes beyond the stated scope.
  • (conditional) I manually checked visible UI or copy changes when needed, with screenshots or recordings. Leave unticked only if no visible UI or copy changed.
  • (conditional) I considered macOS and Windows impact for platform, packaging, updater, signing, paths, shell, or permissions changes. Leave unticked only if no platform/packaging surface was touched.
  • (conditional) I called out docs, release notes, dependencies, permissions, credentials, deletion behavior, generated content, or local file changes when relevant. Leave unticked only if none of those surfaces was touched.
  • I reviewed the final diff for unrelated changes and suspicious dependency changes.
  • I am targeting dev, and my PR title and commit messages use Conventional Commits in English.

@coderabbitai

coderabbitai Bot commented Jun 17, 2026

Copy link
Copy Markdown
Contributor

Warning

Review limit reached

@Astro-Han, we couldn't start this review because you've reached your PR review rate limit.

More reviews will be available in 51 minutes and 51 seconds. Learn how PR review limits work.

Your organization has used up its prepaid credits, and credit purchases are no longer available. Enable the review add-on in the billing tab to keep reviews running — you're only billed for reviews past your plan's rate limits ($0.25/file).

⌛ How to resolve this issue?

After more reviews become available, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based credits.

🚦 How do rate limits work?

CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan refill rate.

For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, the refill rate gradually slows as usage increases. The highest same-day bursts are limited more strictly.

Please see our Fair Usage Limits Policy for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: Path: .coderabbit.yaml

Review profile: CHILL

Plan: Pro Plus

Run ID: 5ceee604-a165-4525-9f78-70a31bb889b8

📥 Commits

Reviewing files that changed from the base of the PR and between ac1d1e1 and cfcb470.

📒 Files selected for processing (5)
  • packages/app/src/context/models.test.ts
  • packages/app/src/utils/model-order.test.ts
  • packages/opencode/src/provider/pawwork-providers.ts
  • packages/opencode/test/provider/provider.test.ts
  • packages/util/src/volcengine-plan.ts
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch pawwork/volcengine-plan-models-update

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@Astro-Han Astro-Han added the app Application behavior and product flows label Jun 17, 2026
@github-actions github-actions Bot added harness Model harness, prompts, tool descriptions, and session mechanics P2 Medium priority labels Jun 17, 2026

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested priority: P2 (includes user-path files (packages/app/src/context/models.test.ts, packages/app/src/utils/model-order.test.ts)).

P1/P0 are reserved for maintainer confirmation. Please relabel manually if this is a release blocker, security issue, data-loss risk, or updater/runtime failure.

@Astro-Han Astro-Han added the enhancement New feature or request label Jun 17, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request updates the Volcano Engine model configurations, upgrading several models to newer versions (such as GLM 5.2 and MiniMax M3), adding DeepSeek V4 Flash and Pro, and removing outdated models (GLM 4.7, DeepSeek V3.2, and Kimi K2.5). Corresponding tests and helper files have been updated to reflect these changes. Feedback is provided regarding the new deepseek-v4-pro model, which is missing the interleaved configuration required to correctly parse reasoning tokens from the provider.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread packages/opencode/src/provider/pawwork-providers.ts Outdated
@Astro-Han Astro-Han force-pushed the pawwork/volcengine-plan-models-update branch 2 times, most recently from c2e2ce7 to 43c07dd Compare June 17, 2026 15:29
Add minimax-m3, glm-5.2, deepseek-v4-flash, deepseek-v4-pro.
Remove minimax-m2.5, glm-5.1, glm-4.7, deepseek-v3.2, kimi-k2.5.

P1 fix: GLM-5.2 context corrected from 8M to 1M (models.dev confirmed).
P2 fix: DeepSeek V4 Flash now includes reasoning: true (models.dev confirmed).

Note: provider.test.ts includes auto-formatted whitespace changes from the
edit tool (getModel, Auth.set, localProviderImportSpec line wrapping).
These are cosmetic only and do not affect behavior.
@Astro-Han Astro-Han force-pushed the pawwork/volcengine-plan-models-update branch from 43c07dd to 0c693a8 Compare June 17, 2026 15:48
@Astro-Han

Copy link
Copy Markdown
Owner Author

Review Feedback Addressed

P3: Negative interleaved assertion ✅

Fixed: replaced conditional if (spec.interleaved) with unconditional expect(model.interleaved ?? false).toEqual(spec.interleaved ?? false). Now if any model accidentally gets interleaved, the test will fail even for models like minimax-m3 that don't expect it.

Verified: DeepSeek V4 Flash/Pro — Ark multi-turn with reasoning_content

DeepSeek V4 Pro — Step 1: Single-turn returns reasoning_content

POST https://ark.cn-beijing.volces.com/api/coding/v3/chat/completions
Body: {"model":"deepseek-v4-pro","messages":[{"role":"user","content":"What is 2+2? Think step by step."}],"max_tokens":500}

Response:
  model: deepseek-v4-pro
  reasoning_content present: true
  reasoning_content preview: We are asked: "What is 2+2? Think step by step." This is a simple arithmetic que...
  content preview: The sum of 2 and 2 is 4.

DeepSeek V4 Pro — Step 2: Multi-turn with reasoning_content in history — no 400

POST https://ark.cn-beijing.volces.com/api/coding/v3/chat/completions
Body: {"model":"deepseek-v4-pro","messages":[
  {"role":"user","content":"What is 2+2?"},
  {"role":"assistant","reasoning_content":"2+2=4 by addition","content":"2+2 = 4"},
  {"role":"user","content":"And 3+3?"}
],"max_tokens":500}

Response:
  HTTP: OK (no 400)
  content: 3+3 = 6

DeepSeek V4 Flash — same behavior confirmed:

Step 1 — reasoning_content present: true
Step 2 — multi-turn with reasoning_content in history: HTTP OK, content: 10

Conclusion: Volcengine Ark accepts reasoning_content in assistant message history, unlike DeepSeek official API which returns 400. The interleaved: { field: "reasoning_content" } config is correct for this provider.

Verified: Kimi K2.6 output cap = 131072 ✅

Test A: max_tokens=131072 — accepted

POST https://ark.cn-beijing.volces.com/api/coding/v3/chat/completions
Body: {"model":"kimi-k2.6","messages":[{"role":"user","content":"hi"}],"max_tokens":131072}

Response:
  HTTP: OK
  model: kimi-k2.6
  finish_reason: stop
  completion_tokens: 60

Test B: max_tokens=262144 — rejected

POST https://ark.cn-beijing.volces.com/api/coding/v3/chat/completions
Body: {"model":"kimi-k2.6","messages":[{"role":"user","content":"hi"}],"max_tokens":262144}

Response:
  error.code: InvalidParameter
  error.message: The parameter `max_tokens` specified in the request are not valid: integer above maximum value, expected a value <= 131072

Conclusion: Volcengine Coding Plan caps Kimi K2.6 at 131072 output tokens (not the model's native 262144). Current overlay value is correct.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

app Application behavior and product flows enhancement New feature or request harness Model harness, prompts, tool descriptions, and session mechanics P2 Medium priority

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant