@shrkcrft/inspector 0.1.0-alpha.1

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 (708) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +15 -0
  3. package/dist/acceptance-replay.d.ts +63 -0
  4. package/dist/acceptance-replay.d.ts.map +1 -0
  5. package/dist/acceptance-replay.js +240 -0
  6. package/dist/action-hint-diagnostics.d.ts +32 -0
  7. package/dist/action-hint-diagnostics.d.ts.map +1 -0
  8. package/dist/action-hint-diagnostics.js +133 -0
  9. package/dist/adoption-check.d.ts +28 -0
  10. package/dist/adoption-check.d.ts.map +1 -0
  11. package/dist/adoption-check.js +181 -0
  12. package/dist/adoption-checkpoint.d.ts +97 -0
  13. package/dist/adoption-checkpoint.d.ts.map +1 -0
  14. package/dist/adoption-checkpoint.js +209 -0
  15. package/dist/adoption-merge-preview.d.ts +28 -0
  16. package/dist/adoption-merge-preview.d.ts.map +1 -0
  17. package/dist/adoption-merge-preview.js +254 -0
  18. package/dist/adoption-report-renderer.d.ts +33 -0
  19. package/dist/adoption-report-renderer.d.ts.map +1 -0
  20. package/dist/adoption-report-renderer.js +257 -0
  21. package/dist/adoption-state.d.ts +100 -0
  22. package/dist/adoption-state.d.ts.map +1 -0
  23. package/dist/adoption-state.js +296 -0
  24. package/dist/adoption-three-way.d.ts +46 -0
  25. package/dist/adoption-three-way.d.ts.map +1 -0
  26. package/dist/adoption-three-way.js +181 -0
  27. package/dist/agent-brief.d.ts +77 -0
  28. package/dist/agent-brief.d.ts.map +1 -0
  29. package/dist/agent-brief.js +490 -0
  30. package/dist/agent-contract-gate.d.ts +108 -0
  31. package/dist/agent-contract-gate.d.ts.map +1 -0
  32. package/dist/agent-contract-gate.js +412 -0
  33. package/dist/agent-contract-templates.d.ts +63 -0
  34. package/dist/agent-contract-templates.d.ts.map +1 -0
  35. package/dist/agent-contract-templates.js +346 -0
  36. package/dist/agent-contract.d.ts +65 -0
  37. package/dist/agent-contract.d.ts.map +1 -0
  38. package/dist/agent-contract.js +555 -0
  39. package/dist/agent-handoff.d.ts +123 -0
  40. package/dist/agent-handoff.d.ts.map +1 -0
  41. package/dist/agent-handoff.js +470 -0
  42. package/dist/agent-instructions.d.ts +2 -0
  43. package/dist/agent-instructions.d.ts.map +1 -0
  44. package/dist/agent-instructions.js +21 -0
  45. package/dist/agent-orchestration.d.ts +61 -0
  46. package/dist/agent-orchestration.d.ts.map +1 -0
  47. package/dist/agent-orchestration.js +285 -0
  48. package/dist/agent-task-prep.d.ts +31 -0
  49. package/dist/agent-task-prep.d.ts.map +1 -0
  50. package/dist/agent-task-prep.js +73 -0
  51. package/dist/ai-readiness.d.ts +30 -0
  52. package/dist/ai-readiness.d.ts.map +1 -0
  53. package/dist/ai-readiness.js +279 -0
  54. package/dist/api-report.d.ts +51 -0
  55. package/dist/api-report.d.ts.map +1 -0
  56. package/dist/api-report.js +254 -0
  57. package/dist/apply-dispatch-trace.d.ts +93 -0
  58. package/dist/apply-dispatch-trace.d.ts.map +1 -0
  59. package/dist/apply-dispatch-trace.js +283 -0
  60. package/dist/apply-gate-result.d.ts +52 -0
  61. package/dist/apply-gate-result.d.ts.map +1 -0
  62. package/dist/apply-gate-result.js +44 -0
  63. package/dist/architecture-map.d.ts +118 -0
  64. package/dist/architecture-map.d.ts.map +1 -0
  65. package/dist/architecture-map.js +543 -0
  66. package/dist/area-explore.d.ts +75 -0
  67. package/dist/area-explore.d.ts.map +1 -0
  68. package/dist/area-explore.js +438 -0
  69. package/dist/area-map.d.ts +57 -0
  70. package/dist/area-map.d.ts.map +1 -0
  71. package/dist/area-map.js +214 -0
  72. package/dist/asset-provenance.d.ts +123 -0
  73. package/dist/asset-provenance.d.ts.map +1 -0
  74. package/dist/asset-provenance.js +209 -0
  75. package/dist/barrel-operations.d.ts +45 -0
  76. package/dist/barrel-operations.d.ts.map +1 -0
  77. package/dist/barrel-operations.js +159 -0
  78. package/dist/boundaries-changed-only.d.ts +62 -0
  79. package/dist/boundaries-changed-only.d.ts.map +1 -0
  80. package/dist/boundaries-changed-only.js +97 -0
  81. package/dist/boundary-suggestions.d.ts +20 -0
  82. package/dist/boundary-suggestions.d.ts.map +1 -0
  83. package/dist/boundary-suggestions.js +51 -0
  84. package/dist/bundle-diff.d.ts +98 -0
  85. package/dist/bundle-diff.d.ts.map +1 -0
  86. package/dist/bundle-diff.js +531 -0
  87. package/dist/bundle-replay.d.ts +68 -0
  88. package/dist/bundle-replay.d.ts.map +1 -0
  89. package/dist/bundle-replay.js +273 -0
  90. package/dist/bundle-validate-html.d.ts +11 -0
  91. package/dist/bundle-validate-html.d.ts.map +1 -0
  92. package/dist/bundle-validate-html.js +60 -0
  93. package/dist/change-intent.d.ts +36 -0
  94. package/dist/change-intent.d.ts.map +1 -0
  95. package/dist/change-intent.js +259 -0
  96. package/dist/changed-preflight.d.ts +59 -0
  97. package/dist/changed-preflight.d.ts.map +1 -0
  98. package/dist/changed-preflight.js +358 -0
  99. package/dist/changed-scope.d.ts +112 -0
  100. package/dist/changed-scope.d.ts.map +1 -0
  101. package/dist/changed-scope.js +172 -0
  102. package/dist/changes-summary.d.ts +87 -0
  103. package/dist/changes-summary.d.ts.map +1 -0
  104. package/dist/changes-summary.js +323 -0
  105. package/dist/check-result-v1.d.ts +90 -0
  106. package/dist/check-result-v1.d.ts.map +1 -0
  107. package/dist/check-result-v1.js +335 -0
  108. package/dist/ci-integrity-report.d.ts +38 -0
  109. package/dist/ci-integrity-report.d.ts.map +1 -0
  110. package/dist/ci-integrity-report.js +324 -0
  111. package/dist/ci-permissions-fix.d.ts +38 -0
  112. package/dist/ci-permissions-fix.d.ts.map +1 -0
  113. package/dist/ci-permissions-fix.js +382 -0
  114. package/dist/ci-permissions.d.ts +51 -0
  115. package/dist/ci-permissions.d.ts.map +1 -0
  116. package/dist/ci-permissions.js +431 -0
  117. package/dist/ci-predict.d.ts +42 -0
  118. package/dist/ci-predict.d.ts.map +1 -0
  119. package/dist/ci-predict.js +300 -0
  120. package/dist/ci-scaffold.d.ts +47 -0
  121. package/dist/ci-scaffold.d.ts.map +1 -0
  122. package/dist/ci-scaffold.js +638 -0
  123. package/dist/codemod-assist.d.ts +97 -0
  124. package/dist/codemod-assist.d.ts.map +1 -0
  125. package/dist/codemod-assist.js +261 -0
  126. package/dist/command-recommender.d.ts +25 -0
  127. package/dist/command-recommender.d.ts.map +1 -0
  128. package/dist/command-recommender.js +145 -0
  129. package/dist/command-suggester.d.ts +61 -0
  130. package/dist/command-suggester.d.ts.map +1 -0
  131. package/dist/command-suggester.js +159 -0
  132. package/dist/command-taxonomy.d.ts +38 -0
  133. package/dist/command-taxonomy.d.ts.map +1 -0
  134. package/dist/command-taxonomy.js +164 -0
  135. package/dist/compliance-evidence.d.ts +58 -0
  136. package/dist/compliance-evidence.d.ts.map +1 -0
  137. package/dist/compliance-evidence.js +260 -0
  138. package/dist/compliance-profiles.d.ts +42 -0
  139. package/dist/compliance-profiles.d.ts.map +1 -0
  140. package/dist/compliance-profiles.js +171 -0
  141. package/dist/construct-adoption-diff.d.ts +55 -0
  142. package/dist/construct-adoption-diff.d.ts.map +1 -0
  143. package/dist/construct-adoption-diff.js +331 -0
  144. package/dist/construct-adoption.d.ts +71 -0
  145. package/dist/construct-adoption.d.ts.map +1 -0
  146. package/dist/construct-adoption.js +331 -0
  147. package/dist/construct-inference.d.ts +44 -0
  148. package/dist/construct-inference.d.ts.map +1 -0
  149. package/dist/construct-inference.js +391 -0
  150. package/dist/construct-registry.d.ts +32 -0
  151. package/dist/construct-registry.d.ts.map +1 -0
  152. package/dist/construct-registry.js +198 -0
  153. package/dist/contract-file-rule.d.ts +37 -0
  154. package/dist/contract-file-rule.d.ts.map +1 -0
  155. package/dist/contract-file-rule.js +99 -0
  156. package/dist/contract-template-registry.d.ts +28 -0
  157. package/dist/contract-template-registry.d.ts.map +1 -0
  158. package/dist/contract-template-registry.js +161 -0
  159. package/dist/contradictions.d.ts +52 -0
  160. package/dist/contradictions.d.ts.map +1 -0
  161. package/dist/contradictions.js +391 -0
  162. package/dist/convention-registry.d.ts +44 -0
  163. package/dist/convention-registry.d.ts.map +1 -0
  164. package/dist/convention-registry.js +195 -0
  165. package/dist/coverage-report.d.ts +25 -0
  166. package/dist/coverage-report.d.ts.map +1 -0
  167. package/dist/coverage-report.js +190 -0
  168. package/dist/custom-checks.d.ts +146 -0
  169. package/dist/custom-checks.d.ts.map +1 -0
  170. package/dist/custom-checks.js +260 -0
  171. package/dist/dashboard/dashboard-data.d.ts +59 -0
  172. package/dist/dashboard/dashboard-data.d.ts.map +1 -0
  173. package/dist/dashboard/dashboard-data.js +653 -0
  174. package/dist/dashboard-export.d.ts +67 -0
  175. package/dist/dashboard-export.d.ts.map +1 -0
  176. package/dist/dashboard-export.js +203 -0
  177. package/dist/decision-records.d.ts +47 -0
  178. package/dist/decision-records.d.ts.map +1 -0
  179. package/dist/decision-records.js +255 -0
  180. package/dist/demo-package.d.ts +49 -0
  181. package/dist/demo-package.d.ts.map +1 -0
  182. package/dist/demo-package.js +305 -0
  183. package/dist/demo-script.d.ts +25 -0
  184. package/dist/demo-script.d.ts.map +1 -0
  185. package/dist/demo-script.js +198 -0
  186. package/dist/demo-workflow.d.ts +28 -0
  187. package/dist/demo-workflow.d.ts.map +1 -0
  188. package/dist/demo-workflow.js +178 -0
  189. package/dist/dev-cycle.d.ts +41 -0
  190. package/dist/dev-cycle.d.ts.map +1 -0
  191. package/dist/dev-cycle.js +94 -0
  192. package/dist/dev-session-html.d.ts +13 -0
  193. package/dist/dev-session-html.d.ts.map +1 -0
  194. package/dist/dev-session-html.js +223 -0
  195. package/dist/dev-session-report.d.ts +11 -0
  196. package/dist/dev-session-report.d.ts.map +1 -0
  197. package/dist/dev-session-report.js +206 -0
  198. package/dist/dev-session.d.ts +257 -0
  199. package/dist/dev-session.d.ts.map +1 -0
  200. package/dist/dev-session.js +568 -0
  201. package/dist/diagnostics-suggest.d.ts +17 -0
  202. package/dist/diagnostics-suggest.d.ts.map +1 -0
  203. package/dist/diagnostics-suggest.js +69 -0
  204. package/dist/docs-check.d.ts +40 -0
  205. package/dist/docs-check.d.ts.map +1 -0
  206. package/dist/docs-check.js +221 -0
  207. package/dist/doctor-acknowledgements.d.ts +69 -0
  208. package/dist/doctor-acknowledgements.d.ts.map +1 -0
  209. package/dist/doctor-acknowledgements.js +150 -0
  210. package/dist/doctor-result.d.ts +51 -0
  211. package/dist/doctor-result.d.ts.map +1 -0
  212. package/dist/doctor-result.js +7 -0
  213. package/dist/doctor-suppressions.d.ts +91 -0
  214. package/dist/doctor-suppressions.d.ts.map +1 -0
  215. package/dist/doctor-suppressions.js +238 -0
  216. package/dist/drift-baseline.d.ts +29 -0
  217. package/dist/drift-baseline.d.ts.map +1 -0
  218. package/dist/drift-baseline.js +80 -0
  219. package/dist/drift.d.ts +38 -0
  220. package/dist/drift.d.ts.map +1 -0
  221. package/dist/drift.js +107 -0
  222. package/dist/entrypoint-matrix.d.ts +61 -0
  223. package/dist/entrypoint-matrix.d.ts.map +1 -0
  224. package/dist/entrypoint-matrix.js +221 -0
  225. package/dist/examples-check.d.ts +36 -0
  226. package/dist/examples-check.d.ts.map +1 -0
  227. package/dist/examples-check.js +168 -0
  228. package/dist/execution-graph.d.ts +98 -0
  229. package/dist/execution-graph.d.ts.map +1 -0
  230. package/dist/execution-graph.js +484 -0
  231. package/dist/export-bundle.d.ts +10 -0
  232. package/dist/export-bundle.d.ts.map +1 -0
  233. package/dist/export-bundle.js +90 -0
  234. package/dist/failure-diagnostics.d.ts +63 -0
  235. package/dist/failure-diagnostics.d.ts.map +1 -0
  236. package/dist/failure-diagnostics.js +243 -0
  237. package/dist/feature-bundle.d.ts +111 -0
  238. package/dist/feature-bundle.d.ts.map +1 -0
  239. package/dist/feature-bundle.js +211 -0
  240. package/dist/feedback-actions-v2.d.ts +65 -0
  241. package/dist/feedback-actions-v2.d.ts.map +1 -0
  242. package/dist/feedback-actions-v2.js +183 -0
  243. package/dist/feedback-ingestion.d.ts +96 -0
  244. package/dist/feedback-ingestion.d.ts.map +1 -0
  245. package/dist/feedback-ingestion.js +400 -0
  246. package/dist/fix-preview.d.ts +82 -0
  247. package/dist/fix-preview.d.ts.map +1 -0
  248. package/dist/fix-preview.js +365 -0
  249. package/dist/fuzzy-impact.d.ts +50 -0
  250. package/dist/fuzzy-impact.d.ts.map +1 -0
  251. package/dist/fuzzy-impact.js +446 -0
  252. package/dist/generated-code.d.ts +97 -0
  253. package/dist/generated-code.d.ts.map +1 -0
  254. package/dist/generated-code.js +395 -0
  255. package/dist/git-helpers.d.ts +38 -0
  256. package/dist/git-helpers.d.ts.map +1 -0
  257. package/dist/git-helpers.js +173 -0
  258. package/dist/golden-output.d.ts +33 -0
  259. package/dist/golden-output.d.ts.map +1 -0
  260. package/dist/golden-output.js +92 -0
  261. package/dist/grounding/build-grounding.d.ts +53 -0
  262. package/dist/grounding/build-grounding.d.ts.map +1 -0
  263. package/dist/grounding/build-grounding.js +51 -0
  264. package/dist/grounding/nx-projects.d.ts +29 -0
  265. package/dist/grounding/nx-projects.d.ts.map +1 -0
  266. package/dist/grounding/nx-projects.js +109 -0
  267. package/dist/grounding/validate-extracted-plan.d.ts +20 -0
  268. package/dist/grounding/validate-extracted-plan.d.ts.map +1 -0
  269. package/dist/grounding/validate-extracted-plan.js +127 -0
  270. package/dist/healing-plan.d.ts +33 -0
  271. package/dist/healing-plan.d.ts.map +1 -0
  272. package/dist/healing-plan.js +346 -0
  273. package/dist/helper-registry.d.ts +90 -0
  274. package/dist/helper-registry.d.ts.map +1 -0
  275. package/dist/helper-registry.js +529 -0
  276. package/dist/impact-analysis.d.ts +150 -0
  277. package/dist/impact-analysis.d.ts.map +1 -0
  278. package/dist/impact-analysis.js +697 -0
  279. package/dist/impact-graph-render.d.ts +51 -0
  280. package/dist/impact-graph-render.d.ts.map +1 -0
  281. package/dist/impact-graph-render.js +139 -0
  282. package/dist/impact-graph.d.ts +17 -0
  283. package/dist/impact-graph.d.ts.map +1 -0
  284. package/dist/impact-graph.js +119 -0
  285. package/dist/impact-render.d.ts +22 -0
  286. package/dist/impact-render.d.ts.map +1 -0
  287. package/dist/impact-render.js +422 -0
  288. package/dist/import-graph-analysis.d.ts +28 -0
  289. package/dist/import-graph-analysis.d.ts.map +1 -0
  290. package/dist/import-graph-analysis.js +193 -0
  291. package/dist/import-hygiene.d.ts +93 -0
  292. package/dist/import-hygiene.d.ts.map +1 -0
  293. package/dist/import-hygiene.js +366 -0
  294. package/dist/index.d.ts +224 -0
  295. package/dist/index.d.ts.map +1 -0
  296. package/dist/index.js +234 -0
  297. package/dist/ingest-adoption.d.ts +50 -0
  298. package/dist/ingest-adoption.d.ts.map +1 -0
  299. package/dist/ingest-adoption.js +183 -0
  300. package/dist/ingest-apply.d.ts +80 -0
  301. package/dist/ingest-apply.d.ts.map +1 -0
  302. package/dist/ingest-apply.js +227 -0
  303. package/dist/ingest-body-extractor.d.ts +28 -0
  304. package/dist/ingest-body-extractor.d.ts.map +1 -0
  305. package/dist/ingest-body-extractor.js +129 -0
  306. package/dist/ingest-drafts.d.ts +16 -0
  307. package/dist/ingest-drafts.d.ts.map +1 -0
  308. package/dist/ingest-drafts.js +482 -0
  309. package/dist/inspector-cache.d.ts +41 -0
  310. package/dist/inspector-cache.d.ts.map +1 -0
  311. package/dist/inspector-cache.js +104 -0
  312. package/dist/install-smoke.d.ts +44 -0
  313. package/dist/install-smoke.d.ts.map +1 -0
  314. package/dist/install-smoke.js +31 -0
  315. package/dist/knowledge-authoring.d.ts +151 -0
  316. package/dist/knowledge-authoring.d.ts.map +1 -0
  317. package/dist/knowledge-authoring.js +586 -0
  318. package/dist/knowledge-graph.d.ts +76 -0
  319. package/dist/knowledge-graph.d.ts.map +1 -0
  320. package/dist/knowledge-graph.js +336 -0
  321. package/dist/knowledge-lint.d.ts +97 -0
  322. package/dist/knowledge-lint.d.ts.map +1 -0
  323. package/dist/knowledge-lint.js +302 -0
  324. package/dist/knowledge-rename.d.ts +38 -0
  325. package/dist/knowledge-rename.d.ts.map +1 -0
  326. package/dist/knowledge-rename.js +88 -0
  327. package/dist/knowledge-stale.d.ts +124 -0
  328. package/dist/knowledge-stale.d.ts.map +1 -0
  329. package/dist/knowledge-stale.js +892 -0
  330. package/dist/languages/command-inference.d.ts +27 -0
  331. package/dist/languages/command-inference.d.ts.map +1 -0
  332. package/dist/languages/command-inference.js +214 -0
  333. package/dist/languages/dependency-scan.d.ts +33 -0
  334. package/dist/languages/dependency-scan.d.ts.map +1 -0
  335. package/dist/languages/dependency-scan.js +343 -0
  336. package/dist/languages/index.d.ts +14 -0
  337. package/dist/languages/index.d.ts.map +1 -0
  338. package/dist/languages/index.js +13 -0
  339. package/dist/languages/language-boundaries.d.ts +30 -0
  340. package/dist/languages/language-boundaries.d.ts.map +1 -0
  341. package/dist/languages/language-boundaries.js +176 -0
  342. package/dist/languages/language-cache.d.ts +54 -0
  343. package/dist/languages/language-cache.d.ts.map +1 -0
  344. package/dist/languages/language-cache.js +236 -0
  345. package/dist/languages/language-detection.d.ts +30 -0
  346. package/dist/languages/language-detection.d.ts.map +1 -0
  347. package/dist/languages/language-detection.js +584 -0
  348. package/dist/languages/language-id.d.ts +15 -0
  349. package/dist/languages/language-id.d.ts.map +1 -0
  350. package/dist/languages/language-id.js +15 -0
  351. package/dist/languages/language-runner.d.ts +90 -0
  352. package/dist/languages/language-runner.d.ts.map +1 -0
  353. package/dist/languages/language-runner.js +346 -0
  354. package/dist/languages/polyglot-boundary.d.ts +80 -0
  355. package/dist/languages/polyglot-boundary.d.ts.map +1 -0
  356. package/dist/languages/polyglot-boundary.js +373 -0
  357. package/dist/languages/polyglot-ci.d.ts +25 -0
  358. package/dist/languages/polyglot-ci.d.ts.map +1 -0
  359. package/dist/languages/polyglot-ci.js +278 -0
  360. package/dist/languages/test-impact.d.ts +19 -0
  361. package/dist/languages/test-impact.d.ts.map +1 -0
  362. package/dist/languages/test-impact.js +157 -0
  363. package/dist/loader-diagnostics.d.ts +40 -0
  364. package/dist/loader-diagnostics.d.ts.map +1 -0
  365. package/dist/loader-diagnostics.js +49 -0
  366. package/dist/memory-diff.d.ts +60 -0
  367. package/dist/memory-diff.d.ts.map +1 -0
  368. package/dist/memory-diff.js +302 -0
  369. package/dist/migration-profile-registry.d.ts +26 -0
  370. package/dist/migration-profile-registry.d.ts.map +1 -0
  371. package/dist/migration-profile-registry.js +135 -0
  372. package/dist/migration-readiness.d.ts +101 -0
  373. package/dist/migration-readiness.d.ts.map +1 -0
  374. package/dist/migration-readiness.js +253 -0
  375. package/dist/monorepo-onboarding.d.ts +51 -0
  376. package/dist/monorepo-onboarding.d.ts.map +1 -0
  377. package/dist/monorepo-onboarding.js +235 -0
  378. package/dist/onboarding-adoption-diff.d.ts +53 -0
  379. package/dist/onboarding-adoption-diff.d.ts.map +1 -0
  380. package/dist/onboarding-adoption-diff.js +285 -0
  381. package/dist/onboarding-adoption.d.ts +136 -0
  382. package/dist/onboarding-adoption.d.ts.map +1 -0
  383. package/dist/onboarding-adoption.js +702 -0
  384. package/dist/onboarding-agent-import.d.ts +40 -0
  385. package/dist/onboarding-agent-import.d.ts.map +1 -0
  386. package/dist/onboarding-agent-import.js +114 -0
  387. package/dist/onboarding-diff.d.ts +39 -0
  388. package/dist/onboarding-diff.d.ts.map +1 -0
  389. package/dist/onboarding-diff.js +240 -0
  390. package/dist/onboarding-drafts-merge.d.ts +71 -0
  391. package/dist/onboarding-drafts-merge.d.ts.map +1 -0
  392. package/dist/onboarding-drafts-merge.js +174 -0
  393. package/dist/onboarding-drafts.d.ts +42 -0
  394. package/dist/onboarding-drafts.d.ts.map +1 -0
  395. package/dist/onboarding-drafts.js +268 -0
  396. package/dist/onboarding-report.d.ts +8 -0
  397. package/dist/onboarding-report.d.ts.map +1 -0
  398. package/dist/onboarding-report.js +239 -0
  399. package/dist/onboarding.d.ts +134 -0
  400. package/dist/onboarding.d.ts.map +1 -0
  401. package/dist/onboarding.js +729 -0
  402. package/dist/ownership.d.ts +38 -0
  403. package/dist/ownership.d.ts.map +1 -0
  404. package/dist/ownership.js +102 -0
  405. package/dist/pack-author-ux.d.ts +58 -0
  406. package/dist/pack-author-ux.d.ts.map +1 -0
  407. package/dist/pack-author-ux.js +219 -0
  408. package/dist/pack-author.d.ts +94 -0
  409. package/dist/pack-author.d.ts.map +1 -0
  410. package/dist/pack-author.js +208 -0
  411. package/dist/pack-compatibility.d.ts +21 -0
  412. package/dist/pack-compatibility.d.ts.map +1 -0
  413. package/dist/pack-compatibility.js +114 -0
  414. package/dist/pack-contributions-inventory.d.ts +121 -0
  415. package/dist/pack-contributions-inventory.d.ts.map +1 -0
  416. package/dist/pack-contributions-inventory.js +732 -0
  417. package/dist/pack-docs.d.ts +11 -0
  418. package/dist/pack-docs.d.ts.map +1 -0
  419. package/dist/pack-docs.js +101 -0
  420. package/dist/pack-doctor.d.ts +50 -0
  421. package/dist/pack-doctor.d.ts.map +1 -0
  422. package/dist/pack-doctor.js +302 -0
  423. package/dist/pack-helper-registry.d.ts +29 -0
  424. package/dist/pack-helper-registry.d.ts.map +1 -0
  425. package/dist/pack-helper-registry.js +144 -0
  426. package/dist/pack-pending.d.ts +68 -0
  427. package/dist/pack-pending.d.ts.map +1 -0
  428. package/dist/pack-pending.js +189 -0
  429. package/dist/pack-quality-score.d.ts +44 -0
  430. package/dist/pack-quality-score.d.ts.map +1 -0
  431. package/dist/pack-quality-score.js +155 -0
  432. package/dist/pack-release-check.d.ts +24 -0
  433. package/dist/pack-release-check.d.ts.map +1 -0
  434. package/dist/pack-release-check.js +258 -0
  435. package/dist/pack-signature-status.d.ts +72 -0
  436. package/dist/pack-signature-status.d.ts.map +1 -0
  437. package/dist/pack-signature-status.js +222 -0
  438. package/dist/pack-symbol-compat.d.ts +73 -0
  439. package/dist/pack-symbol-compat.d.ts.map +1 -0
  440. package/dist/pack-symbol-compat.js +519 -0
  441. package/dist/pack-test-runner.d.ts +59 -0
  442. package/dist/pack-test-runner.d.ts.map +1 -0
  443. package/dist/pack-test-runner.js +211 -0
  444. package/dist/pipeline-command-dictionary.d.ts +2 -0
  445. package/dist/pipeline-command-dictionary.d.ts.map +1 -0
  446. package/dist/pipeline-command-dictionary.js +20 -0
  447. package/dist/pipeline-lint.d.ts +30 -0
  448. package/dist/pipeline-lint.d.ts.map +1 -0
  449. package/dist/pipeline-lint.js +134 -0
  450. package/dist/plan-dependency-graph.d.ts +25 -0
  451. package/dist/plan-dependency-graph.d.ts.map +1 -0
  452. package/dist/plan-dependency-graph.js +195 -0
  453. package/dist/plan-review.d.ts +64 -0
  454. package/dist/plan-review.d.ts.map +1 -0
  455. package/dist/plan-review.js +242 -0
  456. package/dist/plan-simulation.d.ts +108 -0
  457. package/dist/plan-simulation.d.ts.map +1 -0
  458. package/dist/plan-simulation.js +767 -0
  459. package/dist/playbook-registry.d.ts +25 -0
  460. package/dist/playbook-registry.d.ts.map +1 -0
  461. package/dist/playbook-registry.js +148 -0
  462. package/dist/playbook-script.d.ts +60 -0
  463. package/dist/playbook-script.d.ts.map +1 -0
  464. package/dist/playbook-script.js +161 -0
  465. package/dist/plugin-lifecycle-profile-registry.d.ts +52 -0
  466. package/dist/plugin-lifecycle-profile-registry.d.ts.map +1 -0
  467. package/dist/plugin-lifecycle-profile-registry.js +202 -0
  468. package/dist/plugin-lifecycle.d.ts +132 -0
  469. package/dist/plugin-lifecycle.d.ts.map +1 -0
  470. package/dist/plugin-lifecycle.js +477 -0
  471. package/dist/policy-engine.d.ts +101 -0
  472. package/dist/policy-engine.d.ts.map +1 -0
  473. package/dist/policy-engine.js +321 -0
  474. package/dist/policy-override-audit.d.ts +18 -0
  475. package/dist/policy-override-audit.d.ts.map +1 -0
  476. package/dist/policy-override-audit.js +54 -0
  477. package/dist/policy-overrides.d.ts +35 -0
  478. package/dist/policy-overrides.d.ts.map +1 -0
  479. package/dist/policy-overrides.js +84 -0
  480. package/dist/policy-test.d.ts +83 -0
  481. package/dist/policy-test.d.ts.map +1 -0
  482. package/dist/policy-test.js +342 -0
  483. package/dist/pr-summary.d.ts +34 -0
  484. package/dist/pr-summary.d.ts.map +1 -0
  485. package/dist/pr-summary.js +220 -0
  486. package/dist/product-coherence.d.ts +21 -0
  487. package/dist/product-coherence.d.ts.map +1 -0
  488. package/dist/product-coherence.js +158 -0
  489. package/dist/profile-registry.d.ts +42 -0
  490. package/dist/profile-registry.d.ts.map +1 -0
  491. package/dist/profile-registry.js +104 -0
  492. package/dist/project-coupling-audit.d.ts +64 -0
  493. package/dist/project-coupling-audit.d.ts.map +1 -0
  494. package/dist/project-coupling-audit.js +282 -0
  495. package/dist/project-overview.d.ts +14 -0
  496. package/dist/project-overview.d.ts.map +1 -0
  497. package/dist/project-overview.js +27 -0
  498. package/dist/propose-knowledge.d.ts +64 -0
  499. package/dist/propose-knowledge.d.ts.map +1 -0
  500. package/dist/propose-knowledge.js +367 -0
  501. package/dist/quality-baseline.d.ts +123 -0
  502. package/dist/quality-baseline.d.ts.map +1 -0
  503. package/dist/quality-baseline.js +433 -0
  504. package/dist/quality-html.d.ts +7 -0
  505. package/dist/quality-html.d.ts.map +1 -0
  506. package/dist/quality-html.js +64 -0
  507. package/dist/quality-report.d.ts +49 -0
  508. package/dist/quality-report.d.ts.map +1 -0
  509. package/dist/quality-report.js +296 -0
  510. package/dist/query-resolver.d.ts +38 -0
  511. package/dist/query-resolver.d.ts.map +1 -0
  512. package/dist/query-resolver.js +163 -0
  513. package/dist/ranker-explainability.d.ts +91 -0
  514. package/dist/ranker-explainability.d.ts.map +1 -0
  515. package/dist/ranker-explainability.js +550 -0
  516. package/dist/reference-lookup.d.ts +8 -0
  517. package/dist/reference-lookup.d.ts.map +1 -0
  518. package/dist/reference-lookup.js +18 -0
  519. package/dist/registration-hint-registry.d.ts +55 -0
  520. package/dist/registration-hint-registry.d.ts.map +1 -0
  521. package/dist/registration-hint-registry.js +327 -0
  522. package/dist/registry-lifecycle.d.ts +47 -0
  523. package/dist/registry-lifecycle.d.ts.map +1 -0
  524. package/dist/registry-lifecycle.js +214 -0
  525. package/dist/release-readiness.d.ts +64 -0
  526. package/dist/release-readiness.d.ts.map +1 -0
  527. package/dist/release-readiness.js +456 -0
  528. package/dist/release-smoke.d.ts +138 -0
  529. package/dist/release-smoke.d.ts.map +1 -0
  530. package/dist/release-smoke.js +459 -0
  531. package/dist/release-train.d.ts +33 -0
  532. package/dist/release-train.d.ts.map +1 -0
  533. package/dist/release-train.js +104 -0
  534. package/dist/repo-memory.d.ts +95 -0
  535. package/dist/repo-memory.d.ts.map +1 -0
  536. package/dist/repo-memory.js +614 -0
  537. package/dist/report-site.d.ts +92 -0
  538. package/dist/report-site.d.ts.map +1 -0
  539. package/dist/report-site.js +658 -0
  540. package/dist/reposet.d.ts +56 -0
  541. package/dist/reposet.d.ts.map +1 -0
  542. package/dist/reposet.js +160 -0
  543. package/dist/repository-intelligence.d.ts +145 -0
  544. package/dist/repository-intelligence.d.ts.map +1 -0
  545. package/dist/repository-intelligence.js +729 -0
  546. package/dist/repository-knowledge-model.d.ts +218 -0
  547. package/dist/repository-knowledge-model.d.ts.map +1 -0
  548. package/dist/repository-knowledge-model.js +939 -0
  549. package/dist/repository-map.d.ts +72 -0
  550. package/dist/repository-map.d.ts.map +1 -0
  551. package/dist/repository-map.js +332 -0
  552. package/dist/repository-stats.d.ts +66 -0
  553. package/dist/repository-stats.d.ts.map +1 -0
  554. package/dist/repository-stats.js +329 -0
  555. package/dist/review-comment-renderer.d.ts +59 -0
  556. package/dist/review-comment-renderer.d.ts.map +1 -0
  557. package/dist/review-comment-renderer.js +181 -0
  558. package/dist/review-comment-v2.d.ts +9 -0
  559. package/dist/review-comment-v2.d.ts.map +1 -0
  560. package/dist/review-comment-v2.js +178 -0
  561. package/dist/review-html.d.ts +13 -0
  562. package/dist/review-html.d.ts.map +1 -0
  563. package/dist/review-html.js +79 -0
  564. package/dist/review-packet-v2.d.ts +29 -0
  565. package/dist/review-packet-v2.d.ts.map +1 -0
  566. package/dist/review-packet-v2.js +81 -0
  567. package/dist/review-packet-v3.d.ts +22 -0
  568. package/dist/review-packet-v3.d.ts.map +1 -0
  569. package/dist/review-packet-v3.js +181 -0
  570. package/dist/review-packet.d.ts +49 -0
  571. package/dist/review-packet.d.ts.map +1 -0
  572. package/dist/review-packet.js +129 -0
  573. package/dist/risk-signals.d.ts +28 -0
  574. package/dist/risk-signals.d.ts.map +1 -0
  575. package/dist/risk-signals.js +68 -0
  576. package/dist/role-views.d.ts +50 -0
  577. package/dist/role-views.d.ts.map +1 -0
  578. package/dist/role-views.js +334 -0
  579. package/dist/rounds.d.ts +52 -0
  580. package/dist/rounds.d.ts.map +1 -0
  581. package/dist/rounds.js +172 -0
  582. package/dist/rule-drift.d.ts +42 -0
  583. package/dist/rule-drift.d.ts.map +1 -0
  584. package/dist/rule-drift.js +148 -0
  585. package/dist/rule-quality.d.ts +73 -0
  586. package/dist/rule-quality.d.ts.map +1 -0
  587. package/dist/rule-quality.js +356 -0
  588. package/dist/rule-scaffold.d.ts +71 -0
  589. package/dist/rule-scaffold.d.ts.map +1 -0
  590. package/dist/rule-scaffold.js +258 -0
  591. package/dist/safety-audit-deep.d.ts +38 -0
  592. package/dist/safety-audit-deep.d.ts.map +1 -0
  593. package/dist/safety-audit-deep.js +162 -0
  594. package/dist/safety-audit.d.ts +91 -0
  595. package/dist/safety-audit.d.ts.map +1 -0
  596. package/dist/safety-audit.js +138 -0
  597. package/dist/safety-html.d.ts +7 -0
  598. package/dist/safety-html.d.ts.map +1 -0
  599. package/dist/safety-html.js +70 -0
  600. package/dist/scaffold-coverage.d.ts +46 -0
  601. package/dist/scaffold-coverage.d.ts.map +1 -0
  602. package/dist/scaffold-coverage.js +273 -0
  603. package/dist/scaffold-patterns.d.ts +38 -0
  604. package/dist/scaffold-patterns.d.ts.map +1 -0
  605. package/dist/scaffold-patterns.js +282 -0
  606. package/dist/schema-inventory.d.ts +55 -0
  607. package/dist/schema-inventory.d.ts.map +1 -0
  608. package/dist/schema-inventory.js +301 -0
  609. package/dist/search-index.d.ts +75 -0
  610. package/dist/search-index.d.ts.map +1 -0
  611. package/dist/search-index.js +531 -0
  612. package/dist/search-tuning-explain.d.ts +68 -0
  613. package/dist/search-tuning-explain.d.ts.map +1 -0
  614. package/dist/search-tuning-explain.js +207 -0
  615. package/dist/search-tuning-registry.d.ts +54 -0
  616. package/dist/search-tuning-registry.d.ts.map +1 -0
  617. package/dist/search-tuning-registry.js +303 -0
  618. package/dist/self-audit.d.ts +59 -0
  619. package/dist/self-audit.d.ts.map +1 -0
  620. package/dist/self-audit.js +192 -0
  621. package/dist/self-config-doctor-v2.d.ts +57 -0
  622. package/dist/self-config-doctor-v2.d.ts.map +1 -0
  623. package/dist/self-config-doctor-v2.js +653 -0
  624. package/dist/self-config-doctor.d.ts +47 -0
  625. package/dist/self-config-doctor.d.ts.map +1 -0
  626. package/dist/self-config-doctor.js +432 -0
  627. package/dist/sharkcraft-inspector.d.ts +73 -0
  628. package/dist/sharkcraft-inspector.d.ts.map +1 -0
  629. package/dist/sharkcraft-inspector.js +745 -0
  630. package/dist/spec/spec-cross-validate.d.ts +17 -0
  631. package/dist/spec/spec-cross-validate.d.ts.map +1 -0
  632. package/dist/spec/spec-cross-validate.js +53 -0
  633. package/dist/spec/spec-discovery.d.ts +27 -0
  634. package/dist/spec/spec-discovery.d.ts.map +1 -0
  635. package/dist/spec/spec-discovery.js +78 -0
  636. package/dist/spec/spec-review.d.ts +36 -0
  637. package/dist/spec/spec-review.d.ts.map +1 -0
  638. package/dist/spec/spec-review.js +37 -0
  639. package/dist/stability-map.d.ts +62 -0
  640. package/dist/stability-map.d.ts.map +1 -0
  641. package/dist/stability-map.js +404 -0
  642. package/dist/start-here.d.ts +49 -0
  643. package/dist/start-here.d.ts.map +1 -0
  644. package/dist/start-here.js +259 -0
  645. package/dist/surface-profile-detect.d.ts +42 -0
  646. package/dist/surface-profile-detect.d.ts.map +1 -0
  647. package/dist/surface-profile-detect.js +76 -0
  648. package/dist/symbol-index.d.ts +108 -0
  649. package/dist/symbol-index.d.ts.map +1 -0
  650. package/dist/symbol-index.js +483 -0
  651. package/dist/task-decompose.d.ts +38 -0
  652. package/dist/task-decompose.d.ts.map +1 -0
  653. package/dist/task-decompose.js +154 -0
  654. package/dist/task-packet.d.ts +104 -0
  655. package/dist/task-packet.d.ts.map +1 -0
  656. package/dist/task-packet.js +156 -0
  657. package/dist/task-ranker.d.ts +51 -0
  658. package/dist/task-ranker.d.ts.map +1 -0
  659. package/dist/task-ranker.js +410 -0
  660. package/dist/task-risk.d.ts +84 -0
  661. package/dist/task-risk.d.ts.map +1 -0
  662. package/dist/task-risk.js +731 -0
  663. package/dist/task-routing-hint-registry.d.ts +36 -0
  664. package/dist/task-routing-hint-registry.d.ts.map +1 -0
  665. package/dist/task-routing-hint-registry.js +186 -0
  666. package/dist/template-authoring.d.ts +113 -0
  667. package/dist/template-authoring.d.ts.map +1 -0
  668. package/dist/template-authoring.js +521 -0
  669. package/dist/template-body-inference-v2.d.ts +19 -0
  670. package/dist/template-body-inference-v2.d.ts.map +1 -0
  671. package/dist/template-body-inference-v2.js +468 -0
  672. package/dist/template-body-inference.d.ts +59 -0
  673. package/dist/template-body-inference.d.ts.map +1 -0
  674. package/dist/template-body-inference.js +277 -0
  675. package/dist/template-drift.d.ts +39 -0
  676. package/dist/template-drift.d.ts.map +1 -0
  677. package/dist/template-drift.js +353 -0
  678. package/dist/template-lint.d.ts +31 -0
  679. package/dist/template-lint.d.ts.map +1 -0
  680. package/dist/template-lint.js +113 -0
  681. package/dist/test-definitions.d.ts +41 -0
  682. package/dist/test-definitions.d.ts.map +1 -0
  683. package/dist/test-definitions.js +6 -0
  684. package/dist/test-impact.d.ts +30 -0
  685. package/dist/test-impact.d.ts.map +1 -0
  686. package/dist/test-impact.js +173 -0
  687. package/dist/test-runner.d.ts +87 -0
  688. package/dist/test-runner.d.ts.map +1 -0
  689. package/dist/test-runner.js +560 -0
  690. package/dist/uncertainty-report.d.ts +46 -0
  691. package/dist/uncertainty-report.d.ts.map +1 -0
  692. package/dist/uncertainty-report.js +108 -0
  693. package/dist/uncertainty.d.ts +38 -0
  694. package/dist/uncertainty.d.ts.map +1 -0
  695. package/dist/uncertainty.js +115 -0
  696. package/dist/universal-search.d.ts +64 -0
  697. package/dist/universal-search.d.ts.map +1 -0
  698. package/dist/universal-search.js +347 -0
  699. package/dist/upgrade-advisor.d.ts +22 -0
  700. package/dist/upgrade-advisor.d.ts.map +1 -0
  701. package/dist/upgrade-advisor.js +109 -0
  702. package/dist/why-file.d.ts +75 -0
  703. package/dist/why-file.d.ts.map +1 -0
  704. package/dist/why-file.js +202 -0
  705. package/dist/workflow-simulation.d.ts +46 -0
  706. package/dist/workflow-simulation.d.ts.map +1 -0
  707. package/dist/workflow-simulation.js +154 -0
  708. package/package.json +65 -0
