@deksden-com/dd-flow-cli 0.9.0-beta.16 → 0.9.0-beta.160

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 (670) hide show
  1. package/CHANGELOG.md +959 -0
  2. package/README.md +139 -10
  3. package/dist/build-info.json +8 -8
  4. package/dist/cli/argument-values.js +38 -0
  5. package/dist/cli/command-inputs.js +417 -0
  6. package/dist/cli/command-metadata.js +303 -0
  7. package/dist/cli/command-option-descriptions.js +192 -0
  8. package/dist/cli/completion-cli.js +70 -0
  9. package/dist/cli/completion.js +57 -0
  10. package/dist/cli/delivery.js +108 -0
  11. package/dist/cli/diagnostic-invocation.js +62 -0
  12. package/dist/cli/diagnostic.js +131 -0
  13. package/dist/cli/error-output.js +62 -0
  14. package/dist/cli/executor-onboarding.js +76 -0
  15. package/dist/cli/flows.js +29 -0
  16. package/dist/cli/harnesses.js +84 -0
  17. package/dist/cli/help.js +521 -19
  18. package/dist/cli/hook-ingress.js +89 -0
  19. package/dist/cli/input-preparation.js +193 -0
  20. package/dist/cli/interactive-invocation.js +33 -0
  21. package/dist/cli/interactive.js +114 -0
  22. package/dist/cli/memory-fix-invocation.js +52 -0
  23. package/dist/cli/memory-fix.js +100 -0
  24. package/dist/cli/memory-flow-admission.js +54 -0
  25. package/dist/cli/memory-init-invocation.js +85 -0
  26. package/dist/cli/memory-init.js +250 -0
  27. package/dist/cli/memory-storage-admission.js +54 -0
  28. package/dist/cli/memory-storage-qualification.js +105 -0
  29. package/dist/cli/memory-storage-transition.js +123 -0
  30. package/dist/cli/memory-upgrade.js +189 -0
  31. package/dist/cli/models.js +39 -0
  32. package/dist/cli/native-hook-ingress.js +94 -0
  33. package/dist/cli/native-hook-preparation.js +82 -0
  34. package/dist/cli/operator-profiles.js +61 -0
  35. package/dist/cli/output-options.js +35 -0
  36. package/dist/cli/response-file.js +72 -0
  37. package/dist/cli/run-cli.js +2020 -555
  38. package/dist/cli/runtime-maintenance-diagnostics.js +46 -0
  39. package/dist/cli/runtime-maintenance-ingress.js +52 -0
  40. package/dist/cli/runtime-process.js +153 -0
  41. package/dist/cli/setup.js +150 -0
  42. package/dist/cli.js +103 -2
  43. package/dist/domain/delivery-flows.js +8 -0
  44. package/dist/domain/diagnostic-aspects.js +103 -0
  45. package/dist/domain/diagnostic-flows.js +8 -0
  46. package/dist/domain/distill-flow.js +20 -0
  47. package/dist/domain/interactive-flow.js +1 -0
  48. package/dist/domain/memory-fix-flow.js +2 -0
  49. package/dist/domain/review-fix-flow.js +2 -0
  50. package/dist/domain/source-snapshot-flows.js +4 -0
  51. package/dist/domain/stage-catalog.js +1 -1
  52. package/dist/domain/stage-handler-identities.js +28 -0
  53. package/dist/harness-runtime/DD-ZCODE.md +112 -0
  54. package/dist/harness-runtime/OPENCODE-LICENSE.txt +24 -0
  55. package/dist/harness-runtime/bin/dd-agy.mjs +71 -0
  56. package/dist/harness-runtime/bin/dd-codex.mjs +27 -0
  57. package/dist/harness-runtime/bin/dd-droid.mjs +34 -0
  58. package/dist/harness-runtime/bin/dd-grok.mjs +50 -0
  59. package/dist/harness-runtime/bin/dd-opencode.mjs +22 -0
  60. package/dist/harness-runtime/bin/dd-zcode.mjs +95 -0
  61. package/dist/harness-runtime/lib/adapter-timeouts.d.mts +5 -0
  62. package/dist/harness-runtime/lib/adapter-timeouts.mjs +34 -0
  63. package/dist/harness-runtime/lib/agy-error-boundary.mjs +87 -0
  64. package/dist/harness-runtime/lib/agy-hooks.d.mts +1 -0
  65. package/dist/harness-runtime/lib/agy-hooks.mjs +9 -0
  66. package/dist/harness-runtime/lib/agy-native-inspection.mjs +225 -0
  67. package/dist/harness-runtime/lib/agy-native-inventory.mjs +19 -0
  68. package/dist/harness-runtime/lib/agy-native_pb.js +117 -0
  69. package/dist/harness-runtime/lib/agy-terminal-envelope.mjs +74 -0
  70. package/dist/harness-runtime/lib/agy-transcript-stream.mjs +54 -0
  71. package/dist/harness-runtime/lib/daemon-observation.d.mts +3 -0
  72. package/dist/harness-runtime/lib/daemon-observation.mjs +171 -0
  73. package/dist/harness-runtime/lib/daemon-operations.d.mts +2 -0
  74. package/dist/harness-runtime/lib/daemon-operations.mjs +512 -0
  75. package/dist/harness-runtime/lib/dd-agy-daemon.d.mts +7 -0
  76. package/dist/harness-runtime/lib/dd-agy-daemon.mjs +1362 -0
  77. package/dist/harness-runtime/lib/dd-agy.mjs +105 -0
  78. package/dist/harness-runtime/lib/dd-codex-daemon.d.mts +1 -0
  79. package/dist/harness-runtime/lib/dd-codex-daemon.mjs +271 -0
  80. package/dist/harness-runtime/lib/dd-codex.d.mts +1 -0
  81. package/dist/harness-runtime/lib/dd-codex.mjs +986 -0
  82. package/dist/harness-runtime/lib/dd-droid-daemon.mjs +155 -0
  83. package/dist/harness-runtime/lib/dd-droid.mjs +739 -0
  84. package/dist/harness-runtime/lib/dd-grok-daemon.d.mts +1 -0
  85. package/dist/harness-runtime/lib/dd-grok-daemon.mjs +667 -0
  86. package/dist/harness-runtime/lib/dd-grok.mjs +182 -0
  87. package/dist/harness-runtime/lib/dd-opencode-daemon.mjs +772 -0
  88. package/dist/harness-runtime/lib/dd-opencode.mjs +411 -0
  89. package/dist/harness-runtime/lib/dd-zcode-daemon.d.mts +1 -0
  90. package/dist/harness-runtime/lib/dd-zcode-daemon.mjs +845 -0
  91. package/dist/harness-runtime/lib/dd-zcode.mjs +1239 -0
  92. package/dist/harness-runtime/lib/delegation-instructions.d.mts +16 -0
  93. package/dist/harness-runtime/lib/delegation-instructions.mjs +179 -0
  94. package/dist/harness-runtime/lib/delivery-command.mjs +84 -0
  95. package/dist/harness-runtime/lib/dispatch-fence.mjs +14 -0
  96. package/dist/harness-runtime/lib/driver-recovery.mjs +121 -0
  97. package/dist/harness-runtime/lib/droid-observation.mjs +70 -0
  98. package/dist/harness-runtime/lib/entity-references.d.mts +2 -0
  99. package/dist/harness-runtime/lib/entity-references.mjs +9 -0
  100. package/dist/harness-runtime/lib/lease-renewal.d.mts +8 -0
  101. package/dist/harness-runtime/lib/lease-renewal.mjs +37 -0
  102. package/dist/harness-runtime/lib/lifecycle-command.d.mts +20 -0
  103. package/dist/harness-runtime/lib/lifecycle-command.mjs +273 -0
  104. package/dist/harness-runtime/lib/lifecycle-contract.d.mts +11 -0
  105. package/dist/harness-runtime/lib/lifecycle-contract.mjs +20 -0
  106. package/dist/harness-runtime/lib/managed-daemon.d.mts +16 -0
  107. package/dist/harness-runtime/lib/managed-daemon.mjs +698 -0
  108. package/dist/harness-runtime/lib/managed-flow-env.mjs +15 -0
  109. package/dist/harness-runtime/lib/model-observations.mjs +113 -0
  110. package/dist/harness-runtime/lib/native-children.d.mts +34 -0
  111. package/dist/harness-runtime/lib/native-children.mjs +265 -0
  112. package/dist/harness-runtime/lib/native-hook-command.d.mts +8 -0
  113. package/dist/harness-runtime/lib/native-hook-command.mjs +306 -0
  114. package/dist/harness-runtime/lib/native-request-proof.d.mts +2 -0
  115. package/dist/harness-runtime/lib/native-request-proof.mjs +65 -0
  116. package/dist/harness-runtime/lib/native-streams.mjs +38 -0
  117. package/dist/harness-runtime/lib/observation-clock.d.mts +18 -0
  118. package/dist/harness-runtime/lib/observation-clock.mjs +95 -0
  119. package/dist/harness-runtime/lib/opencode-plugin.mjs +112 -0
  120. package/dist/harness-runtime/lib/operation-context.mjs +5 -0
  121. package/dist/harness-runtime/lib/operation-errors.d.mts +16 -0
  122. package/dist/harness-runtime/lib/operation-errors.mjs +140 -0
  123. package/dist/harness-runtime/lib/operation-progress.d.mts +7 -0
  124. package/dist/harness-runtime/lib/operation-progress.mjs +118 -0
  125. package/dist/harness-runtime/lib/process-json.d.mts +5 -0
  126. package/dist/harness-runtime/lib/process-json.mjs +200 -0
  127. package/dist/harness-runtime/lib/process-snapshot.mjs +10 -0
  128. package/dist/harness-runtime/lib/provider-overload-policy.d.mts +23 -0
  129. package/dist/harness-runtime/lib/provider-overload-policy.mjs +242 -0
  130. package/dist/harness-runtime/lib/runner-events.mjs +202 -0
  131. package/dist/harness-runtime/lib/runner-lock.mjs +42 -0
  132. package/dist/harness-runtime/lib/session-settlement.mjs +30 -0
  133. package/dist/harness-runtime/lib/setup-progress.d.mts +9 -0
  134. package/dist/harness-runtime/lib/setup-progress.mjs +53 -0
  135. package/dist/harness-runtime/lib/tool-observations.d.mts +21 -0
  136. package/dist/harness-runtime/lib/tool-observations.mjs +238 -0
  137. package/dist/harness-runtime/lib/zcode-native-hook-ownership.mjs +109 -0
  138. package/dist/harness-runtime/lib/zcode-usage.mjs +55 -0
  139. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-1y4a697q.js +81 -0
  140. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-2ny4vxct.js +92 -0
  141. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-6mptkzbc.js +0 -0
  142. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-7x67cf1q.js +52 -0
  143. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-9rqn6x4v.js +16 -0
  144. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-9vdz0zwn.js +1661 -0
  145. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-ecs5ftka.js +1466 -0
  146. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-frbwqjmf.js +145 -0
  147. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-gne7h7mq.js +50 -0
  148. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-gx9wnkzr.js +105 -0
  149. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-m2eywc8w.js +0 -0
  150. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-nwcpakzx.js +12 -0
  151. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-q4g3afnw.js +623 -0
  152. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-qav6mfdz.js +0 -0
  153. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-sxt88q69.js +12 -0
  154. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-t1xa31vm.js +39 -0
  155. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-ve4aws36.js +103 -0
  156. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-vmytr4q8.js +4 -0
  157. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-vt9jbch8.js +36 -0
  158. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-vyas3vgt.js +0 -0
  159. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-wjyeq25y.js +30 -0
  160. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-xgnj2w4v.js +20 -0
  161. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-y2etg5bs.js +9 -0
  162. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-ydhz1zrh.js +238 -0
  163. package/dist/harness-runtime/vendor/opencode-client/chunks/service-probe-z6qdwcsf.js +62 -0
  164. package/dist/harness-runtime/vendor/opencode-client/contract.d.ts +1 -0
  165. package/dist/harness-runtime/vendor/opencode-client/contract.js +12 -0
  166. package/dist/harness-runtime/vendor/opencode-client/effect/api/api.d.ts +2806 -0
  167. package/dist/harness-runtime/vendor/opencode-client/effect/api/api.js +0 -0
  168. package/dist/harness-runtime/vendor/opencode-client/effect/api.d.ts +4 -0
  169. package/dist/harness-runtime/vendor/opencode-client/effect/api.js +0 -0
  170. package/dist/harness-runtime/vendor/opencode-client/effect/client.d.ts +2530 -0
  171. package/dist/harness-runtime/vendor/opencode-client/effect/client.js +15 -0
  172. package/dist/harness-runtime/vendor/opencode-client/effect/generated/client-error.d.ts +7 -0
  173. package/dist/harness-runtime/vendor/opencode-client/effect/generated/client-error.js +6 -0
  174. package/dist/harness-runtime/vendor/opencode-client/effect/generated/client.d.ts +2529 -0
  175. package/dist/harness-runtime/vendor/opencode-client/effect/generated/client.js +8 -0
  176. package/dist/harness-runtime/vendor/opencode-client/effect/generated/index.d.ts +2 -0
  177. package/dist/harness-runtime/vendor/opencode-client/effect/generated/index.js +12 -0
  178. package/dist/harness-runtime/vendor/opencode-client/effect/index.d.ts +35 -0
  179. package/dist/harness-runtime/vendor/opencode-client/effect/index.js +75 -0
  180. package/dist/harness-runtime/vendor/opencode-client/effect/rpc.d.ts +20 -0
  181. package/dist/harness-runtime/vendor/opencode-client/effect/rpc.js +11 -0
  182. package/dist/harness-runtime/vendor/opencode-client/effect/service.d.ts +90 -0
  183. package/dist/harness-runtime/vendor/opencode-client/effect/service.js +187 -0
  184. package/dist/harness-runtime/vendor/opencode-client/package.json +84 -0
  185. package/dist/harness-runtime/vendor/opencode-client/promise/api.d.ts +21 -0
  186. package/dist/harness-runtime/vendor/opencode-client/promise/api.js +0 -0
  187. package/dist/harness-runtime/vendor/opencode-client/promise/client.d.ts +252 -0
  188. package/dist/harness-runtime/vendor/opencode-client/promise/client.js +14 -0
  189. package/dist/harness-runtime/vendor/opencode-client/promise/generated/client-error.d.ts +8 -0
  190. package/dist/harness-runtime/vendor/opencode-client/promise/generated/client-error.js +6 -0
  191. package/dist/harness-runtime/vendor/opencode-client/promise/generated/client.d.ts +259 -0
  192. package/dist/harness-runtime/vendor/opencode-client/promise/generated/client.js +7 -0
  193. package/dist/harness-runtime/vendor/opencode-client/promise/generated/index.d.ts +3 -0
  194. package/dist/harness-runtime/vendor/opencode-client/promise/generated/index.js +79 -0
  195. package/dist/harness-runtime/vendor/opencode-client/promise/generated/types.d.ts +8932 -0
  196. package/dist/harness-runtime/vendor/opencode-client/promise/generated/types.js +70 -0
  197. package/dist/harness-runtime/vendor/opencode-client/promise/index.d.ts +6 -0
  198. package/dist/harness-runtime/vendor/opencode-client/promise/index.js +83 -0
  199. package/dist/harness-runtime/vendor/opencode-client/promise/rpc.d.ts +32 -0
  200. package/dist/harness-runtime/vendor/opencode-client/promise/rpc.js +7 -0
  201. package/dist/harness-runtime/vendor/opencode-client/promise/service.d.ts +24 -0
  202. package/dist/harness-runtime/vendor/opencode-client/promise/service.js +187 -0
  203. package/dist/harness-runtime/vendor/opencode-client/pty-handoff.d.ts +12 -0
  204. package/dist/harness-runtime/vendor/opencode-client/pty-handoff.js +14 -0
  205. package/dist/harness-runtime/vendor/opencode-client/rpc-runtime.d.ts +20 -0
  206. package/dist/harness-runtime/vendor/opencode-client/rpc-runtime.js +14 -0
  207. package/dist/harness-runtime/vendor/opencode-client/service-contender.d.ts +37 -0
  208. package/dist/harness-runtime/vendor/opencode-client/service-contender.js +10 -0
  209. package/dist/harness-runtime/vendor/opencode-client/service-probe.d.ts +70 -0
  210. package/dist/harness-runtime/vendor/opencode-client/service-probe.js +16 -0
  211. package/dist/harness-runtime/vendor/opencode-client/service-timing.d.ts +12 -0
  212. package/dist/harness-runtime/vendor/opencode-client/service-timing.js +10 -0
  213. package/dist/harness-runtime/vendor/opencode-client/service-version.d.ts +2 -0
  214. package/dist/harness-runtime/vendor/opencode-client/service-version.js +6 -0
  215. package/dist/harness-runtime/vendor/opencode-client/service.d.ts +52 -0
  216. package/dist/harness-runtime/vendor/opencode-client/service.js +1 -0
  217. package/dist/harness-runtime/vendor/opencode-client/shared-events.d.ts +11 -0
  218. package/dist/harness-runtime/vendor/opencode-client/shared-events.js +8 -0
  219. package/dist/harness-runtime/vendor/opencode-client/solid/connection.d.ts +37 -0
  220. package/dist/harness-runtime/vendor/opencode-client/solid/connection.js +10 -0
  221. package/dist/harness-runtime/vendor/opencode-client/solid/data.d.ts +211 -0
  222. package/dist/harness-runtime/vendor/opencode-client/solid/data.js +18 -0
  223. package/dist/harness-runtime/vendor/opencode-client/solid/index.d.ts +3 -0
  224. package/dist/harness-runtime/vendor/opencode-client/solid/index.js +32 -0
  225. package/dist/harness-runtime/vendor/opencode-client/solid/pty.d.ts +22 -0
  226. package/dist/harness-runtime/vendor/opencode-client/solid/pty.js +8 -0
  227. package/dist/harness-runtime/vendor/opencode-plugin.mjs +3 -0
  228. package/dist/protocol/local-files.js +18 -9
  229. package/dist/runtime/context.js +8 -4
  230. package/dist/schemas/agent-profile.schema.json +1 -1
  231. package/dist/schemas/code-review-decision.schema.json +9 -0
  232. package/dist/schemas/code-review-result.schema.json +1 -1
  233. package/dist/schemas/code-verification.schema.json +7 -5
  234. package/dist/schemas/code-work-batch.schema.json +2 -2
  235. package/dist/schemas/code-work-result.schema.json +2 -1
  236. package/dist/schemas/delivery-stage-result.schema.json +286 -0
  237. package/dist/schemas/diagnostic-stage-result.schema.json +354 -0
  238. package/dist/schemas/diagnostic-work-result.schema.json +296 -0
  239. package/dist/schemas/discovery-result.schema.json +184 -0
  240. package/dist/schemas/distill-stage-result.schema.json +667 -0
  241. package/dist/schemas/distill-work-result.schema.json +428 -0
  242. package/dist/schemas/execution-bundle.schema.json +215 -0
  243. package/dist/schemas/execution-settings.schema.json +162 -0
  244. package/dist/schemas/flow-descriptor.schema.json +54 -0
  245. package/dist/schemas/flow-run.schema.json +29 -0
  246. package/dist/schemas/harness-catalog.schema.json +80 -0
  247. package/dist/schemas/interactive-stage-result.schema.json +47 -0
  248. package/dist/schemas/interactive-work-result.schema.json +63 -0
  249. package/dist/schemas/mb-fix-stage-result.schema.json +93 -0
  250. package/dist/schemas/mb-init-compose-result.schema.json +457 -0
  251. package/dist/schemas/mb-init-discover-result.schema.json +500 -0
  252. package/dist/schemas/mb-init-finish-result.schema.json +422 -0
  253. package/dist/schemas/mb-init-preflight-result.schema.json +367 -0
  254. package/dist/schemas/mb-init-review-result.schema.json +396 -0
  255. package/dist/schemas/mb-init-verify-result.schema.json +391 -0
  256. package/dist/schemas/mb-upgrade-stage-result.schema.json +863 -0
  257. package/dist/schemas/memory-bootstrap-receipt-v2.schema.json +67 -0
  258. package/dist/schemas/memory-bootstrap-receipt.schema.json +354 -0
  259. package/dist/schemas/memory-composition-work-result.schema.json +38 -0
  260. package/dist/schemas/memory-repair-work-result.schema.json +56 -0
  261. package/dist/schemas/memory-review-correction-plan.schema.json +30 -0
  262. package/dist/schemas/memory-review-work-result.schema.json +43 -0
  263. package/dist/schemas/model-catalog.schema.json +153 -0
  264. package/dist/schemas/plan-review-decision.schema.json +12 -3
  265. package/dist/schemas/plan-review-result.schema.json +2 -2
  266. package/dist/schemas/profile-settings.schema.json +122 -0
  267. package/dist/schemas/project-flow-pack-manifest.schema.json +2 -2
  268. package/dist/schemas/release-impact.schema.json +3 -3
  269. package/dist/schemas/release-manifest.schema.json +291 -0
  270. package/dist/schemas/review-fix-stage-result.schema.json +210 -0
  271. package/dist/schemas/run-control-receipt.schema.json +119 -0
  272. package/dist/schemas/run-control-request.schema.json +36 -0
  273. package/dist/schemas/run-engine-binding.schema.json +1 -1
  274. package/dist/schemas/stage-start-response.schema.json +4 -0
  275. package/dist/schemas/vnext-protocol-plan.schema.json +3 -3
  276. package/dist/services/accepted-intent.js +139 -0
  277. package/dist/services/assigned-lifecycle.js +382 -0
  278. package/dist/services/branch-context.js +3 -3
  279. package/dist/services/canon.js +54 -15
  280. package/dist/services/check-environment.js +21 -0
  281. package/dist/services/check-runner-evidence.js +344 -0
  282. package/dist/services/check-runner-proof.js +373 -0
  283. package/dist/services/cleanup.js +133 -40
  284. package/dist/services/cli-operation-classifier.js +32 -64
  285. package/dist/services/cli-upgrade-allowlist.js +27 -0
  286. package/dist/services/code-checks.js +1426 -121
  287. package/dist/services/codex-capacity.js +367 -0
  288. package/dist/services/codex-hook-delivery.js +41 -0
  289. package/dist/services/command-context.js +80 -0
  290. package/dist/services/compatibility-preflight.js +16 -3
  291. package/dist/services/config.js +11 -8
  292. package/dist/services/continuation-outcome.js +25 -0
  293. package/dist/services/controller-child-capacity.js +71 -0
  294. package/dist/services/controller-child-observer.js +121 -0
  295. package/dist/services/controller-child-repair.js +117 -0
  296. package/dist/services/controller-execution.js +97 -0
  297. package/dist/services/controller-fanout.js +277 -0
  298. package/dist/services/controller-memory-task.js +45 -0
  299. package/dist/services/controller-memory-worker.js +51 -0
  300. package/dist/services/controller-result-authority.js +127 -0
  301. package/dist/services/controller-work-failure.js +198 -0
  302. package/dist/services/dashboard.js +145 -58
  303. package/dist/services/delivery-access.js +123 -0
  304. package/dist/services/delivery-approval.js +68 -0
  305. package/dist/services/delivery-artifact.js +86 -0
  306. package/dist/services/delivery-checks.js +178 -0
  307. package/dist/services/delivery-execution.js +181 -0
  308. package/dist/services/delivery-intents.js +212 -0
  309. package/dist/services/delivery-operation.js +81 -0
  310. package/dist/services/delivery-policy.js +91 -0
  311. package/dist/services/delivery-procedures.js +43 -0
  312. package/dist/services/delivery-request.js +99 -0
  313. package/dist/services/delivery-result.js +144 -0
  314. package/dist/services/delivery-stage-commands.js +26 -0
  315. package/dist/services/delivery-stage-entry.js +56 -0
  316. package/dist/services/delivery-stage-handlers.js +135 -0
  317. package/dist/services/delivery-stage-results.js +94 -0
  318. package/dist/services/descriptor-coordinator-session.js +37 -0
  319. package/dist/services/descriptor-root-work.js +53 -0
  320. package/dist/services/descriptor-run-settlement.js +107 -0
  321. package/dist/services/descriptor-run-start.js +495 -0
  322. package/dist/services/descriptor-stage-coordinator.js +318 -0
  323. package/dist/services/descriptor-stage-settlement.js +268 -0
  324. package/dist/services/descriptor-stage-start.js +175 -0
  325. package/dist/services/diagnostic-evidence.js +73 -0
  326. package/dist/services/diagnostic-repair-intake.js +123 -0
  327. package/dist/services/diagnostic-repair-source-intake.js +102 -0
  328. package/dist/services/diagnostic-report-publication.js +72 -0
  329. package/dist/services/diagnostic-report.js +97 -0
  330. package/dist/services/diagnostic-run-bundle.js +113 -0
  331. package/dist/services/diagnostic-snapshot.js +159 -0
  332. package/dist/services/diagnostic-stage-handlers.js +109 -0
  333. package/dist/services/diagnostic-stage-results.js +158 -0
  334. package/dist/services/diagnostic-start.js +134 -0
  335. package/dist/services/diagnostic-work-batch.js +34 -0
  336. package/dist/services/diagnostic-work-collection.js +97 -0
  337. package/dist/services/diagnostic-work-registration.js +101 -0
  338. package/dist/services/diagnostic-work-results.js +93 -0
  339. package/dist/services/discovery/agy-discovery.js +2 -0
  340. package/dist/services/discovery/codex-discovery.js +2 -0
  341. package/dist/services/discovery/droid-discovery.js +2 -0
  342. package/dist/services/discovery/grok-discovery.js +2 -0
  343. package/dist/services/discovery/opencode-discovery.js +2 -0
  344. package/dist/services/discovery/static.js +31 -0
  345. package/dist/services/discovery/zcode-discovery.js +2 -0
  346. package/dist/services/distill-document-publication.js +280 -0
  347. package/dist/services/distill-promotion.js +197 -0
  348. package/dist/services/distill-publication-custody.js +162 -0
  349. package/dist/services/distill-stage-handlers.js +249 -0
  350. package/dist/services/distill-stage-results.js +105 -0
  351. package/dist/services/distill-user-inputs.js +4 -0
  352. package/dist/services/distill-work-batch.js +42 -0
  353. package/dist/services/distill-work-collection.js +74 -0
  354. package/dist/services/distill-work-registration.js +93 -0
  355. package/dist/services/distill-work-results.js +98 -0
  356. package/dist/services/engines.js +354 -163
  357. package/dist/services/eval-snapshots.js +1326 -150
  358. package/dist/services/execution-bundles.js +275 -0
  359. package/dist/services/execution-policy.js +185 -0
  360. package/dist/services/executor-onboarding.js +56 -0
  361. package/dist/services/external-work-launch.js +316 -0
  362. package/dist/services/flow-catalog.js +54 -0
  363. package/dist/services/flow-descriptors.js +82 -0
  364. package/dist/services/frozen-engine.js +404 -0
  365. package/dist/services/generic-execution.js +165 -0
  366. package/dist/services/harness-adapter.js +342 -35
  367. package/dist/services/harness-config.js +2 -0
  368. package/dist/services/harness-discovery.js +29 -0
  369. package/dist/services/harness-doctor.js +75 -0
  370. package/dist/services/harness-probe-effects.js +51 -0
  371. package/dist/services/harness-version-probe.js +100 -0
  372. package/dist/services/hook-memory-routing.js +188 -0
  373. package/dist/services/hook-recovery-guard.js +14 -0
  374. package/dist/services/hook-session-observation.js +24 -0
  375. package/dist/services/hooks.js +813 -327
  376. package/dist/services/hybrid-contracts.js +479 -0
  377. package/dist/services/hybrid-digest.js +14 -0
  378. package/dist/services/ids.js +29 -1
  379. package/dist/services/installation-lock.js +95 -0
  380. package/dist/services/installed-flow-source.js +261 -0
  381. package/dist/services/interactive-attached-session.js +215 -0
  382. package/dist/services/interactive-baseline-custody.js +54 -0
  383. package/dist/services/interactive-before-versions.js +148 -0
  384. package/dist/services/interactive-bundle-data.js +85 -0
  385. package/dist/services/interactive-checks.js +179 -0
  386. package/dist/services/interactive-execution.js +33 -0
  387. package/dist/services/interactive-finish-integration.js +236 -0
  388. package/dist/services/interactive-git-baseline.js +230 -0
  389. package/dist/services/interactive-git-dispatch.js +278 -0
  390. package/dist/services/interactive-input-delivery.js +82 -0
  391. package/dist/services/interactive-mutation-scope.js +231 -0
  392. package/dist/services/interactive-request.js +287 -0
  393. package/dist/services/interactive-run-bundle.js +109 -0
  394. package/dist/services/interactive-stage-entry.js +41 -0
  395. package/dist/services/interactive-stage-handlers.js +289 -0
  396. package/dist/services/interactive-stage-observation.js +136 -0
  397. package/dist/services/interactive-stage-results.js +111 -0
  398. package/dist/services/interactive-user-inputs.js +142 -0
  399. package/dist/services/interactive-work-batch.js +43 -0
  400. package/dist/services/interactive-work-collection.js +119 -0
  401. package/dist/services/interactive-work-completion.js +180 -0
  402. package/dist/services/interactive-work-context.js +249 -0
  403. package/dist/services/interactive-work-history.js +112 -0
  404. package/dist/services/interactive-work-registration.js +124 -0
  405. package/dist/services/interactive-work-results.js +115 -0
  406. package/dist/services/interactive-work-start.js +155 -0
  407. package/dist/services/lanes.js +78 -65
  408. package/dist/services/lifecycle-command.js +1 -288
  409. package/dist/services/lifecycle-contract.js +1 -0
  410. package/dist/services/lifecycle-invocations.js +2549 -0
  411. package/dist/services/managed-daemon-binding.js +129 -0
  412. package/dist/services/managed-lease-monitor.js +133 -0
  413. package/dist/services/managed-processes.js +449 -69
  414. package/dist/services/memory-accepted-composition.js +78 -0
  415. package/dist/services/memory-baseline-preservation.js +65 -0
  416. package/dist/services/memory-completed-correction-wave.js +328 -0
  417. package/dist/services/memory-compose-handler.js +380 -0
  418. package/dist/services/memory-composition-acceptance.js +375 -0
  419. package/dist/services/memory-composition-graph.js +165 -0
  420. package/dist/services/memory-composition-registration.js +161 -0
  421. package/dist/services/memory-composition-work-custody.js +156 -0
  422. package/dist/services/memory-composition-work-results.js +108 -0
  423. package/dist/services/memory-corrected-review-acceptance.js +129 -0
  424. package/dist/services/memory-corrected-review-batch.js +37 -0
  425. package/dist/services/memory-corrected-review-findings.js +108 -0
  426. package/dist/services/memory-corrected-review-inputs.js +215 -0
  427. package/dist/services/memory-corrected-review-projection.js +78 -0
  428. package/dist/services/memory-corrected-review-receipt.js +178 -0
  429. package/dist/services/memory-corrected-review-registration.js +192 -0
  430. package/dist/services/memory-correction-check-receipt.js +235 -0
  431. package/dist/services/memory-correction-input-owner.js +6 -0
  432. package/dist/services/memory-custody-snapshot.js +36 -0
  433. package/dist/services/memory-discover-handler.js +104 -0
  434. package/dist/services/memory-finish-evidence.js +457 -0
  435. package/dist/services/memory-finish-handler.js +229 -0
  436. package/dist/services/memory-finish-integration.js +491 -0
  437. package/dist/services/memory-finish-readiness.js +169 -0
  438. package/dist/services/memory-fix-finish-integration.js +129 -0
  439. package/dist/services/memory-fix-git-dispatch.js +139 -0
  440. package/dist/services/memory-fix-intake-custody.js +11 -0
  441. package/dist/services/memory-fix-intake-settlement.js +127 -0
  442. package/dist/services/memory-fix-publication.js +196 -0
  443. package/dist/services/memory-fix-repair-admission.js +116 -0
  444. package/dist/services/memory-fix-request.js +141 -0
  445. package/dist/services/memory-fix-run-bundle.js +83 -0
  446. package/dist/services/memory-fix-scope.js +78 -0
  447. package/dist/services/memory-fix-sources.js +85 -0
  448. package/dist/services/memory-fix-stage-entry.js +24 -0
  449. package/dist/services/memory-fix-stage-handlers.js +282 -0
  450. package/dist/services/memory-fix-stage-results.js +106 -0
  451. package/dist/services/memory-fix-workspace.js +127 -0
  452. package/dist/services/memory-flow-user-inputs.js +88 -0
  453. package/dist/services/memory-git-integration.js +220 -0
  454. package/dist/services/memory-historical-corrected-review.js +212 -0
  455. package/dist/services/memory-historical-original-review.js +143 -0
  456. package/dist/services/memory-historical-repair-registration.js +105 -0
  457. package/dist/services/memory-historical-second-review.js +147 -0
  458. package/dist/services/memory-init-bootstrap-readiness.js +210 -0
  459. package/dist/services/memory-init-contexts.js +181 -0
  460. package/dist/services/memory-init-controller-start.js +119 -0
  461. package/dist/services/memory-init-engine-release.js +223 -0
  462. package/dist/services/memory-init-git-policy.js +165 -0
  463. package/dist/services/memory-init-lint-capability.js +203 -0
  464. package/dist/services/memory-init-native-capacity.js +309 -0
  465. package/dist/services/memory-init-preflight.js +334 -0
  466. package/dist/services/memory-init-project-bootstrap.js +599 -0
  467. package/dist/services/memory-init-request-candidate.js +213 -0
  468. package/dist/services/memory-init-request-input.js +82 -0
  469. package/dist/services/memory-init-resource-storage.js +125 -0
  470. package/dist/services/memory-init-run-allocation.js +81 -0
  471. package/dist/services/memory-init-run-bundle.js +135 -0
  472. package/dist/services/memory-init-start.js +181 -0
  473. package/dist/services/memory-init-startup-custody.js +80 -0
  474. package/dist/services/memory-init-startup-input.js +240 -0
  475. package/dist/services/memory-init-storage.js +91 -0
  476. package/dist/services/memory-init-stores.js +359 -0
  477. package/dist/services/memory-init-worktrunk-capability.js +174 -0
  478. package/dist/services/memory-layer-publication.js +611 -0
  479. package/dist/services/memory-layer.js +225 -0
  480. package/dist/services/memory-lint-config.js +194 -0
  481. package/dist/services/memory-native-review-copy.js +127 -0
  482. package/dist/services/memory-normal-flow-entry.js +87 -0
  483. package/dist/services/memory-ordinary-defaults.js +129 -0
  484. package/dist/services/memory-preflight-bootstrap-custody.js +115 -0
  485. package/dist/services/memory-preflight-handler.js +274 -0
  486. package/dist/services/memory-repair-current-view.js +299 -0
  487. package/dist/services/memory-repair-document-delta.js +489 -0
  488. package/dist/services/memory-repair-history.js +496 -0
  489. package/dist/services/memory-repair-physical-binding.js +194 -0
  490. package/dist/services/memory-repair-publication-files.js +152 -0
  491. package/dist/services/memory-repair-publication-intent.js +27 -0
  492. package/dist/services/memory-repair-publication-plan.js +162 -0
  493. package/dist/services/memory-repair-publication-source.js +225 -0
  494. package/dist/services/memory-repair-publication.js +795 -0
  495. package/dist/services/memory-repair-registration.js +240 -0
  496. package/dist/services/memory-repair-work-baseline.js +415 -0
  497. package/dist/services/memory-repair-work-completion.js +117 -0
  498. package/dist/services/memory-repair-work-custody.js +73 -0
  499. package/dist/services/memory-repair-work-results.js +108 -0
  500. package/dist/services/memory-repair-workspace.js +261 -0
  501. package/dist/services/memory-repair-writer-copy.js +736 -0
  502. package/dist/services/memory-result-binding.js +239 -0
  503. package/dist/services/memory-retained-review-authority.js +138 -0
  504. package/dist/services/memory-retained-review-results.js +70 -0
  505. package/dist/services/memory-retained-second-baseline.js +102 -0
  506. package/dist/services/memory-retained-second-repairs.js +162 -0
  507. package/dist/services/memory-review-acceptance.js +214 -0
  508. package/dist/services/memory-review-correction-plan.js +206 -0
  509. package/dist/services/memory-review-handler.js +585 -0
  510. package/dist/services/memory-review-inputs.js +246 -0
  511. package/dist/services/memory-review-limits.js +10 -0
  512. package/dist/services/memory-review-receipt.js +180 -0
  513. package/dist/services/memory-review-registration.js +117 -0
  514. package/dist/services/memory-review-work-custody.js +126 -0
  515. package/dist/services/memory-review-work-input.js +91 -0
  516. package/dist/services/memory-review-work-results.js +95 -0
  517. package/dist/services/memory-second-corrected-review-inputs.js +167 -0
  518. package/dist/services/memory-second-correction-plan.js +77 -0
  519. package/dist/services/memory-second-repair-baseline.js +91 -0
  520. package/dist/services/memory-second-repair-launch.js +614 -0
  521. package/dist/services/memory-second-repair-registration.js +88 -0
  522. package/dist/services/memory-second-repair-source.js +187 -0
  523. package/dist/services/memory-second-review-acceptance.js +115 -0
  524. package/dist/services/memory-source-observations.js +117 -0
  525. package/dist/services/memory-stage-dispatch.js +65 -0
  526. package/dist/services/memory-stage-results.js +290 -0
  527. package/dist/services/memory-tool-probe.js +25 -0
  528. package/dist/services/memory-upgrade-analysis-handler.js +243 -0
  529. package/dist/services/memory-upgrade-bootstrap-readiness.js +251 -0
  530. package/dist/services/memory-upgrade-evidence.js +100 -0
  531. package/dist/services/memory-upgrade-inventory.js +442 -0
  532. package/dist/services/memory-upgrade-publication-custody.js +73 -0
  533. package/dist/services/memory-upgrade-publication.js +413 -0
  534. package/dist/services/memory-upgrade-selection.js +430 -0
  535. package/dist/services/memory-upgrade-start.js +60 -0
  536. package/dist/services/memory-upgrade-storage-readiness.js +340 -0
  537. package/dist/services/memory-verification-acceptance.js +156 -0
  538. package/dist/services/memory-verification-checks.js +317 -0
  539. package/dist/services/memory-verification-receipt.js +160 -0
  540. package/dist/services/memory-verify-handler.js +137 -0
  541. package/dist/services/memory-work-result-json.js +12 -0
  542. package/dist/services/memory-work-result-preparation.js +64 -0
  543. package/dist/services/merge-queue.js +228 -149
  544. package/dist/services/merge-server.js +163 -35
  545. package/dist/services/migrations.js +164 -114
  546. package/dist/services/model-catalog.js +109 -0
  547. package/dist/services/model-discovery.js +46 -0
  548. package/dist/services/native-daemon-history.js +50 -0
  549. package/dist/services/native-session-control.js +39 -0
  550. package/dist/services/operator-profiles.js +236 -0
  551. package/dist/services/physical-startup.js +45 -0
  552. package/dist/services/plan-runtime.js +26 -11
  553. package/dist/services/plans.js +28 -25
  554. package/dist/services/project-flow-source.js +195 -0
  555. package/dist/services/project-git-integration.js +92 -0
  556. package/dist/services/project-registry.js +97 -0
  557. package/dist/services/project-summary.js +1 -1
  558. package/dist/services/projects.js +17 -87
  559. package/dist/services/prompt-delivery.js +71 -0
  560. package/dist/services/prompts.js +28 -17
  561. package/dist/services/protocols.js +163 -87
  562. package/dist/services/provider-capacity.js +463 -0
  563. package/dist/services/recovery-observation-budget.js +121 -0
  564. package/dist/services/recovery-snapshot-database.js +588 -0
  565. package/dist/services/release-archive-producer.js +52 -0
  566. package/dist/services/release-archive.js +143 -0
  567. package/dist/services/release-cache.js +150 -0
  568. package/dist/services/release-compatibility.js +18 -0
  569. package/dist/services/release-download.js +67 -0
  570. package/dist/services/release-envelope.js +104 -0
  571. package/dist/services/release-manifest.js +45 -0
  572. package/dist/services/release-payload.js +114 -0
  573. package/dist/services/release-producer.js +63 -0
  574. package/dist/services/release-provenance.js +160 -0
  575. package/dist/services/release-registry.js +66 -0
  576. package/dist/services/release-source.js +194 -0
  577. package/dist/services/repair-intents.js +29 -0
  578. package/dist/services/repair-receipt.js +13 -0
  579. package/dist/services/retained-native-hook.js +274 -0
  580. package/dist/services/review-copy.js +165 -0
  581. package/dist/services/review-deferral.js +23 -0
  582. package/dist/services/review-fix-handoff.js +82 -0
  583. package/dist/services/review-fix-intake-custody.js +17 -0
  584. package/dist/services/review-fix-stage-entry.js +43 -0
  585. package/dist/services/review-fix-stage-handlers.js +176 -0
  586. package/dist/services/review-fix-stage-results.js +86 -0
  587. package/dist/services/run-control-receipt.js +56 -0
  588. package/dist/services/run-control-worker.js +469 -0
  589. package/dist/services/run-control.js +1109 -0
  590. package/dist/services/run-controller-adapter.js +434 -0
  591. package/dist/services/run-controller-capture.js +186 -0
  592. package/dist/services/run-controller-process.js +226 -0
  593. package/dist/services/run-controller-recovery.js +335 -0
  594. package/dist/services/run-controller-state.js +106 -0
  595. package/dist/services/run-controller.js +1717 -0
  596. package/dist/services/run-engine-bindings.js +1 -1
  597. package/dist/services/run-fork.js +147 -0
  598. package/dist/services/run-health.js +149 -0
  599. package/dist/services/run-observations.js +152 -0
  600. package/dist/services/run-projection.js +22 -64
  601. package/dist/services/run-recovery-guard.js +107 -0
  602. package/dist/services/run-recovery-runtime.js +112 -0
  603. package/dist/services/run-recovery.js +485 -0
  604. package/dist/services/run-start-custody.js +189 -0
  605. package/dist/services/run-timeline.js +59 -0
  606. package/dist/services/runs.js +996 -271
  607. package/dist/services/runtime-budget.js +446 -0
  608. package/dist/services/runtime-command.js +43 -0
  609. package/dist/services/runtime-scope-capture.js +52 -0
  610. package/dist/services/runtime-scope-control.js +468 -0
  611. package/dist/services/runtime-scope-resume.js +605 -0
  612. package/dist/services/runtime-scope-stop.js +211 -0
  613. package/dist/services/runtime-scope-worker.js +314 -0
  614. package/dist/services/runtime-service.js +19 -14
  615. package/dist/services/schema-validation.js +10 -8
  616. package/dist/services/scope-writer-cleanup.js +27 -0
  617. package/dist/services/sessions.js +37 -91
  618. package/dist/services/setup.js +427 -0
  619. package/dist/services/stage-blocker.js +17 -7
  620. package/dist/services/stage-context.js +240 -18
  621. package/dist/services/stage-handlers.js +141 -0
  622. package/dist/services/stage-lifecycle.js +156 -119
  623. package/dist/services/stage-pause.js +222 -94
  624. package/dist/services/stage-report-renderer.js +230 -6
  625. package/dist/services/stage-work-graph.js +52 -0
  626. package/dist/services/technical-notes.js +31 -0
  627. package/dist/services/tooling.js +111 -44
  628. package/dist/services/usage.js +49 -101
  629. package/dist/services/verification-matrix.js +393 -0
  630. package/dist/services/version-status.js +1 -1
  631. package/dist/services/vnext-code-review.js +302 -91
  632. package/dist/services/vnext-code.js +325 -251
  633. package/dist/services/vnext-contracts.js +10 -1
  634. package/dist/services/vnext-execution-profile.js +80 -5
  635. package/dist/services/vnext-fanout.js +399 -20
  636. package/dist/services/vnext-merge.js +336 -114
  637. package/dist/services/vnext-plan-review.js +288 -133
  638. package/dist/services/vnext-plan.js +230 -106
  639. package/dist/services/vnext-protocolize.js +534 -96
  640. package/dist/services/vnext-specify.js +131 -84
  641. package/dist/services/vnext-workspace-policy.js +7 -2
  642. package/dist/services/work-registry.js +1950 -215
  643. package/dist/services/work-retry-context.js +55 -0
  644. package/dist/services/workspace-bootstrap.js +53 -15
  645. package/dist/services/workspace-files.js +85 -0
  646. package/dist/services/worktrees.js +108 -48
  647. package/dist/shared/entity-references.js +1 -0
  648. package/dist/shared/errors.js +27 -0
  649. package/dist/storage/agent-output.js +26 -0
  650. package/dist/storage/data-preservation.js +65 -0
  651. package/dist/storage/database.js +931 -40
  652. package/dist/storage/foreign-key-transaction.js +39 -0
  653. package/dist/storage/immutable-input.js +45 -0
  654. package/dist/storage/import-guard.js +159 -0
  655. package/dist/storage/memory-upgrade-schema-bootstrap.js +38 -0
  656. package/dist/storage/native-cleanup.js +52 -0
  657. package/dist/storage/paired-writer-migration.js +424 -0
  658. package/dist/storage/paths.js +17 -4
  659. package/dist/storage/projection-lock.js +73 -0
  660. package/dist/storage/work-references.js +23 -0
  661. package/dist/storage/writer-contract.js +96 -0
  662. package/dist/storage/writer-migration.js +346 -0
  663. package/dist/storage/writer-restore.js +217 -0
  664. package/dist/verification-components.json +384 -0
  665. package/package.json +52 -13
  666. package/tools/create-canon-release.mjs +33 -0
  667. package/tools/probe-codex-history.mjs +37 -0
  668. package/tools/produce-hybrid-release.mjs +41 -0
  669. package/tools/repair-paused-run-status.mjs +84 -0
  670. package/tools/verification-jobs.mjs +342 -0
