@apexops/cli 0.10.0-next.4 → 0.11.0-next.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +40 -0
- package/assets/capability-packs/registry.v1.json +1 -62
- package/assets/client-projection-metadata/copilot-cli-agent-tools.json +20 -0
- package/assets/client-projections/github-copilot-cli/.github/copilot/settings.json +13 -0
- package/assets/client-projections/github-copilot-cli/.github/instructions/apex-prompt-authoring.instructions.md +1 -1
- package/assets/client-projections/github-copilot-cli/.github/workflows/governance-policy-baseline.yml +101 -0
- package/assets/client-projections/github-copilot-cli/tools/schemas/governance-baseline.schema.json +118 -0
- package/assets/client-projections/github-copilot-cli/tools/scripts/collect-governance-baseline.ps1 +817 -0
- package/assets/config/capability-packs.v1.json +1 -32
- package/assets/config/governance-reference.v1.json +26379 -0
- package/assets/config/recipe-packs.v1.json +1 -26
- package/assets/config/runtime-bundle.v1.json +7 -7
- package/assets/config/toolchain.v1.json +35 -33
- package/assets/config/workflow.v1.json +103 -72
- package/assets/customizations/.github/agents/apex-codegen.agent.md +8 -21
- package/assets/customizations/.github/agents/apex-validator.agent.md +14 -20
- package/assets/customizations/.github/agents/apex.agent.md +108 -75
- package/assets/customizations/.github/copilot/settings.json +13 -0
- package/assets/customizations/.github/instructions/apex-prompt-authoring.instructions.md +1 -1
- package/assets/customizations/.github/skills/apex-architecture/SKILL.md +62 -18
- package/assets/customizations/.github/skills/apex-artifacts/SKILL.md +28 -6
- package/assets/customizations/.github/skills/apex-azure-adr/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-azure-cloud-migrate/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-azure-compliance/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-azure-compute/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-azure-cost-optimization/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-azure-defaults/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-azure-defaults/references/governance-effects.md +5 -3
- package/assets/customizations/.github/skills/apex-azure-deploy/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-azure-diagnostics/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-azure-governance/SKILL.md +19 -3
- package/assets/customizations/.github/skills/apex-azure-governance/references/evidence-interpretation.md +38 -3
- package/assets/customizations/.github/skills/apex-azure-kusto/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-azure-prepare/SKILL.md +5 -3
- package/assets/customizations/.github/skills/apex-azure-quotas/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-azure-rbac/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-azure-resources/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-azure-storage/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-azure-validate/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-bicep-patterns/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-codegen/SKILL.md +6 -2
- package/assets/customizations/.github/skills/apex-entra-app-registration/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-mermaid/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-microsoft-docs/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-next/SKILL.md +99 -0
- package/assets/customizations/.github/skills/apex-operations/SKILL.md +46 -16
- package/assets/customizations/.github/skills/apex-planning/SKILL.md +48 -19
- package/assets/customizations/.github/skills/apex-requirements/SKILL.md +61 -23
- package/assets/customizations/.github/skills/apex-terraform-import/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-terraform-patterns/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-terraform-test/SKILL.md +3 -0
- package/assets/customizations/.github/skills/apex-unslop/LICENSE.txt +21 -0
- package/assets/customizations/.github/skills/apex-unslop/SKILL.md +94 -0
- package/assets/customizations/.github/skills/apex-workflow/SKILL.md +15 -5
- package/assets/customizations/.github/workflows/governance-policy-baseline.yml +101 -0
- package/assets/customizations/README.md +8 -9
- package/assets/customizations/manifest.json +167 -209
- package/assets/customizations/tools/schemas/governance-baseline.schema.json +118 -0
- package/assets/customizations/tools/scripts/collect-governance-baseline.ps1 +817 -0
- package/assets/manifest.json +419 -4237
- package/assets/schemas/governance-baseline.schema.json +118 -0
- package/dist/assets.d.ts +18 -2
- package/dist/assets.js +115 -35
- package/dist/bootstrap-wizard.d.ts +37 -0
- package/dist/bootstrap-wizard.js +259 -0
- package/dist/cli.d.ts +18 -2
- package/dist/cli.js +222 -65
- package/dist/dependency-revision.js +8 -0
- package/dist/errors.d.ts +6 -1
- package/dist/errors.js +55 -0
- package/dist/host-profile.d.ts +47 -0
- package/dist/host-profile.js +269 -0
- package/dist/mcp-output-schemas.d.ts +43 -0
- package/dist/mcp-output-schemas.js +279 -0
- package/dist/mcp-tool-effects.d.ts +101 -0
- package/dist/mcp-tool-effects.js +66 -0
- package/dist/mcp.d.ts +50 -3
- package/dist/mcp.js +833 -78
- package/dist/runtime-binding.d.ts +37 -0
- package/dist/runtime-binding.js +131 -0
- package/dist/service.d.ts +676 -31
- package/dist/service.js +5270 -587
- package/dist/state-transfer.js +44 -7
- package/dist/target-scope.d.ts +4 -0
- package/dist/target-scope.js +9 -0
- package/dist/version.d.ts +3 -1
- package/dist/version.js +19 -1
- package/dist/workflow-validators.d.ts +20 -3
- package/dist/workflow-validators.js +408 -67
- package/dist/workspace-root.d.ts +7 -0
- package/dist/workspace-root.js +67 -0
- package/package.json +11 -12
- package/assets/capability-packs/azure-governance-discovery/source/scripts/discover.py +0 -1189
- package/assets/capability-packs/azure-governance-discovery/source/scripts/render_governance.py +0 -676
- package/assets/client-projections/github-copilot-cli/.github/agents/apex-architect.agent.md +0 -90
- package/assets/client-projections/github-copilot-cli/.github/agents/apex-operator.agent.md +0 -75
- package/assets/client-projections/github-copilot-cli/.github/agents/apex-planner.agent.md +0 -86
- package/assets/client-projections/github-copilot-cli/.github/agents/apex-requirements.agent.md +0 -92
- package/assets/client-projections/github-copilot-cli/.github/agents/apex.agent.md +0 -88
- package/assets/client-projections/github-copilot-cli/.github/mcp.json +0 -60
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-architecture/SKILL.md +0 -36
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/SKILL.md +0 -65
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/references/presentation-conventions.md +0 -52
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/references/reference-only-outlines.md +0 -78
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/templates/architecture-assessment.md +0 -35
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/templates/cost-estimate.md +0 -47
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/templates/deployment-summary.md +0 -35
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/templates/governance-constraints.md +0 -35
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/templates/implementation-plan.md +0 -43
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/templates/operations-runbook.md +0 -35
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/templates/requirements.md +0 -42
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-artifacts/templates/resource-inventory.md +0 -29
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-adr/SKILL.md +0 -52
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-adr/references/decision-examples.md +0 -38
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-adr/references/decision-guardrails.md +0 -36
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-adr/references/decision-quality.md +0 -21
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-adr/references/decision-record-fields.md +0 -57
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-cloud-migrate/SKILL.md +0 -55
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-cloud-migrate/references/lambda-to-functions-assessment.md +0 -29
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-cloud-migrate/references/migration-readiness.md +0 -27
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-cloud-migrate/references/staged-validation-handoff.md +0 -26
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-cloud-migrate/references/workload-mapping.md +0 -27
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-compliance/SKILL.md +0 -58
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-compliance/references/compliance-finding-criteria.md +0 -63
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-compliance/references/operational-checklist.md +0 -24
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-compute/SKILL.md +0 -36
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-compute/references/compute-selection.md +0 -26
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-compute/references/pricing-evidence.md +0 -11
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-compute/references/recommendation-and-scale-rules.md +0 -44
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-cost-optimization/SKILL.md +0 -61
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-cost-optimization/references/cost-assessment-criteria.md +0 -61
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-cost-optimization/references/operational-checklist.md +0 -24
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/SKILL.md +0 -59
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/avm-binding-guidance.md +0 -29
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/baseline-fallbacks.md +0 -53
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/cost-monitoring.md +0 -47
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/decision-boundaries.md +0 -19
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/governance-effects.md +0 -28
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/naming.md +0 -47
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/network-planning.md +0 -47
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/security-baseline.md +0 -40
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/service-selection.md +0 -51
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-defaults/references/tag-precedence.md +0 -31
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-deploy/SKILL.md +0 -50
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-deploy/references/operational-checklist.md +0 -26
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-deploy/references/preview-recovery-verification.md +0 -48
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-diagnostics/SKILL.md +0 -60
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-diagnostics/references/diagnostic-interpretation.md +0 -42
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-diagnostics/references/operational-checklist.md +0 -24
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-governance/SKILL.md +0 -52
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-governance/references/evidence-interpretation.md +0 -58
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-governance/references/operational-checklist.md +0 -25
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-kusto/SKILL.md +0 -58
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-kusto/references/kql-evidence-interpretation.md +0 -41
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-kusto/references/operational-checklist.md +0 -25
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-prepare/SKILL.md +0 -52
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-prepare/references/functions-recipe-pack.md +0 -27
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-prepare/references/preparation-lineage.md +0 -36
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-quotas/SKILL.md +0 -53
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-quotas/references/capacity-decision-rules.md +0 -48
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-quotas/references/operational-checklist.md +0 -23
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-rbac/SKILL.md +0 -45
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-rbac/references/assignment-intent.md +0 -39
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-rbac/references/least-privilege-selection.md +0 -50
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-resources/SKILL.md +0 -54
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-resources/references/inventory-query-patterns.md +0 -49
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-resources/references/operational-checklist.md +0 -24
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-storage/SKILL.md +0 -35
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-storage/references/security-and-governance.md +0 -12
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-storage/references/service-auth-and-sdk-boundary.md +0 -33
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-storage/references/storage-selection.md +0 -12
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-validate/SKILL.md +0 -49
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-validate/references/operational-checklist.md +0 -24
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-azure-validate/references/preflight-evidence.md +0 -43
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-bicep-patterns/SKILL.md +0 -41
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-bicep-patterns/references/avm-and-codegen-acceptance.md +0 -11
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-bicep-patterns/references/codegen-acceptance-checklist.md +0 -46
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-bicep-patterns/references/compiler-and-provider-gotchas.md +0 -74
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-bicep-patterns/references/module-interfaces-and-parameters.md +0 -56
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-bicep-patterns/references/network-and-observability.md +0 -52
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-codegen/SKILL.md +0 -32
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-entra-app-registration/SKILL.md +0 -53
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-entra-app-registration/references/capability-receipts.md +0 -21
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-entra-app-registration/references/design-and-diagnostics.md +0 -36
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-entra-app-registration/references/oauth-registration-model.md +0 -26
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-entra-app-registration/references/permissions-and-credentials.md +0 -27
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-mermaid/SKILL.md +0 -44
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-mermaid/references/styling.md +0 -33
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-mermaid/references/syntax.md +0 -99
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-microsoft-docs/SKILL.md +0 -53
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-microsoft-docs/references/research-method.md +0 -91
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-operations/SKILL.md +0 -34
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-planning/SKILL.md +0 -36
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-requirements/SKILL.md +0 -43
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-import/SKILL.md +0 -47
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-import/references/adoption-attestation.md +0 -10
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-import/references/import-assessment.md +0 -14
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-import/references/import-mapping.md +0 -27
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-import/references/mapping-and-adoption-attestation.md +0 -12
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-patterns/SKILL.md +0 -49
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-patterns/references/module-composition-and-refactor.md +0 -20
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-patterns/references/module-composition-and-state-boundaries.md +0 -11
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-patterns/references/module-locks-and-codegen-acceptance.md +0 -14
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-patterns/references/network-and-observability.md +0 -12
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-patterns/references/plan-and-change-assessment.md +0 -24
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-test/SKILL.md +0 -45
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-test/references/evidence-acceptance.md +0 -10
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-test/references/plan-mode-and-mock-design.md +0 -12
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-test/references/plan-mode-test-design.md +0 -23
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-terraform-test/references/test-design.md +0 -13
- package/assets/client-projections/github-copilot-cli/.github/skills/apex-workflow/SKILL.md +0 -37
- package/assets/client-projections/github-copilot-vscode/.github/agents/apex-architect.agent.md +0 -99
- package/assets/client-projections/github-copilot-vscode/.github/agents/apex-codegen.agent.md +0 -62
- package/assets/client-projections/github-copilot-vscode/.github/agents/apex-operator.agent.md +0 -79
- package/assets/client-projections/github-copilot-vscode/.github/agents/apex-planner.agent.md +0 -96
- package/assets/client-projections/github-copilot-vscode/.github/agents/apex-requirements.agent.md +0 -101
- package/assets/client-projections/github-copilot-vscode/.github/agents/apex-reviewer.agent.md +0 -59
- package/assets/client-projections/github-copilot-vscode/.github/agents/apex-validator.agent.md +0 -61
- package/assets/client-projections/github-copilot-vscode/.github/agents/apex.agent.md +0 -107
- package/assets/client-projections/github-copilot-vscode/.github/copilot-instructions.md +0 -13
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-agent-authoring.instructions.md +0 -14
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-artifact-contracts.instructions.md +0 -12
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-automation.instructions.md +0 -12
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-azure-yaml.instructions.md +0 -12
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-bicep.instructions.md +0 -12
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-code-quality.instructions.md +0 -12
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-context.instructions.md +0 -12
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-documentation.instructions.md +0 -12
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-governance.instructions.md +0 -12
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-instruction-authoring.instructions.md +0 -12
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-javascript.instructions.md +0 -11
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-json.instructions.md +0 -11
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-markdown.instructions.md +0 -13
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-powershell.instructions.md +0 -11
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-prompt-authoring.instructions.md +0 -12
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-python.instructions.md +0 -11
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-safe-file-edits.instructions.md +0 -11
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-safe-shell.instructions.md +0 -11
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-shell.instructions.md +0 -11
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-skill-authoring.instructions.md +0 -13
- package/assets/client-projections/github-copilot-vscode/.github/instructions/apex-terraform.instructions.md +0 -12
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-architecture/SKILL.md +0 -36
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/SKILL.md +0 -65
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/references/presentation-conventions.md +0 -52
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/references/reference-only-outlines.md +0 -78
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/templates/architecture-assessment.md +0 -35
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/templates/cost-estimate.md +0 -47
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/templates/deployment-summary.md +0 -35
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/templates/governance-constraints.md +0 -35
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/templates/implementation-plan.md +0 -43
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/templates/operations-runbook.md +0 -35
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/templates/requirements.md +0 -42
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-artifacts/templates/resource-inventory.md +0 -29
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-adr/SKILL.md +0 -52
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-adr/references/decision-examples.md +0 -38
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-adr/references/decision-guardrails.md +0 -36
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-adr/references/decision-quality.md +0 -21
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-adr/references/decision-record-fields.md +0 -57
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-cloud-migrate/SKILL.md +0 -55
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-cloud-migrate/references/lambda-to-functions-assessment.md +0 -29
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-cloud-migrate/references/migration-readiness.md +0 -27
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-cloud-migrate/references/staged-validation-handoff.md +0 -26
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-cloud-migrate/references/workload-mapping.md +0 -27
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-compliance/SKILL.md +0 -58
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-compliance/references/compliance-finding-criteria.md +0 -63
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-compliance/references/operational-checklist.md +0 -24
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-compute/SKILL.md +0 -36
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-compute/references/compute-selection.md +0 -26
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-compute/references/pricing-evidence.md +0 -11
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-compute/references/recommendation-and-scale-rules.md +0 -44
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-cost-optimization/SKILL.md +0 -61
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-cost-optimization/references/cost-assessment-criteria.md +0 -61
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-cost-optimization/references/operational-checklist.md +0 -24
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/SKILL.md +0 -59
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/avm-binding-guidance.md +0 -29
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/baseline-fallbacks.md +0 -53
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/cost-monitoring.md +0 -47
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/decision-boundaries.md +0 -19
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/governance-effects.md +0 -28
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/naming.md +0 -47
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/network-planning.md +0 -47
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/security-baseline.md +0 -40
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/service-selection.md +0 -51
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-defaults/references/tag-precedence.md +0 -31
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-deploy/SKILL.md +0 -50
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-deploy/references/operational-checklist.md +0 -26
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-deploy/references/preview-recovery-verification.md +0 -48
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-diagnostics/SKILL.md +0 -60
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-diagnostics/references/diagnostic-interpretation.md +0 -42
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-diagnostics/references/operational-checklist.md +0 -24
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-governance/SKILL.md +0 -52
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-governance/references/evidence-interpretation.md +0 -58
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-governance/references/operational-checklist.md +0 -25
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-kusto/SKILL.md +0 -58
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-kusto/references/kql-evidence-interpretation.md +0 -41
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-kusto/references/operational-checklist.md +0 -25
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-prepare/SKILL.md +0 -52
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-prepare/references/functions-recipe-pack.md +0 -27
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-prepare/references/preparation-lineage.md +0 -36
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-quotas/SKILL.md +0 -53
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-quotas/references/capacity-decision-rules.md +0 -48
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-quotas/references/operational-checklist.md +0 -23
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-rbac/SKILL.md +0 -45
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-rbac/references/assignment-intent.md +0 -39
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-rbac/references/least-privilege-selection.md +0 -50
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-resources/SKILL.md +0 -54
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-resources/references/inventory-query-patterns.md +0 -49
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-resources/references/operational-checklist.md +0 -24
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-storage/SKILL.md +0 -35
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-storage/references/security-and-governance.md +0 -12
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-storage/references/service-auth-and-sdk-boundary.md +0 -33
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-storage/references/storage-selection.md +0 -12
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-validate/SKILL.md +0 -49
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-validate/references/operational-checklist.md +0 -24
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-azure-validate/references/preflight-evidence.md +0 -43
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-bicep-patterns/SKILL.md +0 -41
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-bicep-patterns/references/avm-and-codegen-acceptance.md +0 -11
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-bicep-patterns/references/codegen-acceptance-checklist.md +0 -46
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-bicep-patterns/references/compiler-and-provider-gotchas.md +0 -74
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-bicep-patterns/references/module-interfaces-and-parameters.md +0 -56
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-bicep-patterns/references/network-and-observability.md +0 -52
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-codegen/SKILL.md +0 -32
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-entra-app-registration/SKILL.md +0 -53
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-entra-app-registration/references/capability-receipts.md +0 -21
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-entra-app-registration/references/design-and-diagnostics.md +0 -36
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-entra-app-registration/references/oauth-registration-model.md +0 -26
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-entra-app-registration/references/permissions-and-credentials.md +0 -27
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-mermaid/SKILL.md +0 -44
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-mermaid/references/styling.md +0 -33
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-mermaid/references/syntax.md +0 -99
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-microsoft-docs/SKILL.md +0 -53
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-microsoft-docs/references/research-method.md +0 -91
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-operations/SKILL.md +0 -34
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-planning/SKILL.md +0 -36
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-requirements/SKILL.md +0 -43
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-import/SKILL.md +0 -47
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-import/references/adoption-attestation.md +0 -10
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-import/references/import-assessment.md +0 -14
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-import/references/import-mapping.md +0 -27
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-import/references/mapping-and-adoption-attestation.md +0 -12
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-patterns/SKILL.md +0 -49
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-patterns/references/module-composition-and-refactor.md +0 -20
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-patterns/references/module-composition-and-state-boundaries.md +0 -11
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-patterns/references/module-locks-and-codegen-acceptance.md +0 -14
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-patterns/references/network-and-observability.md +0 -12
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-patterns/references/plan-and-change-assessment.md +0 -24
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-test/SKILL.md +0 -45
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-test/references/evidence-acceptance.md +0 -10
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-test/references/plan-mode-and-mock-design.md +0 -12
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-test/references/plan-mode-test-design.md +0 -23
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-terraform-test/references/test-design.md +0 -13
- package/assets/client-projections/github-copilot-vscode/.github/skills/apex-workflow/SKILL.md +0 -37
- package/assets/client-projections/github-copilot-vscode/.vscode/mcp.json +0 -29
- package/assets/customizations/.github/agents/apex-architect.agent.md +0 -92
- package/assets/customizations/.github/agents/apex-operator.agent.md +0 -72
- package/assets/customizations/.github/agents/apex-planner.agent.md +0 -89
- package/assets/customizations/.github/agents/apex-requirements.agent.md +0 -94
- package/assets/customizations/.github/agents/apex-reviewer.agent.md +0 -56
- package/assets/customizations/.github/mcp.json +0 -60
- package/assets/customizations/.github/skills/apex-azure-prepare/references/functions-recipe-pack.md +0 -27
- package/assets/customizations/.vscode/mcp.json +0 -29
- package/dist/azure-mcp-environment.d.ts +0 -2
- package/dist/azure-mcp-environment.js +0 -7
- package/dist/azure-mcp.d.ts +0 -2
- package/dist/azure-mcp.js +0 -21
package/dist/service.d.ts
CHANGED
|
@@ -1,7 +1,8 @@
|
|
|
1
|
-
import { type ApprovalEvidenceV1, type ArchitectureAvailabilityV1, type DeploymentPreviewV1, type EnvironmentInputsV1, type IacBindingV1, type InputRequestV1, type InputValueV1, type InputSubmissionV1, type ImprovementCategory, type ImprovementDecisionV1, type ImprovementObservationV1, type ImprovementPolicyV1, type ImprovementProposalV1, type ImprovementSource, type ImplementationIntentV1, type Operation, type ProjectId, type ResourceInventoryV1, type RunConfigV1, type RunId, type TaskEnvelopeV1 } from "@apexops/contracts";
|
|
1
|
+
import { type ArchetypeBatchConfigV1, type ArchetypeBatchPlanV1, type ReviewRequestV1, type ApprovalEvidenceV1, type ArchitectureAvailabilityV1, type ArchitectureV1, type CostEstimateV1, type DeploymentPreviewV1, type EnvironmentInputsV1, type PolicyPropertyMapV1, type IacBindingV1, type NativeValidationReceiptV1, type InputRequestV1, type InputValueV1, type InputSubmissionV1, type ImprovementCategory, type ImprovementDecisionV1, type ImprovementObservationV1, type ImprovementPolicyV1, type ImprovementProposalV1, type ImprovementSource, type ImplementationIntentV1, type Operation, type OnboardingConfigV1, type BootstrapPlanV1, type GovernanceSetupConfigV1, type GovernanceProvisionPlanV1, type RepositoryPublishConfigV1, type RepositoryPublishPlanV1, type ProjectId, type RiskOwner, type ResourceInventoryV1, type RequirementsV1, type RequirementsAmendmentV1, type RunConfigV1, type RunId, type WorkloadDecisionManifestV1, type TaskEnvelopeV1 } from "@apexops/contracts";
|
|
2
2
|
import { type CapabilityPackInstallOptions, type IacProvider, type ProcessRunnerLike } from "@apexops/capabilities";
|
|
3
3
|
import { type JsonValue } from "@apexops/kernel";
|
|
4
4
|
import { type BundledClientProjection } from "./assets.js";
|
|
5
|
+
import { type HostEnvironment } from "./host-profile.js";
|
|
5
6
|
interface Selection {
|
|
6
7
|
projectId: ProjectId;
|
|
7
8
|
runId: RunId;
|
|
@@ -45,16 +46,26 @@ export interface ReviewResolution {
|
|
|
45
46
|
findingId: string;
|
|
46
47
|
reviewHash: string;
|
|
47
48
|
subjectHash: string;
|
|
48
|
-
disposition: "fixed" | "accepted-risk";
|
|
49
|
+
disposition: "fixed" | "accepted-risk" | "acknowledged" | "dismissed";
|
|
49
50
|
actor: string;
|
|
50
51
|
rationale: string;
|
|
52
|
+
owner?: RiskOwner;
|
|
51
53
|
evidenceRefs: string[];
|
|
52
54
|
expiresAt?: string;
|
|
53
55
|
dependencyHash: string;
|
|
54
56
|
}
|
|
57
|
+
export interface ReviewDecision {
|
|
58
|
+
findingId: string;
|
|
59
|
+
action: "revise" | "accept-risk" | "acknowledge" | "dismiss";
|
|
60
|
+
rationale?: string;
|
|
61
|
+
owner?: string;
|
|
62
|
+
expiresAt?: string;
|
|
63
|
+
}
|
|
55
64
|
export interface ServiceOptions {
|
|
56
65
|
clock?: () => Date;
|
|
57
66
|
idSource?: () => string;
|
|
67
|
+
workspacePath?: string;
|
|
68
|
+
writerLeaseTtlMs?: number;
|
|
58
69
|
providers?: Partial<Record<"fake" | "bicep" | "terraform", IacProvider>>;
|
|
59
70
|
architectureAvailabilityAdapter?: (evidence: ArchitectureAvailabilityV1) => Promise<void>;
|
|
60
71
|
executableChecker?: (executable: string) => Promise<boolean>;
|
|
@@ -64,14 +75,28 @@ export interface ServiceOptions {
|
|
|
64
75
|
}>;
|
|
65
76
|
customizationFailureInjector?: (index: number, destination: string) => void | Promise<void>;
|
|
66
77
|
processRunner?: ProcessRunnerLike;
|
|
67
|
-
profileRoot?: string;
|
|
68
78
|
improvementPolicy?: ImprovementPolicyV1;
|
|
79
|
+
diagramRasterizer?: (svg: string) => Uint8Array;
|
|
80
|
+
repeatWindowMs?: number;
|
|
81
|
+
/** Folder shared with the managed rubber-duck capture hook; defaults to `$APEX_REVIEW_HOME` or `~/.apex/reviews`. */
|
|
82
|
+
reviewHome?: string;
|
|
83
|
+
/** Host that doctor inspects; defaults to the running process. */
|
|
84
|
+
hostEnvironment?: HostEnvironment;
|
|
85
|
+
}
|
|
86
|
+
/** Canonical description of one state-changing call submitted through {@link ApexService.repeatSafe}. */
|
|
87
|
+
export interface RepeatSafeCall {
|
|
88
|
+
operation: string;
|
|
89
|
+
arguments: Record<string, unknown>;
|
|
90
|
+
/** Argument names holding workspace-relative file paths; their current content hash joins the call identity. */
|
|
91
|
+
fileArguments?: readonly string[];
|
|
69
92
|
}
|
|
70
93
|
interface DoctorCheck {
|
|
71
94
|
id: string;
|
|
72
95
|
ok: boolean;
|
|
73
96
|
value: string;
|
|
74
97
|
remedy?: string;
|
|
98
|
+
/** Marks a passing advisory check; warnings never make doctor unhealthy. */
|
|
99
|
+
severity?: "warning";
|
|
75
100
|
}
|
|
76
101
|
declare const ARTIFACTS: {
|
|
77
102
|
readonly requirements: readonly ["requirements", import("@sinclair/typebox").TObject<{
|
|
@@ -161,12 +186,50 @@ declare const ARTIFACTS: {
|
|
|
161
186
|
components: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
162
187
|
id: import("@sinclair/typebox").TString;
|
|
163
188
|
service: import("@sinclair/typebox").TString;
|
|
189
|
+
resourceTypes: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
164
190
|
purpose: import("@sinclair/typebox").TString;
|
|
165
191
|
requirementIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
166
192
|
dependsOn: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
167
193
|
}>>;
|
|
168
194
|
decisions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
195
|
+
decisionRecords: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
196
|
+
id: import("@sinclair/typebox").TString;
|
|
197
|
+
title: import("@sinclair/typebox").TString;
|
|
198
|
+
context: import("@sinclair/typebox").TString;
|
|
199
|
+
decision: import("@sinclair/typebox").TString;
|
|
200
|
+
requirementIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
201
|
+
alternatives: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
202
|
+
option: import("@sinclair/typebox").TString;
|
|
203
|
+
benefits: import("@sinclair/typebox").TString;
|
|
204
|
+
drawbacks: import("@sinclair/typebox").TString;
|
|
205
|
+
rejectionReason: import("@sinclair/typebox").TString;
|
|
206
|
+
}>>;
|
|
207
|
+
positiveConsequences: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
208
|
+
negativeConsequences: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
209
|
+
wafImpacts: import("@sinclair/typebox").TObject<{
|
|
210
|
+
security: import("@sinclair/typebox").TString;
|
|
211
|
+
reliability: import("@sinclair/typebox").TString;
|
|
212
|
+
"performance-efficiency": import("@sinclair/typebox").TString;
|
|
213
|
+
"cost-optimization": import("@sinclair/typebox").TString;
|
|
214
|
+
"operational-excellence": import("@sinclair/typebox").TString;
|
|
215
|
+
}>;
|
|
216
|
+
complianceConsiderations: import("@sinclair/typebox").TString;
|
|
217
|
+
implementationNotes: import("@sinclair/typebox").TString;
|
|
218
|
+
}>>>;
|
|
169
219
|
risks: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
220
|
+
wellArchitectedAssessment: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
221
|
+
framework: import("@sinclair/typebox").TLiteral<"azure-well-architected-framework">;
|
|
222
|
+
assessmentType: import("@sinclair/typebox").TLiteral<"qualitative">;
|
|
223
|
+
pillars: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
224
|
+
pillar: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"security">, import("@sinclair/typebox").TLiteral<"reliability">, import("@sinclair/typebox").TLiteral<"performance-efficiency">, import("@sinclair/typebox").TLiteral<"cost-optimization">, import("@sinclair/typebox").TLiteral<"operational-excellence">]>;
|
|
225
|
+
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"aligned">, import("@sinclair/typebox").TLiteral<"concern">, import("@sinclair/typebox").TLiteral<"blocker">, import("@sinclair/typebox").TLiteral<"not-applicable">]>;
|
|
226
|
+
assessment: import("@sinclair/typebox").TString;
|
|
227
|
+
requirementIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
228
|
+
evidenceRefs: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
229
|
+
recommendations: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
230
|
+
tradeoffs: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
231
|
+
}>>;
|
|
232
|
+
}>>;
|
|
170
233
|
}>];
|
|
171
234
|
readonly "cost-estimate": readonly ["cost-estimate", import("@sinclair/typebox").TObject<{
|
|
172
235
|
schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
|
|
@@ -174,6 +237,7 @@ declare const ARTIFACTS: {
|
|
|
174
237
|
runId: import("@sinclair/typebox").TString;
|
|
175
238
|
currency: import("@sinclair/typebox").TString;
|
|
176
239
|
pricingDate: import("@sinclair/typebox").TString;
|
|
240
|
+
pricingStatus: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"complete">, import("@sinclair/typebox").TLiteral<"partial">]>>;
|
|
177
241
|
lineItems: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
178
242
|
id: import("@sinclair/typebox").TString;
|
|
179
243
|
service: import("@sinclair/typebox").TString;
|
|
@@ -195,6 +259,14 @@ declare const ARTIFACTS: {
|
|
|
195
259
|
basis: import("@sinclair/typebox").TString;
|
|
196
260
|
}>;
|
|
197
261
|
}>>;
|
|
262
|
+
unpricedItems: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
263
|
+
id: import("@sinclair/typebox").TString;
|
|
264
|
+
service: import("@sinclair/typebox").TString;
|
|
265
|
+
sku: import("@sinclair/typebox").TString;
|
|
266
|
+
quantity: import("@sinclair/typebox").TNumber;
|
|
267
|
+
attemptedAt: import("@sinclair/typebox").TString;
|
|
268
|
+
reason: import("@sinclair/typebox").TString;
|
|
269
|
+
}>>>;
|
|
198
270
|
totalMonthlyCost: import("@sinclair/typebox").TNumber;
|
|
199
271
|
assumptions: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
200
272
|
}>];
|
|
@@ -205,6 +277,13 @@ declare const ARTIFACTS: {
|
|
|
205
277
|
subjectKind: import("@sinclair/typebox").TString;
|
|
206
278
|
subjectHash: import("@sinclair/typebox").TString;
|
|
207
279
|
reviewedAt: import("@sinclair/typebox").TString;
|
|
280
|
+
capture: import("@sinclair/typebox").TObject<{
|
|
281
|
+
reviewer: import("@sinclair/typebox").TLiteral<"rubber-duck">;
|
|
282
|
+
nonce: import("@sinclair/typebox").TString;
|
|
283
|
+
captureHash: import("@sinclair/typebox").TString;
|
|
284
|
+
promptSha256: import("@sinclair/typebox").TString;
|
|
285
|
+
responseSha256: import("@sinclair/typebox").TString;
|
|
286
|
+
}>;
|
|
208
287
|
findings: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
209
288
|
id: import("@sinclair/typebox").TString;
|
|
210
289
|
severity: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"critical">, import("@sinclair/typebox").TLiteral<"high">, import("@sinclair/typebox").TLiteral<"medium">, import("@sinclair/typebox").TLiteral<"low">, import("@sinclair/typebox").TLiteral<"info">]>;
|
|
@@ -214,12 +293,19 @@ declare const ARTIFACTS: {
|
|
|
214
293
|
evidenceRefs: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
215
294
|
resolution: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
216
295
|
}>>;
|
|
296
|
+
criteria: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
297
|
+
criterionId: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"security">, import("@sinclair/typebox").TLiteral<"reliability">, import("@sinclair/typebox").TLiteral<"performance-efficiency">, import("@sinclair/typebox").TLiteral<"cost-optimization">, import("@sinclair/typebox").TLiteral<"operational-excellence">]>;
|
|
298
|
+
outcome: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"pass">, import("@sinclair/typebox").TLiteral<"finding">, import("@sinclair/typebox").TLiteral<"not-applicable">]>;
|
|
299
|
+
rationale: import("@sinclair/typebox").TString;
|
|
300
|
+
findingIds: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
301
|
+
}>>>;
|
|
217
302
|
}>];
|
|
218
303
|
readonly "governance-constraints": readonly ["governance-constraints", import("@sinclair/typebox").TObject<{
|
|
219
304
|
schemaVersion: import("@sinclair/typebox").TLiteral<"1.0.0">;
|
|
220
305
|
projectId: import("@sinclair/typebox").TString;
|
|
221
306
|
runId: import("@sinclair/typebox").TString;
|
|
222
307
|
targetScope: import("@sinclair/typebox").TString;
|
|
308
|
+
source: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"collected">, import("@sinclair/typebox").TLiteral<"reference">]>;
|
|
223
309
|
discoveredAt: import("@sinclair/typebox").TString;
|
|
224
310
|
expiresAt: import("@sinclair/typebox").TString;
|
|
225
311
|
summary: import("@sinclair/typebox").TObject<{
|
|
@@ -243,11 +329,14 @@ declare const ARTIFACTS: {
|
|
|
243
329
|
governanceHash: import("@sinclair/typebox").TString;
|
|
244
330
|
mappings: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
245
331
|
policyAssignmentId: import("@sinclair/typebox").TString;
|
|
332
|
+
policyDefinitionId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
333
|
+
policyDefinitionReferenceId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
246
334
|
effect: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"deny">, import("@sinclair/typebox").TLiteral<"modify">, import("@sinclair/typebox").TLiteral<"append">, import("@sinclair/typebox").TLiteral<"audit">, import("@sinclair/typebox").TLiteral<"deployIfNotExists">, import("@sinclair/typebox").TLiteral<"disabled">]>;
|
|
247
335
|
logicalResourceId: import("@sinclair/typebox").TString;
|
|
248
336
|
propertyPath: import("@sinclair/typebox").TString;
|
|
249
337
|
expectedValue: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TUnknown>;
|
|
250
|
-
disposition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"satisfied">, import("@sinclair/typebox").TLiteral<"planned">, import("@sinclair/typebox").TLiteral<"exempt">, import("@sinclair/typebox").TLiteral<"blocked">]>;
|
|
338
|
+
disposition: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"satisfied">, import("@sinclair/typebox").TLiteral<"planned">, import("@sinclair/typebox").TLiteral<"exempt">, import("@sinclair/typebox").TLiteral<"blocked">, import("@sinclair/typebox").TLiteral<"not-applicable">]>;
|
|
339
|
+
reason: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
251
340
|
}>>;
|
|
252
341
|
}>];
|
|
253
342
|
readonly "implementation-intent": readonly ["implementation-intent", import("@sinclair/typebox").TObject<{
|
|
@@ -274,6 +363,13 @@ declare const ARTIFACTS: {
|
|
|
274
363
|
implementation: import("@sinclair/typebox").TString;
|
|
275
364
|
version: import("@sinclair/typebox").TString;
|
|
276
365
|
parameters: import("@sinclair/typebox").TRecord<import("@sinclair/typebox").TString, import("@sinclair/typebox").TUnknown>;
|
|
366
|
+
scopeLogicalId: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
367
|
+
physicalResources: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
368
|
+
resourceId: import("@sinclair/typebox").TString;
|
|
369
|
+
type: import("@sinclair/typebox").TString;
|
|
370
|
+
ownership: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"managed">, import("@sinclair/typebox").TLiteral<"existing">]>;
|
|
371
|
+
role: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"primary">, import("@sinclair/typebox").TLiteral<"ancillary">]>;
|
|
372
|
+
}>>>;
|
|
277
373
|
}>>;
|
|
278
374
|
}>];
|
|
279
375
|
readonly "environment-inputs": readonly ["environment-inputs", import("@sinclair/typebox").TObject<{
|
|
@@ -300,6 +396,7 @@ declare const ARTIFACTS: {
|
|
|
300
396
|
logicalId: import("@sinclair/typebox").TString;
|
|
301
397
|
type: import("@sinclair/typebox").TString;
|
|
302
398
|
implementationAddress: import("@sinclair/typebox").TString;
|
|
399
|
+
executionAddress: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TString>;
|
|
303
400
|
implementationKind: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"resource">, import("@sinclair/typebox").TLiteral<"module">, import("@sinclair/typebox").TLiteral<"data">, import("@sinclair/typebox").TLiteral<"existing">]>;
|
|
304
401
|
ownership: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"existing">, import("@sinclair/typebox").TLiteral<"managed">]>;
|
|
305
402
|
dependsOn: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
@@ -432,6 +529,57 @@ declare const ARTIFACTS: {
|
|
|
432
529
|
diagnosedAt: import("@sinclair/typebox").TString;
|
|
433
530
|
status: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TLiteral<"healthy">, import("@sinclair/typebox").TLiteral<"degraded">, import("@sinclair/typebox").TLiteral<"failed">, import("@sinclair/typebox").TLiteral<"unknown">]>;
|
|
434
531
|
observations: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
532
|
+
operationalHandoff: import("@sinclair/typebox").TOptional<import("@sinclair/typebox").TObject<{
|
|
533
|
+
owner: import("@sinclair/typebox").TString;
|
|
534
|
+
escalation: import("@sinclair/typebox").TString;
|
|
535
|
+
maintenanceWindow: import("@sinclair/typebox").TString;
|
|
536
|
+
accessPrerequisites: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
537
|
+
configurationReferences: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
538
|
+
name: import("@sinclair/typebox").TString;
|
|
539
|
+
source: import("@sinclair/typebox").TString;
|
|
540
|
+
}>>;
|
|
541
|
+
healthChecks: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
542
|
+
resourceId: import("@sinclair/typebox").TString;
|
|
543
|
+
check: import("@sinclair/typebox").TString;
|
|
544
|
+
expectedOutcome: import("@sinclair/typebox").TString;
|
|
545
|
+
evidenceRefs: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
546
|
+
}>>;
|
|
547
|
+
monitoring: import("@sinclair/typebox").TString;
|
|
548
|
+
incidentResponse: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
549
|
+
applicability: import("@sinclair/typebox").TLiteral<"applicable">;
|
|
550
|
+
owner: import("@sinclair/typebox").TString;
|
|
551
|
+
prerequisites: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
552
|
+
steps: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
553
|
+
verification: import("@sinclair/typebox").TString;
|
|
554
|
+
executionStatus: import("@sinclair/typebox").TLiteral<"untested">;
|
|
555
|
+
}>, import("@sinclair/typebox").TObject<{
|
|
556
|
+
applicability: import("@sinclair/typebox").TLiteral<"not-applicable">;
|
|
557
|
+
rationale: import("@sinclair/typebox").TString;
|
|
558
|
+
}>]>;
|
|
559
|
+
rollback: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
560
|
+
applicability: import("@sinclair/typebox").TLiteral<"applicable">;
|
|
561
|
+
owner: import("@sinclair/typebox").TString;
|
|
562
|
+
prerequisites: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
563
|
+
steps: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
564
|
+
verification: import("@sinclair/typebox").TString;
|
|
565
|
+
executionStatus: import("@sinclair/typebox").TLiteral<"untested">;
|
|
566
|
+
}>, import("@sinclair/typebox").TObject<{
|
|
567
|
+
applicability: import("@sinclair/typebox").TLiteral<"not-applicable">;
|
|
568
|
+
rationale: import("@sinclair/typebox").TString;
|
|
569
|
+
}>]>;
|
|
570
|
+
recovery: import("@sinclair/typebox").TUnion<[import("@sinclair/typebox").TObject<{
|
|
571
|
+
applicability: import("@sinclair/typebox").TLiteral<"applicable">;
|
|
572
|
+
owner: import("@sinclair/typebox").TString;
|
|
573
|
+
prerequisites: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
574
|
+
steps: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
575
|
+
verification: import("@sinclair/typebox").TString;
|
|
576
|
+
executionStatus: import("@sinclair/typebox").TLiteral<"untested">;
|
|
577
|
+
}>, import("@sinclair/typebox").TObject<{
|
|
578
|
+
applicability: import("@sinclair/typebox").TLiteral<"not-applicable">;
|
|
579
|
+
rationale: import("@sinclair/typebox").TString;
|
|
580
|
+
}>]>;
|
|
581
|
+
limitations: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TString>;
|
|
582
|
+
}>>;
|
|
435
583
|
causes: import("@sinclair/typebox").TArray<import("@sinclair/typebox").TObject<{
|
|
436
584
|
id: import("@sinclair/typebox").TString;
|
|
437
585
|
summary: import("@sinclair/typebox").TString;
|
|
@@ -464,7 +612,10 @@ export declare const SUPPORTED_ARTIFACT_KINDS: ArtifactKind[];
|
|
|
464
612
|
export declare class ApexService {
|
|
465
613
|
readonly root: string;
|
|
466
614
|
private readonly clock;
|
|
615
|
+
private readonly diagramRasterizer;
|
|
467
616
|
private readonly idSource;
|
|
617
|
+
private readonly writerLeaseTtlMs;
|
|
618
|
+
private readonly repeatWindowMs;
|
|
468
619
|
private readonly projects;
|
|
469
620
|
private readonly objects;
|
|
470
621
|
private readonly cache;
|
|
@@ -475,11 +626,25 @@ export declare class ApexService {
|
|
|
475
626
|
private readonly azureAuthStatus;
|
|
476
627
|
private readonly customizationFailureInjector?;
|
|
477
628
|
private readonly processRunner;
|
|
478
|
-
private readonly
|
|
629
|
+
private readonly workspaceLockHold;
|
|
630
|
+
private readonly host;
|
|
631
|
+
/** Writes the running repeat-guarded call makes to the files its repeat record binds. */
|
|
632
|
+
private readonly repeatWrites;
|
|
633
|
+
/** Set while a read runs as a snapshot without the workspace lock; any write or recovery then needs the lock. */
|
|
634
|
+
private readonly snapshotRead;
|
|
479
635
|
private readonly improvementPolicy;
|
|
480
636
|
private improvementRuntime?;
|
|
481
637
|
private requirementsDocumentTemplate?;
|
|
638
|
+
private workspacePath;
|
|
639
|
+
private readonly reviewHomeOverride;
|
|
640
|
+
private reviewGuardPeers;
|
|
482
641
|
constructor(root: string, options?: ServiceOptions);
|
|
642
|
+
setWorkspacePath(workspacePath: string): void;
|
|
643
|
+
/**
|
|
644
|
+
* Other workspaces served by the same process (the MCP server resolves each caller-supplied workspace to its own
|
|
645
|
+
* service). The pending-review guard scans them too, so pointing an inherited tool at another workspace cannot evade it.
|
|
646
|
+
*/
|
|
647
|
+
setReviewGuardPeers(peers: () => Iterable<ApexService>): void;
|
|
483
648
|
improvementObserve(input: {
|
|
484
649
|
taskId?: string;
|
|
485
650
|
observedAt?: string;
|
|
@@ -522,40 +687,133 @@ export declare class ApexService {
|
|
|
522
687
|
environment?: string;
|
|
523
688
|
targetScope?: string;
|
|
524
689
|
iacTool?: "bicep" | "terraform";
|
|
690
|
+
riskOwner: RiskOwner;
|
|
525
691
|
customizationsSource?: string;
|
|
526
692
|
clientId?: BundledClientProjection["id"];
|
|
527
693
|
}): Promise<{
|
|
528
694
|
projectId: ProjectId;
|
|
529
695
|
runId: RunId;
|
|
530
696
|
}>;
|
|
697
|
+
initializeWorkspace(input: {
|
|
698
|
+
customizationsSource?: string;
|
|
699
|
+
clientId?: BundledClientProjection["id"];
|
|
700
|
+
}): Promise<{
|
|
701
|
+
workspaceReady: true;
|
|
702
|
+
projectCreated: false;
|
|
703
|
+
}>;
|
|
704
|
+
planGovernanceSetup(config: GovernanceSetupConfigV1): Promise<{
|
|
705
|
+
schemaVersion: "1.0.0";
|
|
706
|
+
config: {
|
|
707
|
+
schemaVersion: "1.0.0";
|
|
708
|
+
repository: string;
|
|
709
|
+
tenantId: string;
|
|
710
|
+
subscriptionId: string;
|
|
711
|
+
managementGroupId?: string;
|
|
712
|
+
identity: {
|
|
713
|
+
mode: "reuse";
|
|
714
|
+
clientId: string;
|
|
715
|
+
principalId: string;
|
|
716
|
+
} | {
|
|
717
|
+
mode: "create";
|
|
718
|
+
displayName: string;
|
|
719
|
+
};
|
|
720
|
+
};
|
|
721
|
+
evidenceHash: string;
|
|
722
|
+
status: "blocked" | "pending";
|
|
723
|
+
federation?: {
|
|
724
|
+
issuer: "https://token.actions.githubusercontent.com";
|
|
725
|
+
audience: "api://AzureADTokenExchange";
|
|
726
|
+
subject: string;
|
|
727
|
+
};
|
|
728
|
+
environment: "governance";
|
|
729
|
+
proposedRole: {
|
|
730
|
+
id: "acdd72a7-3385-48ef-bd42-f606fba81ae7";
|
|
731
|
+
name: "Reader";
|
|
732
|
+
scope: string;
|
|
733
|
+
};
|
|
734
|
+
variables: {
|
|
735
|
+
[x: string]: string;
|
|
736
|
+
};
|
|
737
|
+
blockers: string[];
|
|
738
|
+
pendingActions: string[];
|
|
739
|
+
filesModified: false;
|
|
740
|
+
executionAuthorized: false;
|
|
741
|
+
deploymentAuthorized: false;
|
|
742
|
+
planHash: string;
|
|
743
|
+
}>;
|
|
744
|
+
private governanceSetupRead;
|
|
745
|
+
planGovernanceProvision(config: GovernanceSetupConfigV1): Promise<GovernanceProvisionPlanV1>;
|
|
746
|
+
provisionGovernance(config: GovernanceSetupConfigV1, expectedHash: string, confirm: boolean): Promise<{
|
|
747
|
+
schemaVersion: "1.0.0";
|
|
748
|
+
planHash: string;
|
|
749
|
+
repository: string;
|
|
750
|
+
clientId: string;
|
|
751
|
+
actions: {
|
|
752
|
+
action: string;
|
|
753
|
+
status: "started" | "verified" | "indeterminate";
|
|
754
|
+
}[];
|
|
755
|
+
deploymentAuthorized: boolean;
|
|
756
|
+
collectionEnabled: boolean;
|
|
757
|
+
status: string;
|
|
758
|
+
receiptPath: string;
|
|
759
|
+
nextAction: string;
|
|
760
|
+
}>;
|
|
761
|
+
private repositoryPublishEvidence;
|
|
762
|
+
/** Builds a reviewable GitHub repository creation and push plan. No remote state is modified. */
|
|
763
|
+
planRepositoryPublish(config: RepositoryPublishConfigV1): Promise<RepositoryPublishPlanV1>;
|
|
764
|
+
/** Executes exactly the confirmed repository creation, remote and non-forced push actions. */
|
|
765
|
+
publishRepository(config: RepositoryPublishConfigV1, expectedHash: string, confirm: boolean): Promise<{
|
|
766
|
+
schemaVersion: "1.0.0";
|
|
767
|
+
planHash: string;
|
|
768
|
+
repository: string;
|
|
769
|
+
visibility: "internal" | "private" | "public";
|
|
770
|
+
branch: string;
|
|
771
|
+
commit: string;
|
|
772
|
+
actions: {
|
|
773
|
+
action: string;
|
|
774
|
+
status: "started" | "verified" | "indeterminate";
|
|
775
|
+
}[];
|
|
776
|
+
forcePush: boolean;
|
|
777
|
+
deploymentAuthorized: boolean;
|
|
778
|
+
status: string;
|
|
779
|
+
receiptPath: string;
|
|
780
|
+
nextAction: string;
|
|
781
|
+
}>;
|
|
782
|
+
planBootstrap(config: OnboardingConfigV1): Promise<BootstrapPlanV1>;
|
|
783
|
+
private inspectBootstrapResume;
|
|
531
784
|
bootstrap(input: {
|
|
532
785
|
projectId: ProjectId;
|
|
533
786
|
displayName?: string;
|
|
534
787
|
environment?: string;
|
|
535
788
|
targetScope?: string;
|
|
536
789
|
iacTool?: "bicep" | "terraform";
|
|
790
|
+
riskOwner: RiskOwner;
|
|
537
791
|
clientId?: BundledClientProjection["id"];
|
|
538
792
|
createRepository?: boolean;
|
|
539
793
|
}): Promise<{
|
|
540
794
|
projectId: ProjectId;
|
|
541
795
|
runId: RunId;
|
|
796
|
+
workspaceReady: true;
|
|
797
|
+
projectCreated: boolean;
|
|
542
798
|
runtimeInstalled: boolean;
|
|
799
|
+
resumed: boolean;
|
|
543
800
|
}>;
|
|
544
|
-
|
|
545
|
-
|
|
546
|
-
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
|
|
551
|
-
|
|
552
|
-
|
|
553
|
-
|
|
554
|
-
|
|
555
|
-
|
|
556
|
-
|
|
557
|
-
|
|
558
|
-
|
|
801
|
+
bootstrap(input: {
|
|
802
|
+
projectId?: ProjectId;
|
|
803
|
+
displayName?: string;
|
|
804
|
+
environment?: string;
|
|
805
|
+
targetScope?: string;
|
|
806
|
+
iacTool?: "bicep" | "terraform";
|
|
807
|
+
riskOwner?: RiskOwner;
|
|
808
|
+
clientId?: BundledClientProjection["id"];
|
|
809
|
+
createRepository?: boolean;
|
|
810
|
+
}): Promise<{
|
|
811
|
+
projectId?: ProjectId;
|
|
812
|
+
runId?: RunId;
|
|
813
|
+
workspaceReady: true;
|
|
814
|
+
projectCreated: boolean;
|
|
815
|
+
runtimeInstalled: boolean;
|
|
816
|
+
resumed: boolean;
|
|
559
817
|
}>;
|
|
560
818
|
createProject(input: {
|
|
561
819
|
projectId: ProjectId;
|
|
@@ -563,21 +821,32 @@ export declare class ApexService {
|
|
|
563
821
|
environment?: string;
|
|
564
822
|
targetScope?: string;
|
|
565
823
|
iacTool?: "bicep" | "terraform";
|
|
824
|
+
riskOwner: RiskOwner;
|
|
566
825
|
}): Promise<{
|
|
567
826
|
projectId: ProjectId;
|
|
568
827
|
runId: RunId;
|
|
569
828
|
}>;
|
|
570
829
|
update(customizationsSource?: string): Promise<{
|
|
571
830
|
updated: string[];
|
|
831
|
+
retired: string[];
|
|
832
|
+
conflicts: string[];
|
|
572
833
|
}>;
|
|
573
834
|
rollbackCustomizations(): Promise<{
|
|
574
835
|
restored: string[];
|
|
836
|
+
removed: string[];
|
|
575
837
|
conflicts: string[];
|
|
576
838
|
}>;
|
|
577
839
|
uninstallCustomizations(): Promise<{
|
|
578
840
|
removed: string[];
|
|
579
841
|
conflicts: string[];
|
|
580
842
|
}>;
|
|
843
|
+
retiredProjectionInstalled(): Promise<boolean>;
|
|
844
|
+
/** Explicit replacement of a retired VS Code projection; project state is untouched. */
|
|
845
|
+
replaceRetiredProjection(): Promise<{
|
|
846
|
+
removed: string[];
|
|
847
|
+
installed: string[];
|
|
848
|
+
clientId: BundledClientProjection["id"];
|
|
849
|
+
}>;
|
|
581
850
|
reinstallCustomizations(customizationsSource?: string): Promise<{
|
|
582
851
|
installed: string[];
|
|
583
852
|
clientId: BundledClientProjection["id"];
|
|
@@ -586,6 +855,7 @@ export declare class ApexService {
|
|
|
586
855
|
projectId: string;
|
|
587
856
|
displayName: string;
|
|
588
857
|
}>>;
|
|
858
|
+
private workspaceHasNoProjects;
|
|
589
859
|
deleteProject(projectId: ProjectId, confirmed: boolean): Promise<{
|
|
590
860
|
deleted: ProjectId;
|
|
591
861
|
selected?: Selection;
|
|
@@ -608,6 +878,132 @@ export declare class ApexService {
|
|
|
608
878
|
artifactKinds: string[];
|
|
609
879
|
payload: JsonValue;
|
|
610
880
|
}>>;
|
|
881
|
+
inspectArchetype(repositoryPath: string, revision: string, selectedPath: string): Promise<{
|
|
882
|
+
schemaVersion: "1.0.0";
|
|
883
|
+
repositoryPath: string;
|
|
884
|
+
revision: string;
|
|
885
|
+
selectedPath: string;
|
|
886
|
+
authorityImported: false;
|
|
887
|
+
requiresConsumerReview: true;
|
|
888
|
+
files: {
|
|
889
|
+
path: string;
|
|
890
|
+
hash: string;
|
|
891
|
+
bytes: number;
|
|
892
|
+
}[];
|
|
893
|
+
excluded: {
|
|
894
|
+
path: string;
|
|
895
|
+
reason: "source-authority" | "unsupported-material";
|
|
896
|
+
}[];
|
|
897
|
+
contentHash: string;
|
|
898
|
+
}>;
|
|
899
|
+
listArchetypes(repositoryPath: string, revision: string, catalogPath: string): Promise<{
|
|
900
|
+
repositoryPath: string;
|
|
901
|
+
revision: string;
|
|
902
|
+
catalogPath: string;
|
|
903
|
+
candidates: {
|
|
904
|
+
selectedPath: string;
|
|
905
|
+
treeObjectId: string;
|
|
906
|
+
requiresInspection: true;
|
|
907
|
+
}[];
|
|
908
|
+
}>;
|
|
909
|
+
private copiedArchetypeMatches;
|
|
910
|
+
planArchetypeBatch(config: ArchetypeBatchConfigV1): Promise<ArchetypeBatchPlanV1>;
|
|
911
|
+
importArchetypeBatch(config: ArchetypeBatchConfigV1, expectedHash: string, confirm: boolean): Promise<{
|
|
912
|
+
status: string;
|
|
913
|
+
planHash: string;
|
|
914
|
+
entries: {
|
|
915
|
+
destination: string;
|
|
916
|
+
status: "copied" | "already-copied" | "blocked" | "pending";
|
|
917
|
+
}[];
|
|
918
|
+
nextAction: string;
|
|
919
|
+
authorityImported: boolean;
|
|
920
|
+
requiresConsumerReview: boolean;
|
|
921
|
+
}>;
|
|
922
|
+
importArchetype(request: {
|
|
923
|
+
repositoryPath: string;
|
|
924
|
+
revision: string;
|
|
925
|
+
selectedPath: string;
|
|
926
|
+
destination: string;
|
|
927
|
+
expectedHash: string;
|
|
928
|
+
confirm: boolean;
|
|
929
|
+
}): Promise<{
|
|
930
|
+
destination: string;
|
|
931
|
+
contentHash: string;
|
|
932
|
+
files: number;
|
|
933
|
+
requiresConsumerReview: true;
|
|
934
|
+
}>;
|
|
935
|
+
private readArchetypeRemoteJson;
|
|
936
|
+
private readArchetypeSelection;
|
|
937
|
+
workspaceStatus(): Promise<{
|
|
938
|
+
status: "needs_project";
|
|
939
|
+
workspaceReady: true;
|
|
940
|
+
projects: string[];
|
|
941
|
+
nextAction: string;
|
|
942
|
+
} | {
|
|
943
|
+
run: RunConfigV1;
|
|
944
|
+
head: string | null;
|
|
945
|
+
events: number;
|
|
946
|
+
task: string | null;
|
|
947
|
+
blockers: string[];
|
|
948
|
+
}>;
|
|
949
|
+
/**
|
|
950
|
+
* Runs a state-changing operation that is not repeat-guarded, such as a CLI command, under the workspace repeat lock
|
|
951
|
+
* that guarded calls hold, so it cannot land between a guarded call's state reads, execution and record publication.
|
|
952
|
+
* A `suspendable` operation, such as a CLI command, may give the lock up while it waits for interactive input through
|
|
953
|
+
* {@link waitOutsideWorkspaceLock}; MCP calls never do.
|
|
954
|
+
*/
|
|
955
|
+
withWorkspaceWriteLock<T>(operation: () => Promise<T>, signal?: AbortSignal, options?: {
|
|
956
|
+
suspendable?: boolean;
|
|
957
|
+
}): Promise<T>;
|
|
958
|
+
/**
|
|
959
|
+
* Runs a `read` operation, one that writes nothing except by finishing a pending run or customization recovery. It
|
|
960
|
+
* takes the workspace lock when it is free. While a CLI command holds the lock and waits for an external process
|
|
961
|
+
* through {@link whileExternalProcessRuns}, the read runs as a snapshot without the lock instead and is answered only
|
|
962
|
+
* if the command wrote nothing meanwhile; a read that would need to recover state waits for the lock.
|
|
963
|
+
*/
|
|
964
|
+
withWorkspaceReadLock<T>(operation: () => Promise<T>, signal?: AbortSignal): Promise<T>;
|
|
965
|
+
/**
|
|
966
|
+
* Runs an external process, such as a provider preview, apply or destroy, or a Git, GitHub or Azure CLI call, that
|
|
967
|
+
* writes no workspace state itself. A CLI command keeps the workspace lock meanwhile, so writers still wait, but
|
|
968
|
+
* shares it with {@link withWorkspaceReadLock} snapshot readers. Elsewhere `operation` runs as is.
|
|
969
|
+
*/
|
|
970
|
+
private whileExternalProcessRuns;
|
|
971
|
+
private runExternalProcess;
|
|
972
|
+
/** Refuses a write or recovery inside a snapshot read, which then waits for the workspace lock instead. */
|
|
973
|
+
private assertNotSnapshotRead;
|
|
974
|
+
/**
|
|
975
|
+
* Runs `wait`, such as an interactive prompt, without the workspace lock when the current operation holds it as
|
|
976
|
+
* suspendable, so MCP calls in the workspace are not blocked meanwhile. The lock is then taken again and the command
|
|
977
|
+
* fails with `APEX_STALE` unless the workspace state is unchanged, so a decision taken during the wait is applied
|
|
978
|
+
* only to the state it was taken against. Elsewhere `wait` runs as is.
|
|
979
|
+
*/
|
|
980
|
+
waitOutsideWorkspaceLock<T>(wait: () => Promise<T>): Promise<T>;
|
|
981
|
+
/**
|
|
982
|
+
* Token over the selected run state that repeat-guarded calls are bound to and the workspace setup files, so any
|
|
983
|
+
* change by another writer of the workspace changes it.
|
|
984
|
+
*/
|
|
985
|
+
private workspaceStateToken;
|
|
986
|
+
private repeatLockDirectory;
|
|
987
|
+
/**
|
|
988
|
+
* Runs one state-changing call through the kernel repeat guard. An identical call from the same worktree while the
|
|
989
|
+
* selected run is unchanged since the original succeeded returns the original result and is audited instead of
|
|
990
|
+
* executing again; anything else executes normally under the usual kernel checks.
|
|
991
|
+
*/
|
|
992
|
+
repeatSafe<T extends Record<string, unknown>>(call: RepeatSafeCall, execute: () => Promise<T>, signal?: AbortSignal): Promise<T>;
|
|
993
|
+
private repeatScope;
|
|
994
|
+
/**
|
|
995
|
+
* Roots of the files guarded operations read outside the run journal: the run's staged work tree and the latest
|
|
996
|
+
* generated source tree. The repeat guard binds them by content, so an external edit makes an identical call new and
|
|
997
|
+
* an edit while a call runs keeps its result from being stored.
|
|
998
|
+
*/
|
|
999
|
+
private repeatFileRoots;
|
|
1000
|
+
/** Content hash plus the inode, size and change times that any later modification of the file would alter. */
|
|
1001
|
+
private repeatFileBinding;
|
|
1002
|
+
releaseWriter(): Promise<{
|
|
1003
|
+
released: boolean;
|
|
1004
|
+
projectId: string;
|
|
1005
|
+
runId: string;
|
|
1006
|
+
}>;
|
|
611
1007
|
status(): Promise<{
|
|
612
1008
|
run: RunConfigV1;
|
|
613
1009
|
head: string | null;
|
|
@@ -618,53 +1014,259 @@ export declare class ApexService {
|
|
|
618
1014
|
nextTask(): Promise<{
|
|
619
1015
|
status: "needs_input";
|
|
620
1016
|
request: InputRequestV1;
|
|
1017
|
+
} | {
|
|
1018
|
+
status: "needs_review";
|
|
1019
|
+
review: Awaited<ReturnType<ApexService["pendingReview"]>>;
|
|
621
1020
|
} | {
|
|
622
1021
|
status: "task";
|
|
623
1022
|
task: TaskEnvelopeV1;
|
|
624
1023
|
}>;
|
|
1024
|
+
private currentIssuedTask;
|
|
625
1025
|
recordInput(input: InputSubmissionV1): Promise<{
|
|
626
1026
|
recorded: true;
|
|
627
1027
|
requestId: string;
|
|
628
1028
|
}>;
|
|
629
|
-
|
|
1029
|
+
private taskReviewMetadata;
|
|
630
1030
|
taskContext(taskId: string): Promise<{
|
|
631
1031
|
task: TaskEnvelopeV1;
|
|
632
1032
|
inputs: unknown[];
|
|
1033
|
+
inputReferences: Array<{
|
|
1034
|
+
hash: string;
|
|
1035
|
+
bytes: number;
|
|
1036
|
+
inlined: boolean;
|
|
1037
|
+
}>;
|
|
633
1038
|
artifactHashes: Record<string, string>;
|
|
634
1039
|
recordedInput: Record<string, InputValueV1> | null;
|
|
635
1040
|
decisions: Record<string, InputValueV1>;
|
|
636
1041
|
outputTemplates: Partial<Record<ArtifactKind, unknown>>;
|
|
1042
|
+
reviewMetadata?: Awaited<ReturnType<ApexService["taskReviewMetadata"]>>;
|
|
1043
|
+
reviewMetadataReference?: {
|
|
1044
|
+
selector: "review-metadata";
|
|
1045
|
+
bytes: number;
|
|
1046
|
+
inlined: boolean;
|
|
1047
|
+
};
|
|
1048
|
+
reviewRequest?: ReviewRequestV1;
|
|
637
1049
|
outputRoot: string;
|
|
638
1050
|
status: string;
|
|
639
1051
|
blockers: string[];
|
|
640
1052
|
}>;
|
|
1053
|
+
readTaskInput(taskId: string, offset?: number, limit?: number, inputHash?: string): Promise<{
|
|
1054
|
+
subjectHash: string;
|
|
1055
|
+
content: string;
|
|
1056
|
+
offset: number;
|
|
1057
|
+
nextOffset?: number;
|
|
1058
|
+
outputTemplate?: unknown;
|
|
1059
|
+
}>;
|
|
641
1060
|
stageArtifact(taskId: string, output: TaskOutput): Promise<StagedArtifact>;
|
|
1061
|
+
private readGovernanceBaselineBytes;
|
|
1062
|
+
private governanceBaselineValidator;
|
|
1063
|
+
private governanceBaselineOptions;
|
|
1064
|
+
private governanceQuestions;
|
|
1065
|
+
private governanceInputRequest;
|
|
1066
|
+
private governanceInputState;
|
|
1067
|
+
private governanceInitialImportProof;
|
|
1068
|
+
private assertGovernanceInputBinding;
|
|
1069
|
+
private governanceRefreshRequired;
|
|
1070
|
+
private inspectBaseline;
|
|
1071
|
+
private assertGovernanceCandidate;
|
|
1072
|
+
inspectGovernanceBaselineReadiness(path: string): Promise<{
|
|
1073
|
+
status: string;
|
|
1074
|
+
candidateHash: string;
|
|
1075
|
+
targetScope: string;
|
|
1076
|
+
observedAt: string;
|
|
1077
|
+
refreshRequired: boolean;
|
|
1078
|
+
imported: boolean;
|
|
1079
|
+
deploymentAuthorized: boolean;
|
|
1080
|
+
nextAction: string;
|
|
1081
|
+
}>;
|
|
1082
|
+
selectGovernanceBaseline(path: string, options?: {
|
|
1083
|
+
reopen?: boolean;
|
|
1084
|
+
}): Promise<{
|
|
1085
|
+
status: "needs_input";
|
|
1086
|
+
request: InputRequestV1;
|
|
1087
|
+
} | {
|
|
1088
|
+
status: "selected";
|
|
1089
|
+
choice: "reuse" | "refresh";
|
|
1090
|
+
candidateHash: string;
|
|
1091
|
+
observedAt: string;
|
|
1092
|
+
refreshRequired: boolean;
|
|
1093
|
+
}>;
|
|
1094
|
+
private governanceRevision;
|
|
1095
|
+
private pendingGovernanceRevision;
|
|
1096
|
+
private governanceWorkflowEvents;
|
|
1097
|
+
reviseGovernanceBaseline(path: string, options: {
|
|
1098
|
+
confirm: boolean;
|
|
1099
|
+
reason: string;
|
|
1100
|
+
}): Promise<{
|
|
1101
|
+
invalidatedNodes: string[];
|
|
1102
|
+
previousGovernanceHash: string;
|
|
1103
|
+
candidateHash: string;
|
|
1104
|
+
}>;
|
|
1105
|
+
importGovernanceBaseline(path: string): Promise<{
|
|
1106
|
+
outputHash: string;
|
|
1107
|
+
summary: string;
|
|
1108
|
+
}>;
|
|
1109
|
+
importGovernanceReference(): Promise<{
|
|
1110
|
+
outputHash: string;
|
|
1111
|
+
summary: string;
|
|
1112
|
+
}>;
|
|
642
1113
|
stageFile(taskId: string, relativePath: string, content: string | Uint8Array, expectedSha?: string): Promise<StagedFile>;
|
|
643
1114
|
generateIac(taskId: string, options?: GenerateIacOptions): Promise<{
|
|
644
1115
|
files: StagedFile[];
|
|
645
1116
|
outputHashes: Partial<Record<ArtifactKind, string>>;
|
|
646
1117
|
treeHash: string;
|
|
647
1118
|
}>;
|
|
1119
|
+
private assertPreviousGeneratedSourceUnmodified;
|
|
648
1120
|
validateTask(taskId: string, output?: TaskOutput | TaskOutput[]): Promise<{
|
|
649
|
-
valid:
|
|
1121
|
+
valid: boolean;
|
|
650
1122
|
taskId: string;
|
|
651
1123
|
staged?: StagedArtifact | StagedArtifact[];
|
|
1124
|
+
execution?: {
|
|
1125
|
+
mode: "native";
|
|
1126
|
+
executedValidatorIds: string[];
|
|
1127
|
+
blockedValidatorIds: string[];
|
|
1128
|
+
storageSecurity?: NativeValidationReceiptV1["storageSecurity"];
|
|
1129
|
+
storageDiagnostics?: NativeValidationReceiptV1["storageDiagnostics"];
|
|
1130
|
+
securityBaseline?: NativeValidationReceiptV1["securityBaseline"];
|
|
1131
|
+
};
|
|
1132
|
+
outputs?: TaskOutput[];
|
|
652
1133
|
}>;
|
|
653
|
-
|
|
654
|
-
|
|
1134
|
+
completeTaskOutputs(taskId: string, outputs: TaskOutput[]): Promise<{
|
|
1135
|
+
outputHashes: Partial<Record<ArtifactKind, string>>;
|
|
655
1136
|
summary: string;
|
|
656
1137
|
}>;
|
|
657
|
-
|
|
1138
|
+
private reopenArchitecture;
|
|
1139
|
+
completeRequirements(taskId: string, requirements: RequirementsV1): Promise<{
|
|
658
1140
|
outputHashes: Partial<Record<ArtifactKind, string>>;
|
|
659
1141
|
summary: string;
|
|
660
1142
|
}>;
|
|
1143
|
+
private prepareRequirementsAmendment;
|
|
1144
|
+
previewRequirementsAmendment(amendment: RequirementsAmendmentV1, reason: string): Promise<{
|
|
1145
|
+
schemaVersion: "1.0.0";
|
|
1146
|
+
projectId: string;
|
|
1147
|
+
runId: string;
|
|
1148
|
+
expectedHead: string;
|
|
1149
|
+
ownerEpoch: number;
|
|
1150
|
+
sourceRequirementsHash: string | null;
|
|
1151
|
+
mode: "adopt" | "revise";
|
|
1152
|
+
candidateHash: string;
|
|
1153
|
+
reason: string;
|
|
1154
|
+
addedRequirementIds: string[];
|
|
1155
|
+
removedRequirementIds: string[];
|
|
1156
|
+
changedRequirementIds: string[];
|
|
1157
|
+
retainedRequirementIds: string[];
|
|
1158
|
+
changedFields: string[];
|
|
1159
|
+
invalidatedNodes: string[];
|
|
1160
|
+
invalidatedGates: number[];
|
|
1161
|
+
requiresReassessment: ["cost", "policy", "security", "dependencies", "code", "documents"];
|
|
1162
|
+
filesModified: false;
|
|
1163
|
+
deploymentAuthorized: false;
|
|
1164
|
+
proposalHash: string;
|
|
1165
|
+
}>;
|
|
1166
|
+
amendRequirements(amendment: RequirementsAmendmentV1, options: {
|
|
1167
|
+
reason: string;
|
|
1168
|
+
expectedHash: string;
|
|
1169
|
+
confirm: boolean;
|
|
1170
|
+
}): Promise<{
|
|
1171
|
+
candidateHash: string;
|
|
1172
|
+
proposalHash: string;
|
|
1173
|
+
invalidatedNodes: string[];
|
|
1174
|
+
deploymentAuthorized: false;
|
|
1175
|
+
}>;
|
|
1176
|
+
previewRequirementsChange(candidate: RequirementsV1, reason: string, mode?: "adopt" | "revise"): Promise<{
|
|
1177
|
+
schemaVersion: "1.0.0";
|
|
1178
|
+
projectId: string;
|
|
1179
|
+
runId: string;
|
|
1180
|
+
expectedHead: string;
|
|
1181
|
+
ownerEpoch: number;
|
|
1182
|
+
sourceRequirementsHash: string | null;
|
|
1183
|
+
mode: "adopt" | "revise";
|
|
1184
|
+
candidateHash: string;
|
|
1185
|
+
reason: string;
|
|
1186
|
+
addedRequirementIds: string[];
|
|
1187
|
+
removedRequirementIds: string[];
|
|
1188
|
+
changedRequirementIds: string[];
|
|
1189
|
+
retainedRequirementIds: string[];
|
|
1190
|
+
changedFields: string[];
|
|
1191
|
+
invalidatedNodes: string[];
|
|
1192
|
+
invalidatedGates: number[];
|
|
1193
|
+
requiresReassessment: ["cost", "policy", "security", "dependencies", "code", "documents"];
|
|
1194
|
+
filesModified: false;
|
|
1195
|
+
deploymentAuthorized: false;
|
|
1196
|
+
proposalHash: string;
|
|
1197
|
+
}>;
|
|
1198
|
+
reviseRequirements(candidate: RequirementsV1, options: {
|
|
1199
|
+
reason: string;
|
|
1200
|
+
expectedHash: string;
|
|
1201
|
+
confirm: boolean;
|
|
1202
|
+
mode?: "adopt" | "revise";
|
|
1203
|
+
}): Promise<{
|
|
1204
|
+
candidateHash: string;
|
|
1205
|
+
proposalHash: string;
|
|
1206
|
+
invalidatedNodes: string[];
|
|
1207
|
+
deploymentAuthorized: false;
|
|
1208
|
+
}>;
|
|
1209
|
+
private pendingRequirementsRevision;
|
|
1210
|
+
private previousRequirementsHash;
|
|
1211
|
+
completeArchitecture(taskId: string, architecture: ArchitectureV1, costEstimate: CostEstimateV1, decisionManifest: Omit<WorkloadDecisionManifestV1, "projectId" | "runId" | "environment" | "sourceRequirementsHash" | "architectureHash" | "costEstimateHash" | "requirementTraceability">, policyMappings: PolicyPropertyMapV1["mappings"]): Promise<{
|
|
1212
|
+
outputHashes: Partial<Record<ArtifactKind, string>>;
|
|
1213
|
+
summary: string;
|
|
1214
|
+
}>;
|
|
1215
|
+
/**
|
|
1216
|
+
* Completes a review task from rubber-duck's captured output (DECISION-031). The kernel locates the single capture
|
|
1217
|
+
* for the task's request nonce, verifies its signature, prompt and origin, checks that the reviewed artifact is
|
|
1218
|
+
* still current, and derives every finding from the captured answer. The caller supplies no findings.
|
|
1219
|
+
*/
|
|
1220
|
+
completeReview(taskId: string): Promise<{
|
|
1221
|
+
outputHashes: Partial<Record<ArtifactKind, string>>;
|
|
1222
|
+
summary: string;
|
|
1223
|
+
}>;
|
|
1224
|
+
/**
|
|
1225
|
+
* Review requests in this workspace that still wait for their rubber-duck capture: in each run, the last issued task
|
|
1226
|
+
* is a review task with a request, it is neither completed nor cancelled, and it has not expired. A rejected capture
|
|
1227
|
+
* leaves the review pending until the next request or a cancellation. Unreadable task files count as pending.
|
|
1228
|
+
*/
|
|
1229
|
+
private pendingReviews;
|
|
1230
|
+
/**
|
|
1231
|
+
* DECISION-031 amendment (2026-10-08): while a review waits for its capture, refuse operations that approve, delete
|
|
1232
|
+
* or publish (MCP_TOOL_REVIEW_GUARDS), so an inherited rubber-duck cannot use them even when hooks fail open.
|
|
1233
|
+
*/
|
|
1234
|
+
private assertNoPendingReview;
|
|
1235
|
+
/**
|
|
1236
|
+
* Best effort: removes captures of this run's used review requests whose earlier removal failed, and captures of
|
|
1237
|
+
* long-expired requests. File times are wall-clock, so the sweep uses the wall clock rather than the service clock.
|
|
1238
|
+
*/
|
|
1239
|
+
private sweepCaptures;
|
|
1240
|
+
private reviewNonceConsumed;
|
|
1241
|
+
private issuedReviewRequest;
|
|
1242
|
+
private rejectReviewCapture;
|
|
1243
|
+
/**
|
|
1244
|
+
* Moves captures that will never be ingested into the run's object store as typed JSON audit evidence, so the shared
|
|
1245
|
+
* review home stays bounded and state transfer can still carry (and secret-check) every journal-referenced object.
|
|
1246
|
+
* Captures that cannot be archived move to the review home's quarantine first, so the caller's event records only
|
|
1247
|
+
* moves that happened; the quarantine keeps them even if that event then loses the race to another writer. The
|
|
1248
|
+
* caller removes `archived` once its event is committed.
|
|
1249
|
+
*/
|
|
1250
|
+
private archiveReviewCaptures;
|
|
1251
|
+
/**
|
|
1252
|
+
* Writes the review inputs as readable files and builds the rubber-duck prompt that binds their hashes, the gate and
|
|
1253
|
+
* a fresh single-use nonce. Returns the journal binding for `task.issued`.
|
|
1254
|
+
*/
|
|
1255
|
+
private prepareReviewRequest;
|
|
661
1256
|
completePlan(taskId: string, intent: ImplementationIntentV1, binding: Omit<IacBindingV1, "intentHash">, environmentInputs: EnvironmentInputsV1): Promise<{
|
|
662
1257
|
outputHashes: Partial<Record<ArtifactKind, string>>;
|
|
663
1258
|
summary: string;
|
|
664
1259
|
}>;
|
|
1260
|
+
private assertTaskType;
|
|
665
1261
|
private acceptTaskOutputs;
|
|
666
1262
|
private renderRequirementsDocument;
|
|
667
1263
|
private requirementsReviewDirectory;
|
|
1264
|
+
private generatedReviewBase;
|
|
1265
|
+
private assertGeneratedReviewUnmodified;
|
|
1266
|
+
private assertTaskReviewFilesUnmodified;
|
|
1267
|
+
private removeGeneratedReview;
|
|
1268
|
+
private writeGeneratedReview;
|
|
1269
|
+
private materializeOperationalIndex;
|
|
668
1270
|
private reviewMarkdownText;
|
|
669
1271
|
private materializeRequirementsReviewPackage;
|
|
670
1272
|
private materializeRequirementsChallengeFindings;
|
|
@@ -680,6 +1282,12 @@ export declare class ApexService {
|
|
|
680
1282
|
private requirementsDocumentTemplateContent;
|
|
681
1283
|
cancelTask(taskId: string): Promise<void>;
|
|
682
1284
|
resolveReview(resolution: ReviewResolution): Promise<void>;
|
|
1285
|
+
decideReview(reviewHash: string, decisions: ReviewDecision[]): Promise<{
|
|
1286
|
+
status: "revision_requested" | "resolved";
|
|
1287
|
+
}>;
|
|
1288
|
+
private reviewAcceptedRiskDefaults;
|
|
1289
|
+
private pendingReview;
|
|
1290
|
+
private reviseReview;
|
|
683
1291
|
private assertReviewResolution;
|
|
684
1292
|
decideGateNumber(gateNumber: number, decision: "approved" | "rejected", actor: string, options?: GateDecisionOptions): Promise<ApprovalEvidenceV1>;
|
|
685
1293
|
decideInteractiveGate(gateNumber: 1 | 2 | 3, decision: "approved" | "rejected"): Promise<ApprovalEvidenceV1>;
|
|
@@ -741,7 +1349,9 @@ export declare class ApexService {
|
|
|
741
1349
|
deleteTelemetry(): Promise<{
|
|
742
1350
|
deleted: true;
|
|
743
1351
|
}>;
|
|
744
|
-
|
|
1352
|
+
private renderAcceptedPlanGuide;
|
|
1353
|
+
render(kind: "status" | "requirements" | "preview" | "approval" | "inventory" | "deployment-summary" | "deployment-guide" | "implementation-plan" | "operations-runbook" | "architecture-decisions"): Promise<string>;
|
|
1354
|
+
private renderCompletedDeploymentSummary;
|
|
745
1355
|
diagnose(): Promise<unknown>;
|
|
746
1356
|
reconcile(): Promise<unknown>;
|
|
747
1357
|
setup(live?: boolean): Promise<unknown>;
|
|
@@ -756,6 +1366,9 @@ export declare class ApexService {
|
|
|
756
1366
|
private nextRequirementsIntakeRound;
|
|
757
1367
|
private issueRequirementsInput;
|
|
758
1368
|
private requirementsIntakeQuestions;
|
|
1369
|
+
private recommendedWorkloadPattern;
|
|
1370
|
+
private workloadScalePrompt;
|
|
1371
|
+
private recommendedServiceCandidates;
|
|
759
1372
|
private append;
|
|
760
1373
|
private journal;
|
|
761
1374
|
private runPath;
|
|
@@ -763,18 +1376,27 @@ export declare class ApexService {
|
|
|
763
1376
|
private run;
|
|
764
1377
|
private assertRequirementsIntakeAdmitted;
|
|
765
1378
|
private runRepository;
|
|
1379
|
+
private acquireRunWriterLease;
|
|
1380
|
+
private releaseRunWriterLeaseIfOwned;
|
|
1381
|
+
private refreshWorkspacePath;
|
|
1382
|
+
private writerLeaseOwner;
|
|
766
1383
|
private selection;
|
|
767
1384
|
private writeSelection;
|
|
768
1385
|
private latestPayloadHash;
|
|
769
1386
|
private artifactHash;
|
|
770
1387
|
private acceptedArtifactHashes;
|
|
771
1388
|
private inputRefs;
|
|
1389
|
+
private reviewSubjectArtifactKind;
|
|
1390
|
+
private assertImportedGovernanceCurrent;
|
|
1391
|
+
private latestGovernanceObservation;
|
|
1392
|
+
private selectedGovernanceSnapshot;
|
|
772
1393
|
private recordedRequirementsInput;
|
|
773
1394
|
private outputTemplate;
|
|
774
1395
|
private requirementsTemplateFromIntake;
|
|
775
1396
|
private renderInputValue;
|
|
776
1397
|
private completedNodeIds;
|
|
777
1398
|
private lockedWorkflowEngine;
|
|
1399
|
+
private taskLimits;
|
|
778
1400
|
private route;
|
|
779
1401
|
private gateApproved;
|
|
780
1402
|
private reviewBlockers;
|
|
@@ -783,15 +1405,34 @@ export declare class ApexService {
|
|
|
783
1405
|
private openReviewFindings;
|
|
784
1406
|
private validateOutput;
|
|
785
1407
|
private validateBundle;
|
|
1408
|
+
private hasRequiredNativePolicyEvidence;
|
|
1409
|
+
private policyResultsMatchMappings;
|
|
1410
|
+
private referenceGovernanceNeedsRefresh;
|
|
1411
|
+
private policyMapNeedsRefresh;
|
|
1412
|
+
private refreshedPolicyMap;
|
|
1413
|
+
private enforcingGovernanceFindings;
|
|
1414
|
+
private governanceFindingsSummary;
|
|
1415
|
+
private governanceFindingsFor;
|
|
1416
|
+
private policyMappingKey;
|
|
1417
|
+
private completePolicyMap;
|
|
1418
|
+
private assertPolicyMapCoverage;
|
|
1419
|
+
private policyMapCoverageIssues;
|
|
1420
|
+
private policyValidationInput;
|
|
1421
|
+
private hasBoundResourceParity;
|
|
1422
|
+
private storageDiagnosticsTargets;
|
|
1423
|
+
private hasBoundStorageRouting;
|
|
1424
|
+
private hasBoundStorageDiagnostics;
|
|
1425
|
+
private storageSecurityBindings;
|
|
786
1426
|
private validateTaskValidators;
|
|
787
1427
|
private qualityValidatorContext;
|
|
788
1428
|
private validateGateValidators;
|
|
1429
|
+
private nativeBicepManagedResources;
|
|
1430
|
+
private managedPreviewResources;
|
|
789
1431
|
private validatePreviewValidators;
|
|
790
1432
|
private validateDeployValidators;
|
|
791
1433
|
private deployValidatorIds;
|
|
792
1434
|
private validateInventoryValidators;
|
|
793
1435
|
private ensureTerminalCompletion;
|
|
794
|
-
private legacyPlanOutputs;
|
|
795
1436
|
private readTask;
|
|
796
1437
|
private refreshTaskHead;
|
|
797
1438
|
private assertNoSymlinkPath;
|
|
@@ -800,21 +1441,25 @@ export declare class ApexService {
|
|
|
800
1441
|
private looksLikeBinding;
|
|
801
1442
|
private looksLikeEnvironmentInputs;
|
|
802
1443
|
private assertValid;
|
|
1444
|
+
private contractIssues;
|
|
803
1445
|
private invalidDateTimes;
|
|
804
1446
|
private improvements;
|
|
805
1447
|
private latestRun;
|
|
806
1448
|
private customizationSelection;
|
|
807
1449
|
private assertCleanInitialization;
|
|
808
1450
|
private createRuntimeLock;
|
|
1451
|
+
private installRuntimeGeneration;
|
|
1452
|
+
private bundledGovernanceReference;
|
|
1453
|
+
private bundledToolchainMinimums;
|
|
1454
|
+
private hostToolVersion;
|
|
1455
|
+
private hostChecks;
|
|
1456
|
+
private pluginSettingsCheck;
|
|
1457
|
+
private runtimeRootForRun;
|
|
809
1458
|
private capabilityPacks;
|
|
810
1459
|
private runtimeLockChecks;
|
|
811
1460
|
private ensureLocalGitBoundary;
|
|
812
1461
|
private ensureWorkspaceRuntime;
|
|
813
1462
|
private ensureWorkspaceGitRepository;
|
|
814
|
-
private profilePaths;
|
|
815
|
-
private ensureProfileRoot;
|
|
816
|
-
private readProfileReceipt;
|
|
817
|
-
private readProfileOptional;
|
|
818
1463
|
private localGitBoundaryCheck;
|
|
819
1464
|
private managedFileChecks;
|
|
820
1465
|
private evidenceStore;
|