feat(rectification): server-written lines in the same warm voice (BUG-1258)
Independent Staging Quality Gate / validate (push) Successful in 13m22s
Independent Staging Quality Gate / publish (push) Successful in 3m42s

About 30 fixed rectification lines lose the receipt tone: no 「已记录。」
openings (收到 when the range holds, 好 when it moves), 麻烦 instead of 请,
时间 instead of 候选 in what the user reads, and no 「新建对话」 after
adoption. Numbers, clocks, ranges and the honesty boundaries are unchanged.
CHOICE_ACK_RE also recognises the new acknowledgements, so a model sentence
that repeats one is still dropped; the delivery guard matches the delivery
sentence by containment and does not depend on the opening.

Full suite 4973 / fail 24, identical to 61d6f248; build keeps / Static.

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-07 11:39:34 +08:00
co-authored by Claude Opus 5.5
parent 61d6f248e4
commit 6ec8efd5d2
28 changed files with 199 additions and 78 deletions
@@ -335,7 +335,8 @@ test("narrator failure still leaves the choice applied and does not ask the user
scoring: true,
appliedInference: true,
});
assert.match(applied, /已记录,范围没变/);
// 原值: /已记录,范围没变/ / 新值: /收到,这一题没有让范围变窄/ / 原因: BUG-1258:校正固定文案改为知心姐姐口吻(产品 2026-10-07 认可样稿)
assert.match(applied, /收到,这一题没有让范围变窄/);
assert.doesNotMatch(applied, /请再选一次|重新回答/);
const stopped = composeChoiceNarration({
optionId: "stop",
@@ -343,8 +344,10 @@ test("narrator failure still leaves the choice applied and does not ask the user
appliedInference: false,
});
// Previously asserted “独立核对尚未完成 / 不是最终校正结果”; task 6 makes range delivery a completed terminal.
assert.match(stopped, /已记录你的选择/);
assert.match(stopped, /交付当前可信区间和代表性工作时间/);
// 原值: /已记录你的选择/ / 新值: /这次校正先到这里/ / 原因: BUG-1258:校正固定文案改为知心姐姐口吻(产品 2026-10-07 认可样稿)
assert.match(stopped, /这次校正先到这里/);
// 原值: /交付当前可信区间和代表性工作时间/ / 新值: /目前最可信的时间范围/ / 原因: BUG-1258:校正固定文案改为知心姐姐口吻(产品 2026-10-07 认可样稿)
assert.match(stopped, /目前最可信的时间范围/);
assert.match(stopped, /当前最优结果是候选时间段/);
assert.doesNotMatch(stopped, /未完成|失败|遗憾/);
assert.doesNotMatch(stopped, /已完成验证/);