Skip to content

feat(settings): refresh Tencent Coding/Token Plan per 2026-08 official docs - #155

Merged
asto18089 merged 1 commit into
mainfrom
codex/remove-tencent-coding-plan
Aug 31, 2026
Merged

feat(settings): refresh Tencent Coding/Token Plan per 2026-08 official docs#155
asto18089 merged 1 commit into
mainfrom
codex/remove-tencent-coding-plan

Conversation

@asto18089

@asto18089 asto18089 commented Aug 4, 2026

Copy link
Copy Markdown
Collaborator

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:

  • The official Coding Plan overview (https://cloud.tencent.com/document/product/1823/130092, updated 2026-08-21) documents the OpenAI-compatible base URL https://api.lkeap.cloud.tencent.com/coding/v3, model tc-code-latest, and a supported-tool list that now includes Codex.
  • The Token Plan access guide (1823/130075) and subscription doc (1823/130119) document https://api.lkeap.cloud.tencent.com/plan/v3 as an OpenAI-compatible base.
  • Plan terms restrict usage to interactive coding tools and forbid non-interactive API automation/batch use — an interactive coding agent falls in the permitted category; no reproducible server-side rejection of this client exists.
  • Unauthenticated probes of both endpoints return OpenAI-shaped 401 not_authorized (standard auth error, not a client-tool rejection).

Changes

  • Catalog (model-catalog.js): tencent_coding_plan now lists the full official three-model table — tc-code-latest, glm-5 (alias glm-5-0), kimi-k2.5 (alias kimi-k-2-5, official retirement 2026-08-31). New tencent_token_plan template 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, retiring kimi-k2.5, plus Hy-tier hy3), refreshed to that page's 2026-08-27 revision. Alternative official spellings (e.g. glm-5-0, kimi-k-2-5, and the deepseek/deepseek-v4-flash[-0731] / deepseek/deepseek-v4-pro[-0813] forms) are registered as legacyAliases so every accepted wire id matches.
  • Endpoint identification (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 (bridge.rs): vendor routing and separate reasoning-field parsing for tencent are kept; the route test gains a /plan/v3 case.
  • i18n (src/shared/i18n/{zh,en,ja}.js, SettingsView.jsx): trilingual entries for the new template, model descriptions, and a customTokenPlanDesc branch so Token Plan custom rows show correct copy in all three languages. The monolithic settings-i18n.js was 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.
  • Tests (model_catalog_grouping.test.js): coverage for both Tencent templates — catalog hits, alias compatibility, and no cross-matching between the two base URLs.
  • Comments: new developer-facing comments, Rust doc comments, JS test names, and test diagnostics are written in English per CONTRIBUTING.md; localized zh UI-copy keys (catalog title/desc and 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 no runtime_bundle file is touched by this PR). Includes the 6 coding_plan tests; local SIGBUS during compile worked around with CARGO_INCREMENTAL=0 CARGO_PROFILE_DEV_OPT_LEVEL=0, a known local-machine issue
  • node tests/model_catalog_grouping.test.js: 45 passed
  • npm run test:ui-language, npm run lint (0 errors), cargo fmt --check, python3 scripts/architecture-guard.py, ./scripts/fork-guard.sh --fast: all pass
  • Branch rebased onto latest main (f7e3d8e); git merge-tree --write-tree origin/main HEAD is clean

Known notes

  • Both official pages now agree that kimi-k2.5 retires 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.
  • The official docs also offer an Anthropic-compatible endpoint /coding/anthropic for Claude Code-style tools; this repo's OpenAI-compatible route does not use it (noted in code comments).
  • No CodeWhale submodule change; no fork fingerprint changes.

@asto18089
asto18089 requested a review from h3c-hexin August 4, 2026 07:13
@asto18089
asto18089 force-pushed the codex/remove-tencent-coding-plan branch from 733957d to 62f0170 Compare August 4, 2026 08:30

@zhuowp zhuowp left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

请求修改,发现 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/v3plan/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-languagepython scripts/architecture-guard.pycargo fmt --checkgit diff --check。定向 cargo test coding_plan --lib 在依赖编译/链接阶段超过 5 分钟,未取得执行结果;该限制不影响上述产品逻辑 finding。

@asto18089
asto18089 force-pushed the codex/remove-tencent-coding-plan branch from 62f0170 to be5aed3 Compare August 24, 2026 08:00
@asto18089 asto18089 changed the title fix(settings): 移除不可用的腾讯云 Coding Plan 模板与路由 feat(settings): refresh Tencent Coding/Token Plan per 2026-08 official docs Aug 24, 2026
@asto18089

Copy link
Copy Markdown
Collaborator Author

感谢详细的审阅,@zhuowp。逐条核实后确认 P1 成立,分支已按「保留/更新」方向重建(be5aed3,force-push,已 rebase 到最新 main 322b785):

事实核实(全部成立)

  • Coding Plan 概述(2026-08-21 更新)确认 /coding/v3 OpenAI 兼容 Base URL、tc-code-latest,且支持工具列表已含 Codex;
  • Token Plan 文档(130075/130119)确认 /plan/v3;
  • 条款原文「仅限在编程工具中使用」禁止的是非交互式 API 自动化/批量调用,交互式编程 agent 属允许类别;两端点无凭证探测均返回 OpenAI 形态 401 not_authorized(标准鉴权错误,非客户端工具拒绝),无服务端拒绝本仓客户端的证据——原删除前提不成立,原 PR 正文中的表述有误。

按最新文档的更新

  • tencent_coding_plan 补全官方三行模型表:tc-code-latest / glm-5(别名 glm-5-0) / kimi-k2.5(别名 kimi-k-2-5,官方标注 2026-08-31 下线);并列第二拼写登记 legacyAliases
  • 新增 tencent_token_plan 独立模板:Token Plan 与 Coding Plan 是不同订阅、模型阵容不同(通用档 glm-5.2/5.1/5、DeepSeek V4 日期版、minimax-m2.7 + Hy 档 hy3),按你的建议分别建模。
  • Rust 侧两个 lkeap 端点保留,补官方依据注释 + identify_coding_plan_endpoint 回归单测(此前该函数无任何单测,含归一化与反例);bridge 路由测试补 /plan/v3 用例,守存量配置的 coding_plan 元数据与独立 reasoning 字段解析。
  • 三语 i18n 同步新模板/新模型描述;新增 customTokenPlanDesc 分支避免 Token Plan 自定义行误显 Coding Plan 文案。

一处文档分歧已按各自页面执行:Coding Plan 页标 kimi-k2.5 于 2026-08-31 下线,Token Plan 页(08-11 版)标其已于 2026-07-31 下线——故 kimi-k2.5 仅列在 Coding Plan 模板。

验证:cargo test --lib 1372 通过(含 6 个 coding_plan)、grouping 41、test:ui-languagecargo fmt --check、architecture-guard、fork-guard --fast 全绿。麻烦重新审查。

@asto18089
asto18089 requested a review from zhuowp August 24, 2026 08:12
@asto18089

Copy link
Copy Markdown
Collaborator Author

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)

  • Coding Plan overview (1823/130092, updated 2026-08-21): OpenAI-compatible base https://api.lkeap.cloud.tencent.com/coding/v3, exactly the three model rows now in the catalog (tc-code-latest; glm-5 with parallel spelling glm-5-0; kimi-k2.5 with parallel spelling kimi-k-2-5, marked 2026-08-31 retirement). The supported-tools list includes Codex. The Anthropic-compatible /coding/anthropic endpoint exists on the same page but is intentionally not used here (OpenAI route only).
  • Token Plan (1823/130075 + 1823/130119, updated 2026-08-11): OpenAI-compatible base https://api.lkeap.cloud.tencent.com/plan/v3; all seven general-tier ids plus Hy-tier hy3 (parallel spelling hy3-preview) match the official table spellings, including the 6-digit DeepSeek date suffixes. The hyphen spellings registered as legacyAliases are the official parallel spellings listed on 130119.

