@antprofuse/saddle-islands-design 0.1.16 → 0.1.17
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/SKILL.md
CHANGED
|
@@ -24,7 +24,7 @@ Spec定义抽象业务,saddle-islands-adapt完成落地语义自洽,本Skill
|
|
|
24
24
|
|
|
25
25
|
- 明确Spec仓库与目录、adapt位置、交付仓库与目录,仓库和目录分别记录;上下文已明确的不重复询问。adapt通常与spec、code同级,但必须检查实际存在,不猜内容。Spec、adapt都属于输入;缺失声明不能由设计Agent默认生成。
|
|
26
26
|
- 后端契约另需完整业务前缀;DB不需要。默认交付code/backend-contract、code/db、code/external-contract-proto,与backend并列,以用户指定为准。外部协议还需目标Saddle协议版本及业务单元实际值,已有输入足够时不重复询问,不从MobileGW前缀猜业务单元。不要求先提供生成代码或SOFA物理合同替代adapt。
|
|
27
|
-
-
|
|
27
|
+
- 项目Spec、adapt及契约关联一律解析当前仓库当前分支,不切换到远程默认分支或历史提交,不生成仓库地址、分支或提交号的来源元数据。Islands理念参考仍可读取其官方指南;这不是项目契约跨仓库关联。
|
|
28
28
|
- 通读所选范围的Spec、adapt及相关Islands指南,检查Prototype与测试责任。元数据不可用时可做来源有据的推演,不能虚报编译、覆盖或测试通过。
|
|
29
29
|
- 所选范围的adapt语义自洽后进入正式设计。缺失身份、取数能力、字段形状或业务结果语义时退回讨论,不由本Skill补齐。普通代码尚未实现不是阻塞;用户另行授权的局部草稿不宣称整体交付完成。
|
|
30
30
|
- 普通消费Agent发现规范缺口应反馈维护者,不私造规则;获得Skill维护授权的设计者先给出合理设计供确认,再修通用规则,不把旧Skill能力当业务限制。
|
|
@@ -10,9 +10,9 @@
|
|
|
10
10
|
|
|
11
11
|
`coverage` 为非空数组,每项必填且只允许 `id / prototypes / tests / obligations`。id 是文件内唯一的稳定语义标识,不使用数组序号。
|
|
12
12
|
|
|
13
|
-
- prototypes:Prototype 来源数组,每项必填且只允许 `
|
|
14
|
-
- tests
|
|
15
|
-
-
|
|
13
|
+
- prototypes:Prototype 来源数组,每项必填且只允许 `path / selector`。
|
|
14
|
+
- tests:测试来源数组,同样两个必填键。selector 为真实测试责任/case ID;脚本没有独立 ID 时用文件内唯一的完整测试名称,不自创 ID。
|
|
15
|
+
- path:当前仓库根目录相对文件路径;selector:当前分支内可唯一解析的页面/组件/动作/状态或测试身份。所有关联只解析当前仓库当前分支,禁止跨仓库、跨分支或固定历史版本定位;不接受仓库地址、分支名或提交号等额外键。禁止仅用行号、数组下标或样例别名。
|
|
16
16
|
- 每项 prototypes/tests 至少一个非空;每份后端契约两类来源都必须非空。原型独有显示责任可无 tests,测试独有边界责任可无 prototypes,但必须参与全量核对,不能人为删空掩盖已有对应来源。
|
|
17
17
|
- obligations:非空数组。每项必填且只允许 `aspect / requirement / targets / explanation`。
|
|
18
18
|
- aspect:封闭枚举 `input / output / constraint / frontend`。requirement 是来源中具体操作、展示或断言的准确含义;不是另造需求。explanation 说明目标如何完整支撑该责任,含必要前置事实和适用条件。
|
|
@@ -24,14 +24,10 @@
|
|
|
24
24
|
coverage:
|
|
25
25
|
- id: non_service_hours
|
|
26
26
|
prototypes:
|
|
27
|
-
-
|
|
28
|
-
revision: <完整commit>
|
|
29
|
-
path: <原型文件>
|
|
27
|
+
- path: <原型文件>
|
|
30
28
|
selector: <非服务时段分支的真实身份>
|
|
31
29
|
tests:
|
|
32
|
-
-
|
|
33
|
-
revision: <完整commit>
|
|
34
|
-
path: <测试文件>
|
|
30
|
+
- path: <测试文件>
|
|
35
31
|
selector: <非服务时段测试的真实case ID>
|
|
36
32
|
obligations:
|
|
37
33
|
- aspect: output
|
|
@@ -55,9 +51,9 @@ coverage:
|
|
|
55
51
|
|
|
56
52
|
1. 从实际 Prototype 和测试责任清单取得指定范围的完整分母,不能从已经写出的后端契约反推分母。逐项辨认前置事实、动作、预期显示、断言、禁止副作用和后续交互。纯样式/导航等纯前端责任明确分类,不为覆盖它们造后端契约。
|
|
57
53
|
2. 每个后端契约的 coverage 只声明本接口承担的部分。同一用例涉及多个后端契约时,各自映射其负责的操作/断言,按相同来源身份汇总后证明整条用例被支撑;不共享业务 schema,也不要求一用例一接口。
|
|
58
|
-
3. 对每条关联实际推演:动作值能否形成合法 input;系统身份是否仍由系统提供;预期结果是否落到正确输出分支;字段、枚举、nullable、顺序和关联是否足够;写入/不写入及后续页面行为是否符合预期。仅验证
|
|
54
|
+
3. 对每条关联实际推演:动作值能否形成合法 input;系统身份是否仍由系统提供;预期结果是否落到正确输出分支;字段、枚举、nullable、顺序和关联是否足够;写入/不写入及后续页面行为是否符合预期。仅验证 path/selector/target 存在不算语义覆盖。
|
|
59
55
|
4. 反向检查各调用点、业务结果、叶字段及约束可追溯到两类基准的需求或为满足它们所必需的实体投影。系统通用信封遵守既有规范,不为其伪造业务测试。Form/Rule 来源规则保持,但不能借机自造实体、展示包装或技术字段。有限样例不定义完整枚举。
|
|
60
56
|
5. 汇总所有后端契约的关联,检查输入分母的所有项。完全独立且无需后端契约的纯前端项在交付 review 中逐项说明,无需为其创建空后端契约文件;消费当前后端契约输出的后续前端项留在该文件 coverage 内。未覆盖责任和冲突在过程反馈中列明,不能把缺口写成“已覆盖”或以 fail-closed 错误替代已要求的业务结果。
|
|
61
|
-
6. Prototype
|
|
57
|
+
6. Prototype 或测试更新时,在当前分支重新核对path/selector与obligations;后端契约schema变化时重核targets和覆盖语义。关联随当前分支内容共同演进,不通过固定历史快照规避输入变化。
|
|
62
58
|
|
|
63
59
|
设计完备表示当前指定 Prototype 与测试用例全部得到支撑,并且字段业务来源、协议类型等契约检查成立。不是已完成生产实现、测试已运行或所有业务理论情况被穷举。来源缺失、冲突或无法定位时,不自行扩充所有 Spec 需求或补写测试来制造完备;报告并继续不受影响部分。
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@antprofuse/saddle-islands-design",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.17",
|
|
4
4
|
"description": "消费自洽 adapt 与 Islands Spec,设计后端契约、数据库表和 external-contract-proto。",
|
|
5
5
|
"license": "MIT OR Apache-2.0",
|
|
6
6
|
"files": ["SKILL.md", "agents", "modules", "references"],
|
package/references/adapt.md
CHANGED
|
@@ -94,6 +94,6 @@ Dependency与external-contract只在逻辑锚点上不同:前者目标指向Sp
|
|
|
94
94
|
|
|
95
95
|
## 来源定位
|
|
96
96
|
|
|
97
|
-
本版本的path均为已指定输入仓库根目录相对路径,不是shell工作目录或URL
|
|
97
|
+
本版本的path均为已指定输入仓库根目录相对路径,不是shell工作目录或URL。实体类型在业务域内解析;歧义不能按同名猜。项目关联只解析当前仓库当前分支,不承载跨仓库或跨分支定位。
|
|
98
98
|
|
|
99
|
-
实体绑定位置用 `{path, domain, entity}`,入口位置用 `{path, domain, board, entry}`,入口字段再加field
|
|
99
|
+
实体绑定位置用 `{path, domain, entity}`,入口位置用 `{path, domain, board, entry}`,入口字段再加field。路径与语义目标必须同时匹配,不使用数组下标。关联随当前分支的Spec+adapt内容重新核对。
|