@zaip-ai/cli 1.0.7 → 1.3.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.
Files changed (444) hide show
  1. package/README.md +6 -4
  2. package/dist/services/adapters.d.ts +1 -1
  3. package/dist/services/adapters.d.ts.map +1 -1
  4. package/dist/services/adapters.js +15 -5
  5. package/dist/services/adapters.js.map +1 -1
  6. package/dist/services/adapters.test.js +1 -1
  7. package/dist/services/agent-adapters.d.ts +9 -0
  8. package/dist/services/agent-adapters.d.ts.map +1 -1
  9. package/dist/services/agent-adapters.js +39 -4
  10. package/dist/services/agent-adapters.js.map +1 -1
  11. package/dist/services/agent-adapters.test.js +13 -1
  12. package/dist/services/agent-adapters.test.js.map +1 -1
  13. package/dist/services/codex-config-template.d.ts +2 -1
  14. package/dist/services/codex-config-template.d.ts.map +1 -1
  15. package/dist/services/codex-config-template.js +13 -2
  16. package/dist/services/codex-config-template.js.map +1 -1
  17. package/dist/services/codex-rules.d.ts +1 -1
  18. package/dist/services/codex-rules.d.ts.map +1 -1
  19. package/dist/services/codex-rules.js +31 -7
  20. package/dist/services/codex-rules.js.map +1 -1
  21. package/dist/services/codex-subagent-hook-template.d.ts +1 -1
  22. package/dist/services/codex-subagent-hook-template.d.ts.map +1 -1
  23. package/dist/services/codex-subagent-hook-template.js +4 -1
  24. package/dist/services/codex-subagent-hook-template.js.map +1 -1
  25. package/dist/services/doctor.d.ts.map +1 -1
  26. package/dist/services/doctor.js +3 -1
  27. package/dist/services/doctor.js.map +1 -1
  28. package/dist/services/global-codex-config.d.ts +6 -3
  29. package/dist/services/global-codex-config.d.ts.map +1 -1
  30. package/dist/services/global-codex-config.js +82 -13
  31. package/dist/services/global-codex-config.js.map +1 -1
  32. package/dist/services/global-codex-config.test.js +57 -10
  33. package/dist/services/global-codex-config.test.js.map +1 -1
  34. package/dist/services/install-agents-template.d.ts.map +1 -1
  35. package/dist/services/install-agents-template.js +15 -2
  36. package/dist/services/install-agents-template.js.map +1 -1
  37. package/dist/services/logger.js +1 -1
  38. package/dist/services/logger.js.map +1 -1
  39. package/dist/services/logger.test.js +3 -3
  40. package/dist/services/logger.test.js.map +1 -1
  41. package/dist/services/runtime-template.test.js +21 -5
  42. package/dist/services/runtime-template.test.js.map +1 -1
  43. package/dist/services/template-manifest.d.ts.map +1 -1
  44. package/dist/services/template-manifest.js +7 -0
  45. package/dist/services/template-manifest.js.map +1 -1
  46. package/package.json +1 -1
  47. package/templates/.agents/architecture/software-architecture.md +131 -0
  48. package/templates/.agents/branding/brandbook.docx +0 -0
  49. package/templates/.agents/branding/brandbook.md +60 -0
  50. package/templates/.agents/config/agents/catalog.yaml +310 -10
  51. package/templates/.agents/config/clients/codex/agents/zaip-agent-brand-strategist.toml +30 -0
  52. package/templates/.agents/config/clients/codex/agents/zaip-agent-designer.toml +5 -5
  53. package/templates/.agents/config/clients/codex/agents/zaip-agent-finalizer.toml +2 -2
  54. package/templates/.agents/config/clients/codex/agents/zaip-agent-general-operations.toml +30 -0
  55. package/templates/.agents/config/clients/codex/agents/zaip-agent-governance-compliance.toml +30 -0
  56. package/templates/.agents/config/clients/codex/agents/zaip-agent-growth-strategist.toml +30 -0
  57. package/templates/.agents/config/clients/codex/agents/zaip-agent-marketing-analyst.toml +8 -8
  58. package/templates/.agents/config/clients/codex/agents/zaip-agent-orchestrator.toml +5 -3
  59. package/templates/.agents/config/clients/codex/agents/zaip-agent-sales-specialist.toml +30 -0
  60. package/templates/.agents/config/project.yaml +1 -1
  61. package/templates/.agents/dashboard/.tmp-run-list.json +254 -0
  62. package/templates/.agents/dashboard/.zaip-managed.json +775 -163
  63. package/templates/.agents/dashboard/DATA-DICTIONARY.md +2227 -0
  64. package/templates/.agents/dashboard/README.md +48 -97
  65. package/templates/.agents/dashboard/apps/frontend/dist/assets/CostCalculationGuidePage-DxR_pgSV.js +1 -0
  66. package/templates/.agents/dashboard/apps/frontend/dist/assets/DashboardHelpDialog-4jZLTWE_.js +2156 -0
  67. package/templates/.agents/dashboard/apps/frontend/dist/assets/PricingSettingsDialog-CKcsqb-r.js +1 -0
  68. package/templates/.agents/dashboard/apps/frontend/dist/assets/ProjectSettingsPage-BomxqCBU.css +1 -0
  69. package/templates/.agents/dashboard/apps/frontend/dist/assets/ProjectSettingsPage-DmmJD2Th.js +3 -0
  70. package/templates/.agents/dashboard/apps/frontend/dist/assets/TraceabilityWorkspace-BwtitWa_.js +1 -0
  71. package/templates/.agents/dashboard/apps/frontend/dist/assets/TraceabilityWorkspace-CaKwQP43.css +1 -0
  72. package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-BZ5WdaMN.css +1 -0
  73. package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-N5Csr0RP.js +68 -0
  74. package/templates/.agents/dashboard/apps/frontend/dist/assets/{dashboard-localization-C98LGC-Q.js → dashboard-localization-CLJ0lT9v.js} +1 -1
  75. package/templates/.agents/dashboard/apps/frontend/dist/assets/icons-vendor-C0fj2uU9.js +1 -0
  76. package/templates/.agents/dashboard/apps/frontend/dist/assets/index-C4aIB1PV.js +2 -0
  77. package/templates/.agents/dashboard/apps/frontend/dist/assets/index-DK_enB5Z.css +1 -0
  78. package/templates/.agents/dashboard/apps/frontend/dist/assets/react-vendor-BEsJ-FYH.js +9 -0
  79. package/templates/.agents/dashboard/apps/frontend/dist/assets/rolldown-runtime-D9-fqq9M.js +1 -0
  80. package/templates/.agents/dashboard/apps/frontend/dist/assets/traceability-B6y6Gw12.js +1 -0
  81. package/templates/.agents/dashboard/apps/frontend/dist/assets/traceability-DFY7ZDlu.css +1 -0
  82. package/templates/.agents/dashboard/apps/frontend/dist/index.html +9 -2
  83. package/templates/.agents/dashboard/apps/frontend/package.json +1 -1
  84. package/templates/.agents/dashboard/apps/frontend/src/App.tsx +1129 -600
  85. package/templates/.agents/dashboard/apps/frontend/src/AppLoadingBoundary.tsx +48 -0
  86. package/templates/.agents/dashboard/apps/frontend/src/AppLoadingPanels.tsx +2 -0
  87. package/templates/.agents/dashboard/apps/frontend/src/AppOverlays.tsx +247 -0
  88. package/templates/.agents/dashboard/apps/frontend/src/AppRequestGuards.tsx +95 -0
  89. package/templates/.agents/dashboard/apps/frontend/src/AppSetupRoutes.tsx +87 -0
  90. package/templates/.agents/dashboard/apps/frontend/src/CostCalculationGuidePage.tsx +641 -0
  91. package/templates/.agents/dashboard/apps/frontend/src/DashboardAlternateContent.tsx +159 -0
  92. package/templates/.agents/dashboard/apps/frontend/src/DashboardCapabilityNav.tsx +13 -13
  93. package/templates/.agents/dashboard/apps/frontend/src/DashboardGlobalSettings.tsx +56 -0
  94. package/templates/.agents/dashboard/apps/frontend/src/ProjectSettingsPage.tsx +266 -315
  95. package/templates/.agents/dashboard/apps/frontend/src/ProjectStackEditor.tsx +151 -0
  96. package/templates/.agents/dashboard/apps/frontend/src/TraceabilityWorkspace.test.ts +37 -0
  97. package/templates/.agents/dashboard/apps/frontend/src/TraceabilityWorkspace.tsx +114 -12
  98. package/templates/.agents/dashboard/apps/frontend/src/app-preferences.ts +15 -0
  99. package/templates/.agents/dashboard/apps/frontend/src/app-session-token.ts +20 -0
  100. package/templates/.agents/dashboard/apps/frontend/src/cost-calculation-guide.css +267 -0
  101. package/templates/.agents/dashboard/apps/frontend/src/cost-calculation-guide.test.ts +69 -0
  102. package/templates/.agents/dashboard/apps/frontend/src/cost-period-refresh.test.ts +85 -0
  103. package/templates/.agents/dashboard/apps/frontend/src/dashboard-api.test.ts +133 -0
  104. package/templates/.agents/dashboard/apps/frontend/src/dashboard-api.ts +453 -13
  105. package/templates/.agents/dashboard/apps/frontend/src/dashboard-localization.ts +1 -1
  106. package/templates/.agents/dashboard/apps/frontend/src/main.tsx +1 -0
  107. package/templates/.agents/dashboard/apps/frontend/src/operations-detail-hydration.test.ts +55 -0
  108. package/templates/.agents/dashboard/apps/frontend/src/operations-detail-hydration.ts +36 -0
  109. package/templates/.agents/dashboard/apps/frontend/src/operations-entity-page-projection.test.ts +126 -0
  110. package/templates/.agents/dashboard/apps/frontend/src/operations-entity-page-projection.ts +181 -0
  111. package/templates/.agents/dashboard/apps/frontend/src/operations-period-contract.test.ts +138 -0
  112. package/templates/.agents/dashboard/apps/frontend/src/operations-period-render.test.ts +105 -0
  113. package/templates/.agents/dashboard/apps/frontend/src/operations-period.test.ts +6 -3
  114. package/templates/.agents/dashboard/apps/frontend/src/operations-period.ts +9 -5
  115. package/templates/.agents/dashboard/apps/frontend/src/overview-status-page.test.ts +26 -0
  116. package/templates/.agents/dashboard/apps/frontend/src/period-transition-overlay.css +44 -0
  117. package/templates/.agents/dashboard/apps/frontend/src/project-settings-model.ts +121 -62
  118. package/templates/.agents/dashboard/apps/frontend/src/project-settings-page.css +482 -3
  119. package/templates/.agents/dashboard/apps/frontend/src/project-settings.test.ts +84 -17
  120. package/templates/.agents/dashboard/apps/frontend/src/snapshot-banner-semantics.test.ts +78 -0
  121. package/templates/.agents/dashboard/apps/frontend/src/snapshot-coherence.test.ts +234 -39
  122. package/templates/.agents/dashboard/apps/frontend/src/snapshot-notice.ts +15 -0
  123. package/templates/.agents/dashboard/apps/frontend/src/sqlite-cost-adapters.ts +26 -0
  124. package/templates/.agents/dashboard/apps/frontend/src/styles.css +14 -2
  125. package/templates/.agents/dashboard/apps/frontend/src/traceability-workspace.css +38 -2
  126. package/templates/.agents/dashboard/apps/frontend/src/use-app-cost-loaders.test.ts +253 -0
  127. package/templates/.agents/dashboard/apps/frontend/src/use-app-cost-loaders.ts +380 -0
  128. package/templates/.agents/dashboard/apps/frontend/src/use-app-effects.ts +175 -0
  129. package/templates/.agents/dashboard/apps/frontend/src/use-app-operations-pages.ts +395 -0
  130. package/templates/.agents/dashboard/apps/frontend/src/use-app-trace-documents.ts +141 -0
  131. package/templates/.agents/dashboard/apps/frontend/src/use-idle-cost-prefetch.ts +45 -0
  132. package/templates/.agents/dashboard/apps/frontend/src/work-list-pagination.test.ts +46 -0
  133. package/templates/.agents/dashboard/apps/frontend/src/work-list-pagination.ts +36 -0
  134. package/templates/.agents/dashboard/apps/frontend/vite.config.ts +58 -5
  135. package/templates/.agents/dashboard/modules/cost-monitor/package.json +1 -1
  136. package/templates/.agents/dashboard/modules/cost-monitor/src/contracts.ts +47 -6
  137. package/templates/.agents/dashboard/modules/cost-monitor/src/duration-estimate.ts +13 -0
  138. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CompactLifecycleCostTable.test.ts +134 -0
  139. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CompactLifecycleCostTable.tsx +290 -0
  140. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostCharts.test.ts +133 -19
  141. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostCharts.tsx +134 -43
  142. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostFilters.tsx +137 -19
  143. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostModelsAuditTable.test.ts +2 -0
  144. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostModelsAuditTable.tsx +13 -10
  145. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorContent.tsx +328 -0
  146. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorPage.test.ts +302 -6
  147. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostMonitorPage.tsx +627 -400
  148. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostSummary.tsx +5 -13
  149. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTables.test.ts +370 -72
  150. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTables.tsx +467 -326
  151. package/templates/.agents/dashboard/modules/cost-monitor/src/react/MacroCostTable.test.ts +17 -0
  152. package/templates/.agents/dashboard/modules/cost-monitor/src/react/MacroCostTable.tsx +25 -6
  153. package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-monitor-copy.ts +0 -2
  154. package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-monitor-page-helpers.ts +17 -0
  155. package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-monitor-responsive.css +6 -3
  156. package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-monitor-row-filters.ts +123 -0
  157. package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-monitor-summary.ts +8 -3
  158. package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-monitor-views.ts +32 -0
  159. package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-monitor.css +55 -14
  160. package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-table-presentation.ts +121 -0
  161. package/templates/.agents/dashboard/modules/cost-monitor/src/react/index.ts +3 -0
  162. package/templates/.agents/dashboard/modules/cost-monitor/src/react/period-cost-groups.test.ts +68 -0
  163. package/templates/.agents/dashboard/modules/cost-monitor/src/react/period-cost-groups.ts +33 -5
  164. package/templates/.agents/dashboard/modules/cost-monitor/src/react/use-compact-cost-page.ts +119 -0
  165. package/templates/.agents/dashboard/modules/cost-monitor/src/react/use-cost-group-page.test.ts +12 -0
  166. package/templates/.agents/dashboard/modules/cost-monitor/src/react/use-cost-group-page.ts +146 -0
  167. package/templates/.agents/dashboard/modules/cost-monitor/src/react/use-cost-run-page.ts +118 -0
  168. package/templates/.agents/dashboard/modules/cost-monitor/src/server/aggregate.test.ts +2 -2
  169. package/templates/.agents/dashboard/modules/cost-monitor/src/server/aggregate.ts +5 -3
  170. package/templates/.agents/dashboard/modules/cost-monitor/src/server/build-cost-monitor-pricing-fallback.test.ts +53 -0
  171. package/templates/.agents/dashboard/modules/cost-monitor/src/server/build-cost-monitor-projection.basics.test.ts +34 -0
  172. package/templates/.agents/dashboard/modules/cost-monitor/src/server/build-cost-monitor-projection.test.ts +168 -161
  173. package/templates/.agents/dashboard/modules/cost-monitor/src/server/build-cost-monitor-projection.ts +188 -29
  174. package/templates/.agents/dashboard/modules/cost-monitor/src/server/build-cost-summary-projection.test.ts +757 -0
  175. package/templates/.agents/dashboard/modules/cost-monitor/src/server/build-cost-summary-projection.ts +784 -0
  176. package/templates/.agents/dashboard/modules/cost-monitor/src/server/build-cost-summary-terminal-day.test.ts +100 -0
  177. package/templates/.agents/dashboard/modules/cost-monitor/src/server/index.ts +1 -0
  178. package/templates/.agents/dashboard/modules/cost-monitor/src/server/refactor-map-xr9l.json +61 -0
  179. package/templates/.agents/dashboard/modules/cost-monitor/src/server/source-size-cost-server/build-cost-monitor-projection-agents.test.ts +31 -0
  180. package/templates/.agents/dashboard/modules/cost-monitor/src/server/source-size-cost-server/build-cost-summary-projection-duration.test.ts +414 -0
  181. package/templates/.agents/dashboard/modules/cost-monitor/src/task-cost-groups.test.ts +41 -0
  182. package/templates/.agents/dashboard/modules/cost-monitor/src/task-cost-groups.ts +55 -11
  183. package/templates/.agents/dashboard/modules/operations/package.json +2 -1
  184. package/templates/.agents/dashboard/modules/operations/src/contracts.ts +185 -0
  185. package/templates/.agents/dashboard/modules/operations/src/duration-population.test.ts +63 -1
  186. package/templates/.agents/dashboard/modules/operations/src/duration-population.ts +60 -5
  187. package/templates/.agents/dashboard/modules/operations/src/react/EntityDetailsDialog.tsx +14 -3
  188. package/templates/.agents/dashboard/modules/operations/src/react/EntityTables.test.ts +44 -1
  189. package/templates/.agents/dashboard/modules/operations/src/react/EntityTables.tsx +345 -18
  190. package/templates/.agents/dashboard/modules/operations/src/react/MacroPlanningDialog.tsx +1 -0
  191. package/templates/.agents/dashboard/modules/operations/src/react/OperationDateFilters.test.ts +9 -5
  192. package/templates/.agents/dashboard/modules/operations/src/react/OperationDateFilters.tsx +2 -2
  193. package/templates/.agents/dashboard/modules/operations/src/react/OperationsMainContent.tsx +168 -0
  194. package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverview.helpers.tsx +95 -6
  195. package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverview.test.ts +367 -14
  196. package/templates/.agents/dashboard/modules/operations/src/react/OperationsOverview.tsx +562 -131
  197. package/templates/.agents/dashboard/modules/operations/src/react/OperationsPage.tsx +353 -355
  198. package/templates/.agents/dashboard/modules/operations/src/react/OperationsPageNavigation.tsx +65 -0
  199. package/templates/.agents/dashboard/modules/operations/src/react/OperationsPageOverview.tsx +169 -0
  200. package/templates/.agents/dashboard/modules/operations/src/react/PeriodSummaryTable.tsx +73 -8
  201. package/templates/.agents/dashboard/modules/operations/src/react/PrdDocumentDialog.test.tsx +32 -0
  202. package/templates/.agents/dashboard/modules/operations/src/react/PrdDocumentDialog.tsx +62 -6
  203. package/templates/.agents/dashboard/modules/operations/src/react/TaskBoard.test.ts +55 -0
  204. package/templates/.agents/dashboard/modules/operations/src/react/TaskBoard.tsx +27 -19
  205. package/templates/.agents/dashboard/modules/operations/src/react/TaskDetailsDialog.tsx +105 -42
  206. package/templates/.agents/dashboard/modules/operations/src/react/UnifiedWorkBoard.priority.test.ts +19 -0
  207. package/templates/.agents/dashboard/modules/operations/src/react/UnifiedWorkBoard.tsx +265 -36
  208. package/templates/.agents/dashboard/modules/operations/src/react/UnifiedWorkList.test.ts +171 -8
  209. package/templates/.agents/dashboard/modules/operations/src/react/UnifiedWorkList.tsx +98 -68
  210. package/templates/.agents/dashboard/modules/operations/src/react/conversation-rows.test.ts +72 -1
  211. package/templates/.agents/dashboard/modules/operations/src/react/conversation-rows.ts +78 -17
  212. package/templates/.agents/dashboard/modules/operations/src/react/execution-metrics.ts +6 -4
  213. package/templates/.agents/dashboard/modules/operations/src/react/export/ExcelExportAction.test.ts +431 -1
  214. package/templates/.agents/dashboard/modules/operations/src/react/export/ExcelExportAction.tsx +574 -20
  215. package/templates/.agents/dashboard/modules/operations/src/react/export/export-layout.test.ts +42 -4
  216. package/templates/.agents/dashboard/modules/operations/src/react/export/xlsx-runtime-e2e.test.ts +248 -0
  217. package/templates/.agents/dashboard/modules/operations/src/react/macro-planning-dialog-content.css +49 -0
  218. package/templates/.agents/dashboard/modules/operations/src/react/macro-planning-dialog.css +93 -50
  219. package/templates/.agents/dashboard/modules/operations/src/react/manual-work-priority.test.ts +82 -0
  220. package/templates/.agents/dashboard/modules/operations/src/react/operation-date-range.test.ts +29 -2
  221. package/templates/.agents/dashboard/modules/operations/src/react/operation-date-range.ts +22 -1
  222. package/templates/.agents/dashboard/modules/operations/src/react/operation-duration.test.ts +77 -4
  223. package/templates/.agents/dashboard/modules/operations/src/react/operation-duration.ts +67 -5
  224. package/templates/.agents/dashboard/modules/operations/src/react/operations-coverage-toast.test.ts +54 -0
  225. package/templates/.agents/dashboard/modules/operations/src/react/operations-global-filters.test.ts +22 -0
  226. package/templates/.agents/dashboard/modules/operations/src/react/operations-overview-period-filter.test.ts +149 -12
  227. package/templates/.agents/dashboard/modules/operations/src/react/operations-overview.status-cards.test.ts +27 -0
  228. package/templates/.agents/dashboard/modules/operations/src/react/operations-page-contract.ts +176 -0
  229. package/templates/.agents/dashboard/modules/operations/src/react/operations-period-scope.test.ts +160 -0
  230. package/templates/.agents/dashboard/modules/operations/src/react/operations-period-scope.ts +47 -0
  231. package/templates/.agents/dashboard/modules/operations/src/react/operations-query.ts +10 -0
  232. package/templates/.agents/dashboard/modules/operations/src/react/operations-responsive.css +3 -0
  233. package/templates/.agents/dashboard/modules/operations/src/react/operations-view-labels.ts +28 -0
  234. package/templates/.agents/dashboard/modules/operations/src/react/operations-view-order.test.ts +21 -7
  235. package/templates/.agents/dashboard/modules/operations/src/react/operations.css +42 -0
  236. package/templates/.agents/dashboard/modules/operations/src/react/period-summary-population.test.ts +54 -0
  237. package/templates/.agents/dashboard/modules/operations/src/react/period-summary-population.ts +32 -0
  238. package/templates/.agents/dashboard/modules/operations/src/react/period-summary.test.ts +241 -6
  239. package/templates/.agents/dashboard/modules/operations/src/react/period-summary.ts +148 -6
  240. package/templates/.agents/dashboard/modules/operations/src/react/popup-localization.test.ts +1 -1
  241. package/templates/.agents/dashboard/modules/operations/src/react/unified-work-board.css +132 -0
  242. package/templates/.agents/dashboard/modules/operations/src/react/unified-work-board.css.test.ts +13 -0
  243. package/templates/.agents/dashboard/modules/operations/src/react/unified-work-board.header.test.ts +16 -0
  244. package/templates/.agents/dashboard/modules/operations/src/react/use-infinite-column.ts +11 -5
  245. package/templates/.agents/dashboard/modules/operations/src/react/work-board-model.test.ts +7 -4
  246. package/templates/.agents/dashboard/modules/operations/src/react/work-board-model.ts +5 -84
  247. package/templates/.agents/dashboard/modules/operations/src/server/build-operations-projection.test.ts +291 -15
  248. package/templates/.agents/dashboard/modules/operations/src/server/build-operations-projection.ts +182 -472
  249. package/templates/.agents/dashboard/modules/operations/src/server/canonical-compat.test.ts +40 -0
  250. package/templates/.agents/dashboard/modules/operations/src/server/canonical-compat.ts +19 -6
  251. package/templates/.agents/dashboard/modules/operations/src/server/canonical-run-projection.ts +31 -6
  252. package/templates/.agents/dashboard/modules/operations/src/server/daily-duration-projection.ts +220 -0
  253. package/templates/.agents/dashboard/modules/operations/src/server/execution-duration-projection.ts +28 -0
  254. package/templates/.agents/dashboard/modules/operations/src/server/execution-relationship-counts.test.ts +39 -2
  255. package/templates/.agents/dashboard/modules/operations/src/server/execution-relationship-counts.ts +25 -13
  256. package/templates/.agents/dashboard/modules/operations/src/server/filter.test.ts +3 -3
  257. package/templates/.agents/dashboard/modules/operations/src/server/filter.ts +7 -2
  258. package/templates/.agents/dashboard/modules/operations/src/server/index.ts +3 -0
  259. package/templates/.agents/dashboard/modules/operations/src/server/macro.ts +3 -12
  260. package/templates/.agents/dashboard/modules/operations/src/server/manifest-usage.ts +65 -0
  261. package/templates/.agents/dashboard/modules/operations/src/server/operations-projection-aggregates.ts +297 -0
  262. package/templates/.agents/dashboard/modules/operations/src/server/quick-daily-operations-projection.ts +330 -0
  263. package/templates/.agents/dashboard/modules/operations/src/server/quick-operations-projection.test.ts +505 -0
  264. package/templates/.agents/dashboard/modules/operations/src/server/quick-operations-projection.ts +609 -0
  265. package/templates/.agents/dashboard/modules/operations/src/server/runs.ts +18 -19
  266. package/templates/.agents/dashboard/modules/operations/src/work-board-model.ts +76 -0
  267. package/templates/.agents/dashboard/modules/traceability/package.json +1 -1
  268. package/templates/.agents/dashboard/modules/traceability/src/server/build-task-trace.ts +3 -1
  269. package/templates/.agents/dashboard/packages/branding/package.json +1 -1
  270. package/templates/.agents/dashboard/packages/branding/src/index.ts +1 -1
  271. package/templates/.agents/dashboard/packages/contracts/package.json +1 -1
  272. package/templates/.agents/dashboard/packages/contracts/src/index.ts +2 -0
  273. package/templates/.agents/dashboard/packages/data-export/package.json +1 -1
  274. package/templates/.agents/dashboard/packages/local-runtime/dist/server.cjs +1759 -0
  275. package/templates/.agents/dashboard/packages/local-runtime/dist/server.cjs.metafile.json +7333 -0
  276. package/templates/.agents/dashboard/packages/local-runtime/dist/sqlite-read-model.cjs +1611 -0
  277. package/templates/.agents/dashboard/packages/local-runtime/package.json +8 -3
  278. package/templates/.agents/dashboard/packages/local-runtime/scripts/build-sqlite-dashboard.mjs +20 -0
  279. package/templates/.agents/dashboard/packages/local-runtime/scripts/build-sqlite-runtime.mjs +114 -0
  280. package/templates/.agents/dashboard/packages/local-runtime/scripts/rebuild-sqlite-read-model.mjs +31 -0
  281. package/templates/.agents/dashboard/packages/local-runtime/scripts/source-size-runtime-scripts/sqlite-read-model-fixture.mjs +397 -0
  282. package/templates/.agents/dashboard/packages/local-runtime/scripts/test-sqlite-read-model.mjs +589 -0
  283. package/templates/.agents/dashboard/packages/local-runtime/scripts/test-unix-launchers.mjs +53 -0
  284. package/templates/.agents/dashboard/packages/local-runtime/scripts/validate-sqlite-read-model.mjs +203 -0
  285. package/templates/.agents/dashboard/packages/local-runtime/server.mjs +1646 -107
  286. package/templates/.agents/dashboard/packages/local-runtime/src/agent-adapter-sync.ts +30 -0
  287. package/templates/.agents/dashboard/packages/local-runtime/src/agent-catalog-settings.test.ts +3 -2
  288. package/templates/.agents/dashboard/packages/local-runtime/src/agent-catalog-settings.ts +5 -0
  289. package/templates/.agents/dashboard/packages/local-runtime/src/manifest-runs.ts +72 -33
  290. package/templates/.agents/dashboard/packages/local-runtime/src/project-settings.test.ts +339 -4
  291. package/templates/.agents/dashboard/packages/local-runtime/src/project-settings.ts +392 -1
  292. package/templates/.agents/dashboard/packages/local-runtime/src/runtime.mjs +5 -5
  293. package/templates/.agents/dashboard/packages/local-runtime/src/server-board.test.ts +110 -0
  294. package/templates/.agents/dashboard/packages/local-runtime/src/server-board.ts +189 -0
  295. package/templates/.agents/dashboard/packages/local-runtime/src/server-cross-layer-parity.test.ts +245 -0
  296. package/templates/.agents/dashboard/packages/local-runtime/src/server-daily-read-models-route.ts +64 -0
  297. package/templates/.agents/dashboard/packages/local-runtime/src/server-daily-read-models.test.ts +204 -0
  298. package/templates/.agents/dashboard/packages/local-runtime/src/server-daily-read-models.ts +194 -0
  299. package/templates/.agents/dashboard/packages/local-runtime/src/server-operations-pages.test.ts +163 -0
  300. package/templates/.agents/dashboard/packages/local-runtime/src/server-operations-pages.ts +354 -0
  301. package/templates/.agents/dashboard/packages/local-runtime/src/server-operations-runs-route.test.ts +74 -0
  302. package/templates/.agents/dashboard/packages/local-runtime/src/server-operations-runs-route.ts +113 -0
  303. package/templates/.agents/dashboard/packages/local-runtime/src/server-overview.test.ts +68 -0
  304. package/templates/.agents/dashboard/packages/local-runtime/src/server-period.ts +47 -0
  305. package/templates/.agents/dashboard/packages/local-runtime/src/server-projections.ts +483 -0
  306. package/templates/.agents/dashboard/packages/local-runtime/src/server-settings.test.ts +5 -2
  307. package/templates/.agents/dashboard/packages/local-runtime/src/server-snapshot.test.ts +178 -84
  308. package/templates/.agents/dashboard/packages/local-runtime/src/server-workspace.ts +149 -0
  309. package/templates/.agents/dashboard/packages/local-runtime/src/server.test.ts +675 -267
  310. package/templates/.agents/dashboard/packages/local-runtime/src/server.ts +1212 -309
  311. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-metric-contract.test.ts +53 -0
  312. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-metric-contract.ts +722 -0
  313. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model.test.ts +3743 -0
  314. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-read-model.ts +7017 -0
  315. package/templates/.agents/dashboard/packages/local-runtime/src/work-priority-contract.test.ts +33 -0
  316. package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-history.mjs +41 -0
  317. package/templates/.agents/dashboard/packages/local-runtime/start-dashboard-processes.mjs +210 -0
  318. package/templates/.agents/dashboard/packages/local-runtime/start-dashboard.mjs +514 -190
  319. package/templates/.agents/dashboard/packages/local-runtime/start-dashboard.test.mjs +324 -24
  320. package/templates/.agents/dashboard/packages/ui/package.json +1 -1
  321. package/templates/.agents/dashboard/packages/windows-launcher/LauncherVerificationBehaviorTests.cs +206 -0
  322. package/templates/.agents/dashboard/packages/windows-launcher/Program.cs +95 -8
  323. package/templates/.agents/dashboard/packages/windows-launcher/build-dashboard-launcher.ps1 +2 -2
  324. package/templates/.agents/dashboard/packages/windows-launcher/run-launcher-verification-tests.ps1 +22 -0
  325. package/templates/.agents/dashboard/read-model.dbml +2201 -0
  326. package/templates/.agents/dashboard/tests/e2e/package.json +1 -1
  327. package/templates/.agents/dashboard/tests/e2e/playwright.config.ts +1 -1
  328. package/templates/.agents/dashboard/tests/e2e/specs/dashboard.spec.ts +216 -41
  329. package/templates/.agents/dashboard/work-priority.json +34 -0
  330. package/templates/.agents/dashboard/zaip-dashboard-linux.sh +45 -0
  331. package/templates/.agents/dashboard/zaip-dashboard-mac.command +3 -0
  332. package/templates/.agents/dashboard/zaip-dashboard-windows.exe +0 -0
  333. package/templates/.agents/design/.zaip-managed.json +3 -3
  334. package/templates/.agents/design/apps/catalog/package.json +1 -1
  335. package/templates/.agents/design/packages/local-runtime/package.json +1 -1
  336. package/templates/.agents/growth/estrategia-bootstrap-90-dias.md +169 -0
  337. package/templates/.agents/growth/strategy.md +27 -0
  338. package/templates/.agents/marketing/estrategia-marketing-zaip-90-dias.md +197 -0
  339. package/templates/.agents/marketing/strategy.md +29 -0
  340. package/templates/.agents/requirements/autonomous-assurance.md +1 -1
  341. package/templates/.agents/requirements/comparative-audit.md +1 -1
  342. package/templates/.agents/requirements/context-engine.md +1 -1
  343. package/templates/.agents/requirements/cost-observability.md +1 -1
  344. package/templates/.agents/requirements/dashboard-launch.md +24 -0
  345. package/templates/.agents/requirements/data-export.md +1 -1
  346. package/templates/.agents/requirements/design-system.md +1 -1
  347. package/templates/.agents/requirements/execution-engine.md +1 -1
  348. package/templates/.agents/requirements/kanban-dashboard.md +4 -3
  349. package/templates/.agents/requirements/model-orchestration.md +1 -1
  350. package/templates/.agents/requirements/public-distribution.md +9 -6
  351. package/templates/.agents/requirements/software-architecture.md +1 -1
  352. package/templates/.agents/requirements/strategic-improvements.md +1 -1
  353. package/templates/.agents/requirements/work-lifecycle.md +9 -3
  354. package/templates/.agents/requirements/zaip-strategic-95.md +4 -4
  355. package/templates/.agents/rules/autonomy-decision.md +15 -0
  356. package/templates/.agents/rules/core.md +1 -1
  357. package/templates/.agents/rules/run-lifecycle-closure.md +1 -1
  358. package/templates/.agents/rules/specialist-routing.md +19 -0
  359. package/templates/.agents/rules/workflow.md +1 -1
  360. package/templates/.agents/runtime/VERSION +1 -1
  361. package/templates/.agents/runtime/bin/zaip.mjs +118 -67
  362. package/templates/.agents/runtime/checksums.sha256 +6 -4
  363. package/templates/.agents/runtime/manifest.json +3 -1
  364. package/templates/.agents/runtime/pnpm-lock.sha256 +1 -0
  365. package/templates/.agents/runtime/provenance.json +11 -0
  366. package/templates/.agents/runtime/sbom.cdx.json +1929 -39
  367. package/templates/.agents/sales/playbook.md +32 -0
  368. package/templates/.agents/sales/roteiro-comercial-zaip.md +252 -0
  369. package/templates/.agents/skills/zaip-aios/SKILL.md +1 -1
  370. package/templates/.agents/skills/zaip-skill-brand-governance/SKILL.md +22 -0
  371. package/templates/.agents/skills/zaip-skill-brand-governance/agents/openai.yaml +4 -0
  372. package/templates/.agents/skills/zaip-skill-brand-governance/references/brandbook-framework.md +39 -0
  373. package/templates/.agents/skills/zaip-skill-brand-governance/references/brandbook-standards.md +30 -0
  374. package/templates/.agents/skills/zaip-skill-dashboard-sqlite/SKILL.md +25 -0
  375. package/templates/.agents/skills/zaip-skill-dashboard-sqlite/agents/openai.yaml +4 -0
  376. package/templates/.agents/skills/zaip-skill-enforce-architecture/SKILL.md +2 -0
  377. package/templates/.agents/skills/zaip-skill-executar-fila-pronta/SKILL.md +18 -0
  378. package/templates/.agents/skills/zaip-skill-executar-fila-pronta/agents/openai.yaml +6 -0
  379. package/templates/.agents/skills/zaip-skill-executar-fila-pronta/scripts/ready-queue-fence.mjs +71 -0
  380. package/templates/.agents/skills/zaip-skill-executar-fila-pronta/scripts/ready-queue-fence.test.mjs +60 -0
  381. package/templates/.agents/skills/zaip-skill-executar-fila-pronta/scripts/scheduled-ready-queue-contract.test.mjs +111 -0
  382. package/templates/.agents/skills/zaip-skill-execution/SKILL.md +2 -2
  383. package/templates/.agents/skills/zaip-skill-frontend-launcher/references/launcher-contract.md +3 -1
  384. package/templates/.agents/skills/zaip-skill-general-operations/SKILL.md +12 -0
  385. package/templates/.agents/skills/zaip-skill-general-operations/agents/openai.yaml +4 -0
  386. package/templates/.agents/skills/zaip-skill-github-deploy/SKILL.md +9 -7
  387. package/templates/.agents/skills/zaip-skill-github-deploy/agents/openai.yaml +2 -2
  388. package/templates/.agents/skills/zaip-skill-github-deploy/scripts/github-deploy-contract.test.mjs +11 -38
  389. package/templates/.agents/skills/zaip-skill-governance-compliance/SKILL.md +12 -0
  390. package/templates/.agents/skills/zaip-skill-governance-compliance/agents/openai.yaml +4 -0
  391. package/templates/.agents/skills/zaip-skill-growth-strategy-revops/SKILL.md +21 -0
  392. package/templates/.agents/skills/zaip-skill-growth-strategy-revops/agents/openai.yaml +4 -0
  393. package/templates/.agents/skills/zaip-skill-growth-strategy-revops/references/growth-revops-framework.md +25 -0
  394. package/templates/.agents/skills/zaip-skill-instalar-agendamento/SKILL.md +17 -0
  395. package/templates/.agents/skills/zaip-skill-instalar-agendamento/agents/openai.yaml +6 -0
  396. package/templates/.agents/skills/zaip-skill-marketing/SKILL.md +9 -3
  397. package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-local-telemetry.mjs +99 -93
  398. package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-lib.mjs +132 -23
  399. package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-lib.test.mjs +149 -1
  400. package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-remeasurement.mjs +76 -19
  401. package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/reconcile-telemetry-remeasurement.test.mjs +217 -7
  402. package/templates/.agents/skills/zaip-skill-reconcile-telemetry/scripts/source-size-telemetry/model-identity-reconciliation.mjs +77 -0
  403. package/templates/.agents/skills/zaip-skill-sales-methodology/SKILL.md +20 -0
  404. package/templates/.agents/skills/zaip-skill-sales-methodology/agents/openai.yaml +4 -0
  405. package/templates/.agents/skills/zaip-skill-sales-methodology/references/sales-process-framework.md +77 -0
  406. package/templates/.agents/skills/zaip-skill-setup/SKILL.md +5 -0
  407. package/templates/.agents/skills/zaip-skill-sqlite-read-model/SKILL.md +96 -0
  408. package/templates/.agents/skills/zaip-skill-sqlite-read-model/agents/openai.yaml +4 -0
  409. package/templates/.agents/skills/zaip-skill-sqlite-read-model/scripts/ensure-node.mjs +41 -0
  410. package/templates/.agents/zaip-aios/INDEX.md +11 -0
  411. package/templates/.agents/zaip-aios/README.md +38 -8
  412. package/templates/.agents/zaip-aios/VERSION +1 -1
  413. package/templates/.agents/zaip-aios/guides/09-agentes-e-squads.md +43 -6
  414. package/templates/.agents/zaip-aios/guides/10-seguranca.md +21 -7
  415. package/templates/.agents/zaip-aios/guides/17-como-o-custo-e-calculado.md +32 -0
  416. package/templates/.agents/zaip-aios/guides/18-catalogo-de-agentes.md +76 -0
  417. package/templates/.agents/zaip-aios/guides/19-assurance-e-autonomia.md +72 -0
  418. package/templates/.agents/zaip-aios/guides/20-instalacao-detalhada.md +330 -0
  419. package/templates/.agents/zaip-aios/guides/21-telemetria-monitor-custos.md +52 -0
  420. package/templates/.agents/zaip-aios/guides/22-fluxos-e-roteamento.md +69 -0
  421. package/templates/.agents/zaip-aios/guides/23-orquestracao-de-modelos.md +483 -0
  422. package/templates/.agents/zaip-aios/guides/24-calculo-de-custos-openai.md +85 -0
  423. package/templates/.agents/zaip-aios/guides/25-fontes-de-precos-openai.md +18 -0
  424. package/templates/.agents/zaip-aios/guides/26-qualidade-e-release.md +44 -0
  425. package/templates/.agents/zaip-aios/guides/27-telemetria-git-native.md +167 -0
  426. package/templates/.agents/zaip-aios/guides/28-lifecycle-completo.md +144 -0
  427. package/templates/.agents/zaip-aios/guides/assets/diagrams/lifecycles-task-spec-prd.png +0 -0
  428. package/templates/.agents/zaip-aios/guides/assets/diagrams/prd-lifecycle.png +0 -0
  429. package/templates/.agents/zaip-aios/guides/assets/diagrams/spec-lifecycle.png +0 -0
  430. package/templates/.agents/zaip-aios/guides/assets/diagrams/task-lifecycle.png +0 -0
  431. package/templates/template-manifest.json +1082 -215
  432. package/templates/.agents/dashboard/apps/frontend/dist/assets/AgentCatalogSettingsPage-CLYIi7Vo.js +0 -1
  433. package/templates/.agents/dashboard/apps/frontend/dist/assets/AgentCatalogSettingsPage-DTDNVQGX.css +0 -1
  434. package/templates/.agents/dashboard/apps/frontend/dist/assets/DashboardHelpDialog-Cv-JcoxP.js +0 -1320
  435. package/templates/.agents/dashboard/apps/frontend/dist/assets/PricingSettingsDialog-CzEggcRb.js +0 -1
  436. package/templates/.agents/dashboard/apps/frontend/dist/assets/ProjectSettingsPage-05YKn6Z4.js +0 -3
  437. package/templates/.agents/dashboard/apps/frontend/dist/assets/ProjectSettingsPage-YO3yqtgV.css +0 -1
  438. package/templates/.agents/dashboard/apps/frontend/dist/assets/index-8AzCnl3a.js +0 -77
  439. package/templates/.agents/dashboard/apps/frontend/dist/assets/index-DdBYQ_8D.css +0 -1
  440. package/templates/.agents/dashboard/apps/frontend/src/AgentCatalogSettingsPage.tsx +0 -617
  441. package/templates/.agents/dashboard/apps/frontend/src/agent-catalog-settings-page.css +0 -660
  442. package/templates/.agents/dashboard/apps/frontend/src/agent-catalog-settings.test.ts +0 -249
  443. package/templates/.agents/dashboard/dashboard.config.json +0 -4
  444. package/templates/.agents/dashboard/zaip-dashboard.exe +0 -0