@@ -0,0 +1,303 @@
1
+ import { commandInputs, commandAliases, physicalPathOptions } from "./command-inputs.js";
2
+ import { runtimeOptionDescriptions } from "./command-option-descriptions.js";
3
+ const optionDescriptions = {
4
+ "intake-sha256": "SHA-256 of the exact original intake file bytes. Fresh execution verifies the bytes; replay compares the retained hash without reopening the original file.",
5
+ "stage-profile": "Repeatable stage=profile assignment for the six mb-init stages. Each stage may occur once; the selected profile ID or alias is frozen before dispatch.",
6
+ "work-profile": "Repeatable approved Work executor profile ID or alias. Explicit order is retained; duplicate profiles refuse.",
7
+ "git-route": "Explicit project Git integration route. Direct integration uses the integration branch checkout; feature_worktree uses an already assigned separate checkout.",
8
+ "integration-branch": "Explicit project integration branch, validated with Git before project publication. No branch is inferred from the current checkout.",
9
+ "detach": "Return the accepted managed-controller receipt without observing until completion. Disconnecting the observer never stops the controller.",
10
+ "harness": "Select one supported harness family. Static discovery checks executable presence, not authentication or model access; diagnostics require separate effect consent.",
11
+ "provider": "Exact provider namespace for model filtering or doctor observation binding, including namespaced IDs such as builtin:zai-coding-plan. An account binding requires --account-sha256; this selector does not authenticate credentials.",
12
+ "executable": "Explicit installed harness executable path, including paths with spaces. Resolves ambiguous installations without choosing an arbitrary PATH candidate. Discovery never executes it; probes require explicit effect flags.",
13
+ "state-dir": "Existing OpenCode server state directory for the selected doctor. Its daemon configuration must bind the selected executable; doctor does not start or stop an unrelated daemon. Not an executor profile or project directory.",
14
+ "model-observation-file": "Optional destination for a standalone model listing snapshot from the admitted doctor. Requires --provider and --account-sha256; operator scope is unverified. Artifact publication is explicit, separate from provider writes, and never proves account access. Must differ from --response-file.",
15
+ "save-profile-intent": "Explicit frozen dd-flow/profile-creation-intent@1 JSON file containing before/after settings, profile and default consent. Setup binds it to request identity, saves under revision CAS and reconciles exact replay. Conflicts with --skip-agent-setup; an additional selected profile must match. This file is not provider authorization.",
16
+ "set-default": "Explicitly select the newly created profile as global default in the same atomic settings write. Omission preserves the existing default. Does not change frozen RUN settings.",
17
+ "remove": "Remove the positional operator alias binding, not its target profile; conflicts with --target.",
18
+ "clear": "Clear the operator global default without removing profiles or changing project routing and frozen RUN snapshots.",
19
+ "allow-processes": "Explicit permission to execute installed diagnostic code. Version/doctor probes are opt-in; static discovery never requires this flag.",
20
+ "allow-services": "Permit the selected adapter doctor's possible service process effects. Does not authorize model Turns, a flow, or reuse of an unrelated service.",
21
+ "allow-credentials": "Permit possible credential reads by the installed diagnostic; no credentials or raw adapter output enter this command's result.",
22
+ "allow-writes": "Permit possible diagnostic temporary/runtime writes by installed code; not permission to modify project packs or RUN settings.",
23
+ "native-executable": "Absolute native ZCode executable for the selected ZCode ACP doctor; no ambient ZCODE_BIN fallback. Invalid for other families.",
24
+ "timeout-ms": "Timeout in milliseconds for the selected operation. Harness diagnostics accept 1..60000: version defaults to 3000 and doctor to 30000. Other commands retain their own operation timeout policy; this option is not a productive RUN inactivity policy.",
25
+ "seed-file": "Optional reviewed dd-flow/model-catalog@1 JSON input; default is the bundled seed. Seed-only entries cannot establish account access or runtime qualification.",
26
+ "observation-file": "Explicit regular-file model listing snapshot; requires --harness, --provider and --account-sha256. Foreign scopes are ignored; malformed or secret-bearing fields refuse. No live listing is started.",
27
+ "account-sha256": "Opaque 64-character lowercase SHA-256 account binding, never an account name, token or credential path. Requires --harness and --provider; does not authenticate the account.",
28
+ "canon-source": "Explicit local signed release bundle or HTTPS envelope URL. Remote archives must use the same origin; trust comes only from --trust-file. Exclusive with --canon-version.",
29
+ "canon-version": "Exact canon release version in the selected channel of the operator release registry; exclusive with --canon-source. Omission selects the registry's explicit channel default.",
30
+ "release-registry": "Operator dd-flow/release-registry@1 JSON selector; default is DD_FLOW_RELEASE_REGISTRY or release-registry.json in DD_FLOW_HOME. Registry entries never enroll signing keys.",
31
+ "trust-file": "Explicit operator dd-flow/release-trust@1 file; release bytes cannot enroll their own signing key.",
32
+ "channel": "Selected release channel; preview and development must be requested explicitly.",
33
+ "skip-agent-setup": "Install without selecting or configuring an executor; conflicts with --profile.",
34
+ "non-interactive": "Never request interactive input; a missing executor selection fails unless agent setup is explicitly skipped.",
35
+ "project-root": "Stable repository identity; not the assigned feature workspace.",
36
+ "workspace-root": "Concrete assigned checkout used for this operation.",
37
+ "workspace-path": "Concrete assigned checkout; does not change project identity.",
38
+ "root": "Explicit root for the selected command; prevents implicit root discovery.",
39
+ "run": "Exact retained RUN identity; its frozen execution settings remain authoritative.",
40
+ "reason": "Operator explanation retained with the requested change.",
41
+ "request-id": "Stable request identity for reconciliation and idempotent retry.",
42
+ "request-key": "Stable exact-request replay identity; changed inputs or missing independent custody refuse rather than allocate again. The owning command defines scope and syntax.",
43
+ "expected-revision": "Required current revision; stale changes are rejected instead of overwriting concurrent edits.",
44
+ "profile": "Explicit configured profile identifier; credentials are not stored in profiles.",
45
+ "profile-file": "Complete validated executor profile; exclusive with --profile and --skip-agent-setup. Does not change operator defaults.",
46
+ "agent-profile": "Explicit configured executor profile; no automatic model selection.",
47
+ "force": "Explicit force request; does not bypass ownership, compatibility or authorization gates.",
48
+ "offline": "Explicit drained/offline operation; does not establish physical settlement by itself."
49
+ };
50
+ /** Option names alone are insufficient when different commands own different inputs. */
51
+ const memoryRepairOptions = {
52
+ run: "Active registered mb-init review RUN; retained correction graph and frozen execution own every repair operation.",
53
+ wave: "Exact causal correction wave 1 or 2; never falls back to another wave or permits a third wave.",
54
+ work: "Exact registered repair Work in the selected correction wave; foreign Work and generation custody refuse.",
55
+ "workspace-root": "Shared frozen RUN workspace, not the private repair copy; independent source and scope custody remain required.",
56
+ "work-session": "Exact independently started repair WorkSession; this command never creates or claims a provider Session."
57
+ };
58
+ const memoryInitOptions = {
59
+ "prepare-only": "Prepare or replay the frozen Memory RUN and project bootstrap without launching a controller or provider Session. This publishes project/runtime state; it is not a dry run. Use run drive launch with the returned RUN to select bounded observation/capture. Exclusive with --detach; replay never stops an existing controller.",
60
+ "profile-file": "Absolute regular JSON file with one complete validated operation-only executor profile. Exclusive with --profile; never saves settings or changes defaults. Omit on replay to reuse frozen bytes; supplied profile content must match the original selection.",
61
+ "non-interactive": "Never open the first-flow executor dialog, even on a terminal. Without an explicit profile/file or configured default, refuse before project effects; init cannot skip its executor."
62
+ };
63
+ const deliveryLaunchOptions = {
64
+ "intake-file": "Original bounded UTF-8 user request. Required fresh; supplied replay text must equal the retained original. Starting delivery is not publication or deployment approval.",
65
+ workspace: "Existing canonical assigned Git checkout. Fresh defaults to project root; omitted replay preserves the original workspace. Never uses a diagnostic clone.",
66
+ "stage-profile": "Repeatable known stage=profile assignment for this delivery descriptor. Frozen before RUN creation; independent verify uses a separate physical Session.",
67
+ "profile-file": "Absolute JSON operation-only executor profile, exclusive with --profile. Does not save settings; omitted replay uses the retained selection.",
68
+ "prepare-only": "Retain or replay one request-bound delivery RUN without launching its controller. Publishes runtime state, not a dry run or permission to mutate the delivery target. Exclusive with --detach."
69
+ };
70
+ const commandOptionDescriptions = {
71
+ "flow release": deliveryLaunchOptions,
72
+ "flow deploy": deliveryLaunchOptions,
73
+ "flow publish": deliveryLaunchOptions,
74
+ "delivery inputs": { stage: "Bound delivery Stage. Read original request/answers and the accepted operation scope when available; never grants approval." },
75
+ "delivery checks": { stage: "Current prepare or verify Stage; issued coordinator command only. Uses project CODE/readiness checks and actual artifact bytes.", "result-file": "Exact artifact JSON: path (workspace-relative), subject_ref, version and sha256. No commands or invented check receipts. Omit neither required checks nor artifact selection." },
76
+ "delivery execute": { stage: "Current publish or deploy Stage, bound to the physically admitted coordinator. Does not finish the Stage or RUN.", "result-file": "Exact scoped approval JSON: scope_sha256, user_inputs_sha256, basis (role=request|answer,event_id,sha256), expires_at and reason. Copy scope/input references from delivery inputs; startup, a question or authentication is not approval. Unknown effects require reconciliation, not retry." },
77
+ "delivery reconcile": { stage: "Current owned delivery Stage. Run only the original read-only result procedure and retain observation after physical command settlement. Never republishes, rolls back, switches account or grants retry." },
78
+ "flow interactive": {
79
+ "non-interactive": "Never open executor selection. A fresh request needs an explicit profile/file or configured default; the executor cannot be skipped and no profile is saved.",
80
+ "profile-file": "Absolute regular JSON file with a complete validated operation-only executor profile; exclusive with --profile. Does not save settings. Omitted replay uses retained selection; supplied content must match.",
81
+ workspace: "Optional existing canonical assigned checkout. Defaults to project root for a fresh request; omitted replay uses the original workspace. Does not create a worktree or widen Git scope.",
82
+ execution: "Defaults to attached: requires a unique current trusted hook observation of this exact argv, workspace and profile. Managed must be selected explicitly; no automatic fallback.",
83
+ "intake-file": "Original bounded nonempty UTF-8 request, up to 64 KiB. Required fresh; supplied replay bytes must match exactly. Current turns and answers remain separate retained inputs.",
84
+ "prepare-only": "Retain the original request and allocate its RUN without starting controller/provider execution. Attached also publishes immutable context candidates. Not a dry run; exclusive with --detach.",
85
+ detach: "Managed execution only. Return the existing controller receipt without foreground observation; disconnect never stops its owner.",
86
+ "stage-profile": "Repeatable preflight/interactive/consolidation/hardening/review/integration=profile selection. Frozen before dispatch; attached same-session constraints still apply.",
87
+ "work-profile": "Repeatable allowed author/critic executor profile. Work still uses existing physical Session and independence admission.",
88
+ "git-route": "Explicit local integration route, paired with --integration-branch; otherwise use project workspace policy. No push permission. Feature route requires an already assigned --workspace.",
89
+ "max-parallel": "External Work concurrency from 1 to 64, default 1; does not combine author and critic identities or qualify native capacity."
90
+ },
91
+ "flow review-fix": {
92
+ "project-root": "Canonical absolute source project. Review-fix uses a private read-only snapshot; it does not repair code or integrate Git changes.",
93
+ "source-run": "Exact completed mb-audit or project-review RUN. Required with --finding for a fresh request; omitted replay uses the retained original source, never the latest report.",
94
+ finding: "Repeat for each explicitly selected accepted finding ID, in retained order. No implicit all-findings scope; selecting a finding is not approval to implement it.",
95
+ "intake-file": "Original bounded UTF-8 user request and constraints. Required fresh; supplied replay bytes must match. Actual delivered answers remain part of scope assessment, not an agent-authored replacement specification.",
96
+ "stage-profile": "Repeatable intake/scope-review/handoff=profile assignment, frozen before dispatch. Scope-review requires a physically independent new Session; each stage may use a different supported profile.",
97
+ "prepare-only": "Retain the request, private source snapshot and review-fix RUN without launching controller/provider Sessions. Creates runtime state, not a dry run or downstream SDLC task. Exclusive with --detach.",
98
+ "max-parallel": "Frozen external Work concurrency limit from 1 to 64, default 1. The three root stages remain sequential; this does not combine intake and independent scope-review Sessions."
99
+ },
100
+ "flow mb-fix": {
101
+ "source-run": "Completed mb-audit or project-review RUN containing accepted findings. Required with explicit findings for a fresh request; omitted replay reuses the original source, never the latest audit.",
102
+ finding: "Repeat for each selected finding ID from --source-run. Order and exact IDs are retained; no implicit all-findings selection. Selection alone is not write approval.",
103
+ "workspace-root": "Optional canonical absolute existing repair workspace. Otherwise the launcher prepares the policy-selected workspace; replay uses its retained workspace, not the current shell directory.",
104
+ "intake-file": "Bounded UTF-8 original repair request and constraints. Required fresh; supplied replay bytes must match. Scope and consent are assessed at intake before document publication.",
105
+ "stage-profile": "Repeatable intake/repair/verify/review/finish=profile override. Profiles are frozen; verify and review require independent physical Sessions.",
106
+ "prepare-only": "Prepare or replay the retained repair RUN without launching controller/provider Sessions. Creates runtime/workspace state, not a dry run or semantic repair acceptance. Exclusive with --detach.",
107
+ "git-route": "Explicit feature_worktree or integration_branch_direct paired with --integration-branch; otherwise use project workspace policy. Never authorizes push or unrelated commits.",
108
+ "max-parallel": "External Work concurrency from 1 to 64, default 1. Does not combine author, verifier and reviewer Sessions or advertise native qualification."
109
+ },
110
+ "flow mb-distill": {
111
+ "project-root": "Canonical absolute source project identity. Extraction uses an isolated read-only snapshot; promotion requires a separately accepted destination and exact write scope.",
112
+ "intake-file": "Bounded UTF-8 original distillation request, intended reusable practices and constraints. Required fresh; supplied replay bytes must match the retained request. Does not grant destination write authority.",
113
+ "stage-profile": "Repeatable preflight/extract/review/promote/verify/finish=profile override. All profiles are frozen before dispatch; verification requires an independent physical Session.",
114
+ "prepare-only": "Retain the request, source snapshot and RUN without launching a controller or provider Sessions. Creates runtime state, not destination changes; not a dry run.",
115
+ "max-parallel": "External extraction and critic Work concurrency from 1 to 64; default 1. Changes scheduling, not required aspect coverage."
116
+ },
117
+ "flow mb-audit": {
118
+ "project-root": "Canonical absolute project identity. The runtime creates an isolated read-only source snapshot; neither the project nor its Memory Bank is a write destination.",
119
+ "intake-file": "Bounded UTF-8 original diagnostic request, including audit mode/focus and constraints. Required for a fresh request; optional on exact replay, where supplied bytes must match.",
120
+ "stage-profile": "Repeatable preflight/audit/review/report=profile override. Each stage may occur once and all profiles are frozen before dispatch.",
121
+ "prepare-only": "Retain the request, source snapshot and RUN without starting its controller or provider Sessions. Runtime state is created; this is not a dry run.",
122
+ "max-parallel": "External Work concurrency from 1 to 64; default 1. Never claims native child qualification."
123
+ },
124
+ "flow project-review": {
125
+ "project-root": "Canonical absolute project identity, assessed through an isolated read-only snapshot. Findings never authorize implicit repair.",
126
+ "intake-file": "Bounded UTF-8 original project-conformance review request and focus. Required fresh; supplied replay bytes must match the retained objective.",
127
+ "stage-profile": "Repeatable preflight/analyze/review/report=profile override. This is project review, not the SDLC CODE-REVIEW stage.",
128
+ "prepare-only": "Retain the request, source snapshot and RUN without launching a controller or provider Sessions. Not a dry run.",
129
+ "max-parallel": "External Work concurrency from 1 to 64; default 1."
130
+ },
131
+ "flow mb-init": memoryInitOptions,
132
+ init: memoryInitOptions,
133
+ "flow mb-upgrade": { ...memoryInitOptions, "stage-profile": "Repeatable stage=profile assignment for preflight, diff-analysis, upgrade, verify, review or finish. The original selection is frozen before dispatch.", "prepare-only": "Prepare or replay the upgrade RUN and accepted storage/bootstrap selection without launching its controller or a productive Session. This is not a dry run; it does not publish the upgraded canonical layer or accept semantic preservation." },
134
+ upgrade: { ...memoryInitOptions, "stage-profile": "Repeatable stage=profile assignment for preflight, diff-analysis, upgrade, verify, review or finish. The original selection is frozen before dispatch.", "prepare-only": "Prepare or replay the upgrade RUN and accepted storage/bootstrap selection without launching its controller or a productive Session. This is not a dry run; it does not publish the upgraded canonical layer or accept semantic preservation." },
135
+ "runtime storage admit": { operation: "Operation-specific writable-connection admission: memory-init or memory-upgrade. Upgrade also checks retained request storage. Requires explicit canonical DD_FLOW_HOME and an existing compatible resource registry. Never initializes, migrates, repairs or starts agents." },
136
+ "runtime storage qualify": { operation: "memory-upgrade only. Qualify the selected engine before a native probe. Incompatible drained stores are copied privately with committed WAL; the actual transition and operation admission run on those copies. Requires both explicit canonical Homes. Never migrates real stores, grants productive admission, creates a RUN or starts agents." },
137
+ "runtime flow admit": { operation: "Handler admission for the selected memory, source-snapshot or project-local interactive flow in the executing engine. Reads bounded UTF-8 JSON stdin with source and source_sha256; interactive requires its retained project pack, not installed canon. memory-init additionally accepts startup_input_schema to require its startup reader. Validates the exact descriptor using actual registered handlers and refuses unsupported handlers. Does not establish release trust, storage/provider readiness or semantic completion, and never creates Home, RUN or agents." },
138
+ "profiles create": { file: "Regular UTF-8 JSON file containing one complete validated agent profile. The ID must be unused. Credentials and unknown fields are refused; creation uses --expected-revision and never starts a model Turn." },
139
+ "profiles edit": { file: "Regular UTF-8 JSON file containing the complete replacement agent profile, not a patch. Its ID must already exist. Revision conflicts refuse the edit; retained RUN snapshots are unchanged." },
140
+ "profiles alias": {
141
+ target: "Existing canonical profile ID for the positional alias. Aliases cannot chain or collide with profile IDs. Supply exactly one of --target or --remove, plus --expected-revision.",
142
+ remove: "Remove the positional alias, not its target profile. Exclusive with --target. The revision-checked change does not rewrite retained RUN settings."
143
+ },
144
+ "profiles set-default": { clear: "Clear only the operator global default. Exclusive with a positional profile ID or alias; existing profiles, project routing and frozen RUN settings remain unchanged." },
145
+ "work add-batch": {
146
+ file: "Validated Work batch JSON file declaring children of --parent, including their task and dependency inputs. Adding logical Work does not launch physical Sessions.",
147
+ stage: "Explicit owner stage. With --request-key it must be the active running coordinator stage; attempt and cycle are resolved from retained RUN authority.",
148
+ "request-key": "Stable registration ID (1..96 letters, digits, dots, underscores or hyphens, starting with a letter or digit). Requires --stage. Identical replay returns the retained Work IDs; changed input or missing custody refuses allocation. Without this option the historical non-replayable batch behavior is retained."
149
+ },
150
+ "schema validate": { file: "JSON document to validate against --schema in the selected schema directory. Validation does not execute a flow or accept semantic completion." },
151
+ "migration verify": { file: "Existing dd-flow/mb-upgrade-migration-report@1 JSON report to verify against migration evidence; verification does not apply a storage migration." },
152
+ "migration readiness": {
153
+ "request-id": "Stable upgrade request ID. Retains a physically verified content-only storage proof; identical replay reuses it and changed inputs refuse. Does not create a RUN, sync content or migrate stores.",
154
+ "workspace-root": "Existing canonical absolute assigned workspace. Recorded with the project and request; this storage-only operation does not establish Git/workspace eligibility for the full upgrade.",
155
+ "project-root": "Registered active project requiring a complete release-impact chain and valid current provenance. Existing compatible run/resource stores are mandatory; this command never initializes or repairs them. Explicit mb-upgrade mode is required."
156
+ },
157
+ "migration apply": { file: "Explicit migration report JSON file used for admission to the requested apply operation; backup and ownership gates remain mandatory." },
158
+ "prompt render": { profile: "Prompt profile name required by the assigned Work execution context; not an operator executor profile ID or a Codex home profile." },
159
+ "runtime process register": { harness: "Harness family associated with the registered process/budget; registration is not a discovery or doctor probe.", "state-dir": "Adapter runtime state directory retained with the physical process for later ownership/admission checks." },
160
+ "runtime process admission": { "state-dir": "Exact adapter runtime state directory matching the confirmed process record; mismatched ownership refuses provider admission." },
161
+ "runtime process release-turn": { "observation-file": "Provider turn release observation file for the selected daemon/operation budget. This is not a model inventory snapshot or account listing." },
162
+ "runtime scope control": { mode: "Recoverable scope control intent: pause or stop. Drain/settlement remains pending until owned physical evidence is confirmed." },
163
+ "merge request route": { mode: "Route this MERGE request through same_session or server; selected execution policy and workspace admission still apply." },
164
+ "worktree close": { mode: "keep retains the feature checkout; remove requests its guarded removal. Dirty or foreign worktrees must not be silently discarded." },
165
+ "codex home remove": { mode: "keep-shared preserves shared state; remove-owned removes only the verified project-owned home entries.", profile: "Isolated project Codex home profile name, not an executor agent-profile ID." },
166
+ "codex home plan": { profile: "Isolated project Codex home profile name, not an executor agent-profile ID." },
167
+ "codex home init": { profile: "Isolated project Codex home profile name, not an executor agent-profile ID." },
168
+ "codex home status": { profile: "Isolated project Codex home profile name, not an executor agent-profile ID." },
169
+ "codex home print-env": { profile: "Isolated project Codex home profile name, not an executor agent-profile ID." },
170
+ "codex hooks print": { target: "Hook installation target: isolated (default) or default Codex home. Printing does not install hooks.", profile: "Project Codex home profile used to locate isolated hooks; not an executor profile." },
171
+ "codex hooks status": { target: "Hook installation target: isolated (default) or default Codex home. Status does not install hooks.", profile: "Project Codex home profile used to locate isolated hooks; not an executor profile." },
172
+ "codex hooks install": { target: "Hook installation target: isolated (default) or default Codex home; mutation also requires explicit confirmation.", profile: "Project Codex home profile used to locate isolated hooks; not an executor profile." },
173
+ "codex hooks remove": { target: "Hook installation target: isolated (default) or default Codex home; removal also requires explicit confirmation.", profile: "Project Codex home profile used to locate isolated hooks; not an executor profile." },
174
+ "protocol sync-from-run": { target: "Protocol state target derived from the selected RUN; auto uses the command's supported state mapping." },
175
+ "run reconcile": {
176
+ apply: "Persist the observed RUN health under its current ownership and revision fences. Without this switch, report only; never launch, resume or stop a provider.",
177
+ "no-progress-ms": "Override the health-assessment progress-age threshold in milliseconds; integer at least 1000. Defaults are 120000 for starting, 300000 for capturing and 1800000 otherwise. This is not a productive command timeout or permission to stop a live owner."
178
+ },
179
+ "run fork": { from: "Existing retained snapshot path to fork into a new RUN with the explicitly selected engine; not a control request identity." },
180
+ "run snapshot bootstrap create": { flow: "Pre-RUN boundary: sdlc starts at specify; mb-init, mb-upgrade and source workflows start at preflight from installed canon. interactive starts at preflight from the selected project's curated pack, never global fallback. Creates no RUN or provider Session.", output: "New snapshot directory outside the project and runtime Home. Captures original project files and Git state; refuses an existing output." },
181
+ "run control resume": { from: "Exact retained pause/stop control ID whose captured state authorizes this resume request; not a snapshot path." },
182
+ "stage block": { kind: "Blocker category: engine, harness or environment; code and summary identify the actionable cause." },
183
+ "migration impact": { mode: "Optional full_migration request forces the strict full-migration assessment; otherwise impact evidence determines patch, targeted_minor or full_migration." },
184
+ "runtime storage transition": {
185
+ "selection-sha256": "Exact independently retained full upgrade selection; checked before any storage effect. Commands issued by the selected engine include this value.",
186
+ action: "Selected frozen engine transport: plan retains the pair; apply performs its explicit cutover; status observes it. recovery-plan selects and fences separate recovery; recover executes it; recovery-status observes recovery. No command starts a model or RUN.",
187
+ "expected-sha256": "Exact retained migration request SHA for apply/status/recovery-plan, or retained recovery request SHA for recover/recovery-status. Not a fresh selector or permission to replace a request.",
188
+ "recovery-id": "Explicit recovery identity (1..86 safe ASCII characters); required only for recovery-plan. Recovery aborts the original apply.",
189
+ offline: "Required for apply, recovery-plan and recover after all local/external writers are drained. The engine independently checks registered logical and physical owners; it never kills them.",
190
+ "project-root": "Original retained upgrade project identity. No project or database is initialized by this transport.",
191
+ "workspace-root": "Original assigned upgrade workspace; must match the frozen request.",
192
+ "request-id": "Original upgrade request identity; the engine and migration files come only from that request."
193
+ },
194
+ "memory permissions preflight": { mode: "Permission contour to check: read, write, repair or report_only; write checks may create temporary permission probes.", flow: "Workflow permission contour: mb-init, mb-upgrade, mb-audit, mb-fix, mb-upgrade-review or custom. Not a filesystem path." },
195
+ "memory compose register": { "run": "Active mb-init or mb-upgrade RUN whose accepted discovery/diff-analysis and immutable execution bind the composition graph.", "request-key": "Stable composition registration identity; exact replay retains the original Work graph.", "result-file": "Bounded proposed composition JSON. Bytes are prepared before registration; agent fields do not grant Work or write authority." },
196
+ "memory upgrade publish": { run: "Active mb-upgrade authoring Stage with a registered blueprint and settled Work. Apply only its retained canonical publication plan and recovery archive; this does not accept the Stage or complete the RUN." },
197
+ "memory distill inputs": { run: "Bound mb-distill RUN. Read its original request and every delivered question/answer from retained custody; this grants no write scope and allocates no RUN or Session." },
198
+ "interactive inputs": { run: "Bound interactive RUN. Read the original request, its CLI-issued initial_request_basis, ordered turns, actual HITL answers and current input digest. Does not create a RUN, finish intake or approve changes." },
199
+ "interactive integrate": { run: "Bound interactive integration Stage with accepted independent review. Perform or reconcile only its retained scoped local Git operation; never push, reset or autostash. This does not accept the terminal Stage or complete the RUN.", "result-file": "Optional bounded JSON inclusion agreement: basis (role,event_id,sha256), reason and include_existing_paths. Required for pre-existing selected changes; cite genuine user input resolved before review. Exact retained replay needs no fresh agreement; unknown effects are reconciled, not repeated." },
200
+ "interactive checks": { run: "Bound interactive RUN. Retain current check obligations and execute them through the common aggregate runner; returned receipts are not Stage or review acceptance.", stage: "Current hardening or review Stage. Checks bind the complete task, scope and observed patch; corrections cannot reuse stale evidence.", "result-file": "Bounded JSON with additionalChecks (array of id,command,purpose) and optional noChecksReason. Each id must match ^CHK-[A-Za-z0-9-]{1,64}$, be unique and not collide with project policy checks; command and purpose must be nonempty strings. Example: {\"additionalChecks\":[{\"id\":\"CHK-project-test\",\"command\":\"npm test\",\"purpose\":\"Run the existing project tests\"}]}. Project CODE/readiness checks are always included. Keep accepted check IDs and commands unchanged in later rounds; do not drop retained obligations. A substantive no-check reason is required only when no checks apply." },
201
+ "interactive register": { run: "Bound interactive RUN. Register or replay the initial author/reviewer Work graph without starting a provider or accepting its results.", stage: "Current hardening or review Stage; each uses its own retained packet and role. Corrections use interactive correction and re-review, not arbitrary registration identities." },
202
+ "interactive correction": { run: "Bound interactive review RUN. Register or replay a scoped correction author within the same Stage and attempt; no Stage rewind.", work: "Exact latest completed negative reviewer Work. A ready reviewer or foreign Work cannot authorize correction." },
203
+ "interactive re-review": { run: "Bound interactive review RUN. Register or replay a fresh independent critic after a ready correction and current checks; author claims never become review acceptance.", work: "Exact completed correction-author Work in this review Stage. New registration requires latest current output and retained check evidence." },
204
+ "interactive scope": { run: "Bound interactive RUN. Retain the coordinator's selected mutation scope and original before-images. New user input requires explicit scope reassessment; no files are edited or Git effects performed.", "result-file": "Bounded JSON with exactly requestId, paths (sorted unique relative files), basis (role,event_id,sha256), reason and expectedInputsSha256. Basis for the original request uses role=request, event_id=0 (a JSON integer, not a request ID), and initial_request.sha256 from interactive inputs. For later input copy role (turn,answer,finish), integer event_id and sha256 from its exact messages entry; question is not user approval. expectedInputsSha256 is the complete interactive inputs response sha256. requestId identifies the scope operation, not the RUN: use a fresh scope requestId when the input digest, paths, basis or reason changes, including after finish; reuse only for an identical proposal retry. Basis must name genuine delivered user input; semantic applicability remains agent-owned. A finish message alone cannot widen scope." },
205
+ "interactive turn": { run: "Existing interactive RUN accepting turns. Retain these exact user bytes without allocating another RUN or Session. An unanswered managed pause also receives an ordinary controller answer; accepted means queued, not physically delivered.", "request-id": "Stable delivery identity. Exact retry reconciles the original turn and original pause only; different bytes or revision under the same identity refuse.", "expected-inputs-sha256": "Current SHA-256 from interactive inputs, including actual HITL answers. A concurrent delivery refuses instead of overwriting it.", "intake-file": "Bounded nonempty UTF-8 user message, preserved byte-for-byte, up to 1 MiB. Its text is never interpreted as a finish command or inclusion approval." },
206
+ "interactive finish": { run: "Existing interactive RUN. Explicitly close free-turn intake within this RUN and queue an ordinary answer to its unanswered managed pause, if present. This does not accept review, commit changes or complete the RUN; attached execution retains input for its current coordinator.", "request-id": "Stable finish delivery identity. Exact retry reconciles the original retained finish and original pause without duplicating either.", "expected-inputs-sha256": "Current SHA-256 from interactive inputs. Finish includes every delivered turn and HITL answer; stale revisions refuse.", "intake-file": "Bounded nonempty UTF-8 final user message and constraints, preserved byte-for-byte, up to 1 MiB. Choosing this command, not text inside the file, requests finish." },
207
+ "interactive git-inputs": { run: "Bound interactive RUN. Inspect original selected workspace, index and HEAD versions without Git writes or inclusion approval. Resolve existing-change decisions before accepting review.", stage: "Descriptor Stage whose current input and mutation scope must match. Available before finish and accepted review; stale scope or moved original Git inputs refuse." },
208
+ "memory fix context": { run: "Bound mb-fix RUN. Read its original selected findings, source intake and all delivered user inputs. Read-only; does not approve repair or close findings." },
209
+ "memory fix scope": { run: "Bound mb-fix RUN. Prepare current drift and selected-target observations without writing documents or accepting the intake Stage.", "result-file": "Bounded JSON object with routing and write_scope. Scope cites an actual delivered request/answer and the complete current user-input digest; semantic consent remains agent-owned." },
210
+ "memory fix publish": { run: "Active mb-fix repair Stage with accepted intake. Apply only the original admitted document publication; does not accept verification, review or finish.", "result-file": "Bounded JSON object with outputs: path, content (string or null for selected removal), finding_ids. Paths and findings must match the accepted repair scope. Retained intent governs recovery." },
211
+ "memory fix integrate": { run: "Active mb-fix finish Stage with independently verified and accepted review. Scoped local commit/merge under the frozen Git policy; never push, reset or autostash.", "result-file": "Optional current agreement object: user_inputs_sha256 and approval_source. Required when later delivered answers make the original agreement stale; cannot widen the accepted repair scope. Unknown original Git effects require reconciliation, not redispatch." },
212
+ "memory distill publish": { run: "Active bound mb-distill promote Stage with accepted review and independently settled research Work. Apply the original scoped publication and retain its observed result; this does not accept the Stage or RUN.", "result-file": "Bounded JSON proposal: write_scope, user_inputs_sha256 and outputs (path, content, candidate_ids). The agent interprets agreement; CLI checks delivered sources, accepted candidate IDs, exact paths and original-intent recovery. Missing agreement requires stage pause, not invented approval." },
213
+ "memory verify checks": { "run": "Active mb-init or mb-upgrade RUN. Execute only its independently selected declared verification checks." },
214
+ "memory review register": { "run": "Active mb-init or mb-upgrade RUN with accepted verification. Register initial independent reviewers; this does not launch providers." },
215
+ "memory review collect": { "run": "Active mb-init or mb-upgrade RUN. Collect genuine registered initial-wave results without accepting the Stage or granting correction authority." },
216
+ "memory finish evidence": { "run": "Active mb-init or mb-upgrade finish RUN. Publish independently prepared coverage, integration and readiness evidence; publication does not complete Stage or RUN." },
217
+ "memory finish integrate": { "run": "Active mb-init or mb-upgrade finish RUN. Commit only accepted Memory Bank and owned lint files under retained Git policy, then integrate the admitted workspace locally. Preserve unrelated staged/dirty files; never push. Lost-response replay observes the original effects without another commit." },
218
+ "memory corrections register": { run: "Active mb-init or mb-upgrade review RUN. Register only the correction plan bound to the independently retained preceding review.", wave: "Correction wave 1 follows initial review; wave 2 requires settled first selective review. A third wave is unsupported.", "result-file": "Bounded correction-plan JSON prepared before graph registration; exact retained replay cannot substitute another plan." },
219
+ "memory corrections checks": { run: "Active mb-init or mb-upgrade review RUN with a genuinely settled correction view.", wave: "Run only the independently selected finite check profile for correction wave 1 or 2; this does not accept semantic quality." },
220
+ "memory review selective-register": { run: "Active mb-init or mb-upgrade review RUN. Allocate selective reviewers only after their wave's committed checks.", wave: "Select correction wave 1 or 2. Unaffected accepted units remain retained; registration does not launch providers." },
221
+ "memory review selective-collect": { run: "Active mb-init or mb-upgrade review RUN. Return genuine selective reviewer references, not Stage or RUN acceptance.", wave: "Select independently registered review of correction wave 1 or 2; missing wave custody never falls back to initial review." },
222
+ "memory repair baseline": { ...memoryRepairOptions, work: "Register the immutable prelaunch baseline for this repair Work; dependent/peer changes require explicit current-view registration first. Does not launch providers." },
223
+ "memory repair copy-reserve": { ...memoryRepairOptions, work: "Reserve the owned private copy for this repair Work after its committed baseline; reservation does not create the copy or launch providers." },
224
+ "memory repair copy-materialize": { ...memoryRepairOptions, work: "Materialize the reserved private copy for this repair Work with retained build/ready receipts; no provider launch or shared document publication." },
225
+ "memory repair copy-dispatch": { ...memoryRepairOptions, work: "Prepare the frozen profile and verified ready-copy root for this repair Work. Read-only packet output does not launch a provider, claim a Session or replace fresh launcher custody checks." },
226
+ "memory repair current-view": { ...memoryRepairOptions, work: "Retain the explained settled-peer input view for this repair Work; does not replace an existing immutable baseline or grant launch authority." },
227
+ "memory repair publication-source": { ...memoryRepairOptions, wave: "Wave 1 only: retain independently explained shared publication source before reserving output. Wave 2 uses its separate retained launch owner." },
228
+ "memory repair publication-reserve": { ...memoryRepairOptions, "result-file": "Bounded exact private repair result bytes prepared before dispatch. Reserve the independently validated delta only; wave 1 requires a previously registered publication-source." },
229
+ "memory repair publication-apply": { ...memoryRepairOptions, work: "Apply or reconcile one retained publication action for this repair Work; repeat until physical publication completes. Unknown effect never authorizes blind retry." },
230
+ "memory repair publication-finish": { ...memoryRepairOptions, work: "Settle this repair Work only after independently proven physical publication completion; does not accept semantic review or finish Stage/RUN." }
231
+ };
232
+ export const globalOptionDocumentation = [
233
+ { name: "help", description: "Show help before command preparation or resource access; -h is equivalent.", kind: "switch", required: false, repeatable: false, choices: [], physical_path: false },
234
+ { name: "option", description: "Help-only selector for one option; accepts name or --name.", kind: "value", required: false, repeatable: false, choices: [], physical_path: false },
235
+ { name: "json", description: "Emit structured JSON rather than human text.", kind: "switch", required: false, repeatable: false, choices: [], physical_path: false },
236
+ { name: "progress-jsonl", description: "Emit machine-readable progress events during command execution.", kind: "switch", required: false, repeatable: false, choices: [], physical_path: false },
237
+ { name: "response-file", description: "Execution-only response destination; help never opens or writes it.", kind: "value", required: false, repeatable: false, choices: [], physical_path: true }
238
+ ];
239
+ export function optionsForCommand(input, command) {
240
+ return [...new Set([...input.values, ...input.switches])].map(name => ({
241
+ name,
242
+ description: optionDescription(name, command),
243
+ kind: input.switches.includes(name) ? "switch" : "value",
244
+ required: input.required.includes(name), repeatable: input.repeatable.includes(name),
245
+ choices: input.enums[name] ?? [], physical_path: physicalPathOptions.has(name) && name !== "flow" && name !== "stage"
246
+ }));
247
+ }
248
+ function optionDescription(name, command) {
249
+ const description = (command ? commandOptionDescriptions[command]?.[name]
250
+ ?? commandOptionDescriptions[commandAliases[command] ?? command]?.[name] : undefined) ?? optionDescriptions[name] ?? runtimeOptionDescriptions[name];
251
+ if (!description)
252
+ throw new Error(`Missing CLI option documentation: ${command ?? "inventory"} --${name}`);
253
+ return description;
254
+ }
255
+ /** Shared help/completion option set for a route, family or root catalog. */
256
+ export function optionsForCommandTree(command) {
257
+ const options = new Map(globalOptionDocumentation.map(option => [option.name, option]));
258
+ for (const [key, input] of Object.entries(commandInputs)) {
259
+ if (!command || key === command || key.startsWith(`${command} `)) {
260
+ for (const option of optionsForCommand(input, key))
261
+ options.set(option.name, option);
262
+ }
263
+ }
264
+ return [...options.values()].sort((left, right) => left.name.localeCompare(right.name, "en"));
265
+ }
266
+ /** One exact native routing classification shared by router and compatibility admission. */
267
+ export function routerNativeRoute(key) {
268
+ return key === "version" || key === "tool ensure wt" || key.startsWith("engine ") || key === "schema validate"
269
+ || key === "flow list" || key === "flow show" || key === "flow mb-init" || key === "init" || key === "flow mb-upgrade" || key === "upgrade"
270
+ || key === "flow mb-audit" || key === "flow project-review" || key === "flow mb-distill" || key === "flow mb-fix" || key === "flow review-fix" || key === "flow interactive" || key === "review"
271
+ || key === "flow release" || key === "flow deploy" || key === "flow publish"
272
+ || key === "run reconcile" || key === "runtime storage admit" || key === "runtime storage qualify" || key === "runtime storage transition"
273
+ || key === "runtime flow admit"
274
+ || key.startsWith("profiles ") || key.startsWith("models ") || key.startsWith("harnesses ") || key.startsWith("completion ") || key === "setup" || key.startsWith("setup ")
275
+ || key === "storage migrate-writer" || key === "codex hook handle"
276
+ || key === "zcode hook handle" || key === "zcode invocation prepare"
277
+ || /^(zcode|grok|droid|opencode|agy) (event handle|usage ingest)$/.test(key);
278
+ }
279
+ export function commandKeyForPositions(positions) {
280
+ return Object.keys(commandInputs).filter(key => key.split(" ").every((part, index) => positions[index] === part))
281
+ .sort((a, b) => b.split(" ").length - a.split(" ").length)[0];
282
+ }
283
+ /** Best matching help topic for rejected argv; never validates or executes it.
284
+ * Option values and literal passthrough cannot impersonate a command path.
285
+ */
286
+ export function commandHelpTopic(args, fallback) {
287
+ const switches = new Set([...globalOptionDocumentation.filter(option => option.kind === "switch").map(option => option.name),
288
+ ...Object.values(commandInputs).flatMap(input => input.switches)]);
289
+ const positions = [];
290
+ for (let index = 0; index < args.length; index++) {
291
+ const arg = args[index];
292
+ if (arg === "--")
293
+ break;
294
+ if (arg.startsWith("--")) {
295
+ const name = arg.slice(2).split("=", 1)[0];
296
+ if (!arg.includes("=") && !switches.has(name) && args[index + 1] && !args[index + 1].startsWith("-"))
297
+ index++;
298
+ }
299
+ else if (!arg.startsWith("-"))
300
+ positions.push(arg);
301
+ }
302
+ return commandKeyForPositions(positions) ?? fallback;
303
+ }
@@ -0,0 +1,192 @@
1
+ /** Reviewed meanings for existing runtime options. Grammar owns requiredness,
2
+ * repetition and enumerations; these descriptions do not grant effect authority.
3
+ */
4
+ export const runtimeOptionDescriptions = {
5
+ "acquire-lock": "Boolean: acquire the workspace lane lock when claiming the next merge job; waiting alone does not grant ownership.",
6
+ "adapter-executable": "Executable path retained with the registered adapter process for ownership and later reconciliation.",
7
+ after: "Timeline cursor for controller status; return observations after this sequence number.",
8
+ alias: "Additional report alias to retain with the completed stage; repeat for multiple aliases.",
9
+ all: "Refresh dashboards for all selected projects rather than only the current project.",
10
+ "allow-downgrade": "Explicitly permit lowering flow flags during a revision-checked change; other admission gates still apply.",
11
+ "answer-file": "File containing the user's answer for the selected paused stage or drive request; not a replacement task or execution policy.",
12
+ "answer-stdin": "Read the stage answer from standard input instead of --answer-file.",
13
+ apply: "Apply the proposed project-ID migration; without this switch the command remains a preview.",
14
+ "available-slots": "Record available native delegation capacity as an integer from 0 through 15; capacity is not proof of child settlement.",
15
+ "max-parallel": "Freeze the Work concurrency limit (external integer 1..256; explicit native 1..15). Omit on replay to retain the original selection; native capacity requires an authorized technical probe and never overrides runtime budgets or Work dependencies.",
16
+ "delegation": "Select external Work sessions (default) or explicit native children. Native fresh init requires --allow-live-probe; it cannot switch worker profiles.",
17
+ "allow-live-probe": "Authorize this request's bounded technical native child probe outside the RUN. It can incur provider usage; unknown effects retain exact operation custody and never restart fan-out.",
18
+ "native-config-home": "Optional absolute provider configuration home for native qualification. Otherwise preserve normal harness authentication and configuration. The CLI never copies or links credentials or rewrites operator configuration.",
19
+ backup: "New absolute backup destination for the explicitly drained database; an existing backup is never overwritten.",
20
+ "backup-created-at": "Timestamp of the retained backup used as migration evidence; must agree with the selected migration inputs.",
21
+ "backup-path": "Path to the retained backup bound into migration planning, reporting or application evidence.",
22
+ base: "Git base reference from which the requested feature worktree is created.",
23
+ bootstrap: "Request the supported initial stage bootstrap rather than starting a stage on an existing RUN; still requires declared intake and admission.",
24
+ branch: "Git branch assigned to the selected workspace or worker; a branch name does not itself authorize creation or merge.",
25
+ "budget-json": "Inline JSON declaration of runtime process budget; validated by the process owner before registration.",
26
+ "cancel-queue": "Boolean: cancel protocol queue entries as part of cancellation; does not silently settle running workers.",
27
+ candidate: "Mark the created snapshot as a recovery candidate rather than claiming accepted restoration.",
28
+ "capture-key": "Exact retained capture digest selecting the recovery state for the requested scope generation.",
29
+ "capture-path": "Destination for the selected RUN recovery capture; capture is distinct from accepting recovery.",
30
+ "capture-root": "Root directory for controller recovery captures associated with this drive request.",
31
+ check: "Check identity associated with a registered runtime process, preserving its ownership scope.",
32
+ "check-ref": "Retained check evidence reference motivating repair Work; repeat to bind multiple checks.",
33
+ "check-registry": "Include project registry consistency diagnostics in status; does not repair the registry.",
34
+ "close-sessions": "Boolean: request closing protocol Sessions during cancellation; physical completion requires separate evidence.",
35
+ code: "Stable diagnostic code for the engine, harness or environment blocker being recorded.",
36
+ command: "Command to launch as the owned runtime service, with declared ports and readiness checks.",
37
+ "context-file": "Prepared context file for the selected stage/controller request; its bytes must match --context-sha256.",
38
+ "context-sha256": "SHA-256 of the exact --context-file bytes, preventing substitution of prepared context.",
39
+ "control-id": "Retained RUN control request identity used by its owner or reconciliation command.",
40
+ "controller-id": "Retained drive controller identity; does not create an unrelated controller or bypass ownership.",
41
+ "daemon-id": "Selected provider daemon identity for scoped admission or recovery; not a request to start an arbitrary daemon.",
42
+ dashboard: "Dashboard artifact path associated with the completed stage.",
43
+ data: "Stage data artifact path supplied for validation and completion; its applicable schema is independently selected.",
44
+ "data-schema-id": "Registered schema identity for the stage data artifact; selecting a schema is not semantic acceptance.",
45
+ database: "Existing absolute SQLite database path to migrate; the command does not initialize a missing runtime database.",
46
+ "decision-file": "Retained stage decision artifact required by the selected finish contract.",
47
+ dir: "Stage artifact directory selected for attachment or lifecycle processing; must satisfy the selected stage's layout contract.",
48
+ "dispatch-barrier": "Retained dispatch barrier associated with the registered runtime process; not proof of productive admission.",
49
+ "engine-version": "Exact installed engine version selected for legacy binding recovery or a requested RUN fork.",
50
+ escalate: "Escalation policy for an owned pause/stop operation; does not authorize stopping unrelated processes.",
51
+ event: "Hook event name identifying the Codex event being handled; hook payload is validated separately.",
52
+ evidence: "Evidence reference supporting a completed plan item; repeat to retain multiple references.",
53
+ "execution-routing-file": "Validated execution routing JSON file used for the selected RUN creation or restoration; retained RUN profiles remain frozen.",
54
+ file: "JSON input file consumed by this command's declared validator; see the exact command topic for its contract.",
55
+ flag: "Explicit flow flag assignment for creation or revision; repeat for multiple assignments. Revision and policy gates still apply.",
56
+ flow: "Memory workflow whose permissions are checked; preflight does not execute that workflow.",
57
+ "flow-kind": "Flow kind recorded when creating the RUN; a label alone cannot register handlers or admit execution.",
58
+ format: "Dashboard output format; rendering and opening follow the selected command's supported formats.",
59
+ from: "Retained source identity for a fork or resume; its meaning is specified by the exact command topic.",
60
+ "from-check": "Check identity causing the repair Work, preserving traceability to the failed check.",
61
+ "from-finding": "Review finding identity motivating repair Work; repeat for multiple findings.",
62
+ "from-unresolved": "Unresolved issue identity motivating repair Work; repeat for multiple issues.",
63
+ generation: "Exact runtime scope generation; stale generations cannot admit recovery or new dispatch.",
64
+ global: "Read global dashboard data rather than one project dashboard.",
65
+ "grace-ms": "Grace period in milliseconds for an owned process or control stop before reconciliation/escalation.",
66
+ "group-by": "Usage aggregation dimension; grouping does not change source-backed usage evidence.",
67
+ hide: "Timeline event category to hide from the displayed view; repeat for multiple categories. Retained events are not deleted.",
68
+ "hook-event-id": "Trusted hook event identity binding this lifecycle invocation to its physical event.",
69
+ id: "Exact runtime process registry identity targeted by registration, lease operations or admission.",
70
+ "idempotency-key": "Stable flow-flag revision request key; retry the exact same change rather than applying it twice.",
71
+ "include-results": "Include retained Work result projections in the listing; listing remains an observation, not acceptance.",
72
+ incomplete: "Permit creation of an explicitly incomplete recovery snapshot; does not qualify it as a restorable complete snapshot.",
73
+ "intake-file": "File containing the raw user intake for initial stage bootstrap; do not replace it with an inferred solution.",
74
+ "intake-stdin": "Read raw bootstrap intake from standard input instead of --intake-file.",
75
+ "integrity-checksum": "Expected retained engine integrity checksum, checked independently of its version label.",
76
+ "interruption-json": "Inline JSON interruption evidence opening the selected RUN recovery attempt.",
77
+ "invocation-id": "Exact retained lifecycle invocation identity; syntax alone does not establish generation, ownership or authorization.",
78
+ "json-file": "JSON transition payload file; an alternative to the transition payload-file input.",
79
+ key: "Configuration or RUN variable key selected for reading or writing; supported configuration keys are validated by the owner.",
80
+ kind: "Classification of the recorded blocker or process; the exact command determines supported kinds.",
81
+ lane: "Named project workspace lane whose workspace, waiters or lock are being inspected or changed.",
82
+ "lease-ms": "Runtime process lease duration in milliseconds; renewal requires the current lease token.",
83
+ "lease-token": "Current owned lease token for the exact process or lane; not an executor credential or an ownership override.",
84
+ "registration-sha256": "Exact managed-process registration binding returned by confirmation or renewal. Pins the resource Home and registered owner/PID identity; a changed registration refuses rather than matching a reused process ID.",
85
+ limit: "Maximum number of Work entries returned by the listing; must be a positive integer.",
86
+ "manifest-json": "Inline runtime-scope manifest declaration binding the selected source manifest and executions; changed declarations refuse.",
87
+ "max-parallel-projects": "Maximum projects processed concurrently by the merge server; does not widen per-project merge authority.",
88
+ "memory-bank": "Memory Bank path whose access is checked by permission preflight; no installation or workflow is started.",
89
+ mode: "Operation mode accepted by this exact command; consult its allowed values and mode-specific effects.",
90
+ "native-session-id": "Existing physical provider Session identity for scoped recovery/admission; logical Work ancestry is separate.",
91
+ "next-action": "Explicit next-action projection stored with RUN creation or an operator override; it is not automatic dispatch.",
92
+ "observations-file": "Bounded observations JSON file for the selected fan-out/native scope; observations must satisfy ownership and settlement contracts.",
93
+ on: "Dependency Work identity to add or remove; repeat for multiple dependencies. Dependencies are not physical Session parentage.",
94
+ once: "Process one merge-server iteration instead of polling continuously.",
95
+ open: "Open the refreshed dashboard after rendering; does not alter RUN control state.",
96
+ operation: "Named operation associated with a registered process or provider admission request.",
97
+ "operation-id": "Exact retained provider operation identity bound to turn admission or release.",
98
+ "operational-decision-file": "Validated operational decision artifact authorizing the applicable snapshot restoration or fork route; not a release or arbitrary mutation permit.",
99
+ "origin-work": "Origin Work identity motivating repair; repeat to preserve multiple origins.",
100
+ outcome: "Outcome declared for the selected stage result; finish still validates its contract and evidence before transition.",
101
+ output: "Destination for a created snapshot, fork artifact or rendered dashboard; see the command's artifact contract.",
102
+ owner: "Runtime resource owner identity used for registration, admission or reconciliation; ownership is independently checked.",
103
+ "owner-pid": "Operating-system PID of the registered process owner, used for scoped liveness and reconciliation.",
104
+ package: "Engine package name used to locate the requested installed snapshot.",
105
+ parent: "Logical parent Work identity for batch creation or listing; does not make children physical subagents automatically.",
106
+ path: "Concrete workspace path used by lane, merge or worktree operations; not the stable project identity.",
107
+ "pause-id": "Exact retained user-interaction pause identity answered by this drive request.",
108
+ "payload-base64": "Base64-encoded Session registration payload; use only one payload transport.",
109
+ "payload-file": "File containing the selected transition or Session registration payload; validated before registration or transition.",
110
+ "payload-json": "Inline JSON Session registration payload; use only one payload transport.",
111
+ pid: "Operating-system PID of the registered physical process; a PID alone does not prove ownership or completion.",
112
+ "plan-file": "Previously generated cleanup plan file; application still checks its scope and explicit reason.",
113
+ "plan-item": "Plan item identity selected for the bounded worker prompt.",
114
+ "poll-interval": "Polling interval in seconds for lane/merge waiting; must be positive.",
115
+ "poll-seconds": "Merge server polling interval in seconds; must be positive.",
116
+ ports: "Comma-separated port declarations for the owned runtime service.",
117
+ preset: "Named flow-flag preset for creation or revision; explicit flag assignments and policy admission remain separate.",
118
+ "process-group-id": "Operating-system process-group identity retained for owned-tree cleanup; not a permit to kill unrelated groups.",
119
+ project: "Project selector for dashboard data, rendering or opening.",
120
+ "project-id": "Registered project identity associated with the physical runtime process.",
121
+ "prompt-sha256": "Digest of exact provider prompt bytes associated with operation admission.",
122
+ protocol: "Protocol selector limiting dashboard output to the requested protocol.",
123
+ "protocol-id": "Existing protocol identity whose feature worktree is planned, created, inspected or closed.",
124
+ "protocol-override-file": "Validated protocol override JSON input supplied at RUN creation; does not overwrite an existing frozen RUN.",
125
+ "question-file": "File containing the user question that pauses this stage/Work under the selected interaction contract.",
126
+ "question-stdin": "Read the stage question from standard input instead of --question-file.",
127
+ ready: "List dependency-ready Work entries rather than all entries; readiness does not launch them.",
128
+ "ready-path": "HTTP path used for the runtime service readiness check.",
129
+ "ready-port": "Declared service port used for the runtime readiness check.",
130
+ "ready-timeout-ms": "Maximum service readiness wait in milliseconds; must be a positive integer.",
131
+ "reason-file": "File containing the reason artifact required by the selected lifecycle finish contract.",
132
+ "recovery-id": "Exact retained RUN recovery attempt identity; recovery acceptance and physical settlement remain separate gates.",
133
+ "release-locks": "Boolean: request protocol lock release during cancellation; ownership checks still apply.",
134
+ report: "Report artifact path associated with the completed stage.",
135
+ request: "Retained request reference supplied to the selected stage finish contract; not a new setup request ID.",
136
+ requeue: "Boolean: put the failed merge job or bundle back in the queue; a failure is not converted into accepted merge evidence.",
137
+ "require-session-binding": "Require trusted physical Session binding before starting the stage; do not synthesize one from a RUN ID.",
138
+ "result-file": "Validated result JSON artifact for this stage or Work; process exit success is not a substitute for accepted result evidence.",
139
+ "result-stdin": "Read result JSON from standard input instead of --result-file.",
140
+ "retry-check": "Check identity requested for the selected bounded retry path; prior results cannot be reused without matching evidence.",
141
+ retryable: "Mark the recorded blocker as retryable; does not launch a retry or bypass the blocker.",
142
+ role: "Role metadata retained with the registered runtime process.",
143
+ schema: "Registered JSON schema name against which the supplied file is validated.",
144
+ "schema-dir": "Explicit schema directory for validation; not a workflow handler registry or permission to execute code.",
145
+ "scope-id": "Exact retained runtime/EVAL scope identity; operations must not affect neighboring scopes.",
146
+ "scope-ids-json": "Read-only JSON array of 1..16 unique retained scope IDs; returns ordered fresh inventories without fencing or stopping them.",
147
+ "semantic-file": "Stage semantic result artifact; applicable schema and finish checks are selected independently.",
148
+ session: "Physical Session selector for source-backed usage aggregation.",
149
+ "session-id": "Exact retained physical Session identity for registration, status, stop or usage synchronization.",
150
+ "settlement-json": "Inline JSON physical settlement evidence sealing a recovery attempt; logical inactivity alone is insufficient.",
151
+ slug: "Safe human-readable slug used for the new typed identifier or RUN.",
152
+ snapshot: "Existing snapshot artifact selected for bootstrap or RUN restoration; restored execution requires independent admission.",
153
+ "source-home": "Source Codex home used to plan or initialize the isolated project home; credentials remain operator-owned.",
154
+ "source-version": "Source Memory Bank version whose migration impact and evidence are being assessed.",
155
+ stage: "Stage identity within the selected flow/RUN; a name alone cannot admit a foreign stage.",
156
+ "stage-entry": "Stage entry selected for snapshot capture.",
157
+ "stage-report": "Stage report artifact path supplied for completion and retained observation.",
158
+ state: "Terminal state reported for the owned runtime process; supported values are shown below.",
159
+ status: "Work filter or declared stage/RUN state, depending on the exact command; lifecycle admission remains authoritative.",
160
+ stderr: "Retained standard-error log path associated with the registered process.",
161
+ stdout: "Retained standard-output log path associated with the registered process.",
162
+ "stop-after": "Stage boundary at which the drive controller should stop advancing; not proof of physical child settlement.",
163
+ subject: "Safe subject text for the bootstrap RUN; raw user intake is supplied separately.",
164
+ "subject-id": "Identity of the protocol or other subject associated with the new RUN.",
165
+ "subject-type": "Type of subject associated with RUN creation; it does not select an executor.",
166
+ summary: "Human summary retained with plan-item or merge completion/note evidence.",
167
+ "summary-file": "File containing the diagnostic summary for a stage blocker.",
168
+ "summary-stdin": "Read the blocker summary from standard input instead of --summary-file.",
169
+ target: "Destination selector for protocol synchronization or hook management; see the exact command topic.",
170
+ "target-home": "Destination isolated Codex home used by the project home plan/init operation.",
171
+ "target-version": "Target Memory Bank version selected for migration impact, planning or application.",
172
+ "task-file": "Bounded worker task artifact used for prompt rendering or repair Work creation.",
173
+ "task-profile-file": "Validated task-profile JSON input used when freezing a new RUN's task policy.",
174
+ "task-stdin": "Read repair task content from standard input instead of --task-file.",
175
+ tasks: "Task directory whose access is checked by Memory Bank permission preflight.",
176
+ timeout: "Maximum lane/merge waiting duration in seconds; not a provider model timeout.",
177
+ to: "Requested protocol lifecycle target; transition requirements are validated before changing state.",
178
+ ttl: "Lane lease lifetime in seconds; expiry does not by itself prove physical process settlement.",
179
+ type: "Typed identifier family whose next identifier is being previewed.",
180
+ "user-required": "Boolean indicating that the blocked plan item requires a user decision.",
181
+ value: "Configuration or RUN variable value to store under --key; configuration-specific validation still applies.",
182
+ verdict: "Operator override verdict projection; cannot turn an override into ordinary semantic acceptance.",
183
+ "verification-file": "Verification evidence artifact required by the selected stage finish or repair provenance contract.",
184
+ version: "Exact engine package version to inspect; omitted selection follows the engine-info command's existing resolver.",
185
+ viewer: "Viewer requested for opening the rendered dashboard.",
186
+ "wait-ms": "Maximum observation wait in milliseconds for the requested RUN control operation; timeout is not terminal settlement.",
187
+ work: "Exact Work identity within the selected RUN/stage or associated with a registered process/merge request.",
188
+ "worker-id": "Worker identity bound to the selected Session, lane lease or merge claim; not a model/profile selector.",
189
+ worktree: "Worktree handling policy requested during protocol cancellation; project ownership and cleanup guards still apply.",
190
+ write: "Boolean: publish the project summary instead of only returning its current projection.",
191
+ yes: "Explicit confirmation for hook installation/removal; does not bypass project access or target validation."
192
+ };