@openrig/cli 0.5.17 → 0.6.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 (399) hide show
  1. package/daemon/context-packs/onboarding-width/manifest.yaml +1 -1
  2. package/daemon/context-packs/skills/agent-operated-software/manifest.yaml +1 -1
  3. package/daemon/context-packs/skills/agent-operated-workflows/manifest.yaml +1 -1
  4. package/daemon/context-packs/skills/applying-a-permission-policy/manifest.yaml +1 -1
  5. package/daemon/context-packs/skills/claude-compaction-restore/manifest.yaml +1 -1
  6. package/daemon/context-packs/skills/core/agent-starters/manifest.yaml +1 -1
  7. package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/manifest.yaml +1 -1
  8. package/daemon/context-packs/skills/core/cross-host-rig-commands/manifest.yaml +1 -1
  9. package/daemon/context-packs/skills/core/human-in-the-loop/manifest.yaml +1 -1
  10. package/daemon/context-packs/skills/core/messaging-the-human/manifest.yaml +1 -1
  11. package/daemon/context-packs/skills/core/openrig-architect/manifest.yaml +1 -1
  12. package/daemon/context-packs/skills/core/openrig-cmux/manifest.yaml +1 -1
  13. package/daemon/context-packs/skills/core/openrig-herdr/manifest.yaml +1 -1
  14. package/daemon/context-packs/skills/core/openrig-skills/manifest.yaml +1 -1
  15. package/daemon/context-packs/skills/core/openrig-software-factory/manifest.yaml +1 -1
  16. package/daemon/context-packs/skills/core/openrig-upgrade/manifest.yaml +1 -1
  17. package/daemon/context-packs/skills/core/rig-bundles-and-shareable-artifacts/manifest.yaml +1 -1
  18. package/daemon/context-packs/skills/core/rig-lifecycle/manifest.yaml +1 -1
  19. package/daemon/context-packs/skills/core/session-source-fork/manifest.yaml +1 -1
  20. package/daemon/context-packs/skills/core/specification-system/manifest.yaml +1 -1
  21. package/daemon/context-packs/skills/core/topology-mutation-and-seat-management/manifest.yaml +1 -1
  22. package/daemon/context-packs/skills/core/watchdog/manifest.yaml +1 -1
  23. package/daemon/context-packs/skills/delegating-work/manifest.yaml +1 -1
  24. package/daemon/context-packs/skills/forming-an-openrig-mental-model/manifest.yaml +1 -1
  25. package/daemon/context-packs/skills/loading-addressable-markdown/manifest.yaml +1 -1
  26. package/daemon/context-packs/skills/mission-slice-sop/manifest.yaml +1 -1
  27. package/daemon/context-packs/skills/openrig-operating-model/manifest.yaml +1 -1
  28. package/daemon/context-packs/skills/openrig-user/manifest.yaml +1 -1
  29. package/daemon/context-packs/skills/orienting-to-an-inherited-seat/manifest.yaml +1 -1
  30. package/daemon/context-packs/skills/pm/backlog-capture/manifest.yaml +1 -1
  31. package/daemon/context-packs/skills/pm/context-builder/manifest.yaml +1 -1
  32. package/daemon/context-packs/skills/pm/exec-summary/manifest.yaml +1 -1
  33. package/daemon/context-packs/skills/pm/office-hours/manifest.yaml +1 -1
  34. package/daemon/context-packs/skills/pm/plan-review/manifest.yaml +1 -1
  35. package/daemon/context-packs/skills/pm/requirements-writer/manifest.yaml +1 -1
  36. package/daemon/context-packs/skills/pm/ui-mockup/manifest.yaml +1 -1
  37. package/daemon/context-packs/skills/pods/development-team/manifest.yaml +1 -1
  38. package/daemon/context-packs/skills/pods/orchestration-team/manifest.yaml +1 -1
  39. package/daemon/context-packs/skills/pods/oversight-team/manifest.yaml +1 -1
  40. package/daemon/context-packs/skills/pods/review-team/manifest.yaml +1 -1
  41. package/daemon/context-packs/skills/process/agent-browser/manifest.yaml +1 -1
  42. package/daemon/context-packs/skills/process/context-engineering/manifest.yaml +1 -1
  43. package/daemon/context-packs/skills/process/dogfood/manifest.yaml +1 -1
  44. package/daemon/context-packs/skills/process/frontend-design/manifest.yaml +1 -1
  45. package/daemon/context-packs/skills/process/systematic-debugging/manifest.yaml +1 -1
  46. package/daemon/context-packs/skills/process/test-driven-development/manifest.yaml +1 -1
  47. package/daemon/context-packs/skills/process/verification-before-completion/manifest.yaml +1 -1
  48. package/daemon/context-packs/skills/queue-handoff/manifest.yaml +1 -1
  49. package/daemon/context-packs/skills/refocusing/manifest.yaml +1 -1
  50. package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/manifest.yaml +1 -1
  51. package/daemon/context-packs/skills/seat-continuity-and-handover/manifest.yaml +1 -1
  52. package/daemon/context-packs/skills/session-compaction-and-restore/manifest.yaml +1 -1
  53. package/daemon/context-packs/skills/software-for-agents/manifest.yaml +1 -1
  54. package/daemon/context-packs/world-example/manifest.yaml +1 -1
  55. package/daemon/context-packs/world-public/manifest.yaml +1 -1
  56. package/daemon/dist/adapters/claude-code-adapter.d.ts +3 -0
  57. package/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
  58. package/daemon/dist/adapters/claude-code-adapter.js +36 -14
  59. package/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
  60. package/daemon/dist/adapters/claude-resume.d.ts +3 -1
  61. package/daemon/dist/adapters/claude-resume.d.ts.map +1 -1
  62. package/daemon/dist/adapters/claude-resume.js +20 -6
  63. package/daemon/dist/adapters/claude-resume.js.map +1 -1
  64. package/daemon/dist/adapters/codex-resume.d.ts +4 -1
  65. package/daemon/dist/adapters/codex-resume.d.ts.map +1 -1
  66. package/daemon/dist/adapters/codex-resume.js +8 -2
  67. package/daemon/dist/adapters/codex-resume.js.map +1 -1
  68. package/daemon/dist/adapters/codex-runtime-adapter.d.ts +3 -0
  69. package/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
  70. package/daemon/dist/adapters/codex-runtime-adapter.js +16 -3
  71. package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
  72. package/daemon/dist/adapters/pi-runner.d.ts +1 -0
  73. package/daemon/dist/adapters/pi-runner.d.ts.map +1 -1
  74. package/daemon/dist/adapters/pi-runner.js +7 -1
  75. package/daemon/dist/adapters/pi-runner.js.map +1 -1
  76. package/daemon/dist/adapters/tmux.d.ts +21 -1
  77. package/daemon/dist/adapters/tmux.d.ts.map +1 -1
  78. package/daemon/dist/adapters/tmux.js +141 -3
  79. package/daemon/dist/adapters/tmux.js.map +1 -1
  80. package/daemon/dist/adapters/yolo-mode.d.ts +3 -2
  81. package/daemon/dist/adapters/yolo-mode.d.ts.map +1 -1
  82. package/daemon/dist/adapters/yolo-mode.js +10 -2
  83. package/daemon/dist/adapters/yolo-mode.js.map +1 -1
  84. package/daemon/dist/build-info.js +3 -3
  85. package/daemon/dist/db/all-migrations.d.ts +1 -1
  86. package/daemon/dist/db/all-migrations.d.ts.map +1 -1
  87. package/daemon/dist/db/all-migrations.js +10 -2
  88. package/daemon/dist/db/all-migrations.js.map +1 -1
  89. package/daemon/dist/db/migrations/086_classification_fields_and_attempts.d.ts +26 -0
  90. package/daemon/dist/db/migrations/086_classification_fields_and_attempts.d.ts.map +1 -0
  91. package/daemon/dist/db/migrations/086_classification_fields_and_attempts.js +66 -0
  92. package/daemon/dist/db/migrations/086_classification_fields_and_attempts.js.map +1 -0
  93. package/daemon/dist/db/migrations/087_seat_delivery_guard.d.ts +3 -0
  94. package/daemon/dist/db/migrations/087_seat_delivery_guard.d.ts.map +1 -0
  95. package/daemon/dist/db/migrations/087_seat_delivery_guard.js +31 -0
  96. package/daemon/dist/db/migrations/087_seat_delivery_guard.js.map +1 -0
  97. package/daemon/dist/db/migrations/088_node_permission_selections.d.ts +3 -0
  98. package/daemon/dist/db/migrations/088_node_permission_selections.d.ts.map +1 -0
  99. package/daemon/dist/db/migrations/088_node_permission_selections.js +16 -0
  100. package/daemon/dist/db/migrations/088_node_permission_selections.js.map +1 -0
  101. package/daemon/dist/db/migrations/089_classification_identity_provenance.d.ts +3 -0
  102. package/daemon/dist/db/migrations/089_classification_identity_provenance.d.ts.map +1 -0
  103. package/daemon/dist/db/migrations/089_classification_identity_provenance.js +6 -0
  104. package/daemon/dist/db/migrations/089_classification_identity_provenance.js.map +1 -0
  105. package/daemon/dist/domain/applied-launch-observation-store.d.ts +1 -1
  106. package/daemon/dist/domain/applied-launch-observation-store.d.ts.map +1 -1
  107. package/daemon/dist/domain/applied-launch-observation-store.js +6 -4
  108. package/daemon/dist/domain/applied-launch-observation-store.js.map +1 -1
  109. package/daemon/dist/domain/capture-observer.d.ts +130 -0
  110. package/daemon/dist/domain/capture-observer.d.ts.map +1 -0
  111. package/daemon/dist/domain/capture-observer.js +113 -0
  112. package/daemon/dist/domain/capture-observer.js.map +1 -0
  113. package/daemon/dist/domain/claim-service.d.ts.map +1 -1
  114. package/daemon/dist/domain/claim-service.js +24 -3
  115. package/daemon/dist/domain/claim-service.js.map +1 -1
  116. package/daemon/dist/domain/classification-attempts.d.ts +143 -0
  117. package/daemon/dist/domain/classification-attempts.d.ts.map +1 -0
  118. package/daemon/dist/domain/classification-attempts.js +316 -0
  119. package/daemon/dist/domain/classification-attempts.js.map +1 -0
  120. package/daemon/dist/domain/classification-sources.d.ts +44 -0
  121. package/daemon/dist/domain/classification-sources.d.ts.map +1 -0
  122. package/daemon/dist/domain/classification-sources.js +102 -0
  123. package/daemon/dist/domain/classification-sources.js.map +1 -0
  124. package/daemon/dist/domain/classifier-lease-manager.d.ts +15 -4
  125. package/daemon/dist/domain/classifier-lease-manager.d.ts.map +1 -1
  126. package/daemon/dist/domain/classifier-lease-manager.js +63 -21
  127. package/daemon/dist/domain/classifier-lease-manager.js.map +1 -1
  128. package/daemon/dist/domain/claude-compaction-enforcer.d.ts +3 -1
  129. package/daemon/dist/domain/claude-compaction-enforcer.d.ts.map +1 -1
  130. package/daemon/dist/domain/claude-compaction-enforcer.js +36 -7
  131. package/daemon/dist/domain/claude-compaction-enforcer.js.map +1 -1
  132. package/daemon/dist/domain/claude-managed-launch.d.ts +28 -0
  133. package/daemon/dist/domain/claude-managed-launch.d.ts.map +1 -0
  134. package/daemon/dist/domain/claude-managed-launch.js +111 -0
  135. package/daemon/dist/domain/claude-managed-launch.js.map +1 -0
  136. package/daemon/dist/domain/codex-daemon-support.d.ts +16 -0
  137. package/daemon/dist/domain/codex-daemon-support.d.ts.map +1 -0
  138. package/daemon/dist/domain/codex-daemon-support.js +52 -0
  139. package/daemon/dist/domain/codex-daemon-support.js.map +1 -0
  140. package/daemon/dist/domain/gateway/connections-projection.d.ts.map +1 -1
  141. package/daemon/dist/domain/gateway/connections-projection.js +6 -3
  142. package/daemon/dist/domain/gateway/connections-projection.js.map +1 -1
  143. package/daemon/dist/domain/gateway/slack/capabilities.d.ts +19 -0
  144. package/daemon/dist/domain/gateway/slack/capabilities.d.ts.map +1 -0
  145. package/daemon/dist/domain/gateway/slack/capabilities.js +24 -0
  146. package/daemon/dist/domain/gateway/slack/capabilities.js.map +1 -0
  147. package/daemon/dist/domain/gateway/slack/config.d.ts.map +1 -1
  148. package/daemon/dist/domain/gateway/slack/config.js +2 -1
  149. package/daemon/dist/domain/gateway/slack/config.js.map +1 -1
  150. package/daemon/dist/domain/gateway/slack/inbound.d.ts.map +1 -1
  151. package/daemon/dist/domain/gateway/slack/inbound.js +2 -1
  152. package/daemon/dist/domain/gateway/slack/inbound.js.map +1 -1
  153. package/daemon/dist/domain/gateway/slack/manifest.d.ts +54 -0
  154. package/daemon/dist/domain/gateway/slack/manifest.d.ts.map +1 -0
  155. package/daemon/dist/domain/gateway/slack/manifest.js +55 -0
  156. package/daemon/dist/domain/gateway/slack/manifest.js.map +1 -0
  157. package/daemon/dist/domain/model-divergence/model-divergence-monitor.d.ts +3 -2
  158. package/daemon/dist/domain/model-divergence/model-divergence-monitor.d.ts.map +1 -1
  159. package/daemon/dist/domain/model-divergence/model-divergence-monitor.js +9 -5
  160. package/daemon/dist/domain/model-divergence/model-divergence-monitor.js.map +1 -1
  161. package/daemon/dist/domain/native-permission-selection.d.ts +13 -0
  162. package/daemon/dist/domain/native-permission-selection.d.ts.map +1 -0
  163. package/daemon/dist/domain/native-permission-selection.js +30 -0
  164. package/daemon/dist/domain/native-permission-selection.js.map +1 -0
  165. package/daemon/dist/domain/native-permission-store.d.ts +17 -0
  166. package/daemon/dist/domain/native-permission-store.d.ts.map +1 -0
  167. package/daemon/dist/domain/native-permission-store.js +36 -0
  168. package/daemon/dist/domain/native-permission-store.js.map +1 -0
  169. package/daemon/dist/domain/native-resume-probe.d.ts +3 -1
  170. package/daemon/dist/domain/native-resume-probe.d.ts.map +1 -1
  171. package/daemon/dist/domain/native-resume-probe.js +5 -2
  172. package/daemon/dist/domain/native-resume-probe.js.map +1 -1
  173. package/daemon/dist/domain/node-inventory.d.ts +3 -0
  174. package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
  175. package/daemon/dist/domain/node-inventory.js +2 -0
  176. package/daemon/dist/domain/node-inventory.js.map +1 -1
  177. package/daemon/dist/domain/node-launcher.d.ts.map +1 -1
  178. package/daemon/dist/domain/node-launcher.js +6 -0
  179. package/daemon/dist/domain/node-launcher.js.map +1 -1
  180. package/daemon/dist/domain/outbox-handler.d.ts +25 -2
  181. package/daemon/dist/domain/outbox-handler.d.ts.map +1 -1
  182. package/daemon/dist/domain/outbox-handler.js +70 -1
  183. package/daemon/dist/domain/outbox-handler.js.map +1 -1
  184. package/daemon/dist/domain/permission-drift-observer.d.ts +1 -0
  185. package/daemon/dist/domain/permission-drift-observer.d.ts.map +1 -1
  186. package/daemon/dist/domain/permission-drift-observer.js +1 -1
  187. package/daemon/dist/domain/permission-drift-observer.js.map +1 -1
  188. package/daemon/dist/domain/permission-drift.d.ts +10 -0
  189. package/daemon/dist/domain/permission-drift.d.ts.map +1 -1
  190. package/daemon/dist/domain/permission-drift.js +29 -18
  191. package/daemon/dist/domain/permission-drift.js.map +1 -1
  192. package/daemon/dist/domain/project-classifier.d.ts +43 -0
  193. package/daemon/dist/domain/project-classifier.d.ts.map +1 -1
  194. package/daemon/dist/domain/project-classifier.js +141 -25
  195. package/daemon/dist/domain/project-classifier.js.map +1 -1
  196. package/daemon/dist/domain/proof/judgments.d.ts +16 -0
  197. package/daemon/dist/domain/proof/judgments.d.ts.map +1 -1
  198. package/daemon/dist/domain/proof/judgments.js +17 -1
  199. package/daemon/dist/domain/proof/judgments.js.map +1 -1
  200. package/daemon/dist/domain/queue-repository.d.ts +8 -0
  201. package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
  202. package/daemon/dist/domain/queue-repository.js +41 -14
  203. package/daemon/dist/domain/queue-repository.js.map +1 -1
  204. package/daemon/dist/domain/restore-orchestrator.d.ts.map +1 -1
  205. package/daemon/dist/domain/restore-orchestrator.js +28 -1
  206. package/daemon/dist/domain/restore-orchestrator.js.map +1 -1
  207. package/daemon/dist/domain/resume-metadata-refresher.d.ts.map +1 -1
  208. package/daemon/dist/domain/resume-metadata-refresher.js +3 -1
  209. package/daemon/dist/domain/resume-metadata-refresher.js.map +1 -1
  210. package/daemon/dist/domain/rig-lifecycle-service.d.ts.map +1 -1
  211. package/daemon/dist/domain/rig-lifecycle-service.js +7 -0
  212. package/daemon/dist/domain/rig-lifecycle-service.js.map +1 -1
  213. package/daemon/dist/domain/rig-teardown.d.ts.map +1 -1
  214. package/daemon/dist/domain/rig-teardown.js +4 -0
  215. package/daemon/dist/domain/rig-teardown.js.map +1 -1
  216. package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
  217. package/daemon/dist/domain/rigspec-instantiator.js +36 -22
  218. package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
  219. package/daemon/dist/domain/runtime-adapter.d.ts +6 -0
  220. package/daemon/dist/domain/runtime-adapter.d.ts.map +1 -1
  221. package/daemon/dist/domain/runtime-adapter.js.map +1 -1
  222. package/daemon/dist/domain/seat-delivery-guard.d.ts +64 -0
  223. package/daemon/dist/domain/seat-delivery-guard.d.ts.map +1 -0
  224. package/daemon/dist/domain/seat-delivery-guard.js +224 -0
  225. package/daemon/dist/domain/seat-delivery-guard.js.map +1 -0
  226. package/daemon/dist/domain/seat-handover-service.d.ts.map +1 -1
  227. package/daemon/dist/domain/seat-handover-service.js +19 -1
  228. package/daemon/dist/domain/seat-handover-service.js.map +1 -1
  229. package/daemon/dist/domain/seat-lifecycle-service.d.ts +16 -2
  230. package/daemon/dist/domain/seat-lifecycle-service.d.ts.map +1 -1
  231. package/daemon/dist/domain/seat-lifecycle-service.js +70 -0
  232. package/daemon/dist/domain/seat-lifecycle-service.js.map +1 -1
  233. package/daemon/dist/domain/seat-status-service.d.ts +10 -0
  234. package/daemon/dist/domain/seat-status-service.d.ts.map +1 -1
  235. package/daemon/dist/domain/seat-status-service.js +13 -0
  236. package/daemon/dist/domain/seat-status-service.js.map +1 -1
  237. package/daemon/dist/domain/session-transport.d.ts +19 -1
  238. package/daemon/dist/domain/session-transport.d.ts.map +1 -1
  239. package/daemon/dist/domain/session-transport.js +221 -23
  240. package/daemon/dist/domain/session-transport.js.map +1 -1
  241. package/daemon/dist/domain/shadow-capture.d.ts +97 -0
  242. package/daemon/dist/domain/shadow-capture.d.ts.map +1 -0
  243. package/daemon/dist/domain/shadow-capture.js +147 -0
  244. package/daemon/dist/domain/shadow-capture.js.map +1 -0
  245. package/daemon/dist/domain/startup-orchestrator.d.ts.map +1 -1
  246. package/daemon/dist/domain/startup-orchestrator.js +11 -0
  247. package/daemon/dist/domain/startup-orchestrator.js.map +1 -1
  248. package/daemon/dist/domain/stream-classification-worker.d.ts +106 -0
  249. package/daemon/dist/domain/stream-classification-worker.d.ts.map +1 -0
  250. package/daemon/dist/domain/stream-classification-worker.js +265 -0
  251. package/daemon/dist/domain/stream-classification-worker.js.map +1 -0
  252. package/daemon/dist/domain/successor-session-launcher.d.ts +1 -0
  253. package/daemon/dist/domain/successor-session-launcher.d.ts.map +1 -1
  254. package/daemon/dist/domain/successor-session-launcher.js +4 -2
  255. package/daemon/dist/domain/successor-session-launcher.js.map +1 -1
  256. package/daemon/dist/domain/terminal/herdr-adapter.d.ts +7 -0
  257. package/daemon/dist/domain/terminal/herdr-adapter.d.ts.map +1 -1
  258. package/daemon/dist/domain/terminal/herdr-adapter.js +119 -12
  259. package/daemon/dist/domain/terminal/herdr-adapter.js.map +1 -1
  260. package/daemon/dist/domain/terminal/terminal-provider.d.ts +5 -0
  261. package/daemon/dist/domain/terminal/terminal-provider.d.ts.map +1 -1
  262. package/daemon/dist/domain/terminal/terminal-service.js +6 -6
  263. package/daemon/dist/domain/terminal/terminal-service.js.map +1 -1
  264. package/daemon/dist/domain/terminal/view-composer.d.ts +6 -4
  265. package/daemon/dist/domain/terminal/view-composer.d.ts.map +1 -1
  266. package/daemon/dist/domain/terminal/view-composer.js +5 -5
  267. package/daemon/dist/domain/terminal/view-composer.js.map +1 -1
  268. package/daemon/dist/domain/types.d.ts +10 -0
  269. package/daemon/dist/domain/types.d.ts.map +1 -1
  270. package/daemon/dist/domain/types.js.map +1 -1
  271. package/daemon/dist/domain/watchdog-policy-engine.d.ts +3 -1
  272. package/daemon/dist/domain/watchdog-policy-engine.d.ts.map +1 -1
  273. package/daemon/dist/domain/watchdog-policy-engine.js +5 -3
  274. package/daemon/dist/domain/watchdog-policy-engine.js.map +1 -1
  275. package/daemon/dist/gateway-slack-surface.d.ts +2 -0
  276. package/daemon/dist/gateway-slack-surface.d.ts.map +1 -1
  277. package/daemon/dist/gateway-slack-surface.js +2 -0
  278. package/daemon/dist/gateway-slack-surface.js.map +1 -1
  279. package/daemon/dist/routes/activity.d.ts.map +1 -1
  280. package/daemon/dist/routes/activity.js +28 -2
  281. package/daemon/dist/routes/activity.js.map +1 -1
  282. package/daemon/dist/routes/down.d.ts.map +1 -1
  283. package/daemon/dist/routes/down.js +3 -0
  284. package/daemon/dist/routes/down.js.map +1 -1
  285. package/daemon/dist/routes/gateway.d.ts.map +1 -1
  286. package/daemon/dist/routes/gateway.js +3 -0
  287. package/daemon/dist/routes/gateway.js.map +1 -1
  288. package/daemon/dist/routes/projects.d.ts.map +1 -1
  289. package/daemon/dist/routes/projects.js +205 -18
  290. package/daemon/dist/routes/projects.js.map +1 -1
  291. package/daemon/dist/routes/rigs.d.ts.map +1 -1
  292. package/daemon/dist/routes/rigs.js +13 -5
  293. package/daemon/dist/routes/rigs.js.map +1 -1
  294. package/daemon/dist/routes/seat.d.ts.map +1 -1
  295. package/daemon/dist/routes/seat.js +78 -1
  296. package/daemon/dist/routes/seat.js.map +1 -1
  297. package/daemon/dist/routes/sessions.d.ts.map +1 -1
  298. package/daemon/dist/routes/sessions.js +4 -1
  299. package/daemon/dist/routes/sessions.js.map +1 -1
  300. package/daemon/dist/routes/transport.d.ts.map +1 -1
  301. package/daemon/dist/routes/transport.js +9 -1
  302. package/daemon/dist/routes/transport.js.map +1 -1
  303. package/daemon/dist/server.d.ts +5 -0
  304. package/daemon/dist/server.d.ts.map +1 -1
  305. package/daemon/dist/server.js +3 -0
  306. package/daemon/dist/server.js.map +1 -1
  307. package/daemon/dist/startup.d.ts.map +1 -1
  308. package/daemon/dist/startup.js +32 -8
  309. package/daemon/dist/startup.js.map +1 -1
  310. package/daemon/dist/stream-classifier-surface.d.ts +6 -0
  311. package/daemon/dist/stream-classifier-surface.d.ts.map +1 -0
  312. package/daemon/dist/stream-classifier-surface.js +6 -0
  313. package/daemon/dist/stream-classifier-surface.js.map +1 -0
  314. package/daemon/dist/terminal/TerminalSessionBroker.d.ts +1 -0
  315. package/daemon/dist/terminal/TerminalSessionBroker.d.ts.map +1 -1
  316. package/daemon/dist/terminal/TerminalSessionBroker.js +10 -6
  317. package/daemon/dist/terminal/TerminalSessionBroker.js.map +1 -1
  318. package/daemon/docs/reference/getting-started.md +63 -5
  319. package/daemon/docs/reference/rig-spec.md +6 -1
  320. package/daemon/docs/reference/slack-app-setup.md +90 -0
  321. package/daemon/docs/reference/stream-classifier-worker.md +244 -0
  322. package/daemon/policies/builtin/yolo.policy.md +5 -5
  323. package/daemon/specs/rigs/launch/kernel/rig.yaml +4 -0
  324. package/dist/build-info.js +3 -3
  325. package/dist/commands/doctor.d.ts.map +1 -1
  326. package/dist/commands/doctor.js +9 -6
  327. package/dist/commands/doctor.js.map +1 -1
  328. package/dist/commands/policy.d.ts.map +1 -1
  329. package/dist/commands/policy.js +8 -1
  330. package/dist/commands/policy.js.map +1 -1
  331. package/dist/commands/preflight.d.ts.map +1 -1
  332. package/dist/commands/preflight.js +2 -0
  333. package/dist/commands/preflight.js.map +1 -1
  334. package/dist/commands/project-jev.d.ts +115 -0
  335. package/dist/commands/project-jev.d.ts.map +1 -0
  336. package/dist/commands/project-jev.js +239 -0
  337. package/dist/commands/project-jev.js.map +1 -0
  338. package/dist/commands/project-worker.d.ts +96 -0
  339. package/dist/commands/project-worker.d.ts.map +1 -0
  340. package/dist/commands/project-worker.js +125 -0
  341. package/dist/commands/project-worker.js.map +1 -0
  342. package/dist/commands/project.d.ts +5 -1
  343. package/dist/commands/project.d.ts.map +1 -1
  344. package/dist/commands/project.js +161 -0
  345. package/dist/commands/project.js.map +1 -1
  346. package/dist/commands/seat.d.ts.map +1 -1
  347. package/dist/commands/seat.js +79 -0
  348. package/dist/commands/seat.js.map +1 -1
  349. package/dist/commands/send.d.ts.map +1 -1
  350. package/dist/commands/send.js +18 -5
  351. package/dist/commands/send.js.map +1 -1
  352. package/dist/commands/slack.d.ts +4 -1
  353. package/dist/commands/slack.d.ts.map +1 -1
  354. package/dist/commands/slack.js +41 -2
  355. package/dist/commands/slack.js.map +1 -1
  356. package/dist/commands/terminal.d.ts.map +1 -1
  357. package/dist/commands/terminal.js +2 -0
  358. package/dist/commands/terminal.js.map +1 -1
  359. package/dist/commands/walk.d.ts.map +1 -1
  360. package/dist/commands/walk.js +6 -0
  361. package/dist/commands/walk.js.map +1 -1
  362. package/dist/node-support.d.ts +12 -0
  363. package/dist/node-support.d.ts.map +1 -0
  364. package/dist/node-support.js +37 -0
  365. package/dist/node-support.js.map +1 -0
  366. package/dist/system-preflight.d.ts +2 -0
  367. package/dist/system-preflight.d.ts.map +1 -1
  368. package/dist/system-preflight.js +9 -10
  369. package/dist/system-preflight.js.map +1 -1
  370. package/package.json +3 -3
  371. package/scripts/check-abi.mjs +119 -65
  372. package/tui/dist/commands/registry.d.ts.map +1 -1
  373. package/tui/dist/commands/registry.js +3 -0
  374. package/tui/dist/commands/registry.js.map +1 -1
  375. package/tui/dist/connections/connections-model.d.ts +11 -1
  376. package/tui/dist/connections/connections-model.d.ts.map +1 -1
  377. package/tui/dist/connections/connections-model.js +28 -1
  378. package/tui/dist/connections/connections-model.js.map +1 -1
  379. package/tui/dist/daemon-client.d.ts +2 -0
  380. package/tui/dist/daemon-client.d.ts.map +1 -1
  381. package/tui/dist/daemon-client.js +1 -0
  382. package/tui/dist/daemon-client.js.map +1 -1
  383. package/tui/dist/hydrate.d.ts.map +1 -1
  384. package/tui/dist/hydrate.js +5 -0
  385. package/tui/dist/hydrate.js.map +1 -1
  386. package/tui/dist/main.js +16 -2
  387. package/tui/dist/main.js.map +1 -1
  388. package/tui/dist/print-for-copy.d.ts +36 -0
  389. package/tui/dist/print-for-copy.d.ts.map +1 -0
  390. package/tui/dist/print-for-copy.js +92 -0
  391. package/tui/dist/print-for-copy.js.map +1 -0
  392. package/tui/dist/render.d.ts.map +1 -1
  393. package/tui/dist/render.js +4 -1
  394. package/tui/dist/render.js.map +1 -1
  395. package/tui/dist/state.d.ts.map +1 -1
  396. package/tui/dist/state.js +2 -0
  397. package/tui/dist/state.js.map +1 -1
  398. package/tui/dist/types.d.ts +8 -0
  399. package/tui/dist/types.d.ts.map +1 -1
