fix(ci): update DESIGN contract after hanging spoken questions (BUG-679)
Independent Staging Quality Gate / validate (push) Successful in 10m36s
Independent Staging Quality Gate / publish (push) Successful in 7m40s

Quality gate run 2598 failed because the unwritten-evidence test still required the old persisted-question DESIGN sentence. Align the assertion with the BUG-678 hang-back contract.
This commit is contained in:
jesse-ux
2026-09-14 13:43:03 +08:00
parent 2dbcf2661b
commit b50a8f94ac
3 changed files with 29 additions and 2 deletions
@@ -366,5 +366,10 @@ test("chat live question only reads the last settled assistant message", () => {
);
assert.doesNotMatch(chat, /const liveQuestionOnMessages = messages\.some/);
const design = readFileSync(new URL("../DESIGN.md", import.meta.url), "utf8");
assert.match(design, /completed turn that claimed to record evidence/);
// 原值: DESIGN.md persisted-question 行写 “completed turn that claimed to record evidence
// 新值: question-live 写无 asked_turn_id 的口述/选择题挂回最后一条助手消息;persisted-question 只留给没有助手消息可挂
// 原因: BUG-678 口述题也挂回消息后,已记录证据但焦点未答的完成轮不再走 persisted_question 裸行(BUG-679
assert.match(design, /without `asked_turn_id` hangs on the last assistant message/);
assert.match(design, /only when no assistant message can carry the prompt/);
assert.doesNotMatch(design, /completed turn that claimed to record evidence/);
});