/** * **打不回的放行卡**(2026-09-01 用户定:「评审放行与落账确认这一步的验收卡不应该有重做的选项, * 因为这里都没有接入 ai」)。 * * 判据只有一条:这一步整个由配方跑完、一个字的 `guide` 都没有 —— 那时打回的意见没有模型会去读, * 配方只会原样再提交一次,撞在「打回之后台账没动过就不许再提交」那道闸上,最后落成一张 * 「连续撞在同一条判据上」的兜底卡。**一颗按下去只会把单子推进死胡同的钮,不如不摆。** */ import { describe, expect, it } from 'vitest'; import { releaseRedoable } from '../wiring/engines.ts'; describe('放行卡打回得了吗', () => { it('全 auto(有配方、guide 是空串)→ 打不回', () => { expect(releaseRedoable({ auto: { do: [] }, guide: '' })).toBe(false); expect(releaseRedoable({ auto: { do: [] }, guide: ' ' })).toBe(false); }); it('半 auto(guide 非空)→ 照旧打得回:那儿真有模型会读那句意见', () => { expect(releaseRedoable({ auto: { do: [] }, guide: '按意见修订台账,改完重新提交' })).toBe(true); }); it('模型驱动(压根没声明配方)→ 照旧打得回', () => { expect(releaseRedoable({ guide: '把这一签下去会发生什么摆清楚' })).toBe(true); }); it('认不出那一步(没声明人工验收清单的老活动)→ 老行为', () => { expect(releaseRedoable(undefined)).toBe(true); }); });