@@ -0,0 +1,111 @@
1
+ import assert from "node:assert/strict";
2
+ import { access, readFile } from "node:fs/promises";
3
+ import { resolve } from "node:path";
4
+ import test from "node:test";
5
+
6
+ const root = resolve(import.meta.dirname, "../..");
7
+ const read = (path) => readFile(resolve(root, path), "utf8");
8
+ const repositoryReadme = resolve(root, "../../README.md");
9
+
10
+ test("hourly ready queue contracts the native Codex scheduler and full ordered snapshot", async () => {
11
+ const [installer, executor] = await Promise.all([
12
+ read("zaip-skill-instalar-agendamento/SKILL.md"),
13
+ read("zaip-skill-executar-fila-pronta/SKILL.md"),
14
+ ]);
15
+
16
+ assert.match(installer, /Codex Desktop/);
17
+ assert.match(installer, /automation_update/);
18
+ assert.match(installer, /codex_app list_projects/);
19
+ assert.match(installer, /codex_app automation_update/);
20
+ assert.match(installer, /\$CODEX_HOME\/automations\/\*\/automation\.toml/);
21
+ assert.match(installer, /somente em leitura/);
22
+ assert.match(
23
+ installer,
24
+ /exclusivamente pelo nome estável para resolver identidade e deduplicação/,
25
+ );
26
+ assert.match(installer, /É proibido criar, editar ou apagar TOML/);
27
+ assert.match(installer, /ou usá-lo como fallback/);
28
+ assert.match(
29
+ installer,
30
+ /Todas as visualizações e mutações da automação são exclusivamente por `codex_app automation_update`/,
31
+ );
32
+ assert.match(installer, /ZAIP-AIOS - Fila Pronta Horária/);
33
+ assert.match(installer, /cada hora/);
34
+ assert.match(installer, /checkout local/);
35
+ assert.match(installer, /standalone/);
36
+ assert.match(installer, /sem duplicar/);
37
+ assert.match(installer, /Nunca use o Agendador do Windows/);
38
+ assert.match(installer, /authorizes only canonically ready\/eligible items/);
39
+ assert.match(installer, /a cada hora, no minuto 0/);
40
+ assert.match(installer, /nova conversa/);
41
+ assert.match(installer, /\.agents\/dashboard\/work-priority\.json/);
42
+ assert.match(installer, /Ignore Automation memory and \$CODEX_HOME/);
43
+ assert.match(installer, /Start immediately by validating the repository and ready queue/);
44
+ assert.match(installer, /set_thread_title without threadId/);
45
+ assert.match(installer, /\[YYYY-MM-DD-T-HH-mm\] Tarefa Agendada/);
46
+
47
+ assert.match(executor, /snapshot elegível/);
48
+ assert.match(executor, /todos os PRDs antes de SPECs, e todos os SPECs antes das Tasks/);
49
+ assert.match(executor, /descendem de PRD/);
50
+ assert.match(executor, /`active`, `blocked`, `failed`, `cancelled` ou terminais/);
51
+ assert.match(executor, /\.agents\/dashboard\/work-priority\.json/);
52
+ assert.match(executor, /\.local\/automation\/ready-queue\.lock\.json/);
53
+ assert.match(executor, /owner_token/);
54
+ assert.match(executor, /fencing_token/);
55
+ assert.match(executor, /inteiro monotônico/);
56
+ assert.match(executor, /Antes de cada efeito/);
57
+ assert.match(executor, /set_thread_title/);
58
+ assert.match(executor, /sem `threadId`/);
59
+ assert.match(executor, /America\/Sao_Paulo/);
60
+ assert.match(executor, /falha de renomeação observada/);
61
+ assert.match(executor, /Task-first standalone `prepared`\/`planned`/);
62
+ assert.doesNotMatch(executor, /Task-first materializada/);
63
+ assert.match(executor, /exatamente um PreparedPlan resolvível/);
64
+ assert.match(executor, /`prepared_plan` inline válido \*\*ou\*\* `plan_ref` válido, nunca ambos/);
65
+ assert.match(executor, /não pode ter Execution vinculada/);
66
+ assert.match(executor, /nunca pode ter sido iniciada ou tentada/);
67
+ assert.match(executor, /Para cada candidata/);
68
+ assert.match(
69
+ executor,
70
+ /cujo próprio ID apareça em `task next` ou no conjunto materializado concorrente/,
71
+ );
72
+ assert.doesNotMatch(executor, /`task next` não vazio/);
73
+ assert.match(executor, /use `task execute` para materializar sua Execution/);
74
+
75
+ if (
76
+ await access(repositoryReadme).then(
77
+ () => true,
78
+ () => false,
79
+ )
80
+ ) {
81
+ const readme = await readFile(repositoryReadme, "utf8");
82
+ assert.match(readme, /\$zaip-skill-instalar-agendamento/);
83
+ assert.match(readme, /rodada horária/);
84
+ assert.match(readme, /Pronto para Executar/);
85
+ assert.match(readme, /Dashboard > Trabalho \(Kanban\) > Pronto para Executar/);
86
+ assert.match(readme, /máquina ligada, do Codex Desktop em execução/);
87
+ }
88
+ });
89
+
90
+ test("fencing lease rejects stale effects after renewal or ownership failure", () => {
91
+ let lock = { owner_token: "owner-a", fencing_token: 7, expires_at: 20 };
92
+ const renew = (owner, now, expiry) => {
93
+ if (lock.owner_token !== owner || now >= lock.expires_at) return null;
94
+ lock = { ...lock, expires_at: expiry };
95
+ return lock;
96
+ };
97
+ const effect = (owner, fence, now) => {
98
+ assert.equal(lock.owner_token, owner, "owner token must still match");
99
+ assert.equal(lock.fencing_token, fence, "fencing token must still be current");
100
+ assert.ok(now < lock.expires_at, "lease must be valid before an effect");
101
+ return "executed";
102
+ };
103
+
104
+ assert.equal(effect("owner-a", 7, 10), "executed");
105
+ assert.equal(renew("owner-a", 10, 30)?.fencing_token, 7);
106
+ lock = { owner_token: "owner-b", fencing_token: 8, expires_at: 40 };
107
+ assert.throws(() => effect("owner-a", 7, 11), /owner token/);
108
+ assert.equal(renew("owner-a", 11, 50), null);
109
+ assert.throws(() => effect("owner-b", 7, 12), /fencing token/);
110
+ assert.equal(effect("owner-b", 8, 12), "executed");
111
+ });
@@ -7,7 +7,7 @@ description: Execute prepared ZAIP work explicitly, materialize its DAG, and clo
7
7
 
