@apexops/cli 0.10.0-next.5 → 0.11.0-next.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 (366) hide show
  1. package/assets/capability-packs/registry.v1.json +1 -62
  2. package/assets/client-projection-metadata/copilot-cli-agent-tools.json +12 -0
  3. package/assets/client-projections/github-copilot-cli/.github/copilot/settings.json +13 -0
  4. package/assets/client-projections/github-copilot-cli/.github/instructions/apex-prompt-authoring.instructions.md +1 -1
  5. package/assets/client-projections/github-copilot-cli/.github/workflows/governance-policy-baseline.yml +101 -0
  6. package/assets/client-projections/github-copilot-cli/tools/schemas/governance-baseline.schema.json +118 -0
  7. package/assets/client-projections/github-copilot-cli/tools/scripts/collect-governance-baseline.ps1 +817 -0
  8. package/assets/config/capability-packs.v1.json +1 -32
  9. package/assets/config/governance-reference.v1.json +26379 -0
  10. package/assets/config/recipe-packs.v1.json +1 -26
  11. package/assets/config/runtime-bundle.v1.json +7 -7
  12. package/assets/config/toolchain.v1.json +35 -33
  13. package/assets/config/workflow.v1.json +103 -72
  14. package/assets/customizations/.github/agents/apex-codegen.agent.md +8 -22
  15. package/assets/customizations/.github/agents/apex-validator.agent.md +14 -20
  16. package/assets/customizations/.github/agents/apex.agent.md +108 -75
  17. package/assets/customizations/.github/copilot/settings.json +13 -0
  18. package/assets/customizations/.github/instructions/apex-prompt-authoring.instructions.md +1 -1
  19. package/assets/customizations/.github/skills/apex-architecture/SKILL.md +62 -18
  20. package/assets/customizations/.github/skills/apex-artifacts/SKILL.md +28 -6
  21. package/assets/customizations/.github/skills/apex-azure-adr/SKILL.md +3 -0
  22. package/assets/customizations/.github/skills/apex-azure-cloud-migrate/SKILL.md +3 -0
  23. package/assets/customizations/.github/skills/apex-azure-compliance/SKILL.md +3 -0
  24. package/assets/customizations/.github/skills/apex-azure-compute/SKILL.md +3 -0
  25. package/assets/customizations/.github/skills/apex-azure-cost-optimization/SKILL.md +3 -0
  26. package/assets/customizations/.github/skills/apex-azure-defaults/SKILL.md +3 -0
  27. package/assets/customizations/.github/skills/apex-azure-defaults/references/governance-effects.md +5 -3
  28. package/assets/customizations/.github/skills/apex-azure-deploy/SKILL.md +3 -0
  29. package/assets/customizations/.github/skills/apex-azure-diagnostics/SKILL.md +3 -0
  30. package/assets/customizations/.github/skills/apex-azure-governance/SKILL.md +19 -3
  31. package/assets/customizations/.github/skills/apex-azure-governance/references/evidence-interpretation.md +38 -3
  32. package/assets/customizations/.github/skills/apex-azure-kusto/SKILL.md +3 -0
  33. package/assets/customizations/.github/skills/apex-azure-prepare/SKILL.md +5 -3
  34. package/assets/customizations/.github/skills/apex-azure-quotas/SKILL.md +6 -2
  35. package/assets/customizations/.github/skills/apex-azure-quotas/references/capacity-decision-rules.md +4 -3
  36. package/assets/customizations/.github/skills/apex-azure-quotas/references/operational-checklist.md +3 -2
  37. package/assets/customizations/.github/skills/apex-azure-rbac/SKILL.md +3 -0
  38. package/assets/customizations/.github/skills/apex-azure-resources/SKILL.md +3 -0
  39. package/assets/customizations/.github/skills/apex-azure-storage/SKILL.md +3 -0
  40. package/assets/customizations/.github/skills/apex-azure-validate/SKILL.md +3 -0
  41. package/assets/customizations/.github/skills/apex-bicep-patterns/SKILL.md +3 -0
  42. package/assets/customizations/.github/skills/apex-codegen/SKILL.md +6 -2
  43. package/assets/customizations/.github/skills/apex-entra-app-registration/SKILL.md +3 -0
  44. package/assets/customizations/.github/skills/apex-mermaid/SKILL.md +3 -0
  45. package/assets/customizations/.github/skills/apex-microsoft-docs/SKILL.md +3 -0
  46. package/assets/customizations/.github/skills/apex-next/SKILL.md +99 -0
  47. package/assets/customizations/.github/skills/apex-operations/SKILL.md +46 -16
  48. package/assets/customizations/.github/skills/apex-planning/SKILL.md +48 -19
  49. package/assets/customizations/.github/skills/apex-requirements/SKILL.md +61 -26
  50. package/assets/customizations/.github/skills/apex-terraform-import/SKILL.md +3 -0
  51. package/assets/customizations/.github/skills/apex-terraform-patterns/SKILL.md +3 -0
  52. package/assets/customizations/.github/skills/apex-terraform-test/SKILL.md +3 -0
  53. package/assets/customizations/.github/skills/apex-unslop/LICENSE.txt +21 -0
  54. package/assets/customizations/.github/skills/apex-unslop/SKILL.md +94 -0
  55. package/assets/customizations/.github/skills/apex-workflow/SKILL.md +15 -5
  56. package/assets/customizations/.github/workflows/governance-policy-baseline.yml +101 -0
  57. package/assets/customizations/README.md +8 -9
  58. package/assets/customizations/manifest.json +167 -209
  59. package/assets/customizations/tools/schemas/governance-baseline.schema.json +118 -0
  60. package/assets/customizations/tools/scripts/collect-governance-baseline.ps1 +817 -0
  61. package/assets/manifest.json +423 -4241
  62. package/assets/schemas/governance-baseline.schema.json +118 -0
  63. package/dist/assets.d.ts +18 -2
  64. package/dist/assets.js +115 -35
  65. package/dist/bootstrap-wizard.d.ts +37 -0
  66. package/dist/bootstrap-wizard.js +259 -0
  67. package/dist/cli.d.ts +17 -2
  68. package/dist/cli.js +180 -63
  69. package/dist/dependency-revision.js +8 -0
  70. package/dist/errors.d.ts +6 -1
  71. package/dist/errors.js +55 -0
  72. package/dist/host-profile.d.ts +47 -0
  73. package/dist/host-profile.js +269 -0
  74. package/dist/mcp-output-schemas.d.ts +43 -0
  75. package/dist/mcp-output-schemas.js +279 -0
  76. package/dist/mcp-tool-effects.d.ts +101 -0
  77. package/dist/mcp-tool-effects.js +66 -0
  78. package/dist/mcp.d.ts +50 -3
  79. package/dist/mcp.js +800 -87
  80. package/dist/runtime-binding.d.ts +37 -0
  81. package/dist/runtime-binding.js +131 -0
  82. package/dist/service.d.ts +643 -38
  83. package/dist/service.js +4937 -662
  84. package/dist/state-transfer.js +21 -1
  85. package/dist/target-scope.d.ts +4 -0
  86. package/dist/target-scope.js +9 -0
  87. package/dist/version.d.ts +3 -1
  88. package/dist/version.js +19 -1
  89. package/dist/workflow-validators.d.ts +20 -3
  90. package/dist/workflow-validators.js +408 -67
  91. package/dist/workspace-root.d.ts +7 -0
  92. package/dist/workspace-root.js +67 -0
  93. package/package.json +11 -12
  94. package/assets/capability-packs/azure-governance-discovery/source/scripts/discover.py +0 -1189
  95. package/assets/capability-packs/azure-governance-discovery/source/scripts/render_governance.py +0 -676
  96. package/assets/client-projections/github-copilot-cli/.github/agents/apex-architect.agent.md +0 -91
  97. package/assets/client-projections/github-copilot-cli/.github/agents/apex-operator.agent.md +0 -75
  98. package/assets/client-projections/github-copilot-cli/.github/agents/apex-planner.agent.md +0 -88
  99. package/assets/client-projections/github-copilot-cli/.github/agents/apex-requirements.agent.md +0 -99
  100. package/assets/client-projections/github-copilot-cli/.github/agents/apex.agent.md +0 -88
  101. package/assets/client-projections/github-copilot-cli/.github/mcp.json +0 -65
  102. package/assets/client-projections/github-copilot-cli/.github/skills/apex-architecture/SKILL.md +0 -36
  103. package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/SKILL.md +0 -65
  104. package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/references/presentation-conventions.md +0 -52
  105. package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/references/reference-only-outlines.md +0 -78
  106. package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/templates/architecture-assessment.md +0 -35
  107. package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/templates/cost-estimate.md +0 -47
  108. package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/templates/deployment-summary.md +0 -35
  109. package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/templates/governance-constraints.md +0 -35
  110. package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/templates/implementation-plan.md +0 -43
  111. package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/templates/operations-runbook.md +0 -35
  112. package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/templates/requirements.md +0 -42
  113. package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/templates/resource-inventory.md +0 -29
  114. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-adr/SKILL.md +0 -52
  115. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-adr/references/decision-examples.md +0 -38
  116. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-adr/references/decision-guardrails.md +0 -36
  117. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-adr/references/decision-quality.md +0 -21
  118. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-adr/references/decision-record-fields.md +0 -57
  119. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-cloud-migrate/SKILL.md +0 -55
  120. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-cloud-migrate/references/lambda-to-functions-assessment.md +0 -29
  121. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-cloud-migrate/references/migration-readiness.md +0 -27
  122. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-cloud-migrate/references/staged-validation-handoff.md +0 -26
  123. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-cloud-migrate/references/workload-mapping.md +0 -27
  124. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-compliance/SKILL.md +0 -58
  125. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-compliance/references/compliance-finding-criteria.md +0 -63
  126. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-compliance/references/operational-checklist.md +0 -24
  127. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-compute/SKILL.md +0 -36
  128. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-compute/references/compute-selection.md +0 -26
  129. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-compute/references/pricing-evidence.md +0 -11
  130. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-compute/references/recommendation-and-scale-rules.md +0 -44
  131. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-cost-optimization/SKILL.md +0 -61
  132. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-cost-optimization/references/cost-assessment-criteria.md +0 -61
  133. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-cost-optimization/references/operational-checklist.md +0 -24
  134. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/SKILL.md +0 -59
  135. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/avm-binding-guidance.md +0 -29
  136. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/baseline-fallbacks.md +0 -53
  137. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/cost-monitoring.md +0 -47
  138. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/decision-boundaries.md +0 -19
  139. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/governance-effects.md +0 -28
  140. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/naming.md +0 -47
  141. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/network-planning.md +0 -47
  142. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/security-baseline.md +0 -40
  143. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/service-selection.md +0 -51
  144. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/tag-precedence.md +0 -31
  145. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-deploy/SKILL.md +0 -50
  146. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-deploy/references/operational-checklist.md +0 -26
  147. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-deploy/references/preview-recovery-verification.md +0 -48
  148. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-diagnostics/SKILL.md +0 -60
  149. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-diagnostics/references/diagnostic-interpretation.md +0 -42
  150. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-diagnostics/references/operational-checklist.md +0 -24
  151. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-governance/SKILL.md +0 -52
  152. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-governance/references/evidence-interpretation.md +0 -58
  153. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-governance/references/operational-checklist.md +0 -25
  154. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-kusto/SKILL.md +0 -58
  155. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-kusto/references/kql-evidence-interpretation.md +0 -41
  156. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-kusto/references/operational-checklist.md +0 -25
  157. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-prepare/SKILL.md +0 -52
  158. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-prepare/references/functions-recipe-pack.md +0 -27
  159. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-prepare/references/preparation-lineage.md +0 -36
  160. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-quotas/SKILL.md +0 -53
  161. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-quotas/references/capacity-decision-rules.md +0 -48
  162. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-quotas/references/operational-checklist.md +0 -23
  163. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-rbac/SKILL.md +0 -45
  164. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-rbac/references/assignment-intent.md +0 -39
  165. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-rbac/references/least-privilege-selection.md +0 -50
  166. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-resources/SKILL.md +0 -54
  167. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-resources/references/inventory-query-patterns.md +0 -49
  168. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-resources/references/operational-checklist.md +0 -24
  169. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-storage/SKILL.md +0 -35
  170. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-storage/references/security-and-governance.md +0 -12
  171. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-storage/references/service-auth-and-sdk-boundary.md +0 -33
  172. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-storage/references/storage-selection.md +0 -12
  173. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-validate/SKILL.md +0 -49
  174. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-validate/references/operational-checklist.md +0 -24
  175. package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-validate/references/preflight-evidence.md +0 -43
  176. package/assets/client-projections/github-copilot-cli/.github/skills/apex-bicep-patterns/SKILL.md +0 -41
  177. package/assets/client-projections/github-copilot-cli/.github/skills/apex-bicep-patterns/references/avm-and-codegen-acceptance.md +0 -11
  178. package/assets/client-projections/github-copilot-cli/.github/skills/apex-bicep-patterns/references/codegen-acceptance-checklist.md +0 -46
  179. package/assets/client-projections/github-copilot-cli/.github/skills/apex-bicep-patterns/references/compiler-and-provider-gotchas.md +0 -74
  180. package/assets/client-projections/github-copilot-cli/.github/skills/apex-bicep-patterns/references/module-interfaces-and-parameters.md +0 -56
  181. package/assets/client-projections/github-copilot-cli/.github/skills/apex-bicep-patterns/references/network-and-observability.md +0 -52
  182. package/assets/client-projections/github-copilot-cli/.github/skills/apex-codegen/SKILL.md +0 -32
  183. package/assets/client-projections/github-copilot-cli/.github/skills/apex-entra-app-registration/SKILL.md +0 -53
  184. package/assets/client-projections/github-copilot-cli/.github/skills/apex-entra-app-registration/references/capability-receipts.md +0 -21
  185. package/assets/client-projections/github-copilot-cli/.github/skills/apex-entra-app-registration/references/design-and-diagnostics.md +0 -36
  186. package/assets/client-projections/github-copilot-cli/.github/skills/apex-entra-app-registration/references/oauth-registration-model.md +0 -26
  187. package/assets/client-projections/github-copilot-cli/.github/skills/apex-entra-app-registration/references/permissions-and-credentials.md +0 -27
  188. package/assets/client-projections/github-copilot-cli/.github/skills/apex-mermaid/SKILL.md +0 -44
  189. package/assets/client-projections/github-copilot-cli/.github/skills/apex-mermaid/references/styling.md +0 -33
  190. package/assets/client-projections/github-copilot-cli/.github/skills/apex-mermaid/references/syntax.md +0 -99
  191. package/assets/client-projections/github-copilot-cli/.github/skills/apex-microsoft-docs/SKILL.md +0 -53
  192. package/assets/client-projections/github-copilot-cli/.github/skills/apex-microsoft-docs/references/research-method.md +0 -91
  193. package/assets/client-projections/github-copilot-cli/.github/skills/apex-operations/SKILL.md +0 -34
  194. package/assets/client-projections/github-copilot-cli/.github/skills/apex-planning/SKILL.md +0 -36
  195. package/assets/client-projections/github-copilot-cli/.github/skills/apex-requirements/SKILL.md +0 -46
  196. package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-import/SKILL.md +0 -47
  197. package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-import/references/adoption-attestation.md +0 -10
  198. package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-import/references/import-assessment.md +0 -14
  199. package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-import/references/import-mapping.md +0 -27
  200. package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-import/references/mapping-and-adoption-attestation.md +0 -12
  201. package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-patterns/SKILL.md +0 -49
  202. package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-patterns/references/module-composition-and-refactor.md +0 -20
  203. package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-patterns/references/module-composition-and-state-boundaries.md +0 -11
  204. package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-patterns/references/module-locks-and-codegen-acceptance.md +0 -14
  205. package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-patterns/references/network-and-observability.md +0 -12
  206. package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-patterns/references/plan-and-change-assessment.md +0 -24
  207. package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-test/SKILL.md +0 -45
  208. package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-test/references/evidence-acceptance.md +0 -10
  209. package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-test/references/plan-mode-and-mock-design.md +0 -12
  210. package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-test/references/plan-mode-test-design.md +0 -23
  211. package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-test/references/test-design.md +0 -13
  212. package/assets/client-projections/github-copilot-cli/.github/skills/apex-workflow/SKILL.md +0 -37
  213. package/assets/client-projections/github-copilot-vscode/.github/agents/apex-architect.agent.md +0 -100
  214. package/assets/client-projections/github-copilot-vscode/.github/agents/apex-codegen.agent.md +0 -62
  215. package/assets/client-projections/github-copilot-vscode/.github/agents/apex-operator.agent.md +0 -79
  216. package/assets/client-projections/github-copilot-vscode/.github/agents/apex-planner.agent.md +0 -98
  217. package/assets/client-projections/github-copilot-vscode/.github/agents/apex-requirements.agent.md +0 -108
  218. package/assets/client-projections/github-copilot-vscode/.github/agents/apex-reviewer.agent.md +0 -63
  219. package/assets/client-projections/github-copilot-vscode/.github/agents/apex-validator.agent.md +0 -61
  220. package/assets/client-projections/github-copilot-vscode/.github/agents/apex.agent.md +0 -107
  221. package/assets/client-projections/github-copilot-vscode/.github/copilot-instructions.md +0 -13
  222. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-agent-authoring.instructions.md +0 -14
  223. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-artifact-contracts.instructions.md +0 -12
  224. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-automation.instructions.md +0 -12
  225. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-azure-yaml.instructions.md +0 -12
  226. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-bicep.instructions.md +0 -12
  227. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-code-quality.instructions.md +0 -12
  228. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-context.instructions.md +0 -12
  229. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-documentation.instructions.md +0 -12
  230. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-governance.instructions.md +0 -12
  231. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-instruction-authoring.instructions.md +0 -12
  232. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-javascript.instructions.md +0 -11
  233. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-json.instructions.md +0 -11
  234. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-markdown.instructions.md +0 -13
  235. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-powershell.instructions.md +0 -11
  236. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-prompt-authoring.instructions.md +0 -12
  237. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-python.instructions.md +0 -11
  238. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-safe-file-edits.instructions.md +0 -11
  239. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-safe-shell.instructions.md +0 -11
  240. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-shell.instructions.md +0 -11
  241. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-skill-authoring.instructions.md +0 -13
  242. package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-terraform.instructions.md +0 -12
  243. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-architecture/SKILL.md +0 -36
  244. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/SKILL.md +0 -65
  245. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/references/presentation-conventions.md +0 -52
  246. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/references/reference-only-outlines.md +0 -78
  247. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/templates/architecture-assessment.md +0 -35
  248. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/templates/cost-estimate.md +0 -47
  249. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/templates/deployment-summary.md +0 -35
  250. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/templates/governance-constraints.md +0 -35
  251. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/templates/implementation-plan.md +0 -43
  252. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/templates/operations-runbook.md +0 -35
  253. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/templates/requirements.md +0 -42
  254. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/templates/resource-inventory.md +0 -29
  255. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-adr/SKILL.md +0 -52
  256. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-adr/references/decision-examples.md +0 -38
  257. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-adr/references/decision-guardrails.md +0 -36
  258. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-adr/references/decision-quality.md +0 -21
  259. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-adr/references/decision-record-fields.md +0 -57
  260. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-cloud-migrate/SKILL.md +0 -55
  261. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-cloud-migrate/references/lambda-to-functions-assessment.md +0 -29
  262. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-cloud-migrate/references/migration-readiness.md +0 -27
  263. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-cloud-migrate/references/staged-validation-handoff.md +0 -26
  264. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-cloud-migrate/references/workload-mapping.md +0 -27
  265. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-compliance/SKILL.md +0 -58
  266. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-compliance/references/compliance-finding-criteria.md +0 -63
  267. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-compliance/references/operational-checklist.md +0 -24
  268. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-compute/SKILL.md +0 -36
  269. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-compute/references/compute-selection.md +0 -26
  270. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-compute/references/pricing-evidence.md +0 -11
  271. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-compute/references/recommendation-and-scale-rules.md +0 -44
  272. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-cost-optimization/SKILL.md +0 -61
  273. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-cost-optimization/references/cost-assessment-criteria.md +0 -61
  274. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-cost-optimization/references/operational-checklist.md +0 -24
  275. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/SKILL.md +0 -59
  276. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/avm-binding-guidance.md +0 -29
  277. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/baseline-fallbacks.md +0 -53
  278. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/cost-monitoring.md +0 -47
  279. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/decision-boundaries.md +0 -19
  280. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/governance-effects.md +0 -28
  281. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/naming.md +0 -47
  282. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/network-planning.md +0 -47
  283. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/security-baseline.md +0 -40
  284. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/service-selection.md +0 -51
  285. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/tag-precedence.md +0 -31
  286. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-deploy/SKILL.md +0 -50
  287. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-deploy/references/operational-checklist.md +0 -26
  288. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-deploy/references/preview-recovery-verification.md +0 -48
  289. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-diagnostics/SKILL.md +0 -60
  290. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-diagnostics/references/diagnostic-interpretation.md +0 -42
  291. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-diagnostics/references/operational-checklist.md +0 -24
  292. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-governance/SKILL.md +0 -52
  293. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-governance/references/evidence-interpretation.md +0 -58
  294. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-governance/references/operational-checklist.md +0 -25
  295. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-kusto/SKILL.md +0 -58
  296. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-kusto/references/kql-evidence-interpretation.md +0 -41
  297. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-kusto/references/operational-checklist.md +0 -25
  298. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-prepare/SKILL.md +0 -52
  299. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-prepare/references/functions-recipe-pack.md +0 -27
  300. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-prepare/references/preparation-lineage.md +0 -36
  301. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-quotas/SKILL.md +0 -53
  302. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-quotas/references/capacity-decision-rules.md +0 -48
  303. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-quotas/references/operational-checklist.md +0 -23
  304. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-rbac/SKILL.md +0 -45
  305. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-rbac/references/assignment-intent.md +0 -39
  306. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-rbac/references/least-privilege-selection.md +0 -50
  307. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-resources/SKILL.md +0 -54
  308. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-resources/references/inventory-query-patterns.md +0 -49
  309. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-resources/references/operational-checklist.md +0 -24
  310. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-storage/SKILL.md +0 -35
  311. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-storage/references/security-and-governance.md +0 -12
  312. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-storage/references/service-auth-and-sdk-boundary.md +0 -33
  313. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-storage/references/storage-selection.md +0 -12
  314. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-validate/SKILL.md +0 -49
  315. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-validate/references/operational-checklist.md +0 -24
  316. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-validate/references/preflight-evidence.md +0 -43
  317. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-bicep-patterns/SKILL.md +0 -41
  318. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-bicep-patterns/references/avm-and-codegen-acceptance.md +0 -11
  319. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-bicep-patterns/references/codegen-acceptance-checklist.md +0 -46
  320. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-bicep-patterns/references/compiler-and-provider-gotchas.md +0 -74
  321. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-bicep-patterns/references/module-interfaces-and-parameters.md +0 -56
  322. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-bicep-patterns/references/network-and-observability.md +0 -52
  323. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-codegen/SKILL.md +0 -32
  324. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-entra-app-registration/SKILL.md +0 -53
  325. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-entra-app-registration/references/capability-receipts.md +0 -21
  326. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-entra-app-registration/references/design-and-diagnostics.md +0 -36
  327. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-entra-app-registration/references/oauth-registration-model.md +0 -26
  328. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-entra-app-registration/references/permissions-and-credentials.md +0 -27
  329. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-mermaid/SKILL.md +0 -44
  330. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-mermaid/references/styling.md +0 -33
  331. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-mermaid/references/syntax.md +0 -99
  332. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-microsoft-docs/SKILL.md +0 -53
  333. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-microsoft-docs/references/research-method.md +0 -91
  334. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-operations/SKILL.md +0 -34
  335. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-planning/SKILL.md +0 -36
  336. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-requirements/SKILL.md +0 -46
  337. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-import/SKILL.md +0 -47
  338. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-import/references/adoption-attestation.md +0 -10
  339. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-import/references/import-assessment.md +0 -14
  340. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-import/references/import-mapping.md +0 -27
  341. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-import/references/mapping-and-adoption-attestation.md +0 -12
  342. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-patterns/SKILL.md +0 -49
  343. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-patterns/references/module-composition-and-refactor.md +0 -20
  344. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-patterns/references/module-composition-and-state-boundaries.md +0 -11
  345. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-patterns/references/module-locks-and-codegen-acceptance.md +0 -14
  346. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-patterns/references/network-and-observability.md +0 -12
  347. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-patterns/references/plan-and-change-assessment.md +0 -24
  348. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-test/SKILL.md +0 -45
  349. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-test/references/evidence-acceptance.md +0 -10
  350. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-test/references/plan-mode-and-mock-design.md +0 -12
  351. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-test/references/plan-mode-test-design.md +0 -23
  352. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-test/references/test-design.md +0 -13
  353. package/assets/client-projections/github-copilot-vscode/.github/skills/apex-workflow/SKILL.md +0 -37
  354. package/assets/client-projections/github-copilot-vscode/.vscode/mcp.json +0 -29
  355. package/assets/customizations/.github/agents/apex-architect.agent.md +0 -93
  356. package/assets/customizations/.github/agents/apex-operator.agent.md +0 -72
  357. package/assets/customizations/.github/agents/apex-planner.agent.md +0 -91
  358. package/assets/customizations/.github/agents/apex-requirements.agent.md +0 -101
  359. package/assets/customizations/.github/agents/apex-reviewer.agent.md +0 -60
  360. package/assets/customizations/.github/mcp.json +0 -65
  361. package/assets/customizations/.github/skills/apex-azure-prepare/references/functions-recipe-pack.md +0 -27
  362. package/assets/customizations/.vscode/mcp.json +0 -29
  363. package/dist/azure-mcp-environment.d.ts +0 -2
  364. package/dist/azure-mcp-environment.js +0 -7
  365. package/dist/azure-mcp.d.ts +0 -2
  366. package/dist/azure-mcp.js +0 -21
