@zaip-ai/cli 4.9.0 → 5.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (180) hide show
  1. package/dist/services/adapter-hook-sources.d.ts +3 -0
  2. package/dist/services/adapter-hook-sources.d.ts.map +1 -1
  3. package/dist/services/adapter-hook-sources.js +3 -0
  4. package/dist/services/adapter-hook-sources.js.map +1 -1
  5. package/dist/services/adapters.d.ts +1 -1
  6. package/dist/services/adapters.d.ts.map +1 -1
  7. package/dist/services/adapters.js +5 -2
  8. package/dist/services/adapters.js.map +1 -1
  9. package/dist/services/adapters.test.js +1 -1
  10. package/dist/services/adapters.test.js.map +1 -1
  11. package/dist/services/codex-conversation-lifecycle-hook.d.ts.map +1 -1
  12. package/dist/services/codex-conversation-lifecycle-hook.js +16 -6
  13. package/dist/services/codex-conversation-lifecycle-hook.js.map +1 -1
  14. package/dist/services/codex-hook-activation.d.ts +1 -1
  15. package/dist/services/codex-hook-activation.d.ts.map +1 -1
  16. package/dist/services/codex-hook-activation.js +116 -10
  17. package/dist/services/codex-hook-activation.js.map +1 -1
  18. package/dist/services/codex-pre-tool-cli-capture-template.d.ts +2 -0
  19. package/dist/services/codex-pre-tool-cli-capture-template.d.ts.map +1 -0
  20. package/dist/services/codex-pre-tool-cli-capture-template.js +104 -0
  21. package/dist/services/codex-pre-tool-cli-capture-template.js.map +1 -0
  22. package/dist/services/codex-pre-tool-cloud-template.d.ts +2 -0
  23. package/dist/services/codex-pre-tool-cloud-template.d.ts.map +1 -0
  24. package/dist/services/codex-pre-tool-cloud-template.js +190 -0
  25. package/dist/services/codex-pre-tool-cloud-template.js.map +1 -0
  26. package/dist/services/codex-pre-tool-dependencies.test-support.d.ts +2 -0
  27. package/dist/services/codex-pre-tool-dependencies.test-support.d.ts.map +1 -0
  28. package/dist/services/codex-pre-tool-dependencies.test-support.js +9 -0
  29. package/dist/services/codex-pre-tool-dependencies.test-support.js.map +1 -0
  30. package/dist/services/codex-pre-tool-hook-fixture.test-support.d.ts +5 -0
  31. package/dist/services/codex-pre-tool-hook-fixture.test-support.d.ts.map +1 -0
  32. package/dist/services/codex-pre-tool-hook-fixture.test-support.js +19 -0
  33. package/dist/services/codex-pre-tool-hook-fixture.test-support.js.map +1 -0
  34. package/dist/services/codex-pre-tool-hook-template-bootstrap.test.d.ts +2 -0
  35. package/dist/services/codex-pre-tool-hook-template-bootstrap.test.d.ts.map +1 -0
  36. package/dist/services/codex-pre-tool-hook-template-bootstrap.test.js +107 -0
  37. package/dist/services/codex-pre-tool-hook-template-bootstrap.test.js.map +1 -0
  38. package/dist/services/codex-pre-tool-hook-template.d.ts.map +1 -1
  39. package/dist/services/codex-pre-tool-hook-template.js +96 -210
  40. package/dist/services/codex-pre-tool-hook-template.js.map +1 -1
  41. package/dist/services/codex-pre-tool-hook-template.test.js +32 -80
  42. package/dist/services/codex-pre-tool-hook-template.test.js.map +1 -1
  43. package/dist/services/codex-pre-tool-host-context-template.d.ts +2 -0
  44. package/dist/services/codex-pre-tool-host-context-template.d.ts.map +1 -0
  45. package/dist/services/codex-pre-tool-host-context-template.js +139 -0
  46. package/dist/services/codex-pre-tool-host-context-template.js.map +1 -0
  47. package/dist/services/codex-pre-tool-support-template.d.ts.map +1 -1
  48. package/dist/services/codex-pre-tool-support-template.js +61 -101
  49. package/dist/services/codex-pre-tool-support-template.js.map +1 -1
  50. package/dist/services/codex-subagent-hook-template.d.ts +1 -1
  51. package/dist/services/codex-subagent-hook-template.d.ts.map +1 -1
  52. package/dist/services/codex-subagent-hook-template.js +13 -2
  53. package/dist/services/codex-subagent-hook-template.js.map +1 -1
  54. package/dist/services/codex-validation-runtime-template.d.ts.map +1 -1
  55. package/dist/services/codex-validation-runtime-template.js +10 -4
  56. package/dist/services/codex-validation-runtime-template.js.map +1 -1
  57. package/dist/services/runtime-template-test-support.d.ts +1 -0
  58. package/dist/services/runtime-template-test-support.d.ts.map +1 -1
  59. package/dist/services/runtime-template-test-support.js +23 -2
  60. package/dist/services/runtime-template-test-support.js.map +1 -1
  61. package/dist/services/runtime-template.test.js +4 -23
  62. package/dist/services/runtime-template.test.js.map +1 -1
  63. package/package.json +1 -1
  64. package/templates/.agents/README-ENG.md +49 -7
  65. package/templates/.agents/README.md +37 -10
  66. package/templates/.agents/config/agents/discovery.json +1 -1
  67. package/templates/.agents/dashboard/.zaip-managed.json +121 -73
  68. package/templates/.agents/dashboard/apps/frontend/dist/assets/{CostCalculationGuidePage-BW7Vy1cp.js → CostCalculationGuidePage-w6pjt4OM.js} +1 -1
  69. package/templates/.agents/dashboard/apps/frontend/dist/assets/{DashboardHelpDialog-Cp_hEVd8.js → DashboardHelpDialog-DhlntQcR.js} +76 -11
  70. package/templates/.agents/dashboard/apps/frontend/dist/assets/{PricingSettingsDialog-Prcs-ydy.js → PricingSettingsDialog-BHoZT2an.js} +1 -1
  71. package/templates/.agents/dashboard/apps/frontend/dist/assets/{ProjectSettingsPage-Cu40wAFF.js → ProjectSettingsPage-IcncIZ9Y.js} +1 -1
  72. package/templates/.agents/dashboard/apps/frontend/dist/assets/{TraceabilityWorkspace-Bh3YBd3C.js → TraceabilityWorkspace-C6rORjpr.js} +1 -1
  73. package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-uPnOBShc.js +68 -0
  74. package/templates/.agents/dashboard/apps/frontend/dist/assets/{dashboard-localization-CF7B1Hjn.js → dashboard-localization-DWXjEIgc.js} +49 -7
  75. package/templates/.agents/dashboard/apps/frontend/dist/assets/{icons-vendor-DOhy6D2-.js → icons-vendor-Hc9fp_gs.js} +1 -1
  76. package/templates/.agents/dashboard/apps/frontend/dist/assets/{index-qVSJnJ0_.js → index-BqeOEZW5.js} +2 -2
  77. package/templates/.agents/dashboard/apps/frontend/dist/assets/{react-vendor-CkPC-yMz.js → react-vendor-C9ta_O10.js} +1 -1
  78. package/templates/.agents/dashboard/apps/frontend/dist/assets/{traceability-BEdGoIDm.js → traceability-IcefoTOv.js} +1 -1
  79. package/templates/.agents/dashboard/apps/frontend/dist/index.html +5 -5
  80. package/templates/.agents/dashboard/apps/frontend/package.json +1 -1
  81. package/templates/.agents/dashboard/modules/cost-monitor/package.json +1 -1
  82. package/templates/.agents/dashboard/modules/cost-monitor/src/contracts.ts +10 -3
  83. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostFilters.run-page.test.ts +5 -1
  84. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostGroupsTable.period-values.test.tsx +2 -2
  85. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTables-keeps-legacy-codex-identity-fields-blank.test.ts +5 -5
  86. package/templates/.agents/dashboard/modules/cost-monitor/src/react/CostTables.test.ts +36 -43
  87. package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-monitor-loaders.ts +1 -0
  88. package/templates/.agents/dashboard/modules/cost-monitor/src/react/cost-table-formatters.ts +6 -4
  89. package/templates/.agents/dashboard/modules/cost-monitor/src/server/aggregate.ts +2 -2
  90. package/templates/.agents/dashboard/modules/cost-monitor/src/server/build-cost-monitor-projection.ts +1 -1
  91. package/templates/.agents/dashboard/modules/cost-monitor/src/server/build-cost-summary-projection.ts +11 -25
  92. package/templates/.agents/dashboard/modules/cost-monitor/src/server/cost-summary-defaults.ts +26 -0
  93. package/templates/.agents/dashboard/modules/operations/package.json +1 -1
  94. package/templates/.agents/dashboard/modules/operations/src/contracts.ts +11 -16
  95. package/templates/.agents/dashboard/modules/operations/src/planning-contracts.ts +14 -0
  96. package/templates/.agents/dashboard/modules/operations/src/react/DecisionTable.tsx +65 -0
  97. package/templates/.agents/dashboard/modules/operations/src/react/EntityTables.tsx +5 -71
  98. package/templates/.agents/dashboard/modules/operations/src/react/OperationsPage.tsx +10 -36
  99. package/templates/.agents/dashboard/modules/operations/src/react/operations-overview-period-filter.test.ts +7 -2
  100. package/templates/.agents/dashboard/modules/operations/src/react/use-operations-filter-sync.ts +66 -0
  101. package/templates/.agents/dashboard/modules/traceability/package.json +1 -1
  102. package/templates/.agents/dashboard/packages/branding/package.json +1 -1
  103. package/templates/.agents/dashboard/packages/contracts/package.json +1 -1
  104. package/templates/.agents/dashboard/packages/data-export/package.json +1 -1
  105. package/templates/.agents/dashboard/packages/local-runtime/dist/server.cjs +193 -191
  106. package/templates/.agents/dashboard/packages/local-runtime/dist/sqlite-read-model.cjs +169 -169
  107. package/templates/.agents/dashboard/packages/local-runtime/package.json +1 -1
  108. package/templates/.agents/dashboard/packages/local-runtime/server.mjs +193 -191
  109. package/templates/.agents/dashboard/packages/local-runtime/src/active-capture-failure.test.ts +38 -0
  110. package/templates/.agents/dashboard/packages/local-runtime/src/active-capture-failure.ts +35 -0
  111. package/templates/.agents/dashboard/packages/local-runtime/src/active-codex-telemetry.test.ts +53 -2
  112. package/templates/.agents/dashboard/packages/local-runtime/src/active-codex-telemetry.ts +18 -1
  113. package/templates/.agents/dashboard/packages/local-runtime/src/manifest-runs.ts +8 -2
  114. package/templates/.agents/dashboard/packages/local-runtime/src/server-capture-projection-order.test.ts +118 -0
  115. package/templates/.agents/dashboard/packages/local-runtime/src/server-cost-run-search.test.ts +90 -0
  116. package/templates/.agents/dashboard/packages/local-runtime/src/server-cost-run-search.ts +86 -0
  117. package/templates/.agents/dashboard/packages/local-runtime/src/server-operations-routes.ts +8 -1
  118. package/templates/.agents/dashboard/packages/local-runtime/src/server-projection-loaders.ts +13 -0
  119. package/templates/.agents/dashboard/packages/local-runtime/src/server-projections.ts +30 -74
  120. package/templates/.agents/dashboard/packages/local-runtime/src/server-route-handlers.ts +42 -0
  121. package/templates/.agents/dashboard/packages/local-runtime/src/server-routes.test.ts +60 -0
  122. package/templates/.agents/dashboard/packages/local-runtime/src/server-run-projections.test.ts +12 -2
  123. package/templates/.agents/dashboard/packages/local-runtime/src/server-telemetry-command.test.ts +29 -4
  124. package/templates/.agents/dashboard/packages/local-runtime/src/server-telemetry-refresh.ts +7 -0
  125. package/templates/.agents/dashboard/packages/local-runtime/src/server.test.ts +51 -54
  126. package/templates/.agents/dashboard/packages/local-runtime/src/server.ts +28 -45
  127. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-filter-matrix.test.ts +5 -0
  128. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-invocation-page.test.ts +49 -0
  129. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-cost-invocation-page.ts +44 -1
  130. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-query-cached-cost-page.ts +11 -10
  131. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-query-summary.ts +1 -1
  132. package/templates/.agents/dashboard/packages/local-runtime/src/sqlite-work-item-index.test.ts +18 -1
  133. package/templates/.agents/dashboard/packages/ui/package.json +1 -1
  134. package/templates/.agents/dashboard/tests/e2e/package.json +1 -1
  135. package/templates/.agents/design/.zaip-managed.json +3 -3
  136. package/templates/.agents/design/apps/catalog/package.json +1 -1
  137. package/templates/.agents/design/packages/local-runtime/package.json +1 -1
  138. package/templates/.agents/requirements/autonomous-assurance.md +11 -2
  139. package/templates/.agents/requirements/cloud-hostinger-autonomy.md +1 -1
  140. package/templates/.agents/requirements/comparative-audit.md +1 -1
  141. package/templates/.agents/requirements/context-engine.md +1 -1
  142. package/templates/.agents/requirements/cost-observability.md +1 -1
  143. package/templates/.agents/requirements/dashboard-launch.md +1 -1
  144. package/templates/.agents/requirements/data-export.md +1 -1
  145. package/templates/.agents/requirements/design-system.md +1 -1
  146. package/templates/.agents/requirements/execution-engine.md +1 -1
  147. package/templates/.agents/requirements/kanban-dashboard.md +1 -1
  148. package/templates/.agents/requirements/model-orchestration.md +1 -1
  149. package/templates/.agents/requirements/public-distribution.md +1 -1
  150. package/templates/.agents/requirements/software-architecture.md +1 -1
  151. package/templates/.agents/requirements/strategic-improvements.md +1 -1
  152. package/templates/.agents/requirements/work-lifecycle.md +2 -1
  153. package/templates/.agents/requirements/zaip-strategic-95.md +1 -1
  154. package/templates/.agents/rules/run-lifecycle-closure.md +2 -1
  155. package/templates/.agents/rules/workflow.md +1 -0
  156. package/templates/.agents/runtime/VERSION +1 -1
  157. package/templates/.agents/runtime/bin/zaip.mjs +1178 -764
  158. package/templates/.agents/runtime/checksums.sha256 +6 -6
  159. package/templates/.agents/runtime/manifest.json +1 -1
  160. package/templates/.agents/runtime/pnpm-lock.sha256 +1 -1
  161. package/templates/.agents/runtime/provenance.json +5 -5
  162. package/templates/.agents/runtime/sbom.cdx.json +59 -59
  163. package/templates/.agents/skills/zaip-skill-execution/SKILL.md +1 -1
  164. package/templates/.agents/skills/zaip-skill-execution/references/controlled-release-recovery.md +14 -0
  165. package/templates/.agents/skills/zaip-skill-execution/references/runtime-governance.md +1 -1
  166. package/templates/.agents/skills/zaip-skill-github-deploy/SKILL.md +5 -1
  167. package/templates/.agents/skills/zaip-skill-github-deploy/scripts/deploy-contract.mjs +12 -0
  168. package/templates/.agents/skills/zaip-skill-github-deploy/scripts/deploy-contract.test.mjs +25 -0
  169. package/templates/.agents/skills/zaip-skill-maintenance-enter/SKILL.md +23 -0
  170. package/templates/.agents/skills/zaip-skill-maintenance-enter/agents/openai.yaml +4 -0
  171. package/templates/.agents/skills/zaip-skill-maintenance-enter/scripts/maintenance.mjs +213 -0
  172. package/templates/.agents/skills/zaip-skill-maintenance-enter/scripts/maintenance.test.mjs +207 -0
  173. package/templates/.agents/skills/zaip-skill-maintenance-exit/SKILL.md +21 -0
  174. package/templates/.agents/skills/zaip-skill-maintenance-exit/agents/openai.yaml +4 -0
  175. package/templates/.agents/skills/zaip-skill-release-qualification/SKILL.md +2 -0
  176. package/templates/.agents/skills/zaip-skill-release-qualification/references/local-preparation.md +37 -8
  177. package/templates/.agents/zaip-aios/VERSION +1 -1
  178. package/templates/.agents/zaip-aios/guides/26-qualidade-e-release.md +38 -0
  179. package/templates/template-manifest.json +188 -116
  180. package/templates/.agents/dashboard/apps/frontend/dist/assets/cost-monitor-Co2Jiuzh.js +0 -68
