@openrig/cli 0.6.6 → 0.6.7

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 (591) hide show
  1. package/README.md +95 -28
  2. package/daemon/assets/claude-team-permissions.cjs +262 -0
  3. package/daemon/assets/onboarding/02-self-and-competent-action.md +20 -13
  4. package/daemon/assets/plugins/openrig-core/.claude-plugin/plugin.json +1 -1
  5. package/daemon/assets/plugins/openrig-core/.codex-plugin/plugin.json +1 -1
  6. package/daemon/assets/plugins/openrig-core/hooks/scripts/refocus-health.cjs +41 -0
  7. package/daemon/assets/plugins/openrig-core/hooks/scripts/refocus.cjs +69 -12
  8. package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/SKILL.md +13 -2
  9. package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/scripts/precompact-hook.mjs +4 -0
  10. package/daemon/assets/plugins/openrig-core/skills/openrig-skills/SKILL.md +1 -1
  11. package/daemon/assets/plugins/openrig-core/skills/refocusing/SKILL.md +31 -4
  12. package/daemon/assets/plugins/openrig-core/skills/refocusing/scripts/trace-to-root.py +24 -13
  13. package/daemon/assets/plugins/openrig-core/skills/retiring-and-inheriting-a-seat/SKILL.md +3 -0
  14. package/daemon/assets/plugins/openrig-core/skills/seat-continuity-and-handover/SKILL.md +42 -0
  15. package/daemon/assets/plugins/openrig-core/skills/session-compaction-and-restore/SKILL.md +6 -0
  16. package/daemon/assets/skills/rigs/SKILL.md +133 -0
  17. package/daemon/context-packs/help/help.md +48 -19
  18. package/daemon/context-packs/help/manifest.yaml +1 -1
  19. package/daemon/context-packs/onboarding-width/manifest.yaml +1 -1
  20. package/daemon/context-packs/onboarding-width/public-what-you-can-do.md +218 -39
  21. package/daemon/context-packs/reference/getting-started.md +356 -212
  22. package/daemon/context-packs/reference/manifest.yaml +4 -1
  23. package/daemon/context-packs/reference/rig-spec.md +36 -11
  24. package/daemon/context-packs/reference/whats-new.md +134 -0
  25. package/daemon/context-packs/skills/agent-operated-software/manifest.yaml +1 -1
  26. package/daemon/context-packs/skills/agent-operated-workflows/manifest.yaml +1 -1
  27. package/daemon/context-packs/skills/applying-a-permission-policy/manifest.yaml +1 -1
  28. package/daemon/context-packs/skills/claude-compaction-restore/SKILL.md +13 -2
  29. package/daemon/context-packs/skills/claude-compaction-restore/manifest.yaml +1 -1
  30. package/daemon/context-packs/skills/claude-compaction-restore/scripts/precompact-hook.mjs +4 -0
  31. package/daemon/context-packs/skills/core/agent-starters/manifest.yaml +1 -1
  32. package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/manifest.yaml +1 -1
  33. package/daemon/context-packs/skills/core/cross-host-rig-commands/manifest.yaml +1 -1
  34. package/daemon/context-packs/skills/core/human-in-the-loop/manifest.yaml +1 -1
  35. package/daemon/context-packs/skills/core/messaging-the-human/manifest.yaml +1 -1
  36. package/daemon/context-packs/skills/core/openrig-architect/manifest.yaml +1 -1
  37. package/daemon/context-packs/skills/core/openrig-cmux/manifest.yaml +1 -1
  38. package/daemon/context-packs/skills/core/openrig-herdr/manifest.yaml +1 -1
  39. package/daemon/context-packs/skills/core/openrig-skills/SKILL.md +1 -1
  40. package/daemon/context-packs/skills/core/openrig-skills/manifest.yaml +1 -1
  41. package/daemon/context-packs/skills/core/openrig-software-factory/SKILL.md +19 -12
  42. package/daemon/context-packs/skills/core/openrig-software-factory/manifest.yaml +1 -1
  43. package/daemon/context-packs/skills/core/openrig-software-factory/references/worked-example.md +2 -2
  44. package/daemon/context-packs/skills/core/openrig-upgrade/SKILL.md +2 -0
  45. package/daemon/context-packs/skills/core/openrig-upgrade/manifest.yaml +1 -1
  46. package/daemon/context-packs/skills/core/rig-bundles-and-shareable-artifacts/manifest.yaml +1 -1
  47. package/daemon/context-packs/skills/core/rig-lifecycle/manifest.yaml +1 -1
  48. package/daemon/context-packs/skills/core/session-source-fork/manifest.yaml +1 -1
  49. package/daemon/context-packs/skills/core/specification-system/manifest.yaml +1 -1
  50. package/daemon/context-packs/skills/core/topology-mutation-and-seat-management/manifest.yaml +1 -1
  51. package/daemon/context-packs/skills/core/watchdog/manifest.yaml +1 -1
  52. package/daemon/context-packs/skills/delegating-work/manifest.yaml +1 -1
  53. package/daemon/context-packs/skills/forming-an-openrig-mental-model/manifest.yaml +1 -1
  54. package/daemon/context-packs/skills/loading-addressable-markdown/manifest.yaml +1 -1
  55. package/daemon/context-packs/skills/mission-slice-sop/manifest.yaml +1 -1
  56. package/daemon/context-packs/skills/openrig-operating-model/manifest.yaml +1 -1
  57. package/daemon/context-packs/skills/openrig-user/manifest.yaml +1 -1
  58. package/daemon/context-packs/skills/orienting-to-an-inherited-seat/manifest.yaml +1 -1
  59. package/daemon/context-packs/skills/pm/backlog-capture/manifest.yaml +1 -1
  60. package/daemon/context-packs/skills/pm/context-builder/manifest.yaml +1 -1
  61. package/daemon/context-packs/skills/pm/exec-summary/manifest.yaml +1 -1
  62. package/daemon/context-packs/skills/pm/office-hours/manifest.yaml +1 -1
  63. package/daemon/context-packs/skills/pm/plan-review/manifest.yaml +1 -1
  64. package/daemon/context-packs/skills/pm/requirements-writer/manifest.yaml +1 -1
  65. package/daemon/context-packs/skills/pm/ui-mockup/manifest.yaml +1 -1
  66. package/daemon/context-packs/skills/pods/development-team/manifest.yaml +1 -1
  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/manifest.yaml +1 -1
  70. package/daemon/context-packs/skills/process/agent-browser/manifest.yaml +1 -1
  71. package/daemon/context-packs/skills/process/context-engineering/manifest.yaml +1 -1
  72. package/daemon/context-packs/skills/process/dogfood/manifest.yaml +1 -1
  73. package/daemon/context-packs/skills/process/frontend-design/manifest.yaml +1 -1
  74. package/daemon/context-packs/skills/process/systematic-debugging/manifest.yaml +1 -1
  75. package/daemon/context-packs/skills/process/test-driven-development/manifest.yaml +1 -1
  76. package/daemon/context-packs/skills/process/verification-before-completion/manifest.yaml +1 -1
  77. package/daemon/context-packs/skills/queue-handoff/manifest.yaml +1 -1
  78. package/daemon/context-packs/skills/refocusing/SKILL.md +31 -4
  79. package/daemon/context-packs/skills/refocusing/manifest.yaml +1 -1
  80. package/daemon/context-packs/skills/refocusing/scripts/trace-to-root.py +24 -13
  81. package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/SKILL.md +3 -0
  82. package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/manifest.yaml +1 -1
  83. package/daemon/context-packs/skills/seat-continuity-and-handover/SKILL.md +42 -0
  84. package/daemon/context-packs/skills/seat-continuity-and-handover/manifest.yaml +1 -1
  85. package/daemon/context-packs/skills/session-compaction-and-restore/SKILL.md +6 -0
  86. package/daemon/context-packs/skills/session-compaction-and-restore/manifest.yaml +1 -1
  87. package/daemon/context-packs/skills/software-for-agents/manifest.yaml +1 -1
  88. package/daemon/context-packs/world-example/manifest.yaml +1 -1
  89. package/daemon/context-packs/world-public/manifest.yaml +1 -1
  90. package/daemon/dist/adapters/claude-code-adapter.d.ts +1 -1
  91. package/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
  92. package/daemon/dist/adapters/claude-code-adapter.js +23 -13
  93. package/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
  94. package/daemon/dist/adapters/codex-resume.d.ts.map +1 -1
  95. package/daemon/dist/adapters/codex-resume.js +17 -0
  96. package/daemon/dist/adapters/codex-resume.js.map +1 -1
  97. package/daemon/dist/adapters/codex-runtime-adapter.js +2 -2
  98. package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
  99. package/daemon/dist/adapters/kernel-authority.d.ts.map +1 -1
  100. package/daemon/dist/adapters/kernel-authority.js +29 -11
  101. package/daemon/dist/adapters/kernel-authority.js.map +1 -1
  102. package/daemon/dist/adapters/pi-readiness.d.ts +15 -0
  103. package/daemon/dist/adapters/pi-readiness.d.ts.map +1 -0
  104. package/daemon/dist/adapters/pi-readiness.js +90 -0
  105. package/daemon/dist/adapters/pi-readiness.js.map +1 -0
  106. package/daemon/dist/adapters/pi-runner-protocol.d.ts.map +1 -1
  107. package/daemon/dist/adapters/pi-runner-protocol.js +1 -0
  108. package/daemon/dist/adapters/pi-runner-protocol.js.map +1 -1
  109. package/daemon/dist/adapters/pi-runner.d.ts.map +1 -1
  110. package/daemon/dist/adapters/pi-runner.js +13 -2
  111. package/daemon/dist/adapters/pi-runner.js.map +1 -1
  112. package/daemon/dist/adapters/tmux.d.ts.map +1 -1
  113. package/daemon/dist/adapters/tmux.js +9 -6
  114. package/daemon/dist/adapters/tmux.js.map +1 -1
  115. package/daemon/dist/build-info.js +3 -3
  116. package/daemon/dist/db/all-migrations.d.ts.map +1 -1
  117. package/daemon/dist/db/all-migrations.js +4 -0
  118. package/daemon/dist/db/all-migrations.js.map +1 -1
  119. package/daemon/dist/db/migrations/096_rig_install_root.d.ts +3 -0
  120. package/daemon/dist/db/migrations/096_rig_install_root.d.ts.map +1 -0
  121. package/daemon/dist/db/migrations/096_rig_install_root.js +5 -0
  122. package/daemon/dist/db/migrations/096_rig_install_root.js.map +1 -0
  123. package/daemon/dist/db/migrations/097_thread_part_map.d.ts +3 -0
  124. package/daemon/dist/db/migrations/097_thread_part_map.d.ts.map +1 -0
  125. package/daemon/dist/db/migrations/097_thread_part_map.js +20 -0
  126. package/daemon/dist/db/migrations/097_thread_part_map.js.map +1 -0
  127. package/daemon/dist/domain/activity-taxonomy.d.ts +7 -0
  128. package/daemon/dist/domain/activity-taxonomy.d.ts.map +1 -1
  129. package/daemon/dist/domain/activity-taxonomy.js.map +1 -1
  130. package/daemon/dist/domain/agent-activity-store.d.ts +12 -0
  131. package/daemon/dist/domain/agent-activity-store.d.ts.map +1 -1
  132. package/daemon/dist/domain/agent-activity-store.js +55 -30
  133. package/daemon/dist/domain/agent-activity-store.js.map +1 -1
  134. package/daemon/dist/domain/agent-images/agent-image-types.d.ts +1 -1
  135. package/daemon/dist/domain/agent-images/agent-image-types.d.ts.map +1 -1
  136. package/daemon/dist/domain/bootstrap-orchestrator.d.ts.map +1 -1
  137. package/daemon/dist/domain/bootstrap-orchestrator.js +6 -4
  138. package/daemon/dist/domain/bootstrap-orchestrator.js.map +1 -1
  139. package/daemon/dist/domain/bundle-install-context.d.ts +2 -2
  140. package/daemon/dist/domain/bundle-install-context.d.ts.map +1 -1
  141. package/daemon/dist/domain/bundle-install-context.js +16 -3
  142. package/daemon/dist/domain/bundle-install-context.js.map +1 -1
  143. package/daemon/dist/domain/bundle-types.d.ts +1 -1
  144. package/daemon/dist/domain/bundle-types.d.ts.map +1 -1
  145. package/daemon/dist/domain/chat-repository.d.ts +5 -0
  146. package/daemon/dist/domain/chat-repository.d.ts.map +1 -1
  147. package/daemon/dist/domain/chat-repository.js +8 -0
  148. package/daemon/dist/domain/chat-repository.js.map +1 -1
  149. package/daemon/dist/domain/claim-service.d.ts.map +1 -1
  150. package/daemon/dist/domain/claim-service.js +5 -4
  151. package/daemon/dist/domain/claim-service.js.map +1 -1
  152. package/daemon/dist/domain/claude-activity-hooks.d.ts +3 -0
  153. package/daemon/dist/domain/claude-activity-hooks.d.ts.map +1 -1
  154. package/daemon/dist/domain/claude-activity-hooks.js +8 -1
  155. package/daemon/dist/domain/claude-activity-hooks.js.map +1 -1
  156. package/daemon/dist/domain/claude-compaction-enforcer.d.ts +11 -0
  157. package/daemon/dist/domain/claude-compaction-enforcer.d.ts.map +1 -1
  158. package/daemon/dist/domain/claude-compaction-enforcer.js +42 -13
  159. package/daemon/dist/domain/claude-compaction-enforcer.js.map +1 -1
  160. package/daemon/dist/domain/codex-thread-id.d.ts.map +1 -1
  161. package/daemon/dist/domain/codex-thread-id.js +4 -2
  162. package/daemon/dist/domain/codex-thread-id.js.map +1 -1
  163. package/daemon/dist/domain/context-monitor.d.ts.map +1 -1
  164. package/daemon/dist/domain/context-monitor.js +2 -0
  165. package/daemon/dist/domain/context-monitor.js.map +1 -1
  166. package/daemon/dist/domain/execution-view.d.ts.map +1 -1
  167. package/daemon/dist/domain/execution-view.js +57 -11
  168. package/daemon/dist/domain/execution-view.js.map +1 -1
  169. package/daemon/dist/domain/gateway/connections-projection.d.ts +4 -0
  170. package/daemon/dist/domain/gateway/connections-projection.d.ts.map +1 -1
  171. package/daemon/dist/domain/gateway/connections-projection.js +2 -0
  172. package/daemon/dist/domain/gateway/connections-projection.js.map +1 -1
  173. package/daemon/dist/domain/gateway/destination-resolver.d.ts.map +1 -1
  174. package/daemon/dist/domain/gateway/destination-resolver.js +7 -4
  175. package/daemon/dist/domain/gateway/destination-resolver.js.map +1 -1
  176. package/daemon/dist/domain/gateway/human-readiness.d.ts.map +1 -1
  177. package/daemon/dist/domain/gateway/human-readiness.js +23 -6
  178. package/daemon/dist/domain/gateway/human-readiness.js.map +1 -1
  179. package/daemon/dist/domain/gateway/human-registry.d.ts +2 -2
  180. package/daemon/dist/domain/gateway/human-registry.d.ts.map +1 -1
  181. package/daemon/dist/domain/gateway/human-registry.js +2 -2
  182. package/daemon/dist/domain/gateway/human-registry.js.map +1 -1
  183. package/daemon/dist/domain/gateway/slack/capabilities.d.ts.map +1 -1
  184. package/daemon/dist/domain/gateway/slack/capabilities.js +3 -1
  185. package/daemon/dist/domain/gateway/slack/capabilities.js.map +1 -1
  186. package/daemon/dist/domain/gateway/slack/channel-map.d.ts +39 -0
  187. package/daemon/dist/domain/gateway/slack/channel-map.d.ts.map +1 -0
  188. package/daemon/dist/domain/gateway/slack/channel-map.js +114 -0
  189. package/daemon/dist/domain/gateway/slack/channel-map.js.map +1 -0
  190. package/daemon/dist/domain/gateway/slack/config.d.ts +7 -0
  191. package/daemon/dist/domain/gateway/slack/config.d.ts.map +1 -1
  192. package/daemon/dist/domain/gateway/slack/config.js +19 -2
  193. package/daemon/dist/domain/gateway/slack/config.js.map +1 -1
  194. package/daemon/dist/domain/gateway/slack/inbound.d.ts +24 -1
  195. package/daemon/dist/domain/gateway/slack/inbound.d.ts.map +1 -1
  196. package/daemon/dist/domain/gateway/slack/inbound.js +104 -3
  197. package/daemon/dist/domain/gateway/slack/inbound.js.map +1 -1
  198. package/daemon/dist/domain/gateway/slack/message.d.ts +7 -0
  199. package/daemon/dist/domain/gateway/slack/message.d.ts.map +1 -1
  200. package/daemon/dist/domain/gateway/slack/message.js +36 -0
  201. package/daemon/dist/domain/gateway/slack/message.js.map +1 -1
  202. package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts +30 -7
  203. package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts.map +1 -1
  204. package/daemon/dist/domain/gateway/slack/slack-delivery.js +253 -51
  205. package/daemon/dist/domain/gateway/slack/slack-delivery.js.map +1 -1
  206. package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts.map +1 -1
  207. package/daemon/dist/domain/gateway/slack/slack-subsystem.js +90 -10
  208. package/daemon/dist/domain/gateway/slack/slack-subsystem.js.map +1 -1
  209. package/daemon/dist/domain/gateway/slack/socket-inbound.d.ts +2 -0
  210. package/daemon/dist/domain/gateway/slack/socket-inbound.d.ts.map +1 -1
  211. package/daemon/dist/domain/gateway/slack/socket-inbound.js +40 -0
  212. package/daemon/dist/domain/gateway/slack/socket-inbound.js.map +1 -1
  213. package/daemon/dist/domain/gateway/slack/thread-routing.d.ts.map +1 -1
  214. package/daemon/dist/domain/gateway/slack/thread-routing.js +22 -2
  215. package/daemon/dist/domain/gateway/slack/thread-routing.js.map +1 -1
  216. package/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts +14 -0
  217. package/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts.map +1 -1
  218. package/daemon/dist/domain/gateway/slack/thread-seat-map.js +27 -0
  219. package/daemon/dist/domain/gateway/slack/thread-seat-map.js.map +1 -1
  220. package/daemon/dist/domain/generated-file-hygiene.d.ts.map +1 -1
  221. package/daemon/dist/domain/generated-file-hygiene.js +7 -4
  222. package/daemon/dist/domain/generated-file-hygiene.js.map +1 -1
  223. package/daemon/dist/domain/managed-blocks.d.ts.map +1 -1
  224. package/daemon/dist/domain/managed-blocks.js +5 -2
  225. package/daemon/dist/domain/managed-blocks.js.map +1 -1
  226. package/daemon/dist/domain/markdown-address.d.ts.map +1 -1
  227. package/daemon/dist/domain/markdown-address.js +23 -6
  228. package/daemon/dist/domain/markdown-address.js.map +1 -1
  229. package/daemon/dist/domain/native-process-lineage.d.ts.map +1 -1
  230. package/daemon/dist/domain/native-process-lineage.js +36 -1
  231. package/daemon/dist/domain/native-process-lineage.js.map +1 -1
  232. package/daemon/dist/domain/node-inventory.d.ts +2 -2
  233. package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
  234. package/daemon/dist/domain/node-inventory.js +30 -4
  235. package/daemon/dist/domain/node-inventory.js.map +1 -1
  236. package/daemon/dist/domain/node-launcher.d.ts.map +1 -1
  237. package/daemon/dist/domain/node-launcher.js +1 -0
  238. package/daemon/dist/domain/node-launcher.js.map +1 -1
  239. package/daemon/dist/domain/pane-binding-observation.d.ts +1 -0
  240. package/daemon/dist/domain/pane-binding-observation.d.ts.map +1 -1
  241. package/daemon/dist/domain/pane-binding-observation.js +3 -1
  242. package/daemon/dist/domain/pane-binding-observation.js.map +1 -1
  243. package/daemon/dist/domain/plugin-vendor-service.d.ts +6 -0
  244. package/daemon/dist/domain/plugin-vendor-service.d.ts.map +1 -1
  245. package/daemon/dist/domain/plugin-vendor-service.js +12 -0
  246. package/daemon/dist/domain/plugin-vendor-service.js.map +1 -1
  247. package/daemon/dist/domain/ps-projection.d.ts +11 -9
  248. package/daemon/dist/domain/ps-projection.d.ts.map +1 -1
  249. package/daemon/dist/domain/ps-projection.js +15 -12
  250. package/daemon/dist/domain/ps-projection.js.map +1 -1
  251. package/daemon/dist/domain/queue-repository.d.ts +2 -0
  252. package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
  253. package/daemon/dist/domain/queue-repository.js +39 -14
  254. package/daemon/dist/domain/queue-repository.js.map +1 -1
  255. package/daemon/dist/domain/queue-retention.d.ts +2 -2
  256. package/daemon/dist/domain/queue-retention.js +4 -4
  257. package/daemon/dist/domain/queue-wait-backoff.d.ts.map +1 -1
  258. package/daemon/dist/domain/queue-wait-backoff.js +6 -2
  259. package/daemon/dist/domain/queue-wait-backoff.js.map +1 -1
  260. package/daemon/dist/domain/queue-waiting.d.ts.map +1 -1
  261. package/daemon/dist/domain/queue-waiting.js +7 -2
  262. package/daemon/dist/domain/queue-waiting.js.map +1 -1
  263. package/daemon/dist/domain/queue-wake-ladder.d.ts +15 -2
  264. package/daemon/dist/domain/queue-wake-ladder.d.ts.map +1 -1
  265. package/daemon/dist/domain/queue-wake-ladder.js +29 -6
  266. package/daemon/dist/domain/queue-wake-ladder.js.map +1 -1
  267. package/daemon/dist/domain/rehydrate-eligibility.d.ts.map +1 -1
  268. package/daemon/dist/domain/rehydrate-eligibility.js +5 -2
  269. package/daemon/dist/domain/rehydrate-eligibility.js.map +1 -1
  270. package/daemon/dist/domain/reply-to-choice.d.ts +6 -2
  271. package/daemon/dist/domain/reply-to-choice.d.ts.map +1 -1
  272. package/daemon/dist/domain/reply-to-choice.js +9 -6
  273. package/daemon/dist/domain/reply-to-choice.js.map +1 -1
  274. package/daemon/dist/domain/restore-check-service.d.ts +5 -1
  275. package/daemon/dist/domain/restore-check-service.d.ts.map +1 -1
  276. package/daemon/dist/domain/restore-check-service.js +17 -3
  277. package/daemon/dist/domain/restore-check-service.js.map +1 -1
  278. package/daemon/dist/domain/rig-repository.d.ts +3 -1
  279. package/daemon/dist/domain/rig-repository.d.ts.map +1 -1
  280. package/daemon/dist/domain/rig-repository.js +13 -4
  281. package/daemon/dist/domain/rig-repository.js.map +1 -1
  282. package/daemon/dist/domain/rigspec-instantiator.d.ts +1 -0
  283. package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
  284. package/daemon/dist/domain/rigspec-instantiator.js +1 -1
  285. package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
  286. package/daemon/dist/domain/rigspec-preflight.d.ts +1 -1
  287. package/daemon/dist/domain/rigspec-preflight.d.ts.map +1 -1
  288. package/daemon/dist/domain/rigspec-preflight.js +8 -4
  289. package/daemon/dist/domain/rigspec-preflight.js.map +1 -1
  290. package/daemon/dist/domain/rigspec-schema.d.ts.map +1 -1
  291. package/daemon/dist/domain/rigspec-schema.js +19 -4
  292. package/daemon/dist/domain/rigspec-schema.js.map +1 -1
  293. package/daemon/dist/domain/seat-activity-service.d.ts.map +1 -1
  294. package/daemon/dist/domain/seat-activity-service.js +16 -6
  295. package/daemon/dist/domain/seat-activity-service.js.map +1 -1
  296. package/daemon/dist/domain/seat-handover-service.d.ts.map +1 -1
  297. package/daemon/dist/domain/seat-handover-service.js +9 -1
  298. package/daemon/dist/domain/seat-handover-service.js.map +1 -1
  299. package/daemon/dist/domain/session-jsonl.d.ts.map +1 -1
  300. package/daemon/dist/domain/session-jsonl.js +10 -4
  301. package/daemon/dist/domain/session-jsonl.js.map +1 -1
  302. package/daemon/dist/domain/session-transport.d.ts +4 -20
  303. package/daemon/dist/domain/session-transport.d.ts.map +1 -1
  304. package/daemon/dist/domain/session-transport.js +37 -30
  305. package/daemon/dist/domain/session-transport.js.map +1 -1
  306. package/daemon/dist/domain/skill-audit.d.ts +19 -0
  307. package/daemon/dist/domain/skill-audit.d.ts.map +1 -1
  308. package/daemon/dist/domain/skill-audit.js +97 -5
  309. package/daemon/dist/domain/skill-audit.js.map +1 -1
  310. package/daemon/dist/domain/skill-catalog.d.ts.map +1 -1
  311. package/daemon/dist/domain/skill-catalog.js +9 -0
  312. package/daemon/dist/domain/skill-catalog.js.map +1 -1
  313. package/daemon/dist/domain/skill-mirror-drift.d.ts +6 -1
  314. package/daemon/dist/domain/skill-mirror-drift.d.ts.map +1 -1
  315. package/daemon/dist/domain/skill-mirror-drift.js +23 -12
  316. package/daemon/dist/domain/skill-mirror-drift.js.map +1 -1
  317. package/daemon/dist/domain/snapshot-repository.d.ts.map +1 -1
  318. package/daemon/dist/domain/snapshot-repository.js +12 -32
  319. package/daemon/dist/domain/snapshot-repository.js.map +1 -1
  320. package/daemon/dist/domain/terminal/herdr-adapter.d.ts +4 -1
  321. package/daemon/dist/domain/terminal/herdr-adapter.d.ts.map +1 -1
  322. package/daemon/dist/domain/terminal/herdr-adapter.js +14 -7
  323. package/daemon/dist/domain/terminal/herdr-adapter.js.map +1 -1
  324. package/daemon/dist/domain/terminal/terminal-provider.d.ts +9 -0
  325. package/daemon/dist/domain/terminal/terminal-provider.d.ts.map +1 -1
  326. package/daemon/dist/domain/terminal/terminal-service.d.ts +4 -0
  327. package/daemon/dist/domain/terminal/terminal-service.d.ts.map +1 -1
  328. package/daemon/dist/domain/terminal/terminal-service.js +23 -11
  329. package/daemon/dist/domain/terminal/terminal-service.js.map +1 -1
  330. package/daemon/dist/domain/transcript-store.d.ts.map +1 -1
  331. package/daemon/dist/domain/transcript-store.js +21 -9
  332. package/daemon/dist/domain/transcript-store.js.map +1 -1
  333. package/daemon/dist/domain/types.d.ts +2 -0
  334. package/daemon/dist/domain/types.d.ts.map +1 -1
  335. package/daemon/dist/domain/types.js.map +1 -1
  336. package/daemon/dist/domain/usage-samples-store.js +2 -2
  337. package/daemon/dist/domain/usage-samples-store.js.map +1 -1
  338. package/daemon/dist/domain/usage-series.d.ts.map +1 -1
  339. package/daemon/dist/domain/usage-series.js +42 -10
  340. package/daemon/dist/domain/usage-series.js.map +1 -1
  341. package/daemon/dist/domain/user-settings/settings-browser.d.ts.map +1 -1
  342. package/daemon/dist/domain/user-settings/settings-browser.js +2 -0
  343. package/daemon/dist/domain/user-settings/settings-browser.js.map +1 -1
  344. package/daemon/dist/domain/user-settings/settings-store.js +1 -1
  345. package/daemon/dist/domain/user-settings/settings-store.js.map +1 -1
  346. package/daemon/dist/domain/watchdog-due.d.ts +17 -0
  347. package/daemon/dist/domain/watchdog-due.d.ts.map +1 -0
  348. package/daemon/dist/domain/watchdog-due.js +45 -0
  349. package/daemon/dist/domain/watchdog-due.js.map +1 -0
  350. package/daemon/dist/domain/watchdog-scheduler.d.ts.map +1 -1
  351. package/daemon/dist/domain/watchdog-scheduler.js +3 -7
  352. package/daemon/dist/domain/watchdog-scheduler.js.map +1 -1
  353. package/daemon/dist/domain/workflow-projector.d.ts.map +1 -1
  354. package/daemon/dist/domain/workflow-projector.js +15 -5
  355. package/daemon/dist/domain/workflow-projector.js.map +1 -1
  356. package/daemon/dist/domain/workflow-runtime.js +1 -1
  357. package/daemon/dist/domain/workflow-runtime.js.map +1 -1
  358. package/daemon/dist/domain/workflow-step-trail-log.d.ts +6 -0
  359. package/daemon/dist/domain/workflow-step-trail-log.d.ts.map +1 -1
  360. package/daemon/dist/domain/workflow-step-trail-log.js +11 -0
  361. package/daemon/dist/domain/workflow-step-trail-log.js.map +1 -1
  362. package/daemon/dist/domain/workspace/project-catalog.js +1 -1
  363. package/daemon/dist/domain/workspace/project-catalog.js.map +1 -1
  364. package/daemon/dist/gateway-slack-surface.d.ts +1 -0
  365. package/daemon/dist/gateway-slack-surface.d.ts.map +1 -1
  366. package/daemon/dist/gateway-slack-surface.js +2 -1
  367. package/daemon/dist/gateway-slack-surface.js.map +1 -1
  368. package/daemon/dist/index.d.ts +1 -0
  369. package/daemon/dist/index.d.ts.map +1 -1
  370. package/daemon/dist/index.js +7 -7
  371. package/daemon/dist/index.js.map +1 -1
  372. package/daemon/dist/routes/agent-images.js +5 -5
  373. package/daemon/dist/routes/agent-images.js.map +1 -1
  374. package/daemon/dist/routes/bootstrap-failure-response.d.ts +13 -0
  375. package/daemon/dist/routes/bootstrap-failure-response.d.ts.map +1 -0
  376. package/daemon/dist/routes/bootstrap-failure-response.js +52 -0
  377. package/daemon/dist/routes/bootstrap-failure-response.js.map +1 -0
  378. package/daemon/dist/routes/bundles.d.ts.map +1 -1
  379. package/daemon/dist/routes/bundles.js +23 -36
  380. package/daemon/dist/routes/bundles.js.map +1 -1
  381. package/daemon/dist/routes/chat.d.ts.map +1 -1
  382. package/daemon/dist/routes/chat.js +16 -1
  383. package/daemon/dist/routes/chat.js.map +1 -1
  384. package/daemon/dist/routes/restore-check.d.ts.map +1 -1
  385. package/daemon/dist/routes/restore-check.js +2 -0
  386. package/daemon/dist/routes/restore-check.js.map +1 -1
  387. package/daemon/dist/routes/rigs.js +2 -2
  388. package/daemon/dist/routes/rigs.js.map +1 -1
  389. package/daemon/dist/routes/seat.js +13 -13
  390. package/daemon/dist/routes/seat.js.map +1 -1
  391. package/daemon/dist/routes/sessions.js +10 -10
  392. package/daemon/dist/routes/sessions.js.map +1 -1
  393. package/daemon/dist/routes/skills.d.ts.map +1 -1
  394. package/daemon/dist/routes/skills.js +15 -7
  395. package/daemon/dist/routes/skills.js.map +1 -1
  396. package/daemon/dist/routes/terminal-ws.js +15 -2
  397. package/daemon/dist/routes/terminal-ws.js.map +1 -1
  398. package/daemon/dist/routes/terminal.d.ts.map +1 -1
  399. package/daemon/dist/routes/terminal.js +6 -4
  400. package/daemon/dist/routes/terminal.js.map +1 -1
  401. package/daemon/dist/routes/up.d.ts.map +1 -1
  402. package/daemon/dist/routes/up.js +5 -56
  403. package/daemon/dist/routes/up.js.map +1 -1
  404. package/daemon/dist/startup.d.ts.map +1 -1
  405. package/daemon/dist/startup.js +32 -7
  406. package/daemon/dist/startup.js.map +1 -1
  407. package/daemon/dist/terminal/TerminalSessionBroker.d.ts.map +1 -1
  408. package/daemon/dist/terminal/TerminalSessionBroker.js +9 -1
  409. package/daemon/dist/terminal/TerminalSessionBroker.js.map +1 -1
  410. package/daemon/docs/reference/agent-spec.md +10 -10
  411. package/daemon/docs/reference/agent-startup-guide.md +7 -2
  412. package/daemon/docs/reference/bundle-formats.md +5 -3
  413. package/daemon/docs/reference/chain-file-convention.md +2 -2
  414. package/daemon/docs/reference/developing.md +1 -1
  415. package/daemon/docs/reference/edge-types.md +1 -1
  416. package/daemon/docs/reference/getting-started.md +356 -212
  417. package/daemon/docs/reference/help.md +48 -19
  418. package/daemon/docs/reference/non-interruptive-mode.md +7 -4
  419. package/daemon/docs/reference/project-workspace.md +2 -2
  420. package/daemon/docs/reference/publishing-a-rig-bundle.md +11 -8
  421. package/daemon/docs/reference/refocus-channel.md +14 -2
  422. package/daemon/docs/reference/rig-bundle.md +39 -19
  423. package/daemon/docs/reference/rig-spec.md +36 -11
  424. package/daemon/docs/reference/rosters.md +2 -1
  425. package/daemon/docs/reference/schemas/registry-entry.v1.schema.json +1 -1
  426. package/daemon/docs/reference/sdlc-conventions.md +4 -2
  427. package/daemon/docs/reference/slack-app-setup.md +65 -9
  428. package/daemon/docs/reference/whats-new.md +134 -0
  429. package/daemon/specs/agents/shared/skills/core/openrig-skills/SKILL.md +1 -1
  430. package/daemon/specs/agents/shared/skills/core/openrig-software-factory/SKILL.md +19 -12
  431. package/daemon/specs/agents/shared/skills/core/openrig-software-factory/references/worked-example.md +2 -2
  432. package/daemon/specs/agents/shared/skills/core/openrig-upgrade/SKILL.md +2 -0
  433. package/daemon/specs/rigs/launch/factory/guidance/lead-first-move.md +60 -0
  434. package/daemon/specs/rigs/launch/kernel/agents/operator/agent/guidance/role.md +105 -19
  435. package/daemon/specs/rigs/launch/kernel/culture/CULTURE.md +5 -2
  436. package/daemon/specs/rigs/launch/starter/guidance/lead-first-move.md +44 -0
  437. package/dist/build-info.js +3 -3
  438. package/dist/cli-error.d.ts.map +1 -1
  439. package/dist/cli-error.js +11 -3
  440. package/dist/cli-error.js.map +1 -1
  441. package/dist/client.d.ts +2 -0
  442. package/dist/client.d.ts.map +1 -1
  443. package/dist/client.js +2 -0
  444. package/dist/client.js.map +1 -1
  445. package/dist/commands/agent-image.js +2 -2
  446. package/dist/commands/agent-image.js.map +1 -1
  447. package/dist/commands/bundle.d.ts.map +1 -1
  448. package/dist/commands/bundle.js +5 -4
  449. package/dist/commands/bundle.js.map +1 -1
  450. package/dist/commands/chatroom.d.ts.map +1 -1
  451. package/dist/commands/chatroom.js +21 -1
  452. package/dist/commands/chatroom.js.map +1 -1
  453. package/dist/commands/context.d.ts.map +1 -1
  454. package/dist/commands/context.js +4 -2
  455. package/dist/commands/context.js.map +1 -1
  456. package/dist/commands/doctor.d.ts +3 -1
  457. package/dist/commands/doctor.d.ts.map +1 -1
  458. package/dist/commands/doctor.js +14 -7
  459. package/dist/commands/doctor.js.map +1 -1
  460. package/dist/commands/down.d.ts.map +1 -1
  461. package/dist/commands/down.js +42 -0
  462. package/dist/commands/down.js.map +1 -1
  463. package/dist/commands/gateway.d.ts.map +1 -1
  464. package/dist/commands/gateway.js +4 -3
  465. package/dist/commands/gateway.js.map +1 -1
  466. package/dist/commands/package.d.ts.map +1 -1
  467. package/dist/commands/package.js +6 -3
  468. package/dist/commands/package.js.map +1 -1
  469. package/dist/commands/policy.d.ts.map +1 -1
  470. package/dist/commands/policy.js +6 -5
  471. package/dist/commands/policy.js.map +1 -1
  472. package/dist/commands/queue.d.ts.map +1 -1
  473. package/dist/commands/queue.js +6 -3
  474. package/dist/commands/queue.js.map +1 -1
  475. package/dist/commands/restore-packet.d.ts.map +1 -1
  476. package/dist/commands/restore-packet.js +6 -4
  477. package/dist/commands/restore-packet.js.map +1 -1
  478. package/dist/commands/scope.js +5 -5
  479. package/dist/commands/scope.js.map +1 -1
  480. package/dist/commands/setup.d.ts +6 -15
  481. package/dist/commands/setup.d.ts.map +1 -1
  482. package/dist/commands/setup.js +121 -332
  483. package/dist/commands/setup.js.map +1 -1
  484. package/dist/commands/skill.d.ts.map +1 -1
  485. package/dist/commands/skill.js +6 -1
  486. package/dist/commands/skill.js.map +1 -1
  487. package/dist/commands/slack.d.ts +5 -1
  488. package/dist/commands/slack.d.ts.map +1 -1
  489. package/dist/commands/slack.js +143 -6
  490. package/dist/commands/slack.js.map +1 -1
  491. package/dist/commands/stream.js +1 -1
  492. package/dist/commands/stream.js.map +1 -1
  493. package/dist/commands/terminal.d.ts +33 -0
  494. package/dist/commands/terminal.d.ts.map +1 -1
  495. package/dist/commands/terminal.js +30 -12
  496. package/dist/commands/terminal.js.map +1 -1
  497. package/dist/commands/tui.js +4 -4
  498. package/dist/commands/tui.js.map +1 -1
  499. package/dist/commands/workflow-follow.d.ts +1 -1
  500. package/dist/commands/workflow-follow.d.ts.map +1 -1
  501. package/dist/commands/workflow-follow.js +4 -3
  502. package/dist/commands/workflow-follow.js.map +1 -1
  503. package/dist/commands/workflow.d.ts.map +1 -1
  504. package/dist/commands/workflow.js +30 -18
  505. package/dist/commands/workflow.js.map +1 -1
  506. package/dist/config-store.js +1 -1
  507. package/dist/config-store.js.map +1 -1
  508. package/dist/front-door.d.ts.map +1 -1
  509. package/dist/front-door.js +4 -2
  510. package/dist/front-door.js.map +1 -1
  511. package/dist/herdr-launch-config.d.ts +3 -0
  512. package/dist/herdr-launch-config.d.ts.map +1 -0
  513. package/dist/herdr-launch-config.js +37 -0
  514. package/dist/herdr-launch-config.js.map +1 -0
  515. package/dist/index.d.ts.map +1 -1
  516. package/dist/index.js +2 -1
  517. package/dist/index.js.map +1 -1
  518. package/dist/lib/bundle-source.d.ts +2 -0
  519. package/dist/lib/bundle-source.d.ts.map +1 -1
  520. package/dist/lib/bundle-source.js +12 -1
  521. package/dist/lib/bundle-source.js.map +1 -1
  522. package/dist/lib/context-git.d.ts +2 -0
  523. package/dist/lib/context-git.d.ts.map +1 -1
  524. package/dist/lib/context-git.js +55 -5
  525. package/dist/lib/context-git.js.map +1 -1
  526. package/dist/lib/scope/scope-fs.d.ts +3 -2
  527. package/dist/lib/scope/scope-fs.d.ts.map +1 -1
  528. package/dist/lib/scope/scope-fs.js +97 -9
  529. package/dist/lib/scope/scope-fs.js.map +1 -1
  530. package/dist/lib/scope/templates.d.ts.map +1 -1
  531. package/dist/lib/scope/templates.js +28 -24
  532. package/dist/lib/scope/templates.js.map +1 -1
  533. package/dist/provider-auth.d.ts +32 -0
  534. package/dist/provider-auth.d.ts.map +1 -0
  535. package/dist/provider-auth.js +128 -0
  536. package/dist/provider-auth.js.map +1 -0
  537. package/dist/terminal-window.d.ts +19 -0
  538. package/dist/terminal-window.d.ts.map +1 -0
  539. package/dist/terminal-window.js +513 -0
  540. package/dist/terminal-window.js.map +1 -0
  541. package/package.json +1 -1
  542. package/tui/dist/commands/registry.js +1 -1
  543. package/tui/dist/commands/registry.js.map +1 -1
  544. package/tui/dist/config/config-model.d.ts.map +1 -1
  545. package/tui/dist/config/config-model.js +1 -0
  546. package/tui/dist/config/config-model.js.map +1 -1
  547. package/tui/dist/connections/connections-model.d.ts +5 -0
  548. package/tui/dist/connections/connections-model.d.ts.map +1 -1
  549. package/tui/dist/connections/connections-model.js +1 -1
  550. package/tui/dist/connections/connections-model.js.map +1 -1
  551. package/tui/dist/daemon-client.d.ts +5 -0
  552. package/tui/dist/daemon-client.d.ts.map +1 -1
  553. package/tui/dist/daemon-client.js.map +1 -1
  554. package/tui/dist/execution/workflow-model.d.ts.map +1 -1
  555. package/tui/dist/execution/workflow-model.js +3 -1
  556. package/tui/dist/execution/workflow-model.js.map +1 -1
  557. package/tui/dist/hydrate.d.ts +1 -1
  558. package/tui/dist/hydrate.d.ts.map +1 -1
  559. package/tui/dist/hydrate.js +3 -1
  560. package/tui/dist/hydrate.js.map +1 -1
  561. package/tui/dist/main.js +23 -11
  562. package/tui/dist/main.js.map +1 -1
  563. package/tui/dist/page-read.js +1 -1
  564. package/tui/dist/page-read.js.map +1 -1
  565. package/tui/dist/pending-address.d.ts +7 -0
  566. package/tui/dist/pending-address.d.ts.map +1 -0
  567. package/tui/dist/pending-address.js +11 -0
  568. package/tui/dist/pending-address.js.map +1 -0
  569. package/tui/dist/render.d.ts.map +1 -1
  570. package/tui/dist/render.js +9 -5
  571. package/tui/dist/render.js.map +1 -1
  572. package/tui/dist/socket-server.d.ts +3 -1
  573. package/tui/dist/socket-server.d.ts.map +1 -1
  574. package/tui/dist/socket-server.js +6 -0
  575. package/tui/dist/socket-server.js.map +1 -1
  576. package/tui/dist/state.d.ts.map +1 -1
  577. package/tui/dist/state.js +40 -13
  578. package/tui/dist/state.js.map +1 -1
  579. package/tui/dist/stylize.js +1 -1
  580. package/tui/dist/stylize.js.map +1 -1
  581. package/tui/dist/terminals/open-window.d.ts +5 -0
  582. package/tui/dist/terminals/open-window.d.ts.map +1 -0
  583. package/tui/dist/terminals/open-window.js +55 -0
  584. package/tui/dist/terminals/open-window.js.map +1 -0
  585. package/tui/dist/terminals/terminal-model.d.ts.map +1 -1
  586. package/tui/dist/terminals/terminal-model.js +16 -17
  587. package/tui/dist/terminals/terminal-model.js.map +1 -1
  588. package/tui/dist/types.d.ts +15 -0
  589. package/tui/dist/types.d.ts.map +1 -1
  590. package/ui/dist/assets/{index-HHSvwF97.js → index-D5n8EwkG.js} +1 -1
  591. package/ui/dist/index.html +1 -1
