@jeger-ai/opengantry 2.0.0 → 2.1.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 (474) hide show
  1. package/README.md +20 -11
  2. package/dist/cli/commands/context-request.d.ts +11 -0
  3. package/dist/cli/commands/context-request.d.ts.map +1 -0
  4. package/dist/cli/commands/context-request.js +74 -0
  5. package/dist/cli/commands/context-request.js.map +1 -0
  6. package/dist/cli/commands/doctor.d.ts +1 -1
  7. package/dist/cli/commands/doctor.d.ts.map +1 -1
  8. package/dist/cli/commands/doctor.js +1 -2
  9. package/dist/cli/commands/doctor.js.map +1 -1
  10. package/dist/cli/commands/init.d.ts.map +1 -1
  11. package/dist/cli/commands/init.js +6 -2
  12. package/dist/cli/commands/init.js.map +1 -1
  13. package/dist/cli/commands/legislate.d.ts +1 -1
  14. package/dist/cli/commands/legislate.d.ts.map +1 -1
  15. package/dist/cli/commands/legislate.js +1 -1
  16. package/dist/cli/commands/legislate.js.map +1 -1
  17. package/dist/cli/commands/mission.js +3 -3
  18. package/dist/cli/commands/mission.js.map +1 -1
  19. package/dist/cli/commands/onboarding.d.ts.map +1 -1
  20. package/dist/cli/commands/onboarding.js +4 -6
  21. package/dist/cli/commands/onboarding.js.map +1 -1
  22. package/dist/cli/commands/perimeter.js +1 -1
  23. package/dist/cli/commands/perimeter.js.map +1 -1
  24. package/dist/cli/commands/runtime.js +1 -1
  25. package/dist/cli/commands/runtime.js.map +1 -1
  26. package/dist/cli/commands/scan.js +1 -1
  27. package/dist/cli/commands/scan.js.map +1 -1
  28. package/dist/cli/commands/tmvc-guard.d.ts +7 -0
  29. package/dist/cli/commands/tmvc-guard.d.ts.map +1 -0
  30. package/dist/cli/commands/tmvc-guard.js +63 -0
  31. package/dist/cli/commands/tmvc-guard.js.map +1 -0
  32. package/dist/cli/commands/triage.js +2 -2
  33. package/dist/cli/commands/triage.js.map +1 -1
  34. package/dist/cli/commands/upgrade.js +1 -1
  35. package/dist/cli/commands/upgrade.js.map +1 -1
  36. package/dist/cli/commands/verify.d.ts +2 -2
  37. package/dist/cli/commands/verify.d.ts.map +1 -1
  38. package/dist/cli/commands/verify.js +7 -7
  39. package/dist/cli/commands/verify.js.map +1 -1
  40. package/dist/cli/index.js +1 -1
  41. package/dist/cli/index.js.map +1 -1
  42. package/dist/cli/lib/architecture-pointer.d.ts +33 -5
  43. package/dist/cli/lib/architecture-pointer.d.ts.map +1 -1
  44. package/dist/cli/lib/architecture-pointer.js +304 -5
  45. package/dist/cli/lib/architecture-pointer.js.map +1 -1
  46. package/dist/cli/lib/ast-discovery.d.ts.map +1 -1
  47. package/dist/cli/lib/ast-discovery.js +7 -16
  48. package/dist/cli/lib/ast-discovery.js.map +1 -1
  49. package/dist/cli/lib/banned-import-violation.d.ts +8 -0
  50. package/dist/cli/lib/banned-import-violation.d.ts.map +1 -0
  51. package/dist/cli/lib/banned-import-violation.js +15 -0
  52. package/dist/cli/lib/banned-import-violation.js.map +1 -0
  53. package/dist/cli/lib/break-glass.d.ts +17 -0
  54. package/dist/cli/lib/break-glass.d.ts.map +1 -1
  55. package/dist/cli/lib/break-glass.js +28 -1
  56. package/dist/cli/lib/break-glass.js.map +1 -1
  57. package/dist/cli/lib/cli-io.d.ts +8 -0
  58. package/dist/cli/lib/cli-io.d.ts.map +1 -1
  59. package/dist/cli/lib/cli-io.js +16 -0
  60. package/dist/cli/lib/cli-io.js.map +1 -1
  61. package/dist/cli/lib/command-reporter.d.ts +3 -3
  62. package/dist/cli/lib/command-reporter.d.ts.map +1 -1
  63. package/dist/cli/lib/constants.d.ts +2 -0
  64. package/dist/cli/lib/constants.d.ts.map +1 -1
  65. package/dist/cli/lib/constants.js +2 -0
  66. package/dist/cli/lib/constants.js.map +1 -1
  67. package/dist/cli/lib/context-request.d.ts +22 -0
  68. package/dist/cli/lib/context-request.d.ts.map +1 -0
  69. package/dist/cli/lib/context-request.js +45 -0
  70. package/dist/cli/lib/context-request.js.map +1 -0
  71. package/dist/cli/lib/dirty-missions.js +1 -1
  72. package/dist/cli/lib/dirty-missions.js.map +1 -1
  73. package/dist/cli/lib/doctor.d.ts +31 -0
  74. package/dist/cli/lib/doctor.d.ts.map +1 -0
  75. package/dist/cli/lib/doctor.js +282 -0
  76. package/dist/cli/lib/doctor.js.map +1 -0
  77. package/dist/cli/lib/draft-token.js +1 -1
  78. package/dist/cli/lib/draft-token.js.map +1 -1
  79. package/dist/cli/lib/{user-error.d.ts → errors.d.ts} +20 -1
  80. package/dist/cli/lib/errors.d.ts.map +1 -0
  81. package/dist/cli/lib/{agent-error.js → errors.js} +64 -1
  82. package/dist/cli/lib/errors.js.map +1 -0
  83. package/dist/cli/lib/fix-hints.d.ts +1 -1
  84. package/dist/cli/lib/fix-hints.d.ts.map +1 -1
  85. package/dist/cli/lib/gate-work-dir.d.ts +6 -0
  86. package/dist/cli/lib/gate-work-dir.d.ts.map +1 -0
  87. package/dist/cli/lib/gate-work-dir.js +6 -0
  88. package/dist/cli/lib/gate-work-dir.js.map +1 -0
  89. package/dist/cli/lib/git-metrics.d.ts +34 -0
  90. package/dist/cli/lib/git-metrics.d.ts.map +1 -1
  91. package/dist/cli/lib/git-metrics.js +199 -3
  92. package/dist/cli/lib/git-metrics.js.map +1 -1
  93. package/dist/cli/lib/git-proof.d.ts +4 -0
  94. package/dist/cli/lib/git-proof.d.ts.map +1 -1
  95. package/dist/cli/lib/git-proof.js +22 -8
  96. package/dist/cli/lib/git-proof.js.map +1 -1
  97. package/dist/cli/lib/git-staged.d.ts +20 -0
  98. package/dist/cli/lib/git-staged.d.ts.map +1 -0
  99. package/dist/cli/lib/git-staged.js +37 -0
  100. package/dist/cli/lib/git-staged.js.map +1 -0
  101. package/dist/cli/lib/git.d.ts +25 -0
  102. package/dist/cli/lib/git.d.ts.map +1 -1
  103. package/dist/cli/lib/git.js +52 -0
  104. package/dist/cli/lib/git.js.map +1 -1
  105. package/dist/cli/lib/gxt-error-codes.d.ts +4 -0
  106. package/dist/cli/lib/gxt-error-codes.d.ts.map +1 -1
  107. package/dist/cli/lib/gxt-error-codes.js +4 -0
  108. package/dist/cli/lib/gxt-error-codes.js.map +1 -1
  109. package/dist/cli/lib/import-scanner.d.ts +14 -0
  110. package/dist/cli/lib/import-scanner.d.ts.map +1 -0
  111. package/dist/cli/lib/import-scanner.js +67 -0
  112. package/dist/cli/lib/import-scanner.js.map +1 -0
  113. package/dist/cli/lib/{init-compose-arch-pointer.d.ts → init-compose.d.ts} +4 -1
  114. package/dist/cli/lib/init-compose.d.ts.map +1 -0
  115. package/dist/cli/lib/{init-compose-arch-pointer.js → init-compose.js} +37 -1
  116. package/dist/cli/lib/init-compose.js.map +1 -0
  117. package/dist/cli/lib/init-interactive.js +2 -2
  118. package/dist/cli/lib/init-interactive.js.map +1 -1
  119. package/dist/cli/lib/init-tutorial.d.ts.map +1 -1
  120. package/dist/cli/lib/init-tutorial.js +10 -10
  121. package/dist/cli/lib/init-tutorial.js.map +1 -1
  122. package/dist/cli/lib/kpi-engine.d.ts +34 -0
  123. package/dist/cli/lib/kpi-engine.d.ts.map +1 -0
  124. package/dist/cli/lib/kpi-engine.js +281 -0
  125. package/dist/cli/lib/kpi-engine.js.map +1 -0
  126. package/dist/cli/lib/kpi-report-stale.js +2 -2
  127. package/dist/cli/lib/kpi-report-stale.js.map +1 -1
  128. package/dist/cli/lib/kpi-scan.d.ts +2 -0
  129. package/dist/cli/lib/kpi-scan.d.ts.map +1 -1
  130. package/dist/cli/lib/kpi-scan.js +8 -4
  131. package/dist/cli/lib/kpi-scan.js.map +1 -1
  132. package/dist/cli/lib/legislate.d.ts +39 -0
  133. package/dist/cli/lib/legislate.d.ts.map +1 -0
  134. package/dist/cli/lib/{legislate-core.js → legislate.js} +31 -6
  135. package/dist/cli/lib/legislate.js.map +1 -0
  136. package/dist/cli/lib/mcp-governance.d.ts +124 -0
  137. package/dist/cli/lib/mcp-governance.d.ts.map +1 -0
  138. package/dist/cli/lib/mcp-governance.js +231 -0
  139. package/dist/cli/lib/mcp-governance.js.map +1 -0
  140. package/dist/cli/lib/mcp-runtime.d.ts +4 -4
  141. package/dist/cli/lib/mcp-runtime.d.ts.map +1 -1
  142. package/dist/cli/lib/mcp-runtime.js +3 -3
  143. package/dist/cli/lib/mcp-runtime.js.map +1 -1
  144. package/dist/cli/lib/mcp-tools-register.js +1 -2
  145. package/dist/cli/lib/mcp-tools-register.js.map +1 -1
  146. package/dist/cli/lib/mcp-upgrade.d.ts +11 -2
  147. package/dist/cli/lib/mcp-upgrade.d.ts.map +1 -1
  148. package/dist/cli/lib/mcp-upgrade.js +1 -1
  149. package/dist/cli/lib/mcp-upgrade.js.map +1 -1
  150. package/dist/cli/lib/missions/formatter.d.ts +17 -0
  151. package/dist/cli/lib/missions/formatter.d.ts.map +1 -0
  152. package/dist/cli/lib/{mission-markdown.js → missions/formatter.js} +57 -2
  153. package/dist/cli/lib/missions/formatter.js.map +1 -0
  154. package/dist/cli/lib/missions/parser.d.ts +45 -0
  155. package/dist/cli/lib/missions/parser.d.ts.map +1 -0
  156. package/dist/cli/lib/missions/parser.js +270 -0
  157. package/dist/cli/lib/missions/parser.js.map +1 -0
  158. package/dist/cli/lib/{mission-schema-validate.d.ts → missions/validator.d.ts} +1 -1
  159. package/dist/cli/lib/missions/validator.d.ts.map +1 -0
  160. package/dist/cli/lib/{mission-schema-validate.js → missions/validator.js} +4 -3
  161. package/dist/cli/lib/missions/validator.js.map +1 -0
  162. package/dist/cli/lib/msn-allocate.js +3 -3
  163. package/dist/cli/lib/msn-allocate.js.map +1 -1
  164. package/dist/cli/lib/perimeter.d.ts +19 -1
  165. package/dist/cli/lib/perimeter.d.ts.map +1 -1
  166. package/dist/cli/lib/perimeter.js +139 -51
  167. package/dist/cli/lib/perimeter.js.map +1 -1
  168. package/dist/cli/lib/register-proposals.d.ts +1 -1
  169. package/dist/cli/lib/register-proposals.d.ts.map +1 -1
  170. package/dist/cli/lib/register-proposals.js +5 -1
  171. package/dist/cli/lib/register-proposals.js.map +1 -1
  172. package/dist/cli/lib/runtime-env.js +2 -2
  173. package/dist/cli/lib/runtime-env.js.map +1 -1
  174. package/dist/cli/lib/runtime-exec.d.ts +48 -4
  175. package/dist/cli/lib/runtime-exec.d.ts.map +1 -1
  176. package/dist/cli/lib/runtime-exec.js +218 -4
  177. package/dist/cli/lib/runtime-exec.js.map +1 -1
  178. package/dist/cli/lib/staged-tmvc-guard.d.ts +26 -0
  179. package/dist/cli/lib/staged-tmvc-guard.d.ts.map +1 -0
  180. package/dist/cli/lib/staged-tmvc-guard.js +58 -0
  181. package/dist/cli/lib/staged-tmvc-guard.js.map +1 -0
  182. package/dist/cli/lib/start-orchestration.d.ts +11 -1
  183. package/dist/cli/lib/start-orchestration.d.ts.map +1 -1
  184. package/dist/cli/lib/start-orchestration.js +105 -42
  185. package/dist/cli/lib/start-orchestration.js.map +1 -1
  186. package/dist/cli/lib/status-report.d.ts +1 -1
  187. package/dist/cli/lib/status-report.d.ts.map +1 -1
  188. package/dist/cli/lib/status-report.js +2 -2
  189. package/dist/cli/lib/status-report.js.map +1 -1
  190. package/dist/cli/lib/surgeon.d.ts +23 -0
  191. package/dist/cli/lib/surgeon.d.ts.map +1 -0
  192. package/dist/cli/lib/surgeon.js +63 -0
  193. package/dist/cli/lib/surgeon.js.map +1 -0
  194. package/dist/cli/lib/surgeons/banned-import.d.ts +4 -0
  195. package/dist/cli/lib/surgeons/banned-import.d.ts.map +1 -0
  196. package/dist/cli/lib/surgeons/banned-import.js +37 -0
  197. package/dist/cli/lib/surgeons/banned-import.js.map +1 -0
  198. package/dist/cli/lib/surgeons/import-layer.d.ts +3 -0
  199. package/dist/cli/lib/surgeons/import-layer.d.ts.map +1 -0
  200. package/dist/cli/lib/surgeons/import-layer.js +74 -0
  201. package/dist/cli/lib/surgeons/import-layer.js.map +1 -0
  202. package/dist/cli/lib/surgeons/quarantine-import.d.ts +24 -0
  203. package/dist/cli/lib/surgeons/quarantine-import.d.ts.map +1 -0
  204. package/dist/cli/lib/surgeons/quarantine-import.js +128 -0
  205. package/dist/cli/lib/surgeons/quarantine-import.js.map +1 -0
  206. package/dist/cli/lib/surgeons/registry.d.ts +22 -0
  207. package/dist/cli/lib/surgeons/registry.d.ts.map +1 -0
  208. package/dist/cli/lib/surgeons/registry.js +27 -0
  209. package/dist/cli/lib/surgeons/registry.js.map +1 -0
  210. package/dist/cli/lib/surgeons/typescript-workspace.d.ts +7 -0
  211. package/dist/cli/lib/surgeons/typescript-workspace.d.ts.map +1 -0
  212. package/dist/cli/lib/surgeons/typescript-workspace.js +41 -0
  213. package/dist/cli/lib/surgeons/typescript-workspace.js.map +1 -0
  214. package/dist/cli/lib/teacher-identity.js +1 -1
  215. package/dist/cli/lib/teacher-identity.js.map +1 -1
  216. package/dist/cli/lib/tmvc-path.d.ts +12 -0
  217. package/dist/cli/lib/tmvc-path.d.ts.map +1 -0
  218. package/dist/cli/lib/tmvc-path.js +47 -0
  219. package/dist/cli/lib/tmvc-path.js.map +1 -0
  220. package/dist/cli/lib/trace-evidence.js +1 -1
  221. package/dist/cli/lib/trace-evidence.js.map +1 -1
  222. package/dist/cli/lib/trace.d.ts +28 -1
  223. package/dist/cli/lib/trace.d.ts.map +1 -1
  224. package/dist/cli/lib/trace.js +158 -3
  225. package/dist/cli/lib/trace.js.map +1 -1
  226. package/dist/cli/lib/types.d.ts +1 -1
  227. package/dist/cli/lib/types.d.ts.map +1 -1
  228. package/dist/cli/lib/upgrade-apply.d.ts.map +1 -1
  229. package/dist/cli/lib/upgrade-apply.js +6 -2
  230. package/dist/cli/lib/upgrade-apply.js.map +1 -1
  231. package/dist/cli/lib/upgrade-plan.d.ts +19 -1
  232. package/dist/cli/lib/upgrade-plan.d.ts.map +1 -1
  233. package/dist/cli/lib/upgrade-plan.js +78 -6
  234. package/dist/cli/lib/upgrade-plan.js.map +1 -1
  235. package/dist/cli/lib/verify-changed-missions.js +1 -1
  236. package/dist/cli/lib/verify-changed-missions.js.map +1 -1
  237. package/dist/cli/lib/verify-engine.d.ts +36 -6
  238. package/dist/cli/lib/verify-engine.d.ts.map +1 -1
  239. package/dist/cli/lib/verify-engine.js +35 -12
  240. package/dist/cli/lib/verify-engine.js.map +1 -1
  241. package/dist/cli/lib/{verify-result-payload.d.ts → verify-payload.d.ts} +2 -7
  242. package/dist/cli/lib/verify-payload.d.ts.map +1 -0
  243. package/dist/cli/lib/{verify-result-payload.js → verify-payload.js} +7 -11
  244. package/dist/cli/lib/verify-payload.js.map +1 -0
  245. package/dist/cli/lib/verify-present.d.ts +9 -5
  246. package/dist/cli/lib/verify-present.d.ts.map +1 -1
  247. package/dist/cli/lib/verify-present.js +101 -8
  248. package/dist/cli/lib/verify-present.js.map +1 -1
  249. package/dist/cli/lib/verify-presentation.d.ts +7 -0
  250. package/dist/cli/lib/verify-presentation.d.ts.map +1 -0
  251. package/dist/cli/lib/verify-presentation.js +4 -0
  252. package/dist/cli/lib/verify-presentation.js.map +1 -0
  253. package/dist/cli/lib/verify-remediation.d.ts +29 -3
  254. package/dist/cli/lib/verify-remediation.d.ts.map +1 -1
  255. package/dist/cli/lib/verify-remediation.js +78 -1
  256. package/dist/cli/lib/verify-remediation.js.map +1 -1
  257. package/dist/cli/lib/version.gen.d.ts +1 -1
  258. package/dist/cli/lib/version.gen.js +1 -1
  259. package/dist/cli/program-core.d.ts.map +1 -1
  260. package/dist/cli/program-core.js +9 -26
  261. package/dist/cli/program-core.js.map +1 -1
  262. package/dist/cli/program-mission.d.ts.map +1 -1
  263. package/dist/cli/program-mission.js +38 -1
  264. package/dist/cli/program-mission.js.map +1 -1
  265. package/dist/cli/program-workflow.d.ts.map +1 -1
  266. package/dist/cli/program-workflow.js +30 -20
  267. package/dist/cli/program-workflow.js.map +1 -1
  268. package/package.json +3 -2
  269. package/templates/.cursor/rules/opengantry-gxt-substrate.mdc +1 -0
  270. package/templates/.gitagent/teacher/WORKER_LOG.template.md +1 -0
  271. package/templates/.githooks/pre-commit +26 -0
  272. package/templates/.github/workflows/gxt-validate.yml +5 -0
  273. package/templates/AGENTS.md +4 -0
  274. package/templates/integrations/asset-catalog.json +29 -28
  275. package/templates/integrations/compatibility.json +1 -1
  276. package/templates/integrations/recipes/_footer.md +4 -0
  277. package/dist/cli/lib/agent-error.d.ts +0 -20
  278. package/dist/cli/lib/agent-error.d.ts.map +0 -1
  279. package/dist/cli/lib/agent-error.js.map +0 -1
  280. package/dist/cli/lib/architecture-pointer-discovery.d.ts +0 -7
  281. package/dist/cli/lib/architecture-pointer-discovery.d.ts.map +0 -1
  282. package/dist/cli/lib/architecture-pointer-discovery.js +0 -60
  283. package/dist/cli/lib/architecture-pointer-discovery.js.map +0 -1
  284. package/dist/cli/lib/architecture-pointer-doctor.d.ts +0 -3
  285. package/dist/cli/lib/architecture-pointer-doctor.d.ts.map +0 -1
  286. package/dist/cli/lib/architecture-pointer-doctor.js +0 -115
  287. package/dist/cli/lib/architecture-pointer-doctor.js.map +0 -1
  288. package/dist/cli/lib/architecture-pointer-schema.d.ts +0 -5
  289. package/dist/cli/lib/architecture-pointer-schema.d.ts.map +0 -1
  290. package/dist/cli/lib/architecture-pointer-schema.js +0 -138
  291. package/dist/cli/lib/architecture-pointer-schema.js.map +0 -1
  292. package/dist/cli/lib/architecture-pointer-types.d.ts +0 -24
  293. package/dist/cli/lib/architecture-pointer-types.d.ts.map +0 -1
  294. package/dist/cli/lib/architecture-pointer-types.js +0 -7
  295. package/dist/cli/lib/architecture-pointer-types.js.map +0 -1
  296. package/dist/cli/lib/break-glass-flow.d.ts +0 -18
  297. package/dist/cli/lib/break-glass-flow.d.ts.map +0 -1
  298. package/dist/cli/lib/break-glass-flow.js +0 -29
  299. package/dist/cli/lib/break-glass-flow.js.map +0 -1
  300. package/dist/cli/lib/cli-timeout.d.ts +0 -9
  301. package/dist/cli/lib/cli-timeout.d.ts.map +0 -1
  302. package/dist/cli/lib/cli-timeout.js +0 -17
  303. package/dist/cli/lib/cli-timeout.js.map +0 -1
  304. package/dist/cli/lib/doctor-checks.d.ts +0 -16
  305. package/dist/cli/lib/doctor-checks.d.ts.map +0 -1
  306. package/dist/cli/lib/doctor-checks.js +0 -138
  307. package/dist/cli/lib/doctor-checks.js.map +0 -1
  308. package/dist/cli/lib/doctor-integration-checks.d.ts +0 -5
  309. package/dist/cli/lib/doctor-integration-checks.d.ts.map +0 -1
  310. package/dist/cli/lib/doctor-integration-checks.js +0 -89
  311. package/dist/cli/lib/doctor-integration-checks.js.map +0 -1
  312. package/dist/cli/lib/doctor-orchestration.d.ts +0 -10
  313. package/dist/cli/lib/doctor-orchestration.d.ts.map +0 -1
  314. package/dist/cli/lib/doctor-orchestration.js +0 -32
  315. package/dist/cli/lib/doctor-orchestration.js.map +0 -1
  316. package/dist/cli/lib/doctor-substrate-drift.d.ts +0 -7
  317. package/dist/cli/lib/doctor-substrate-drift.d.ts.map +0 -1
  318. package/dist/cli/lib/doctor-substrate-drift.js +0 -35
  319. package/dist/cli/lib/doctor-substrate-drift.js.map +0 -1
  320. package/dist/cli/lib/git-metrics-missions.d.ts +0 -3
  321. package/dist/cli/lib/git-metrics-missions.d.ts.map +0 -1
  322. package/dist/cli/lib/git-metrics-missions.js +0 -51
  323. package/dist/cli/lib/git-metrics-missions.js.map +0 -1
  324. package/dist/cli/lib/git-metrics-stream.d.ts +0 -24
  325. package/dist/cli/lib/git-metrics-stream.d.ts.map +0 -1
  326. package/dist/cli/lib/git-metrics-stream.js +0 -137
  327. package/dist/cli/lib/git-metrics-stream.js.map +0 -1
  328. package/dist/cli/lib/git-repo.d.ts +0 -26
  329. package/dist/cli/lib/git-repo.d.ts.map +0 -1
  330. package/dist/cli/lib/git-repo.js +0 -53
  331. package/dist/cli/lib/git-repo.js.map +0 -1
  332. package/dist/cli/lib/init-compose-arch-pointer.d.ts.map +0 -1
  333. package/dist/cli/lib/init-compose-arch-pointer.js.map +0 -1
  334. package/dist/cli/lib/init-compose-doc.d.ts +0 -5
  335. package/dist/cli/lib/init-compose-doc.d.ts.map +0 -1
  336. package/dist/cli/lib/init-compose-doc.js +0 -37
  337. package/dist/cli/lib/init-compose-doc.js.map +0 -1
  338. package/dist/cli/lib/kpi-phase.d.ts +0 -7
  339. package/dist/cli/lib/kpi-phase.d.ts.map +0 -1
  340. package/dist/cli/lib/kpi-phase.js +0 -80
  341. package/dist/cli/lib/kpi-phase.js.map +0 -1
  342. package/dist/cli/lib/kpi-report.d.ts +0 -13
  343. package/dist/cli/lib/kpi-report.d.ts.map +0 -1
  344. package/dist/cli/lib/kpi-report.js +0 -115
  345. package/dist/cli/lib/kpi-report.js.map +0 -1
  346. package/dist/cli/lib/legislate-core.d.ts +0 -21
  347. package/dist/cli/lib/legislate-core.d.ts.map +0 -1
  348. package/dist/cli/lib/legislate-core.js.map +0 -1
  349. package/dist/cli/lib/legislate-skill.d.ts +0 -20
  350. package/dist/cli/lib/legislate-skill.d.ts.map +0 -1
  351. package/dist/cli/lib/legislate-skill.js +0 -30
  352. package/dist/cli/lib/legislate-skill.js.map +0 -1
  353. package/dist/cli/lib/mcp-legislation-draft.d.ts +0 -6
  354. package/dist/cli/lib/mcp-legislation-draft.d.ts.map +0 -1
  355. package/dist/cli/lib/mcp-legislation-draft.js +0 -62
  356. package/dist/cli/lib/mcp-legislation-draft.js.map +0 -1
  357. package/dist/cli/lib/mcp-legislation-execute.d.ts +0 -6
  358. package/dist/cli/lib/mcp-legislation-execute.d.ts.map +0 -1
  359. package/dist/cli/lib/mcp-legislation-execute.js +0 -43
  360. package/dist/cli/lib/mcp-legislation-execute.js.map +0 -1
  361. package/dist/cli/lib/mcp-legislation-mission.d.ts +0 -12
  362. package/dist/cli/lib/mcp-legislation-mission.d.ts.map +0 -1
  363. package/dist/cli/lib/mcp-legislation-mission.js +0 -82
  364. package/dist/cli/lib/mcp-legislation-mission.js.map +0 -1
  365. package/dist/cli/lib/mcp-legislation-types.d.ts +0 -69
  366. package/dist/cli/lib/mcp-legislation-types.d.ts.map +0 -1
  367. package/dist/cli/lib/mcp-legislation-types.js +0 -4
  368. package/dist/cli/lib/mcp-legislation-types.js.map +0 -1
  369. package/dist/cli/lib/mcp-legislation.d.ts +0 -5
  370. package/dist/cli/lib/mcp-legislation.d.ts.map +0 -1
  371. package/dist/cli/lib/mcp-legislation.js +0 -4
  372. package/dist/cli/lib/mcp-legislation.js.map +0 -1
  373. package/dist/cli/lib/mcp-orchestration-types.d.ts +0 -28
  374. package/dist/cli/lib/mcp-orchestration-types.d.ts.map +0 -1
  375. package/dist/cli/lib/mcp-orchestration-types.js +0 -2
  376. package/dist/cli/lib/mcp-orchestration-types.js.map +0 -1
  377. package/dist/cli/lib/mcp-orchestration.d.ts +0 -14
  378. package/dist/cli/lib/mcp-orchestration.d.ts.map +0 -1
  379. package/dist/cli/lib/mcp-orchestration.js +0 -54
  380. package/dist/cli/lib/mcp-orchestration.js.map +0 -1
  381. package/dist/cli/lib/mcp-upgrade-types.d.ts +0 -12
  382. package/dist/cli/lib/mcp-upgrade-types.d.ts.map +0 -1
  383. package/dist/cli/lib/mcp-upgrade-types.js +0 -2
  384. package/dist/cli/lib/mcp-upgrade-types.js.map +0 -1
  385. package/dist/cli/lib/mission-emit.d.ts +0 -7
  386. package/dist/cli/lib/mission-emit.d.ts.map +0 -1
  387. package/dist/cli/lib/mission-emit.js +0 -23
  388. package/dist/cli/lib/mission-emit.js.map +0 -1
  389. package/dist/cli/lib/mission-legislative-stub.d.ts +0 -9
  390. package/dist/cli/lib/mission-legislative-stub.d.ts.map +0 -1
  391. package/dist/cli/lib/mission-legislative-stub.js +0 -37
  392. package/dist/cli/lib/mission-legislative-stub.js.map +0 -1
  393. package/dist/cli/lib/mission-markdown.d.ts +0 -6
  394. package/dist/cli/lib/mission-markdown.d.ts.map +0 -1
  395. package/dist/cli/lib/mission-markdown.js.map +0 -1
  396. package/dist/cli/lib/mission-msn.d.ts +0 -9
  397. package/dist/cli/lib/mission-msn.d.ts.map +0 -1
  398. package/dist/cli/lib/mission-msn.js +0 -86
  399. package/dist/cli/lib/mission-msn.js.map +0 -1
  400. package/dist/cli/lib/mission-parser.d.ts +0 -6
  401. package/dist/cli/lib/mission-parser.d.ts.map +0 -1
  402. package/dist/cli/lib/mission-parser.js +0 -29
  403. package/dist/cli/lib/mission-parser.js.map +0 -1
  404. package/dist/cli/lib/mission-path.d.ts +0 -4
  405. package/dist/cli/lib/mission-path.d.ts.map +0 -1
  406. package/dist/cli/lib/mission-path.js +0 -28
  407. package/dist/cli/lib/mission-path.js.map +0 -1
  408. package/dist/cli/lib/mission-resolution.d.ts +0 -14
  409. package/dist/cli/lib/mission-resolution.d.ts.map +0 -1
  410. package/dist/cli/lib/mission-resolution.js +0 -60
  411. package/dist/cli/lib/mission-resolution.js.map +0 -1
  412. package/dist/cli/lib/mission-schema-validate.d.ts.map +0 -1
  413. package/dist/cli/lib/mission-schema-validate.js.map +0 -1
  414. package/dist/cli/lib/mission-yaml.d.ts +0 -18
  415. package/dist/cli/lib/mission-yaml.d.ts.map +0 -1
  416. package/dist/cli/lib/mission-yaml.js +0 -228
  417. package/dist/cli/lib/mission-yaml.js.map +0 -1
  418. package/dist/cli/lib/register-proposals-format.d.ts +0 -2
  419. package/dist/cli/lib/register-proposals-format.d.ts.map +0 -1
  420. package/dist/cli/lib/register-proposals-format.js +0 -6
  421. package/dist/cli/lib/register-proposals-format.js.map +0 -1
  422. package/dist/cli/lib/runtime-exec-orchestrator.d.ts +0 -14
  423. package/dist/cli/lib/runtime-exec-orchestrator.d.ts.map +0 -1
  424. package/dist/cli/lib/runtime-exec-orchestrator.js +0 -132
  425. package/dist/cli/lib/runtime-exec-orchestrator.js.map +0 -1
  426. package/dist/cli/lib/runtime-exec-result.d.ts +0 -21
  427. package/dist/cli/lib/runtime-exec-result.d.ts.map +0 -1
  428. package/dist/cli/lib/runtime-exec-result.js +0 -42
  429. package/dist/cli/lib/runtime-exec-result.js.map +0 -1
  430. package/dist/cli/lib/runtime-exec-worker.d.ts +0 -18
  431. package/dist/cli/lib/runtime-exec-worker.d.ts.map +0 -1
  432. package/dist/cli/lib/runtime-exec-worker.js +0 -49
  433. package/dist/cli/lib/runtime-exec-worker.js.map +0 -1
  434. package/dist/cli/lib/start-state.d.ts +0 -12
  435. package/dist/cli/lib/start-state.d.ts.map +0 -1
  436. package/dist/cli/lib/start-state.js +0 -86
  437. package/dist/cli/lib/start-state.js.map +0 -1
  438. package/dist/cli/lib/trace-failure-kind.d.ts +0 -4
  439. package/dist/cli/lib/trace-failure-kind.d.ts.map +0 -1
  440. package/dist/cli/lib/trace-failure-kind.js +0 -25
  441. package/dist/cli/lib/trace-failure-kind.js.map +0 -1
  442. package/dist/cli/lib/trace-status.d.ts +0 -7
  443. package/dist/cli/lib/trace-status.d.ts.map +0 -1
  444. package/dist/cli/lib/trace-status.js +0 -20
  445. package/dist/cli/lib/trace-status.js.map +0 -1
  446. package/dist/cli/lib/upgrade-eligible-assets.d.ts +0 -5
  447. package/dist/cli/lib/upgrade-eligible-assets.d.ts.map +0 -1
  448. package/dist/cli/lib/upgrade-eligible-assets.js +0 -9
  449. package/dist/cli/lib/upgrade-eligible-assets.js.map +0 -1
  450. package/dist/cli/lib/upgrade-plan-preview.d.ts +0 -13
  451. package/dist/cli/lib/upgrade-plan-preview.d.ts.map +0 -1
  452. package/dist/cli/lib/upgrade-plan-preview.js +0 -51
  453. package/dist/cli/lib/upgrade-plan-preview.js.map +0 -1
  454. package/dist/cli/lib/upgrade-profile.d.ts +0 -4
  455. package/dist/cli/lib/upgrade-profile.d.ts.map +0 -1
  456. package/dist/cli/lib/upgrade-profile.js +0 -27
  457. package/dist/cli/lib/upgrade-profile.js.map +0 -1
  458. package/dist/cli/lib/user-error.d.ts.map +0 -1
  459. package/dist/cli/lib/user-error.js +0 -64
  460. package/dist/cli/lib/user-error.js.map +0 -1
  461. package/dist/cli/lib/verify-failure-presentation.d.ts +0 -30
  462. package/dist/cli/lib/verify-failure-presentation.d.ts.map +0 -1
  463. package/dist/cli/lib/verify-failure-presentation.js +0 -68
  464. package/dist/cli/lib/verify-failure-presentation.js.map +0 -1
  465. package/dist/cli/lib/verify-result-payload.d.ts.map +0 -1
  466. package/dist/cli/lib/verify-result-payload.js.map +0 -1
  467. package/dist/cli/lib/verify-run.d.ts +0 -10
  468. package/dist/cli/lib/verify-run.d.ts.map +0 -1
  469. package/dist/cli/lib/verify-run.js +0 -55
  470. package/dist/cli/lib/verify-run.js.map +0 -1
  471. package/dist/cli/lib/verify-types.d.ts +0 -31
  472. package/dist/cli/lib/verify-types.d.ts.map +0 -1
  473. package/dist/cli/lib/verify-types.js +0 -2
  474. package/dist/cli/lib/verify-types.js.map +0 -1
