@openrig/cli 0.6.14 → 0.7.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 (778) hide show
  1. package/README.md +10 -9
  2. package/daemon/assets/plugins/openrig-core/.claude-plugin/plugin.json +1 -1
  3. package/daemon/assets/plugins/openrig-core/.codex-plugin/plugin.json +1 -1
  4. package/daemon/assets/plugins/openrig-core/README.md +11 -4
  5. package/daemon/assets/plugins/openrig-core/hooks/codex.json +6 -6
  6. package/daemon/assets/plugins/openrig-core/hooks/scripts/activity-relay.cjs +13 -1
  7. package/daemon/assets/plugins/openrig-core/hooks/scripts/codex-hook-trust.cjs +49 -0
  8. package/daemon/assets/plugins/openrig-core/hooks/scripts/refocus.cjs +26 -5
  9. package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/SKILL.md +9 -2
  10. package/daemon/assets/plugins/openrig-core/skills/forming-an-openrig-mental-model/SKILL.md +3 -2
  11. package/daemon/assets/plugins/openrig-core/skills/messaging-the-human/SKILL.md +24 -0
  12. package/daemon/assets/plugins/openrig-core/skills/openrig-skills/SKILL.md +2 -2
  13. package/daemon/assets/plugins/openrig-core/skills/openrig-user/SKILL.md +28 -18
  14. package/daemon/assets/plugins/openrig-core/skills/queue-handoff/SKILL.md +10 -4
  15. package/daemon/assets/skills/rigs/SKILL.md +24 -5
  16. package/daemon/context-packs/help/manifest.yaml +1 -1
  17. package/daemon/context-packs/onboarding-width/manifest.yaml +1 -1
  18. package/daemon/context-packs/onboarding-width/public-what-you-can-do.md +4 -6
  19. package/daemon/context-packs/reference/getting-started.md +87 -21
  20. package/daemon/context-packs/reference/manifest.yaml +1 -1
  21. package/daemon/context-packs/reference/rig-spec.md +1 -1
  22. package/daemon/context-packs/reference/whats-new.md +123 -68
  23. package/daemon/context-packs/skills/agent-operated-software/manifest.yaml +1 -1
  24. package/daemon/context-packs/skills/agent-operated-workflows/manifest.yaml +1 -1
  25. package/daemon/context-packs/skills/applying-a-permission-policy/manifest.yaml +1 -1
  26. package/daemon/context-packs/skills/claude-compaction-restore/SKILL.md +9 -2
  27. package/daemon/context-packs/skills/claude-compaction-restore/manifest.yaml +1 -1
  28. package/daemon/context-packs/skills/core/agent-starters/manifest.yaml +1 -1
  29. package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/manifest.yaml +1 -1
  30. package/daemon/context-packs/skills/core/cross-host-rig-commands/manifest.yaml +1 -1
  31. package/daemon/context-packs/skills/core/human-in-the-loop/manifest.yaml +1 -1
  32. package/daemon/context-packs/skills/core/messaging-the-human/SKILL.md +24 -0
  33. package/daemon/context-packs/skills/core/messaging-the-human/manifest.yaml +1 -1
  34. package/daemon/context-packs/skills/core/openrig-architect/manifest.yaml +1 -1
  35. package/daemon/context-packs/skills/core/openrig-cmux/manifest.yaml +1 -1
  36. package/daemon/context-packs/skills/core/openrig-herdr/manifest.yaml +1 -1
  37. package/daemon/context-packs/skills/core/openrig-skills/SKILL.md +2 -2
  38. package/daemon/context-packs/skills/core/openrig-skills/manifest.yaml +1 -1
  39. package/daemon/context-packs/skills/core/openrig-software-factory/manifest.yaml +1 -1
  40. package/daemon/context-packs/skills/core/openrig-upgrade/SKILL.md +11 -5
  41. package/daemon/context-packs/skills/core/openrig-upgrade/manifest.yaml +1 -1
  42. package/daemon/context-packs/skills/core/rig-bundles-and-shareable-artifacts/manifest.yaml +1 -1
  43. package/daemon/context-packs/skills/core/rig-lifecycle/manifest.yaml +1 -1
  44. package/daemon/context-packs/skills/core/session-source-fork/manifest.yaml +1 -1
  45. package/daemon/context-packs/skills/core/specification-system/manifest.yaml +1 -1
  46. package/daemon/context-packs/skills/core/topology-mutation-and-seat-management/manifest.yaml +1 -1
  47. package/daemon/context-packs/skills/core/watchdog/manifest.yaml +1 -1
  48. package/daemon/context-packs/skills/delegating-work/manifest.yaml +1 -1
  49. package/daemon/context-packs/skills/forming-an-openrig-mental-model/SKILL.md +3 -2
  50. package/daemon/context-packs/skills/forming-an-openrig-mental-model/manifest.yaml +1 -1
  51. package/daemon/context-packs/skills/loading-addressable-markdown/manifest.yaml +1 -1
  52. package/daemon/context-packs/skills/mission-slice-sop/manifest.yaml +1 -1
  53. package/daemon/context-packs/skills/openrig-operating-model/manifest.yaml +1 -1
  54. package/daemon/context-packs/skills/openrig-user/SKILL.md +28 -18
  55. package/daemon/context-packs/skills/openrig-user/manifest.yaml +1 -1
  56. package/daemon/context-packs/skills/orienting-to-an-inherited-seat/manifest.yaml +1 -1
  57. package/daemon/context-packs/skills/pm/backlog-capture/manifest.yaml +1 -1
  58. package/daemon/context-packs/skills/pm/context-builder/manifest.yaml +1 -1
  59. package/daemon/context-packs/skills/pm/exec-summary/manifest.yaml +1 -1
  60. package/daemon/context-packs/skills/pm/office-hours/manifest.yaml +1 -1
  61. package/daemon/context-packs/skills/pm/plan-review/manifest.yaml +1 -1
  62. package/daemon/context-packs/skills/pm/requirements-writer/manifest.yaml +1 -1
  63. package/daemon/context-packs/skills/pm/ui-mockup/manifest.yaml +1 -1
  64. package/daemon/context-packs/skills/pods/development-team/SKILL.md +2 -0
  65. package/daemon/context-packs/skills/pods/development-team/manifest.yaml +3 -1
  66. package/daemon/context-packs/skills/pods/development-team/references/refactoring.md +11 -0
  67. package/daemon/context-packs/skills/pods/orchestration-team/manifest.yaml +1 -1
  68. package/daemon/context-packs/skills/pods/oversight-team/manifest.yaml +1 -1
  69. package/daemon/context-packs/skills/pods/review-team/SKILL.md +46 -96
  70. package/daemon/context-packs/skills/pods/review-team/manifest.yaml +1 -1
  71. package/daemon/context-packs/skills/process/agent-browser/manifest.yaml +1 -1
  72. package/daemon/context-packs/skills/process/context-engineering/manifest.yaml +1 -1
  73. package/daemon/context-packs/skills/process/dogfood/manifest.yaml +1 -1
  74. package/daemon/context-packs/skills/process/frontend-design/manifest.yaml +1 -1
  75. package/daemon/context-packs/skills/process/systematic-debugging/manifest.yaml +1 -1
  76. package/daemon/context-packs/skills/process/test-driven-development/manifest.yaml +1 -1
  77. package/daemon/context-packs/skills/process/verification-before-completion/SKILL.md +17 -80
  78. package/daemon/context-packs/skills/process/verification-before-completion/manifest.yaml +5 -3
  79. package/daemon/context-packs/skills/process/verification-before-completion/references/performance-claims.md +12 -0
  80. package/daemon/context-packs/skills/queue-handoff/SKILL.md +10 -4
  81. package/daemon/context-packs/skills/queue-handoff/manifest.yaml +1 -1
  82. package/daemon/context-packs/skills/refocusing/manifest.yaml +1 -1
  83. package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/manifest.yaml +1 -1
  84. package/daemon/context-packs/skills/seat-continuity-and-handover/manifest.yaml +1 -1
  85. package/daemon/context-packs/skills/session-compaction-and-restore/manifest.yaml +1 -1
  86. package/daemon/context-packs/skills/software-for-agents/manifest.yaml +1 -1
  87. package/daemon/context-packs/world-example/manifest.yaml +1 -1
  88. package/daemon/context-packs/world-public/manifest.yaml +1 -1
  89. package/daemon/dist/adapters/claude-code-adapter.d.ts +6 -2
  90. package/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
  91. package/daemon/dist/adapters/claude-code-adapter.js +33 -6
  92. package/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
  93. package/daemon/dist/adapters/codex-resume.d.ts.map +1 -1
  94. package/daemon/dist/adapters/codex-resume.js +2 -7
  95. package/daemon/dist/adapters/codex-resume.js.map +1 -1
  96. package/daemon/dist/adapters/codex-runtime-adapter.d.ts +68 -2
  97. package/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
  98. package/daemon/dist/adapters/codex-runtime-adapter.js +371 -60
  99. package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
  100. package/daemon/dist/adapters/compose-services-adapter.d.ts +16 -0
  101. package/daemon/dist/adapters/compose-services-adapter.d.ts.map +1 -1
  102. package/daemon/dist/adapters/compose-services-adapter.js +52 -9
  103. package/daemon/dist/adapters/compose-services-adapter.js.map +1 -1
  104. package/daemon/dist/adapters/kernel-authority.d.ts.map +1 -1
  105. package/daemon/dist/adapters/kernel-authority.js +9 -5
  106. package/daemon/dist/adapters/kernel-authority.js.map +1 -1
  107. package/daemon/dist/adapters/pi-runner.d.ts +2 -0
  108. package/daemon/dist/adapters/pi-runner.d.ts.map +1 -1
  109. package/daemon/dist/adapters/pi-runner.js +5 -0
  110. package/daemon/dist/adapters/pi-runner.js.map +1 -1
  111. package/daemon/dist/adapters/runtime-probe-exec.d.ts +11 -0
  112. package/daemon/dist/adapters/runtime-probe-exec.d.ts.map +1 -0
  113. package/daemon/dist/adapters/runtime-probe-exec.js +25 -0
  114. package/daemon/dist/adapters/runtime-probe-exec.js.map +1 -0
  115. package/daemon/dist/adapters/stub-runner.d.ts.map +1 -1
  116. package/daemon/dist/adapters/stub-runner.js +2 -0
  117. package/daemon/dist/adapters/stub-runner.js.map +1 -1
  118. package/daemon/dist/adapters/tmux.d.ts +21 -1
  119. package/daemon/dist/adapters/tmux.d.ts.map +1 -1
  120. package/daemon/dist/adapters/tmux.js +100 -13
  121. package/daemon/dist/adapters/tmux.js.map +1 -1
  122. package/daemon/dist/build-info.js +3 -3
  123. package/daemon/dist/db/all-migrations.d.ts.map +1 -1
  124. package/daemon/dist/db/all-migrations.js +12 -0
  125. package/daemon/dist/db/all-migrations.js.map +1 -1
  126. package/daemon/dist/db/migrations/116_queue_item_wake_input_box.d.ts +3 -0
  127. package/daemon/dist/db/migrations/116_queue_item_wake_input_box.d.ts.map +1 -0
  128. package/daemon/dist/db/migrations/116_queue_item_wake_input_box.js +8 -0
  129. package/daemon/dist/db/migrations/116_queue_item_wake_input_box.js.map +1 -0
  130. package/daemon/dist/db/migrations/118_human_quiet_windows.d.ts +3 -0
  131. package/daemon/dist/db/migrations/118_human_quiet_windows.d.ts.map +1 -0
  132. package/daemon/dist/db/migrations/118_human_quiet_windows.js +30 -0
  133. package/daemon/dist/db/migrations/118_human_quiet_windows.js.map +1 -0
  134. package/daemon/dist/db/migrations/119_seat_identity_pane_pid.d.ts +3 -0
  135. package/daemon/dist/db/migrations/119_seat_identity_pane_pid.d.ts.map +1 -0
  136. package/daemon/dist/db/migrations/119_seat_identity_pane_pid.js +7 -0
  137. package/daemon/dist/db/migrations/119_seat_identity_pane_pid.js.map +1 -0
  138. package/daemon/dist/db/migrations/121_rig_startup_layers.d.ts +13 -0
  139. package/daemon/dist/db/migrations/121_rig_startup_layers.d.ts.map +1 -0
  140. package/daemon/dist/db/migrations/121_rig_startup_layers.js +17 -0
  141. package/daemon/dist/db/migrations/121_rig_startup_layers.js.map +1 -0
  142. package/daemon/dist/db/migrations/122_human_operating_modes.d.ts +3 -0
  143. package/daemon/dist/db/migrations/122_human_operating_modes.d.ts.map +1 -0
  144. package/daemon/dist/db/migrations/122_human_operating_modes.js +55 -0
  145. package/daemon/dist/db/migrations/122_human_operating_modes.js.map +1 -0
  146. package/daemon/dist/db/migrations/123_queue_delegated_decision.d.ts +3 -0
  147. package/daemon/dist/db/migrations/123_queue_delegated_decision.d.ts.map +1 -0
  148. package/daemon/dist/db/migrations/123_queue_delegated_decision.js +10 -0
  149. package/daemon/dist/db/migrations/123_queue_delegated_decision.js.map +1 -0
  150. package/daemon/dist/domain/active-occupant.d.ts +5 -3
  151. package/daemon/dist/domain/active-occupant.d.ts.map +1 -1
  152. package/daemon/dist/domain/active-occupant.js +2 -2
  153. package/daemon/dist/domain/active-occupant.js.map +1 -1
  154. package/daemon/dist/domain/activity-taxonomy.d.ts +16 -1
  155. package/daemon/dist/domain/activity-taxonomy.d.ts.map +1 -1
  156. package/daemon/dist/domain/activity-taxonomy.js +21 -0
  157. package/daemon/dist/domain/activity-taxonomy.js.map +1 -1
  158. package/daemon/dist/domain/agent-activity-store.d.ts +20 -0
  159. package/daemon/dist/domain/agent-activity-store.d.ts.map +1 -1
  160. package/daemon/dist/domain/agent-activity-store.js +41 -5
  161. package/daemon/dist/domain/agent-activity-store.js.map +1 -1
  162. package/daemon/dist/domain/agent-images/evidence-guard.js +3 -3
  163. package/daemon/dist/domain/agent-images/evidence-guard.js.map +1 -1
  164. package/daemon/dist/domain/agent-images/resume-token-discovery.d.ts.map +1 -1
  165. package/daemon/dist/domain/agent-images/resume-token-discovery.js +2 -10
  166. package/daemon/dist/domain/agent-images/resume-token-discovery.js.map +1 -1
  167. package/daemon/dist/domain/ask-service.d.ts +1 -0
  168. package/daemon/dist/domain/ask-service.d.ts.map +1 -1
  169. package/daemon/dist/domain/ask-service.js +7 -1
  170. package/daemon/dist/domain/ask-service.js.map +1 -1
  171. package/daemon/dist/domain/bootstrap-orchestrator.d.ts +2 -0
  172. package/daemon/dist/domain/bootstrap-orchestrator.d.ts.map +1 -1
  173. package/daemon/dist/domain/bootstrap-orchestrator.js +5 -6
  174. package/daemon/dist/domain/bootstrap-orchestrator.js.map +1 -1
  175. package/daemon/dist/domain/claim-service.d.ts +1 -1
  176. package/daemon/dist/domain/claim-service.d.ts.map +1 -1
  177. package/daemon/dist/domain/claim-service.js +7 -0
  178. package/daemon/dist/domain/claim-service.js.map +1 -1
  179. package/daemon/dist/domain/classification-sources.d.ts.map +1 -1
  180. package/daemon/dist/domain/classification-sources.js +2 -0
  181. package/daemon/dist/domain/classification-sources.js.map +1 -1
  182. package/daemon/dist/domain/claude-compaction-enforcer.d.ts +17 -4
  183. package/daemon/dist/domain/claude-compaction-enforcer.d.ts.map +1 -1
  184. package/daemon/dist/domain/claude-compaction-enforcer.js +88 -24
  185. package/daemon/dist/domain/claude-compaction-enforcer.js.map +1 -1
  186. package/daemon/dist/domain/claude-core-plugin-env.d.ts +11 -0
  187. package/daemon/dist/domain/claude-core-plugin-env.d.ts.map +1 -1
  188. package/daemon/dist/domain/claude-core-plugin-env.js +15 -0
  189. package/daemon/dist/domain/claude-core-plugin-env.js.map +1 -1
  190. package/daemon/dist/domain/codex-core-plugin-install.d.ts +41 -0
  191. package/daemon/dist/domain/codex-core-plugin-install.d.ts.map +1 -0
  192. package/daemon/dist/domain/codex-core-plugin-install.js +126 -0
  193. package/daemon/dist/domain/codex-core-plugin-install.js.map +1 -0
  194. package/daemon/dist/domain/codex-thread-id.d.ts +23 -1
  195. package/daemon/dist/domain/codex-thread-id.d.ts.map +1 -1
  196. package/daemon/dist/domain/codex-thread-id.js +58 -17
  197. package/daemon/dist/domain/codex-thread-id.js.map +1 -1
  198. package/daemon/dist/domain/context-monitor.d.ts +13 -5
  199. package/daemon/dist/domain/context-monitor.d.ts.map +1 -1
  200. package/daemon/dist/domain/context-monitor.js +47 -13
  201. package/daemon/dist/domain/context-monitor.js.map +1 -1
  202. package/daemon/dist/domain/context-usage-store.d.ts.map +1 -1
  203. package/daemon/dist/domain/context-usage-store.js +3 -0
  204. package/daemon/dist/domain/context-usage-store.js.map +1 -1
  205. package/daemon/dist/domain/current-work.d.ts +18 -0
  206. package/daemon/dist/domain/current-work.d.ts.map +1 -1
  207. package/daemon/dist/domain/current-work.js +17 -3
  208. package/daemon/dist/domain/current-work.js.map +1 -1
  209. package/daemon/dist/domain/draft-aware-delivery.d.ts +7 -7
  210. package/daemon/dist/domain/draft-aware-delivery.d.ts.map +1 -1
  211. package/daemon/dist/domain/draft-aware-delivery.js +61 -82
  212. package/daemon/dist/domain/draft-aware-delivery.js.map +1 -1
  213. package/daemon/dist/domain/execution-view.d.ts.map +1 -1
  214. package/daemon/dist/domain/execution-view.js +2 -1
  215. package/daemon/dist/domain/execution-view.js.map +1 -1
  216. package/daemon/dist/domain/existing-rig-restore.d.ts +110 -0
  217. package/daemon/dist/domain/existing-rig-restore.d.ts.map +1 -0
  218. package/daemon/dist/domain/existing-rig-restore.js +254 -0
  219. package/daemon/dist/domain/existing-rig-restore.js.map +1 -0
  220. package/daemon/dist/domain/fresh-occupant-relation.d.ts.map +1 -1
  221. package/daemon/dist/domain/fresh-occupant-relation.js +9 -2
  222. package/daemon/dist/domain/fresh-occupant-relation.js.map +1 -1
  223. package/daemon/dist/domain/gateway/channel-operations.d.ts +3 -4
  224. package/daemon/dist/domain/gateway/channel-operations.d.ts.map +1 -1
  225. package/daemon/dist/domain/gateway/channel-operations.js.map +1 -1
  226. package/daemon/dist/domain/gateway/connections-projection.d.ts +0 -5
  227. package/daemon/dist/domain/gateway/connections-projection.d.ts.map +1 -1
  228. package/daemon/dist/domain/gateway/connections-projection.js +3 -46
  229. package/daemon/dist/domain/gateway/connections-projection.js.map +1 -1
  230. package/daemon/dist/domain/gateway/delivery-rules-engine.d.ts +11 -1
  231. package/daemon/dist/domain/gateway/delivery-rules-engine.d.ts.map +1 -1
  232. package/daemon/dist/domain/gateway/delivery-rules-engine.js +12 -2
  233. package/daemon/dist/domain/gateway/delivery-rules-engine.js.map +1 -1
  234. package/daemon/dist/domain/gateway/dispatch-buffer.d.ts +4 -0
  235. package/daemon/dist/domain/gateway/dispatch-buffer.d.ts.map +1 -1
  236. package/daemon/dist/domain/gateway/dispatch-buffer.js +18 -0
  237. package/daemon/dist/domain/gateway/dispatch-buffer.js.map +1 -1
  238. package/daemon/dist/domain/gateway/human-mode-account.d.ts +61 -0
  239. package/daemon/dist/domain/gateway/human-mode-account.d.ts.map +1 -0
  240. package/daemon/dist/domain/gateway/human-mode-account.js +112 -0
  241. package/daemon/dist/domain/gateway/human-mode-account.js.map +1 -0
  242. package/daemon/dist/domain/gateway/human-operating-modes.d.ts +171 -0
  243. package/daemon/dist/domain/gateway/human-operating-modes.d.ts.map +1 -0
  244. package/daemon/dist/domain/gateway/human-operating-modes.js +422 -0
  245. package/daemon/dist/domain/gateway/human-operating-modes.js.map +1 -0
  246. package/daemon/dist/domain/gateway/human-quiet-windows.d.ts +121 -0
  247. package/daemon/dist/domain/gateway/human-quiet-windows.d.ts.map +1 -0
  248. package/daemon/dist/domain/gateway/human-quiet-windows.js +217 -0
  249. package/daemon/dist/domain/gateway/human-quiet-windows.js.map +1 -0
  250. package/daemon/dist/domain/gateway/human-registry.d.ts +23 -2
  251. package/daemon/dist/domain/gateway/human-registry.d.ts.map +1 -1
  252. package/daemon/dist/domain/gateway/human-registry.js +67 -5
  253. package/daemon/dist/domain/gateway/human-registry.js.map +1 -1
  254. package/daemon/dist/domain/gateway/operator-delivery-engine.d.ts.map +1 -1
  255. package/daemon/dist/domain/gateway/operator-delivery-engine.js +9 -0
  256. package/daemon/dist/domain/gateway/operator-delivery-engine.js.map +1 -1
  257. package/daemon/dist/domain/gateway/slack/inbound.d.ts +10 -2
  258. package/daemon/dist/domain/gateway/slack/inbound.d.ts.map +1 -1
  259. package/daemon/dist/domain/gateway/slack/inbound.js +24 -2
  260. package/daemon/dist/domain/gateway/slack/inbound.js.map +1 -1
  261. package/daemon/dist/domain/gateway/slack/message.d.ts +1 -0
  262. package/daemon/dist/domain/gateway/slack/message.d.ts.map +1 -1
  263. package/daemon/dist/domain/gateway/slack/message.js +5 -1
  264. package/daemon/dist/domain/gateway/slack/message.js.map +1 -1
  265. package/daemon/dist/domain/gateway/slack/outbound-driver.d.ts +9 -3
  266. package/daemon/dist/domain/gateway/slack/outbound-driver.d.ts.map +1 -1
  267. package/daemon/dist/domain/gateway/slack/outbound-driver.js +40 -6
  268. package/daemon/dist/domain/gateway/slack/outbound-driver.js.map +1 -1
  269. package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts +19 -1
  270. package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts.map +1 -1
  271. package/daemon/dist/domain/gateway/slack/slack-delivery.js +128 -41
  272. package/daemon/dist/domain/gateway/slack/slack-delivery.js.map +1 -1
  273. package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts +3 -2
  274. package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts.map +1 -1
  275. package/daemon/dist/domain/gateway/slack/slack-subsystem.js +268 -50
  276. package/daemon/dist/domain/gateway/slack/slack-subsystem.js.map +1 -1
  277. package/daemon/dist/domain/health-passive-ceremony.d.ts +4 -0
  278. package/daemon/dist/domain/health-passive-ceremony.d.ts.map +1 -1
  279. package/daemon/dist/domain/health-passive-ceremony.js +34 -4
  280. package/daemon/dist/domain/health-passive-ceremony.js.map +1 -1
  281. package/daemon/dist/domain/hosts/hosts-registry-reader.d.ts +3 -1
  282. package/daemon/dist/domain/hosts/hosts-registry-reader.d.ts.map +1 -1
  283. package/daemon/dist/domain/hosts/hosts-registry-reader.js +9 -9
  284. package/daemon/dist/domain/hosts/hosts-registry-reader.js.map +1 -1
  285. package/daemon/dist/domain/hosts/learned-host-bindings.d.ts +28 -0
  286. package/daemon/dist/domain/hosts/learned-host-bindings.d.ts.map +1 -0
  287. package/daemon/dist/domain/hosts/learned-host-bindings.js +77 -0
  288. package/daemon/dist/domain/hosts/learned-host-bindings.js.map +1 -0
  289. package/daemon/dist/domain/hot-potato-enforcer.d.ts +7 -5
  290. package/daemon/dist/domain/hot-potato-enforcer.d.ts.map +1 -1
  291. package/daemon/dist/domain/hot-potato-enforcer.js +19 -10
  292. package/daemon/dist/domain/hot-potato-enforcer.js.map +1 -1
  293. package/daemon/dist/domain/human-questions.d.ts +8 -1
  294. package/daemon/dist/domain/human-questions.d.ts.map +1 -1
  295. package/daemon/dist/domain/human-questions.js.map +1 -1
  296. package/daemon/dist/domain/kernel-boot-tracker.d.ts +17 -1
  297. package/daemon/dist/domain/kernel-boot-tracker.d.ts.map +1 -1
  298. package/daemon/dist/domain/kernel-boot-tracker.js +44 -3
  299. package/daemon/dist/domain/kernel-boot-tracker.js.map +1 -1
  300. package/daemon/dist/domain/kernel-boot.d.ts +21 -0
  301. package/daemon/dist/domain/kernel-boot.d.ts.map +1 -1
  302. package/daemon/dist/domain/kernel-boot.js +57 -2
  303. package/daemon/dist/domain/kernel-boot.js.map +1 -1
  304. package/daemon/dist/domain/model-divergence/current-generation-record.d.ts +2 -1
  305. package/daemon/dist/domain/model-divergence/current-generation-record.d.ts.map +1 -1
  306. package/daemon/dist/domain/model-divergence/current-generation-record.js +8 -3
  307. package/daemon/dist/domain/model-divergence/current-generation-record.js.map +1 -1
  308. package/daemon/dist/domain/native-process-lineage.d.ts.map +1 -1
  309. package/daemon/dist/domain/native-process-lineage.js +43 -15
  310. package/daemon/dist/domain/native-process-lineage.js.map +1 -1
  311. package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
  312. package/daemon/dist/domain/node-inventory.js +26 -12
  313. package/daemon/dist/domain/node-inventory.js.map +1 -1
  314. package/daemon/dist/domain/node-launcher.d.ts +5 -3
  315. package/daemon/dist/domain/node-launcher.d.ts.map +1 -1
  316. package/daemon/dist/domain/node-launcher.js +29 -25
  317. package/daemon/dist/domain/node-launcher.js.map +1 -1
  318. package/daemon/dist/domain/outbox-handler.d.ts +3 -5
  319. package/daemon/dist/domain/outbox-handler.d.ts.map +1 -1
  320. package/daemon/dist/domain/outbox-handler.js +9 -19
  321. package/daemon/dist/domain/outbox-handler.js.map +1 -1
  322. package/daemon/dist/domain/park-wake-text.d.ts +11 -0
  323. package/daemon/dist/domain/park-wake-text.d.ts.map +1 -0
  324. package/daemon/dist/domain/park-wake-text.js +26 -0
  325. package/daemon/dist/domain/park-wake-text.js.map +1 -0
  326. package/daemon/dist/domain/plugin-vendor-service.d.ts +4 -0
  327. package/daemon/dist/domain/plugin-vendor-service.d.ts.map +1 -1
  328. package/daemon/dist/domain/plugin-vendor-service.js +29 -6
  329. package/daemon/dist/domain/plugin-vendor-service.js.map +1 -1
  330. package/daemon/dist/domain/policies/delivery-digest-flush.d.ts +1 -0
  331. package/daemon/dist/domain/policies/delivery-digest-flush.d.ts.map +1 -1
  332. package/daemon/dist/domain/policies/delivery-digest-flush.js +25 -4
  333. package/daemon/dist/domain/policies/delivery-digest-flush.js.map +1 -1
  334. package/daemon/dist/domain/policies/mode-scheduled-end.d.ts +37 -0
  335. package/daemon/dist/domain/policies/mode-scheduled-end.d.ts.map +1 -0
  336. package/daemon/dist/domain/policies/mode-scheduled-end.js +161 -0
  337. package/daemon/dist/domain/policies/mode-scheduled-end.js.map +1 -0
  338. package/daemon/dist/domain/policies/parked-owner-consumer.d.ts +11 -7
  339. package/daemon/dist/domain/policies/parked-owner-consumer.d.ts.map +1 -1
  340. package/daemon/dist/domain/policies/parked-owner-consumer.js +82 -113
  341. package/daemon/dist/domain/policies/parked-owner-consumer.js.map +1 -1
  342. package/daemon/dist/domain/policies/quiet-release.d.ts +109 -0
  343. package/daemon/dist/domain/policies/quiet-release.d.ts.map +1 -0
  344. package/daemon/dist/domain/policies/quiet-release.js +213 -0
  345. package/daemon/dist/domain/policies/quiet-release.js.map +1 -0
  346. package/daemon/dist/domain/profile-resolver.d.ts.map +1 -1
  347. package/daemon/dist/domain/profile-resolver.js +8 -3
  348. package/daemon/dist/domain/profile-resolver.js.map +1 -1
  349. package/daemon/dist/domain/proof/source-watch.js +2 -2
  350. package/daemon/dist/domain/proof/source-watch.js.map +1 -1
  351. package/daemon/dist/domain/queue-destination-check.d.ts +6 -0
  352. package/daemon/dist/domain/queue-destination-check.d.ts.map +1 -0
  353. package/daemon/dist/domain/queue-destination-check.js +35 -0
  354. package/daemon/dist/domain/queue-destination-check.js.map +1 -0
  355. package/daemon/dist/domain/queue-owner.d.ts.map +1 -1
  356. package/daemon/dist/domain/queue-owner.js +2 -1
  357. package/daemon/dist/domain/queue-owner.js.map +1 -1
  358. package/daemon/dist/domain/queue-recovery.d.ts +1 -1
  359. package/daemon/dist/domain/queue-recovery.d.ts.map +1 -1
  360. package/daemon/dist/domain/queue-recovery.js +3 -2
  361. package/daemon/dist/domain/queue-recovery.js.map +1 -1
  362. package/daemon/dist/domain/queue-repository.d.ts +108 -67
  363. package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
  364. package/daemon/dist/domain/queue-repository.js +316 -140
  365. package/daemon/dist/domain/queue-repository.js.map +1 -1
  366. package/daemon/dist/domain/queue-stuck-sweep.d.ts +13 -1
  367. package/daemon/dist/domain/queue-stuck-sweep.d.ts.map +1 -1
  368. package/daemon/dist/domain/queue-stuck-sweep.js +95 -13
  369. package/daemon/dist/domain/queue-stuck-sweep.js.map +1 -1
  370. package/daemon/dist/domain/queue-transition-log.d.ts +5 -0
  371. package/daemon/dist/domain/queue-transition-log.d.ts.map +1 -1
  372. package/daemon/dist/domain/queue-transition-log.js +25 -8
  373. package/daemon/dist/domain/queue-transition-log.js.map +1 -1
  374. package/daemon/dist/domain/queue-wake-ladder.d.ts +2 -0
  375. package/daemon/dist/domain/queue-wake-ladder.d.ts.map +1 -1
  376. package/daemon/dist/domain/queue-wake-ladder.js +94 -11
  377. package/daemon/dist/domain/queue-wake-ladder.js.map +1 -1
  378. package/daemon/dist/domain/quiet-hold-custody.d.ts +24 -0
  379. package/daemon/dist/domain/quiet-hold-custody.d.ts.map +1 -0
  380. package/daemon/dist/domain/quiet-hold-custody.js +85 -0
  381. package/daemon/dist/domain/quiet-hold-custody.js.map +1 -0
  382. package/daemon/dist/domain/rehydrate-eligibility.d.ts +12 -1
  383. package/daemon/dist/domain/rehydrate-eligibility.d.ts.map +1 -1
  384. package/daemon/dist/domain/rehydrate-eligibility.js +47 -9
  385. package/daemon/dist/domain/rehydrate-eligibility.js.map +1 -1
  386. package/daemon/dist/domain/restore-orchestrator.d.ts +11 -0
  387. package/daemon/dist/domain/restore-orchestrator.d.ts.map +1 -1
  388. package/daemon/dist/domain/restore-orchestrator.js +144 -15
  389. package/daemon/dist/domain/restore-orchestrator.js.map +1 -1
  390. package/daemon/dist/domain/restore-plan-preview.d.ts +3 -1
  391. package/daemon/dist/domain/restore-plan-preview.d.ts.map +1 -1
  392. package/daemon/dist/domain/restore-plan-preview.js +30 -13
  393. package/daemon/dist/domain/restore-plan-preview.js.map +1 -1
  394. package/daemon/dist/domain/review/gather.d.ts.map +1 -1
  395. package/daemon/dist/domain/review/gather.js +8 -5
  396. package/daemon/dist/domain/review/gather.js.map +1 -1
  397. package/daemon/dist/domain/rig-mode/operating-posture.d.ts.map +1 -1
  398. package/daemon/dist/domain/rig-mode/operating-posture.js +3 -1
  399. package/daemon/dist/domain/rig-mode/operating-posture.js.map +1 -1
  400. package/daemon/dist/domain/rig-repository.d.ts +11 -1
  401. package/daemon/dist/domain/rig-repository.d.ts.map +1 -1
  402. package/daemon/dist/domain/rig-repository.js +27 -3
  403. package/daemon/dist/domain/rig-repository.js.map +1 -1
  404. package/daemon/dist/domain/rig-teardown.d.ts.map +1 -1
  405. package/daemon/dist/domain/rig-teardown.js +31 -4
  406. package/daemon/dist/domain/rig-teardown.js.map +1 -1
  407. package/daemon/dist/domain/rigspec-instantiator.d.ts +9 -0
  408. package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
  409. package/daemon/dist/domain/rigspec-instantiator.js +59 -28
  410. package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
  411. package/daemon/dist/domain/rigspec-schema.d.ts +5 -0
  412. package/daemon/dist/domain/rigspec-schema.d.ts.map +1 -1
  413. package/daemon/dist/domain/rigspec-schema.js +30 -0
  414. package/daemon/dist/domain/rigspec-schema.js.map +1 -1
  415. package/daemon/dist/domain/runtime-adapter.d.ts +27 -2
  416. package/daemon/dist/domain/runtime-adapter.d.ts.map +1 -1
  417. package/daemon/dist/domain/runtime-adapter.js.map +1 -1
  418. package/daemon/dist/domain/seat-activity-service.d.ts +18 -3
  419. package/daemon/dist/domain/seat-activity-service.d.ts.map +1 -1
  420. package/daemon/dist/domain/seat-activity-service.js +124 -57
  421. package/daemon/dist/domain/seat-activity-service.js.map +1 -1
  422. package/daemon/dist/domain/seat-attention-reconciler.d.ts +8 -1
  423. package/daemon/dist/domain/seat-attention-reconciler.d.ts.map +1 -1
  424. package/daemon/dist/domain/seat-attention-reconciler.js +3 -1
  425. package/daemon/dist/domain/seat-attention-reconciler.js.map +1 -1
  426. package/daemon/dist/domain/seat-delivery-guard.d.ts.map +1 -1
  427. package/daemon/dist/domain/seat-delivery-guard.js +21 -5
  428. package/daemon/dist/domain/seat-delivery-guard.js.map +1 -1
  429. package/daemon/dist/domain/seat-handover-service.d.ts +2 -2
  430. package/daemon/dist/domain/seat-handover-service.d.ts.map +1 -1
  431. package/daemon/dist/domain/seat-handover-service.js +28 -2
  432. package/daemon/dist/domain/seat-handover-service.js.map +1 -1
  433. package/daemon/dist/domain/seat-identity-reconciler.js +1 -1
  434. package/daemon/dist/domain/seat-identity-reconciler.js.map +1 -1
  435. package/daemon/dist/domain/seat-identity-store.d.ts.map +1 -1
  436. package/daemon/dist/domain/seat-identity-store.js +5 -2
  437. package/daemon/dist/domain/seat-identity-store.js.map +1 -1
  438. package/daemon/dist/domain/seat-launch-environment.d.ts.map +1 -1
  439. package/daemon/dist/domain/seat-launch-environment.js +17 -1
  440. package/daemon/dist/domain/seat-launch-environment.js.map +1 -1
  441. package/daemon/dist/domain/seat-lifecycle-service.d.ts +4 -0
  442. package/daemon/dist/domain/seat-lifecycle-service.d.ts.map +1 -1
  443. package/daemon/dist/domain/seat-restart-in-place.d.ts +33 -14
  444. package/daemon/dist/domain/seat-restart-in-place.d.ts.map +1 -1
  445. package/daemon/dist/domain/seat-restart-in-place.js +102 -30
  446. package/daemon/dist/domain/seat-restart-in-place.js.map +1 -1
  447. package/daemon/dist/domain/self-attach-service.d.ts +3 -2
  448. package/daemon/dist/domain/self-attach-service.d.ts.map +1 -1
  449. package/daemon/dist/domain/self-attach-service.js +18 -1
  450. package/daemon/dist/domain/self-attach-service.js.map +1 -1
  451. package/daemon/dist/domain/services-readiness.d.ts.map +1 -1
  452. package/daemon/dist/domain/services-readiness.js +14 -3
  453. package/daemon/dist/domain/services-readiness.js.map +1 -1
  454. package/daemon/dist/domain/session-registry.d.ts +45 -0
  455. package/daemon/dist/domain/session-registry.d.ts.map +1 -1
  456. package/daemon/dist/domain/session-registry.js +124 -0
  457. package/daemon/dist/domain/session-registry.js.map +1 -1
  458. package/daemon/dist/domain/session-transport.d.ts +24 -6
  459. package/daemon/dist/domain/session-transport.d.ts.map +1 -1
  460. package/daemon/dist/domain/session-transport.js +58 -41
  461. package/daemon/dist/domain/session-transport.js.map +1 -1
  462. package/daemon/dist/domain/skill-discovery.d.ts +7 -1
  463. package/daemon/dist/domain/skill-discovery.d.ts.map +1 -1
  464. package/daemon/dist/domain/skill-discovery.js +41 -7
  465. package/daemon/dist/domain/skill-discovery.js.map +1 -1
  466. package/daemon/dist/domain/snapshot-repository.d.ts +1 -0
  467. package/daemon/dist/domain/snapshot-repository.d.ts.map +1 -1
  468. package/daemon/dist/domain/snapshot-repository.js +23 -10
  469. package/daemon/dist/domain/snapshot-repository.js.map +1 -1
  470. package/daemon/dist/domain/startup-orchestrator.d.ts +21 -3
  471. package/daemon/dist/domain/startup-orchestrator.d.ts.map +1 -1
  472. package/daemon/dist/domain/startup-orchestrator.js +66 -16
  473. package/daemon/dist/domain/startup-orchestrator.js.map +1 -1
  474. package/daemon/dist/domain/startup-submission-evidence.d.ts +4 -11
  475. package/daemon/dist/domain/startup-submission-evidence.d.ts.map +1 -1
  476. package/daemon/dist/domain/startup-submission-evidence.js +11 -17
  477. package/daemon/dist/domain/startup-submission-evidence.js.map +1 -1
  478. package/daemon/dist/domain/successor-session-launcher.d.ts +2 -1
  479. package/daemon/dist/domain/successor-session-launcher.d.ts.map +1 -1
  480. package/daemon/dist/domain/successor-session-launcher.js +3 -1
  481. package/daemon/dist/domain/successor-session-launcher.js.map +1 -1
  482. package/daemon/dist/domain/terminal/herdr-adapter.d.ts +1 -1
  483. package/daemon/dist/domain/terminal/herdr-adapter.d.ts.map +1 -1
  484. package/daemon/dist/domain/terminal/herdr-adapter.js +22 -4
  485. package/daemon/dist/domain/terminal/herdr-adapter.js.map +1 -1
  486. package/daemon/dist/domain/types.d.ts +15 -4
  487. package/daemon/dist/domain/types.d.ts.map +1 -1
  488. package/daemon/dist/domain/types.js.map +1 -1
  489. package/daemon/dist/domain/user-settings/settings-browser.d.ts.map +1 -1
  490. package/daemon/dist/domain/user-settings/settings-browser.js +2 -0
  491. package/daemon/dist/domain/user-settings/settings-browser.js.map +1 -1
  492. package/daemon/dist/domain/user-settings/settings-store.d.ts +1 -1
  493. package/daemon/dist/domain/user-settings/settings-store.d.ts.map +1 -1
  494. package/daemon/dist/domain/user-settings/settings-store.js +33 -7
  495. package/daemon/dist/domain/user-settings/settings-store.js.map +1 -1
  496. package/daemon/dist/domain/watchdog-delivery.d.ts +3 -23
  497. package/daemon/dist/domain/watchdog-delivery.d.ts.map +1 -1
  498. package/daemon/dist/domain/watchdog-delivery.js +12 -89
  499. package/daemon/dist/domain/watchdog-delivery.js.map +1 -1
  500. package/daemon/dist/domain/watchdog-history-log.d.ts +5 -2
  501. package/daemon/dist/domain/watchdog-history-log.d.ts.map +1 -1
  502. package/daemon/dist/domain/watchdog-history-log.js.map +1 -1
  503. package/daemon/dist/domain/watchdog-jobs-repository.d.ts +2 -2
  504. package/daemon/dist/domain/watchdog-jobs-repository.d.ts.map +1 -1
  505. package/daemon/dist/domain/watchdog-jobs-repository.js +4 -0
  506. package/daemon/dist/domain/watchdog-jobs-repository.js.map +1 -1
  507. package/daemon/dist/domain/watchdog-policy-engine.d.ts +16 -24
  508. package/daemon/dist/domain/watchdog-policy-engine.d.ts.map +1 -1
  509. package/daemon/dist/domain/watchdog-policy-engine.js +44 -43
  510. package/daemon/dist/domain/watchdog-policy-engine.js.map +1 -1
  511. package/daemon/dist/domain/whoami-service.d.ts +2 -0
  512. package/daemon/dist/domain/whoami-service.d.ts.map +1 -1
  513. package/daemon/dist/domain/whoami-service.js +23 -6
  514. package/daemon/dist/domain/whoami-service.js.map +1 -1
  515. package/daemon/dist/domain/workflow-boot-sweep.d.ts +2 -1
  516. package/daemon/dist/domain/workflow-boot-sweep.d.ts.map +1 -1
  517. package/daemon/dist/domain/workflow-boot-sweep.js +11 -5
  518. package/daemon/dist/domain/workflow-boot-sweep.js.map +1 -1
  519. package/daemon/dist/domain/workflow-exception-escalation.d.ts.map +1 -1
  520. package/daemon/dist/domain/workflow-exception-escalation.js +2 -1
  521. package/daemon/dist/domain/workflow-exception-escalation.js.map +1 -1
  522. package/daemon/dist/domain/workflow-projector.d.ts.map +1 -1
  523. package/daemon/dist/domain/workflow-projector.js +5 -2
  524. package/daemon/dist/domain/workflow-projector.js.map +1 -1
  525. package/daemon/dist/domain/workflow-role-context.js +2 -2
  526. package/daemon/dist/domain/workflow-role-context.js.map +1 -1
  527. package/daemon/dist/domain/workflow-runtime.d.ts +1 -1
  528. package/daemon/dist/domain/workflow-runtime.d.ts.map +1 -1
  529. package/daemon/dist/domain/workflow-runtime.js +2 -0
  530. package/daemon/dist/domain/workflow-runtime.js.map +1 -1
  531. package/daemon/dist/routes/activity.d.ts +13 -1
  532. package/daemon/dist/routes/activity.d.ts.map +1 -1
  533. package/daemon/dist/routes/activity.js +67 -2
  534. package/daemon/dist/routes/activity.js.map +1 -1
  535. package/daemon/dist/routes/agent-images.d.ts.map +1 -1
  536. package/daemon/dist/routes/agent-images.js +2 -0
  537. package/daemon/dist/routes/agent-images.js.map +1 -1
  538. package/daemon/dist/routes/compaction.d.ts.map +1 -1
  539. package/daemon/dist/routes/compaction.js +7 -2
  540. package/daemon/dist/routes/compaction.js.map +1 -1
  541. package/daemon/dist/routes/discovery.js +3 -0
  542. package/daemon/dist/routes/discovery.js.map +1 -1
  543. package/daemon/dist/routes/down.js +9 -1
  544. package/daemon/dist/routes/down.js.map +1 -1
  545. package/daemon/dist/routes/gateway.d.ts +2 -0
  546. package/daemon/dist/routes/gateway.d.ts.map +1 -1
  547. package/daemon/dist/routes/gateway.js +181 -1
  548. package/daemon/dist/routes/gateway.js.map +1 -1
  549. package/daemon/dist/routes/kernel-status.js +6 -1
  550. package/daemon/dist/routes/kernel-status.js.map +1 -1
  551. package/daemon/dist/routes/provider.d.ts.map +1 -1
  552. package/daemon/dist/routes/provider.js +0 -73
  553. package/daemon/dist/routes/provider.js.map +1 -1
  554. package/daemon/dist/routes/queue.d.ts.map +1 -1
  555. package/daemon/dist/routes/queue.js +73 -13
  556. package/daemon/dist/routes/queue.js.map +1 -1
  557. package/daemon/dist/routes/rigs.d.ts.map +1 -1
  558. package/daemon/dist/routes/rigs.js +29 -10
  559. package/daemon/dist/routes/rigs.js.map +1 -1
  560. package/daemon/dist/routes/rigspec.js +2 -3
  561. package/daemon/dist/routes/rigspec.js.map +1 -1
  562. package/daemon/dist/routes/seat.js +2 -2
  563. package/daemon/dist/routes/seat.js.map +1 -1
  564. package/daemon/dist/routes/skills.js +2 -2
  565. package/daemon/dist/routes/skills.js.map +1 -1
  566. package/daemon/dist/routes/transcripts.d.ts.map +1 -1
  567. package/daemon/dist/routes/transcripts.js +7 -3
  568. package/daemon/dist/routes/transcripts.js.map +1 -1
  569. package/daemon/dist/routes/transport.js +1 -1
  570. package/daemon/dist/routes/transport.js.map +1 -1
  571. package/daemon/dist/routes/up.js +36 -52
  572. package/daemon/dist/routes/up.js.map +1 -1
  573. package/daemon/dist/startup.d.ts.map +1 -1
  574. package/daemon/dist/startup.js +102 -60
  575. package/daemon/dist/startup.js.map +1 -1
  576. package/daemon/docs/reference/agent-state-taxonomy.md +17 -2
  577. package/daemon/docs/reference/getting-started.md +87 -21
  578. package/daemon/docs/reference/quickstart.md +33 -20
  579. package/daemon/docs/reference/refocus-channel.md +9 -3
  580. package/daemon/docs/reference/rig-spec.md +1 -1
  581. package/daemon/docs/reference/seat-delivery.md +57 -18
  582. package/daemon/docs/reference/slack-app-setup.md +49 -2
  583. package/daemon/docs/reference/whats-new.md +123 -68
  584. package/daemon/specs/agents/shared/skills/core/messaging-the-human/SKILL.md +24 -0
  585. package/daemon/specs/agents/shared/skills/core/openrig-skills/SKILL.md +2 -2
  586. package/daemon/specs/agents/shared/skills/core/openrig-upgrade/SKILL.md +11 -5
  587. package/daemon/specs/agents/shared/skills/pods/development-team/SKILL.md +2 -0
  588. package/daemon/specs/agents/shared/skills/pods/development-team/references/refactoring.md +11 -0
  589. package/daemon/specs/agents/shared/skills/pods/review-team/SKILL.md +46 -96
  590. package/daemon/specs/agents/shared/skills/process/verification-before-completion/SKILL.md +17 -80
  591. package/daemon/specs/agents/shared/skills/process/verification-before-completion/references/performance-claims.md +12 -0
  592. package/daemon/specs/rigs/launch/kernel/agents/operator/agent/guidance/role.md +93 -14
  593. package/dist/build-info.js +3 -3
  594. package/dist/cli-error.d.ts +4 -0
  595. package/dist/cli-error.d.ts.map +1 -1
  596. package/dist/cli-error.js +6 -0
  597. package/dist/cli-error.js.map +1 -1
  598. package/dist/commands/agent-image.d.ts.map +1 -1
  599. package/dist/commands/agent-image.js +15 -7
  600. package/dist/commands/agent-image.js.map +1 -1
  601. package/dist/commands/archive.d.ts.map +1 -1
  602. package/dist/commands/archive.js +17 -3
  603. package/dist/commands/archive.js.map +1 -1
  604. package/dist/commands/attach.d.ts.map +1 -1
  605. package/dist/commands/attach.js +6 -4
  606. package/dist/commands/attach.js.map +1 -1
  607. package/dist/commands/broadcast.js +2 -0
  608. package/dist/commands/broadcast.js.map +1 -1
  609. package/dist/commands/community-harness.d.ts.map +1 -1
  610. package/dist/commands/community-harness.js +2 -1
  611. package/dist/commands/community-harness.js.map +1 -1
  612. package/dist/commands/compact-plan.d.ts.map +1 -1
  613. package/dist/commands/compact-plan.js +2 -1
  614. package/dist/commands/compact-plan.js.map +1 -1
  615. package/dist/commands/compact.d.ts.map +1 -1
  616. package/dist/commands/compact.js +10 -3
  617. package/dist/commands/compact.js.map +1 -1
  618. package/dist/commands/config.d.ts.map +1 -1
  619. package/dist/commands/config.js +10 -2
  620. package/dist/commands/config.js.map +1 -1
  621. package/dist/commands/context.d.ts.map +1 -1
  622. package/dist/commands/context.js +16 -9
  623. package/dist/commands/context.js.map +1 -1
  624. package/dist/commands/expand.d.ts.map +1 -1
  625. package/dist/commands/expand.js +16 -2
  626. package/dist/commands/expand.js.map +1 -1
  627. package/dist/commands/export.d.ts.map +1 -1
  628. package/dist/commands/export.js +9 -2
  629. package/dist/commands/export.js.map +1 -1
  630. package/dist/commands/fork.d.ts.map +1 -1
  631. package/dist/commands/fork.js +3 -1
  632. package/dist/commands/fork.js.map +1 -1
  633. package/dist/commands/gateway.d.ts +39 -0
  634. package/dist/commands/gateway.d.ts.map +1 -1
  635. package/dist/commands/gateway.js +310 -3
  636. package/dist/commands/gateway.js.map +1 -1
  637. package/dist/commands/health.js +3 -2
  638. package/dist/commands/health.js.map +1 -1
  639. package/dist/commands/host.d.ts +1 -1
  640. package/dist/commands/host.d.ts.map +1 -1
  641. package/dist/commands/host.js +2 -2
  642. package/dist/commands/host.js.map +1 -1
  643. package/dist/commands/launch.d.ts.map +1 -1
  644. package/dist/commands/launch.js +9 -2
  645. package/dist/commands/launch.js.map +1 -1
  646. package/dist/commands/plugin.d.ts.map +1 -1
  647. package/dist/commands/plugin.js +2 -1
  648. package/dist/commands/plugin.js.map +1 -1
  649. package/dist/commands/provider.d.ts.map +1 -1
  650. package/dist/commands/provider.js +0 -73
  651. package/dist/commands/provider.js.map +1 -1
  652. package/dist/commands/ps.d.ts +4 -0
  653. package/dist/commands/ps.d.ts.map +1 -1
  654. package/dist/commands/ps.js +95 -5
  655. package/dist/commands/ps.js.map +1 -1
  656. package/dist/commands/queue.d.ts +4 -0
  657. package/dist/commands/queue.d.ts.map +1 -1
  658. package/dist/commands/queue.js +78 -3
  659. package/dist/commands/queue.js.map +1 -1
  660. package/dist/commands/release.d.ts.map +1 -1
  661. package/dist/commands/release.js +16 -2
  662. package/dist/commands/release.js.map +1 -1
  663. package/dist/commands/restore-check.d.ts.map +1 -1
  664. package/dist/commands/restore-check.js +2 -1
  665. package/dist/commands/restore-check.js.map +1 -1
  666. package/dist/commands/restore-packet.d.ts.map +1 -1
  667. package/dist/commands/restore-packet.js +2 -1
  668. package/dist/commands/restore-packet.js.map +1 -1
  669. package/dist/commands/restore.d.ts.map +1 -1
  670. package/dist/commands/restore.js +23 -6
  671. package/dist/commands/restore.js.map +1 -1
  672. package/dist/commands/scope.d.ts.map +1 -1
  673. package/dist/commands/scope.js +5 -2
  674. package/dist/commands/scope.js.map +1 -1
  675. package/dist/commands/seat.js +0 -4
  676. package/dist/commands/seat.js.map +1 -1
  677. package/dist/commands/send.d.ts.map +1 -1
  678. package/dist/commands/send.js +27 -3
  679. package/dist/commands/send.js.map +1 -1
  680. package/dist/commands/setup.d.ts +3 -0
  681. package/dist/commands/setup.d.ts.map +1 -1
  682. package/dist/commands/setup.js +29 -9
  683. package/dist/commands/setup.js.map +1 -1
  684. package/dist/commands/shrink.d.ts.map +1 -1
  685. package/dist/commands/shrink.js +16 -2
  686. package/dist/commands/shrink.js.map +1 -1
  687. package/dist/commands/slack.d.ts.map +1 -1
  688. package/dist/commands/slack.js +11 -24
  689. package/dist/commands/slack.js.map +1 -1
  690. package/dist/commands/snapshot.d.ts.map +1 -1
  691. package/dist/commands/snapshot.js +36 -10
  692. package/dist/commands/snapshot.js.map +1 -1
  693. package/dist/commands/specs.d.ts.map +1 -1
  694. package/dist/commands/specs.js +11 -5
  695. package/dist/commands/specs.js.map +1 -1
  696. package/dist/commands/start.d.ts.map +1 -1
  697. package/dist/commands/start.js +36 -10
  698. package/dist/commands/start.js.map +1 -1
  699. package/dist/commands/status.d.ts.map +1 -1
  700. package/dist/commands/status.js +4 -1
  701. package/dist/commands/status.js.map +1 -1
  702. package/dist/commands/transcript.d.ts.map +1 -1
  703. package/dist/commands/transcript.js +12 -7
  704. package/dist/commands/transcript.js.map +1 -1
  705. package/dist/commands/unarchive.d.ts.map +1 -1
  706. package/dist/commands/unarchive.js +16 -2
  707. package/dist/commands/unarchive.js.map +1 -1
  708. package/dist/commands/up.d.ts.map +1 -1
  709. package/dist/commands/up.js +33 -7
  710. package/dist/commands/up.js.map +1 -1
  711. package/dist/commands/walk.d.ts.map +1 -1
  712. package/dist/commands/walk.js +2 -1
  713. package/dist/commands/walk.js.map +1 -1
  714. package/dist/commands/whoami.d.ts.map +1 -1
  715. package/dist/commands/whoami.js +3 -0
  716. package/dist/commands/whoami.js.map +1 -1
  717. package/dist/config-store.d.ts +4 -2
  718. package/dist/config-store.d.ts.map +1 -1
  719. package/dist/config-store.js +34 -7
  720. package/dist/config-store.js.map +1 -1
  721. package/dist/daemon-lifecycle.d.ts +9 -4
  722. package/dist/daemon-lifecycle.d.ts.map +1 -1
  723. package/dist/daemon-lifecycle.js +27 -9
  724. package/dist/daemon-lifecycle.js.map +1 -1
  725. package/dist/daemon-reachability.d.ts +13 -0
  726. package/dist/daemon-reachability.d.ts.map +1 -1
  727. package/dist/daemon-reachability.js +28 -0
  728. package/dist/daemon-reachability.js.map +1 -1
  729. package/dist/fetch-with-timeout.d.ts.map +1 -1
  730. package/dist/fetch-with-timeout.js +19 -16
  731. package/dist/fetch-with-timeout.js.map +1 -1
  732. package/dist/host-bindings.d.ts +6 -0
  733. package/dist/host-bindings.d.ts.map +1 -1
  734. package/dist/host-bindings.js +7 -4
  735. package/dist/host-bindings.js.map +1 -1
  736. package/dist/lib/bundle-check.d.ts.map +1 -1
  737. package/dist/lib/bundle-check.js +13 -5
  738. package/dist/lib/bundle-check.js.map +1 -1
  739. package/dist/mcp-server.d.ts.map +1 -1
  740. package/dist/mcp-server.js +57 -14
  741. package/dist/mcp-server.js.map +1 -1
  742. package/dist/rig-handle.d.ts +18 -1
  743. package/dist/rig-handle.d.ts.map +1 -1
  744. package/dist/rig-handle.js +19 -2
  745. package/dist/rig-handle.js.map +1 -1
  746. package/package.json +1 -1
  747. package/tui/dist/config/config-model.js +1 -1
  748. package/tui/dist/config/config-model.js.map +1 -1
  749. package/tui/dist/connections/connections-model.d.ts +0 -5
  750. package/tui/dist/connections/connections-model.d.ts.map +1 -1
  751. package/tui/dist/connections/connections-model.js +1 -1
  752. package/tui/dist/connections/connections-model.js.map +1 -1
  753. package/tui/dist/daemon-client.d.ts +2 -0
  754. package/tui/dist/daemon-client.d.ts.map +1 -1
  755. package/tui/dist/daemon-client.js +23 -0
  756. package/tui/dist/daemon-client.js.map +1 -1
  757. package/tui/dist/hydrate.d.ts.map +1 -1
  758. package/tui/dist/hydrate.js +13 -1
  759. package/tui/dist/hydrate.js.map +1 -1
  760. package/tui/dist/live.d.ts +10 -1
  761. package/tui/dist/live.d.ts.map +1 -1
  762. package/tui/dist/live.js +56 -7
  763. package/tui/dist/live.js.map +1 -1
  764. package/tui/dist/main.js +35 -2
  765. package/tui/dist/main.js.map +1 -1
  766. package/tui/dist/render.d.ts.map +1 -1
  767. package/tui/dist/render.js +111 -7
  768. package/tui/dist/render.js.map +1 -1
  769. package/tui/dist/types.d.ts +53 -0
  770. package/tui/dist/types.d.ts.map +1 -1
  771. package/tui/dist/version-skew.d.ts +24 -0
  772. package/tui/dist/version-skew.d.ts.map +1 -0
  773. package/tui/dist/version-skew.js +37 -0
  774. package/tui/dist/version-skew.js.map +1 -0
  775. package/daemon/dist/domain/provider/subscription-moves.d.ts +0 -77
  776. package/daemon/dist/domain/provider/subscription-moves.d.ts.map +0 -1
  777. package/daemon/dist/domain/provider/subscription-moves.js +0 -140
  778. package/daemon/dist/domain/provider/subscription-moves.js.map +0 -1