@@ -71,11 +71,17 @@ export declare class ClassifierLeaseManager {
71
71
  * caller should first invoke `evaluateDeadness` (which marks it expired)
72
72
  * or use the operator reclaim path.
73
73
  *
74
- * Idempotent for the SAME classifier_session: re-calling acquire on the
75
- * lease holder's behalf returns the existing lease unchanged (heartbeat
76
- * is updated separately via `heartbeat`).
74
+ * Idempotent for the SAME classifier_session while its lease is unexpired:
75
+ * re-calling acquire returns the existing lease unchanged (heartbeat is
76
+ * updated separately via `heartbeat`). If the holder's own lease has passed
77
+ * its TTL, acquire expires it and issues a NEW lease id, so a result bound to
78
+ * the old lease id can no longer be written (S02 P1).
77
79
  */
78
80
  acquire(classifierSession: string): ClassifierLease;
81
+ /** Expire the caller's own TTL-passed lease and issue a fresh one, atomically. */
82
+ private replaceExpiredOwnLease;
83
+ private insertActiveLease;
84
+ private isPastTtl;
79
85
  /**
80
86
  * Heartbeat from the lease holder. Updates `last_heartbeat` and extends
81
87
  * `expires_at` by the TTL (sliding-window TTL semantics).
@@ -116,8 +122,13 @@ export declare class ClassifierLeaseManager {
116
122
  * Validation hook used by project-classifier: returns the active lease
117
123
  * iff the supplied session holds it, else throws. Centralizes the
118
124
  * "must hold the lease to project" check.
125
+ *
126
+ * With `leaseId` (S02 P1), the caller must also hold THAT lease: a result
127
+ * computed under a replaced lease is refused with `lease_mismatch`, even when
128
+ * the same session holds the new lease. Safe to call inside a write
129
+ * transaction (reads only).
119
130
  */
