@zaip-ai/cli 6.3.0 → 7.5.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 +10 -0
- package/dist/commands/init.d.ts +1 -0
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +16 -3
- package/dist/commands/init.js.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/services/adapter-codex-config.d.ts +3 -0
- package/dist/services/adapter-codex-config.d.ts.map +1 -0
- package/dist/services/adapter-codex-config.js +119 -0
- package/dist/services/adapter-codex-config.js.map +1 -0
- package/dist/services/adapter-config-overlay.d.ts +8 -0
- package/dist/services/adapter-config-overlay.d.ts.map +1 -0
- package/dist/services/adapter-config-overlay.js +17 -0
- package/dist/services/adapter-config-overlay.js.map +1 -0
- package/dist/services/adapters.d.ts +3 -2
- package/dist/services/adapters.d.ts.map +1 -1
- package/dist/services/adapters.js +34 -143
- package/dist/services/adapters.js.map +1 -1
- package/dist/services/adapters.test.js +12 -0
- package/dist/services/adapters.test.js.map +1 -1
- package/dist/services/agent-adapters.d.ts +2 -98
- package/dist/services/agent-adapters.d.ts.map +1 -1
- package/dist/services/agent-adapters.js +30 -29
- package/dist/services/agent-adapters.js.map +1 -1
- package/dist/services/agent-adapters.test.js +4 -2
- package/dist/services/agent-adapters.test.js.map +1 -1
- package/dist/services/agent-guidance-types.d.ts +98 -0
- package/dist/services/agent-guidance-types.d.ts.map +1 -0
- package/dist/services/agent-guidance-types.js +4 -0
- package/dist/services/agent-guidance-types.js.map +1 -0
- package/dist/services/catalog-toml.d.ts +4 -0
- package/dist/services/catalog-toml.d.ts.map +1 -0
- package/dist/services/catalog-toml.js +10 -0
- package/dist/services/catalog-toml.js.map +1 -0
- package/dist/services/catalog-write-scope.d.ts +4 -0
- package/dist/services/catalog-write-scope.d.ts.map +1 -0
- package/dist/services/catalog-write-scope.js +18 -0
- package/dist/services/catalog-write-scope.js.map +1 -0
- package/dist/services/claude-settings-overlay.d.ts +4 -0
- package/dist/services/claude-settings-overlay.d.ts.map +1 -0
- package/dist/services/claude-settings-overlay.js +58 -0
- package/dist/services/claude-settings-overlay.js.map +1 -0
- package/dist/services/client-selection.d.ts +17 -0
- package/dist/services/client-selection.d.ts.map +1 -0
- package/dist/services/client-selection.js +67 -0
- package/dist/services/client-selection.js.map +1 -0
- package/dist/services/codex-conversation-lifecycle-hook.d.ts.map +1 -1
- package/dist/services/codex-conversation-lifecycle-hook.js +20 -9
- package/dist/services/codex-conversation-lifecycle-hook.js.map +1 -1
- package/dist/services/codex-git-publication-template.d.ts +2 -0
- package/dist/services/codex-git-publication-template.d.ts.map +1 -0
- package/dist/services/codex-git-publication-template.js +120 -0
- package/dist/services/codex-git-publication-template.js.map +1 -0
- package/dist/services/codex-github-setup-template.d.ts +3 -0
- package/dist/services/codex-github-setup-template.d.ts.map +1 -0
- package/dist/services/codex-github-setup-template.js +176 -0
- package/dist/services/codex-github-setup-template.js.map +1 -0
- package/dist/services/codex-hook-activation.d.ts +1 -1
- package/dist/services/codex-hook-activation.d.ts.map +1 -1
- package/dist/services/codex-hook-activation.js +55 -10
- package/dist/services/codex-hook-activation.js.map +1 -1
- package/dist/services/codex-host-diagnostic.d.ts +10 -0
- package/dist/services/codex-host-diagnostic.d.ts.map +1 -0
- package/dist/services/codex-host-diagnostic.js +5 -0
- package/dist/services/codex-host-diagnostic.js.map +1 -0
- package/dist/services/codex-host-diagnostic.test.d.ts +2 -0
- package/dist/services/codex-host-diagnostic.test.d.ts.map +1 -0
- package/dist/services/codex-host-diagnostic.test.js +24 -0
- package/dist/services/codex-host-diagnostic.test.js.map +1 -0
- package/dist/services/codex-literal-read-sequence-template.d.ts.map +1 -1
- package/dist/services/codex-literal-read-sequence-template.js +97 -6
- package/dist/services/codex-literal-read-sequence-template.js.map +1 -1
- package/dist/services/codex-native-authority-policy-template.d.ts +2 -0
- package/dist/services/codex-native-authority-policy-template.d.ts.map +1 -0
- package/dist/services/codex-native-authority-policy-template.js +132 -0
- package/dist/services/codex-native-authority-policy-template.js.map +1 -0
- package/dist/services/codex-native-tool-authority-template.d.ts.map +1 -1
- package/dist/services/codex-native-tool-authority-template.js +147 -145
- package/dist/services/codex-native-tool-authority-template.js.map +1 -1
- package/dist/services/codex-node-options-template.d.ts +3 -0
- package/dist/services/codex-node-options-template.d.ts.map +1 -0
- package/dist/services/codex-node-options-template.js +30 -0
- package/dist/services/codex-node-options-template.js.map +1 -0
- package/dist/services/codex-pre-tool-cli-capture-template.d.ts.map +1 -1
- package/dist/services/codex-pre-tool-cli-capture-template.js +214 -10
- package/dist/services/codex-pre-tool-cli-capture-template.js.map +1 -1
- package/dist/services/codex-pre-tool-cloud-template.d.ts.map +1 -1
- package/dist/services/codex-pre-tool-cloud-template.js +149 -12
- package/dist/services/codex-pre-tool-cloud-template.js.map +1 -1
- package/dist/services/codex-pre-tool-dependencies.test-support.d.ts.map +1 -1
- package/dist/services/codex-pre-tool-dependencies.test-support.js +12 -0
- package/dist/services/codex-pre-tool-dependencies.test-support.js.map +1 -1
- package/dist/services/codex-pre-tool-hook-template.d.ts.map +1 -1
- package/dist/services/codex-pre-tool-hook-template.js +53 -138
- package/dist/services/codex-pre-tool-hook-template.js.map +1 -1
- package/dist/services/codex-pre-tool-hook-template.test.js +13 -7
- package/dist/services/codex-pre-tool-hook-template.test.js.map +1 -1
- package/dist/services/codex-pre-tool-host-context-template.d.ts.map +1 -1
- package/dist/services/codex-pre-tool-host-context-template.js +23 -0
- package/dist/services/codex-pre-tool-host-context-template.js.map +1 -1
- package/dist/services/codex-pre-tool-policy-template.d.ts.map +1 -1
- package/dist/services/codex-pre-tool-policy-template.js +5 -3
- package/dist/services/codex-pre-tool-policy-template.js.map +1 -1
- package/dist/services/codex-pre-tool-release-review-template.d.ts.map +1 -1
- package/dist/services/codex-pre-tool-release-review-template.js +161 -2
- package/dist/services/codex-pre-tool-release-review-template.js.map +1 -1
- package/dist/services/codex-pre-tool-support-template.d.ts.map +1 -1
- package/dist/services/codex-pre-tool-support-template.js +88 -129
- package/dist/services/codex-pre-tool-support-template.js.map +1 -1
- package/dist/services/codex-release-publication-template.d.ts +2 -0
- package/dist/services/codex-release-publication-template.d.ts.map +1 -0
- package/dist/services/codex-release-publication-template.js +127 -0
- package/dist/services/codex-release-publication-template.js.map +1 -0
- package/dist/services/codex-repository-profile-template.d.ts +2 -0
- package/dist/services/codex-repository-profile-template.d.ts.map +1 -0
- package/dist/services/codex-repository-profile-template.js +84 -0
- package/dist/services/codex-repository-profile-template.js.map +1 -0
- package/dist/services/codex-rules.d.ts +1 -1
- package/dist/services/codex-rules.d.ts.map +1 -1
- package/dist/services/codex-rules.js +2 -2
- package/dist/services/codex-storage-handoff-template.d.ts +2 -0
- package/dist/services/codex-storage-handoff-template.d.ts.map +1 -0
- package/dist/services/codex-storage-handoff-template.js +18 -0
- package/dist/services/codex-storage-handoff-template.js.map +1 -0
- package/dist/services/codex-subagent-hook-template.d.ts +1 -1
- package/dist/services/codex-subagent-hook-template.d.ts.map +1 -1
- package/dist/services/codex-subagent-hook-template.js +7 -6
- package/dist/services/codex-subagent-hook-template.js.map +1 -1
- package/dist/services/codex-task-delivery-authority-template.d.ts +3 -0
- package/dist/services/codex-task-delivery-authority-template.d.ts.map +1 -0
- package/dist/services/codex-task-delivery-authority-template.js +206 -0
- package/dist/services/codex-task-delivery-authority-template.js.map +1 -0
- package/dist/services/codex-validation-runtime-template.js +1 -1
- package/dist/services/codex-windows-hook-command.js +2 -2
- package/dist/services/codex-windows-hook-command.js.map +1 -1
- package/dist/services/developer-identity-fixture.d.ts.map +1 -1
- package/dist/services/developer-identity-fixture.js +3 -2
- package/dist/services/developer-identity-fixture.js.map +1 -1
- package/dist/services/doctor.d.ts.map +1 -1
- package/dist/services/doctor.js +5 -1
- package/dist/services/doctor.js.map +1 -1
- package/dist/services/github-setup-status.d.ts +6 -3
- package/dist/services/github-setup-status.d.ts.map +1 -1
- package/dist/services/github-setup-status.js +9 -5
- package/dist/services/github-setup-status.js.map +1 -1
- package/dist/services/github-setup-status.test.js +69 -3
- package/dist/services/github-setup-status.test.js.map +1 -1
- package/dist/services/global-codex-config.d.ts.map +1 -1
- package/dist/services/global-codex-config.js +3 -0
- package/dist/services/global-codex-config.js.map +1 -1
- package/dist/services/global-codex-project-trust.d.ts +17 -0
- package/dist/services/global-codex-project-trust.d.ts.map +1 -0
- package/dist/services/global-codex-project-trust.js +186 -0
- package/dist/services/global-codex-project-trust.js.map +1 -0
- package/dist/services/global-codex-project-trust.test.d.ts +2 -0
- package/dist/services/global-codex-project-trust.test.d.ts.map +1 -0
- package/dist/services/global-codex-project-trust.test.js +188 -0
- package/dist/services/global-codex-project-trust.test.js.map +1 -0
- package/dist/services/install-agents-template.d.ts.map +1 -1
- package/dist/services/install-agents-template.js +95 -190
- package/dist/services/install-agents-template.js.map +1 -1
- package/dist/services/install-client-selection.d.ts +6 -0
- package/dist/services/install-client-selection.d.ts.map +1 -0
- package/dist/services/install-client-selection.js +24 -0
- package/dist/services/install-client-selection.js.map +1 -0
- package/dist/services/install-result.d.ts +6 -0
- package/dist/services/install-result.d.ts.map +1 -0
- package/dist/services/install-result.js +14 -0
- package/dist/services/install-result.js.map +1 -0
- package/dist/services/install-storage-boundary.d.ts +6 -0
- package/dist/services/install-storage-boundary.d.ts.map +1 -0
- package/dist/services/install-storage-boundary.js +173 -0
- package/dist/services/install-storage-boundary.js.map +1 -0
- package/dist/services/install-storage-boundary.test.d.ts +2 -0
- package/dist/services/install-storage-boundary.test.d.ts.map +1 -0
- package/dist/services/install-storage-boundary.test.js +110 -0
- package/dist/services/install-storage-boundary.test.js.map +1 -0
- package/dist/services/install-template-backup.d.ts +3 -0
- package/dist/services/install-template-backup.d.ts.map +1 -0
- package/dist/services/install-template-backup.js +46 -0
- package/dist/services/install-template-backup.js.map +1 -0
- package/dist/services/install-template-lock.d.ts +2 -0
- package/dist/services/install-template-lock.d.ts.map +1 -0
- package/dist/services/install-template-lock.js +32 -0
- package/dist/services/install-template-lock.js.map +1 -0
- package/dist/services/install-template-policy.d.ts +16 -0
- package/dist/services/install-template-policy.d.ts.map +1 -1
- package/dist/services/install-template-policy.js +73 -1
- package/dist/services/install-template-policy.js.map +1 -1
- package/dist/services/install-template-render.d.ts +11 -0
- package/dist/services/install-template-render.d.ts.map +1 -0
- package/dist/services/install-template-render.js +53 -0
- package/dist/services/install-template-render.js.map +1 -0
- package/dist/services/install-template-rule-files.d.ts +3 -0
- package/dist/services/install-template-rule-files.d.ts.map +1 -0
- package/dist/services/install-template-rule-files.js +24 -0
- package/dist/services/install-template-rule-files.js.map +1 -0
- package/dist/services/logger.d.ts.map +1 -1
- package/dist/services/logger.js +35 -10
- package/dist/services/logger.js.map +1 -1
- package/dist/services/logger.test.js +65 -16
- package/dist/services/logger.test.js.map +1 -1
- package/dist/services/project-config-upgrade.d.ts +3 -0
- package/dist/services/project-config-upgrade.d.ts.map +1 -0
- package/dist/services/project-config-upgrade.js +58 -0
- package/dist/services/project-config-upgrade.js.map +1 -0
- package/dist/services/runtime-template-deploy-policy.test.d.ts +2 -0
- package/dist/services/runtime-template-deploy-policy.test.d.ts.map +1 -0
- package/dist/services/runtime-template-deploy-policy.test.js +26 -0
- package/dist/services/runtime-template-deploy-policy.test.js.map +1 -0
- package/dist/services/runtime-template-test-support.d.ts +14 -0
- package/dist/services/runtime-template-test-support.d.ts.map +1 -1
- package/dist/services/runtime-template-test-support.js +18 -0
- package/dist/services/runtime-template-test-support.js.map +1 -1
- package/dist/services/runtime-template.test.js +14 -63
- package/dist/services/runtime-template.test.js.map +1 -1
- package/dist/services/sqlite-bootstrap.js +2 -2
- package/dist/services/sqlite-bootstrap.js.map +1 -1
- package/dist/services/stack-node.js +2 -2
- package/dist/services/stack-node.js.map +1 -1
- package/dist/services/stack-terraform.d.ts.map +1 -1
- package/dist/services/stack-terraform.js +5 -5
- package/dist/services/stack-terraform.js.map +1 -1
- package/dist/services/template-packed-path.test.d.ts +2 -0
- package/dist/services/template-packed-path.test.d.ts.map +1 -0
- package/dist/services/template-packed-path.test.js +30 -0
- package/dist/services/template-packed-path.test.js.map +1 -0
- package/dist/types.d.ts +8 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +2 -1
- package/templates/.agents/README-ENG.md +3 -1
- package/templates/.agents/README.md +3 -1
- package/templates/.agents/architecture/software-architecture.md +7 -1
- package/templates/.agents/config/agents/catalog.yaml +25 -12
- package/templates/.agents/config/agents/discovery.json +2 -2
- package/templates/.agents/config/autonomous-cloud-inputs.json +3 -3
- package/templates/.agents/config/clients/codex/agents/zaip-agent-analyst.toml +4 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-auditor.toml +1 -1
- package/templates/.agents/config/clients/codex/agents/zaip-agent-backend.toml +6 -4
- package/templates/.agents/config/clients/codex/agents/zaip-agent-brand-strategist.toml +3 -1
- package/templates/.agents/config/clients/codex/agents/zaip-agent-builder.toml +6 -4
- package/templates/.agents/config/clients/codex/agents/zaip-agent-cloud-engineer.toml +5 -3
- package/templates/.agents/config/clients/codex/agents/zaip-agent-data-analyst.toml +3 -1
- package/templates/.agents/config/clients/codex/agents/zaip-agent-designer.toml +7 -4
- package/templates/.agents/config/clients/codex/agents/zaip-agent-finalizer.toml +1 -1
- package/templates/.agents/config/clients/codex/agents/zaip-agent-frontend.toml +9 -6
- package/templates/.agents/config/clients/codex/agents/zaip-agent-general-operations.toml +3 -1
- package/templates/.agents/config/clients/codex/agents/zaip-agent-governance-compliance.toml +3 -1
- package/templates/.agents/config/clients/codex/agents/zaip-agent-growth-strategist.toml +3 -1
- package/templates/.agents/config/clients/codex/agents/zaip-agent-integrator.toml +1 -1
- package/templates/.agents/config/clients/codex/agents/zaip-agent-marketing-analyst.toml +5 -3
- package/templates/.agents/config/clients/codex/agents/zaip-agent-orchestrator.toml +4 -4
- package/templates/.agents/config/clients/codex/agents/zaip-agent-refactoring-specialist.toml +3 -1
- package/templates/.agents/config/clients/codex/agents/zaip-agent-reviewer.toml +3 -3
- package/templates/.agents/config/clients/codex/agents/zaip-agent-sales-specialist.toml +3 -1
- package/templates/.agents/config/clients/codex/agents/zaip-agent-security-auditor.toml +1 -1
- package/templates/.agents/config/clients/codex/agents/zaip-agent-task-executor.toml +6 -3
- package/templates/.agents/config/clients/codex/agents/zaip-agent-website-developer.toml +7 -4
- package/templates/.agents/config/clients/codex/agents/zaip-agent-writer.toml +3 -1
- package/templates/.agents/config/project.yaml +7 -2
- package/templates/.agents/dashboard/.zaip-managed.json +282 -142
- package/templates/.agents/dashboard/apps/frontend/dist/assets/CostCalculationGuidePage-DZ2mnR6k.js +1 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{DashboardHelpDialog-BQOQCvcJ.js → DashboardHelpDialog-DnxpHJSo.js} +20 -10
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{PricingSettingsDialog-CGET1J8Q.js → PricingSettingsDialog-DsFTUwhL.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/ProjectSettingsPage-BCsdQtWG.js +3 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{TraceabilityWorkspace-Bw6xnXUN.js → TraceabilityWorkspace-BN8FwP5S.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{cost-monitor-C2AFYBu_.css → cost-monitor-BESDS3aE.css} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-YfoKMzCQ.js +59 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{dashboard-localization-BZf8HWmm.js → dashboard-localization-BVBhiAAS.js} +3 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{icons-vendor-CjGGux6h.js → icons-vendor-DSdQAua1.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/index-4cl5FQBn.css +1 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/index-uIVtG2ZR.js +2 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{react-vendor-B9jZSAKf.js → react-vendor-rGvJzdn5.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{traceability-DFpwb0TN.js → traceability-Boz50W9b.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/index.html +8 -7
- package/templates/.agents/dashboard/apps/frontend/index.html +1 -0
- package/templates/.agents/dashboard/apps/frontend/package.json +1 -1
- package/templates/.agents/dashboard/apps/frontend/playwright.dom.config.ts +2 -2
- package/templates/.agents/dashboard/apps/frontend/src/AppLoadingPanels.tsx +10 -7
- package/templates/.agents/dashboard/apps/frontend/src/AppOverlays.tsx +22 -19
- package/templates/.agents/dashboard/apps/frontend/src/CostCalculationGuidePage.tsx +16 -117
- package/templates/.agents/dashboard/apps/frontend/src/CostCharts.percentages.test.tsx +75 -0
- package/templates/.agents/dashboard/apps/frontend/src/CostTelemetryGuide.tsx +36 -0
- package/templates/.agents/dashboard/apps/frontend/src/DashboardToast.tsx +9 -0
- package/templates/.agents/dashboard/apps/frontend/src/ProjectSettingsPage.dom.test.ts +1 -1
- package/templates/.agents/dashboard/apps/frontend/src/ProjectStackEditor.tsx +1 -0
- package/templates/.agents/dashboard/apps/frontend/src/ReconciliationFeedback.dom.test.ts +1 -1
- package/templates/.agents/dashboard/apps/frontend/src/ReconciliationFeedback.tsx +22 -19
- package/templates/.agents/dashboard/apps/frontend/src/TraceabilityWorkspace.dom.e2e.ts +5 -2
- package/templates/.agents/dashboard/apps/frontend/src/WorkspaceStatus.dom.test.ts +86 -0
- package/templates/.agents/dashboard/apps/frontend/src/WorkspaceStatus.test.tsx +44 -0
- package/templates/.agents/dashboard/apps/frontend/src/WorkspaceStatus.tsx +37 -12
- package/templates/.agents/dashboard/apps/frontend/src/cost-guide-calculations.ts +118 -0
- package/templates/.agents/dashboard/apps/frontend/src/dashboard-api-sqlite-view.ts +3 -0
- package/templates/.agents/dashboard/apps/frontend/src/dashboard-api.ts +15 -31
- package/templates/.agents/dashboard/apps/frontend/src/dashboard-http-transport.ts +30 -0
- package/templates/.agents/dashboard/apps/frontend/src/dashboard-runtime-status.ts +4 -1
- package/templates/.agents/dashboard/apps/frontend/src/main.tsx +1 -0
- package/templates/.agents/dashboard/apps/frontend/src/project-settings-model.ts +2 -0
- package/templates/.agents/dashboard/apps/frontend/src/project-settings.test.ts +17 -0
- package/templates/.agents/dashboard/apps/frontend/src/snapshot-coherence.test.ts +0 -20
- package/templates/.agents/dashboard/apps/frontend/src/snapshot-observer.test.ts +112 -0
- package/templates/.agents/dashboard/apps/frontend/src/snapshot-observer.ts +147 -0
- package/templates/.agents/dashboard/apps/frontend/src/sqlite-compact-cost-adapter.ts +100 -0
- package/templates/.agents/dashboard/apps/frontend/src/sqlite-page-export.test.ts +20 -0
- package/templates/.agents/dashboard/apps/frontend/src/sqlite-page-export.ts +15 -0
- package/templates/.agents/dashboard/apps/frontend/src/styles-pricing.css +265 -0
- package/templates/.agents/dashboard/apps/frontend/src/styles.css +21 -265
- package/templates/.agents/dashboard/apps/frontend/src/use-app-cost-loaders.test.ts +35 -0
- package/templates/.agents/dashboard/apps/frontend/src/use-app-cost-loaders.ts +11 -87
- package/templates/.agents/dashboard/apps/frontend/src/use-app-effects.ts +26 -199
- package/templates/.agents/dashboard/apps/frontend/src/use-app-trace-documents.navigation.test.tsx +1 -1
- package/templates/.agents/dashboard/apps/frontend/src/use-app-work-board.test.ts +65 -0
- package/templates/.agents/dashboard/apps/frontend/src/use-app-work-board.ts +17 -1
- package/templates/.agents/dashboard/apps/frontend/src/use-dashboard-app-model.tsx +2 -2
- package/templates/.agents/dashboard/apps/frontend/src/use-operations-detail-export.ts +10 -0
- package/templates/.agents/dashboard/apps/frontend/src/use-runtime-status.dom.test.ts +86 -0
- package/templates/.agents/dashboard/apps/frontend/src/use-runtime-status.ts +4 -5
- package/templates/.agents/dashboard/apps/frontend/src/workspace-status.css +42 -0
- package/templates/.agents/dashboard/apps/frontend/vite.config.ts +1 -1
- package/templates/.agents/dashboard/modules/cost-monitor/package.json +1 -1
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CompactLifecycleCostTable.test.ts +11 -10
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CompactLifecycleCostTable.tsx +39 -15
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostCharts.test.ts +27 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostCharts.tsx +89 -83
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostGroupsTable.tsx +14 -24
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorPage.test.ts +1 -27
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorPage.tsx +12 -63
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTables.availability.test.ts +60 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTables.test.ts +1 -15
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/compact-cost-export-source.ts +85 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/compact-cost-page-range.test.ts +34 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-chart-presentation.ts +74 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-charts.css +117 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-group-table-totals.ts +29 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-monitor-export-sources.ts +19 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-monitor-page-state.ts +27 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-monitor.css +6 -117
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/use-cost-group-page.ts +3 -1
- package/templates/.agents/dashboard/modules/cost-monitor/src/server/build-cost-summary-projection.ts +9 -32
- package/templates/.agents/dashboard/modules/cost-monitor/src/server/cost-summary-metrics.ts +33 -0
- package/templates/.agents/dashboard/modules/operations/package.json +1 -1
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsLocaleMenu.tsx +58 -0
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverviewTopPanel.navigation.test.tsx +1 -1
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsPage.tsx +16 -47
- package/templates/.agents/dashboard/modules/operations/src/react/UnifiedWorkBoard.navigation.test.ts +1 -1
- package/templates/.agents/dashboard/modules/operations/src/react/export/ExcelExportAction.test.ts +4 -100
- package/templates/.agents/dashboard/modules/operations/src/react/export/ExcelExportAction.tsx +25 -89
- package/templates/.agents/dashboard/modules/operations/src/react/export/ExcelExportColumns.ts +1 -0
- package/templates/.agents/dashboard/modules/operations/src/react/export/ExcelExportDuration.test.ts +105 -0
- package/templates/.agents/dashboard/modules/operations/src/react/export/export-duration-rows.ts +91 -0
- package/templates/.agents/dashboard/modules/operations/src/react/operations-page-contract.ts +4 -0
- package/templates/.agents/dashboard/modules/traceability/package.json +1 -1
- package/templates/.agents/dashboard/packages/branding/package.json +1 -1
- package/templates/.agents/dashboard/packages/contracts/package.json +2 -2
- package/templates/.agents/dashboard/packages/contracts/src/export.ts +2 -0
- package/templates/.agents/dashboard/packages/data-export/package.json +1 -1
- package/templates/.agents/dashboard/packages/data-export/src/index.test.ts +30 -0
- package/templates/.agents/dashboard/packages/data-export/src/index.ts +10 -0
- package/templates/.agents/dashboard/packages/data-export/src/ooxml-stream.ts +50 -3
- package/templates/.agents/dashboard/packages/local-runtime/DIAGNOSTICS.md +2 -1
- package/templates/.agents/dashboard/packages/local-runtime/dashboard-build-fingerprint.mjs +1 -1
- package/templates/.agents/dashboard/packages/local-runtime/dashboard-diagnostics.mjs +4 -2
- package/templates/.agents/dashboard/packages/local-runtime/dashboard-diagnostics.test.mjs +1 -1
- package/templates/.agents/dashboard/packages/local-runtime/dist/server.cjs +314 -269
- package/templates/.agents/dashboard/packages/local-runtime/dist/sqlite-read-model.cjs +266 -222
- package/templates/.agents/dashboard/packages/local-runtime/package.json +3 -3
- package/templates/.agents/dashboard/packages/local-runtime/scripts/verify-dashboard-executable-startup.mjs +4 -1
- package/templates/.agents/dashboard/packages/local-runtime/scripts/verify-dashboard-reconciliation-executable.mjs +4 -4
- package/templates/.agents/dashboard/packages/local-runtime/server.mjs +314 -269
- package/templates/.agents/dashboard/packages/local-runtime/src/active-codex-telemetry.test.ts +51 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/active-codex-telemetry.ts +15 -1
- package/templates/.agents/dashboard/packages/local-runtime/src/dashboard-diagnostics.test.ts +1 -1
- package/templates/.agents/dashboard/packages/local-runtime/src/project-settings.ts +3 -40
- package/templates/.agents/dashboard/packages/local-runtime/src/project-stack-labels.ts +40 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/retained-worktree-capture.ts +81 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-board.ts +11 -2
- package/templates/.agents/dashboard/packages/local-runtime/src/server-hono-security.test.ts +40 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-operations-routes.ts +33 -14
- package/templates/.agents/dashboard/packages/local-runtime/src/server-project-settings-routes.test.ts +83 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-project-settings-routes.ts +41 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-projections.ts +3 -19
- package/templates/.agents/dashboard/packages/local-runtime/src/server-reconciliation-diagnostics.test.ts +2 -2
- package/templates/.agents/dashboard/packages/local-runtime/src/server-reconciliation-refresh.test.ts +61 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-reconciliation-route.ts +2 -2
- package/templates/.agents/dashboard/packages/local-runtime/src/server-run-range.ts +18 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot-refresh.ts +3 -36
- package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot-worker-receipt.ts +38 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-work-priority-route.ts +18 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-workspace.ts +1 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server.ts +6 -32
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-summary-rollup.ts +47 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-financial-consistency.test.ts +133 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-financial-entity-page.ts +159 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-incremental-refresh.test.ts +12 -2
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-operations-work-list.ts +17 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-query-operation-pages.ts +71 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-query-summary.ts +5 -40
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-query-temporal-dimension.ts +29 -7
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-query-view-page.ts +7 -55
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-counts-every-root-execution-day-returns.test.ts +16 -24
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-counts-fixture.test-support.ts +27 -5
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-filesystem.ts +20 -37
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-keeps-orphan-telemetry-out-kanban-without.test.ts +9 -9
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-marks-token-cost-telemetry-unavailable-when.test.ts +3 -3
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-multi-provider.test.ts +14 -20
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-rebuilds-disposable-snapshot-serves-zaip-records.test.ts +11 -1
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-schema.ts +1 -1
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-work-financial-summary.ts +38 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/telemetry-reconciliation.integration.test.ts +223 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/work-priority-contract.test.ts +5 -5
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-launch-page.test.mjs +59 -3
- package/templates/.agents/dashboard/packages/ui/package.json +1 -1
- package/templates/.agents/dashboard/packages/windows-launcher/Program.cs +1 -1
- package/templates/.agents/dashboard/packages/windows-launcher/build-dashboard-launcher.ps1 +1 -1
- package/templates/.agents/dashboard/tests/e2e/package.json +1 -1
- package/templates/.agents/dashboard/tests/e2e/playwright.config.ts +1 -0
- package/templates/.agents/dashboard/tests/e2e/specs/dashboard.spec.ts +11 -15
- package/templates/.agents/dashboard/tests/e2e/specs/work-board-hydration.ts +40 -11
- package/templates/.agents/dashboard/zaip-dashboard-windows.exe +0 -0
- package/templates/.agents/design/.zaip-managed.json +498 -54
- package/templates/.agents/design/apps/catalog/dist/assets/index-BH6Fxbj0.css +1 -0
- package/templates/.agents/design/apps/catalog/dist/assets/index-BK0aBll9.css +1 -0
- package/templates/.agents/design/apps/catalog/dist/assets/index-Bzhb1wb_.js +76 -0
- package/templates/.agents/design/apps/catalog/dist/assets/index-CB-MTaWq.js +76 -0
- package/templates/.agents/design/apps/catalog/dist/assets/index-CIqfUcy8.js +76 -0
- package/templates/.agents/design/apps/catalog/dist/assets/index-Ccq-NOLA.js +76 -0
- package/templates/.agents/design/apps/catalog/dist/assets/index-Ch2eyD9C.js +76 -0
- package/templates/.agents/design/apps/catalog/dist/assets/index-Cy64ytQr.js +67 -0
- package/templates/.agents/design/apps/catalog/dist/assets/index-DfxEbFlq.js +76 -0
- package/templates/.agents/design/apps/catalog/dist/assets/index-Dqt6mTvD.js +76 -0
- package/templates/.agents/design/apps/catalog/dist/assets/index-rz8gOc0a.js +76 -0
- package/templates/.agents/design/apps/catalog/dist/index.html +2 -2
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/{CatalogShell-BJ8b4xZr.js → CatalogShell-D2YyQQrT.js} +1 -1
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/{Color-6AOWCN3U-CQLHzznn.js → Color-6AOWCN3U-BmCuNXMg.js} +1 -1
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/Components.stories-DF9KC_gA.js +158 -0
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/DashboardFilters.stories-D17Q1egS.js +5 -0
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/DashboardFiltersSpecimen-CEBrLT2k.js +1 -0
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/{DesignSystem.stories-ED52wFjY.js → DesignSystem.stories-BibuRt_c.js} +1 -1
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/{DocsRenderer-JROSPFPF-BcLgM80v.js → DocsRenderer-JROSPFPF-GkfL8_gG.js} +4 -4
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/Maker.stories-Dv9Keun_.js +13 -0
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/MakerSpecimen-DGwAKRi9.css +1 -0
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/MakerSpecimen-mkkuFOp_.js +5 -0
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/{Primitives-DV6Bpudf.js → Primitives-n1UqmNvo.js} +1 -1
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/ReconciliationSpecimen-BJnfyyG3.js +1 -0
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/ReconciliationSpecimen.stories-CH-GF9Rk.js +13 -0
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/{WithTooltip-7X4HQR7L-BKNiAz_E.js → WithTooltip-7X4HQR7L-BPXo6OoG.js} +1 -1
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/{WorkspaceStatus.stories-BL19HGOo.js → WorkspaceStatus.stories-Cie1f_yU.js} +1 -1
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/WorkspaceStatusSpecimen-GcYWBBSp.js +1 -0
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/{chunk-DRQKCCAG-DZBcXL-p.js → chunk-DRQKCCAG-Cn4_bvJJ.js} +1 -1
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/{chunk-W22LQPXL-CF3y2mfo.js → chunk-W22LQPXL-CQrULeB4.js} +1 -1
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/{components-BVjxMRGq.js → components-uiaDZHE7.js} +5 -5
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/formatter-L2YTDE3Q-DfjRffT7.js +1 -0
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/{iframe-CTWGZcEe.js → iframe-BgEb-d5o.js} +4 -4
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/iframe-D1JaPXfV.css +1 -0
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/{react-18-B9_a4mHb.js → react-18-BZ-Ne01c.js} +1 -1
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/react-CwpjKEyW.js +1 -0
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/{syntaxhighlighter-YFXUGROL-F_p8E2xc.js → syntaxhighlighter-YFXUGROL-BvuP8St2.js} +1 -1
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/{theming-fbSD9ZLF.js → theming-BGScn6Yf.js} +1 -1
- package/templates/.agents/design/apps/catalog/dist/storybook/iframe.html +2 -2
- package/templates/.agents/design/apps/catalog/dist/storybook/index.json +1 -1
- package/templates/.agents/design/apps/catalog/dist/storybook/sb-addons/a11y-2/manager-bundle.js +3 -3
- package/templates/.agents/design/apps/catalog/dist/storybook/sb-addons/docs-1/manager-bundle.js +4 -4
- package/templates/.agents/design/apps/catalog/dist/storybook/sb-addons/storybook-core-server-presets-0/common-manager-bundle.js +3 -3
- package/templates/.agents/design/apps/catalog/package.json +2 -2
- package/templates/.agents/design/apps/catalog/src/components/WorkspaceStatusSpecimen.tsx +32 -1
- package/templates/.agents/design/apps/catalog/src/pages/ComponentsPage.tsx +14 -3
- package/templates/.agents/design/apps/catalog/src/specimens/MAKER-HANDOFF.md +134 -0
- package/templates/.agents/design/apps/catalog/src/specimens/MakerSpecimen.test.tsx +143 -0
- package/templates/.agents/design/apps/catalog/src/specimens/MakerSpecimen.tsx +132 -0
- package/templates/.agents/design/apps/catalog/src/specimens/maker-fixtures.d.ts +15 -0
- package/templates/.agents/design/apps/catalog/src/specimens/maker-fixtures.js +86 -0
- package/templates/.agents/design/apps/catalog/src/specimens/maker-native.d.ts +1 -0
- package/templates/.agents/design/apps/catalog/src/specimens/maker-native.js +332 -0
- package/templates/.agents/design/apps/catalog/src/stories/Maker.stories.tsx +24 -0
- package/templates/.agents/design/apps/catalog/src/stories/WorkspaceStatus.stories.tsx +1 -0
- package/templates/.agents/design/apps/catalog/src/styles/maker-specimen.css +285 -0
- package/templates/.agents/design/design-system-maker/API.md +468 -0
- package/templates/.agents/design/design-system-maker/NOTICE.md +13 -0
- package/templates/.agents/design/design-system-maker/README.md +138 -0
- package/templates/.agents/design/design-system-maker/SOURCE-PROVENANCE.json +62 -0
- package/templates/.agents/design/design-system-maker/build.json +524 -0
- package/templates/.agents/design/design-system-maker/frontend/ADAPTATION.md +351 -0
- package/templates/.agents/design/design-system-maker/frontend/MAKER-REPAIR-HANDOFF.md +134 -0
- package/templates/.agents/design/design-system-maker/frontend/advanced/examples.js +30 -0
- package/templates/.agents/design/design-system-maker/frontend/advanced/index.html +75 -0
- package/templates/.agents/design/design-system-maker/frontend/advanced/index.js +30 -0
- package/templates/.agents/design/design-system-maker/frontend/catalog/filters.js +132 -0
- package/templates/.agents/design/design-system-maker/frontend/catalog/index.html +17 -0
- package/templates/.agents/design/design-system-maker/frontend/catalog/index.js +82 -0
- package/templates/.agents/design/design-system-maker/frontend/generate.html +74 -0
- package/templates/.agents/design/design-system-maker/frontend/generate.js +226 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/api.js +112 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/components.js +200 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/diagnostic-view.js +218 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/extraction-state.js +38 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/failure-view.js +54 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/frontend-scenarios-2.test.mjs +138 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/frontend.test.mjs +357 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/job-view.js +81 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/model-hydration.js +26 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/model.js +103 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/palette-evidence.js +106 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/palette-evidence.test.mjs +210 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/palette-view.js +149 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/preview.test.mjs +263 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/report-view.js +267 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/reprocess-dialog.js +192 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/specimens.js +231 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/viewer-actions.js +78 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/viewer-detail.js +121 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/viewer-summary.js +91 -0
- package/templates/.agents/design/design-system-maker/frontend/shared/visual-model.js +255 -0
- package/templates/.agents/design/design-system-maker/frontend/styles/advanced.css +128 -0
- package/templates/.agents/design/design-system-maker/frontend/styles/base.css +318 -0
- package/templates/.agents/design/design-system-maker/frontend/styles/catalog-filters.css +114 -0
- package/templates/.agents/design/design-system-maker/frontend/styles/diagnostic.css +298 -0
- package/templates/.agents/design/design-system-maker/frontend/styles/layout.css +320 -0
- package/templates/.agents/design/design-system-maker/frontend/styles/maker.css +7 -0
- package/templates/.agents/design/design-system-maker/frontend/styles/report.css +173 -0
- package/templates/.agents/design/design-system-maker/frontend/styles/reprocess-dialog.css +34 -0
- package/templates/.agents/design/design-system-maker/frontend/styles/specimen-foundations.css +363 -0
- package/templates/.agents/design/design-system-maker/frontend/styles/specimens.css +59 -0
- package/templates/.agents/design/design-system-maker/frontend/styles/viewer-summary.css +308 -0
- package/templates/.agents/design/design-system-maker/frontend/viewer/diagnostic.html +3 -0
- package/templates/.agents/design/design-system-maker/frontend/viewer/index.html +8 -0
- package/templates/.agents/design/design-system-maker/frontend/viewer/index.js +233 -0
- package/templates/.agents/design/design-system-maker/frontend/viewer/preview.html +3 -0
- package/templates/.agents/design/design-system-maker/frontend/viewer/specimen.js +88 -0
- package/templates/.agents/design/design-system-maker/launcher/Program.cs +117 -0
- package/templates/.agents/design/design-system-maker/runtime/chat-cli.mjs +27 -0
- package/templates/.agents/design/design-system-maker/runtime/chat-client.mjs +170 -0
- package/templates/.agents/design/design-system-maker/runtime/chat-contract.mjs +13 -0
- package/templates/.agents/design/design-system-maker/runtime/collection.mjs +269 -0
- package/templates/.agents/design/design-system-maker/runtime/contracts.mjs +383 -0
- package/templates/.agents/design/design-system-maker/runtime/design-codes.mjs +46 -0
- package/templates/.agents/design/design-system-maker/runtime/design-compose.mjs +118 -0
- package/templates/.agents/design/design-system-maker/runtime/design-markdown.mjs +154 -0
- package/templates/.agents/design/design-system-maker/runtime/import.mjs +137 -0
- package/templates/.agents/design/design-system-maker/runtime/io.mjs +121 -0
- package/templates/.agents/design/design-system-maker/runtime/job-progress.mjs +50 -0
- package/templates/.agents/design/design-system-maker/runtime/json-tokens.mjs +88 -0
- package/templates/.agents/design/design-system-maker/runtime/launch-identity.mjs +100 -0
- package/templates/.agents/design/design-system-maker/runtime/launch-protocol.mjs +88 -0
- package/templates/.agents/design/design-system-maker/runtime/launch-server.mjs +51 -0
- package/templates/.agents/design/design-system-maker/runtime/launch.mjs +107 -0
- package/templates/.agents/design/design-system-maker/runtime/local-actions.mjs +184 -0
- package/templates/.agents/design/design-system-maker/runtime/local-artifacts.mjs +228 -0
- package/templates/.agents/design/design-system-maker/runtime/local-request.mjs +100 -0
- package/templates/.agents/design/design-system-maker/runtime/lock.mjs +23 -0
- package/templates/.agents/design/design-system-maker/runtime/presentation.mjs +107 -0
- package/templates/.agents/design/design-system-maker/runtime/repository-source.mjs +200 -0
- package/templates/.agents/design/design-system-maker/runtime/reprocess-mode.mjs +17 -0
- package/templates/.agents/design/design-system-maker/runtime/request-contracts.mjs +121 -0
- package/templates/.agents/design/design-system-maker/runtime/serve.mjs +53 -0
- package/templates/.agents/design/design-system-maker/runtime/server.mjs +363 -0
- package/templates/.agents/design/design-system-maker/runtime/service-actions.mjs +59 -0
- package/templates/.agents/design/design-system-maker/runtime/service-host.mjs +32 -0
- package/templates/.agents/design/design-system-maker/runtime/service-projections.mjs +87 -0
- package/templates/.agents/design/design-system-maker/runtime/service.mjs +393 -0
- package/templates/.agents/design/design-system-maker/runtime/stop.mjs +38 -0
- package/templates/.agents/design/design-system-maker/runtime/trash.mjs +95 -0
- package/templates/.agents/design/design-system-maker/zaip-design-system-maker.exe +0 -0
- package/templates/.agents/design/packages/local-runtime/package.json +1 -1
- package/templates/.agents/requirements/autonomous-assurance.md +1 -1
- package/templates/.agents/requirements/cloud-hostinger-autonomy.md +9 -7
- package/templates/.agents/requirements/comparative-audit.md +1 -1
- package/templates/.agents/requirements/context-engine.md +1 -1
- package/templates/.agents/requirements/cost-observability.md +3 -3
- package/templates/.agents/requirements/dashboard-launch.md +1 -1
- package/templates/.agents/requirements/data-export.md +1 -1
- package/templates/.agents/requirements/design-system.md +1 -1
- package/templates/.agents/requirements/execution-engine.md +1 -1
- package/templates/.agents/requirements/kanban-dashboard.md +3 -3
- package/templates/.agents/requirements/landing-page-forms.md +39 -0
- package/templates/.agents/requirements/model-orchestration.md +1 -1
- package/templates/.agents/requirements/public-distribution.md +4 -4
- package/templates/.agents/requirements/site-performance.md +41 -0
- package/templates/.agents/requirements/software-architecture.md +1 -1
- package/templates/.agents/requirements/strategic-improvements.md +1 -1
- package/templates/.agents/requirements/work-lifecycle.md +1 -1
- package/templates/.agents/requirements/zaip-strategic-95.md +1 -1
- package/templates/.agents/rules/autonomy-decision.md +4 -1
- package/templates/.agents/rules/cloud-hostinger-autonomy.md +4 -1
- package/templates/.agents/rules/core.md +5 -2
- package/templates/.agents/rules/framework-maintenance.md +34 -0
- package/templates/.agents/rules/frontend-lite.md +2 -1
- package/templates/.agents/rules/github-deploy-auth.md +18 -0
- package/templates/.agents/rules/infisical-secrets.md +20 -0
- package/templates/.agents/rules/landing-page-forms.md +28 -0
- package/templates/.agents/rules/lead-measurement.md +20 -0
- package/templates/.agents/rules/local-sqlite-storage.md +2 -2
- package/templates/.agents/rules/local-state-storage.md +15 -0
- package/templates/.agents/rules/production-readiness.md +1 -1
- package/templates/.agents/rules/quality-assurance.md +36 -0
- package/templates/.agents/rules/repository-responsibility.md +38 -0
- package/templates/.agents/rules/security.md +1 -1
- package/templates/.agents/rules/site-performance.md +29 -0
- package/templates/.agents/rules/website-quality.md +31 -0
- package/templates/.agents/rules/workflow.md +1 -1
- package/templates/.agents/runtime/VERSION +1 -1
- package/templates/.agents/runtime/bin/zaip.mjs +2256 -802
- package/templates/.agents/runtime/checksums.sha256 +6 -6
- package/templates/.agents/runtime/manifest.json +1 -1
- package/templates/.agents/runtime/pnpm-lock.sha256 +1 -1
- package/templates/.agents/runtime/provenance.json +5 -5
- package/templates/.agents/runtime/sbom.cdx.json +7 -7
- package/templates/.agents/skills/criar-pasta-obsidian/SKILL.md +2 -2
- package/templates/.agents/skills/criar-pasta-obsidian/scripts/generate-obsidian-vault.mjs +7 -24
- package/templates/.agents/skills/criar-pasta-obsidian/scripts/generate-obsidian-vault.test.mjs +4 -2
- package/templates/.agents/skills/criar-pasta-obsidian/scripts/obsidian-format.mjs +20 -0
- package/templates/.agents/skills/zaip-skill-adapters/SKILL.md +6 -0
- package/templates/.agents/skills/zaip-skill-application-observability/references/lead-measurement.md +52 -0
- package/templates/.agents/skills/zaip-skill-architecture-design/SKILL.md +3 -1
- package/templates/.agents/skills/zaip-skill-auth-tenancy/references/lead-measurement.md +42 -0
- package/templates/.agents/skills/zaip-skill-author-skills/SKILL.md +1 -1
- package/templates/.agents/skills/zaip-skill-author-skills/references/engineering-skill-index.md +4 -0
- package/templates/.agents/skills/zaip-skill-author-skills/scripts/audit-skill-catalog.mjs +3 -0
- package/templates/.agents/skills/zaip-skill-author-skills/scripts/run-skill-tests.mjs +37 -7
- package/templates/.agents/skills/zaip-skill-author-skills/scripts/skill-test-plan.mjs +79 -0
- package/templates/.agents/skills/zaip-skill-author-skills/scripts/skill-test-plan.test.mjs +47 -0
- package/templates/.agents/skills/zaip-skill-backend/SKILL.md +2 -0
- package/templates/.agents/skills/zaip-skill-backend/references/deployment-environments.md +2 -2
- package/templates/.agents/skills/zaip-skill-change/references/observable-evidence.md +3 -3
- package/templates/.agents/skills/zaip-skill-cloud-engineering/SKILL.md +2 -0
- package/templates/.agents/skills/zaip-skill-cloudflare-access-setup/SKILL.md +16 -0
- package/templates/.agents/skills/zaip-skill-cloudflare-access-setup/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-cloudflare-access-setup/references/account-token.md +90 -0
- package/templates/.agents/skills/zaip-skill-cloudflare-access-setup/scripts/preview-access.mjs +91 -0
- package/templates/.agents/skills/zaip-skill-cloudflare-access-setup/scripts/preview-access.test.mjs +44 -0
- package/templates/.agents/skills/zaip-skill-cloudflare-github-deploy/SKILL.md +4 -2
- package/templates/.agents/skills/zaip-skill-cloudflare-github-deploy/references/workers-static-assets.md +1 -1
- package/templates/.agents/skills/zaip-skill-cloudflare-github-deploy/references/workflow-templates.md +5 -5
- package/templates/.agents/skills/zaip-skill-cloudflare-github-deploy/scripts/cloudflare-github-deploy-contract.test.mjs +24 -5
- package/templates/.agents/skills/zaip-skill-config/SKILL.md +33 -8
- package/templates/.agents/skills/zaip-skill-config/agents/openai.yaml +2 -2
- package/templates/.agents/skills/zaip-skill-config/references/repository-profiles.md +83 -0
- package/templates/.agents/skills/zaip-skill-dashboard-sqlite/SKILL.md +2 -2
- package/templates/.agents/skills/zaip-skill-data-modeling/references/lead-measurement.md +37 -0
- package/templates/.agents/skills/zaip-skill-database-migrations/references/lead-measurement.md +35 -0
- package/templates/.agents/skills/zaip-skill-decisions/SKILL.md +1 -0
- package/templates/.agents/skills/zaip-skill-deployment-pipeline/SKILL.md +11 -0
- package/templates/.agents/skills/zaip-skill-design-maker/SKILL.md +28 -0
- package/templates/.agents/skills/zaip-skill-design-maker/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-design-maker/references/chat-contract.md +46 -0
- package/templates/.agents/skills/zaip-skill-design-maker/references/compose.md +20 -0
- package/templates/.agents/skills/zaip-skill-design-maker/references/markdown.md +26 -0
- package/templates/.agents/skills/zaip-skill-design-maker/references/repository.md +24 -0
- package/templates/.agents/skills/zaip-skill-design-maker/references/url.md +24 -0
- package/templates/.agents/skills/zaip-skill-design-redesign/SKILL.md +41 -0
- package/templates/.agents/skills/zaip-skill-design-redesign/agents/openai.yaml +6 -0
- package/templates/.agents/skills/zaip-skill-design-reproduction/SKILL.md +47 -0
- package/templates/.agents/skills/zaip-skill-design-reproduction/agents/openai.yaml +6 -0
- package/templates/.agents/skills/zaip-skill-design-system/SKILL.md +6 -0
- package/templates/.agents/skills/zaip-skill-design-url-extraction/SKILL.md +50 -0
- package/templates/.agents/skills/zaip-skill-design-url-extraction/agents/openai.yaml +6 -0
- package/templates/.agents/skills/zaip-skill-design-url-extraction/references/capture-example.json +11 -0
- package/templates/.agents/skills/zaip-skill-design-url-extraction/references/runtime-workflow.md +127 -0
- package/templates/.agents/skills/zaip-skill-executar-fila-pronta/SKILL.md +3 -1
- package/templates/.agents/skills/zaip-skill-executar-fila-pronta/scripts/ready-queue-fence.mjs +2 -1
- package/templates/.agents/skills/zaip-skill-executar-fila-pronta/scripts/ready-queue-lease.mjs +3 -1
- package/templates/.agents/skills/zaip-skill-executar-fila-pronta/scripts/ready-queue-storage.mjs +40 -0
- package/templates/.agents/skills/zaip-skill-executar-fila-pronta/scripts/ready-queue-storage.test.mjs +87 -0
- package/templates/.agents/skills/zaip-skill-executar-fila-pronta/scripts/scheduled-ready-queue-contract.test.mjs +1 -1
- package/templates/.agents/skills/zaip-skill-execution/SKILL.md +11 -3
- package/templates/.agents/skills/zaip-skill-execution/references/autonomous-continuation.md +2 -0
- package/templates/.agents/skills/zaip-skill-execution/references/controlled-release-recovery.md +10 -4
- package/templates/.agents/skills/zaip-skill-execution/references/conversation-promotion.md +38 -0
- package/templates/.agents/skills/zaip-skill-execution/references/runtime-governance.md +3 -1
- package/templates/.agents/skills/zaip-skill-external-integrations/SKILL.md +2 -0
- package/templates/.agents/skills/zaip-skill-external-integrations/references/kommo.md +71 -0
- package/templates/.agents/skills/zaip-skill-figma-setup/SKILL.md +42 -0
- package/templates/.agents/skills/zaip-skill-figma-setup/agents/openai.yaml +6 -0
- package/templates/.agents/skills/zaip-skill-figma-setup/references/capability-contract.json +40 -0
- package/templates/.agents/skills/zaip-skill-figma-setup/references/figma-connection.md +60 -0
- package/templates/.agents/skills/zaip-skill-figma-setup/references/figma-handoff.md +71 -0
- package/templates/.agents/skills/zaip-skill-frontend/SKILL.md +30 -1
- package/templates/.agents/skills/zaip-skill-frontend-data-flows/SKILL.md +3 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/SKILL.md +38 -5
- package/templates/.agents/skills/zaip-skill-github-deploy/references/authentication.md +15 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/references/authorization.md +35 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/references/deployment-workflow.md +21 -3
- package/templates/.agents/skills/zaip-skill-github-deploy/references/literal-read-sequence.md +28 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/references/release-identity.md +4 -2
- package/templates/.agents/skills/zaip-skill-github-deploy/references/release-notes.md +4 -4
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/application-content.mjs +82 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/application-content.test.mjs +184 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/consumer-publication-authority.mjs +63 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/consumer-release-preparation.mjs +42 -36
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/consumer-release-preparation.test.mjs +4 -5
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/deploy-auth.mjs +400 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/deploy-auth.test.mjs +192 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/deploy-constraints.test.mjs +159 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/deploy-contract-cli.test.mjs +32 -24
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/deploy-contract-range.test-support.mjs +51 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/deploy-contract.mjs +213 -225
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/deploy-contract.test.mjs +63 -56
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/deploy-idempotent-intent.test.mjs +130 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/deploy-publication-intent.test.mjs +112 -5
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/deployment-request-conditions.test.mjs +117 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/deployment-request-continuation.test.mjs +44 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/deployment-request-preservation.test.mjs +58 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/deployment-request.mjs +291 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/git-command.mjs +11 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/git-config-paths.mjs +10 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/git-destination.mjs +21 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/git-push-target.mjs +62 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/git-push-target.test.mjs +78 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/github-deploy-contract.test.mjs +4 -2
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/guarded-commits.mjs +132 -42
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/preflight-options.mjs +50 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/preflight-worktree.test.mjs +52 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/preflight.mjs +70 -119
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/preflight.test.mjs +11 -1
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/project-restrictions.mjs +201 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/project-restrictions.test.mjs +154 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-authority-callbacks.test.mjs +46 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-conditions.mjs +193 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-intent.mjs +76 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-plan-binding.mjs +78 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-plan-refusal.mjs +30 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-project-policy.mjs +39 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-2457VC25.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-25VZXDBX.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-2JXOAZ2R.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-2OZK443Y.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-3BDTL55L.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-3MG57Y6I.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-3MQAJ6XX.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-3TUUBJPP.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-45Z34LBQ.mjs +140 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-4GJE2IXL.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-4HLOIRQU.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-55PSJJ75.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-5OTFTK2Y.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-7OFWNBZN.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-7R2IP55E.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-7SBOEN6U.mjs +24 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-A35CQWF4.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-A3ZCURGS.mjs +11 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-BC2LX3QU.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-C2Z26E6U.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-CHJGU2RU.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-D4LGE7UI.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-D5OUJS46.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-D6RZM5OT.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-DOK2R3GV.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-EAHVOUKK.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-FZUNFGZV.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-GGBPBQ6D.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-HFDX2GP6.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-HZ2NRMAG.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-IJKPDKXC.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-JEOOTEUX.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-JF3E72HZ.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-KRHOCS3C.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-LG5MJS2A.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-ML4PMB7C.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-MSCWMPU5.mjs +63 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-NJOFXS7P.mjs +137 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-NORNV3B2.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-PBU2HSKP.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-PG6LGVVW.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-PGYGDY3J.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-QFUQW6LE.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-QI32NI7M.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-R4HD7XOO.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-REHSM3G2.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-S22YDVTM.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-S5P4ZNUQ.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-SCK2RF6V.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-SWFLYM3O.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-TA7RY5MY.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-TM5WG7GR.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-TMVJHK37.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-TPDQAH7C.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-U2KO7ULM.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-U3ISMYJU.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-UKSDAS73.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-UNTPHSZO.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-V4MIRRUB.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-WNXOXX3Z.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-WQGTDRK7.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-WZJIRYT6.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-XED4KYQL.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-XEXCFKHI.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-XJJFARY4.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-XQOFL3K3.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-YAWUSDPM.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-YEUY7TMM.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-Z5X23XXT.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-Z7H2BHYQ.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/chunks/chunk-ZOGCYGYB.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/lifecycle-records.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-ar.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-az.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-be.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-bg.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-bn.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-ca.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-ckb.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-cs.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-da.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-de.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-el.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-en.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-eo.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-es.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-fa.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-fi.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-fr-CA.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-fr.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-gu.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-he.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-hi.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-hr.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-hu.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-hy.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-id.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-is.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-it.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-ja.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-ka.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-kh.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-km.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-kn.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-ko.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-lt.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-mk.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-ms.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-ne.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-nl.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-nn.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-no.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-ota.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-pl.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-ps.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-pt-BR.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-pt.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-ro.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-ru.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-sk.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-sl.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-sv.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-ta.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-tg.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-th.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-tk.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-tr.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-ua.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-uk.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-ur.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-uz.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-vi.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-yo.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-zh-CN.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/locale-zh-TW.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/manifest.json +565 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/native-authority.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/proof.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/run-records.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/yaml-runtime.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-runtime/zod-runtime.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof-schema.mjs +2 -0
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/publication-proof.test.mjs +79 -0
- package/templates/.agents/skills/zaip-skill-github-setup/SKILL.md +14 -11
- package/templates/.agents/skills/zaip-skill-github-setup/references/bounded-setup.md +42 -0
- package/templates/.agents/skills/zaip-skill-github-setup/scripts/setup.mjs +365 -0
- package/templates/.agents/skills/zaip-skill-github-setup-ssh-folder/SKILL.md +13 -3
- package/templates/.agents/skills/zaip-skill-github-setup-ssh-folder/references/operational-procedure.md +4 -4
- package/templates/.agents/skills/zaip-skill-google-ads-conversions/SKILL.md +18 -0
- package/templates/.agents/skills/zaip-skill-google-ads-conversions/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-google-ads-conversions/references/implementation.md +61 -0
- package/templates/.agents/skills/zaip-skill-google-analytics/SKILL.md +24 -0
- package/templates/.agents/skills/zaip-skill-google-analytics/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-google-analytics/references/implementation.md +64 -0
- package/templates/.agents/skills/zaip-skill-google-tag-manager/SKILL.md +24 -0
- package/templates/.agents/skills/zaip-skill-google-tag-manager/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-google-tag-manager/references/implementation.md +71 -0
- package/templates/.agents/skills/zaip-skill-google-tag-manager/references/operator-checklist.md +51 -0
- package/templates/.agents/skills/zaip-skill-google-tag-manager/references/operator-fixtures.json +93 -0
- package/templates/.agents/skills/zaip-skill-google-tag-manager/scripts/check-runbook-links.mjs +103 -0
- package/templates/.agents/skills/zaip-skill-google-tag-manager/scripts/google-runbooks.test.mjs +247 -0
- package/templates/.agents/skills/zaip-skill-google-tag-manager/scripts/operator-model.mjs +221 -0
- package/templates/.agents/skills/zaip-skill-hostinger-cloudflare-terraform/SKILL.md +8 -2
- package/templates/.agents/skills/zaip-skill-hostinger-cloudflare-terraform/references/autonomous-cloud-inputs.example.json +3 -3
- package/templates/.agents/skills/zaip-skill-hostinger-cloudflare-terraform/references/autonomous-runner.md +4 -2
- package/templates/.agents/skills/zaip-skill-hostinger-cloudflare-terraform/references/cloudflare-agent-setup.md +23 -0
- package/templates/.agents/skills/zaip-skill-hostinger-cloudflare-terraform/references/cloudflare-dns.md +36 -0
- package/templates/.agents/skills/zaip-skill-hostinger-cloudflare-terraform/references/guia-iniciante-hostinger-vps.md +4 -4
- package/templates/.agents/skills/zaip-skill-hostinger-cloudflare-terraform/references/operational-contract.md +3 -3
- package/templates/.agents/skills/zaip-skill-hostinger-cloudflare-terraform/references/vps-onboarding.md +97 -0
- package/templates/.agents/skills/zaip-skill-image-optimization/SKILL.md +31 -0
- package/templates/.agents/skills/zaip-skill-image-optimization/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-image-optimization/references/adapters.md +36 -0
- package/templates/.agents/skills/zaip-skill-image-optimization/references/pipeline.md +35 -0
- package/templates/.agents/skills/zaip-skill-image-optimization/scripts/images.mjs +370 -0
- package/templates/.agents/skills/zaip-skill-image-optimization/scripts/images.test.mjs +385 -0
- package/templates/.agents/skills/zaip-skill-infisical/SKILL.md +20 -0
- package/templates/.agents/skills/zaip-skill-infisical/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-infisical/assets/compose.yaml +62 -0
- package/templates/.agents/skills/zaip-skill-infisical/assets/terraform/infisical.tf +57 -0
- package/templates/.agents/skills/zaip-skill-infisical/references/credential-workflow.md +88 -0
- package/templates/.agents/skills/zaip-skill-infisical/references/first-initialization.md +51 -0
- package/templates/.agents/skills/zaip-skill-infisical/references/security-and-edition.md +19 -0
- package/templates/.agents/skills/zaip-skill-infisical/references/self-hosting.md +71 -0
- package/templates/.agents/skills/zaip-skill-infisical/references/terraform.md +54 -0
- package/templates/.agents/skills/zaip-skill-infisical/scripts/prepare-self-host.mjs +92 -0
- package/templates/.agents/skills/zaip-skill-infisical/scripts/prepare-self-host.test.mjs +69 -0
- package/templates/.agents/skills/zaip-skill-infisical/scripts/preview-terraform.mjs +70 -0
- package/templates/.agents/skills/zaip-skill-infisical/scripts/preview-terraform.test.mjs +51 -0
- package/templates/.agents/skills/zaip-skill-infisical/scripts/terraform-plan-integration.test.mjs +83 -0
- package/templates/.agents/skills/zaip-skill-landing-page-forms/SKILL.md +37 -0
- package/templates/.agents/skills/zaip-skill-landing-page-forms/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-landing-page-forms/references/accessibility.md +29 -0
- package/templates/.agents/skills/zaip-skill-landing-page-forms/references/contact-then-qualification.example.json +83 -0
- package/templates/.agents/skills/zaip-skill-landing-page-forms/references/contracts.md +70 -0
- package/templates/.agents/skills/zaip-skill-landing-page-forms/references/examples.md +21 -0
- package/templates/.agents/skills/zaip-skill-landing-page-forms/references/journey.md +30 -0
- package/templates/.agents/skills/zaip-skill-landing-page-forms/references/multistep.example.json +84 -0
- package/templates/.agents/skills/zaip-skill-landing-page-forms/references/single-screen.example.json +76 -0
- package/templates/.agents/skills/zaip-skill-landing-page-forms/references/verification.md +24 -0
- package/templates/.agents/skills/zaip-skill-landing-page-forms/scripts/validate-plan.mjs +306 -0
- package/templates/.agents/skills/zaip-skill-landing-page-forms/scripts/validate-plan.test.mjs +183 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/SKILL.md +32 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/references/architecture.md +51 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/references/authority.md +49 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/references/bant-contract.md +36 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/references/consent-contract.md +48 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/references/delivery-contract.md +65 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/references/event-contract.md +47 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/references/examples/escola.json +180 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/references/examples/moradigna-regression.json +158 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/references/examples/solar.json +165 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/references/identity-contract.md +53 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/references/implementation-plan.md +60 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/references/kommo-contract.md +83 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/references/meta-mapping.md +28 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/references/migration.md +65 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/references/operations.md +125 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/references/persistence-reference.md +65 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/references/questionnaire-v2.schema.json +136 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/references/synthetic-config.json +24 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/references/synthetic-event.json +19 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/check-questionnaire.mjs +314 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/check-questionnaire.test.mjs +338 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/consent-cases-core.mjs +144 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/consent-cases-privacy.mjs +183 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/consent-fixtures.mjs +60 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/consent-rollback-support.mjs +114 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/consent.mjs +222 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/consent.test.mjs +294 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/delivery-ledger.mjs +179 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/delivery-v2-case-fixtures.mjs +118 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/delivery-v2-cases.mjs +6 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/delivery-v2-contract-cases.mjs +218 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/delivery-v2-contract.mjs +182 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/delivery-v2-proof-support.mjs +104 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/delivery-v2-proof.mjs +272 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/delivery-v2-state-cases.mjs +248 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/delivery-v2.mjs +234 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/lead-measurement.mjs +277 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/lead-measurement.test.mjs +288 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/questionnaire-ast-cases.mjs +127 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/questionnaire-test-support.mjs +25 -0
- package/templates/.agents/skills/zaip-skill-lead-measurement/scripts/questionnaire-validation.mjs +155 -0
- package/templates/.agents/skills/zaip-skill-lifecycle-closure/SKILL.md +30 -2
- package/templates/.agents/skills/zaip-skill-lifecycle-closure/references/empty-usage-lock.md +56 -0
- package/templates/.agents/skills/zaip-skill-lifecycle-closure/references/late-finalization.md +158 -0
- package/templates/.agents/skills/zaip-skill-lifecycle-closure/references/local-catalog-closure.md +37 -0
- package/templates/.agents/skills/zaip-skill-lifecycle-closure/references/post-publication-task-first.md +1 -1
- package/templates/.agents/skills/zaip-skill-lifecycle-closure/scripts/empty-lock-native.cs +113 -0
- package/templates/.agents/skills/zaip-skill-lifecycle-closure/scripts/empty-lock-native.ps1 +9 -0
- package/templates/.agents/skills/zaip-skill-lifecycle-closure/scripts/recover-empty-usage-lock.mjs +194 -0
- package/templates/.agents/skills/zaip-skill-local-credentials/SKILL.md +27 -0
- package/templates/.agents/skills/zaip-skill-maintenance-enter/SKILL.md +8 -6
- package/templates/.agents/skills/zaip-skill-maintenance-enter/scripts/maintenance.mjs +4 -4
- package/templates/.agents/skills/zaip-skill-maintenance-enter/scripts/maintenance.test.mjs +2 -2
- package/templates/.agents/skills/zaip-skill-maintenance-exit/SKILL.md +3 -3
- package/templates/.agents/skills/zaip-skill-marketing/SKILL.md +11 -0
- package/templates/.agents/skills/zaip-skill-marketing/references/search-content.md +17 -0
- package/templates/.agents/skills/zaip-skill-meta-conversions/SKILL.md +23 -0
- package/templates/.agents/skills/zaip-skill-meta-conversions/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-meta-conversions/references/implementation.md +88 -0
- package/templates/.agents/skills/zaip-skill-meta-conversions/references/synthetic-meta.json +27 -0
- package/templates/.agents/skills/zaip-skill-meta-conversions/scripts/check-meta-links.mjs +88 -0
- package/templates/.agents/skills/zaip-skill-meta-conversions/scripts/meta-model.mjs +369 -0
- package/templates/.agents/skills/zaip-skill-meta-conversions/scripts/meta-model.test.mjs +394 -0
- package/templates/.agents/skills/zaip-skill-performance-engineering/SKILL.md +26 -1
- package/templates/.agents/skills/zaip-skill-performance-engineering/references/astro-islands.md +41 -0
- package/templates/.agents/skills/zaip-skill-performance-engineering/references/controlled-runner.md +38 -0
- package/templates/.agents/skills/zaip-skill-performance-engineering/references/google-diagnostics.md +46 -0
- package/templates/.agents/skills/zaip-skill-performance-engineering/references/report-contract.md +99 -0
- package/templates/.agents/skills/zaip-skill-performance-engineering/references/site-budgets.json +25 -0
- package/templates/.agents/skills/zaip-skill-performance-engineering/references/site-performance.md +83 -0
- package/templates/.agents/skills/zaip-skill-performance-engineering/references/third-party-performance.md +57 -0
- package/templates/.agents/skills/zaip-skill-performance-engineering/scripts/assess-reports.mjs +42 -0
- package/templates/.agents/skills/zaip-skill-performance-engineering/scripts/capture-site.mjs +155 -0
- package/templates/.agents/skills/zaip-skill-performance-engineering/scripts/local-preview.mjs +84 -0
- package/templates/.agents/skills/zaip-skill-performance-engineering/scripts/performance-report.mjs +142 -0
- package/templates/.agents/skills/zaip-skill-performance-engineering/scripts/performance-report.test.mjs +122 -0
- package/templates/.agents/skills/zaip-skill-performance-engineering/scripts/report-fixtures.test-support.mjs +51 -0
- package/templates/.agents/skills/zaip-skill-performance-engineering/scripts/report-import.mjs +209 -0
- package/templates/.agents/skills/zaip-skill-performance-engineering/scripts/report-import.test.mjs +164 -0
- package/templates/.agents/skills/zaip-skill-performance-engineering/scripts/run-lighthouse.mjs +151 -0
- package/templates/.agents/skills/zaip-skill-performance-engineering/scripts/series-gate.mjs +225 -0
- package/templates/.agents/skills/zaip-skill-performance-engineering/scripts/series-gate.test.mjs +143 -0
- package/templates/.agents/skills/zaip-skill-qa/SKILL.md +54 -0
- package/templates/.agents/skills/zaip-skill-qa/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-qa/references/host-protocol.md +125 -0
- package/templates/.agents/skills/zaip-skill-qa/references/landing-page-forms.md +23 -0
- package/templates/.agents/skills/zaip-skill-qa/references/proof-adapters.md +92 -0
- package/templates/.agents/skills/zaip-skill-qa/references/scenarios.md +73 -0
- package/templates/.agents/skills/zaip-skill-qa/references/seo-geo.md +33 -0
- package/templates/.agents/skills/zaip-skill-qa/references/site-performance.md +20 -0
- package/templates/.agents/skills/zaip-skill-qa/scripts/observe-dashboard-ui.mjs +152 -0
- package/templates/.agents/skills/zaip-skill-qa/scripts/observe-dashboard-ui.test.mjs +65 -0
- package/templates/.agents/skills/zaip-skill-qa/scripts/qa-contract.test.mjs +203 -0
- package/templates/.agents/skills/zaip-skill-qa/scripts/run-behavior-tests.mjs +369 -0
- package/templates/.agents/skills/zaip-skill-qa/scripts/run-behavior-tests.test.mjs +168 -0
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/SKILL.md +33 -0
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-local-telemetry.mjs +42 -62
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-native-window.mjs +115 -0
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-native-window.test.mjs +123 -0
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-optional-timing.test.mjs +34 -0
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-reviewed-pairs-fixture.mjs +130 -0
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-deduplicate-apply.mjs +106 -0
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-lib.mjs +22 -45
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-lib.test.mjs +0 -24
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-remeasurement.mjs +73 -9
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-reviewed-order.mjs +48 -0
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-reviewed-pairs.mjs +255 -0
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-reviewed-pairs.test.mjs +329 -0
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-token-snapshots.mjs +49 -0
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-token-snapshots.test.mjs +33 -0
- package/templates/.agents/skills/zaip-skill-refactor-landing-page/SKILL.md +6 -0
- package/templates/.agents/skills/zaip-skill-release-qualification/SKILL.md +19 -1
- package/templates/.agents/skills/zaip-skill-release-qualification/references/frozen-task-recovery.md +47 -0
- package/templates/.agents/skills/zaip-skill-release-qualification/references/local-catalog.md +136 -0
- package/templates/.agents/skills/zaip-skill-release-qualification/references/local-preparation.md +7 -5
- package/templates/.agents/skills/zaip-skill-release-qualification/references/remote-validation.md +147 -0
- package/templates/.agents/skills/zaip-skill-sales-methodology/SKILL.md +1 -0
- package/templates/.agents/skills/zaip-skill-sales-methodology/references/bant-discovery.md +28 -0
- package/templates/.agents/skills/zaip-skill-screenshot-intake/SKILL.md +40 -0
- package/templates/.agents/skills/zaip-skill-screenshot-intake/agents/openai.yaml +6 -0
- package/templates/.agents/skills/zaip-skill-screenshot-intake/references/request-example.json +36 -0
- package/templates/.agents/skills/zaip-skill-screenshot-intake/references/runtime-workflow.md +110 -0
- package/templates/.agents/skills/zaip-skill-search-observability/SKILL.md +27 -0
- package/templates/.agents/skills/zaip-skill-search-observability/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-search-observability/references/report-template.md +32 -0
- package/templates/.agents/skills/zaip-skill-search-observability/references/workflow.md +56 -0
- package/templates/.agents/skills/zaip-skill-search-observability/scripts/search-report.mjs +139 -0
- package/templates/.agents/skills/zaip-skill-search-observability/scripts/search-report.test.mjs +72 -0
- package/templates/.agents/skills/zaip-skill-setup/SKILL.md +51 -44
- package/templates/.agents/skills/zaip-skill-setup/agents/openai.yaml +1 -1
- package/templates/.agents/skills/zaip-skill-setup/references/basic-onboarding.md +41 -0
- package/templates/.agents/skills/zaip-skill-setup/references/codex-activation.md +40 -0
- package/templates/.agents/skills/zaip-skill-setup/scripts/onboarding-contract.test.mjs +41 -0
- package/templates/.agents/skills/zaip-skill-spec/SKILL.md +1 -0
- package/templates/.agents/skills/zaip-skill-sqlite-read-model/SKILL.md +4 -3
- package/templates/.agents/skills/zaip-skill-task/SKILL.md +1 -0
- package/templates/.agents/skills/zaip-skill-task/references/commit-policy.md +1 -1
- package/templates/.agents/skills/zaip-skill-testing-strategy/SKILL.md +18 -0
- package/templates/.agents/skills/zaip-skill-testing-strategy/references/frontend-impact.md +81 -0
- package/templates/.agents/skills/zaip-skill-testing-strategy/references/verification-adoption.md +31 -0
- package/templates/.agents/skills/zaip-skill-testing-strategy/scripts/validation-plan.mjs +168 -0
- package/templates/.agents/skills/zaip-skill-testing-strategy/scripts/validation-plan.test.mjs +146 -0
- package/templates/.agents/skills/zaip-skill-tool-setup/scripts/tool-state.mjs +1 -1
- package/templates/.agents/skills/zaip-skill-use-connectors/SKILL.md +8 -0
- package/templates/.agents/skills/zaip-skill-use-connectors/scripts/select-connector.mjs +73 -0
- package/templates/.agents/skills/zaip-skill-use-connectors/scripts/select-connector.test.mjs +85 -0
- package/templates/.agents/skills/zaip-skill-visual-report/SKILL.md +41 -0
- package/templates/.agents/skills/zaip-skill-visual-report/agents/openai.yaml +6 -0
- package/templates/.agents/skills/zaip-skill-visual-report/references/fidelity-proof.md +56 -0
- package/templates/.agents/skills/zaip-skill-visual-report/references/intake-state.md +64 -0
- package/templates/.agents/skills/zaip-skill-visual-report/references/source-contract.md +79 -0
- package/templates/.agents/skills/zaip-skill-visual-report/references/synthesis-template.md +67 -0
- package/templates/.agents/skills/zaip-skill-visual-report/references/visual-contract.json +40 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/SKILL.md +73 -17
- package/templates/.agents/skills/zaip-skill-website-readiness/agents/openai.yaml +2 -2
- package/templates/.agents/skills/zaip-skill-website-readiness/references/capability-checklist.md +8 -4
- package/templates/.agents/skills/zaip-skill-website-readiness/references/change-discovery.md +22 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/references/content-and-agents.md +25 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/references/crawler-policy.md +35 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/references/schema-matrix.md +23 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/references/search-evidence.md +36 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/references/site-quality.example.json +14 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/references/site-quality.md +109 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/references/site-validation.md +60 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/references/sources.md +37 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/references/visual-preservation.md +84 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/scripts/agent-content.mjs +116 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/scripts/agent-content.test.mjs +83 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/scripts/audit-site.mjs +136 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/scripts/html-facts.mjs +56 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/scripts/index-directives.mjs +29 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/scripts/quality-plan.mjs +62 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/scripts/robots-policy.mjs +63 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/scripts/search-policy.test.mjs +183 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/scripts/site-audit.mjs +243 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/scripts/site-audit.test.mjs +287 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/scripts/sitemap-policy.mjs +111 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/scripts/verify-site-design.mjs +130 -0
- package/templates/.agents/skills/zaip-skill-website-readiness/scripts/visual-preservation.mjs +160 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/SKILL.md +70 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/references/complete-preservation.md +70 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/references/default-policy.md +53 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/references/lifecycle-roots.md +106 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/references/metadata-overlay.md +45 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/references/procedure.md +49 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/complete-preservation.mjs +252 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-local-archive.mjs +162 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-local-git.mjs +111 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-acl.ps1 +37 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-activate.ps1 +66 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-alias.mjs +202 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-batches.mjs +88 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-copy-session.mjs +84 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-cutover.mjs +350 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-files.mjs +109 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-generation-posix.mjs +194 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-generation.mjs +173 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-journal.mjs +88 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-layout.mjs +102 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-lock.mjs +106 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-migration.mjs +234 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-observation-tail.mjs +148 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-permissions.mjs +52 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-plan.mjs +143 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-preparation.mjs +110 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-process-start.ps1 +7 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-quiescence.ps1 +11 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-receipt-lease.mjs +67 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-reuse.mjs +68 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/durable-state-telemetry-version.mjs +187 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/git-process.mjs +85 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/metadata-overlay.mjs +302 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/metadata-secrets.mjs +44 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/migrate-durable-state.mjs +49 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/recovery.mjs +247 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/retention-marker.mjs +44 -0
- package/templates/.agents/skills/zaip-skill-worktree-recovery/scripts/worktree-proof.mjs +148 -0
- package/templates/.agents/tools/api/kommo-crm/README.md +13 -9
- package/templates/.agents/tools/cloud-onboarding-architecture.mjs +273 -0
- package/templates/.agents/tools/cloud-onboarding-bootstrap.test.mjs +176 -0
- package/templates/.agents/tools/cloud-onboarding-configure.mjs +146 -0
- package/templates/.agents/tools/cloud-onboarding-credentials.mjs +279 -0
- package/templates/.agents/tools/cloud-onboarding-files.mjs +190 -0
- package/templates/.agents/tools/cloud-onboarding-files.test.mjs +72 -0
- package/templates/.agents/tools/cloud-onboarding-generation.mjs +161 -0
- package/templates/.agents/tools/cloud-onboarding-generation.test.mjs +129 -0
- package/templates/.agents/tools/cloud-onboarding-policy.mjs +196 -0
- package/templates/.agents/tools/cloud-onboarding-provider.mjs +228 -0
- package/templates/.agents/tools/cloud-onboarding-provider.test.mjs +144 -0
- package/templates/.agents/tools/cloud-onboarding-recovery.test.mjs +306 -0
- package/templates/.agents/tools/cloud-onboarding-ssh.mjs +223 -0
- package/templates/.agents/tools/cloud-onboarding-terraform.mjs +80 -0
- package/templates/.agents/tools/cloud-onboarding-test-fixture.mjs +184 -0
- package/templates/.agents/tools/cloud-onboarding-test-fixtures.mjs +117 -0
- package/templates/.agents/tools/cloud-onboarding.mjs +196 -0
- package/templates/.agents/tools/cloud-onboarding.ssh.integration.test.mjs +391 -0
- package/templates/.agents/tools/cloud-onboarding.test.mjs +237 -0
- package/templates/.agents/tools/cloud-runner-arguments.mjs +37 -0
- package/templates/.agents/tools/cloud-runner-dns.mjs +234 -11
- package/templates/.agents/tools/cloud-runner-dns.test.mjs +256 -0
- package/templates/.agents/tools/cloud-runner-process.mjs +61 -0
- package/templates/.agents/tools/cloud-runner-process.test.mjs +43 -0
- package/templates/.agents/tools/cloud-runner.integration.test.mjs +19 -3
- package/templates/.agents/tools/cloud-runner.mjs +49 -169
- package/templates/.agents/tools/cloud-runner.test.mjs +7 -42
- package/templates/.agents/tools/historical-local-archive.mjs +89 -0
- package/templates/.agents/tools/infisical-bootstrap-windows.test.mjs +12 -0
- package/templates/.agents/tools/infisical-bootstrap.mjs +240 -0
- package/templates/.agents/tools/infisical-bootstrap.test-support.mjs +39 -0
- package/templates/.agents/tools/infisical-bootstrap.test.mjs +193 -0
- package/templates/.agents/tools/infisical-policy.mjs +134 -0
- package/templates/.agents/tools/infisical-runner.mjs +349 -0
- package/templates/.agents/tools/infisical-runner.test.mjs +266 -0
- package/templates/.agents/tools/mcp/infra/cloudflare/README.md +3 -17
- package/templates/.agents/tools/mcp/infra/cloudflare/manifest.yaml +6 -10
- package/templates/.agents/tools/repository-cloud-boundary.test.mjs +41 -0
- package/templates/.agents/tools/repository-policy.mjs +257 -0
- package/templates/.agents/tools/repository-profile.mjs +116 -0
- package/templates/.agents/tools/repository-profile.test.mjs +67 -0
- package/templates/.agents/tools/secret-inventory.mjs +150 -0
- package/templates/.agents/tools/secret-inventory.test.mjs +60 -0
- package/templates/.agents/tools/visual-intake/cli.mjs +72 -0
- package/templates/.agents/tools/visual-intake/fs.mjs +137 -0
- package/templates/.agents/tools/visual-intake/lock.mjs +98 -0
- package/templates/.agents/tools/visual-intake/report.mjs +69 -0
- package/templates/.agents/tools/visual-intake/runtime.mjs +330 -0
- package/templates/.agents/tools/visual-intake/schema.mjs +235 -0
- package/templates/.agents/tools/visual-intake/transaction.mjs +206 -0
- package/templates/.agents/tools/visual-url/browser-cdp.mjs +167 -0
- package/templates/.agents/tools/visual-url/browser-page-evidence.mjs +111 -0
- package/templates/.agents/tools/visual-url/browser-proxy.mjs +194 -0
- package/templates/.agents/tools/visual-url/browser-rendered-sample.mjs +312 -0
- package/templates/.agents/tools/visual-url/browser-source.mjs +398 -0
- package/templates/.agents/tools/visual-url/capture.mjs +119 -0
- package/templates/.agents/tools/visual-url/captured-visual.mjs +301 -0
- package/templates/.agents/tools/visual-url/cli.mjs +29 -0
- package/templates/.agents/tools/visual-url/color-candidates.mjs +161 -0
- package/templates/.agents/tools/visual-url/colors.mjs +98 -0
- package/templates/.agents/tools/visual-url/contrast.mjs +40 -0
- package/templates/.agents/tools/visual-url/css-sample.mjs +109 -0
- package/templates/.agents/tools/visual-url/design-lint.mjs +83 -0
- package/templates/.agents/tools/visual-url/design-score.mjs +217 -0
- package/templates/.agents/tools/visual-url/failure.mjs +56 -0
- package/templates/.agents/tools/visual-url/files.mjs +176 -0
- package/templates/.agents/tools/visual-url/generated-tokens.mjs +369 -0
- package/templates/.agents/tools/visual-url/handoff.mjs +85 -0
- package/templates/.agents/tools/visual-url/icon.mjs +110 -0
- package/templates/.agents/tools/visual-url/local-source.mjs +63 -0
- package/templates/.agents/tools/visual-url/parser.mjs +288 -0
- package/templates/.agents/tools/visual-url/policy.mjs +201 -0
- package/templates/.agents/tools/visual-url/proposal-markdown.mjs +39 -0
- package/templates/.agents/tools/visual-url/proposal.mjs +388 -0
- package/templates/.agents/tools/visual-url/report.mjs +305 -0
- package/templates/.agents/tools/visual-url/runtime.mjs +218 -0
- package/templates/.agents/tools/visual-url/safe-visual-value.mjs +49 -0
- package/templates/.agents/tools/visual-url/transport.mjs +187 -0
- package/templates/.agents/tools/visual-url/visual-model.mjs +393 -0
- package/templates/.agents/zaip-aios/VERSION +1 -1
- package/templates/.agents/zaip-aios/guides/06-execucao.md +1 -1
- package/templates/.agents/zaip-aios/guides/16-lifecycle-e-reconciliacao.md +1 -1
- package/templates/.agents/zaip-aios/guides/19-assurance-e-autonomia.md +2 -2
- package/templates/.agents/zaip-aios/guides/20-instalacao-detalhada.md +60 -18
- package/templates/.agents/zaip-aios/guides/26-qualidade-e-release.md +8 -0
- package/templates/.agents/zaip-aios/guides/27-telemetria-git-native.md +2 -2
- package/templates/.agents/zaip-aios/guides/28-lifecycle-completo.md +2 -2
- package/templates/infra/terraform/README.md +2 -0
- package/templates/infra/terraform/infisical.tf +57 -0
- package/templates/infra/terraform/terraform.tfvars.example +5 -0
- package/templates/infra/terraform/variables.tf +1 -1
- package/templates/scripts/validate-cloud-hostinger-contract.mjs +4 -1
- package/templates/template-manifest.json +3848 -1119
- package/templates/.agents/architecture/hostinger-cloudflare-terraform.md +0 -90
- package/templates/.agents/dashboard/apps/frontend/dist/assets/CostCalculationGuidePage-uR-asJv_.js +0 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/ProjectSettingsPage-1gE8RHel.js +0 -3
- package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-B0Jwz_rk.js +0 -68
- package/templates/.agents/dashboard/apps/frontend/dist/assets/index-DZhppOIk.css +0 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/index-DtLrd13g.js +0 -2
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/Components.stories-kxWwSKin.js +0 -146
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/DashboardFilters.stories-Chm_dXV7.js +0 -9
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/DashboardFiltersSpecimen-9CaCbGIZ.js +0 -1
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/WorkspaceStatusSpecimen-DQnSS6s9.js +0 -1
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/formatter-L2YTDE3Q-Do9sjqiW.js +0 -1
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/iframe-0W0Gj_Gs.css +0 -1
- package/templates/.agents/design/apps/catalog/dist/storybook/assets/react-NrUxok8K.js +0 -1
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
import { createHash } from "node:crypto";
|
|
2
|
+
import { constants } from "node:fs";
|
|
3
|
+
import { access, lstat, opendir, readFile } from "node:fs/promises";
|
|
4
|
+
import { join } from "node:path";
|
|
5
|
+
const cacheDirectories = new Set(["temp", "cache", "sqlite"]);
|
|
6
|
+
const legacyRoots = [".agents/local", ".agents/state/claims", ".zaip-aios/local-data"];
|
|
7
|
+
const cutoverRoot = ".agents/private/state/storage-cutover";
|
|
8
|
+
const journalName = /^([a-f0-9]{64})\.jsonl$/;
|
|
9
|
+
function pending(reason) {
|
|
10
|
+
throw new Error(`storage_migration_pending: ${reason}. Finish the authenticated storage handoff/recovery ` +
|
|
11
|
+
"with the currently installed runtime before upgrading; --force/--yes cannot bypass it.");
|
|
12
|
+
}
|
|
13
|
+
function notFound(error) {
|
|
14
|
+
return error instanceof Error && "code" in error && error.code === "ENOENT";
|
|
15
|
+
}
|
|
16
|
+
/** Readonly physical inspection. Never follows aliases or creates recovery metadata. */
|
|
17
|
+
async function info(root, name) {
|
|
18
|
+
let current = root;
|
|
19
|
+
for (const part of name.split("/")) {
|
|
20
|
+
current = join(current, part);
|
|
21
|
+
const entry = await lstat(current).catch((error) => {
|
|
22
|
+
if (notFound(error))
|
|
23
|
+
return null;
|
|
24
|
+
throw error;
|
|
25
|
+
});
|
|
26
|
+
if (entry === null)
|
|
27
|
+
return null;
|
|
28
|
+
if (entry.isSymbolicLink() || (entry.isFile() && entry.nlink !== 1))
|
|
29
|
+
pending("operational state contains an unresolved filesystem alias");
|
|
30
|
+
if (current !== join(root, name) && !entry.isDirectory())
|
|
31
|
+
pending("operational state has a non-directory ancestor");
|
|
32
|
+
if (current === join(root, name))
|
|
33
|
+
return entry;
|
|
34
|
+
}
|
|
35
|
+
return null;
|
|
36
|
+
}
|
|
37
|
+
async function hasState(root, name, depth = 0) {
|
|
38
|
+
if (depth > 64)
|
|
39
|
+
pending("legacy state exceeds the inspection depth bound");
|
|
40
|
+
const entry = await info(root, name);
|
|
41
|
+
if (entry === null)
|
|
42
|
+
return false;
|
|
43
|
+
if (!entry.isDirectory())
|
|
44
|
+
return true;
|
|
45
|
+
const directory = await opendir(join(root, name));
|
|
46
|
+
for await (const child of directory) {
|
|
47
|
+
if (child.name === ".gitignore") {
|
|
48
|
+
const ignore = await info(root, `${name}/${child.name}`);
|
|
49
|
+
if (ignore?.isFile())
|
|
50
|
+
continue;
|
|
51
|
+
}
|
|
52
|
+
if (await hasState(root, `${name}/${child.name}`, depth + 1))
|
|
53
|
+
return true;
|
|
54
|
+
}
|
|
55
|
+
return false;
|
|
56
|
+
}
|
|
57
|
+
async function boundedJson(root, name) {
|
|
58
|
+
const entry = await info(root, name);
|
|
59
|
+
if (!entry?.isFile() || entry.size > 1024 * 1024)
|
|
60
|
+
pending("cutover proof is missing or exceeds its inspection bound");
|
|
61
|
+
try {
|
|
62
|
+
const value = JSON.parse(await readFile(join(root, name), "utf8"));
|
|
63
|
+
if (!value || typeof value !== "object" || Array.isArray(value))
|
|
64
|
+
pending("cutover proof is malformed");
|
|
65
|
+
return value;
|
|
66
|
+
}
|
|
67
|
+
catch {
|
|
68
|
+
return pending("cutover proof is malformed");
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
async function assertNoIncompleteCutover(root) {
|
|
72
|
+
for (const lock of ["storage-migration.lock", "storage-copy-session.lock"])
|
|
73
|
+
if (await info(root, `.agents/private/state/${lock}`))
|
|
74
|
+
pending("storage migration is active");
|
|
75
|
+
const entry = await info(root, cutoverRoot);
|
|
76
|
+
if (entry === null)
|
|
77
|
+
return;
|
|
78
|
+
if (!entry.isDirectory())
|
|
79
|
+
pending("cutover root is not a directory");
|
|
80
|
+
if (await info(root, `${cutoverRoot}/active.lock`))
|
|
81
|
+
pending("storage cutover is active");
|
|
82
|
+
const directory = await opendir(join(root, cutoverRoot));
|
|
83
|
+
for await (const child of directory) {
|
|
84
|
+
const match = journalName.exec(child.name);
|
|
85
|
+
if (!match) {
|
|
86
|
+
if (child.name.endsWith(".jsonl"))
|
|
87
|
+
pending("unrecognized cutover journal");
|
|
88
|
+
continue;
|
|
89
|
+
}
|
|
90
|
+
const path = `${cutoverRoot}/${child.name}`;
|
|
91
|
+
const journal = await info(root, path);
|
|
92
|
+
if (!journal?.isFile() || journal.size > 1024 * 1024)
|
|
93
|
+
pending("cutover journal is not a bounded physical file");
|
|
94
|
+
let lastType;
|
|
95
|
+
let journalText = "";
|
|
96
|
+
try {
|
|
97
|
+
journalText = await readFile(join(root, path), "utf8");
|
|
98
|
+
const lines = journalText.trim().split("\n");
|
|
99
|
+
for (const line of lines)
|
|
100
|
+
lastType = JSON.parse(line).type;
|
|
101
|
+
}
|
|
102
|
+
catch {
|
|
103
|
+
pending("cutover journal is incomplete or malformed");
|
|
104
|
+
}
|
|
105
|
+
if (lastType === "preparation_cancelled") {
|
|
106
|
+
const lines = journalText.trimEnd().split("\n");
|
|
107
|
+
const terminalLine = lines.pop();
|
|
108
|
+
const firstLine = lines[0];
|
|
109
|
+
if (!terminalLine || !firstLine)
|
|
110
|
+
pending("cancelled preparation is missing its owner");
|
|
111
|
+
const terminal = JSON.parse(terminalLine);
|
|
112
|
+
const original = `${lines.join("\n")}\n`;
|
|
113
|
+
const first = JSON.parse(firstLine);
|
|
114
|
+
const proof = await boundedJson(root, `.agents/state/storage-migrations/preparation-${match[1]}.json`);
|
|
115
|
+
if (first.type !== "started" ||
|
|
116
|
+
first.generation !== match[1] ||
|
|
117
|
+
first.task !== proof.task ||
|
|
118
|
+
first.run !== proof.run ||
|
|
119
|
+
!["preparation_cancelled_before_copy", "preparation_superseded_before_activation"].includes(String(proof.status)) ||
|
|
120
|
+
proof.generation !== match[1] ||
|
|
121
|
+
proof.replacement !== terminal.replacement ||
|
|
122
|
+
proof.journal_sha256 !== terminal.journal_sha256 ||
|
|
123
|
+
proof.journal_sha256 !== createHash("sha256").update(original).digest("hex") ||
|
|
124
|
+
lines.slice(1).some((line) => {
|
|
125
|
+
const event = JSON.parse(line);
|
|
126
|
+
if (event.type === "copied" &&
|
|
127
|
+
proof.status === "preparation_superseded_before_activation")
|
|
128
|
+
return typeof event.family !== "string" || !/^[a-f0-9]{64}$/.test(event.id);
|
|
129
|
+
return (event.type !== "interrupted" ||
|
|
130
|
+
event.activated !== false ||
|
|
131
|
+
event.deletion_started !== false);
|
|
132
|
+
}))
|
|
133
|
+
pending("cancelled preparation proof differs");
|
|
134
|
+
continue;
|
|
135
|
+
}
|
|
136
|
+
if (lastType !== "completed")
|
|
137
|
+
pending("storage cutover has not completed");
|
|
138
|
+
const receipt = await boundedJson(root, `.agents/state/storage-migrations/cutover-${match[1]}.json`);
|
|
139
|
+
const archive = await boundedJson(root, ".agents/state/storage-migrations/local-archive.json");
|
|
140
|
+
if (receipt.status !== "operational_cutover_verified" ||
|
|
141
|
+
receipt.generation !== match[1] ||
|
|
142
|
+
archive.generation !== match[1])
|
|
143
|
+
pending("cutover completion references conflict");
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
/** Run BEFORE template loading, legacy migration planning, backups or installer writes.
|
|
147
|
+
* Cache-only is deliberately narrow: unknown legacy files require classification.
|
|
148
|
+
* Completion metadata never overrides remaining legacy facts and grants no authority.
|
|
149
|
+
*/
|
|
150
|
+
export async function assertInstallerStorageReady(root) {
|
|
151
|
+
await access(root, constants.W_OK);
|
|
152
|
+
await assertNoIncompleteCutover(root);
|
|
153
|
+
for (const legacy of legacyRoots)
|
|
154
|
+
if (await hasState(root, legacy))
|
|
155
|
+
pending(`legacy operational state remains in ${legacy}`);
|
|
156
|
+
const local = await info(root, ".local");
|
|
157
|
+
if (local === null)
|
|
158
|
+
return;
|
|
159
|
+
if (!local.isDirectory())
|
|
160
|
+
pending("legacy .local is not a physical directory");
|
|
161
|
+
const directory = await opendir(join(root, ".local"));
|
|
162
|
+
for await (const child of directory) {
|
|
163
|
+
const path = `.local/${child.name}`;
|
|
164
|
+
const entry = await info(root, path);
|
|
165
|
+
if (cacheDirectories.has(child.name) && entry?.isDirectory())
|
|
166
|
+
continue;
|
|
167
|
+
if ([".gitignore", "README.md"].includes(child.name) && entry?.isFile())
|
|
168
|
+
continue;
|
|
169
|
+
if (await hasState(root, path))
|
|
170
|
+
pending(`unmigrated or unclassified state remains in ${path}`);
|
|
171
|
+
}
|
|
172
|
+
}
|
|
173
|
+
//# sourceMappingURL=install-storage-boundary.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install-storage-boundary.js","sourceRoot":"","sources":["../../src/services/install-storage-boundary.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install-storage-boundary.test.d.ts","sourceRoot":"","sources":["../../src/services/install-storage-boundary.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
import { createHash } from "node:crypto";
|
|
2
|
+
import { mkdir, mkdtemp, readdir, readFile, rm, writeFile } from "node:fs/promises";
|
|
3
|
+
import { tmpdir } from "node:os";
|
|
4
|
+
import { dirname, join } from "node:path";
|
|
5
|
+
import { afterEach, expect, it } from "vitest";
|
|
6
|
+
import { installAgentsTemplate } from "./install-agents-template.js";
|
|
7
|
+
import { assertInstallerStorageReady } from "./install-storage-boundary.js";
|
|
8
|
+
const roots = [];
|
|
9
|
+
it("accepts only a bound cancellation before copy and rejects a forged cancellation", async () => {
|
|
10
|
+
const f = await fixture(), generation = "a".repeat(64), replacement = "b".repeat(64);
|
|
11
|
+
const before = `${JSON.stringify({ type: "started", generation, task: "TASK-FIXTURE", run: "RUN-FIXTURE" })}\n${JSON.stringify({ type: "interrupted", activated: false, deletion_started: false })}\n`;
|
|
12
|
+
const hash = createHash("sha256").update(before).digest("hex");
|
|
13
|
+
const path = `.agents/private/state/storage-cutover/${generation}.jsonl`;
|
|
14
|
+
await f.put(path, before +
|
|
15
|
+
`${JSON.stringify({ type: "preparation_cancelled", replacement, journal_sha256: hash })}\n`);
|
|
16
|
+
await expect(assertInstallerStorageReady(f.root)).rejects.toThrow(/storage_migration_pending/);
|
|
17
|
+
const proof = {
|
|
18
|
+
status: "preparation_cancelled_before_copy",
|
|
19
|
+
generation,
|
|
20
|
+
replacement,
|
|
21
|
+
task: "TASK-FIXTURE",
|
|
22
|
+
run: "RUN-FIXTURE",
|
|
23
|
+
journal_sha256: hash,
|
|
24
|
+
};
|
|
25
|
+
await f.put(`.agents/state/storage-migrations/preparation-${generation}.json`, JSON.stringify(proof));
|
|
26
|
+
await expect(assertInstallerStorageReady(f.root)).resolves.toBeUndefined();
|
|
27
|
+
await f.put(path, before.replace('"activated":false', '"activated":true') +
|
|
28
|
+
`${JSON.stringify({ type: "preparation_cancelled", replacement, journal_sha256: hash })}\n`);
|
|
29
|
+
await expect(assertInstallerStorageReady(f.root)).rejects.toThrow(/proof differs/);
|
|
30
|
+
});
|
|
31
|
+
afterEach(async () => {
|
|
32
|
+
await Promise.all(roots.splice(0).map((root) => rm(root, { recursive: true, force: true })));
|
|
33
|
+
});
|
|
34
|
+
async function fixture() {
|
|
35
|
+
const parent = await mkdtemp(join(tmpdir(), "zaip-install-storage-"));
|
|
36
|
+
roots.push(parent);
|
|
37
|
+
const root = join(parent, "project"), template = join(parent, "template");
|
|
38
|
+
await mkdir(root);
|
|
39
|
+
await mkdir(template);
|
|
40
|
+
const emptyDigest = createHash("sha256").digest("hex");
|
|
41
|
+
await writeFile(join(template, "template-manifest.json"), JSON.stringify({
|
|
42
|
+
schemaVersion: 1,
|
|
43
|
+
templateVersion: "7.5.0",
|
|
44
|
+
minimumCliVersion: "7.5.0",
|
|
45
|
+
source: "isolated-test",
|
|
46
|
+
sourceFilesSha256: emptyDigest,
|
|
47
|
+
runtimeFilesSha256: emptyDigest,
|
|
48
|
+
files: [],
|
|
49
|
+
}));
|
|
50
|
+
const put = async (name, value) => {
|
|
51
|
+
await mkdir(dirname(join(root, name)), { recursive: true });
|
|
52
|
+
await writeFile(join(root, name), value);
|
|
53
|
+
};
|
|
54
|
+
return { root, template, put };
|
|
55
|
+
}
|
|
56
|
+
async function snapshot(root, prefix = "") {
|
|
57
|
+
const result = {};
|
|
58
|
+
for (const entry of await readdir(join(root, prefix), { withFileTypes: true })) {
|
|
59
|
+
const path = prefix ? `${prefix}/${entry.name}` : entry.name;
|
|
60
|
+
if (entry.isDirectory()) {
|
|
61
|
+
result[`${path}/`] = "";
|
|
62
|
+
Object.assign(result, await snapshot(root, path));
|
|
63
|
+
}
|
|
64
|
+
else
|
|
65
|
+
result[path] = (await readFile(join(root, path))).toString("base64");
|
|
66
|
+
}
|
|
67
|
+
return result;
|
|
68
|
+
}
|
|
69
|
+
it.each([
|
|
70
|
+
".local/dashboard-sqlite/read-model.sqlite",
|
|
71
|
+
".local/zaip-node/node.exe",
|
|
72
|
+
".local/developer-identity.json",
|
|
73
|
+
".local/autonomous/astra-diagnostic-quota/TASK-ONE/reservation.json",
|
|
74
|
+
".local/hooks/receipt.json",
|
|
75
|
+
".local/rapid-validation-cache-proposal.json",
|
|
76
|
+
".agents/local/claims/old.json",
|
|
77
|
+
".agents/state/claims/old.json",
|
|
78
|
+
".zaip-aios/local-data/recovery/old.json",
|
|
79
|
+
".agents/private/state/storage-cutover/active.lock",
|
|
80
|
+
".agents/private/state/storage-migration.lock",
|
|
81
|
+
`.agents/private/state/storage-cutover/${"a".repeat(64)}.jsonl`,
|
|
82
|
+
])("refuses forced upgrade before effects when %s requires recovery", async (pending) => {
|
|
83
|
+
const f = await fixture();
|
|
84
|
+
for (const path of [
|
|
85
|
+
".agents/runtime/bin/zaip.mjs",
|
|
86
|
+
".codex/hooks/zaip-pre-tool-use.mjs",
|
|
87
|
+
".codex/config.toml",
|
|
88
|
+
".agents/config/framework.lock.yaml",
|
|
89
|
+
])
|
|
90
|
+
await f.put(path, "sentinel-before-upgrade\n");
|
|
91
|
+
await f.put(pending, pending.endsWith(".jsonl") ? '{"type":"started"}\n' : "private-fact");
|
|
92
|
+
const before = await snapshot(f.root);
|
|
93
|
+
for (const force of [false, true]) {
|
|
94
|
+
await expect(installAgentsTemplate({ cwd: f.root, templateDirectory: f.template, force, yes: true })).rejects.toThrow(/storage_migration_pending/);
|
|
95
|
+
expect(await snapshot(f.root)).toEqual(before);
|
|
96
|
+
}
|
|
97
|
+
});
|
|
98
|
+
it.each([false, true])("permits fresh/cache-only installation (cache=%s)", async (cache) => {
|
|
99
|
+
const f = await fixture();
|
|
100
|
+
if (cache) {
|
|
101
|
+
await f.put(".local/temp/test.log", "reproducible");
|
|
102
|
+
await f.put(".local/cache/rebuilt.bin", "reproducible");
|
|
103
|
+
await f.put(".local/sqlite/dashboard.sqlite", "reproducible");
|
|
104
|
+
await f.put(".local/.gitignore", "*\n!.gitignore\n");
|
|
105
|
+
}
|
|
106
|
+
await expect(installAgentsTemplate({ cwd: f.root, templateDirectory: f.template, force: true, yes: true })).resolves.toMatchObject({ applied: true });
|
|
107
|
+
if (cache)
|
|
108
|
+
expect(await readFile(join(f.root, ".local/temp/test.log"), "utf8")).toBe("reproducible");
|
|
109
|
+
});
|
|
110
|
+
//# sourceMappingURL=install-storage-boundary.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install-storage-boundary.test.js","sourceRoot":"","sources":["../../src/services/install-storage-boundary.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install-template-backup.d.ts","sourceRoot":"","sources":["../../src/services/install-template-backup.ts"],"names":[],"mappings":"AAEA,wBAAsB,YAAY,CAChC,IAAI,EAAE,MAAM,EACZ,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GACxC,OAAO,CAAC,IAAI,CAAC,CAiBf;AAED,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CASzF"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { cp, lstat, mkdir, writeFile } from "node:fs/promises";
|
|
2
|
+
import { dirname, resolve } from "node:path";
|
|
3
|
+
export async function createBackup(root, backupPath, currentFiles) {
|
|
4
|
+
const agentsPath = resolve(root, ".agents");
|
|
5
|
+
const agentsInfo = await lstat(agentsPath).catch((error) => {
|
|
6
|
+
if (isNotFound(error))
|
|
7
|
+
return null;
|
|
8
|
+
throw error;
|
|
9
|
+
});
|
|
10
|
+
if (agentsInfo?.isDirectory()) {
|
|
11
|
+
await cp(agentsPath, backupPath, { recursive: true, errorOnExist: true, force: false });
|
|
12
|
+
}
|
|
13
|
+
else {
|
|
14
|
+
await mkdir(backupPath, { recursive: false });
|
|
15
|
+
}
|
|
16
|
+
for (const [path, content] of currentFiles) {
|
|
17
|
+
if (path.startsWith(".agents/"))
|
|
18
|
+
continue;
|
|
19
|
+
const destination = resolve(backupPath, "_adapters", path);
|
|
20
|
+
await mkdir(dirname(destination), { recursive: true });
|
|
21
|
+
await writeFile(destination, content, { flag: "wx" });
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
export async function availableBackupPath(root, now = new Date()) {
|
|
25
|
+
const stamp = now.toISOString().slice(0, 19).replaceAll(":", "");
|
|
26
|
+
const base = resolve(root, `.agents.backup-${stamp}`);
|
|
27
|
+
if (!(await pathExists(base)))
|
|
28
|
+
return base;
|
|
29
|
+
for (let suffix = 2; suffix < 10_000; suffix += 1) {
|
|
30
|
+
const candidate = `${base}-${suffix}`;
|
|
31
|
+
if (!(await pathExists(candidate)))
|
|
32
|
+
return candidate;
|
|
33
|
+
}
|
|
34
|
+
throw new Error("Could not allocate a unique .agents backup path");
|
|
35
|
+
}
|
|
36
|
+
async function pathExists(path) {
|
|
37
|
+
return lstat(path).then(() => true, (error) => {
|
|
38
|
+
if (isNotFound(error))
|
|
39
|
+
return false;
|
|
40
|
+
throw error;
|
|
41
|
+
});
|
|
42
|
+
}
|
|
43
|
+
function isNotFound(error) {
|
|
44
|
+
return error instanceof Error && "code" in error && error.code === "ENOENT";
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=install-template-backup.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install-template-backup.js","sourceRoot":"","sources":["../../src/services/install-template-backup.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC/D,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,IAAY,EACZ,UAAkB,EAClB,YAAyC;IAEzC,MAAM,UAAU,GAAG,OAAO,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC5C,MAAM,UAAU,GAAG,MAAM,KAAK,CAAC,UAAU,CAAC,CAAC,KAAK,CAAC,CAAC,KAAc,EAAE,EAAE;QAClE,IAAI,UAAU,CAAC,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACnC,MAAM,KAAK,CAAC;IACd,CAAC,CAAC,CAAC;IACH,IAAI,UAAU,EAAE,WAAW,EAAE,EAAE,CAAC;QAC9B,MAAM,EAAE,CAAC,UAAU,EAAE,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;IAC1F,CAAC;SAAM,CAAC;QACN,MAAM,KAAK,CAAC,UAAU,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,YAAY,EAAE,CAAC;QAC3C,IAAI,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;YAAE,SAAS;QAC1C,MAAM,WAAW,GAAG,OAAO,CAAC,UAAU,EAAE,WAAW,EAAE,IAAI,CAAC,CAAC;QAC3D,MAAM,KAAK,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACvD,MAAM,SAAS,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACxD,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,IAAY,EAAE,GAAG,GAAG,IAAI,IAAI,EAAE;IACtE,MAAM,KAAK,GAAG,GAAG,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACjE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,kBAAkB,KAAK,EAAE,CAAC,CAAC;IACtD,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,IAAI,CAAC,CAAC;QAAE,OAAO,IAAI,CAAC;IAC3C,KAAK,IAAI,MAAM,GAAG,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC;QAClD,MAAM,SAAS,GAAG,GAAG,IAAI,IAAI,MAAM,EAAE,CAAC;QACtC,IAAI,CAAC,CAAC,MAAM,UAAU,CAAC,SAAS,CAAC,CAAC;YAAE,OAAO,SAAS,CAAC;IACvD,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,iDAAiD,CAAC,CAAC;AACrE,CAAC;AAED,KAAK,UAAU,UAAU,CAAC,IAAY;IACpC,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CACrB,GAAG,EAAE,CAAC,IAAI,EACV,CAAC,KAAc,EAAE,EAAE;QACjB,IAAI,UAAU,CAAC,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QACpC,MAAM,KAAK,CAAC;IACd,CAAC,CACF,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CAAC,KAAc;IAChC,OAAO,KAAK,YAAY,KAAK,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,QAAQ,CAAC;AAC9E,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install-template-lock.d.ts","sourceRoot":"","sources":["../../src/services/install-template-lock.ts"],"names":[],"mappings":"AAAA,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,CA6BrE"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
export function lockEntries(lock) {
|
|
2
|
+
const result = new Map();
|
|
3
|
+
const lines = lock.split(/\r?\n/);
|
|
4
|
+
let inManaged = false;
|
|
5
|
+
let current = null;
|
|
6
|
+
for (const line of lines) {
|
|
7
|
+
if (line === "managed_files:") {
|
|
8
|
+
inManaged = true;
|
|
9
|
+
continue;
|
|
10
|
+
}
|
|
11
|
+
if (!inManaged)
|
|
12
|
+
continue;
|
|
13
|
+
const compactMatch = /^ {2}(?:"([^"]+)"|([^:]+)): ([a-f0-9]{64})$/.exec(line);
|
|
14
|
+
if (compactMatch !== null) {
|
|
15
|
+
result.set(compactMatch[1] ?? compactMatch[2], compactMatch[3]);
|
|
16
|
+
current = null;
|
|
17
|
+
continue;
|
|
18
|
+
}
|
|
19
|
+
const pathMatch = /^ {2}(?:"([^"]+)"|([^:]+)):$/.exec(line);
|
|
20
|
+
if (pathMatch !== null) {
|
|
21
|
+
current = pathMatch[1] ?? pathMatch[2] ?? null;
|
|
22
|
+
continue;
|
|
23
|
+
}
|
|
24
|
+
const hashMatch = /^ {4}sha256: ([a-f0-9]{64})$/.exec(line);
|
|
25
|
+
if (current !== null && hashMatch !== null) {
|
|
26
|
+
result.set(current, hashMatch[1]);
|
|
27
|
+
current = null;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
return result;
|
|
31
|
+
}
|
|
32
|
+
//# sourceMappingURL=install-template-lock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install-template-lock.js","sourceRoot":"","sources":["../../src/services/install-template-lock.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,WAAW,CAAC,IAAY;IACtC,MAAM,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;IACzC,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAClC,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,OAAO,GAAkB,IAAI,CAAC;IAClC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,KAAK,gBAAgB,EAAE,CAAC;YAC9B,SAAS,GAAG,IAAI,CAAC;YACjB,SAAS;QACX,CAAC;QACD,IAAI,CAAC,SAAS;YAAE,SAAS;QACzB,MAAM,YAAY,GAAG,6CAA6C,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC9E,IAAI,YAAY,KAAK,IAAI,EAAE,CAAC;YAC1B,MAAM,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC,CAAC,IAAK,YAAY,CAAC,CAAC,CAAY,EAAE,YAAY,CAAC,CAAC,CAAW,CAAC,CAAC;YACtF,OAAO,GAAG,IAAI,CAAC;YACf,SAAS;QACX,CAAC;QACD,MAAM,SAAS,GAAG,8BAA8B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5D,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YACvB,OAAO,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC;YAC/C,SAAS;QACX,CAAC;QACD,MAAM,SAAS,GAAG,8BAA8B,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC5D,IAAI,OAAO,KAAK,IAAI,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;YAC3C,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAW,CAAC,CAAC;YAC5C,OAAO,GAAG,IAAI,CAAC;QACjB,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC"}
|
|
@@ -1,3 +1,19 @@
|
|
|
1
1
|
export declare const PROJECT_OVERVIEW_ARTIFACTS: Set<string>;
|
|
2
|
+
export declare function isProjectOwnedMakerPath(path: string): boolean;
|
|
3
|
+
export declare function isProjectOwnedArchitecturePath(path: string): boolean;
|
|
4
|
+
/** Only this portable Terraform root is seeded once; other infra paths keep their policy. */
|
|
5
|
+
export declare function isProjectOwnedTerraformPath(path: string): boolean;
|
|
6
|
+
type InspectedSeed = {
|
|
7
|
+
file: {
|
|
8
|
+
path: string;
|
|
9
|
+
content: string | Buffer;
|
|
10
|
+
};
|
|
11
|
+
current: Buffer | null;
|
|
12
|
+
};
|
|
13
|
+
/** No HCL inference: add missing seeds only to an empty root or an exact known foundation. */
|
|
14
|
+
export declare function omittedTerraformSeeds(root: string, inspected: readonly InspectedSeed[], currentManaged: ReadonlyMap<string, string>): Promise<ReadonlySet<string>>;
|
|
15
|
+
export declare function hasAlternateArchitecturePrincipal(root: string): Promise<boolean>;
|
|
2
16
|
export declare function retiredTemplatePaths(currentManaged: ReadonlyMap<string, string>, renderedPaths: ReadonlySet<string>): readonly string[];
|
|
17
|
+
export declare const FLAT_FRAMEWORK_RULES: Set<string>;
|
|
18
|
+
export {};
|
|
3
19
|
//# sourceMappingURL=install-template-policy.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install-template-policy.d.ts","sourceRoot":"","sources":["../../src/services/install-template-policy.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"install-template-policy.d.ts","sourceRoot":"","sources":["../../src/services/install-template-policy.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,0BAA0B,aAYrC,CAAC;AAEH,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAI7D;AACD,wBAAgB,8BAA8B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEpE;AAED,6FAA6F;AAC7F,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAEjE;AAED,KAAK,aAAa,GAAG;IACnB,IAAI,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CAAC;IACjD,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;CACxB,CAAC;AAYF,8FAA8F;AAC9F,wBAAsB,qBAAqB,CACzC,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,SAAS,aAAa,EAAE,EACnC,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,GAC1C,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAuB9B;AACD,wBAAsB,iCAAiC,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAUtF;AAED,wBAAgB,oBAAoB,CAClC,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,EAC3C,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,GACjC,SAAS,MAAM,EAAE,CAWnB;AACD,eAAO,MAAM,oBAAoB,aAe/B,CAAC"}
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
+
import { createHash } from "node:crypto";
|
|
2
|
+
import { readdir } from "node:fs/promises";
|
|
3
|
+
import { resolve } from "node:path";
|
|
1
4
|
const RETIRED_MANAGED_TEMPLATE_PATHS = [
|
|
2
5
|
".agents/skills/zaip-skill-github-npm-deploy/SKILL.md",
|
|
3
6
|
".agents/skills/zaip-skill-github-npm-deploy/agents/openai.yaml",
|
|
@@ -7,6 +10,7 @@ export const PROJECT_OVERVIEW_ARTIFACTS = new Set([
|
|
|
7
10
|
"tsconfig.base.json",
|
|
8
11
|
// Seed once, then preserve preferences even during a forced framework upgrade.
|
|
9
12
|
".agents/config/deploy-policy.json",
|
|
13
|
+
".agents/config/autonomous-cloud-inputs.json",
|
|
10
14
|
".agents/architecture/software-architecture.md",
|
|
11
15
|
".agents/design/DESIGN.md",
|
|
12
16
|
".agents/branding/brandbook.md",
|
|
@@ -14,12 +18,80 @@ export const PROJECT_OVERVIEW_ARTIFACTS = new Set([
|
|
|
14
18
|
".agents/sales/playbook.md",
|
|
15
19
|
".agents/growth/strategy.md",
|
|
16
20
|
]);
|
|
21
|
+
export function isProjectOwnedMakerPath(path) {
|
|
22
|
+
return /^\.agents\/design\/design-system-maker\/(?:data|uploads?|exports?|history|\.local|_outputs)(?:\/|$)/i.test(path);
|
|
23
|
+
}
|
|
24
|
+
export function isProjectOwnedArchitecturePath(path) {
|
|
25
|
+
return path.startsWith(".agents/architecture/");
|
|
26
|
+
}
|
|
27
|
+
/** Only this portable Terraform root is seeded once; other infra paths keep their policy. */
|
|
28
|
+
export function isProjectOwnedTerraformPath(path) {
|
|
29
|
+
return path.startsWith("infra/terraform/");
|
|
30
|
+
}
|
|
31
|
+
const terraformFoundationFiles = ["main.tf", "variables.tf", "versions.tf"];
|
|
32
|
+
// Exact LF-normalized variables.tf from fad9e426c81c3a5b1458ae8b5dade465553ad117.
|
|
33
|
+
// Only its explanatory manage_vps description differs; schema is unchanged.
|
|
34
|
+
const legacyTerraformFoundationHashes = {
|
|
35
|
+
"infra/terraform/variables.tf": [
|
|
36
|
+
"4777b3633760d90204eede59ea85bcbfdf65e9a481edfe54b30767decff17db5",
|
|
37
|
+
],
|
|
38
|
+
};
|
|
39
|
+
const normalizedSeedHash = (content) => createHash("sha256").update(content.toString().replaceAll("\r\n", "\n")).digest("hex");
|
|
40
|
+
/** No HCL inference: add missing seeds only to an empty root or an exact known foundation. */
|
|
41
|
+
export async function omittedTerraformSeeds(root, inspected, currentManaged) {
|
|
42
|
+
const missing = inspected.filter(({ file, current }) => isProjectOwnedTerraformPath(file.path) && current === null);
|
|
43
|
+
if (missing.length === 0)
|
|
44
|
+
return new Set();
|
|
45
|
+
const existing = await readdir(resolve(root, "infra/terraform")).catch((error) => {
|
|
46
|
+
if (error.code === "ENOENT")
|
|
47
|
+
return [];
|
|
48
|
+
throw error;
|
|
49
|
+
});
|
|
50
|
+
if (existing.length === 0)
|
|
51
|
+
return new Set();
|
|
52
|
+
const knownFoundation = terraformFoundationFiles.every((name) => {
|
|
53
|
+
const entry = inspected.find(({ file }) => file.path === `infra/terraform/${name}`);
|
|
54
|
+
if (entry?.current === null || entry?.current === undefined)
|
|
55
|
+
return false;
|
|
56
|
+
if (normalizedSeedHash(entry.current) === normalizedSeedHash(entry.file.content))
|
|
57
|
+
return true;
|
|
58
|
+
return (legacyTerraformFoundationHashes[entry.file.path]?.includes(normalizedSeedHash(entry.current)) === true &&
|
|
59
|
+
currentManaged.get(entry.file.path) ===
|
|
60
|
+
createHash("sha256").update(entry.current).digest("hex"));
|
|
61
|
+
});
|
|
62
|
+
return new Set(knownFoundation ? [] : missing.map(({ file }) => file.path));
|
|
63
|
+
}
|
|
64
|
+
export async function hasAlternateArchitecturePrincipal(root) {
|
|
65
|
+
const entries = await readdir(resolve(root, ".agents/architecture")).catch((error) => {
|
|
66
|
+
if (error.code === "ENOENT")
|
|
67
|
+
return [];
|
|
68
|
+
throw error;
|
|
69
|
+
});
|
|
70
|
+
return (!entries.includes("software-architecture.md") && entries.some((name) => name.endsWith(".md")));
|
|
71
|
+
}
|
|
17
72
|
export function retiredTemplatePaths(currentManaged, renderedPaths) {
|
|
18
73
|
return [
|
|
19
74
|
...RETIRED_MANAGED_TEMPLATE_PATHS,
|
|
20
|
-
...[...currentManaged.keys()].filter((path) => !
|
|
75
|
+
...[...currentManaged.keys()].filter((path) => !isProjectOwnedMakerPath(path) &&
|
|
76
|
+
!renderedPaths.has(path) &&
|
|
21
77
|
(path.startsWith(".agents/dashboard/apps/frontend/dist/") ||
|
|
22
78
|
path.startsWith(".agents/design/apps/catalog/dist/"))),
|
|
23
79
|
];
|
|
24
80
|
}
|
|
81
|
+
export const FLAT_FRAMEWORK_RULES = new Set([
|
|
82
|
+
".agents/rules/core.md",
|
|
83
|
+
".agents/rules/workflow.md",
|
|
84
|
+
".agents/rules/architecture.md",
|
|
85
|
+
".agents/rules/autonomy-decision.md",
|
|
86
|
+
".agents/rules/security.md",
|
|
87
|
+
".agents/rules/context.md",
|
|
88
|
+
".agents/rules/dashboard-ui-consistency.md",
|
|
89
|
+
".agents/rules/evolution.md",
|
|
90
|
+
".agents/rules/frontend-lite.md",
|
|
91
|
+
".agents/rules/model-orchestration.md",
|
|
92
|
+
".agents/rules/run-lifecycle-closure.md",
|
|
93
|
+
".agents/rules/specialist-routing.md",
|
|
94
|
+
".agents/rules/text-writing-utf8.md",
|
|
95
|
+
".agents/rules/.gitkeep",
|
|
96
|
+
]);
|
|
25
97
|
//# sourceMappingURL=install-template-policy.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"install-template-policy.js","sourceRoot":"","sources":["../../src/services/install-template-policy.ts"],"names":[],"mappings":"AAAA,MAAM,8BAA8B,GAAG;IACrC,sDAAsD;IACtD,gEAAgE;CACxD,CAAC;AACX,MAAM,CAAC,MAAM,0BAA0B,GAAG,IAAI,GAAG,CAAC;IAChD,gFAAgF;IAChF,oBAAoB;IACpB,+EAA+E;IAC/E,mCAAmC;IACnC,+CAA+C;IAC/C,0BAA0B;IAC1B,+BAA+B;IAC/B,+BAA+B;IAC/B,2BAA2B;IAC3B,4BAA4B;CAC7B,CAAC,CAAC;AAEH,MAAM,UAAU,oBAAoB,CAClC,cAA2C,EAC3C,aAAkC;IAElC,OAAO;QACL,GAAG,8BAA8B;QACjC,GAAG,CAAC,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAClC,CAAC,IAAI,EAAE,EAAE,CACP,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC;YACxB,CAAC,IAAI,CAAC,UAAU,CAAC,uCAAuC,CAAC;gBACvD,IAAI,CAAC,UAAU,CAAC,mCAAmC,CAAC,CAAC,CAC1D;KACF,CAAC;AACJ,CAAC"}
|
|
1
|
+
{"version":3,"file":"install-template-policy.js","sourceRoot":"","sources":["../../src/services/install-template-policy.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type AdapterClients } from "./client-selection.js";
|
|
2
|
+
import type { LoadedTemplateFile } from "./template-manifest.js";
|
|
3
|
+
export interface RenderedFile {
|
|
4
|
+
path: string;
|
|
5
|
+
content: string | Buffer;
|
|
6
|
+
kind: "template" | "adapter";
|
|
7
|
+
expectedAbsent?: boolean;
|
|
8
|
+
}
|
|
9
|
+
/** Render only selected projections before deriving managed-file ownership. */
|
|
10
|
+
export declare function renderTemplate(files: readonly LoadedTemplateFile[], projectName: string, frameworkVersion: string, clients: AdapterClients): RenderedFile[];
|
|
11
|
+
//# sourceMappingURL=install-template-render.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"install-template-render.d.ts","sourceRoot":"","sources":["../../src/services/install-template-render.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,cAAc,EAA0B,MAAM,uBAAuB,CAAC;AASpF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAEjE,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;IACzB,IAAI,EAAE,UAAU,GAAG,SAAS,CAAC;IAC7B,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,+EAA+E;AAC/E,wBAAgB,cAAc,CAC5B,KAAK,EAAE,SAAS,kBAAkB,EAAE,EACpC,WAAW,EAAE,MAAM,EACnB,gBAAgB,EAAE,MAAM,EACxB,OAAO,EAAE,cAAc,GACtB,YAAY,EAAE,CAgDhB"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { AGENT_CATALOG_PATH } from "./agent-catalog-upgrade.js";
|
|
2
|
+
import { isClientAdapterEnabled } from "./client-selection.js";
|
|
3
|
+
import { renderProjectClients } from "./install-client-selection.js";
|
|
4
|
+
import { isProjectOwnedArchitecturePath, isProjectOwnedMakerPath, isProjectOwnedTerraformPath, PROJECT_OVERVIEW_ARTIFACTS, } from "./install-template-policy.js";
|
|
5
|
+
import { frameworkLock } from "./render-framework-lock.js";
|
|
6
|
+
/** Render only selected projections before deriving managed-file ownership. */
|
|
7
|
+
export function renderTemplate(files, projectName, frameworkVersion, clients) {
|
|
8
|
+
const projectId = normalizeProjectId(projectName);
|
|
9
|
+
const rendered = files
|
|
10
|
+
.filter((file) => file.path !== ".agents/config/framework.lock.yaml" &&
|
|
11
|
+
!isProjectOwnedMakerPath(file.path) &&
|
|
12
|
+
isClientAdapterEnabled(file.path, clients))
|
|
13
|
+
.map((file) => ({
|
|
14
|
+
path: file.path,
|
|
15
|
+
content: typeof file.content === "string"
|
|
16
|
+
? file.content
|
|
17
|
+
.replaceAll("{{PROJECT_NAME}}", JSON.stringify(projectName))
|
|
18
|
+
.replaceAll("{{PROJECT_ID}}", JSON.stringify(projectId))
|
|
19
|
+
: file.content,
|
|
20
|
+
kind: "template",
|
|
21
|
+
}));
|
|
22
|
+
const config = rendered.find((file) => file.path === ".agents/config/project.yaml");
|
|
23
|
+
if (config && typeof config.content === "string")
|
|
24
|
+
config.content = renderProjectClients(config.content, clients);
|
|
25
|
+
// Match seed-once consumer ownership so legitimate DESIGN edits remain valid.
|
|
26
|
+
const designManifest = rendered.find((file) => file.path === ".agents/design/.zaip-managed.json");
|
|
27
|
+
if (designManifest && typeof designManifest.content === "string") {
|
|
28
|
+
const manifest = JSON.parse(designManifest.content);
|
|
29
|
+
manifest.files = manifest.files.filter((file) => !PROJECT_OVERVIEW_ARTIFACTS.has(`.agents/design/${file.path}`) &&
|
|
30
|
+
!isProjectOwnedMakerPath(`.agents/design/${file.path}`));
|
|
31
|
+
designManifest.content = `${JSON.stringify(manifest, null, 2)}\n`;
|
|
32
|
+
}
|
|
33
|
+
const managed = rendered.filter((file) => (file.path === AGENT_CATALOG_PATH || !file.path.startsWith(".agents/config/")) &&
|
|
34
|
+
!PROJECT_OVERVIEW_ARTIFACTS.has(file.path) &&
|
|
35
|
+
!isProjectOwnedTerraformPath(file.path) &&
|
|
36
|
+
!isProjectOwnedArchitecturePath(file.path));
|
|
37
|
+
rendered.push({
|
|
38
|
+
path: ".agents/config/framework.lock.yaml",
|
|
39
|
+
content: frameworkLock(managed, frameworkVersion),
|
|
40
|
+
kind: "template",
|
|
41
|
+
});
|
|
42
|
+
return rendered;
|
|
43
|
+
}
|
|
44
|
+
function normalizeProjectId(name) {
|
|
45
|
+
const normalized = name
|
|
46
|
+
.normalize("NFKD")
|
|
47
|
+
.replace(/[\u0300-\u036f]/g, "")
|
|
48
|
+
.toLowerCase()
|
|
49
|
+
.replace(/[^a-z0-9]+/g, "-")
|
|
50
|
+
.replace(/^-+|-+$/g, "");
|
|
51
|
+
return normalized || "zaip-project";
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=install-template-render.js.map
|