@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.
Files changed (30) hide show
  1. package/README.md +16 -5
  2. package/README.zh-CN.md +10 -1
  3. package/assets/scripts/superflow-integration-evidence-hook.sh +1 -1
  4. package/assets/scripts/superflow-managed-executor-preflight.mjs +30 -0
  5. package/assets/scripts/superflow-managed-work-check.mjs +35 -0
  6. package/assets/scripts/superflow-review-coverage.mjs +34 -0
  7. package/assets/scripts/superflow-test-report-lint.py +165 -9
  8. package/assets/scripts/superflow-verify-integration.sh +4 -9
  9. package/assets/skills/superflow-docs/SKILL.md +3 -0
  10. package/assets/skills/superflow-implement/SKILL.md +3 -0
  11. package/assets/skills/superflow-pipeline/references/document-review-coverage.md +18 -3
  12. package/assets/skills/superflow-pipeline/references/test-execution-template.md +3 -1
  13. package/assets/skills/superflow-pipeline/scripts/superflow-guard.sh +9 -5
  14. package/assets/skills/superflow-verify/SKILL.md +3 -0
  15. package/assets/skills-en/superflow-docs/SKILL.md +3 -0
  16. package/assets/skills-en/superflow-implement/SKILL.md +3 -0
  17. package/assets/skills-en/superflow-pipeline/references/document-review-coverage.md +18 -3
  18. package/assets/skills-en/superflow-pipeline/references/test-execution-template.md +3 -1
  19. package/assets/skills-en/superflow-pipeline/scripts/superflow-guard.sh +9 -5
  20. package/assets/skills-en/superflow-verify/SKILL.md +3 -0
  21. package/dist/app/commands/change-guard.js +4 -0
  22. package/dist/app/commands/change-guard.js.map +1 -1
  23. package/dist/app/commands/doctor.js +8 -1
  24. package/dist/app/commands/doctor.js.map +1 -1
  25. package/dist/app/commands/init.js +12 -1
  26. package/dist/app/commands/init.js.map +1 -1
  27. package/dist/app/commands/update.js +18 -9
  28. package/dist/app/commands/update.js.map +1 -1
  29. package/package.json +1 -1
  30. 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. After review, run `superflow hook-migrate --scope global
75
- --agent both --apply`; it backs up both host configs and removes only exact
76
- allowlisted legacy commands. Unknown and custom Hooks remain. A normal
77
- `update` does not remove global registrations of uncertain origin. Restart the
78
- host session after migration.
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 用 `superflow hook-audit --scope global --agent both --json` 只读盘点;确认后运行 `superflow hook-migrate --scope global --agent both --apply`,仅删除白名单内的完整旧命令,先备份 `~/.codex/hooks.json` 和 `~/.claude/settings.json`,保留未知及自定义 Hook。普通 `update` 不自动清理来源不明的全局注册;迁移后重启宿主会话。
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 加强文档交付:逐需求×真实入口核对(含排除项)、真实入口验收合同、
@@ -80,5 +80,5 @@ for report in $REPORTS; do
80
80
  REPORT_ARGS="$REPORT_ARGS $REPO_ROOT/$report"
81
81
  done
82
82
 
83
- "$HOME/.codex/hooks/superflow-verify-integration.sh" $REPORT_ARGS
83
+ "$(dirname "${BASH_SOURCE[0]}")/superflow-verify-integration.sh" $REPORT_ARGS
84
84
  exit $?
