Archived
审核通过与否读基座数;「重做」不再被指向 finish;审核卡摆成验收工单(W05 1.4.7)
用户两报:①「我上一步明确要求重做了,怎么会继续向下推进」②「验收工单弹出的是需要你定,明显不对」。 ①病根两处合谋:人两次答 custom:重做一次,模型把一模一样的问法又发了一遍被闸拦下;而拒回的话 不分答案一律说「照这个选择把结论落进台账那面旗,再 finish」—— 对通过是对的,对重做是把模型往错路上推, 它照办写了 review_approved_total = 1,而 S4 的哨兵读的正是这面模型自写的旗(被叫的那一方自己记账,A6 那一课)。 - 基座新读数 decision_last / decision_<值>_total(按 card-reply 数);S4 哨兵改读 decision_last = "approve", 人最后一次真点了通过才开门;静态审认这几个名字。 - 拒回 / 观察 / 事实行三处同一段 chosenGuidance 按答案分岔:custom: 不是通过 —— 按他写的改、换问法重发、 不许写通过旗、不许 finish;选项值指回说明书那一档。 - S4 剧本驳回分支明写不许写旗、ask 开头必须写明这一轮改了什么(字面一样的卡会被吞)。 ②平台的验收工单是终局,中间审核只能靠决策卡循环 —— 但不该穿「需要你定」的衣服:契约 decisionCard.variant:'review', PlanStep.cardVariant 扩到 'review',cards.decide 带 itemId,引擎按剧本决定;对话区摆成「工单 · 验收 / 审核」。 2106 测 / typecheck / lint / depcruise 绿;api-report 已刷;CONTRACT.md 同步。 Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01FJcX8A6TWp4GRs41TYryEh
This commit is contained in:
@@ -520,6 +520,13 @@ const chatBase = { id: cardIdSchema, at: z.iso.datetime() };
|
||||
export const decisionCardSchema = z.object({
|
||||
...chatBase,
|
||||
k: z.literal('decision'),
|
||||
/**
|
||||
* **审核卡**(2026-08-27 用户:「验收工单弹出的是需要你定,明显不对,需要是验收工单」):
|
||||
* 平台的验收工单是终局(`submit` 一单只发一次,交出去就是放行),中间那道「审核 → 驳回 → 修订 → 再审」
|
||||
* 只能用决策卡循环 —— 但它不该穿着「需要你定」的衣服。`review` = 按验收工单的样子摆
|
||||
* (工单 · 验收 / 通过 · 驳回),机制仍是决策卡。由剧本 `cardVariant` 声明、引擎决定,不靠模型抄。
|
||||
*/
|
||||
variant: z.enum(['review']).optional(),
|
||||
ask: z.string(),
|
||||
basis: basisSchema,
|
||||
recommend: z.string().optional(),
|
||||
|
||||
@@ -160,13 +160,14 @@ export const planStepSchema = z.object({
|
||||
*/
|
||||
doneWhen: z.string().optional(),
|
||||
/**
|
||||
* **这一步派的执行工单是数据工单**(2026-08-27)—— 由剧本声明、引擎决定,不靠模型抄卡骨架。
|
||||
* **这一步派的卡穿哪副面孔**(2026-08-27)—— 由剧本声明、引擎决定,不靠模型抄卡骨架。
|
||||
* `data` = 执行工单摆成数据工单;`review` = 决策卡摆成验收工单(中间审核,可循环;终局验收仍是 submit)。
|
||||
*
|
||||
* 起因:说明书的卡骨架里写着 `"variant":"data"`,模型抄卡时把它丢了(看着像元数据),
|
||||
* 对话区于是照旧摆「执行工单」。与 `view` 同一条道理:这一步派的是什么单,是写剧本时就定死的事,
|
||||
* 归活动声明、不归模型临场发挥;模型写不写都一样。
|
||||
*/
|
||||
cardVariant: z.enum(['data']).optional(),
|
||||
cardVariant: z.enum(['data', 'review']).optional(),
|
||||
});
|
||||
export type PlanStep = z.infer<typeof planStepSchema>;
|
||||
|
||||
|
||||
Reference in New Issue
Block a user