-
Notifications
You must be signed in to change notification settings - Fork 3.1k
fix(core): preserve host-confirmed user answers in auto classification #11084
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Merged
Merged
Changes from all commits
Commits
Show all changes
5 commits
Select commit
Hold shift + click to select a range
34eecbf
fix(core): preserve trusted user answers in auto classification
qqqys 43a33e5
fix(core): address trusted user answer review feedback (#11019)
qqqys 6f1af1d
chore: merge origin/main to retire @qwen-code/webui from the build
qqqys 820cb02
chore: keep the merged skill doc byte-identical to main
qqqys de879de
Merge branch 'main' into fix/issue-11019-trusted-user-answers
qwen-code-dev-bot File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
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
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
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
Oops, something went wrong.
Oops, something went wrong.
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.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Non-blocking: these client-level spies delegate to the same
mockChatspies the pre-existing assertions target, so the routing change they exist to cover isn't actually pinned.Session.ts:4332/4387/5303/5321were moved fromchat.*tollmClient.*specifically so rewind/restore/retry invalidate the store. But reverting all four to the exact pre-PR calls — which bypasses trusted-answer invalidation,FileReadCacheclearing, and IDE-context forcing — passes every current test, becausemockLlmClient.setHistory/truncateHistory/stripOrphanedUserEntriesFromHistoryare never asserted directly (grep: zero matches) and just forward tomockChat(:4633,:4670,:6099,:6172,:6202,:6266,:6297,:6443).Asserting the client-level spies in those existing rewind/restore/retry tests would catch the literal pre-PR code.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Deferred again — still open, not dropped.
The gap is real and survives this round: the four
Session.tsroutings (truncateHistory,stripOrphanedUserEntriesFromHistory, and the twosetHistorysites) are still load-bearing clear sites, and reverting them to their pre-PRchat.*calls would still pass every current test because the client-level spies only forward to the samemockChatspies the existing assertions target.Deferred for the same reason as the other two: this round was a same-run verification repair whose mandate was the deterministic build rejection, resolved by merging
origin/main.This finding needs a re-read before it is implemented. That merge brought 685 new lines into
Session.test.tsfrom main, so the mock harness this thread cites (themockLlmClientforwarding at:4633,:4670,:6099,:6172,:6202,:6266,:6297,:6443) has moved since the finding was written. The line references above are pre-merge; the shape of the fix — asserting the client-level spies directly in the existing rewind/restore/retry tests so the literal pre-PR code fails — is unchanged.中文说明
再次顺延 —— 线程保持 open,未被丢弃。
这个缺口是真实存在的,并且在本轮之后依然存在:
Session.ts的四路由(truncateHistory、stripOrphanedUserEntriesFromHistory,以及两处setHistory)仍然是承重的清理点,而把它们回退成 PR 之前的chat.*调用,仍然会通过当前所有测试,因为客户端层的 spy 只是转发给既有断言所针对的同一批mockChatspy。顺延原因与另外两条相同:本轮是一次同轮验证修复,任务是处理确定性的 build 拒绝,而该拒绝通过合并
origin/main解决。这条问题在实施前需要重新阅读。 那次合并从 main 给
Session.test.ts带入了 685 行新代码,因此本线程引用的 mock 脚手架(:4633、:4670、:6099、:6172、:6202、:6266、:6297、:6443处的mockLlmClient转发)自该问题写下之后已经移动。上面的行号是合并前的;但修复的形态没有变 —— 在既有的 rewind/restore/retry 测试中直接断言客户端层的 spy,使 PR 之前的原始代码会失败。