@openrig/cli 0.1.12 → 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (518) hide show
  1. package/daemon/assets/openrig-activity-hook-relay.cjs +104 -0
  2. package/daemon/dist/adapters/claude-code-adapter.d.ts +14 -6
  3. package/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
  4. package/daemon/dist/adapters/claude-code-adapter.js +183 -65
  5. package/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
  6. package/daemon/dist/adapters/claude-resume.d.ts +5 -0
  7. package/daemon/dist/adapters/claude-resume.d.ts.map +1 -1
  8. package/daemon/dist/adapters/claude-resume.js +13 -0
  9. package/daemon/dist/adapters/claude-resume.js.map +1 -1
  10. package/daemon/dist/adapters/codex-resume.d.ts +8 -1
  11. package/daemon/dist/adapters/codex-resume.d.ts.map +1 -1
  12. package/daemon/dist/adapters/codex-resume.js +74 -5
  13. package/daemon/dist/adapters/codex-resume.js.map +1 -1
  14. package/daemon/dist/adapters/codex-runtime-adapter.d.ts +9 -5
  15. package/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
  16. package/daemon/dist/adapters/codex-runtime-adapter.js +255 -28
  17. package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
  18. package/daemon/dist/adapters/terminal-adapter.d.ts +2 -1
  19. package/daemon/dist/adapters/terminal-adapter.d.ts.map +1 -1
  20. package/daemon/dist/adapters/terminal-adapter.js +7 -1
  21. package/daemon/dist/adapters/terminal-adapter.js.map +1 -1
  22. package/daemon/dist/adapters/tmux.d.ts.map +1 -1
  23. package/daemon/dist/adapters/tmux.js +53 -5
  24. package/daemon/dist/adapters/tmux.js.map +1 -1
  25. package/daemon/dist/db/migrations/021_seat_handover_observability.d.ts +3 -0
  26. package/daemon/dist/db/migrations/021_seat_handover_observability.d.ts.map +1 -0
  27. package/daemon/dist/db/migrations/021_seat_handover_observability.js +11 -0
  28. package/daemon/dist/db/migrations/021_seat_handover_observability.js.map +1 -0
  29. package/daemon/dist/db/migrations/022_node_codex_config_profile.d.ts +3 -0
  30. package/daemon/dist/db/migrations/022_node_codex_config_profile.d.ts.map +1 -0
  31. package/daemon/dist/db/migrations/022_node_codex_config_profile.js +7 -0
  32. package/daemon/dist/db/migrations/022_node_codex_config_profile.js.map +1 -0
  33. package/daemon/dist/db/migrations/023_stream_items.d.ts +16 -0
  34. package/daemon/dist/db/migrations/023_stream_items.d.ts.map +1 -0
  35. package/daemon/dist/db/migrations/023_stream_items.js +37 -0
  36. package/daemon/dist/db/migrations/023_stream_items.js.map +1 -0
  37. package/daemon/dist/db/migrations/024_queue_items.d.ts +19 -0
  38. package/daemon/dist/db/migrations/024_queue_items.d.ts.map +1 -0
  39. package/daemon/dist/db/migrations/024_queue_items.js +52 -0
  40. package/daemon/dist/db/migrations/024_queue_items.js.map +1 -0
  41. package/daemon/dist/db/migrations/025_queue_transitions.d.ts +13 -0
  42. package/daemon/dist/db/migrations/025_queue_transitions.d.ts.map +1 -0
  43. package/daemon/dist/db/migrations/025_queue_transitions.js +28 -0
  44. package/daemon/dist/db/migrations/025_queue_transitions.js.map +1 -0
  45. package/daemon/dist/db/migrations/026_inbox_entries.d.ts +14 -0
  46. package/daemon/dist/db/migrations/026_inbox_entries.d.ts.map +1 -0
  47. package/daemon/dist/db/migrations/026_inbox_entries.js +35 -0
  48. package/daemon/dist/db/migrations/026_inbox_entries.js.map +1 -0
  49. package/daemon/dist/db/migrations/027_outbox_entries.d.ts +12 -0
  50. package/daemon/dist/db/migrations/027_outbox_entries.d.ts.map +1 -0
  51. package/daemon/dist/db/migrations/027_outbox_entries.js +30 -0
  52. package/daemon/dist/db/migrations/027_outbox_entries.js.map +1 -0
  53. package/daemon/dist/db/migrations/028_project_classifications.d.ts +26 -0
  54. package/daemon/dist/db/migrations/028_project_classifications.d.ts.map +1 -0
  55. package/daemon/dist/db/migrations/028_project_classifications.js +44 -0
  56. package/daemon/dist/db/migrations/028_project_classifications.js.map +1 -0
  57. package/daemon/dist/db/migrations/029_classifier_leases.d.ts +22 -0
  58. package/daemon/dist/db/migrations/029_classifier_leases.d.ts.map +1 -0
  59. package/daemon/dist/db/migrations/029_classifier_leases.js +41 -0
  60. package/daemon/dist/db/migrations/029_classifier_leases.js.map +1 -0
  61. package/daemon/dist/db/migrations/030_views_custom.d.ts +15 -0
  62. package/daemon/dist/db/migrations/030_views_custom.d.ts.map +1 -0
  63. package/daemon/dist/db/migrations/030_views_custom.js +27 -0
  64. package/daemon/dist/db/migrations/030_views_custom.js.map +1 -0
  65. package/daemon/dist/db/migrations/031_watchdog_jobs.d.ts +34 -0
  66. package/daemon/dist/db/migrations/031_watchdog_jobs.d.ts.map +1 -0
  67. package/daemon/dist/db/migrations/031_watchdog_jobs.js +59 -0
  68. package/daemon/dist/db/migrations/031_watchdog_jobs.js.map +1 -0
  69. package/daemon/dist/db/migrations/032_watchdog_history.d.ts +28 -0
  70. package/daemon/dist/db/migrations/032_watchdog_history.d.ts.map +1 -0
  71. package/daemon/dist/db/migrations/032_watchdog_history.js +46 -0
  72. package/daemon/dist/db/migrations/032_watchdog_history.js.map +1 -0
  73. package/daemon/dist/db/migrations/033_workflow_specs.d.ts +30 -0
  74. package/daemon/dist/db/migrations/033_workflow_specs.d.ts.map +1 -0
  75. package/daemon/dist/db/migrations/033_workflow_specs.js +50 -0
  76. package/daemon/dist/db/migrations/033_workflow_specs.js.map +1 -0
  77. package/daemon/dist/db/migrations/034_workflow_instances.d.ts +42 -0
  78. package/daemon/dist/db/migrations/034_workflow_instances.d.ts.map +1 -0
  79. package/daemon/dist/db/migrations/034_workflow_instances.js +63 -0
  80. package/daemon/dist/db/migrations/034_workflow_instances.js.map +1 -0
  81. package/daemon/dist/db/migrations/035_workflow_step_trails.d.ts +29 -0
  82. package/daemon/dist/db/migrations/035_workflow_step_trails.d.ts.map +1 -0
  83. package/daemon/dist/db/migrations/035_workflow_step_trails.js +48 -0
  84. package/daemon/dist/db/migrations/035_workflow_step_trails.js.map +1 -0
  85. package/daemon/dist/db/migrations/036_watchdog_policy_enum_extension.d.ts +35 -0
  86. package/daemon/dist/db/migrations/036_watchdog_policy_enum_extension.d.ts.map +1 -0
  87. package/daemon/dist/db/migrations/036_watchdog_policy_enum_extension.js +43 -0
  88. package/daemon/dist/db/migrations/036_watchdog_policy_enum_extension.js.map +1 -0
  89. package/daemon/dist/domain/agent-activity-store.d.ts +42 -0
  90. package/daemon/dist/domain/agent-activity-store.d.ts.map +1 -0
  91. package/daemon/dist/domain/agent-activity-store.js +177 -0
  92. package/daemon/dist/domain/agent-activity-store.js.map +1 -0
  93. package/daemon/dist/domain/agent-manifest.d.ts.map +1 -1
  94. package/daemon/dist/domain/agent-manifest.js +3 -0
  95. package/daemon/dist/domain/agent-manifest.js.map +1 -1
  96. package/daemon/dist/domain/agent-starter-resolver.d.ts +100 -0
  97. package/daemon/dist/domain/agent-starter-resolver.d.ts.map +1 -0
  98. package/daemon/dist/domain/agent-starter-resolver.js +200 -0
  99. package/daemon/dist/domain/agent-starter-resolver.js.map +1 -0
  100. package/daemon/dist/domain/classifier-lease-manager.d.ts +130 -0
  101. package/daemon/dist/domain/classifier-lease-manager.d.ts.map +1 -0
  102. package/daemon/dist/domain/classifier-lease-manager.js +285 -0
  103. package/daemon/dist/domain/classifier-lease-manager.js.map +1 -0
  104. package/daemon/dist/domain/context-usage-store.d.ts +1 -1
  105. package/daemon/dist/domain/context-usage-store.js +1 -1
  106. package/daemon/dist/domain/context-usage-store.js.map +1 -1
  107. package/daemon/dist/domain/hot-potato-enforcer.d.ts +45 -0
  108. package/daemon/dist/domain/hot-potato-enforcer.d.ts.map +1 -0
  109. package/daemon/dist/domain/hot-potato-enforcer.js +94 -0
  110. package/daemon/dist/domain/hot-potato-enforcer.js.map +1 -0
  111. package/daemon/dist/domain/inbox-handler.d.ts +68 -0
  112. package/daemon/dist/domain/inbox-handler.d.ts.map +1 -0
  113. package/daemon/dist/domain/inbox-handler.js +177 -0
  114. package/daemon/dist/domain/inbox-handler.js.map +1 -0
  115. package/daemon/dist/domain/native-resume-probe.d.ts +1 -1
  116. package/daemon/dist/domain/native-resume-probe.d.ts.map +1 -1
  117. package/daemon/dist/domain/native-resume-probe.js +67 -0
  118. package/daemon/dist/domain/native-resume-probe.js.map +1 -1
  119. package/daemon/dist/domain/node-inventory.d.ts +29 -1
  120. package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
  121. package/daemon/dist/domain/node-inventory.js +160 -38
  122. package/daemon/dist/domain/node-inventory.js.map +1 -1
  123. package/daemon/dist/domain/node-launcher.d.ts +2 -0
  124. package/daemon/dist/domain/node-launcher.d.ts.map +1 -1
  125. package/daemon/dist/domain/node-launcher.js +14 -2
  126. package/daemon/dist/domain/node-launcher.js.map +1 -1
  127. package/daemon/dist/domain/outbox-handler.d.ts +48 -0
  128. package/daemon/dist/domain/outbox-handler.d.ts.map +1 -0
  129. package/daemon/dist/domain/outbox-handler.js +106 -0
  130. package/daemon/dist/domain/outbox-handler.js.map +1 -0
  131. package/daemon/dist/domain/policies/artifact-pool-helpers.d.ts +64 -0
  132. package/daemon/dist/domain/policies/artifact-pool-helpers.d.ts.map +1 -0
  133. package/daemon/dist/domain/policies/artifact-pool-helpers.js +226 -0
  134. package/daemon/dist/domain/policies/artifact-pool-helpers.js.map +1 -0
  135. package/daemon/dist/domain/policies/artifact-pool-ready.d.ts +3 -0
  136. package/daemon/dist/domain/policies/artifact-pool-ready.d.ts.map +1 -0
  137. package/daemon/dist/domain/policies/artifact-pool-ready.js +41 -0
  138. package/daemon/dist/domain/policies/artifact-pool-ready.js.map +1 -0
  139. package/daemon/dist/domain/policies/edge-artifact-required.d.ts +3 -0
  140. package/daemon/dist/domain/policies/edge-artifact-required.d.ts.map +1 -0
  141. package/daemon/dist/domain/policies/edge-artifact-required.js +90 -0
  142. package/daemon/dist/domain/policies/edge-artifact-required.js.map +1 -0
  143. package/daemon/dist/domain/policies/periodic-reminder.d.ts +3 -0
  144. package/daemon/dist/domain/policies/periodic-reminder.d.ts.map +1 -0
  145. package/daemon/dist/domain/policies/periodic-reminder.js +30 -0
  146. package/daemon/dist/domain/policies/periodic-reminder.js.map +1 -0
  147. package/daemon/dist/domain/policies/types.d.ts +51 -0
  148. package/daemon/dist/domain/policies/types.d.ts.map +1 -0
  149. package/daemon/dist/domain/policies/types.js +9 -0
  150. package/daemon/dist/domain/policies/types.js.map +1 -0
  151. package/daemon/dist/domain/policies/workflow-keepalive.d.ts +7 -0
  152. package/daemon/dist/domain/policies/workflow-keepalive.d.ts.map +1 -0
  153. package/daemon/dist/domain/policies/workflow-keepalive.js +123 -0
  154. package/daemon/dist/domain/policies/workflow-keepalive.js.map +1 -0
  155. package/daemon/dist/domain/project-classifier.d.ts +75 -0
  156. package/daemon/dist/domain/project-classifier.d.ts.map +1 -0
  157. package/daemon/dist/domain/project-classifier.js +132 -0
  158. package/daemon/dist/domain/project-classifier.js.map +1 -0
  159. package/daemon/dist/domain/projection-planner.d.ts +1 -0
  160. package/daemon/dist/domain/projection-planner.d.ts.map +1 -1
  161. package/daemon/dist/domain/projection-planner.js +3 -0
  162. package/daemon/dist/domain/projection-planner.js.map +1 -1
  163. package/daemon/dist/domain/ps-projection.d.ts +31 -0
  164. package/daemon/dist/domain/ps-projection.d.ts.map +1 -1
  165. package/daemon/dist/domain/ps-projection.js +38 -0
  166. package/daemon/dist/domain/ps-projection.js.map +1 -1
  167. package/daemon/dist/domain/queue-repository.d.ts +322 -0
  168. package/daemon/dist/domain/queue-repository.d.ts.map +1 -0
  169. package/daemon/dist/domain/queue-repository.js +686 -0
  170. package/daemon/dist/domain/queue-repository.js.map +1 -0
  171. package/daemon/dist/domain/queue-transition-log.d.ts +38 -0
  172. package/daemon/dist/domain/queue-transition-log.d.ts.map +1 -0
  173. package/daemon/dist/domain/queue-transition-log.js +52 -0
  174. package/daemon/dist/domain/queue-transition-log.js.map +1 -0
  175. package/daemon/dist/domain/restore-check-service.d.ts +203 -0
  176. package/daemon/dist/domain/restore-check-service.d.ts.map +1 -0
  177. package/daemon/dist/domain/restore-check-service.js +1047 -0
  178. package/daemon/dist/domain/restore-check-service.js.map +1 -0
  179. package/daemon/dist/domain/restore-orchestrator.d.ts +49 -3
  180. package/daemon/dist/domain/restore-orchestrator.d.ts.map +1 -1
  181. package/daemon/dist/domain/restore-orchestrator.js +460 -62
  182. package/daemon/dist/domain/restore-orchestrator.js.map +1 -1
  183. package/daemon/dist/domain/rig-expansion-service.d.ts.map +1 -1
  184. package/daemon/dist/domain/rig-expansion-service.js +13 -0
  185. package/daemon/dist/domain/rig-expansion-service.js.map +1 -1
  186. package/daemon/dist/domain/rig-repository.d.ts +17 -1
  187. package/daemon/dist/domain/rig-repository.d.ts.map +1 -1
  188. package/daemon/dist/domain/rig-repository.js +63 -5
  189. package/daemon/dist/domain/rig-repository.js.map +1 -1
  190. package/daemon/dist/domain/rigspec-codec.d.ts.map +1 -1
  191. package/daemon/dist/domain/rigspec-codec.js +13 -0
  192. package/daemon/dist/domain/rigspec-codec.js.map +1 -1
  193. package/daemon/dist/domain/rigspec-exporter.d.ts.map +1 -1
  194. package/daemon/dist/domain/rigspec-exporter.js +2 -0
  195. package/daemon/dist/domain/rigspec-exporter.js.map +1 -1
  196. package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
  197. package/daemon/dist/domain/rigspec-instantiator.js +61 -1
  198. package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
  199. package/daemon/dist/domain/rigspec-schema.d.ts.map +1 -1
  200. package/daemon/dist/domain/rigspec-schema.js +196 -0
  201. package/daemon/dist/domain/rigspec-schema.js.map +1 -1
  202. package/daemon/dist/domain/runtime-adapter.d.ts +27 -2
  203. package/daemon/dist/domain/runtime-adapter.d.ts.map +1 -1
  204. package/daemon/dist/domain/runtime-adapter.js +5 -0
  205. package/daemon/dist/domain/runtime-adapter.js.map +1 -1
  206. package/daemon/dist/domain/seat-handover-planner.d.ts +84 -0
  207. package/daemon/dist/domain/seat-handover-planner.d.ts.map +1 -0
  208. package/daemon/dist/domain/seat-handover-planner.js +188 -0
  209. package/daemon/dist/domain/seat-handover-planner.js.map +1 -0
  210. package/daemon/dist/domain/seat-handover-service.d.ts +104 -0
  211. package/daemon/dist/domain/seat-handover-service.d.ts.map +1 -0
  212. package/daemon/dist/domain/seat-handover-service.js +343 -0
  213. package/daemon/dist/domain/seat-handover-service.js.map +1 -0
  214. package/daemon/dist/domain/seat-status-service.d.ts +50 -0
  215. package/daemon/dist/domain/seat-status-service.d.ts.map +1 -0
  216. package/daemon/dist/domain/seat-status-service.js +66 -0
  217. package/daemon/dist/domain/seat-status-service.js.map +1 -0
  218. package/daemon/dist/domain/session-source-rebuild-resolver.d.ts +53 -0
  219. package/daemon/dist/domain/session-source-rebuild-resolver.d.ts.map +1 -0
  220. package/daemon/dist/domain/session-source-rebuild-resolver.js +59 -0
  221. package/daemon/dist/domain/session-source-rebuild-resolver.js.map +1 -0
  222. package/daemon/dist/domain/session-transport.d.ts +30 -0
  223. package/daemon/dist/domain/session-transport.d.ts.map +1 -1
  224. package/daemon/dist/domain/session-transport.js +322 -12
  225. package/daemon/dist/domain/session-transport.js.map +1 -1
  226. package/daemon/dist/domain/snapshot-repository.d.ts +18 -0
  227. package/daemon/dist/domain/snapshot-repository.d.ts.map +1 -1
  228. package/daemon/dist/domain/snapshot-repository.js +77 -0
  229. package/daemon/dist/domain/snapshot-repository.js.map +1 -1
  230. package/daemon/dist/domain/startup-orchestrator.d.ts +22 -3
  231. package/daemon/dist/domain/startup-orchestrator.d.ts.map +1 -1
  232. package/daemon/dist/domain/startup-orchestrator.js +31 -5
  233. package/daemon/dist/domain/startup-orchestrator.js.map +1 -1
  234. package/daemon/dist/domain/stream-store.d.ts +56 -0
  235. package/daemon/dist/domain/stream-store.d.ts.map +1 -0
  236. package/daemon/dist/domain/stream-store.js +108 -0
  237. package/daemon/dist/domain/stream-store.js.map +1 -0
  238. package/daemon/dist/domain/transcript-redaction.d.ts +13 -0
  239. package/daemon/dist/domain/transcript-redaction.d.ts.map +1 -0
  240. package/daemon/dist/domain/transcript-redaction.js +34 -0
  241. package/daemon/dist/domain/transcript-redaction.js.map +1 -0
  242. package/daemon/dist/domain/transcript-store.d.ts +15 -0
  243. package/daemon/dist/domain/transcript-store.d.ts.map +1 -1
  244. package/daemon/dist/domain/transcript-store.js +57 -1
  245. package/daemon/dist/domain/transcript-store.js.map +1 -1
  246. package/daemon/dist/domain/types.d.ts +316 -3
  247. package/daemon/dist/domain/types.d.ts.map +1 -1
  248. package/daemon/dist/domain/view-event-bridge.d.ts +12 -0
  249. package/daemon/dist/domain/view-event-bridge.d.ts.map +1 -0
  250. package/daemon/dist/domain/view-event-bridge.js +92 -0
  251. package/daemon/dist/domain/view-event-bridge.js.map +1 -0
  252. package/daemon/dist/domain/view-projector.d.ts +83 -0
  253. package/daemon/dist/domain/view-projector.d.ts.map +1 -0
  254. package/daemon/dist/domain/view-projector.js +296 -0
  255. package/daemon/dist/domain/view-projector.js.map +1 -0
  256. package/daemon/dist/domain/watchdog-history-log.d.ts +49 -0
  257. package/daemon/dist/domain/watchdog-history-log.d.ts.map +1 -0
  258. package/daemon/dist/domain/watchdog-history-log.js +67 -0
  259. package/daemon/dist/domain/watchdog-history-log.js.map +1 -0
  260. package/daemon/dist/domain/watchdog-jobs-repository.d.ts +81 -0
  261. package/daemon/dist/domain/watchdog-jobs-repository.d.ts.map +1 -0
  262. package/daemon/dist/domain/watchdog-jobs-repository.js +164 -0
  263. package/daemon/dist/domain/watchdog-jobs-repository.js.map +1 -0
  264. package/daemon/dist/domain/watchdog-policy-engine.d.ts +92 -0
  265. package/daemon/dist/domain/watchdog-policy-engine.d.ts.map +1 -0
  266. package/daemon/dist/domain/watchdog-policy-engine.js +442 -0
  267. package/daemon/dist/domain/watchdog-policy-engine.js.map +1 -0
  268. package/daemon/dist/domain/watchdog-scheduler.d.ts +76 -0
  269. package/daemon/dist/domain/watchdog-scheduler.d.ts.map +1 -0
  270. package/daemon/dist/domain/watchdog-scheduler.js +112 -0
  271. package/daemon/dist/domain/watchdog-scheduler.js.map +1 -0
  272. package/daemon/dist/domain/workflow-instance-store.d.ts +46 -0
  273. package/daemon/dist/domain/workflow-instance-store.d.ts.map +1 -0
  274. package/daemon/dist/domain/workflow-instance-store.js +116 -0
  275. package/daemon/dist/domain/workflow-instance-store.js.map +1 -0
  276. package/daemon/dist/domain/workflow-projector.d.ts +64 -0
  277. package/daemon/dist/domain/workflow-projector.d.ts.map +1 -0
  278. package/daemon/dist/domain/workflow-projector.js +424 -0
  279. package/daemon/dist/domain/workflow-projector.js.map +1 -0
  280. package/daemon/dist/domain/workflow-runtime.d.ts +63 -0
  281. package/daemon/dist/domain/workflow-runtime.d.ts.map +1 -0
  282. package/daemon/dist/domain/workflow-runtime.js +150 -0
  283. package/daemon/dist/domain/workflow-runtime.js.map +1 -0
  284. package/daemon/dist/domain/workflow-spec-cache.d.ts +35 -0
  285. package/daemon/dist/domain/workflow-spec-cache.d.ts.map +1 -0
  286. package/daemon/dist/domain/workflow-spec-cache.js +171 -0
  287. package/daemon/dist/domain/workflow-spec-cache.js.map +1 -0
  288. package/daemon/dist/domain/workflow-step-trail-log.d.ts +27 -0
  289. package/daemon/dist/domain/workflow-step-trail-log.d.ts.map +1 -0
  290. package/daemon/dist/domain/workflow-step-trail-log.js +73 -0
  291. package/daemon/dist/domain/workflow-step-trail-log.js.map +1 -0
  292. package/daemon/dist/domain/workflow-types.d.ts +108 -0
  293. package/daemon/dist/domain/workflow-types.d.ts.map +1 -0
  294. package/daemon/dist/domain/workflow-types.js +11 -0
  295. package/daemon/dist/domain/workflow-types.js.map +1 -0
  296. package/daemon/dist/domain/workflow-validator.d.ts +31 -0
  297. package/daemon/dist/domain/workflow-validator.d.ts.map +1 -0
  298. package/daemon/dist/domain/workflow-validator.js +115 -0
  299. package/daemon/dist/domain/workflow-validator.js.map +1 -0
  300. package/daemon/dist/index.d.ts.map +1 -1
  301. package/daemon/dist/index.js +21 -2
  302. package/daemon/dist/index.js.map +1 -1
  303. package/daemon/dist/routes/activity.d.ts +3 -0
  304. package/daemon/dist/routes/activity.d.ts.map +1 -0
  305. package/daemon/dist/routes/activity.js +47 -0
  306. package/daemon/dist/routes/activity.js.map +1 -0
  307. package/daemon/dist/routes/projects.d.ts +12 -0
  308. package/daemon/dist/routes/projects.d.ts.map +1 -0
  309. package/daemon/dist/routes/projects.js +178 -0
  310. package/daemon/dist/routes/projects.js.map +1 -0
  311. package/daemon/dist/routes/queue.d.ts +10 -0
  312. package/daemon/dist/routes/queue.d.ts.map +1 -0
  313. package/daemon/dist/routes/queue.js +374 -0
  314. package/daemon/dist/routes/queue.js.map +1 -0
  315. package/daemon/dist/routes/restore-check.d.ts +3 -0
  316. package/daemon/dist/routes/restore-check.d.ts.map +1 -0
  317. package/daemon/dist/routes/restore-check.js +200 -0
  318. package/daemon/dist/routes/restore-check.js.map +1 -0
  319. package/daemon/dist/routes/rigs.d.ts.map +1 -1
  320. package/daemon/dist/routes/rigs.js +60 -4
  321. package/daemon/dist/routes/rigs.js.map +1 -1
  322. package/daemon/dist/routes/seat.d.ts +3 -0
  323. package/daemon/dist/routes/seat.d.ts.map +1 -0
  324. package/daemon/dist/routes/seat.js +69 -0
  325. package/daemon/dist/routes/seat.js.map +1 -0
  326. package/daemon/dist/routes/sessions.d.ts.map +1 -1
  327. package/daemon/dist/routes/sessions.js +25 -4
  328. package/daemon/dist/routes/sessions.js.map +1 -1
  329. package/daemon/dist/routes/snapshots.js +66 -29
  330. package/daemon/dist/routes/snapshots.js.map +1 -1
  331. package/daemon/dist/routes/stream.d.ts +9 -0
  332. package/daemon/dist/routes/stream.d.ts.map +1 -0
  333. package/daemon/dist/routes/stream.js +119 -0
  334. package/daemon/dist/routes/stream.js.map +1 -0
  335. package/daemon/dist/routes/transcripts.d.ts.map +1 -1
  336. package/daemon/dist/routes/transcripts.js +38 -0
  337. package/daemon/dist/routes/transcripts.js.map +1 -1
  338. package/daemon/dist/routes/transport.d.ts.map +1 -1
  339. package/daemon/dist/routes/transport.js +21 -0
  340. package/daemon/dist/routes/transport.js.map +1 -1
  341. package/daemon/dist/routes/up.js +24 -3
  342. package/daemon/dist/routes/up.js.map +1 -1
  343. package/daemon/dist/routes/views.d.ts +13 -0
  344. package/daemon/dist/routes/views.d.ts.map +1 -0
  345. package/daemon/dist/routes/views.js +120 -0
  346. package/daemon/dist/routes/views.js.map +1 -0
  347. package/daemon/dist/routes/watchdog.d.ts +18 -0
  348. package/daemon/dist/routes/watchdog.d.ts.map +1 -0
  349. package/daemon/dist/routes/watchdog.js +148 -0
  350. package/daemon/dist/routes/watchdog.js.map +1 -0
  351. package/daemon/dist/routes/workflow.d.ts +20 -0
  352. package/daemon/dist/routes/workflow.d.ts.map +1 -0
  353. package/daemon/dist/routes/workflow.js +184 -0
  354. package/daemon/dist/routes/workflow.js.map +1 -0
  355. package/daemon/dist/server.d.ts +30 -0
  356. package/daemon/dist/server.d.ts.map +1 -1
  357. package/daemon/dist/server.js +33 -0
  358. package/daemon/dist/server.js.map +1 -1
  359. package/daemon/dist/startup.d.ts.map +1 -1
  360. package/daemon/dist/startup.js +202 -8
  361. package/daemon/dist/startup.js.map +1 -1
  362. package/daemon/docs/reference/agent-spec.md +12 -5
  363. package/daemon/docs/reference/agent-startup-guide.md +9 -9
  364. package/daemon/specs/agents/apps/vault-specialist/agent.yaml +1 -1
  365. package/daemon/specs/agents/design/product-designer/agent.yaml +1 -1
  366. package/daemon/specs/agents/development/implementer/agent.yaml +1 -1
  367. package/daemon/specs/agents/development/qa/agent.yaml +1 -1
  368. package/daemon/specs/agents/orchestration/orchestrator/agent.yaml +1 -1
  369. package/daemon/specs/agents/product-management/pm/agent.yaml +4 -0
  370. package/daemon/specs/agents/research/analyst/agent.yaml +1 -1
  371. package/daemon/specs/agents/research/synthesizer/agent.yaml +1 -1
  372. package/daemon/specs/agents/review/independent-reviewer/agent.yaml +1 -1
  373. package/daemon/specs/agents/shared/agent.yaml +17 -0
  374. package/daemon/specs/agents/shared/runtime/claude-mcp.fragment.json +12 -0
  375. package/daemon/specs/agents/shared/runtime/claude-settings.fragment.json +16 -0
  376. package/daemon/specs/agents/shared/runtime/codex-config.fragment.toml +5 -0
  377. package/daemon/specs/agents/shared/skills/claude-compact-in-place/SKILL.md +100 -0
  378. package/daemon/specs/agents/shared/skills/core/openrig-operator/SKILL.md +110 -0
  379. package/daemon/specs/agents/shared/skills/core/openrig-user/SKILL.md +44 -1
  380. package/daemon/specs/agents/shared/skills/mental-model-ha/SKILL.md +3 -0
  381. package/daemon/specs/agents/shared/skills/pods/orchestration-team/SKILL.md +3 -0
  382. package/daemon/specs/agents/shared/skills/rig-architect/SKILL.md +11 -1
  383. package/dist/bin-wrapper.js +0 -0
  384. package/dist/commands/capture.d.ts +7 -1
  385. package/dist/commands/capture.d.ts.map +1 -1
  386. package/dist/commands/capture.js +59 -1
  387. package/dist/commands/capture.js.map +1 -1
  388. package/dist/commands/compact-plan.d.ts +9 -0
  389. package/dist/commands/compact-plan.d.ts.map +1 -0
  390. package/dist/commands/compact-plan.js +354 -0
  391. package/dist/commands/compact-plan.js.map +1 -0
  392. package/dist/commands/context.d.ts +9 -0
  393. package/dist/commands/context.d.ts.map +1 -0
  394. package/dist/commands/context.js +220 -0
  395. package/dist/commands/context.js.map +1 -0
  396. package/dist/commands/expand.d.ts.map +1 -1
  397. package/dist/commands/expand.js +15 -4
  398. package/dist/commands/expand.js.map +1 -1
  399. package/dist/commands/heartbeat.d.ts +99 -0
  400. package/dist/commands/heartbeat.d.ts.map +1 -0
  401. package/dist/commands/heartbeat.js +393 -0
  402. package/dist/commands/heartbeat.js.map +1 -0
  403. package/dist/commands/project.d.ts +14 -0
  404. package/dist/commands/project.d.ts.map +1 -0
  405. package/dist/commands/project.js +157 -0
  406. package/dist/commands/project.js.map +1 -0
  407. package/dist/commands/ps.d.ts +20 -3
  408. package/dist/commands/ps.d.ts.map +1 -1
  409. package/dist/commands/ps.js +455 -33
  410. package/dist/commands/ps.js.map +1 -1
  411. package/dist/commands/queue.d.ts +16 -0
  412. package/dist/commands/queue.d.ts.map +1 -0
  413. package/dist/commands/queue.js +401 -0
  414. package/dist/commands/queue.js.map +1 -0
  415. package/dist/commands/restore-check.d.ts +9 -0
  416. package/dist/commands/restore-check.d.ts.map +1 -0
  417. package/dist/commands/restore-check.js +234 -0
  418. package/dist/commands/restore-check.js.map +1 -0
  419. package/dist/commands/restore-packet.d.ts +9 -0
  420. package/dist/commands/restore-packet.d.ts.map +1 -0
  421. package/dist/commands/restore-packet.js +383 -0
  422. package/dist/commands/restore-packet.js.map +1 -0
  423. package/dist/commands/restore.d.ts.map +1 -1
  424. package/dist/commands/restore.js +44 -1
  425. package/dist/commands/restore.js.map +1 -1
  426. package/dist/commands/seat.d.ts +5 -0
  427. package/dist/commands/seat.d.ts.map +1 -0
  428. package/dist/commands/seat.js +170 -0
  429. package/dist/commands/seat.js.map +1 -0
  430. package/dist/commands/send.d.ts +12 -1
  431. package/dist/commands/send.d.ts.map +1 -1
  432. package/dist/commands/send.js +93 -5
  433. package/dist/commands/send.js.map +1 -1
  434. package/dist/commands/setup.js +3 -3
  435. package/dist/commands/setup.js.map +1 -1
  436. package/dist/commands/specs.d.ts.map +1 -1
  437. package/dist/commands/specs.js +99 -16
  438. package/dist/commands/specs.js.map +1 -1
  439. package/dist/commands/stream.d.ts +12 -0
  440. package/dist/commands/stream.d.ts.map +1 -0
  441. package/dist/commands/stream.js +111 -0
  442. package/dist/commands/stream.js.map +1 -0
  443. package/dist/commands/up.d.ts.map +1 -1
  444. package/dist/commands/up.js +63 -3
  445. package/dist/commands/up.js.map +1 -1
  446. package/dist/commands/view.d.ts +12 -0
  447. package/dist/commands/view.d.ts.map +1 -0
  448. package/dist/commands/view.js +82 -0
  449. package/dist/commands/view.js.map +1 -0
  450. package/dist/commands/watchdog.d.ts +15 -0
  451. package/dist/commands/watchdog.d.ts.map +1 -0
  452. package/dist/commands/watchdog.js +120 -0
  453. package/dist/commands/watchdog.js.map +1 -0
  454. package/dist/commands/whoami.d.ts +8 -1
  455. package/dist/commands/whoami.d.ts.map +1 -1
  456. package/dist/commands/whoami.js +60 -1
  457. package/dist/commands/whoami.js.map +1 -1
  458. package/dist/commands/workflow.d.ts +17 -0
  459. package/dist/commands/workflow.d.ts.map +1 -0
  460. package/dist/commands/workflow.js +138 -0
  461. package/dist/commands/workflow.js.map +1 -0
  462. package/dist/cross-host-cli-helpers.d.ts +12 -0
  463. package/dist/cross-host-cli-helpers.d.ts.map +1 -0
  464. package/dist/cross-host-cli-helpers.js +48 -0
  465. package/dist/cross-host-cli-helpers.js.map +1 -0
  466. package/dist/cross-host-executor.d.ts +84 -0
  467. package/dist/cross-host-executor.d.ts.map +1 -0
  468. package/dist/cross-host-executor.js +138 -0
  469. package/dist/cross-host-executor.js.map +1 -0
  470. package/dist/host-registry.d.ts +50 -0
  471. package/dist/host-registry.d.ts.map +1 -0
  472. package/dist/host-registry.js +116 -0
  473. package/dist/host-registry.js.map +1 -0
  474. package/dist/index.d.ts +20 -0
  475. package/dist/index.d.ts.map +1 -1
  476. package/dist/index.js +24 -0
  477. package/dist/index.js.map +1 -1
  478. package/dist/mcp-server.d.ts.map +1 -1
  479. package/dist/mcp-server.js +22 -2
  480. package/dist/mcp-server.js.map +1 -1
  481. package/dist/restore-packet/claude-transcript-parser.d.ts +12 -0
  482. package/dist/restore-packet/claude-transcript-parser.d.ts.map +1 -0
  483. package/dist/restore-packet/claude-transcript-parser.js +221 -0
  484. package/dist/restore-packet/claude-transcript-parser.js.map +1 -0
  485. package/dist/restore-packet/codex-jsonl-parser.d.ts +11 -0
  486. package/dist/restore-packet/codex-jsonl-parser.d.ts.map +1 -0
  487. package/dist/restore-packet/codex-jsonl-parser.js +159 -0
  488. package/dist/restore-packet/codex-jsonl-parser.js.map +1 -0
  489. package/dist/restore-packet/omitted-records.d.ts +60 -0
  490. package/dist/restore-packet/omitted-records.d.ts.map +1 -0
  491. package/dist/restore-packet/omitted-records.js +116 -0
  492. package/dist/restore-packet/omitted-records.js.map +1 -0
  493. package/dist/restore-packet/packet-writer.d.ts +59 -0
  494. package/dist/restore-packet/packet-writer.d.ts.map +1 -0
  495. package/dist/restore-packet/packet-writer.js +224 -0
  496. package/dist/restore-packet/packet-writer.js.map +1 -0
  497. package/dist/restore-packet/redaction.d.ts +30 -0
  498. package/dist/restore-packet/redaction.d.ts.map +1 -0
  499. package/dist/restore-packet/redaction.js +71 -0
  500. package/dist/restore-packet/redaction.js.map +1 -0
  501. package/dist/restore-packet/runtime-detect.d.ts +19 -0
  502. package/dist/restore-packet/runtime-detect.d.ts.map +1 -0
  503. package/dist/restore-packet/runtime-detect.js +81 -0
  504. package/dist/restore-packet/runtime-detect.js.map +1 -0
  505. package/dist/restore-packet/schema-validator.d.ts +13 -0
  506. package/dist/restore-packet/schema-validator.d.ts.map +1 -0
  507. package/dist/restore-packet/schema-validator.js +245 -0
  508. package/dist/restore-packet/schema-validator.js.map +1 -0
  509. package/dist/restore-packet/types.d.ts +76 -0
  510. package/dist/restore-packet/types.d.ts.map +1 -0
  511. package/dist/restore-packet/types.js +15 -0
  512. package/dist/restore-packet/types.js.map +1 -0
  513. package/dist/schemas/restore-summary.schema.json +98 -0
  514. package/package.json +10 -3
  515. package/scripts/check-abi.mjs +123 -0
  516. package/ui/dist/assets/{index-DlMH-REm.css → index-Dec25siz.css} +1 -1
  517. package/ui/dist/assets/{index-Ccd-jwRN.js → index-GNYaWmBj.js} +2 -2
  518. package/ui/dist/index.html +2 -2