8
8
  Use esta skill somente quando o usuário pedir execução. `prepare` não autoriza mutação nem promoção para `ready`; quando a execução foi pedida explicitamente, prepare o PRD/SPEC ainda em `draft`, se necessário, e então execute sem exigir outra confirmação intermediária.
9
9
 
10
- 1. Carregue o PreparedPlan e valide hash, origem, Requirements/AC, DAG, write scopes e estado atual. Ao construir ou diagnosticar o plano externo, leia [o contrato compacto](references/prepared-plan.md).
10
+ 1. Carregue o PreparedPlan e valide hash, origem, Requirements/AC, DAG, write scopes e estado atual. Antes de selecionar executor, carregue as Rules aplicáveis; para decisão comercial, use `$RULE-SPECIALIST-ROUTING` como fonte única da matriz de roteamento. Ao construir ou diagnosticar o plano externo, leia [o contrato compacto](references/prepared-plan.md).
11
11
  2. Materialize idempotentemente Change, Tasks e Execution antes da primeira alteração do produto.
12
12
  3. A partir da tentativa explícita de `execute`, classifique uso como `execution`; inicie Execution, Changes, Tasks elegíveis e Runs com atribuição ao nível de entrada (`task`, `spec` ou `prd`). Ausência de diff não retroage a fase: registre `changed_files` vazio e o resultado real.
