@chenmk/superflow 0.5.15 → 0.5.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/README.md +16 -5
- package/README.zh-CN.md +10 -1
- package/assets/scripts/superflow-integration-evidence-hook.sh +1 -1
- package/assets/scripts/superflow-managed-executor-preflight.mjs +30 -0
- package/assets/scripts/superflow-managed-work-check.mjs +35 -0
- package/assets/scripts/superflow-review-coverage.mjs +34 -0
- package/assets/scripts/superflow-test-report-lint.py +165 -9
- package/assets/scripts/superflow-verify-integration.sh +4 -9
- package/assets/skills/superflow-docs/SKILL.md +3 -0
- package/assets/skills/superflow-implement/SKILL.md +3 -0
- package/assets/skills/superflow-pipeline/references/document-review-coverage.md +18 -3
- package/assets/skills/superflow-pipeline/references/test-execution-template.md +3 -1
- package/assets/skills/superflow-pipeline/scripts/superflow-guard.sh +9 -5
- package/assets/skills/superflow-verify/SKILL.md +3 -0
- package/assets/skills-en/superflow-docs/SKILL.md +3 -0
- package/assets/skills-en/superflow-implement/SKILL.md +3 -0
- package/assets/skills-en/superflow-pipeline/references/document-review-coverage.md +18 -3
- package/assets/skills-en/superflow-pipeline/references/test-execution-template.md +3 -1
- package/assets/skills-en/superflow-pipeline/scripts/superflow-guard.sh +9 -5
- package/assets/skills-en/superflow-verify/SKILL.md +3 -0
- package/dist/app/commands/change-guard.js +4 -0
- package/dist/app/commands/change-guard.js.map +1 -1
- package/dist/app/commands/doctor.js +8 -1
- package/dist/app/commands/doctor.js.map +1 -1
- package/dist/app/commands/init.js +12 -1
- package/dist/app/commands/init.js.map +1 -1
- package/dist/app/commands/update.js +18 -9
- package/dist/app/commands/update.js.map +1 -1
- package/package.json +1 -1
- package/scripts/postinstall.js +18 -2
package/README.md
CHANGED
|
@@ -31,6 +31,15 @@
|
|
|
31
31
|
SuperBridge Flow is a workflow CLI for bringing OpenSpec/SDD and Superpowers
|
|
32
32
|
together in real software delivery.
|
|
33
33
|
|
|
34
|
+
## 0.5.17 acceptance evidence fixes
|
|
35
|
+
|
|
36
|
+
- Per-case PASS binds retained receipts and raw output to the service entry and current source/build. Empty files, remote links, zero execution and substituted entries no longer pass.
|
|
37
|
+
- Persisted fields freeze before/after values for the same business ID and expected assertions. Independent review still checks the actual Service-to-Mapper statement.
|
|
38
|
+
- Keep partial results; only a complete final summary authorizes delivery. Lightweight documentation acquires no DB requirement.
|
|
39
|
+
- CLI and Codex/Claude scripts use the same installation source. Repeated updates refresh version records and preserve custom state.
|
|
40
|
+
|
|
41
|
+
Complete affected evidence for legacy reports. Hashes prove identity, not business correctness or authenticity.
|
|
42
|
+
|
|
34
43
|
## Why SuperBridge Flow
|
|
35
44
|
|
|
36
45
|
Modern agentic coding often fails in the gap between a well-written spec and
|
|
@@ -71,11 +80,13 @@ provenance or managed Superflow/SDD entries. Custom Hooks remain. Project init
|
|
|
71
80
|
and update use the same migration; the global prompt Hook also attempts one
|
|
72
81
|
safe migration per project session and asks for a restart if definitions changed.
|
|
73
82
|
Use `superflow hook-audit --scope global --agent both --json` to inspect old
|
|
74
|
-
relative global Hooks
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
83
|
+
relative global Hooks, or run `superflow hook-migrate --scope global --agent
|
|
84
|
+
both --apply` separately. A normal global npm postinstall, `superflow init`,
|
|
85
|
+
resumed init, and update run the same allowlisted migration. They back up host
|
|
86
|
+
configs before editing, preserve unknown and custom Hooks, and leave files
|
|
87
|
+
untouched on repeated runs. `superflow doctor` fails with a remediation command
|
|
88
|
+
if a known old global registration remains. `init/update --no-hooks` skips their Hook steps;
|
|
89
|
+
npm `--ignore-scripts` skips postinstall. Restart the host session after migration.
|
|
79
90
|
|
|
80
91
|
## Highlights
|
|
81
92
|
|
package/README.zh-CN.md
CHANGED
|
@@ -41,12 +41,21 @@ CLI 会把 SuperBridge Flow 技能、配套 hook/command 脚本整合为单一 n
|
|
|
41
41
|
`superflow map-audit` 只读比较 Understand Anything 的完整图谱、任务 Top-K 和目录/符号骨架,不创建第二套持久地图。
|
|
42
42
|
`superflow cleanup-audit` 只读输出重复文件名、复杂度线索和 TODO 热点,带证据与执行路由,不修改源码。
|
|
43
43
|
项目旧 Hook 可用 `superflow hook-migrate --path <项目> --json` 只读审计,追加 `--apply` 后只迁移有 ake 来源标记的已知旧 Hook 或 Superflow/SDD 管理项;先备份,保留自定义 Hook。项目级 init/update 自动执行同一迁移;全局会话 Hook 首次使用项目时也会尝试一次安全迁移,若配置已改变须重启当前会话。
|
|
44
|
-
全局旧相对路径 Hook
|
|
44
|
+
全局旧相对路径 Hook 可用 `superflow hook-audit --scope global --agent both --json` 只读盘点,也可用 `superflow hook-migrate --scope global --agent both --apply` 单独迁移。普通 `npm install -g` 的 postinstall、`superflow init`、恢复安装与 `superflow update` 都会执行同一白名单迁移:修改前备份 `~/.codex/hooks.json` 和 `~/.claude/settings.json`,保留未知及自定义 Hook,重复运行不改写;`superflow doctor` 会将仍存在的已知旧全局注册标为失败并给出更新命令。`init/update --no-hooks` 会跳过其 Hook 步骤;npm 使用 `--ignore-scripts` 时也不会运行 postinstall。迁移后重启宿主会话。
|
|
45
45
|
自动部署到:
|
|
46
46
|
|
|
47
47
|
- Claude Code:`~/.claude/skills/`、`~/.claude/scripts/`,并注册 `~/.claude/settings.json` hook
|
|
48
48
|
- Codex:`~/.codex/skills/`、`~/.codex/hooks/`
|
|
49
49
|
|
|
50
|
+
## 0.5.17 验收证据修复
|
|
51
|
+
|
|
52
|
+
- 逐用例 PASS 绑定本地执行凭证、原始输出、具体服务入口及当前源码/构建;空文件、远端链接、零执行和入口替代不再通过。
|
|
53
|
+
- 持久化字段需冻结同业务 ID 前后值与预期断言;独立评审继续核对实际 Service→Mapper statement。
|
|
54
|
+
- 局部结果保留 PARTIAL,最终完整汇总才可交付;轻量文档不追加数据库要求。
|
|
55
|
+
- CLI、Codex/Claude 脚本使用同一安装来源,重复更新刷新版本记录并保留自定义状态。
|
|
56
|
+
|
|
57
|
+
旧报告缺执行凭证时补齐受影响证据;哈希只证明身份,不证明业务正确性或防伪。
|
|
58
|
+
|
|
50
59
|
## 亮点
|
|
51
60
|
|
|
52
61
|
0.5.10 加强文档交付:逐需求×真实入口核对(含排除项)、真实入口验收合同、
|
|
@@ -3,6 +3,7 @@ import { execFileSync } from "node:child_process";
|
|
|
3
3
|
import { createHash } from "node:crypto";
|
|
4
4
|
import fs from "node:fs";
|
|
5
5
|
import path from "node:path";
|
|
6
|
+
import { fileURLToPath } from "node:url";
|
|
6
7
|
|
|
7
8
|
const [projectArg = ".", taskId] = process.argv.slice(2);
|
|
8
9
|
if (!taskId) {
|
|
@@ -102,6 +103,35 @@ if (changeDir) {
|
|
|
102
103
|
}
|
|
103
104
|
if (!fs.existsSync(reportFile))
|
|
104
105
|
errors.push(`缺少 test-report.md: ${reportFile}`);
|
|
106
|
+
const stateFile = path.join(changeDir, ".sdd/state.yaml");
|
|
107
|
+
const reviewFile = path.join(changeDir, ".sdd/reviews/document-review.json");
|
|
108
|
+
const full =
|
|
109
|
+
fs.existsSync(stateFile) &&
|
|
110
|
+
/^workflow:\s*full\s*$/m.test(fs.readFileSync(stateFile, "utf8"));
|
|
111
|
+
if (full && !fs.existsSync(reviewFile))
|
|
112
|
+
errors.push("完整 SDD 缺少冻结入口评审凭证");
|
|
113
|
+
if (fs.existsSync(reviewFile)) {
|
|
114
|
+
try {
|
|
115
|
+
execFileSync(
|
|
116
|
+
"python3",
|
|
117
|
+
[
|
|
118
|
+
path.join(
|
|
119
|
+
path.dirname(fileURLToPath(import.meta.url)),
|
|
120
|
+
"superflow-test-report-lint.py",
|
|
121
|
+
),
|
|
122
|
+
"--tests",
|
|
123
|
+
path.join(changeDir, "tests.md"),
|
|
124
|
+
"--review",
|
|
125
|
+
reviewFile,
|
|
126
|
+
"--require-complete",
|
|
127
|
+
reportFile,
|
|
128
|
+
],
|
|
129
|
+
{ encoding: "utf8", stdio: "pipe" },
|
|
130
|
+
);
|
|
131
|
+
} catch (error) {
|
|
132
|
+
errors.push(`逐用例执行凭证门禁失败: ${error.stdout ?? error.message}`);
|
|
133
|
+
}
|
|
134
|
+
}
|
|
105
135
|
}
|
|
106
136
|
|
|
107
137
|
if (errors.length > 0) {
|
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
import crypto from "crypto";
|
|
3
3
|
import fs from "fs";
|
|
4
4
|
import path from "path";
|
|
5
|
+
import { execFileSync } from "node:child_process";
|
|
6
|
+
import { fileURLToPath } from "node:url";
|
|
5
7
|
|
|
6
8
|
const [projectArg = ".", taskId, mode] = process.argv.slice(2);
|
|
7
9
|
const beforeReadyEvent = mode === "--before-ready-event";
|
|
@@ -328,6 +330,39 @@ function verifyOpenSpecTasksComplete(task, executor) {
|
|
|
328
330
|
while (current.startsWith(projectRoot)) {
|
|
329
331
|
const tasksFile = path.join(current, "tasks.md");
|
|
330
332
|
if (fs.existsSync(tasksFile)) {
|
|
333
|
+
const reviewFile = path.join(
|
|
334
|
+
current,
|
|
335
|
+
".sdd/reviews/document-review.json",
|
|
336
|
+
);
|
|
337
|
+
const stateFile = path.join(current, ".sdd/state.yaml");
|
|
338
|
+
const full =
|
|
339
|
+
fs.existsSync(stateFile) &&
|
|
340
|
+
/^workflow:\s*full\s*$/m.test(fs.readFileSync(stateFile, "utf8"));
|
|
341
|
+
if (full && !fs.existsSync(reviewFile))
|
|
342
|
+
fail("完整 SDD 缺少冻结入口评审凭证");
|
|
343
|
+
if (fs.existsSync(reviewFile)) {
|
|
344
|
+
try {
|
|
345
|
+
execFileSync(
|
|
346
|
+
"python3",
|
|
347
|
+
[
|
|
348
|
+
path.join(
|
|
349
|
+
path.dirname(fileURLToPath(import.meta.url)),
|
|
350
|
+
"superflow-test-report-lint.py",
|
|
351
|
+
),
|
|
352
|
+
"--tests",
|
|
353
|
+
path.join(current, "tests.md"),
|
|
354
|
+
"--review",
|
|
355
|
+
reviewFile,
|
|
356
|
+
"--require-complete",
|
|
357
|
+
path.join(current, "test-report.md"),
|
|
358
|
+
],
|
|
359
|
+
{ encoding: "utf8", stdio: "pipe" },
|
|
360
|
+
);
|
|
361
|
+
} catch (error) {
|
|
362
|
+
fail(`逐用例执行凭证门禁失败: ${error.stdout ?? error.message}`);
|
|
363
|
+
}
|
|
364
|
+
}
|
|
365
|
+
|
|
331
366
|
const tasks = fs
|
|
332
367
|
.readFileSync(tasksFile, "utf8")
|
|
333
368
|
.split(/\r?\n/)
|
|
@@ -138,6 +138,40 @@ export function validateCoverage(root, review, issues, checkCode = true) {
|
|
|
138
138
|
issues.push(`用例 ${test.id} 缺少 ${key} 断言`);
|
|
139
139
|
}
|
|
140
140
|
refs(test.sourceRefs, "contract", `用例 ${test.id}`);
|
|
141
|
+
if (
|
|
142
|
+
test.evidenceKind !== undefined &&
|
|
143
|
+
!["real", "controlled-simulation", "unit"].includes(test.evidenceKind)
|
|
144
|
+
)
|
|
145
|
+
issues.push(`用例 ${test.id} 的 evidenceKind 无效`);
|
|
146
|
+
const writes = test.assertions?.persistence ?? [];
|
|
147
|
+
if (
|
|
148
|
+
!Array.isArray(writes) ||
|
|
149
|
+
writes.some(
|
|
150
|
+
(write) =>
|
|
151
|
+
!nonempty(write?.id) ||
|
|
152
|
+
!nonempty(write.table) ||
|
|
153
|
+
!nonempty(write.field) ||
|
|
154
|
+
!("expected" in write) ||
|
|
155
|
+
(write.expected === null && write.allowNull !== true),
|
|
156
|
+
)
|
|
157
|
+
) {
|
|
158
|
+
issues.push(
|
|
159
|
+
`用例 ${test.id} 缺少持久化字段与非空预期值;历史 NULL 需明确 allowNull`,
|
|
160
|
+
);
|
|
161
|
+
} else {
|
|
162
|
+
const ids = new Set(writes.map((write) => write.id));
|
|
163
|
+
if (ids.size !== writes.length)
|
|
164
|
+
issues.push(`用例 ${test.id} 持久化断言 ID 重复`);
|
|
165
|
+
for (const field of entry?.persistence ?? []) {
|
|
166
|
+
if (
|
|
167
|
+
!writes.some(
|
|
168
|
+
(write) =>
|
|
169
|
+
write.table === field.table && write.field === field.field,
|
|
170
|
+
)
|
|
171
|
+
)
|
|
172
|
+
issues.push(`用例 ${test.id} 缺少入口写入字段的前后值断言`);
|
|
173
|
+
}
|
|
174
|
+
}
|
|
141
175
|
}
|
|
142
176
|
const pairs = new Set();
|
|
143
177
|
for (const decision of list(coverage.decisions)) {
|
|
@@ -14,6 +14,7 @@ mechanically:
|
|
|
14
14
|
from __future__ import annotations
|
|
15
15
|
|
|
16
16
|
import argparse
|
|
17
|
+
import hashlib
|
|
17
18
|
import json
|
|
18
19
|
import re
|
|
19
20
|
import subprocess
|
|
@@ -261,6 +262,146 @@ def lint_against_tests_contract(report_path: Path, report_text: str, tests_path:
|
|
|
261
262
|
return issues
|
|
262
263
|
|
|
263
264
|
|
|
265
|
+
def final_report_result(text: str) -> str:
|
|
266
|
+
# Only the latest explicit summary per language is authoritative. Historical
|
|
267
|
+
# notes and fenced examples do not invalidate the final execution ledger.
|
|
268
|
+
text = re.sub(r"```.*?```", "", text, flags=re.S)
|
|
269
|
+
results = {}
|
|
270
|
+
for match in re.finditer(r"^(验证结果|Verification Result)\s*[::]\s*([A-Z_]+)\s*$", text, re.I | re.M):
|
|
271
|
+
results[match[1].lower()] = match[2].upper()
|
|
272
|
+
if len(set(results.values())) > 1:
|
|
273
|
+
return "CONFLICT"
|
|
274
|
+
return next(iter(results.values()), "MISSING")
|
|
275
|
+
|
|
276
|
+
|
|
277
|
+
def verified_file(base: Path, value: str) -> Path:
|
|
278
|
+
"""Local retained artifacts only. Hashes prove identity, not truthfulness."""
|
|
279
|
+
if not isinstance(value, str) or not value.strip() or re.match(r"^[a-z]+://", value, re.I):
|
|
280
|
+
raise ValueError("需要本地可读取的执行证据,远端 URL 不能作为通过凭据")
|
|
281
|
+
file = (base / value).resolve()
|
|
282
|
+
if not file.is_file() or file.stat().st_size == 0:
|
|
283
|
+
raise ValueError(f"证据文件不存在或无内容:{value}")
|
|
284
|
+
return file
|
|
285
|
+
|
|
286
|
+
|
|
287
|
+
def hashed_file(base: Path, value: str, sha256: str) -> Path:
|
|
288
|
+
file = verified_file(base, value)
|
|
289
|
+
if not isinstance(sha256, str) or not re.fullmatch(r"[a-f0-9]{64}", sha256):
|
|
290
|
+
raise ValueError(f"缺少有效 SHA-256:{value}")
|
|
291
|
+
if hashlib.sha256(file.read_bytes()).hexdigest() != sha256:
|
|
292
|
+
raise ValueError(f"证据指纹不一致或源码已变化:{value}")
|
|
293
|
+
return file
|
|
294
|
+
|
|
295
|
+
|
|
296
|
+
def validate_execution_receipt(file: Path, case: dict, coverage: dict, change: Path) -> None:
|
|
297
|
+
receipt = json.loads(file.read_text(encoding="utf-8"))
|
|
298
|
+
if receipt.get("schemaVersion") != "superflow.execution-receipt.v1":
|
|
299
|
+
raise ValueError("缺少 execution-receipt.v1;旧证据应保留为 PARTIAL")
|
|
300
|
+
for key, expected in [("caseId", case["id"]), ("entryId", case["entryId"]),
|
|
301
|
+
("level", case["level"]), ("status", "PASS")]:
|
|
302
|
+
if receipt.get(key) != expected:
|
|
303
|
+
raise ValueError(f"执行凭证 {key} 与冻结用例不一致")
|
|
304
|
+
if type(receipt.get("executed")) is not int or receipt["executed"] < 1:
|
|
305
|
+
raise ValueError("用例零执行/占位不能 PASS")
|
|
306
|
+
kind = case.get("evidenceKind", "real")
|
|
307
|
+
if kind not in {"real", "controlled-simulation", "unit"} or receipt.get("evidenceKind") != kind:
|
|
308
|
+
raise ValueError("执行证据等级与冻结合同不一致;模拟不能替代真实入口")
|
|
309
|
+
command = receipt["command"]
|
|
310
|
+
if (not isinstance(command.get("argv"), list) or not command["argv"]
|
|
311
|
+
or any(not isinstance(arg, str) or not arg.strip() for arg in command["argv"])
|
|
312
|
+
or type(command.get("exitCode")) is not int or command["exitCode"] != 0):
|
|
313
|
+
raise ValueError("缺少真实命令或命令退出码非零")
|
|
314
|
+
output = hashed_file(file.parent, command["output"], command["sha256"])
|
|
315
|
+
events = []
|
|
316
|
+
for line in output.read_text(encoding="utf-8").splitlines():
|
|
317
|
+
try:
|
|
318
|
+
event = json.loads(line)
|
|
319
|
+
if isinstance(event, dict) and event.get("caseId") == case["id"]:
|
|
320
|
+
events.append(event)
|
|
321
|
+
except ValueError:
|
|
322
|
+
continue
|
|
323
|
+
if len(events) != 1:
|
|
324
|
+
raise ValueError("原始输出缺少唯一用例执行事件;未知 ID/零执行不可 PASS")
|
|
325
|
+
event = events[0]
|
|
326
|
+
for key in ["caseId", "entryId", "level", "status", "executed", "assertions", "persistence",
|
|
327
|
+
"evidenceKind", "sources", "build", "target"]:
|
|
328
|
+
if event.get(key) != receipt.get(key):
|
|
329
|
+
raise ValueError(f"原始执行输出与凭证 {key} 不一致")
|
|
330
|
+
if event.get("command") != {"argv": command["argv"], "exitCode": command["exitCode"]}:
|
|
331
|
+
raise ValueError("原始执行命令与凭证不一致")
|
|
332
|
+
sources = receipt["sources"]
|
|
333
|
+
if not isinstance(sources, list) or not sources:
|
|
334
|
+
raise ValueError("缺少当前源码/构建指纹")
|
|
335
|
+
paths = set()
|
|
336
|
+
source_tokens = []
|
|
337
|
+
for source in sources:
|
|
338
|
+
paths.add(hashed_file(file.parent, source["path"], source["sha256"]))
|
|
339
|
+
source_tokens.append(source["path"] + ":" + source["sha256"])
|
|
340
|
+
entry = next((e for e in coverage.get("entries", []) if e["id"] == case["entryId"]), None)
|
|
341
|
+
if entry is None:
|
|
342
|
+
raise ValueError("执行凭证缺少冻结入口定义")
|
|
343
|
+
source_index = {s["id"]: s for s in coverage.get("sources", [])}
|
|
344
|
+
for ref in entry.get("sourceRefs", []):
|
|
345
|
+
source = source_index[ref]
|
|
346
|
+
if source.get("role") == "code" and (change / source["path"]).resolve() not in paths:
|
|
347
|
+
raise ValueError("执行凭证未覆盖该入口冻结的源码写入链")
|
|
348
|
+
build = receipt["build"]
|
|
349
|
+
target = receipt["target"]
|
|
350
|
+
fingerprint = hashlib.sha256("\n".join(sorted(source_tokens)).encode()).hexdigest()
|
|
351
|
+
if build.get("sourceFingerprint") != fingerprint or target.get("sourceFingerprint") != fingerprint:
|
|
352
|
+
raise ValueError("构建与运行目标未绑定当前源码指纹")
|
|
353
|
+
hashed_file(file.parent, build["artifact"], build["sha256"])
|
|
354
|
+
build_command = build["command"]
|
|
355
|
+
if (not isinstance(build_command.get("argv"), list) or not build_command["argv"]
|
|
356
|
+
or type(build_command.get("exitCode")) is not int or build_command["exitCode"] != 0):
|
|
357
|
+
raise ValueError("缺少成功构建命令")
|
|
358
|
+
build_output = hashed_file(file.parent, build_command["output"], build_command["sha256"])
|
|
359
|
+
expected_build = {"event": "build", "buildId": build["id"], "sourceFingerprint": fingerprint,
|
|
360
|
+
"artifactSha256": build["sha256"], "argv": build_command["argv"], "exitCode": 0}
|
|
361
|
+
build_events = []
|
|
362
|
+
for line in build_output.read_text(encoding="utf-8").splitlines():
|
|
363
|
+
try:
|
|
364
|
+
value = json.loads(line)
|
|
365
|
+
if isinstance(value, dict) and value.get("event") == "build" and value.get("buildId") == build["id"]:
|
|
366
|
+
build_events.append(value)
|
|
367
|
+
except ValueError:
|
|
368
|
+
continue
|
|
369
|
+
if len(build_events) != 1 or build_events[0] != expected_build:
|
|
370
|
+
raise ValueError("构建原始输出未关联当前源码与构建产物")
|
|
371
|
+
if target.get("buildSha256") != build["sha256"]:
|
|
372
|
+
raise ValueError("运行目标不是本次验证的构建产物")
|
|
373
|
+
if not isinstance(build.get("id"), str) or not build["id"].strip() or target.get("buildId") != build["id"]:
|
|
374
|
+
raise ValueError("真实运行目标与构建指纹不一致")
|
|
375
|
+
for key, expected in [("service", entry.get("service", entry["id"])),
|
|
376
|
+
("route", entry["route"]), ("kind", case["level"])]:
|
|
377
|
+
if target.get(key) != expected:
|
|
378
|
+
raise ValueError(f"真实运行目标 {key} 与冻结入口不一致")
|
|
379
|
+
assertions = receipt["assertions"]
|
|
380
|
+
required = set(case.get("assertions", {})) - {"persistence"}
|
|
381
|
+
required |= {"response", "state", "forbiddenEffects"}
|
|
382
|
+
if not isinstance(assertions, list) or {a["id"] for a in assertions} != required or len(assertions) != len(required):
|
|
383
|
+
raise ValueError("缺少冻结响应/状态/禁止副作用断言")
|
|
384
|
+
for assertion in assertions:
|
|
385
|
+
if (assertion.get("result") != "PASS" or "expected" not in assertion
|
|
386
|
+
or "actual" not in assertion or assertion["expected"] != assertion["actual"]):
|
|
387
|
+
raise ValueError("断言失败或缺少预期值/实际值")
|
|
388
|
+
expected_writes = case.get("assertions", {}).get("persistence", [])
|
|
389
|
+
writes = receipt.get("persistence", [])
|
|
390
|
+
if not isinstance(writes, list) or len(writes) != len(expected_writes):
|
|
391
|
+
raise ValueError("缺少持久化字段同业务 ID 的调用前后对照")
|
|
392
|
+
for expected, actual in zip(expected_writes, writes):
|
|
393
|
+
for key in ["id", "table", "field", "expected"]:
|
|
394
|
+
if key not in actual or actual[key] != expected[key]:
|
|
395
|
+
raise ValueError("持久化断言与冻结字段/预期值不一致")
|
|
396
|
+
before, after = actual["before"], actual["after"]
|
|
397
|
+
if (not before.get("businessId") or before["businessId"] != after.get("businessId")
|
|
398
|
+
or "value" not in before or "value" not in after
|
|
399
|
+
or after["value"] != expected["expected"]
|
|
400
|
+
or (after["value"] is None and not expected.get("allowNull", False))
|
|
401
|
+
or actual.get("result") != "PASS"):
|
|
402
|
+
raise ValueError("持久化值未达到预期;结构存在/全 NULL/跨业务 ID 不能替代写入")
|
|
403
|
+
|
|
404
|
+
|
|
264
405
|
def lint_case_evidence(report_path: Path, report_text: str, review_path: Path) -> list[Issue]:
|
|
265
406
|
"""Check the frozen R/E/C index against per-case execution receipts."""
|
|
266
407
|
issues: list[Issue] = []
|
|
@@ -280,6 +421,8 @@ def lint_case_evidence(report_path: Path, report_text: str, review_path: Path) -
|
|
|
280
421
|
if decision.get("disposition") != "EXCLUDED"
|
|
281
422
|
for case_id in decision.get("caseIds", [])
|
|
282
423
|
}
|
|
424
|
+
if final_report_result(report_text) == "CONFLICT":
|
|
425
|
+
issues.append(Issue("FAIL", report_path, 0, "中英文最终验证结果冲突"))
|
|
283
426
|
lines = report_text.splitlines()
|
|
284
427
|
header_at = next(
|
|
285
428
|
(i for i, line in enumerate(lines) if CASE_EVIDENCE_HEADER.fullmatch(line.strip())),
|
|
@@ -311,13 +454,13 @@ def lint_case_evidence(report_path: Path, report_text: str, review_path: Path) -
|
|
|
311
454
|
issues.append(Issue("FAIL", report_path, 0, f"用例 {case_id} 的入口或验收级别与冻结合同不一致"))
|
|
312
455
|
if result not in CASE_RESULTS or not evidence or evidence.lower() in {"pending", "todo", "待补"}:
|
|
313
456
|
issues.append(Issue("FAIL", report_path, 0, f"用例 {case_id} 缺少有效结果或证据位置"))
|
|
314
|
-
elif result == "PASS"
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
evidence_file
|
|
318
|
-
|
|
319
|
-
issues.append(Issue("FAIL", report_path, 0, f"用例 {case_id}
|
|
320
|
-
if result != "PASS" and
|
|
457
|
+
elif result == "PASS":
|
|
458
|
+
try:
|
|
459
|
+
evidence_file = verified_file(report_path.parent, evidence.split("#", 1)[0])
|
|
460
|
+
validate_execution_receipt(evidence_file, case or {}, coverage, report_path.parent)
|
|
461
|
+
except (OSError, ValueError, KeyError, TypeError, AttributeError) as error:
|
|
462
|
+
issues.append(Issue("FAIL", report_path, 0, f"用例 {case_id} 的通过证据不可验证:{error}"))
|
|
463
|
+
if result != "PASS" and final_report_result(report_text) == "PASS":
|
|
321
464
|
issues.append(Issue("FAIL", report_path, 0, f"用例 {case_id} 为 {result},报告不能声明整体验证 PASS"))
|
|
322
465
|
for case_id in receipts.keys() - required:
|
|
323
466
|
issues.append(Issue("FAIL", report_path, 0, f"用例 {case_id} 未在冻结入口评审中要求执行"))
|
|
@@ -349,11 +492,19 @@ def lint_report(path: Path, repo: Path | None, tests_path: Path | None = None,
|
|
|
349
492
|
db_backed = bool(DB_BACKED_RE.search(text))
|
|
350
493
|
blocked = bool(BLOCKED_RE.search(text))
|
|
351
494
|
passed_or_partial = bool(PASS_WORDS.search(text) or re.search(r"Partially verified|部分验证", text, re.I))
|
|
352
|
-
|
|
495
|
+
adjacent_review = path.parent / ".sdd/reviews/document-review.json"
|
|
496
|
+
if review_path is None and adjacent_review.is_file():
|
|
497
|
+
review_path = adjacent_review
|
|
498
|
+
state_path = path.parent / ".sdd/state.yaml"
|
|
499
|
+
full = state_path.is_file() and re.search(r"^workflow:\s*[\"']?full[\"']?\s*$", state_path.read_text(), re.M)
|
|
500
|
+
if full and review_path is None:
|
|
501
|
+
issues.append(Issue("FAIL", path, 0, "完整 SDD 缺少冻结入口评审凭证,不能以旧关键词报告交付"))
|
|
353
502
|
if review_path is not None:
|
|
354
503
|
issues.extend(lint_case_evidence(path, text, review_path))
|
|
504
|
+
else:
|
|
505
|
+
issues.extend(lint_against_tests_contract(path, text, tests_path or infer_tests_path(path)))
|
|
355
506
|
|
|
356
|
-
if db_backed and passed_or_partial and not blocked:
|
|
507
|
+
if review_path is None and db_backed and passed_or_partial and not blocked:
|
|
357
508
|
if not TABLE_REVERSE_HEADER_RE.search(text):
|
|
358
509
|
issues.append(
|
|
359
510
|
Issue(
|
|
@@ -471,6 +622,7 @@ def main() -> int:
|
|
|
471
622
|
parser.add_argument("--tests", default="")
|
|
472
623
|
parser.add_argument("--review", default="")
|
|
473
624
|
parser.add_argument("--repo-root", default="")
|
|
625
|
+
parser.add_argument("--require-complete", action="store_true")
|
|
474
626
|
parser.add_argument("--warn-only", action="store_true")
|
|
475
627
|
args = parser.parse_args()
|
|
476
628
|
|
|
@@ -486,6 +638,10 @@ def main() -> int:
|
|
|
486
638
|
all_issues.append(Issue("FAIL", path, 0, f"显式指定的 tests.md 不存在:{tests_path}"))
|
|
487
639
|
review_path = Path(args.review).resolve() if args.review else None
|
|
488
640
|
all_issues.extend(lint_report(path, repo, tests_path, review_path))
|
|
641
|
+
if args.require_complete:
|
|
642
|
+
text = path.read_text(encoding="utf-8")
|
|
643
|
+
if final_report_result(text) != "PASS":
|
|
644
|
+
all_issues.append(Issue("FAIL", path, 0, "完整交付要求最终验证结果 PASS;局部证据保留为 PARTIAL"))
|
|
489
645
|
|
|
490
646
|
printable = []
|
|
491
647
|
for issue in all_issues:
|
|
@@ -58,17 +58,12 @@ for REPORT in "$@"; do
|
|
|
58
58
|
check_pattern "$REPORT" "证据等级/真实验证结论" \
|
|
59
59
|
"Real integration passed|Partial real entry|Partially verified|Blocked|真实入口|API 集成|冒烟|Smoke"
|
|
60
60
|
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
FAILED=1
|
|
65
|
-
fi
|
|
66
|
-
fi
|
|
67
|
-
|
|
68
|
-
if grep -Eiq "跳过|未执行|待补充|TODO|后续测试|建议.*测试|是否.*测试" "$REPORT"; then
|
|
69
|
-
echo "FAIL [$REPORT] 存在跳过/待补充/后续测试类表述,不能标记完成"
|
|
61
|
+
# Always use the linter from this installation, on both Codex and Claude.
|
|
62
|
+
LINT="$(dirname "${BASH_SOURCE[0]}")/superflow-test-report-lint.py"
|
|
63
|
+
if [ ! -f "$LINT" ] || ! python3 "$LINT" --require-complete "$REPORT"; then
|
|
70
64
|
FAILED=1
|
|
71
65
|
fi
|
|
66
|
+
|
|
72
67
|
done
|
|
73
68
|
|
|
74
69
|
if [ "$FAILED" -ne 0 ]; then
|
|
@@ -486,3 +486,6 @@ DB 状态 | 结算/通知/展示消费点 | 真实验证方式`.
|
|
|
486
486
|
|
|
487
487
|
When SDD docs pass quality gates, continue with `$superflow-design` for Superpowers
|
|
488
488
|
technical design before prompt splitting or coding orchestration.
|
|
489
|
+
|
|
490
|
+
|
|
491
|
+
逐用例 PASS 必须提供可重放本地执行凭证;冻结服务/入口、源码写入链与持久化前后值断言。沿用 pipeline/references/document-review-coverage.md 的 execution-receipt.v1 合同,旧证据保留 PARTIAL;独立评审核对精确 Mapper statement 与原始输出,完整交付运行当前安装的 lint --require-complete。哈希不等同防伪或业务充分性。
|
|
@@ -484,3 +484,6 @@ Use a CR/Px prompt when frontend integration discovers:
|
|
|
484
484
|
- SQL/schema drift
|
|
485
485
|
|
|
486
486
|
CR/Px prompts must include the real frontend payload, screenshot or page path, error response, and validation evidence required after the fix.
|
|
487
|
+
|
|
488
|
+
|
|
489
|
+
逐用例 PASS 必须提供可重放本地执行凭证;冻结服务/入口、源码写入链与持久化前后值断言。沿用 pipeline/references/document-review-coverage.md 的 execution-receipt.v1 合同,旧证据保留 PARTIAL;独立评审核对精确 Mapper statement 与原始输出,完整交付运行当前安装的 lint --require-complete。哈希不等同防伪或业务充分性。
|
|
@@ -92,9 +92,24 @@ coding-ready 复检失败会写 BLOCKED 撤销旧 READY。
|
|
|
92
92
|
|
|
93
93
|
| 用例 ID | 入口 ID | 验收级别 | 结果 | 证据路径 |
|
|
94
94
|
|---|---|---|---|---|
|
|
95
|
-
| C1 | E1 | browser | PASS | logs/C1-
|
|
95
|
+
| C1 | E1 | browser | PASS | logs/C1-receipt.json |
|
|
96
96
|
|
|
97
97
|
结果只用 `PASS/FAIL/BLOCKED/PARTIAL`;证据路径指向实际命令输出、浏览器 trace、
|
|
98
|
-
响应或数据库对账记录。PASS
|
|
99
|
-
HTTP(S) 链接。阻塞项在报告正文写明原因。表格仅证明用例逐项回填,不能证明
|
|
98
|
+
响应或数据库对账记录。PASS 的本地证据文件必须保留到验收并可读取;远端资料须保存为本地可核验证据。阻塞项在报告正文写明原因。表格仅证明用例逐项回填,不能证明
|
|
100
99
|
证据内容正确。任何非 PASS 用例存在时,不得声明整体验证 PASS。
|
|
100
|
+
|
|
101
|
+
## 可重放执行凭证(0.5.17)
|
|
102
|
+
|
|
103
|
+
PASS 的证据路径现在必须指向本地 `superflow.execution-receipt.v1` JSON;不得以空文件、任意文本、远端 URL 或测试总数代替。旧报告保留 PARTIAL,补齐受影响证据后再整体 PASS。
|
|
104
|
+
|
|
105
|
+
凭证字段:`caseId/entryId/level/status=PASS/executed>=1/evidenceKind`;`command{argv,exitCode=0,output,sha256}`;`sources[{path,sha256}]`;`build{id,artifact,sha256,sourceFingerprint}`;`target{service,route,kind,buildId,buildSha256,sourceFingerprint}`;`assertions[{id,expected,actual,result=PASS}]`。路径相对凭证文件,可使用授权跨仓源码;输出需保留可读取的原始日志。源码指纹为 sources 按 `path:sha256` 排序后以换行连接的 SHA-256(末尾无换行)。构建与运行目标必须关联同一指纹和产物;Agent 仍核对构建命令与实际进程/镜像。
|
|
106
|
+
|
|
107
|
+
命令输出中每个用例包含一个 JSON 行执行事件,携带 `caseId/entryId/level/status/executed/assertions/persistence`,与凭证相同。普通日志可混排;未知 ID、零执行、SKIP、占位或缺少断言事件不可 PASS。一个日志可包含多个用例,各凭证分别定位自己的事件。
|
|
108
|
+
|
|
109
|
+
冻结入口可增加 `service`(默认 entryId)、`persistence:[{table,field}]`;用例默认 `evidenceKind=real`,只有冻结合同明确允许时才填 `controlled-simulation` 或 `unit`。两个服务写同表也必须分别登记入口和源码链,不得交换证据。
|
|
110
|
+
|
|
111
|
+
持久化写入用例在 `assertions.persistence` 冻结 `[{id,table,field,expected,allowNull?}]`,凭证/原始事件同名数组追加 `before{businessId,value}`、`after{businessId,value}`、`result`。业务 ID 一致且 after.value 等于冻结预期;新增/改字段用非空预期,历史 NULL 明确 allowNull。字段索引存在、mock 参数赋值、全 NULL 数据不能证明写入。
|
|
112
|
+
|
|
113
|
+
独立评审必须检查实际 Service 调用的精确 Mapper statement 和所有写入链、运行目标、原始断言及旧通知/新申请隔离;报告的“实现已补齐”必须与源码和运行证据一致。哈希和结构不保证日志真实或断言充分,不能当作防伪签名。该扩展不增加托管协议或状态 owner;纯文档/非行为轻量任务不强加 DB 验收。
|
|
114
|
+
|
|
115
|
+
原始用例事件还必须携带 evidenceKind/sources/build/target 和 command{argv,exitCode},与凭证完全一致。build.command{argv,exitCode,output,sha256} 引用构建原始日志,其中包含 JSON 行 {event:"build",buildId,sourceFingerprint,artifactSha256,argv,exitCode:0};日志与实际构建/运行仍由独立评审核验。最终汇总仅取最后一个中英文一致的“验证结果/Verification Result”,历史记录与代码块示例不用于晋升。
|
|
@@ -76,7 +76,7 @@ mvn test -Dtest=UserServiceTest
|
|
|
76
76
|
|
|
77
77
|
| 用例 ID | 入口 ID | 验收级别 | 结果 | 证据路径 |
|
|
78
78
|
|---|---|---|---|---|
|
|
79
|
-
| C1 | E1 | browser | PASS | logs/C1-
|
|
79
|
+
| C1 | E1 | browser | PASS | logs/C1-receipt.json |
|
|
80
80
|
|
|
81
81
|
`PASS/FAIL/BLOCKED/PARTIAL` 之外的值无效;非 PASS 项在正文说明原因。
|
|
82
82
|
数据库字段展示要分别记录非空数据按同一 ID 的 API/DB 值对账、历史 NULL 结果和
|
|
@@ -261,3 +261,5 @@ HTTP 200、字段非空、mock-only、DB-only、`BUILD SUCCESS`、`Tests are ski
|
|
|
261
261
|
- 不允许把泛化外部失败当作通过,除非需求明确要求该失败结果
|
|
262
262
|
- 不允许只检查主仓数据库结构就关闭跨仓共享表任务;必须覆盖全部消费仓实体/Mapper/SQL
|
|
263
263
|
- **不允许"编译成功 + 单元测试通过"就标记任务完成,必须完成上述 checklist 全部项**
|
|
264
|
+
|
|
265
|
+
执行凭证格式与持久化前后对照遵循 [document-review-coverage.md](document-review-coverage.md),不要另建格式;历史局部结论保留,以最后一个中英文一致的验证结果为最终汇总。
|
|
@@ -91,7 +91,7 @@ require_test_report_lint() {
|
|
|
91
91
|
local -a lint_args
|
|
92
92
|
root="$(project_root_for_change)"
|
|
93
93
|
review="$CHANGE_DIR/.sdd/reviews/document-review.json"
|
|
94
|
-
lint_args=(--tests "$CHANGE_DIR/tests.md")
|
|
94
|
+
lint_args=(--tests "$CHANGE_DIR/tests.md" --require-complete)
|
|
95
95
|
if [[ "$(state_get workflow)" == "full" && ! -f "$review" ]]; then
|
|
96
96
|
issues+=("full SDD verify requires .sdd/reviews/document-review.json; complete the docs entry review before verify")
|
|
97
97
|
return
|
|
@@ -101,8 +101,8 @@ require_test_report_lint() {
|
|
|
101
101
|
fi
|
|
102
102
|
|
|
103
103
|
for lint in \
|
|
104
|
-
"$
|
|
105
|
-
"$
|
|
104
|
+
"${SUPERFLOW_REPORT_LINT:-$SCRIPT_DIR/../../../scripts/superflow-test-report-lint.py}" \
|
|
105
|
+
"$SCRIPT_DIR/../../../hooks/superflow-test-report-lint.py"; do
|
|
106
106
|
if [[ -x "$lint" ]]; then
|
|
107
107
|
output="$(mktemp)"
|
|
108
108
|
if ! "$lint" "${lint_args[@]}" "$report" >"$output" 2>&1; then
|
|
@@ -907,8 +907,12 @@ case "$PHASE" in
|
|
|
907
907
|
require_file test-report.md
|
|
908
908
|
require_grep 'RED|失败证据' test-report.md "RED evidence"
|
|
909
909
|
require_grep 'GREEN|通过证据' test-report.md "GREEN evidence"
|
|
910
|
-
|
|
911
|
-
|
|
910
|
+
if [[ "$(state_get workflow)" == "full" ]]; then
|
|
911
|
+
require_grep '接口自动化|curl|Postman|Newman|pytest|RestAssured' test-report.md "interface automation evidence"
|
|
912
|
+
fi
|
|
913
|
+
if change_has_database_change; then
|
|
914
|
+
require_grep 'DB|数据库|SELECT|SHOW CREATE' test-report.md "DB evidence"
|
|
915
|
+
fi
|
|
912
916
|
require_grep 'superflow-verify-integration|superflow-delivery-check|superflow-test-report-lint' test-report.md "SuperBridge Flow hook/script evidence"
|
|
913
917
|
if change_has_external_enum_risk; then
|
|
914
918
|
require_grep 'External Enum Binding|外部枚举绑定|第三方字段语义绑定|外部展示|展示文案|业务语义|财务语义|BEM|真实入口' test-report.md "external enum binding runtime evidence"
|
|
@@ -180,3 +180,6 @@ This advances to `phase: archive`, sets `verify_result: pass`, and records
|
|
|
180
180
|
|
|
181
181
|
Passing verification does not authorize automatic archive. Enter `$superflow-archive`
|
|
182
182
|
and wait for explicit user confirmation.
|
|
183
|
+
|
|
184
|
+
|
|
185
|
+
逐用例 PASS 必须提供可重放本地执行凭证;冻结服务/入口、源码写入链与持久化前后值断言。沿用 pipeline/references/document-review-coverage.md 的 execution-receipt.v1 合同,旧证据保留 PARTIAL;独立评审核对精确 Mapper statement 与原始输出,完整交付运行当前安装的 lint --require-complete。哈希不等同防伪或业务充分性。
|
|
@@ -486,3 +486,6 @@ Use references only as needed:
|
|
|
486
486
|
|
|
487
487
|
When SDD docs pass quality gates, continue with `$superflow-design` for Superpowers
|
|
488
488
|
technical design before prompt splitting or coding orchestration.
|
|
489
|
+
|
|
490
|
+
|
|
491
|
+
Per-case PASS requires retained local execution receipts. Freeze service/entry, source write chains and before/after persistence assertions using pipeline/references/document-review-coverage.md and execution-receipt.v1. Keep legacy evidence PARTIAL. Independent review checks the exact Mapper statement and raw output; full delivery runs the current installation's lint --require-complete. Hashes do not prove authenticity or business sufficiency.
|
|
@@ -134,3 +134,6 @@ Before moving to verify, run:
|
|
|
134
134
|
Do not claim completion from unit tests alone. Runtime code changes require
|
|
135
135
|
compile/build evidence, app start evidence when applicable, real API or event
|
|
136
136
|
execution, DB/log checks, hook output, and test-report updates.
|
|
137
|
+
|
|
138
|
+
|
|
139
|
+
Per-case PASS requires retained local execution receipts. Freeze service/entry, source write chains and before/after persistence assertions using pipeline/references/document-review-coverage.md and execution-receipt.v1. Keep legacy evidence PARTIAL. Independent review checks the exact Mapper statement and raw output; full delivery runs the current installation's lint --require-complete. Hashes do not prove authenticity or business sufficiency.
|
|
@@ -101,9 +101,24 @@ Full SDD reports use one per-case execution evidence table for the existing repo
|
|
|
101
101
|
|
|
102
102
|
| Case ID | Entry ID | Acceptance level | Result | Evidence path |
|
|
103
103
|
|---|---|---|---|---|
|
|
104
|
-
| C1 | E1 | browser | PASS | logs/C1-
|
|
104
|
+
| C1 | E1 | browser | PASS | logs/C1-receipt.json |
|
|
105
105
|
|
|
106
106
|
Results are `PASS/FAIL/BLOCKED/PARTIAL`. Evidence points to actual command output, browser trace,
|
|
107
|
-
response or DB reconciliation. Retain readable local
|
|
108
|
-
identify remote evidence. Explain blockers in the report body. This table proves case-level
|
|
107
|
+
response or DB reconciliation. Retain readable local execution receipts for PASS; remote material must be saved locally. Explain blockers in the report body. This table proves case-level
|
|
109
108
|
accounting only; the Host must inspect evidence contents. Any non-PASS case prevents an overall PASS.
|
|
109
|
+
|
|
110
|
+
## Replayable execution receipts (0.5.17)
|
|
111
|
+
|
|
112
|
+
A PASS evidence path must reference a retained local `superflow.execution-receipt.v1` JSON. Empty files, arbitrary prose, remote URLs and aggregate counts cannot replace execution evidence. Keep legacy evidence PARTIAL until affected checks are completed.
|
|
113
|
+
|
|
114
|
+
Receipt fields: `caseId/entryId/level/status=PASS/executed>=1/evidenceKind`; `command{argv,exitCode=0,output,sha256}`; `sources[{path,sha256}]`; `build{id,artifact,sha256,sourceFingerprint}`; `target{service,route,kind,buildId,buildSha256,sourceFingerprint}`; `assertions[{id,expected,actual,result=PASS}]`. Paths are relative to the receipt, including authorized sibling sources. Retain raw output. Compute sourceFingerprint as SHA-256 of sorted `path:sha256` lines joined with newline, without a trailing newline. Build and runtime target share the fingerprint and artifact identity. The reviewer still checks build commands and the actual process/image.
|
|
115
|
+
|
|
116
|
+
Raw command output includes exactly one JSON line per case with `caseId/entryId/level/status/executed/assertions/persistence` matching the receipt. Other logs may coexist. Unknown IDs, zero execution, SKIP, placeholders and missing assertion events cannot PASS. Multiple cases may share one retained log, with each receipt selecting its own event.
|
|
117
|
+
|
|
118
|
+
Frozen entries may declare `service` (default entryId) and `persistence:[{table,field}]`. Cases default to `evidenceKind=real`; `controlled-simulation` or `unit` require explicit frozen approval. Services writing the same table remain separate entries and source chains, with separate evidence.
|
|
119
|
+
|
|
120
|
+
Freeze writes in `assertions.persistence:[{id,table,field,expected,allowNull?}]`. Receipt/raw event add `before{businessId,value}`, `after{businessId,value}`, and `result`. Business IDs must match and after.value must equal the frozen expectation. New/changed fields require non-null expectations; historical NULL explicitly uses allowNull. Schema/index existence, mock arguments and all-NULL samples cannot prove writes.
|
|
121
|
+
|
|
122
|
+
Independent review checks the exact Mapper statement called by Service, every write chain, runtime identity, raw assertions and old-event/new-request isolation. Claims that implementation is complete must agree with source and runtime evidence. Hashes prove identity, not authenticity or test sufficiency. No new managed protocol/state owner is introduced; non-behavioral lightweight work does not acquire DB obligations.
|
|
123
|
+
|
|
124
|
+
Raw case events also carry evidenceKind/sources/build/target and command{argv,exitCode}, exactly matching the receipt. build.command{argv,exitCode,output,sha256} retains build output with a JSON line {event:"build",buildId,sourceFingerprint,artifactSha256,argv,exitCode:0}. Independent review still verifies actual build/runtime behavior. Only the latest consistent bilingual Verification Result authorizes completion; historical records and fenced examples do not.
|
|
@@ -60,7 +60,7 @@ execution table checked by `superflow-test-report-lint.py --review`:
|
|
|
60
60
|
|
|
61
61
|
| Case ID | Entry ID | Acceptance level | Result | Evidence path |
|
|
62
62
|
|---|---|---|---|---|
|
|
63
|
-
| C1 | E1 | browser | PASS | logs/C1-
|
|
63
|
+
| C1 | E1 | browser | PASS | logs/C1-receipt.json |
|
|
64
64
|
|
|
65
65
|
Use only `PASS/FAIL/BLOCKED/PARTIAL`; explain non-PASS results in the report.
|
|
66
66
|
For database-backed display fields, record same-ID API/DB values on non-null
|
|
@@ -71,3 +71,5 @@ field-key checks, static frontend inspection and browser evidence.
|
|
|
71
71
|
- Branch/commit/build number or image:
|
|
72
72
|
- Base URL:
|
|
73
73
|
- Verification timestamp:
|
|
74
|
+
|
|
75
|
+
Use [document-review-coverage.md](document-review-coverage.md) for receipts and persistence comparisons. Do not invent another format. Retain historical partial results; the latest consistent bilingual Verification Result is authoritative.
|
|
@@ -91,7 +91,7 @@ require_test_report_lint() {
|
|
|
91
91
|
local -a lint_args
|
|
92
92
|
root="$(project_root_for_change)"
|
|
93
93
|
review="$CHANGE_DIR/.sdd/reviews/document-review.json"
|
|
94
|
-
lint_args=(--tests "$CHANGE_DIR/tests.md")
|
|
94
|
+
lint_args=(--tests "$CHANGE_DIR/tests.md" --require-complete)
|
|
95
95
|
if [[ "$(state_get workflow)" == "full" && ! -f "$review" ]]; then
|
|
96
96
|
issues+=("full SDD verify requires .sdd/reviews/document-review.json; complete the docs entry review before verify")
|
|
97
97
|
return
|
|
@@ -101,8 +101,8 @@ require_test_report_lint() {
|
|
|
101
101
|
fi
|
|
102
102
|
|
|
103
103
|
for lint in \
|
|
104
|
-
"$
|
|
105
|
-
"$
|
|
104
|
+
"${SUPERFLOW_REPORT_LINT:-$SCRIPT_DIR/../../../scripts/superflow-test-report-lint.py}" \
|
|
105
|
+
"$SCRIPT_DIR/../../../hooks/superflow-test-report-lint.py"; do
|
|
106
106
|
if [[ -x "$lint" ]]; then
|
|
107
107
|
output="$(mktemp)"
|
|
108
108
|
if ! "$lint" "${lint_args[@]}" "$report" >"$output" 2>&1; then
|
|
@@ -874,8 +874,12 @@ case "$PHASE" in
|
|
|
874
874
|
require_file test-report.md
|
|
875
875
|
require_grep 'RED|failure evidence' test-report.md "RED evidence"
|
|
876
876
|
require_grep 'GREEN|pass evidence' test-report.md "GREEN evidence"
|
|
877
|
-
|
|
878
|
-
|
|
877
|
+
if [[ "$(state_get workflow)" == "full" ]]; then
|
|
878
|
+
require_grep 'interface automation|curl|Postman|Newman|pytest|RestAssured' test-report.md "interface automation evidence"
|
|
879
|
+
fi
|
|
880
|
+
if change_has_database_change; then
|
|
881
|
+
require_grep 'DB|database|SELECT|SHOW CREATE' test-report.md "DB evidence"
|
|
882
|
+
fi
|
|
879
883
|
require_grep 'superflow-verify-integration|superflow-delivery-check|superflow-test-report-lint' test-report.md "SuperBridge Flow hook/script evidence"
|
|
880
884
|
if change_has_money_precision_risk; then
|
|
881
885
|
require_money_precision_evidence test-report.md "money precision runtime evidence"
|
|
@@ -189,3 +189,6 @@ This advances to `phase: archive`, sets `verify_result: pass`, and records
|
|
|
189
189
|
|
|
190
190
|
Passing verification does not authorize automatic archive. Enter `$superflow-archive`
|
|
191
191
|
and wait for explicit user confirmation.
|
|
192
|
+
|
|
193
|
+
|
|
194
|
+
Per-case PASS requires retained local execution receipts. Freeze service/entry, source write chains and before/after persistence assertions using pipeline/references/document-review-coverage.md and execution-receipt.v1. Keep legacy evidence PARTIAL. Independent review checks the exact Mapper statement and raw output; full delivery runs the current installation's lint --require-complete. Hashes do not prove authenticity or business sufficiency.
|
|
@@ -16,6 +16,10 @@ export function runChangeGuard(change, phase, options = {}) {
|
|
|
16
16
|
const guard = path.join(PIPELINE_SCRIPTS, "superflow-guard.sh");
|
|
17
17
|
execFileSync("bash", [guard, resolveChangeDir(change), phase], {
|
|
18
18
|
stdio: options.quiet ? "pipe" : "inherit",
|
|
19
|
+
env: {
|
|
20
|
+
...process.env,
|
|
21
|
+
SUPERFLOW_REPORT_LINT: path.join(ASSETS_DIR, "scripts", "superflow-test-report-lint.py"),
|
|
22
|
+
},
|
|
19
23
|
});
|
|
20
24
|
}
|
|
21
25
|
export function runCodingReady(change, options = {}) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"change-guard.js","sourceRoot":"","sources":["../../../src/app/commands/change-guard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAEtD,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CACnC,UAAU,EACV,QAAQ,EACR,oBAAoB,EACpB,SAAS,CACV,CAAC;AAEF,MAAM,UAAU,gBAAgB,CAAC,MAAc;IAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACpC,IAAI,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC;IAEtC,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACnE,IAAI,UAAU,CAAC,cAAc,CAAC;QAAE,OAAO,cAAc,CAAC;IAEtD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,MAAc,EACd,KAAiD,EACjD,UAA+B,EAAE;IAEjC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,oBAAoB,CAAC,CAAC;IAChE,YAAY,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,EAAE;QAC7D,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;
|
|
1
|
+
{"version":3,"file":"change-guard.js","sourceRoot":"","sources":["../../../src/app/commands/change-guard.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrC,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAEtD,MAAM,gBAAgB,GAAG,IAAI,CAAC,OAAO,CACnC,UAAU,EACV,QAAQ,EACR,oBAAoB,EACpB,SAAS,CACV,CAAC;AAEF,MAAM,UAAU,gBAAgB,CAAC,MAAc;IAC7C,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;IACpC,IAAI,UAAU,CAAC,MAAM,CAAC;QAAE,OAAO,MAAM,CAAC;IAEtC,MAAM,cAAc,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;IACnE,IAAI,UAAU,CAAC,cAAc,CAAC;QAAE,OAAO,cAAc,CAAC;IAEtD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,MAAc,EACd,KAAiD,EACjD,UAA+B,EAAE;IAEjC,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,oBAAoB,CAAC,CAAC;IAChE,YAAY,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,KAAK,CAAC,EAAE;QAC7D,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS;QACzC,GAAG,EAAE;YACH,GAAG,OAAO,CAAC,GAAG;YACd,qBAAqB,EAAE,IAAI,CAAC,IAAI,CAC9B,UAAU,EACV,SAAS,EACT,+BAA+B,CAChC;SACF;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,cAAc,CAC5B,MAAc,EACd,UAA8B,EAAE;IAEhC,MAAM,SAAS,GAAG,IAAI,CAAC,OAAO,CAC5B,UAAU,EACV,SAAS,EACT,4BAA4B,CAC7B,CAAC;IACF,MAAM,IAAI,GAAG;QACX,SAAS;QACT,gBAAgB,CAAC,MAAM,CAAC;QACxB,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACpC,CAAC;IACF,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE;YAClD,QAAQ,EAAE,OAAO;YACjB,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC;SAClC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IACD,YAAY,CAAC,OAAO,CAAC,QAAQ,EAAE,IAAI,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;IAC3D,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAc;IAC7C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,gBAAgB,EAAE,sBAAsB,CAAC,CAAC;IACpE,YAAY,CAAC,MAAM,EAAE,CAAC,OAAO,EAAE,gBAAgB,CAAC,MAAM,CAAC,EAAE,WAAW,CAAC,EAAE;QACrE,KAAK,EAAE,SAAS;KACjB,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -9,7 +9,7 @@ import { resolveRuntimeLanguage } from '../../domains/config/cli-help.js';
|
|
|
9
9
|
import { managedText } from '../../domains/managed-work/i18n.js';
|
|
10
10
|
import { inspectCodexSuperpowers, REQUIRED_CODEX_SUPERPOWER_SKILLS, } from '../../domains/deps.js';
|
|
11
11
|
import { resolveMcpServerPath } from './mcp.js';
|
|
12
|
-
import { auditProjectHooks } from '../../domains/hook-migration.js';
|
|
12
|
+
import { auditGlobalHooks, auditProjectHooks } from '../../domains/hook-migration.js';
|
|
13
13
|
const VALID_STATE_FIELDS = new Set([
|
|
14
14
|
'workflow',
|
|
15
15
|
'phase',
|
|
@@ -104,6 +104,13 @@ export async function collectDoctor(options = {}, runtime = {}) {
|
|
|
104
104
|
message: audit.error ?? managedText(language, `项目旧 Hook ${audit.autoMigratable} 条;自定义保留 ${audit.retained} 条`, `${audit.autoMigratable} legacy project Hook(s); ${audit.retained} custom retained`),
|
|
105
105
|
...(audit.autoMigratable ? { remediation: managedText(language, `运行 superflow hook-migrate --path ${projectPath} --agent ${agent} --apply,随后重启当前会话`, `Run superflow hook-migrate --path ${projectPath} --agent ${agent} --apply, then restart this session`) } : {}),
|
|
106
106
|
});
|
|
107
|
+
const globalAudit = auditGlobalHooks(homedir(), agent);
|
|
108
|
+
checks.push({
|
|
109
|
+
check: `hooks:${agent}:legacy-global`,
|
|
110
|
+
status: globalAudit.error || globalAudit.autoMigratable > 0 ? 'fail' : 'pass',
|
|
111
|
+
message: globalAudit.error ?? managedText(language, `全局旧 Hook ${globalAudit.autoMigratable} 条;其他注册保留 ${globalAudit.retained} 条`, `${globalAudit.autoMigratable} legacy global Hook(s); ${globalAudit.retained} other registrations retained`),
|
|
112
|
+
...(globalAudit.error || globalAudit.autoMigratable > 0 ? { remediation: managedText(language, `运行 superflow update --agent ${agent} --scope global,备份迁移后重启当前会话`, `Run superflow update --agent ${agent} --scope global, then restart this session after backup migration`) } : {}),
|
|
113
|
+
});
|
|
107
114
|
}
|
|
108
115
|
checks.push(await executableCheck('superflow', language, run));
|
|
109
116
|
checks.push(await executableCheck('openspec', language, run));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/app/commands/doctor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../../../src/app/commands/doctor.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,7 +11,7 @@ import { deployScripts } from '../../domains/skill/scripts.js';
|
|
|
11
11
|
import { deployPrompts } from '../../domains/skill/prompts.js';
|
|
12
12
|
import { deployRules } from '../../domains/skill/rules.js';
|
|
13
13
|
import { syncManagedHooks } from '../../domains/hook.js';
|
|
14
|
-
import { migrateProjectHooks } from '../../domains/hook-migration.js';
|
|
14
|
+
import { migrateGlobalHooks, migrateProjectHooks } from '../../domains/hook-migration.js';
|
|
15
15
|
import { loadState, saveState, initState, upsertManagedProject } from '../../domains/state.js';
|
|
16
16
|
import { scaffoldBusinessContext, checkUnderstandScan, printSoftPrompt } from '../../domains/config/context.js';
|
|
17
17
|
import { ALL_RULES, ALL_SKILLS, CODEX_PROMPTS, scriptsForAgent, hookScriptsForAgent, } from '../../domains/skill/assets.js';
|
|
@@ -487,6 +487,17 @@ export async function runInit(options) {
|
|
|
487
487
|
}
|
|
488
488
|
}
|
|
489
489
|
if (!options.dryRun) {
|
|
490
|
+
if (!options.noHooks) {
|
|
491
|
+
for (const agent of agents) {
|
|
492
|
+
const globalSettings = getPlatformPaths(agent, 'global', projectPath).settingsFile;
|
|
493
|
+
const homeRoot = path.dirname(path.dirname(globalSettings));
|
|
494
|
+
const migration = migrateGlobalHooks(homeRoot, agent);
|
|
495
|
+
if (migration.error)
|
|
496
|
+
throw new Error(`global ${agent} Hook migration failed: ${migration.error}`);
|
|
497
|
+
if (migration.changed)
|
|
498
|
+
log(` ✓ migrated legacy global ${agent} Hooks; backup: ${migration.backup}`);
|
|
499
|
+
}
|
|
500
|
+
}
|
|
490
501
|
// 统一记录安装范围(不依赖 step 4 是否执行,resume 跳过场景也保持一致)
|
|
491
502
|
for (const agent of agents) {
|
|
492
503
|
state.platforms[agent].scope = options.scope;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/app/commands/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/app/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -16,7 +16,7 @@ import { collectManagedProjectTargets, initState, loadState, readManagedProjects
|
|
|
16
16
|
import { resolveRuntimeLanguage } from '../../domains/config/cli-help.js';
|
|
17
17
|
import { managedText } from '../../domains/managed-work/i18n.js';
|
|
18
18
|
import { manageMcpIntegration } from './mcp.js';
|
|
19
|
-
import { migrateProjectHooks } from '../../domains/hook-migration.js';
|
|
19
|
+
import { migrateGlobalHooks, migrateProjectHooks } from '../../domains/hook-migration.js';
|
|
20
20
|
const PACKAGE_NAME = '@chenmk/superflow';
|
|
21
21
|
const OPENSPEC_PACKAGE_NAME = '@fission-ai/openspec';
|
|
22
22
|
const OFFICIAL_REGISTRY = 'https://registry.npmjs.org';
|
|
@@ -100,12 +100,19 @@ export async function updateCommand(options = {}) {
|
|
|
100
100
|
const hooks = hookScriptsForAgent(agent);
|
|
101
101
|
if (!options.noHooks && hooks.length > 0) {
|
|
102
102
|
syncManagedHooks(platform.settingsFile, platform.scriptsDir, hooks);
|
|
103
|
+
const globalSettings = getPlatformPaths(agent, 'global', target.projectPath).settingsFile;
|
|
104
|
+
const homeRoot = path.dirname(path.dirname(globalSettings));
|
|
105
|
+
const migration = migrateGlobalHooks(homeRoot, agent);
|
|
106
|
+
if (migration.error)
|
|
107
|
+
throw new Error(`global ${agent} Hook migration failed: ${migration.error}`);
|
|
108
|
+
if (migration.changed && !options.json) {
|
|
109
|
+
console.log(` ✓ migrated legacy global ${agent} Hooks; backup: ${migration.backup}`);
|
|
110
|
+
}
|
|
103
111
|
}
|
|
104
112
|
});
|
|
105
113
|
}
|
|
106
114
|
if (syncFailures.length > 0) {
|
|
107
|
-
|
|
108
|
-
warn(`some targets failed to sync: ${syncFailures.join('; ')}`);
|
|
115
|
+
throw new Error(`update did not complete; target sync failed: ${syncFailures.join('; ')}`);
|
|
109
116
|
}
|
|
110
117
|
manageMcpIntegration('install', { agent: planAgents.join(',') }, language);
|
|
111
118
|
persistUpdateLanguage(language, planAgents);
|
|
@@ -274,15 +281,17 @@ function printPlan(plan, json, status = 'planned') {
|
|
|
274
281
|
console.log(`hooks: ${plan.hooks.total}`);
|
|
275
282
|
console.log(`mcp: ${plan.mcp.agents.join(', ')}`);
|
|
276
283
|
}
|
|
277
|
-
function persistUpdateLanguage(language, agents) {
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
284
|
+
export function persistUpdateLanguage(language, agents, file = stateFile) {
|
|
285
|
+
const packageJson = JSON.parse(readFileSync(path.join(PACKAGE_ROOT, "package.json"), "utf-8"));
|
|
286
|
+
const version = packageJson.version ?? "unknown";
|
|
287
|
+
const state = loadState(file) ?? initState(version, agents[0] ?? "claude", language);
|
|
288
|
+
if (state.version !== version) {
|
|
289
|
+
state.previousVersion = state.version;
|
|
290
|
+
state.version = version;
|
|
282
291
|
}
|
|
283
292
|
state.language = language;
|
|
284
293
|
state.lastInit = new Date().toISOString();
|
|
285
|
-
saveState(
|
|
294
|
+
saveState(file, state);
|
|
286
295
|
}
|
|
287
296
|
async function updateNpmPackage(packageName, scope, label) {
|
|
288
297
|
const npmResult = await runCommand('npm', buildNpmUpdateArgs(packageName, scope));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/app/commands/update.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"update.js","sourceRoot":"","sources":["../../../src/app/commands/update.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,IAAI,CAAC;AAC9C,OAAO,EACL,SAAS,EACT,UAAU,EACV,aAAa,EACb,mBAAmB,EACnB,eAAe,GAChB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,GACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EACL,wBAAwB,EACxB,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EACL,4BAA4B,EAC5B,SAAS,EACT,SAAS,EACT,mBAAmB,EACnB,SAAS,GACV,MAAM,wBAAwB,CAAC;AAChC,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAE1F,MAAM,YAAY,GAAG,mBAAmB,CAAC;AACzC,MAAM,qBAAqB,GAAG,sBAAsB,CAAC;AACrD,MAAM,iBAAiB,GAAG,4BAA4B,CAAC;AAsBvD,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,UAUhC,EAAE;IACJ,MAAM,QAAQ,GAAG,qBAAqB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IACzD,MAAM,MAAM,GAAG,aAAa,CAAC,mBAAmB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IACjE,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC,CAAC;IACtE,MAAM,IAAI,GAAG,CAAC,OAAe,EAAE,EAAE;QAC/B,IAAI,CAAC,OAAO,CAAC,IAAI;YAAE,OAAO,CAAC,IAAI,CAAC,YAAY,OAAO,EAAE,CAAC,CAAC;IACzD,CAAC,CAAC;IACF,IAAI,aAAa,GAAoB,IAAI,CAAC;IAC1C,IAAI,CAAC;QACH,aAAa,GAAG,SAAS,CAAC,SAAS,CAAC,CAAC;IACvC,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,CAAC,yDAA0D,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;IAC1F,CAAC;IACD,MAAM,OAAO,GAAG,6BAA6B,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;IACvG,MAAM,SAAS,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,QAAQ,CAAC;IAChD,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,IAAI,OAAO,CAAC,KAAK,KAAK,MAAM;QAC5D,CAAC,CAAC,iBAAiB,CAAC,OAAO,CAAC,KAAK,CAAC;QAClC,CAAC,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC;IACpC,MAAM,UAAU,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;IACvE,MAAM,IAAI,GAAG,gBAAgB,CAC3B,UAAU,EACV,SAAS,EACT,WAAW,EACX,CAAC,CAAC,OAAO,CAAC,WAAW,EACrB,OAAO,EACP,YAAY,EACZ,QAAQ,CACT,CAAC;IACF,IAAI,OAAO,CAAC,gBAAgB,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;QACrD,IAAI,CAAC,aAAa,GAAG;YACnB,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,8BAA8B,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;SAC5E,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QAChC,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;QACxB,MAAM,QAAQ,GAAa,EAAE,CAAC;QAC9B,MAAM,oBAAoB,CAAC,QAAQ,EAAE,GAAG,EAAE,CACxC,gBAAgB,CAAC,YAAY,EAAE,YAAY,EAAE,mBAAmB,CAAC,CAAC,CAAC;QACrE,MAAM,oBAAoB,CAAC,QAAQ,EAAE,GAAG,EAAE,CACxC,uBAAuB,CAAC;YACtB,MAAM,EAAE,UAAU;YAClB,YAAY;YACZ,WAAW;YACX,cAAc,EAAE,OAAO,CAAC,KAAK,IAAI,MAAM;YACvC,QAAQ;YACR,OAAO,EAAE,OAAO,CAAC,OAAO;YACxB,IAAI,EAAE,OAAO,CAAC,IAAI;SACnB,CAAC,CAAC,CAAC;QACN,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACb,WAAW,CACT,QAAQ,EACR,qBAAqB,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EACzC,2DAA2D,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CACjF,CACF,CAAC;QACJ,CAAC;QACD,OAAO;IACT,CAAC;IAED,6EAA6E;IAC7E,yDAAyD;IACzD,MAAM,kBAAkB,GAAa,EAAE,CAAC;IACxC,IAAI,OAAO,CAAC,gBAAgB,EAAE,CAAC;QAC7B,MAAM,oBAAoB,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAClD,gBAAgB,CAAC,qBAAqB,EAAE,QAAQ,EAAE,kBAAkB,CAAC,CAAC,CAAC;QACzE,MAAM,oBAAoB,CAAC,kBAAkB,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC,CAAC;IACtF,CAAC;IAED,MAAM,YAAY,GAAa,EAAE,CAAC;IAClC,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,MAAM,oBAAoB,CAAC,YAAY,EAAE,KAAK,IAAI,EAAE;YAClD,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,CAAC;YAChC,IAAI,KAAK,KAAK,SAAS,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;gBAC5C,MAAM,SAAS,GAAG,mBAAmB,CAAC,MAAM,CAAC,WAAW,EAAE,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC,CAAC;gBAClI,IAAI,SAAS,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;oBACvC,OAAO,CAAC,GAAG,CAAC,uBAAuB,KAAK,mBAAmB,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;gBACjF,CAAC;YACH,CAAC;YACD,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC;YACpE,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;gBAC/B,MAAM,UAAU,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;gBACnD,MAAM,WAAW,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YACtE,CAAC;YACD,MAAM,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,CAAC;YAChF,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;YACvC,MAAM,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,QAAQ,CAAC,UAAU,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;YAC/F,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;gBACtB,MAAM,aAAa,CAAC,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAC;YAC5F,CAAC;YACD,MAAM,KAAK,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;YACzC,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACzC,gBAAgB,CAAC,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;gBACpE,MAAM,cAAc,GAAG,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,YAAY,CAAC;gBAC1F,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;gBAC5D,MAAM,SAAS,GAAG,kBAAkB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;gBACtD,IAAI,SAAS,CAAC,KAAK;oBAAE,MAAM,IAAI,KAAK,CAAC,UAAU,KAAK,2BAA2B,SAAS,CAAC,KAAK,EAAE,CAAC,CAAC;gBAClG,IAAI,SAAS,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;oBACvC,OAAO,CAAC,GAAG,CAAC,8BAA8B,KAAK,mBAAmB,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;gBACxF,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IACD,IAAI,YAAY,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,gDAAgD,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IAC7F,CAAC;IAED,oBAAoB,CAClB,SAAS,EACT,EAAE,KAAK,EAAE,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAC/B,QAAQ,CACT,CAAC;IAEF,qBAAqB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAE5C,IAAI,kBAAkB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACjD,CAAC;IAED,SAAS,CAAC,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;AAC7C,CAAC;AAED,MAAM,UAAU,sBAAsB,CACpC,WAAmB,EACnB,MAAe;IAEf,MAAM,OAAO,GAAmB,EAAE,CAAC;IACnC,KAAK,MAAM,KAAK,IAAI,CAAC,SAAS,EAAE,QAAQ,CAAmB,EAAE,CAAC;QAC5D,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;YAC7D,IACE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,oBAAoB,EAAE,UAAU,CAAC,CAAC;gBAC3E,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,mBAAmB,EAAE,UAAU,CAAC,CAAC,EAC1E,CAAC;gBACD,OAAO,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;YAC9C,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,WAAmB,EACnB,MAAe,EACf,UAAmB;IAEnB,IAAI,CAAC,UAAU,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QACzC,MAAM,QAAQ,GAAG,sBAAsB,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;QAC7D,OAAO,QAAQ,CAAC,MAAM,GAAG,CAAC;YACxB,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,MAAM,KAAK,GAAG,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAC5C,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;AAChE,CAAC;AAED,8DAA8D;AAC9D,MAAM,UAAU,6BAA6B,CAC3C,WAAmB,EACnB,MAAe,EACf,UAAmB,EACnB,QAAyB,IAAI,EAC7B,OAAkC,GAAG,EAAE,GAAE,CAAC;IAE1C,MAAM,IAAI,GAAG,oBAAoB,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;IACnE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,4BAA4B,CACnE,mBAAmB,CAAC,KAAK,EAAE,IAAI,CAAC,CACjC,CAAC;IACF,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,IAAI,CAAC,qDAAqD,IAAI,EAAE,CAAC,CAAC;IACpE,CAAC;IACD,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,KAAK,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IAChF,MAAM,MAAM,GAAG,CAAC,GAAG,IAAI,CAAC,CAAC;IACzB,KAAK,MAAM,OAAO,IAAI,OAAO,EAAE,CAAC;QAC9B,KAAK,MAAM,KAAK,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;YACnC,MAAM,GAAG,GAAG,GAAG,KAAK,YAAY,OAAO,CAAC,IAAI,EAAE,CAAC;YAC/C,IAAI,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;gBAAE,SAAS;YAC5B,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YACd,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,OAAO,CAAC,IAAI,EAAE,CAAC,CAAC;QACtE,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,UAAU,gBAAgB,CAC9B,MAAe,EACf,QAAsB,QAAQ,EAC9B,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,EAC3B,WAAW,GAAG,KAAK,EACnB,UAA0B,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC,EAChF,eAA6B,KAAK,EAClC,WAAqB,IAAI;IAEzB,MAAM,WAAW,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,eAAe,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACpF,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,mBAAmB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACtF,OAAO;QACL,MAAM;QACN,KAAK;QACL,WAAW;QACX,OAAO;QACP,aAAa,EAAE;YACb,OAAO,EAAE,WAAW;YACpB,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC,8BAA8B,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE;SAClF;QACD,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,UAAU,CAAC,EAAE;QAC5D,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,SAAS,CAAC,EAAE;QACzD,OAAO,EAAE,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE;QAC1D,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE;QACpD,GAAG,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,GAAG,MAAM,CAAC,EAAE;QAC3C,QAAQ;KACT,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,KAAe,EACf,MAAyB,OAAO,CAAC,GAAG,EACpC,kBAAkB,GAAG,SAAS;IAE9B,OAAO,sBAAsB,CAAC,KAAK,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;AAChE,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,QAAkB;IACtD,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,KAAK,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;AAC3E,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,KAAmB;IACxD,OAAO,kBAAkB,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,UAAU,uBAAuB;IACrC,OAAO,kBAAkB,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,WAAmB,EAAE,KAAmB;IACzE,OAAO,KAAK,KAAK,QAAQ;QACvB,CAAC,CAAC,CAAC,SAAS,EAAE,IAAI,EAAE,GAAG,WAAW,SAAS,EAAE,YAAY,EAAE,iBAAiB,CAAC;QAC7E,CAAC,CAAC,CAAC,SAAS,EAAE,GAAG,WAAW,SAAS,EAAE,YAAY,EAAE,iBAAiB,CAAC,CAAC;AAC5E,CAAC;AAED,MAAM,UAAU,0BAA0B,CAAC,KAAmB;IAC5D,OAAO,CAAC,KAAK,EAAE,GAAG,sBAAsB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;AAC7D,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,MAAe,EAAE,YAA0B;IACxF,MAAM,QAAQ,GAAG;QACf,0BAA0B,CAAC,YAAY,CAAC;QACxC,CAAC,KAAK,EAAE,GAAG,uBAAuB,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC;KAChD,CAAC;IACF,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9B,QAAQ,CAAC,IAAI,CAAC,2DAA2D,CAAC,CAAC;QAC3E,QAAQ,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;IAC5E,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,QAAQ,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;QACtD,QAAQ,CAAC,IAAI,CAAC,oBAAoB,wBAAwB,SAAS,CAAC,CAAC;IACvE,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,KAQ3C;IACC,MAAM,IAAI,GAAG;QACX,KAAK,CAAC,OAAO;QACb,QAAQ;QACR,KAAK,CAAC,WAAW;QACjB,SAAS;QACT,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC;QACtB,SAAS;QACT,KAAK,CAAC,cAAc;QACpB,YAAY;QACZ,KAAK,CAAC,QAAQ;QACd,qBAAqB;KACtB,CAAC;IACF,IAAI,KAAK,CAAC,OAAO;QAAE,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;IAC3C,IAAI,KAAK,CAAC,IAAI;QAAE,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IACpC,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,WAAmB,EACnB,WAAW,GAAG,YAAY;IAE1B,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,EAAE,SAAS,EAAE,WAAW,CAAC,CAAC;IACxF,IAAI,cAAc,CAAC,WAAW,EAAE,gBAAgB,CAAC;QAAE,OAAO,SAAS,CAAC;IAEpE,MAAM,eAAe,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;IAC/D,IAAI,UAAU,CAAC,eAAe,CAAC,EAAE,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;YAC/D,IACE,GAAG,CAAC,YAAY,EAAE,CAAC,YAAY,CAAC;gBAChC,GAAG,CAAC,eAAe,EAAE,CAAC,YAAY,CAAC;gBACnC,GAAG,CAAC,oBAAoB,EAAE,CAAC,YAAY,CAAC,EACxC,CAAC;gBACD,OAAO,SAAS,CAAC;YACnB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,QAAQ,CAAC;QAClB,CAAC;IACH,CAAC;IAED,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,cAAc,CAAC,SAAiB,EAAE,UAAkB;IAC3D,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,CAAC;IAClF,OAAO,QAAQ,KAAK,EAAE,IAAI,CAAC,CAAC,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC;AACvF,CAAC;AAED,SAAS,SAAS,CAAC,IAAgB,EAAE,IAAa,EAAE,MAAM,GAAG,SAAS;IACpE,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1D,OAAO;IACT,CAAC;IACD,OAAO,CAAC,GAAG,CACT,WAAW,CACT,IAAI,CAAC,QAAQ,EACb,uBAAuB,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAC1D,2BAA2B,MAAM,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAC/D,CACF,CAAC;IACF,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,IAAI,CAAC,QAAQ,EAAE,EAAE,aAAa,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC9F,IAAI,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;QAC/B,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACzB,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,KAAK,OAAO,EAAE,CAAC,CAAC;QAC9B,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;IAC5C,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IAC1C,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;IAC9C,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;IAC1C,OAAO,CAAC,GAAG,CAAC,QAAQ,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,UAAU,qBAAqB,CACnC,QAAkB,EAClB,MAAe,EACf,IAAI,GAAG,SAAS;IAEhB,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAC5B,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,YAAY,EAAE,cAAc,CAAC,EAAE,OAAO,CAAC,CACvC,CAAC;IAC1B,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,IAAI,SAAS,CAAC;IACjD,MAAM,KAAK,GACT,SAAS,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,QAAQ,CAAC,CAAC;IACzE,IAAI,KAAK,CAAC,OAAO,KAAK,OAAO,EAAE,CAAC;QAC9B,KAAK,CAAC,eAAe,GAAG,KAAK,CAAC,OAAO,CAAC;QACtC,KAAK,CAAC,OAAO,GAAG,OAAO,CAAC;IAC1B,CAAC;IACD,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC1B,KAAK,CAAC,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC1C,SAAS,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;AACzB,CAAC;AAED,KAAK,UAAU,gBAAgB,CAC7B,WAAmB,EACnB,KAAmB,EACnB,KAAa;IAEb,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,kBAAkB,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;IAClF,IAAI,SAAS,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,mBAAmB,SAAS,CAAC,MAAM,IAAI,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;IACrF,CAAC;AACH,CAAC;AAED,KAAK,UAAU,oBAAoB,CACjC,QAAkB,EAClB,SAA8B;IAE9B,IAAI,CAAC;QACH,MAAM,SAAS,EAAE,CAAC;IACpB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,QAAQ,CAAC,IAAI,CAAE,KAAe,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;AACH,CAAC;AAED,KAAK,UAAU,uBAAuB,CAAC,KAQtC;IACC,MAAM,WAAW,GAAG,KAAK,CAAC,YAAY,KAAK,SAAS;QAClD,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,EAAE,cAAc,CAAC;QAC9C,CAAC,CAAC,MAAM,aAAa,EAAE,CAAC;IAC1B,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CACvB,WAAW,EACX,SAAS,EACT,WAAW,EACX,MAAM,EACN,KAAK,EACL,QAAQ,CACT,CAAC;IACF,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACzB,MAAM,IAAI,KAAK,CAAC,oCAAoC,OAAO,EAAE,CAAC,CAAC;IACjE,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,UAAU,CAC7B,OAAO,CAAC,QAAQ,EAChB,2BAA2B,CAAC,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,CAAC,CACnD,CAAC;IACF,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;QACtB,MAAM,IAAI,KAAK,CACb,gCAAgC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CACjE,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IACpC,IAAI,MAAM;QAAE,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAClC,CAAC;AAED,KAAK,UAAU,aAAa;IAC1B,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,KAAK,EAAE,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;IACvD,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAClC,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC/B,MAAM,IAAI,KAAK,CACb,mCAAmC,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CACpE,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,KAAK,UAAU,iBAAiB,CAAC,MAAe;IAC9C,MAAM,QAAQ,GAAa,EAAE,CAAC;IAC9B,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC9B,MAAM,MAAM,GAAG,MAAM,uBAAuB,EAAE,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,QAAQ,CAAC,IAAI,CAAC,qCAAqC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QACrE,CAAC;IACH,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,MAAM,uBAAuB,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,MAAM,CAAC,EAAE,EAAE,CAAC;YACf,QAAQ,CAAC,IAAI,CAAC,oCAAoC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;IACD,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACvC,CAAC;AACH,CAAC"}
|
package/package.json
CHANGED
package/scripts/postinstall.js
CHANGED
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import { readFileSync } from 'fs';
|
|
3
|
+
import { homedir } from 'os';
|
|
3
4
|
import { fileURLToPath, pathToFileURL } from 'url';
|
|
4
5
|
import { dirname, join } from 'path';
|
|
5
6
|
|
|
@@ -46,11 +47,26 @@ function printInstallMessage(version, language) {
|
|
|
46
47
|
console.log(buildInstallMessage(version, language));
|
|
47
48
|
}
|
|
48
49
|
|
|
49
|
-
export function runPostinstall(env = process.env) {
|
|
50
|
+
export async function runPostinstall(env = process.env, runtime = {}) {
|
|
50
51
|
if (!isGlobalInstall(env)) return;
|
|
52
|
+
const migrateGlobalHooks = runtime.migrateGlobalHooks
|
|
53
|
+
?? (await import('../dist/domains/hook-migration.js')).migrateGlobalHooks;
|
|
54
|
+
const homeRoot = runtime.homeRoot ?? homedir();
|
|
55
|
+
for (const host of ['codex', 'claude']) {
|
|
56
|
+
const migration = migrateGlobalHooks(homeRoot, host);
|
|
57
|
+
if (migration.error) {
|
|
58
|
+
throw new Error(`${host} global Hook migration failed: ${migration.error}`);
|
|
59
|
+
}
|
|
60
|
+
if (migration.changed) {
|
|
61
|
+
console.log(`[Superflow] Migrated old ${host} global Hooks; backup: ${migration.backup}`);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
51
64
|
printInstallMessage(pkg.version, resolveInstallLanguage(env));
|
|
52
65
|
}
|
|
53
66
|
|
|
54
67
|
if (import.meta.url === pathToFileURL(process.argv[1]).href) {
|
|
55
|
-
runPostinstall()
|
|
68
|
+
runPostinstall().catch((error) => {
|
|
69
|
+
console.error(`[Superflow] Postinstall failed: ${error.message}`);
|
|
70
|
+
process.exitCode = 1;
|
|
71
|
+
});
|
|
56
72
|
}
|