@@ -2,40 +2,300 @@ import { Command } from "commander";
2
2
  import { DaemonClient } from "../client.js";
3
3
  import { getDaemonStatus, getDaemonUrl } from "../daemon-lifecycle.js";
4
4
  import { realDeps } from "./daemon.js";
5
+ import { loadHostRegistry, resolveHost } from "../host-registry.js";
6
+ import { runCrossHostCommand } from "../cross-host-executor.js";
7
+ import { emitCrossHostError, emitCrossHostFailure } from "../cross-host-cli-helpers.js";
8
+ // L3-followup: human-output budgets bound default terminal output for hosts
9
+ // with realistic agent counts. `--full` opts out. JSON output remains
10
+ // unbounded by default for back-compat (Decision C hybrid).
11
+ const HUMAN_RIG_BUDGET = 50;
12
+ const HUMAN_NODE_BUDGET = 100;
13
+ // L3-followup: --filter accepts only this allow-list. Unknown keys produce a
14
+ // clear error with the supported list (Guard Review Checklist: filter-parser
15
+ // security).
16
+ const ALLOWED_FILTER_KEYS = new Set(["status", "lifecycleState", "name-prefix", "name"]);
17
+ // C9a: --fields accepts a per-level allow-list. Unknown keys produce a clear
18
+ // error with the supported list, mirroring the --filter rejection pattern.
19
+ // Per-level because rig and node entries have different schemas (PsEntry
20
+ // rig-level vs NodeEntry node-level).
21
+ //
22
+ // Source of truth: PsEntry / NodeEntry interfaces above. `name` exists at
23
+ // rig-level only; `rigName` is the alias and exists at both levels (per the
24
+ // closed `rig ps trust and scale-safety` slice at openrig 0a9fb43).
25
+ const ALLOWED_RIG_FIELDS = new Set([
26
+ "rigId",
27
+ "name",
28
+ "rigName",
29
+ "nodeCount",
30
+ "runningCount",
31
+ "status",
32
+ "lifecycleState",
33
+ "uptime",
34
+ "latestSnapshot",
35
+ ]);
36
+ const ALLOWED_NODE_FIELDS = new Set([
37
+ "rigId",
38
+ "rigName",
39
+ "logicalId",
40
+ "podId",
41
+ "podNamespace",
42
+ "canonicalSessionName",
43
+ "nodeKind",
44
+ "runtime",
45
+ "sessionStatus",
46
+ "startupStatus",
47
+ "restoreOutcome",
48
+ "lifecycleState",
49
+ "tmuxAttachCommand",
50
+ "resumeCommand",
51
+ "latestError",
52
+ "agentActivity",
53
+ ]);
54
+ function parseFilter(filter) {
55
+ const idx = filter.indexOf("=");
56
+ if (idx === -1)
57
+ return { error: `--filter must be key=value; got: '${filter}'` };
58
+ const key = filter.slice(0, idx);
59
+ const value = filter.slice(idx + 1);
60
+ if (!ALLOWED_FILTER_KEYS.has(key)) {
61
+ return {
62
+ error: `Unknown --filter key '${key}'. Supported: ${[...ALLOWED_FILTER_KEYS].sort().join(", ")}`,
63
+ };
64
+ }
65
+ if (!value) {
66
+ return { error: `--filter value is empty for key '${key}'` };
67
+ }
68
+ return { key, value };
69
+ }
70
+ // C9a: validate --fields against a per-level allow-list. Mirrors parseFilter's
71
+ // shape: rejects with a sorted-supported-list error message including the
72
+ // unknown key(s) quoted. The level-aware "Hint" fires when an operator types
73
+ // `--fields name` against a node query (the most likely confusion case
74
+ // preserved by the rigName/name aliasing at rig-level only).
75
+ function parseFields(input, allowed, level) {
76
+ const fields = input.split(",").map((f) => f.trim()).filter((f) => f.length > 0);
77
+ if (fields.length === 0) {
78
+ return { error: `--fields cannot be empty` };
79
+ }
80
+ const unknown = fields.filter((f) => !allowed.has(f));
81
+ if (unknown.length > 0) {
82
+ const sorted = [...allowed].sort().join(", ");
83
+ const hint = level === "nodes" && unknown.includes("name")
84
+ ? ` Hint: 'name' is a rig-level field; use 'rigName' for node entries.`
85
+ : "";
86
+ const keyWord = unknown.length > 1 ? "keys" : "key";
87
+ return {
88
+ error: `Unknown --fields ${keyWord} ${unknown.map((u) => `'${u}'`).join(", ")}. Supported: ${sorted}.${hint}`,
89
+ };
90
+ }
91
+ return fields;
92
+ }
93
+ function applyRigFilter(entries, filter) {
94
+ return entries.filter((e) => {
95
+ if (filter.key === "status")
96
+ return e.status === filter.value;
97
+ if (filter.key === "lifecycleState")
98
+ return e.lifecycleState === filter.value;
99
+ if (filter.key === "name-prefix")
100
+ return (e.rigName ?? e.name).startsWith(filter.value);
101
+ if (filter.key === "name")
102
+ return (e.rigName ?? e.name) === filter.value;
103
+ return true;
104
+ });
105
+ }
106
+ function applyNodeFilter(entries, filter) {
107
+ return entries.filter((n) => {
108
+ // status maps to sessionStatus for nodes; lifecycleState applies directly.
109
+ if (filter.key === "status")
110
+ return n.sessionStatus === filter.value;
111
+ if (filter.key === "lifecycleState")
112
+ return n.lifecycleState === filter.value;
113
+ if (filter.key === "name-prefix")
114
+ return n.rigName.startsWith(filter.value);
115
+ if (filter.key === "name")
116
+ return n.rigName === filter.value;
117
+ return true;
118
+ });
119
+ }
120
+ function selectFields(entries, fields) {
121
+ return entries.map((e) => {
122
+ const out = {};
123
+ for (const f of fields)
124
+ out[f] = e[f];
125
+ return out;
126
+ });
127
+ }
128
+ function summarizeRigs(entries) {
129
+ const byLifecycle = {};
130
+ const byStatus = {};
131
+ let totalRunning = 0;
132
+ for (const e of entries) {
133
+ const ls = e.lifecycleState ?? "unknown";
134
+ byLifecycle[ls] = (byLifecycle[ls] ?? 0) + 1;
135
+ byStatus[e.status] = (byStatus[e.status] ?? 0) + 1;
136
+ if (e.status === "running")
137
+ totalRunning++;
138
+ }
139
+ return { totalRigs: entries.length, totalRunning, byLifecycle, byStatus };
140
+ }
141
+ function summarizeNodes(entries) {
142
+ const byLifecycle = {};
143
+ const bySessionStatus = {};
144
+ for (const n of entries) {
145
+ const ls = n.lifecycleState ?? "unknown";
146
+ byLifecycle[ls] = (byLifecycle[ls] ?? 0) + 1;
147
+ const ss = n.sessionStatus ?? "unknown";
148
+ bySessionStatus[ss] = (bySessionStatus[ss] ?? 0) + 1;
149
+ }
150
+ return { totalNodes: entries.length, byLifecycle, bySessionStatus };
151
+ }
152
+ // Compact rig-level lifecycle codes for the rig table header (3-char fixed width).
153
+ function abbrevRigLifecycle(state) {
154
+ if (!state)
155
+ return "—";
156
+ if (state === "running")
157
+ return "run";
158
+ if (state === "recoverable")
159
+ return "rec";
160
+ if (state === "stopped")
161
+ return "stp";
162
+ if (state === "degraded")
163
+ return "deg";
164
+ if (state === "attention_required")
165
+ return "att";
166
+ return "—";
167
+ }
168
+ // Compact per-node lifecycle codes for the nodes table.
169
+ function abbrevNodeLifecycle(state) {
170
+ if (!state)
171
+ return "—";
172
+ if (state === "running")
173
+ return "run";
174
+ if (state === "recoverable")
175
+ return "rec";
176
+ if (state === "detached")
177
+ return "det";
178
+ if (state === "attention_required")
179
+ return "att";
180
+ return "—";
181
+ }
5
182
  /**
6
183
  * `rig ps` — list running rigs and optionally their nodes.
7
- * @param depsOverride - injectable deps for testing
8
- * @returns Commander command
184
+ *
185
+ * L3-followup adds CLI-side shaping flags (`--limit`, `--fields`, `--summary`,
186
+ * `--filter`, `--full`) for context-window-safe output on large hosts. Default
187
+ * `rig ps` (human) truncates to ~50 rigs with an explicit footer naming totals
188
+ * and the `--full` opt-out. Default `rig ps --json` keeps the bare-array shape
189
+ * for back-compat; the truncation/envelope shape only applies when at least
190
+ * one of `--limit`/`--summary`/`--fields`/`--filter` is specified.
9
191
  */
