fix(rectification): settled replies carry no 「已完成 N 步」 receipt; steps stay the waiting state (BUG-1137)

Consultation replies keep their receipt (scope-lock test). Two source/DOM
assertions updated with original/new/reason notes.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_017eEAG8HD3mm8gsKXgk8uU8
This commit is contained in:
Jesse_Chen
2026-10-01 10:40:29 +08:00
co-authored by Claude Opus 5.5
parent bdf4c31bc4
commit 408b22749e
4 changed files with 99 additions and 9 deletions
@@ -115,16 +115,21 @@ function RectificationMessageEntryView({
&& message.state === "settled"
&& !message.failed
&& Boolean(message.text);
// BUG-1137 (D3): the step rows are the waiting state while the reply is
// written; once it settles the rectification reply carries no
// 「已完成 N 步」 receipt — those steps are the system's own bookkeeping.
// Consultation replies keep theirs (ChatMessageRow is unchanged).
const settled = message.state === "settled";
const displayedMessage: RenderMessage = {
...message,
timeline: rectificationTimelineRows({
timeline: settled ? [] : rectificationTimelineRows({
trace: message.activityTrace,
receipt: message.completedReceipt,
activity: message.activity,
settled: message.state === "settled",
settled,
}),
};
const vargaSentence = !message.failed
const vargaSentence = !message.failed && !settled
? vargaSentenceFromMethods(message.completedReceipt?.methods)
: null;
const question = message.question;