13
13
  4. Execute a ordem topológica. Paralelize apenas Tasks independentes cujos arquivos, módulos, migrations, ambientes e recursos não conflitem.
@@ -18,7 +18,7 @@ Use esta skill somente quando o usuário pedir execução. `prepare` não autori
18
18
  9. Em cada `run usage`, leia `budget.context_refresh_required` e `budget.checkpoint_required`. O runtime grava o checkpoint sanitizado em `.local/checkpoints/`; quando sinalizado, reconstrua contexto somente de IDs ativos, diff e findings, descarte outputs brutos antigos e continue apenas com autoridade.
19
19
  10. Em falha operacional, use retry limitado; em falha lógica, crie repair/rework explícito. Nunca esconda uma tentativa.
20
20
  11. Cada tentativa usa uma Run raiz do `zaip-agent-orchestrator`; subagentes e fases materialmente distintas usam Sub-Runs relacionadas por `parent_run_id`. Cada Run/Sub-Run fixa agente, modelo e effort; retry técnico preserva a configuração e qualquer mudança deliberada abre outra chamada de agente.
21
- 12. Interaction read-only sem descendentes termina após a resposta, sem executor/finalizador. Para interaction com descendente delegado e para delivery, depois que todos os Sub-Runs de trabalho terminarem invoque `zaip-agent-finalizer` como último filho com propósito `finalization`. Não inicie novos filhos depois dele; auto-settlement nunca fecha interaction com descendente ativo. A CLI aplica seu resultado restrito; ausência, interrupção ou falha deixa a Execution inconclusiva como `blocked`.
21
+ 12. Interaction read-only sem descendentes termina após a resposta, sem executor/finalizador. Para interaction com descendente delegado e para delivery, depois que todos os Sub-Runs de trabalho terminarem invoque `zaip-agent-finalizer` como último filho com propósito `finalization`. Não inicie novos filhos depois dele; auto-settlement nunca fecha interaction com descendente ativo. Isso também vale para `cancelled`: o orquestrador aplica a decisão Gui pela CLI; comandos diretos Task/SPEC/PRD nunca terminalizam. Ausência, interrupção ou falha do Gui deixa a Execution inconclusiva como `blocked`.
22
22
  13. SPEC/PRD permanece `active` entre Runs filhas e só entra em verificação após todas as Tasks; a Run filha não entrega nem bloqueia automaticamente o pai.