120
- requireActiveHolder(classifierSession: string): ClassifierLease;
131
+ requireActiveHolder(classifierSession: string, leaseId?: string): ClassifierLease;
121
132
  getActiveLease(): ClassifierLease | null;
122
133
  getById(leaseId: string): ClassifierLease | null;
123
134
  list(opts?: {
@@ -1 +1 @@
1
- {"version":3,"file":"classifier-lease-manager.d.ts","sourceRoot":"","sources":["../../src/domain/classifier-lease-manager.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAE3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAG/C;;;;;;;;;;;;;;;;;;;;GAoBG;AAEH,eAAO,MAAM,YAAY,6CAA8C,CAAC;AACxE,MAAM,MAAM,UAAU,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,CAAC,CAAC;AAEvD,MAAM,WAAW,eAAe;IAC9B,OAAO,EAAE,MAAM,CAAC;IAChB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;IACtB,KAAK,EAAE,UAAU,CAAC;IAClB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAaD,qBAAa,oBAAqB,SAAQ,KAAK;IAC7C,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;gBACvC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAK1E;AAWD,MAAM,WAAW,6BAA6B;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,+EAA+E;IAC/E,GAAG,CAAC,EAAE,MAAM,IAAI,CAAC;IACjB;;;;;;;OAOG;IACH,OAAO,CAAC,EAAE,CAAC,iBAAiB,EAAE,MAAM,KAAK,OAAO,CAAC;CAClD;AAED,qBAAa,sBAAsB;IACjC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,CAAC;IAC/B,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAW;IACpC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAS;IAC/B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAa;IACjC,OAAO,CAAC,OAAO,CAAyC;gBAGtD,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,QAAQ,EAAE,QAAQ,EAClB,IAAI,CAAC,EAAE,6BAA6B;IAStC;;;OAGG;IACH,aAAa,CAAC,KAAK,EAAE,CAAC,iBAAiB,EAAE,MAAM,KAAK,OAAO,GAAG,IAAI;IAIlE;;;;;;;;;;OAUG;IACH,OAAO,CAAC,iBAAiB,EAAE,MAAM,GAAG,eAAe;IA0CnD;;;OAGG;IACH,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,eAAe;IAiCtE;;;;;;;;;;;;;OAaG;IACH,gBAAgB,IAAI,eAAe,GAAG,IAAI;IAuC1C;;;;;;;;;;;OAWG;IACH,OAAO,CAAC,mBAAmB,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,OAAO,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,eAAe;IA4CnG;;;;OAIG;IACH,mBAAmB,CAAC,iBAAiB,EAAE,MAAM,GAAG,eAAe;IAwB/D,cAAc,IAAI,eAAe,GAAG,IAAI;IAOxC,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,eAAe,GAAG,IAAI;IAOhD,IAAI,CAAC,IAAI,CAAC,EAAE;QAAE,iBAAiB,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,GAAG,eAAe,EAAE;IAgB9E,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,UAAU;CAYnB"}
1
+ {"version":3,"file":"classifier-lease-manager.d.ts","sourceRoot":"","sources":["../../src/domain/classifier-lease-manager.ts"],"names":[],"mappings":"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"}
@@ -65,41 +65,70 @@ export class ClassifierLeaseManager {
65
65
  * caller should first invoke `evaluateDeadness` (which marks it expired)
66
66
  * or use the operator reclaim path.
67
67
  *
68
- * Idempotent for the SAME classifier_session: re-calling acquire on the
69
- * lease holder's behalf returns the existing lease unchanged (heartbeat
70
- * is updated separately via `heartbeat`).
68
+ * Idempotent for the SAME classifier_session while its lease is unexpired:
69
+ * re-calling acquire returns the existing lease unchanged (heartbeat is
70
+ * updated separately via `heartbeat`). If the holder's own lease has passed
71
+ * its TTL, acquire expires it and issues a NEW lease id, so a result bound to
72
+ * the old lease id can no longer be written (S02 P1).
71
73
  */
72
74
  acquire(classifierSession) {
73
75
  const active = this.getActiveLease();
74
76
  if (active) {
75
77
  if (active.classifierSession === classifierSession) {
76
- // Idempotent re-acquire by current holder.
77
- return active;
78
+ if (!this.isPastTtl(active)) {
79
+ // Idempotent re-acquire by current holder.
80
+ return active;
81
+ }
82
+ return this.replaceExpiredOwnLease(active);
78
83
  }
79
84
  throw new ClassifierLeaseError("lease_held", `classifier lease is held by ${active.classifierSession} until ${active.expiresAt}; reclaim via 'rig project --reclaim-classifier' if needed`, { holder: active.classifierSession, expiresAt: active.expiresAt });
80
85
  }
81
86
  const leaseId = ulid();
82
- const acquiredAt = this.now().toISOString();
83
- const expiresAt = new Date(this.now().getTime() + this.ttlMs).toISOString();
87
+ const txn = this.db.transaction(() => this.insertActiveLease(leaseId, classifierSession));
88
+ const persisted = txn();
89
+ this.eventBus.notifySubscribers(persisted);
90
+ return this.getByIdOrThrow(leaseId);
91
+ }
92
+ /** Expire the caller's own TTL-passed lease and issue a fresh one, atomically. */
93
+ replaceExpiredOwnLease(active) {
94
+ const leaseId = ulid();
95
+ const nowIso = this.now().toISOString();
84
96
  const txn = this.db.transaction(() => {
85
97
  this.db
86
- .prepare(`INSERT INTO classifier_leases (
87
- lease_id, classifier_session, acquired_at, expires_at,
88
- last_heartbeat, state
89
- ) VALUES (?, ?, ?, ?, ?, 'active')`)
90
- .run(leaseId, classifierSession, acquiredAt, expiresAt, acquiredAt);
91
- return this.eventBus.persistWithinTransaction({
92
- type: "classifier.lease_acquired",
93
- leaseId,
94
- classifierSession,
95
- acquiredAt,
96
- expiresAt,
98
+ .prepare(`UPDATE classifier_leases SET state = 'expired' WHERE lease_id = ? AND state = 'active'`)
99
+ .run(active.leaseId);
100
+ const expired = this.eventBus.persistWithinTransaction({
101
+ type: "classifier.lease_expired",
102
+ leaseId: active.leaseId,
103
+ classifierSession: active.classifierSession,
104
+ expiredAt: nowIso,
97
105
  });
106
+ return [expired, this.insertActiveLease(leaseId, active.classifierSession)];
98
107
  });
99
- const persisted = txn();
100
- this.eventBus.notifySubscribers(persisted);
108
+ for (const e of txn())
109
+ this.eventBus.notifySubscribers(e);
101
110
  return this.getByIdOrThrow(leaseId);
102
111
  }
112
+ insertActiveLease(leaseId, classifierSession) {
113
+ const acquiredAt = this.now().toISOString();
114
+ const expiresAt = new Date(this.now().getTime() + this.ttlMs).toISOString();
115
+ this.db
116
+ .prepare(`INSERT INTO classifier_leases (
117
+ lease_id, classifier_session, acquired_at, expires_at,
118
+ last_heartbeat, state
119
+ ) VALUES (?, ?, ?, ?, ?, 'active')`)
120
+ .run(leaseId, classifierSession, acquiredAt, expiresAt, acquiredAt);
121
+ return this.eventBus.persistWithinTransaction({
122
+ type: "classifier.lease_acquired",
123
+ leaseId,
124
+ classifierSession,
125
+ acquiredAt,
126
+ expiresAt,
127
+ });
128
+ }
129
+ isPastTtl(lease) {
130
+ return this.now().toISOString() > lease.expiresAt;
131
+ }
103
132
  /**
104
133
  * Heartbeat from the lease holder. Updates `last_heartbeat` and extends
105
134
  * `expires_at` by the TTL (sliding-window TTL semantics).
@@ -115,6 +144,11 @@ export class ClassifierLeaseManager {
115
144
  if (lease.state !== "active") {
116
145
  throw new ClassifierLeaseError("lease_not_active", `lease ${leaseId} is in state ${lease.state}; cannot heartbeat`);
117
146
  }
147
+ // S02 P1: a lease past its TTL cannot be revived by a heartbeat. The holder
148
+ // must acquire again (which issues a new lease id for its own expired lease).
149
+ if (this.isPastTtl(lease)) {
150
+ throw new ClassifierLeaseError("lease_expired", `lease ${leaseId} expired at ${lease.expiresAt}; acquire a new lease instead of heartbeating`, { expiresAt: lease.expiresAt });
151
+ }
118
152
  const now = this.now();
119
153
  const lastHeartbeat = now.toISOString();
120
154
  const expiresAt = new Date(now.getTime() + this.ttlMs).toISOString();
@@ -221,8 +255,13 @@ export class ClassifierLeaseManager {
221
255
  * Validation hook used by project-classifier: returns the active lease
222
256
  * iff the supplied session holds it, else throws. Centralizes the
223
257
  * "must hold the lease to project" check.
258
+ *
259
+ * With `leaseId` (S02 P1), the caller must also hold THAT lease: a result
260
+ * computed under a replaced lease is refused with `lease_mismatch`, even when
261
+ * the same session holds the new lease. Safe to call inside a write
262
+ * transaction (reads only).
224
263
  */
225
- requireActiveHolder(classifierSession) {
264
+ requireActiveHolder(classifierSession, leaseId) {
226
265
  const active = this.getActiveLease();
227
266
  if (!active) {
228
267
  throw new ClassifierLeaseError("no_active_lease", "no active classifier lease; call acquire first");
@@ -233,6 +272,9 @@ export class ClassifierLeaseManager {
233
272
  if (active.expiresAt < this.now().toISOString()) {
234
273
  throw new ClassifierLeaseError("lease_expired", `classifier lease for ${classifierSession} expired at ${active.expiresAt}`);
235
274
  }
275
+ if (leaseId !== undefined && active.leaseId !== leaseId) {
276
+ throw new ClassifierLeaseError("lease_mismatch", `result is bound to lease ${leaseId}, but the active lease for ${classifierSession} is ${active.leaseId}`, { activeLeaseId: active.leaseId, suppliedLeaseId: leaseId });
277
+ }
236
278
  return active;
237
279
  }
238
280
  getActiveLease() {
@@ -1 +1 @@
1
- {"version":3,"file":"classifier-lease-manager.js","sourceRoot":"","sources":["../../src/domain/classifier-lease-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"classifier-lease-manager.js","sourceRoot":"","sources":["../../src/domain/classifier-lease-manager.ts"],"names":[],"mappings":"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"}
@@ -81,7 +81,7 @@ export type ManualCompactionOutcome = {
81
81
  stage: "skipped-or-failed";
82
82
  reason: string;
83
83
  };
84
- export type EnforcerSkipReason = "runtime_filter" | "no_usage_data" | "disabled" | "below_threshold" | "already_triggered_above_threshold" | "dedup_window" | "post_restore_cooldown" | "send_failed" | "invalid_policy" | "stale_generation";
84
+ export type EnforcerSkipReason = "typing_guard_enabled" | "guard_target_unknown" | "guard_target_changed" | "runtime_filter" | "no_usage_data" | "disabled" | "below_threshold" | "already_triggered_above_threshold" | "dedup_window" | "post_restore_cooldown" | "send_failed" | "invalid_policy" | "stale_generation";
85
85
  export declare class ClaudeCompactionEnforcer {
86
86
  private readonly settingsStore;
87
87
  private readonly sessionTransport;
@@ -119,6 +119,7 @@ export declare class ClaudeCompactionEnforcer {
119
119
  * with a skip reason and never touch SessionTransport.
120
120
  */
121
121
  maybeAutoCompact(input: EnforcerInput): Promise<EnforcerOutcome>;
122
+ private maybeAutoCompactUnchecked;
122
123
  /**
123
124
  * OPR.0.4.3.14 — MANUAL, operator-initiated compaction for ONE Claude seat.
124
125
  *
@@ -141,6 +142,7 @@ export declare class ClaudeCompactionEnforcer {
141
142
  triggerManualCompact(input: EnforcerInput, opts?: {
142
143
  operatorInitiated?: boolean;
143
144
  }): Promise<ManualCompactionOutcome>;
145
+ private triggerManualCompactUnchecked;
144
146
  /** OPR.0.4.3.14 — read the surfaced manual-trigger state for a seat (AC-3). */
145
147
  getManualCompactionState(sessionName: string): ManualCompactionStatus | null;
146
148
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"claude-compaction-enforcer.d.ts","sourceRoot":"","sources":["../../src/domain/claude-compaction-enforcer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude-compaction-enforcer.d.ts","sourceRoot":"","sources":["../../src/domain/claude-compaction-enforcer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AAKvE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,eAAO,MAAM,uBAAuB,QAAS,CAAC;AAC9C,eAAO,MAAM,wCAAwC,QAAc,CAAC;AAKpE,eAAO,MAAM,2BAA2B,SAAU,CAAC;AAQnD,eAAO,MAAM,iCAAiC,QAAS,CAAC;AAExD,MAAM,WAAW,aAAa;IAC5B,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,MAAM,eAAe,GACvB;IAAE,SAAS,EAAE,IAAI,CAAA;CAAE,GACnB;IAAE,SAAS,EAAE,KAAK,CAAC;IAAC,MAAM,EAAE,kBAAkB,CAAA;CAAE,CAAC;AAErD;;;;;;GAMG;AACH,MAAM,MAAM,qBAAqB,GAC7B,WAAW,GACX,cAAc,GACd,cAAc,GACd,YAAY,GACZ,mBAAmB,CAAC;AAExB,MAAM,WAAW,sBAAsB;IACrC,KAAK,EAAE,qBAAqB,CAAC;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB;;kGAE8F;IAC9F,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAED,MAAM,MAAM,uBAAuB,GAC/B;IAAE,SAAS,EAAE,IAAI,CAAC;IAAC,KAAK,EAAE,cAAc,CAAA;CAAE,GAC1C;IAAE,SAAS,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,mBAAmB,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAErE,MAAM,MAAM,kBAAkB,GAC1B,sBAAsB,GACtB,sBAAsB,GACtB,sBAAsB,GACtB,gBAAgB,GAChB,eAAe,GACf,UAAU,GACV,iBAAiB,GACjB,mCAAmC,GACnC,cAAc,GACd,uBAAuB,GACvB,aAAa,GACb,gBAAgB,GAChB,kBAAkB,CAAC;AAoLvB,qBAAa,wBAAwB;IACnC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAgB;IAC9C,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAmB;IACpD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAS;IACvC,OAAO,CAAC,QAAQ,CAAC,4BAA4B,CAAS;IACtD,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAS;IAGrC,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAS;IAC1C,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAS;IAC/C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAA6B;IAC/D,OAAO,CAAC,QAAQ,CAAC,+BAA+B,CAA6B;IAC7E,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAqB;IAC7D,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA6C;IACnF,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAA8C;IAGxF,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAA6C;IAInF,OAAO,CAAC,QAAQ,CAAC,sBAAsB,CAAoC;IAC3E,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAC,CAAyC;IACpF,OAAO,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAKZ;gBAGzB,aAAa,EAAE,aAAa,EAC5B,gBAAgB,EAAE,gBAAgB,EAClC,IAAI,CAAC,EAAE;QACL,aAAa,CAAC,EAAE,MAAM,CAAC;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,4BAA4B,CAAC,EAAE,MAAM,CAAC;QACtC,gBAAgB,CAAC,EAAE,MAAM,CAAC;QAC1B,qBAAqB,CAAC,EAAE,MAAM,CAAC;QAC/B,yBAAyB,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;QACnE,qBAAqB,CAAC,EAAE,CAAC,OAAO,EAAE;YAChC,WAAW,EAAE,MAAM,CAAC;YACpB,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;YAClC,yBAAyB,EAAE,MAAM,CAAC;YAClC,yBAAyB,EAAE,MAAM,CAAC;SACnC,KAAK,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;KAC5B;IAaH;;;;OAIG;IACG,gBAAgB,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,eAAe,CAAC;YAYxD,yBAAyB;IAkMvC;;;;;;;;;;;;;;;;;;OAkBG;IACG,oBAAoB,CACxB,KAAK,EAAE,aAAa,EACpB,IAAI,GAAE;QAAE,iBAAiB,CAAC,EAAE,OAAO,CAAA;KAAO,GACzC,OAAO,CAAC,uBAAuB,CAAC;YAYrB,6BAA6B;IAkG3C,+EAA+E;IAC/E,wBAAwB,CAAC,WAAW,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI;IAI5E;;;;;;;OAOG;IACH,kBAAkB,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAU7C,OAAO,CAAC,cAAc;IAItB,OAAO,CAAC,mBAAmB;IAK3B;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;CAO3B"}
@@ -1,3 +1,4 @@
1
+ import { DeliveryGuardError } from "./seat-delivery-guard.js";
1
2
  import * as fs from "node:fs";
2
3
  import * as os from "node:os";
3
4
  import * as path from "node:path";
@@ -231,6 +232,20 @@ export class ClaudeCompactionEnforcer {
231
232
  * with a skip reason and never touch SessionTransport.
232
233
  */
233
234
  async maybeAutoCompact(input) {
235
+ const guard = this.sessionTransport.deliveryGuard;
236
+ if (guard && input.runtime === "claude-code") {
237
+ try {
238
+ return await guard.lifecycle([guard.target(input.sessionName).nodeId], () => this.maybeAutoCompactUnchecked(input));
239
+ }
240
+ catch (error) {
241
+ if (error instanceof DeliveryGuardError)
242
+ return { triggered: false, reason: error.code === "typing_guard_enabled" ? "typing_guard_enabled" : "guard_target_unknown" };
243
+ throw error;
244
+ }
245
+ }
246
+ return this.maybeAutoCompactUnchecked(input);
247
+ }
248
+ async maybeAutoCompactUnchecked(input) {
234
249
  if (input.runtime !== "claude-code") {
235
250
  return { triggered: false, reason: "runtime_filter" };
236
251
  }
@@ -283,7 +298,7 @@ export class ClaudeCompactionEnforcer {
283
298
  const pendingStage = this.pendingPostCompactRestore.get(input.sessionName);
284
299
  if (pendingStage === "turn_boundary") {
285
300
  const boundary = await this.sessionTransport.send(input.sessionName, buildPostCompactTurnBoundaryPrompt(), { waitForIdleMs: this.postCompactSendWaitMs });
286
- if (!boundary.ok) {
301
+ if (!boundary.ok || boundary.outcome === "retained") {
287
302
  // Busy/never-idle → no delivery, no advance; the SAME stage retries next tick.
288
303
  return { triggered: false, reason: "send_failed" };
289
304
  }
@@ -303,7 +318,7 @@ export class ClaudeCompactionEnforcer {
303
318
  postCompactInstructionFilePath: extra.filePath,
304
319
  ignoredWrongSeatExtra: extra.ignoredWrongSeat,
305
320
  }), { waitForIdleMs: this.postCompactSendWaitMs });
306
- if (!restore.ok) {
321
+ if (!restore.ok || restore.outcome === "retained") {
307
322
  // Restore is exact-once + operator-authorized: if the seat is still busy
308
323
  // (mid-compaction/boundary), do NOT advance to restore-sent on an
309
324
  // undelivered send — retry the SAME stage next tick.
@@ -316,7 +331,7 @@ export class ClaudeCompactionEnforcer {
316
331
  }
317
332
  if (pendingStage === "compliance_prompt") {
318
333
  const compliance = await this.sessionTransport.send(input.sessionName, buildPostCompactCompliancePrompt(policy.postRestoreAuditInstruction), { waitForIdleMs: this.postCompactSendWaitMs });
319
- if (!compliance.ok) {
334
+ if (!compliance.ok || compliance.outcome === "retained") {
320
335
  // Audit cannot overtake restore: only advances once the restore turn is
321
336
  // idle and this send delivers; a busy tick retries the SAME stage.
322
337
  return { triggered: false, reason: "send_failed" };
@@ -375,14 +390,14 @@ export class ClaudeCompactionEnforcer {
375
390
  thresholdPercent: policy.thresholdPercent,
376
391
  preCompactInstruction: policy.preCompactInstruction,
377
392
  }));
378
- if (!prep.ok) {
393
+ if (!prep.ok || prep.outcome === "retained") {
379
394
  return { triggered: false, reason: "send_failed" };
380
395
  }
381
396
  this.pendingPreCompactPrep.set(input.sessionName, "prep_prompt_sent");
382
397
  return { triggered: true };
383
398
  }
384
399
  const result = await this.sessionTransport.send(input.sessionName, buildCompactCommand(policy.compactInstruction));
385
- if (!result.ok) {
400
+ if (!result.ok || result.outcome === "retained") {
386
401
  return { triggered: false, reason: "send_failed" };
387
402
  }
388
403
  this.lastAutoCompactAt.set(input.sessionName, now);
@@ -413,6 +428,20 @@ export class ClaudeCompactionEnforcer {
413
428
  * - Bounded to the one triggered seat; no fan-out, no broadcast.
414
429
  */
415
430
  async triggerManualCompact(input, opts = {}) {
431
+ const guard = this.sessionTransport.deliveryGuard;
432
+ if (guard && input.runtime === "claude-code") {
433
+ try {
434
+ return await guard.lifecycle([guard.target(input.sessionName).nodeId], () => this.triggerManualCompactUnchecked(input, opts));
435
+ }
436
+ catch (error) {
437
+ if (error instanceof DeliveryGuardError)
438
+ return { triggered: false, stage: "skipped-or-failed", reason: error.code };
439
+ throw error;
440
+ }
441
+ }
442
+ return this.triggerManualCompactUnchecked(input, opts);
443
+ }
444
+ async triggerManualCompactUnchecked(input, opts) {
416
445
  // OPR.0.4.3.14 rev1-r2 fix — SAME-SEAT IN-PROGRESS GUARD (race-safe), at the
417
446
  // VERY TOP before ANY recordManualFailure path. This synchronous check-and-set
418
447
  // runs BEFORE the first await; because JS is run-to-completion, two concurrent
@@ -460,14 +489,14 @@ export class ClaudeCompactionEnforcer {
460
489
  thresholdPercent: policy.thresholdPercent,
461
490
  preCompactInstruction: policy.preCompactInstruction,
462
491
  }));
463
- if (!prep.ok) {
492
+ if (!prep.ok || prep.outcome === "retained") {
464
493
  return this.recordManualFailure(input.sessionName, prep.reason ?? "send_failed");
465
494
  }
466
495
  // Phase 2 — WAIT for the prep turn to complete (seat idle), THEN send
467
496
  // /compact. `waitForIdleMs` makes the transport block on explicit idle
468
497
  // evidence before pasting /compact, guaranteeing prep-before-compact.
469
498
  const compact = await this.sessionTransport.send(input.sessionName, buildCompactCommand(policy.compactInstruction), { waitForIdleMs: this.manualPrepWaitMs });
470
- if (!compact.ok) {
499
+ if (!compact.ok || compact.outcome === "retained") {
471
500
  return this.recordManualFailure(input.sessionName, compact.reason ?? "send_failed");
472
501
  }
473
502
  // Seed the EXISTING post-compact back-half (turn_boundary → restore_prompt
@@ -1 +1 @@
1
- {"version":3,"file":"claude-compaction-enforcer.js","sourceRoot":"","sources":["../../src/domain/claude-compaction-enforcer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude-compaction-enforcer.js","sourceRoot":"","sources":["../../src/domain/claude-compaction-enforcer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ import type Database from "better-sqlite3";
2
+ export interface ClaudeLaunchTarget {
3
+ nodeId: string;
4
+ cwd?: string;
5
+ session?: string;
6
+ pane?: string | null;
7
+ /** A successor may have a reserved generation before its tenure is committed. */
8
+ generation?: string;
9
+ }
10
+ /** Dynamic choices use the managed launch environment, not an interactive shell's
11
+ * aliases or startup files. No cache and no persisted environment/credentials.
12
+ * The help child has only the capability environment. Launch adds the existing
13
+ * managed identity/auth channel by variable NAME, never secret values in text.
14
+ */
15
+ export declare class ClaudeManagedLaunch {
16
+ private readonly db;
17
+ private readonly sessionEnv;
18
+ private readonly rendererEnv;
19
+ constructor(db: Database.Database, sessionEnv: Readonly<Record<string, string | undefined>>, rendererEnv: Readonly<NodeJS.ProcessEnv>);
20
+ private target;
21
+ private context;
22
+ prepare(request: ClaudeLaunchTarget, mode: string): Promise<{
23
+ assertCurrent: () => void;
24
+ command: (args: readonly string[]) => string;
25
+ configDir: string;
26
+ }>;
27
+ }
28
+ //# sourceMappingURL=claude-managed-launch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-managed-launch.d.ts","sourceRoot":"","sources":["../../src/domain/claude-managed-launch.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAM3C,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,iFAAiF;IACjF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAOD;;;;GAIG;AACH,qBAAa,mBAAmB;IAClB,OAAO,CAAC,QAAQ,CAAC,EAAE;IAC7B,OAAO,CAAC,QAAQ,CAAC,UAAU;IAC3B,OAAO,CAAC,QAAQ,CAAC,WAAW;gBAFD,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAC/B,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,SAAS,CAAC,CAAC,EACxD,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAC;IAE3D,OAAO,CAAC,MAAM;IAYd,OAAO,CAAC,OAAO;IAyBT,OAAO,CAAC,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QAChE,aAAa,EAAE,MAAM,IAAI,CAAC;QAAC,OAAO,EAAE,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,KAAK,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;KAC5F,CAAC;CA2CH"}
@@ -0,0 +1,111 @@
1
+ import { execFile } from "node:child_process";
2
+ import { accessSync, constants, realpathSync, statSync } from "node:fs";
3
+ import path from "node:path";
4
+ import { shellQuote } from "../adapters/shell-quote.js";
5
+ import { claudeClassicRendererEnvPrefix } from "../adapters/yolo-mode.js";
6
+ import { parseClaudePermissionModes } from "./permission-drift.js";
7
+ import { validateNativePermissionSelection } from "./native-permission-selection.js";
8
+ /** Dynamic choices use the managed launch environment, not an interactive shell's
9
+ * aliases or startup files. No cache and no persisted environment/credentials.
10
+ * The help child has only the capability environment. Launch adds the existing
11
+ * managed identity/auth channel by variable NAME, never secret values in text.
12
+ */
13
+ export class ClaudeManagedLaunch {
14
+ db;
15
+ sessionEnv;
16
+ rendererEnv;
17
+ constructor(db, sessionEnv, rendererEnv) {
18
+ this.db = db;
19
+ this.sessionEnv = sessionEnv;
20
+ this.rendererEnv = rendererEnv;
21
+ }
22
+ target(nodeId) {
23
+ const row = this.db.prepare(`SELECT n.id AS nodeId, n.runtime, n.cwd,
24
+ b.id AS bindingId, b.tmux_session AS session, b.tmux_pane AS pane,
25
+ (SELECT generation_uuid FROM occupant_tenures WHERE node_id=n.id
26
+ ORDER BY generation_ordinal DESC LIMIT 1) AS generation
27
+ FROM nodes n LEFT JOIN bindings b ON b.node_id=n.id WHERE n.id=?`).get(nodeId);
28
+ if (!row || row.runtime !== "claude-code" || !row.cwd || !path.isAbsolute(row.cwd)) {
29
+ throw new Error("Claude managed launch context is unresolved: an absolute seat cwd and Claude node are required.");
30
+ }
31
+ return row;
32
+ }
33
+ context(cwd) {
34
+ const { PATH, HOME, CLAUDE_CONFIG_DIR } = this.sessionEnv;
35
+ if (!PATH || !HOME || !path.isAbsolute(HOME))
36
+ throw new Error("Claude managed launch context is unresolved: managed PATH and absolute HOME are required.");
37
+ // Relative/empty PATH entries are interpreted at the intended seat cwd,
38
+ // including for /usr/bin/env shebangs inside the selected executable.
39
+ const search = PATH.split(path.delimiter).map(p => path.resolve(cwd, p));
40
+ const env = { PATH: search.join(path.delimiter), HOME,
41
+ CLAUDE_CONFIG_DIR: path.resolve(cwd, CLAUDE_CONFIG_DIR ?? path.join(HOME, ".claude")) };
42
+ if (claudeClassicRendererEnvPrefix(this.rendererEnv))
43
+ env.CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN = "1";
44
+ let executable;
45
+ for (const dir of search) {
46
+ const candidate = path.join(dir, "claude");
47
+ try {
48
+ accessSync(candidate, constants.X_OK);
49
+ if (!statSync(candidate).isFile())
50
+ continue;
51
+ }
52
+ catch {
53
+ continue;
54
+ }
55
+ executable = realpathSync(candidate);
56
+ break;
57
+ }
58
+ if (!executable)
59
+ throw new Error("Claude managed launch executable is unavailable on the intended PATH; no fallback was selected.");
60
+ const identity = (file) => {
61
+ const s = statSync(file);
62
+ return [realpathSync(file), s.dev, s.ino, s.mode, s.size, s.mtimeMs, s.ctimeMs];
63
+ };
64
+ return Object.freeze({ env: Object.freeze(env), executable,
65
+ fileIdentity: Object.freeze(identity(executable)), cwdIdentity: Object.freeze(identity(cwd).slice(0, 3)) });
66
+ }
67
+ async prepare(request, mode) {
68
+ const target = Object.freeze({ ...request });
69
+ const before = this.target(target.nodeId);
70
+ const cwd = before.cwd;
71
+ if (target.session !== undefined && (!before.pane || !before.generation)) {
72
+ throw new Error("Claude managed launch context is unresolved: a bound pane and current occupant are required.");
73
+ }
74
+ if ((target.cwd !== undefined && target.cwd !== cwd)
75
+ || (target.session !== undefined && target.session !== before.session)
76
+ || (target.pane != null && target.pane !== before.pane)) {
77
+ throw new Error("Claude managed launch target disagrees with the current binding; no input or selection changed.");
78
+ }
79
+ const context = this.context(cwd);
80
+ // This is the existing managed session channel, not arbitrary shell variables.
81
+ // Filter out the explicit capability environment and overwrite launch identity.
82
+ const inherited = Object.keys(this.sessionEnv).filter(key => this.sessionEnv[key] !== undefined
83
+ && !["PATH", "HOME", "CLAUDE_CONFIG_DIR", "CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN"].includes(key));
84
+ if (inherited.some(key => !/^[A-Z_][A-Z0-9_]*$/.test(key)))
85
+ throw new Error("Invalid managed environment key.");
86
+ const assertCurrent = () => {
87
+ if (JSON.stringify(this.target(target.nodeId)) !== JSON.stringify(before)
88
+ || JSON.stringify(this.context(cwd)) !== JSON.stringify(context)
89
+ || JSON.stringify(Object.keys(this.sessionEnv).filter(key => this.sessionEnv[key] !== undefined
90
+ && !["PATH", "HOME", "CLAUDE_CONFIG_DIR", "CLAUDE_CODE_DISABLE_ALTERNATE_SCREEN"].includes(key))) !== JSON.stringify(inherited)) {
91
+ throw new Error("Claude managed launch context changed during capability discovery/input; retry explicitly.");
92
+ }
93
+ };
94
+ const help = await new Promise((resolve, reject) => {
95
+ execFile(context.executable, ["--help"], { cwd, env: context.env, encoding: "utf8", timeout: 1000, maxBuffer: 1024 * 1024 }, (error, stdout) => error ? reject(new Error("Claude managed capability query failed; no fallback was selected.")) : resolve(stdout));
96
+ });
97
+ assertCurrent();
98
+ validateNativePermissionSelection("claude-code", mode, parseClaudePermissionModes(help));
99
+ const generation = target.generation ?? before.generation;
100
+ const identity = { OPENRIG_NODE_ID: target.nodeId, OPENRIG_RUNTIME: "claude-code",
101
+ ...(before.session ? { OPENRIG_SESSION_NAME: before.session } : {}),
102
+ ...(generation ? { OPENRIG_OCCUPANT_GENERATION: generation } : {}) };
103
+ const assignments = Object.entries({ ...context.env, ...identity }).map(([key, value]) => shellQuote(`${key}=${value}`));
104
+ const forwarded = inherited.filter(key => !(key in identity)).map(key => `"${key}=\${${key}-}"`);
105
+ return Object.freeze({ assertCurrent, configDir: context.env.CLAUDE_CONFIG_DIR, command: (args) => {
106
+ assertCurrent();
107
+ return `cd ${shellQuote(cwd)} && /usr/bin/env -i ${[...assignments, ...forwarded, shellQuote(context.executable), ...args.map(shellQuote)].join(" ")}`;
108
+ } });
109
+ }
110
+ }
111
+ //# sourceMappingURL=claude-managed-launch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"claude-managed-launch.js","sourceRoot":"","sources":["../../src/domain/claude-managed-launch.ts"],"names":[],"mappings":"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"}