@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,560 @@
1
+ var __rewriteRelativeImportExtension = (this && this.__rewriteRelativeImportExtension) || function (path, preserveJsx) {
2
+ if (typeof path === "string" && /^\.\.?\//.test(path)) {
3
+ return path.replace(/\.(tsx)$|((?:\.d)?)((?:\.[^./]+?)?)\.([cm]?)ts$/i, function (m, tsx, d, ext, cm) {
4
+ return tsx ? preserveJsx ? ".jsx" : ".js" : d && (!ext || !cm) ? m : (d + ext + "." + cm.toLowerCase() + "js");
5
+ });
6
+ }
7
+ return path;
8
+ };
9
+ import { existsSync } from 'node:fs';
10
+ import * as nodePath from 'node:path';
11
+ import { pathToFileURL } from 'node:url';
12
+ import { buildContext } from '@shrkcrft/context';
13
+ import { buildTaskPacket } from "./task-packet.js";
14
+ import { rankKnowledgeEntries } from "./task-ranker.js";
15
+ import { buildProjectOverview, renderOverviewText } from "./project-overview.js";
16
+ import { HELPERS } from "./helper-registry.js";
17
+ async function importDefaultArray(absPath) {
18
+ if (!existsSync(absPath))
19
+ return [];
20
+ try {
21
+ const mod = (await import(__rewriteRelativeImportExtension(pathToFileURL(absPath).href)));
22
+ return Array.isArray(mod.default) ? mod.default : [];
23
+ }
24
+ catch {
25
+ return [];
26
+ }
27
+ }
28
+ /**
29
+ * Load context tests from local sharkcraft config + any pack contributions.
30
+ */
31
+ export async function loadContextTests(inspection) {
32
+ const tests = [];
33
+ // Local config file.
34
+ if (inspection.sharkcraftDir) {
35
+ const local = nodePath.join(inspection.sharkcraftDir, 'context-tests.ts');
36
+ if (existsSync(local)) {
37
+ tests.push(...(await importDefaultArray(local)));
38
+ }
39
+ }
40
+ // Pack contributions.
41
+ for (const pack of inspection.packs.validPacks) {
42
+ const c = pack.manifest.contributions;
43
+ for (const rel of c.contextTestFiles ?? []) {
44
+ const full = nodePath.resolve(pack.packageRoot, rel);
45
+ tests.push(...(await importDefaultArray(full)));
46
+ }
47
+ }
48
+ return tests;
49
+ }
50
+ export async function loadAgentContractTests(inspection) {
51
+ const tests = [];
52
+ if (inspection.sharkcraftDir) {
53
+ const local = nodePath.join(inspection.sharkcraftDir, 'agent-tests.ts');
54
+ if (existsSync(local)) {
55
+ tests.push(...(await importDefaultArray(local)));
56
+ }
57
+ }
58
+ for (const pack of inspection.packs.validPacks) {
59
+ const c = pack.manifest.contributions;
60
+ for (const rel of c.agentTestFiles ?? []) {
61
+ const full = nodePath.resolve(pack.packageRoot, rel);
62
+ tests.push(...(await importDefaultArray(full)));
63
+ }
64
+ }
65
+ return tests;
66
+ }
67
+ export function runContextTest(inspection, test) {
68
+ const overview = buildProjectOverview(inspection.workspace, inspection.config?.projectName);
69
+ const ctx = buildContext(inspection.knowledgeEntries, {
70
+ task: test.task,
71
+ maxTokens: test.maxTokens ?? 3500,
72
+ projectOverview: renderOverviewText(overview),
73
+ });
74
+ const bodyIds = new Set();
75
+ for (const section of ctx.sections) {
76
+ for (const id of section.entryIds)
77
+ bodyIds.add(id);
78
+ }
79
+ const missingInclude = [];
80
+ const presentInclude = [];
81
+ for (const id of test.mustInclude ?? []) {
82
+ if (bodyIds.has(id))
83
+ presentInclude.push(id);
84
+ else
85
+ missingInclude.push(id);
86
+ }
87
+ const unexpectedInclude = [];
88
+ for (const id of test.mustNotInclude ?? []) {
89
+ if (bodyIds.has(id))
90
+ unexpectedInclude.push(id);
91
+ }
92
+ const passed = missingInclude.length === 0 && unexpectedInclude.length === 0;
93
+ // Diagnostics: only populate on failure. Show the top-ranked alternatives
94
+ // the ranker chose for the task, so the test author can see what beat the
95
+ // expected entry — and tighten the rule's appliesWhen/tags accordingly.
96
+ let diagnostics;
97
+ if (!passed) {
98
+ const ranked = rankKnowledgeEntries(inspection.knowledgeEntries, test.task);
99
+ diagnostics = [];
100
+ for (const id of missingInclude) {
101
+ const exists = inspection.knowledgeEntries.some((e) => e.id === id);
102
+ diagnostics.push({
103
+ id,
104
+ existsInRegistry: exists,
105
+ topAlternatives: ranked.slice(0, 5).map((r) => ({
106
+ id: r.item.id,
107
+ score: r.score,
108
+ reasons: r.reasons,
109
+ })),
110
+ suggestions: buildMissingIncludeSuggestions(id, exists, test.task),
111
+ });
112
+ }
113
+ for (const id of unexpectedInclude) {
114
+ const entry = inspection.knowledgeEntries.find((e) => e.id === id);
115
+ const reasons = ranked.find((r) => r.item.id === id)?.reasons ?? [];
116
+ diagnostics.push({
117
+ id,
118
+ existsInRegistry: !!entry,
119
+ topAlternatives: reasons.length
120
+ ? [{ id, score: ranked.find((r) => r.item.id === id)?.score ?? 0, reasons }]
121
+ : undefined,
122
+ suggestions: [
123
+ `"${id}" appeared in the context body for "${test.task}".`,
124
+ 'Narrow its `appliesWhen` to avoid matching this task wording, or remove the entry from mustNotInclude if the inclusion is acceptable.',
125
+ ],
126
+ });
127
+ }
128
+ }
129
+ const result = {
130
+ id: test.id,
131
+ task: test.task,
132
+ passed,
133
+ presentInclude,
134
+ missingInclude,
135
+ unexpectedInclude,
136
+ totalTokens: ctx.totalTokens,
137
+ maxTokens: ctx.maxTokens,
138
+ };
139
+ if (!passed) {
140
+ result.failureSummary = `missing=${missingInclude.length} unexpected=${unexpectedInclude.length}`;
141
+ }
142
+ if (diagnostics)
143
+ result.diagnostics = diagnostics;
144
+ return result;
145
+ }
146
+ function buildMissingIncludeSuggestions(id, existsInRegistry, task) {
147
+ if (!existsInRegistry) {
148
+ return [
149
+ `Entry "${id}" does not exist in the inspection — either install the pack that ships it or correct the id.`,
150
+ `If the test expectation is wrong, update sharkcraft/context-tests.ts.`,
151
+ ];
152
+ }
153
+ return [
154
+ `Entry "${id}" exists but did not make the context for task "${task}".`,
155
+ `Try adding domain-aligned appliesWhen values (create-plugin / generate-service / register-defaults / …).`,
156
+ `Add task-relevant tags (plugin / capability / adapter / …).`,
157
+ `Reference the entry from a preset's includes.knowledgeIds / ruleIds so it ranks higher.`,
158
+ `Or raise its priority / shorten the title to include task-relevant tokens.`,
159
+ ];
160
+ }
161
+ export function runAgentContractTest(inspection, test, registries) {
162
+ const packet = buildTaskPacket(inspection, test.task, { maxTokens: 3500 });
163
+ const actualPipelines = packet.recommendedPipelines.map((p) => p.pipelineId);
164
+ const missingTemplates = (test.expectedTemplates ?? []).filter((id) => !packet.relevantTemplates.some((t) => t.id === id));
165
+ const missingRules = (test.expectedRules ?? []).filter((id) => !packet.relevantRules.some((r) => r.id === id));
166
+ const missingForbidden = (test.expectedForbiddenActions ?? []).filter((a) => !packet.forbiddenActions.includes(a));
167
+ const missingVerification = (test.expectedVerificationCommands ?? []).filter((c) => !packet.verificationCommands.includes(c));
168
+ // New expectation checks. Each one fails when the asset is missing
169
+ // from the relevant registry (drift detection) or — for commands — also
170
+ // not surfaced in the packet's recommended set.
171
+ const helperRegistry = registries?.helpers ?? loadHelperRegistryQuietly();
172
+ const playbookList = registries?.playbooks ?? listPlaybookIdsQuietly(inspection);
173
+ const policyChecks = registries?.policies ?? listPolicyIdsQuietly(inspection);
174
+ const constructList = registries?.constructs ?? listConstructIdsQuietly(inspection);
175
+ const commandCatalog = registries?.commands ?? listCommandIdsQuietly(inspection);
176
+ const knowledgeIds = registries?.knowledge ?? new Set(inspection.knowledgeEntries.map((e) => e.id));
177
+ const missingHelpers = (test.expectedHelpers ?? []).filter((id) => !helperRegistry.has(id));
178
+ const missingPlaybooks = (test.expectedPlaybooks ?? []).filter((id) => !playbookList.has(id));
179
+ const missingPolicies = (test.expectedPolicies ?? []).filter((id) => !policyChecks.has(id));
180
+ const missingConstructs = (test.expectedConstructs ?? []).filter((id) => !constructList.has(id));
181
+ const missingCommands = (test.expectedCommands ?? []).filter((id) => {
182
+ if (packet.recommendedCliCommands.includes(id))
183
+ return false;
184
+ // Accept either the catalog id form ("dev start") or the bare
185
+ // first token ("dev"). The catalog uses dotted ids that map to the
186
+ // command shape; we accept either form.
187
+ return !commandCatalog.has(id) && !commandCatalog.has(id.split(' ')[0]);
188
+ });
189
+ const missingKnowledge = (test.expectedKnowledge ?? []).filter((id) => !knowledgeIds.has(id));
190
+ // mustNotInclude — fail if any of these ids ended up surfaced in the packet.
191
+ const surfacedIds = new Set();
192
+ for (const t of packet.relevantTemplates)
193
+ surfacedIds.add(t.id);
194
+ for (const r of packet.relevantRules)
195
+ surfacedIds.add(r.id);
196
+ for (const p of packet.relevantPaths)
197
+ surfacedIds.add(p.id);
198
+ for (const p of packet.recommendedPipelines)
199
+ surfacedIds.add(p.pipelineId);
200
+ for (const p of packet.presetRecommendations)
201
+ surfacedIds.add(p.preset.id);
202
+ const unexpectedlyIncluded = (test.mustNotInclude ?? []).filter((id) => surfacedIds.has(id));
203
+ const pipelineOk = !test.expectedPipeline || actualPipelines.includes(test.expectedPipeline);
204
+ const passed = pipelineOk &&
205
+ missingTemplates.length === 0 &&
206
+ missingRules.length === 0 &&
207
+ missingForbidden.length === 0 &&
208
+ missingVerification.length === 0 &&
209
+ missingHelpers.length === 0 &&
210
+ missingPlaybooks.length === 0 &&
211
+ missingPolicies.length === 0 &&
212
+ missingConstructs.length === 0 &&
213
+ missingCommands.length === 0 &&
214
+ missingKnowledge.length === 0 &&
215
+ unexpectedlyIncluded.length === 0;
216
+ // Diagnostics on failure: per missing id, explain whether the entry
217
+ // exists in the registry and how to make it surface.
218
+ let diagnostics;
219
+ if (!passed) {
220
+ diagnostics = [];
221
+ for (const id of missingTemplates) {
222
+ const exists = inspection.templates.some((t) => t.id === id);
223
+ diagnostics.push({
224
+ id,
225
+ kind: 'template',
226
+ existsInRegistry: exists,
227
+ suggestions: exists
228
+ ? [
229
+ `Template "${id}" exists but the ranker did not place it in the top results.`,
230
+ 'Add task-aligned tags/appliesWhen to the template (e.g. tags:["plugin"], appliesWhen:["create-plugin"]).',
231
+ 'Reference the template from a preset that matches the task profile (includes.templateIds).',
232
+ 'Reference it from a pipeline step (`step.references`).',
233
+ ]
234
+ : [
235
+ `Template "${id}" does not exist — install the pack that ships it or correct the id.`,
236
+ ],
237
+ });
238
+ }
239
+ for (const id of missingRules) {
240
+ const exists = inspection.knowledgeEntries.some((e) => e.id === id);
241
+ diagnostics.push({
242
+ id,
243
+ kind: 'rule',
244
+ existsInRegistry: exists,
245
+ suggestions: exists
246
+ ? [
247
+ `Rule "${id}" exists but the ranker did not surface it for "${test.task}".`,
248
+ 'Align its appliesWhen with the domain (e.g. create-plugin / register-defaults / generate-service).',
249
+ 'Add domain tags (plugin / capability / adapter / defaults).',
250
+ 'Reference it from actionHints.relatedTemplates on a rule that *is* ranking, or include it in a preset.',
251
+ ]
252
+ : [
253
+ `Rule "${id}" does not exist — install the pack that ships it or correct the id.`,
254
+ ],
255
+ });
256
+ }
257
+ if (!pipelineOk && test.expectedPipeline) {
258
+ diagnostics.push({
259
+ id: test.expectedPipeline,
260
+ kind: 'pipeline',
261
+ existsInRegistry: inspection.pipelines.some((p) => p.id === test.expectedPipeline),
262
+ suggestions: [
263
+ `Pipeline "${test.expectedPipeline}" did not rank in the top 3 for "${test.task}".`,
264
+ 'Add domain-aligned tags to the pipeline (tags:["plugin"], …).',
265
+ 'Add task tokens to its title / description so the ranker catches them.',
266
+ 'Reference the pipeline from a preset that the task profile recommends.',
267
+ ],
268
+ });
269
+ }
270
+ for (const action of missingForbidden) {
271
+ diagnostics.push({
272
+ id: action,
273
+ kind: 'forbidden-action',
274
+ existsInRegistry: false,
275
+ suggestions: [
276
+ `No rule's actionHints.forbiddenActions contains "${action}" for this task's relevant set.`,
277
+ 'Add the forbiddenAction to one of the high-priority rules that match this task.',
278
+ ],
279
+ });
280
+ }
281
+ for (const cmd of missingVerification) {
282
+ diagnostics.push({
283
+ id: cmd,
284
+ kind: 'verification-command',
285
+ existsInRegistry: false,
286
+ suggestions: [
287
+ `Verification command "${cmd}" is not aggregated for this task.`,
288
+ 'Add it to a high-priority rule\'s actionHints.verificationCommands.',
289
+ ],
290
+ });
291
+ }
292
+ // Diagnostics for the new expectation slots.
293
+ for (const id of missingHelpers) {
294
+ diagnostics.push({
295
+ id,
296
+ kind: 'helper',
297
+ existsInRegistry: helperRegistry.has(id),
298
+ suggestions: [
299
+ `Helper "${id}" not found in the helper registry — install the pack that ships it or correct the id.`,
300
+ 'Make sure the helper is registered in HELPERS in packages/inspector/src/helper-registry.ts (or a pack contribution).',
301
+ ],
302
+ });
303
+ }
304
+ for (const id of missingPlaybooks) {
305
+ diagnostics.push({
306
+ id,
307
+ kind: 'playbook',
308
+ existsInRegistry: playbookList.has(id),
309
+ suggestions: [
310
+ `Playbook "${id}" not found in the playbook registry — install the pack that ships it or correct the id.`,
311
+ 'Ensure the playbook file is referenced in sharkcraft.config.ts / pack contributions and exports a default array.',
312
+ ],
313
+ });
314
+ }
315
+ for (const id of missingPolicies) {
316
+ diagnostics.push({
317
+ id,
318
+ kind: 'policy',
319
+ existsInRegistry: policyChecks.has(id),
320
+ suggestions: [
321
+ `Policy "${id}" not found in the policy-engine checks — install the pack that ships it or correct the id.`,
322
+ 'Add it to sharkcraft/policies.ts or a pack policyCheckFile.',
323
+ ],
324
+ });
325
+ }
326
+ for (const id of missingConstructs) {
327
+ diagnostics.push({
328
+ id,
329
+ kind: 'construct',
330
+ existsInRegistry: constructList.has(id),
331
+ suggestions: [
332
+ `Construct "${id}" not found in the construct registry — install the pack that ships it or correct the id.`,
333
+ 'Add a defineConstruct() entry in sharkcraft/constructs.ts or a pack constructFile.',
334
+ ],
335
+ });
336
+ }
337
+ for (const id of missingCommands) {
338
+ diagnostics.push({
339
+ id,
340
+ kind: 'command',
341
+ existsInRegistry: commandCatalog.has(id) || commandCatalog.has(id.split(' ')[0]),
342
+ suggestions: [
343
+ `Command "${id}" was not surfaced for "${test.task}" and is not in the command catalog.`,
344
+ 'Add it to a high-priority rule\'s actionHints.commands or check the command-catalog.ts entries.',
345
+ ],
346
+ });
347
+ }
348
+ for (const id of missingKnowledge) {
349
+ diagnostics.push({
350
+ id,
351
+ kind: 'knowledge',
352
+ existsInRegistry: knowledgeIds.has(id),
353
+ suggestions: [
354
+ `Knowledge entry "${id}" is not present in the inspection — install the pack that ships it or correct the id.`,
355
+ ],
356
+ });
357
+ }
358
+ for (const id of unexpectedlyIncluded) {
359
+ diagnostics.push({
360
+ id,
361
+ kind: 'must-not-include',
362
+ existsInRegistry: true,
363
+ suggestions: [
364
+ `"${id}" was surfaced by the ranker but the test forbids it.`,
365
+ 'Narrow its appliesWhen / tags to avoid matching this task wording.',
366
+ ],
367
+ });
368
+ }
369
+ }
370
+ const result = {
371
+ id: test.id,
372
+ task: test.task,
373
+ passed,
374
+ actualPipelines,
375
+ missingTemplates,
376
+ missingRules,
377
+ missingForbiddenActions: missingForbidden,
378
+ missingVerificationCommands: missingVerification,
379
+ missingHelpers,
380
+ missingPlaybooks,
381
+ missingPolicies,
382
+ missingConstructs,
383
+ missingCommands,
384
+ missingKnowledge,
385
+ unexpectedlyIncluded,
386
+ };
387
+ if (test.expectedPipeline)
388
+ result.expectedPipeline = test.expectedPipeline;
389
+ if (!passed) {
390
+ const partsList = [
391
+ `pipelineOk=${pipelineOk}`,
392
+ `missingTemplates=${missingTemplates.length}`,
393
+ `missingRules=${missingRules.length}`,
394
+ `missingHelpers=${missingHelpers.length}`,
395
+ `missingPlaybooks=${missingPlaybooks.length}`,
396
+ `missingPolicies=${missingPolicies.length}`,
397
+ `missingConstructs=${missingConstructs.length}`,
398
+ `missingCommands=${missingCommands.length}`,
399
+ `missingKnowledge=${missingKnowledge.length}`,
400
+ `unexpectedlyIncluded=${unexpectedlyIncluded.length}`,
401
+ ];
402
+ result.failureSummary = partsList.join(' ');
403
+ }
404
+ if (diagnostics)
405
+ result.diagnostics = diagnostics;
406
+ return result;
407
+ }
408
+ // ── Registry helpers ────────────────────────────────────────────────
409
+ function loadHelperRegistryQuietly() {
410
+ try {
411
+ return new Set(HELPERS.map((h) => h.id));
412
+ }
413
+ catch {
414
+ return new Set();
415
+ }
416
+ }
417
+ function listPlaybookIdsQuietly(inspection) {
418
+ const reg = inspection
419
+ .playbookRegistry;
420
+ if (!reg || typeof reg.list !== 'function')
421
+ return new Set();
422
+ try {
423
+ return new Set(reg.list().map((p) => p.id));
424
+ }
425
+ catch {
426
+ return new Set();
427
+ }
428
+ }
429
+ function listPolicyIdsQuietly(inspection) {
430
+ const checks = inspection.policyChecks ?? [];
431
+ return new Set(checks.map((c) => c.id));
432
+ }
433
+ function listConstructIdsQuietly(inspection) {
434
+ const direct = inspection.constructs;
435
+ if (direct && direct.length > 0)
436
+ return new Set(direct.map((c) => c.id));
437
+ const reg = inspection
438
+ .constructRegistry;
439
+ if (reg && typeof reg.list === 'function') {
440
+ try {
441
+ return new Set(reg.list().map((c) => c.id));
442
+ }
443
+ catch {
444
+ return new Set();
445
+ }
446
+ }
447
+ return new Set();
448
+ }
449
+ function listCommandIdsQuietly(inspection) {
450
+ const cat = inspection.commandCatalog ?? [];
451
+ const out = new Set();
452
+ for (const c of cat) {
453
+ if (c.id)
454
+ out.add(c.id);
455
+ if (c.command)
456
+ out.add(c.command);
457
+ }
458
+ return out;
459
+ }
460
+ /**
461
+ * Async pre-loader for agent-contract test registries. Reads local
462
+ * sharkcraft/policies.ts, sharkcraft/constructs.ts, sharkcraft/playbooks/
463
+ * (and pack contributions where present). Result is sync-friendly so the
464
+ * runner can stay sync.
465
+ */
466
+ export async function loadAgentContractRegistries(inspection) {
467
+ return {
468
+ helpers: loadHelperRegistryQuietly(),
469
+ playbooks: await loadPlaybookIdsAsync(inspection),
470
+ policies: await loadPolicyIdsAsync(inspection),
471
+ constructs: await loadConstructIdsAsync(inspection),
472
+ commands: listCommandIdsQuietly(inspection),
473
+ knowledge: new Set(inspection.knowledgeEntries.map((e) => e.id)),
474
+ };
475
+ }
476
+ async function importDefaultIdsArray(absPath) {
477
+ if (!existsSync(absPath))
478
+ return [];
479
+ try {
480
+ const mod = (await import(__rewriteRelativeImportExtension(pathToFileURL(absPath).href)));
481
+ return Array.isArray(mod.default) ? mod.default : [];
482
+ }
483
+ catch {
484
+ return [];
485
+ }
486
+ }
487
+ async function loadPolicyIdsAsync(inspection) {
488
+ const out = new Set();
489
+ if (inspection.sharkcraftDir) {
490
+ const local = nodePath.join(inspection.sharkcraftDir, 'policies.ts');
491
+ for (const entry of await importDefaultIdsArray(local)) {
492
+ if (entry?.id)
493
+ out.add(entry.id);
494
+ }
495
+ }
496
+ for (const pack of inspection.packs.validPacks) {
497
+ const c = pack.manifest.contributions;
498
+ for (const rel of c.policyCheckFiles ?? []) {
499
+ const full = nodePath.resolve(pack.packageRoot, rel);
500
+ for (const entry of await importDefaultIdsArray(full)) {
501
+ if (entry?.id)
502
+ out.add(entry.id);
503
+ }
504
+ }
505
+ }
506
+ // Also include any policyChecks already on the inspection (sync fallback).
507
+ for (const id of listPolicyIdsQuietly(inspection))
508
+ out.add(id);
509
+ return out;
510
+ }
511
+ async function loadPlaybookIdsAsync(inspection) {
512
+ const out = new Set();
513
+ // Sync fallback from registry.
514
+ for (const id of listPlaybookIdsQuietly(inspection))
515
+ out.add(id);
516
+ // Local file.
517
+ if (inspection.sharkcraftDir) {
518
+ const local = nodePath.join(inspection.sharkcraftDir, 'playbooks.ts');
519
+ for (const entry of await importDefaultIdsArray(local)) {
520
+ if (entry?.id)
521
+ out.add(entry.id);
522
+ }
523
+ }
524
+ // Pack contributions.
525
+ for (const pack of inspection.packs.validPacks) {
526
+ const c = pack.manifest.contributions;
527
+ for (const rel of c.playbookFiles ?? []) {
528
+ const full = nodePath.resolve(pack.packageRoot, rel);
529
+ for (const entry of await importDefaultIdsArray(full)) {
530
+ if (entry?.id)
531
+ out.add(entry.id);
532
+ }
533
+ }
534
+ }
535
+ return out;
536
+ }
537
+ async function loadConstructIdsAsync(inspection) {
538
+ const out = new Set();
539
+ // Sync fallback first.
540
+ for (const id of listConstructIdsQuietly(inspection))
541
+ out.add(id);
542
+ if (inspection.sharkcraftDir) {
543
+ const local = nodePath.join(inspection.sharkcraftDir, 'constructs.ts');
544
+ for (const entry of await importDefaultIdsArray(local)) {
545
+ if (entry?.id)
546
+ out.add(entry.id);
547
+ }
548
+ }
549
+ for (const pack of inspection.packs.validPacks) {
550
+ const c = pack.manifest.contributions;
551
+ for (const rel of c.constructFiles ?? []) {
552
+ const full = nodePath.resolve(pack.packageRoot, rel);
553
+ for (const entry of await importDefaultIdsArray(full)) {
554
+ if (entry?.id)
555
+ out.add(entry.id);
556
+ }
557
+ }
558
+ }
559
+ return out;
560
+ }
@@ -0,0 +1,46 @@
1
+ /**
2
+ * Shared uncertainty report shape.
3
+ *
4
+ * Extends `IUncertaintySummary` with a richer surface: reasons /
5
+ * missingSignals / conflictingSignals / suggestedCommands /
6
+ * safeFallbackCommand / whatWouldIncreaseConfidence.
7
+ *
8
+ * Pure, deterministic; can be derived from `IUncertaintySummary` or a
9
+ * fresh task packet.
10
+ */
11
+ import { type IUncertaintySummary } from './uncertainty.js';
12
+ import type { ITaskPacket } from './task-packet.js';
13
+ export declare const UNCERTAINTY_REPORT_SCHEMA = "sharkcraft.uncertainty-report/v1";
14
+ export interface IUncertaintySignalDetail {
15
+ readonly id: string;
16
+ readonly message: string;
17
+ }
18
+ export interface IUncertaintyReport {
19
+ readonly schema: typeof UNCERTAINTY_REPORT_SCHEMA;
20
+ readonly confidence: 'high' | 'medium' | 'low' | 'unknown';
21
+ readonly reasons: readonly string[];
22
+ readonly missingSignals: readonly IUncertaintySignalDetail[];
23
+ readonly conflictingSignals: readonly IUncertaintySignalDetail[];
24
+ readonly suggestedCommands: readonly string[];
25
+ readonly safeFallbackCommand: string;
26
+ readonly whatWouldIncreaseConfidence: readonly string[];
27
+ }
28
+ export declare function uncertaintyReportFromSummary(summary: IUncertaintySummary, fallback?: string): IUncertaintyReport;
29
+ export declare function buildUncertaintyReportFromPacket(packet: ITaskPacket): IUncertaintyReport;
30
+ /**
31
+ * Generic builder. Surfaces that don't have a task packet (PR summary,
32
+ * CI predict, handoff, contract) construct their own `IUncertaintyReport`
33
+ * by listing concrete signals.
34
+ */
35
+ export interface IBuildUncertaintyReportInput {
36
+ readonly confidence: 'high' | 'medium' | 'low' | 'unknown';
37
+ readonly reasons?: readonly string[];
38
+ readonly missingSignals?: readonly IUncertaintySignalDetail[];
39
+ readonly conflictingSignals?: readonly IUncertaintySignalDetail[];
40
+ readonly suggestedCommands?: readonly string[];
41
+ readonly safeFallbackCommand: string;
42
+ readonly whatWouldIncreaseConfidence?: readonly string[];
43
+ }
44
+ export declare function buildUncertaintyReport(input: IBuildUncertaintyReportInput): IUncertaintyReport;
45
+ export declare function renderUncertaintyReportText(report: IUncertaintyReport): string;
46
+ //# sourceMappingURL=uncertainty-report.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"uncertainty-report.d.ts","sourceRoot":"","sources":["../src/uncertainty-report.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AACH,OAAO,EAGL,KAAK,mBAAmB,EACzB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,eAAO,MAAM,yBAAyB,qCAAqC,CAAC;AAE5E,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,MAAM,EAAE,OAAO,yBAAyB,CAAC;IAClD,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAC;IAC3D,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,cAAc,EAAE,SAAS,wBAAwB,EAAE,CAAC;IAC7D,QAAQ,CAAC,kBAAkB,EAAE,SAAS,wBAAwB,EAAE,CAAC;IACjE,QAAQ,CAAC,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9C,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,2BAA2B,EAAE,SAAS,MAAM,EAAE,CAAC;CACzD;AAQD,wBAAgB,4BAA4B,CAC1C,OAAO,EAAE,mBAAmB,EAC5B,QAAQ,SAAwC,GAC/C,kBAAkB,CA+BpB;AAED,wBAAgB,gCAAgC,CAAC,MAAM,EAAE,WAAW,GAAG,kBAAkB,CAGxF;AAED;;;;GAIG;AACH,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAC;IAC3D,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACrC,QAAQ,CAAC,cAAc,CAAC,EAAE,SAAS,wBAAwB,EAAE,CAAC;IAC9D,QAAQ,CAAC,kBAAkB,CAAC,EAAE,SAAS,wBAAwB,EAAE,CAAC;IAClE,QAAQ,CAAC,iBAAiB,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/C,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,2BAA2B,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;CAC1D;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,4BAA4B,GAAG,kBAAkB,CAW9F;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,CA4B9E"}