@dommaker/harness 0.19.0 → 1.0.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 (348) hide show
  1. package/CHANGELOG.md +14 -0
  2. package/bin/harness.js +136 -557
  3. package/dist/cli/commands/check.d.ts.map +1 -1
  4. package/dist/cli/commands/check.js +2 -13
  5. package/dist/cli/commands/check.js.map +1 -1
  6. package/dist/cli/commands/definitions.d.ts +90 -0
  7. package/dist/cli/commands/definitions.d.ts.map +1 -0
  8. package/dist/cli/commands/definitions.js +519 -0
  9. package/dist/cli/commands/definitions.js.map +1 -0
  10. package/dist/cli/commands/knowledge.js.map +1 -1
  11. package/dist/cli/commands/sync-docs/capabilities-syncer.d.ts +3 -25
  12. package/dist/cli/commands/sync-docs/capabilities-syncer.d.ts.map +1 -1
  13. package/dist/cli/commands/sync-docs/capabilities-syncer.js +3 -93
  14. package/dist/cli/commands/sync-docs/capabilities-syncer.js.map +1 -1
  15. package/dist/cli/commands/sync-docs/index.d.ts +1 -1
  16. package/dist/cli/commands/sync-docs/index.d.ts.map +1 -1
  17. package/dist/cli/commands/sync-docs/index.js +4 -4
  18. package/dist/cli/commands/sync-docs/index.js.map +1 -1
  19. package/dist/context/index.d.ts +1 -5
  20. package/dist/context/index.d.ts.map +1 -1
  21. package/dist/context/index.js +1 -5
  22. package/dist/context/index.js.map +1 -1
  23. package/dist/context/knowledge-injector.d.ts +3 -3
  24. package/dist/context/knowledge-injector.d.ts.map +1 -1
  25. package/dist/context/knowledge-injector.js +1 -1
  26. package/dist/context/session-manager.d.ts +1 -12
  27. package/dist/context/session-manager.d.ts.map +1 -1
  28. package/dist/context/session-manager.js +0 -63
  29. package/dist/context/session-manager.js.map +1 -1
  30. package/dist/context/types.d.ts +1 -39
  31. package/dist/context/types.d.ts.map +1 -1
  32. package/dist/context/types.js +2 -15
  33. package/dist/context/types.js.map +1 -1
  34. package/dist/core/constraints/agent-prompt-renderer.d.ts +1 -1
  35. package/dist/core/constraints/agent-prompt-renderer.js +1 -1
  36. package/dist/core/constraints/capabilities-parser.d.ts +17 -2
  37. package/dist/core/constraints/capabilities-parser.d.ts.map +1 -1
  38. package/dist/core/constraints/capabilities-parser.js +84 -2
  39. package/dist/core/constraints/capabilities-parser.js.map +1 -1
  40. package/dist/core/constraints/checker.d.ts +3 -17
  41. package/dist/core/constraints/checker.d.ts.map +1 -1
  42. package/dist/core/constraints/checker.js +7 -47
  43. package/dist/core/constraints/checker.js.map +1 -1
  44. package/dist/core/constraints/definitions.d.ts +0 -7
  45. package/dist/core/constraints/definitions.d.ts.map +1 -1
  46. package/dist/core/constraints/definitions.js +1 -8
  47. package/dist/core/constraints/definitions.js.map +1 -1
  48. package/dist/core/constraints/doc-freshness/runner.d.ts +0 -2
  49. package/dist/core/constraints/doc-freshness/runner.d.ts.map +1 -1
  50. package/dist/core/constraints/doc-freshness/runner.js.map +1 -1
  51. package/dist/core/constraints/index.d.ts +1 -1
  52. package/dist/core/constraints/index.d.ts.map +1 -1
  53. package/dist/core/constraints/index.js +2 -3
  54. package/dist/core/constraints/index.js.map +1 -1
  55. package/dist/core/constraints/interceptor.d.ts.map +1 -1
  56. package/dist/core/constraints/interceptor.js +1 -5
  57. package/dist/core/constraints/interceptor.js.map +1 -1
  58. package/dist/core/effective-constraints.d.ts.map +1 -1
  59. package/dist/core/effective-constraints.js +0 -1
  60. package/dist/core/effective-constraints.js.map +1 -1
  61. package/dist/core/project-config-loader.d.ts.map +1 -1
  62. package/dist/core/project-config-loader.js +1 -8
  63. package/dist/core/project-config-loader.js.map +1 -1
  64. package/dist/dashboard/stats.d.ts.map +1 -1
  65. package/dist/dashboard/stats.js.map +1 -1
  66. package/dist/dashboard/types.d.ts +2 -2
  67. package/dist/dashboard/types.d.ts.map +1 -1
  68. package/dist/failure/constraint-handler.d.ts.map +1 -1
  69. package/dist/failure/constraint-handler.js +0 -2
  70. package/dist/failure/constraint-handler.js.map +1 -1
  71. package/dist/gates/acceptance.d.ts +9 -1
  72. package/dist/gates/acceptance.d.ts.map +1 -1
  73. package/dist/gates/acceptance.js +21 -0
  74. package/dist/gates/acceptance.js.map +1 -1
  75. package/dist/gates/checker-gate.d.ts +23 -0
  76. package/dist/gates/checker-gate.d.ts.map +1 -0
  77. package/dist/gates/checker-gate.js +53 -0
  78. package/dist/gates/checker-gate.js.map +1 -0
  79. package/dist/gates/command.d.ts +9 -2
  80. package/dist/gates/command.d.ts.map +1 -1
  81. package/dist/gates/command.js +10 -0
  82. package/dist/gates/command.js.map +1 -1
  83. package/dist/gates/contract.d.ts +8 -2
  84. package/dist/gates/contract.d.ts.map +1 -1
  85. package/dist/gates/contract.js +9 -0
  86. package/dist/gates/contract.js.map +1 -1
  87. package/dist/gates/decision.d.ts +17 -0
  88. package/dist/gates/decision.d.ts.map +1 -0
  89. package/dist/gates/decision.js +25 -0
  90. package/dist/gates/decision.js.map +1 -0
  91. package/dist/gates/definitions.d.ts +63 -0
  92. package/dist/gates/definitions.d.ts.map +1 -0
  93. package/dist/gates/definitions.js +160 -0
  94. package/dist/gates/definitions.js.map +1 -0
  95. package/dist/gates/effective-gates.d.ts +30 -0
  96. package/dist/gates/effective-gates.d.ts.map +1 -0
  97. package/dist/gates/effective-gates.js +85 -0
  98. package/dist/gates/effective-gates.js.map +1 -0
  99. package/dist/gates/index.d.ts +25 -1
  100. package/dist/gates/index.d.ts.map +1 -1
  101. package/dist/gates/index.js +37 -1
  102. package/dist/gates/index.js.map +1 -1
  103. package/dist/gates/performance.d.ts +8 -2
  104. package/dist/gates/performance.d.ts.map +1 -1
  105. package/dist/gates/performance.js +9 -0
  106. package/dist/gates/performance.js.map +1 -1
  107. package/dist/gates/registry.d.ts +32 -0
  108. package/dist/gates/registry.d.ts.map +1 -0
  109. package/dist/gates/registry.js +90 -0
  110. package/dist/gates/registry.js.map +1 -0
  111. package/dist/gates/review.d.ts +8 -2
  112. package/dist/gates/review.d.ts.map +1 -1
  113. package/dist/gates/review.js +9 -0
  114. package/dist/gates/review.js.map +1 -1
  115. package/dist/gates/runner.d.ts +30 -0
  116. package/dist/gates/runner.d.ts.map +1 -0
  117. package/dist/gates/runner.js +38 -0
  118. package/dist/gates/runner.js.map +1 -0
  119. package/dist/gates/security.d.ts +8 -2
  120. package/dist/gates/security.d.ts.map +1 -1
  121. package/dist/gates/security.js +9 -0
  122. package/dist/gates/security.js.map +1 -1
  123. package/dist/gates/types.d.ts +41 -1
  124. package/dist/gates/types.d.ts.map +1 -1
  125. package/dist/hooks/bootstrap.d.ts.map +1 -1
  126. package/dist/hooks/bootstrap.js +0 -2
  127. package/dist/hooks/bootstrap.js.map +1 -1
  128. package/dist/hooks/config.d.ts +26 -0
  129. package/dist/hooks/config.d.ts.map +1 -0
  130. package/dist/hooks/config.js +30 -0
  131. package/dist/hooks/config.js.map +1 -0
  132. package/dist/hooks/index.d.ts +2 -1
  133. package/dist/hooks/index.d.ts.map +1 -1
  134. package/dist/hooks/index.js +4 -1
  135. package/dist/hooks/index.js.map +1 -1
  136. package/dist/hooks/registry.d.ts +18 -1
  137. package/dist/hooks/registry.d.ts.map +1 -1
  138. package/dist/hooks/registry.js +45 -0
  139. package/dist/hooks/registry.js.map +1 -1
  140. package/dist/hooks/types.d.ts +20 -0
  141. package/dist/hooks/types.d.ts.map +1 -1
  142. package/dist/index.d.ts +4 -8
  143. package/dist/index.d.ts.map +1 -1
  144. package/dist/index.js +5 -20
  145. package/dist/index.js.map +1 -1
  146. package/dist/knowledge/import.d.ts +2 -2
  147. package/dist/knowledge/import.d.ts.map +1 -1
  148. package/dist/knowledge/ingest.js.map +1 -1
  149. package/dist/knowledge/lifecycle-hooks.d.ts +2 -2
  150. package/dist/knowledge/lifecycle-hooks.d.ts.map +1 -1
  151. package/dist/knowledge/types.d.ts +5 -7
  152. package/dist/knowledge/types.d.ts.map +1 -1
  153. package/dist/knowledge/types.js +1 -1
  154. package/dist/knowledge/types.js.map +1 -1
  155. package/dist/monitoring/constraint-doctor.d.ts +4 -22
  156. package/dist/monitoring/constraint-doctor.d.ts.map +1 -1
  157. package/dist/monitoring/constraint-doctor.js +7 -94
  158. package/dist/monitoring/constraint-doctor.js.map +1 -1
  159. package/dist/presets/standard.d.ts +1 -1
  160. package/dist/presets/standard.d.ts.map +1 -1
  161. package/dist/presets/standard.js +1 -2
  162. package/dist/presets/standard.js.map +1 -1
  163. package/dist/spec/annotation-checker.d.ts.map +1 -1
  164. package/dist/spec/annotation-checker.js +6 -26
  165. package/dist/spec/annotation-checker.js.map +1 -1
  166. package/dist/tools/index.d.ts +0 -4
  167. package/dist/tools/index.d.ts.map +1 -1
  168. package/dist/tools/index.js +0 -4
  169. package/dist/tools/index.js.map +1 -1
  170. package/dist/types/constraint.d.ts +1 -12
  171. package/dist/types/constraint.d.ts.map +1 -1
  172. package/dist/types/constraint.js +0 -3
  173. package/dist/types/constraint.js.map +1 -1
  174. package/dist/types/project-config.d.ts +0 -2
  175. package/dist/types/project-config.d.ts.map +1 -1
  176. package/dist/utils/file-walk.d.ts +2 -2
  177. package/dist/utils/file-walk.js +2 -2
  178. package/package.json +6 -1
  179. package/src/CONTEXT.md +14 -0
  180. package/src/__tests__/checker-extra.test.ts +2 -59
  181. package/src/__tests__/constraint-doctor.test.ts +1 -140
  182. package/src/__tests__/constraint-handler.test.ts +0 -4
  183. package/src/__tests__/project-config-loader-extra.test.ts +0 -20
  184. package/src/__tests__/project-config-loader.test.ts +0 -1
  185. package/src/cli/commands/CONTEXT.md +15 -7
  186. package/src/cli/commands/__tests__/check-drift.test.ts +0 -3
  187. package/src/cli/commands/__tests__/check-skip-output.test.ts +0 -5
  188. package/src/cli/commands/__tests__/check.test.ts +7 -75
  189. package/src/cli/commands/__tests__/registry.test.ts +201 -0
  190. package/src/cli/commands/check.ts +2 -14
  191. package/src/cli/commands/definitions.ts +593 -0
  192. package/src/cli/commands/knowledge.ts +3 -3
  193. package/src/cli/commands/sync-docs/capabilities-syncer.ts +4 -110
  194. package/src/cli/commands/sync-docs/index.ts +8 -5
  195. package/src/context/CONTEXT.md +2 -7
  196. package/src/context/__tests__/session-manager.test.ts +0 -91
  197. package/src/context/index.ts +1 -5
  198. package/src/context/knowledge-injector.ts +3 -3
  199. package/src/context/session-manager.ts +0 -74
  200. package/src/context/types.ts +2 -63
  201. package/src/core/constraints/__tests__/interceptor.test.ts +0 -2
  202. package/src/core/constraints/agent-prompt-renderer.ts +1 -1
  203. package/src/core/constraints/capabilities-parser.ts +95 -2
  204. package/src/core/constraints/checker.ts +8 -53
  205. package/src/core/constraints/definitions.ts +0 -8
  206. package/src/core/constraints/doc-freshness/runner.ts +1 -2
  207. package/src/core/constraints/index.ts +1 -2
  208. package/src/core/constraints/interceptor.ts +1 -6
  209. package/src/core/effective-constraints.ts +0 -1
  210. package/src/core/project-config-loader.ts +1 -7
  211. package/src/dashboard/stats.ts +2 -2
  212. package/src/dashboard/types.ts +2 -2
  213. package/src/failure/constraint-handler.ts +0 -2
  214. package/src/gates/CONTEXT.md +16 -13
  215. package/src/gates/__tests__/checker-gate.test.ts +45 -0
  216. package/src/gates/__tests__/contract.test.ts +73 -0
  217. package/src/gates/__tests__/effective-gates.test.ts +82 -0
  218. package/src/gates/__tests__/gate-interface.test.ts +202 -0
  219. package/src/gates/__tests__/registry.test.ts +87 -0
  220. package/src/gates/__tests__/runner.test.ts +81 -0
  221. package/src/gates/acceptance.ts +24 -1
  222. package/src/gates/checker-gate.ts +54 -0
  223. package/src/gates/command.ts +13 -2
  224. package/src/gates/contract.ts +12 -2
  225. package/src/gates/decision.ts +27 -0
  226. package/src/gates/definitions.ts +207 -0
  227. package/src/gates/effective-gates.ts +106 -0
  228. package/src/gates/index.ts +38 -0
  229. package/src/gates/performance.ts +12 -2
  230. package/src/gates/registry.ts +107 -0
  231. package/src/gates/review.ts +12 -2
  232. package/src/gates/runner.ts +57 -0
  233. package/src/gates/security.ts +12 -2
  234. package/src/gates/types.ts +48 -1
  235. package/src/hooks/CONTEXT.md +12 -2
  236. package/src/hooks/__tests__/bootstrap.test.ts +0 -1
  237. package/src/hooks/__tests__/config.test.ts +19 -0
  238. package/src/hooks/__tests__/pipeline.test.ts +79 -0
  239. package/src/hooks/__tests__/registry.test.ts +67 -0
  240. package/src/hooks/bootstrap.ts +0 -2
  241. package/src/hooks/config.ts +29 -0
  242. package/src/hooks/index.ts +2 -1
  243. package/src/hooks/registry.ts +60 -1
  244. package/src/hooks/types.ts +21 -0
  245. package/src/index.ts +5 -22
  246. package/src/knowledge/import.ts +3 -3
  247. package/src/knowledge/ingest.ts +4 -4
  248. package/src/knowledge/lifecycle-hooks.ts +3 -3
  249. package/src/knowledge/types.ts +5 -8
  250. package/src/monitoring/constraint-doctor.ts +7 -106
  251. package/src/presets/__tests__/standard.test.ts +0 -2
  252. package/src/presets/standard.ts +1 -2
  253. package/src/spec/__tests__/annotation-checker.test.ts +9 -3
  254. package/src/spec/annotation-checker.ts +7 -29
  255. package/src/tools/CONTEXT.md +7 -14
  256. package/src/tools/index.ts +0 -4
  257. package/src/types/constraint.ts +1 -14
  258. package/src/types/project-config.ts +0 -3
  259. package/src/utils/file-walk.ts +2 -2
  260. package/dist/architecture/constraint-engine.d.ts +0 -67
  261. package/dist/architecture/constraint-engine.d.ts.map +0 -1
  262. package/dist/architecture/constraint-engine.js +0 -295
  263. package/dist/architecture/constraint-engine.js.map +0 -1
  264. package/dist/architecture/cross-project-checker.d.ts +0 -54
  265. package/dist/architecture/cross-project-checker.d.ts.map +0 -1
  266. package/dist/architecture/cross-project-checker.js +0 -467
  267. package/dist/architecture/cross-project-checker.js.map +0 -1
  268. package/dist/cli/commands/index.d.ts +0 -30
  269. package/dist/cli/commands/index.d.ts.map +0 -1
  270. package/dist/cli/commands/index.js +0 -91
  271. package/dist/cli/commands/index.js.map +0 -1
  272. package/dist/context/file-budget.d.ts +0 -40
  273. package/dist/context/file-budget.d.ts.map +0 -1
  274. package/dist/context/file-budget.js +0 -147
  275. package/dist/context/file-budget.js.map +0 -1
  276. package/dist/context/progressive-loader.d.ts +0 -109
  277. package/dist/context/progressive-loader.d.ts.map +0 -1
  278. package/dist/context/progressive-loader.js +0 -166
  279. package/dist/context/progressive-loader.js.map +0 -1
  280. package/dist/context/token-pipeline.d.ts +0 -55
  281. package/dist/context/token-pipeline.d.ts.map +0 -1
  282. package/dist/context/token-pipeline.js +0 -220
  283. package/dist/context/token-pipeline.js.map +0 -1
  284. package/dist/context/tool-output-budget.d.ts +0 -59
  285. package/dist/context/tool-output-budget.d.ts.map +0 -1
  286. package/dist/context/tool-output-budget.js +0 -177
  287. package/dist/context/tool-output-budget.js.map +0 -1
  288. package/dist/core/constraints/default-executors.d.ts +0 -10
  289. package/dist/core/constraints/default-executors.d.ts.map +0 -1
  290. package/dist/core/constraints/default-executors.js +0 -120
  291. package/dist/core/constraints/default-executors.js.map +0 -1
  292. package/dist/llm/adapter.d.ts +0 -36
  293. package/dist/llm/adapter.d.ts.map +0 -1
  294. package/dist/llm/adapter.js +0 -118
  295. package/dist/llm/adapter.js.map +0 -1
  296. package/dist/llm/index.d.ts +0 -3
  297. package/dist/llm/index.d.ts.map +0 -1
  298. package/dist/llm/index.js +0 -19
  299. package/dist/llm/index.js.map +0 -1
  300. package/dist/llm/types.d.ts +0 -62
  301. package/dist/llm/types.d.ts.map +0 -1
  302. package/dist/llm/types.js +0 -8
  303. package/dist/llm/types.js.map +0 -1
  304. package/dist/tools/core/index.d.ts +0 -13
  305. package/dist/tools/core/index.d.ts.map +0 -1
  306. package/dist/tools/core/index.js +0 -198
  307. package/dist/tools/core/index.js.map +0 -1
  308. package/dist/tools/loader.d.ts +0 -21
  309. package/dist/tools/loader.d.ts.map +0 -1
  310. package/dist/tools/loader.js +0 -199
  311. package/dist/tools/loader.js.map +0 -1
  312. package/dist/tools/registry.d.ts +0 -59
  313. package/dist/tools/registry.d.ts.map +0 -1
  314. package/dist/tools/registry.js +0 -115
  315. package/dist/tools/registry.js.map +0 -1
  316. package/dist/tools/types.d.ts +0 -38
  317. package/dist/tools/types.d.ts.map +0 -1
  318. package/dist/tools/types.js +0 -6
  319. package/dist/tools/types.js.map +0 -1
  320. package/src/__tests__/architecture-engine.test.ts +0 -619
  321. package/src/__tests__/context/progressive-loader.test.ts +0 -131
  322. package/src/__tests__/cross-project-checker.test.ts +0 -318
  323. package/src/architecture/CONTEXT.md +0 -22
  324. package/src/architecture/constraint-engine.ts +0 -351
  325. package/src/architecture/cross-project-checker.ts +0 -545
  326. package/src/cli/commands/index.ts +0 -30
  327. package/src/context/__tests__/file-budget.test.ts +0 -142
  328. package/src/context/__tests__/progressive-loader.test.ts +0 -264
  329. package/src/context/__tests__/token-pipeline.test.ts +0 -178
  330. package/src/context/__tests__/tool-output-budget.test.ts +0 -95
  331. package/src/context/file-budget.ts +0 -142
  332. package/src/context/progressive-loader.ts +0 -260
  333. package/src/context/token-pipeline.ts +0 -265
  334. package/src/context/tool-output-budget.ts +0 -178
  335. package/src/core/constraints/__tests__/default-executors.test.ts +0 -57
  336. package/src/core/constraints/default-executors.ts +0 -92
  337. package/src/llm/CONTEXT.md +0 -21
  338. package/src/llm/__tests__/adapter.test.ts +0 -172
  339. package/src/llm/adapter.ts +0 -149
  340. package/src/llm/index.ts +0 -2
  341. package/src/llm/types.ts +0 -81
  342. package/src/tools/__tests__/loader.test.ts +0 -252
  343. package/src/tools/__tests__/registry.test.ts +0 -157
  344. package/src/tools/core/__tests__/core.test.ts +0 -122
  345. package/src/tools/core/index.ts +0 -201
  346. package/src/tools/loader.ts +0 -216
  347. package/src/tools/registry.ts +0 -128
  348. package/src/tools/types.ts +0 -46
