@zaip-ai/cli 3.7.0 → 4.0.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 +5 -5
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +6 -0
- package/dist/commands/init.js.map +1 -1
- package/dist/services/adapters.d.ts +1 -1
- package/dist/services/adapters.d.ts.map +1 -1
- package/dist/services/adapters.js +22 -4
- package/dist/services/adapters.js.map +1 -1
- package/dist/services/adapters.test.js +24 -0
- package/dist/services/adapters.test.js.map +1 -1
- package/dist/services/agent-adapters.js +1 -1
- package/dist/services/agent-adapters.js.map +1 -1
- package/dist/services/backup-gitignore.d.ts +9 -0
- package/dist/services/backup-gitignore.d.ts.map +1 -0
- package/dist/services/backup-gitignore.js +66 -0
- package/dist/services/backup-gitignore.js.map +1 -0
- package/dist/services/backup-gitignore.test.d.ts +2 -0
- package/dist/services/backup-gitignore.test.d.ts.map +1 -0
- package/dist/services/backup-gitignore.test.js +27 -0
- package/dist/services/backup-gitignore.test.js.map +1 -0
- package/dist/services/codex-conversation-lifecycle-hook.d.ts.map +1 -1
- package/dist/services/codex-conversation-lifecycle-hook.js +15 -7
- package/dist/services/codex-conversation-lifecycle-hook.js.map +1 -1
- package/dist/services/install-agents-template.d.ts.map +1 -1
- package/dist/services/install-agents-template.js +43 -127
- package/dist/services/install-agents-template.js.map +1 -1
- package/dist/services/install-template-policy.d.ts.map +1 -1
- package/dist/services/install-template-policy.js +2 -0
- package/dist/services/install-template-policy.js.map +1 -1
- package/dist/services/legacy-records-migration.d.ts +15 -0
- package/dist/services/legacy-records-migration.d.ts.map +1 -0
- package/dist/services/legacy-records-migration.js +109 -0
- package/dist/services/legacy-records-migration.js.map +1 -0
- package/dist/services/local-state-migration.d.ts +8 -1
- package/dist/services/local-state-migration.d.ts.map +1 -1
- package/dist/services/local-state-migration.js +67 -32
- package/dist/services/local-state-migration.js.map +1 -1
- package/dist/services/logger.d.ts.map +1 -1
- package/dist/services/logger.js +2 -0
- package/dist/services/logger.js.map +1 -1
- package/dist/services/project-model-migration.d.ts +3 -0
- package/dist/services/project-model-migration.d.ts.map +1 -0
- package/dist/services/project-model-migration.js +163 -0
- package/dist/services/project-model-migration.js.map +1 -0
- package/dist/services/project-model-migration.test.d.ts +2 -0
- package/dist/services/project-model-migration.test.d.ts.map +1 -0
- package/dist/services/project-model-migration.test.js +62 -0
- package/dist/services/project-model-migration.test.js.map +1 -0
- package/dist/services/sqlite-bootstrap.d.ts.map +1 -1
- package/dist/services/sqlite-bootstrap.js +9 -1
- package/dist/services/sqlite-bootstrap.js.map +1 -1
- package/dist/services/template-manifest.d.ts.map +1 -1
- package/dist/services/template-manifest.js +2 -0
- package/dist/services/template-manifest.js.map +1 -1
- package/dist/services/transactional-files.d.ts +1 -0
- package/dist/services/transactional-files.d.ts.map +1 -1
- package/dist/services/transactional-files.js +3 -0
- package/dist/services/transactional-files.js.map +1 -1
- package/dist/types.d.ts +1 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/templates/.agents/README-ENG.md +90 -34
- package/templates/.agents/README.md +59 -32
- package/templates/.agents/config/agents/catalog.yaml +23 -23
- package/templates/.agents/config/agents/discovery.json +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-analyst.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-auditor.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-backend.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-brand-strategist.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-builder.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-cloud-engineer.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-data-analyst.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-designer.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-finalizer.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-frontend.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-general-operations.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-governance-compliance.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-growth-strategist.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-integrator.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-marketing-analyst.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-orchestrator.toml +3 -3
- package/templates/.agents/config/clients/codex/agents/zaip-agent-refactoring-specialist.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-reviewer.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-sales-specialist.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-security-auditor.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-task-executor.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-website-developer.toml +2 -2
- package/templates/.agents/config/clients/codex/agents/zaip-agent-writer.toml +2 -2
- package/templates/.agents/config/clients.yaml +1 -1
- package/templates/.agents/config/pricing/models.json +57 -1
- package/templates/.agents/config/project.yaml +21 -7
- package/templates/.agents/dashboard/.zaip-managed.json +195 -115
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{CostCalculationGuidePage-C5NgEcVh.js → CostCalculationGuidePage-f4ZGJRg3.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{DashboardHelpDialog-BDQR0U4a.js → DashboardHelpDialog-DlN5EMmD.js} +249 -136
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{PricingSettingsDialog-CGYcJ5EB.js → PricingSettingsDialog-v9zGRTlk.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/ProjectSettingsPage-BRdoeTWk.js +3 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{TraceabilityWorkspace-Ckxk_izu.js → TraceabilityWorkspace-B_5u4Xnp.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{cost-monitor-BsMfGfQi.css → cost-monitor-C2AFYBu_.css} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-D7PrDZy9.js +68 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{dashboard-localization-jvdDfNKs.js → dashboard-localization-CF7B1Hjn.js} +90 -34
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{icons-vendor-x8xxL9yW.js → icons-vendor-Cv3WBFIF.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/index-C4rLXrz_.js +2 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{react-vendor-CNOXIJHN.js → react-vendor-mHgsmxb6.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{traceability-CcpbpT1s.js → traceability-B0CPyEVq.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/index.html +6 -6
- package/templates/.agents/dashboard/apps/frontend/package.json +1 -1
- package/templates/.agents/dashboard/apps/frontend/src/AppDashboardContent.tsx +11 -1
- package/templates/.agents/dashboard/apps/frontend/src/AppLoadingBoundary.tsx +3 -2
- package/templates/.agents/dashboard/apps/frontend/src/AppLoadingPanels.tsx +1 -1
- package/templates/.agents/dashboard/apps/frontend/src/AppOverlays.tsx +1 -1
- package/templates/.agents/dashboard/apps/frontend/src/ProjectSettingsPage.tsx +9 -13
- package/templates/.agents/dashboard/apps/frontend/src/cost-monitor-population.test.tsx +4 -2
- package/templates/.agents/dashboard/apps/frontend/src/cost-period-refresh.test.ts +9 -5
- package/templates/.agents/dashboard/apps/frontend/src/dashboard-api-settings.ts +3 -2
- package/templates/.agents/dashboard/apps/frontend/src/dashboard-api.test.ts +2 -2
- package/templates/.agents/dashboard/apps/frontend/src/dashboard-identity.test.ts +3 -3
- package/templates/.agents/dashboard/apps/frontend/src/dashboard-identity.ts +1 -1
- package/templates/.agents/dashboard/apps/frontend/src/dashboard-localization.test.ts +2 -1
- package/templates/.agents/dashboard/apps/frontend/src/operations-period-render.test.ts +40 -3
- package/templates/.agents/dashboard/apps/frontend/src/project-settings-model.ts +12 -1
- package/templates/.agents/dashboard/apps/frontend/src/project-settings.test.ts +19 -0
- package/templates/.agents/dashboard/apps/frontend/src/snapshot-coherence.test.ts +1 -1
- package/templates/.agents/dashboard/apps/frontend/src/use-app-cost-loaders.test.ts +3 -1
- package/templates/.agents/dashboard/apps/frontend/src/use-dashboard-app-model.tsx +14 -23
- package/templates/.agents/dashboard/modules/cost-monitor/package.json +1 -1
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CompactLifecycleCostTable.test.ts +3 -3
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CompactLifecycleCostTable.tsx +2 -3
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostDeveloperAttributionTable.tsx +2 -6
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostGroupsTable.period-values.test.tsx +66 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostGroupsTable.tsx +29 -34
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorContent.tsx +2 -2
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorPage.embedded.test.ts +11 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorPage.tsx +1 -13
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostPeriodAverageCards.test.tsx +23 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostPeriodAverageCards.tsx +2 -1
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTableDisplay.ts +6 -11
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTables-keeps-legacy-codex-identity-fields-blank.test.ts +6 -6
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTables.test.ts +10 -12
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-group-page-totals.ts +23 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-group-period-values.tsx +34 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-monitor-embedded.css +0 -7
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-table-formatters.ts +4 -9
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-table-presentation.ts +2 -3
- package/templates/.agents/dashboard/modules/operations/package.json +1 -1
- package/templates/.agents/dashboard/modules/operations/src/react/DeveloperAttributionPanel.tsx +2 -12
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverview.helpers.tsx +2 -2
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverview.test.ts +1 -6
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverview.tsx +34 -36
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverviewCharts.tsx +12 -3
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverviewTopPanel.tsx +12 -14
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsPage.tsx +4 -4
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsPageOverview.tsx +23 -4
- package/templates/.agents/dashboard/modules/operations/src/react/OverviewCostKpi.tsx +30 -2
- package/templates/.agents/dashboard/modules/operations/src/react/TaskDetailsDialog.tsx +2 -13
- package/templates/.agents/dashboard/modules/operations/src/react/UnifiedWorkBoard.priority.test.ts +8 -1
- package/templates/.agents/dashboard/modules/operations/src/react/UnifiedWorkBoard.tsx +8 -16
- package/templates/.agents/dashboard/modules/operations/src/react/WorkColumnState.tsx +34 -0
- package/templates/.agents/dashboard/modules/operations/src/react/operation-duration.test.ts +1 -1
- package/templates/.agents/dashboard/modules/operations/src/react/operation-duration.ts +1 -1
- package/templates/.agents/dashboard/modules/operations/src/react/operations-average-unmeasured.test.ts +10 -0
- package/templates/.agents/dashboard/modules/operations/src/react/operations-content-visibility.ts +3 -0
- package/templates/.agents/dashboard/modules/operations/src/react/operations-coverage-toast.test.ts +4 -3
- package/templates/.agents/dashboard/modules/operations/src/react/operations-overview-period-filter.test.ts +12 -1
- package/templates/.agents/dashboard/modules/operations/src/react/operations-page-contract.ts +1 -0
- package/templates/.agents/dashboard/modules/operations/src/react/operations-skeleton.css +80 -0
- package/templates/.agents/dashboard/modules/operations/src/react/operations.css +2 -11
- package/templates/.agents/dashboard/modules/operations/src/react/overview-cost-card.test.tsx +36 -0
- package/templates/.agents/dashboard/modules/operations/src/react/overview-metric-format.test.ts +11 -0
- package/templates/.agents/dashboard/modules/operations/src/react/overview-metric-format.ts +28 -3
- package/templates/.agents/dashboard/modules/operations/src/react/overview-metric-stats.ts +44 -0
- package/templates/.agents/dashboard/modules/operations/src/react/work-card-label.ts +5 -0
- package/templates/.agents/dashboard/modules/operations/src/react/work-column-state.ts +11 -0
- package/templates/.agents/dashboard/modules/operations/src/react/work-item-filter.ts +13 -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 +1 -1
- package/templates/.agents/dashboard/packages/data-export/package.json +1 -1
- package/templates/.agents/dashboard/packages/local-runtime/dist/server.cjs +173 -173
- package/templates/.agents/dashboard/packages/local-runtime/dist/sqlite-read-model.cjs +120 -120
- package/templates/.agents/dashboard/packages/local-runtime/package.json +1 -1
- package/templates/.agents/dashboard/packages/local-runtime/server.mjs +173 -173
- package/templates/.agents/dashboard/packages/local-runtime/src/active-codex-telemetry.test.ts +31 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/active-codex-telemetry.ts +74 -1
- package/templates/.agents/dashboard/packages/local-runtime/src/agent-catalog-settings.test.ts +15 -15
- package/templates/.agents/dashboard/packages/local-runtime/src/project-settings.test.ts +2 -2
- package/templates/.agents/dashboard/packages/local-runtime/src/project-settings.ts +1 -1
- package/templates/.agents/dashboard/packages/local-runtime/src/server-identity.test.ts +1 -1
- package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot-synchronization.test.ts +25 -3
- package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot-synchronization.ts +51 -16
- package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot.test.ts +1 -1
- package/templates/.agents/dashboard/packages/local-runtime/src/server-ui-security.ts +37 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-workspace.ts +1 -1
- package/templates/.agents/dashboard/packages/local-runtime/src/server.ts +11 -33
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-rebuild.ts +12 -13
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-source-fingerprint.test.ts +71 -1
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-source-fingerprint.ts +141 -25
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-worktree-sources.test.ts +60 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-rebuild-fingerprint-options.ts +13 -0
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-launch-page.mjs +26 -2
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-launch-page.test.mjs +5 -0
- package/templates/.agents/dashboard/packages/ui/package.json +1 -1
- package/templates/.agents/dashboard/packages/ui/src/DashboardHeader.test.mjs +5 -0
- package/templates/.agents/dashboard/packages/ui/src/DashboardHeader.tsx +4 -4
- package/templates/.agents/dashboard/tests/e2e/package.json +1 -1
- package/templates/.agents/dashboard/tests/e2e/playwright.config.ts +4 -0
- package/templates/.agents/dashboard/tests/e2e/specs/dashboard-performance-matrix.spec.ts +15 -23
- package/templates/.agents/dashboard/tests/e2e/specs/dashboard.spec.ts +1 -1
- package/templates/.agents/dashboard/tests/e2e/specs/performance-matrix-types.ts +15 -0
- package/templates/.agents/dashboard/tests/e2e/specs/performance-observability.ts +30 -0
- package/templates/.agents/dashboard/tests/e2e/specs/performance-work-row-identity.ts +6 -0
- package/templates/.agents/design/.zaip-managed.json +13 -9
- package/templates/.agents/design/apps/catalog/dist/assets/index-DkpQYoyC.js +72 -0
- package/templates/.agents/design/apps/catalog/dist/index.html +1 -1
- package/templates/.agents/design/apps/catalog/package.json +1 -1
- package/templates/.agents/design/apps/catalog/src/components/CostPopulationSpecimen.test.tsx +8 -4
- package/templates/.agents/design/apps/catalog/src/components/CostPopulationSpecimen.tsx +10 -3
- package/templates/.agents/design/apps/catalog/src/components/DashboardFiltersSpecimen.tsx +0 -15
- package/templates/.agents/design/apps/catalog/src/pages/ComponentsPage.tsx +3 -3
- package/templates/.agents/design/apps/catalog/src/stories/DashboardFilters.stories.tsx +0 -1
- 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 +1 -1
- 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 +1 -1
- 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 +1 -1
- package/templates/.agents/requirements/model-orchestration.md +6 -6
- package/templates/.agents/requirements/public-distribution.md +1 -1
- 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 +2 -2
- package/templates/.agents/rules/workflow.md +1 -1
- package/templates/.agents/runtime/VERSION +1 -1
- package/templates/.agents/runtime/bin/zaip.mjs +73 -64
- package/templates/.agents/runtime/checksums.sha256 +5 -5
- package/templates/.agents/runtime/manifest.json +1 -1
- package/templates/.agents/runtime/provenance.json +4 -4
- package/templates/.agents/runtime/sbom.cdx.json +1 -1
- package/templates/.agents/skills/zaip-skill-adapters/SKILL.md +1 -1
- package/templates/.agents/skills/zaip-skill-executar-fila-pronta/SKILL.md +7 -7
- package/templates/.agents/skills/zaip-skill-executar-fila-pronta/scripts/ready-queue-fence.mjs +32 -7
- package/templates/.agents/skills/zaip-skill-executar-fila-pronta/scripts/ready-queue-fence.test.mjs +134 -1
- package/templates/.agents/skills/zaip-skill-executar-fila-pronta/scripts/ready-queue-lease.mjs +57 -0
- package/templates/.agents/skills/zaip-skill-executar-fila-pronta/scripts/scheduled-ready-queue-contract.test.mjs +9 -6
- package/templates/.agents/skills/zaip-skill-execution/SKILL.md +1 -1
- package/templates/.agents/skills/zaip-skill-execution/references/runtime-governance.md +2 -2
- package/templates/.agents/skills/zaip-skill-github-deploy/SKILL.md +5 -5
- package/templates/.agents/skills/zaip-skill-github-deploy/agents/openai.yaml +2 -2
- package/templates/.agents/skills/zaip-skill-github-deploy/references/deployment-workflow.md +5 -3
- package/templates/.agents/skills/zaip-skill-github-deploy/scripts/github-deploy-contract.test.mjs +40 -5
- package/templates/.agents/skills/zaip-skill-instalar-agendamento/SKILL.md +2 -2
- package/templates/.agents/skills/zaip-skill-release-qualification/SKILL.md +6 -0
- package/templates/.agents/skills/zaip-skill-release-qualification/references/local-preparation.md +54 -6
- package/templates/.agents/zaip-aios/README.md +4 -4
- package/templates/.agents/zaip-aios/VERSION +1 -1
- package/templates/.agents/zaip-aios/guides/01-primeiros-passos.md +4 -3
- package/templates/.agents/zaip-aios/guides/03-tasks.md +5 -4
- package/templates/.agents/zaip-aios/guides/04-specs.md +4 -1
- package/templates/.agents/zaip-aios/guides/05-prds.md +7 -3
- package/templates/.agents/zaip-aios/guides/06-execucao.md +9 -4
- package/templates/.agents/zaip-aios/guides/09-agentes-e-squads.md +9 -5
- package/templates/.agents/zaip-aios/guides/11-observabilidade-e-custos.md +10 -2
- package/templates/.agents/zaip-aios/guides/12-instalacao-e-upgrade.md +10 -5
- package/templates/.agents/zaip-aios/guides/13-boas-praticas.md +12 -1
- package/templates/.agents/zaip-aios/guides/14-troubleshooting.md +3 -1
- package/templates/.agents/zaip-aios/guides/16-lifecycle-e-reconciliacao.md +12 -7
- package/templates/.agents/zaip-aios/guides/17-como-o-custo-e-calculado.md +1 -1
- package/templates/.agents/zaip-aios/guides/18-catalogo-de-agentes.md +5 -1
- package/templates/.agents/zaip-aios/guides/19-assurance-e-autonomia.md +19 -15
- package/templates/.agents/zaip-aios/guides/20-instalacao-detalhada.md +13 -9
- package/templates/.agents/zaip-aios/guides/21-telemetria-monitor-custos.md +4 -3
- package/templates/.agents/zaip-aios/guides/22-fluxos-e-roteamento.md +9 -7
- package/templates/.agents/zaip-aios/guides/23-orquestracao-de-modelos.md +40 -25
- package/templates/.agents/zaip-aios/guides/24-calculo-de-custos-openai.md +8 -8
- package/templates/.agents/zaip-aios/guides/26-qualidade-e-release.md +14 -5
- package/templates/.agents/zaip-aios/guides/27-telemetria-git-native.md +6 -0
- package/templates/.agents/zaip-aios/guides/28-lifecycle-completo.md +129 -11
- package/templates/template-manifest.json +310 -218
- package/templates/tsconfig.base.json +22 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/ProjectSettingsPage-OulA4CoX.js +0 -3
- package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-j3aUYH5G.js +0 -68
- package/templates/.agents/dashboard/apps/frontend/dist/assets/index-CqfSgtk9.js +0 -2
package/templates/.agents/skills/zaip-skill-github-deploy/scripts/github-deploy-contract.test.mjs
CHANGED
|
@@ -20,6 +20,13 @@ const managedDeployFiles = [
|
|
|
20
20
|
|
|
21
21
|
test("framework lock matches the deploy guidance and executable contract", async () => {
|
|
22
22
|
const lock = await readFile(resolve(root, "config", "framework.lock.yaml"), "utf8");
|
|
23
|
+
const installerPlaceholder = "# Generated transactionally by @zaip-ai/cli during installation.\n";
|
|
24
|
+
if (lock === installerPlaceholder) {
|
|
25
|
+
// The npm template deliberately ships no repository-specific hashes. The
|
|
26
|
+
// installer creates the complete lock only after projecting the selected
|
|
27
|
+
// profile into the consumer workspace.
|
|
28
|
+
return;
|
|
29
|
+
}
|
|
23
30
|
for (const path of managedDeployFiles) {
|
|
24
31
|
const digest = createHash("sha256")
|
|
25
32
|
.update(await readFile(resolve(root, path)))
|
|
@@ -35,24 +42,52 @@ test("explicit Git publication verbs select the guarded deploy skill", async ()
|
|
|
35
42
|
readFile(resolve(root, "rules", "core.md"), "utf8"),
|
|
36
43
|
]);
|
|
37
44
|
assert.match(skill, /explicit current-turn request to `deploy`, `push`, `publicar`/);
|
|
38
|
-
assert.match(skill, /
|
|
45
|
+
assert.match(skill, /discussing or editing deployment does not authorize publication/);
|
|
39
46
|
assert.doesNotMatch(skill, /standing automatic deployment|activate it automatically/);
|
|
40
47
|
assert.match(openai, /\$zaip-skill-github-deploy/);
|
|
41
48
|
assert.match(openai, /fa.a deploy/);
|
|
42
49
|
assert.match(core, /seleciona/);
|
|
43
50
|
});
|
|
44
51
|
|
|
45
|
-
test("deploy guidance preserves
|
|
52
|
+
test("deploy guidance preserves canonical Task identity and builder-versus-consumer boundary", async () => {
|
|
46
53
|
const [skill, workflow] = await Promise.all([
|
|
47
54
|
readFile(resolve(skillRoot, "SKILL.md"), "utf8"),
|
|
48
55
|
readFile(resolve(root, "rules", "workflow.md"), "utf8"),
|
|
49
56
|
]);
|
|
50
57
|
assert.ok(skill.includes("[CODEX|CLAUDE] [P:XXXX] [S:XXXX] [T:XXXX] <Task title>"));
|
|
51
58
|
assert.match(skill, /exclusively `CODEX` or `CLAUDE`; `AUTO` is not part/);
|
|
52
|
-
assert.match(skill, /
|
|
59
|
+
assert.match(skill, /Consumer repositories follow their own GitHub-only policy/);
|
|
60
|
+
assert.match(
|
|
61
|
+
skill,
|
|
62
|
+
/“faça deploy” means the guarded push, GitHub Release and observation of the GitHub Actions npm publication/,
|
|
63
|
+
);
|
|
53
64
|
assert.match(workflow, /commitar o diff evidenciado com pathspecs explícitos/);
|
|
54
65
|
});
|
|
55
66
|
|
|
67
|
+
test("framework deploy follows Release-triggered npm publication without claiming partial success", async () => {
|
|
68
|
+
const [skill, workflow, lock] = await Promise.all([
|
|
69
|
+
readFile(resolve(skillRoot, "SKILL.md"), "utf8"),
|
|
70
|
+
readFile(resolve(skillRoot, "references", "deployment-workflow.md"), "utf8"),
|
|
71
|
+
readFile(resolve(root, "config", "framework.lock.yaml"), "utf8"),
|
|
72
|
+
]);
|
|
73
|
+
if (!lock.startsWith("# Generated transactionally by @zaip-ai/cli")) {
|
|
74
|
+
const publishWorkflow = await readFile(
|
|
75
|
+
resolve(root, "..", ".github", "workflows", "publish-cli.yml"),
|
|
76
|
+
"utf8",
|
|
77
|
+
);
|
|
78
|
+
assert.match(publishWorkflow, /release:\s*\n\s*types: \[published\]/);
|
|
79
|
+
assert.match(publishWorkflow, /npm publish /);
|
|
80
|
+
}
|
|
81
|
+
assert.match(skill, /publish-cli\.yml.*registry confirmation/s);
|
|
82
|
+
assert.match(skill, /npm fails or cannot be observed.*partial or blocked/);
|
|
83
|
+
assert.match(skill, /explicit push-only request.*does not create a Release or publish npm/);
|
|
84
|
+
assert.match(
|
|
85
|
+
workflow,
|
|
86
|
+
/private Ed25519 release key is distinct from the Git SSH key and a local `\.env` npm token/,
|
|
87
|
+
);
|
|
88
|
+
assert.match(workflow, /A published Release with failed or unobserved npm is partial/);
|
|
89
|
+
});
|
|
90
|
+
|
|
56
91
|
test("faça deploy authorizes the complete selected worktree with safety gates", async () => {
|
|
57
92
|
const skill = await readFile(resolve(skillRoot, "SKILL.md"), "utf8");
|
|
58
93
|
assert.match(skill, /commits covering all versionable pending changes/);
|
|
@@ -73,8 +108,8 @@ test("deploy permission and reconciliation remain explicit and recoverable", asy
|
|
|
73
108
|
assert.match(skill, /Restore with `git stash apply`/);
|
|
74
109
|
assert.match(skill, /local branch, recovery branch or detached state as the source candidate/);
|
|
75
110
|
assert.match(skill, /configured deploy branch is the remote target/);
|
|
76
|
-
assert.match(openai, /
|
|
77
|
-
assert.match(openai, /
|
|
111
|
+
assert.match(openai, /\$zaip-skill-github-deploy/);
|
|
112
|
+
assert.match(openai, /builder zaip-aios.*Release.*workflow npm/);
|
|
78
113
|
});
|
|
79
114
|
|
|
80
115
|
test("workflow retains the explicit publication routing contract", async () => {
|
|
@@ -8,10 +8,10 @@ description: Install or update the native Codex hourly scheduler for the ready-w
|
|
|
8
8
|
Use esta skill somente quando a pessoa solicitar instalar, atualizar ou verificar o agendamento local da fila pronta. Ela configura o relógio; não inicia uma execução por conta própria.
|
|
9
9
|
|
|
10
10
|
1. Confirme que o repositório é ZAIP habilitado e que a automação nativa de tarefas agendadas do Codex Desktop está chamável, com capacidade `automation_update`. Pare com `blocked` se ela não estiver disponível. Nunca use o Agendador do Windows, um arquivo, Git ou uma promessa de execução futura como substituto.
|
|
11
|
-
2. Use `codex_app list_projects` para resolver o projeto Codex atual e seu checkout local real; não invente identificador, diretório ou contexto. Crie ou atualize, sem duplicar, a tarefa standalone de nome estável `ZAIP-AIOS - Fila Pronta Horária`: a cada hora, no minuto 0, em nova conversa no projeto resolvido. Ela abre uma única invocação com o prompt explícito `Ignore Automation memory and $CODEX_HOME. Start immediately by validating the repository and ready queue. First call codex_app set_thread_title without threadId, using America/Sao_Paulo local time in the exact format [YYYY-MM-DD-T-HH-mm] Tarefa Agendada; record a rename failure but continue the queue. Use $zaip-skill-executar-fila-pronta;
|
|
11
|
+
2. Use `codex_app list_projects` para resolver o projeto Codex atual e seu checkout local real; não invente identificador, diretório ou contexto. Crie ou atualize, sem duplicar, a tarefa standalone de nome estável `ZAIP-AIOS - Fila Pronta Horária`: a cada hora, no minuto 0, em nova conversa no projeto resolvido. Ela abre uma única invocação com o prompt explícito `Ignore Automation memory and $CODEX_HOME. Start immediately by validating the repository and ready queue. First call codex_app set_thread_title without threadId, using America/Sao_Paulo local time in the exact format [YYYY-MM-DD-T-HH-mm] Tarefa Agendada; record a rename failure but continue the queue. Use $zaip-skill-executar-fila-pronta; execute at most one top-level eligible item in this invocation, even if it finishes or becomes ineligible; never promote draft or resume blocked or failed work; respect the persisted manual order in .agents/dashboard/work-priority.json.`
|
|
12
12
|
3. Antes de gravar, valide o checkout: raiz Git existente, `.agents/config/project.yaml` com `zaip.enabled: true`, runtime ZAIP disponível e caminho absoluto sem credenciais. Falhe fechado se algum requisito faltar; não registre uma tarefa parcial.
|
|
13
13
|
4. Consulte `$CODEX_HOME/automations/*/automation.toml` somente em leitura, exclusivamente pelo nome estável para resolver identidade e deduplicação. É proibido criar, editar ou apagar TOML, ou usá-lo como fallback. Todas as visualizações e mutações da automação são exclusivamente por `codex_app automation_update`. Se houver mais de uma tarefa com esse nome, pare e reporte o conflito sem apagar nada. Se houver uma, inspecione seu ID, ação, agenda horária, nova conversa e diretório de trabalho e atualize-a; se não houver, crie uma. Preserve tarefas agendadas fora desse nome.
|
|
14
|
-
5. Verifique após criar/atualizar que existe exatamente uma tarefa com o nome, agenda a cada hora no minuto 0, nova conversa, checkout esperado e prompt da skill executora que respeita `.agents/dashboard/work-priority.json
|
|
14
|
+
5. Verifique após criar/atualizar que existe exatamente uma tarefa com o nome, agenda a cada hora no minuto 0, nova conversa, checkout esperado e prompt da skill executora que respeita `.agents/dashboard/work-priority.json` e limita a rodada a um item superior. Registre somente a evidência observada; não afirme que uma hora futura será executada.
|
|
15
15
|
6. Explique que o agendamento pertence à máquina e ao usuário que o instalou. O repositório versiona a skill e o contrato, mas não cria um relógio em clones, nem funciona com a máquina desligada, o Codex Desktop fechado ou sem a automação nativa.
|
|
16
16
|
|
|
17
17
|
Não use esta skill para selecionar itens, burlar bloqueios, executar todos os itens `planned`, alterar prioridades do Kanban ou fazer deploy/push.
|
|
@@ -19,6 +19,12 @@ policy, gate definitions, runtime, channel, version, trusted key, expiry and art
|
|
|
19
19
|
Consumer projects run their own policy commands through the distributed consumer helper, with
|
|
20
20
|
their configured branch (default `beta`) and no framework npm requirements.
|
|
21
21
|
The deployment skill must call the guarded helper, which prepares and verifies before sending.
|
|
22
|
+
A framework signing key is resolved from the stable private directory
|
|
23
|
+
`~/.codex/release-keys/zaip-aios/<trusted-key-id>/` unless explicit paths are supplied.
|
|
24
|
+
Run `scripts/local-release-key.mjs preflight` before expensive gates; compare the local key
|
|
25
|
+
and trust with GitHub when publishing. A missing or mismatched key fails closed. Do not
|
|
26
|
+
silently generate a replacement, reuse a key ID for different key material, or remove the
|
|
27
|
+
signature gate. See the local preparation guide for testing and controlled rotation.
|
|
22
28
|
A changed candidate or invalid evidence requires new qualification.
|
|
23
29
|
Full source qualification runs locally. Extended GitHub qualification is manual;
|
|
24
30
|
the reduced publisher requires enrolled public trust and signed local qualification.
|
package/templates/.agents/skills/zaip-skill-release-qualification/references/local-preparation.md
CHANGED
|
@@ -4,6 +4,43 @@ Preparation does not authorize publication. Use guarded delivery only for an exp
|
|
|
4
4
|
Store keys, trust stores, receipts and artifacts outside the repository. Commit and synchronize first;
|
|
5
5
|
every gate is bound to the resulting clean SHA. Repair changes require a new candidate.
|
|
6
6
|
|
|
7
|
+
The signing key ID is the trusted identity, not a filename. Resolve it with
|
|
8
|
+
`gh variable get ZAIP_LOCAL_RELEASE_TRUSTED_KEY_ID --repo zaip-ai/zaip-aios`.
|
|
9
|
+
By default, the private key lives at
|
|
10
|
+
`~/.codex/release-keys/zaip-aios/<key-id>/release-private.pem` and its local
|
|
11
|
+
trust store at `~/.codex/release-keys/zaip-aios/<key-id>/trust/` on the current
|
|
12
|
+
machine. This location is shared by the machine's worktrees but never by Git.
|
|
13
|
+
Keep a secure backup and restrict OS access; Git ignore alone does not protect a
|
|
14
|
+
private key. `.local/` may hold a pointer or disposable test evidence, but must not
|
|
15
|
+
be the only copy of a production signing key.
|
|
16
|
+
|
|
17
|
+
Run `node scripts/local-release-key.mjs preflight --key-id <trusted-key-id> --channel latest --github-repo zaip-ai/zaip-aios` before the expensive release
|
|
18
|
+
gates. It checks the private/public pair, local trust and the GitHub public key
|
|
19
|
+
without printing key material. Omit `--github-repo` to test completely offline.
|
|
20
|
+
`prepare` and `local-release-deploy` resolve the stable paths automatically;
|
|
21
|
+
`--private-key` and `--trust-store` remain explicit overrides. Missing/mismatched
|
|
22
|
+
material blocks before qualification. Never auto-create a signing key during deploy.
|
|
23
|
+
|
|
24
|
+
For a local-only proof, generate an ephemeral Ed25519 pair outside the repository,
|
|
25
|
+
bootstrap a temporary trust store, then run `preflight` without `--github-repo` and
|
|
26
|
+
the release helper with `--dry-run --offline-dry-run`, explicit temporary
|
|
27
|
+
key/trust paths and an exact
|
|
28
|
+
clean candidate. The receipt must verify against that temporary trust store; this
|
|
29
|
+
does **not** authorize production publication or claim GitHub trust.
|
|
30
|
+
|
|
31
|
+
If the production private key is genuinely unavailable, rotate only with explicit
|
|
32
|
+
authorization. Use a **new** key ID and a new stable directory; never create a new
|
|
33
|
+
pair under the old ID or overwrite an existing key. Bootstrap the new local trust,
|
|
34
|
+
run offline preflight, then run
|
|
35
|
+
`node scripts/local-release-key.mjs rotate --confirm-rotate --github-repo zaip-ai/zaip-aios --expected-old-key-id <old-id> --new-key-id <new-id> --public-key <new-public.pem> --backup-dir <new-external-backup-directory>`.
|
|
36
|
+
The rotation saves the old public trust for rollback, updates only the trusted
|
|
37
|
+
public key and ID, verifies readback, and attempts rollback on error. It does not
|
|
38
|
+
alter the policy, publish a Release, or touch npm credentials. Do not rotate
|
|
39
|
+
while a release publisher is running. Verify the resulting `preflight` with
|
|
40
|
+
`--github-repo` before the next candidate qualification. Protect and separately
|
|
41
|
+
back up the private key; the trust backup contains only public material. Restoring
|
|
42
|
+
the old public trust alone cannot resume signing when the old private key is lost.
|
|
43
|
+
|
|
7
44
|
## Framework repository: main and GitHub Actions npm
|
|
8
45
|
|
|
9
46
|
These commands exist only in the source repository `zaip-ai/zaip-aios`. Values in angle brackets
|
|
@@ -11,18 +48,29 @@ must be replaced with the authorized candidate and external paths. GitHub versio
|
|
|
11
48
|
to tag `vN.N` and package version `N.N.0`.
|
|
12
49
|
|
|
13
50
|
```text
|
|
14
|
-
node scripts/local-release-preparation.mjs keygen --output-dir <new-key-directory>
|
|
15
|
-
node scripts/local-release-preparation.mjs bootstrap --trust-store <
|
|
16
|
-
node scripts/local-release-
|
|
51
|
+
node scripts/local-release-preparation.mjs keygen --output-dir <new-stable-private-key-directory>
|
|
52
|
+
node scripts/local-release-preparation.mjs bootstrap --trust-store <new-stable-private-key-directory>/trust --public-key <new-stable-private-key-directory>/release-public.pem --key-id <new-key-id> --channels latest
|
|
53
|
+
node scripts/local-release-key.mjs preflight --key-id <new-key-id> --channel latest
|
|
54
|
+
node scripts/local-release-preparation.mjs prepare --repository <absolute-repository> --expected-repository zaip-ai/zaip-aios --sha <40-character-sha> --output-dir <candidate-artifacts> --policy <policy.json> --key-id <trusted-key-id> --channel latest --version <N.N> --expires-at <future-ISO-within-seven-days> --profile essential
|
|
17
55
|
```
|
|
18
56
|
|
|
19
57
|
The framework policy is an administrator-reviewed file whose bytes must match the protected
|
|
20
|
-
GitHub policy
|
|
58
|
+
GitHub policy before Release publication. The user's 2026-09-23 authorization permits the
|
|
59
|
+
builder deploy to update only `ZAIP_LOCAL_RELEASE_POLICY_B64` for each exact new version after
|
|
60
|
+
successful signed local qualification, with byte-for-byte readback and no key/trust rotation.
|
|
61
|
+
The user separately authorized a one-time trust rotation on 2026-09-25 after the
|
|
62
|
+
`maintainer-v3` private key could not be located. The active trust ID is now
|
|
63
|
+
`maintainer-v4`; the old public trust is backed up outside the repository for
|
|
64
|
+
rollback. This does not authorize future rotations without an explicit request.
|
|
65
|
+
The policy must name the exact repository, `main`, channel, `N.N`/`N.N.0` versions, selected
|
|
66
|
+
fixed qualification profile, `github-actions-only`, `signed-release-linux-smoke`, and disabled
|
|
67
|
+
force/replacement/pilot flags. Do not reuse an older version's policy unchanged or ask again
|
|
68
|
+
solely because its version is stale. Gates are fixed in the versioned helper, not supplied by the caller. Preparation
|
|
21
69
|
fails at the first failed gate. The default `essential-v3` profile validates source size, locks,
|
|
22
70
|
build/type integrity, package/SBOM/TGZ binding, dependency audit and one clean installed-consumer
|
|
23
71
|
doctor/SQLite/API smoke. It does not run browser navigation across every dashboard tab or XLSX
|
|
24
72
|
exports. `--profile full` explicitly selects `full-v2`, which also runs the full source suite,
|
|
25
|
-
browser and XLSX qualification. Essential preparation has a
|
|
73
|
+
browser and XLSX qualification. Essential preparation has a 30-minute deadline; full preparation
|
|
26
74
|
has a 60-minute deadline. Both use process-tree
|
|
27
75
|
termination and cleanup after expiry. A failure never produces a successful receipt. Receipts bind
|
|
28
76
|
the selected profile and its fixed gate list, so former receipts require requalification.
|
|
@@ -42,7 +90,7 @@ is refused. Choose a new output path after repair instead of deleting or overwri
|
|
|
42
90
|
For an authorized release, call this command with the same arguments and paths:
|
|
43
91
|
|
|
44
92
|
```text
|
|
45
|
-
node scripts/local-release-deploy.mjs --repository <absolute-repository> --expected-repository zaip-ai/zaip-aios --sha <40-character-sha> --branch main --output-dir <candidate-artifacts> --policy <policy.json> --
|
|
93
|
+
node scripts/local-release-deploy.mjs --repository <absolute-repository> --expected-repository zaip-ai/zaip-aios --sha <40-character-sha> --branch main --output-dir <candidate-artifacts> --policy <policy.json> --key-id <trusted-key-id> --channel latest --version <N.N> --expires-at <future-ISO-within-seven-days> --notes-file <reviewed-notes.md> --inventory-file <release-inventory.json> --from <previous-release-tag> --profile essential
|
|
46
94
|
```
|
|
47
95
|
|
|
48
96
|
`--dry-run` prepares and verifies without sending. The live command verifies again around
|
|
@@ -70,13 +70,13 @@ A documentação descreve `autonomy-v1`; publicação e qualificação devem ser
|
|
|
70
70
|
confirmadas pelos artefatos da release, não apenas pela versão deste checkout.
|
|
71
71
|
<!-- zaip-version-reference -->
|
|
72
72
|
Consulte a versão instalada com `zaip version --json` e a identidade do checkout no manifesto raiz. Novos templates usam
|
|
73
|
-
Equilibrado e `execution.runtime:
|
|
74
|
-
|
|
73
|
+
Equilibrado e `execution.runtime: codex_native`: o Codex orquestra Sub-Runs
|
|
74
|
+
nativos para PRDs, SPECs e Tasks avulsas. Configurações legadas sem essa opção mantêm
|
|
75
75
|
o default manual do schema; salvar configuração não inicia execução.
|
|
76
76
|
Não há desistência por duração nem diminuição automática de ACs.
|
|
77
77
|
Gui finaliza a tentativa da Task como último filho direto, não cada trabalhador.
|
|
78
78
|
|
|
79
|
-
O controle determinístico exige
|
|
80
|
-
|
|
79
|
+
O controle determinístico da rota nativa exige preflight e observação do host;
|
|
80
|
+
instrução isolada não garante modelo/effort. Tasks legadas não são migradas
|
|
81
81
|
silenciosamente. O guia 19 descreve a autorização imutável da raiz Task direta;
|
|
82
82
|
ela dispensa executor fictício, mas preserva revisão, Evidence e Gui.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
4.0
|
|
@@ -5,12 +5,13 @@
|
|
|
5
5
|
3. Classifique a entrada: Conversation, Task avulsa, SPEC ou PRD. Pergunta/análise read-only é Conversation e não cria Task.
|
|
6
6
|
4. Carregue somente Rules, Requirements e skills aplicaveis.
|
|
7
7
|
5. Defina aceite verificavel antes de editar.
|
|
8
|
-
6. Antes de escrita persistente, inicie Task, Change, Execution e Run raiz do orquestrador
|
|
8
|
+
6. Antes de escrita persistente, inicie Task, Change, Execution e Run raiz do orquestrador. Na v4, Task avulsa usa executor subagente nativo Codex; Conversation read-only não delega. Respeite os gates de fechamento; teste e registre evidências no ciclo ativo.
|
|
9
9
|
|
|
10
10
|
Evite varrer `.agents/records/`: abra um record apenas quando possuir seu ID.
|
|
11
11
|
|
|
12
|
-
Para PRD/SPEC, diferencie conversa de criação: “me ajude a pensar” não cria artefato; “crie” persiste o pacote `draft` completo e sua telemetria. Faça até cinco perguntas críticas por turno, no máximo três turnos; depois registre decisões delegáveis da IA. Tasks reais só nascem em `ready|execute`.
|
|
12
|
+
Para PRD/SPEC, diferencie conversa de criação: “me ajude a pensar” não cria artefato; “crie” persiste o pacote `draft` completo e sua telemetria. “Crie e execute” pode concluir ambos no mesmo turno Codex com Runs separadas. Faça até cinco perguntas críticas por turno, no máximo três turnos; depois registre decisões delegáveis da IA. Tasks reais só nascem em `ready|execute`. Pedido de ação sem macro explícito segue Task avulsa, mesmo se for crítico; recomende macro sem promovê-lo sozinho.
|
|
13
13
|
|
|
14
14
|
Para os novos controles, leia [perfis de autonomia](19-assurance-e-autonomia.md)
|
|
15
15
|
e [modelos](23-orquestracao-de-modelos.md): perfil não ativa provider nem migra
|
|
16
|
-
Tasks legadas. O principal avulso mantém sua seleção;
|
|
16
|
+
Tasks legadas. O principal avulso mantém sua seleção; o ZAIP define modelo e
|
|
17
|
+
effort dos filhos, que precisam ser observados no host. O [contrato-alvo v4](28-lifecycle-completo.md#contrato-aprovado-para-a-v4-a-implementar-e-qualificar) ainda não certifica o runtime atual.
|
|
@@ -15,9 +15,10 @@ Em PRD/SPEC `draft`, a lista visível vem dos blueprints do PreparedPlan e não
|
|
|
15
15
|
|
|
16
16
|
## Modelo, effort e velocidade
|
|
17
17
|
|
|
18
|
-
Conversation e o principal de Task avulsa preservam a seleção manual do Codex
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
Conversation e o principal de Task avulsa preservam a seleção manual do Codex.
|
|
19
|
+
Conversation read-only não usa subagente; toda Task avulsa usa executor
|
|
20
|
+
subagente nativo no contrato-alvo v4, com modelo/effort selecionados pelo
|
|
21
|
+
ZAIP e execução produtiva sequencial. A exceção de Astra manual
|
|
21
22
|
no Essencial só vale para o principal avulso. A seleção automática solicita
|
|
22
23
|
velocidade `standard`; Fast manual não é herdado pelo fluxo gerenciado.
|
|
23
24
|
|
|
@@ -25,7 +26,7 @@ velocidade `standard`; Fast manual não é herdado pelo fluxo gerenciado.
|
|
|
25
26
|
|
|
26
27
|
[Autonomia](19-assurance-e-autonomia.md) é por Task estável: Essencial 4/1,
|
|
27
28
|
Equilibrado 10/3, Persistente ilimitado (execuções/replanejamentos).
|
|
28
|
-
Reiniciar, retomar ou mudar o YAML não zera a quota. `attempt_count` do lifecycle
|
|
29
|
+
No Equilibrado, os planos novos usam Sol → Sol → Astra. Reiniciar, retomar ou mudar o YAML não zera a quota. `attempt_count` do lifecycle
|
|
29
30
|
e reservas de execução do diário não são o mesmo contador.
|
|
30
31
|
Falta de prova termina `blocked`; erro técnico impeditivo comprovado termina
|
|
31
32
|
`failed`. Não diminua ACs nem use duração como critério de desistência.
|
|
@@ -11,7 +11,7 @@ Use SPEC quando a entrega exige varias Tasks ou uma ordem de dependencia.
|
|
|
11
11
|
7. Mapeie cada Requirement para Tasks e evidencias.
|
|
12
12
|
8. Valide a SPEC antes de iniciar execucao; bloqueie stack ausente, divergente ou sem versoes exatas e fontes existentes.
|
|
13
13
|
9. Ao iniciar a primeira Task, mantenha a SPEC em Execucao entre todas as Runs filhas; resultado terminal de uma Task nao terminaliza a SPEC.
|
|
14
|
-
10.
|
|
14
|
+
10. Feche todas as Tasks da DAG, inclusive dependentes inviabilizadas, antes de decidir o status parental; somente com todas concluídas rode verificação e Evidence parentais para `deliver`.
|
|
15
15
|
|
|
16
16
|
Uma SPEC planeja a entrega; nao autoriza mudancas externas por si so.
|
|
17
17
|
|
|
@@ -29,5 +29,8 @@ filho direto. Gates parentais continuam separados.
|
|
|
29
29
|
|
|
30
30
|
Se um nó ficar bloqueado/falhado, continue somente ramos independentes
|
|
31
31
|
elegíveis; não repita nós concluídos nem libere dependentes sem conclusão.
|
|
32
|
+
Ao encerrar a rodada macro, dependentes impossíveis recebem bloqueio terminal
|
|
33
|
+
com causa, não permanecem `planned` indefinidamente. Só Tasks de DAG
|
|
34
|
+
planejada com escopos independentes podem paralelizar.
|
|
32
35
|
A política gerenciada não intercepta chamadas nativas externas do Codex.
|
|
33
36
|
Não ative outra forma de execução nem migre estados legados implicitamente.
|
|
@@ -10,16 +10,17 @@ Use PRD para uma iniciativa de produto com multiplas capacidades ou SPECs.
|
|
|
10
10
|
6. Relacione riscos, rollout, observabilidade e rollback.
|
|
11
11
|
7. Monte a DAG e confirme que todo aceite possui evidencia planejada.
|
|
12
12
|
8. Mantenha PRD e SPECs selecionadas em Execucao enquanto restar trabalho; Runs filhas fecham Tasks, nao o macro.
|
|
13
|
-
9.
|
|
13
|
+
9. Decida status terminal somente depois de todas as Tasks da DAG terminarem, inclusive dependentes inviabilizadas; entregue apenas com todas concluídas, integração, outcomes e gates parentais.
|
|
14
14
|
|
|
15
15
|
## Intenções
|
|
16
16
|
|
|
17
17
|
- “Me ajude a pensar sobre um PRD”: Conversation, sem artefato.
|
|
18
18
|
- “Crie um PRD”: até cinco perguntas críticas por turno e no máximo três turnos; depois persiste PRD, SPECs e PreparedPlan `draft`, vincula a Run e o `creation_run_id` ao macro e não cria Tasks reais. Duração, tokens e custo só são agregados quando observados ou reconciliados.
|
|
19
|
+
- “Crie e execute um PRD”: no mesmo turno Codex, crie o macro em uma Run de definição e execute a DAG em outra Run de delivery vinculada; não converta a primeira em execução.
|
|
19
20
|
- “Deixe pronto para executar” ou “finalize/conclua esse PRD” em `draft`: lapida, valida e materializa SPECs/Tasks/Changes/Execution como `ready|planned`, sem executar.
|
|
20
21
|
- “Execute esse PRD”: executa todas as SPECs selecionadas. Pedido dirigido a SPEC ou Task usa o menor grão.
|
|
21
|
-
- “Implemente”: sem
|
|
22
|
-
- “Desenvolva/melhore/aprimore”:
|
|
22
|
+
- “Implemente”: sem PRD/SPEC explicitamente solicitado, trate o objetivo de ação como Task avulsa; macro `draft` só executa com intenção explícita de executar aquele macro; em `ready` executa; em `active|blocked|failed` continua, retoma ou cria rework.
|
|
23
|
+
- “Desenvolva/melhore/aprimore”: preserve a intenção e o alvo; mudança independente explicitamente pedida executa como Task avulsa, enquanto mero planejamento/refino não promove o macro.
|
|
23
24
|
|
|
24
25
|
PRD cancelado permanece imutável. Novo planejamento cria sucessor `draft`, tag `rework` e `rework_of_prd_id`.
|
|
25
26
|
|
|
@@ -47,5 +48,8 @@ filho direto. Gates parentais continuam separados.
|
|
|
47
48
|
|
|
48
49
|
Se um nó ficar bloqueado/falhado, continue somente ramos independentes
|
|
49
50
|
elegíveis; não repita nós concluídos nem libere dependentes sem conclusão.
|
|
51
|
+
Antes de decidir o status do PRD, feche com causa os dependentes
|
|
52
|
+
inviabilizados e confirme todos os resultados terminais; nunca entregue por
|
|
53
|
+
sucesso isolado de um ramo. Paralelismo exige DAG e escopos independentes.
|
|
50
54
|
A política gerenciada não intercepta chamadas nativas externas do Codex.
|
|
51
55
|
Não ative outra forma de execução nem migre estados legados implicitamente.
|
|
@@ -22,12 +22,14 @@ Quando a entrega requer observação, siga o contrato de
|
|
|
22
22
|
o registro descreve o resultado declarado e seus limites, mas não executa o
|
|
23
23
|
procedimento nem aprova o AC sozinho.
|
|
24
24
|
|
|
25
|
-
`execute` respeita o menor grão nomeado: Task executa um nó elegível; SPEC executa sua DAG; PRD executa todas as SPECs selecionadas. “Conclua a execução” ou “finalize a implementação” em trabalho ativo continua Tasks e gates, mas nunca força sucesso. “Desenvolva/melhore/aprimore”
|
|
25
|
+
`execute` respeita o menor grão nomeado: Task executa um nó elegível; SPEC executa sua DAG; PRD executa todas as SPECs selecionadas. “Conclua a execução” ou “finalize a implementação” em trabalho ativo continua Tasks e gates, mas nunca força sucesso. “Desenvolva/melhore/aprimore” com ação independente segue Task avulsa; quando o pedido é só refinar macro, não o promove.
|
|
26
26
|
|
|
27
27
|
## Modelo, effort e velocidade por origem
|
|
28
28
|
|
|
29
|
-
- Conversation e o principal avulso preservam a seleção manual.
|
|
30
|
-
|
|
29
|
+
- Conversation e o principal avulso preservam a seleção manual. Conversation
|
|
30
|
+
read-only não delega; Task avulsa usa subagente nativo Codex no alvo v4. O
|
|
31
|
+
ZAIP escolhe modelo/esforço de cada filho e bloqueia se o host não puder
|
|
32
|
+
atender à configuração exigida. Não paralelize trabalho produtivo avulso.
|
|
31
33
|
- Fast para execução de produto é suportado somente em Task-first realmente independente e deve ser selecionado manualmente no Codex.
|
|
32
34
|
- Executions originadas por SPEC ou PRD usam sempre velocidade `standard`, inclusive em todas as Tasks, Runs e Sub-Runs descendentes.
|
|
33
35
|
- O ZAIP não ativa, persiste ou herda Fast por skill, hook, PreparedPlan ou override de Execution.
|
|
@@ -39,7 +41,10 @@ Aplique o diário e o preset do [guia 19](19-assurance-e-autonomia.md) antes
|
|
|
39
41
|
do despacho gerenciado. Não gere tentativas por tempo nem reexecute gates
|
|
40
42
|
caros inalterados para preencher uma cota.
|
|
41
43
|
|
|
42
|
-
|
|
44
|
+
No Equilibrado v4, reserve no máximo três replans reais por Task: Sol/high,
|
|
45
|
+
Sol/high e Astra/high. A tentativa atual deve terminar em estado terminal;
|
|
46
|
+
o fechamento direcionado pode ser recuperado no próximo evento Codex, sem
|
|
47
|
+
prometer execução após o host parar. O host persiste a decisão real do Gui antes do Stop canônico e aplica a mesma
|
|
43
48
|
decisão no fechamento. Gui read-only pode retornar sem aguardar recibos;
|
|
44
49
|
o relay aceita filho já terminal enquanto o responsável estiver aberto.
|
|
45
50
|
Sem decisão, preserve a pendência; não infira aprovação do status nativo.
|
|
@@ -42,12 +42,16 @@ coordena um responsável por tentativa de Task e seus gates parentais próprios.
|
|
|
42
42
|
- Centralize decisoes arquiteturais e integracao no responsavel adequado.
|
|
43
43
|
- Exija caminhos de evidencia e resultados de comandos, nao declaracoes de
|
|
44
44
|
conclusao.
|
|
45
|
-
- Use paralelismo apenas
|
|
45
|
+
- Use paralelismo produtivo apenas em DAG de PRD/SPEC planejada com Tasks
|
|
46
|
+
independentes e write scopes/recursos compatíveis; Task avulsa é sequencial.
|
|
46
47
|
- Escale bloqueios de autoridade, credencial, seguranca ou escopo; nao suponha
|
|
47
48
|
permissao externa.
|
|
48
49
|
|
|
49
|
-
|
|
50
|
-
|
|
50
|
+
No contrato-alvo v4, toda Task avulsa delega execução a um subagente nativo
|
|
51
|
+
Codex. O ZAIP escolhe modelo/esforço dos filhos, que podem diferir da seleção
|
|
52
|
+
manual do principal. Se o host não puder aplicar/confirmar a configuração,
|
|
53
|
+
bloqueie com causa; não substitua por chat independente nem por executor
|
|
54
|
+
cerimonial.
|
|
51
55
|
[Essencial nunca escala automaticamente para Astra](23-orquestracao-de-modelos.md).
|
|
52
|
-
A exigência
|
|
53
|
-
|
|
56
|
+
A exigência de executor elegível para delivery permanece: não invente captura
|
|
57
|
+
para aprovar gates. Execução direta é somente compatibilidade legada.
|
|
@@ -11,6 +11,12 @@ Run é o envelope da chamada do `zaip-agent-orchestrator`; `parent_run_id` nulo
|
|
|
11
11
|
|
|
12
12
|
A criação explícita de PRD/SPEC vincula a Run de definição e o `creation_run_id` ao macro. Duração, tokens e custo aparecem no PRD/SPEC antes de existirem Tasks somente quando houver fonte capturada ou derivação identificada por proveniência. Um valor `estimated`, `legacy_inferred` ou `reconciled` não é dado observado e não comprova medição da chamada. Quando duração, tokens ou custo não foram capturados, eles permanecem explicitamente indisponíveis (`null`/`unavailable`); nunca atribua telemetria ausente nem transforme ausência em zero. Pensar sem criar permanece apenas em Conversas.
|
|
13
13
|
|
|
14
|
+
No contrato visual da v4, a **interface** do Dashboard mostra `0` em cards e
|
|
15
|
+
células numéricas depois de carregar, inclusive para valor canônico `null`,
|
|
16
|
+
sem exibir “Indisponível” nesses lugares. Cobertura e tooltip distinguem
|
|
17
|
+
“sem medição” de zero observado; skeleton representa loading. API, records,
|
|
18
|
+
exportações e contas preservam `null`/cobertura, sem somar esse zero visual.
|
|
19
|
+
|
|
14
20
|
## Contagem de autonomia e consultas compactas
|
|
15
21
|
|
|
16
22
|
### Leitura dos números do Dashboard
|
|
@@ -31,7 +37,8 @@ descrição acessível explicam a quantidade de Runs precificadas e a cobertura.
|
|
|
31
37
|
O subtítulo apresenta taxas estimadas de alocação: subtotal conhecido dividido pelo
|
|
32
38
|
número de tarefas e pelas horas registradas do mesmo recorte. Isso não estima os
|
|
33
39
|
custos faltantes nem representa a média de custos completos das tarefas. Cada
|
|
34
|
-
denominador indisponível ou zero deixa
|
|
40
|
+
denominador indisponível ou zero deixa a taxa canônica sem valor; a UI v4
|
|
41
|
+
mostra `0` com indicação “sem medição” quando for ausência. Não completar
|
|
35
42
|
as Runs desconhecidas com zero nem apresentar o subtotal como gasto integral.
|
|
36
43
|
Um subtotal observado igual a zero é diferente de ausência total de medição.
|
|
37
44
|
SPECs/PRDs usam seus agregados próprios, não recebem o subtotal global de Tasks.
|
|
@@ -42,7 +49,8 @@ provedor normaliza aliases de Codex tanto na atividade quanto nos segmentos de
|
|
|
42
49
|
uso; isso não altera identidade nem preços nos registros canônicos.
|
|
43
50
|
|
|
44
51
|
Enquanto uma consulta de médias está pendente, a interface mostra carregamento,
|
|
45
|
-
não zero.
|
|
52
|
+
não zero. Depois da resposta, zero observado e ausência de captura mostram o
|
|
53
|
+
mesmo numeral `0`, mas são estados distintos pela cobertura.
|
|
46
54
|
A validação deve comparar API, linhas, rodapé e exportação no mesmo período,
|
|
47
55
|
moeda e filtro. Um processo saudável não comprova que o snapshot foi atualizado;
|
|
48
56
|
confirme também a revisão, a data da fonte e o estado da projeção.
|
|
@@ -29,17 +29,22 @@ Os manuais instalados ficam em `.agents/README.md` (português) e
|
|
|
29
29
|
Os READMEs da raiz pertencem ao projeto consumidor e são preservados.
|
|
30
30
|
As versões geradas em `public-cli/packages/cli/templates` vêm das fontes canônicas.
|
|
31
31
|
|
|
32
|
-
|
|
33
|
-
`execution.runtime:
|
|
32
|
+
O candidato local v4 mantém a seleção do principal em `manual` e configura
|
|
33
|
+
`execution.runtime: codex_native` para PRD/SPEC e Tasks avulsas, com
|
|
34
34
|
`autonomy: { version: 1, preset: balanced }`. São controles diferentes:
|
|
35
35
|
instalar/salvar o preset não inicia provider. O [guia 19](19-assurance-e-autonomia.md)
|
|
36
36
|
explica Essencial, Equilibrado e Persistente; o [guia 23](23-orquestracao-de-modelos.md)
|
|
37
|
-
detalha
|
|
38
|
-
|
|
39
|
-
|
|
37
|
+
detalha a rota v4 Sol/high → Sol/high → Astra/high e sua execução elegível no
|
|
38
|
+
terceiro bloco. Schema e template v4 já aceitam Codex-native; o TGZ e a
|
|
39
|
+
execução real no host ainda exigem qualificação antes da publicação. O Essencial
|
|
40
|
+
nunca usa Astra automático. Principal avulso preserva a seleção manual; filhos
|
|
41
|
+
seguem a seleção ZAIP validada no host. Projetos e estados legados
|
|
40
42
|
não recebem migração silenciosa de quotas.
|
|
41
43
|
|
|
42
44
|
`@latest` entrega o que está publicado no npm. Uma atualização local das fontes ou
|
|
43
45
|
um pacote validado localmente só chegará a esse comando após publicação.
|
|
46
|
+
Na v4, a instalação limpa e a atualização devem comprovar `doctor`, adapters,
|
|
47
|
+
preservação do conteúdo do consumidor e execução Codex-native por Task antes
|
|
48
|
+
de se anunciar esse padrão como funcional.
|
|
44
49
|
Consulte [instalação detalhada](20-instalacao-detalhada.md) e
|
|
45
50
|
[qualificação do pacote](26-qualidade-e-release.md).
|
|
@@ -13,12 +13,23 @@
|
|
|
13
13
|
- Em delivery/interação delegada, use Gui como último filho do responsável e
|
|
14
14
|
concilie a Task; conversa read-only sem filhos não precisa desse circuito.
|
|
15
15
|
- Nao terminalize SPEC/PRD por causa do resultado isolado de uma Task filha.
|
|
16
|
-
-
|
|
16
|
+
- Reconciliação global permanece manual; no alvo v4, concilie a tentativa
|
|
17
|
+
atual no fechamento/Stop observado ou no próximo evento Codex idempotente,
|
|
18
|
+
sem varredura global ou promessa de execução após o host parar.
|
|
17
19
|
- Use uma SPEC por padrão; divida somente capacidades realmente independentes e paralelizáveis.
|
|
20
|
+
- Task avulsa usa subagente Codex e execução produtiva sequencial; só uma DAG
|
|
21
|
+
de PRD/SPEC pode paralelizar Tasks independentes.
|
|
22
|
+
- “Crie” PRD/SPEC fica `draft`; “crie e execute” pode avançar no mesmo turno,
|
|
23
|
+
com Runs separadas de definição e delivery.
|
|
24
|
+
- A fila horária, quando instalada a pedido, seleciona um único macro/Task
|
|
25
|
+
superior `ready`, com prioridade PRD → SPEC independente → Task avulsa e
|
|
26
|
+
ordenação manual dentro da classe.
|
|
18
27
|
- Não crie Tasks durante definição: mostre blueprints compactos e materialize somente em `ready|execute`.
|
|
19
28
|
- Resolva verbos de lifecycle pelo alvo e status persistido, nunca por palavra isolada.
|
|
20
29
|
|
|
21
30
|
- Prefira uma investigação útil a repetir a mesma hipótese; conte reservas reais
|
|
22
31
|
pelo preset da Task, não por duração ou quantidade de testes.
|
|
23
32
|
- Não transforme tempo decorrido em falha nem incompletude em aprovação.
|
|
33
|
+
- Após o loading, cards/tabelas numéricas mostram `0` para métrica ausente,
|
|
34
|
+
com cobertura “sem medição”; records e API preservam `null`.
|
|
24
35
|
- Preserve o diário de autonomia; ele não é cache. Veja [guia 19](19-assurance-e-autonomia.md).
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
5. Compare `manifest.json`, `summary.json`, índices e chunks de `records/lifecycle`, sem varrer records.
|
|
8
8
|
6. Corrija a causa, repita a reproducao e depois os gates completos.
|
|
9
9
|
|
|
10
|
-
Se uma Task estiver presa em executing/verifying, use o popup Reconciliar. O reparo aceita `task_complete` exato, marca Run orfa apos dez minutos como failed e usa blocked quando faltam gates; nunca infere cancelamento.
|
|
10
|
+
Se uma Task estiver presa em executing/verifying, use o popup Reconciliar para o backlog global. O reparo aceita `task_complete` exato, marca Run orfa apos dez minutos como failed e usa blocked quando faltam gates; nunca infere cancelamento. A v4 deve conciliar a tentativa **atual** no fechamento ou próximo evento Codex da mesma Task, sem varredura global automática na abertura do dashboard. Se o host parou e não houve novo evento, relate a pendência em vez de dizer que ela ainda está executando.
|
|
11
11
|
|
|
12
12
|
Se o problema for de instalacao ou integridade, consulte `framework.lock.yaml`.
|
|
13
13
|
|
|
@@ -21,6 +21,8 @@ Se “finalizar” tentou entregar um PRD `draft`, confira adapters/skills: o co
|
|
|
21
21
|
| `RECOVERY_PENDING` | Localize a reserva e resultado real; não despache outra invocação nem apague o diário |
|
|
22
22
|
| `ATTEMPT_BUDGET_EXHAUSTED` / `REPLAN_BUDGET_EXHAUSTED` | Confira o preset congelado e consumo; registre o resultado parcial sem reset |
|
|
23
23
|
| `REPLAN_INCOMPLETE` | Plano inválido não libera reparação; preserve a reserva consumida |
|
|
24
|
+
| Segundo replan escalou para Astra no Equilibrado v4 | Divergência de política: a rota aprovada é Sol → Sol → Astra; confira ledger, catálogo e modelo observado |
|
|
25
|
+
| Perfil nativo não suporta modelo/effort exigido | Bloqueie com causa; não substitua silenciosamente nem conclua por prompt |
|
|
24
26
|
| Gui terminou sem recibo de início | Capture o evento real e use relay suportado com responsável aberto; não invente decisão |
|
|
25
27
|
| Responsável já fechado sem decisão | Recuperação autorizada/nova tentativa; reconciliação repetida não cria aprovação |
|
|
26
28
|
| Perfil Essencial tentou Astra automático | Rejeite a seleção; não trate fallback/herança como autorização |
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
- SPEC: planejamento tecnico de multiplas Tasks; draft fica em Planejamento.
|
|
8
8
|
- PRD: definicao de produto; draft fica em Definicao.
|
|
9
9
|
|
|
10
|
-
Pensar/explorar PRD ou SPEC é Conversation. Criar explicitamente persiste macro, SPECs e PreparedPlan `draft`, atribui telemetria e mantém apenas blueprints de Tasks. `ready`
|
|
10
|
+
Pensar/explorar PRD ou SPEC é Conversation. Criar explicitamente persiste macro, SPECs e PreparedPlan `draft`, atribui telemetria e mantém apenas blueprints de Tasks. `ready` materializa Tasks/Changes/Execution sem iniciar; `execute` materializa e inicia. “Crie e execute” cabe no mesmo turno Codex com Runs canônicas separadas de definição (`interaction`) e delivery, ligadas pelo alvo; criar isoladamente não promove a `ready`.
|
|
11
11
|
|
|
12
12
|
## Colunas
|
|
13
13
|
|
|
@@ -43,9 +43,12 @@ Gui ainda pode registrar bloqueio/falha real, mas `executor_missing` impede
|
|
|
43
43
|
alternativa, sem dispensar os demais gates. `conversation finish` e `run finish` usam o mesmo escritor
|
|
44
44
|
canônico, preservando a decisão imutável, os vínculos e o replay idempotente.
|
|
45
45
|
|
|
46
|
-
## Execução direta autorizada
|
|
46
|
+
## Execução direta legada autorizada
|
|
47
47
|
|
|
48
|
-
A Task avulsa
|
|
48
|
+
A Task avulsa do contrato legado preferia o principal direto. A v4
|
|
49
|
+
substitui essa preferência por executor subagente nativo observado para toda
|
|
50
|
+
Task avulsa, com orquestração sequencial. Enquanto o caminho legado existir,
|
|
51
|
+
o host registra a referência humana
|
|
49
52
|
com `--direct-authorization REFERÊNCIA` em `conversation start` ou `run start`,
|
|
50
53
|
desde o início de uma raiz Task/Change/Execution observada. Thread, modelo ou
|
|
51
54
|
classificação de intenção não são autorização por si só. Modelo/esforço manuais
|
|
@@ -58,11 +61,11 @@ necessários. Raízes antigas fechadas não recebem nova aprovação retroativa.
|
|
|
58
61
|
|
|
59
62
|
`blocked` e retomavel com `task resume`; `failed` exige `task rework` na mesma Task e nova tentativa. `completed` e `cancelled` sao imutaveis. Interromper geracao bloqueia; cancelar a Task explicitamente cancela.
|
|
60
63
|
|
|
61
|
-
`finalize|conclua` em macro `draft|ready` significa lapidar e deixar pronto; em trabalho ativo, “conclua a execução/finalize a implementação” continua Tasks e gates. `implemente` é sensível ao estado; `desenvolva|melhore|aprimore`
|
|
64
|
+
`finalize|conclua` em macro `draft|ready` significa lapidar e deixar pronto; em trabalho ativo, “conclua a execução/finalize a implementação” continua Tasks e gates. `implemente` é sensível ao estado; na v4, `desenvolva|melhore|aprimore` com objetivo independente de ação seguem Task avulsa, enquanto pedidos de refinamento do macro permanecem em planejamento/rework. PRD cancelado gera sucessor vinculado com tag `rework`.
|
|
62
65
|
|
|
63
66
|
## SPEC e PRD
|
|
64
67
|
|
|
65
|
-
Ao iniciar a primeira Task filha, os pais ficam active/Execucao e permanecem assim entre Runs. Task bloqueada ou falhada nao bloqueia automaticamente o pai.
|
|
68
|
+
Ao iniciar a primeira Task filha, os pais ficam active/Execucao e permanecem assim entre Runs. Task bloqueada ou falhada nao bloqueia automaticamente o pai enquanto ramos independentes continuam. Antes de fechar SPEC/PRD, **todas** as Tasks da DAG, inclusive dependentes inviabilizadas, precisam de resultado terminal persistido. Só o conjunto concluído entra em verificação para entrega; bloqueios/falhas produzem decisão parental verdadeira depois do fechamento das filhas. Gates de integração, Acceptance Criteria, outcomes e Evidence continuam obrigatórios para `delivered`.
|
|
66
69
|
|
|
67
70
|
Observações declaradas seguem o contrato de
|
|
68
71
|
[prova observável](../../skills/zaip-skill-change/references/observable-evidence.md).
|
|
@@ -72,7 +75,7 @@ Novas SPECs de um PRD não possuem dependências entre si: são capacidades para
|
|
|
72
75
|
|
|
73
76
|
## Reconciliacao
|
|
74
77
|
|
|
75
|
-
O popup Reconciliar chama `run reconcile --open` somente depois da confirmacao humana. Nao existe varredura ao abrir o dashboard, por turno ou por intervalo.
|
|
78
|
+
O popup Reconciliar chama `run reconcile --open` somente depois da confirmacao humana. Nao existe varredura **global** ao abrir o dashboard, por turno ou por intervalo. O contrato-alvo v4 acrescenta conciliação idempotente **direcionada à tentativa atual** no Stop/fechamento observado ou no próximo evento Codex da mesma Task. Nenhum hook continua rodando após o host parar; não alegue recuperação invisível.
|
|
76
79
|
|
|
77
80
|
O reparo e idempotente: `task_complete` local exato permite tentar conclusao; gate insuficiente usa blocked; Run sem invocacao ativa por dez minutos usa failed; cancelled nunca e inferido. Projecoes exibem o status persistido e nao revivem Task terminal por atividade local obsoleta.
|
|
78
81
|
|
|
@@ -105,7 +108,9 @@ A CLI autentica vínculos e persiste a decisão imutável antes do Stop canônic
|
|
|
105
108
|
- Se a persistência falhar, mantenha evento/erro recuperável e condição objetiva;
|
|
106
109
|
não declare que o estado canônico mudou antes de lê-lo.
|
|
107
110
|
|
|
108
|
-
A política
|
|
111
|
+
A política legada preferia Task avulsa direta, mas a v4 Codex-native passa a
|
|
112
|
+
exigir executor subagente nativo em trabalho novo. Para compatibilidade antiga,
|
|
113
|
+
uma raiz de delivery com Task, Change,
|
|
109
114
|
Execution, turno e modelo observados pode registrar `--direct-authorization`
|
|
110
115
|
no início. Esse contrato imutável satisfaz a alternativa ao executor capturado,
|
|
111
116
|
sem criar Sub-Run fictício nem converter retrospectivamente uma raiz antiga.
|
|
@@ -19,7 +19,7 @@ O modelo e o tier de serviço efetivamente observados, quando disponíveis, defi
|
|
|
19
19
|
| Cache | `cache / 1.000.000 × tarifa de cache` |
|
|
20
20
|
| Output | `output / 1.000.000 × tarifa de output` |
|
|
21
21
|
|
|
22
|
-
O dashboard soma esses componentes uma única vez. Quando a identidade do modelo/tier, os tokens necessários ou uma tarifa do catálogo versionado não existem, o custo permanece
|
|
22
|
+
O dashboard soma esses componentes uma única vez. Quando a identidade do modelo/tier, os tokens necessários ou uma tarifa do catálogo versionado não existem, o custo canônico permanece `null` em vez de ser inventado. No contrato visual v4, card/célula carregado mostra `0` com cobertura “sem medição”; esse numeral não entra na soma.
|
|
23
23
|
|
|
24
24
|
## 3. Considere contexto, velocidade e esforço
|
|
25
25
|
|
|
@@ -64,11 +64,15 @@ Os squads facilitam a leitura organizacional e a colaboração humana. Eles não
|
|
|
64
64
|
|
|
65
65
|
O orquestrador mantém a Run raiz e cada Run delegada separadas na observabilidade. Duração, tokens e custo só são agregados quando observados ou reconciliados; ausência continua indisponível, nunca zero.
|
|
66
66
|
|
|
67
|
+
Na v4, isso continua verdadeiro para records, API e cálculos. Apenas os
|
|
68
|
+
cards/células numéricas do Dashboard carregado exibem `0` com cobertura
|
|
69
|
+
“sem medição”; o catálogo não autoriza registrar zero observado fictício.
|
|
70
|
+
|
|
67
71
|
O dispatch autônomo passa os `Task.write_scopes` a essa seleção **por Task** e persiste o builder escolhido na entrada de cada Task. Assim uma DAG com frontend e backend usa Doug e Will nas respectivas invocações, sem transformar a seleção de uma Task em builder global. A seleção é determinística, mas não concede autoridade: o agente ainda precisa respeitar seus write scopes e permissões do catálogo.
|
|
68
72
|
|
|
69
73
|
O `budget.soft_cycles` também acompanha o agente selecionado por Task e governa seu checkpoint suave. Tokens continuam observados para telemetria e custo, mas não interrompem nem exigem checkpoint. Para comparar agentes, use `zaip run aggregate --agent agent-ID`; o resultado inclui duração coberta, ciclos de uso observados, tokens, custo, cobertura e Runs de rework.
|
|
70
74
|
|
|
71
|
-
Nanda (`agent-reviewer`) usa `gpt-
|
|
75
|
+
Nanda (`agent-reviewer`) usa `gpt-6-sol` com esforço `medium` e `soft_cycles: 12`, proporcional à revisão standard. Ana (`agent-auditor`) usa `gpt-6-sol`/`high` para auditoria crítica ou explicitamente auditável; Luiz (`agent-security-auditor`) usa `gpt-6-sol`/`high` para auditoria de segurança explícita.
|
|
72
76
|
|
|
73
77
|
## Dashboard e segurança operacional
|
|
74
78
|
|