@@ -0,0 +1,269 @@
1
+ import { readFile, stat } from "node:fs/promises";
2
+ import { homedir, release } from "node:os";
3
+ import { join } from "node:path";
4
+ import { meetsMinimumVersion } from "./version.js";
5
+ const MAX_COPILOT_CONFIG_BYTES = 1024 * 1024;
6
+ const RELEASE_VERSION = /^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)$/u;
7
+ export function currentHostEnvironment() {
8
+ return { platform: process.platform, release: release(), env: process.env, homedir: homedir() };
9
+ }
10
+ export function detectHostKind(host) {
11
+ if (host.platform === "win32")
12
+ return "windows";
13
+ if (host.platform === "darwin")
14
+ return "macos";
15
+ if (host.platform !== "linux")
16
+ return "unsupported";
17
+ // WSL2 kernels report `-microsoft-standard[-WSL2]`; WSL1 reports `-Microsoft` without `standard`.
18
+ if (/microsoft-standard|wsl2/iu.test(host.release))
19
+ return "wsl2";
20
+ if (/microsoft/iu.test(host.release))
21
+ return "wsl1";
22
+ return "linux";
23
+ }
24
+ /** Hosts whose supported client is Copilot CLI; VS Code there is not an APEX client. */
25
+ export function isCopilotCliHost(kind) {
26
+ return kind === "wsl2" || kind === "linux" || kind === "wsl1";
27
+ }
28
+ /** Extracts the first stable release version from tool output such as `GitHub Copilot CLI 1.0.93.`. */
29
+ export function firstReleaseVersion(output) {
30
+ for (const match of output.matchAll(/(?<![\d.])(\d+\.\d+\.\d+)(?![\d-])/gu))
31
+ if (RELEASE_VERSION.test(match[1]))
32
+ return match[1];
33
+ return undefined;
34
+ }
35
+ export function copilotHome(host) {
36
+ const configured = host.env.COPILOT_HOME?.trim();
37
+ if (configured !== undefined && configured.length > 0)
38
+ return configured;
39
+ return join(host.homedir, ".copilot");
40
+ }
41
+ function hostCheck(kind) {
42
+ const sandbox = "client local sandboxing is assumed on and not checked";
43
+ switch (kind) {
44
+ case "windows":
45
+ return {
46
+ id: "host",
47
+ ok: true,
48
+ value: `windows: VS Code Copilot harness or GitHub Copilot app; Copilot CLI manages the plugin store only; ${sandbox}`,
49
+ };
50
+ case "wsl2":
51
+ return { id: "host", ok: true, value: `wsl2: GitHub Copilot CLI; ${sandbox}` };
52
+ case "linux":
53
+ return { id: "host", ok: true, value: `linux: GitHub Copilot CLI; ${sandbox}` };
54
+ case "macos":
55
+ return {
56
+ id: "host",
57
+ ok: true,
58
+ severity: "warning",
59
+ value: "macos: VS Code or the GitHub Copilot app, best effort and not qualified",
60
+ remedy: "Use Windows 11 for VS Code or the GitHub Copilot app, or Linux or WSL2 for Copilot CLI",
61
+ };
62
+ case "wsl1":
63
+ return {
64
+ id: "host",
65
+ ok: false,
66
+ value: "wsl1: unsupported; the Copilot CLI sandbox needs WSL2",
67
+ remedy: "Use a WSL2 distribution: run wsl --set-version DISTRIBUTION 2 in PowerShell after a backup",
68
+ };
69
+ case "unsupported":
70
+ return {
71
+ id: "host",
72
+ ok: false,
73
+ value: "unsupported platform",
74
+ remedy: "Use Windows 11 for VS Code or the GitHub Copilot app, or Linux or WSL2 for Copilot CLI",
75
+ };
76
+ }
77
+ }
78
+ async function gitCheck(kind, inputs) {
79
+ const found = await inputs.executableExists("git");
80
+ return {
81
+ id: "git",
82
+ ok: found,
83
+ value: found ? "found on PATH" : "not found on PATH",
84
+ remedy: kind === "windows"
85
+ ? "Install Git with winget install Git.Git, then open a new terminal"
86
+ : kind === "macos"
87
+ ? "Install Git and add it to PATH"
88
+ : "Install Git with sudo apt install git",
89
+ };
90
+ }
91
+ async function vscodeCheck(kind, inputs) {
92
+ // On WSL2 `code` is usually the Windows VS Code shim, and running it can start a VS Code Server install. Copilot CLI
93
+ // hosts never use VS Code, so doctor does not run it there.
94
+ if (isCopilotCliHost(kind))
95
+ return {
96
+ id: "vscode",
97
+ ok: true,
98
+ value: (await inputs.executableExists("code"))
99
+ ? "skipped: the Copilot CLI host does not use VS Code"
100
+ : "not needed: the Copilot CLI host does not use VS Code",
101
+ };
102
+ const minimum = inputs.minimums.vscode;
103
+ if (minimum === undefined)
104
+ return {
105
+ id: "vscode",
106
+ ok: false,
107
+ value: "bundled VS Code minimum unavailable",
108
+ remedy: "Reinstall the apex CLI package",
109
+ };
110
+ if (!(await inputs.executableExists("code")))
111
+ return { id: "vscode", ok: true, value: `not found; ${minimum} or newer needed only for the VS Code harness` };
112
+ const version = await inputs.toolVersion("code", ["--version"]);
113
+ return {
114
+ id: "vscode",
115
+ ok: version !== undefined && meetsMinimumVersion(version, minimum),
116
+ value: version ?? "version unavailable from code --version",
117
+ remedy: `Update VS Code to ${minimum} or newer to use the Copilot harness`,
118
+ };
119
+ }
120
+ async function copilotCliCheck(kind, inputs) {
121
+ const minimum = inputs.minimums.copilotCli;
122
+ if (minimum === undefined)
123
+ return {
124
+ id: "copilot-cli",
125
+ ok: false,
126
+ value: "bundled Copilot CLI minimum unavailable",
127
+ remedy: "Reinstall the apex CLI package",
128
+ };
129
+ const sessionClient = isCopilotCliHost(kind);
130
+ const install = kind === "windows"
131
+ ? `Install Copilot CLI ${minimum} or newer with winget install GitHub.Copilot`
132
+ : `Install Copilot CLI ${minimum} or newer with npm install -g @github/copilot, then run copilot login`;
133
+ const advisory = (value, remedy) => sessionClient
134
+ ? { id: "copilot-cli", ok: false, value, remedy }
135
+ : { id: "copilot-cli", ok: true, severity: "warning", value: `${value}; needed to install the plugin`, remedy };
136
+ if (!(await inputs.executableExists("copilot")))
137
+ return advisory("not found on PATH", install);
138
+ const version = await inputs.toolVersion("copilot", ["--no-auto-update", "--version"]);
139
+ if (version === undefined)
140
+ return advisory("version unavailable from copilot --version", install);
141
+ if (!meetsMinimumVersion(version, minimum))
142
+ return advisory(version, `Update Copilot CLI to ${minimum} or newer with copilot update`);
143
+ return {
144
+ id: "copilot-cli",
145
+ ok: true,
146
+ value: sessionClient ? version : `${version}; manages the plugin store only, run APEX in VS Code or the app`,
147
+ };
148
+ }
149
+ async function readInstalledPlugins(path) {
150
+ try {
151
+ const info = await stat(path);
152
+ if (!info.isFile() || info.size > MAX_COPILOT_CONFIG_BYTES)
153
+ return "invalid";
154
+ // Copilot CLI writes config.json with leading `//` comment lines.
155
+ const config = JSON.parse((await readFile(path, "utf8")).replace(/^\s*\/\/.*$/gmu, ""));
156
+ if (config === null || typeof config !== "object" || Array.isArray(config))
157
+ return "invalid";
158
+ if (config.installedPlugins === undefined)
159
+ return [];
160
+ if (!Array.isArray(config.installedPlugins))
161
+ return "invalid";
162
+ return config.installedPlugins.filter((entry) => entry !== null && typeof entry === "object");
163
+ }
164
+ catch (error) {
165
+ return error.code === "ENOENT" ? "missing" : "invalid";
166
+ }
167
+ }
168
+ async function copilotPluginCheck(kind, inputs) {
169
+ const { name, marketplace } = inputs.plugin;
170
+ const qualified = `${name}@${marketplace}`;
171
+ const home = copilotHome(inputs.host);
172
+ const configPath = join(home, "config.json");
173
+ const reinstall = kind === "windows"
174
+ ? `Close every VS Code window, then run copilot plugin uninstall ${qualified} and copilot plugin install ${qualified}`
175
+ : `Run copilot plugin uninstall ${qualified}, then copilot plugin install ${qualified}`;
176
+ const installed = await readInstalledPlugins(configPath);
177
+ if (installed === "invalid")
178
+ return {
179
+ id: "copilot-plugin",
180
+ ok: false,
181
+ value: `unreadable Copilot CLI configuration ${configPath}`,
182
+ remedy: "Run copilot plugin list to check the Copilot CLI configuration, then run doctor again",
183
+ };
184
+ const entries = installed === "missing" ? [] : installed.filter((entry) => entry.name === name);
185
+ if (entries.length === 0) {
186
+ // Copilot CLI installs the plugin that the workspace settings enable on the first trusted session; VS Code and
187
+ // the app only read the store, so on those hosts the plugin must already be there.
188
+ const missing = `not installed in the Copilot CLI plugin store ${home}`;
189
+ return isCopilotCliHost(kind)
190
+ ? {
191
+ id: "copilot-plugin",
192
+ ok: true,
193
+ severity: "warning",
194
+ value: missing,
195
+ remedy: `Run copilot plugin install ${qualified}, or start copilot in the initialized workspace and trust it`,
196
+ }
197
+ : {
198
+ id: "copilot-plugin",
199
+ ok: false,
200
+ value: missing,
201
+ remedy: `${kind === "windows" ? "Close every VS Code window, then run" : "Run"} copilot plugin marketplace add jonathan-vella/apex-plugins and copilot plugin install ${qualified}`,
202
+ };
203
+ }
204
+ if (entries.length > 1)
205
+ return {
206
+ id: "copilot-plugin",
207
+ ok: false,
208
+ value: `${entries.length} ${name} plugins installed in ${home}`,
209
+ remedy: `Uninstall the extra copies so that only ${qualified} remains (copilot plugin list shows them)`,
210
+ };
211
+ const entry = entries[0];
212
+ const version = typeof entry.version === "string" ? entry.version : "unknown";
213
+ const source = typeof entry.marketplace === "string" && entry.marketplace.length > 0 ? entry.marketplace : "direct";
214
+ const label = `${name}@${source} ${version}`;
215
+ // Workspace settings enable only the declared marketplace; a direct install (no marketplace) is a local candidate.
216
+ if (source !== "direct" && source !== marketplace)
217
+ return {
218
+ id: "copilot-plugin",
219
+ ok: false,
220
+ value: `${label} from another marketplace`,
221
+ remedy: `Uninstall ${name}@${source}, then run copilot plugin install ${qualified}`,
222
+ };
223
+ if (entry.enabled !== true)
224
+ return { id: "copilot-plugin", ok: false, value: `${label} disabled`, remedy: reinstall };
225
+ if (version !== inputs.apexVersion)
226
+ return {
227
+ id: "copilot-plugin",
228
+ ok: false,
229
+ value: `${label}; this apex CLI is ${inputs.apexVersion}`,
230
+ remedy: `Keep the plugin and CLI at one version: run copilot plugin update ${qualified}, or install @apexops/cli@${version}`,
231
+ };
232
+ return {
233
+ id: "copilot-plugin",
234
+ ok: true,
235
+ value: kind === "windows"
236
+ ? `${label} enabled in ${home}; VS Code must list one apex entry under @agentPlugins`
237
+ : `${label} enabled in ${home}`,
238
+ };
239
+ }
240
+ async function sandboxToolsCheck(inputs) {
241
+ const missing = [];
242
+ for (const executable of ["bwrap", "slirp4netns"])
243
+ if (!(await inputs.executableExists(executable)))
244
+ missing.push(executable);
245
+ return missing.length === 0
246
+ ? { id: "linux-sandbox-tools", ok: true, value: "bwrap and slirp4netns found; sandbox setting not checked" }
247
+ : {
248
+ id: "linux-sandbox-tools",
249
+ ok: true,
250
+ severity: "warning",
251
+ value: `missing ${missing.join(", ")}; the Copilot CLI sandbox needs them`,
252
+ remedy: "Install them with sudo apt install bubblewrap slirp4netns; copilot help sandbox lists the rest",
253
+ };
254
+ }
255
+ /** Read-only host checks for the supported client on this host. Each failing or advisory check carries a remedy. */
256
+ export async function hostDoctorChecks(inputs) {
257
+ const kind = detectHostKind(inputs.host);
258
+ const checks = [
259
+ hostCheck(kind),
260
+ await gitCheck(kind, inputs),
261
+ await vscodeCheck(kind, inputs),
262
+ await copilotCliCheck(kind, inputs),
263
+ await copilotPluginCheck(kind, inputs),
264
+ ];
265
+ if (kind === "linux" || kind === "wsl2")
266
+ checks.push(await sandboxToolsCheck(inputs));
267
+ return checks;
268
+ }
269
+ //# sourceMappingURL=host-profile.js.map
@@ -0,0 +1,43 @@
1
+ import { z } from "zod";
2
+ /** Maximum checks listed in a doctor MCP summary; the doctorChecks tool pages the complete list. */
3
+ export declare const MCP_DOCTOR_CHECK_LIMIT = 32;
4
+ export declare const MCP_OUTPUT_SCHEMAS: {
5
+ status: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
6
+ releaseWriter: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
7
+ capabilityList: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
8
+ capabilityStatus: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
9
+ nextTask: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
10
+ taskContext: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
11
+ readTaskInput: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
12
+ recordInput: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
13
+ governanceImport: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
14
+ governanceSelect: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
15
+ projectCreate: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
16
+ projectList: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
17
+ projectUse: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
18
+ projectDelete: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
19
+ gateDecide: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
20
+ reviewDecide: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
21
+ stageArtifact: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
22
+ stageFile: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
23
+ generateIac: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
24
+ validateTask: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
25
+ completeTask: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
26
+ requirementsComplete: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
27
+ architectureComplete: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
28
+ reviewComplete: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
29
+ planComplete: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
30
+ preview: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
31
+ inventory: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
32
+ reconcile: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
33
+ diagnose: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
34
+ improvementObserve: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
35
+ improvementObservations: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
36
+ improvementProposals: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
37
+ render: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
38
+ promote: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
39
+ doctor: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
40
+ doctorChecks: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
41
+ submitEvidence: z.ZodObject<z.core.$ZodLooseShape, z.core.$strip>;
42
+ };
43
+ //# sourceMappingURL=mcp-output-schemas.d.ts.map
@@ -0,0 +1,279 @@
1
+ import { ApprovalEvidenceV1Schema, EvidenceManifestV1Schema, ImprovementObservationV1Schema, ImprovementProposalV1Schema, InputRequestV1Schema, InputValueV1Schema, IsoDateTimeSchema, NonEmptyStringSchema, NativeValidationReceiptV1Schema, ResourceInventoryV1Schema, ReviewRequestV1Schema, RunConfigV1Schema, Sha256Schema, TaskEnvelopeV1Schema, registerContractFormats, } from "@apexops/contracts";
2
+ import { Type } from "@sinclair/typebox";
3
+ import { Value } from "@sinclair/typebox/value";
4
+ import { z } from "zod";
5
+ import { SUPPORTED_ARTIFACT_KINDS } from "./service.js";
6
+ registerContractFormats();
7
+ const object = (properties) => Type.Object(properties, { additionalProperties: false });
8
+ const strings = Type.Array(Type.String());
9
+ const count = Type.Integer({ minimum: 0 });
10
+ const artifactKind = Type.Union(SUPPORTED_ARTIFACT_KINDS.map((kind) => Type.Literal(kind)));
11
+ const artifactHashes = object(Object.fromEntries(SUPPORTED_ARTIFACT_KINDS.map((kind) => [kind, Type.Optional(Sha256Schema)])));
12
+ function contract(schema, options = {}) {
13
+ const successBranches = schema.anyOf ?? [schema];
14
+ schema = Type.Union([
15
+ ...(options.pageable
16
+ ? successBranches.map((branch) => object({ ...branch.properties, nextCursor: Type.Optional(Type.String()) }))
17
+ : successBranches),
18
+ object({
19
+ error: object({
20
+ code: Type.Union([
21
+ "APEX_USAGE",
22
+ "APEX_NOT_FOUND",
23
+ "APEX_CONFLICT",
24
+ "APEX_WRITER_CONFLICT",
25
+ "APEX_WORKSPACE_UNSUPPORTED",
26
+ "APEX_RUNTIME_MISMATCH",
27
+ "APEX_VALIDATION",
28
+ "APEX_STALE",
29
+ "APEX_AUTHORIZATION",
30
+ "APEX_CURSOR_INVALID",
31
+ "APEX_RESULT_TOO_LARGE",
32
+ "APEX_REVIEW_PENDING",
33
+ "APEX_INTERNAL",
34
+ ].map((code) => Type.Literal(code))),
35
+ message: Type.String(),
36
+ remediation: Type.String(),
37
+ }),
38
+ }),
39
+ ]);
40
+ const branches = schema.anyOf;
41
+ const envelope = branches === undefined
42
+ ? schema
43
+ : object(Object.fromEntries([
44
+ ...new Set([
45
+ ...branches.flatMap((branch) => Object.keys(branch.properties)),
46
+ ...(options.pageable ? ["nextCursor"] : []),
47
+ ]),
48
+ ].map((key) => [
49
+ key,
50
+ Type.Optional(key === "nextCursor"
51
+ ? Type.String()
52
+ : Type.Union(branches.flatMap((branch) => branch.properties[key] ?? []))),
53
+ ])));
54
+ const json = (value) => JSON.parse(JSON.stringify(value, (key, entry) => (key === "$id" ? undefined : entry)));
55
+ const converted = z.fromJSONSchema(json(envelope));
56
+ if (!(converted instanceof z.ZodObject))
57
+ throw new Error("MCP result contract must be an object");
58
+ return converted
59
+ .superRefine((value, context) => {
60
+ if (!Value.Check(schema, value))
61
+ context.addIssue({ code: "custom", message: "Invalid domain contract" });
62
+ })
63
+ .meta({ ...json(envelope), ...json(schema) });
64
+ }
65
+ const selection = object({ projectId: NonEmptyStringSchema, runId: NonEmptyStringSchema });
66
+ const capability = object({
67
+ id: Type.String(),
68
+ state: Type.Union(["installed", "unavailable", "blocked", "invalid", "not-installed"].map((value) => Type.Literal(value))),
69
+ version: Type.Optional(Type.String()),
70
+ installedVersion: Type.Optional(Type.String()),
71
+ requiredWorkflows: strings,
72
+ reason: Type.Optional(Type.String()),
73
+ action: Type.String(),
74
+ });
75
+ const status = object({
76
+ run: RunConfigV1Schema,
77
+ head: Type.Union([Sha256Schema, Type.Null()]),
78
+ events: count,
79
+ task: Type.Union([NonEmptyStringSchema, Type.Null()]),
80
+ blockers: strings,
81
+ });
82
+ /** Maximum checks listed in a doctor MCP summary; the doctorChecks tool pages the complete list. */
83
+ export const MCP_DOCTOR_CHECK_LIMIT = 32;
84
+ const doctorCheck = object({
85
+ id: Type.String(),
86
+ ok: Type.Boolean(),
87
+ value: Type.String(),
88
+ remedy: Type.Optional(Type.String()),
89
+ severity: Type.Optional(Type.Literal("warning")),
90
+ });
91
+ const doctor = object({
92
+ healthy: Type.Boolean(),
93
+ nextAction: Type.String(),
94
+ remedies: strings,
95
+ counts: object({ total: count, passed: count, failed: count }),
96
+ checks: Type.Array(doctorCheck, { maxItems: MCP_DOCTOR_CHECK_LIMIT }),
97
+ omitted: object({ passed: count, failed: count }),
98
+ truncated: Type.Boolean(),
99
+ });
100
+ const review = object({
101
+ gate: Type.Integer({ minimum: 1, maximum: 4 }),
102
+ reviewHash: Sha256Schema,
103
+ findings: Type.Array(object({
104
+ id: NonEmptyStringSchema,
105
+ severity: Type.Union(["critical", "high", "medium", "low", "info"].map((value) => Type.Literal(value))),
106
+ title: NonEmptyStringSchema,
107
+ detail: NonEmptyStringSchema,
108
+ actions: Type.Array(Type.Union(["revise", "accept-risk", "acknowledge", "dismiss"].map((value) => Type.Literal(value)))),
109
+ })),
110
+ });
111
+ const reviewMetadata = object({
112
+ subjectKind: artifactKind,
113
+ subjectHash: Sha256Schema,
114
+ criteria: strings,
115
+ dispositions: Type.Array(object({
116
+ findingId: NonEmptyStringSchema,
117
+ reviewHash: Sha256Schema,
118
+ subjectHash: Sha256Schema,
119
+ disposition: Type.Union(["fixed", "accepted-risk", "acknowledged", "dismissed"].map((value) => Type.Literal(value))),
120
+ actor: Type.String(),
121
+ rationale: Type.String(),
122
+ evidenceRefs: Type.Array(Sha256Schema),
123
+ expiresAt: Type.Optional(IsoDateTimeSchema),
124
+ dependencyHash: Sha256Schema,
125
+ })),
126
+ evidenceRefs: Type.Array(Sha256Schema),
127
+ });
128
+ const stagedArtifact = object({
129
+ taskId: NonEmptyStringSchema,
130
+ kind: artifactKind,
131
+ path: NonEmptyStringSchema,
132
+ bytes: count,
133
+ hash: Sha256Schema,
134
+ });
135
+ const stagedFile = object({
136
+ taskId: NonEmptyStringSchema,
137
+ path: NonEmptyStringSchema,
138
+ bytes: count,
139
+ hash: Sha256Schema,
140
+ idempotent: Type.Boolean(),
141
+ });
142
+ const completion = object({ outputHashes: artifactHashes, summary: Type.String() });
143
+ const evidenceProperties = {
144
+ kind: Type.String(),
145
+ bytes: count,
146
+ retention: Type.Union(["immutable", "project", "optional"].map((value) => Type.Literal(value))),
147
+ redacted: Type.Boolean(),
148
+ reasons: strings,
149
+ };
150
+ export const MCP_OUTPUT_SCHEMAS = {
151
+ status: contract(Type.Union([
152
+ status,
153
+ object({
154
+ status: Type.Literal("needs_project"),
155
+ workspaceReady: Type.Literal(true),
156
+ projects: Type.Array(Type.String(), { maxItems: 0 }),
157
+ nextAction: NonEmptyStringSchema,
158
+ }),
159
+ object({
160
+ status: Type.Literal("runtime_mismatch"),
161
+ reason: Type.Union(["RUNTIME_WORKSPACE_OLDER", "RUNTIME_WORKSPACE_NEWER", "RUNTIME_LOCK_INVALID"].map((value) => Type.Literal(value))),
162
+ runtimeVersion: NonEmptyStringSchema,
163
+ workspaceRuntimeVersion: Type.Union([NonEmptyStringSchema, Type.Null()]),
164
+ nextAction: NonEmptyStringSchema,
165
+ }),
166
+ ])),
167
+ releaseWriter: contract(object({
168
+ released: Type.Boolean(),
169
+ projectId: NonEmptyStringSchema,
170
+ runId: NonEmptyStringSchema,
171
+ })),
172
+ capabilityList: contract(object({ packs: Type.Array(capability) })),
173
+ capabilityStatus: contract(capability),
174
+ nextTask: contract(Type.Union([
175
+ object({ status: Type.Literal("needs_input"), request: InputRequestV1Schema }),
176
+ object({ status: Type.Literal("needs_review"), review }),
177
+ object({ status: Type.Literal("task"), task: TaskEnvelopeV1Schema }),
178
+ ])),
179
+ taskContext: contract(object({
180
+ task: TaskEnvelopeV1Schema,
181
+ inputs: Type.Array(Type.Unknown()),
182
+ inputReferences: Type.Array(object({ hash: Sha256Schema, bytes: count, inlined: Type.Boolean() })),
183
+ artifactHashes: Type.Record(Type.String(), Sha256Schema),
184
+ recordedInput: Type.Union([Type.Record(Type.String(), InputValueV1Schema), Type.Null()]),
185
+ decisions: Type.Record(Type.String(), InputValueV1Schema),
186
+ governanceFindings: Type.Optional(Type.Union([
187
+ object({ count, untypedCount: count, resourceTypeCount: count, read: NonEmptyStringSchema }),
188
+ Type.Array(object({
189
+ policyAssignmentId: NonEmptyStringSchema,
190
+ policyDefinitionId: NonEmptyStringSchema,
191
+ policyDefinitionReferenceId: Type.Optional(NonEmptyStringSchema),
192
+ effect: Type.Union([Type.Literal("deny"), Type.Literal("modify"), Type.Literal("deployIfNotExists")]),
193
+ displayName: Type.String(),
194
+ resourceTypes: strings,
195
+ requiredValue: Type.Optional(Type.Unknown()),
196
+ })),
197
+ ])),
198
+ outputTemplates: object(Object.fromEntries(SUPPORTED_ARTIFACT_KINDS.map((kind) => [kind, Type.Optional(Type.Unknown())]))),
199
+ reviewMetadata: Type.Optional(reviewMetadata),
200
+ reviewMetadataReference: Type.Optional(object({ selector: Type.Literal("review-metadata"), bytes: count, inlined: Type.Boolean() })),
201
+ reviewRequest: Type.Optional(ReviewRequestV1Schema),
202
+ outputRoot: NonEmptyStringSchema,
203
+ status: Type.Union([Type.Literal("completed"), Type.Literal("active")]),
204
+ blockers: strings,
205
+ }), { pageable: true }),
206
+ readTaskInput: contract(object({
207
+ subjectHash: Sha256Schema,
208
+ content: Type.String(),
209
+ offset: count,
210
+ nextOffset: Type.Optional(count),
211
+ }), { pageable: true }),
212
+ recordInput: contract(object({ recorded: Type.Literal(true), requestId: NonEmptyStringSchema })),
213
+ governanceImport: contract(object({ outputHash: Sha256Schema, summary: Type.String() })),
214
+ governanceSelect: contract(Type.Union([
215
+ object({ status: Type.Literal("needs_input"), request: InputRequestV1Schema }),
216
+ object({
217
+ status: Type.Literal("selected"),
218
+ choice: Type.Union([Type.Literal("reuse"), Type.Literal("refresh")]),
219
+ candidateHash: Sha256Schema,
220
+ observedAt: IsoDateTimeSchema,
221
+ refreshRequired: Type.Boolean(),
222
+ }),
223
+ ])),
224
+ projectCreate: contract(selection),
225
+ projectList: contract(object({ projects: Type.Array(object({ projectId: NonEmptyStringSchema, displayName: Type.String() })) }), { pageable: true }),
226
+ projectUse: contract(selection),
227
+ projectDelete: contract(object({ deleted: NonEmptyStringSchema, selected: Type.Optional(selection) })),
228
+ gateDecide: contract(ApprovalEvidenceV1Schema),
229
+ reviewDecide: contract(object({ status: Type.Union([Type.Literal("revision_requested"), Type.Literal("resolved")]) })),
230
+ stageArtifact: contract(Type.Union([stagedArtifact, object({ artifacts: Type.Array(stagedArtifact) })])),
231
+ stageFile: contract(stagedFile),
232
+ generateIac: contract(object({ files: Type.Array(stagedFile), outputHashes: artifactHashes, treeHash: Sha256Schema })),
233
+ validateTask: contract(Type.Union([
234
+ object({
235
+ valid: Type.Literal(true),
236
+ taskId: NonEmptyStringSchema,
237
+ staged: Type.Optional(Type.Union([stagedArtifact, Type.Array(stagedArtifact)])),
238
+ }),
239
+ object({
240
+ valid: Type.Boolean(),
241
+ taskId: NonEmptyStringSchema,
242
+ execution: object({
243
+ mode: Type.Literal("native"),
244
+ executedValidatorIds: strings,
245
+ blockedValidatorIds: strings,
246
+ storageSecurity: NativeValidationReceiptV1Schema.properties.storageSecurity,
247
+ storageDiagnostics: NativeValidationReceiptV1Schema.properties.storageDiagnostics,
248
+ securityBaseline: NativeValidationReceiptV1Schema.properties.securityBaseline,
249
+ }),
250
+ outputs: Type.Array(object({ kind: Type.Literal("validation-evidence"), value: EvidenceManifestV1Schema }), {
251
+ minItems: 1,
252
+ maxItems: 1,
253
+ }),
254
+ }),
255
+ ])),
256
+ completeTask: contract(completion),
257
+ requirementsComplete: contract(completion),
258
+ architectureComplete: contract(completion),
259
+ reviewComplete: contract(completion),
260
+ planComplete: contract(completion),
261
+ preview: contract(object({ markdown: Type.String() }), { pageable: true }),
262
+ inventory: contract(ResourceInventoryV1Schema, { pageable: true }),
263
+ reconcile: contract(ResourceInventoryV1Schema),
264
+ diagnose: contract(object({ status, doctor })),
265
+ improvementObserve: contract(object({ observation: ImprovementObservationV1Schema, deduplicated: Type.Boolean() })),
266
+ improvementObservations: contract(object({ observations: Type.Array(ImprovementObservationV1Schema) }), {
267
+ pageable: true,
268
+ }),
269
+ improvementProposals: contract(object({ proposals: Type.Array(ImprovementProposalV1Schema) }), { pageable: true }),
270
+ render: contract(object({ markdown: Type.String() }), { pageable: true }),
271
+ promote: contract(RunConfigV1Schema),
272
+ doctor: contract(doctor),
273
+ doctorChecks: contract(object({ checks: Type.Array(doctorCheck) }), { pageable: true }),
274
+ submitEvidence: contract(Type.Union([
275
+ object({ ...evidenceProperties, status: Type.Literal("accepted"), hash: Sha256Schema }),
276
+ object({ ...evidenceProperties, status: Type.Literal("quarantined"), quarantinePath: NonEmptyStringSchema }),
277
+ ])),
278
+ };
279
+ //# sourceMappingURL=mcp-output-schemas.js.map