Regression protection: removing either lkeap arm in identify_coding_plan_endpoint now fails identify_coding_plan_endpoint_matches_catalog and the bridge route test (vendor backfill → separate_field reasoning), so the original removal cannot silently recur.

Local verification re-run on this machine: model_catalog_grouping 41/41, test:ui-language, architecture-guard.py, fork-guard.sh --fast, cargo fmt --check, cargo test coding_plan --lib 6/6, identify tests 2/2, git diff --check — all green.

Known non-blocking observations (disclosed for transparency; none affects correctness):

  1. The key === 'tencent_token_plan' desc branch in SettingsView.jsx is the catalog's first per-key special-case; the established pattern is kind/preset dispatch plus per-key data tables. Note qwen_token_plan custom rows still fall through to generic copy on main. A follow-up could converge both via a per-key desc table, or let custom rows fall back to modelDescriptions[item.desc] — which would also make the new en/ja modelDescriptions entries for the Token Plan custom-row copy reachable (currently dead, since custom rows always take the customTokenPlanDesc branch).
  2. minimax-m2.5 appears on 130075 (Kilo Code page) but not on 130119 (subscription page, newer); the catalog follows 130119. Can switch to the union if reviewers prefer.
  3. The Token Plan code comment says kimi-k2.5 已于 2026-07-31 下线 while 130119's original wording is 将于 (same date); 130075 still lists the model — official pages are inconsistent, the branch follows the newer page.
  4. Overlapping ids (tc-code-latest, glm-5) across the two Tencent groups can highlight both rows in the edit dialog when a saved provider lacks catalog identity; pre-existing class (glm-4.7 behaves the same across the two GLM coding-plan groups on main).
  5. identify_coding_plan_endpoint does not match explicit :443 port variants — pre-existing conservative exact-match behavior shared by all five catalog endpoints.
  6. kimi-k2.5 retires 2026-08-31 (a week out); the row desc discloses it and the entry should be dropped after that date.

