fix(agent): preserve live Cursor message projections - #2336
Open
mt-hub8 wants to merge 1 commit into
Open
Conversation
Signed-off-by: man tuo <[email protected]>
mt-hub8
force-pushed
the
codex/cursor-message-streaming-fix
branch
from
August 13, 2026 03:53
e609ee0 to
c903c07
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
修复 Tutti 使用 Cursor 时执行中消息投影不稳定的问题:同一思考块曾因无关的部分 canonical 更新丢失追加锚点,工具消息则可能因消息版本缺口被拒绝实时投影,直到 turn 结束或主动停止后的权威历史同步才重新出现。
messageId合并;批次遗漏不再被解释为删除,从而保留活动 Turn 中思考消息的append_text锚点messageId原位完成或取消,避免补回和重复Verification
pnpm check:changed -- --push-ready --base upstream/main(14/14 通过)go test ./packages/agent/daemon/runtime -run 'TestStandardACPNormalizerSegmentsAssistantAndThinkingAroundToolCalls|TestStandardACPToolCallLifecycleReusesStableEventID|TestCursorGlobAndGrepToolCallsPreserveIdentityAndInput'Reviewer handoff
建议后续贡献者重点复核:
previewCanonical不得推进 durable cursor,版本缺口仍必须触发消息 reconcilemessageId替换 preview,不能形成重复工具行当前 Session Replay 尚不支持
local:cursor;本 PR 的 Cursor E2E 证据来自实机冒烟,自动化覆盖集中在共享 activity-core 事件链路。后续如需无订阅环境的确定性 Cursor UI 回放,应作为独立测试基础设施任务增加 Cursor Replay 支持。Checklist
Signed-off-by