23
23
  14. Resolva execução no menor grão explicitado: Task executa um nó elegível, SPEC executa sua DAG interna e PRD executa todas as SPECs selecionadas. Nunca amplie Task para SPEC/PRD por inferência.
24
24
  15. “Conclua a execução” ou “finalize a implementação” em macro ativo continua Tasks e gates até resultado verdadeiro; não força `deliver`. “Desenvolva/melhore/aprimore” interrompe execução implícita, registra diagnóstico e cria plano/rework antes de nova promoção.
@@ -2,7 +2,9 @@
2
2
 
3
3
  ## Estrutura
4
4
 
5
- - `<surface>/launcher.exe`: artefato de duplo clique.
5
+ - `<surface>/zaip-dashboard-windows.exe`: artefato Windows de duplo clique.
6
+ - `<surface>/zaip-dashboard-linux.sh`: launcher Linux executável.
7
+ - `<surface>/zaip-dashboard-mac.command`: launcher macOS executável.
6
8
  - `<surface>/packages/windows-launcher/`: fonte C# e build PowerShell.
7
9
  - `<surface>/packages/local-runtime/`: servidor loopback, sessão, lock e testes.
8
10
  - `<surface>/apps/frontend/dist/`: build estático servido; ajuste o path à superfície real.
@@ -0,0 +1,12 @@
1
+ ---
2
+ name: zaip-skill-general-operations
3
+ description: Deliver bounded operational artifacts when no mandatory specialist scope applies. Use for documents, presentations, spreadsheets, process artifacts, and comparative research; do not use for regulated governance work or external acts.
4
+ ---
5
+
6
+ # Executar operações gerais
7
+
8
+ 1. Delimite o resultado, público, fontes, formato, write scope e critério de aceitação; trate fatos ausentes como pendências, nunca como dados inferidos.
9
+ 2. Se houver capability ou escopo obrigatório de produto, design, marketing, dados, segurança, cloud, frontend, backend, website ou governança, devolva ao orquestrador para a rota especialista.
10
+ 3. Produza o artefato delimitado e uma verificação proporcional. Para identidade visual existente, siga o contrato da Manu; para conteúdo de marketing, devolva a rota para Lúcia.
11
+ 4. Pesquisa comparativa usa apenas fontes autorizadas e registra critérios, evidência e incertezas. Não contrate, envie dados, assine, publique ou execute ato externo.
12
+ 5. Quando faltar autoridade humana, entregue a minuta, checklist, lacunas e a ação humana exata; a entrega não fica sem resultado por falta dessa autoridade.
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "ZAIP General Operations"
3
+ short_description: "Deliver bounded operational artifacts outside specialist scopes."
4
+ default_prompt: "Use $zaip-skill-general-operations to deliver a bounded document, presentation, spreadsheet, process artifact, or comparative research result."
@@ -5,16 +5,18 @@ description: Use only when the user explicitly asks in the current turn to deplo
5
5
 