@@ -28,6 +28,7 @@ import { InboundRouter } from "./inbound.js";
28
28
  import { makeInboundSenderResolver } from "./inbound-admission.js";
29
29
  import { ThreadSeatMap, formatPostedStamp } from "./thread-seat-map.js";
30
30
  import { makeThreadRouteResolver } from "./thread-routing.js";
31
+ import { resolveOutboundChannel, unsupportedChannelMapFields } from "./channel-map.js";
31
32
  import { startSocketInbound } from "./socket-inbound.js";
32
33
  import { loadHumanRegistry, resolveSlackHandle } from "../human-registry.js";
33
34
  import { hasLiveHumanGate } from "../../queue-repository.js";
@@ -164,6 +165,9 @@ function stateDir(home) {
164
165
  export function buildSlackGatewayWire(opts) {
165
166
  const log = opts.log ?? (() => { });
166
167
  const cfg = loadConfig(opts.home);
168
+ const ignored = unsupportedChannelMapFields(cfg);
169
+ if (ignored.length)
170
+ log(`slack channel map: IGNORING unsupported field(s) ${ignored.join(", ")} (written by a newer OpenRig?); \`rig slack status\` names them`);
167
171
  const envFile = cfg.secretsEnvFile ?? undefined;
168
172
  const bot = resolveSecret(SECRET_BOT, { envFile });
169
173
  const app = resolveSecret(SECRET_APP, { envFile });
@@ -216,12 +220,48 @@ export function buildSlackGatewayWire(opts) {
216
220
  const attempted = new SeenStore(path.join(stateDir(opts.home), "slack-attempted-decisions.jsonl"));
217
221
  // S10 thread routing — the map shares the daemon DB (queue rows carry the rebuild stamps).
218
222
  const threadMap = new ThreadSeatMap(opts.queueRepo.db);
223
+ // #192 — the channel a payload posts to: its seat's (or rig's) mapped channel, else the
224
+ // default. The seat is the row's agent side (queue-access projects it into sourceSession for
225
+ // requests, blocked items and resolved decisions alike); an aggregate digest has none and
226
+ // posts to the default. Only called when outbound is ready, so the default is set.
227
+ const channelFor = (p) => resolveOutboundChannel(cfg, p.sourceSession) ?? cfg.channel;
219
228
  // OPR.0.5.6.14 — a failed post writes the transport-failed ledger transition so the
220
229
  // undelivered surface (and --verify) can name the gateway's error instead of guessing
221
230
  // from nudge telemetry. One receipt per episode.
222
- const recordTransportFailed = (p, failureClass, detail) => {
231
+ // #897 — an ask that can't be rendered fails the same way on every retry, so the person never
232
+ // sees it. Tell the seat that asked, once: the notice's id derives from the ask's, so a replay
233
+ // returns the same row instead of a second one.
234
+ // A retry that can't post the rest of an ask some of which may already be in Slack says so.
235
+ const notifySourceUndeliverable = (p, detail, partlyPosted = false) => {
236
+ const seat = p.sourceSession;
237
+ if (!p.qitemId || !seat)
238
+ return;
239
+ const human = p.destinationSession ?? "the person";
240
+ opts.queueRepo.create({
241
+ qitemId: `${p.qitemId}-undeliverable`,
242
+ sourceSession: seat,
243
+ destinationSession: seat,
244
+ summary: `Not delivered to ${human}: ${p.summary ?? p.qitemId}`,
245
+ body: [
246
+ partlyPosted
247
+ ? `Part of your ask ${p.qitemId} may already be in Slack, but OpenRig could not post the rest, so ${human} has not seen all of it.`
248
+ : `OpenRig could not post your ask ${p.qitemId} to Slack, so ${human} has not seen it.`,
249
+ "",
250
+ `Reason: ${detail}`,
251
+ "",
252
+ partlyPosted
253
+ ? "Check the thread in Slack and send what's missing as a new ask. The original row stays open until you close it."
254
+ : "Shorten it and send it as a new ask. The original row stays open until you close it.",
255
+ ].join("\n"),
256
+ evidenceRef: `rig queue show ${p.qitemId}`,
257
+ tags: ["slack-undeliverable"],
258
+ }).catch((e) => log(`undeliverable notice FAILED for ${p.qitemId}: ${e.message}`));
259
+ };
260
+ const recordTransportFailed = (p, failureClass, detail, partlyPosted) => {
223
261
  if (!p.qitemId)
224
262
  return;
263
+ if (failureClass === "human-message-unrenderable")
264
+ notifySourceUndeliverable(p, detail, partlyPosted);
225
265
  const key = p.notificationKey ?? p.qitemId;
226
266
  const alreadyRecorded = opts.queueRepo.transitionLog.listForQitem(p.qitemId).some((transition) => transition.transitionNote?.startsWith("slack-owner-notification-transport-failed ")
227
267
  && transition.transitionNote.split(/\s+/).includes(`notification_key=${key}`));
@@ -241,7 +281,7 @@ export function buildSlackGatewayWire(opts) {
241
281
  // #96 — where a replyTo update posts. Walks back through earlier threaded updates (which
242
282
  // open no root of their own) to the item that owns the root.
243
283
  const MAX_REPLY_TO_CHAIN = 32;
244
- const deriveReplyToChoice = (p) => {
284
+ const deriveReplyToChoice = (p, channel) => {
245
285
  let item = p.replyTo ? opts.queueRepo.getById(p.replyTo) : null;
246
286
  for (let depth = 0; item && depth < MAX_REPLY_TO_CHAIN; depth++) {
247
287
  if (hasLiveHumanGate(item))
@@ -250,7 +290,7 @@ export function buildSlackGatewayWire(opts) {
250
290
  if (root) {
251
291
  if (root.state === "closed")
252
292
  return { kind: "fallback", reason: "root-closed", threadTs: root.threadTs };
253
- if (root.channel !== cfg.channel)
293
+ if (root.channel !== channel)
254
294
  return { kind: "fallback", reason: "root-other-channel", threadTs: root.threadTs };
255
295
  if (root.human !== (p.destinationSession ?? ""))
256
296
  return { kind: "fallback", reason: "root-other-human", threadTs: root.threadTs };
@@ -271,11 +311,14 @@ export function buildSlackGatewayWire(opts) {
271
311
  // reports what happened. If the record cannot be written, nothing posts: the delivery is
272
312
  // retained for replay and a transport-failed receipt names why, so --verify does not just
273
313
  // time out.
274
- const chooseReplyToThread = (p) => {
314
+ // #192: with a channel map the record also names the channel the choice was made for, and every
315
+ // retry posts there (resolveChannel below), so a remap never pairs a new channel with an old root.
316
+ const chooseReplyToThread = (p, channel) => {
275
317
  const recorded = opts.queueRepo.replyToChoiceFor(p.qitemId);
276
318
  if (recorded)
277
319
  return recorded;
278
- const choice = deriveReplyToChoice(p);
320
+ const derived = deriveReplyToChoice(p, channel);
321
+ const choice = cfg.channelMap?.length ? { ...derived, channel } : derived;
279
322
  try {
280
323
  opts.queueRepo.update({ qitemId: p.qitemId, actorSession: REPLY_TO_CHOICE_ACTOR, transitionNote: formatReplyToChoice(choice) });
281
324
  }
@@ -297,6 +340,15 @@ export function buildSlackGatewayWire(opts) {
297
340
  ? subsystemSlackDeliver({
298
341
  botToken: bot,
299
342
  channel: cfg.channel,
343
+ // #192: a reply-to update whose choice is already recorded posts in that choice's channel:
344
+ // the one it names, or, for a choice recorded without one (before any map existed), the
345
+ // default channel it was made for. Otherwise the map. (The delivery layer first reuses the
346
+ // channel of this post's first attempt.) With no map every branch is the default channel.
347
+ resolveChannel: (p) => {
348
+ const recorded = p.replyTo ? opts.queueRepo.replyToChoiceFor(p.qitemId) : null;
349
+ return recorded ? recorded.channel ?? cfg.channel : channelFor(p);
350
+ },
351
+ pinChannel: Boolean(cfg.channelMap?.length),
300
352
  sourceLabel: cfg.sourceLabel,
301
353
  fetchImpl: opts.fetchImpl,
302
354
  delivered,
@@ -308,9 +360,9 @@ export function buildSlackGatewayWire(opts) {
308
360
  // would make an inbound reply ambiguous and could resume the wrong human gate.
309
361
  // Re-delivery/new notification episodes for one qitem still reuse its exact root.
310
362
  // #96: an update may name an earlier qitem's root; the guard lives in deriveReplyToChoice.
311
- resolveThreadTs: (p) => {
363
+ resolveThreadTs: (p, channel) => {
312
364
  if (p.replyTo) {
313
- const choice = chooseReplyToThread(p);
365
+ const choice = chooseReplyToThread(p, channel);
314
366
  if (choice.kind === "thread")
315
367
  return choice.threadTs;
316
368
  }
@@ -319,6 +371,12 @@ export function buildSlackGatewayWire(opts) {
319
371
  // root instead, so the decision never lands in a thread a reader took as FYI-only.
320
372
  if (own && !p.replyTo && opts.queueRepo.isReplyToThread(own.threadTs))
321
373
  return undefined;
374
+ // #192: with a channel map, a root in another channel than this attempt's (the seat was
375
+ // remapped since this item's root was posted) cannot carry this post, so a fresh root
376
+ // opens in this attempt's channel. Without a map the root is reused as it always was,
377
+ // whatever channel it was posted in.
378
+ if (own && cfg.channelMap?.length && own.channel !== channel)
379
+ return undefined;
322
380
  return own?.threadTs;
323
381
  },
324
382
  // S14: posting and interruption are separate threshold dials over one vocabulary.
@@ -354,16 +412,16 @@ export function buildSlackGatewayWire(opts) {
354
412
  }
355
413
  return undefined;
356
414
  },
357
- onPostedRoot: (p, ts) => {
415
+ onPostedRoot: (p, ts, channel) => {
358
416
  const human = p.destinationSession ?? "";
359
417
  const seat = p.sourceSession ?? "";
360
- threadMap.open({ threadTs: ts, channel: cfg.channel, human, seat, conversationId: p.qitemId });
418
+ threadMap.open({ threadTs: ts, channel, human, seat, conversationId: p.qitemId });
361
419
  // The REBUILD stamp: the queue row is the durable source the map re-derives from.
362
420
  try {
363
421
  opts.queueRepo.update({
364
422
  qitemId: p.qitemId,
365
423
  actorSession: "daemon@kernel",
366
- transitionNote: formatPostedStamp({ threadTs: ts, messageTs: ts, channel: cfg.channel, human, seat, conversationId: p.qitemId }),
424
+ transitionNote: formatPostedStamp({ threadTs: ts, messageTs: ts, channel, human, seat, conversationId: p.qitemId }),
367
425
  });
368
426
  }
369
427
  catch (e) {
@@ -371,6 +429,28 @@ export function buildSlackGatewayWire(opts) {
371
429
  log(`thread stamp failed for ${p.qitemId}: ${e.message}`);
372
430
  }
373
431
  },
432
+ // #899 — a message posted into a thread for an ask maps to that ask and its seat (the thread's root
433
+ // may be another ask's), so a reaction on it reaches the seat that asked. A digest speaks for many
434
+ // rows and has no single asking seat, so it isn't mapped.
435
+ // #192: a part is recorded in the channel it was posted to, so a reaction on it in a mapped
436
+ // channel finds its ask (thread_part_map is keyed by channel and message).
437
+ onPostedPart: (p, messageTs, threadTs, channel) => {
438
+ const seat = p.sourceSession ?? "";
439
+ if (!p.qitemId || !seat || p.deliveryDigestPost)
440
+ return;
441
+ const human = p.destinationSession ?? "";
442
+ threadMap.recordPart({ messageTs, channel, threadTs, seat, conversationId: p.qitemId });
443
+ try {
444
+ opts.queueRepo.update({
445
+ qitemId: p.qitemId,
446
+ actorSession: "daemon@kernel",
447
+ transitionNote: formatPostedStamp({ threadTs, messageTs, channel, human, seat, conversationId: p.qitemId }),
448
+ });
449
+ }
450
+ catch (e) {
451
+ log(`reply stamp failed for ${p.qitemId}: ${e.message}`);
452
+ }
453
+ },
374
454
  onTransportFailed: recordTransportFailed,
375
455
  onPosted: (p, messageTs, threadTs) => {
376
456
  // v3 digest branch: transport truth first — every member receipt is
@@ -1 +1 @@
1
- {"version":3,"file":"slack-subsystem.js","sourceRoot":"","sources":["../../../../src/domain/gateway/slack/slack-subsystem.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slack-subsystem.js","sourceRoot":"","sources":["../../../../src/domain/gateway/slack/slack-subsystem.ts"],"names":[],"mappings":"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"}
@@ -19,6 +19,8 @@ export interface SocketInboundDeps {
19
19
  inboundMaxConnects?: number;
20
20
  /** Dead-letter retry cadence WHILE the socket stays connected (default 5min). */
21
21
  retryIntervalMs?: number;
22
+ /** How long a new socket may stay opening before it is abandoned and retried (default 30s). */
23
+ openTimeoutMs?: number;
22
24
  receipts?: InboundReceiptStore;
23
25
  recovery?: {
24
26
  run(): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"socket-inbound.d.ts","sourceRoot":"","sources":["../../../../src/domain/gateway/slack/socket-inbound.ts"],"names":[],"mappings":"AAWA,OAAO,EAAwB,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAkB,KAAK,aAAa,EAAuB,MAAM,cAAc,CAAC;AACvF,OAAO,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAElF,MAAM,WAAW,MAAM;IACrB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,IAAI,IAAI,CAAC;IACd,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;IACvD,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;QAAE,IAAI,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;IACnE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;IACxD,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;CACzD;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,sFAAsF;IACtF,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IACpC,oFAAoF;IACpF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iFAAiF;IACjF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B,QAAQ,CAAC,EAAE;QAAE,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;QAAC,IAAI,IAAI,IAAI,CAAA;KAAE,CAAC;IAClD,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,mBAAmB;IAClC,0EAA0E;IAC1E,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACpB,IAAI,IAAI,IAAI,CAAC;IACb,MAAM,IAAI,mBAAmB,CAAC;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,YAAY,GAAG,WAAW,GAAG,cAAc,GAAG,SAAS,CAAC;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,oBAAoB,CAAC;CACxC;AAED,kGAAkG;AAClG,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,GAAE,iBAAsB,GAAG,mBAAmB,CAwJ7H"}
1
+ {"version":3,"file":"socket-inbound.d.ts","sourceRoot":"","sources":["../../../../src/domain/gateway/slack/socket-inbound.ts"],"names":[],"mappings":"AAWA,OAAO,EAAwB,KAAK,SAAS,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAkB,KAAK,aAAa,EAAuB,MAAM,cAAc,CAAC;AACvF,OAAO,KAAK,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAElF,MAAM,WAAW,MAAM;IACrB,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,KAAK,IAAI,IAAI,CAAC;IACd,MAAM,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;IACvD,SAAS,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE;QAAE,IAAI,EAAE,OAAO,CAAA;KAAE,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;IACnE,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;IACxD,OAAO,EAAE,CAAC,CAAC,IAAI,EAAE,OAAO,EAAE,EAAE,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;CACzD;AAED,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,sFAAsF;IACtF,SAAS,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,CAAC;IACpC,oFAAoF;IACpF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,iFAAiF;IACjF,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,+FAA+F;IAC/F,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,mBAAmB,CAAC;IAC/B,QAAQ,CAAC,EAAE;QAAE,GAAG,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;QAAC,IAAI,IAAI,IAAI,CAAA;KAAE,CAAC;IAClD,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7B;AAED,MAAM,WAAW,mBAAmB;IAClC,0EAA0E;IAC1E,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACpB,IAAI,IAAI,IAAI,CAAC;IACb,MAAM,IAAI,mBAAmB,CAAC;CAC/B;AAED,MAAM,WAAW,mBAAmB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,EAAE,YAAY,GAAG,WAAW,GAAG,cAAc,GAAG,SAAS,CAAC;IAC/D,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,oBAAoB,CAAC;CACxC;AAED,kGAAkG;AAClG,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,GAAE,iBAAsB,GAAG,mBAAmB,CA2L7H"}
@@ -15,11 +15,13 @@ export function startSocketInbound(appToken, router, deps = {}) {
15
15
  const log = deps.log ?? (() => { });
16
16
  const wsFactory = deps.wsFactory ?? ((url) => new globalThis.WebSocket(url));
17
17
  const retryIntervalMs = deps.retryIntervalMs ?? 5 * 60 * 1000;
18
+ const openTimeoutMs = deps.openTimeoutMs ?? 30_000;
18
19
  let connects = 0;
19
20
  let backoff = 1000;
20
21
  let stopped = false;
21
22
  let liveWs;
22
23
  let pendingTimer;
24
+ let openTimer;
23
25
  let retryTimer;
24
26
  let finish = () => { };
25
27
  const status = { generation: 0, reconnects: 0, state: "disconnected" };
@@ -67,7 +69,39 @@ export function startSocketInbound(appToken, router, deps = {}) {
67
69
  }
68
70
  const ws = wsFactory(open.url);
69
71
  liveWs = ws;
72
+ // Until the socket opens, onclose cannot be relied on to drive the reconnect: Node's
73
+ // WebSocket (undici 6) fires onerror but never onclose when the handshake fails
74
+ // (refused, reset, or its own 300s headers timeout), and an upgrade that is never
75
+ // answered fires nothing at all. Either way the loop would stay "connecting" forever.
76
+ // So a failure or timeout before onopen detaches the socket and schedules the retry here.
77
+ let opened = false;
78
+ const abandon = (reason) => {
79
+ clearTimeout(openTimer);
80
+ openTimer = undefined;
81
+ if (stopped)
82
+ return;
83
+ ws.onopen = ws.onmessage = ws.onclose = ws.onerror = null;
84
+ try {
85
+ ws.close();
86
+ }
87
+ catch {
88
+ /* ignore */
89
+ }
90
+ liveWs = undefined;
91
+ log(`socket did not open (${reason}); reconnect in ${backoff}ms`);
92
+ status.state = "disconnected";
93
+ status.disconnectedAt = stamp();
94
+ receipt({ generation: connects, status: "connect-failed", reason });
95
+ if (deps.inboundMaxConnects && connects >= deps.inboundMaxConnects)
96
+ return resolve();
97
+ pendingTimer = setTimeout(connect, backoff);
98
+ backoff = Math.min(backoff * 2, 60000);
99
+ };
100
+ openTimer = setTimeout(() => abandon("socket-open-timeout"), openTimeoutMs);
70
101
  ws.onopen = () => {
102
+ opened = true;
103
+ clearTimeout(openTimer);
104
+ openTimer = undefined;
71
105
  if (stopped)
72
106
  return;
73
107
  backoff = 1000;
@@ -128,6 +162,8 @@ export function startSocketInbound(appToken, router, deps = {}) {
128
162
  });
129
163
  };
130
164
  ws.onclose = () => {
165
+ clearTimeout(openTimer);
166
+ openTimer = undefined;
131
167
  if (retryTimer)
132
168
  clearInterval(retryTimer);
133
169
  liveWs = undefined;
@@ -143,6 +179,8 @@ export function startSocketInbound(appToken, router, deps = {}) {
143
179
  backoff = Math.min(backoff * 2, 60000);
144
180
  };
145
181
  ws.onerror = () => {
182
+ if (!opened)
183
+ return abandon("socket-open-error");
146
184
  try {
147
185
  ws.close();
148
186
  }
@@ -163,6 +201,8 @@ export function startSocketInbound(appToken, router, deps = {}) {
163
201
  status.state = "stopped";
164
202
  if (pendingTimer)
165
203
  clearTimeout(pendingTimer);
204
+ if (openTimer)
205
+ clearTimeout(openTimer);
166
206
  try {
167
207
  liveWs?.close();
168
208
  }
@@ -1 +1 @@
1
- {"version":3,"file":"socket-inbound.js","sourceRoot":"","sources":["../../../../src/domain/gateway/slack/socket-inbound.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"socket-inbound.js","sourceRoot":"","sources":["../../../../src/domain/gateway/slack/socket-inbound.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"thread-routing.d.ts","sourceRoot":"","sources":["../../../../src/domain/gateway/slack/thread-routing.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,qFAAqF;IACrF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kFAAkF;IAClF,UAAU,EAAE,iBAAiB,GAAG,eAAe,GAAG,iBAAiB,GAAG,iBAAiB,CAAC;CACzF;AAID,wBAAgB,uBAAuB,CAAC,IAAI,EAAE;IAC5C,GAAG,EAAE,aAAa,CAAC;IACnB,2FAA2F;IAC3F,mBAAmB,EAAE,MAAM,CAAC;IAC5B,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7B,GAAG,CAAC,EAAE,EAAE,UAAU,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,KAAK,YAAY,CA+B5D"}
1
+ {"version":3,"file":"thread-routing.d.ts","sourceRoot":"","sources":["../../../../src/domain/gateway/slack/thread-routing.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAE1D,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,qFAAqF;IACrF,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kFAAkF;IAClF,UAAU,EAAE,iBAAiB,GAAG,eAAe,GAAG,iBAAiB,GAAG,iBAAiB,CAAC;CACzF;AAID,wBAAgB,uBAAuB,CAAC,IAAI,EAAE;IAC5C,GAAG,EAAE,aAAa,CAAC;IACnB,2FAA2F;IAC3F,mBAAmB,EAAE,MAAM,CAAC;IAC5B,GAAG,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7B,GAAG,CAAC,EAAE,EAAE,UAAU,GAAG;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,KAAK,YAAY,CAkD5D"}
@@ -16,7 +16,25 @@ export function makeThreadRouteResolver(opts) {
16
16
  const threadTs = ev.thread_ts;
17
17
  if (threadTs) {
18
18
  const mapping = opts.map.resolveByThread(threadTs);
19
- if (mapping) {
19
+ // #899 — a reaction names its message by channel and timestamp, and a timestamp is unique only
20
+ // within a channel, so a reaction on another channel's message is not on this ask.
21
+ const sameMessage = ev.type !== "reaction_added" || mapping?.channel === ev.channel;
22
+ if (ev.type === "reaction_added" && !(mapping && sameMessage)) {
23
+ // #899 — a reaction on a message OpenRig posted into a thread for an ask (a long ask's reply
24
+ // part, a later notification, an ask posted into another thread) reaches that ask's own seat.
25
+ // A person's reply in the thread was not posted by OpenRig, so a reaction on it stays ignored.
26
+ const part = opts.map.partOf(threadTs, ev.channel ?? "");
27
+ if (part) {
28
+ log(`inbound reaction on ts=${threadTs} (posted for ${part.conversationId}) -> ${part.seat}`);
29
+ return {
30
+ destination: part.seat,
31
+ tags: [...BASE_TAGS, "thread", `reply-to:${part.conversationId}`],
32
+ correlationQitemId: part.conversationId,
33
+ routeClass: "existing-thread",
34
+ };
35
+ }
36
+ }
37
+ if (mapping && sameMessage) {
20
38
  // FOUNDER ROOT INVARIANT (2026-08-27): the map stores the bare local seat because the
21
39
  // queue row's source_session is bare inside one instance — the seat routes as stored.
22
40
  // (The interim self-host localizer from the L2 first pass was deleted with the root
@@ -35,7 +53,9 @@ export function makeThreadRouteResolver(opts) {
35
53
  routeClass,
36
54
  };
37
55
  }
38
- log(`inbound UNMAPPED thread_ts=${threadTs} -> unrouted-signal to ${opts.unroutedDestination} (never dropped, never guessed)`);
56
+ // #899 — a reaction on a message that isn't an ask is ignored by its caller, not sent here.
57
+ if (ev.type !== "reaction_added")
58
+ log(`inbound UNMAPPED thread_ts=${threadTs} -> unrouted-signal to ${opts.unroutedDestination} (never dropped, never guessed)`);
39
59
  return { destination: opts.unroutedDestination, tags: [...BASE_TAGS, "unrouted-signal"], routeClass: "unmapped-thread" };
40
60
  }
41
61
  log(`inbound human-initiated (no thread_ts) -> unrouted-signal to ${opts.unroutedDestination}`);
@@ -1 +1 @@
1
- {"version":3,"file":"thread-routing.js","sourceRoot":"","sources":["../../../../src/domain/gateway/slack/thread-routing.ts"],"names":[],"mappings":"AAAA,2FAA2F;AAC3F,yDAAyD;AACzD,2FAA2F;AAC3F,8FAA8F;AAC9F,kGAAkG;AAClG,4FAA4F;AAC5F,gFAAgF;AAChF,8FAA8F;AAC9F,4FAA4F;AAC5F,4FAA4F;AAC5F,uEAAuE;AAcvE,MAAM,SAAS,GAAG,CAAC,eAAe,EAAE,SAAS,CAAC,CAAC;AAE/C,MAAM,UAAU,uBAAuB,CAAC,IAKvC;IACC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;IACnC,OAAO,CAAC,EAAE,EAAE,EAAE;QACZ,MAAM,QAAQ,GAAI,EAA6B,CAAC,SAAS,CAAC;QAC1D,IAAI,QAAQ,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,eAAe,CAAC,QAAQ,CAAC,CAAC;YACnD,IAAI,OAAO,EAAE,CAAC;gBACZ,sFAAsF;gBACtF,sFAAsF;gBACtF,oFAAoF;gBACpF,kFAAkF;gBAClF,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,iBAAiB,CAAC;gBACpF,2FAA2F;gBAC3F,uFAAuF;gBACvF,4EAA4E;gBAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,qBAAqB,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;gBACtE,MAAM,OAAO,GAAG,CAAC,MAAM,IAAI,MAAM,CAAC,QAAQ,KAAK,QAAQ,CAAC;gBACxD,GAAG,CAAC,4BAA4B,QAAQ,OAAO,OAAO,CAAC,IAAI,KAAK,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,wCAAwC,GAAG,CAAC,CAAC;gBACzI,OAAO;oBACL,WAAW,EAAE,OAAO,CAAC,IAAI;oBACzB,IAAI,EAAE,CAAC,GAAG,SAAS,EAAE,QAAQ,EAAE,YAAY,OAAO,CAAC,cAAc,EAAE,CAAC;oBACpE,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,kBAAkB,EAAE,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClE,UAAU;iBACX,CAAC;YACJ,CAAC;YACD,GAAG,CAAC,8BAA8B,QAAQ,0BAA0B,IAAI,CAAC,mBAAmB,iCAAiC,CAAC,CAAC;YAC/H,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,mBAAmB,EAAE,IAAI,EAAE,CAAC,GAAG,SAAS,EAAE,iBAAiB,CAAC,EAAE,UAAU,EAAE,iBAAiB,EAAE,CAAC;QAC3H,CAAC;QACD,GAAG,CAAC,gEAAgE,IAAI,CAAC,mBAAmB,EAAE,CAAC,CAAC;QAChG,OAAO,EAAE,WAAW,EAAE,IAAI,CAAC,mBAAmB,EAAE,IAAI,EAAE,CAAC,GAAG,SAAS,EAAE,iBAAiB,CAAC,EAAE,UAAU,EAAE,iBAAiB,EAAE,CAAC;IAC3H,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"thread-routing.js","sourceRoot":"","sources":["../../../../src/domain/gateway/slack/thread-routing.ts"],"names":[],"mappings":"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"}
@@ -52,6 +52,20 @@ export declare class ThreadSeatMap {
52
52
  /** #96: the root a conversation opened, open OR closed (the caller decides whether a
53
53
  * closed root may be reused), newest first; null = the conversation never posted a root. */
54
54
  resolveByConversation(conversationId: string): ThreadMapping | null;
55
+ /** #899 — record a message OpenRig posted into a thread for an ask, with that ask and its seat (idempotent). */
56
+ recordPart(m: {
57
+ messageTs: string;
58
+ channel: string;
59
+ threadTs: string;
60
+ seat: string;
61
+ conversationId: string;
62
+ }): void;
63
+ /** #899 — the ask and seat of a message OpenRig posted into a thread in this channel; null for any other message. */
64
+ partOf(messageTs: string, channel: string): {
65
+ threadTs: string;
66
+ seat: string;
67
+ conversationId: string;
68
+ } | null;
55
69
  close(threadTs: string): void;
56
70
  /** Rebuild the table from queue-row stamps (the durable source): INSERT-only, never
57
71
  * overwriting a live row — the map converges toward the stamps without destroying state. */
@@ -1 +1 @@
1
- {"version":3,"file":"thread-seat-map.d.ts","sourceRoot":"","sources":["../../../../src/domain/gateway/slack/thread-seat-map.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAO3C,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,eAAO,MAAM,yBAAyB,iBAAiB,CAAC;AAExD,oFAAoF;AACpF,wBAAgB,iBAAiB,CAAC,CAAC,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAE1J;AAED,4FAA4F;AAC5F,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAenK;AAED,qBAAa,aAAa;IAEtB,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,GAAG;gBADH,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,GAAG,GAAE,MAAM,IAAuB;IAGrD,0FAA0F;IAC1F,IAAI,CAAC,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAUzG;mGAC+F;IAC/F,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAOvD,oFAAoF;IACpF,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAOrE;;kFAE8E;IAC9E,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAWrG;iGAC6F;IAC7F,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAOnE,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAM7B;iGAC6F;IAC7F,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;CAa3E"}
1
+ {"version":3,"file":"thread-seat-map.d.ts","sourceRoot":"","sources":["../../../../src/domain/gateway/slack/thread-seat-map.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,QAAQ,MAAM,gBAAgB,CAAC;AAO3C,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,EAAE,MAAM,GAAG,QAAQ,CAAC;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B;AAED,eAAO,MAAM,yBAAyB,iBAAiB,CAAC;AAExD,oFAAoF;AACpF,wBAAgB,iBAAiB,CAAC,CAAC,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAE1J;AAED,4FAA4F;AAC5F,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,cAAc,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAenK;AAED,qBAAa,aAAa;IAEtB,OAAO,CAAC,QAAQ,CAAC,EAAE;IACnB,OAAO,CAAC,QAAQ,CAAC,GAAG;gBADH,EAAE,EAAE,QAAQ,CAAC,QAAQ,EACrB,GAAG,GAAE,MAAM,IAAuB;IAGrD,0FAA0F;IAC1F,IAAI,CAAC,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAUzG;mGAC+F;IAC/F,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAOvD,oFAAoF;IACpF,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAOrE;;kFAE8E;IAC9E,0BAA0B,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAWrG;iGAC6F;IAC7F,qBAAqB,CAAC,cAAc,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAOnE,gHAAgH;IAChH,UAAU,CAAC,CAAC,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAOnH,qHAAqH;IACrH,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI;IAM7G,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAM7B;iGAC6F;IAC7F,iBAAiB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE;CAoB3E"}
@@ -8,6 +8,10 @@
8
8
  // (`slack-posted thread_ts=… message_ts=… channel=… human=… seat=…` — see stampFormat/parse
9
9
  // below). rebuildFromStamps() re-derives the table from those stamps, so the map is a cache of
10
10
  // queue-row truth, not a second source that can silently diverge.
11
+ //
12
+ // #899 — every message OpenRig posts into a thread for an ask lives in thread_part_map with its own
13
+ // ask and seat (the thread's root may belong to another ask), so a reaction on it can find its ask. Its
14
+ // stamp names its own message_ts and the thread's thread_ts; the root queries below never see these.
11
15
  // Newest root = Slack's own post time (thread_ts), never opened_at: a rebuild re-stamps
12
16
  // opened_at with rebuild time, so an older root re-read later would look newer, and roots
13
17
  // rebuilt in one burst tie. thread_ts is unique, so the text tie-break settles equal floats.
@@ -84,6 +88,19 @@ export class ThreadSeatMap {
84
88
  .get(conversationId);
85
89
  return row ? project(row) : null;
86
90
  }
91
+ /** #899 — record a message OpenRig posted into a thread for an ask, with that ask and its seat (idempotent). */
92
+ recordPart(m) {
93
+ this.db
94
+ .prepare(`INSERT INTO thread_part_map (message_ts, channel, thread_ts, seat, conversation_id) VALUES (?, ?, ?, ?, ?)
95
+ ON CONFLICT(channel, message_ts) DO NOTHING`)
96
+ .run(m.messageTs, m.channel, m.threadTs, m.seat, m.conversationId);
97
+ }
98
+ /** #899 — the ask and seat of a message OpenRig posted into a thread in this channel; null for any other message. */
99
+ partOf(messageTs, channel) {
100
+ const row = this.db.prepare(`SELECT thread_ts, seat, conversation_id FROM thread_part_map WHERE message_ts = ? AND channel = ?`)
101
+ .get(messageTs, channel);
102
+ return row ? { threadTs: row.thread_ts, seat: row.seat, conversationId: row.conversation_id } : null;
103
+ }
87
104
  close(threadTs) {
88
105
  this.db
89
106
  .prepare(`UPDATE thread_seat_map SET state = 'closed', closed_at = ? WHERE thread_ts = ?`)
@@ -100,6 +117,16 @@ export class ThreadSeatMap {
100
117
  skipped++;
101
118
  continue;
102
119
  }
120
+ if (m.messageTs !== m.threadTs) {
121
+ // #899 — a reply's stamp maps the message to its own ask and seat; it never opens a thread.
122
+ if (this.partOf(m.messageTs, m.channel)) {
123
+ skipped++;
124
+ continue;
125
+ }
126
+ this.recordPart({ messageTs: m.messageTs, channel: m.channel, threadTs: m.threadTs, seat: m.seat, conversationId: m.conversationId });
127
+ inserted++;
128
+ continue;
129
+ }
103
130
  const before = this.db.prepare(`SELECT 1 FROM thread_seat_map WHERE thread_ts = ?`).get(m.threadTs);
104
131
  if (before) {
105
132
  skipped++;
@@ -1 +1 @@
1
- {"version":3,"file":"thread-seat-map.js","sourceRoot":"","sources":["../../../../src/domain/gateway/slack/thread-seat-map.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"thread-seat-map.js","sourceRoot":"","sources":["../../../../src/domain/gateway/slack/thread-seat-map.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"generated-file-hygiene.d.ts","sourceRoot":"","sources":["../../src/domain/generated-file-hygiene.ts"],"names":[],"mappings":"AAYA,uFAAuF;AACvF,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CA0GtF"}
1
+ {"version":3,"file":"generated-file-hygiene.d.ts","sourceRoot":"","sources":["../../src/domain/generated-file-hygiene.ts"],"names":[],"mappings":"AAcA,uFAAuF;AACvF,wBAAgB,wBAAwB,CAAC,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CA2GtF"}