@@ -1,138 +0,0 @@
1
- import fs from "node:fs";
2
- import path from "node:path";
3
- import { ENV_BYPASS_SECRET, isBypassSecretAuthorized, REL_BYPASS_SHA256 } from "./break-glass.js";
4
- import { REL_AGENT_ERROR_FILE, REL_MANIFEST } from "./constants.js";
5
- import { agentErrorAbsolutePath } from "./agent-error.js";
6
- import { gitConfigGet } from "./git-repo.js";
7
- import { resolveTeacherEmails } from "./teacher-identity.js";
8
- import { checkSkillManifestSync } from "./skill-sync.js";
9
- function readBypassAnchorState(repoRoot) {
10
- const p = path.join(repoRoot, REL_BYPASS_SHA256);
11
- if (!fs.existsSync(p))
12
- return "missing";
13
- const raw = fs.readFileSync(p, "utf8");
14
- if (/^[a-f0-9]{64}$/im.test(raw))
15
- return "configured";
16
- return "placeholder";
17
- }
18
- function readHooksPath(repoRoot) {
19
- return gitConfigGet(repoRoot, "core.hooksPath");
20
- }
21
- export function pickNextStep(current, candidate) {
22
- return current ?? candidate;
23
- }
24
- export function doctorLinesHasFail(lines) {
25
- return lines.some((line) => line.level === "fail");
26
- }
27
- function appendTeacherAllowlistChecks(root, lines, nextStep) {
28
- const teacherIdentity = resolveTeacherEmails(root);
29
- if (teacherIdentity.emails.length > 0) {
30
- lines.push({
31
- level: "ok",
32
- message: `Teacher allowlist (${teacherIdentity.source}): ${teacherIdentity.emails.join(", ")}`,
33
- });
34
- if (teacherIdentity.source === "env") {
35
- lines.push({
36
- level: "warn",
37
- message: "Teacher identity from GAPMAN_TEACHER_EMAILS env — prefer repo-local .gitagent/foreman/TEACHER.allowlist.local when working across projects",
38
- });
39
- }
40
- return { nextStep, teacherAllowlistUnset: false };
41
- }
42
- lines.push({ level: "warn", message: "Teacher allowlist unset — verify git-proof will fail" });
43
- nextStep = pickNextStep(nextStep, 'gapman teacher set "$(git config user.email)"');
44
- return { nextStep, teacherAllowlistUnset: true };
45
- }
46
- function appendBypassChecks(root, lines) {
47
- const bypassState = readBypassAnchorState(root);
48
- if (bypassState === "configured") {
49
- lines.push({ level: "ok", message: "BYPASS.sha256 anchor present" });
50
- const secret = process.env[ENV_BYPASS_SECRET];
51
- if (secret?.length) {
52
- const authorized = isBypassSecretAuthorized(root);
53
- lines.push({
54
- level: authorized ? "ok" : "warn",
55
- message: authorized
56
- ? "bypass: GXT_BYPASS_SECRET matches anchor"
57
- : "bypass: GXT_BYPASS_SECRET does NOT match anchor",
58
- });
59
- }
60
- else {
61
- lines.push({ level: "warn", message: "bypass: GXT_BYPASS_SECRET unset (expected unless in emergency)" });
62
- }
63
- }
64
- else if (bypassState === "placeholder") {
65
- lines.push({ level: "warn", message: "BYPASS.sha256 has no hash line — break-glass not provisioned" });
66
- }
67
- else {
68
- lines.push({ level: "warn", message: `${REL_BYPASS_SHA256} missing` });
69
- }
70
- }
71
- function appendHooksAndExampleMissionChecks(root, lines, nextStep) {
72
- const hooks = readHooksPath(root);
73
- if (hooks === ".githooks") {
74
- lines.push({ level: "ok", message: "core.hooksPath=.githooks" });
75
- }
76
- else if (hooks) {
77
- lines.push({ level: "warn", message: `core.hooksPath=${hooks} (expected .githooks for GXT hooks)` });
78
- }
79
- else {
80
- lines.push({ level: "warn", message: "core.hooksPath unset — run: git config core.hooksPath .githooks" });
81
- }
82
- const exampleMission = ".gitagent/missions/example.verify.yaml";
83
- const teacherIdentity = resolveTeacherEmails(root);
84
- if (fs.existsSync(path.join(root, exampleMission))) {
85
- lines.push({ level: "ok", message: `example mission: ${exampleMission}` });
86
- if (teacherIdentity.emails.length > 0) {
87
- nextStep = pickNextStep(nextStep, `gapman verify --mission ${exampleMission}`);
88
- }
89
- }
90
- else {
91
- lines.push({ level: "warn", message: "no example.verify.yaml — legislate a mission first" });
92
- nextStep = pickNextStep(nextStep, 'gapman legislate "<intent>" --msn MSN-0001 --skill-key <key>');
93
- }
94
- return nextStep;
95
- }
96
- function appendAgentErrorCheck(root, lines) {
97
- const errPath = agentErrorAbsolutePath(root);
98
- if (!fs.existsSync(errPath))
99
- return;
100
- try {
101
- const payload = JSON.parse(fs.readFileSync(errPath, "utf8"));
102
- const summary = typeof payload.summary === "string" ? payload.summary : "(no summary)";
103
- lines.push({ level: "warn", message: `last agent error: ${summary}` });
104
- lines.push({ level: "warn", message: ` file: ${REL_AGENT_ERROR_FILE}` });
105
- }
106
- catch {
107
- lines.push({ level: "warn", message: `stale ${REL_AGENT_ERROR_FILE} (unreadable)` });
108
- }
109
- }
110
- export function runDoctorChecks(root, manifest) {
111
- const lines = [{ level: "ok", message: `repo: ${root}` }];
112
- let hasFail = false;
113
- let nextStep = null;
114
- let teacherAllowlistUnset = false;
115
- const skillSync = checkSkillManifestSync(root, manifest);
116
- if (skillSync.ok) {
117
- lines.push({ level: "ok", message: "manifest + skills/ Rule 4.4 sync" });
118
- }
119
- else {
120
- for (const err of skillSync.errors)
121
- lines.push({ level: "fail", message: err });
122
- hasFail = true;
123
- nextStep = pickNextStep(nextStep, "gapman check");
124
- }
125
- const teacherResult = appendTeacherAllowlistChecks(root, lines, nextStep);
126
- nextStep = teacherResult.nextStep;
127
- teacherAllowlistUnset = teacherResult.teacherAllowlistUnset;
128
- appendBypassChecks(root, lines);
129
- nextStep = appendHooksAndExampleMissionChecks(root, lines, nextStep);
130
- appendAgentErrorCheck(root, lines);
131
- if (!fs.existsSync(path.join(root, REL_MANIFEST))) {
132
- lines.push({ level: "fail", message: `${REL_MANIFEST} missing` });
133
- hasFail = true;
134
- nextStep = pickNextStep(nextStep, "gapman init");
135
- }
136
- return { lines, hasFail, nextStep, teacherAllowlistUnset };
137
- }
138
- //# sourceMappingURL=doctor-checks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"doctor-checks.js","sourceRoot":"","sources":["../../../src/cli/lib/doctor-checks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,iBAAiB,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAClG,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAiBzD,SAAS,qBAAqB,CAAC,QAAgB;IAC7C,MAAM,CAAC,GAAG,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAC;IACjD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,CAAC,CAAC;QAAE,OAAO,SAAS,CAAC;IACxC,MAAM,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACvC,IAAI,kBAAkB,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,YAAY,CAAC;IACtD,OAAO,aAAa,CAAC;AACvB,CAAC;AAED,SAAS,aAAa,CAAC,QAAgB;IACrC,OAAO,YAAY,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,OAAsB,EAAE,SAAiB;IACpE,OAAO,OAAO,IAAI,SAAS,CAAC;AAC9B,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAmB;IACpD,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,MAAM,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,4BAA4B,CACnC,IAAY,EACZ,KAAmB,EACnB,QAAuB;IAEvB,MAAM,eAAe,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACnD,IAAI,eAAe,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtC,KAAK,CAAC,IAAI,CAAC;YACT,KAAK,EAAE,IAAI;YACX,OAAO,EAAE,sBAAsB,eAAe,CAAC,MAAM,MAAM,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;SAC/F,CAAC,CAAC;QACH,IAAI,eAAe,CAAC,MAAM,KAAK,KAAK,EAAE,CAAC;YACrC,KAAK,CAAC,IAAI,CAAC;gBACT,KAAK,EAAE,MAAM;gBACb,OAAO,EACL,4IAA4I;aAC/I,CAAC,CAAC;QACL,CAAC;QACD,OAAO,EAAE,QAAQ,EAAE,qBAAqB,EAAE,KAAK,EAAE,CAAC;IACpD,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,sDAAsD,EAAE,CAAC,CAAC;IAC/F,QAAQ,GAAG,YAAY,CAAC,QAAQ,EAAE,+CAA+C,CAAC,CAAC;IACnF,OAAO,EAAE,QAAQ,EAAE,qBAAqB,EAAE,IAAI,EAAE,CAAC;AACnD,CAAC;AAED,SAAS,kBAAkB,CAAC,IAAY,EAAE,KAAmB;IAC3D,MAAM,WAAW,GAAG,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAChD,IAAI,WAAW,KAAK,YAAY,EAAE,CAAC;QACjC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,8BAA8B,EAAE,CAAC,CAAC;QACrE,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAC9C,IAAI,MAAM,EAAE,MAAM,EAAE,CAAC;YACnB,MAAM,UAAU,GAAG,wBAAwB,CAAC,IAAI,CAAC,CAAC;YAClD,KAAK,CAAC,IAAI,CAAC;gBACT,KAAK,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM;gBACjC,OAAO,EAAE,UAAU;oBACjB,CAAC,CAAC,0CAA0C;oBAC5C,CAAC,CAAC,iDAAiD;aACtD,CAAC,CAAC;QACL,CAAC;aAAM,CAAC;YACN,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,gEAAgE,EAAE,CAAC,CAAC;QAC3G,CAAC;IACH,CAAC;SAAM,IAAI,WAAW,KAAK,aAAa,EAAE,CAAC;QACzC,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,8DAA8D,EAAE,CAAC,CAAC;IACzG,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,iBAAiB,UAAU,EAAE,CAAC,CAAC;IACzE,CAAC;AACH,CAAC;AAED,SAAS,kCAAkC,CACzC,IAAY,EACZ,KAAmB,EACnB,QAAuB;IAEvB,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;IAClC,IAAI,KAAK,KAAK,WAAW,EAAE,CAAC;QAC1B,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,0BAA0B,EAAE,CAAC,CAAC;IACnE,CAAC;SAAM,IAAI,KAAK,EAAE,CAAC;QACjB,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,KAAK,qCAAqC,EAAE,CAAC,CAAC;IACvG,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,iEAAiE,EAAE,CAAC,CAAC;IAC5G,CAAC;IAED,MAAM,cAAc,GAAG,wCAAwC,CAAC;IAChE,MAAM,eAAe,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC;IACnD,IAAI,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,EAAE,CAAC;QACnD,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,oBAAoB,cAAc,EAAE,EAAE,CAAC,CAAC;QAC3E,IAAI,eAAe,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACtC,QAAQ,GAAG,YAAY,CAAC,QAAQ,EAAE,2BAA2B,cAAc,EAAE,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,oDAAoD,EAAE,CAAC,CAAC;QAC7F,QAAQ,GAAG,YAAY,CAAC,QAAQ,EAAE,8DAA8D,CAAC,CAAC;IACpG,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,SAAS,qBAAqB,CAAC,IAAY,EAAE,KAAmB;IAC9D,MAAM,OAAO,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAC7C,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC;QAAE,OAAO;IACpC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,OAAO,EAAE,MAAM,CAAC,CAAyB,CAAC;QACrF,MAAM,OAAO,GAAG,OAAO,OAAO,CAAC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,cAAc,CAAC;QACvF,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,qBAAqB,OAAO,EAAE,EAAE,CAAC,CAAC;QACvE,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,oBAAoB,EAAE,EAAE,CAAC,CAAC;IAC5E,CAAC;IAAC,MAAM,CAAC;QACP,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,oBAAoB,eAAe,EAAE,CAAC,CAAC;IACvF,CAAC;AACH,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,IAAY,EAAE,QAAkB;IAC9D,MAAM,KAAK,GAAiB,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,IAAI,EAAE,EAAE,CAAC,CAAC;IACxE,IAAI,OAAO,GAAG,KAAK,CAAC;IACpB,IAAI,QAAQ,GAAkB,IAAI,CAAC;IACnC,IAAI,qBAAqB,GAAG,KAAK,CAAC;IAElC,MAAM,SAAS,GAAG,sBAAsB,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACzD,IAAI,SAAS,CAAC,EAAE,EAAE,CAAC;QACjB,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,kCAAkC,EAAE,CAAC,CAAC;IAC3E,CAAC;SAAM,CAAC;QACN,KAAK,MAAM,GAAG,IAAI,SAAS,CAAC,MAAM;YAAE,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC;QAChF,OAAO,GAAG,IAAI,CAAC;QACf,QAAQ,GAAG,YAAY,CAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,aAAa,GAAG,4BAA4B,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IAC1E,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC;IAClC,qBAAqB,GAAG,aAAa,CAAC,qBAAqB,CAAC;IAC5D,kBAAkB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAChC,QAAQ,GAAG,kCAAkC,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,CAAC;IACrE,qBAAqB,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IAEnC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,YAAY,CAAC,CAAC,EAAE,CAAC;QAClD,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,YAAY,UAAU,EAAE,CAAC,CAAC;QAClE,OAAO,GAAG,IAAI,CAAC;QACf,QAAQ,GAAG,YAAY,CAAC,QAAQ,EAAE,aAAa,CAAC,CAAC;IACnD,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,qBAAqB,EAAE,CAAC;AAC7D,CAAC"}
@@ -1,5 +0,0 @@
1
- import { INTEGRATION_IDE_KEYS, loadIntegrationCompat, integrationWizardLabel } from "./integration-compat.js";
2
- import type { DoctorLine } from "./doctor-checks.js";
3
- export declare function runIntegrationDoctorChecks(repoRoot: string, templatesRoot: string): DoctorLine[];
4
- export { integrationWizardLabel, INTEGRATION_IDE_KEYS, loadIntegrationCompat };
5
- //# sourceMappingURL=doctor-integration-checks.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"doctor-integration-checks.d.ts","sourceRoot":"","sources":["../../../src/cli/lib/doctor-integration-checks.ts"],"names":[],"mappings":"AAIA,OAAO,EACL,oBAAoB,EACpB,qBAAqB,EACrB,sBAAsB,EAEvB,MAAM,yBAAyB,CAAC;AACjC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAiCrD,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,GACpB,UAAU,EAAE,CAsDd;AAED,OAAO,EAAE,sBAAsB,EAAE,oBAAoB,EAAE,qBAAqB,EAAE,CAAC"}
@@ -1,89 +0,0 @@
1
- import fs from "node:fs";
2
- import path from "node:path";
3
- import { errorMessage } from "./cli-io.js";
4
- import { spawnSync } from "node:child_process";
5
- import { INTEGRATION_IDE_KEYS, loadIntegrationCompat, integrationWizardLabel, } from "./integration-compat.js";
6
- function pathExists(repoRoot, rel) {
7
- const normalized = rel.endsWith("/") ? rel.slice(0, -1) : rel;
8
- return fs.existsSync(path.join(repoRoot, normalized));
9
- }
10
- function readCursorHooksVersion(repoRoot) {
11
- const p = path.join(repoRoot, ".cursor/hooks.json");
12
- if (!fs.existsSync(p))
13
- return null;
14
- try {
15
- const j = JSON.parse(fs.readFileSync(p, "utf8"));
16
- return typeof j.version === "number" ? j.version : null;
17
- }
18
- catch {
19
- return null;
20
- }
21
- }
22
- function probeCliVersion(cmd, args) {
23
- const r = spawnSync(cmd, args, { encoding: "utf8", timeout: 5000 });
24
- if (r.status !== 0)
25
- return null;
26
- const out = `${r.stdout ?? ""}${r.stderr ?? ""}`.trim();
27
- return out.length > 0 ? out.split("\n")[0].trim() : null;
28
- }
29
- function detectIntegrationPresent(repoRoot, key, entry) {
30
- if (key === "codex-cli") {
31
- // AGENTS.md is core GXT scaffold — only .codex/config.toml signals Codex CLI wiring.
32
- return pathExists(repoRoot, ".codex/config.toml");
33
- }
34
- return entry.canonical_paths.some((p) => pathExists(repoRoot, p));
35
- }
36
- export function runIntegrationDoctorChecks(repoRoot, templatesRoot) {
37
- const lines = [];
38
- let compat;
39
- try {
40
- compat = loadIntegrationCompat(templatesRoot);
41
- }
42
- catch (e) {
43
- lines.push({
44
- level: "warn",
45
- message: `integration compat manifest unavailable: ${errorMessage(e)}`,
46
- });
47
- return lines;
48
- }
49
- const detected = [];
50
- for (const key of INTEGRATION_IDE_KEYS) {
51
- const entry = compat.integrations[key];
52
- for (const dep of entry.deprecated_paths) {
53
- if (pathExists(repoRoot, dep)) {
54
- const canonical = entry.canonical_paths[0] ?? "(see .gitagent/ARCHITECTURE.pointer.json)";
55
- lines.push({
56
- level: "warn",
57
- message: `deprecated path ${dep} — migrate to ${canonical} (${entry.display_name})`,
58
- });
59
- }
60
- }
61
- if (!detectIntegrationPresent(repoRoot, key, entry))
62
- continue;
63
- let label = key;
64
- if (entry.cli_probe && entry.cli_probe.length >= 2) {
65
- const ver = probeCliVersion(entry.cli_probe[0], entry.cli_probe.slice(1));
66
- if (ver)
67
- label = `${key} (${ver})`;
68
- }
69
- detected.push(label);
70
- if (key === "cursor" && entry.hooks_schema_version != null) {
71
- const hv = readCursorHooksVersion(repoRoot);
72
- if (hv != null && hv !== entry.hooks_schema_version) {
73
- lines.push({
74
- level: "warn",
75
- message: `.cursor/hooks.json version ${hv} — expected ${entry.hooks_schema_version} per integration compat`,
76
- });
77
- }
78
- }
79
- }
80
- if (detected.length > 0) {
81
- lines.push({ level: "ok", message: `detected agent wiring: ${detected.join(", ")}` });
82
- }
83
- else {
84
- lines.push({ level: "warn", message: "no agent integration files detected — run gapman init" });
85
- }
86
- return lines;
87
- }
88
- export { integrationWizardLabel, INTEGRATION_IDE_KEYS, loadIntegrationCompat };
89
- //# sourceMappingURL=doctor-integration-checks.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"doctor-integration-checks.js","sourceRoot":"","sources":["../../../src/cli/lib/doctor-integration-checks.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- import { type DoctorLine } from "./doctor-checks.js";
2
- import type { Manifest } from "./types.js";
3
- export interface DoctorReport {
4
- lines: DoctorLine[];
5
- hasFail: boolean;
6
- nextStep: string | null;
7
- teacherAllowlistUnset: boolean;
8
- }
9
- export declare function collectDoctorReport(root: string, manifest: Manifest, templatesRoot?: string): DoctorReport;
10
- //# sourceMappingURL=doctor-orchestration.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"doctor-orchestration.d.ts","sourceRoot":"","sources":["../../../src/cli/lib/doctor-orchestration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAqD,KAAK,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAKxG,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,qBAAqB,EAAE,OAAO,CAAC;CAChC;AAED,wBAAgB,mBAAmB,CACjC,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,QAAQ,EAClB,aAAa,CAAC,EAAE,MAAM,GACrB,YAAY,CAwBd"}
@@ -1,32 +0,0 @@
1
- import { runDoctorChecks, doctorLinesHasFail, pickNextStep } from "./doctor-checks.js";
2
- import { runIntegrationDoctorChecks } from "./doctor-integration-checks.js";
3
- import { runSubstrateDriftDoctorChecks } from "./doctor-substrate-drift.js";
4
- import { runArchitecturePointerDoctorChecks } from "./architecture-pointer.js";
5
- import { resolveTemplateRootFromModule } from "./integration-compat.js";
6
- export function collectDoctorReport(root, manifest, templatesRoot) {
7
- const result = runDoctorChecks(root, manifest);
8
- let lines = [...result.lines, ...runArchitecturePointerDoctorChecks(root)];
9
- let nextStep = result.nextStep;
10
- try {
11
- const tpl = templatesRoot ?? resolveTemplateRootFromModule();
12
- lines = [...lines, ...runIntegrationDoctorChecks(root, tpl)];
13
- const drift = runSubstrateDriftDoctorChecks(root, tpl);
14
- lines = [...lines, ...drift.lines];
15
- if (drift.nextStep) {
16
- nextStep = pickNextStep(nextStep, drift.nextStep);
17
- }
18
- }
19
- catch {
20
- lines = [
21
- ...lines,
22
- { level: "warn", message: "integration compat checks skipped (templates not found)" },
23
- ];
24
- }
25
- return {
26
- lines,
27
- hasFail: doctorLinesHasFail(lines) || result.hasFail,
28
- nextStep,
29
- teacherAllowlistUnset: result.teacherAllowlistUnset,
30
- };
31
- }
32
- //# sourceMappingURL=doctor-orchestration.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"doctor-orchestration.js","sourceRoot":"","sources":["../../../src/cli/lib/doctor-orchestration.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,kBAAkB,EAAE,YAAY,EAAmB,MAAM,oBAAoB,CAAC;AACxG,OAAO,EAAE,0BAA0B,EAAE,MAAM,gCAAgC,CAAC;AAC5E,OAAO,EAAE,6BAA6B,EAAE,MAAM,6BAA6B,CAAC;AAC5E,OAAO,EAAE,kCAAkC,EAAE,MAAM,2BAA2B,CAAC;AAC/E,OAAO,EAAE,6BAA6B,EAAE,MAAM,yBAAyB,CAAC;AAUxE,MAAM,UAAU,mBAAmB,CACjC,IAAY,EACZ,QAAkB,EAClB,aAAsB;IAEtB,MAAM,MAAM,GAAG,eAAe,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IAC/C,IAAI,KAAK,GAAG,CAAC,GAAG,MAAM,CAAC,KAAK,EAAE,GAAG,kCAAkC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC3E,IAAI,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IAC/B,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,aAAa,IAAI,6BAA6B,EAAE,CAAC;QAC7D,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,GAAG,0BAA0B,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAC;QAC7D,MAAM,KAAK,GAAG,6BAA6B,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QACvD,KAAK,GAAG,CAAC,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;YACnB,QAAQ,GAAG,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,QAAQ,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,KAAK,GAAG;YACN,GAAG,KAAK;YACR,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,yDAAyD,EAAE;SACtF,CAAC;IACJ,CAAC;IACD,OAAO;QACL,KAAK;QACL,OAAO,EAAE,kBAAkB,CAAC,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO;QACpD,QAAQ;QACR,qBAAqB,EAAE,MAAM,CAAC,qBAAqB;KACpD,CAAC;AACJ,CAAC"}
@@ -1,7 +0,0 @@
1
- import type { DoctorLine } from "./doctor-checks.js";
2
- export interface SubstrateDriftDoctorResult {
3
- lines: DoctorLine[];
4
- nextStep: string | null;
5
- }
6
- export declare function runSubstrateDriftDoctorChecks(repoRoot: string, templatesRoot: string): SubstrateDriftDoctorResult;
7
- //# sourceMappingURL=doctor-substrate-drift.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"doctor-substrate-drift.d.ts","sourceRoot":"","sources":["../../../src/cli/lib/doctor-substrate-drift.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAC;AAQrD,MAAM,WAAW,0BAA0B;IACzC,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,wBAAgB,6BAA6B,CAC3C,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,GACpB,0BAA0B,CA+B5B"}
@@ -1,35 +0,0 @@
1
- import { NPM_PACKAGE_NAME } from "./constants.js";
2
- import { loadIntegrationCompat } from "./integration-compat.js";
3
- import { compareSemver, legacyVersionWarning, readInstalledSubstrateVersion, } from "./substrate-version.js";
4
- export function runSubstrateDriftDoctorChecks(repoRoot, templatesRoot) {
5
- const installed = readInstalledSubstrateVersion(repoRoot);
6
- const bundled = loadIntegrationCompat(templatesRoot).opengantry_version;
7
- const lines = [];
8
- let nextStep = null;
9
- const legacyWarn = legacyVersionWarning(installed.source);
10
- if (legacyWarn) {
11
- lines.push({ level: "warn", message: legacyWarn });
12
- }
13
- const cmp = compareSemver(installed.version, bundled);
14
- if (cmp === 0) {
15
- lines.push({
16
- level: "ok",
17
- message: `substrate version: ${installed.version} (matches bundled gapman)`,
18
- });
19
- }
20
- else if (cmp < 0) {
21
- lines.push({
22
- level: "warn",
23
- message: `substrate version ${installed.version} is behind bundled gapman ${bundled} — run gapman upgrade after updating ${NPM_PACKAGE_NAME}`,
24
- });
25
- nextStep = "gapman upgrade";
26
- }
27
- else {
28
- lines.push({
29
- level: "warn",
30
- message: `substrate version ${installed.version} is ahead of bundled gapman ${bundled} — update ${NPM_PACKAGE_NAME} (e.g. npm install ${NPM_PACKAGE_NAME}@latest), then re-run gapman doctor`,
31
- });
32
- }
33
- return { lines, nextStep };
34
- }
35
- //# sourceMappingURL=doctor-substrate-drift.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"doctor-substrate-drift.js","sourceRoot":"","sources":["../../../src/cli/lib/doctor-substrate-drift.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAElD,OAAO,EAAE,qBAAqB,EAAE,MAAM,yBAAyB,CAAC;AAChE,OAAO,EACL,aAAa,EACb,oBAAoB,EACpB,6BAA6B,GAC9B,MAAM,wBAAwB,CAAC;AAOhC,MAAM,UAAU,6BAA6B,CAC3C,QAAgB,EAChB,aAAqB;IAErB,MAAM,SAAS,GAAG,6BAA6B,CAAC,QAAQ,CAAC,CAAC;IAC1D,MAAM,OAAO,GAAG,qBAAqB,CAAC,aAAa,CAAC,CAAC,kBAAkB,CAAC;IACxE,MAAM,KAAK,GAAiB,EAAE,CAAC;IAC/B,IAAI,QAAQ,GAAkB,IAAI,CAAC;IAEnC,MAAM,UAAU,GAAG,oBAAoB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IAC1D,IAAI,UAAU,EAAE,CAAC;QACf,KAAK,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,GAAG,GAAG,aAAa,CAAC,SAAS,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACtD,IAAI,GAAG,KAAK,CAAC,EAAE,CAAC;QACd,KAAK,CAAC,IAAI,CAAC;YACT,KAAK,EAAE,IAAI;YACX,OAAO,EAAE,sBAAsB,SAAS,CAAC,OAAO,2BAA2B;SAC5E,CAAC,CAAC;IACL,CAAC;SAAM,IAAI,GAAG,GAAG,CAAC,EAAE,CAAC;QACnB,KAAK,CAAC,IAAI,CAAC;YACT,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,qBAAqB,SAAS,CAAC,OAAO,6BAA6B,OAAO,wCAAwC,gBAAgB,EAAE;SAC9I,CAAC,CAAC;QACH,QAAQ,GAAG,gBAAgB,CAAC;IAC9B,CAAC;SAAM,CAAC;QACN,KAAK,CAAC,IAAI,CAAC;YACT,KAAK,EAAE,MAAM;YACb,OAAO,EAAE,qBAAqB,SAAS,CAAC,OAAO,+BAA+B,OAAO,aAAa,gBAAgB,sBAAsB,gBAAgB,qCAAqC;SAC9L,CAAC,CAAC;IACL,CAAC;IAED,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;AAC7B,CAAC"}
@@ -1,3 +0,0 @@
1
- export declare function msnFromMissionPath(rel: string): string | null;
2
- export declare function listMissionMsnIdsAtRef(root: string, ref: string): Set<string>;
3
- //# sourceMappingURL=git-metrics-missions.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"git-metrics-missions.d.ts","sourceRoot":"","sources":["../../../src/cli/lib/git-metrics-missions.ts"],"names":[],"mappings":"AAiBA,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAO7D;AAED,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC,CAmB7E"}
@@ -1,51 +0,0 @@
1
- import YAML from "yaml";
2
- import { MSN_ID_PATTERN } from "./constants.js";
3
- import { gitRunOk } from "./git-repo.js";
4
- const MISSIONS_PREFIX = ".gitagent/missions/";
5
- function parseMsnFromYamlContent(content) {
6
- try {
7
- const data = YAML.parse(content);
8
- const raw = data.msn_id ?? data.msnId;
9
- if (typeof raw === "string" && MSN_ID_PATTERN.test(raw.trim()))
10
- return raw.trim();
11
- }
12
- catch {
13
- /* skip */
14
- }
15
- return null;
16
- }
17
- export function msnFromMissionPath(rel) {
18
- const norm = rel.trim().replace(/\\/g, "/");
19
- if (!norm.startsWith(MISSIONS_PREFIX))
20
- return null;
21
- if (!/\.(ya?ml|md)$/i.test(norm))
22
- return null;
23
- const fromName = norm.match(/MSN-\d{4}/)?.[0];
24
- if (fromName && MSN_ID_PATTERN.test(fromName))
25
- return fromName;
26
- return null;
27
- }
28
- export function listMissionMsnIdsAtRef(root, ref) {
29
- const ids = new Set();
30
- const tree = gitRunOk(root, ["ls-tree", "-r", "--name-only", ref, MISSIONS_PREFIX]);
31
- if (!tree.ok)
32
- return ids;
33
- for (const rel of tree.stdout.split("\n")) {
34
- const norm = rel.trim().replace(/\\/g, "/");
35
- if (!norm)
36
- continue;
37
- const fromName = msnFromMissionPath(norm);
38
- if (fromName) {
39
- ids.add(fromName);
40
- continue;
41
- }
42
- const show = gitRunOk(root, ["show", `${ref}:${norm}`]);
43
- if (!show.ok)
44
- continue;
45
- const parsed = parseMsnFromYamlContent(show.stdout);
46
- if (parsed)
47
- ids.add(parsed);
48
- }
49
- return ids;
50
- }
51
- //# sourceMappingURL=git-metrics-missions.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"git-metrics-missions.js","sourceRoot":"","sources":["../../../src/cli/lib/git-metrics-missions.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAEzC,MAAM,eAAe,GAAG,qBAAqB,CAAC;AAE9C,SAAS,uBAAuB,CAAC,OAAe;IAC9C,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAwC,CAAC;QACxE,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC;QACtC,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;YAAE,OAAO,GAAG,CAAC,IAAI,EAAE,CAAC;IACpF,CAAC;IAAC,MAAM,CAAC;QACP,UAAU;IACZ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,GAAW;IAC5C,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAC5C,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC;QAAE,OAAO,IAAI,CAAC;IACnD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC9C,IAAI,QAAQ,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC;QAAE,OAAO,QAAQ,CAAC;IAC/D,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,IAAY,EAAE,GAAW;IAC9D,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,eAAe,CAAC,CAAC,CAAC;IACpF,IAAI,CAAC,IAAI,CAAC,EAAE;QAAE,OAAO,GAAG,CAAC;IAEzB,KAAK,MAAM,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;QAC5C,IAAI,CAAC,IAAI;YAAE,SAAS;QACpB,MAAM,QAAQ,GAAG,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,QAAQ,EAAE,CAAC;YACb,GAAG,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;YAClB,SAAS;QACX,CAAC;QACD,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,EAAE,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;QACxD,IAAI,CAAC,IAAI,CAAC,EAAE;YAAE,SAAS;QACvB,MAAM,MAAM,GAAG,uBAAuB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QACpD,IAAI,MAAM;YAAE,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
@@ -1,24 +0,0 @@
1
- export interface LogRecord {
2
- hash: string;
3
- subject: string;
4
- email: string;
5
- ts: string;
6
- }
7
- export declare function streamLogRecords(root: string, ref: string): LogRecord[];
8
- export declare function countBypassNotes(root: string): number;
9
- export declare function median(values: number[]): number | null;
10
- export declare function clearMetricsDiffCache(): void;
11
- export declare function aggregateFromLogStream(root: string, records: LogRecord[]): {
12
- missionIdsFromLog: Set<string>;
13
- legislative: number;
14
- worker_trace: number;
15
- bypass_audit: number;
16
- firstSeen: Map<string, number>;
17
- lastSeen: Map<string, number>;
18
- };
19
- export declare function computeTurnaround(firstSeen: Map<string, number>, lastSeen: Map<string, number>): {
20
- mean: number | null;
21
- median: number | null;
22
- samples: number;
23
- };
24
- //# sourceMappingURL=git-metrics-stream.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"git-metrics-stream.d.ts","sourceRoot":"","sources":["../../../src/cli/lib/git-metrics-stream.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;CACZ;AAID,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,SAAS,EAAE,CAiBvE;AAED,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIrD;AA4BD,wBAAgB,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAWtD;AAED,wBAAgB,qBAAqB,IAAI,IAAI,CAE5C;AAED,wBAAgB,sBAAsB,CACpC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,SAAS,EAAE,GACnB;IACD,iBAAiB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IAC/B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAC/B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B,CAuDA;AAED,wBAAgB,iBAAiB,CAC/B,SAAS,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,EAC9B,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,GAC5B;IAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAWjE"}
@@ -1,137 +0,0 @@
1
- import { GXT_BYPASS_NOTES_REF } from "./break-glass.js";
2
- import { MSN_ID_PATTERN, WORKER_LOG_FILENAME } from "./constants.js";
3
- import { parseTeacherEmailsFromEnv, commitSubjectHasMsnPrefix } from "./git-proof.js";
4
- import { gitRunOk } from "./git-repo.js";
5
- import { msnFromMissionPath } from "./git-metrics-missions.js";
6
- const diffCache = new Map();
7
- export function streamLogRecords(root, ref) {
8
- const r = gitRunOk(root, ["log", ref, "-z", "--reverse", "--format=%H%x1f%s%x1f%aE%x1f%cI"], 64 * 1024 * 1024);
9
- if (!r.ok || !r.stdout.trim())
10
- return [];
11
- const records = [];
12
- for (const chunk of r.stdout.split("\0").filter((c) => c.length > 0)) {
13
- const parts = chunk.split("\x1f");
14
- if (parts.length < 4)
15
- continue;
16
- const [hash, subject, email, ts] = parts;
17
- if (!hash || !subject || !email || !ts)
18
- continue;
19
- records.push({ hash, subject, email, ts });
20
- }
21
- return records;
22
- }
23
- export function countBypassNotes(root) {
24
- const r = gitRunOk(root, ["notes", `--ref=${GXT_BYPASS_NOTES_REF}`, "list"]);
25
- if (!r.ok || !r.stdout.trim())
26
- return 0;
27
- return r.stdout.split("\n").filter((l) => l.trim().length > 0).length;
28
- }
29
- function commitChangedPaths(root, hash) {
30
- const cached = diffCache.get(hash);
31
- if (cached)
32
- return cached;
33
- const r = gitRunOk(root, ["diff-tree", "--no-commit-id", "--name-only", "-r", hash]);
34
- const paths = r.ok
35
- ? r.stdout
36
- .split("\n")
37
- .map((p) => p.trim().replace(/\\/g, "/"))
38
- .filter((p) => p.length > 0)
39
- : [];
40
- diffCache.set(hash, paths);
41
- return paths;
42
- }
43
- function isTeacherEmail(email) {
44
- const allow = parseTeacherEmailsFromEnv();
45
- if (allow.length === 0)
46
- return false;
47
- return allow.includes(email.trim().toLowerCase());
48
- }
49
- function subjectMsnId(subject) {
50
- const m = subject.trim().match(/^\[(MSN-\d{4})\]/);
51
- const id = m?.[1];
52
- return id && MSN_ID_PATTERN.test(id) ? id : null;
53
- }
54
- export function median(values) {
55
- if (values.length === 0)
56
- return null;
57
- const sorted = [...values].sort((a, b) => a - b);
58
- const mid = Math.floor(sorted.length / 2);
59
- if (sorted.length % 2 === 0) {
60
- const a = sorted[mid - 1];
61
- const b = sorted[mid];
62
- if (a === undefined || b === undefined)
63
- return null;
64
- return (a + b) / 2;
65
- }
66
- return sorted[mid] ?? null;
67
- }
68
- export function clearMetricsDiffCache() {
69
- diffCache.clear();
70
- }
71
- export function aggregateFromLogStream(root, records) {
72
- const missionIdsFromLog = new Set();
73
- let legislative = 0;
74
- let worker_trace = 0;
75
- let bypass_audit = 0;
76
- const firstSeen = new Map();
77
- const lastSeen = new Map();
78
- for (const rec of records) {
79
- const ts = Date.parse(rec.ts);
80
- if (!Number.isFinite(ts))
81
- continue;
82
- if (rec.subject.trim().startsWith("[GXT-AUDIT] break-glass:")) {
83
- bypass_audit++;
84
- }
85
- const msnFromSubject = subjectMsnId(rec.subject);
86
- if (msnFromSubject)
87
- missionIdsFromLog.add(msnFromSubject);
88
- const paths = commitChangedPaths(root, rec.hash);
89
- let touchesMission = false;
90
- let touchesWorkerLog = false;
91
- for (const p of paths) {
92
- if (p === WORKER_LOG_FILENAME)
93
- touchesWorkerLog = true;
94
- const msnFromPath = msnFromMissionPath(p);
95
- if (msnFromPath) {
96
- touchesMission = true;
97
- if (!firstSeen.has(msnFromPath))
98
- firstSeen.set(msnFromPath, ts);
99
- missionIdsFromLog.add(msnFromPath);
100
- }
101
- }
102
- if (msnFromSubject &&
103
- commitSubjectHasMsnPrefix(rec.subject, msnFromSubject) &&
104
- isTeacherEmail(rec.email) &&
105
- touchesMission) {
106
- legislative++;
107
- }
108
- if (touchesWorkerLog && !touchesMission)
109
- worker_trace++;
110
- if (msnFromSubject)
111
- lastSeen.set(msnFromSubject, ts);
112
- }
113
- return {
114
- missionIdsFromLog,
115
- legislative,
116
- worker_trace,
117
- bypass_audit,
118
- firstSeen,
119
- lastSeen,
120
- };
121
- }
122
- export function computeTurnaround(firstSeen, lastSeen) {
123
- const deltas = [];
124
- for (const [msn, end] of lastSeen) {
125
- const start = firstSeen.get(msn);
126
- if (start === undefined)
127
- continue;
128
- const delta = (end - start) / 1000;
129
- if (Number.isFinite(delta) && delta >= 0)
130
- deltas.push(delta);
131
- }
132
- if (deltas.length === 0)
133
- return { mean: null, median: null, samples: 0 };
134
- const sum = deltas.reduce((a, b) => a + b, 0);
135
- return { mean: sum / deltas.length, median: median(deltas), samples: deltas.length };
136
- }
137
- //# sourceMappingURL=git-metrics-stream.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"git-metrics-stream.js","sourceRoot":"","sources":["../../../src/cli/lib/git-metrics-stream.ts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- export interface GitRunResult {
2
- ok: boolean;
3
- stdout: string;
4
- stderr: string;
5
- status: number | null;
6
- }
7
- /** Run git in repository root (`git -C root ...args`). */
8
- export declare function gitRun(repoRoot: string, args: string[], maxBuffer?: number): GitRunResult;
9
- export declare function gitRunOk(repoRoot: string, args: string[], maxBuffer?: number): {
10
- ok: boolean;
11
- stdout: string;
12
- };
13
- export declare function gitRevParse(repoRoot: string, ref: string): string | null;
14
- export declare function gitHead(repoRoot: string): string | null;
15
- export declare function gitLogSubjects(repoRoot: string, grep: string, limit: number): string[];
16
- export declare function gitConfigGet(repoRoot: string, key: string): string | null;
17
- export type GitDiffSinceCommitResult = {
18
- ok: true;
19
- paths: string[];
20
- } | {
21
- ok: false;
22
- stderr: string;
23
- };
24
- /** Paths under tmvcRoots that differ between ref and the working tree; empty paths = fresh. */
25
- export declare function gitDiffNameOnlySinceCommit(repoRoot: string, commit: string, tmvcRoots: readonly string[]): GitDiffSinceCommitResult;
26
- //# sourceMappingURL=git-repo.d.ts.map