@@ -52,11 +52,15 @@ function selectRoot(cwd) {
52
52
 
53
53
  if (process.argv[2] === "--capture-runner") {
54
54
  if (!selectRoot(process.cwd())) process.exit(0);
55
+ if (!(await activation?.hookPolicies?.(repositoryRoot))?.governance) process.exit(0);
55
56
  await runCaptureRunner(process.argv[3]);
56
57
  process.exit(0);
57
58
  }
58
59
  if (process.argv[2] === "--replay-pending") {
59
60
  if (!selectRoot(process.cwd())) process.exit(0);
61
+ const policy = await activation?.hookPolicies?.(repositoryRoot);
62
+ if (policy?.tracking) activation?.replayHookObservations?.(repositoryRoot);
63
+ if (!policy?.governance) { process.stdout.write(JSON.stringify({ attempted: 0, deferred: 0, pending: 0, disabled: true })); process.exit(0); }
60
64
  const files = (await fs.readdir(pendingRoot).catch(() => []))
61
65
  .filter((name) => /^[a-f0-9]{64}\\.json$/.test(name)).sort();
62
66
  const cursorPath = resolve(pendingRoot, ".replay-cursor");
@@ -87,6 +91,11 @@ try {
87
91
  const event = JSON.parse(raw);
88
92
  const cwd = text(event.cwd);
89
93
  if (cwd === null || !selectRoot(cwd)) process.exit(0);
94
+ const policy = await activation?.hookPolicies?.(repositoryRoot) ?? { governance: false, tracking: false, diagnostic: "policy_module_unavailable" };
95
+ activation?.recordPolicyDiagnostic?.(repositoryRoot, policy);
96
+ if (policy.tracking) activation?.recordHookObservation?.(repositoryRoot, event, policy.governance);
97
+ if (policy.tracking && event.hook_event_name === "SubagentStop") activation?.replayHookObservations?.(repositoryRoot);
98
+ if (!policy.governance) { process.stdout.write(JSON.stringify({})); process.exit(0); }
90
99
  const eventName = text(event.hook_event_name);
91
100
  activation?.recordActivation(repositoryRoot, event);
92
101
  const lifecycleEvent =
@@ -281,7 +290,7 @@ async function runCaptureRunner(receiptPath, replay = false) {
281
290
  receipt.attempts = (receipt.attempts ?? 0) + 1;
282
291
  receipt.updated_at = new Date().toISOString();
283
292
  await atomicSave(receiptPath, receipt);
284
- const outcome = await capture(cli, args);
293
+ const outcome = await capture(cli, args);
285
294
  let result;
286
295
  try { result = JSON.parse(outcome.stdout); } catch { result = null; }
287
296
  const runId = result?.run?.run_id ?? result?.run?.id;
@@ -308,7 +317,9 @@ async function runCaptureRunner(receiptPath, replay = false) {
308
317
  }
309
318
 
310
319
  async function capture(cli, args) {
311
- const child = spawn(process.execPath, [cli, ...args], { cwd: repositoryRoot, windowsHide: true, stdio: ["ignore", "pipe", "pipe"] });
320
+ const policy = await activation?.hookPolicies?.(repositoryRoot);
321
+ const child = spawn(process.execPath, [cli, ...args], { cwd: repositoryRoot, windowsHide: true,
322
+ env: { ...process.env, ZAIP_HOOK_TRACKING_ENABLED: policy?.tracking ? "true" : "false" }, stdio: ["ignore", "pipe", "pipe"] });
312
323
  let stdout = "", overflow = false;
313
324
  child.stdout.on("data", chunk => { stdout += String(chunk); if (stdout.length > 262144) { overflow = true; stdout = ""; child.kill(); } });
314
325
  child.stderr.resume();
@@ -1 +1 @@
1
- {"version":3,"file":"codex-subagent-hook-template.js","sourceRoot":"","sources":["../../src/services/codex-subagent-hook-template.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,6BAA6B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsX5C,CAAC"}
1
+ {"version":3,"file":"codex-subagent-hook-template.js","sourceRoot":"","sources":["../../src/services/codex-subagent-hook-template.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,6BAA6B,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiY5C,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"codex-validation-runtime-template.d.ts","sourceRoot":"","sources":["../../src/services/codex-validation-runtime-template.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,eAAO,MAAM,gCAAgC,QAoC5C,CAAC"}
1
+ {"version":3,"file":"codex-validation-runtime-template.d.ts","sourceRoot":"","sources":["../../src/services/codex-validation-runtime-template.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,eAAO,MAAM,gCAAgC,QA0C5C,CAAC"}
@@ -23,16 +23,22 @@ export async function reviewedValidationRuntimePaths(command, tokenizeLiteralCom
23
23
  typeof configured.executable !== "string" || !isAbsolute(configured.executable)) return [];
24
24
  const expected = resolve(process.env.USERPROFILE, ".cache/codex-runtimes/codex-primary-runtime/dependencies/node/bin/node.exe");
25
25
  if (resolve(configured.executable).toLowerCase() !== expected.toLowerCase()) return [];
26
+ // Windows accepts either separator spelling of the same configured literal.
27
+ // Do not admit aliases, traversal or another executable by realpath alone.
28
+ const configuredLiteral = value => typeof value === "string" &&
29
+ value.replaceAll("/", "\\").toLowerCase() === configured.executable.replaceAll("/", "\\").toLowerCase();
26
30
  const directVersion = tokens.length === 2 && tokens[0] === configured.executable && tokens[1] === "--version";
27
31
  const directPreflight = tokens.length === 3 && tokens[0] === configured.executable &&
28
32
  /^packages[\\/]specs[\\/]qualify-proportional-v1\.mjs$/.test(tokens[1]) &&
29
33
  tokens[2] === "preflight";
30
34
  const configuredLauncher = tokens[0] === configured.executable;
31
- const validationExecutable = validationPath === configured.executable &&
32
- (configuredLauncher || /^(?:node|node\.exe)$/i.test(tokens[0])) &&
33
- command.split(configured.executable).length === (configuredLauncher ? 3 : 2);
35
+ const validationExecutable = configuredLiteral(validationPath) &&
36
+ (tokens[3] === "execute"
37
+ ? tokens[0] === validationPath
38
+ : configuredLauncher || /^(?:node|node\.exe)$/i.test(tokens[0])) &&
39
+ command.split(validationPath).length === (tokens[0] === validationPath ? 3 : 2);
34
40
  if (!directVersion && !directPreflight && !validationExecutable) return [];
35
- try { return await realpath(configured.executable) === await realpath(expected) ? [configured.executable] : []; }
41
+ try { return await realpath(configured.executable) === await realpath(expected) ? [validationExecutable ? validationPath : configured.executable] : []; }
36
42
  catch { return []; }
37
43
  }
38
44
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"codex-validation-runtime-template.js","sourceRoot":"","sources":["../../src/services/codex-validation-runtime-template.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,MAAM,CAAC,MAAM,gCAAgC,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoCzD,CAAC"}
1
+ {"version":3,"file":"codex-validation-runtime-template.js","sourceRoot":"","sources":["../../src/services/codex-validation-runtime-template.ts"],"names":[],"mappings":"AAAA,wEAAwE;AACxE,MAAM,CAAC,MAAM,gCAAgC,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA0CzD,CAAC"}
@@ -1,3 +1,4 @@
1
1
  export declare function run(runtime: string, cwd: string, arguments_: readonly string[]): Record<string, unknown>;
2
2
  export declare function snapshotTree(root: string): Promise<Record<string, string>>;
3
+ export declare function testTemplate(roots: string[], name: string, files: readonly (readonly [path: string, content: string])[]): Promise<string>;
3
4
  //# sourceMappingURL=runtime-template-test-support.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-template-test-support.d.ts","sourceRoot":"","sources":["../../src/services/runtime-template-test-support.ts"],"names":[],"mappings":"AAMA,wBAAgB,GAAG,CACjB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,SAAS,MAAM,EAAE,GAC5B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAezB;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAchF"}
1
+ {"version":3,"file":"runtime-template-test-support.d.ts","sourceRoot":"","sources":["../../src/services/runtime-template-test-support.ts"],"names":[],"mappings":"AAQA,wBAAgB,GAAG,CACjB,OAAO,EAAE,MAAM,EACf,GAAG,EAAE,MAAM,EACX,UAAU,EAAE,SAAS,MAAM,EAAE,GAC5B,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAezB;AAED,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAchF;AACD,wBAAsB,YAAY,CAChC,KAAK,EAAE,MAAM,EAAE,EACf,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,SAAS,CAAC,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC,EAAE,GAC3D,OAAO,CAAC,MAAM,CAAC,CAwBjB"}
@@ -1,6 +1,8 @@
1
1
  import { spawnSync } from "node:child_process";
2
- import { readdir, readFile } from "node:fs/promises";
3
- import { relative, resolve } from "node:path";
2
+ import { mkdir, mkdtemp, readdir, readFile, writeFile } from "node:fs/promises";
3
+ import { tmpdir } from "node:os";
4
+ import { dirname, join, relative, resolve } from "node:path";
5
+ import { digestRuntimeFiles, sha256 } from "./template-manifest.js";
4
6
  let turnSequence = 0;
5
7
  export function run(runtime, cwd, arguments_) {
6
8
  const result = spawnSync(process.execPath, [runtime, ...arguments_], {
@@ -29,4 +31,23 @@ export async function snapshotTree(root) {
29
31
  (await readFile(path)).toString("base64"),
30
32
  ])));
31
33
  }
34
+ export async function testTemplate(roots, name, files) {
35
+ const root = await mkdtemp(join(tmpdir(), `zaip-${name}-template-`));
36
+ roots.push(root);
37
+ const records = await Promise.all(files.map(async ([path, content]) => {
38
+ await mkdir(dirname(resolve(root, path)), { recursive: true });
39
+ await writeFile(resolve(root, path), content, "utf8");
40
+ return { path, sha256: sha256(content) };
41
+ }));
42
+ await writeFile(resolve(root, "template-manifest.json"), `${JSON.stringify({
43
+ schemaVersion: 1,
44
+ templateVersion: "2.2.0",
45
+ minimumCliVersion: "2.2.0",
46
+ source: "test",
47
+ sourceFilesSha256: sha256("test"),
48
+ runtimeFilesSha256: digestRuntimeFiles([]),
49
+ files: records,
50
+ })}\n`, "utf8");
51
+ return root;
52
+ }
32
53
  //# sourceMappingURL=runtime-template-test-support.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-template-test-support.js","sourceRoot":"","sources":["../../src/services/runtime-template-test-support.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAE9C,IAAI,YAAY,GAAG,CAAC,CAAC;AAErB,MAAM,UAAU,GAAG,CACjB,OAAe,EACf,GAAW,EACX,UAA6B;IAE7B,MAAM,MAAM,GAAG,SAAS,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,EAAE;QACnE,GAAG;QACH,QAAQ,EAAE,MAAM;QAChB,WAAW,EAAE,IAAI;QACjB,GAAG,EAAE;YACH,GAAG,OAAO,CAAC,GAAG;YACd,eAAe,EAAE,8BAA8B;YAC/C,aAAa,EAAE,yBAAyB,EAAE,YAAY,EAAE;SACzD;KACF,CAAC,CAAC;IACH,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,MAAM,IAAI,KAAK,CAAC,2BAA2B,MAAM,CAAC,MAAM,MAAM,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;IAClG,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAA4B,CAAC;AAC9D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAAY;IAC7C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;IAC9E,MAAM,KAAK,GAAG,OAAO;SAClB,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;SACjC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,CAAC;SACrD,IAAI,EAAE,CAAC;IACV,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,OAAO,CAAC,GAAG,CACf,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,EAAE,CAAC;QACxB,QAAQ,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,EAAE,GAAG,CAAC;QAC1C,CAAC,MAAM,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;KAC1C,CAAC,CACH,CACF,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"runtime-template-test-support.js","sourceRoot":"","sources":["../../src/services/runtime-template-test-support.ts"],"names":[],"mappings":"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"}
@@ -7,7 +7,7 @@ import { afterEach, describe, expect, it } from "vitest";
7
7
  import { seedVerifiedFixtureIdentity } from "./developer-identity-fixture.js";
8
8
  import { doctorProject } from "./doctor.js";
9
9
  import { installAgentsTemplate } from "./install-agents-template.js";
10
- import { run, snapshotTree } from "./runtime-template-test-support.js";
10
+ import { run, snapshotTree, testTemplate } from "./runtime-template-test-support.js";
11
11
  import { digestRuntimeFiles, loadTemplate, sha256 } from "./template-manifest.js";
12
12
  const packageRoot = resolve(dirname(fileURLToPath(import.meta.url)), "../..");
13
13
  const templateDirectory = resolve(packageRoot, "templates");
@@ -128,7 +128,7 @@ describe("public lifecycle runtime template", { timeout: 90_000 }, () => {
128
128
  it("seeds automatic deploy mode silently and preserves project-owned preferences on force upgrade", async () => {
129
129
  const policyPath = ".agents/config/deploy-policy.json";
130
130
  const defaults = '{"schema_version":1,"default_mode":"auto","default_scope":"current-work"}\n';
131
- const template = await testTemplate("deploy-mode", [
131
+ const template = await testTemplate(roots, "deploy-mode", [
132
132
  [".agents/config/project.yaml", "zaip:\n enabled: true\n"],
133
133
  [policyPath, defaults],
134
134
  ]);
@@ -157,7 +157,7 @@ describe("public lifecycle runtime template", { timeout: 90_000 }, () => {
157
157
  await expect(readFile(resolve(root, policyPath), "utf8")).resolves.toBe(defaults);
158
158
  });
159
159
  it("installs without the retired skill and upgrades only the lock-managed copy", async () => {
160
- const oldTemplate = await testTemplate("legacy", [
160
+ const oldTemplate = await testTemplate(roots, "legacy", [
161
161
  [".agents/config/project.yaml", "zaip:\n enabled: true\n"],
162
162
  [".agents/skills/zaip-skill-github-npm-deploy/SKILL.md", "managed retired skill\n"],
163
163
  [
@@ -165,7 +165,7 @@ describe("public lifecycle runtime template", { timeout: 90_000 }, () => {
165
165
  "managed retired adapter\n",
166
166
  ],
167
167
  ]);
168
- const currentTemplate = await testTemplate("current", [
168
+ const currentTemplate = await testTemplate(roots, "current", [
169
169
  [".agents/config/project.yaml", "zaip:\n enabled: true\n"],
170
170
  ]);
171
171
  const freshRoot = await mkdtemp(join(tmpdir(), "zaip-retired-skill-fresh-"));
@@ -376,23 +376,4 @@ describe("public lifecycle runtime template", { timeout: 90_000 }, () => {
376
376
  });
377
377
  });
378
378
  });
379
- async function testTemplate(name, files) {
380
- const root = await mkdtemp(join(tmpdir(), `zaip-${name}-template-`));
381
- roots.push(root);
382
- const records = await Promise.all(files.map(async ([path, content]) => {
383
- await mkdir(dirname(resolve(root, path)), { recursive: true });
384
- await writeFile(resolve(root, path), content, "utf8");
385
- return { path, sha256: sha256(content) };
386
- }));
387
- await writeFile(resolve(root, "template-manifest.json"), `${JSON.stringify({
388
- schemaVersion: 1,
389
- templateVersion: "2.2.0",
390
- minimumCliVersion: "2.2.0",
391
- source: "test",
392
- sourceFilesSha256: sha256("test"),
393
- runtimeFilesSha256: digestRuntimeFiles([]),
394
- files: records,
395
- })}\n`, "utf8");
396
- return root;
397
- }
398
379
  //# sourceMappingURL=runtime-template.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-template.test.js","sourceRoot":"","sources":["../../src/services/runtime-template.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime-template.test.js","sourceRoot":"","sources":["../../src/services/runtime-template.test.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@zaip-ai/cli",
3
- "version": "4.9.0",
3
+ "version": "5.0.0",
4
4
  "description": "CLI oficial para instalar e configurar o ZAIP-AIOS em qualquer repositório",
5
5
  "type": "module",
6
6
  "license": "SEE LICENSE IN LICENSE",
@@ -6,11 +6,11 @@ English | [Português](README.md)
6
6
 
7
7
  ## Quick overview
8
8
 
9
- > **Approved v4 target, not a shipped guarantee:** the Codex-native intake,
10
- > subagent, scheduling, replanning, closure, and numeric display rules below
11
- > still require implementation and qualification in the exact candidate and
12
- > installed npm package. The [v4 lifecycle guide](zaip-aios/guides/28-lifecycle-completo.md#contrato-aprovado-para-a-v4-a-implementar-e-qualificar)
13
- > distinguishes this target from current behavior and lists observable gates.
9
+ > **Source, candidate, and publication:** this README describes the checkout's
10
+ > contracts and features. The [evolution matrix](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/v50-documentacao-editorial.md)
11
+ > identifies implementation and evidence. Local qualification, consumer hook
12
+ > activation, GitHub Release, and npm require separate verification; documenting
13
+ > a contract does not replace observation in the installed package.
14
14
 
15
15
  The [Codex-native compatibility contract](zaip-aios/guides/28-lifecycle-completo.md#fronteiras-nativas-e-prova-de-compatibilidade)
16
16
  separates subagents, hooks, scheduling, and installer requirements. An abrupt
@@ -68,7 +68,31 @@ This README and the [handbook](zaip-aios/INDEX.md) describe this repository's so
68
68
 
69
69
  Documentation changes do not approve a release. Consult the [qualification-limits record](https://github.com/zaip-ai/zaip-aios/blob/main/docs/PRODUCTION-COMMERCIAL-READINESS.md#limites-conhecidos-da-qualificação) before promoting code; local tests, parity, CI, and production validation must be proven separately.
70
70
 
71
- For v3 delivery, the complete suite runs in signed local preparation (`full-v2`). GitHub verifies the exact package, installation and publication without repeating source tests on every push. Activation requires full local qualification and enrolled trust. One automatic installation smoke precedes npm publication; source checks and the remote matrix are manual, with no private-draft pilot. See the [quality and release guide](zaip-aios/guides/26-qualidade-e-release.md). Historical telemetry gaps remain explicit, without invented values or waived tests for new data.
71
+ Signed local preparation defaults to `essential-v3`; `full-v2` is an explicitly selected extended qualification. Lint and generated-text normalization run before the build; canonical changes are checked after every gate with the stage and affected paths in the diagnostic. After local checks, pushing to `main` triggers `pre-main-candidate.yml` for integrity, lint, types, commit identity, and impact-selected regressions. Release requires successful CI on the exact SHA. The publisher verifies signed artifacts, runs a Linux package smoke before npm publication, and confirms registry integrity; extended post-publication installation is optional. See the [quality and release guide](zaip-aios/guides/26-qualidade-e-release.md). Historical telemetry gaps stay explicit, without invented values or waived tests for new data.
72
+
73
+ Before freezing the candidate, synchronize the tracked runtime, server, and bundles as well. Qualification rejects drift in these files after each gate. In pre-main, the public group prepares and checks distribution before other tests while preserving selection, authenticated caching, and failure recording; generated outputs remain subject to the clean-checkout requirement.
74
+
75
+ Published history includes [Release v4.9](https://github.com/zaip-ai/zaip-aios/releases/tag/v4.9). Later changes are identified in the [evolution matrix](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/v50-documentacao-editorial.md); they do not retroactively change the published package.
76
+
77
+ ### Reliability, efficiency, and maintenance
78
+
79
+ The 5.0 line brings together causal recovery and [resumable delivery](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/v50-deploy-retomavel.md) with [preflight and rework prevention](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/v50-retrabalho-e-publicacao.md),
80
+ risk-based tests, authenticated caching, batched telemetry with deduplication,
81
+ and proportional editorial review. The [native consumer pilot](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/v50-consumidor-nativo.md)
82
+ observed all four hooks on Windows and fixed Stop replay to preserve the final
83
+ decision summary. The [documentation matrix](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/v50-documentacao-editorial.md)
84
+ maps all ten work areas to their evidence; each publication still requires the
85
+ exact TGZ, main CI, signed artifacts, and npm integrity.
86
+
87
+ Execution uses preflight before materializing work, recovery with exact identity and review, checkpoints to avoid repetition, and tests selected by impact. Validation batches share preparation for the same candidate; authenticated cache reuse requires trusted authority, a valid signature, and matching identity. A local cache does not imply an approved HIT or measured savings.
88
+
89
+ Creating a SPEC in `draft` persists its definition and blueprints without delivery Tasks. `ready` materializes the DAG with `planned` Tasks; `execute` starts the smallest authorized unit. Ten blueprints describe ten planned pieces of work, but do not prove that ten Tasks have started or completed.
90
+
91
+ An explicitly editorial `lite` Task may use `README.md`, `README-ENG.md`, or Markdown in a narrow `docs/` scope such as `docs/quality/**`. It still requires a candidate, check, Evidence, review, and finalizer. Code, configuration, agent controls, sensitive data, and `standard`/`critical` risk retain the full process. The broad `docs/**` scope does not grant this exception.
92
+
93
+ The `zaip-aios-full-access` profile permits configured external read, write, execution, working-directory, and network access. Secret, destructive-operation, lifecycle-authority, restricted-subagent, and computer power/session protections remain. Explicitly authorized maintenance uses `node .agents/skills/zaip-skill-maintenance-enter/scripts/maintenance.mjs enter`; reactivate with the same script and `exit`. Tracking remains enabled; configuration alone does not prove the four native hook events.
94
+
95
+ See the [change, command, evidence, and limitation matrix](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/v50-documentacao-editorial.md) and [operations runbook](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/v50-task10-operations-runbook.md). No general 30% speed gain has been demonstrated: the local 160-sample comparison preserved integrity, but intake p95 with three writers increased by 18.6%. Final production assessment depends on the consumer and publication of the exact candidate.
72
96
 
73
97
  ## One-command installation
74
98
 
@@ -849,7 +873,13 @@ Both profiles retain compensating layers that reduce risk, but do not replace th
849
873
  - subagents with bounded responsibilities and scopes, plus hashed adapters, framework lock, and regression gates;
850
874
  - remaining operating-system controls, such as ACLs, account privileges, and host policies.
851
875
 
852
- The `PreToolUse` security hook also remains active in the full-access profile without reducing its native permissions; it blocks destructive classes, secrets, publication, and elevation without authorization. Subagent lifecycle hooks remain active for defense in depth and attribution/telemetry. Browser, Computer Use, MCPs, and other integrations have their own surfaces and should be enabled and used only when necessary. For strong isolation against scope errors or malicious code, use the restricted profile and, when the risk warrants it, a dedicated account, VM, or external network and filesystem controls.
876
+ With `zaip.enabled: true`, the `PreToolUse` security hook also remains active in the full-access profile without reducing its native permissions; it blocks destructive classes, secrets, publication, and elevation without authorization. Subagent lifecycle hooks remain active for defense in depth and attribution/telemetry. Browser, Computer Use, MCPs, and other integrations have their own surfaces and should be enabled and used only when necessary. For strong isolation against scope errors or malicious code, use the restricted profile and, when the risk warrants it, a dedicated account, VM, or external network and filesystem controls.
877
+
878
+ The four events (`PreToolUse`, `SubagentStart`, `SubagentStop`, and `Stop`) use independent controls in `.agents/config/project.yaml`: `zaip.enabled` controls ZAIP rules, while `tracking.enabled` controls telemetry collection. With ZAIP disabled and tracking enabled, observation continues without requiring a Task, Execution, or finalizer. Disabling tracking preserves existing records. Configuration is read again on the next invocation; a hook disabled in the Codex interface must be enabled there to execute. See the [control contract and validation matrix](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/hook-independent-controls.md).
879
+
880
+ PreToolUse evaluates filesystem and network separately from the configured profile. The full-access principal can use canonical external paths; writes retain authority and writer-claim requirements, and subagents retain their restrictions. Recovery of observed failures is evaluated before finalizer delegation, preserving unknown history as unavailable. See the [path and recovery contract](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/hook-full-access-paths.md).
881
+
882
+ For authorized maintenance, use [$zaip-skill-maintenance-enter](skills/zaip-skill-maintenance-enter/SKILL.md), then [$zaip-skill-maintenance-exit](skills/zaip-skill-maintenance-exit/SKILL.md). These skills change only the controls, keep tracking enabled, and preserve configuration edits made during the work. The toggle applies to the whole project; coordinate concurrent chats. Exit reactivates ZAIP and requires a real invocation to verify the hook and canonical observation.
853
883
 
854
884
  The [complete ZAIP-AIOS permission-profile security guide](zaip-aios/guides/10-seguranca.md) documents the threat model, allow/deny matrix, layers, limitations, safe operation, rollout, rollback, and validation commands.
855
885
 
@@ -880,3 +910,15 @@ node .agents/skills/criar-pasta-obsidian/scripts/generate-obsidian-vault.mjs
880
910
  ```
881
911
 
882
912
  The [ZAIP traceability Obsidian guide](https://github.com/zaip-ai/zaip-aios/blob/main/guide/CRIAR-PASTA-OBSIDIAN.md) documents application installation, opening the folder as a vault, generating a single Task, and updating the projection after `git pull`.
913
+
914
+ ## Branches, worktrees, and the current release
915
+
916
+ Candidate validation uses a detached checkout outside the repository, under the
917
+ system temporary directory with prefix `zaip-candidate-<project>-`. Cleanup
918
+ verifies ownership and preserves the working checkout.
919
+
920
+ A branch holds a commit history; a worktree is another checkout directory. A standalone Task or serial PRD/SPEC uses the shared checkout claimed by `zaip task workspace`, without requiring either. Eligible independent parallel work receives an isolated checkout. Closing an isolated front preserves verified local backups and snapshots under `.local/backup-branchs` and `.local/backup-worktrees`, tests restoration, then closes the branch/worktree. Unattributed shared changes or invalid backups block cleanup until reconciliation. Backups are Git-ignored; their deletion is manual.
921
+
922
+ `.agents/config/release-cycle.json` defines the executable release. Future PRDs/SPECs may remain draft; starting requires the current cycle. Publication reconciles active work, freezes and audits the exact candidate, runs local checks, pushes only `main`, and waits for successful CI on that SHA before Release. No remote candidate branch is created. Tag, GitHub Release, npm, and any applicable provider deployment have separate evidence.
923
+
924
+ The release coordinator may remain active during publication and cycle advance only through supported modes: an integrated root with explicit frozen IDs and `release_mode: integrated_task`, or delegated SPEC coordination with verified ancestry. Other current Tasks must be terminal. The gate verifies candidate records; the coordinator completes Evidence, applicable review, and Gui after publication proof. Simple coordination must finish before audit. See the [release contracts and commands](zaip-aios/guides/26-qualidade-e-release.md#ciclo-corrente-limpeza-e-ci-da-main-antes-da-release). Do not mark a Task completed before its finalizer just to publish.
@@ -6,12 +6,11 @@
6
6
 
7
7
  ## Visão rápida
8
8
 
9
- > **Contrato-alvo da v4.0:** as decisões de fluxo Codex-native, subagentes, fila,
10
- > replanejamento e apresentação de métricas descritas abaixo estão aprovadas para
11
- > implementação. Esta revisão documental não comprova que o runtime, os hooks,
12
- > o Dashboard ou o pacote publicado já as executem; cada garantia exige teste
13
- > no candidato exato e no consumidor instalado. O contrato completo está no
14
- > [guia de lifecycle v4](zaip-aios/guides/28-lifecycle-completo.md#contrato-aprovado-para-a-v4-a-implementar-e-qualificar).
9
+ > **Fonte, candidato e publicação:** este README descreve os contratos e recursos
10
+ > do checkout. A [matriz de evolução](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/v50-documentacao-editorial.md)
11
+ > identifica a implementação e suas provas. Qualificação local, ativação dos
12
+ > hooks no consumidor, GitHub Release e npm são verificações separadas; um
13
+ > contrato documentado não substitui a observação no pacote instalado.
15
14
 
16
15
  O [contrato de compatibilidade Codex-native](zaip-aios/guides/28-lifecycle-completo.md#fronteiras-nativas-e-prova-de-compatibilidade)
17
16
  explicita o que depende de subagentes, hooks, automação agendada e do
@@ -73,9 +72,31 @@ Este README e o [handbook](zaip-aios/INDEX.md) descrevem o código-fonte deste r
73
72
 
74
73
  A atualização documental não aprova uma release. Consulte o [registro de limites de qualificação](https://github.com/zaip-ai/zaip-aios/blob/main/docs/PRODUCTION-COMMERCIAL-READINESS.md#limites-conhecidos-da-qualificação) antes de promover o código; testes locais, paridade, CI e validação em produção devem ser comprovados separadamente.
75
74
 
76
- A preparação local assinada usa `essential-v3` por padrão; `full-v2` é uma qualificação estendida explícita. Após os checks locais, o envio à `main` dispara `pre-main-candidate.yml`, com integridade, lint, tipos, identidade dos commits e regressões por impacto. A Release exige esse CI verde no SHA exato. O publicador verifica os artefatos assinados, executa um smoke Linux do pacote antes do npm e confirma a integridade no registry; a instalação estendida após publicação é opcional. Veja o [guia de qualidade e release](zaip-aios/guides/26-qualidade-e-release.md). Lacunas históricas de telemetria permanecem explícitas, sem inventar números ou dispensar testes de dados novos.
75
+ A preparação local assinada usa `essential-v3` por padrão; `full-v2` é uma qualificação estendida explícita. Lint e normalização são verificados antes do build; alterações canônicas são detectadas após cada gate, com etapa e arquivos no diagnóstico. Após os checks locais, o envio à `main` dispara `pre-main-candidate.yml`, com integridade, lint, tipos, identidade dos commits e regressões por impacto. A Release exige esse CI verde no SHA exato. O publicador verifica os artefatos assinados, executa um smoke Linux do pacote antes do npm e confirma a integridade no registry; a instalação estendida após publicação é opcional. Veja o [guia de qualidade e release](zaip-aios/guides/26-qualidade-e-release.md). Lacunas históricas de telemetria permanecem explícitas, sem inventar números ou dispensar testes de dados novos.
77
76
 
78
- As mudanças, decisões e provas da versão publicada estão consolidadas no [registro da v4.8](https://github.com/zaip-ai/zaip-aios/blob/main/docs/releases/v4.8.md), incluindo hooks exclusivos do projeto, continuidade da execução, limpeza das frentes e duração observada no Dashboard.
77
+ Antes de congelar o candidato, sincronize também runtime, servidor e bundles rastreados. A qualificação rejeita divergências desses arquivos após cada gate. No pre-main, o grupo público prepara e verifica a distribuição antes dos demais testes, preservando seleção, cache autenticado e registro de falhas; saídas geradas não dispensam a exigência de checkout limpo.
78
+
79
+ O histórico publicado inclui a [Release v4.9](https://github.com/zaip-ai/zaip-aios/releases/tag/v4.9). Mudanças posteriores estão identificadas na [matriz de evolução](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/v50-documentacao-editorial.md); elas não alteram retrospectivamente o pacote publicado.
80
+
81
+ ### Confiabilidade, eficiência e manutenção
82
+
83
+ A linha 5.0 reúne recuperação causal e [deploy retomável](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/v50-deploy-retomavel.md) com [preflight e prevenção de retrabalho](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/v50-retrabalho-e-publicacao.md), testes por risco,
84
+ cache autenticado, telemetria em grupos com deduplicação e revisão editorial
85
+ proporcional. O [piloto do consumidor nativo](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/v50-consumidor-nativo.md)
86
+ comprovou os quatro hooks no Windows e corrigiu o replay do Stop para preservar
87
+ o resumo da decisão final. A [matriz documental](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/v50-documentacao-editorial.md)
88
+ relaciona as dez frentes e suas provas; cada publicação exige ainda o TGZ exato,
89
+ CI da main, artefatos assinados e integridade no npm.
90
+
91
+ A execução usa preflight antes de materializar trabalho, recuperação com identidade e revisão exatas, checkpoints para evitar repetição e testes selecionados por impacto. O lote de validações compartilha preparo no mesmo candidato; cache autenticado só concede reutilização com autoridade confiável, assinatura e identidade válidas. Cache local presente não significa HIT aprovado nem economia medida.
92
+
93
+ Criar uma SPEC em `draft` persiste a definição e seus blueprints, sem Tasks de entrega. `ready` materializa a DAG com Tasks `planned`; `execute` inicia o menor grão autorizado. Dez blueprints descrevem dez trabalhos planejados, mas não comprovam dez Tasks iniciadas ou concluídas.
94
+
95
+ Uma Task `lite` explicitamente editorial pode usar `README.md`, `README-ENG.md` ou Markdown em um escopo estreito de `docs/`, como `docs/quality/**`. Ainda exige candidato, check, Evidence, revisão e finalizador. Código, configuração, controles de agente, dados sensíveis e risco `standard`/`critical` conservam o fluxo completo. O escopo amplo `docs/**` não concede essa exceção.
96
+
97
+ O perfil `zaip-aios-full-access` permite o acesso externo configurado de leitura, escrita, execução, diretório de trabalho e rede. Permanecem as proteções de segredos, operações destrutivas, autoridade de lifecycle, subagentes restritos e energia/sessão do computador. A manutenção explicitamente autorizada usa `node .agents/skills/zaip-skill-maintenance-enter/scripts/maintenance.mjs enter`; para reativar, use o mesmo script com `exit`. Tracking permanece ligado; a configuração não comprova sozinha os quatro eventos nativos dos hooks.
98
+
99
+ Consulte a [matriz de alterações, comandos, provas e limitações](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/v50-documentacao-editorial.md) e o [runbook operacional](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/v50-task10-operations-runbook.md). Não há ganho geral de 30% demonstrado: a comparação local de 160 amostras preservou integridade, mas o p95 de entrada com três escritores aumentou 18,6%. A avaliação final de produção depende do consumidor e da publicação do candidato exato.
79
100
 
80
101
  ## Instalação em um comando
81
102
 
@@ -871,12 +892,18 @@ isolamento nativo oferecido pelo perfil restrito:
871
892
  - subagentes com responsabilidades e escopos delimitados, além de adapters com hash, framework lock e gates de regressão;
872
893
  - controles remanescentes do sistema operacional, como ACLs, privilégios da conta e políticas do host.
873
894
 
874
- O hook de segurança `PreToolUse` também permanece ativo no perfil full-access, sem reduzir suas permissões nativas; ele bloqueia classes destrutivas, segredos, publicação e elevação sem autorização. Os hooks de lifecycle de subagentes permanecem ativos como
895
+ Com `zaip.enabled: true`, o hook de segurança `PreToolUse` também permanece ativo no perfil full-access, sem reduzir suas permissões nativas; ele bloqueia classes destrutivas, segredos, publicação e elevação sem autorização. Os hooks de lifecycle de subagentes permanecem ativos como
875
896
  defesa em profundidade e para atribuição/telemetria. Browser, Computer Use, MCPs e demais
876
897
  integrações têm superfícies próprias e devem ser habilitados e usados apenas quando necessários.
877
898
  Para isolamento forte contra erros de escopo ou código malicioso, use o perfil restrito e, quando
878
899
  o risco justificar, uma conta, VM ou controles externos de rede e filesystem dedicados.
879
900
 
901
+ Os quatro eventos (`PreToolUse`, `SubagentStart`, `SubagentStop` e `Stop`) usam controles independentes em `.agents/config/project.yaml`: `zaip.enabled` governa as regras do ZAIP e `tracking.enabled` governa a coleta de telemetria. Com ZAIP desativado e tracking ativado, a observação continua sem exigir Task, Execution ou finalizador. Desativar tracking preserva os dados já registrados. A configuração é relida na próxima invocação; um hook desabilitado na interface do Codex precisa ser habilitado nela para executar. Veja o [contrato e a matriz de validação dos controles](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/hook-independent-controls.md).
902
+
903
+ No PreToolUse, filesystem e rede são avaliados separadamente a partir do perfil configurado. O principal full-access pode usar caminhos externos canônicos; escritas mantêm a exigência de autoridade e claim, e subagentes conservam suas restrições. A recuperação de falhas observadas é avaliada antes da delegação ao finalizador, preservando histórico desconhecido como indisponível. Veja o [contrato de caminhos e recuperação](https://github.com/zaip-ai/zaip-aios/blob/main/docs/quality/hook-full-access-paths.md).
904
+
905
+ Para manutenção autorizada, use [$zaip-skill-maintenance-enter](skills/zaip-skill-maintenance-enter/SKILL.md) e, ao terminar, [$zaip-skill-maintenance-exit](skills/zaip-skill-maintenance-exit/SKILL.md). As skills alternam somente os controles, mantêm tracking ligado e preservam configurações editadas durante o trabalho. O toggle vale para todo o projeto; coordene chats concorrentes. A saída reativa ZAIP e exige uma chamada real para verificar o hook e a observação canônica.
906
+
880
907
  O modelo de ameaça, a matriz allow/deny, todas as camadas, limitações, operação segura,
881
908
  rollout, rollback e comandos de verificação estão documentados no
882
909
  [guia completo de segurança dos perfis ZAIP-AIOS](zaip-aios/guides/10-seguranca.md).
@@ -920,7 +947,7 @@ O [guia de Obsidian para rastreabilidade ZAIP](https://github.com/zaip-ai/zaip-a
920
947
 
921
948
  ## Branches, worktrees e release corrente
922
949
 
923
- Uma branch guarda uma linha de commits; um worktree é outra pasta de checkout. Editar uma Task avulsa ou um PRD/SPEC serial não precisa criar nenhum dos dois: `zaip task workspace TASK-ID --run RUN-ID` registra um escritor por vez no checkout compartilhado. Só frentes paralelas comprovadamente independentes recebem branch e worktree. Validação isolada curta usa checkout detached em `.local/worktrees/validation`.
950
+ Uma branch guarda uma linha de commits; um worktree é outra pasta de checkout. Editar uma Task avulsa ou um PRD/SPEC serial não precisa criar nenhum dos dois: `zaip task workspace TASK-ID --run RUN-ID` registra um escritor por vez no checkout compartilhado. Só frentes paralelas comprovadamente independentes recebem branch e worktree. A validação do candidato usa checkout detached temporário fora da raiz, no diretório temporário do sistema com prefixo `zaip-candidate-<projeto>-`; a limpeza verifica sua propriedade e preserva o checkout de trabalho.
924
951
 
925
952
  Ao encerrar frente isolada, o ZAIP inventaria arquivos, verifica bundle e snapshot locais em `.local/backup-branchs` e `.local/backup-worktrees`, testa restauração e só então fecha branch/worktree. Trabalho sem proveniência no checkout compartilhado ou backup inválido bloqueia a limpeza, com motivo para reconciliação. Os backups ficam ignorados pelo Git para consulta; a remoção deles é manual.
926
953
 
@@ -1,5 +1,5 @@
1
1
  {
2
- "_zaip_managed": "zaip-managed generated-do-not-edit source=agent-discovery version=4.9.0 sha256=3def7a2b43c1a751f8e68754ef94cb107a80b5d26e11f065af2b4cc145fc8897",
2
+ "_zaip_managed": "zaip-managed generated-do-not-edit source=agent-discovery version=5.0.0 sha256=3def7a2b43c1a751f8e68754ef94cb107a80b5d26e11f065af2b4cc145fc8897",
3
3
  "schema_version": 1,
4
4
  "source": {
5
5
  "path": ".agents/config/agents/catalog.yaml",