P1-CONTROL-SPIKE: 控制能力路由契约矩阵 + P1-RECOVERY 幂等重放回归 - #134
Merged
Merged
Conversation
任务书 VERIFY-THEN-PATCH 对账后,P0 全项在 main 已实现(STATE/REFERENCE/
WHEEL/BROWSER/EVIDENCE/GOVSYS + P1-REVISION),本批只补缺口:
P1-CONTROL-SPIKE(服务/操控能力搭建,真实操控留给外部模型/软件):
- design-lab/config/control-capability-matrix.json:4 host × 8 capability
路由声明。分层原则(任务书原文):Computer-Use 负责 reachability;
Host-native readback / artifact rehash 负责 truth;DESIGN-LAB 自己的
State/Evidence 层负责 provenance。
- design-lab/schemas/control-capability-matrix.schema.json:draft 2020-12。
- design-lab/scripts/verify_control_capability_matrix.py:纯 stdlib 验证器,
fail-closed 规则:
* supported=true 必须 evidence_level>=E2 且必填 qualified_sha
(能力声明不得超出证据等级,live claim 可定位)
* no_bypass_license 必须 true(任务书红线:不绕过 Adobe/MiniMax 授权)
* reachability=computer-use 必须配 truth 层(GUI 管 reachability,
native/artifact 管 truth;"能点 Photoshop ≠ 解决集成")
* 矩阵必须覆盖 browser + minimax-design 两个已声明的 adapter 路由
* 诚实值:photoshop/illustrator/minimax-design 全 supported=false/E0;
browser 仅 launch/create/reopen-verify/readback 为 E2(qualified_sha=9f89452)
- design-lab/tests/test_control_capability_matrix.py:12 用例(PASS +
参数化 FAIL 负控,负控矩阵写 .project-local/task-artifacts/control-spike/)
- verify_design_lab.py:50→51,接入 verify_control_capability_matrix.py
并加注释记录 P1-CONTROL-SPIKE 聚合语义。
P1-RECOVERY(commit-then-disconnect 幂等重放):
- design-lab/tests/test_design_layer_idempotency_recovery.py:5 个新场景
(委托 P0 harness 的 setUp + 按名绑定 helper,不重复继承 P0 18 个用例):
1. choose 重放同 intent → 同一身份、不追加事件行
2. 切换 A→B 重放 → SUM(chosen)=1 不变量保持
3. 同 key 不同 actor → 409 IDEMPOTENCY_CONFLICT(fail-closed)
4. bind 重放 → 同一 binding 身份、binding-created 事件仅 1 行
5. service restart 后读回 → 与重启前 chosen_direction 一致
本批不修改任何既有 adapter 的 evidence level,不把 photoshop/minimax 的
supported 置 true(无真实宿主证据),不引入网络/非 stdlib 依赖。
真实操控(Adobe Host E3 实操 / Human Jury E4 / tag 发布 E5)明确排除,
不在 Hermes 内执行,交给外部模型/软件。
门禁实跑(基线 9f89452):
- CONTROL_CAPABILITY_MATRIX=PASS hosts=4 capabilities=32 findings=[]
- unittest test_control_capability_matrix.py: 12/12 OK
- unittest test_design_layer_idempotency_recovery.py: 23/23 OK
- verify_design_lab.py: VERIFY_DESIGN_LAB=OK total=51 failed=0
- verify_authority_gates.py --zero-spill: AUTHORITY_GATES=PASS gates=7
- generate_current_reports.py: CURRENT_REPORTS=PASS
Unproven (诚实边界,不宣称完成):
- 真实 Adobe Host E3 实操(需 owner 授权的真实宿主运行 + 人工 E4)
- MiniMax Design 真实运行(本批仅结构声明 E0,无 live 证据)
- 真实 tag 发布路径 E5(需 tag + token + 网络)
generate_current_reports.py --zero-spill regenerate; subject_sha 指向代码 commit 82556dc。reports/current/** 为 LAST_GENERATED_PROJECTION,fresh=false。
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
P1-CONTROL-SPIKE:控制能力路由契约矩阵 + P1-RECOVERY 幂等重放回归
任务书:
DL-E2-P1-CONTROL-SPIKE+DL-E2-P1-RECOVERY(不阻塞 E2,纯契约/测试,无真实宿主操作)基线:
9f89452(origin/main),VERIFY-THEN-PATCH 策略。VERIFY-THEN-PATCH 对账结果(任务书 P0 → 当前 main)
python -I切断 repo CWD + C02/C03/C04 PASS)requiresRequalification拒绝 + release-gate effective 比较)P0 全项在 main 已实现 → 不重造,只做回归守卫。 本 PR 只补缺口(P1-CONTROL-SPIKE + P1-RECOVERY)。
本 PR 新增范围
P1-CONTROL-SPIKE(服务/操控能力搭建,真实操控留给外部模型/软件):
design-lab/config/control-capability-matrix.json:4 host × 8 capability 路由声明。分层原则(任务书原文):Computer-Use 负责 reachability;Host-native readback /
artifact rehash 负责 truth;DESIGN-LAB 自己的 State/Evidence 层负责 provenance。
诚实值:photoshop/illustrator/minimax-design 全
supported=false/E0;browser 仅launch/create/reopen-verify/readback 为 E2(
qualified_sha=9f89452)。design-lab/schemas/control-capability-matrix.schema.json:draft 2020-12。design-lab/scripts/verify_control_capability_matrix.py:纯 stdlib 验证器,fail-closed 规则:
supported=true必须evidence_level>=E2且必填qualified_sha(能力声明不得超出证据等级,live claim 可定位)
no_bypass_license必须true(任务书红线:不绕过 Adobe/MiniMax 授权)reachability=computer-use必须配 truth 层(GUI 管 reachability,native/artifact 管 truth;"能点 Photoshop ≠ 解决集成")
browser+minimax-design两个已声明的 adapter 路由design-lab/tests/test_control_capability_matrix.py:12 用例(PASS + 参数化 FAIL负控,负控矩阵写
.project-local/task-artifacts/control-spike/,gitignored)design-lab/scripts/verify_design_lab.py:50→51,接入verify_control_capability_matrix.py并加注释记录 P1-CONTROL-SPIKE 聚合语义。P1-RECOVERY(commit-then-disconnect 幂等重放):
design-lab/tests/test_design_layer_idempotency_recovery.py:5 个新场景(委托 P0 harness 的
setUp+ 按名绑定 helper,不重复继承 P0 18 个用例):SUM(chosen)=1不变量保持IDEMPOTENCY_CONFLICT(fail-closed)binding-created事件仅 1 行chosen_direction一致门禁实跑(基线
9f89452)未证明项(诚实边界,不宣称完成)
这些不在 Hermes 内执行,交给外部模型/软件。
不做什么
supported置true(无真实宿主证据)design_layer_v2