@zaip-ai/cli 1.3.0 → 1.3.2
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 +3 -2
- package/dist/services/agent-adapters.js +1 -1
- package/dist/services/agent-adapters.js.map +1 -1
- package/dist/services/agent-adapters.test.js +2 -1
- package/dist/services/agent-adapters.test.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 +89 -7
- package/dist/services/codex-pre-tool-hook-template.js.map +1 -1
- 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 +7 -0
- package/dist/services/codex-rules.js.map +1 -1
- package/dist/services/install-agents-template.d.ts.map +1 -1
- package/dist/services/install-agents-template.js +1 -0
- package/dist/services/install-agents-template.js.map +1 -1
- package/dist/services/runtime-template.test.js +31 -7
- package/dist/services/runtime-template.test.js.map +1 -1
- package/dist/services/template-manifest.d.ts.map +1 -1
- package/dist/services/template-manifest.js +7 -3
- package/dist/services/template-manifest.js.map +1 -1
- package/package.json +1 -1
- package/templates/.agents/config/agents/catalog.yaml +7 -7
- package/templates/.agents/config/clients/codex/agents/zaip-agent-backend.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-frontend.toml +8 -8
- package/templates/.agents/dashboard/.zaip-managed.json +373 -205
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{CostCalculationGuidePage-DxR_pgSV.js → CostCalculationGuidePage-ovxurkIk.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{DashboardHelpDialog-4jZLTWE_.js → DashboardHelpDialog-BXy6nti1.js} +268 -86
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{PricingSettingsDialog-CKcsqb-r.js → PricingSettingsDialog-vSvvOHQp.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{ProjectSettingsPage-DmmJD2Th.js → ProjectSettingsPage-zH758vfs.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/TraceabilityWorkspace-CTH2wDs5.js +1 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{TraceabilityWorkspace-CaKwQP43.css → TraceabilityWorkspace-DvvavDLY.css} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-DKwP1stV.js +68 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-PoJA2PI1.css +1 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{icons-vendor-C0fj2uU9.js → icons-vendor-B_lDDHn1.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/index-B31GMG5O.css +1 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/index-CuMcoUni.js +2 -0
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{react-vendor-BEsJ-FYH.js → react-vendor-B3TJrD4O.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/{traceability-B6y6Gw12.js → traceability-7f1j5wx3.js} +1 -1
- package/templates/.agents/dashboard/apps/frontend/dist/index.html +7 -7
- package/templates/.agents/dashboard/apps/frontend/playwright.dom.config.ts +32 -0
- package/templates/.agents/dashboard/apps/frontend/src/App.tsx +132 -245
- package/templates/.agents/dashboard/apps/frontend/src/AppOverlays.tsx +0 -21
- package/templates/.agents/dashboard/apps/frontend/src/DashboardAlternateContent.tsx +9 -0
- package/templates/.agents/dashboard/apps/frontend/src/TraceabilityWorkspace.dom.e2e.ts +56 -0
- package/templates/.agents/dashboard/apps/frontend/src/TraceabilityWorkspace.test.ts +18 -1
- package/templates/.agents/dashboard/apps/frontend/src/TraceabilityWorkspace.tsx +75 -8
- package/templates/.agents/dashboard/apps/frontend/src/dashboard-api.test.ts +25 -1
- package/templates/.agents/dashboard/apps/frontend/src/dashboard-api.ts +7 -9
- package/templates/.agents/dashboard/apps/frontend/src/operations-period-render.test.ts +4 -4
- package/templates/.agents/dashboard/apps/frontend/src/overview-status-page.test.ts +1 -1
- package/templates/.agents/dashboard/apps/frontend/src/snapshot-banner-semantics.test.ts +7 -0
- package/templates/.agents/dashboard/apps/frontend/src/snapshot-coherence.test.ts +20 -8
- package/templates/.agents/dashboard/apps/frontend/src/sqlite-page-export.test.ts +32 -0
- package/templates/.agents/dashboard/apps/frontend/src/sqlite-page-export.ts +21 -0
- package/templates/.agents/dashboard/apps/frontend/src/styles.css +19 -0
- package/templates/.agents/dashboard/apps/frontend/src/traceability-task-pagination.test.ts +32 -0
- package/templates/.agents/dashboard/apps/frontend/src/traceability-task-pagination.ts +36 -0
- package/templates/.agents/dashboard/apps/frontend/src/traceability-workspace.css +6 -2
- package/templates/.agents/dashboard/apps/frontend/src/use-app-cost-loaders.test.ts +48 -0
- package/templates/.agents/dashboard/apps/frontend/src/use-app-cost-loaders.ts +31 -27
- package/templates/.agents/dashboard/apps/frontend/src/use-app-trace-documents.ts +7 -1
- package/templates/.agents/dashboard/apps/frontend/src/use-app-work-list-page.test.ts +163 -0
- package/templates/.agents/dashboard/apps/frontend/src/use-app-work-list-page.ts +136 -0
- package/templates/.agents/dashboard/apps/frontend/src/use-operations-detail-export.ts +76 -0
- package/templates/.agents/dashboard/apps/frontend/src/work-list-load-dedup.test.ts +23 -0
- package/templates/.agents/dashboard/apps/frontend/src/work-list-load-dedup.ts +27 -0
- package/templates/.agents/dashboard/apps/frontend/src/work-list-pagination.test.ts +38 -14
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostDeveloperAttributionPanel.tsx +60 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostDeveloperAttributionTable.tsx +191 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostFilters.loading.test.ts +14 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostFilters.run-page.test.ts +18 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostFilters.tsx +18 -3
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorContent.tsx +8 -2
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorLoadErrors.tsx +35 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorPage.test.ts +47 -1
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorPage.tsx +50 -58
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTableLoading.test.ts +132 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTableLoading.tsx +70 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTables.test.ts +128 -138
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTables.tsx +17 -67
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-monitor-copy.ts +2 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-monitor-views.ts +3 -1
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-page-range.ts +35 -0
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/use-compact-cost-page.ts +16 -4
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/use-cost-group-page.test.ts +37 -2
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/use-cost-group-page.ts +44 -8
- package/templates/.agents/dashboard/modules/cost-monitor/src/react/use-cost-run-page.ts +6 -1
- package/templates/.agents/dashboard/modules/operations/src/contracts.ts +20 -3
- package/templates/.agents/dashboard/modules/operations/src/react/DeveloperAttributionPanel.test.ts +54 -0
- package/templates/.agents/dashboard/modules/operations/src/react/DeveloperAttributionPanel.tsx +247 -0
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsMainContent.tsx +39 -13
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverview.helpers.tsx +107 -2
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverview.macro-metrics.test.ts +55 -0
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverview.test.ts +20 -28
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverview.tsx +162 -165
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverviewTopPanel.tsx +127 -0
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsPage.tsx +13 -46
- package/templates/.agents/dashboard/modules/operations/src/react/OperationsPageOverview.tsx +3 -0
- package/templates/.agents/dashboard/modules/operations/src/react/PagedWorkList.test.tsx +43 -0
- package/templates/.agents/dashboard/modules/operations/src/react/PagedWorkList.tsx +181 -0
- package/templates/.agents/dashboard/modules/operations/src/react/UnifiedWorkList.test.ts +4 -2
- package/templates/.agents/dashboard/modules/operations/src/react/UnifiedWorkList.tsx +13 -0
- package/templates/.agents/dashboard/modules/operations/src/react/developer-identities.test.ts +18 -0
- package/templates/.agents/dashboard/modules/operations/src/react/developer-identities.ts +30 -0
- package/templates/.agents/dashboard/modules/operations/src/react/execution-metrics.ts +1 -0
- package/templates/.agents/dashboard/modules/operations/src/react/export/ExcelExportAction.test.ts +8 -0
- package/templates/.agents/dashboard/modules/operations/src/react/export/ExcelExportAction.tsx +3 -0
- package/templates/.agents/dashboard/modules/operations/src/react/export/export-layout.test.ts +14 -5
- package/templates/.agents/dashboard/modules/operations/src/react/index.ts +1 -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-date-filters.css +1 -1
- package/templates/.agents/dashboard/modules/operations/src/react/operations-overview-period-filter.test.ts +21 -11
- package/templates/.agents/dashboard/modules/operations/src/react/operations-overview.css +4 -0
- package/templates/.agents/dashboard/modules/operations/src/react/operations-page-contract.ts +8 -1
- package/templates/.agents/dashboard/modules/operations/src/react/operations-view-order.test.ts +1 -0
- package/templates/.agents/dashboard/modules/operations/src/react/period-summary.ts +1 -0
- package/templates/.agents/dashboard/modules/operations/src/server/metric-coverage.ts +1 -0
- package/templates/.agents/dashboard/packages/local-runtime/dist/server.cjs +527 -335
- package/templates/.agents/dashboard/packages/local-runtime/dist/sqlite-read-model.cjs +501 -309
- package/templates/.agents/dashboard/packages/local-runtime/gitignore.template +2 -0
- package/templates/.agents/dashboard/packages/local-runtime/scripts/rebuild-sqlite-read-model.mjs +3 -1
- package/templates/.agents/dashboard/packages/local-runtime/scripts/test-sqlite-read-model.mjs +3 -3
- package/templates/.agents/dashboard/packages/local-runtime/scripts/validate-sqlite-read-model.mjs +25 -15
- package/templates/.agents/dashboard/packages/local-runtime/server.mjs +527 -335
- package/templates/.agents/dashboard/packages/local-runtime/src/server-board.test.ts +34 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-board.ts +15 -8
- package/templates/.agents/dashboard/packages/local-runtime/src/server-classification-page.test.ts +87 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-period-macro-metric.test.ts +44 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-period-macro-metric.ts +125 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-reconciliation-refresh.test.ts +66 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-request-authority.test.ts +61 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-request-authority.ts +18 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-run-projections.test.ts +42 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot-refresh.ts +97 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot.test.ts +3 -1
- package/templates/.agents/dashboard/packages/local-runtime/src/server-sqlite-task-trace.ts +91 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server.test-fixtures.ts +36 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/server.test.ts +98 -123
- package/templates/.agents/dashboard/packages/local-runtime/src/server.ts +111 -135
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-artifact-counts.ts +28 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-agent-page.test.ts +63 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-agent-page.ts +109 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-aggregates.ts +497 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-fast-page-parity.test-support.ts +65 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-group-page.test.ts +176 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-group-page.ts +119 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-group-projection.ts +41 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-invocation-page.test.ts +16 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-invocation-page.ts +29 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-first-fold-cache.ts +355 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-first-fold-persistence.ts +121 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-first-fold-timing.ts +27 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-operations-projection.ts +15 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-operations-work-list.test.ts +293 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-operations-work-list.ts +371 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-cache.test-support.ts +23 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-first-fold-types.ts +89 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-multi-provider-fixture.ts +227 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-multi-provider.test.ts +691 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model-source-fingerprint.ts +81 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model.test.ts +440 -863
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model.ts +1120 -1086
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-snapshot-cache.ts +129 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-snapshot-install.test.ts +26 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-snapshot-install.ts +28 -0
- package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-snapshot-seed.test.ts +116 -0
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-launch-page.mjs +146 -0
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-launch-page.test.mjs +165 -0
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-refresh.mjs +140 -0
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard.mjs +188 -299
- package/templates/.agents/dashboard/packages/local-runtime/start-dashboard.test.mjs +51 -70
- package/templates/.agents/dashboard/packages/windows-launcher/Program.cs +5 -2
- package/templates/.agents/dashboard/tests/e2e/playwright.config.ts +4 -1
- package/templates/.agents/dashboard/tests/e2e/specs/cost-monitor-loading.spec.ts +142 -0
- package/templates/.agents/dashboard/tests/e2e/specs/cost-monitor-pagination.spec.ts +232 -0
- package/templates/.agents/dashboard/tests/e2e/specs/dashboard-performance-matrix.spec.ts +743 -0
- package/templates/.agents/dashboard/tests/e2e/specs/dashboard.spec.ts +183 -210
- package/templates/.agents/dashboard/zaip-dashboard-windows.exe +0 -0
- package/templates/.agents/requirements/autonomous-assurance.md +6 -6
- 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 +3 -3
- package/templates/.agents/requirements/kanban-dashboard.md +10 -2
- package/templates/.agents/requirements/model-orchestration.md +1 -1
- 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 +4 -4
- package/templates/.agents/requirements/zaip-strategic-95.md +1 -1
- package/templates/.agents/rules/dashboard-ui-consistency.md +14 -0
- package/templates/.agents/rules/frontend-lite.md +4 -4
- package/templates/.agents/rules/run-lifecycle-closure.md +4 -4
- package/templates/.agents/runtime/bin/zaip.mjs +1137 -1037
- package/templates/.agents/runtime/checksums.sha256 +2 -2
- package/templates/.agents/runtime/provenance.json +2 -2
- package/templates/.agents/skills/criar-pasta-obsidian/scripts/generate-obsidian-vault.test.mjs +20 -16
- package/templates/.agents/skills/zaip-skill-agent-catalog/SKILL.md +22 -0
- package/templates/.agents/skills/zaip-skill-agent-catalog/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-author-skills/SKILL.md +3 -2
- package/templates/.agents/skills/zaip-skill-author-skills/scripts/audit-skill-catalog.mjs +49 -0
- package/templates/.agents/skills/zaip-skill-author-skills/scripts/author-skill-scripts.test.mjs +27 -0
- package/templates/.agents/skills/zaip-skill-author-skills/scripts/run-skill-tests.mjs +37 -0
- package/templates/.agents/skills/zaip-skill-backend/SKILL.md +1 -0
- package/templates/.agents/skills/zaip-skill-change/SKILL.md +1 -1
- package/templates/.agents/skills/zaip-skill-change/references/observable-evidence.md +83 -0
- package/templates/.agents/skills/zaip-skill-dashboard-diagnostics/SKILL.md +22 -0
- package/templates/.agents/skills/zaip-skill-dashboard-diagnostics/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-execution/SKILL.md +1 -1
- package/templates/.agents/skills/zaip-skill-frontend/SKILL.md +4 -3
- package/templates/.agents/skills/zaip-skill-frontend/agents/openai.yaml +2 -2
- package/templates/.agents/skills/zaip-skill-github-deploy/SKILL.md +10 -10
- package/templates/.agents/skills/zaip-skill-lifecycle-closure/SKILL.md +27 -0
- package/templates/.agents/skills/zaip-skill-lifecycle-closure/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-prd/SKILL.md +4 -0
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-local-telemetry.mjs +72 -22
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-explicit-recovery.mjs +223 -0
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-lib.mjs +42 -1
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-lib.test.mjs +101 -0
- package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-remeasurement.test.mjs +53 -0
- package/templates/.agents/skills/zaip-skill-release-qualification/SKILL.md +20 -0
- package/templates/.agents/skills/zaip-skill-release-qualification/agents/openai.yaml +4 -0
- package/templates/.agents/skills/zaip-skill-review/SKILL.md +5 -0
- package/templates/.agents/skills/zaip-skill-rules/SKILL.md +1 -1
- package/templates/.agents/skills/zaip-skill-spec/SKILL.md +4 -0
- package/templates/.agents/skills/zaip-skill-sqlite-read-model/SKILL.md +22 -90
- package/templates/.agents/zaip-aios/INDEX.md +57 -32
- package/templates/.agents/zaip-aios/README.md +22 -12
- package/templates/.agents/zaip-aios/guides/02-requirements.md +5 -0
- package/templates/.agents/zaip-aios/guides/06-execucao.md +13 -4
- package/templates/.agents/zaip-aios/guides/07-revisao-e-validacao.md +7 -0
- package/templates/.agents/zaip-aios/guides/10-seguranca.md +23 -0
- package/templates/.agents/zaip-aios/guides/11-observabilidade-e-custos.md +6 -6
- package/templates/.agents/zaip-aios/guides/13-boas-praticas.md +3 -0
- package/templates/.agents/zaip-aios/guides/16-lifecycle-e-reconciliacao.md +12 -3
- package/templates/.agents/zaip-aios/guides/17-como-o-custo-e-calculado.md +5 -5
- package/templates/.agents/zaip-aios/guides/19-assurance-e-autonomia.md +23 -0
- package/templates/.agents/zaip-aios/guides/20-instalacao-detalhada.md +44 -8
- package/templates/.agents/zaip-aios/guides/21-telemetria-monitor-custos.md +8 -14
- package/templates/.agents/zaip-aios/guides/22-fluxos-e-roteamento.md +5 -0
- package/templates/.agents/zaip-aios/guides/23-orquestracao-de-modelos.md +6 -6
- package/templates/.agents/zaip-aios/guides/24-calculo-de-custos-openai.md +8 -8
- package/templates/.agents/zaip-aios/guides/25-fontes-de-precos-openai.md +3 -2
- package/templates/.agents/zaip-aios/guides/26-qualidade-e-release.md +92 -10
- package/templates/.agents/zaip-aios/guides/27-telemetria-git-native.md +8 -3
- package/templates/.agents/zaip-aios/guides/28-lifecycle-completo.md +5 -0
- package/templates/template-manifest.json +555 -170
- package/templates/.agents/dashboard/apps/frontend/dist/assets/TraceabilityWorkspace-BwtitWa_.js +0 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-BZ5WdaMN.css +0 -1
- package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-N5Csr0RP.js +0 -68
- package/templates/.agents/dashboard/apps/frontend/dist/assets/index-C4aIB1PV.js +0 -2
- package/templates/.agents/dashboard/apps/frontend/dist/assets/index-DK_enB5Z.css +0 -1
- package/templates/.agents/dashboard/apps/frontend/src/use-idle-cost-prefetch.ts +0 -45
- package/templates/.agents/dashboard/packages/local-runtime/dist/server.cjs.metafile.json +0 -7333
|
@@ -4,24 +4,45 @@ Este guia descreve o modelo de lifecycle V2 no layout V3. Durante a transição,
|
|
|
4
4
|
|
|
5
5
|
## Pré-requisitos
|
|
6
6
|
|
|
7
|
-
- Node.js 22
|
|
8
|
-
- pnpm 11;
|
|
7
|
+
- Node.js compatível com o pacote (declara 22+); para Dashboard, confirme `node:sqlite` disponível, como no ambiente de referência 22.16.0;
|
|
9
8
|
- Git;
|
|
10
9
|
- permissões de escrita no repositório consumidor.
|
|
11
10
|
|
|
11
|
+
O consumidor não precisa compilar o monorepo nem instalar pnpm para executar
|
|
12
|
+
o runtime distribuído. No checkout mantenedor, use o pnpm fixado em
|
|
13
|
+
`packageManager` (11.12.0 neste snapshot), com `corepack pnpm` quando disponível.
|
|
14
|
+
|
|
15
|
+
## Instalação pública no projeto consumidor
|
|
16
|
+
|
|
17
|
+
Na raiz do projeto-alvo:
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
npx @zaip-ai/cli@latest init --dry-run
|
|
21
|
+
npx @zaip-ai/cli@latest init
|
|
22
|
+
node .agents/runtime/bin/zaip.mjs doctor --json
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
Revise o dry-run antes da instalação. `@latest` seleciona a versão publicada,
|
|
26
|
+
não alterações ainda locais neste repositório. O binário público `zaip` é o
|
|
27
|
+
instalador; nos exemplos de lifecycle deste guia, `zaip ...` é uma abreviação
|
|
28
|
+
de `node .agents/runtime/bin/zaip.mjs ...` no projeto consumidor. Use o caminho
|
|
29
|
+
explícito para evitar colisão entre os dois CLIs.
|
|
30
|
+
|
|
12
31
|
## Construir o CLI
|
|
13
32
|
|
|
14
|
-
|
|
33
|
+
Somente no repositório-fonte, para manutenção do framework:
|
|
15
34
|
|
|
16
35
|
```bash
|
|
17
|
-
pnpm install
|
|
18
|
-
pnpm build
|
|
36
|
+
corepack pnpm install --frozen-lockfile
|
|
37
|
+
corepack pnpm build
|
|
19
38
|
node packages/cli/dist/index.js version
|
|
20
39
|
```
|
|
21
40
|
|
|
22
|
-
|
|
41
|
+
Nesse checkout compilado, use `node packages/cli/dist/index.js ...` para os
|
|
42
|
+
comandos de lifecycle. Em `--workspace`, informe o destino autorizado; não
|
|
43
|
+
confunda a raiz fonte com o projeto consumidor.
|
|
23
44
|
|
|
24
|
-
##
|
|
45
|
+
## Setup pelo CLI de lifecycle
|
|
25
46
|
|
|
26
47
|
Faça primeiro um dry-run e revise conflitos:
|
|
27
48
|
|
|
@@ -76,7 +97,16 @@ zaip migrate rollback --workspace /caminho/do/projeto --migration ID
|
|
|
76
97
|
|
|
77
98
|
Use Task-first para uma alteração pontual e bem delimitada. Use SPEC quando o objetivo técnico exige várias Tasks, dependências ou execução autônoma longa. Use PRD quando é necessário traduzir objetivo de negócio, usuários, métricas e restrições em uma ou mais SPECs.
|
|
78
99
|
|
|
79
|
-
PRD e SPEC são opcionais.
|
|
100
|
+
PRD e SPEC são opcionais. O intake captura uma vez por turno observável;
|
|
101
|
+
continuação reutiliza o foco válido e publicação puramente Git não cria
|
|
102
|
+
lifecycle. Para pergunta, feedback ou análise read-only, `conversation start`
|
|
103
|
+
e `conversation finish` registram uma interaction sem Task/Change artificial.
|
|
104
|
+
Criar/refinar explicitamente PRD/SPEC `draft` pode persistir macro e PreparedPlan
|
|
105
|
+
na própria interaction, sem delivery. Fora dessa exceção, alterações persistentes
|
|
106
|
+
de código, documentação ou configuração exigem delivery, Task materializada e
|
|
107
|
+
Run raiz ativa antes da escrita; caches/builds e projeções geradas seguem as
|
|
108
|
+
isenções da Rule de workflow. Interaction read-only sem descendentes não exige
|
|
109
|
+
executor nem finalizador.
|
|
80
110
|
|
|
81
111
|
Uma solicitação direta de ação entra em Execução; ela não passa artificialmente por Definição ou Planejamento. Uma Task independente que foi apenas preparada e ainda não começou fica em Pronto para executar. No quadro, Definição é exclusiva de PRDs em draft e Planejamento é exclusivo de SPECs em draft. O contrato completo está em [Lifecycle de trabalho](28-lifecycle-completo.md).
|
|
82
112
|
|
|
@@ -200,6 +230,12 @@ verificação não se aplica, registre `status: not_applicable` e a justificativ
|
|
|
200
230
|
permanece pendência. O dashboard contabiliza testes e considera uma etapa rastreada somente quando
|
|
201
231
|
existe timestamp de origem, sem substituir ausência pelo horário da consulta.
|
|
202
232
|
|
|
233
|
+
Quando houver prova observável por AC, siga o contrato
|
|
234
|
+
[canônico](../../skills/zaip-skill-change/references/observable-evidence.md).
|
|
235
|
+
`validation observe` registra uma declaração sanitizada inline; não abre arquivo
|
|
236
|
+
de entrada, não executa o procedimento e não cria Validation aprovada. Somente
|
|
237
|
+
uma observação `confirmed` e vinculada pode complementar Evidence já compatível.
|
|
238
|
+
|
|
203
239
|
Decisões curtas ficam inline. Se uma decisão exigir ADR, salve-o em `decisions/` dentro da própria Change ou Execution e mantenha o resumo no Markdown principal.
|
|
204
240
|
|
|
205
241
|
## Runs e custos
|
|
@@ -1,30 +1,24 @@
|
|
|
1
1
|
# Contrato de telemetria do Monitor de Custos
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Este guia descreve o contrato e não declara cobertura, totais ou preços de um período como estado atual.
|
|
4
4
|
|
|
5
5
|
## Escopo
|
|
6
6
|
|
|
7
|
-
O Monitor de Custos é uma visão financeira de
|
|
8
|
-
|
|
9
|
-
- tokens coletados;
|
|
10
|
-
- custo BRL calculável a partir dos tokens e do catálogo histórico;
|
|
11
|
-
- duração de origem observada.
|
|
12
|
-
|
|
13
|
-
Runs de lifecycle não são automaticamente linhas financeiras. Uma Run sem chamada LLM, ou com chamada sem correspondência local verificável, permanece no histórico de Operação e não entra no Monitor. Isso impede que `0` seja usado para esconder falta de coleta.
|
|
7
|
+
O Monitor de Custos é uma visão financeira da população de Runs de Operação. Cada linha preserva a disponibilidade de suas métricas: tokens sem captura, custo sem componentes/tarifa/câmbio suficientes e duração sem fonte permanecem indisponíveis; não são convertidos em `0` nem removidos para produzir uma cobertura artificial. A elegibilidade de uma estimativa de custo exige tokens e identidade de preço verificáveis, mas uma Run de lifecycle não precisa ter chamada LLM para continuar visível com lacunas explícitas.
|
|
14
8
|
|
|
15
9
|
## Fonte e proveniência
|
|
16
10
|
|
|
17
11
|
A projeção é **manifest-first**: usa os manifests e registros Git como fonte canônica e a telemetria local apenas para uma reconciliação com correspondência exata. O Dashboard não usa SQLite como fonte de dados do Monitor de Custos.
|
|
18
12
|
|
|
19
|
-
Tokens, custo e duração
|
|
13
|
+
Tokens, custo e duração devem exibir sua proveniência. Tokens e configuração efetiva de modelo/effort só são observados quando a fonte os informa; defaults planejados não preenchem esses campos. A projeção pode exibir duração `observed`, `reconciled`, `legacy_inferred` ou `estimated`. Apenas `observed` é medição da fonte; as demais são derivadas e não satisfazem um critério que exija duração capturada.
|
|
20
14
|
|
|
21
15
|
## Cobertura e valores exibidos
|
|
22
16
|
|
|
23
|
-
|
|
17
|
+
Cobertura é calculada por métrica e pelo conjunto filtrado. `100%` para tokens, custo ou duração só significa que aquela métrica está completa segundo sua definição e proveniência declarada; não demonstra automaticamente que as outras estão completas ou que a duração foi observada. Recalcule a cobertura após qualquer mudança de critério e não reutilize uma auditoria anterior como prova do conjunto novo.
|
|
24
18
|
|
|
25
|
-
Os agregados de Conversas, Providers, Agentes, Modelos, Diário, Mensal e Anual usam
|
|
19
|
+
Os agregados de Conversas, Providers, Agentes, Modelos, Diário, Mensal e Anual usam o mesmo conjunto filtrado da tabela e preservam as lacunas de cada métrica. Um agente configurado sem invocações no período é um agregado vazio real e exibe zero. Duração ausente exibe `Indisponível`; uma duração derivada deve mostrar sua proveniência e não ser lida como captura.
|
|
26
20
|
|
|
27
|
-
Não
|
|
21
|
+
Não use contagens, totais ou percentuais de auditorias passadas como diagnóstico atual. Consulte o período e os filtros da execução auditada; uma lacuna de coleta continua sendo lacuna, mesmo quando há estimativa ou reconciliação exibida.
|
|
28
22
|
|
|
29
23
|
## Filtros e totais
|
|
30
24
|
|
|
@@ -47,6 +41,6 @@ Filtros preenchidos somente com data são inclusivos: a data inicial começa em
|
|
|
47
41
|
node scripts/validate-release-parity.mjs --release
|
|
48
42
|
```
|
|
49
43
|
|
|
50
|
-
3. Consulte `/api/v2/cost-monitor` no período auditado e
|
|
44
|
+
3. Consulte `/api/v2/cost-monitor` no período auditado. Confirme que os campos de cobertura e proveniência são coerentes com o objetivo da auditoria; para alegar telemetria capturada, exija tokens, custo e duração observados, não apenas totais ou estimativas. Em seguida, compare o total de custo retornado com o card da Visão geral usando exatamente os mesmos filtros.
|
|
51
45
|
|
|
52
|
-
Se houver uma lacuna, preserve-a como ausência até existir uma correspondência exata e única.
|
|
46
|
+
Se houver uma lacuna, preserve-a como ausência até existir uma correspondência exata e única. Reconciliação ou estimativa podem ser exibidas com proveniência, mas não autorizam alegar token, custo ou duração capturados.
|
|
@@ -20,6 +20,11 @@ Tentativa → gates e review
|
|
|
20
20
|
correção necessária → classificar rework → recalibrar agente, modelo e esforço → nova tentativa
|
|
21
21
|
```
|
|
22
22
|
|
|
23
|
+
Observação por AC é um checkpoint de prova, não um supervisor de tempo ou um
|
|
24
|
+
atalho de aprovação: o registro não executa o procedimento, não transforma
|
|
25
|
+
resultado pendente em verde e não dispensa review/finalizador. Consulte o
|
|
26
|
+
[contrato canônico](../../skills/zaip-skill-change/references/observable-evidence.md).
|
|
27
|
+
|
|
23
28
|
Em PRD/SPEC com `model_orchestration.mode:auto`, trabalho simples e delimitado pode usar Luna/low, execução padrão Terra/medium e ambiguidade, transversalidade ou rework estrutural Sol/high ou xhigh. Conversation e Task-first preservam a seleção manual do host/Codex. Criticidade amplia assurance; não eleva modelo mecanicamente.
|
|
24
29
|
|
|
25
30
|
## Entradas e planejamento
|
|
@@ -31,7 +31,7 @@ Quando `model_orchestration.mode` estiver como `manual`, o ZAIP:
|
|
|
31
31
|
4. informa a recomendação antes de continuar;
|
|
32
32
|
5. nunca altera a configuração automaticamente.
|
|
33
33
|
|
|
34
|
-
O modo manual não usa hook nem tenta coletar a configuração efetiva no transcript.
|
|
34
|
+
O modo manual não usa hook nem tenta coletar a configuração efetiva no transcript. `default_model`, `default_effort` e `default_velocity` podem orientar uma recomendação, mas não comprovam o que o host executou. Quando modelo, effort ou velocidade efetivos não vierem de fonte observada, registre-os como indisponíveis/`unknown`; nunca os infira pelo comportamento aparente do modelo nem os substitua pelo default.
|
|
35
35
|
|
|
36
36
|
Formato recomendado:
|
|
37
37
|
|
|
@@ -159,7 +159,7 @@ O catálogo mantém IDs internos estáveis como `agent-builder`, enquanto o adap
|
|
|
159
159
|
| --- | --- | --- |
|
|
160
160
|
| `agent-orchestrator` | Terra `low` | Sol `medium` para DAG complexa; `high` para síntese final crítica |
|
|
161
161
|
| `agent-builder` | Terra `medium` | Sol `medium` para arquitetura, segurança ou migração |
|
|
162
|
-
| `agent-reviewer` |
|
|
162
|
+
| `agent-reviewer` | Terra `medium` no catálogo | Sol quando a política e os sinais da revisão justificarem elevação; `high` para revisão complexa delimitada |
|
|
163
163
|
| `agent-integrator` | Terra `medium` | Sol `medium` somente quando outra regra explícita exigir raciocínio transversal |
|
|
164
164
|
| `agent-auditor` e `agent-security-auditor` | Sol `high` | `xhigh` apenas quando elegível e medido |
|
|
165
165
|
| `agent-finalizer` | Terra `medium` | sem elevação automática; avalia evidência já produzida |
|
|
@@ -404,7 +404,7 @@ policy.runtime_defaults explícito da Execution
|
|
|
404
404
|
|
|
405
405
|
O runtime anuncia modelos, efforts e velocidades antes do dispatch. Modelo fora da allowlist, effort desconhecido, `ultra`, `max`, velocidade diferente de `standard` ou capacidade incompatível produzem erro tipado; não existe fallback silencioso.
|
|
406
406
|
|
|
407
|
-
|
|
407
|
+
Quando a seleção foi registrada, o cabeçalho da Run ou Sub-Run preserva a configuração resolvida e `model.selection.recorded` registra a decisão antes do dispatch; o default do catálogo não pode substituir o modelo realmente invocado. Telemetria efetiva e Calls conhecidas permanecem dentro da mesma chamada de agente. Capturas terminais sem metadados ricos mantêm modelo e effort indisponíveis; não devem receber uma seleção reconstruída. Run raiz é a chamada do orquestrador e possui `parent_run_id: null`; Sub-Run possui pai:
|
|
408
408
|
|
|
409
409
|
```yaml
|
|
410
410
|
agent_run:
|
|
@@ -429,7 +429,7 @@ agent_run:
|
|
|
429
429
|
- terra-implementation-baseline
|
|
430
430
|
```
|
|
431
431
|
|
|
432
|
-
Requested e effective não devem ser confundidos, pois o runtime ou serviço pode aplicar fallback ou reroteamento.
|
|
432
|
+
Requested e effective não devem ser confundidos, pois o runtime ou serviço pode aplicar fallback ou reroteamento. `effective_*` só pode ser preenchido por fonte observada; ausência dessa fonte não autoriza copiar `requested_*`.
|
|
433
433
|
|
|
434
434
|
No dashboard, Runs e Sub-Runs são separados por `parent_run_id` e ordenados por `started_at` decrescente, independentemente do shard físico da projeção. A Run raiz usa a identidade visível `zaip-agent-orchestrator`; Sub-Runs usam o `zaip-agent-*` efetivamente selecionado. O Monitor de Custos agrupa e filtra pela identidade visível, mantém o modelo configurado de cada chamada em destaque e mostra o modelo efetivo separadamente. Quando o host não informou a configuração planejada, o modelo efetivo é rotulado como observado, nunca apresentado como se tivesse sido selecionado pelo catálogo.
|
|
435
435
|
|
|
@@ -443,7 +443,7 @@ O dashboard cria visões separadas para Runs e Sub-Runs, mas não cria entidade
|
|
|
443
443
|
4. tokens e custo agregados na Run;
|
|
444
444
|
5. divergência requested/effective sem dupla contagem.
|
|
445
445
|
|
|
446
|
-
Todas as Calls da mesma Run reutilizam a configuração planejada. Se o provider aplicar fallback, a diferença aparece como configuração efetiva e não muda o cabeçalho. Valores indisponíveis permanecem `null`; prompt e reasoning privado nunca são armazenados.
|
|
446
|
+
Todas as Calls da mesma Run reutilizam a configuração planejada. Se o provider aplicar fallback, a diferença aparece como configuração efetiva observada e não muda o cabeçalho. Valores indisponíveis permanecem `null`; prompt e reasoning privado nunca são armazenados.
|
|
447
447
|
|
|
448
448
|
## Garantias implementadas
|
|
449
449
|
|
|
@@ -451,7 +451,7 @@ Todas as Calls da mesma Run reutilizam a configuração planejada. Se o provider
|
|
|
451
451
|
2. `automatic_sources` restringe a política a `spec` e `prd`; o schema rejeita `task`.
|
|
452
452
|
3. Novos PreparedPlans de PRD/SPEC calculam risco e motivos a partir de sinais persistidos; planos históricos permanecem legíveis.
|
|
453
453
|
4. O coordenador injeta a política somente em Executions elegíveis e resolve novamente no início de cada Agent Run de Task/fase.
|
|
454
|
-
5. A captura de conversa registra o modelo explicitamente observado ou `unknown`; não
|
|
454
|
+
5. A captura de conversa registra o modelo explicitamente observado ou `unknown`; modelo e effort efetivos não são inferidos a partir do baseline automático, do catálogo ou de uma Task avulsa.
|
|
455
455
|
6. O resolvedor determinístico aplica allowlist, capacidades, overrides e motivos observáveis antes do dispatch.
|
|
456
456
|
7. Testes cobrem a matriz de risco/modelo/effort, precedência, capacidades, rejeições e atribuição sem inferência.
|
|
457
457
|
8. O ledger rejeita Calls com modelo, effort ou decisão de seleção solicitados diferentes dentro da mesma Agent Run.
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Auditoria do cálculo de custo equivalente via API
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Este documento usa o snapshot versionado em `.agents/config/pricing/models.json`; não declara que as tarifas ou a cotação de exemplo são atuais fora desse snapshot.
|
|
4
4
|
|
|
5
5
|
## Objetivo e limite
|
|
6
6
|
|
|
@@ -17,7 +17,7 @@ O Fast do Codex é consumo de créditos da assinatura e não prova que uma requi
|
|
|
17
17
|
|
|
18
18
|
## Invariantes de telemetria
|
|
19
19
|
|
|
20
|
-
O Monitor de Custos
|
|
20
|
+
O Monitor de Custos preserva a disponibilidade por métrica. Custo equivalente só é calculado quando os tokens, a identidade de preço e a tarifa necessária estão disponíveis. Lifecycle e telemetria parcial continuam visíveis com lacunas explícitas. `null` permanece `Indisponível`; nunca é convertido em zero. A projeção pode mostrar duração reconciliada, inferida ou estimada com proveniência, mas isso não é duração observada nem comprova uma medição da chamada.
|
|
21
21
|
|
|
22
22
|
```text
|
|
23
23
|
cached_input <= input
|
|
@@ -42,9 +42,9 @@ BRL_total = USD_total × cotação_USD_BRL
|
|
|
42
42
|
|
|
43
43
|
A conversão para BRL é a última etapa. Quando a moeda exibida é USD, não há conversão.
|
|
44
44
|
|
|
45
|
-
## Exemplo
|
|
45
|
+
## Exemplo didático — GPT-5.6 Sol, Standard
|
|
46
46
|
|
|
47
|
-
|
|
47
|
+
No snapshot local consultado durante a redação, `gpt-5.6-sol` contém input US$5, cache US$0,50 e output US$30 por 1M. Esses números ilustram a fórmula; confira o catálogo e a fonte registrada antes de usar valores em uma decisão atual. Para 1.000.000 input, 800.000 cache, 100.000 output e 70.000 reasoning:
|
|
48
48
|
|
|
49
49
|
```text
|
|
50
50
|
input sem cache = 1.000.000 - 800.000 = 200.000
|
|
@@ -55,7 +55,7 @@ reasoning = US$ 0,00 adicional (já está nos 100.000 output)
|
|
|
55
55
|
total = US$ 4,40
|
|
56
56
|
```
|
|
57
57
|
|
|
58
|
-
Com USD/BRL 5,45: `4,40 × 5,45 = R$ 23,98`.
|
|
58
|
+
Com uma cotação **hipotética** USD/BRL de 5,45: `4,40 × 5,45 = R$ 23,98`.
|
|
59
59
|
|
|
60
60
|
## Service tier, contexto e dados incompletos
|
|
61
61
|
|
|
@@ -63,11 +63,11 @@ Com USD/BRL 5,45: `4,40 × 5,45 = R$ 23,98`.
|
|
|
63
63
|
- Priority e contexto longo sem tarifa oficial combinada retornam custo indisponível, em vez de uma multiplicação inventada.
|
|
64
64
|
- Regras de contexto longo só são usadas para modelos cujo catálogo traz limiar e tarifas publicadas.
|
|
65
65
|
- Modelo sem correspondência, provedor incompatível ou tarifa ausente retorna `null` para custo.
|
|
66
|
-
- Runs históricas sem billing mode, snapshot ou tier efetivo
|
|
66
|
+
- Runs históricas sem billing mode, snapshot ou tier efetivo não comprovam uma cobrança; se faltarem os componentes exigidos pelo cálculo, o custo equivalente permanece indisponível.
|
|
67
67
|
|
|
68
68
|
## Auditoria por Run
|
|
69
69
|
|
|
70
|
-
Na aba Runs, confirme nesta ordem: modelo efetivo, velocidade observada, **Cenário velocidade API**, input, cache, output, reasoning, tarifas selecionadas, USD e BRL. `Priority (derivado de Fast)` significa cenário de estimativa, não cobrança API comprovada. `USD/BRL registrado` e `BRL registrado` são
|
|
70
|
+
Na aba Runs, confirme nesta ordem: fonte do modelo efetivo, velocidade observada, **Cenário velocidade API**, input, cache, output, reasoning, tarifas selecionadas, USD e BRL. Modelo/effort sem fonte observada permanecem indisponíveis. `Priority (derivado de Fast)` significa cenário de estimativa, não cobrança API comprovada. `USD/BRL registrado` e `BRL registrado` são fotografia histórica quando existirem; uma estimativa em BRL deve identificar a cotação usada, sem apresentá-la como valor atual por padrão.
|
|
71
71
|
|
|
72
72
|
## Prova real agregada por modelo
|
|
73
73
|
|
|
@@ -75,7 +75,7 @@ A aba **Modelos** não lista Runs. Cada linha agrega todas as Runs do modelo den
|
|
|
75
75
|
|
|
76
76
|
As tarifas exibidas ali são **efetivas ponderadas**, não uma média simples: `USD do componente × 1.000.000 / tokens cobráveis do componente`. Assim, a taxa reproduz exatamente o custo agregado mesmo quando o modelo tiver Runs com contextos ou tarifas diferentes. Contexto, multiplicador de velocidade e cenário mostram `Misto` quando não forem uniformes; o dashboard não inventa uma média para multiplicadores.
|
|
77
77
|
|
|
78
|
-
Para conferir a soma: `USD estimado API = USD entrada + USD cache + USD saída + USD raciocínio`; no
|
|
78
|
+
Para conferir a soma: `USD estimado API = USD entrada + USD cache + USD saída + USD raciocínio`; no snapshot local usado pela implementação, reasoning é parte de output e o componente adicional é zero quando `reasoning_billed_separately` é falso. O câmbio efetivo é `BRL estimado / USD estimado`, calculado somente depois da soma em USD.
|
|
79
79
|
|
|
80
80
|
## Implementação e testes
|
|
81
81
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Fontes oficiais de preços OpenAI
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
Registro local de consulta em 15 de julho de 2026. Valores operacionais ficam no catálogo versionado `.agents/config/pricing/models.json`; esta página preserva as fontes usadas naquele registro, não confirma preços atuais sem nova consulta.
|
|
4
4
|
|
|
5
5
|
| Tema | Fonte oficial | Uso na implementação |
|
|
6
6
|
| --- | --- | --- |
|
|
@@ -11,8 +11,9 @@ Consulta em 15 de julho de 2026. Valores operacionais ficam no catálogo version
|
|
|
11
11
|
|
|
12
12
|
## Regras de atualização
|
|
13
13
|
|
|
14
|
-
1.
|
|
14
|
+
1. Consulte novamente a fonte oficial e registre a data/hora da nova consulta; não promova esta tabela histórica a estado atual.
|
|
15
15
|
2. Atualize o catálogo em uma alteração separada e registre o snapshot/versão quando disponível.
|
|
16
16
|
3. Inclua testes com input, cached input e output.
|
|
17
17
|
4. Não crie tarifa para uma combinação que a tabela oficial não publique.
|
|
18
18
|
5. Não transforme créditos Codex em USD sem uma regra oficial explícita.
|
|
19
|
+
6. Preserve modelo, tier e effort efetivos como indisponíveis quando não forem retornados por fonte observada; defaults de configuração não os substituem.
|
|
@@ -8,29 +8,111 @@ O candidato de release precisa passar gates locais, clean-room e distribuição
|
|
|
8
8
|
|
|
9
9
|
- 80% de lines;
|
|
10
10
|
- 80% de functions;
|
|
11
|
-
-
|
|
11
|
+
- 75% de branches;
|
|
12
12
|
- 80% de statements.
|
|
13
13
|
|
|
14
14
|
O composition root executável `packages/cli/src/index.ts` é coberto pelos testes CLI/release E2E. O payload gerado `packages/cli/src/dashboard-template.ts` é coberto pela paridade do template. Ambos ficam fora da cobertura unitária para não misturar integração e geração de distribuição com unidade de domínio.
|
|
15
15
|
|
|
16
16
|
O ratchet usa o maior valor entre o floor atual e o baseline versionado. Uma medição menor falha; o baseline não pode ser atualizado para encobrir regressão.
|
|
17
17
|
|
|
18
|
-
##
|
|
18
|
+
## Gates agregados e diagnósticos
|
|
19
19
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
6. `pnpm --dir public-cli verify`
|
|
26
|
-
7. `pnpm release:verify` no worktree final limpo
|
|
20
|
+
O gate de PR é o job único `github-equivalent` de
|
|
21
|
+
`.github/workflows/quality.yml`, em `ubuntu-latest`: instala dependências,
|
|
22
|
+
instala Chromium e executa `validate:github:prepared`, auditoria de produção,
|
|
23
|
+
cobertura, release E2E e dashboard E2E. Esses subchecks são etapas desse gate
|
|
24
|
+
agregado; não são uma receita adicional que, isoladamente, aprove uma release.
|
|
27
25
|
|
|
28
|
-
|
|
26
|
+
O workflow `.github/workflows/publish-cli.yml` é separado: seu job `verify`
|
|
27
|
+
usa matriz real Node 22 e 24 para `pnpm verify`; a auditoria e o artefato de
|
|
28
|
+
release ocorrem somente na linha Node 24, ambas em Ubuntu. Publicação e smoke
|
|
29
|
+
só seguem após a matriz aprovada. Esse `verify` roda dentro de `public-cli`,
|
|
30
|
+
não é o script homônimo da raiz. Os comandos abaixo são do checkout mantenedor;
|
|
31
|
+
não presuma que existam no `package.json` do projeto consumidor.
|
|
32
|
+
|
|
33
|
+
A publicação compara `dist.integrity` do registro com o SHA-512 do tarball
|
|
34
|
+
verificado. Uma versão já existente só é aceita quando o conteúdo é idêntico.
|
|
35
|
+
Somente `E404` estruturado indica ausência; autenticação, rede, resposta
|
|
36
|
+
inválida ou integridade diferente impedem publicar. Após uma publicação
|
|
37
|
+
autorizada, a confirmação do mesmo tarball usa retry finito de propagação.
|
|
38
|
+
Esse controle não publica automaticamente quando a qualificação local passa.
|
|
39
|
+
|
|
40
|
+
| Objetivo | Comando da raiz e alcance |
|
|
41
|
+
| --- | --- |
|
|
42
|
+
| Preparar artefatos | `corepack pnpm release:artifacts` compila e gera runtime/template. Não publica nem qualifica por si só. |
|
|
43
|
+
| Atualizar integridade após mudança gerenciada intencional | `corepack pnpm sync:framework-lock`, depois `corepack pnpm validate:framework-lock`; não usar para aceitar drift desconhecido. |
|
|
44
|
+
| Diagnosticar um check | Executar apenas o teste/check pertinente e registrar seu resultado. Isso não substitui a qualificação completa. |
|
|
45
|
+
| Qualificar localmente | `corepack pnpm release:verify` agrega instalação pública, validação preparada, cobertura, release E2E, dashboard E2E, audit e árvore limpa. |
|
|
46
|
+
| Verificação completa da raiz | `corepack pnpm verify` acrescenta orçamento de Rules e contrato antes de `release:verify`. Não precisa repetir manualmente cada subcomando no mesmo candidato. |
|
|
47
|
+
|
|
48
|
+
Finalize as escritas gerenciadas antes de sincronizar o lock; após alterá-lo,
|
|
49
|
+
sincronize/audite novamente o template público. Execute gates geradores em
|
|
50
|
+
checkout/worktree isolado para preservar trabalho concorrente. Gates locais,
|
|
51
|
+
artefato exato, CI terminal e produção continuam sendo provas distintas.
|
|
52
|
+
|
|
53
|
+
### Falhas de desempenho no dashboard
|
|
54
|
+
|
|
55
|
+
Reproduza a rota, período, filtro, offset e tamanho da página que falharam.
|
|
56
|
+
Separe a primeira consulta sem resultado em cache da navegação já aquecida;
|
|
57
|
+
uma página rápida em cache não comprova o custo de exportar páginas distintas.
|
|
58
|
+
Correlacione o clique com a requisição, a espera pelo servidor, o retorno e o
|
|
59
|
+
fechamento do arquivo. Registre a concorrência do teste e do ambiente.
|
|
60
|
+
|
|
61
|
+
Timeout não autoriza aumentar limites nem remover a matriz de performance.
|
|
62
|
+
Primeiro diferencie requisição ausente, cancelada, bloqueada e consulta lenta.
|
|
63
|
+
Uma correção de consulta deve preservar filtros, ordenação, total, IDs únicos,
|
|
64
|
+
offsets contíguos e exportação até `has_more=false`. Reexecute o cenário que
|
|
65
|
+
falhou e o gate correspondente no candidato corrigido. Se o pacote anterior
|
|
66
|
+
já estiver publicado, distribua a correção em nova versão imutável.
|
|
67
|
+
|
|
68
|
+
## Histórico e nova qualificação em 30/08/2026
|
|
69
|
+
|
|
70
|
+
Snapshot bloqueado em 2026-08-30 para o candidato
|
|
71
|
+
`d00851adfd78b4e4af8e888e270d55ace749607e`: não há release verde declarada.
|
|
72
|
+
A tentativa de reparo isolado do runtime passou 9 de 10 testes e
|
|
73
|
+
falhou em `reports a missing runtime and restores it transactionally`:
|
|
74
|
+
`FLAT_FRAMEWORK_RULES` não classifica
|
|
75
|
+
`.agents/rules/dashboard-ui-consistency.md`, embora a regra esteja no template,
|
|
76
|
+
e a restauração transacional retorna `repaired.applied=false`. A correção do
|
|
77
|
+
instalador está fora daquele recorte e não foi aprovada nem validada.
|
|
78
|
+
|
|
79
|
+
Também não está verde o teste completo de orçamento das Rules: a folga exigida
|
|
80
|
+
para `run-lifecycle-closure.md` é 867 e o orçamento atual é 840. Isso é uma
|
|
81
|
+
falha registrada, não um snapshot a ser tratado como aprovação. Sem corrigir e
|
|
82
|
+
reexecutar esses gates no candidato apropriado, não declare clean-room,
|
|
83
|
+
qualificação integral, produção ou release aprovados.
|
|
84
|
+
|
|
85
|
+
O relatório-fonte deste snapshot é
|
|
86
|
+
`.agents/records/changes/2026/08/CHG-2026-08-30-18-18-EVIDENCIAS-OBSERVAVEIS-SEGURAS-K5WJ/artifacts/checks/verification-report.md`
|
|
87
|
+
no repositório mantenedor; ele não é distribuído como histórico do consumidor.
|
|
88
|
+
O status central de readiness não é ligado aqui porque
|
|
89
|
+
`docs/PRODUCTION-COMMERCIAL-READINESS.md` não faz parte do template público
|
|
90
|
+
instalado; um link relativo seria enganoso para consumidores do pacote.
|
|
91
|
+
|
|
92
|
+
A entrega corretiva posterior `TASK-2026-08-30-19-51-LIBERAR-PRODUCAO-SEGURA-2NA6`
|
|
93
|
+
inclui a Rule ausente no instalador e reduz o texto de encerramento sem
|
|
94
|
+
aumentar o orçamento 840. Os cenários focais de reparo e orçamento foram
|
|
95
|
+
reexecutados com sucesso. O snapshot acima é histórico: não deve ser apagado
|
|
96
|
+
nem usado como resultado do novo candidato. A aprovação da candidata nova
|
|
97
|
+
depende de seus próprios gates completos, artefato, SHA e revisão independente.
|
|
98
|
+
Os resultados finais ficam na Change correspondente no checkout mantenedor,
|
|
99
|
+
não no histórico distribuído ao consumidor.
|
|
29
100
|
|
|
30
101
|
## Arquivos efêmeros
|
|
31
102
|
|
|
32
103
|
`test-results`, `playwright-report`, `coverage`, `.turbo` e `node_modules` nunca pertencem ao pacote portável nem ao manifesto gerenciado. A embalagem e o clean-room aplicam a mesma política de exclusão.
|
|
33
104
|
|
|
105
|
+
Antes de substituir `public-cli/artifacts` ou executar `npm pack`, o guard de
|
|
106
|
+
release compara o inventário público efetivo do Dashboard com os arquivos
|
|
107
|
+
rastreados pelo Git. Somente os dois outputs declarados do build SQLite,
|
|
108
|
+
`packages/local-runtime/dist/server.cjs` e
|
|
109
|
+
`packages/local-runtime/dist/sqlite-read-model.cjs`, podem ser gerados sem
|
|
110
|
+
rastreamento. Outros arquivos não rastreados, inclusive diagnósticos ignorados
|
|
111
|
+
pelo Git, impedem a embalagem. Uma consulta Git indisponível também bloqueia.
|
|
112
|
+
O guard não remove, move, ignora ou adiciona arquivos ao Git; a limpeza deve
|
|
113
|
+
ser resolvida pelo responsável autorizado, preservando os artefatos anteriores.
|
|
114
|
+
Use o checkout limpo do candidato exato e não publique TGZs de diagnóstico.
|
|
115
|
+
|
|
34
116
|
## Evidência e aprovação
|
|
35
117
|
|
|
36
118
|
Testes passando comprovam validação técnica. Maturidade formal máxima exige ainda:
|
|
@@ -12,7 +12,9 @@ O caminho implementado possui quatro camadas:
|
|
|
12
12
|
4. leitura manifest-first no Monitor de Custos, complementada pelos dados de lifecycle já lidos dos manifests canônicos.
|
|
13
13
|
|
|
14
14
|
O rollout amplo continua condicionado à cobertura observada. Ter o pipeline instalado não autoriza
|
|
15
|
-
rotular métricas ausentes como completas nem transformar valores desconhecidos em zero.
|
|
15
|
+
rotular métricas ausentes como completas nem transformar valores desconhecidos em zero. Duração,
|
|
16
|
+
tokens e custo não capturados permanecem explicitamente indisponíveis; uma reconciliação ou
|
|
17
|
+
estimativa só pode aparecer com proveniência e não passa a ser observação da fonte.
|
|
16
18
|
|
|
17
19
|
## Fluxo dos dados
|
|
18
20
|
|
|
@@ -83,7 +85,9 @@ Um resumo preserva:
|
|
|
83
85
|
|
|
84
86
|
O custo histórico é agregado apenas quando preço, câmbio e componentes necessários são
|
|
85
87
|
compatíveis. O leitor não reprecifica silenciosamente uma execução antiga. Se qualquer componente
|
|
86
|
-
necessário estiver ausente, o total correspondente permanece `null`.
|
|
88
|
+
necessário estiver ausente, o total correspondente permanece `null`. Modelo e reasoning effort
|
|
89
|
+
efetivos também permanecem indisponíveis quando o host não os informou; não são derivados do
|
|
90
|
+
catálogo, da seleção planejada ou do comportamento aparente.
|
|
87
91
|
|
|
88
92
|
### Chunks e manifestos
|
|
89
93
|
|
|
@@ -120,7 +124,8 @@ chunks incompatíveis antes da leitura. O leitor valida:
|
|
|
120
124
|
Quando há summaries válidos para o período, tokens e custos vindos do manifesto são autoritativos.
|
|
121
125
|
Os dados de lifecycle carregados de `records/lifecycle` continuam fornecendo campos que o resumo não
|
|
122
126
|
conhece. Em particular, uma duração de lifecycle delimitada é preservada quando o summary não possui
|
|
123
|
-
duração observável.
|
|
127
|
+
duração observável. Essa preservação mantém a proveniência: duração reconciliada, inferida ou
|
|
128
|
+
estimada não deve ser lida como duração capturada. Se não houver summaries aplicáveis, o Dashboard preserva os dados de lifecycle e
|
|
124
129
|
a cobertura disponível; não lê nem recria uma projeção ou arquivo local, e nunca promove a cobertura
|
|
125
130
|
para `complete`.
|
|
126
131
|
|
|
@@ -72,6 +72,11 @@ No modo nativo do Codex, a orquestração materializa essa etapa como um envelop
|
|
|
72
72
|
|
|
73
73
|
O status técnico da Run/Sub-Run (`completed`, `failed`, `cancelled`) é diferente do resultado da Task (`completed`, `blocked`, `failed`, `cancelled`). Uma Run tecnicamente concluída pode bloquear a Task porque um gate ou Evidence não passou.
|
|
74
74
|
|
|
75
|
+
Uma observação por AC não altera esse lifecycle nem substitui os gates. Ela é
|
|
76
|
+
uma declaração versionada cujo vínculo só pode complementar Evidence quando
|
|
77
|
+
`confirmed` e coerente; os demais estados preservam pendência ou falha. Veja o
|
|
78
|
+
[contrato de prova observável](../../skills/zaip-skill-change/references/observable-evidence.md).
|
|
79
|
+
|
|
75
80
|
Exemplo:
|
|
76
81
|
|
|
77
82
|
```bash
|