10
192
  export function psCommand(depsOverride) {
11
193
  const cmd = new Command("ps")
12
194
  .description("List rigs and their status")
13
195
  .addHelpText("after", `
14
196
  Examples:
15
- rig ps Show all rigs with status
16
- rig ps --json JSON output for piping/parsing
17
- rig ps --nodes Show per-node detail for all rigs
18
- rig ps --nodes --json Node inventory as JSON array
197
+ rig ps Show all rigs (human; truncated to ${HUMAN_RIG_BUDGET} with footer)
198
+ rig ps --full Disable human truncation
199
+ rig ps --json JSON output (bare array; back-compat)
200
+ rig ps --json --limit 20 Bounded JSON envelope
201
+ rig ps --json --summary Aggregate-only JSON (no per-rig entries)
202
+ rig ps --json --fields rigName,status,lifecycleState
203
+ Project JSON to named fields
204
+ rig ps --filter lifecycleState=attention_required
205
+ Show only rigs needing attention
206
+ rig ps --filter status=running Show only running rigs
207
+ rig ps --filter name-prefix=demo Filter by rig-name prefix
208
+ rig ps --nodes Per-node detail (human; truncated to ${HUMAN_NODE_BUDGET})
209
+ rig ps --nodes --json --limit 50 Bounded per-node JSON envelope
210
+ rig ps --host vm-claude-test --nodes --json Run on a remote host via single-hop ssh
211
+
212
+ JSON output entries include both \`name\` and \`rigName\` (alias) for forward
213
+ compatibility; agent code should prefer \`rigName\` (matches per-node JSON).
214
+
215
+ --filter accepts: status, lifecycleState, name-prefix, name. Other keys are rejected.
216
+
217
+ --fields accepts (rig-level): rigId, name, rigName, nodeCount, runningCount,
218
+ status, lifecycleState, uptime, latestSnapshot.
219
+ --fields accepts (node-level, with --nodes): rigId, rigName, logicalId, podId,
220
+ podNamespace, canonicalSessionName, nodeKind, runtime, sessionStatus,
221
+ startupStatus, restoreOutcome, lifecycleState, tmuxAttachCommand,
222
+ resumeCommand, latestError, agentActivity. Other keys are rejected.
223
+ \`name\` is rig-level only; for node entries use \`rigName\`. Nested-field
224
+ projection (e.g. \`agentActivity.state\`) is not supported in this slice; pass
225
+ \`agentActivity\` to project the whole object and read the nested value
226
+ downstream.
227
+
228
+ --host runs the same command on a remote host declared in ~/.openrig/hosts.yaml
229
+ via single-hop ssh (CLI-side shell-out; daemon untouched). The remote rig's
230
+ output is what counts and is surfaced verbatim on success; failure is
231
+ distinguished into ssh-unreachable / permission-gate / remote-daemon-unreachable
232
+ / remote-command-failed.
19
233
 
20
234
  Exit codes:
21
235
  0 Success
22
- 1 Daemon not running
236
+ 1 Daemon not running, or invalid --filter / --limit / --fields
23
237
  2 Failed to fetch data from daemon`);
24
238
  const getDepsF = () => depsOverride ?? { lifecycleDeps: realDeps(), clientFactory: (url) => new DaemonClient(url) };
25
239
  cmd
26
240
  .option("--json", "JSON output for agents")
27
241
  .option("--nodes", "Show per-node detail for all rigs")
242
+ .option("--full", "Disable default human-output truncation")
243
+ .option("--limit <n>", "Limit number of entries (rigs or nodes)")
244
+ .option("--fields <list>", "Comma-separated field list to project (JSON only)")
245
+ .option("--summary", "Emit aggregate-only output (counts by status/lifecycle)")
246
+ .option("--filter <key=value>", "Filter entries; supported keys: status, lifecycleState, name-prefix, name")
247
+ .option("--host <id>", "Run on a remote host declared in ~/.openrig/hosts.yaml (CLI-side ssh shell-out)")
28
248
  .action(async (opts) => {
29
249
  const deps = getDepsF();
250
+ // --- Cross-host short-circuit (CLI-side ssh shell-out; daemon untouched) ---
251
+ if (opts.host) {
252
+ await runCrossHostPs(opts.host, opts, deps);
253
+ return;
254
+ }
30
255
  const status = await getDaemonStatus(deps.lifecycleDeps);
31
256
  if (status.state !== "running" || status.healthy === false) {
32
257
  console.error("Daemon not running. Start it with: rig daemon start");
33
258
  process.exitCode = 1;
34
259
  return;
35
260
  }
261
+ // Parse filter once up front so unknown keys/malformed filters surface
262
+ // as exit-1 errors before any HTTP call.
263
+ let parsedFilter = null;
264
+ if (opts.filter) {
265
+ const result = parseFilter(opts.filter);
266
+ if ("error" in result) {
267
+ console.error(result.error);
268
+ process.exitCode = 1;
269
+ return;
270
+ }
271
+ parsedFilter = result;
272
+ }
273
+ const limit = opts.limit !== undefined ? Number(opts.limit) : null;
274
+ if (limit !== null && (!Number.isInteger(limit) || limit < 0)) {
275
+ console.error(`--limit must be a non-negative integer; got '${opts.limit}'`);
276
+ process.exitCode = 1;
277
+ return;
278
+ }
279
+ // C9a: validate --fields against the per-level allow-list before any HTTP
280
+ // call, mirroring the --filter validation above. Level is determined by
281
+ // --nodes; both branches downstream use the same `fields` variable, so
282
+ // one up-front validation covers both paths.
283
+ let fields = null;
284
+ if (opts.fields !== undefined) {
285
+ const fieldsLevel = opts.nodes ? "nodes" : "rig";
286
+ const fieldsAllowed = fieldsLevel === "nodes" ? ALLOWED_NODE_FIELDS : ALLOWED_RIG_FIELDS;
287
+ const fieldsResult = parseFields(opts.fields, fieldsAllowed, fieldsLevel);
288
+ if ("error" in fieldsResult) {
289
+ console.error(fieldsResult.error);
290
+ process.exitCode = 1;
291
+ return;
292
+ }
293
+ fields = fieldsResult;
294
+ }
295
+ const useEnvelope = parsedFilter !== null || limit !== null || fields !== null || opts.summary === true;
36
296
  const client = deps.clientFactory(getDaemonUrl(status));
37
297
  if (opts.nodes) {
38
- await handleNodes(client, opts.json ?? false);
298
+ await handleNodes(client, opts, parsedFilter, limit, fields, useEnvelope);
39
299
  return;
40
300
  }
41
301
  const res = await client.get("/api/ps");
@@ -44,26 +304,75 @@ Exit codes:
44
304
  process.exitCode = 2;
45
305
  return;
46
306
  }
47
- const entries = res.data;
307
+ const all = res.data;
308
+ // Apply CLI-side filter (Amendment A: prefer CLI shaping).
309
+ const filtered = parsedFilter ? applyRigFilter(all, parsedFilter) : all;
310
+ // Summary mode short-circuits per-entry output.
311
+ if (opts.summary) {
312
+ const summary = summarizeRigs(filtered);
313
+ if (opts.json) {
314
+ console.log(JSON.stringify(summary));
315
+ }
316
+ else {
317
+ console.log(`totalRigs: ${summary.totalRigs}`);
318
+ console.log(`totalRunning: ${summary.totalRunning}`);
319
+ console.log(`byStatus: ${JSON.stringify(summary.byStatus)}`);
320
+ console.log(`byLifecycle: ${JSON.stringify(summary.byLifecycle)}`);
321
+ }
322
+ return;
323
+ }
324
+ // Apply --limit on top of filter (CLI side; daemon stays bare-array).
325
+ const limited = limit !== null ? filtered.slice(0, limit) : filtered;
326
+ const truncated = limit !== null && filtered.length > limit;
327
+ // Field projection runs last so requested fields apply to the limited set.
328
+ const projected = fields ? selectFields(limited, fields) : limited;
48
329
  if (opts.json) {
49
- console.log(JSON.stringify(entries));
330
+ if (useEnvelope) {
331
+ // Envelope only on flag use; default JSON stays a bare array for compat.
332
+ const envelope = {
333
+ entries: projected,
334
+ totalRigs: filtered.length,
335
+ truncated,
336
+ };
337
+ if (truncated)
338
+ envelope.hint = "rig ps --full --json";
339
+ console.log(JSON.stringify(envelope));
340
+ }
341
+ else {
342
+ console.log(JSON.stringify(projected));
343
+ }
50
344
  return;
51
345
  }
52
- if (entries.length === 0) {
53
- console.log("No rigs");
346
+ if (limited.length === 0) {
347
+ if (parsedFilter) {
348
+ console.log(`No rigs match --filter ${parsedFilter.key}=${parsedFilter.value}`);
349
+ }
350
+ else {
351
+ console.log("No rigs");
352
+ }
54
353
  return;
55
354
  }
56
- // Formatted table
57
- const header = padRigRow("RIG", "NODES", "RUNNING", "STATUS", "UPTIME", "SNAPSHOT");
355
+ // Human output: apply default truncation budget unless --full.
356
+ const humanList = (opts.full || limit !== null) ? limited : limited.slice(0, HUMAN_RIG_BUDGET);
357
+ const humanTruncated = !opts.full && limit === null && filtered.length > HUMAN_RIG_BUDGET;
358
+ const header = padRigRow("RIG", "NODES", "RUNNING", "STATUS", "LIFECYCLE", "UPTIME", "SNAPSHOT");
58
359
  console.log(header);
59
- for (const e of entries) {
60
- console.log(padRigRow(e.name, String(e.nodeCount), String(e.runningCount), e.status, e.uptime ?? "—", e.latestSnapshot ?? "—"));
360
+ for (const e of humanList) {
361
+ console.log(padRigRow(e.rigName ?? e.name, String(e.nodeCount), String(e.runningCount), e.status, abbrevRigLifecycle(e.lifecycleState), e.uptime ?? "—", e.latestSnapshot ?? "—"));
362
+ }
363
+ if (humanTruncated) {
364
+ const remaining = filtered.length - HUMAN_RIG_BUDGET;
365
+ console.log(`... and ${remaining} more rig${remaining === 1 ? "" : "s"} (truncated at ${HUMAN_RIG_BUDGET}).`);
366
+ console.log("Run 'rig ps --full' to see all, or 'rig ps --filter lifecycleState=attention_required' to narrow.");
367
+ }
368
+ else if (truncated) {
369
+ const remaining = filtered.length - (limit ?? 0);
370
+ console.log(`... and ${remaining} more rig${remaining === 1 ? "" : "s"} (--limit ${limit}).`);
61
371
  }
62
372
  });
63
373
  return cmd;
64
374
  }
65
- async function handleNodes(client, json) {
66
- // Fetch rig list first
375
+ async function handleNodes(client, opts, parsedFilter, limit, fields, useEnvelope) {
67
376
  const rigRes = await client.get("/api/ps");
68
377
  if (rigRes.status >= 400) {
69
378
  console.error(`Failed to fetch rig list from daemon (HTTP ${rigRes.status}). Check daemon status with: rig status`);
@@ -74,56 +383,169 @@ async function handleNodes(client, json) {
74
383
  for (const rig of rigRes.data) {
75
384
  const nodesRes = await client.get(`/api/rigs/${encodeURIComponent(rig.rigId)}/nodes`);
76
385
  if (nodesRes.status >= 400) {
77
- console.error(`Warning: failed to fetch nodes for rig "${rig.name}" (HTTP ${nodesRes.status}). List rigs with: rig ps`);
386
+ console.error(`Warning: failed to fetch nodes for rig "${rig.rigName ?? rig.name}" (HTTP ${nodesRes.status}). List rigs with: rig ps`);
78
387
  continue;
79
388
  }
80
389
  allNodes.push(...nodesRes.data);
81
390
  }
82
- if (json) {
83
- console.log(JSON.stringify(allNodes));
391
+ const filtered = parsedFilter ? applyNodeFilter(allNodes, parsedFilter) : allNodes;
392
+ if (opts.summary) {
393
+ const summary = summarizeNodes(filtered);
394
+ if (opts.json) {
395
+ console.log(JSON.stringify(summary));
396
+ }
397
+ else {
398
+ console.log(`totalNodes: ${summary.totalNodes}`);
399
+ console.log(`bySessionStatus: ${JSON.stringify(summary.bySessionStatus)}`);
400
+ console.log(`byLifecycle: ${JSON.stringify(summary.byLifecycle)}`);
401
+ }
402
+ return;
403
+ }
404
+ const limited = limit !== null ? filtered.slice(0, limit) : filtered;
405
+ const limitTruncated = limit !== null && filtered.length > limit;
406
+ const projected = fields ? selectFields(limited, fields) : limited;
407
+ if (opts.json) {
408
+ if (useEnvelope) {
409
+ const envelope = {
410
+ entries: projected,
411
+ totalNodes: filtered.length,
412
+ truncated: limitTruncated,
413
+ };
414
+ if (limitTruncated)
415
+ envelope.hint = "rig ps --nodes --full --json";
416
+ console.log(JSON.stringify(envelope));
417
+ }
418
+ else {
419
+ console.log(JSON.stringify(projected));
420
+ }
84
421
  return;
85
422
  }
86
- if (allNodes.length === 0) {
87
- console.log("No nodes");
423
+ if (limited.length === 0) {
424
+ if (parsedFilter) {
425
+ console.log(`No nodes match --filter ${parsedFilter.key}=${parsedFilter.value}`);
426
+ }
427
+ else {
428
+ console.log("No nodes");
429
+ }
88
430
  return;
89
431
  }
90
- const header = padNodeRow("RIG", "POD", "MEMBER", "SESSION", "RUNTIME", "STATUS", "STARTUP", "RESTORE", "ERROR");
432
+ const humanList = (opts.full || limit !== null) ? limited : limited.slice(0, HUMAN_NODE_BUDGET);
433
+ const humanTruncated = !opts.full && limit === null && filtered.length > HUMAN_NODE_BUDGET;
434
+ const header = padNodeRow("RIG", "POD", "MEMBER", "SESSION", "RUNTIME", "STATUS", "STARTUP", "LIFECYCLE", "ACTIVITY", "RESTORE", "ERROR");
91
435
  console.log(header);
92
- for (const n of allNodes) {
436
+ for (const n of humanList) {
93
437
  const parts = n.logicalId.split(".");
94
438
  const pod = n.podNamespace ?? (parts.length > 1 ? parts[0] : "—");
95
439
  const member = parts.length > 1 ? parts.slice(1).join(".") : n.logicalId;
96
440
  const rig = `${n.rigName}#${n.rigId}`;
97
- console.log(padNodeRow(rig, pod, member, n.canonicalSessionName ?? "—", n.runtime ?? "—", n.sessionStatus ?? "—", n.startupStatus ?? "—", n.restoreOutcome, n.latestError ? truncate(n.latestError, 30) : "—"));
441
+ console.log(padNodeRow(rig, pod, member, n.canonicalSessionName ?? "—", n.runtime ?? "—", n.sessionStatus ?? "—", n.startupStatus ?? "—", abbrevNodeLifecycle(n.lifecycleState), formatActivity(n.agentActivity), n.restoreOutcome, n.latestError ? truncate(n.latestError, 30) : "—"));
442
+ }
443
+ if (humanTruncated) {
444
+ const remaining = filtered.length - HUMAN_NODE_BUDGET;
445
+ console.log(`... and ${remaining} more node${remaining === 1 ? "" : "s"} (truncated at ${HUMAN_NODE_BUDGET}).`);
446
+ console.log("Run 'rig ps --nodes --full' to see all, or '--filter lifecycleState=attention_required' to narrow.");
447
+ }
448
+ else if (limitTruncated) {
449
+ const remaining = filtered.length - (limit ?? 0);
450
+ console.log(`... and ${remaining} more node${remaining === 1 ? "" : "s"} (--limit ${limit}).`);
98
451
  }
99
452
  }
453
+ function formatActivity(activity) {
454
+ if (!activity)
455
+ return "unknown";
456
+ if (activity.state === "running")
457
+ return "running";
458
+ if (activity.state === "needs_input")
459
+ return "needs_input";
460
+ if (activity.state === "idle")
461
+ return "idle";
462
+ return "unknown";
463
+ }
100
464
  function truncate(s, max) {
101
465
  return s.length > max ? s.slice(0, max - 1) + "…" : s;
102
466
  }
103
467
  function fitCell(value, width) {
104
468
  return truncate(value, width).padEnd(width);
105
469
  }
106
- function padRigRow(rig, nodes, running, status, uptime, snapshot) {
470
+ function padRigRow(rig, nodes, running, status, lifecycle, uptime, snapshot) {
107
471
  return [
108
472
  fitCell(rig, 24),
109
473
  fitCell(nodes, 7),
110
474
  fitCell(running, 9),
111
475
  fitCell(status, 10),
476
+ fitCell(lifecycle, 11),
112
477
  fitCell(uptime, 11),
113
478
  snapshot,
114
479
  ].join("");
115
480
  }
116
- function padNodeRow(rig, pod, member, session, runtime, status, startup, restore, error) {
481
+ function padNodeRow(rig, pod, member, session, runtime, status, startup, lifecycle, activity, restore, error) {
117
482
  return [
118
- fitCell(rig, 32),
119
- fitCell(pod, 12),
120
- fitCell(member, 16),
121
- fitCell(session, 40),
122
- fitCell(runtime, 14),
483
+ fitCell(rig, 30),
484
+ fitCell(pod, 10),
485
+ fitCell(member, 14),
486
+ fitCell(session, 34),
487
+ fitCell(runtime, 12),
123
488
  fitCell(status, 10),
124
489
  fitCell(startup, 10),
490
+ fitCell(lifecycle, 11),
491
+ fitCell(activity, 12),
125
492
  fitCell(restore, 10),
126
493
  error,
127
494
  ].join("");
128
495
  }
496
+ async function runCrossHostPs(hostId, opts, deps) {
497
+ const loader = deps.hostRegistryLoader ?? loadHostRegistry;
498
+ const runner = deps.crossHostRun ?? runCrossHostCommand;
499
+ const registry = loader();
500
+ if (!registry.ok) {
501
+ emitCrossHostError(hostId, "registry-load-failed", registry.error, opts.json);
502
+ return;
503
+ }
504
+ const resolved = resolveHost(registry.registry, hostId);
505
+ if (!resolved.ok) {
506
+ emitCrossHostError(hostId, "unknown-host", resolved.error, opts.json);
507
+ return;
508
+ }
509
+ const host = resolved.host;
510
+ // Reconstruct argv. `rig ps` has no positional args; all flags propagate.
511
+ const argv = ["rig", "ps"];
512
+ if (opts.nodes)
513
+ argv.push("--nodes");
514
+ if (opts.full)
515
+ argv.push("--full");
516
+ if (opts.limit !== undefined)
517
+ argv.push("--limit", opts.limit);
518
+ if (opts.fields !== undefined)
519
+ argv.push("--fields", opts.fields);
520
+ if (opts.summary)
521
+ argv.push("--summary");
522
+ if (opts.filter !== undefined)
523
+ argv.push("--filter", opts.filter);
524
+ if (opts.json)
525
+ argv.push("--json");
526
+ const result = await runner(host, argv);
527
+ if (opts.json) {
528
+ if (result.ok) {
529
+ // Verbatim remote stdout passthrough — the remote `rig ps --json` already
530
+ // produced the correct JSON shape (bare array OR envelope per its own
531
+ // shaping flags); we do NOT double-wrap.
532
+ if (result.stdout)
533
+ process.stdout.write(result.stdout);
534
+ if (result.stderr)
535
+ process.stderr.write(result.stderr);
536
+ return;
537
+ }
538
+ emitCrossHostFailure(host.id, host.target, result, true);
539
+ return;
540
+ }
541
+ console.log(`[via host=${host.id} (${host.target})]`);
542
+ if (result.ok) {
543
+ if (result.stdout)
544
+ process.stdout.write(result.stdout);
545
+ if (result.stderr)
546
+ process.stderr.write(result.stderr);
547
+ return;
548
+ }
549
+ emitCrossHostFailure(host.id, host.target, result, false);
550
+ }
129
551
  //# sourceMappingURL=ps.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ps.js","sourceRoot":"","sources":["../../src/commands/ps.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,YAAY,EAAsB,MAAM,wBAAwB,CAAC;AAC3F,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AA+BvC;;;;GAIG;AACH,MAAM,UAAU,SAAS,CAAC,YAAyB;IACjD,MAAM,GAAG,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC;SAC1B,WAAW,CAAC,4BAA4B,CAAC;SACzC,WAAW,CAAC,OAAO,EAAE;;;;;;;;;;sCAUY,CAAC,CAAC;IACtC,MAAM,QAAQ,GAAG,GAAG,EAAE,CAAC,YAAY,IAAI,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,aAAa,EAAE,CAAC,GAAW,EAAE,EAAE,CAAC,IAAI,YAAY,CAAC,GAAG,CAAC,EAAE,CAAC;IAE5H,GAAG;SACA,MAAM,CAAC,QAAQ,EAAE,wBAAwB,CAAC;SAC1C,MAAM,CAAC,SAAS,EAAE,mCAAmC,CAAC;SACtD,MAAM,CAAC,KAAK,EAAE,IAAyC,EAAE,EAAE;QAC1D,MAAM,IAAI,GAAG,QAAQ,EAAE,CAAC;QAExB,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACzD,IAAI,MAAM,CAAC,KAAK,KAAK,SAAS,IAAI,MAAM,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YAC3D,OAAO,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;YACrE,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;QAExD,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;YACf,MAAM,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,CAAC;YAC9C,OAAO;QACT,CAAC;QAED,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,GAAG,CAAY,SAAS,CAAC,CAAC;QAEnD,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;YACtB,OAAO,CAAC,KAAK,CAAC,8CAA8C,GAAG,CAAC,MAAM,yCAAyC,CAAC,CAAC;YACjH,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;YACrB,OAAO;QACT,CAAC;QAED,MAAM,OAAO,GAAG,GAAG,CAAC,IAAI,CAAC;QAEzB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;YACd,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC;YACrC,OAAO;QACT,CAAC;QAED,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACzB,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACvB,OAAO;QACT,CAAC;QAED,kBAAkB;QAClB,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,CAAC,CAAC;QACpF,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpB,KAAK,MAAM,CAAC,IAAI,OAAO,EAAE,CAAC;YACxB,OAAO,CAAC,GAAG,CAAC,SAAS,CACnB,CAAC,CAAC,IAAI,EACN,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,EACnB,MAAM,CAAC,CAAC,CAAC,YAAY,CAAC,EACtB,CAAC,CAAC,MAAM,EACR,CAAC,CAAC,MAAM,IAAI,GAAG,EACf,CAAC,CAAC,cAAc,IAAI,GAAG,CACxB,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CAAC;IAEL,OAAO,GAAG,CAAC;AACb,CAAC;AAED,KAAK,UAAU,WAAW,CAAC,MAAoB,EAAE,IAAa;IAC5D,uBAAuB;IACvB,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,CAAY,SAAS,CAAC,CAAC;IACtD,IAAI,MAAM,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;QACzB,OAAO,CAAC,KAAK,CAAC,8CAA8C,MAAM,CAAC,MAAM,yCAAyC,CAAC,CAAC;QACpH,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;QACrB,OAAO;IACT,CAAC;IAED,MAAM,QAAQ,GAAgB,EAAE,CAAC;IACjC,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,EAAE,CAAC;QAC9B,MAAM,QAAQ,GAAG,MAAM,MAAM,CAAC,GAAG,CAAc,aAAa,kBAAkB,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACnG,IAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,EAAE,CAAC;YAC3B,OAAO,CAAC,KAAK,CAAC,2CAA2C,GAAG,CAAC,IAAI,WAAW,QAAQ,CAAC,MAAM,2BAA2B,CAAC,CAAC;YACxH,SAAS;QACX,CAAC;QACD,QAAQ,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAC;IAClC,CAAC;IAED,IAAI,IAAI,EAAE,CAAC;QACT,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;QACtC,OAAO;IACT,CAAC;IAED,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1B,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACxB,OAAO;IACT,CAAC;IAED,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IACjH,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACpB,KAAK,MAAM,CAAC,IAAI,QAAQ,EAAE,CAAC;QACzB,MAAM,KAAK,GAAG,CAAC,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QACrC,MAAM,GAAG,GAAG,CAAC,CAAC,YAAY,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAE,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;QACnE,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACzE,MAAM,GAAG,GAAG,GAAG,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC,KAAK,EAAE,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,UAAU,CACpB,GAAG,EACH,GAAG,EACH,MAAM,EACN,CAAC,CAAC,oBAAoB,IAAI,GAAG,EAC7B,CAAC,CAAC,OAAO,IAAI,GAAG,EAChB,CAAC,CAAC,aAAa,IAAI,GAAG,EACtB,CAAC,CAAC,aAAa,IAAI,GAAG,EACtB,CAAC,CAAC,cAAc,EAChB,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAClD,CAAC,CAAC;IACL,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,CAAS,EAAE,GAAW;IACtC,OAAO,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACxD,CAAC;AAED,SAAS,OAAO,CAAC,KAAa,EAAE,KAAa;IAC3C,OAAO,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC9C,CAAC;AAED,SAAS,SAAS,CAAC,GAAW,EAAE,KAAa,EAAE,OAAe,EAAE,MAAc,EAAE,MAAc,EAAE,QAAgB;IAC9G,OAAO;QACL,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;QAChB,OAAO,CAAC,KAAK,EAAE,CAAC,CAAC;QACjB,OAAO,CAAC,OAAO,EAAE,CAAC,CAAC;QACnB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;QACnB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;QACnB,QAAQ;KACT,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACb,CAAC;AAED,SAAS,UAAU,CAAC,GAAW,EAAE,GAAW,EAAE,MAAc,EAAE,OAAe,EAAE,OAAe,EAAE,MAAc,EAAE,OAAe,EAAE,OAAe,EAAE,KAAa;IAC7J,OAAO;QACL,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;QAChB,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC;QAChB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;QACnB,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;QACpB,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;QACpB,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC;QACnB,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;QACpB,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC;QACpB,KAAK;KACN,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;AACb,CAAC"}
1
+ {"version":3,"file":"ps.js","sourceRoot":"","sources":["../../src/commands/ps.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,16 @@
1
+ import { Command } from "commander";
2
+ import type { StatusDeps } from "./status.js";
3
+ /**
4
+ * `rig queue` — coordination primitive L3/inbox/outbox commands (PL-004 Phase A).
5
+ *
6
+ * Backed by `/api/queue`. Operates only via the daemon HTTP API.
7
+ * Does NOT touch the POC `rigx-queue-proto` filesystem state.
8
+ *
9
+ * Hot-potato strict-rejection is enforced at the daemon; `update --state done`
10
+ * without `--closure-reason` returns exit 1 with structured error naming the
11
+ * 6 valid closure reasons.
12
+ */
13
+ export interface QueueDeps extends StatusDeps {
14
+ }
15
+ export declare function queueCommand(depsOverride?: QueueDeps): Command;
16
+ //# sourceMappingURL=queue.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"queue.d.ts","sourceRoot":"","sources":["../../src/commands/queue.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C;;;;;;;;;GASG;AAEH,MAAM,WAAW,SAAU,SAAQ,UAAU;CAAG;AAkChD,wBAAgB,YAAY,CAAC,YAAY,CAAC,EAAE,SAAS,GAAG,OAAO,CAwb9D"}