@zhuowp the three items from your review are addressed in this rebuild — could you take another look?

@zhuowp zhuowp left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

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.

@asto18089
asto18089 force-pushed the codex/remove-tencent-coding-plan branch from be5aed3 to 61b02d1 Compare August 28, 2026 06:18
@asto18089

Copy link
Copy Markdown
Collaborator Author

Rebased onto current main (61b02d1) to resolve the P1. Verification of the reported conflict first:

Resolution:

  • settings-i18n.js stays deleted. The new copy was re-homed into the current per-language modules: src/shared/i18n/en.js and ja.js got providerCatalog.tencent_token_plan plus the four new modelDescriptions keys; customTokenPlanDesc and customModelTitles.tencent_token_plan were added to all of zh/en/ja. zh providerCatalog remains {} on purpose (zh renders catalog titles directly, matching the pre-split structure).
  • Nothing else needed semantic adjustment: the auto-merged hunks in SettingsView.jsx, model-catalog.js, bridge.rs, and the grouping test are byte-identical to the branch's intent, and settingsCopy = t.uiSettingsDetail is unchanged on main.

Gates rerun on the rebased tree:

  • test:model-catalog-grouping 45 passed / 0 failed; test:ui-language passes (language parity with the new keys); test:i18n-no-zh-literals, i18n_lazy_language_gate, system_language_default, assistant_message_actions all pass.
  • npm run lint 0 errors; scripts/architecture-guard.py passes; fork-guard.sh --fast all fingerprints pass.
  • cargo fmt --check clean; cargo test --lib coding_plan -- normal_glm_api 6 passed / 0 failed (includes the identify-catalog regression and the bridge vendor-route case with both Tencent endpoints).
  • git merge-tree --write-tree origin/main HEAD now exits clean.

No code changes beyond the conflict resolution — the diff footprint stays 8 files, +155/-5.

@asto18089
asto18089 requested a review from zhuowp August 28, 2026 06:30

@zhuowp zhuowp left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

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.

@asto18089
asto18089 force-pushed the codex/remove-tencent-coding-plan branch from 61b02d1 to 116b663 Compare August 29, 2026 09:35
@asto18089

Copy link
Copy Markdown
Collaborator Author

第三轮 P2 核实与处理(116b663,已 rebase 到最新 main)

P2(新增注释/测试诊断译英)核实成立,已全部修复:

  • 规则依据属实:CONTRIBUTING.md 明确 "Use English for branches, issues, pull requests, commits, code comments, developer documentation, and diagnostics. Existing history and localized resources are exempt"。
  • 三处新增内容逐一证实均为中文,已全部译为英文(amend 进单提交):
    • prefs/model.rs:函数 doc 注释、两个测试 doc 注释,及 1 条中文断言消息(未收录的 lkeap 路径不得误命中);
    • model-catalog.js:两组腾讯模板的块注释与 kimi-k2.5 行内注释;
    • model_catalog_grouping.test.js:两个新测试名(按 diagnostics 处理)、行内注释、3 条断言消息。
  • 豁免边界核对无误:i18n 三语字典与 catalog 的 title/desc 数据串属 localized resources/UI copy,保持原样;存量中文测试名(豁免范围)未动。
  • 同类遗漏排查:bridge.rs(+6,纯测试用例)与 SettingsView.jsx(仅三元分支改动)无新增注释,i18n 三个文件仅数据行——无遗漏项。