@@ -0,0 +1,181 @@
1
+ /**
2
+ * Validate adoption-patch applicability without applying it. For unified diffs
3
+ * we delegate to `git apply --check` when git is on PATH; for pseudo diffs we
4
+ * validate referenced files exist and target hashes still match.
5
+ *
6
+ * Read-only. We never run `git apply` without `--check`, and we never modify
7
+ * any target file.
8
+ */
9
+ import { existsSync, readFileSync } from 'node:fs';
10
+ import * as nodePath from 'node:path';
11
+ import { spawnSync } from 'node:child_process';
12
+ import { adoptionDir, readAdoptionState } from "./adoption-state.js";
13
+ import { validatePatchTargets } from "./onboarding-adoption.js";
14
+ export var AdoptionCheckResult;
15
+ (function (AdoptionCheckResult) {
16
+ AdoptionCheckResult["CanApply"] = "can-apply";
17
+ AdoptionCheckResult["CannotApply"] = "cannot-apply";
18
+ AdoptionCheckResult["Unknown"] = "unknown";
19
+ })(AdoptionCheckResult || (AdoptionCheckResult = {}));
20
+ function detectPatchFormat(body) {
21
+ if (/^# Format: unified/m.test(body) || /^new file mode/m.test(body) || /^@@ -\d+,\d+ \+\d+,\d+ @@/m.test(body)) {
22
+ return 'unified';
23
+ }
24
+ if (/^@@ append @@/m.test(body))
25
+ return 'pseudo';
26
+ return 'unknown';
27
+ }
28
+ function gitAvailable() {
29
+ try {
30
+ const res = spawnSync('git', ['--version'], { stdio: 'pipe', encoding: 'utf8' });
31
+ return res.status === 0;
32
+ }
33
+ catch {
34
+ return false;
35
+ }
36
+ }
37
+ function gitApplyCheck(projectRoot, patchPath) {
38
+ const res = spawnSync('git', ['apply', '--check', patchPath], {
39
+ cwd: projectRoot,
40
+ stdio: 'pipe',
41
+ encoding: 'utf8',
42
+ timeout: 30_000,
43
+ });
44
+ return { passed: (res.status ?? -1) === 0, stderr: res.stderr ?? '' };
45
+ }
46
+ export function buildAdoptionCheck(input) {
47
+ const state = readAdoptionState(input.projectRoot);
48
+ const dir = adoptionDir(input.projectRoot);
49
+ const patchPath = input.patchPath ?? nodePath.join(dir, 'adopt.patch');
50
+ const checks = [];
51
+ const warnings = [];
52
+ if (!existsSync(patchPath)) {
53
+ checks.push({
54
+ id: 'patch-exists',
55
+ passed: false,
56
+ severity: 'error',
57
+ message: `adopt.patch not found at ${patchPath}`,
58
+ });
59
+ return {
60
+ schema: 'sharkcraft.adoption-check/v1',
61
+ projectRoot: input.projectRoot,
62
+ patchPath: null,
63
+ patchFormat: 'unknown',
64
+ canApply: AdoptionCheckResult.CannotApply,
65
+ checks,
66
+ warnings,
67
+ nextCommand: 'shrk onboard adopt --write-patch --diff-format unified',
68
+ };
69
+ }
70
+ checks.push({
71
+ id: 'patch-exists',
72
+ passed: true,
73
+ severity: 'info',
74
+ message: `adopt.patch present at ${patchPath}`,
75
+ });
76
+ const body = readFileSync(patchPath, 'utf8');
77
+ const format = detectPatchFormat(body);
78
+ checks.push({
79
+ id: 'patch-format-detected',
80
+ passed: format !== 'unknown',
81
+ severity: format === 'unknown' ? 'warning' : 'info',
82
+ message: format === 'unknown' ? 'patch format could not be detected' : `patch format: ${format}`,
83
+ });
84
+ let targetCheckPassed = true;
85
+ if (state) {
86
+ const targets = state.targetFiles.map((t) => ({
87
+ relativePath: t.relativePath,
88
+ existed: t.hash !== '(missing)',
89
+ ...(t.hash !== '(missing)' ? { beforeHash: t.hash } : {}),
90
+ bytesAdded: 0,
91
+ }));
92
+ const v = validatePatchTargets(input.projectRoot, targets);
93
+ if (v.changed.length > 0) {
94
+ targetCheckPassed = false;
95
+ checks.push({
96
+ id: 'target-hashes-stable',
97
+ passed: false,
98
+ severity: 'warning',
99
+ message: `${v.changed.length} target file(s) changed since the patch was generated: ${v.changed.map((c) => c.relativePath).join(', ')}`,
100
+ });
101
+ warnings.push('regenerate the patch with `shrk onboard adopt regenerate` before applying');
102
+ }
103
+ else {
104
+ checks.push({
105
+ id: 'target-hashes-stable',
106
+ passed: true,
107
+ severity: 'info',
108
+ message: 'every target file matches the hash recorded in adoption-state.json',
109
+ });
110
+ }
111
+ }
112
+ else {
113
+ checks.push({
114
+ id: 'adoption-state-present',
115
+ passed: false,
116
+ severity: 'warning',
117
+ message: 'no adoption-state.json — target hash validation skipped',
118
+ });
119
+ warnings.push('run with --write-patch to write a fresh adoption state');
120
+ }
121
+ let gitOk = 'skipped';
122
+ let gitMsg = '';
123
+ if (format === 'unified') {
124
+ if (gitAvailable()) {
125
+ const r = gitApplyCheck(input.projectRoot, patchPath);
126
+ gitOk = r.passed ? 'ok' : 'fail';
127
+ gitMsg = r.stderr.slice(0, 800);
128
+ checks.push({
129
+ id: 'git-apply-check',
130
+ passed: r.passed,
131
+ severity: r.passed ? 'info' : 'error',
132
+ message: r.passed ? 'git apply --check succeeded' : `git apply --check failed: ${gitMsg.split('\n').slice(0, 3).join(' | ')}`,
133
+ });
134
+ }
135
+ else {
136
+ checks.push({
137
+ id: 'git-apply-check',
138
+ passed: false,
139
+ severity: 'info',
140
+ message: 'git not available — skipping git apply --check',
141
+ });
142
+ }
143
+ }
144
+ else if (format === 'pseudo') {
145
+ checks.push({
146
+ id: 'pseudo-format-info',
147
+ passed: true,
148
+ severity: 'info',
149
+ message: 'pseudo-patch format — git apply is not expected to succeed; copy blocks manually',
150
+ });
151
+ }
152
+ // Final verdict.
153
+ let canApply = AdoptionCheckResult.Unknown;
154
+ if (format === 'unified' && gitOk === 'ok' && targetCheckPassed) {
155
+ canApply = AdoptionCheckResult.CanApply;
156
+ }
157
+ else if (format === 'unified' && gitOk === 'fail') {
158
+ canApply = AdoptionCheckResult.CannotApply;
159
+ }
160
+ else if (format === 'pseudo') {
161
+ canApply = AdoptionCheckResult.Unknown;
162
+ }
163
+ else if (!targetCheckPassed) {
164
+ canApply = AdoptionCheckResult.CannotApply;
165
+ }
166
+ const nextCommand = canApply === AdoptionCheckResult.CanApply
167
+ ? `git apply ${patchPath}`
168
+ : canApply === AdoptionCheckResult.CannotApply
169
+ ? 'shrk onboard adopt regenerate'
170
+ : 'shrk onboard adopt merge-preview --format markdown';
171
+ return {
172
+ schema: 'sharkcraft.adoption-check/v1',
173
+ projectRoot: input.projectRoot,
174
+ patchPath,
175
+ patchFormat: format,
176
+ canApply,
177
+ checks,
178
+ warnings,
179
+ nextCommand,
180
+ };
181
+ }
@@ -0,0 +1,97 @@
1
+ /**
2
+ * Shared adoption checkpoint state.
3
+ *
4
+ * Tracks the latest diff/patch/target/draft hash for both onboard adoption
5
+ * (`sharkcraft/onboarding/adoption/`) and construct adoption
6
+ * (`sharkcraft/construct-drafts/adoption/`). Used by `status` and `diff`
7
+ * commands to answer: "is the persisted state still up-to-date?"
8
+ */
9
+ export declare const ADOPTION_CHECKPOINT_SCHEMA = "sharkcraft.adoption-checkpoint/v1";
10
+ export type AdoptionCheckpointKind = 'onboard' | 'construct';
11
+ export declare enum AdoptionCheckpointStatus {
12
+ Fresh = "fresh",
13
+ UpToDate = "up-to-date",
14
+ StaleDraft = "stale-draft",
15
+ StaleTarget = "stale-target",
16
+ StaleDiff = "stale-diff",
17
+ StaleAge = "stale-age",
18
+ NeedsRegenerate = "needs-regenerate",
19
+ Missing = "missing"
20
+ }
21
+ /** Default max age in days before an otherwise up-to-date checkpoint is
22
+ * flagged as stale-age. */
23
+ export declare const DEFAULT_CHECKPOINT_MAX_AGE_DAYS = 30;
24
+ export interface IAdoptionCheckpoint {
25
+ schema: typeof ADOPTION_CHECKPOINT_SCHEMA;
26
+ kind: AdoptionCheckpointKind;
27
+ generatedAt: string;
28
+ command: string;
29
+ diffHash: string;
30
+ patchHash?: string;
31
+ /** target relative path → sha256 hex of contents at checkpoint time. */
32
+ targetHashes: Record<string, string>;
33
+ /** draft relative path → sha256 hex of contents at checkpoint time. */
34
+ draftHashes: Record<string, string>;
35
+ }
36
+ export interface IAdoptionCheckpointReadResult {
37
+ exists: boolean;
38
+ path: string | null;
39
+ checkpoint: IAdoptionCheckpoint | null;
40
+ parseError?: string;
41
+ }
42
+ export declare function adoptionCheckpointPath(projectRoot: string, kind: AdoptionCheckpointKind): string;
43
+ export declare function readAdoptionCheckpoint(projectRoot: string, kind: AdoptionCheckpointKind): IAdoptionCheckpointReadResult;
44
+ export declare function hashContent(s: string): string;
45
+ /** Hash a rendered diff body for checkpoint comparison. Equivalent to
46
+ * `hashContent` but strips volatile fields like `generatedAt` first. */
47
+ export declare function hashDiffBody(jsonBody: string): string;
48
+ export declare function hashFileIfExists(file: string): string | null;
49
+ export interface IWriteAdoptionCheckpointInput {
50
+ projectRoot: string;
51
+ kind: AdoptionCheckpointKind;
52
+ command: string;
53
+ /** Hash of the rendered diff body. */
54
+ diffHash: string;
55
+ /** Optional hash of the rendered patch body. */
56
+ patchHash?: string;
57
+ /** Files (relative to project root) the adoption would touch. */
58
+ targets: readonly string[];
59
+ /** Draft files (relative to project root) used to produce the plan. */
60
+ drafts: readonly string[];
61
+ }
62
+ export declare function writeAdoptionCheckpoint(input: IWriteAdoptionCheckpointInput): IAdoptionCheckpoint;
63
+ export interface IAdoptionCheckpointEvaluation {
64
+ status: AdoptionCheckpointStatus;
65
+ reasons: readonly string[];
66
+ /** Targets whose hash diverged from the checkpoint. */
67
+ changedTargets: readonly string[];
68
+ /** Drafts whose hash diverged from the checkpoint. */
69
+ changedDrafts: readonly string[];
70
+ /** Diff hash on disk (if different). */
71
+ currentDiffHash?: string;
72
+ /** Age of the checkpoint in whole days. */
73
+ ageDays?: number;
74
+ /** True when content hashes still match but the checkpoint is
75
+ * older than maxAgeDays. */
76
+ ageWarning?: boolean;
77
+ }
78
+ export interface IAdoptionCheckpointEvaluateOptions {
79
+ targets?: readonly string[];
80
+ drafts?: readonly string[];
81
+ /** Max age in days before stale-age status. Default 30. */
82
+ maxAgeDays?: number;
83
+ /** Override current date (mainly for tests). */
84
+ now?: Date;
85
+ }
86
+ export declare function evaluateAdoptionCheckpoint(projectRoot: string, checkpoint: IAdoptionCheckpoint | null, currentDiffHash: string, options?: IAdoptionCheckpointEvaluateOptions): IAdoptionCheckpointEvaluation;
87
+ export interface IRecordAdoptionCheckpointInput {
88
+ projectRoot: string;
89
+ kind: AdoptionCheckpointKind;
90
+ command: string;
91
+ diffHash: string;
92
+ patchHash?: string;
93
+ targets: readonly string[];
94
+ drafts: readonly string[];
95
+ }
96
+ export declare function recordAdoptionCheckpoint(input: IRecordAdoptionCheckpointInput): IAdoptionCheckpoint;
97
+ //# sourceMappingURL=adoption-checkpoint.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adoption-checkpoint.d.ts","sourceRoot":"","sources":["../src/adoption-checkpoint.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,209 @@
1
+ /**
2
+ * Shared adoption checkpoint state.
3
+ *
4
+ * Tracks the latest diff/patch/target/draft hash for both onboard adoption
5
+ * (`sharkcraft/onboarding/adoption/`) and construct adoption
6
+ * (`sharkcraft/construct-drafts/adoption/`). Used by `status` and `diff`
7
+ * commands to answer: "is the persisted state still up-to-date?"
8
+ */
9
+ import { createHash } from 'node:crypto';
10
+ import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
11
+ import * as nodePath from 'node:path';
12
+ export const ADOPTION_CHECKPOINT_SCHEMA = 'sharkcraft.adoption-checkpoint/v1';
13
+ export var AdoptionCheckpointStatus;
14
+ (function (AdoptionCheckpointStatus) {
15
+ AdoptionCheckpointStatus["Fresh"] = "fresh";
16
+ AdoptionCheckpointStatus["UpToDate"] = "up-to-date";
17
+ AdoptionCheckpointStatus["StaleDraft"] = "stale-draft";
18
+ AdoptionCheckpointStatus["StaleTarget"] = "stale-target";
19
+ AdoptionCheckpointStatus["StaleDiff"] = "stale-diff";
20
+ AdoptionCheckpointStatus["StaleAge"] = "stale-age";
21
+ AdoptionCheckpointStatus["NeedsRegenerate"] = "needs-regenerate";
22
+ AdoptionCheckpointStatus["Missing"] = "missing";
23
+ })(AdoptionCheckpointStatus || (AdoptionCheckpointStatus = {}));
24
+ /** Default max age in days before an otherwise up-to-date checkpoint is
25
+ * flagged as stale-age. */
26
+ export const DEFAULT_CHECKPOINT_MAX_AGE_DAYS = 30;
27
+ function checkpointDir(projectRoot, kind) {
28
+ if (kind === 'onboard') {
29
+ return nodePath.join(projectRoot, 'sharkcraft', 'onboarding', 'adoption');
30
+ }
31
+ return nodePath.join(projectRoot, 'sharkcraft', 'construct-drafts', 'adoption');
32
+ }
33
+ export function adoptionCheckpointPath(projectRoot, kind) {
34
+ return nodePath.join(checkpointDir(projectRoot, kind), 'adoption-checkpoint.json');
35
+ }
36
+ export function readAdoptionCheckpoint(projectRoot, kind) {
37
+ const path = adoptionCheckpointPath(projectRoot, kind);
38
+ if (!existsSync(path)) {
39
+ return { exists: false, path, checkpoint: null };
40
+ }
41
+ try {
42
+ const data = JSON.parse(readFileSync(path, 'utf8'));
43
+ if (data.schema !== ADOPTION_CHECKPOINT_SCHEMA) {
44
+ return {
45
+ exists: true,
46
+ path,
47
+ checkpoint: null,
48
+ parseError: `Unexpected schema: ${data.schema ?? '(none)'}`,
49
+ };
50
+ }
51
+ return { exists: true, path, checkpoint: data };
52
+ }
53
+ catch (e) {
54
+ return { exists: true, path, checkpoint: null, parseError: e.message };
55
+ }
56
+ }
57
+ export function hashContent(s) {
58
+ return createHash('sha256').update(s).digest('hex');
59
+ }
60
+ /**
61
+ * Strip non-deterministic fields (`generatedAt`, `schema`-changes) from a
62
+ * rendered diff so the hash is stable across runs that produce semantically
63
+ * equivalent output.
64
+ */
65
+ function stripVolatileFields(jsonBody) {
66
+ try {
67
+ const parsed = JSON.parse(jsonBody);
68
+ delete parsed['generatedAt'];
69
+ // Sort keys for deterministic serialization.
70
+ return JSON.stringify(parsed, Object.keys(parsed).sort());
71
+ }
72
+ catch {
73
+ return jsonBody;
74
+ }
75
+ }
76
+ /** Hash a rendered diff body for checkpoint comparison. Equivalent to
77
+ * `hashContent` but strips volatile fields like `generatedAt` first. */
78
+ export function hashDiffBody(jsonBody) {
79
+ return hashContent(stripVolatileFields(jsonBody));
80
+ }
81
+ export function hashFileIfExists(file) {
82
+ if (!existsSync(file))
83
+ return null;
84
+ try {
85
+ return hashContent(readFileSync(file, 'utf8'));
86
+ }
87
+ catch {
88
+ return null;
89
+ }
90
+ }
91
+ export function writeAdoptionCheckpoint(input) {
92
+ const targetHashes = {};
93
+ for (const rel of input.targets) {
94
+ const hash = hashFileIfExists(nodePath.resolve(input.projectRoot, rel));
95
+ targetHashes[rel] = hash ?? '(missing)';
96
+ }
97
+ const draftHashes = {};
98
+ for (const rel of input.drafts) {
99
+ const hash = hashFileIfExists(nodePath.resolve(input.projectRoot, rel));
100
+ draftHashes[rel] = hash ?? '(missing)';
101
+ }
102
+ const checkpoint = {
103
+ schema: ADOPTION_CHECKPOINT_SCHEMA,
104
+ kind: input.kind,
105
+ generatedAt: new Date().toISOString(),
106
+ command: input.command,
107
+ diffHash: input.diffHash,
108
+ ...(input.patchHash ? { patchHash: input.patchHash } : {}),
109
+ targetHashes,
110
+ draftHashes,
111
+ };
112
+ const path = adoptionCheckpointPath(input.projectRoot, input.kind);
113
+ mkdirSync(nodePath.dirname(path), { recursive: true });
114
+ writeFileSync(path, JSON.stringify(checkpoint, null, 2) + '\n', 'utf8');
115
+ return checkpoint;
116
+ }
117
+ function computeAgeDays(checkpoint, now) {
118
+ const generated = Date.parse(checkpoint.generatedAt);
119
+ if (!Number.isFinite(generated))
120
+ return 0;
121
+ const diffMs = now.getTime() - generated;
122
+ return Math.max(0, Math.floor(diffMs / (1000 * 60 * 60 * 24)));
123
+ }
124
+ export function evaluateAdoptionCheckpoint(projectRoot, checkpoint, currentDiffHash, options = {}) {
125
+ if (!checkpoint) {
126
+ return {
127
+ status: AdoptionCheckpointStatus.Missing,
128
+ reasons: ['no adoption checkpoint on disk yet — run with --record-checkpoint'],
129
+ changedTargets: [],
130
+ changedDrafts: [],
131
+ };
132
+ }
133
+ const reasons = [];
134
+ const changedTargets = [];
135
+ const changedDrafts = [];
136
+ for (const [rel, recorded] of Object.entries(checkpoint.targetHashes)) {
137
+ if (options.targets && !options.targets.includes(rel))
138
+ continue;
139
+ const current = hashFileIfExists(nodePath.resolve(projectRoot, rel)) ?? '(missing)';
140
+ if (current !== recorded) {
141
+ changedTargets.push(rel);
142
+ }
143
+ }
144
+ for (const [rel, recorded] of Object.entries(checkpoint.draftHashes)) {
145
+ if (options.drafts && !options.drafts.includes(rel))
146
+ continue;
147
+ const current = hashFileIfExists(nodePath.resolve(projectRoot, rel)) ?? '(missing)';
148
+ if (current !== recorded) {
149
+ changedDrafts.push(rel);
150
+ }
151
+ }
152
+ const diffChanged = checkpoint.diffHash !== currentDiffHash;
153
+ const now = options.now ?? new Date();
154
+ const ageDays = computeAgeDays(checkpoint, now);
155
+ const maxAgeDays = options.maxAgeDays ?? DEFAULT_CHECKPOINT_MAX_AGE_DAYS;
156
+ const tooOld = maxAgeDays > 0 && ageDays > maxAgeDays;
157
+ if (changedDrafts.length === 0 && changedTargets.length === 0 && !diffChanged) {
158
+ if (tooOld) {
159
+ return {
160
+ status: AdoptionCheckpointStatus.StaleAge,
161
+ reasons: [
162
+ `hashes match but checkpoint is ${ageDays} day(s) old (max ${maxAgeDays}) — consider re-recording`,
163
+ ],
164
+ changedTargets,
165
+ changedDrafts,
166
+ currentDiffHash,
167
+ ageDays,
168
+ ageWarning: true,
169
+ };
170
+ }
171
+ return {
172
+ status: AdoptionCheckpointStatus.UpToDate,
173
+ reasons: ['drafts, targets and diff hash all match the checkpoint'],
174
+ changedTargets,
175
+ changedDrafts,
176
+ currentDiffHash,
177
+ ageDays,
178
+ ageWarning: false,
179
+ };
180
+ }
181
+ if (changedDrafts.length > 0) {
182
+ reasons.push(`${changedDrafts.length} draft(s) changed since checkpoint`);
183
+ }
184
+ if (changedTargets.length > 0) {
185
+ reasons.push(`${changedTargets.length} target(s) changed since checkpoint`);
186
+ }
187
+ if (diffChanged) {
188
+ reasons.push('diff hash no longer matches the checkpoint');
189
+ }
190
+ let status = AdoptionCheckpointStatus.NeedsRegenerate;
191
+ if (changedDrafts.length > 0)
192
+ status = AdoptionCheckpointStatus.StaleDraft;
193
+ else if (changedTargets.length > 0)
194
+ status = AdoptionCheckpointStatus.StaleTarget;
195
+ else if (diffChanged)
196
+ status = AdoptionCheckpointStatus.StaleDiff;
197
+ return {
198
+ status,
199
+ reasons,
200
+ changedTargets,
201
+ changedDrafts,
202
+ currentDiffHash,
203
+ ageDays,
204
+ ageWarning: tooOld,
205
+ };
206
+ }
207
+ export function recordAdoptionCheckpoint(input) {
208
+ return writeAdoptionCheckpoint(input);
209
+ }
@@ -0,0 +1,28 @@
1
+ import { type IAdoptionItem, type IAdoptionPlan } from './onboarding-adoption.js';
2
+ import { type IAdoptionState, type IComputeFreshnessResult } from './adoption-state.js';
3
+ import { type IThreeWayPreviewBatchResult } from './adoption-three-way.js';
4
+ export type AdoptionMergePreviewFormat = 'text' | 'markdown' | 'html' | 'json';
5
+ export interface IAdoptionMergePreview {
6
+ schema: 'sharkcraft.adoption-merge-preview/v1';
7
+ projectRoot: string;
8
+ state: IAdoptionState | null;
9
+ freshness: IComputeFreshnessResult;
10
+ threeWay: IThreeWayPreviewBatchResult;
11
+ safeAppend: readonly IAdoptionItem[];
12
+ manualReview: readonly IAdoptionItem[];
13
+ lowConfidence: readonly IAdoptionItem[];
14
+ alreadyCovered: readonly IAdoptionItem[];
15
+ conflicts: readonly IAdoptionItem[];
16
+ recommendedCommands: readonly string[];
17
+ }
18
+ export interface IBuildMergePreviewInput {
19
+ projectRoot: string;
20
+ plan: IAdoptionPlan;
21
+ }
22
+ export declare function buildAdoptionMergePreview(input: IBuildMergePreviewInput): IAdoptionMergePreview;
23
+ export declare function renderAdoptionMergePreviewText(p: IAdoptionMergePreview): string;
24
+ export declare function renderAdoptionMergePreviewMarkdown(p: IAdoptionMergePreview): string;
25
+ export declare function renderAdoptionMergePreviewHtml(p: IAdoptionMergePreview): string;
26
+ /** Reusable: read the unified patch body if it exists. */
27
+ export declare function loadAdoptPatchBody(projectRoot: string): string | null;
28
+ //# sourceMappingURL=adoption-merge-preview.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"adoption-merge-preview.d.ts","sourceRoot":"","sources":["../src/adoption-merge-preview.ts"],"names":[],"mappings":"AAMA,OAAO,EAEL,KAAK,aAAa,EAClB,KAAK,aAAa,EACnB,MAAM,0BAA0B,CAAC;AAClC,OAAO,EAGL,KAAK,cAAc,EACnB,KAAK,uBAAuB,EAC7B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAGL,KAAK,2BAA2B,EACjC,MAAM,yBAAyB,CAAC;AAEjC,MAAM,MAAM,0BAA0B,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC;AAE/E,MAAM,WAAW,qBAAqB;IACpC,MAAM,EAAE,sCAAsC,CAAC;IAC/C,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,cAAc,GAAG,IAAI,CAAC;IAC7B,SAAS,EAAE,uBAAuB,CAAC;IACnC,QAAQ,EAAE,2BAA2B,CAAC;IACtC,UAAU,EAAE,SAAS,aAAa,EAAE,CAAC;IACrC,YAAY,EAAE,SAAS,aAAa,EAAE,CAAC;IACvC,aAAa,EAAE,SAAS,aAAa,EAAE,CAAC;IACxC,cAAc,EAAE,SAAS,aAAa,EAAE,CAAC;IACzC,SAAS,EAAE,SAAS,aAAa,EAAE,CAAC;IACpC,mBAAmB,EAAE,SAAS,MAAM,EAAE,CAAC;CACxC;AAED,MAAM,WAAW,uBAAuB;IACtC,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,aAAa,CAAC;CACrB;AAED,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,uBAAuB,GAC7B,qBAAqB,CAwBvB;AA4CD,wBAAgB,8BAA8B,CAAC,CAAC,EAAE,qBAAqB,GAAG,MAAM,CA+B/E;AAED,wBAAgB,kCAAkC,CAAC,CAAC,EAAE,qBAAqB,GAAG,MAAM,CA4CnF;AA8CD,wBAAgB,8BAA8B,CAAC,CAAC,EAAE,qBAAqB,GAAG,MAAM,CA6C/E;AAiBD,0DAA0D;AAC1D,wBAAgB,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAIrE"}