6
6
  # Deploy and repair GitHub publication
7
7
 
8
+ The exact command “faça deploy” authorizes publication of everything versionable in the selected worktree, including tracked and untracked files, after the safety gates below. It does not authorize provider deployment.
9
+
8
10
  Treat deploy as Git-only publication. An explicit current-turn request to `deploy`, `push`, `publicar`, `publicação` or GitHub publication selects this skill; it authorizes only the bounded Git publication described below, never a provider deployment or automatic publication.
9
11
 
10
12
  ## Authorization
11
13
 
12
14
  - Require an explicit deploy, push, publicar, publicação, GitHub publication, or failed-deploy repair request in the current turn.
13
- - The request authorizes the initial publication, bounded reconciliation needed to publish the selected branch, functional commits for the evidenced intended pending scope, and up to five repair cycles needed to make required local and remote GitHub checks pass.
15
+ - The request authorizes the initial publication, reconciliation needed to publish the selected branch, commits covering all versionable pending changes in the selected worktree, and up to five repair cycles needed to make required local and remote GitHub checks pass.
14
16
  - Limit repairs to the intended repository state and the evidenced failure. Do not add unrelated features or broaden product scope.
15
17
  - Never force push, rewrite history, replace remotes, change credentials or Git/SSH configuration, bypass checks, or deploy to another service.
16
- - Do not create lifecycle artifacts for an explicit Git-only publication request. The deploy authorization may stage and commit only the evidenced intended pending scope with explicit pathspecs before publication; it never authorizes unrelated product work.
17
- - Map a functional group to PRD/SPEC/Task only when evidence exists; otherwise use `[CODEX] <functional title>` without `ZAIP-Task`. Omit nonexistent lineage blocks and trailers. Deploy authorization never permits `git add -A`, broad staging, force, destructive reset, squash, or publication outside the current explicit request.
18
+ - Do not create lifecycle artifacts for an explicit Git-only publication request. The deploy authorization permits staging the complete selected worktree with `git add -A` after secret, size, and ignore checks; it never authorizes changes outside that worktree.
19
+ - Map a functional group to PRD/SPEC/Task only when evidence exists; otherwise use `[CODEX] <functional title>` without `ZAIP-Task`. Omit nonexistent lineage blocks and trailers. Broad staging is authorized only by the exact current-turn deploy request; force, destructive reset, history rewrite, and credential changes remain prohibited.
18
20
 
