feat(settings): refresh Tencent Coding/Token Plan per 2026-08 official docs - #155
Conversation
733957d to
62f0170
Compare
zhuowp
left a comment
There was a problem hiding this comment.
请求修改,发现 1 个阻塞性 P1:
[P1] 删除腾讯云 Coding Plan 模板与两条端点识别所依据的“当前不可用”前提已经失效。腾讯云 2026-08-21 更新的官方 Coding Plan 概述 明确给出本仓当前使用的 OpenAI 兼容 Base URL https://api.lkeap.cloud.tencent.com/coding/v3,并列出 tc-code-latest;同页支持工具中也已包含 Codex。当前官方 Token Plan 文档仍明确使用 https://api.lkeap.cloud.tencent.com/plan/v3,例如 Kilo Code 接入说明。这与本 PR 同时删除 coding/v3、plan/v3 识别及 tc-code-latest 模板直接冲突。
代码本身也不能推出“CodeWhale 没有一等 provider,所以模板不可用”:现有实现刻意通过通用 OpenAI-compatible route 接入,正在被本 PR 删除的 coding_plan_vendor_routes_reasoning_without_model_name_heuristics 测试已经证明该 route 能解析为 ApiProvider::Openai。本 PR 没有带有效套餐凭证的失败复现或服务端拒绝证据;现有 CI 又停留在 2026-08-04,早于上述官方文档更新。若现在合入,新购买 Coding Plan/Token Plan 的用户将无法从目录配置官方当前入口,存量 /plan/v3 配置也会失去 coding-plan 元数据与独立 reasoning 字段解析。
请按现行腾讯云文档重新验证:若 live 交互调用可用,应保留/更新相应模板和端点识别(Coding Plan 与 Token Plan 如语义不同应分别建模);只有在能提供当前服务端拒绝 Pinvou 交互式客户端的可复现证据或明确适用条款时,才应删除,并同步把证据和验证写入 PR 正文。
其余 5 文件删除/i18n/图标清理未发现独立代码问题。本地通过:npm run test:ui-language、python scripts/architecture-guard.py、cargo fmt --check、git diff --check。定向 cargo test coding_plan --lib 在依赖编译/链接阶段超过 5 分钟,未取得执行结果;该限制不影响上述产品逻辑 finding。
62f0170 to
be5aed3
Compare
|
感谢详细的审阅,@zhuowp。逐条核实后确认 P1 成立,分支已按「保留/更新」方向重建(be5aed3,force-push,已 rebase 到最新 main 322b785): 事实核实(全部成立)
按最新文档的更新
一处文档分歧已按各自页面执行:Coding Plan 页标 kimi-k2.5 于 2026-08-31 下线,Token Plan 页(08-11 版)标其已于 2026-07-31 下线——故 kimi-k2.5 仅列在 Coding Plan 模板。 验证: |
|
Second-round verification of the rebuilt branch (be5aed3) Independent re-verification before requesting re-review; everything below was checked against the official docs and the actual code/tests on this branch. Official-doc cross-check (all confirmed)
Regression protection: removing either lkeap arm in Local verification re-run on this machine: Known non-blocking observations (disclosed for transparency; none affects correctness):
@zhuowp the three items from your review are addressed in this rebuild — could you take another look? |
zhuowp
left a comment
There was a problem hiding this comment.
Re-review of be5aed354: the original Tencent-plan blocker is substantively addressed-the two plans are modeled separately, both lkeap endpoints retain vendor metadata, aliases are scoped by catalog/base URL, and focused Rust/JS regression coverage is present. The branch cannot be approved in its current integration state:
[P1] Reconcile the settings i18n split from current main. git merge-tree --write-tree origin/main HEAD reports a modify/delete conflict for pinvou3-app/src/features/settings/settings-i18n.js: current main deleted that monolithic module during the per-language i18n migration, while this branch adds all new Tencent copy back to it. Merging without a semantic rebase would either resurrect the removed architecture or drop the new zh/en/ja strings and customTokenPlanDesc. Rebase onto current main, place the new keys in the current per-language modules/exports, retain language parity, and rerun the catalog plus language-coverage gates.
No additional defect was found in the endpoint-identification or catalog-matching logic. git diff --check passes; the blocker is the reproducible merge conflict against current main.
be5aed3 to
61b02d1
Compare
|
Rebased onto current
Resolution:
Gates rerun on the rebased tree:
No code changes beyond the conflict resolution — the diff footprint stays 8 files, +155/-5. |
zhuowp
left a comment
There was a problem hiding this comment.
Re-review of 61b02d1: the prior current-main i18n integration blocker is resolved. The Tencent Coding Plan and Token Plan are modeled separately, endpoint metadata is preserved, aliases stay scoped by catalog/base URL, the branch is merge-clean, and the focused catalog (45/45), UI language coverage, architecture guard, and diff checks pass.
One repository-policy issue remains:
[P2] Translate the PR-added developer-facing comments and test diagnostics to English. The new Rust documentation in src-tauri/src/platform/prefs/model.rs, the new catalog comments in src/features/settings/model-catalog.js, and the new comments/test names in tests/model_catalog_grouping.test.js are Chinese. Repository conventions require code comments and developer diagnostics to use English. Localized zh/en/ja UI copy may remain localized. Please translate these additions and re-request review.
61b02d1 to
116b663
Compare
|
第三轮 P2 核实与处理(116b663,已 rebase 到最新 main) P2(新增注释/测试诊断译英)核实成立,已全部修复:
Rebase: 已 rebase 到最新 验证(均在 rebase 后的树上重跑): @zhuowp 麻烦重新审查。 |
zhuowp
left a comment
There was a problem hiding this comment.
Re-review of 116b663526:
-
[P1] Refresh the Token Plan catalog against the current official model table. Tencent's official Token Plan quick-start page was updated on 2026-08-27 and currently lists
kimi-k2.5/kimi-k-2-5in the general Token Plan, with retirement scheduled for 2026-08-31: https://cloud.tencent.com/document/product/1823/130119. This branch still follows the older revision:model-catalog.jsdeliberately omits Kimi-K2.5 andmodel_catalog_grouping.test.jsasserts that it retired on 2026-07-31. On 2026-08-29 that assertion is false and causes a currently supported official model to be omitted from the Token Plan preset and classified as custom. Please add the current row/aliases and remove it after retirement becomes effective, or defer this catalog refresh until the retirement date and update the comments/tests/PR body to the then-current official state. -
[P2] Reconcile the additional official DeepSeek IDs. The same current table lists
deepseek/deepseek-v4-flash-0731,deepseek/deepseek-v4-flash,deepseek/deepseek-v4-pro-0813, anddeepseek/deepseek-v4-proalongside the two canonical date IDs. The new catalog comment says parallel official spellings are registered inlegacyAliases, but these spellings are not. Either register them with grouping regressions or narrow the documented/catalog completeness claim explicitly.
The prior English collaboration-text finding is resolved. Local checks passed for the 45-case catalog suite, UI language coverage, architecture guard, and git diff --check; the blocker is the stale product-data assumption above.
116b663 to
59e5800
Compare
|
Fourth-round handling of the agent-audit findings (59e5800, rebased onto latest Both items verified against the live official pages and fixed. [P1] Token Plan catalog refreshed to the current official table — confirmed and fixed. A cache-busting fetch of https://cloud.tencent.com/document/product/1823/130119 shows the 2026-08-27 13:38 revision (an earlier fetch of mine had served a CDN-cached 2026-08-11 copy, which is where the stale "retired 2026-07-31" assumption came from). The current general tier lists
[P2] DeepSeek parallel spellings registered — confirmed and fixed. The same current table lists Rebase: rebased onto current Gates (all rerun on the rebased tree): @zhuowp could you take another look? |
59e5800 to
b5b1f33
Compare
zhuowp
left a comment
There was a problem hiding this comment.
Re-reviewed at b5b1f33f1. The 2026-08-27 official Tencent Token Plan table still lists the added general/Hy models and accepted parallel IDs, including kimi-k2.5 / kimi-k-2-5 with the explicit 2026-08-31 retirement notice. The separate /coding/v3 and /plan/v3 catalogs, endpoint normalization, legacy aliases, routing metadata, and trilingual UI copy are coherent. Local verification passes all 45 model-catalog cases, the architecture guard, merge-tree check, and git diff --check.\n\nThe current Linux rust-test failure is the shared hosted-runner disconnect after a successful compile step, not a test assertion. No blocking finding remains; the retiring Kimi row should be removed after the documented retirement takes effect.
Rebase the branch onto latest main: the endpoint/template removal is dropped in favor of keeping and updating the Tencent entries, per the review finding that the removal premise no longer holds. Official-doc alignment (TokenHub product 1823): - Coding Plan overview (130092, updated 2026-08-21) documents OpenAI- compatible base /coding/v3 and a supported-tool list that includes Codex; catalog now lists its full three-model table (tc-code-latest, glm-5/glm-5-0, kimi-k2.5/kimi-k-2-5, the latter retiring 2026-08-31). - Token Plan (130075/130119) is a separate subscription on OpenAI- compatible base /plan/v3 with a different model lineup; add a dedicated tencent_token_plan catalog template (general + Hy tier models) instead of conflating it with Coding Plan. Refreshed to the 2026-08-27 revision of 130119: kimi-k2.5/kimi-k-2-5 is in the general tier (retiring 2026-08-31, now agreeing with the Coding Plan page) and the four additional official DeepSeek spellings are registered as legacyAliases. - Alternative official spellings are registered as legacyAliases so every accepted wire id matches the catalog. - Keep both lkeap endpoints in identify_coding_plan_endpoint and document the official basis; add regression tests covering every catalog endpoint plus user-input normalization, and a /plan/v3 case in the bridge reasoning-route test, so stored configs keep coding-plan metadata and separate reasoning-field parsing. - Add trilingual i18n for the new template, model descriptions, and a customTokenPlanDesc branch so Token Plan custom rows no longer render Coding Plan copy. Verification: cargo test --lib coding_plan 6 passed on the rebased tree (full --lib: 1678 passed + 1 pre-existing unrelated flake on the round-3 tree); model catalog grouping 45 passed; test:ui-language, cargo fmt --check, architecture-guard, fork-guard --fast, npm lint all pass. Signed-off-by: asto <asto18089@126.com>
b5b1f33 to
1011fdc
Compare
…ns docs) to latest base
Background
The original version of this PR removed the Tencent Cloud Coding Plan template and both lkeap endpoint identifications on the premise that the service was unusable. Review (thanks @zhuowp) correctly flagged that premise as outdated, and the branch has been rebuilt to instead keep and update the Tencent entries per the current official docs.
Verification of the review's factual basis:
https://api.lkeap.cloud.tencent.com/coding/v3, modeltc-code-latest, and a supported-tool list that now includes Codex.https://api.lkeap.cloud.tencent.com/plan/v3as an OpenAI-compatible base.401 not_authorized(standard auth error, not a client-tool rejection).Changes
model-catalog.js):tencent_coding_plannow lists the full official three-model table —tc-code-latest,glm-5(aliasglm-5-0),kimi-k2.5(aliaskimi-k-2-5, official retirement 2026-08-31). Newtencent_token_plantemplate models the separate Token Plan subscription on/plan/v3(general-tier models incl.glm-5.2/glm-5.1, DeepSeek V4 dated ids,minimax-m2.7, retiringkimi-k2.5, plus Hy-tierhy3), refreshed to that page's 2026-08-27 revision. Alternative official spellings (e.g.glm-5-0,kimi-k-2-5, and thedeepseek/deepseek-v4-flash[-0731]/deepseek/deepseek-v4-pro[-0813]forms) are registered aslegacyAliasesso every accepted wire id matches.prefs/model.rs): both lkeap endpoints are kept and now documented with their official-doc basis; added regression tests covering every catalog endpoint (incl. negative cases and user-input normalization) so stored configs cannot silently lose coding-plan metadata again.bridge.rs): vendor routing and separate reasoning-field parsing fortencentare kept; the route test gains a/plan/v3case.src/shared/i18n/{zh,en,ja}.js,SettingsView.jsx): trilingual entries for the new template, model descriptions, and acustomTokenPlanDescbranch so Token Plan custom rows show correct copy in all three languages. The monolithicsettings-i18n.jswas removed on main by the per-language i18n split (perf: lazy-loading round 2 — i18n per-language chunks, bridge init parallelization, panel-level lazy loading, knowledge model first-use load #341), so the keys live in the per-language modules.model_catalog_grouping.test.js): coverage for both Tencent templates — catalog hits, alias compatibility, and no cross-matching between the two base URLs.CONTRIBUTING.md; localized zh UI-copy keys (catalogtitle/descand the i18n dictionaries) stay localized.Verification
cargo test --lib: 1678 passed / 1 failed — the failure is a pre-existing cross-test isolation flake (dingtalk_skill_gate_extracts_and_removes_official_mono_skill; passes in isolation and noruntime_bundlefile is touched by this PR). Includes the 6coding_plantests; local SIGBUS during compile worked around withCARGO_INCREMENTAL=0 CARGO_PROFILE_DEV_OPT_LEVEL=0, a known local-machine issuenode tests/model_catalog_grouping.test.js: 45 passednpm run test:ui-language,npm run lint(0 errors),cargo fmt --check,python3 scripts/architecture-guard.py,./scripts/fork-guard.sh --fast: all passmain(f7e3d8e);git merge-tree --write-tree origin/main HEADis cleanKnown notes
kimi-k2.5retires 2026-08-31 (the Token Plan page's 2026-08-27 revision lists it in the general tier). The row is listed in both Tencent templates with the retirement disclosed, and the grouping tests cover both spellings; drop it once the date passes./coding/anthropicfor Claude Code-style tools; this repo's OpenAI-compatible route does not use it (noted in code comments).