@dommaker/harness 1.4.0 → 1.5.0

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 (71) hide show
  1. package/CHANGELOG.md +12 -0
  2. package/dist/cli/commands/check.d.ts.map +1 -1
  3. package/dist/cli/commands/check.js +28 -0
  4. package/dist/cli/commands/check.js.map +1 -1
  5. package/dist/cli/commands/definitions.d.ts.map +1 -1
  6. package/dist/cli/commands/definitions.js +0 -7
  7. package/dist/cli/commands/definitions.js.map +1 -1
  8. package/dist/cli/commands/knowledge.d.ts +0 -19
  9. package/dist/cli/commands/knowledge.d.ts.map +1 -1
  10. package/dist/cli/commands/knowledge.js +0 -105
  11. package/dist/cli/commands/knowledge.js.map +1 -1
  12. package/dist/cli/commands/update-user-model.d.ts +7 -2
  13. package/dist/cli/commands/update-user-model.d.ts.map +1 -1
  14. package/dist/cli/commands/update-user-model.js +25 -16
  15. package/dist/cli/commands/update-user-model.js.map +1 -1
  16. package/dist/core/constraints/checker.d.ts.map +1 -1
  17. package/dist/core/constraints/checker.js +5 -3
  18. package/dist/core/constraints/checker.js.map +1 -1
  19. package/dist/core/constraints/checkers/capability-sync.d.ts +17 -6
  20. package/dist/core/constraints/checkers/capability-sync.d.ts.map +1 -1
  21. package/dist/core/constraints/checkers/capability-sync.js +48 -19
  22. package/dist/core/constraints/checkers/capability-sync.js.map +1 -1
  23. package/dist/core/constraints/checkers/docs-freshness.d.ts.map +1 -1
  24. package/dist/core/constraints/checkers/docs-freshness.js +15 -6
  25. package/dist/core/constraints/checkers/docs-freshness.js.map +1 -1
  26. package/dist/core/constraints/checkers/index.d.ts +2 -2
  27. package/dist/core/constraints/checkers/index.d.ts.map +1 -1
  28. package/dist/core/constraints/checkers/index.js +2 -1
  29. package/dist/core/constraints/checkers/index.js.map +1 -1
  30. package/dist/core/constraints/checkers/types.d.ts +41 -2
  31. package/dist/core/constraints/checkers/types.d.ts.map +1 -1
  32. package/dist/core/constraints/checkers/types.js +33 -0
  33. package/dist/core/constraints/checkers/types.js.map +1 -1
  34. package/dist/gates/checker-gate.d.ts +2 -1
  35. package/dist/gates/checker-gate.d.ts.map +1 -1
  36. package/dist/gates/checker-gate.js +10 -7
  37. package/dist/gates/checker-gate.js.map +1 -1
  38. package/dist/types/constraint.d.ts +8 -0
  39. package/dist/types/constraint.d.ts.map +1 -1
  40. package/dist/types/constraint.js +6 -1
  41. package/dist/types/constraint.js.map +1 -1
  42. package/dist/types/trace.d.ts +9 -0
  43. package/dist/types/trace.d.ts.map +1 -1
  44. package/package.json +1 -1
  45. package/src/CONTEXT.md +1 -0
  46. package/src/__tests__/passes-gate.test.ts +11 -18
  47. package/src/cli/commands/CONTEXT.md +2 -2
  48. package/src/cli/commands/__tests__/bin-exit-mapping.test.ts +6 -0
  49. package/src/cli/commands/__tests__/check.test.ts +74 -0
  50. package/src/cli/commands/__tests__/project-path-convention.test.ts +85 -23
  51. package/src/cli/commands/__tests__/registry.test.ts +6 -0
  52. package/src/cli/commands/__tests__/update-user-model.test.ts +35 -1
  53. package/src/cli/commands/check.ts +39 -1
  54. package/src/cli/commands/definitions.ts +0 -7
  55. package/src/cli/commands/knowledge.ts +0 -119
  56. package/src/cli/commands/update-user-model.ts +31 -16
  57. package/src/core/CONTEXT.md +2 -1
  58. package/src/core/constraints/checker.ts +8 -4
  59. package/src/core/constraints/checkers/__tests__/capability-sync.test.ts +90 -31
  60. package/src/core/constraints/checkers/__tests__/check-outcome.test.ts +176 -0
  61. package/src/core/constraints/checkers/__tests__/docs-freshness.test.ts +18 -9
  62. package/src/core/constraints/checkers/__tests__/three-state-consistency.test.ts +12 -4
  63. package/src/core/constraints/checkers/capability-sync.ts +56 -18
  64. package/src/core/constraints/checkers/docs-freshness.ts +18 -5
  65. package/src/core/constraints/checkers/index.ts +9 -2
  66. package/src/core/constraints/checkers/types.ts +58 -2
  67. package/src/gates/CONTEXT.md +1 -1
  68. package/src/gates/__tests__/checker-gate.test.ts +24 -0
  69. package/src/gates/checker-gate.ts +11 -15
  70. package/src/types/constraint.ts +16 -2
  71. package/src/types/trace.ts +10 -0
@@ -11,8 +11,8 @@
11
11
  * studio/.harness/knowledge/ (知识新鲜度)
12
12
  * ~/.claude/projects/-root-projects/memory/ (规则库)
13
13
  *