19
21
  ## Mandatory authorization record
20
22
 
@@ -32,8 +34,8 @@ The conversation and terminal deploy report are the authority record for Git-onl
32
34
  ## Multiple worktrees and divergent history
33
35
 
34
36
  1. Run `git worktree list --porcelain` and inspect `git status --porcelain` in every existing worktree before staging.
35
- 2. Select exactly one publishing worktree. A clean worktree on another branch or a detached verification worktree does not join the deploy. Preserve a stable dirty worktree and partition only its evidenced intended scope; exclude its alien paths unless the user explicitly includes them.
36
- 3. Stop when another process or agent is actively mutating a shared branch, index, canonical source or generated projection, or when scope is ambiguous.
37
+ 2. Select exactly one publishing worktree. A clean worktree on another branch or a detached verification worktree does not join the deploy. The selected worktree is the complete publication scope.
38
+ 3. Report concurrent activity, but do not block solely because the selected worktree is dirty or contains mixed changes; the explicit “faça deploy” authorization includes those changes. Stop only for an unresolved index conflict, secret/oversize file, authentication failure, or destructive/rewrite requirement.
37
39
  4. Prunable or missing worktrees are reported but never pruned automatically. Dirty detached or temporary worktrees are never deleted, reset, stashed or copied into the publishing worktree implicitly.
38
40
  5. Fetch once and compute ahead/behind for the publishing branch. If it is behind or diverged, reconcile only the selected branch under this deploy authorization.
39
41
  6. Before reconciliation, create a recoverable branch reference and preserve tracked plus untracked changes in a named stash. Verify both references before proceeding. Use `rebase` unless the user explicitly selected `merge`.
@@ -43,7 +45,7 @@ The conversation and terminal deploy report are the authority record for Git-onl
43
45
  ## Repair-loop integrity
44
46
 
45
47
  - A publication cycle is: run deploy preflight, inventory the intended pending diff, synchronize, create any required functional commits with explicit pathspecs, push, and verify the remote hash. When no intended pending diff exists, publish already-formed commits. Run only gates required or evidenced by repository Rules, the active Change, or failed remote CI.
46
- - First prove each functional group and its pathspecs from the intended pending diff; stage only that group with explicit paths, commit it, then continue with the next group. A stable mixed worktree is partitioned and preserved; only a moving worktree, ambiguous scope, or unresolved conflict is a terminal blocker.
48
+ - Inventory the complete pending diff, run the safety gates, then stage the selected worktree with `git add -A` and commit it. Do not require functional partitioning for this explicit broad-deploy mode.
47
49
  - Run each diagnostic, gate, fetch, stage, commit, push, and hash verification at most once per cycle.
48
50
  - Start a new cycle only after a repository change or new remote evidence. Never repeat an unchanged failing command hoping for a different result.
49
51
  - Continue until all required checks pass or a terminal blocker occurs. Stop after five repair cycles, or when the same root cause remains after two repairs.
@@ -69,7 +71,7 @@ Run preflight once at the start of the authorized deployment. On failure, stop.
69
71
  - Turbo cache hits are valid only when the active work did not originate from a failed remote CI gate.
70
72
  - When repairing failed CI, reproduce the exact failed gate once per repair cycle with Turbo cache bypassed when applicable.
71
73
  4. If a local gate fails, capture the exact failing command and error, make the smallest authorized repair, update lifecycle evidence, and start the next cycle without asking for another deploy authorization.
72
- 5. After all required local gates pass, partition only the evidenced intended pending diff with explicit pathspecs. If tracked or untracked changes remain outside that scope, stop and identify the Task that must own them; never stage or combine alien changes during deploy.
74
+ 5. After all required local gates pass, stage the complete selected worktree with `git add -A`. If a file is secret, oversized, ignored by policy, or outside the selected worktree, exclude it and report the reason; otherwise include it.
73
75
 
74
76
  ## Synchronize and publish each cycle
75
77
 
@@ -1,6 +1,6 @@
1
1
  interface:
2
2
  display_name: "ZAIP GitHub Deploy"
3
- short_description: "Publicação GitHub explícita, Git-only e verificável"
4
- default_prompt: "Use $zaip-skill-github-deploy somente para um pedido explícito neste turno de deploy, push, publicar ou publicação GitHub; registre a autorização, inventarie todos os worktrees, reconcilie com segurança apenas o worktree selecionado e publique somente o escopo evidenciado via SSH da pasta."
3
+ short_description: "Publicacao GitHub explicita, Git-only e verificavel"
4
+ default_prompt: "Use $zaip-skill-github-deploy para pedidos explicitos de deploy, push, publicar ou publicacao GitHub; quando o usuario disser 'faca deploy', trate o worktree selecionado inteiro como escopo autorizado, incluindo arquivos novos, apos os gates de segredos, tamanho, conflitos e SSH; publique via SSH da pasta sem force push nem reescrita de historico."
5
5
  policy:
6
6
  allow_implicit_invocation: true
@@ -12,22 +12,12 @@ test("explicit Git publication verbs select the guarded deploy skill", async ()
12
12
  readFile(resolve(skillRoot, "agents", "openai.yaml"), "utf8"),
13
13
  readFile(resolve(root, "rules", "core.md"), "utf8"),
14
14
  ]);
15
-
16
- assert.match(
17
- skill,
18
- /explicit current-turn request to `deploy`, `push`, `publicar`, `publicação`/,
19
- );
15
+ assert.match(skill, /explicit current-turn request to `deploy`, `push`, `publicar`/);
20
16
  assert.match(skill, /never grants publication automatically/);
21
17
  assert.doesNotMatch(skill, /standing automatic deployment|activate it automatically/);
22
18
  assert.match(openai, /\$zaip-skill-github-deploy/);
23
- assert.match(
24
- openai,
25
- /pedido explícito neste turno de deploy, push, publicar ou publicação GitHub/,
26
- );
27
- assert.match(
28
- core,
29
- /Pedido explícito no turno de `deploy\|push\|publicar\|publicação GitHub` seleciona `\$zaip-skill-github-deploy`/,
30
- );
19
+ assert.match(openai, /fa.a deploy/);
20
+ assert.match(core, /deploy.*seleciona/);
31
21
  });
32
22
 
33
23
  test("deploy guidance preserves the canonical Task subject and Git-only boundary", async () => {
@@ -35,46 +25,29 @@ test("deploy guidance preserves the canonical Task subject and Git-only boundary
35
25
  readFile(resolve(skillRoot, "SKILL.md"), "utf8"),
36
26
  readFile(resolve(root, "rules", "workflow.md"), "utf8"),
37
27
  ]);
38
- const subject = "[CODEX|CLAUDE] [P:XXXX] [S:XXXX] [T:XXXX] <Task title>";
39
-
40
- assert.ok(skill.includes(subject));
28
+ assert.ok(skill.includes("[CODEX|CLAUDE] [P:XXXX] [S:XXXX] [T:XXXX] <Task title>"));
41
29
  assert.match(skill, /exclusively `CODEX` or `CLAUDE`; `AUTO` is not part/);
42
- assert.match(skill, /P\/S\/T blocks are emitted only when their evidence exists/);
43
- assert.match(skill, /\[Task-first:XXXX\]/);
44
30
  assert.match(skill, /Git-only publication/);
45
- assert.match(workflow, /assunto é ≤96 e só o título reduz por palavra/);
46
31
  assert.match(workflow, /formar commits funcionais apenas do diff pretendido\/evidenciado/);
47
- assert.doesNotMatch(workflow, /deploy\/push simples publica somente commits formados/);
48
32
  });
49
33
 
