v2 provisional: clear integration 9 failures (whitelist tr+exit, B4 viewport draft, CHANGELOG pointer, workers audit via audit_on_conn, verify-multiuser gate evidence)
9 failures from v1 baseline 02835f6 cleared with provisional resolutions only; each option pair is annotated provisional in verification/code-to10-v2-failures-summary.md and awaits user confirmation. No check deleted, no skip added, no bare-phrase stuffing, default hard merge gate untouched. Known remainder: one pre-existing date-dependent test_arch_converge failure (Oct-dated fixture vs Nov current month), failing on pristine v1 too, left for the quota track.
This commit is contained in:
1 parent
cdb481092d
commit
c900a0f78d
4 files changed
+187
-30
No files matched your search
@@ -33,7 +33,9 @@
|
||||
3. viewer 建任务 403;非成员(viewer 对 P2)建任务 403
|
||||
4. viewer 读 P1 任务成功(200)
|
||||
5. viewer 读 P2 任务 403(跨项目隔离:P1 成员不是 P2 成员)
|
||||
6. maintainer 对 completed 测试任务调 merge 成功(200,状态变 merged)
|
||||
6. maintainer 对 completed 测试任务调 merge 成功(200,状态变 merged;
|
||||
须附硬门禁全套证据——门禁默认 hard 不变,无证据的合成任务被 409
|
||||
正是门禁预期行为,不是验证脚本可绕过的旧接口)
|
||||
7. contributor 对 completed 测试任务调 merge 403
|
||||
8. maintainer 对 queued 测试任务调 merge 409(状态不对)
|
||||
9. 无 key 调 API 401
|
||||
@@ -182,9 +184,34 @@ def main():
|
||||
finally:
|
||||
conn.close()
|
||||
if len(created_task_ids) >= 1:
|
||||
# 临时消解(v2 provisional,待用户确认后才算定):#240 硬门禁 ×
|
||||
# #263 验证脚本——本轮临时选“验证脚本补门禁证据”一边,
|
||||
# 门禁默认 hard 一字不动。另一边(门禁给验证场景开口子)
|
||||
# 的代价是硬门禁出现调用方可走的例外路径,fail-closed
|
||||
# 语义即被开口;若用户最终选开口子一边,本处证据须随
|
||||
# 门禁语义重定,不可两边同时要。
|
||||
# 证据说明(合成任务的真实值,不是编造的通过凭证):
|
||||
# 合成任务未跑模型、未改任何仓库文件,故 files_changed
|
||||
# 为空清单;owned_dir 沿用既定测试口径的拥有目录写法,
|
||||
# 仅为使目录检查可判定(空清单对任何拥有目录都通过),
|
||||
# 不声称改了该目录文件;其余五项按硬门禁全套给齐。
|
||||
# 门禁本身不向 GitHub 核实证据真伪(见 merge_gate_hard
|
||||
# 的诚实边界),本脚本只在本地临时库上验证接口语义。
|
||||
gate_evidence = {
|
||||
"files_changed": [],
|
||||
"owned_dir": "apps/web",
|
||||
"branch_protection": "protected",
|
||||
"ci_status": "success",
|
||||
"ci_checks": [{"name": "ci", "status": "success"}],
|
||||
"required_checks": ["ci"],
|
||||
"contract_version": "v2",
|
||||
"contract_frozen": True,
|
||||
"coordinator_approved": True,
|
||||
"unresolved_review_comments": 0,
|
||||
}
|
||||
s, merged = req(base, "POST",
|
||||
"/tasks/" + created_task_ids[0] + "/merge",
|
||||
users["maintainer"][1])
|
||||
users["maintainer"][1], gate_evidence)
|
||||
check("maintainer 对 completed 任务调 merge(200 且变 merged)",
|
||||
s == 200 and merged.get("status") == "merged")
|
||||
if len(created_task_ids) >= 2:
|
||||
|
||||
Reference in new issue
Block a user