@@ -0,0 +1 @@
1
+ {"version":3,"file":"existing-rig-restore.js","sourceRoot":"","sources":["../../src/domain/existing-rig-restore.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"fresh-occupant-relation.d.ts","sourceRoot":"","sources":["../../src/domain/fresh-occupant-relation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAE3C;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAqB9G;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CA8BrG"}
1
+ {"version":3,"file":"fresh-occupant-relation.d.ts","sourceRoot":"","sources":["../../src/domain/fresh-occupant-relation.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAE3C;;;;GAIG;AACH,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CA4B9G;AAED;;;;;GAKG;AACH,wBAAgB,0BAA0B,CAAC,EAAE,EAAE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CA8BrG"}
@@ -11,8 +11,15 @@ export function readFreshOccupantRelations(db, rigId) {
11
11
  (SELECT MAX(t2.generation_ordinal) FROM occupant_tenures t2 WHERE t2.node_id = t.node_id)
12
12
  `).all(rigId);
13
13
  const current = new Map(generations.map((row) => [row.nodeId, row.generation]));
14
- const events = db.prepare("SELECT payload FROM events WHERE rig_id = ? AND type = 'seat.fresh_launched' ORDER BY seq")
15
- .all(rigId);
14
+ // Through the rig's nodes into each node's fresh launches (idx_events_node_type_seq): by rig_id alone SQLite reads every
15
+ // event the rig ever recorded to test its type. node_id is the event's own nodeId (EventBus), and a node outside this rig
16
+ // has no current tenure here, so the rows used are the same.
17
+ const events = db.prepare(`
18
+ SELECT e.payload AS payload FROM nodes n
19
+ CROSS JOIN events e ON e.node_id = n.id AND e.type = 'seat.fresh_launched'
20
+ WHERE n.rig_id = ? AND e.rig_id = ?
21
+ ORDER BY e.seq
22
+ `).all(rigId, rigId);
16
23
  const relation = {};
17
24
  for (const row of events) {
18
25
  const event = JSON.parse(row.payload);
@@ -1 +1 @@
1
- {"version":3,"file":"fresh-occupant-relation.js","sourceRoot":"","sources":["../../src/domain/fresh-occupant-relation.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fresh-occupant-relation.js","sourceRoot":"","sources":["../../src/domain/fresh-occupant-relation.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,6 @@ export interface ChannelState {
4
4
  enabled?: boolean;
5
5
  active?: boolean;
6
6
  digest?: string;
7
- ready?: boolean | null;
8
7
  }
9
8
  export interface ChannelActor {
10
9
  actor: string;
@@ -14,11 +13,11 @@ export interface ChannelActor {
14
13
  export interface ChannelOperation extends ChannelActor {
15
14
  id: string;
16
15
  at: string;
17
- action: "enable" | "disable" | "configure" | "verify" | "binding";
16
+ action: "enable" | "disable" | "configure" | "binding";
18
17
  subject: string;
19
18
  before: ChannelState;
20
19
  after: ChannelState | null;
21
- effect: "started" | "applied" | "no-op" | "observed" | "failed";
20
+ effect: "started" | "applied" | "no-op" | "failed";
22
21
  }
23
22
  export declare function channelStateDigest(value: unknown): string;
24
23
  /** A start receipt survives a crash between the effect and its completion receipt.
@@ -30,7 +29,7 @@ export declare function runChannelOperation<T>(input: ChannelActor & {
30
29
  run: () => Promise<{
31
30
  value: T;
32
31
  after: ChannelState;
33
- effect: "applied" | "no-op" | "observed";
32
+ effect: "applied" | "no-op";
34
33
  }>;
35
34
  }, home?: string): Promise<{
36
35
  value: T;
@@ -1 +1 @@
1
- {"version":3,"file":"channel-operations.d.ts","sourceRoot":"","sources":["../../../src/domain/gateway/channel-operations.ts"],"names":[],"mappings":"AAKA;+DAC+D;AAC/D,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;CACxB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,cAAc,GAAG,YAAY,GAAG,mBAAmB,CAAC;IAChE,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,CAAC;IAClE,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,YAAY,CAAC;IACrB,KAAK,EAAE,YAAY,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,UAAU,GAAG,QAAQ,CAAC;CACjE;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAEzD;AAED;wFACwF;AACxF,wBAAsB,mBAAmB,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,GAAG;IACjE,MAAM,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,YAAY,CAAC;IACrB,GAAG,EAAE,MAAM,OAAO,CAAC;QAAE,KAAK,EAAE,CAAC,CAAC;QAAC,KAAK,EAAE,YAAY,CAAC;QAAC,MAAM,EAAE,SAAS,GAAG,OAAO,GAAG,UAAU,CAAA;KAAE,CAAC,CAAC;CACjG,EAAE,IAAI,SAAmB,GAAG,OAAO,CAAC;IAAE,KAAK,EAAE,CAAC,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAA;CAAE,CAAC,CAsB5E"}
1
+ {"version":3,"file":"channel-operations.d.ts","sourceRoot":"","sources":["../../../src/domain/gateway/channel-operations.ts"],"names":[],"mappings":"AAKA;+DAC+D;AAC/D,MAAM,WAAW,YAAY;IAC3B,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,cAAc,GAAG,YAAY,GAAG,mBAAmB,CAAC;IAChE,MAAM,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACpD,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,EAAE,QAAQ,GAAG,SAAS,GAAG,WAAW,GAAG,SAAS,CAAC;IACvD,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,YAAY,CAAC;IACrB,KAAK,EAAE,YAAY,GAAG,IAAI,CAAC;IAC3B,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,OAAO,GAAG,QAAQ,CAAC;CACpD;AAED,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAEzD;AAED;wFACwF;AACxF,wBAAsB,mBAAmB,CAAC,CAAC,EAAE,KAAK,EAAE,YAAY,GAAG;IACjE,MAAM,EAAE,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,YAAY,CAAC;IACrB,GAAG,EAAE,MAAM,OAAO,CAAC;QAAE,KAAK,EAAE,CAAC,CAAC;QAAC,KAAK,EAAE,YAAY,CAAC;QAAC,MAAM,EAAE,SAAS,GAAG,OAAO,CAAA;KAAE,CAAC,CAAC;CACpF,EAAE,IAAI,SAAmB,GAAG,OAAO,CAAC;IAAE,KAAK,EAAE,CAAC,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAA;CAAE,CAAC,CAsB5E"}
@@ -1 +1 @@
1
- {"version":3,"file":"channel-operations.js","sourceRoot":"","sources":["../../../src/domain/gateway/channel-operations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AA2BzD,MAAM,UAAU,kBAAkB,CAAC,KAAc;IAC/C,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC1E,CAAC;AAED;wFACwF;AACxF,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAI,KAK5C,EAAE,IAAI,GAAG,cAAc,EAAE;IACxB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IAChH,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAChC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,gCAAgC,CAAC,CAAC;IACzD,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG;QACX,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU;QAClE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM;KACzF,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,KAA0B,EAAE,MAAkC,EAAoB,EAAE;QAClG,MAAM,OAAO,GAAG,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QACzE,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACtE,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IACF,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACxB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC;QACjC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;IAC/E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACvB,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"channel-operations.js","sourceRoot":"","sources":["../../../src/domain/gateway/channel-operations.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,SAAS,EAAE,MAAM,SAAS,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACrD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AA0BzD,MAAM,UAAU,kBAAkB,CAAC,KAAc;IAC/C,OAAO,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC1E,CAAC;AAED;wFACwF;AACxF,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAI,KAK5C,EAAE,IAAI,GAAG,cAAc,EAAE;IACxB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IAChH,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;IAChC,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,EAAE,gCAAgC,CAAC,CAAC;IACzD,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACpC,MAAM,IAAI,GAAG;QACX,EAAE,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU;QAClE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM;KACzF,CAAC;IACF,MAAM,MAAM,GAAG,CAAC,KAA0B,EAAE,MAAkC,EAAoB,EAAE;QAClG,MAAM,OAAO,GAAG,EAAE,GAAG,IAAI,EAAE,EAAE,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QACzE,cAAc,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;QACtE,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC;IACF,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IACxB,IAAI,CAAC;QACH,MAAM,MAAM,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,CAAC;QACjC,OAAO,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;IAC/E,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACvB,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
@@ -64,11 +64,6 @@ export declare function connectionsProjection(home: string, gateway: Record<stri
64
64
  };
65
65
  state: string;
66
66
  nextAction: string;
67
- verification: {
68
- state: string;
69
- at: string | null;
70
- actor: string | null;
71
- };
72
67
  registry: {
73
68
  state: string;
74
69
  path: string | null;
@@ -1 +1 @@
1
- {"version":3,"file":"connections-projection.d.ts","sourceRoot":"","sources":["../../../src/domain/gateway/connections-projection.ts"],"names":[],"mappings":"AAGA,OAAO,EAA6C,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAIzG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAExE,uFAAuF;AACvF,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM;;;;;;;;;cAiCrC,OAAO,KAAG,MAAM,GAAG,IAAI;EAOzC;AAED,sFAAsF;AACtF,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,EAAE,aAAa,EACnH,IAAI;;;;;;;;;cAXa,OAAO,KAAG,MAAM,GAAG,IAAI;CAWA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;YAmES,MAAM,GAAG,IAAI;eAAiB,MAAM,GAAG,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;EAJ7F"}
1
+ {"version":3,"file":"connections-projection.d.ts","sourceRoot":"","sources":["../../../src/domain/gateway/connections-projection.ts"],"names":[],"mappings":"AAGA,OAAO,EAA6C,KAAK,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAIzG,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oCAAoC,CAAC;AAExE,uFAAuF;AACvF,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM;;;;;;;;;cAiCrC,OAAO,KAAG,MAAM,GAAG,IAAI;EAOzC;AAED,sFAAsF;AACtF,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,EAAE,QAAQ,CAAC,EAAE,aAAa,EACnH,IAAI;;;;;;;;;cAXa,OAAO,KAAG,MAAM,GAAG,IAAI;CAWA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2DzC"}
@@ -1,4 +1,4 @@
1
- import { closeSync, fstatSync, openSync, readSync, readFileSync } from "node:fs";
1
+ import { readFileSync } from "node:fs";
2
2
  import { join } from "node:path";
3
3
  import { createHash } from "node:crypto";
4
4
  import { loadConfig, configPathFor, DEFAULT_CONFIG } from "./slack/config.js";
@@ -80,16 +80,12 @@ export function connectionsProjection(home, gateway, settings, read = readConnec
80
80
  const digest = cfg ? channelStateDigest(cfg) : null;
81
81
  const applied = !digest || typeof connector?.configurationDigest !== "string" ? "unverified"
82
82
  : connector.configurationDigest === digest ? "matching" : "changed";
83
- const verification = latestVerification(home, digest);
84
- verification.actor = text(verification.actor);
85
83
  // Authored intent describes delivery only after the running wire confirms application.
86
84
  const state = !cfg || !secretsAvailable || !gateway ? "unavailable"
87
85
  : gateway.state === "failed" ? "failed" : gateway.state !== "active" ? "unavailable"
88
86
  : applied === "changed" ? "unapplied" : applied === "unverified" ? "unverified"
89
87
  : !cfg.enabled ? "disabled" : !bot || !cfg.channel ? "incomplete"
90
- : connector?.outboundReady !== true ? "unverified"
91
- : verification.state === "failed" ? "failed" : verification.state === "indeterminate" ? "indeterminate"
92
- : "unverified"; // Even a successful dated check is not current external reachability.
88
+ : "unverified"; // Nothing here reaches Slack; `rig slack verify` checks scopes and channel membership live, not an end-to-end post.
93
89
  // OPR.0.6.0.5: no Slack app yet (neither token resolves) → create one from the shipped manifest first.
94
90
  const noSlackApp = !!cfg && secretsAvailable && !bot && !app;
95
91
  const nextAction = state !== "unavailable" && state !== "failed" && noSlackApp ? "rig slack manifest --url"
@@ -124,7 +120,7 @@ export function connectionsProjection(home, gateway, settings, read = readConnec
124
120
  inboundState: text(inbound?.state) ?? "unverified",
125
121
  // Delivery health beside the socket state: an open socket is not proof that events arrive.
126
122
  inboundDelivery: text(inbound?.delivery), inboundEventsMissingSince: text(inbound?.eventsMissingSince), applied },
127
- state, nextAction, verification,
123
+ state, nextAction,
128
124
  registry: { state: registry.ok ? "available" : "unavailable", path: text(join(home, "gateway", "humans")) },
129
125
  humans: registry.ok ? registry.entities.map((h) => ({
130
126
  browserKey: browserKey(h.entityId),
@@ -136,43 +132,4 @@ export function connectionsProjection(home, gateway, settings, read = readConnec
136
132
  })) : [],
137
133
  };
138
134
  }
139
- /** Bounded tail of the EXISTING audit log; no second cache or freshness policy. */
140
- function latestVerification(home, digest) {
141
- const empty = { state: "unverified", at: null, actor: null };
142
- const file = join(home, "state", "human-channel-operations.jsonl");
143
- let fd;
144
- try {
145
- fd = openSync(file, "r");
146
- const size = fstatSync(fd).size;
147
- const start = Math.max(0, size - 64 * 1024);
148
- const bytes = Buffer.alloc(size - start);
149
- readSync(fd, bytes, 0, bytes.length, start);
150
- const lines = bytes.toString("utf8").split("\n");
151
- if (start)
152
- lines.shift();
153
- for (const line of lines.reverse()) {
154
- if (!line.trim())
155
- continue;
156
- const r = JSON.parse(line);
157
- if (r.action !== "verify" || r.subject !== "slack")
158
- continue;
159
- if (!digest || r.before?.digest !== digest)
160
- return { ...empty, state: "changed" };
161
- if (typeof r.at !== "string" || !Number.isFinite(Date.parse(r.at)))
162
- return { ...empty, state: "indeterminate" };
163
- return { state: r.effect !== "observed" ? "indeterminate" : r.after?.ready === true ? "ready-at-check"
164
- : r.after?.ready === false ? "failed" : "indeterminate", at: r.at,
165
- // Actor is an identity; reason/connector responses are deliberately omitted.
166
- actor: typeof r.actor === "string" ? r.actor.replace(/[\x00-\x1f\x7f]/g, " ").slice(0, 120) : null };
167
- }
168
- return empty;
169
- }
170
- catch (error) {
171
- return error.code === "ENOENT" ? empty : { ...empty, state: "indeterminate" };
172
- }
173
- finally {
174
- if (fd !== undefined)
175
- closeSync(fd);
176
- }
177
- }
178
135
  //# sourceMappingURL=connections-projection.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"connections-projection.js","sourceRoot":"","sources":["../../../src/domain/gateway/connections-projection.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"connections-projection.js","sourceRoot":"","sources":["../../../src/domain/gateway/connections-projection.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { OwnerNotificationLevel } from "../queue-transition-log.js";
2
- export declare const DELIVERY_OUTCOMES: readonly ["interrupt", "notify", "digest", "log"];
2
+ export declare const DELIVERY_OUTCOMES: readonly ["interrupt", "notify", "digest", "log", "hold"];
3
3
  export type DeliveryOutcome = (typeof DELIVERY_OUTCOMES)[number];
4
4
  export declare const AVAILABILITY_MODES: readonly ["available", "focus", "away", "off"];
5
5
  export type AvailabilityMode = (typeof AVAILABILITY_MODES)[number];
@@ -26,6 +26,14 @@ export interface DeliveryDecision {
26
26
  /** Present only for the deferred away-escalation interrupt (fires once at T+N). */
27
27
  deferMinutes?: number;
28
28
  termination?: DeliveryTermination;
29
+ /** Present only for `hold`: the quiet window, occurrence and revision the ask is held under. */
30
+ quietHold?: QuietHoldRef;
31
+ }
32
+ /** A person's quiet window as it is now, when it's on. */
33
+ export interface QuietHoldRef {
34
+ windowId: string;
35
+ occurrence: string;
36
+ revision: number;
29
37
  }
30
38
  export interface DeliveryDecisionInput {
31
39
  level: OwnerNotificationLevel | null;
@@ -39,6 +47,8 @@ export interface DeliveryDecisionInput {
39
47
  minimumLevelThatPosts: OwnerNotificationLevel;
40
48
  minimumLevelThatInterrupts: OwnerNotificationLevel;
41
49
  };
50
+ /** The person's quiet window when it's on now; null or absent outside quiet. */
51
+ quiet?: QuietHoldRef | null;
42
52
  }
43
53
  /** Whole-field-absent legacy inference (the D1 convention): `away: true` reads
44
54
  * as availability=away ONLY when the availability field is absent. A present
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-rules-engine.d.ts","sourceRoot":"","sources":["../../../src/domain/gateway/delivery-rules-engine.ts"],"names":[],"mappings":"AAuCA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAIzE,eAAO,MAAM,iBAAiB,mDAAoD,CAAC;AACnF,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjE,eAAO,MAAM,kBAAkB,gDAAiD,CAAC;AACjF,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnE,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAEhD,eAAO,MAAM,cAAc;;;CAAmC,CAAC;AAE/D;;;4EAG4E;AAC5E,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,gBAAgB,CAAC;IAC/B,mBAAmB,EAAE,IAAI,CAAC;IAC1B,eAAe,EAAE,eAAe,CAAC;CAClC;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,eAAe,CAAC;IACzB,0EAA0E;IAC1E,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC;IAC9B,mFAAmF;IACnF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,mBAAmB,CAAC;CACnC;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACrC,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE;QACL,QAAQ,EAAE,MAAM,CAAC;QACjB,aAAa,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;QACrC,YAAY,EAAE,gBAAgB,CAAC;KAChC,CAAC;IACF,KAAK,EAAE;QACL,qBAAqB,EAAE,sBAAsB,CAAC;QAC9C,0BAA0B,EAAE,sBAAsB,CAAC;KACpD,CAAC;CACH;AAED;;;oCAGoC;AACpC,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,gBAAgB,CAItG;AAED;uDACuD;AACvD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAGrF;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,qBAAqB,GAAG,gBAAgB,CAsE7E;AAED;;mCAEmC;AACnC,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AAEnE,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,CASjG"}
1
+ {"version":3,"file":"delivery-rules-engine.d.ts","sourceRoot":"","sources":["../../../src/domain/gateway/delivery-rules-engine.ts"],"names":[],"mappings":"AA4CA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAKzE,eAAO,MAAM,iBAAiB,2DAA4D,CAAC;AAC3F,MAAM,MAAM,eAAe,GAAG,CAAC,OAAO,iBAAiB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEjE,eAAO,MAAM,kBAAkB,gDAAiD,CAAC;AACjF,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,kBAAkB,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnE,eAAO,MAAM,6BAA6B,KAAK,CAAC;AAEhD,eAAO,MAAM,cAAc;;;CAAmC,CAAC;AAE/D;;;4EAG4E;AAC5E,MAAM,WAAW,mBAAmB;IAClC,GAAG,EAAE,MAAM,CAAC;IACZ,YAAY,EAAE,gBAAgB,CAAC;IAC/B,mBAAmB,EAAE,IAAI,CAAC;IAC1B,eAAe,EAAE,eAAe,CAAC;CAClC;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,eAAe,CAAC;IACzB,0EAA0E;IAC1E,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,CAAC,EAAE,IAAI,GAAG,OAAO,CAAC;IAC9B,mFAAmF;IACnF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,mBAAmB,CAAC;IAClC,gGAAgG;IAChG,SAAS,CAAC,EAAE,YAAY,CAAC;CAC1B;AAED,0DAA0D;AAC1D,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACrC,UAAU,EAAE,OAAO,CAAC;IACpB,KAAK,EAAE;QACL,QAAQ,EAAE,MAAM,CAAC;QACjB,aAAa,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;QACrC,YAAY,EAAE,gBAAgB,CAAC;KAChC,CAAC;IACF,KAAK,EAAE;QACL,qBAAqB,EAAE,sBAAsB,CAAC;QAC9C,0BAA0B,EAAE,sBAAsB,CAAC;KACpD,CAAC;IACF,gFAAgF;IAChF,KAAK,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;CAC7B;AAED;;;oCAGoC;AACpC,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC;IAAC,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,gBAAgB,CAItG;AAED;uDACuD;AACvD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAGrF;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,qBAAqB,GAAG,gBAAgB,CA0E7E;AAED;;mCAEmC;AACnC,eAAO,MAAM,2BAA2B,0BAA0B,CAAC;AAEnE,wBAAgB,yBAAyB,CAAC,CAAC,EAAE,mBAAmB,EAAE,eAAe,EAAE,MAAM,GAAG,MAAM,CASjG"}
@@ -1,7 +1,7 @@
1
1
  // OPR.0.5.6.1 — the §5 delivery rules engine.
2
2
  //
3
3
  // The stored per-human A–D register plus availability decide exactly ONE
4
- // connector-agnostic outcome per message: interrupt · notify · digest · log.
4
+ // connector-agnostic outcome per message: interrupt · notify · digest · log · hold.
5
5
  // The engine CONSUMES the F-8 owner-notification level enum and the two config
6
6
  // dials (one vocabulary, one classifier — S14's); it mints no transport
7
7
  // literals and no parallel classification. Dispatch stays in the gateway;
@@ -27,9 +27,14 @@
27
27
  // Delivery is never suppressed (F-8): the post lands unmentioned,
28
28
  // and the single-human termination is recorded loud.
29
29
  //
30
+ // QUIET HOURS (a timed overlay beside availability; it doesn't rewrite away or off): while the person's quiet window is
31
+ // on, a routine ask that would post decides `hold` (no post, no mention), class A included. An escalation decides
32
+ // exactly as outside quiet, and the posting dial still logs only. The quiet-release job posts held asks when it ends.
33
+ //
30
34
  // The delivery-state table (AM-F4 — one definition site, defined AGAINST the
31
35
  // S14 receipt stamps; the engine never re-spells a transport verdict):
32
36
  // queued = the row exists, no delivery transition yet
37
+ // held = a quiet-hold decision is on the row, and no posted receipt yet
33
38
  // posted = the S14 posted receipt transition is on the row
34
39
  // notified = posted AND the decision was interrupt (mention delivered)
35
40
  // replied = an inbound reply row references the conversation
@@ -38,7 +43,8 @@
38
43
  // `seen` DOES NOT EXIST and cannot be represented (design §6: unprovable).
39
44
  import { ownerNotificationLevelAtLeast } from "../queue-transition-log.js";
40
45
  import { WAKE_ESCALATION_TAG } from "../queue-wake-ladder.js";
41
- export const DELIVERY_OUTCOMES = ["interrupt", "notify", "digest", "log"];
46
+ // `hold`: the person's quiet hours are on and the ask isn't urgent; it waits for the quiet-release job.
47
+ export const DELIVERY_OUTCOMES = ["interrupt", "notify", "digest", "log", "hold"];
42
48
  export const AVAILABILITY_MODES = ["available", "focus", "away", "off"];
43
49
  export const AWAY_ESCALATION_DEFER_MINUTES = 30;
44
50
  export const DIGEST_WINDOWS = { C: "4h", D: "daily" };
@@ -116,6 +122,10 @@ export function decideDelivery(input) {
116
122
  }
117
123
  break;
118
124
  }
125
+ // Quiet hours: a routine ask that would post waits, whatever its class (class A included: the window the person chose
126
+ // wins). An urgent one (escalation) is decided above exactly as outside quiet, and the posting dial still logs only.
127
+ if (input.quiet && !input.escalation)
128
+ return { outcome: "hold", mention: false, quietHold: input.quiet };
119
129
  // mention iff interrupt — for a DEFERRED interrupt the mention rides the
120
130
  // T+30 fire, not the sweep (the delivery layer holds the post; the flag
121
131
  // describes the decided loudness, one rule for every cell).
@@ -1 +1 @@
1
- {"version":3,"file":"delivery-rules-engine.js","sourceRoot":"","sources":["../../../src/domain/gateway/delivery-rules-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"delivery-rules-engine.js","sourceRoot":"","sources":["../../../src/domain/gateway/delivery-rules-engine.ts"],"names":[],"mappings":"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"}
@@ -11,5 +11,9 @@ export declare class DispatchBuffer {
11
11
  ack(decisionId: string): void;
12
12
  /** The un-Acked decisions (restart-surviving) — what a re-dispatch replays on recovery. */
13
13
  pending(): OutboundDecision[];
14
+ /** The same list for a caller that must tell "none" from "can't tell": empty only when the file doesn't exist (ENOENT),
15
+ * and a throw for anything else that stops it being read or parsed (where `pending()` fails to empty). No existsSync
16
+ * pre-check: it reports "absent" for any stat error, a permission-denied parent directory included. */
17
+ pendingStrict(): OutboundDecision[];
14
18
  }
15
19
  //# sourceMappingURL=dispatch-buffer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch-buffer.d.ts","sourceRoot":"","sources":["../../../src/domain/gateway/dispatch-buffer.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEtD,wBAAgB,kBAAkB,CAAC,IAAI,GAAE,MAAyB,GAAG,MAAM,CAE1E;AA2BD;uFACuF;AACvF,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;gBAClB,IAAI,GAAE,MAAyB;IAI3C,oFAAoF;IACpF,OAAO,CAAC,QAAQ,EAAE,gBAAgB,GAAG,IAAI;IAOzC,+EAA+E;IAC/E,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAM7B,2FAA2F;IAC3F,OAAO,IAAI,gBAAgB,EAAE;CAG9B"}
1
+ {"version":3,"file":"dispatch-buffer.d.ts","sourceRoot":"","sources":["../../../src/domain/gateway/dispatch-buffer.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAEtD,wBAAgB,kBAAkB,CAAC,IAAI,GAAE,MAAyB,GAAG,MAAM,CAE1E;AA2BD;uFACuF;AACvF,qBAAa,cAAc;IACzB,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;gBAClB,IAAI,GAAE,MAAyB;IAI3C,oFAAoF;IACpF,OAAO,CAAC,QAAQ,EAAE,gBAAgB,GAAG,IAAI;IAOzC,+EAA+E;IAC/E,GAAG,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI;IAM7B,2FAA2F;IAC3F,OAAO,IAAI,gBAAgB,EAAE;IAI7B;;4GAEwG;IACxG,aAAa,IAAI,gBAAgB,EAAE;CAYpC"}
@@ -60,5 +60,23 @@ export class DispatchBuffer {
60
60
  pending() {
61
61
  return readState(this.path).pending;
62
62
  }
63
+ /** The same list for a caller that must tell "none" from "can't tell": empty only when the file doesn't exist (ENOENT),
64
+ * and a throw for anything else that stops it being read or parsed (where `pending()` fails to empty). No existsSync
65
+ * pre-check: it reports "absent" for any stat error, a permission-denied parent directory included. */
66
+ pendingStrict() {
67
+ let text;
68
+ try {
69
+ text = readFileSync(this.path, "utf8");
70
+ }
71
+ catch (error) {
72
+ if (error.code === "ENOENT")
73
+ return [];
74
+ throw error;
75
+ }
76
+ const raw = JSON.parse(text);
77
+ if (!Array.isArray(raw.pending))
78
+ throw new Error(`dispatch buffer ${this.path} has no pending list`);
79
+ return raw.pending;
80
+ }
63
81
  }
64
82
  //# sourceMappingURL=dispatch-buffer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dispatch-buffer.js","sourceRoot":"","sources":["../../../src/domain/gateway/dispatch-buffer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dispatch-buffer.js","sourceRoot":"","sources":["../../../src/domain/gateway/dispatch-buffer.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,61 @@
1
+ import { HumanModeService, type ModeApplication, type ModeEffect } from "./human-operating-modes.js";
2
+ import { type QueueRepository } from "../queue-repository.js";
3
+ import { type RunQuietReleaseInput } from "../policies/quiet-release.js";
4
+ export interface WaitingAsk {
5
+ qitemId: string;
6
+ /** Null when the row isn't this person's any more: its current fields belong to someone else. */
7
+ summary: string | null;
8
+ state: string | null;
9
+ /** valid: still for them. held: quiet hours are still on (it posts when they end). stale: slice 08's release reason.
10
+ * unclassified: what it depends on couldn't be read, so it's not called valid or stale. */
11
+ standing: "valid" | "held" | "stale" | "unclassified";
12
+ reason: string | null;
13
+ }
14
+ export interface ModeAccount {
15
+ mode: {
16
+ applicationId: string;
17
+ modeName: string;
18
+ settings: ModeApplication["settings"];
19
+ startedAt: string;
20
+ startedBy: string;
21
+ scheduledEnd: string | null;
22
+ endedAt: string;
23
+ endedBy: string | null;
24
+ endReason: string;
25
+ };
26
+ effects: ModeEffect[];
27
+ unresolved: ReturnType<HumanModeService["unresolved"]>;
28
+ now: {
29
+ applicationId: string;
30
+ modeName: string;
31
+ } | null;
32
+ decisions: Array<{
33
+ qitemId: string;
34
+ summary: string | null;
35
+ askedBy: string;
36
+ decision: unknown;
37
+ }>;
38
+ waiting: WaitingAsk[];
39
+ /** What the account can't say, because no record supports it: said plainly rather than made up. */
40
+ notTracked: string[];
41
+ }
42
+ export declare const NOT_TRACKED: string[];
43
+ export type AccountResult = {
44
+ status: "ok";
45
+ account: ModeAccount;
46
+ } | {
47
+ status: "not-found";
48
+ } | {
49
+ status: "still-on";
50
+ application: ModeApplication;
51
+ };
52
+ export declare function modeAccount(input: {
53
+ modes: HumanModeService;
54
+ queueRepo: QueueRepository;
55
+ home: string;
56
+ registry: RunQuietReleaseInput["registry"];
57
+ entityId: string;
58
+ applicationId: string;
59
+ now: Date;
60
+ }): Promise<AccountResult>;
61
+ //# sourceMappingURL=human-mode-account.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"human-mode-account.d.ts","sourceRoot":"","sources":["../../../src/domain/gateway/human-mode-account.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,gBAAgB,EAAE,KAAK,eAAe,EAAE,KAAK,UAAU,EAAE,MAAM,4BAA4B,CAAC;AACrG,OAAO,EAAiB,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAE7E,OAAO,EAA0F,KAAK,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AAIjK,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,iGAAiG;IACjG,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB;gGAC4F;IAC5F,QAAQ,EAAE,OAAO,GAAG,MAAM,GAAG,OAAO,GAAG,cAAc,CAAC;IACtD,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;CACvB;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,eAAe,CAAC,UAAU,CAAC,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAC3H,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;IAC5F,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,UAAU,EAAE,UAAU,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC,CAAC;IACvD,GAAG,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IACxD,SAAS,EAAE,KAAK,CAAC;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,OAAO,CAAA;KAAE,CAAC,CAAC;IAClG,OAAO,EAAE,UAAU,EAAE,CAAC;IACtB,mGAAmG;IACnG,UAAU,EAAE,MAAM,EAAE,CAAC;CACtB;AAED,eAAO,MAAM,WAAW,UAGvB,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAAE,MAAM,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,WAAW,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,WAAW,CAAA;CAAE,GAAG;IAAE,MAAM,EAAE,UAAU,CAAC;IAAC,WAAW,EAAE,eAAe,CAAA;CAAE,CAAC;AAEpJ,wBAAsB,WAAW,CAAC,KAAK,EAAE;IACvC,KAAK,EAAE,gBAAgB,CAAC;IACxB,SAAS,EAAE,eAAe,CAAC;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,oBAAoB,CAAC,UAAU,CAAC,CAAC;IAC3C,QAAQ,EAAE,MAAM,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,GAAG,EAAE,IAAI,CAAC;CACX,GAAG,OAAO,CAAC,aAAa,CAAC,CAgBzB"}
@@ -0,0 +1,112 @@
1
+ import { isBlockerLive } from "../queue-repository.js";
2
+ import { parseSessionName } from "../session-name.js";
3
+ import { DISPOSITION_PREFIX, hasToken, parseQuietHoldNote, QUIET_RELEASE_POLICY, releaseVerdict } from "../policies/quiet-release.js";
4
+ const POSTED_RECEIPT = "slack-owner-notification-posted";
5
+ export const NOT_TRACKED = [
6
+ "work done while the mode was on: no record ties work to a person",
7
+ "work that stalled or failed while the mode was on: no record ties it to a person (the mode's own failed or pending effects are listed)",
8
+ ];
9
+ export async function modeAccount(input) {
10
+ const app = input.modes.get(input.applicationId);
11
+ if (!app || app.entityId !== input.entityId)
12
+ return { status: "not-found" };
13
+ if (!app.endedAt)
14
+ return { status: "still-on", application: app };
15
+ const current = input.modes.current(input.entityId);
16
+ return { status: "ok", account: {
17
+ mode: { applicationId: app.applicationId, modeName: app.modeName, settings: app.settings, startedAt: app.startedAt, startedBy: app.startedBy,
18
+ scheduledEnd: app.scheduledEnd, endedAt: app.endedAt, endedBy: app.endedBy, endReason: app.endReason },
19
+ effects: app.effects,
20
+ unresolved: input.modes.unresolved(input.entityId),
21
+ now: current ? { applicationId: current.applicationId, modeName: current.modeName } : null,
22
+ decisions: input.queueRepo.delegatedDecisionsFor(app.applicationId)
23
+ .map((item) => ({ qitemId: item.qitemId, summary: item.summary ?? null, askedBy: item.sourceSession, decision: item.delegatedDecision })),
24
+ waiting: await waitingFor(input, app),
25
+ notTracked: NOT_TRACKED,
26
+ } };
27
+ }
28
+ /** Asks to the person still open now, plus asks held for their quiet hours while the mode was on that slice 08's release
29
+ * set aside as stale. A held ask is classified as the release classifies it; an ask that was never held is still for them. */
30
+ async function waitingFor(input, app) {
31
+ const db = input.queueRepo.db;
32
+ // The person's own address, or the `<entityId>@host` custody label a row can be blocked on: a seat that happens to share
33
+ // their name isn't them.
34
+ const mine = (session) => {
35
+ const parsed = session ? parseSessionName(session) : null;
36
+ return (parsed?.kind === "external" && parsed.local === input.entityId)
37
+ || (parsed?.kind === "canonical" && parsed.member === input.entityId && parsed.rig === "host");
38
+ };
39
+ const open = db.prepare("SELECT qitem_id, destination_session, blocked_on FROM queue_items WHERE state IN ('pending', 'in-progress', 'blocked')")
40
+ .all()
41
+ .filter((r) => mine(r.destination_session) || mine(r.blocked_on)).map((r) => r.qitem_id);
42
+ const heldDuring = db.prepare("SELECT DISTINCT qitem_id FROM queue_transitions WHERE transition_note LIKE 'delivery-decision: quiet-hold %' AND ts >= ? AND ts <= ?")
43
+ .all(app.startedAt, app.endedAt).map((r) => r.qitem_id);
44
+ // Whose quiet window held an ask: each window's release job records its person (a replaced window's too), and the
45
+ // person's current window is in the quiet-hours table. A hold counts only when it was this person's; one whose window
46
+ // can't be attributed counts only on a row that is theirs.
47
+ const owners = new Map();
48
+ for (const j of db.prepare(`SELECT spec_yaml FROM watchdog_jobs WHERE policy = '${QUIET_RELEASE_POLICY}'`).all()) {
49
+ const windowId = /windowId:\s*"([^"\n]+)"/.exec(j.spec_yaml)?.[1];
50
+ const entityId = /entityId:\s*"([^"\n]+)"/.exec(j.spec_yaml)?.[1];
51
+ if (windowId && entityId)
52
+ owners.set(windowId, entityId);
53
+ }
54
+ for (const w of db.prepare("SELECT entity_id, window_id FROM human_quiet_windows").all()) {
55
+ owners.set(w.window_id, w.entity_id);
56
+ }
57
+ const out = [];
58
+ for (const qitemId of [...new Set([...open, ...heldDuring])]) {
59
+ const item = input.queueRepo.getById(qitemId);
60
+ if (!item)
61
+ continue;
62
+ const ask = { qitemId, summary: item.summary ?? null, state: item.state };
63
+ const notes = input.queueRepo.listTransitions(qitemId).map((t) => t.transitionNote ?? "");
64
+ const rowIsTheirs = mine(item.destinationSession) || mine(item.blockedOn);
65
+ const hold = [...notes].reverse().map(parseQuietHoldNote)
66
+ .find((h) => h !== null && (owners.has(h.windowId) ? owners.get(h.windowId) === input.entityId : rowIsTheirs));
67
+ if (!hold) {
68
+ // Never held for them: an open ask to them is still theirs; anyone else's, or a closed one, isn't waiting.
69
+ if (isBlockerLive(item.state) && rowIsTheirs)
70
+ out.push({ ...ask, standing: "valid", reason: null });
71
+ continue;
72
+ }
73
+ const disposed = notes.find((n) => hasToken(n, DISPOSITION_PREFIX, hold.notificationKey));
74
+ const disposedReason = disposed ? /reason=(\S+)/.exec(disposed)?.[1] ?? null : null;
75
+ const posted = notes.some((n) => hasToken(n, POSTED_RECEIPT, hold.notificationKey));
76
+ if (!rowIsTheirs) {
77
+ // Held for them once, but the row isn't theirs now. Posted to them when quiet ended: delivered, and what happened after
78
+ // (answered and unblocked, or re-parked on someone else) isn't theirs. Otherwise it was set aside, and only that stays:
79
+ // what the row says now isn't theirs to read.
80
+ if (posted)
81
+ continue;
82
+ out.push({ qitemId, summary: null, state: null, standing: "stale", reason: disposedReason ?? "recipient-changed" });
83
+ continue;
84
+ }
85
+ if (disposed) {
86
+ out.push({ ...ask, standing: "stale", reason: disposedReason });
87
+ continue;
88
+ }
89
+ if (posted) {
90
+ // Released and posted: still theirs while it's open; closed since, it isn't waiting.
91
+ if (isBlockerLive(item.state))
92
+ out.push({ ...ask, standing: "valid", reason: null });
93
+ continue;
94
+ }
95
+ if (!isBlockerLive(item.state)) {
96
+ out.push({ ...ask, standing: "stale", reason: "row-not-active" });
97
+ continue;
98
+ }
99
+ const verdict = await releaseVerdict({ queueRepo: input.queueRepo, home: input.home, registry: input.registry, entityId: input.entityId,
100
+ qitemId, notificationKey: hold.notificationKey, now: input.now });
101
+ if (verdict.kind === "post")
102
+ out.push({ ...ask, standing: "valid", reason: null });
103
+ else if (verdict.kind === "quiet")
104
+ out.push({ ...ask, standing: "held", reason: "quiet hours are still on" });
105
+ else if (verdict.kind === "disposition")
106
+ out.push({ ...ask, standing: "stale", reason: verdict.reason });
107
+ else
108
+ out.push({ ...ask, standing: "unclassified", reason: verdict.detail });
109
+ }
110
+ return out;
111
+ }
112
+ //# sourceMappingURL=human-mode-account.js.map