A2-A7 全部补齐到验收线;顺手把几处「门拦住却不给路」的坑填了
活动:A2 选型 / A3 寻源 / A4 定价 / A6 议价 / A7 归档五件各补成真活动包 —— 契约宽进(input.required 空,归一在活动内)、台账必填声明(含行级 requiredWhen)、 入场哨兵与 L1/L2 判据一律读基座数、两份件(在办可编辑 + 办结静态快照)、 三案例常备、包内自测。e2e 各三案例 released、行动被拒 0、发口正确、提交闸每单真拦。 基座(共享面,改一处影响所有活动,故每处都带回归): · 重发判断走在站上场之前 —— 人答完那步常已收掉,readyToWork 先抛「不能再往它上面挂活」, 于是「重发已答过的卡 = 无事发生」这条唯一活路在最需要时够不着,A1 基线当场熔断; · 决策卡补幂等兜底(与执行工单同一把尺):头两次无事发生,第三次起才算被拒; · 输出没成形先就地重问一次,原话进工作日志、不再摆上卡面; · 工具调用读数 tool_<名>_calls —— 「机检只读基座数」这条纪律第一次覆盖到工具; · 执行卡 steps/standard 补进出参 schema(从前能到卡面全靠厂商 JSON 模式宽松); · 件的就地更新改逐节点 morph,保存先把新值镜像进只读那份 —— 不闪、不等回声。 A1(基线,全程守住):措辞三档对齐(必填/建议/选填)、禁止拿历史价当客户目标价、 卡骨架从步骤剧本搬进说明书(压成一拍连做时剧本没摊开,会发出没有指导书的裸卡)。 契约两处**新增可选字段**(非破坏):FieldDeclaration.requiredWhen、工单 finalHtml; api-report 同批更新。docs/adr 与 docs/archive 的 13 份文件在工作树里不见了, 本次予以恢复而非提交删除。 门禁:typecheck / lint / depcruise / test(1366)全绿。 Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -11,7 +11,7 @@
|
||||
*/
|
||||
import { describe, expect, it } from 'vitest';
|
||||
import { evaluateCondition } from '@sfeel';
|
||||
import { INTAKE_PHASES, INTAKE_STEPS } from '../src/case-model.ts';
|
||||
import { INTAKE_PHASES, INTAKE_STEPS, NARRATIVE } from '../src/case-model.ts';
|
||||
import { CMMN_XML } from '../src/case-model.ts';
|
||||
import { manifest } from '../src/manifest.ts';
|
||||
|
||||
@@ -152,8 +152,23 @@ describe('doneWhen 是「成果已存在」的判据,不是「该不该做」的
|
||||
const confirm = INTAKE_STEPS.find((s) => s.item === 'S3_confirm');
|
||||
expect(confirm, '受理需求交人审定这一步不见了').toBeDefined();
|
||||
expect(confirm?.view).toBe('intake-overview');
|
||||
// 卡上那张表绑台账整份铺开 —— 人改的是九行,不是缺的那一两行
|
||||
expect(confirm?.guide).toContain('"ledger":"quote_intake.record"');
|
||||
/*
|
||||
* **执行卡零输入**(2026-08-02 用户定:填写全去工作区)——
|
||||
* 卡上不绑表、不摆格子;清单在工作区那份件上就地改(editGate + 孪生件),
|
||||
* 提交闸回落到必交付物的台账声明照样把必填看住。
|
||||
* 从前这儿断言卡里带 `"ledger":"quote_intake.record"` 的 blocks —— 那一版
|
||||
* 同一张表摆两处(卡上一份、件上一份),人不知道改哪一份算数。
|
||||
*/
|
||||
/*
|
||||
* 骨架已搬进说明书(2026-08-03:模型常在「拆表+收步+派卡」同一拍发这张卡,
|
||||
* 那一拍 S3 的剧本没摊开 —— 骨架只放剧本里就会发出裸卡,实测指导书整个是空的)。
|
||||
* 剧本里留的是指路;零输入纪律与骨架本体都在说明书里,每一拍都看得见。
|
||||
*/
|
||||
expect(confirm?.guide).toContain('骨架在说明书里');
|
||||
expect(NARRATIVE).toContain('受理需求审定卡的骨架');
|
||||
expect(NARRATIVE).toContain('卡上不摆表、不摆格子');
|
||||
expect(NARRATIVE).toContain('"itemId":"S3_confirm"');
|
||||
expect(confirm?.guide).not.toContain('"blocks"');
|
||||
expect(confirm?.guide).toContain('confirmed_total');
|
||||
});
|
||||
|
||||
|
||||
Reference in New Issue
Block a user