fix: 统一结果卡片样式 - 移除旧的 buildResultCard - #236
Conversation
|
Claude finished @lishuceo's task in 3m 10s —— View job Code Review —
|
|
Claude finished @lishuceo's task in 2m 38s —— View job Code Review —
|
土豆儿等 direct-mode agent 完成时仍走 buildResultCard,导致出现 "🤖 Coding Agent" 旧标题且与占位卡片重复。改为统一使用 buildCombinedProgressCard 原地更新,删除旧的 buildResultCard / buildSimpleResultCard。 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
- buildCombinedProgressCard 长文本分支:success 跟随 result.success,避免依赖前置 return 的耦合 - sendResultCard 删除已成死代码的 _prompt 参数及 3 个调用点的 prompt 实参 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
27b72ae to
a4d766a
Compare
|
Claude finished @lishuceo's task in 1m 58s —— View job Code Review —
|
- buildCombinedProgressCard 空态占位增加 !(completed && result) 防御, 完成态带 result 时不再渲染 "⏳ 正在处理..." 占位元素,避免与下方 错误块/状态栏的 "❌ 执行失败" 矛盾。覆盖 sendDirectReply + sendResultCard 全部 4 个调用点。 - sendDirectReply 失败分支保留 partial output(执行器可能在 timeout/budget 触发前已产出文本),与 sendResultCard 行为一致。 - 新增回归测试。 Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
Claude finished @lishuceo's task in 1m 34s —— View job Code Review — ✅ Approved
总体评价Commit 已验证修复点✅ if (!hasText && !hasTools && !(completed && result)) {完成态带 result 时跳过
✅ const text = result.success
? (result.output || '_(无输出)_')
: (result.output || '');与 ✅ 回归测试( it('should NOT show "正在处理" placeholder on completed failure with no text/tools', ...精准覆盖 通过检查项
|
Summary
buildResultCard,渲染出硬编码的 "🤖 Coding Agent" 标题,并且和/t流程的 ensureThread 占位卡片各发一张,导致重复buildCombinedProgressCard在占位卡片上原地updateCard,去掉硬编码 headerbuildResultCard/buildSimpleResultCard及其工具函数formatOutputAsMarkdown、hostname引入Test plan
npm run typechecknpx vitest run受影响的 4 个测试文件 121/121 通过src/feishu/__tests__/message-builder.test.tssrc/feishu/__tests__/event-handler.test.tssrc/feishu/__tests__/chat-history-fork.test.tssrc/__tests__/bot-identity-context.test.ts/t流程,确认占位卡片原地更新且无 "Coding Agent" 标题🤖 Generated with Claude Code