Skip to content

feat: P3 池三件——ctrl+s stash 输入暂存 + CoT Markdown 渲染 + bash 流式进度全链 - #460

Merged
liuqihonggit merged 1 commit into
mainfrom
w1
Oct 22, 2026
Merged

liuqihonggit merged 1 commit into
mainfrom
w1

Conversation

@liuqihonggit

Copy link
Copy Markdown
Owner

Summary

  • F ctrl+s stash:输入暂存单槽(外壳/内核拆分统一恢复——Submit 全部 return 路径覆盖:bash 直通/theme 拦截/LoginGate 拒绝/排队/直发;队列泵不经外壳不触发)
  • G CoT Markdown 渲染:Core 内新建 InlineMarkdownParser(手写 Span 扫描器三件套 code/bold/italic——绕开 Core 零依赖铁律);RenderThinkingContent 消费 + 样式 MapMarkdownStyle with{Dim=true} 叠加;解析自校验降级
  • H bash 流式进度全链:调研实证管道已具备断链仅在 gateway 不传回调——ToolProgressRelay 通道闭包中继(直持引用规避 ThreadPool AsyncLocal 风险)+ ChatToolOrchestrator/QueryEngine 接线 + tool_progress 协议双镜像 + ToolStreamingItem 尾 3 行环形输出 + Driver 原位替换
  • 主代理统一 debug 5 处(lambda 遮蔽/缺参/转义未命中/null-forgiving×4/宽字符列数)

Test plan

  • NativeTui.Tests 1689 全绿(新增 41:stash 7 + InlineMarkdownParser 11 + CoT 7 + ToolStreamingItem 9 + Driver 5 + 协议 2)
  • Host.Tests 114 + host.tests 1453 + ToolProgressRelay 5 全绿
  • Host --selftest 真跑 EXIT=0

… 决策: F=Submit 外壳/内核拆分统一恢复暂存(全部 return 路径覆盖——bash 直通/theme 拦截/LoginGate 拒绝/排队含满丢弃/直发,队列泵不经外壳不触发;单槽覆盖,PostInfo 反馈消息形态); G=Core 内新建 InlineMarkdownParser(手写 Span 扫描器三件套 `code`/**bold**/*italic*+三连特判,平级不递归)——绕开 Core 零依赖拿不到 Markdig 的铁律,RenderThinkingContent 消费+样式叠加 MapMarkdownStyle with{Dim=true},解析自校验降级(空段列表=纯文本 dim 现行为); H=调研发现管道已具备断链在 gateway 不传回调(ShellExecutionMiddleware 每秒轮询 Timer→ToolProgressData 全链已通)——ToolProgressRelay 通道闭包中继(直持引用规避 ThreadPool AsyncLocal 风险)+ChatToolOrchestrator/QueryEngine 接 gateway 第四参+tool_progress 协议双镜像+ToolStreamingItem 尾 3 行环形(溢出提示前置)+Driver 原位替换; 主代理 debug 5 处:lambda 声明遮蔽/MarkdownSegment 缺 Style 参/python 替换 \n 转义未命中/relay! null-forgiving×4 模式匹配/ToolStreamingItem 宽字符列数期望; IgnoredCallbacks 语义演进(OnToolProgress 移出忽略清单)
@liuqihonggit
liuqihonggit enabled auto-merge (squash) October 22, 2026 17:58
@liuqihonggit
liuqihonggit merged commit b0f7cbd into main Oct 22, 2026
@liuqihonggit
liuqihonggit deleted the w1 branch October 22, 2026 18:17
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.

1 participant