14
- * 模型状态: ~/.claude/user-model-state.json
15
- * 画像输出: ~/.claude/projects/-root-projects/memory/user_profile.md
14
+ * 模型状态: $HARNESS_UUM_STATE_FILE,默认 ~/.claude/user-model-state.json
15
+ * 画像输出: $HARNESS_UUM_PROFILE_FILE,默认 ~/.claude/projects/-root-projects/memory/user_profile.md
16
16
  *
17
17
  * 工单 19-C:transcript 解析/纠正模式/相似度收敛至 cli/session-mining/。
18
18
  */
@@ -53,6 +53,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
53
53
  return (mod && mod.__esModule) ? mod : { "default": mod };
54
54
  };
55
55
  Object.defineProperty(exports, "__esModule", { value: true });
56
+ exports.resolveUserModelPaths = resolveUserModelPaths;
56
57
  exports.updateUserModel = updateUserModel;
57
58
  const chalk_1 = __importDefault(require("chalk"));
58
59
  const fs = __importStar(require("fs"));
@@ -60,13 +61,21 @@ const path = __importStar(require("path"));
60
61
  const os = __importStar(require("os"));
61
62
  const session_mining_1 = require("../session-mining");
62
63
  const command_contract_1 = require("../command-contract");
63
- const STATE_FILE = path.join(os.homedir(), '.claude', 'user-model-state.json');
64
- const PROFILE_FILE = path.join(os.homedir(), '.claude', 'projects', '-root-projects', 'memory', 'user_profile.md');
64
+ function resolveUserModelPaths(env = process.env) {
65
+ const home = os.homedir();
66
+ return {
67
+ stateFile: env.HARNESS_UUM_STATE_FILE
68
+ || path.join(home, '.claude', 'user-model-state.json'),
69
+ profileFile: env.HARNESS_UUM_PROFILE_FILE
70
+ || path.join(home, '.claude', 'projects', '-root-projects', 'memory', 'user_profile.md'),
71
+ };
72
+ }
65
73
  async function updateUserModel(options, io = command_contract_1.processIO) {
66
74
  const transcriptDir = process.env.CLAUDE_TRANSCRIPTS_DIR
67
75
  || path.join(os.homedir(), '.claude', 'projects', '-root--claude');
68
76
  // 1. Load previous state
69
- const state = loadState();
77
+ const paths = resolveUserModelPaths();
78
+ const state = loadState(paths);
70
79
  // 2. Scan new data
71
80
  const newSessions = findNewSessions(transcriptDir, state.sessionsProcessed, options.days);
72
81
  if (newSessions.length === 0) {
@@ -91,8 +100,8 @@ async function updateUserModel(options, io = command_contract_1.processIO) {
91
100
  if (state.sessionsProcessed.length > 200) {
92
101
  state.sessionsProcessed = state.sessionsProcessed.slice(-200);
93
102
  }
94
- saveState(state);
95
- updateProfile(state);
103
+ saveState(state, paths);
104
+ updateProfile(state, paths);
96
105
  }
97
106
  // 6. Output
98
107
  if (options.json) {
@@ -104,10 +113,10 @@ async function updateUserModel(options, io = command_contract_1.processIO) {
104
113
  return { kind: 'ok' };
105
114
  }
106
115
  // ── State I/O ──
107
- function loadState() {
116
+ function loadState(paths) {
108
117
  try {
109
- if (fs.existsSync(STATE_FILE)) {
110
- return JSON.parse(fs.readFileSync(STATE_FILE, 'utf-8'));
118
+ if (fs.existsSync(paths.stateFile)) {
119
+ return JSON.parse(fs.readFileSync(paths.stateFile, 'utf-8'));
111
120
  }
112
121
  }
113
122
  catch { }
@@ -120,12 +129,12 @@ function loadState() {
120
129
  evolutionLog: [],
121
130
  };
122
131
  }
123
- function saveState(state) {
132
+ function saveState(state, paths) {
124
133
  try {
125
- const dir = path.dirname(STATE_FILE);
134
+ const dir = path.dirname(paths.stateFile);
126
135
  if (!fs.existsSync(dir))
127
136
  fs.mkdirSync(dir, { recursive: true });
128
- fs.writeFileSync(STATE_FILE, JSON.stringify(state, null, 2), 'utf-8');
137
+ fs.writeFileSync(paths.stateFile, JSON.stringify(state, null, 2), 'utf-8');
129
138
  }
130
139
  catch { }
131
140
  }
@@ -318,9 +327,9 @@ function applySignals(state, signals, mergedConcepts) {
318
327
  }
319
328
  }
320
329
  // ── Profile update ──
321
- function updateProfile(state) {
330
+ function updateProfile(state, paths) {
322
331
  try {
323
- let content = fs.readFileSync(PROFILE_FILE, 'utf-8');
332
+ let content = fs.readFileSync(paths.profileFile, 'utf-8');
324
333
  // Replace Derived Rules section
325
334
  const derivedStart = '## Derived Rules';
326
335
  const derivedEnd = '\n## Evolution';
@@ -351,7 +360,7 @@ function updateProfile(state) {
351
360
  content += '\n' + derivedContent;
352
361
  }
353
362
  }
354
- fs.writeFileSync(PROFILE_FILE, content, 'utf-8');
363
+ fs.writeFileSync(paths.profileFile, content, 'utf-8');
355
364
  }
356
365
  catch (e) {
357
366
  // Profile file might not exist yet — skip
@@ -1 +1 @@
1
- {"version":3,"file":"update-user-model.js","sourceRoot":"","sources":["../../../src/cli/commands/update-user-model.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"update-user-model.js","sourceRoot":"","sources":["../../../src/cli/commands/update-user-model.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"checker.d.ts","sourceRoot":"","sources":["../../../src/core/constraints/checker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checker.d.ts","sourceRoot":"","sources":["../../../src/core/constraints/checker.ts"],"names":[],"mappings":"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"}
@@ -79,8 +79,8 @@ class ConstraintChecker {
79
79
  };
80
80
  }
81
81
  // 检查前置条件('skip' = 约定未采用/证据未接线:satisfied 置 true 但不计 pass/fail)
82
- const outcome = await this.checkPrecondition(constraint, context, evidence);
83
- if (outcome === 'skip') {
82
+ const outcome = (0, checkers_1.normalizeCheckOutcome)(await this.checkPrecondition(constraint, context, evidence));
83
+ if (outcome.skipped) {
84
84
  return {
85
85
  id: constraint.id,
86
86
  level: constraint.level,
@@ -91,13 +91,14 @@ class ConstraintChecker {
91
91
  checkedAt: new Date(),
92
92
  };
93
93
  }
94
- const satisfied = outcome;
94
+ const satisfied = outcome.satisfied;
95
95
  return {
96
96
  id: constraint.id,
97
97
  level: constraint.level,
98
98
  satisfied,
99
99
  constraint,
100
100
  message: satisfied ? undefined : constraint.message,
101
+ evidence: outcome.evidence.length > 0 ? outcome.evidence : undefined,
101
102
  requiredAction: satisfied ? undefined : constraint.enforcement,
102
103
  checkedAt: new Date(),
103
104
  };
@@ -130,6 +131,7 @@ class ConstraintChecker {
130
131
  severity: this.getSeverity(constraint.level),
131
132
  projectPath: context.projectPath,
132
133
  sessionId: context.sessionId,
134
+ evidence: checkResult.evidence,
133
135
  });
134
136
  }
135
137
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"checker.js","sourceRoot":"","sources":["../../../src/core/constraints/checker.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"checker.js","sourceRoot":"","sources":["../../../src/core/constraints/checker.ts"],"names":[],"mappings":"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"}
@@ -1,21 +1,32 @@
1
1
  /**
2
2
  * capability_sync:CAPABILITIES.md 与代码同步检查(工单 21)
3
3
  *
4
- * 两步验证:
5
- * 1. Git diff 增量 — 当前变更的非测试文件是否在文档中有记录
6
- * 2. 全量扫描 源码根下所有源文件是否都在 CAPABILITIES.md 中(T-058)
4
+ * 两步验证,归因不同(harness#119):
5
+ * 1. Git diff 增量 — 本次变更的非测试文件是否在文档中有记录 → **判违规**(有因果)
6
+ * 2. 全量扫描(T-058)— 源码根下所有源文件是否都在 CAPABILITIES.md 中 → **只出提示**
7
+ *
8
+ * Step 2 不判违规的理由:它是仓库级完备性不变量,与正在被评估的那次变更无因果——
9
+ * 一处历史漏登会让此后每次 module_* 评估恒红(studio 实测 22/22 fail,且因 fail
10
+ * 零证据而无人能定位)。本处保留缺口输出是为了让人看得见、能自己修,而不是为了拦。
11
+ *
12
+ * 已知缺口(ADR-0016「影响」①):降级后仓库级漏登**没有自动拦截点**。`sync-docs --check`
13
+ * 单独跑会点名并 exit 1,但 CI/ship 都按「先 sync-docs 写入、后 --check」的顺序跑
14
+ * (2026-08-08 CI 4 连红固化的顺序),而 file 模式的写入正给缺登记自动补行
15
+ * (`capabilities-syncer` 的 `mode !== 'module'` 分支)、那份写入又不回提——于是流水线里
16
+ * 永远查不到漏登。补这个牙齿归流水线侧(sync 后 git diff 非空即失败),不在本约束里做。
17
+ *
18
+ * 例外:「有表格但零条目」= 文档被清空,判违规(历史门,此前靠 Step 2 兜,现显式化)。
7
19
  *
8
20
  * 覆盖/漏登判定不在本文件实现,统一走 capabilities-reconcile(ADR-0009):
9
21
  * 目录条目(以 / 结尾)前缀匹配,文件条目精确匹配或路径边界后缀匹配;
10
22
  * module 模式下目录条目参与覆盖,未覆盖文件按源码根下第一级子目录聚合。
11
23
  *
12
24
  * 清单格式(计数行,mode=listing 或嗅探命中)无文件表可核对,直接放行;
13
- * 「有表格但零条目」不得放行,无表格的散文文档保持历史放行;
14
- * 检查异常时 fail-open 但输出 console.warn 保留可观测性。
25
+ * 无表格的散文文档保持历史放行;检查异常时 fail-open 但输出 console.warn 保留可观测性。
15
26
  *
16
27
  * ADR-0001 存在性探测:项目根无 CAPABILITIES.md(未采用该约定)时返回 'skip',
17
28
  * 不计 pass/fail,避免在未采用约定的项目上全量误报。
18
29
  */
19
- import type { ConstraintCheck } from './types';
30
+ import { type ConstraintCheck } from './types';
20
31
  export declare const capabilitySync: ConstraintCheck;
21
32
  //# sourceMappingURL=capability-sync.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"capability-sync.d.ts","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/capability-sync.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAQH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE/C,eAAO,MAAM,cAAc,EAAE,eAuD5B,CAAC"}
1
+ {"version":3,"file":"capability-sync.d.ts","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/capability-sync.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4BG;AAQH,OAAO,EAAkB,KAAK,eAAe,EAAE,MAAM,SAAS,CAAC;AAE/D,eAAO,MAAM,cAAc,EAAE,eAkF5B,CAAC"}
@@ -2,17 +2,28 @@
2
2
  /**
3
3
  * capability_sync:CAPABILITIES.md 与代码同步检查(工单 21)
4
4
  *
5
- * 两步验证:
6
- * 1. Git diff 增量 — 当前变更的非测试文件是否在文档中有记录
7
- * 2. 全量扫描 源码根下所有源文件是否都在 CAPABILITIES.md 中(T-058)
5
+ * 两步验证,归因不同(harness#119):
6
+ * 1. Git diff 增量 — 本次变更的非测试文件是否在文档中有记录 → **判违规**(有因果)
7
+ * 2. 全量扫描(T-058)— 源码根下所有源文件是否都在 CAPABILITIES.md 中 → **只出提示**
8
+ *
9
+ * Step 2 不判违规的理由:它是仓库级完备性不变量,与正在被评估的那次变更无因果——
10
+ * 一处历史漏登会让此后每次 module_* 评估恒红(studio 实测 22/22 fail,且因 fail
11
+ * 零证据而无人能定位)。本处保留缺口输出是为了让人看得见、能自己修,而不是为了拦。
12
+ *
13
+ * 已知缺口(ADR-0016「影响」①):降级后仓库级漏登**没有自动拦截点**。`sync-docs --check`
14
+ * 单独跑会点名并 exit 1,但 CI/ship 都按「先 sync-docs 写入、后 --check」的顺序跑
15
+ * (2026-08-08 CI 4 连红固化的顺序),而 file 模式的写入正给缺登记自动补行
16
+ * (`capabilities-syncer` 的 `mode !== 'module'` 分支)、那份写入又不回提——于是流水线里
17
+ * 永远查不到漏登。补这个牙齿归流水线侧(sync 后 git diff 非空即失败),不在本约束里做。
18
+ *
19
+ * 例外:「有表格但零条目」= 文档被清空,判违规(历史门,此前靠 Step 2 兜,现显式化)。
8
20
  *
9
21
  * 覆盖/漏登判定不在本文件实现,统一走 capabilities-reconcile(ADR-0009):
10
22
  * 目录条目(以 / 结尾)前缀匹配,文件条目精确匹配或路径边界后缀匹配;
11
23
  * module 模式下目录条目参与覆盖,未覆盖文件按源码根下第一级子目录聚合。
12
24
  *
13
25
  * 清单格式(计数行,mode=listing 或嗅探命中)无文件表可核对,直接放行;
14
- * 「有表格但零条目」不得放行,无表格的散文文档保持历史放行;
15
- * 检查异常时 fail-open 但输出 console.warn 保留可观测性。
26
+ * 无表格的散文文档保持历史放行;检查异常时 fail-open 但输出 console.warn 保留可观测性。
16
27
  *
17
28
  * ADR-0001 存在性探测:项目根无 CAPABILITIES.md(未采用该约定)时返回 'skip',
18
29
  * 不计 pass/fail,避免在未采用约定的项目上全量误报。
@@ -25,6 +36,7 @@ const capabilities_parser_1 = require("../capabilities-parser");
25
36
  const project_config_loader_1 = require("../../project-config-loader");
26
37
  const detect_source_roots_1 = require("../../../utils/detect-source-roots");
27
38
  const capabilities_reconcile_1 = require("../capabilities-reconcile");
39
+ const types_1 = require("./types");
28
40
  exports.capabilitySync = {
29
41
  id: 'capability_sync',
30
42
  async evaluate(env) {
@@ -55,27 +67,44 @@ exports.capabilitySync = {
55
67
  changedFiles: (0, capabilities_reconcile_1.significantCodeChanges)(diffNames),
56
68
  sourceRoots,
57
69
  });
58
- // 零条目门槛:有表格但什么都没登记时不得直接放行
59
- const gateOpen = verdict.coverageEntries.length === 0 && !verdict.hasTable;
60
- if (gateOpen)
70
+ // 无表格的散文文档:历史放行语义
71
+ if (!verdict.hasTable)
61
72
  return true;
62
- // ── Step 1: Git diff 增量检查(每个变更文件都必须被覆盖)──
63
- if (verdict.uncoveredChanges.length > 0)
64
- return false;
65
- // ── Step 2: 全量源码根扫描(T-058 修复核心)──
66
- if (capabilitiesMode === 'module') {
67
- if (verdict.uncoveredDirs.length > 0)
68
- return false;
73
+ // 文档退化门:有表格却什么都没登记(限定「源码根下确有文件」——空仓 + 空表没有可登记
74
+ // 对象,历史行为是放行,本票不顺手扩大 fail 面)
75
+ if (verdict.coverageEntries.length === 0 && population.length > 0) {
76
+ return {
77
+ pass: false,
78
+ evidence: ['CAPABILITIES.md 有表格但零条目登记,运行 harness sync-docs 或直接补登记'],
79
+ };
69
80
  }
70
- else if (verdict.uncoveredFiles.length > 0) {
71
- return false;
81
+ // ── Step 1: Git diff 增量检查(与本次变更有因果,每个变更文件都必须被覆盖)──
82
+ if (verdict.uncoveredChanges.length > 0) {
83
+ return {
84
+ pass: false,
85
+ evidence: (0, types_1.formatEvidence)(`本次变更有 ${verdict.uncoveredChanges.length} 个文件未登记进 CAPABILITIES.md`, verdict.uncoveredChanges),
86
+ };
87
+ }
88
+ // ── Step 2: 全量源码根扫描(T-058)——仓库级漂移,只提示不判违规,见文件头 ──
89
+ const gaps = capabilitiesMode === 'module' ? verdict.uncoveredDirs : verdict.uncoveredFiles;
90
+ if (gaps.length > 0) {
91
+ const kind = capabilitiesMode === 'module' ? '未登记模块目录' : '未登记源文件';
92
+ return {
93
+ pass: true,
94
+ evidence: (0, types_1.formatEvidence)(`CAPABILITIES.md ${kind} ${gaps.length} 项(仓库级漂移,与本次变更无关;修复: harness sync-docs)`, gaps),
95
+ };
72
96
  }
73
97
  return true;
74
98
  }
75
99
  catch (err) {
76
- // fail-open 语义保留,但必须可观测:静默吞错会让解析 bug 变成「永远通过」
100
+ // fail-open 语义保留,但异常放行也要落地可见:warn 只进本地 stderr,
101
+ // 进不了 trace——静默吞错会让解析 bug 变成「永远通过」(harness#119 同族问题)
102
+ const reason = err instanceof Error ? err.message : String(err);
77
103
  console.warn('[capability_sync] 检查执行异常,默认放行:', err);
78
- return true;
104
+ return {
105
+ pass: true,
106
+ evidence: [`检查异常,按 fail-open 放行: ${reason}(本次结果不代表文档已同步)`],
107
+ };
79
108
  }
80
109
  },
81
110
  };
@@ -1 +1 @@
1
- {"version":3,"file":"capability-sync.js","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/capability-sync.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;GAiBG;;;AAEH,2BAA8C;AAC9C,+BAA4B;AAC5B,gEAAmE;AACnE,uEAAkE;AAClE,4EAAuE;AACvE,sEAA0F;AAG7E,QAAA,cAAc,GAAoB;IAC7C,EAAE,EAAE,iBAAiB;IACrB,KAAK,CAAC,QAAQ,CAAC,GAAG;QAChB,MAAM,WAAW,GAAG,GAAG,CAAC,WAAW,CAAC;QACpC,+DAA+D;QAC/D,IAAI,CAAC,IAAA,eAAU,EAAC,IAAA,WAAI,EAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,EAAE,CAAC;YACtD,OAAO,MAAM,CAAC;QAChB,CAAC;QACD,IAAI,CAAC;YACH,MAAM,gBAAgB,GAAG,IAAA,WAAI,EAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC;YAC9D,MAAM,OAAO,GAAG,IAAA,iBAAY,EAAC,gBAAgB,EAAE,OAAO,CAAC,CAAC;YACxD,MAAM,gBAAgB,GAAG,IAAA,2CAAmB,EAAC,WAAW,CAAC,CAAC;YAE1D,0CAA0C;YAC1C,IAAI,gBAAgB,KAAK,SAAS,IAAI,IAAA,+CAAyB,EAAC,OAAO,CAAC,EAAE,CAAC;gBACzE,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,WAAW,GAAG,IAAA,uCAAiB,EAAC,WAAW,CAAC,CAAC;YACnD,MAAM,UAAU,GAAa,EAAE,CAAC;YAChC,KAAK,MAAM,IAAI,IAAI,WAAW,EAAE,CAAC;gBAC/B,IAAI,IAAA,eAAU,EAAC,IAAA,WAAI,EAAC,WAAW,EAAE,IAAI,CAAC,CAAC,EAAE,CAAC;oBACxC,UAAU,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC;gBACxC,CAAC;YACH,CAAC;YAED,MAAM,SAAS,GAAG,CAAC,MAAM,GAAG,CAAC,eAAe,EAAE,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;YAC5E,MAAM,OAAO,GAAG,IAAA,8CAAqB,EAAC;gBACpC,OAAO;gBACP,eAAe,EAAE,UAAU;gBAC3B,YAAY,EAAE,IAAA,+CAAsB,EAAC,SAAS,CAAC;gBAC/C,WAAW;aACZ,CAAC,CAAC;YAEH,0BAA0B;YAC1B,MAAM,QAAQ,GAAG,OAAO,CAAC,eAAe,CAAC,MAAM,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC;YAC3E,IAAI,QAAQ;gBAAE,OAAO,IAAI,CAAC;YAE1B,2CAA2C;YAC3C,IAAI,OAAO,CAAC,gBAAgB,CAAC,MAAM,GAAG,CAAC;gBAAE,OAAO,KAAK,CAAC;YAEtD,mCAAmC;YACnC,IAAI,gBAAgB,KAAK,QAAQ,EAAE,CAAC;gBAClC,IAAI,OAAO,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;oBAAE,OAAO,KAAK,CAAC;YACrD,CAAC;iBAAM,IAAI,OAAO,CAAC,cAAc,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC7C,OAAO,KAAK,CAAC;YACf,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,8CAA8C;YAC9C,OAAO,CAAC,IAAI,CAAC,gCAAgC,EAAE,GAAG,CAAC,CAAC;YACpD,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;CACF,CAAC"}
1
+ {"version":3,"file":"capability-sync.js","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/capability-sync.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"docs-freshness.d.ts","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/docs-freshness.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AASH,OAAO,KAAK,EAAE,eAAe,EAAY,MAAM,SAAS,CAAC;AAsEzD,eAAO,MAAM,aAAa,EAAE,eA2C3B,CAAC"}
1
+ {"version":3,"file":"docs-freshness.d.ts","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/docs-freshness.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AASH,OAAO,KAAK,EAAE,eAAe,EAAY,MAAM,SAAS,CAAC;AAuEzD,eAAO,MAAM,aAAa,EAAE,eAuD3B,CAAC"}
@@ -15,6 +15,7 @@ const project_config_loader_1 = require("../../project-config-loader");
15
15
  const runner_1 = require("../doc-freshness/runner");
16
16
  const detect_source_roots_1 = require("../../../utils/detect-source-roots");
17
17
  const capabilities_reconcile_1 = require("../capabilities-reconcile");
18
+ const types_1 = require("./types");
18
19
  /**
19
20
  * 内置默认文档新鲜度检查配置
20
21
  *
@@ -90,10 +91,13 @@ exports.docsFreshness = {
90
91
  // Step 1: 文件表格式 — 登记的条目(文件+目录)是否仍存在(ADR-0009)
91
92
  const deadEntries = findDeadCapabilityEntries(projectPath, env);
92
93
  if (deadEntries.length > 0) {
93
- // 报出具体条目:此前只返回 false,CLI 只能打印通用提示,
94
- // 幽灵条目 basename 碰撞时 sync-docs 也不剔除,用户无从定位(2026-08-08 studio CI 4 连红)
95
- console.error(`[docs_freshness] CAPABILITIES.md 登记的条目不存在: ${deadEntries.join(', ')}`);
96
- return false;
94
+ // 证据通道点名条目(harness#119):此前是 console.error 侧信道(2026-08-08 studio
95
+ // CI 4 连红时的临时办法),CLI 结构化输出与 trace 两头都拿不到,
96
+ // 铁律拦截时用户只看到一句通用提示,basename 碰撞下无从定位
97
+ return {
98
+ pass: false,
99
+ evidence: (0, types_1.formatEvidence)('CAPABILITIES.md 登记的条目不存在', deadEntries),
100
+ };
97
101
  }
98
102
  // Step 2: 能力清单格式 + CLAUDE.md + CHANGELOG — 通过 FreshnessRunner
99
103
  try {
@@ -112,8 +116,13 @@ exports.docsFreshness = {
112
116
  else {
113
117
  results = runner.runAll({ checks: getBuiltInDocFreshnessConfig() }, projectPath, { requiredDirs });
114
118
  }
115
- if (!results.every(r => r.pass))
116
- return false;
119
+ const failed = results.filter(r => !r.pass);
120
+ if (failed.length > 0) {
121
+ return {
122
+ pass: false,
123
+ evidence: (0, types_1.formatEvidence)('文档新鲜度检查未通过', failed.map(r => `${r.label}: ${r.message ?? '未通过'}`)),
124
+ };
125
+ }
117
126
  }
118
127
  catch {
119
128
  // FreshnessRunner 失败不影响整体
@@ -1 +1 @@
1
- {"version":3,"file":"docs-freshness.js","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/docs-freshness.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"docs-freshness.js","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/docs-freshness.ts"],"names":[],"mappings":"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"}
@@ -17,6 +17,6 @@ export declare function getConstraintCheck(id: string): ConstraintCheck | undefi
17
17
  * 已注册的检查实现数量(诊断/测试用)
18
18
  */
19
19
  export declare function registeredCheckCount(): number;
20
- export { buildCheckEnv } from './types';
21
- export type { ConstraintCheck, CheckEnv, CheckOutcome, EvidenceProviders } from './types';
20
+ export { buildCheckEnv, normalizeCheckOutcome } from './types';
21
+ export type { ConstraintCheck, CheckEnv, CheckOutcome, CheckDetail, NormalizedOutcome, EvidenceProviders, } from './types';
22
22
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAyD/C;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAE1E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED,OAAO,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACxC,YAAY,EAAE,eAAe,EAAE,QAAQ,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAyD/C;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAE1E;AAED;;GAEG;AACH,wBAAgB,oBAAoB,IAAI,MAAM,CAE7C;AAED,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,SAAS,CAAC;AAC/D,YAAY,EACV,eAAe,EACf,QAAQ,EACR,YAAY,EACZ,WAAW,EACX,iBAAiB,EACjB,iBAAiB,GAClB,MAAM,SAAS,CAAC"}
@@ -9,7 +9,7 @@
9
9
  * 任一不满足即抛错(加载期失败,不许静默 pass)。
10
10
  */
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.buildCheckEnv = void 0;
12
+ exports.normalizeCheckOutcome = exports.buildCheckEnv = void 0;
13
13
  exports.getConstraintCheck = getConstraintCheck;
14
14
  exports.registeredCheckCount = registeredCheckCount;
15
15
  const definitions_1 = require("../definitions");
@@ -67,4 +67,5 @@ function registeredCheckCount() {
67
67
  }
68
68
  var types_1 = require("./types");
69
69
  Object.defineProperty(exports, "buildCheckEnv", { enumerable: true, get: function () { return types_1.buildCheckEnv; } });
70
+ Object.defineProperty(exports, "normalizeCheckOutcome", { enumerable: true, get: function () { return types_1.normalizeCheckOutcome; } });
70
71
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AA+DH,gDAEC;AAKD,oDAEC;AArED,gDAAmD;AAEnD,6CAIsB;AACtB,iEAA4D;AAC5D,qEAAgE;AAChE,uDAAmD;AACnD,yDAAoD;AACpD,qDAAiD;AACjD,yEAAoE;AACpE,+DAA2D;AAE3D,MAAM,MAAM,GAAsB;IAChC,YAAY;IACZ,4CAA+B;IAC/B,gCAAmB;IACnB,+CAAkC;IAClC,6CAAoB;IACpB,8BAAa;IACb,aAAa;IACb,iDAAsB;IACtB,yCAAkB;IAClB,gCAAc;IACd,iCAAc;IACd,wCAAkB;CACnB,CAAC;AAEF,MAAM,QAAQ,GAAG,IAAI,GAAG,CAA0B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAE9E,2CAA2C;AAC3C,eAAe;AACf,2CAA2C;AAE3C,MAAM,gBAAgB,GAAG,IAAA,+BAAiB,GAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;AAE7E,KAAK,MAAM,CAAC,IAAI,gBAAgB,EAAE,CAAC;IACjC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CACb,2CAA2C,CAAC,CAAC,EAAE,gBAAgB;YAC/D,6CAA6C,CAC9C,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,MAAM,EAAE,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;IACjC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CACb,kCAAkC,EAAE,4BAA4B;YAChE,gCAAgC,CACjC,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAgB,kBAAkB,CAAC,EAAU;IAC3C,OAAO,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,SAAgB,oBAAoB;IAClC,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED,iCAAwC;AAA/B,sGAAA,aAAa,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;AA+DH,gDAEC;AAKD,oDAEC;AArED,gDAAmD;AAEnD,6CAIsB;AACtB,iEAA4D;AAC5D,qEAAgE;AAChE,uDAAmD;AACnD,yDAAoD;AACpD,qDAAiD;AACjD,yEAAoE;AACpE,+DAA2D;AAE3D,MAAM,MAAM,GAAsB;IAChC,YAAY;IACZ,4CAA+B;IAC/B,gCAAmB;IACnB,+CAAkC;IAClC,6CAAoB;IACpB,8BAAa;IACb,aAAa;IACb,iDAAsB;IACtB,yCAAkB;IAClB,gCAAc;IACd,iCAAc;IACd,wCAAkB;CACnB,CAAC;AAEF,MAAM,QAAQ,GAAG,IAAI,GAAG,CAA0B,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAE9E,2CAA2C;AAC3C,eAAe;AACf,2CAA2C;AAE3C,MAAM,gBAAgB,GAAG,IAAA,+BAAiB,GAAE,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC;AAE7E,KAAK,MAAM,CAAC,IAAI,gBAAgB,EAAE,CAAC;IACjC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CACb,2CAA2C,CAAC,CAAC,EAAE,gBAAgB;YAC/D,6CAA6C,CAC9C,CAAC;IACJ,CAAC;AACH,CAAC;AAED,KAAK,MAAM,EAAE,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,CAAC;IACjC,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,KAAK,CACb,kCAAkC,EAAE,4BAA4B;YAChE,gCAAgC,CACjC,CAAC;IACJ,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,SAAgB,kBAAkB,CAAC,EAAU;IAC3C,OAAO,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAC1B,CAAC;AAED;;GAEG;AACH,SAAgB,oBAAoB;IAClC,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED,iCAA+D;AAAtD,sGAAA,aAAa,OAAA;AAAE,8GAAA,qBAAqB,OAAA"}
@@ -53,15 +53,54 @@ export declare function buildCheckEnv(context: ConstraintContext, evidence: Evid
53
53
  * - true = 满足(pass)
54
54
  * - false = 违反(fail)
55
55
  * - 'skip' = 未评估(项目未采用对应约定,或证据 flag 未接线),不计 pass/fail
56
+ * - CheckDetail = 判定 + 证据行(harness#119)
56
57
  */
57
- export type CheckOutcome = boolean | 'skip';
58
+ export type CheckOutcome = boolean | 'skip' | CheckDetail;
59
+ /**
60
+ * 带证据的检查结果(harness#119)
61
+ *
62
+ * 动机:只回布尔时,fail 的具体原因(哪个文件没登记)在 CLI 与 trace 两头都落脚不了,
63
+ * 一条恒红的约束无法被诊断。证据行由 checker 自行措辞(自描述、可直接给人看),
64
+ * 编排层只负责透传与打印,不参与解释内容。
65
+ *
66
+ * `pass: true` + 非空 evidence = 「满足但有提示」:不进 pass/fail 统计口径,
67
+ * 仅作为可观测输出(如仓库级文档漂移——与本次变更无因果,不该判违规)。
68
+ */
69
+ export interface CheckDetail {
70
+ /** false = 违反;true = 满足 */
71
+ pass: boolean;
72
+ /** 证据行(每条自描述,如「变更文件未登记: src/foo.ts」) */
73
+ evidence?: string[];
74
+ }
75
+ /** 归一后的检查结果:编排层 / gate 唯一消费形状 */
76
+ export interface NormalizedOutcome {
77
+ satisfied: boolean;
78
+ skipped: boolean;
79
+ evidence: string[];
80
+ }
81
+ /** 证据条数上限:trace 是 JSONL,缺口上百项时不能整仓落盘 */
82
+ export declare const MAX_EVIDENCE_ITEMS = 10;
83
+ /**
84
+ * 组装证据行:一行说明 + 逐条依据(超限截断)
85
+ *
86
+ * 每行自描述且不带缩进——缩进由消费端(CLI / gate 理由 / 铁律异常文案)决定,trace 原样存。
87
+ * 修复入口不写在这里:那是各约束自己的事,写进各自的 summary 行(docs_freshness 的
88
+ * 幽灵条目与 sync-docs 无关,共用一个指针会误导)。
89
+ */
90
+ export declare function formatEvidence(summary: string, items: string[]): string[];
91
+ /**
92
+ * 归一 CheckOutcome(boolean | 'skip' | CheckDetail)为统一形状
93
+ *
94
+ * skip 恒不携带证据:未评估的约束不得留下证据行(否则统计侧会把「没查」读成「查出问题」)。
95
+ */
96
+ export declare function normalizeCheckOutcome(outcome: CheckOutcome): NormalizedOutcome;
58
97
  /**
59
98
  * 单条约束检查实现
60
99
  */
61
100
  export interface ConstraintCheck {
62
101
  /** 约束 ID(与 definitions 一致) */
63
102
  id: string;
64
- /** 检查主体:true = 满足;false = 违反;'skip' = 未评估 */
103
+ /** 检查主体:true = 满足;false = 违反;'skip' = 未评估;CheckDetail = 判定 + 证据行 */
65
104
  evaluate(env: CheckEnv): Promise<CheckOutcome> | CheckOutcome;
66
105
  }
67
106
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE;;;;;GAKG;AACH,MAAM,WAAW,QAAQ;IACvB,2CAA2C;IAC3C,OAAO,EAAE,iBAAiB,CAAC;IAC3B,kDAAkD;IAClD,WAAW,EAAE,MAAM,CAAC;IACpB,qCAAqC;IACrC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,qCAAqC;IACrC,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACnC,gCAAgC;IAChC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACjC;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,qBAAqB;IACrB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,qBAAqB;IACrB,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACnC,kBAAkB;IAClB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACjC;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,iBAAiB,EAC1B,QAAQ,EAAE,iBAAiB,GAAG,MAAM,GACnC,QAAQ,CAYV;AAED;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,MAAM,CAAC;AAE5C;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,8BAA8B;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,6CAA6C;IAC7C,QAAQ,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,YAAY,CAAC;CAC/D;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,GACjD,eAAe,CAEjB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,GAAG,SAAS,GACxD,eAAe,CASjB"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/constraints/checkers/types.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAEnE;;;;;GAKG;AACH,MAAM,WAAW,QAAQ;IACvB,2CAA2C;IAC3C,OAAO,EAAE,iBAAiB,CAAC;IAC3B,kDAAkD;IAClD,WAAW,EAAE,MAAM,CAAC;IACpB,qCAAqC;IACrC,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,qCAAqC;IACrC,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACnC,gCAAgC;IAChC,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACjC;AAED;;;;;GAKG;AACH,MAAM,WAAW,iBAAiB;IAChC,qBAAqB;IACrB,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IAC9B,qBAAqB;IACrB,eAAe,IAAI,OAAO,CAAC,MAAM,CAAC,CAAC;IACnC,kBAAkB;IAClB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;CACjC;AAED;;;;;;;;;GASG;AACH,wBAAgB,aAAa,CAC3B,OAAO,EAAE,iBAAiB,EAC1B,QAAQ,EAAE,iBAAiB,GAAG,MAAM,GACnC,QAAQ,CAYV;AAED;;;;;;GAMG;AACH,MAAM,MAAM,YAAY,GAAG,OAAO,GAAG,MAAM,GAAG,WAAW,CAAC;AAE1D;;;;;;;;;GASG;AACH,MAAM,WAAW,WAAW;IAC1B,2BAA2B;IAC3B,IAAI,EAAE,OAAO,CAAC;IACd,wCAAwC;IACxC,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACrB;AAED,iCAAiC;AACjC,MAAM,WAAW,iBAAiB;IAChC,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,EAAE,CAAC;CACpB;AAED,wCAAwC;AACxC,eAAO,MAAM,kBAAkB,KAAK,CAAC;AAErC;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAIzE;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,YAAY,GAAG,iBAAiB,CAQ9E;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,8BAA8B;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,oEAAoE;IACpE,QAAQ,CAAC,GAAG,EAAE,QAAQ,GAAG,OAAO,CAAC,YAAY,CAAC,GAAG,YAAY,CAAC;CAC/D;AAED;;GAEG;AACH,wBAAgB,WAAW,CACzB,EAAE,EAAE,MAAM,EACV,SAAS,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,GACjD,eAAe,CAEjB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,EAAE,EAAE,MAAM,EACV,IAAI,EAAE,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,GAAG,SAAS,GACxD,eAAe,CASjB"}