50
- test("every explicit deploy authorizes bounded reconciliation and functional commits with pathspecs", async () => {
34
+ test("faça deploy authorizes the complete selected worktree with safety gates", async () => {
51
35
  const skill = await readFile(resolve(skillRoot, "SKILL.md"), "utf8");
52
-
53
- assert.match(skill, /bounded reconciliation needed to publish the selected branch/);
54
- assert.match(skill, /functional commits for the evidenced intended pending scope/);
55
- assert.match(skill, /Use `rebase` unless the user explicitly selected `merge`/);
56
- assert.match(skill, /explicit pathspecs/);
57
- assert.match(skill, /without `ZAIP-Task`/);
58
- assert.match(skill, /never permits `git add -A`/);
59
- assert.match(skill, /stable mixed worktree is partitioned and preserved/);
60
- assert.match(
61
- skill,
62
- /moving worktree, ambiguous scope, or unresolved conflict is a terminal blocker/,
63
- );
36
+ assert.match(skill, /commits covering all versionable pending changes/);
37
+ assert.match(skill, /`git add -A`/);
38
+ assert.match(skill, /selected worktree is the complete publication scope/);
39
+ assert.match(skill, /Stop only for an unresolved index conflict/);
64
40
  });
65
41
 
66
- test("deploy permission and multi-worktree reconciliation are explicit and recoverable", async () => {
42
+ test("deploy permission and reconciliation remain explicit and recoverable", async () => {
67
43
  const [skill, openai] = await Promise.all([
68
44
  readFile(resolve(skillRoot, "SKILL.md"), "utf8"),
69
45
  readFile(resolve(skillRoot, "agents", "openai.yaml"), "utf8"),
70
46
  ]);
71
-
72
47
  assert.match(skill, /Mandatory authorization record/);
73
48
  assert.match(skill, /repository, remote, branch and selected worktree/);
74
- assert.match(skill, /`rebase` by default, or user-selected `merge`/);
75
49
  assert.match(skill, /recoverable branch reference/);
76
50
  assert.match(skill, /preserve tracked plus untracked changes in a named stash/);
77
51
  assert.match(skill, /Restore with `git stash apply`/);
78
- assert.match(skill, /Prunable or missing worktrees are reported but never pruned automatically/);
79
- assert.match(openai, /registre a autorização, inventarie todos os worktrees/);
52
+ assert.match(openai, /worktree selecionado inteiro como escopo autorizado/);
80
53
  });
@@ -0,0 +1,12 @@
1
+ ---
2
+ name: zaip-skill-governance-compliance
3
+ description: Prepare non-binding internal governance and compliance artifacts for HR, legal operations, policy, privacy, vendors, and risk. Use for bounded internal work; do not give legal advice or execute external authority.
4
+ ---
5
+
6
+ # Preparar governança e conformidade
7
+
8
+ 1. Delimite jurisdição, destinatário, fontes autorizadas, dados pessoais, prazo e autoridade necessária. Declare toda informação ausente ou incerta.
9
+ 2. Produza a minuta, checklist, matriz de risco, registro de decisão ou pacote de aprovação solicitado. Diferencie requisito fornecido, referência e hipótese.
10
+ 3. Não ofereça parecer jurídico vinculante, representação, assinatura, protocolo externo, contratação, decisão de pessoas ou aprovação regulatória.
11
+ 4. Para cada fronteira de autoridade, prepare a versão revisável, os riscos, pendências e a ação humana exata. Escale somente a decisão ou ato que exige autoridade; não interrompa a preparação do restante.
12
+ 5. Registre decisões consequenciais e evidência proporcional na Change/Execution, preservando confidencialidade e escopo declarado.
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "ZAIP Governance and Compliance"
3
+ short_description: "Prepare internal governance and compliance artifacts."
4
+ default_prompt: "Use $zaip-skill-governance-compliance to prepare a bounded internal HR, legal-operations, policy, privacy, vendor, or risk artifact."
@@ -0,0 +1,21 @@
1
+ ---
2
+ name: zaip-skill-growth-strategy-revops
3
+ description: Guide data-driven growth strategy, RevOps decisions, experiments, and financial-impact recommendations. Use for cross-funnel growth or operating decisions; not for raw data analysis, campaign production, or external commercial action.
4
+ ---
5
+
6
+ # Orientar Growth e RevOps
7
+
8
+ ## Localização canônica
9
+
10
+ Salve diagnósticos, estratégias, decisões de RevOps, hipóteses de experimento e recomendações de Growth em `.agents/growth/`. Não salve esses artefatos em `docs/`, na raiz do repositório ou em diretórios de brand, marketing ou sales.
11
+
12
+ O arquivo central da área é `.agents/growth/strategy.md`; atualize-o quando uma decisão mudar a estratégia de Growth ou RevOps. Diagnósticos e experimentos específicos podem ser arquivos adicionais na mesma pasta.
13
+
14
+ 1. Delimite a decisão de negócio, período, segmentos, funil, métricas, restrições e impacto financeiro esperado. Separe fatos observados, cálculo determinístico, hipótese e recomendação.
15
+ 2. Examine a ponta a ponta do funil e dos handoffs de RevOps: aquisição, qualificação, conversão, receita, retenção, expansão, custos e capacidade. Não declare causalidade sem desenho ou evidência adequados.
16
+ 3. Proponha testes com hipótese, população, métrica primária, guardrails, duração, critério de decisão, risco e responsável. Não execute campanhas, alterações comerciais externas ou experimentos sem a autorização e o escopo correspondentes.
17
+ 4. Priorize oportunidades por impacto potencial, confiança, esforço, dependências e reversibilidade. Para recomendações financeiras, explicite fórmula, premissas, sensibilidade e lacunas; não prometa receita nem economia.
18
+ 5. Em conselho ou planejamento de negócio, priorize portfólio, modelo de negócio, opções e handoffs de execução. Solicite análise reprodutível de Gabi quando houver dataset, cálculo, qualidade de dados ou significância. Encaminhe plataforma de marca à Sarah, campanha/copy a Lúcia e playbook/processo sales-facing a Aaron.
19
+ 6. Produza uma recomendação consultiva: decisão, evidência, incerteza, opções, impacto esperado, próximo experimento e dono da próxima ação. Não produza campanha, Brandbook ou playbook comercial como substituto da recomendação.
20
+
21
+ Consulte o [framework de decisão](references/growth-revops-framework.md) para planejar diagnóstico ou experimento.
@@ -0,0 +1,4 @@
1
+ interface:
2
+ display_name: "Growth Strategist"
3
+ short_description: "Guide data-driven growth and RevOps decisions."
4
+ default_prompt: "Use $zaip-skill-growth-strategy-revops to analyze growth or RevOps decisions with evidence."
@@ -0,0 +1,25 @@
1
+ # Framework de Growth e RevOps
2
+
3
+ Use o framework para orientar decisões, não para substituir evidência por estimativas.
4
+
5
+ ## Diagnóstico
6
+
7
+ Defina uma árvore de métricas: objetivo de negócio, métricas de resultado, drivers, guardrails, definição, origem, proprietário e período. Defina a unidade de análise, janela temporal, população, funil, métricas e fontes. Verifique cobertura, duplicidade, atrasos de atribuição, mudanças de definição e viés de seleção antes de comparar períodos ou segmentos.
8
+
9
+ Para RevOps, registre estágios, critérios de entrada e saída, handoffs, SLA, responsável e system of record de marketing, vendas, onboarding, suporte, retenção e expansão. Uma lacuna de source of truth deve aparecer como risco operacional, não ser conciliada por suposição.
10
+
11
+ ## Experimentos
12
+
13
+ Mantenha um portfólio de experimentos com hipótese, alavanca, população elegível, controle ou comparação, métrica primária, guardrails, duração, critério de parada, decisão esperada, risco, dependências, proprietário e status. Um resultado indisponível ou inconclusivo deve permanecer inconclusivo.
14
+
15
+ ## Caso financeiro
16
+
17
+ Mostre cenários base, conservador e agressivo, com premissas, fórmula, intervalo e sensibilidade para receita incremental, custo evitado, margem, capacidade ou payback. Diferencie potencial, cenário e resultado observado; somente resultado observado pode ser declarado como realizado.
18
+
19
+ ## Aprendizado histórico
20
+
21
+ Registre hipótese, execução, resultado, decisão, contexto, limitação e reutilização recomendada. Use resultados anteriores comprovados como evidência condicionada ao contexto; não transforme um aprendizado histórico em regra universal.
22
+
23
+ ## Fronteiras
24
+
25
+ Robert orienta a priorização estratégica de crescimento e RevOps. Gabi valida dados e métodos quantitativos. Sarah governa marca e posicionamento. Lúcia executa estratégia e ativos de marketing. Nenhuma dessas atividades autoriza abordagem comercial, mudança de preço, campanha, contratação ou publicação externa.
@@ -0,0 +1,17 @@
1
+ ---
2
+ name: zaip-skill-instalar-agendamento
3
+ description: Install or update the native Codex hourly scheduler for the ready-work queue.
4
+ ---
5
+
6
+ # Instalar agendamento da fila pronta
7
+
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
+
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; this user-installed schedule authorizes only canonically ready/eligible items, never promotes draft or resumes blocked or failed work; respect the persisted manual order in .agents/dashboard/work-priority.json.`
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
+ 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`. Registre somente a evidência observada; não afirme que uma hora futura será executada.
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
+
17
+ Não use esta skill para selecionar itens, burlar bloqueios, executar todos os itens `planned`, alterar prioridades do Kanban ou fazer deploy/push.
@@ -0,0 +1,6 @@
1
+ interface:
2
+ display_name: "ZAIP Instalar Agendamento"
3
+ short_description: "Instale ou atualize o agendamento horário nativo do Codex."
4
+ default_prompt: "Use $zaip-skill-instalar-agendamento para instalar ou atualizar com segurança o agendamento horário nativo do Codex Desktop, com validação imediata da fila e sua ordem manual persistida."
5
+ policy:
6
+ allow_implicit_invocation: false
@@ -5,6 +5,12 @@ description: Plan evidence-grounded marketing strategy, copy, campaigns, assets,
5
5
 
6
6
  # Planejar marketing
7
7
 
8
- 1. Delimitar público, objetivo, canal, mensagem, evidência disponível e métrica de sucesso.
9
- 2. Produzir estratégia, copy, campanha, ativos ou briefing de imagem proporcionais ao objetivo; distinguir fatos fornecidos de hipóteses.
10
- 3. Encaminhar website para Jonny, frontend de produto para Doug e regra visual central para Manu quando o escopo não for marketing.
8
+ ## Localização canônica
9
+
10
+ Salve estratégias, campanhas, calendários, briefings, copy aprovada e ativos de marketing em `.agents/marketing/`. Não salve entregáveis de marketing em `docs/`, na raiz do repositório ou em diretórios de brand, sales ou growth.
11
+
12
+ O arquivo central da área é `.agents/marketing/strategy.md`; atualize-o quando uma decisão mudar a estratégia de marketing. Campanhas e planos específicos podem ser arquivos adicionais na mesma pasta.
13
+
14
+ 1. Delimitar público, objetivo, canal, mensagem, Brandbook aprovado como input somente-leitura, evidência disponível e métrica de sucesso.
15
+ 2. Produzir estratégia, copy, campanha, conteúdo, aplicação de marca ou ativo proporcionais ao objetivo; distinguir fatos fornecidos de hipóteses. Copy de marketing ambígua permanece com Lúcia.
16
+ 3. Escalar Sarah somente se uma decisão de marca estiver ausente, contraditória ou precisar ser criada; um Brandbook aprovado não redireciona a entrega para Branding. Encaminhar script voltado a vendas para Aaron, estratégia empresarial/RevOps para Robert, website para Jonny, frontend de produto para Doug e regra visual central para Manu.