@@ -1,467 +0,0 @@
1
- "use strict";
2
- /**
3
- * 跨工程接口契约检查
4
- *
5
- * 检测多工程开发时的接口不一致问题
6
- *
7
- * 可通过 CrossProjectConfig 自定义工程依赖关系和契约位置,
8
- * 使此模块适用于任意多工程项目,而非仅限于 agent-studio 生态。
9
- */
10
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
11
- if (k2 === undefined) k2 = k;
12
- var desc = Object.getOwnPropertyDescriptor(m, k);
13
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
14
- desc = { enumerable: true, get: function() { return m[k]; } };
15
- }
16
- Object.defineProperty(o, k2, desc);
17
- }) : (function(o, m, k, k2) {
18
- if (k2 === undefined) k2 = k;
19
- o[k2] = m[k];
20
- }));
21
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
22
- Object.defineProperty(o, "default", { enumerable: true, value: v });
23
- }) : function(o, v) {
24
- o["default"] = v;
25
- });
26
- var __importStar = (this && this.__importStar) || (function () {
27
- var ownKeys = function(o) {
28
- ownKeys = Object.getOwnPropertyNames || function (o) {
29
- var ar = [];
30
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
31
- return ar;
32
- };
33
- return ownKeys(o);
34
- };
35
- return function (mod) {
36
- if (mod && mod.__esModule) return mod;
37
- var result = {};
38
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
39
- __setModuleDefault(result, mod);
40
- return result;
41
- };
42
- })();
43
- Object.defineProperty(exports, "__esModule", { value: true });
44
- exports.checkCrossProjectContracts = checkCrossProjectContracts;
45
- exports.checkDocCodeConsistency = checkDocCodeConsistency;
46
- const exec_1 = require("../utils/exec");
47
- const file_walk_1 = require("../utils/file-walk");
48
- const fs_1 = require("fs");
49
- const path = __importStar(require("path"));
50
- /**
51
- * 默认配置:从 monorepo 结构自动推断依赖关系
52
- */
53
- function getDefaultConfig() {
54
- const fs = require('fs');
55
- const path = require('path');
56
- const cwd = process.cwd();
57
- // 扫描 packages/ 和 apps/ 下的 package.json 获取包名
58
- const dependencies = {};
59
- const contractLocations = {};
60
- for (const dir of ['packages', 'apps']) {
61
- const dirPath = path.join(cwd, dir);
62
- if (!fs.existsSync(dirPath))
63
- continue;
64
- for (const entry of fs.readdirSync(dirPath)) {
65
- const pkgJsonPath = path.join(dirPath, entry, 'package.json');
66
- if (!fs.existsSync(pkgJsonPath))
67
- continue;
68
- try {
69
- const pkgJson = JSON.parse(fs.readFileSync(pkgJsonPath, 'utf-8'));
70
- const name = pkgJson.name || entry;
71
- const deps = Object.keys({
72
- ...pkgJson.dependencies,
73
- ...pkgJson.peerDependencies,
74
- });
75
- // 默认不过滤,全部参与检查。调用方可通过 CrossProjectConfig.dependencyFilter 按需筛选
76
- dependencies[name] = deps;
77
- // 约定:src/api/ 或 src/index.ts 为接口契约位置
78
- const srcDir = path.join(dirPath, entry, 'src');
79
- if (fs.existsSync(srcDir)) {
80
- contractLocations[name] = [path.join(dir, entry, 'src')];
81
- }
82
- }
83
- catch {
84
- // package.json 解析失败,跳过
85
- }
86
- }
87
- }
88
- return { dependencies, contractLocations };
89
- }
90
- /**
91
- * 检查跨工程接口一致性
92
- *
93
- * @param context 跨工程上下文
94
- * @param config 工程依赖关系和契约位置配置(可选,默认从 monorepo 自动推断)
95
- */
96
- async function checkCrossProjectContracts(context, config) {
97
- const violations = [];
98
- const cfg = config || getDefaultConfig();
99
- // 1. 检查 API 变更是否同步到调用方
100
- violations.push(...await checkApiSync(context, cfg));
101
- // 2. 检查类型定义一致性
102
- violations.push(...await checkTypeConsistency(context, cfg));
103
- // 3. 检查破坏性变更
104
- violations.push(...await checkBreakingChanges(context, cfg));
105
- return violations;
106
- }
107
- /**
108
- * 检查 API 变更同步
109
- */
110
- async function checkApiSync(context, config) {
111
- const violations = [];
112
- for (const project of context.changedProjects) {
113
- const dependents = getDependents(project, config);
114
- const apiChanges = await getApiChanges(project, context.baseBranch);
115
- for (const change of apiChanges) {
116
- for (const dependent of dependents) {
117
- const dependentUpdated = context.changedFiles.some(f => f.includes(`${dependent}/src/`));
118
- if (!dependentUpdated && isPublicApi(change)) {
119
- violations.push({
120
- type: 'api-mismatch',
121
- severity: 'error',
122
- message: `'${project}' API '${change.name}' 变更未同步到 '${dependent}'`,
123
- fromProject: project,
124
- toProject: dependent,
125
- details: {
126
- interfaceName: change.name,
127
- location: change.file,
128
- },
129
- });
130
- }
131
- }
132
- }
133
- }
134
- return violations;
135
- }
136
- /**
137
- * 检查类型定义一致性
138
- */
139
- async function checkTypeConsistency(context, config) {
140
- const violations = [];
141
- for (const [pair] of Object.entries(config.contractLocations)) {
142
- const [from, to] = pair.split('-');
143
- if (!context.changedProjects.includes(from) && !context.changedProjects.includes(to)) {
144
- continue;
145
- }
146
- const fromTypes = extractExportedTypes(from);
147
- const toUsage = extractTypeUsage(to, fromTypes);
148
- for (const [typeName, usage] of Object.entries(toUsage)) {
149
- if (usage.hasMismatch) {
150
- violations.push({
151
- type: 'doc-code-mismatch',
152
- severity: 'error',
153
- message: `类型 '${typeName}' 在 ${to} 中的使用与 ${from} 定义不一致`,
154
- fromProject: from,
155
- toProject: to,
156
- details: {
157
- interfaceName: typeName,
158
- expectedType: usage.expected,
159
- actualType: usage.actual,
160
- },
161
- });
162
- }
163
- }
164
- }
165
- return violations;
166
- }
167
- /**
168
- * 检查破坏性变更
169
- */
170
- async function checkBreakingChanges(context, config) {
171
- const violations = [];
172
- for (const project of context.changedProjects) {
173
- const dependents = getDependents(project, config);
174
- for (const change of await getApiChanges(project, context.baseBranch)) {
175
- if (isBreakingChange(change)) {
176
- // 检查所有依赖方是否已适配
177
- for (const dependent of dependents) {
178
- const adapted = context.changedProjects.includes(dependent);
179
- if (!adapted) {
180
- violations.push({
181
- type: 'breaking-change',
182
- severity: 'error',
183
- message: `破坏性变更 '${change.name}' 需要 ${dependent} 适配`,
184
- fromProject: project,
185
- toProject: dependent,
186
- details: {
187
- interfaceName: change.name,
188
- location: change.file,
189
- },
190
- });
191
- }
192
- }
193
- }
194
- }
195
- }
196
- return violations;
197
- }
198
- /**
199
- * 检查文档-代码一致性
200
- * 场景:文档写了接口,代码没实现
201
- */
202
- async function checkDocCodeConsistency(docPath, projects) {
203
- const violations = [];
204
- // 解析文档中的接口定义
205
- const docInterfaces = parseDocInterfaces(docPath);
206
- for (const [project, interfaces] of Object.entries(docInterfaces)) {
207
- if (!projects.includes(project))
208
- continue;
209
- const actualExports = extractExportedApis(project);
210
- for (const docInterface of interfaces) {
211
- const implemented = actualExports.find(e => e.name === docInterface.name);
212
- if (!implemented) {
213
- violations.push({
214
- type: 'missing-implementation',
215
- severity: 'error',
216
- message: `文档接口 '${docInterface.name}' 在 ${project} 中未实现`,
217
- fromProject: 'documentation',
218
- toProject: project,
219
- details: {
220
- interfaceName: docInterface.name,
221
- location: docPath,
222
- },
223
- });
224
- }
225
- else if (!isCompatible(docInterface, implemented)) {
226
- violations.push({
227
- type: 'doc-code-mismatch',
228
- severity: 'warning',
229
- message: `接口 '${docInterface.name}' 实现与文档不一致`,
230
- fromProject: 'documentation',
231
- toProject: project,
232
- details: {
233
- interfaceName: docInterface.name,
234
- expectedType: JSON.stringify(docInterface.signature),
235
- actualType: JSON.stringify(implemented.signature),
236
- },
237
- });
238
- }
239
- }
240
- }
241
- return violations;
242
- }
243
- // ============ 辅助函数 ============
244
- async function getApiChanges(project, baseBranch) {
245
- try {
246
- const projectPath = resolveProjectPath(project);
247
- const output = await (0, exec_1.runCommand)(`git diff ${baseBranch}...HEAD --name-only -- "${projectPath}/src/"`);
248
- const files = output.trim().split('\n').filter(f => f);
249
- return Promise.all(files.map(async (f) => ({
250
- file: f,
251
- name: extractApiName(f),
252
- changeType: await detectChangeType(f, baseBranch),
253
- })));
254
- }
255
- catch {
256
- return [];
257
- }
258
- }
259
- function isPublicApi(change) {
260
- // 检查是否为公开 API(导出、非内部)
261
- return !change.name.startsWith('_') && !change.file.includes('/internal/');
262
- }
263
- function isBreakingChange(change) {
264
- // 检测是否为破坏性变更
265
- return change.changeType === 'remove' ||
266
- change.changeType === 'signature-change' ||
267
- change.changeType === 'rename';
268
- }
269
- function getDependents(project, config) {
270
- return Object.entries(config.dependencies)
271
- .filter(([, deps]) => deps.includes(project))
272
- .map(([name]) => name);
273
- }
274
- // ============ 辅助函数实现 ============
275
- function extractApiName(file) {
276
- return path.basename(file, '.ts');
277
- }
278
- async function detectChangeType(file, baseBranch) {
279
- try {
280
- const statusOutput = await (0, exec_1.runCommand)(`git diff ${baseBranch}...HEAD --name-status -- "${file}"`);
281
- const statusLine = statusOutput.trim().split('\n')[0];
282
- if (!statusLine)
283
- return 'modify';
284
- const statusCode = statusLine.charAt(0);
285
- if (statusCode === 'A')
286
- return 'add';
287
- if (statusCode === 'D')
288
- return 'remove';
289
- if (statusCode === 'R')
290
- return 'rename';
291
- // M (modified) — check if export signatures changed
292
- if (statusCode === 'M') {
293
- const diff = await (0, exec_1.runCommand)(`git diff ${baseBranch}...HEAD -- "${file}"`);
294
- const signaturePattern = /^[+-]\s*export\s+(?:async\s+)?(?:function|interface|type|class|enum)\s+\w+/m;
295
- if (signaturePattern.test(diff)) {
296
- return 'signature-change';
297
- }
298
- }
299
- return 'modify';
300
- }
301
- catch {
302
- return 'modify';
303
- }
304
- }
305
- function extractExportedTypes(project) {
306
- const projectPath = resolveProjectPath(project);
307
- const srcDir = path.join(projectPath, 'src');
308
- const files = (0, file_walk_1.findTsSourceFiles)(srcDir);
309
- const types = new Set();
310
- for (const file of files) {
311
- try {
312
- const content = (0, fs_1.readFileSync)(file, 'utf-8');
313
- const regex = /export\s+(?:interface|type|enum)\s+(\w+)/g;
314
- let match;
315
- while ((match = regex.exec(content)) !== null) {
316
- types.add(match[1]);
317
- }
318
- }
319
- catch {
320
- // 文件读取失败,跳过
321
- }
322
- }
323
- return [...types];
324
- }
325
- function extractTypeUsage(project, types) {
326
- const projectPath = resolveProjectPath(project);
327
- const srcDir = path.join(projectPath, 'src');
328
- const files = (0, file_walk_1.findTsSourceFiles)(srcDir);
329
- const result = {};
330
- for (const typeName of types) {
331
- let importedIn = false;
332
- let usedIn = false;
333
- for (const file of files) {
334
- try {
335
- const content = (0, fs_1.readFileSync)(file, 'utf-8');
336
- // 检查是否导入了该类型
337
- const importRegex = new RegExp(`import\\s+(?:type\\s+)?\\{[^}]*\\b${typeName}\\b[^}]*\\}\\s+from`);
338
- if (importRegex.test(content)) {
339
- importedIn = true;
340
- // 检查是否在 import 行之外使用了该类型
341
- const lines = content.split('\n');
342
- for (const line of lines) {
343
- if (line.trim().startsWith('import '))
344
- continue;
345
- if (new RegExp(`\\b${typeName}\\b`).test(line)) {
346
- usedIn = true;
347
- break;
348
- }
349
- }
350
- }
351
- }
352
- catch {
353
- // 文件读取失败,跳过
354
- }
355
- }
356
- // 导入但未使用 → 可能是版本不一致
357
- if (importedIn && !usedIn) {
358
- result[typeName] = { hasMismatch: true, expected: typeName, actual: 'unused import' };
359
- }
360
- }
361
- return result;
362
- }
363
- function parseDocInterfaces(docPath) {
364
- if (!(0, fs_1.existsSync)(docPath))
365
- return {};
366
- try {
367
- const content = (0, fs_1.readFileSync)(docPath, 'utf-8');
368
- const lines = content.split('\n');
369
- const result = {};
370
- let currentProject = null;
371
- for (const line of lines) {
372
- // 匹配 ## project-name
373
- const headerMatch = line.match(/^##\s+(\S[\w-]*)/);
374
- if (headerMatch) {
375
- currentProject = headerMatch[1];
376
- if (!result[currentProject])
377
- result[currentProject] = [];
378
- continue;
379
- }
380
- // 匹配 - `functionName(params): returnType`
381
- if (currentProject) {
382
- const sigMatch = line.match(/^-\s+`([^`]+)`/);
383
- if (sigMatch) {
384
- const signature = sigMatch[1];
385
- const nameMatch = signature.match(/^(\w+)\s*\(/);
386
- const name = nameMatch ? nameMatch[1] : signature;
387
- result[currentProject].push({ name, signature });
388
- }
389
- }
390
- }
391
- return result;
392
- }
393
- catch {
394
- return {};
395
- }
396
- }
397
- function extractExportedApis(project) {
398
- const projectPath = resolveProjectPath(project);
399
- const srcDir = path.join(projectPath, 'src');
400
- const files = (0, file_walk_1.findTsSourceFiles)(srcDir);
401
- const apis = [];
402
- const seen = new Set();
403
- for (const file of files) {
404
- try {
405
- const content = (0, fs_1.readFileSync)(file, 'utf-8');
406
- // export function / export async function
407
- const funcRegex = /export\s+(?:async\s+)?function\s+(\w+)\s*\(([^)]*)\)(?::\s*(\S+))?/g;
408
- let match;
409
- while ((match = funcRegex.exec(content)) !== null) {
410
- const name = match[1];
411
- if (seen.has(name))
412
- continue;
413
- seen.add(name);
414
- const params = match[2] ? match[2].trim() : '';
415
- const returnType = match[3] || 'void';
416
- apis.push({ name, signature: `${name}(${params}): ${returnType}` });
417
- }
418
- // export class
419
- const classRegex = /export\s+class\s+(\w+)/g;
420
- while ((match = classRegex.exec(content)) !== null) {
421
- const name = match[1];
422
- if (!seen.has(name)) {
423
- seen.add(name);
424
- apis.push({ name, signature: name });
425
- }
426
- }
427
- // export const arrow functions
428
- const arrowRegex = /export\s+const\s+(\w+)\s*=\s*(?:async\s+)?\(/g;
429
- while ((match = arrowRegex.exec(content)) !== null) {
430
- const name = match[1];
431
- if (!seen.has(name)) {
432
- seen.add(name);
433
- apis.push({ name, signature: name });
434
- }
435
- }
436
- }
437
- catch {
438
- // 文件读取失败,跳过
439
- }
440
- }
441
- return apis;
442
- }
443
- function isCompatible(doc, actual) {
444
- return JSON.stringify(doc.signature) === JSON.stringify(actual.signature);
445
- }
446
- /**
447
- * 解析项目在 monorepo 中的实际路径
448
- * 支持 packages/xxx、apps/xxx、projects/xxx 三种常见结构
449
- * 按优先级返回第一个存在的路径;都不存在时返回第一个候选(git 命令会优雅处理)
450
- */
451
- function resolveProjectPath(project) {
452
- // 包名可能是 @scope/name 格式,取最后部分作为目录名
453
- const dirName = project.includes('/') ? project.split('/').pop() : project;
454
- const candidates = [
455
- path.join('packages', dirName),
456
- path.join('apps', dirName),
457
- path.join('projects', dirName),
458
- path.join('packages', project), // 完整包名
459
- ];
460
- for (const candidate of candidates) {
461
- if ((0, fs_1.existsSync)(candidate))
462
- return candidate;
463
- }
464
- // 都不存在时返回第一个候选(git 命令对不存在路径返回空,不会报错)
465
- return candidates[0];
466
- }
467
- //# sourceMappingURL=cross-project-checker.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cross-project-checker.js","sourceRoot":"","sources":["../../src/architecture/cross-project-checker.ts"],"names":[],"mappings":"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"}
@@ -1,30 +0,0 @@
1
- /**
2
- * CLI 命令导出
3
- */
4
- export { check, listLaws, type CheckOptions } from './check';
5
- export { validate, createExampleCheckpoint, DEFAULT_CHECKPOINTS, type ValidateOptions } from './validate';
6
- export { runPassesGate, checkCoverage, type PassesGateOptions } from './passes-gate';
7
- export { init, type InitOptions } from './init';
8
- export { report, type ReportOptions } from './report';
9
- export { status, type StatusOptions } from './status';
10
- export { specValidate, listSpecTypes, type SpecValidateOptions } from './spec';
11
- export { acceptance, listAcceptanceCriteria, type AcceptanceOptions } from './acceptance';
12
- export { performance, type PerformanceOptions } from './performance';
13
- export { security, auditDetails, type SecurityOptions } from './security';
14
- export { contract, validateSchema, type ContractOptions } from './contract';
15
- export { review, reviewStatus, type ReviewOptions } from './review';
16
- export { executeCommand, type CommandCheckOptions } from './command';
17
- export { syncDocs, type SyncDocsOptions } from './sync-docs';
18
- export { knowledgeList, knowledgeSearch, knowledgeImport, knowledgeDecay, knowledgeStats, knowledgeUpsert, knowledgeSyncStatus, knowledgeSyncRag, knowledgeAudit, knowledgeSnapshot, knowledgeMigrate, knowledgeHealth, knowledgeIndex, type KnowledgeOptions, type KnowledgeUpsertOptions } from './knowledge';
19
- export { failureList, failureStats, failureClear, type FailureOptions } from './failure';
20
- export { postevalPlan, type PostEvalPlanOptions } from './posteval-plan';
21
- export { release, type ReleaseOptions } from './release';
22
- export { analyzeSessions, type AnalyzeSessionsOptions } from './analyze-sessions';
23
- export { updateUserModel, type UpdateUserModelOptions } from './update-user-model';
24
- export { constraints, getConstraintsMeta, type ConstraintsMeta } from './constraints';
25
- export { constraintsReport, renderExportMarkdown, type ConstraintsReportOptions } from './constraints-report';
26
- export { constraintsRetire, retireConstraint, runRetireInteractive, printRetireResult, type ConstraintsRetireOptions, type RetireResult, type RetireStatus } from './constraints-retire';
27
- export { docFreshnessCheck, extractClaims, verifyClaims, type DocFreshnessCheckOptions, type ClaimResult, type ClaimType } from './doc-freshness-check';
28
- export { specBaselineCheck, extractBaselineSection, type SpecBaselineCheckOptions, type PrerequisiteResult } from './spec-baseline-check';
29
- export { sddIndex, type SDDOptions } from './sdd';
30
- //# sourceMappingURL=index.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,YAAY,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAE,QAAQ,EAAE,uBAAuB,EAAE,mBAAmB,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AAC1G,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,KAAK,iBAAiB,EAAE,MAAM,eAAe,CAAC;AACrF,OAAO,EAAE,IAAI,EAAE,KAAK,WAAW,EAAE,MAAM,QAAQ,CAAC;AAChD,OAAO,EAAE,MAAM,EAAE,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,MAAM,EAAE,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,KAAK,mBAAmB,EAAE,MAAM,QAAQ,CAAC;AAC/E,OAAO,EAAE,UAAU,EAAE,sBAAsB,EAAE,KAAK,iBAAiB,EAAE,MAAM,cAAc,CAAC;AAC1F,OAAO,EAAE,WAAW,EAAE,KAAK,kBAAkB,EAAE,MAAM,eAAe,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AAC1E,OAAO,EAAE,QAAQ,EAAE,cAAc,EAAE,KAAK,eAAe,EAAE,MAAM,YAAY,CAAC;AAC5E,OAAO,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,aAAa,EAAE,MAAM,UAAU,CAAC;AACpE,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,MAAM,WAAW,CAAC;AACrE,OAAO,EAAE,QAAQ,EAAE,KAAK,eAAe,EAAE,MAAM,aAAa,CAAC;AAC7D,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,eAAe,EAAE,cAAc,EAAE,cAAc,EAAE,eAAe,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,cAAc,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,eAAe,EAAE,cAAc,EAAE,KAAK,gBAAgB,EAAE,KAAK,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAChT,OAAO,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AACzF,OAAO,EAAE,YAAY,EAAE,KAAK,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACzE,OAAO,EAAE,OAAO,EAAE,KAAK,cAAc,EAAE,MAAM,WAAW,CAAC;AACzD,OAAO,EAAE,eAAe,EAAE,KAAK,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAClF,OAAO,EAAE,eAAe,EAAE,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAC;AACnF,OAAO,EAAE,WAAW,EAAE,kBAAkB,EAAE,KAAK,eAAe,EAAE,MAAM,eAAe,CAAC;AACtF,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,KAAK,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAC9G,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,oBAAoB,EAAE,iBAAiB,EAAE,KAAK,wBAAwB,EAAE,KAAK,YAAY,EAAE,KAAK,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACzL,OAAO,EAAE,iBAAiB,EAAE,aAAa,EAAE,YAAY,EAAE,KAAK,wBAAwB,EAAE,KAAK,WAAW,EAAE,KAAK,SAAS,EAAE,MAAM,uBAAuB,CAAC;AACxJ,OAAO,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,KAAK,wBAAwB,EAAE,KAAK,kBAAkB,EAAE,MAAM,uBAAuB,CAAC;AAC1I,OAAO,EAAE,QAAQ,EAAE,KAAK,UAAU,EAAE,MAAM,OAAO,CAAC"}
@@ -1,91 +0,0 @@
1
- "use strict";
2
- /**
3
- * CLI 命令导出
4
- */
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.runRetireInteractive = exports.retireConstraint = exports.constraintsRetire = exports.renderExportMarkdown = exports.constraintsReport = exports.getConstraintsMeta = exports.constraints = exports.updateUserModel = exports.analyzeSessions = exports.release = exports.postevalPlan = exports.failureClear = exports.failureStats = exports.failureList = exports.knowledgeIndex = exports.knowledgeHealth = exports.knowledgeMigrate = exports.knowledgeSnapshot = exports.knowledgeAudit = exports.knowledgeSyncRag = exports.knowledgeSyncStatus = exports.knowledgeUpsert = exports.knowledgeStats = exports.knowledgeDecay = exports.knowledgeImport = exports.knowledgeSearch = exports.knowledgeList = exports.syncDocs = exports.executeCommand = exports.reviewStatus = exports.review = exports.validateSchema = exports.contract = exports.auditDetails = exports.security = exports.performance = exports.listAcceptanceCriteria = exports.acceptance = exports.listSpecTypes = exports.specValidate = exports.status = exports.report = exports.init = exports.checkCoverage = exports.runPassesGate = exports.DEFAULT_CHECKPOINTS = exports.createExampleCheckpoint = exports.validate = exports.listLaws = exports.check = void 0;
7
- exports.sddIndex = exports.extractBaselineSection = exports.specBaselineCheck = exports.verifyClaims = exports.extractClaims = exports.docFreshnessCheck = exports.printRetireResult = void 0;
8
- var check_1 = require("./check");
9
- Object.defineProperty(exports, "check", { enumerable: true, get: function () { return check_1.check; } });
10
- Object.defineProperty(exports, "listLaws", { enumerable: true, get: function () { return check_1.listLaws; } });
11
- var validate_1 = require("./validate");
12
- Object.defineProperty(exports, "validate", { enumerable: true, get: function () { return validate_1.validate; } });
13
- Object.defineProperty(exports, "createExampleCheckpoint", { enumerable: true, get: function () { return validate_1.createExampleCheckpoint; } });
14
- Object.defineProperty(exports, "DEFAULT_CHECKPOINTS", { enumerable: true, get: function () { return validate_1.DEFAULT_CHECKPOINTS; } });
15
- var passes_gate_1 = require("./passes-gate");
16
- Object.defineProperty(exports, "runPassesGate", { enumerable: true, get: function () { return passes_gate_1.runPassesGate; } });
17
- Object.defineProperty(exports, "checkCoverage", { enumerable: true, get: function () { return passes_gate_1.checkCoverage; } });
18
- var init_1 = require("./init");
19
- Object.defineProperty(exports, "init", { enumerable: true, get: function () { return init_1.init; } });
20
- var report_1 = require("./report");
21
- Object.defineProperty(exports, "report", { enumerable: true, get: function () { return report_1.report; } });
22
- var status_1 = require("./status");
23
- Object.defineProperty(exports, "status", { enumerable: true, get: function () { return status_1.status; } });
24
- var spec_1 = require("./spec");
25
- Object.defineProperty(exports, "specValidate", { enumerable: true, get: function () { return spec_1.specValidate; } });
26
- Object.defineProperty(exports, "listSpecTypes", { enumerable: true, get: function () { return spec_1.listSpecTypes; } });
27
- var acceptance_1 = require("./acceptance");
28
- Object.defineProperty(exports, "acceptance", { enumerable: true, get: function () { return acceptance_1.acceptance; } });
29
- Object.defineProperty(exports, "listAcceptanceCriteria", { enumerable: true, get: function () { return acceptance_1.listAcceptanceCriteria; } });
30
- var performance_1 = require("./performance");
31
- Object.defineProperty(exports, "performance", { enumerable: true, get: function () { return performance_1.performance; } });
32
- var security_1 = require("./security");
33
- Object.defineProperty(exports, "security", { enumerable: true, get: function () { return security_1.security; } });
34
- Object.defineProperty(exports, "auditDetails", { enumerable: true, get: function () { return security_1.auditDetails; } });
35
- var contract_1 = require("./contract");
36
- Object.defineProperty(exports, "contract", { enumerable: true, get: function () { return contract_1.contract; } });
37
- Object.defineProperty(exports, "validateSchema", { enumerable: true, get: function () { return contract_1.validateSchema; } });
38
- var review_1 = require("./review");
39
- Object.defineProperty(exports, "review", { enumerable: true, get: function () { return review_1.review; } });
40
- Object.defineProperty(exports, "reviewStatus", { enumerable: true, get: function () { return review_1.reviewStatus; } });
41
- var command_1 = require("./command");
42
- Object.defineProperty(exports, "executeCommand", { enumerable: true, get: function () { return command_1.executeCommand; } });
43
- var sync_docs_1 = require("./sync-docs");
44
- Object.defineProperty(exports, "syncDocs", { enumerable: true, get: function () { return sync_docs_1.syncDocs; } });
45
- var knowledge_1 = require("./knowledge");
46
- Object.defineProperty(exports, "knowledgeList", { enumerable: true, get: function () { return knowledge_1.knowledgeList; } });
47
- Object.defineProperty(exports, "knowledgeSearch", { enumerable: true, get: function () { return knowledge_1.knowledgeSearch; } });
48
- Object.defineProperty(exports, "knowledgeImport", { enumerable: true, get: function () { return knowledge_1.knowledgeImport; } });
49
- Object.defineProperty(exports, "knowledgeDecay", { enumerable: true, get: function () { return knowledge_1.knowledgeDecay; } });
50
- Object.defineProperty(exports, "knowledgeStats", { enumerable: true, get: function () { return knowledge_1.knowledgeStats; } });
51
- Object.defineProperty(exports, "knowledgeUpsert", { enumerable: true, get: function () { return knowledge_1.knowledgeUpsert; } });
52
- Object.defineProperty(exports, "knowledgeSyncStatus", { enumerable: true, get: function () { return knowledge_1.knowledgeSyncStatus; } });
53
- Object.defineProperty(exports, "knowledgeSyncRag", { enumerable: true, get: function () { return knowledge_1.knowledgeSyncRag; } });
54
- Object.defineProperty(exports, "knowledgeAudit", { enumerable: true, get: function () { return knowledge_1.knowledgeAudit; } });
55
- Object.defineProperty(exports, "knowledgeSnapshot", { enumerable: true, get: function () { return knowledge_1.knowledgeSnapshot; } });
56
- Object.defineProperty(exports, "knowledgeMigrate", { enumerable: true, get: function () { return knowledge_1.knowledgeMigrate; } });
57
- Object.defineProperty(exports, "knowledgeHealth", { enumerable: true, get: function () { return knowledge_1.knowledgeHealth; } });
58
- Object.defineProperty(exports, "knowledgeIndex", { enumerable: true, get: function () { return knowledge_1.knowledgeIndex; } });
59
- var failure_1 = require("./failure");
60
- Object.defineProperty(exports, "failureList", { enumerable: true, get: function () { return failure_1.failureList; } });
61
- Object.defineProperty(exports, "failureStats", { enumerable: true, get: function () { return failure_1.failureStats; } });
62
- Object.defineProperty(exports, "failureClear", { enumerable: true, get: function () { return failure_1.failureClear; } });
63
- var posteval_plan_1 = require("./posteval-plan");
64
- Object.defineProperty(exports, "postevalPlan", { enumerable: true, get: function () { return posteval_plan_1.postevalPlan; } });
65
- var release_1 = require("./release");
66
- Object.defineProperty(exports, "release", { enumerable: true, get: function () { return release_1.release; } });
67
- var analyze_sessions_1 = require("./analyze-sessions");
68
- Object.defineProperty(exports, "analyzeSessions", { enumerable: true, get: function () { return analyze_sessions_1.analyzeSessions; } });
69
- var update_user_model_1 = require("./update-user-model");
70
- Object.defineProperty(exports, "updateUserModel", { enumerable: true, get: function () { return update_user_model_1.updateUserModel; } });
71
- var constraints_1 = require("./constraints");
72
- Object.defineProperty(exports, "constraints", { enumerable: true, get: function () { return constraints_1.constraints; } });
73
- Object.defineProperty(exports, "getConstraintsMeta", { enumerable: true, get: function () { return constraints_1.getConstraintsMeta; } });
74
- var constraints_report_1 = require("./constraints-report");
75
- Object.defineProperty(exports, "constraintsReport", { enumerable: true, get: function () { return constraints_report_1.constraintsReport; } });
76
- Object.defineProperty(exports, "renderExportMarkdown", { enumerable: true, get: function () { return constraints_report_1.renderExportMarkdown; } });
77
- var constraints_retire_1 = require("./constraints-retire");
78
- Object.defineProperty(exports, "constraintsRetire", { enumerable: true, get: function () { return constraints_retire_1.constraintsRetire; } });
79
- Object.defineProperty(exports, "retireConstraint", { enumerable: true, get: function () { return constraints_retire_1.retireConstraint; } });
80
- Object.defineProperty(exports, "runRetireInteractive", { enumerable: true, get: function () { return constraints_retire_1.runRetireInteractive; } });
81
- Object.defineProperty(exports, "printRetireResult", { enumerable: true, get: function () { return constraints_retire_1.printRetireResult; } });
82
- var doc_freshness_check_1 = require("./doc-freshness-check");
83
- Object.defineProperty(exports, "docFreshnessCheck", { enumerable: true, get: function () { return doc_freshness_check_1.docFreshnessCheck; } });
84
- Object.defineProperty(exports, "extractClaims", { enumerable: true, get: function () { return doc_freshness_check_1.extractClaims; } });
85
- Object.defineProperty(exports, "verifyClaims", { enumerable: true, get: function () { return doc_freshness_check_1.verifyClaims; } });
86
- var spec_baseline_check_1 = require("./spec-baseline-check");
87
- Object.defineProperty(exports, "specBaselineCheck", { enumerable: true, get: function () { return spec_baseline_check_1.specBaselineCheck; } });
88
- Object.defineProperty(exports, "extractBaselineSection", { enumerable: true, get: function () { return spec_baseline_check_1.extractBaselineSection; } });
89
- var sdd_1 = require("./sdd");
90
- Object.defineProperty(exports, "sddIndex", { enumerable: true, get: function () { return sdd_1.sddIndex; } });
91
- //# sourceMappingURL=index.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/cli/commands/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;AAEH,iCAA6D;AAApD,8FAAA,KAAK,OAAA;AAAE,iGAAA,QAAQ,OAAA;AACxB,uCAA0G;AAAjG,oGAAA,QAAQ,OAAA;AAAE,mHAAA,uBAAuB,OAAA;AAAE,+GAAA,mBAAmB,OAAA;AAC/D,6CAAqF;AAA5E,4GAAA,aAAa,OAAA;AAAE,4GAAA,aAAa,OAAA;AACrC,+BAAgD;AAAvC,4FAAA,IAAI,OAAA;AACb,mCAAsD;AAA7C,gGAAA,MAAM,OAAA;AACf,mCAAsD;AAA7C,gGAAA,MAAM,OAAA;AACf,+BAA+E;AAAtE,oGAAA,YAAY,OAAA;AAAE,qGAAA,aAAa,OAAA;AACpC,2CAA0F;AAAjF,wGAAA,UAAU,OAAA;AAAE,oHAAA,sBAAsB,OAAA;AAC3C,6CAAqE;AAA5D,0GAAA,WAAW,OAAA;AACpB,uCAA0E;AAAjE,oGAAA,QAAQ,OAAA;AAAE,wGAAA,YAAY,OAAA;AAC/B,uCAA4E;AAAnE,oGAAA,QAAQ,OAAA;AAAE,0GAAA,cAAc,OAAA;AACjC,mCAAoE;AAA3D,gGAAA,MAAM,OAAA;AAAE,sGAAA,YAAY,OAAA;AAC7B,qCAAqE;AAA5D,yGAAA,cAAc,OAAA;AACvB,yCAA6D;AAApD,qGAAA,QAAQ,OAAA;AACjB,yCAAgT;AAAvS,0GAAA,aAAa,OAAA;AAAE,4GAAA,eAAe,OAAA;AAAE,4GAAA,eAAe,OAAA;AAAE,2GAAA,cAAc,OAAA;AAAE,2GAAA,cAAc,OAAA;AAAE,4GAAA,eAAe,OAAA;AAAE,gHAAA,mBAAmB,OAAA;AAAE,6GAAA,gBAAgB,OAAA;AAAE,2GAAA,cAAc,OAAA;AAAE,8GAAA,iBAAiB,OAAA;AAAE,6GAAA,gBAAgB,OAAA;AAAE,4GAAA,eAAe,OAAA;AAAE,2GAAA,cAAc,OAAA;AACtO,qCAAyF;AAAhF,sGAAA,WAAW,OAAA;AAAE,uGAAA,YAAY,OAAA;AAAE,uGAAA,YAAY,OAAA;AAChD,iDAAyE;AAAhE,6GAAA,YAAY,OAAA;AACrB,qCAAyD;AAAhD,kGAAA,OAAO,OAAA;AAChB,uDAAkF;AAAzE,mHAAA,eAAe,OAAA;AACxB,yDAAmF;AAA1E,oHAAA,eAAe,OAAA;AACxB,6CAAsF;AAA7E,0GAAA,WAAW,OAAA;AAAE,iHAAA,kBAAkB,OAAA;AACxC,2DAA8G;AAArG,uHAAA,iBAAiB,OAAA;AAAE,0HAAA,oBAAoB,OAAA;AAChD,2DAAyL;AAAhL,uHAAA,iBAAiB,OAAA;AAAE,sHAAA,gBAAgB,OAAA;AAAE,0HAAA,oBAAoB,OAAA;AAAE,uHAAA,iBAAiB,OAAA;AACrF,6DAAwJ;AAA/I,wHAAA,iBAAiB,OAAA;AAAE,oHAAA,aAAa,OAAA;AAAE,mHAAA,YAAY,OAAA;AACvD,6DAA0I;AAAjI,wHAAA,iBAAiB,OAAA;AAAE,6HAAA,sBAAsB,OAAA;AAClD,6BAAkD;AAAzC,+FAAA,QAAQ,OAAA"}