Rebase: 已 rebase 到最新 main(f7e3d8e,含 #369/#373/#375/#378 等 10 个提交),零冲突;git merge-tree --write-tree origin/main HEAD 干净。main 侧对 bridge.rs 的既有改动(~1459/~4589,search 注释与 r12 同步)与本 PR 测试区改动(~5489)不重叠,语义无需调整;settings 的 i18n 分模块结构无再次变动。

验证(均在 rebase 后的树上重跑): model_catalog_grouping 45/45;test:ui-language 通过;npm run lint 0 errors;cargo fmt --check 干净;architecture-guardfork-guard --fast 全过;cargo test --lib coding_plan 6/6;全量 cargo test --lib 1678 通过 + 1 个与本 PR 无关的既有 flake(dingtalk_skill_gate_extracts_and_removes_official_mono_skill 跨测试干扰:单跑通过,本 PR 未触碰 runtime_bundle/paths 相关文件,且在两个不同位置的检出树上表现一致)。

@zhuowp 麻烦重新审查。

@asto18089
asto18089 requested a review from zhuowp August 29, 2026 09:51

@zhuowp zhuowp left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Re-review of 116b663526:

  1. [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-5 in 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.js deliberately omits Kimi-K2.5 and model_catalog_grouping.test.js asserts 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.

  2. [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, and deepseek/deepseek-v4-pro alongside the two canonical date IDs. The new catalog comment says parallel official spellings are registered in legacyAliases, 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.

@asto18089
asto18089 force-pushed the codex/remove-tencent-coding-plan branch from 116b663 to 59e5800 Compare August 29, 2026 12:07
@asto18089

Copy link
Copy Markdown
Collaborator Author

Fourth-round handling of the agent-audit findings (59e5800, rebased onto latest main)

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 kimi-k2.5 / kimi-k-2-5 with retirement scheduled 2026-08-31, agreeing with the Coding Plan page. Changes:

  • model-catalog.js: the tencent_token_plan group gains the kimi-k2.5 row (alias kimi-k-2-5, desc disclosing the 2026-08-31 retirement, mirroring the Coding Plan group's treatment); the group comment now says to drop the row once the retirement takes effect.
  • model_catalog_grouping.test.js: the false "retired 2026-07-31" assertion is replaced — both spellings must now hit as preset.

[P2] DeepSeek parallel spellings registered — confirmed and fixed. The same current table lists deepseek/deepseek-v4-flash-0731, deepseek/deepseek-v4-flash, deepseek/deepseek-v4-pro-0813, and deepseek/deepseek-v4-pro alongside the two canonical dated ids. All four are now registered in legacyAliases of their respective rows, and the block comment no longer under-claims. The Token Plan test now asserts every row and every registered spelling (19 ids) hits on /plan/v3, so the alias set and the "official parallel spellings are in legacyAliases" claim are locked by regression.

Rebase: rebased onto current main (38fe993). The reported conflict did not reproduce: both git merge-tree --write-tree origin/main HEAD and GitHub report the branch merge-clean (GitHub's earlier CONFLICTING badge was stale; main's four new commits — #371/#365/#336-follow-up/#379 — do not touch this PR's files). The rebase replayed with zero conflicts and the PR patch is content-identical to the pre-rebase one apart from hunk line offsets (verified by diffing the two patches).

Gates (all rerun on the rebased tree): model_catalog_grouping 45/45; test:ui-language passes; npm run lint 0 errors; cargo fmt --check clean; cargo test --lib coding_plan 6/6 (includes the endpoint-identification catalog regression and the bridge /plan/v3 route case); architecture-guard.py and fork-guard.sh --fast pass. git merge-tree --write-tree origin/main HEAD clean. PR body's known-notes section updated (both pages now agree on the 2026-08-31 retirement; row to be dropped after that date).

@zhuowp could you take another look?

@asto18089
asto18089 requested a review from zhuowp August 29, 2026 12:09
@asto18089
asto18089 force-pushed the codex/remove-tencent-coding-plan branch from 59e5800 to b5b1f33 Compare August 30, 2026 07:59

@zhuowp zhuowp left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

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>
@asto18089
asto18089 force-pushed the codex/remove-tencent-coding-plan branch from b5b1f33 to 1011fdc Compare August 31, 2026 01:53
@asto18089
asto18089 enabled auto-merge August 31, 2026 01:54
@asto18089
asto18089 added this pull request to the merge queue Aug 31, 2026
Merged via the queue into main with commit e198735 Aug 31, 2026
23 checks passed
@asto18089
asto18089 deleted the codex/remove-tencent-coding-plan branch August 31, 2026 02:39
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.

2 participants