@@ -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" and not re.match(r"^https?://", evidence, re.I):
315
- evidence_file = Path(evidence.split("#", 1)[0])
316
- if not evidence_file.is_absolute():
317
- evidence_file = report_path.parent / evidence_file
318
- if not evidence_file.is_file():
319
- issues.append(Issue("FAIL", report_path, 0, f"用例 {case_id} 的通过证据文件不存在:{evidence}"))
320
- if result != "PASS" and re.search(r"验证结果\s*[::]\s*PASS|Verification Result\s*[::]\s*PASS", report_text, re.I):
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
- issues.extend(lint_against_tests_contract(path, text, tests_path or infer_tests_path(path)))
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
- if [ -x "$HOME/.codex/hooks/superflow-test-report-lint.py" ]; then
62
- "$HOME/.codex/hooks/superflow-test-report-lint.py" "$REPORT"
63
- if [ $? -ne 0 ]; then
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-trace.zip |
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-trace.zip |
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
- "$root/.codex/hooks/superflow-test-report-lint.py" \
105
- "$HOME/.codex/hooks/superflow-test-report-lint.py"; do
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
- require_grep '接口自动化|curl|Postman|Newman|pytest|RestAssured' test-report.md "interface automation evidence"
911
- require_grep 'DB|数据库|SELECT|SHOW CREATE' test-report.md "DB evidence"
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-trace.zip |
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 evidence files for PASS; HTTP(S) links may
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-trace.zip |
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
- "$root/.codex/hooks/superflow-test-report-lint.py" \
105
- "$HOME/.codex/hooks/superflow-test-report-lint.py"; do
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
- require_grep 'interface automation|curl|Postman|Newman|pytest|RestAssured' test-report.md "interface automation evidence"
878
- require_grep 'DB|database|SELECT|SHOW CREATE' test-report.md "DB evidence"
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;KAC1C,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"}
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":"AAAA,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,IAAI,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,2BAA2B,CAAC;AACvD,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,GACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,SAAS,EACT,UAAU,EACV,aAAa,EACb,mBAAmB,EACnB,eAAe,GAChB,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EAAE,sBAAsB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAE,WAAW,EAAE,MAAM,oCAAoC,CAAC;AACjE,OAAO,EACL,uBAAuB,EACvB,gCAAgC,GACjC,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,oBAAoB,EAAE,MAAM,UAAU,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAiBtF,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAC;IACjC,UAAU;IACV,OAAO;IACP,gBAAgB;IAChB,qBAAqB;IACrB,YAAY;IACZ,kBAAkB;IAClB,MAAM;IACN,UAAU;IACV,YAAY;IACZ,aAAa;IACb,mBAAmB;IACnB,UAAU;IACV,aAAa;IACb,WAAW;IACX,aAAa;IACb,iBAAiB;IACjB,eAAe;IACf,qBAAqB;IACrB,eAAe;IACf,UAAU;IACV,iBAAiB;IACjB,eAAe;IACf,gBAAgB;IAChB,iBAAiB;IACjB,cAAc;IACd,qBAAqB;IACrB,uBAAuB;IACvB,gBAAgB;IAChB,YAAY;IACZ,aAAa;IACb,YAAY;CACb,CAAC,CAAC;AAEH,MAAM,qBAAqB,GAAG;IAC5B,UAAU;IACV,OAAO;IACP,gBAAgB;IAChB,YAAY;IACZ,UAAU;IACV,aAAa;IACb,WAAW;IACX,aAAa;IACb,iBAAiB;IACjB,eAAe;IACf,qBAAqB;IACrB,eAAe;IACf,UAAU;IACV,iBAAiB;IACjB,cAAc;IACd,YAAY;IACZ,YAAY;CACb,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,UAMhC,EAAE;IACJ,MAAM,QAAQ,GAAG,sBAAsB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC1D,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,EAAE,GAAG,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC7D,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC7C,IAAI,MAAM,CAAC,MAAM;YAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACnC,OAAO;IACT,CAAC;IACD,OAAO,CAAC,GAAG,CACT,WAAW,CAAC,QAAQ,EAAE,kBAAkB,EAAE,0BAA0B,CAAC,CACtE,CAAC;IACF,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClC,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;QACnF,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QAC5D,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC;YACtB,OAAO,CAAC,GAAG,CAAC,SAAS,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;QAC5C,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAClB,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,QAAQ,EAAE,aAAa,EAAE,uBAAuB,CAAC,CAAC,CAAC;QAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,QAAQ,EAAE,iBAAiB,EAAE,uCAAuC,CAAC,CAAC,CAAC;IACjG,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,aAAa,CAAC,UAMhC,EAAE,EAAE,UAAyB,EAAE;IAQjC,MAAM,QAAQ,GAAG,sBAAsB,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAC1D,MAAM,GAAG,GAAG,OAAO,CAAC,UAAU,IAAI,UAAU,CAAC;IAC7C,MAAM,MAAM,GAAG,aAAa,CAAC,mBAAmB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;IACjE,MAAM,KAAK,GAAG,gBAAgB,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC9C,MAAM,aAAa,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IAC7C,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAC9B,OAAO,CAAC,WAAW,IAAI,OAAO,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,EAAE,CAC3D,CAAC;IACF,MAAM,MAAM,GAAkB,EAAE,CAAC;IACjC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,KAAK,GAAG,iBAAiB,CAAC,WAAW,EAAE,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QACrF,MAAM,CAAC,IAAI,CAAC;YACV,KAAK,EAAE,SAAS,KAAK,iBAAiB;YACtC,MAAM,EAAE,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;YACrE,OAAO,EAAE,KAAK,CAAC,KAAK,IAAI,WAAW,CAAC,QAAQ,EAC1C,YAAY,KAAK,CAAC,cAAc,YAAY,KAAK,CAAC,QAAQ,IAAI,EAC9D,GAAG,KAAK,CAAC,cAAc,4BAA4B,KAAK,CAAC,QAAQ,kBAAkB,CAAC;YACtF,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,WAAW,CAAC,QAAQ,EAC5D,oCAAoC,WAAW,YAAY,KAAK,mBAAmB,EACnF,qCAAqC,WAAW,YAAY,KAAK,qCAAqC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAClH,CAAC,CAAC;QACH,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;QACvD,MAAM,CAAC,IAAI,CAAC;YACV,KAAK,EAAE,SAAS,KAAK,gBAAgB;YACrC,MAAM,EAAE,WAAW,CAAC,KAAK,IAAI,WAAW,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;YAC7E,OAAO,EAAE,WAAW,CAAC,KAAK,IAAI,WAAW,CAAC,QAAQ,EAChD,YAAY,WAAW,CAAC,cAAc,aAAa,WAAW,CAAC,QAAQ,IAAI,EAC3E,GAAG,WAAW,CAAC,cAAc,2BAA2B,WAAW,CAAC,QAAQ,+BAA+B,CAAC;YAC9G,GAAG,CAAC,WAAW,CAAC,KAAK,IAAI,WAAW,CAAC,cAAc,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,WAAW,CAAC,QAAQ,EAC3F,+BAA+B,KAAK,6BAA6B,EACjE,gCAAgC,KAAK,mEAAmE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACpH,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,MAAM,eAAe,CAAC,WAAW,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;IAC/D,MAAM,CAAC,IAAI,CAAC,MAAM,eAAe,CAAC,UAAU,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;IAC9D,MAAM,CAAC,IAAI,CAAC,GAAG,4BAA4B,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC;IACpE,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,IAAI,oBAAoB,EAAE,CAAC;IACnE,MAAM,CAAC,IAAI,CAAC;QACV,KAAK,EAAE,oBAAoB;QAC3B,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;QAChD,OAAO,EAAE,UAAU,CAAC,UAAU,CAAC;YAC7B,CAAC,CAAC,UAAU;YACZ,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,mBAAmB,UAAU,EAAE,EAAE,+BAA+B,UAAU,EAAE,CAAC;QACvG,GAAG,CAAC,UAAU,CAAC,UAAU,CAAC;YACxB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC,EAAE,WAAW,EAAE,WAAW,CAAC,QAAQ,EAAE,mBAAmB,EAAE,+BAA+B,CAAC,EAAE,CAAC;KAClG,CAAC,CAAC;IACH,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,UAAU,GAAG,MAAM,eAAe,CAAC,KAAK,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;QAC/D,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACxB,MAAM,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,KAAK,EAAE,UAAU,EAAE,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;QACjF,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,CAAC;QAC1C,MAAM,CAAC,IAAI,CAAC;YACV,KAAK,EAAE,eAAe,KAAK,EAAE;YAC7B,MAAM,EAAE,WAAW,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;YACrC,OAAO,EAAE,WAAW;gBAClB,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC;gBAC1C,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,cAAc,CAAC;SACjD,CAAC,CAAC;QACH,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;YACtB,MAAM,YAAY,GAAG,MAAM,uBAAuB,CAAC,GAAG,CAAC,CAAC;YACxD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC;YACpD,MAAM,CAAC,IAAI,CAAC;gBACV,KAAK,EAAE,gCAAgC;gBACvC,MAAM,EAAE,YAAY,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;gBAC5C,OAAO,EAAE,YAAY,CAAC,KAAK,IAAI,GAAG,YAAY,CAAC,MAAM,EAAE,QAAQ,IAAI,YAAY,CAAC,MAAM,EAAE,OAAO,EAAE;aAClG,CAAC,CAAC;YACH,KAAK,MAAM,KAAK,IAAI,gCAAgC,EAAE,CAAC;gBACrD,MAAM,SAAS,GAAG,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;gBAC5C,MAAM,CAAC,IAAI,CAAC;oBACV,KAAK,EAAE,qBAAqB,KAAK,EAAE;oBACnC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;oBACnC,OAAO,EAAE,SAAS;wBAChB,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,YAAY,EAAE,qCAAqC,CAAC;wBAC5E,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC;oBAC1C,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;wBACnB,WAAW,EAAE,WAAW,CACtB,QAAQ,EACR,qFAAqF,EACrF,oGAAoG,CACrG;qBACF,CAAC;iBACH,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QACD,MAAM,UAAU,GAAG,aAAa,CAAC,KAAK,CAAC,CAAC;QACxC,MAAM,CAAC,IAAI,CAAC;YACV,KAAK,EAAE,uBAAuB,KAAK,EAAE;YACrC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;YACpC,OAAO,EAAE,UAAU;gBACjB,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC;gBAC1C,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,cAAc,CAAC;SACjD,CAAC,CAAC;IACL,CAAC;IAED,KAAK,MAAM,YAAY,IAAI,aAAa,EAAE,CAAC;QACzC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC7B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,EAAE,YAAY,EAAE,WAAW,CAAC,CAAC;YACpE,MAAM,CAAC,IAAI,CAAC;gBACV,KAAK,EAAE,qBAAqB,KAAK,EAAE;gBACnC,MAAM,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,mBAAmB,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;gBACpG,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,mBAAmB,EAAE,UAAU,CAAC,CAAC;oBACjF,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,EAAE,UAAU,CAAC;oBAC1C,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,SAAS,CAAC;aAC3C,CAAC,CAAC;YAEH,KAAK,MAAM,MAAM,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;gBAC5C,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;gBAC1D,MAAM,CAAC,IAAI,CAAC;oBACV,KAAK,EAAE,UAAU,KAAK,IAAI,YAAY,IAAI,MAAM,EAAE;oBAClD,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;oBAChD,OAAO,EAAE,UAAU;iBACpB,CAAC,CAAC;YACL,CAAC;YAED,MAAM,WAAW,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;YAC/C,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC7B,MAAM,CAAC,IAAI,CAAC;oBACV,KAAK,EAAE,SAAS,KAAK,IAAI,YAAY,EAAE;oBACvC,MAAM,EAAE,MAAM;oBACd,OAAO,EAAE,WAAW,CAClB,QAAQ,EACR,yBAAyB,EACzB,gEAAgE,CACjE;iBACF,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,IAAI,CAAC;oBACH,MAAM,SAAS,GAAG,oBAAoB,CAAC,QAAQ,CAAC,YAAY,EAAE,KAAK,CAAC,CAAC;oBACrE,MAAM,CAAC,IAAI,CAAC;wBACV,KAAK,EAAE,SAAS,KAAK,IAAI,YAAY,EAAE;wBACvC,MAAM,EAAE,SAAS,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;wBACxC,OAAO,EAAE,WAAW,CAClB,QAAQ,EACR,OAAO,SAAS,MAAM,EACtB,GAAG,SAAS,wBAAwB,CACrC;wBACD,GAAG,CAAC,SAAS,IAAI,CAAC;4BAChB,CAAC,CAAC,EAAE;4BACJ,CAAC,CAAC;gCACE,WAAW,EAAE,WAAW,CACtB,QAAQ,EACR,+BAA+B,EAC/B,8CAA8C,CAC/C;6BACF,CAAC;qBACP,CAAC,CAAC;gBACL,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,CAAC,IAAI,CAAC;wBACV,KAAK,EAAE,SAAS,KAAK,IAAI,YAAY,EAAE;wBACvC,MAAM,EAAE,MAAM;wBACd,OAAO,EAAE,WAAW,CAClB,QAAQ,EACR,YAAa,KAAe,CAAC,OAAO,EAAE,EACtC,mCAAoC,KAAe,CAAC,OAAO,EAAE,CAC9D;wBACD,WAAW,EAAE,WAAW,CACtB,QAAQ,EACR,gCAAgC,EAChC,qDAAqD,CACtD;qBACF,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,KAAK,MAAM,KAAK,IAAI,UAAU,EAAE,CAAC;gBAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,KAAK,EAAE,UAAU,CAAC,CAAC;gBACnE,MAAM,CAAC,IAAI,CAAC;oBACV,KAAK,EAAE,SAAS,KAAK,IAAI,YAAY,IAAI,KAAK,EAAE;oBAChD,MAAM,EAAE,UAAU,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;oBAC/C,OAAO,EAAE,SAAS;iBACnB,CAAC,CAAC;YACL,CAAC;YAED,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;gBACtB,KAAK,MAAM,MAAM,IAAI,aAAa,EAAE,CAAC;oBACnC,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;oBAC1D,MAAM,CAAC,IAAI,CAAC;wBACV,KAAK,EAAE,UAAU,KAAK,IAAI,YAAY,IAAI,MAAM,EAAE;wBAClD,MAAM,EAAE,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;wBAChD,OAAO,EAAE,UAAU;qBACpB,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,KAAK,MAAM,IAAI,IAAI,SAAS,EAAE,CAAC;gBAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;gBACpD,MAAM,CAAC,IAAI,CAAC;oBACV,KAAK,EAAE,QAAQ,KAAK,IAAI,YAAY,IAAI,IAAI,EAAE;oBAC9C,MAAM,EAAE,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;oBAC9C,OAAO,EAAE,QAAQ;iBAClB,CAAC,CAAC;YACL,CAAC;QACD,CAAC;IACH,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,GAAG,qBAAqB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC,CAAC;IAE7D,OAAO;QACL,MAAM;QACN,KAAK;QACL,aAAa;QACb,WAAW;QACX,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,KAAK,MAAM,CAAC;QACvD,MAAM;KACP,CAAC;AACJ,CAAC;AAED,SAAS,4BAA4B,CAAC,WAAmB,EAAE,QAAkB;IAC3E,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;IACjE,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,OAAO,CAAC,CAAC;IAC7D,MAAM,OAAO,GAAG;QACd,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,kBAAkB;QAChD,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,gBAAgB;KAC7C,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAElB,OAAO,CAAC;YACN,KAAK,EAAE,kBAAkB;YACzB,MAAM,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;YAC5C,OAAO,EAAE,OAAO,CAAC,MAAM,GAAG,CAAC;gBACzB,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,qCAAqC,EAAE,WAAW,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,uCAAuC,CAAC;gBAC3J,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,uCAAuC,EAAE,8CAA8C,CAAC;SACnH,CAAC,CAAC;AACL,CAAC;AAED,SAAS,qBAAqB,CAAC,WAAmB,EAAE,QAAkB;IACpE,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,UAAU,EAAE,SAAS,CAAC,CAAC;IACjE,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;QAAE,OAAO,EAAE,CAAC;IACvC,MAAM,MAAM,GAAkB,EAAE,CAAC;IAEjC,KAAK,MAAM,KAAK,IAAI,WAAW,CAAC,UAAU,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC;QACnD,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QAC/C,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC;YAAE,SAAS;QAC1C,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;QAC7D,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;YAAE,SAAS;QACrC,MAAM,KAAK,GAAG,YAAY,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC/C,MAAM,IAAI,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAC;QAC5C,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,kBAAkB,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QACnE,MAAM,OAAO,GAAG,qBAAqB,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;QAC3E,MAAM,WAAW,GAAG,kBAAkB,CAAC,KAAK,EAAE,QAAQ,CAAC,CAAC;QACxD,MAAM,QAAQ,GAAG;YACf,OAAO,CAAC,MAAM,GAAG,CAAC;gBAChB,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,QAAQ,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,qBAAqB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/F,CAAC,CAAC,EAAE;YACN,OAAO,CAAC,MAAM,GAAG,CAAC;gBAChB,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,QAAQ,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,qBAAqB,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/F,CAAC,CAAC,EAAE;YACN,WAAW;SACZ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAElB,MAAM,CAAC,IAAI,CAAC;YACV,KAAK,EAAE,mBAAmB,KAAK,EAAE;YACjC,MAAM,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;YAC7C,OAAO,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC;gBAC1B,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC;gBACrB,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,IAAI,EAAE,OAAO,CAAC;SACzC,CAAC,CAAC;IACL,CAAC;IAED,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,uBAAuB,CAAC,OAAe;IAC9C,MAAM,IAAI,GAAa,EAAE,CAAC;IAC1B,KAAK,MAAM,IAAI,IAAI,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QAC1C,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,OAAO,IAAI,OAAO,CAAC,UAAU,CAAC,GAAG,CAAC;YAAE,SAAS;QAClD,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,SAAS;QAC3D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,iCAAiC,CAAC,CAAC;QAC5D,IAAI,KAAK;YAAE,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IACjC,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,kBAAkB,CAAC,OAAe,EAAE,QAAkB;IAC7D,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;IACvD,IAAI,CAAC,KAAK;QAAE,OAAO,EAAE,CAAC;IACtB,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;IACrD,IAAI,CAAC,KAAK,IAAI,KAAK,KAAK,MAAM;QAAE,OAAO,EAAE,CAAC;IAC1C,OAAO,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC;QACjC,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,0BAA0B,KAAK,EAAE,EAAE,+BAA+B,KAAK,EAAE,CAAC,CAAC;AACvG,CAAC;AAED,SAAS,eAAe,CAAC,MAAc;IACrC,IAAI,CAAC;QACH,OAAO,QAAQ,CAAC,MAAM,CAAC,CAAC,WAAW,EAAE,CAAC;IACxC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,IAAI,KAAK,KAAK,MAAM;QAAE,OAAO,MAAM,CAAC;IACpC,OAAO,iBAAiB,CAAC,KAAK,CAAC,CAAC;AAClC,CAAC;AAED,SAAS,eAAe,CAAC,KAAkB;IACzC,OAAO,KAAK,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;AAC5D,CAAC;AAED,KAAK,UAAU,eAAe,CAC5B,UAAkB,EAClB,QAAkB,EAClB,GAAsB;IAEtB,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,UAAU,EAAE,CAAC,WAAW,CAAC,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAC3E,GAAG,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,CAC5C,CAAC;IACF,MAAM,OAAO,GAAG,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;SAC3C,IAAI,CAAC,IAAI,CAAC;SACV,KAAK,CAAC,OAAO,CAAC;SACd,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SAC1B,IAAI,CAAC,OAAO,CAAC,CAAC;IACjB,OAAO;QACL,KAAK,EAAE,GAAG,UAAU,MAAM;QAC1B,MAAM,EAAE,MAAM,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM;QAC3C,OAAO,EACL,MAAM,CAAC,IAAI,KAAK,CAAC;YACf,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,YAAY,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;YAC3G,CAAC,CAAC,WAAW,CAAC,QAAQ,EAAE,cAAc,EAAE,qCAAqC,CAAC;QAClF,GAAG,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC;YACnB,CAAC,CAAC,EAAE;YACJ,CAAC,CAAC;gBACE,WAAW,EAAE,WAAW,CACtB,QAAQ,EACR,MAAM,UAAU,oBAAoB,EACpC,WAAW,UAAU,qCAAqC,CAC3D;aACF,CAAC;KACP,CAAC;AACJ,CAAC;AAED,KAAK,UAAU,QAAQ,CACrB,KAAY,EACZ,UAAkB,EAClB,gBAA8B,EAC9B,QAAkB,EAClB,GAAsB;IAEtB,MAAM,WAAW,GAAG,WAAW,CAC7B,QAAQ,EACR,oCAAoC,KAAK,EAAE,EAC3C,qCAAqC,KAAK,EAAE,CAC7C,CAAC;IACF,IAAI,gBAAgB,KAAK,MAAM,EAAE,CAAC;QAChC,OAAO;YACL,KAAK,EAAE,eAAe,KAAK,EAAE;YAC7B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE,wBAAwB,EAAE,iDAAiD,CAAC;YAC3G,WAAW;SACZ,CAAC;IACJ,CAAC;IACD,MAAM,IAAI,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;QACrE,IAAI,EAAE,CAAC;QACP,MAAM,EAAE,EAAE;QACV,MAAM,EAAE,EAAE;KACX,CAAC,CAAC,CAAC;IACJ,IAAI,MAAM,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,CAAC;QAClF,OAAO;YACL,KAAK,EAAE,eAAe,KAAK,EAAE;YAC7B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE,mBAAmB,EAAE,iCAAiC,CAAC;YACtF,WAAW;SACZ,CAAC;IACJ,CAAC;IACD,MAAM,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAC1E,MAAM,QAAQ,GAAG,UAAU,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;IAClD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC/B,OAAO;YACL,KAAK,EAAE,eAAe,KAAK,EAAE;YAC7B,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE,8BAA8B,EAAE,sEAAsE,CAAC;YACtI,WAAW;SACZ,CAAC;IACJ,CAAC;IACD,OAAO;QACL,KAAK,EAAE,eAAe,KAAK,EAAE;QAC7B,MAAM,EAAE,MAAM;QACd,OAAO,EAAE,WAAW,CAAC,QAAQ,EAAE,YAAY,EAAE,0CAA0C,CAAC;KACzF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAClC,YAAoB,EACpB,KAAY,EACZ,cAAoB;IAEpB,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC;QAAE,OAAO,CAAC,CAAC;IACxC,MAAM,QAAQ,GAAG,cAAc,IAAI,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC,CAAC;IACnF,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,IAAI,EAAE,CAAC;IACnC,IAAI,WAAW,GAAG,CAAC,CAAC;IACpB,MAAM,SAAS,GAAG,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;IAC/D,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,KAAK,CAAU,EAAE,CAAC;QACpD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;YAAE,SAAS;QACtC,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,IAAI,CAAC,KAAK,EAAE,KAAK;gBAAE,SAAS;YAC5B,KAAK,MAAM,CAAC,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;gBAC5B,IACE,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,SAAS,YAAY,CAAC;oBAC7C,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,SAAS,MAAM,CAAC;oBACvC,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,GAAG,SAAS,GAAG,KAAK,cAAc,CAAC,EACvD,CAAC;oBACD,WAAW,EAAE,CAAC;gBAChB,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,WAAW,CAAC;AACrB,CAAC;AAED,SAAS,cAAc,CAAC,KAAY;IAClC,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,MAAM,KAAK,GAAG,KAAK,KAAK,OAAO;QAC7B,CAAC,CAAC;YACE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC;YAC7C,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,CAAC;SAC7C;QACH,CAAC,CAAC,KAAK,KAAK,QAAQ;YAClB,CAAC,CAAC;gBACA,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,CAAC;gBACrC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC;aAC/C;YACD,CAAC,CAAC,EAAE,CAAC;IACT,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,mBAAmB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC;AACxE,CAAC;AAED,SAAS,aAAa,CAAC,KAAY;IACjC,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAC3B,IAAI,EACJ,sBAAsB,EACtB,MAAM,EACN,4BAA4B,EAC5B,QAAQ,EACR,YAAY,EACZ,UAAU,CACX,CAAC;IACF,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC;QAAE,OAAO,KAAK,CAAC;IAC3C,IAAI,KAAK,KAAK,OAAO,EAAE,CAAC;QACtB,OAAO,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,CAAC,CAAC,CAAC;IACpF,CAAC;IACD,IAAI,KAAK,KAAK,QAAQ;QAAE,OAAO,UAAU,CAAC,WAAW,CAAC,CAAC;IACvD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,mBAAmB,CAAC,IAAY,EAAE,OAAe;IACxD,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;QAAE,OAAO,KAAK,CAAC;IACpC,MAAM,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC;IACrB,MAAM,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;IACrC,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxB,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,EAAG,CAAC;QAC7B,IAAI,OAAiB,CAAC;QACtB,IAAI,CAAC;YACH,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YACvC,IAAI,KAAK,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,OAAO,IAAI,CAAC;YACtD,IAAI,KAAK,CAAC,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3C,IAAI,CAAC;oBACH,IAAI,QAAQ,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE;wBAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACrD,CAAC;gBAAC,MAAM,CAAC;oBACP,SAAS;gBACX,CAAC;YACH,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -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":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,UAAU,EAAE,MAAM,IAAI,CAAC;AAChC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,KAAK,IAAI,KAAK,EAAE,MAAM,IAAI,MAAM,EAAE,MAAM,SAAS,CAAC;AAC3D,OAAO,EAAE,QAAQ,EAAE,MAAM,sBAAsB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACtE,OAAO,EACL,mBAAmB,EACnB,iBAAiB,EACjB,aAAa,GACd,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,wBAAwB,EACxB,eAAe,EACf,kBAAkB,EAClB,gBAAgB,EAChB,kBAAkB,EAClB,uBAAuB,EACvB,iBAAiB,EACjB,sBAAsB,EACtB,sBAAsB,GACvB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,iCAAiC,CAAC;AAC1F,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC/F,OAAO,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAChH,OAAO,EACL,SAAS,EACT,UAAU,EACV,aAAa,EACb,eAAe,EACf,mBAAmB,GACpB,MAAM,+BAA+B,CAAC;AACvC,OAAO,EAAE,iBAAiB,EAAE,CAAC,EAAE,MAAM,8BAA8B,CAAC;AAEpE,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,yCAAyC,CAAC;AAgCnF,MAAM,CAAC,KAAK,UAAU,WAAW,CAAC,UAcjC;IACC,4DAA4D;IAC5D,0DAA0D;IAC1D,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACvD,MAAM,KAAK,GAAG,MAAM,yBAAyB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACpE,MAAM,OAAO,CAAC;YACZ,MAAM,EAAE,CAAC,CAAC,UAAU,CAAC,MAAM;YAC3B,KAAK;YACL,MAAM,EAAE,CAAC,CAAC,UAAU,CAAC,MAAM;YAC3B,OAAO,EAAE,UAAU,CAAC,KAAK,KAAK,KAAK,EAAG,sBAAsB;YAC5D,cAAc,EAAE,UAAU,CAAC,YAAY,KAAK,KAAK;YACjD,MAAM,EAAE,UAAU,CAAC,IAAI,KAAK,KAAK,EAAK,qBAAqB;YAC3D,GAAG,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG;YACrB,IAAI,EAAE,CAAC,CAAC,UAAU,CAAC,IAAI;YACvB,YAAY,EAAE,CAAC,CAAC,UAAU,CAAC,YAAY;YACvC,KAAK,EAAE,iBAAiB,CAAC,UAAU,CAAC,KAAK,CAAC;YAC1C,QAAQ;YACR,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;SAClE,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC;YACpB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAG,GAAa,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QACrF,CAAC;aAAM,CAAC;YACN,OAAO,CAAC,KAAK,CAAC,UAAW,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QACpD,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,UAMlC;IACC,IAAI,UAAU,CAAC,QAAQ,EAAE,CAAC;QACxB,MAAM,MAAM,GAAG,iBAAiB,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;QACtD,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,UAAU,CAAC,QAAQ,EAAE,CAAC,CAAC;QACzE,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,MAAM,WAAW,GAAG,iBAAiB,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAClE,IAAI,WAAW;QAAE,OAAO,WAAW,CAAC;IACpC,IAAI,UAAU,CAAC,GAAG,IAAI,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;QAChF,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK;QAAE,OAAO,IAAI,CAAC;IAC/D,OAAO,uBAAuB,EAAE,CAAC;AACnC,CAAC;AAED,KAAK,UAAU,yBAAyB,CAAC,UAMxC,EAAE,QAAkB;IACnB,IAAI,UAAU,CAAC,KAAK;QAAE,OAAO,mBAAmB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IACnE,IAAI,UAAU,CAAC,GAAG,IAAI,UAAU,CAAC,IAAI,IAAI,UAAU,CAAC,MAAM,IAAI,UAAU,CAAC,MAAM,EAAE,CAAC;QAChF,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK;QAAE,OAAO,MAAM,CAAC;IACjE,OAAO,oBAAoB,CAAC,QAAQ,CAAC,CAAC;AACxC,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC9C,IAAI,CAAC,UAAU,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,KAAK,MAAM,EAAE,CAAC;QAC/D,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,MAAM,KAAK,GAAG,UAAU;SACrB,KAAK,CAAC,QAAQ,CAAC;SACf,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;SAC1B,MAAM,CAAC,OAAO,CAAC,CAAC;IACnB,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAS,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YACtD,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACzB,CAAC;aAAM,IAAI,IAAI,KAAK,GAAG,IAAI,IAAI,KAAK,OAAO,IAAI,IAAI,KAAK,GAAG,EAAE,CAAC;YAC5D,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IACD,IAAI,QAAQ,CAAC,IAAI,KAAK,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,MAAM,CAAC;IAC1F,IAAI,QAAQ,CAAC,IAAI,GAAG,CAAC;QAAE,OAAO,CAAC,GAAG,QAAQ,CAAC,CAAC;IAC5C,IAAI,QAAQ,CAAC,GAAG,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC5C,IAAI,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAC;IAC1C,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,eAAe,CAAC,MAAkB;IACzC,MAAM,SAAS,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC;IAC7E,MAAM,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;IACzE,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC;IACvE,MAAM,KAAK,GAAG;QACZ,EAAE;QACF,gCAAgC;QAChC,WAAW,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;QACrC,aAAa,MAAM,CAAC,QAAQ,EAAE;QAC9B,UAAU,MAAM,CAAC,KAAK,EAAE;QACxB,YAAY,MAAM,CAAC,WAAW,EAAE;QAChC,UAAU,SAAS,CAAC,MAAM,eAAe,OAAO,CAAC,MAAM,aAAa,MAAM,CAAC,MAAM,SAAS;KAC3F,CAAC;IACF,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,cAAc,SAAS,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IAC7F,CAAC;IACD,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,KAAK,CAAC,IAAI,CAAC,YAAY,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACzF,CAAC;IACD,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CACR,WAAW,MAAM;aACd,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,GAAG,IAAI,CAAC,EAAE,IAAI,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;aAC/E,IAAI,CAAC,KAAK,CAAC,EAAE,CACjB,CAAC;IACJ,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,gBAAgB,CAAC,MAAkB,EAAE,KAA6B;IACzE,KAAK,MAAM,IAAI,IAAI,eAAe,CAAC,MAAM,CAAC,EAAE,CAAC;QAC3C,KAAK,CAAC,IAAI,CAAC,CAAC;IACd,CAAC;AACH,CAAC;AAED,KAAK,UAAU,oBAAoB,CAAC,QAAkB;IACpD,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9C,IAAI,CAAC;QACH,OAAO,IAAI,EAAE,CAAC;YACZ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC;YAC/C,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,CAAC,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,YAAY,CAAC,EAAE,CAAC,CAAC;YACjD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,CAAC,CAAC;YAChD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC,CAAC;YAC7D,MAAM,SAAS,GAAG,mBAAmB,CAAC,MAAM,CAAC,CAAC;YAC9C,IAAI,SAAS;gBAAE,OAAO,SAAS,CAAC;YAChC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC,CAAC;QAC3C,CAAC;IACH,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,KAAK,UAAU,uBAAuB;IACpC,MAAM,EAAE,GAAG,eAAe,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IAC9C,IAAI,CAAC;QACH,OAAO,IAAI,EAAE,CAAC;YACZ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI,EAAE,gBAAgB,CAAC,EAAE,CAAC,CAAC;YAC9C,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,iBAAiB,CAAC,EAAE,CAAC,CAAC;YAClD,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,iBAAiB,CAAC,EAAE,CAAC,CAAC;YAClD,MAAM,MAAM,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAC;YAC5D,MAAM,QAAQ,GAAG,iBAAiB,CAAC,MAAM,CAAC,CAAC;YAC3C,IAAI,QAAQ;gBAAE,OAAO,QAAQ,CAAC;YAC9B,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC,CAAC;QAC1C,CAAC;IACH,CAAC;YAAS,CAAC;QACT,EAAE,CAAC,KAAK,EAAE,CAAC;IACb,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,OAAO,CAAC,OAAoB;IAChD,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM;QAC1B,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,IAAI,SAAS,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;QAC1E,CAAC,CAAC,SAAS,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;IACnD,KAAK,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IAElC,MAAM,MAAM,GAAG,QAAQ,EAAE,CAAC;IAC1B,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,KAAK,IAAI,CAAC;IACrC,MAAM,MAAM,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAC5C,MAAM,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;IACxC,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;QACnD,wBAAwB,CAAC,WAAW,CAAC,CAAC;IACxC,CAAC;IACD,MAAM,MAAM,GAAe;QACzB,EAAE,EAAE,IAAI;QACR,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM;QACN,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,WAAW;QACX,KAAK,EAAE,EAAE;QACT,MAAM,EAAE,EAAE,KAAK,EAAE,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,UAAU,EAAE;QACvD,KAAK,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE;QACpD,OAAO,EAAE,EAAE;QACX,KAAK,EAAE,EAAE;QACT,SAAS;KACV,CAAC;IACF,MAAM,GAAG,GAAG,CAAC,OAAO,GAAG,EAAE,EAAE,EAAE;QAC3B,IAAI,CAAC,OAAO,CAAC,IAAI;YAAE,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC,CAAC;IACF,MAAM,IAAI,GAAG,CAAC,OAAe,EAAE,EAAE;QAC/B,IAAI,CAAC,OAAO,CAAC,IAAI;YAAE,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC,CAAC;IAEF,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;QACvC,MAAM,KAAK,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;QACzC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC;QAClE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG;YACpB,KAAK,EAAE,KAAK,CAAC,MAAM;YACnB,KAAK,EAAE,KAAK;YACZ,UAAU,EAAE,CAAC,OAAO,CAAC,OAAO;SAC7B,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG;QACZ,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE;gBAChE,GAAG,CAAC,OAAO,MAAM,EAAE,CAAC,CAAC;gBACrB,GAAG,CAAC,WAAW,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBACpC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;oBACrE,GAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,eAAe,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;oBACzD,GAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,cAAc,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACvD,GAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,gBAAgB,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;oBAC3D,GAAG,CAAC,GAAG,QAAQ,CAAC,IAAI,kBAAkB,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC;gBACjE,CAAC;YACH,CAAC,EAAC;QACF,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE;gBAC9D,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACnB,GAAG,CAAC,sDAAsD,CAAC,CAAC;oBAC5D,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;wBAC3B,GAAG,CAAC,0DAA0D,CAAC,CAAC;oBAClE,CAAC;yBAAM,CAAC;wBACN,GAAG,CAAC,sBAAsB,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;oBAC9F,CAAC;oBACD,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;wBAC9B,GAAG,CAAC,uEAAuE,CAAC,CAAC;oBAC/E,CAAC;oBACD,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;wBAC7B,GAAG,CAAC,8BAA8B,wBAAwB,EAAE,CAAC,CAAC;wBAC9D,GAAG,CAAC,uDAAuD,CAAC,CAAC;oBAC/D,CAAC;oBACD,OAAO;gBACT,CAAC;gBACD,MAAM,QAAQ,GAAG,MAAM,eAAe,EAAE,CAAC;gBACzC,IAAI,CAAC,QAAQ,CAAC,EAAE;oBAAE,MAAM,IAAI,KAAK,CAAC,4BAA4B,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC;gBAChF,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC;oBAC3B,GAAG,CAAC,EAAE;wBACJ,CAAC,CAAC,+CAA+C;wBACjD,CAAC,CAAC,iEAAiE,CACpE,CAAC;gBACJ,CAAC;qBAAM,CAAC;oBACN,MAAM,YAAY,GAAG,MAAM,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC;oBAClF,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,CAAC;wBACrB,MAAM,IAAI,KAAK,CAAC,yBAAyB,YAAY,CAAC,KAAK,EAAE,CAAC,CAAC;oBACjE,CAAC;oBACD,GAAG,CAAC,uCAAuC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAClE,CAAC;gBACD,IAAI,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC9B,MAAM,GAAG,GAAG,MAAM,kBAAkB,EAAE,CAAC;oBACvC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;wBACZ,MAAM,IAAI,KAAK,CAAC,sCAAsC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;oBACrE,CAAC;oBACD,MAAM,GAAG,GAAG,MAAM,iBAAiB,EAAE,CAAC;oBACtC,IAAI,CAAC,GAAG,CAAC,EAAE;wBAAE,IAAI,CAAC,+BAA+B,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;oBAC9D,MAAM,GAAG,GAAG,MAAM,sBAAsB,CACtC,gBAAgB,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,SAAS,CACjE,CAAC;oBACF,IAAI,CAAC,GAAG,CAAC,EAAE;wBAAE,IAAI,CAAC,6BAA6B,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;gBAC9D,CAAC;gBACD,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;oBAC7B,MAAM,GAAG,GAAG,MAAM,uBAAuB,CAAC,IAAI,CAAC,CAAC;oBAChD,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;wBACZ,MAAM,IAAI,KAAK,CAAC,qCAAqC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;oBACpE,CAAC;oBACD,GAAG,CAAC,EAAE;wBACJ,CAAC,CAAC,uDAAuD;wBACzD,CAAC,CAAC,yHAAyH,CAC5H,CAAC;oBACF,MAAM,GAAG,GAAG,MAAM,sBAAsB,EAAE,CAAC;oBAC3C,IAAI,CAAC,GAAG,CAAC,EAAE;wBAAE,IAAI,CAAC,qCAAqC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;oBACpE,MAAM,GAAG,GAAG,MAAM,sBAAsB,CACtC,gBAAgB,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC,SAAS,CAChE,CAAC;oBACF,IAAI,CAAC,GAAG,CAAC,EAAE;wBAAE,IAAI,CAAC,mCAAmC,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC;gBACpE,CAAC;YACH,CAAC,EAAC;QACF,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,KAAK,UAAU,CAAC,MAAM,GAAG,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE;gBAC5F,MAAM,UAAU,GAAG,OAAO,CAAC,QAAQ,KAAK,IAAI;oBAC1C,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC;oBACpC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;gBACpC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACnB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;wBAC3B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;wBACrE,GAAG,CAAC,mBAAmB,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC;oBAC1E,CAAC;oBACD,OAAO;gBACT,CAAC;gBACD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;oBACrE,GAAG,CAAC,KAAK,QAAQ,CAAC,IAAI,GAAG,CAAC,CAAC;oBAC3B,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;wBAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;wBACjD,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC;wBACjC,MAAM,WAAW,CAAC,IAAI,EAAE,UAAU,EAAE,QAAQ,CAAC,SAAS,EAAE;4BACtD,KAAK;4BACL,YAAY,EAAE,OAAO,CAAC,YAAY;yBACnC,CAAC,CAAC;wBACH,GAAG,CAAC,OAAO,OAAO,CAAC,YAAY,IAAI,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC;oBACpE,CAAC;oBACD,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,MAAM,GAAG,UAAU,CAAC;gBAC7C,CAAC;YACH,CAAC,EAAC;QACF,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,kBAAkB,CAAC,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE;gBACtE,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACnB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;wBAC3B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;wBACrE,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;wBACvC,MAAM,WAAW,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;wBAC/C,GAAG,CAAC,gBAAgB,OAAO,CAAC,MAAM,cAAc,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;wBACvE,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;4BAC7B,GAAG,CAAC,aAAa,QAAQ,CAAC,IAAI,6CAA6C,CAAC,CAAC;wBAC/E,CAAC;6BAAM,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;4BAC5B,GAAG,CAAC,sBAAsB,WAAW,CAAC,MAAM,YAAY,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC;wBACnF,CAAC;6BAAM,CAAC;4BACN,GAAG,CAAC,sDAAsD,CAAC,CAAC;wBAC9D,CAAC;oBACH,CAAC;oBACD,OAAO;gBACT,CAAC;gBACD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;oBACrE,MAAM,OAAO,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;oBACvC,MAAM,aAAa,CAAC,OAAO,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,EAAE,QAAQ,CAAC,UAAU,EAAE;wBAClF,KAAK;wBACL,YAAY,EAAE,OAAO,CAAC,YAAY;qBACnC,CAAC,CAAC;oBACH,GAAG,CAAC,OAAO,QAAQ,CAAC,IAAI,KAAK,OAAO,CAAC,MAAM,mBAAmB,CAAC,CAAC;oBAChE,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,OAAO,GAAG,OAAO,CAAC;oBAEzC,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;wBACpB,GAAG,CAAC,EAAE;4BACJ,CAAC,CAAC,sBAAsB,QAAQ,CAAC,IAAI,2BAA2B;4BAChE,CAAC,CAAC,2BAA2B,QAAQ,CAAC,IAAI,uCAAuC,CAClF,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,MAAM,WAAW,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAC;wBAC/C,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;4BAC7B,GAAG,CAAC,EAAE;gCACJ,CAAC,CAAC,OAAO,QAAQ,CAAC,IAAI,gDAAgD;gCACtE,CAAC,CAAC,OAAO,QAAQ,CAAC,IAAI,kFAAkF,CACzG,CAAC;4BACF,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,EAAE,CAAC;4BAClC,SAAS;wBACX,CAAC;wBACD,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;4BAChC,MAAM,SAAS,GAAG,mBAAmB,CAAC,WAAW,EAAE,KAAK,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,EAAE,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC,CAAC;4BAC3H,IAAI,SAAS,CAAC,OAAO;gCAAE,GAAG,CAAC,uBAAuB,KAAK,2BAA2B,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;wBACxG,CAAC;wBACD,MAAM,MAAM,GAAG,gBAAgB,CAAC,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC;wBACzF,IAAI,MAAM,CAAC,OAAO;4BAAE,GAAG,CAAC,kBAAkB,MAAM,CAAC,UAAU,mBAAmB,MAAM,CAAC,OAAO,oBAAoB,CAAC,CAAC;wBAClH,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,WAAW,CAAC;wBAC3C,GAAG,CAAC,OAAO,WAAW,CAAC,MAAM,wBAAwB,QAAQ,CAAC,YAAY,EAAE,CAAC,CAAC;oBAChF,CAAC;gBACH,CAAC;YACH,CAAC,EAAC;QACF,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,aAAa,CAAC,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE;gBACjE,MAAM,YAAY,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,OAAO,CAAC,CAAC;gBACjE,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC9B,GAAG,CAAC,EAAE;wBACJ,CAAC,CAAC,+BAA+B;wBACjC,CAAC,CAAC,mDAAmD,CACtD,CAAC;oBACF,OAAO;gBACT,CAAC;gBACD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACnB,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;wBACjC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;wBACrE,GAAG,CAAC,gBAAgB,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,UAAU,EAAE,CAAC,CAAC;oBAC3E,CAAC;oBACD,OAAO;gBACT,CAAC;gBACD,KAAK,MAAM,KAAK,IAAI,YAAY,EAAE,CAAC;oBACjC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;oBACrE,MAAM,aAAa,CACjB,aAAa,EACb,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,SAAS,CAAC,EAChC,QAAQ,CAAC,UAAU,EACnB,EAAE,YAAY,EAAE,OAAO,CAAC,YAAY,EAAE,CACvC,CAAC;oBACF,GAAG,CAAC,OAAO,QAAQ,CAAC,IAAI,KAAK,aAAa,CAAC,MAAM,wBAAwB,CAAC,CAAC;gBAC7E,CAAC;YACH,CAAC,EAAC;QACF,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,KAAK,SAAS,CAAC,MAAM,GAAG,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE;gBAC1F,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACnB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;wBAC3B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;wBACrE,GAAG,CAAC,gBAAgB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;oBACrE,CAAC;oBACD,OAAO;gBACT,CAAC;gBACD,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;oBAC3B,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;oBACrE,MAAM,WAAW,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,EAAE,QAAQ,CAAC,QAAQ,EAAE;wBAC9E,YAAY,EAAE,OAAO,CAAC,YAAY;qBACnC,CAAC,CAAC;oBACH,GAAG,CAAC,OAAO,QAAQ,CAAC,IAAI,KAAK,SAAS,CAAC,MAAM,mBAAmB,CAAC,CAAC;gBACpE,CAAC;YACH,CAAC,EAAC;QACF,EAAE,EAAE,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,UAAU,CAAC,EAAE,GAAG,EAAE,KAAK,IAAI,EAAE;gBAC9D,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACnB,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;wBACnB,GAAG,CAAC,mDAAmD,CAAC,CAAC;oBAC3D,CAAC;yBAAM,CAAC;wBACN,GAAG,CAAC,EAAE;4BACJ,CAAC,CAAC,gEAAgE;4BAClE,CAAC,CAAC,0EAA0E,CAC7E,CAAC;oBACJ,CAAC;oBACD,OAAO;gBACT,CAAC;gBACD,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;oBACnB,GAAG,CAAC,EAAE;wBACJ,CAAC,CAAC,uFAAuF;wBACzF,CAAC,CAAC,+FAA+F,CAClG,CAAC;oBACF,OAAO;gBACT,CAAC;gBACD,iBAAiB;gBACjB,MAAM,GAAG,GAAG,WAAW,CAAC;gBACxB,MAAM,WAAW,GAAG,MAAM,uBAAuB,CAAC,GAAG,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACzE,GAAG,CAAC,4CAA4C,WAAW,CAAC,MAAM,CAAC,MAAM,aAAa,WAAW,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC;gBACrH,iCAAiC;gBACjC,MAAM,gBAAgB,GAAG,MAAM,mBAAmB,CAAC,GAAG,CAAC,CAAC;gBACxD,IAAI,gBAAgB,CAAC,EAAE,EAAE,CAAC;oBACxB,GAAG,CAAC,0CAA0C,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;gBAC/E,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,EAAE;wBACJ,CAAC,CAAC,oEAAoE;wBACtE,CAAC,CAAC,sGAAsG,CACzG,CAAC;gBACJ,CAAC;gBACD,SAAS;gBACT,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;oBAClB,eAAe,CAAC,GAAG,EAAE,WAAW,EAAE,gBAAgB,EAAE,OAAO,CAAC,QAAQ,CAAC,CAAC;gBACxE,CAAC;YACH,CAAC,EAAC;KACH,CAAC;IAEF,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC;YAC3C,GAAG,CAAC,QAAQ,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,IAAI,gCAAgC,CAAC,CAAC;YACnE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;YACvE,SAAS;QACX,CAAC;QACD,GAAG,CAAC,cAAc,IAAI,CAAC,EAAE,KAAK,IAAI,CAAC,IAAI,MAAM,CAAC,CAAC;QAC/C,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,GAAG,EAAE,CAAC;YACjB,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;YACzE,KAAK,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACnC,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;gBACpB,KAAK,CAAC,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;gBAC1C,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YAC9B,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,KAAK,CAAC,cAAc,GAAG,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC;YACzE,IAAI,CAAC,OAAO,CAAC,MAAM;gBAAE,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YACjD,MAAM,CAAC,EAAE,GAAG,KAAK,CAAC;YAClB,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC;gBAChB,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,MAAM,EAAE,QAAQ;gBAChB,KAAK,EAAG,GAAa,CAAC,OAAO;aAC9B,CAAC,CAAC;YACH,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;gBACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YAC/C,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,KAAK,CAAC,eAAe,IAAI,CAAC,EAAE,YAAa,GAAa,CAAC,OAAO,EAAE,CAAC,CAAC;gBAC1E,gBAAgB,CAAC,MAAM,EAAE,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;gBACxD,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC,CAAC;YAClD,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,CAAC;IACH,CAAC;IAED,IAAI,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC;QACpB,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;YACrB,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,MAAM,cAAc,GAAG,gBAAgB,CAAC,KAAK,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC,YAAY,CAAC;gBACnF,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;oBAAE,GAAG,CAAC,8BAA8B,KAAK,mBAAmB,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC;YACvG,CAAC;QACH,CAAC;QACD,6CAA6C;QAC7C,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC/C,CAAC;QACD,IAAI,OAAO,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAChC,+CAA+C;YAC/C,oBAAoB,CAAC,KAAK,EAAE;gBAC1B,IAAI,EAAE,WAAW;gBACjB,MAAM;gBACN,KAAK,EAAE,OAAO,CAAC,KAAK;gBACpB,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC;gBAC9D,YAAY,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;aACvC,CAAC,CAAC;QACL,CAAC;QACD,SAAS,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;QAC5B,GAAG,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,cAAc,CAAC,MAAM,CAAC,CAAC;QACxD,GAAG,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,YAAY,CAAC,KAAK,SAAS,EAAE,CAAC,CAAC;QAC1D,gBAAgB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IAChC,CAAC;IACD,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC/C,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
@@ -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
- let state = loadState(stateFile);
279
- if (!state) {
280
- const packageJson = JSON.parse(readFileSync(path.join(PACKAGE_ROOT, 'package.json'), 'utf-8'));
281
- state = initState(packageJson.version ?? 'unknown', agents[0] ?? 'claude', language);
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(stateFile, state);
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":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@chenmk/superflow",
3
- "version": "0.5.15",
3
+ "version": "0.5.17",
4
4
  "description": "SuperBridge Flow workflow CLI for Claude Code and Codex",
5
5
  "license": "MIT",
6
6
  "type": "module",
@@ -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
  }