[Feature]: Text-generation failure popups should name the attempted model and link to Settings
还没有人认领这个 Issue。
- 主要语言
- TypeScript
- 星标
- 23k
- 派生
- 5.9k
- 平均合并
- 11 小时 14 分钟
- 30 天内合并 PR
- 357
描述
Context
#12651 confirmed that one-shot text generation (commit messages, PR content, branch names, thread titles) can fail opaquely: the Commit popup showed an unrelated stderr notice while the real cause was an unconfigured/unsupported text-generation model. #12652 improves what the error says (it now surfaces the CLI's own stdout error), but the popup still leaves the user to figure out where the fix lives.
Proposal
When one-shot text generation fails, make the error actionable by surfacing what the server already knows and offering the fix in place:
- Name the attempted model and its origin. E.g. if
textGenerationModelSelectionis unset and a fallback was used, say so explicitly: "No text generation model was configured, so the provider default (claude-haiku-4-5) was used." That is server-known information —resolveTextGenerationProvider()knows whether it fell back and to which slug. - Include a button/link that opens Settings at the text-generation model section. One click from the Commit popup to the place where the model is configured.
- Same treatment for title/branch failures, which today can fail silently (#5359) — a consistent actionable-failure path would cover the whole family.
Why
The failure mode in #12651 would have been a two-click self-fix from the Commit dialog itself: popup names the fallback model → button opens Settings → user picks a model their backend allows. Instead it took a full diagnostic session (captured spawns, extracted bundle source) to discover that textGenerationModelSelection was unset and that the fallback slug was being rejected by the backend.
The information needed for this already exists at the failure site; this is purely about presenting it.
Impact
Quality-of-life enhancement on top of the #12651 fixes.
[!NOTE]
🤖 GLM 5.3 Flash on behalf of iliasgws
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
检查 Commit 弹窗和 resolveTextGenerationProvider() 路径,参考 #12651 和 #12652 了解现有的失败行为。完成的标准是:单次生成错误能够识别尝试使用的模型及其来源,提供指向 Settings 中文本生成模型部分的链接,并将相同的可操作路径应用于标题和分支错误。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- typescript
- 领域
- backend, frontend
- Issue 类型
- 功能
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 活跃
- 描述清晰度
- 基本清楚
- 新手友好度
- 55/100