@openrig/cli 0.6.10 → 0.6.12

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 (1275) hide show
  1. package/README.md +7 -4
  2. package/daemon/assets/claude-statusline-context.cjs +2 -0
  3. package/daemon/assets/guidance/openrig-start.md +2 -1
  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/README.md +30 -7
  7. package/daemon/assets/plugins/openrig-core/hooks/claude.json +7 -7
  8. package/daemon/assets/plugins/openrig-core/hooks/codex.json +2 -2
  9. package/daemon/assets/plugins/openrig-core/hooks/scripts/activity-relay.cjs +77 -0
  10. package/daemon/assets/plugins/openrig-core/hooks/scripts/compaction-restore-bridge.cjs +23 -0
  11. package/daemon/assets/plugins/openrig-core/hooks/scripts/refocus-health.cjs +4 -2
  12. package/daemon/assets/plugins/openrig-core/hooks/scripts/refocus.cjs +69 -16
  13. package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/scripts/precompact-hook.mjs +24 -0
  14. package/daemon/assets/plugins/openrig-core/skills/delegating-work/SKILL.md +25 -5
  15. package/daemon/assets/plugins/openrig-core/skills/forming-an-openrig-mental-model/SKILL.md +4 -2
  16. package/daemon/assets/plugins/openrig-core/skills/mission-slice-sop/SKILL.md +10 -1
  17. package/daemon/assets/plugins/openrig-core/skills/openrig-skills/SKILL.md +2 -2
  18. package/daemon/assets/plugins/openrig-core/skills/openrig-user/SKILL.md +172 -11
  19. package/daemon/assets/plugins/openrig-core/skills/orienting-to-an-inherited-seat/SKILL.md +7 -4
  20. package/daemon/assets/plugins/openrig-core/skills/queue-handoff/SKILL.md +8 -0
  21. package/daemon/assets/plugins/openrig-core/skills/refocusing/scripts/trace-to-root.py +6 -1
  22. package/daemon/assets/plugins/openrig-core/skills/retiring-and-inheriting-a-seat/SKILL.md +5 -2
  23. package/daemon/assets/plugins/openrig-core/skills/session-compaction-and-restore/SKILL.md +19 -0
  24. package/daemon/assets/skills/rigs/SKILL.md +56 -10
  25. package/daemon/context-packs/help/manifest.yaml +1 -1
  26. package/daemon/context-packs/onboarding-width/manifest.yaml +1 -1
  27. package/daemon/context-packs/onboarding-width/public-what-you-can-do.md +131 -37
  28. package/daemon/context-packs/reference/getting-started.md +39 -6
  29. package/daemon/context-packs/reference/manifest.yaml +1 -1
  30. package/daemon/context-packs/reference/rig-spec.md +66 -5
  31. package/daemon/context-packs/reference/whats-new.md +169 -147
  32. package/daemon/context-packs/skills/agent-operated-software/manifest.yaml +1 -1
  33. package/daemon/context-packs/skills/agent-operated-workflows/manifest.yaml +1 -1
  34. package/daemon/context-packs/skills/applying-a-permission-policy/manifest.yaml +1 -1
  35. package/daemon/context-packs/skills/claude-compaction-restore/manifest.yaml +1 -1
  36. package/daemon/context-packs/skills/claude-compaction-restore/scripts/precompact-hook.mjs +24 -0
  37. package/daemon/context-packs/skills/core/agent-starters/manifest.yaml +1 -1
  38. package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/manifest.yaml +1 -1
  39. package/daemon/context-packs/skills/core/cross-host-rig-commands/manifest.yaml +1 -1
  40. package/daemon/context-packs/skills/core/human-in-the-loop/manifest.yaml +1 -1
  41. package/daemon/context-packs/skills/core/messaging-the-human/manifest.yaml +1 -1
  42. package/daemon/context-packs/skills/core/openrig-architect/manifest.yaml +1 -1
  43. package/daemon/context-packs/skills/core/openrig-cmux/manifest.yaml +1 -1
  44. package/daemon/context-packs/skills/core/openrig-herdr/manifest.yaml +1 -1
  45. package/daemon/context-packs/skills/core/openrig-skills/SKILL.md +2 -2
  46. package/daemon/context-packs/skills/core/openrig-skills/manifest.yaml +3 -3
  47. package/daemon/context-packs/skills/core/openrig-software-factory/SKILL.md +0 -1
  48. package/daemon/context-packs/skills/core/openrig-software-factory/manifest.yaml +1 -1
  49. package/daemon/context-packs/skills/core/openrig-software-factory/references/worked-example.md +7 -4
  50. package/daemon/context-packs/skills/core/openrig-upgrade/manifest.yaml +1 -1
  51. package/daemon/context-packs/skills/core/rig-bundles-and-shareable-artifacts/manifest.yaml +1 -1
  52. package/daemon/context-packs/skills/core/rig-lifecycle/manifest.yaml +1 -1
  53. package/daemon/context-packs/skills/core/session-source-fork/manifest.yaml +1 -1
  54. package/daemon/context-packs/skills/core/specification-system/manifest.yaml +1 -1
  55. package/daemon/context-packs/skills/core/topology-mutation-and-seat-management/SKILL.md +1 -1
  56. package/daemon/context-packs/skills/core/topology-mutation-and-seat-management/manifest.yaml +1 -1
  57. package/daemon/context-packs/skills/core/watchdog/manifest.yaml +1 -1
  58. package/daemon/context-packs/skills/delegating-work/SKILL.md +25 -5
  59. package/daemon/context-packs/skills/delegating-work/manifest.yaml +3 -3
  60. package/daemon/context-packs/skills/forming-an-openrig-mental-model/SKILL.md +4 -2
  61. package/daemon/context-packs/skills/forming-an-openrig-mental-model/manifest.yaml +1 -1
  62. package/daemon/context-packs/skills/loading-addressable-markdown/manifest.yaml +1 -1
  63. package/daemon/context-packs/skills/mission-slice-sop/SKILL.md +10 -1
  64. package/daemon/context-packs/skills/mission-slice-sop/manifest.yaml +1 -1
  65. package/daemon/context-packs/skills/openrig-operating-model/manifest.yaml +1 -1
  66. package/daemon/context-packs/skills/openrig-user/SKILL.md +172 -11
  67. package/daemon/context-packs/skills/openrig-user/manifest.yaml +1 -1
  68. package/daemon/context-packs/skills/orienting-to-an-inherited-seat/SKILL.md +7 -4
  69. package/daemon/context-packs/skills/orienting-to-an-inherited-seat/manifest.yaml +1 -1
  70. package/daemon/context-packs/skills/pm/backlog-capture/manifest.yaml +1 -1
  71. package/daemon/context-packs/skills/pm/context-builder/manifest.yaml +1 -1
  72. package/daemon/context-packs/skills/pm/exec-summary/manifest.yaml +1 -1
  73. package/daemon/context-packs/skills/pm/office-hours/manifest.yaml +1 -1
  74. package/daemon/context-packs/skills/pm/plan-review/manifest.yaml +1 -1
  75. package/daemon/context-packs/skills/pm/requirements-writer/manifest.yaml +1 -1
  76. package/daemon/context-packs/skills/pm/ui-mockup/manifest.yaml +1 -1
  77. package/daemon/context-packs/skills/pods/development-team/manifest.yaml +1 -1
  78. package/daemon/context-packs/skills/pods/orchestration-team/SKILL.md +1 -1
  79. package/daemon/context-packs/skills/pods/orchestration-team/manifest.yaml +1 -1
  80. package/daemon/context-packs/skills/pods/oversight-team/manifest.yaml +1 -1
  81. package/daemon/context-packs/skills/pods/review-team/manifest.yaml +1 -1
  82. package/daemon/context-packs/skills/process/agent-browser/manifest.yaml +1 -1
  83. package/daemon/context-packs/skills/process/context-engineering/manifest.yaml +1 -1
  84. package/daemon/context-packs/skills/process/dogfood/manifest.yaml +1 -1
  85. package/daemon/context-packs/skills/process/frontend-design/manifest.yaml +1 -1
  86. package/daemon/context-packs/skills/process/systematic-debugging/manifest.yaml +1 -1
  87. package/daemon/context-packs/skills/process/test-driven-development/manifest.yaml +1 -1
  88. package/daemon/context-packs/skills/process/verification-before-completion/manifest.yaml +1 -1
  89. package/daemon/context-packs/skills/queue-handoff/SKILL.md +8 -0
  90. package/daemon/context-packs/skills/queue-handoff/manifest.yaml +1 -1
  91. package/daemon/context-packs/skills/refocusing/manifest.yaml +1 -1
  92. package/daemon/context-packs/skills/refocusing/scripts/trace-to-root.py +6 -1
  93. package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/SKILL.md +5 -2
  94. package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/manifest.yaml +1 -1
  95. package/daemon/context-packs/skills/seat-continuity-and-handover/manifest.yaml +1 -1
  96. package/daemon/context-packs/skills/session-compaction-and-restore/SKILL.md +19 -0
  97. package/daemon/context-packs/skills/session-compaction-and-restore/manifest.yaml +1 -1
  98. package/daemon/context-packs/skills/software-for-agents/manifest.yaml +1 -1
  99. package/daemon/context-packs/world-example/manifest.yaml +1 -1
  100. package/daemon/context-packs/world-public/manifest.yaml +1 -1
  101. package/daemon/dist/adapters/bounded-probe-exec.d.ts +45 -0
  102. package/daemon/dist/adapters/bounded-probe-exec.d.ts.map +1 -0
  103. package/daemon/dist/adapters/bounded-probe-exec.js +204 -0
  104. package/daemon/dist/adapters/bounded-probe-exec.js.map +1 -0
  105. package/daemon/dist/adapters/claude-code-adapter.d.ts +17 -15
  106. package/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
  107. package/daemon/dist/adapters/claude-code-adapter.js +200 -105
  108. package/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
  109. package/daemon/dist/adapters/claude-resume.d.ts.map +1 -1
  110. package/daemon/dist/adapters/claude-resume.js +14 -3
  111. package/daemon/dist/adapters/claude-resume.js.map +1 -1
  112. package/daemon/dist/adapters/codex-resume.d.ts +5 -0
  113. package/daemon/dist/adapters/codex-resume.d.ts.map +1 -1
  114. package/daemon/dist/adapters/codex-resume.js +17 -3
  115. package/daemon/dist/adapters/codex-resume.js.map +1 -1
  116. package/daemon/dist/adapters/codex-runtime-adapter.d.ts +73 -1
  117. package/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
  118. package/daemon/dist/adapters/codex-runtime-adapter.js +230 -48
  119. package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
  120. package/daemon/dist/adapters/community-harness-runtime-adapter.d.ts +46 -0
  121. package/daemon/dist/adapters/community-harness-runtime-adapter.d.ts.map +1 -0
  122. package/daemon/dist/adapters/community-harness-runtime-adapter.js +102 -0
  123. package/daemon/dist/adapters/community-harness-runtime-adapter.js.map +1 -0
  124. package/daemon/dist/adapters/compose-services-adapter.d.ts.map +1 -1
  125. package/daemon/dist/adapters/compose-services-adapter.js +2 -1
  126. package/daemon/dist/adapters/compose-services-adapter.js.map +1 -1
  127. package/daemon/dist/adapters/kernel-authority.d.ts +8 -1
  128. package/daemon/dist/adapters/kernel-authority.d.ts.map +1 -1
  129. package/daemon/dist/adapters/kernel-authority.js +35 -10
  130. package/daemon/dist/adapters/kernel-authority.js.map +1 -1
  131. package/daemon/dist/adapters/omp-rpc-frame.d.ts +51 -0
  132. package/daemon/dist/adapters/omp-rpc-frame.d.ts.map +1 -0
  133. package/daemon/dist/adapters/omp-rpc-frame.js +153 -0
  134. package/daemon/dist/adapters/omp-rpc-frame.js.map +1 -0
  135. package/daemon/dist/adapters/pi-openrouter-charge.d.ts +67 -0
  136. package/daemon/dist/adapters/pi-openrouter-charge.d.ts.map +1 -0
  137. package/daemon/dist/adapters/pi-openrouter-charge.js +228 -0
  138. package/daemon/dist/adapters/pi-openrouter-charge.js.map +1 -0
  139. package/daemon/dist/adapters/pi-readiness.d.ts +81 -5
  140. package/daemon/dist/adapters/pi-readiness.d.ts.map +1 -1
  141. package/daemon/dist/adapters/pi-readiness.js +193 -27
  142. package/daemon/dist/adapters/pi-readiness.js.map +1 -1
  143. package/daemon/dist/adapters/pi-resume.d.ts +4 -0
  144. package/daemon/dist/adapters/pi-resume.d.ts.map +1 -1
  145. package/daemon/dist/adapters/pi-resume.js +2 -0
  146. package/daemon/dist/adapters/pi-resume.js.map +1 -1
  147. package/daemon/dist/adapters/pi-runner-protocol.d.ts +4 -0
  148. package/daemon/dist/adapters/pi-runner-protocol.d.ts.map +1 -1
  149. package/daemon/dist/adapters/pi-runner-protocol.js +5 -0
  150. package/daemon/dist/adapters/pi-runner-protocol.js.map +1 -1
  151. package/daemon/dist/adapters/pi-runner.d.ts +67 -2
  152. package/daemon/dist/adapters/pi-runner.d.ts.map +1 -1
  153. package/daemon/dist/adapters/pi-runner.js +336 -13
  154. package/daemon/dist/adapters/pi-runner.js.map +1 -1
  155. package/daemon/dist/adapters/pi-runtime-adapter.d.ts +16 -1
  156. package/daemon/dist/adapters/pi-runtime-adapter.d.ts.map +1 -1
  157. package/daemon/dist/adapters/pi-runtime-adapter.js +18 -1
  158. package/daemon/dist/adapters/pi-runtime-adapter.js.map +1 -1
  159. package/daemon/dist/adapters/preflight-exec.d.ts +3 -0
  160. package/daemon/dist/adapters/preflight-exec.d.ts.map +1 -1
  161. package/daemon/dist/adapters/preflight-exec.js +15 -7
  162. package/daemon/dist/adapters/preflight-exec.js.map +1 -1
  163. package/daemon/dist/adapters/replace-file.d.ts +8 -0
  164. package/daemon/dist/adapters/replace-file.d.ts.map +1 -0
  165. package/daemon/dist/adapters/replace-file.js +32 -0
  166. package/daemon/dist/adapters/replace-file.js.map +1 -0
  167. package/daemon/dist/adapters/tmux-control.d.ts +119 -0
  168. package/daemon/dist/adapters/tmux-control.d.ts.map +1 -0
  169. package/daemon/dist/adapters/tmux-control.js +547 -0
  170. package/daemon/dist/adapters/tmux-control.js.map +1 -0
  171. package/daemon/dist/adapters/tmux-exec.d.ts +18 -4
  172. package/daemon/dist/adapters/tmux-exec.d.ts.map +1 -1
  173. package/daemon/dist/adapters/tmux-exec.js +98 -17
  174. package/daemon/dist/adapters/tmux-exec.js.map +1 -1
  175. package/daemon/dist/adapters/tmux.d.ts +75 -15
  176. package/daemon/dist/adapters/tmux.d.ts.map +1 -1
  177. package/daemon/dist/adapters/tmux.js +352 -57
  178. package/daemon/dist/adapters/tmux.js.map +1 -1
  179. package/daemon/dist/build-info.js +3 -3
  180. package/daemon/dist/composer-prompts-surface.d.ts +2 -0
  181. package/daemon/dist/composer-prompts-surface.d.ts.map +1 -0
  182. package/daemon/dist/composer-prompts-surface.js +2 -0
  183. package/daemon/dist/composer-prompts-surface.js.map +1 -0
  184. package/daemon/dist/db/all-migrations.d.ts.map +1 -1
  185. package/daemon/dist/db/all-migrations.js +26 -0
  186. package/daemon/dist/db/all-migrations.js.map +1 -1
  187. package/daemon/dist/db/migrations/100_typing_guard_modes.d.ts +3 -0
  188. package/daemon/dist/db/migrations/100_typing_guard_modes.d.ts.map +1 -0
  189. package/daemon/dist/db/migrations/100_typing_guard_modes.js +10 -0
  190. package/daemon/dist/db/migrations/100_typing_guard_modes.js.map +1 -0
  191. package/daemon/dist/db/migrations/103_session_stop_intent.d.ts +4 -0
  192. package/daemon/dist/db/migrations/103_session_stop_intent.d.ts.map +1 -0
  193. package/daemon/dist/db/migrations/103_session_stop_intent.js +9 -0
  194. package/daemon/dist/db/migrations/103_session_stop_intent.js.map +1 -0
  195. package/daemon/dist/db/migrations/104_node_effort_choice.d.ts +3 -0
  196. package/daemon/dist/db/migrations/104_node_effort_choice.d.ts.map +1 -0
  197. package/daemon/dist/db/migrations/104_node_effort_choice.js +10 -0
  198. package/daemon/dist/db/migrations/104_node_effort_choice.js.map +1 -0
  199. package/daemon/dist/db/migrations/105_usage_samples_client_cost.d.ts +9 -0
  200. package/daemon/dist/db/migrations/105_usage_samples_client_cost.d.ts.map +1 -0
  201. package/daemon/dist/db/migrations/105_usage_samples_client_cost.js +14 -0
  202. package/daemon/dist/db/migrations/105_usage_samples_client_cost.js.map +1 -0
  203. package/daemon/dist/db/migrations/107_pi_usage_entries.d.ts +10 -0
  204. package/daemon/dist/db/migrations/107_pi_usage_entries.d.ts.map +1 -0
  205. package/daemon/dist/db/migrations/107_pi_usage_entries.js +38 -0
  206. package/daemon/dist/db/migrations/107_pi_usage_entries.js.map +1 -0
  207. package/daemon/dist/db/migrations/108_pi_usage_charges.d.ts +12 -0
  208. package/daemon/dist/db/migrations/108_pi_usage_charges.d.ts.map +1 -0
  209. package/daemon/dist/db/migrations/108_pi_usage_charges.js +39 -0
  210. package/daemon/dist/db/migrations/108_pi_usage_charges.js.map +1 -0
  211. package/daemon/dist/db/migrations/109_mode_posture_coexist.d.ts +5 -0
  212. package/daemon/dist/db/migrations/109_mode_posture_coexist.d.ts.map +1 -0
  213. package/daemon/dist/db/migrations/109_mode_posture_coexist.js +11 -0
  214. package/daemon/dist/db/migrations/109_mode_posture_coexist.js.map +1 -0
  215. package/daemon/dist/db/migrations/110_workflow_instance_scope.d.ts +10 -0
  216. package/daemon/dist/db/migrations/110_workflow_instance_scope.d.ts.map +1 -0
  217. package/daemon/dist/db/migrations/110_workflow_instance_scope.js +14 -0
  218. package/daemon/dist/db/migrations/110_workflow_instance_scope.js.map +1 -0
  219. package/daemon/dist/db/migrations/111_seat_env.d.ts +6 -0
  220. package/daemon/dist/db/migrations/111_seat_env.d.ts.map +1 -0
  221. package/daemon/dist/db/migrations/111_seat_env.js +11 -0
  222. package/daemon/dist/db/migrations/111_seat_env.js.map +1 -0
  223. package/daemon/dist/db/migrations/112_queue_transitions_ts_qitem.d.ts +3 -0
  224. package/daemon/dist/db/migrations/112_queue_transitions_ts_qitem.d.ts.map +1 -0
  225. package/daemon/dist/db/migrations/112_queue_transitions_ts_qitem.js +14 -0
  226. package/daemon/dist/db/migrations/112_queue_transitions_ts_qitem.js.map +1 -0
  227. package/daemon/dist/db/migrations/113_applied_launch_daemon_opt_out.d.ts +3 -0
  228. package/daemon/dist/db/migrations/113_applied_launch_daemon_opt_out.d.ts.map +1 -0
  229. package/daemon/dist/db/migrations/113_applied_launch_daemon_opt_out.js +9 -0
  230. package/daemon/dist/db/migrations/113_applied_launch_daemon_opt_out.js.map +1 -0
  231. package/daemon/dist/db/migrations/114_session_agent_app.d.ts +3 -0
  232. package/daemon/dist/db/migrations/114_session_agent_app.d.ts.map +1 -0
  233. package/daemon/dist/db/migrations/114_session_agent_app.js +11 -0
  234. package/daemon/dist/db/migrations/114_session_agent_app.js.map +1 -0
  235. package/daemon/dist/db/migrations/115_thread_seat_map_channel_key.d.ts +3 -0
  236. package/daemon/dist/db/migrations/115_thread_seat_map_channel_key.d.ts.map +1 -0
  237. package/daemon/dist/db/migrations/115_thread_seat_map_channel_key.js +28 -0
  238. package/daemon/dist/db/migrations/115_thread_seat_map_channel_key.js.map +1 -0
  239. package/daemon/dist/domain/active-occupant.d.ts +14 -0
  240. package/daemon/dist/domain/active-occupant.d.ts.map +1 -1
  241. package/daemon/dist/domain/active-occupant.js +17 -0
  242. package/daemon/dist/domain/active-occupant.js.map +1 -1
  243. package/daemon/dist/domain/activity-taxonomy.d.ts +13 -5
  244. package/daemon/dist/domain/activity-taxonomy.d.ts.map +1 -1
  245. package/daemon/dist/domain/activity-taxonomy.js +14 -2
  246. package/daemon/dist/domain/activity-taxonomy.js.map +1 -1
  247. package/daemon/dist/domain/agent-activity-store.d.ts +2 -0
  248. package/daemon/dist/domain/agent-activity-store.d.ts.map +1 -1
  249. package/daemon/dist/domain/agent-activity-store.js +14 -8
  250. package/daemon/dist/domain/agent-activity-store.js.map +1 -1
  251. package/daemon/dist/domain/agent-images/agent-image-library-service.js +1 -1
  252. package/daemon/dist/domain/agent-images/agent-image-library-service.js.map +1 -1
  253. package/daemon/dist/domain/agent-images/manifest-parser.js +1 -1
  254. package/daemon/dist/domain/agent-images/manifest-parser.js.map +1 -1
  255. package/daemon/dist/domain/agent-manifest.d.ts.map +1 -1
  256. package/daemon/dist/domain/agent-manifest.js +21 -3
  257. package/daemon/dist/domain/agent-manifest.js.map +1 -1
  258. package/daemon/dist/domain/applied-launch-observation-store.d.ts +2 -0
  259. package/daemon/dist/domain/applied-launch-observation-store.d.ts.map +1 -1
  260. package/daemon/dist/domain/applied-launch-observation-store.js +27 -3
  261. package/daemon/dist/domain/applied-launch-observation-store.js.map +1 -1
  262. package/daemon/dist/domain/bootstrap-orchestrator.d.ts +3 -0
  263. package/daemon/dist/domain/bootstrap-orchestrator.d.ts.map +1 -1
  264. package/daemon/dist/domain/bootstrap-orchestrator.js +49 -16
  265. package/daemon/dist/domain/bootstrap-orchestrator.js.map +1 -1
  266. package/daemon/dist/domain/built-in-runtimes.d.ts +10 -0
  267. package/daemon/dist/domain/built-in-runtimes.d.ts.map +1 -0
  268. package/daemon/dist/domain/built-in-runtimes.js +14 -0
  269. package/daemon/dist/domain/built-in-runtimes.js.map +1 -0
  270. package/daemon/dist/domain/bundle-archive.d.ts +3 -1
  271. package/daemon/dist/domain/bundle-archive.d.ts.map +1 -1
  272. package/daemon/dist/domain/bundle-archive.js +5 -3
  273. package/daemon/dist/domain/bundle-archive.js.map +1 -1
  274. package/daemon/dist/domain/bundle-behaviour.d.ts +20 -0
  275. package/daemon/dist/domain/bundle-behaviour.d.ts.map +1 -1
  276. package/daemon/dist/domain/bundle-behaviour.js +57 -1
  277. package/daemon/dist/domain/bundle-behaviour.js.map +1 -1
  278. package/daemon/dist/domain/bundle-integrity.d.ts +5 -2
  279. package/daemon/dist/domain/bundle-integrity.d.ts.map +1 -1
  280. package/daemon/dist/domain/bundle-integrity.js +39 -8
  281. package/daemon/dist/domain/bundle-integrity.js.map +1 -1
  282. package/daemon/dist/domain/bundle-source-resolver.d.ts +3 -1
  283. package/daemon/dist/domain/bundle-source-resolver.d.ts.map +1 -1
  284. package/daemon/dist/domain/bundle-source-resolver.js +7 -2
  285. package/daemon/dist/domain/bundle-source-resolver.js.map +1 -1
  286. package/daemon/dist/domain/bundle-types.d.ts +6 -0
  287. package/daemon/dist/domain/bundle-types.d.ts.map +1 -1
  288. package/daemon/dist/domain/bundle-types.js +26 -0
  289. package/daemon/dist/domain/bundle-types.js.map +1 -1
  290. package/daemon/dist/domain/chat-repository.d.ts.map +1 -1
  291. package/daemon/dist/domain/chat-repository.js +3 -2
  292. package/daemon/dist/domain/chat-repository.js.map +1 -1
  293. package/daemon/dist/domain/claim-service.d.ts +6 -0
  294. package/daemon/dist/domain/claim-service.d.ts.map +1 -1
  295. package/daemon/dist/domain/claim-service.js +20 -1
  296. package/daemon/dist/domain/claim-service.js.map +1 -1
  297. package/daemon/dist/domain/claude-compaction-enforcer.d.ts +63 -2
  298. package/daemon/dist/domain/claude-compaction-enforcer.d.ts.map +1 -1
  299. package/daemon/dist/domain/claude-compaction-enforcer.js +154 -16
  300. package/daemon/dist/domain/claude-compaction-enforcer.js.map +1 -1
  301. package/daemon/dist/domain/claude-core-plugin-env.d.ts +26 -0
  302. package/daemon/dist/domain/claude-core-plugin-env.d.ts.map +1 -0
  303. package/daemon/dist/domain/claude-core-plugin-env.js +86 -0
  304. package/daemon/dist/domain/claude-core-plugin-env.js.map +1 -0
  305. package/daemon/dist/domain/claude-managed-launch.d.ts +13 -6
  306. package/daemon/dist/domain/claude-managed-launch.d.ts.map +1 -1
  307. package/daemon/dist/domain/claude-managed-launch.js +58 -5
  308. package/daemon/dist/domain/claude-managed-launch.js.map +1 -1
  309. package/daemon/dist/domain/codex-network-default.d.ts +3 -0
  310. package/daemon/dist/domain/codex-network-default.d.ts.map +1 -1
  311. package/daemon/dist/domain/codex-network-default.js +1 -1
  312. package/daemon/dist/domain/codex-network-default.js.map +1 -1
  313. package/daemon/dist/domain/codex-pane-patterns.d.ts +2 -0
  314. package/daemon/dist/domain/codex-pane-patterns.d.ts.map +1 -0
  315. package/daemon/dist/domain/codex-pane-patterns.js +5 -0
  316. package/daemon/dist/domain/codex-pane-patterns.js.map +1 -0
  317. package/daemon/dist/domain/codex-thread-id.d.ts +22 -3
  318. package/daemon/dist/domain/codex-thread-id.d.ts.map +1 -1
  319. package/daemon/dist/domain/codex-thread-id.js +65 -16
  320. package/daemon/dist/domain/codex-thread-id.js.map +1 -1
  321. package/daemon/dist/domain/community-harness-presets.d.ts +38 -0
  322. package/daemon/dist/domain/community-harness-presets.d.ts.map +1 -0
  323. package/daemon/dist/domain/community-harness-presets.js +155 -0
  324. package/daemon/dist/domain/community-harness-presets.js.map +1 -0
  325. package/daemon/dist/domain/composer-prompts.d.ts +118 -0
  326. package/daemon/dist/domain/composer-prompts.d.ts.map +1 -0
  327. package/daemon/dist/domain/composer-prompts.js +165 -0
  328. package/daemon/dist/domain/composer-prompts.js.map +1 -0
  329. package/daemon/dist/domain/context-monitor.d.ts +3 -0
  330. package/daemon/dist/domain/context-monitor.d.ts.map +1 -1
  331. package/daemon/dist/domain/context-monitor.js +59 -23
  332. package/daemon/dist/domain/context-monitor.js.map +1 -1
  333. package/daemon/dist/domain/context-packs/context-pack-library-service.js +2 -2
  334. package/daemon/dist/domain/context-packs/context-pack-library-service.js.map +1 -1
  335. package/daemon/dist/domain/context-packs/manifest-parser.js +1 -1
  336. package/daemon/dist/domain/context-packs/manifest-parser.js.map +1 -1
  337. package/daemon/dist/domain/context-usage-store.d.ts +4 -0
  338. package/daemon/dist/domain/context-usage-store.d.ts.map +1 -1
  339. package/daemon/dist/domain/context-usage-store.js +1 -0
  340. package/daemon/dist/domain/context-usage-store.js.map +1 -1
  341. package/daemon/dist/domain/current-work.js +2 -2
  342. package/daemon/dist/domain/current-work.js.map +1 -1
  343. package/daemon/dist/domain/cwd-resolution.d.ts +8 -0
  344. package/daemon/dist/domain/cwd-resolution.d.ts.map +1 -1
  345. package/daemon/dist/domain/cwd-resolution.js +24 -3
  346. package/daemon/dist/domain/cwd-resolution.js.map +1 -1
  347. package/daemon/dist/domain/draft-aware-delivery.d.ts +32 -0
  348. package/daemon/dist/domain/draft-aware-delivery.d.ts.map +1 -0
  349. package/daemon/dist/domain/draft-aware-delivery.js +156 -0
  350. package/daemon/dist/domain/draft-aware-delivery.js.map +1 -0
  351. package/daemon/dist/domain/event-bus.d.ts +10 -1
  352. package/daemon/dist/domain/event-bus.d.ts.map +1 -1
  353. package/daemon/dist/domain/event-bus.js +25 -0
  354. package/daemon/dist/domain/event-bus.js.map +1 -1
  355. package/daemon/dist/domain/execution-view.d.ts.map +1 -1
  356. package/daemon/dist/domain/execution-view.js +76 -10
  357. package/daemon/dist/domain/execution-view.js.map +1 -1
  358. package/daemon/dist/domain/frontmatter.d.ts +11 -0
  359. package/daemon/dist/domain/frontmatter.d.ts.map +1 -0
  360. package/daemon/dist/domain/frontmatter.js +20 -0
  361. package/daemon/dist/domain/frontmatter.js.map +1 -0
  362. package/daemon/dist/domain/gateway/gateway-subsystem.d.ts +11 -0
  363. package/daemon/dist/domain/gateway/gateway-subsystem.d.ts.map +1 -1
  364. package/daemon/dist/domain/gateway/gateway-subsystem.js +7 -0
  365. package/daemon/dist/domain/gateway/gateway-subsystem.js.map +1 -1
  366. package/daemon/dist/domain/gateway/human-registry.d.ts +6 -1
  367. package/daemon/dist/domain/gateway/human-registry.d.ts.map +1 -1
  368. package/daemon/dist/domain/gateway/human-registry.js +7 -0
  369. package/daemon/dist/domain/gateway/human-registry.js.map +1 -1
  370. package/daemon/dist/domain/gateway/slack/bot-inbox.d.ts +54 -0
  371. package/daemon/dist/domain/gateway/slack/bot-inbox.d.ts.map +1 -0
  372. package/daemon/dist/domain/gateway/slack/bot-inbox.js +86 -0
  373. package/daemon/dist/domain/gateway/slack/bot-inbox.js.map +1 -0
  374. package/daemon/dist/domain/gateway/slack/capabilities.d.ts.map +1 -1
  375. package/daemon/dist/domain/gateway/slack/capabilities.js +1 -0
  376. package/daemon/dist/domain/gateway/slack/capabilities.js.map +1 -1
  377. package/daemon/dist/domain/gateway/slack/channel-map.d.ts +11 -1
  378. package/daemon/dist/domain/gateway/slack/channel-map.d.ts.map +1 -1
  379. package/daemon/dist/domain/gateway/slack/channel-map.js +31 -6
  380. package/daemon/dist/domain/gateway/slack/channel-map.js.map +1 -1
  381. package/daemon/dist/domain/gateway/slack/channel-recovery.d.ts.map +1 -1
  382. package/daemon/dist/domain/gateway/slack/channel-recovery.js +4 -3
  383. package/daemon/dist/domain/gateway/slack/channel-recovery.js.map +1 -1
  384. package/daemon/dist/domain/gateway/slack/config.d.ts +14 -0
  385. package/daemon/dist/domain/gateway/slack/config.d.ts.map +1 -1
  386. package/daemon/dist/domain/gateway/slack/config.js +28 -0
  387. package/daemon/dist/domain/gateway/slack/config.js.map +1 -1
  388. package/daemon/dist/domain/gateway/slack/forwarding.d.ts +32 -0
  389. package/daemon/dist/domain/gateway/slack/forwarding.d.ts.map +1 -0
  390. package/daemon/dist/domain/gateway/slack/forwarding.js +76 -0
  391. package/daemon/dist/domain/gateway/slack/forwarding.js.map +1 -0
  392. package/daemon/dist/domain/gateway/slack/inbound.d.ts +99 -1
  393. package/daemon/dist/domain/gateway/slack/inbound.d.ts.map +1 -1
  394. package/daemon/dist/domain/gateway/slack/inbound.js +325 -7
  395. package/daemon/dist/domain/gateway/slack/inbound.js.map +1 -1
  396. package/daemon/dist/domain/gateway/slack/message.d.ts +28 -0
  397. package/daemon/dist/domain/gateway/slack/message.d.ts.map +1 -1
  398. package/daemon/dist/domain/gateway/slack/message.js +105 -4
  399. package/daemon/dist/domain/gateway/slack/message.js.map +1 -1
  400. package/daemon/dist/domain/gateway/slack/outbound-driver.d.ts +3 -0
  401. package/daemon/dist/domain/gateway/slack/outbound-driver.d.ts.map +1 -1
  402. package/daemon/dist/domain/gateway/slack/outbound-driver.js +1 -0
  403. package/daemon/dist/domain/gateway/slack/outbound-driver.js.map +1 -1
  404. package/daemon/dist/domain/gateway/slack/queue-access.d.ts +1 -1
  405. package/daemon/dist/domain/gateway/slack/queue-access.d.ts.map +1 -1
  406. package/daemon/dist/domain/gateway/slack/slack-api.d.ts +10 -0
  407. package/daemon/dist/domain/gateway/slack/slack-api.d.ts.map +1 -1
  408. package/daemon/dist/domain/gateway/slack/slack-api.js +13 -0
  409. package/daemon/dist/domain/gateway/slack/slack-api.js.map +1 -1
  410. package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts +2 -0
  411. package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts.map +1 -1
  412. package/daemon/dist/domain/gateway/slack/slack-delivery.js +12 -2
  413. package/daemon/dist/domain/gateway/slack/slack-delivery.js.map +1 -1
  414. package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts +3 -0
  415. package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts.map +1 -1
  416. package/daemon/dist/domain/gateway/slack/slack-subsystem.js +133 -20
  417. package/daemon/dist/domain/gateway/slack/slack-subsystem.js.map +1 -1
  418. package/daemon/dist/domain/gateway/slack/state-store.d.ts +9 -2
  419. package/daemon/dist/domain/gateway/slack/state-store.d.ts.map +1 -1
  420. package/daemon/dist/domain/gateway/slack/state-store.js +24 -2
  421. package/daemon/dist/domain/gateway/slack/state-store.js.map +1 -1
  422. package/daemon/dist/domain/gateway/slack/thread-routing.d.ts +3 -0
  423. package/daemon/dist/domain/gateway/slack/thread-routing.d.ts.map +1 -1
  424. package/daemon/dist/domain/gateway/slack/thread-routing.js +18 -7
  425. package/daemon/dist/domain/gateway/slack/thread-routing.js.map +1 -1
  426. package/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts +17 -6
  427. package/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts.map +1 -1
  428. package/daemon/dist/domain/gateway/slack/thread-seat-map.js +41 -23
  429. package/daemon/dist/domain/gateway/slack/thread-seat-map.js.map +1 -1
  430. package/daemon/dist/domain/history-query.d.ts.map +1 -1
  431. package/daemon/dist/domain/history-query.js +2 -1
  432. package/daemon/dist/domain/history-query.js.map +1 -1
  433. package/daemon/dist/domain/home-isolation.d.ts +18 -0
  434. package/daemon/dist/domain/home-isolation.d.ts.map +1 -0
  435. package/daemon/dist/domain/home-isolation.js +75 -0
  436. package/daemon/dist/domain/home-isolation.js.map +1 -0
  437. package/daemon/dist/domain/hosts/remote-daemon-http.d.ts +22 -0
  438. package/daemon/dist/domain/hosts/remote-daemon-http.d.ts.map +1 -1
  439. package/daemon/dist/domain/hosts/remote-daemon-http.js +43 -3
  440. package/daemon/dist/domain/hosts/remote-daemon-http.js.map +1 -1
  441. package/daemon/dist/domain/inbox-handler.d.ts.map +1 -1
  442. package/daemon/dist/domain/inbox-handler.js +34 -32
  443. package/daemon/dist/domain/inbox-handler.js.map +1 -1
  444. package/daemon/dist/domain/mission-control/notification-adapter-ntfy.js +12 -2
  445. package/daemon/dist/domain/mission-control/notification-adapter-ntfy.js.map +1 -1
  446. package/daemon/dist/domain/mission-control/notification-dispatcher.d.ts.map +1 -1
  447. package/daemon/dist/domain/mission-control/notification-dispatcher.js +2 -1
  448. package/daemon/dist/domain/mission-control/notification-dispatcher.js.map +1 -1
  449. package/daemon/dist/domain/model-divergence/current-generation-record.d.ts +63 -0
  450. package/daemon/dist/domain/model-divergence/current-generation-record.d.ts.map +1 -1
  451. package/daemon/dist/domain/model-divergence/current-generation-record.js +130 -1
  452. package/daemon/dist/domain/model-divergence/current-generation-record.js.map +1 -1
  453. package/daemon/dist/domain/model-divergence/effective-model-readers.d.ts +42 -0
  454. package/daemon/dist/domain/model-divergence/effective-model-readers.d.ts.map +1 -1
  455. package/daemon/dist/domain/model-divergence/effective-model-readers.js +160 -5
  456. package/daemon/dist/domain/model-divergence/effective-model-readers.js.map +1 -1
  457. package/daemon/dist/domain/model-divergence/model-divergence-monitor.d.ts +8 -2
  458. package/daemon/dist/domain/model-divergence/model-divergence-monitor.d.ts.map +1 -1
  459. package/daemon/dist/domain/model-divergence/model-divergence-monitor.js +10 -5
  460. package/daemon/dist/domain/model-divergence/model-divergence-monitor.js.map +1 -1
  461. package/daemon/dist/domain/native-process-lineage.d.ts +54 -0
  462. package/daemon/dist/domain/native-process-lineage.d.ts.map +1 -1
  463. package/daemon/dist/domain/native-process-lineage.js +181 -29
  464. package/daemon/dist/domain/native-process-lineage.js.map +1 -1
  465. package/daemon/dist/domain/native-resume-probe.d.ts +3 -1
  466. package/daemon/dist/domain/native-resume-probe.d.ts.map +1 -1
  467. package/daemon/dist/domain/native-resume-probe.js +43 -6
  468. package/daemon/dist/domain/native-resume-probe.js.map +1 -1
  469. package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
  470. package/daemon/dist/domain/node-inventory.js +41 -16
  471. package/daemon/dist/domain/node-inventory.js.map +1 -1
  472. package/daemon/dist/domain/node-launcher.d.ts +18 -0
  473. package/daemon/dist/domain/node-launcher.d.ts.map +1 -1
  474. package/daemon/dist/domain/node-launcher.js +62 -3
  475. package/daemon/dist/domain/node-launcher.js.map +1 -1
  476. package/daemon/dist/domain/openrouter-charge.d.ts +42 -0
  477. package/daemon/dist/domain/openrouter-charge.d.ts.map +1 -0
  478. package/daemon/dist/domain/openrouter-charge.js +57 -0
  479. package/daemon/dist/domain/openrouter-charge.js.map +1 -0
  480. package/daemon/dist/domain/pane-cutover.d.ts +27 -0
  481. package/daemon/dist/domain/pane-cutover.d.ts.map +1 -0
  482. package/daemon/dist/domain/pane-cutover.js +37 -0
  483. package/daemon/dist/domain/pane-cutover.js.map +1 -0
  484. package/daemon/dist/domain/parent-session-env.d.ts +8 -0
  485. package/daemon/dist/domain/parent-session-env.d.ts.map +1 -0
  486. package/daemon/dist/domain/parent-session-env.js +37 -0
  487. package/daemon/dist/domain/parent-session-env.js.map +1 -0
  488. package/daemon/dist/domain/parked-query.d.ts +5 -0
  489. package/daemon/dist/domain/parked-query.d.ts.map +1 -1
  490. package/daemon/dist/domain/parked-query.js +9 -2
  491. package/daemon/dist/domain/parked-query.js.map +1 -1
  492. package/daemon/dist/domain/periodic-snapshot-scheduler.d.ts.map +1 -1
  493. package/daemon/dist/domain/periodic-snapshot-scheduler.js +27 -3
  494. package/daemon/dist/domain/periodic-snapshot-scheduler.js.map +1 -1
  495. package/daemon/dist/domain/permission-drift.d.ts +2 -0
  496. package/daemon/dist/domain/permission-drift.d.ts.map +1 -1
  497. package/daemon/dist/domain/permission-drift.js.map +1 -1
  498. package/daemon/dist/domain/permission-policy/policy-spec.d.ts.map +1 -1
  499. package/daemon/dist/domain/permission-policy/policy-spec.js +5 -7
  500. package/daemon/dist/domain/permission-policy/policy-spec.js.map +1 -1
  501. package/daemon/dist/domain/pi-usage-entries-store.d.ts +41 -0
  502. package/daemon/dist/domain/pi-usage-entries-store.d.ts.map +1 -0
  503. package/daemon/dist/domain/pi-usage-entries-store.js +173 -0
  504. package/daemon/dist/domain/pi-usage-entries-store.js.map +1 -0
  505. package/daemon/dist/domain/pi-usage-facts.d.ts +90 -0
  506. package/daemon/dist/domain/pi-usage-facts.d.ts.map +1 -0
  507. package/daemon/dist/domain/pi-usage-facts.js +165 -0
  508. package/daemon/dist/domain/pi-usage-facts.js.map +1 -0
  509. package/daemon/dist/domain/pod-bundle-assembler.d.ts +2 -0
  510. package/daemon/dist/domain/pod-bundle-assembler.d.ts.map +1 -1
  511. package/daemon/dist/domain/pod-bundle-assembler.js +4 -0
  512. package/daemon/dist/domain/pod-bundle-assembler.js.map +1 -1
  513. package/daemon/dist/domain/policies/artifact-pool-helpers.d.ts.map +1 -1
  514. package/daemon/dist/domain/policies/artifact-pool-helpers.js +6 -4
  515. package/daemon/dist/domain/policies/artifact-pool-helpers.js.map +1 -1
  516. package/daemon/dist/domain/policies/parked-owner-consumer.d.ts +11 -0
  517. package/daemon/dist/domain/policies/parked-owner-consumer.d.ts.map +1 -1
  518. package/daemon/dist/domain/policies/parked-owner-consumer.js +81 -11
  519. package/daemon/dist/domain/policies/parked-owner-consumer.js.map +1 -1
  520. package/daemon/dist/domain/profile-resolver.d.ts +2 -0
  521. package/daemon/dist/domain/profile-resolver.d.ts.map +1 -1
  522. package/daemon/dist/domain/profile-resolver.js +6 -3
  523. package/daemon/dist/domain/profile-resolver.js.map +1 -1
  524. package/daemon/dist/domain/progress/progress-indexer.js +1 -1
  525. package/daemon/dist/domain/progress/progress-indexer.js.map +1 -1
  526. package/daemon/dist/domain/project-lifecycle-compiler.d.ts +4 -0
  527. package/daemon/dist/domain/project-lifecycle-compiler.d.ts.map +1 -1
  528. package/daemon/dist/domain/project-lifecycle-compiler.js +63 -3
  529. package/daemon/dist/domain/project-lifecycle-compiler.js.map +1 -1
  530. package/daemon/dist/domain/proof/judgments.d.ts +10 -5
  531. package/daemon/dist/domain/proof/judgments.d.ts.map +1 -1
  532. package/daemon/dist/domain/proof/judgments.js +57 -20
  533. package/daemon/dist/domain/proof/judgments.js.map +1 -1
  534. package/daemon/dist/domain/provider/claude-auth-status-reader.d.ts +33 -0
  535. package/daemon/dist/domain/provider/claude-auth-status-reader.d.ts.map +1 -0
  536. package/daemon/dist/domain/provider/claude-auth-status-reader.js +195 -0
  537. package/daemon/dist/domain/provider/claude-auth-status-reader.js.map +1 -0
  538. package/daemon/dist/domain/provider/claude-usage-windows.d.ts +68 -0
  539. package/daemon/dist/domain/provider/claude-usage-windows.d.ts.map +1 -0
  540. package/daemon/dist/domain/provider/claude-usage-windows.js +260 -0
  541. package/daemon/dist/domain/provider/claude-usage-windows.js.map +1 -0
  542. package/daemon/dist/domain/provider/codex-auth-reader.d.ts +14 -0
  543. package/daemon/dist/domain/provider/codex-auth-reader.d.ts.map +1 -1
  544. package/daemon/dist/domain/provider/codex-auth-reader.js +41 -12
  545. package/daemon/dist/domain/provider/codex-auth-reader.js.map +1 -1
  546. package/daemon/dist/domain/provider/codex-limit-banner.d.ts +2 -2
  547. package/daemon/dist/domain/provider/codex-limit-banner.d.ts.map +1 -1
  548. package/daemon/dist/domain/provider/codex-limit-banner.js +56 -9
  549. package/daemon/dist/domain/provider/codex-limit-banner.js.map +1 -1
  550. package/daemon/dist/domain/provider/codex-usage-reader.d.ts +33 -0
  551. package/daemon/dist/domain/provider/codex-usage-reader.d.ts.map +1 -0
  552. package/daemon/dist/domain/provider/codex-usage-reader.js +117 -0
  553. package/daemon/dist/domain/provider/codex-usage-reader.js.map +1 -0
  554. package/daemon/dist/domain/provider/codex-usage-windows.d.ts +39 -0
  555. package/daemon/dist/domain/provider/codex-usage-windows.d.ts.map +1 -0
  556. package/daemon/dist/domain/provider/codex-usage-windows.js +101 -0
  557. package/daemon/dist/domain/provider/codex-usage-windows.js.map +1 -0
  558. package/daemon/dist/domain/provider/provider-seat-accounts.d.ts +18 -0
  559. package/daemon/dist/domain/provider/provider-seat-accounts.d.ts.map +1 -0
  560. package/daemon/dist/domain/provider/provider-seat-accounts.js +159 -0
  561. package/daemon/dist/domain/provider/provider-seat-accounts.js.map +1 -0
  562. package/daemon/dist/domain/provider/provider-service-impl.d.ts +15 -0
  563. package/daemon/dist/domain/provider/provider-service-impl.d.ts.map +1 -1
  564. package/daemon/dist/domain/provider/provider-service-impl.js +45 -1
  565. package/daemon/dist/domain/provider/provider-service-impl.js.map +1 -1
  566. package/daemon/dist/domain/provider/provider-service.d.ts +7 -0
  567. package/daemon/dist/domain/provider/provider-service.d.ts.map +1 -1
  568. package/daemon/dist/domain/provider/provider-types.d.ts +133 -0
  569. package/daemon/dist/domain/provider/provider-types.d.ts.map +1 -1
  570. package/daemon/dist/domain/provider/reactive-tap.js +2 -0
  571. package/daemon/dist/domain/provider/reactive-tap.js.map +1 -1
  572. package/daemon/dist/domain/provider/subscription-moves.d.ts +77 -0
  573. package/daemon/dist/domain/provider/subscription-moves.d.ts.map +1 -0
  574. package/daemon/dist/domain/provider/subscription-moves.js +140 -0
  575. package/daemon/dist/domain/provider/subscription-moves.js.map +1 -0
  576. package/daemon/dist/domain/provider/usage-across-hosts.d.ts +162 -0
  577. package/daemon/dist/domain/provider/usage-across-hosts.d.ts.map +1 -0
  578. package/daemon/dist/domain/provider/usage-across-hosts.js +563 -0
  579. package/daemon/dist/domain/provider/usage-across-hosts.js.map +1 -0
  580. package/daemon/dist/domain/provider/usage-windows.d.ts +88 -0
  581. package/daemon/dist/domain/provider/usage-windows.d.ts.map +1 -0
  582. package/daemon/dist/domain/provider/usage-windows.js +189 -0
  583. package/daemon/dist/domain/provider/usage-windows.js.map +1 -0
  584. package/daemon/dist/domain/ps-projection.d.ts +5 -2
  585. package/daemon/dist/domain/ps-projection.d.ts.map +1 -1
  586. package/daemon/dist/domain/ps-projection.js +27 -25
  587. package/daemon/dist/domain/ps-projection.js.map +1 -1
  588. package/daemon/dist/domain/queue-owner.d.ts +6 -0
  589. package/daemon/dist/domain/queue-owner.d.ts.map +1 -1
  590. package/daemon/dist/domain/queue-owner.js +22 -0
  591. package/daemon/dist/domain/queue-owner.js.map +1 -1
  592. package/daemon/dist/domain/queue-repository.d.ts +91 -14
  593. package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
  594. package/daemon/dist/domain/queue-repository.js +347 -89
  595. package/daemon/dist/domain/queue-repository.js.map +1 -1
  596. package/daemon/dist/domain/queue-stuck-sweep.d.ts.map +1 -1
  597. package/daemon/dist/domain/queue-stuck-sweep.js +29 -27
  598. package/daemon/dist/domain/queue-stuck-sweep.js.map +1 -1
  599. package/daemon/dist/domain/queue-transition-log.d.ts +23 -2
  600. package/daemon/dist/domain/queue-transition-log.d.ts.map +1 -1
  601. package/daemon/dist/domain/queue-transition-log.js +98 -39
  602. package/daemon/dist/domain/queue-transition-log.js.map +1 -1
  603. package/daemon/dist/domain/queue-wake-ladder.d.ts +2 -2
  604. package/daemon/dist/domain/queue-wake-ladder.d.ts.map +1 -1
  605. package/daemon/dist/domain/queue-wake-ladder.js +27 -8
  606. package/daemon/dist/domain/queue-wake-ladder.js.map +1 -1
  607. package/daemon/dist/domain/queue-wake-repository.d.ts +7 -1
  608. package/daemon/dist/domain/queue-wake-repository.d.ts.map +1 -1
  609. package/daemon/dist/domain/queue-wake-repository.js +54 -5
  610. package/daemon/dist/domain/queue-wake-repository.js.map +1 -1
  611. package/daemon/dist/domain/reply-to-choice.d.ts +2 -0
  612. package/daemon/dist/domain/reply-to-choice.d.ts.map +1 -1
  613. package/daemon/dist/domain/reply-to-choice.js +2 -0
  614. package/daemon/dist/domain/reply-to-choice.js.map +1 -1
  615. package/daemon/dist/domain/restore-check-service.d.ts +8 -0
  616. package/daemon/dist/domain/restore-check-service.d.ts.map +1 -1
  617. package/daemon/dist/domain/restore-check-service.js +15 -5
  618. package/daemon/dist/domain/restore-check-service.js.map +1 -1
  619. package/daemon/dist/domain/restore-orchestrator.d.ts +4 -0
  620. package/daemon/dist/domain/restore-orchestrator.d.ts.map +1 -1
  621. package/daemon/dist/domain/restore-orchestrator.js +111 -18
  622. package/daemon/dist/domain/restore-orchestrator.js.map +1 -1
  623. package/daemon/dist/domain/restore-plan-preview.d.ts +4 -0
  624. package/daemon/dist/domain/restore-plan-preview.d.ts.map +1 -1
  625. package/daemon/dist/domain/restore-plan-preview.js +35 -20
  626. package/daemon/dist/domain/restore-plan-preview.js.map +1 -1
  627. package/daemon/dist/domain/restore-policy.d.ts +26 -0
  628. package/daemon/dist/domain/restore-policy.d.ts.map +1 -0
  629. package/daemon/dist/domain/restore-policy.js +22 -0
  630. package/daemon/dist/domain/restore-policy.js.map +1 -0
  631. package/daemon/dist/domain/restore-preconditions.d.ts +2 -0
  632. package/daemon/dist/domain/restore-preconditions.d.ts.map +1 -1
  633. package/daemon/dist/domain/restore-preconditions.js +6 -1
  634. package/daemon/dist/domain/restore-preconditions.js.map +1 -1
  635. package/daemon/dist/domain/restore-runtime-compatibility.d.ts +3 -0
  636. package/daemon/dist/domain/restore-runtime-compatibility.d.ts.map +1 -0
  637. package/daemon/dist/domain/restore-runtime-compatibility.js +7 -0
  638. package/daemon/dist/domain/restore-runtime-compatibility.js.map +1 -0
  639. package/daemon/dist/domain/resume-metadata-refresher.d.ts +10 -5
  640. package/daemon/dist/domain/resume-metadata-refresher.d.ts.map +1 -1
  641. package/daemon/dist/domain/resume-metadata-refresher.js +109 -21
  642. package/daemon/dist/domain/resume-metadata-refresher.js.map +1 -1
  643. package/daemon/dist/domain/resume-token-capture.d.ts +1 -1
  644. package/daemon/dist/domain/resume-token-capture.d.ts.map +1 -1
  645. package/daemon/dist/domain/resume-token-capture.js +7 -1
  646. package/daemon/dist/domain/resume-token-capture.js.map +1 -1
  647. package/daemon/dist/domain/review/compose.d.ts.map +1 -1
  648. package/daemon/dist/domain/review/compose.js +5 -4
  649. package/daemon/dist/domain/review/compose.js.map +1 -1
  650. package/daemon/dist/domain/review/gather.d.ts +2 -1
  651. package/daemon/dist/domain/review/gather.d.ts.map +1 -1
  652. package/daemon/dist/domain/review/gather.js +25 -17
  653. package/daemon/dist/domain/review/gather.js.map +1 -1
  654. package/daemon/dist/domain/rig-lifecycle-service.d.ts +31 -8
  655. package/daemon/dist/domain/rig-lifecycle-service.d.ts.map +1 -1
  656. package/daemon/dist/domain/rig-lifecycle-service.js +253 -98
  657. package/daemon/dist/domain/rig-lifecycle-service.js.map +1 -1
  658. package/daemon/dist/domain/rig-mode/rig-mode-store.d.ts +11 -1
  659. package/daemon/dist/domain/rig-mode/rig-mode-store.d.ts.map +1 -1
  660. package/daemon/dist/domain/rig-mode/rig-mode-store.js +69 -48
  661. package/daemon/dist/domain/rig-mode/rig-mode-store.js.map +1 -1
  662. package/daemon/dist/domain/rig-repository.d.ts +18 -0
  663. package/daemon/dist/domain/rig-repository.d.ts.map +1 -1
  664. package/daemon/dist/domain/rig-repository.js +52 -1
  665. package/daemon/dist/domain/rig-repository.js.map +1 -1
  666. package/daemon/dist/domain/rig-teardown.d.ts +4 -1
  667. package/daemon/dist/domain/rig-teardown.d.ts.map +1 -1
  668. package/daemon/dist/domain/rig-teardown.js +40 -2
  669. package/daemon/dist/domain/rig-teardown.js.map +1 -1
  670. package/daemon/dist/domain/rigspec-codec.d.ts.map +1 -1
  671. package/daemon/dist/domain/rigspec-codec.js +7 -0
  672. package/daemon/dist/domain/rigspec-codec.js.map +1 -1
  673. package/daemon/dist/domain/rigspec-exporter.d.ts.map +1 -1
  674. package/daemon/dist/domain/rigspec-exporter.js +4 -0
  675. package/daemon/dist/domain/rigspec-exporter.js.map +1 -1
  676. package/daemon/dist/domain/rigspec-instantiator.d.ts +3 -0
  677. package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
  678. package/daemon/dist/domain/rigspec-instantiator.js +28 -5
  679. package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
  680. package/daemon/dist/domain/rigspec-preflight.d.ts.map +1 -1
  681. package/daemon/dist/domain/rigspec-preflight.js +25 -11
  682. package/daemon/dist/domain/rigspec-preflight.js.map +1 -1
  683. package/daemon/dist/domain/rigspec-schema.d.ts.map +1 -1
  684. package/daemon/dist/domain/rigspec-schema.js +24 -2
  685. package/daemon/dist/domain/rigspec-schema.js.map +1 -1
  686. package/daemon/dist/domain/runtime-adapter.d.ts +12 -0
  687. package/daemon/dist/domain/runtime-adapter.d.ts.map +1 -1
  688. package/daemon/dist/domain/runtime-adapter.js.map +1 -1
  689. package/daemon/dist/domain/runtime-verifier.d.ts +15 -1
  690. package/daemon/dist/domain/runtime-verifier.d.ts.map +1 -1
  691. package/daemon/dist/domain/runtime-verifier.js +28 -4
  692. package/daemon/dist/domain/runtime-verifier.js.map +1 -1
  693. package/daemon/dist/domain/scope/logical-checkbox.js +1 -1
  694. package/daemon/dist/domain/scope/logical-checkbox.js.map +1 -1
  695. package/daemon/dist/domain/scope/scope-view-projection.d.ts +4 -2
  696. package/daemon/dist/domain/scope/scope-view-projection.d.ts.map +1 -1
  697. package/daemon/dist/domain/scope/scope-view-projection.js +29 -14
  698. package/daemon/dist/domain/scope/scope-view-projection.js.map +1 -1
  699. package/daemon/dist/domain/seat-activity-service.d.ts +9 -2
  700. package/daemon/dist/domain/seat-activity-service.d.ts.map +1 -1
  701. package/daemon/dist/domain/seat-activity-service.js +100 -15
  702. package/daemon/dist/domain/seat-activity-service.js.map +1 -1
  703. package/daemon/dist/domain/seat-attention-reconciler.d.ts +3 -0
  704. package/daemon/dist/domain/seat-attention-reconciler.d.ts.map +1 -1
  705. package/daemon/dist/domain/seat-attention-reconciler.js +114 -7
  706. package/daemon/dist/domain/seat-attention-reconciler.js.map +1 -1
  707. package/daemon/dist/domain/seat-delivery-guard.d.ts +36 -1
  708. package/daemon/dist/domain/seat-delivery-guard.d.ts.map +1 -1
  709. package/daemon/dist/domain/seat-delivery-guard.js +255 -22
  710. package/daemon/dist/domain/seat-delivery-guard.js.map +1 -1
  711. package/daemon/dist/domain/seat-effort.d.ts +115 -0
  712. package/daemon/dist/domain/seat-effort.d.ts.map +1 -0
  713. package/daemon/dist/domain/seat-effort.js +233 -0
  714. package/daemon/dist/domain/seat-effort.js.map +1 -0
  715. package/daemon/dist/domain/seat-env.d.ts +37 -0
  716. package/daemon/dist/domain/seat-env.d.ts.map +1 -0
  717. package/daemon/dist/domain/seat-env.js +94 -0
  718. package/daemon/dist/domain/seat-env.js.map +1 -0
  719. package/daemon/dist/domain/seat-handover-service.d.ts +5 -0
  720. package/daemon/dist/domain/seat-handover-service.d.ts.map +1 -1
  721. package/daemon/dist/domain/seat-handover-service.js +22 -4
  722. package/daemon/dist/domain/seat-handover-service.js.map +1 -1
  723. package/daemon/dist/domain/seat-identity-reconciler.d.ts.map +1 -1
  724. package/daemon/dist/domain/seat-identity-reconciler.js +19 -2
  725. package/daemon/dist/domain/seat-identity-reconciler.js.map +1 -1
  726. package/daemon/dist/domain/seat-lifecycle-service.d.ts +234 -5
  727. package/daemon/dist/domain/seat-lifecycle-service.d.ts.map +1 -1
  728. package/daemon/dist/domain/seat-lifecycle-service.js +651 -95
  729. package/daemon/dist/domain/seat-lifecycle-service.js.map +1 -1
  730. package/daemon/dist/domain/seat-restart-in-place.d.ts +303 -0
  731. package/daemon/dist/domain/seat-restart-in-place.d.ts.map +1 -0
  732. package/daemon/dist/domain/seat-restart-in-place.js +914 -0
  733. package/daemon/dist/domain/seat-restart-in-place.js.map +1 -0
  734. package/daemon/dist/domain/seat-structural-activity-service.d.ts +7 -3
  735. package/daemon/dist/domain/seat-structural-activity-service.d.ts.map +1 -1
  736. package/daemon/dist/domain/seat-structural-activity-service.js +50 -15
  737. package/daemon/dist/domain/seat-structural-activity-service.js.map +1 -1
  738. package/daemon/dist/domain/session-fingerprinter.d.ts.map +1 -1
  739. package/daemon/dist/domain/session-fingerprinter.js +9 -5
  740. package/daemon/dist/domain/session-fingerprinter.js.map +1 -1
  741. package/daemon/dist/domain/session-registry.d.ts +16 -1
  742. package/daemon/dist/domain/session-registry.d.ts.map +1 -1
  743. package/daemon/dist/domain/session-registry.js +35 -3
  744. package/daemon/dist/domain/session-registry.js.map +1 -1
  745. package/daemon/dist/domain/session-transport.d.ts +141 -4
  746. package/daemon/dist/domain/session-transport.d.ts.map +1 -1
  747. package/daemon/dist/domain/session-transport.js +1496 -139
  748. package/daemon/dist/domain/session-transport.js.map +1 -1
  749. package/daemon/dist/domain/slices/slice-detail-projector.d.ts +2 -0
  750. package/daemon/dist/domain/slices/slice-detail-projector.d.ts.map +1 -1
  751. package/daemon/dist/domain/slices/slice-detail-projector.js +16 -4
  752. package/daemon/dist/domain/slices/slice-detail-projector.js.map +1 -1
  753. package/daemon/dist/domain/slices/slice-indexer.d.ts +10 -0
  754. package/daemon/dist/domain/slices/slice-indexer.d.ts.map +1 -1
  755. package/daemon/dist/domain/slices/slice-indexer.js +84 -4
  756. package/daemon/dist/domain/slices/slice-indexer.js.map +1 -1
  757. package/daemon/dist/domain/snapshot-repository.d.ts +3 -0
  758. package/daemon/dist/domain/snapshot-repository.d.ts.map +1 -1
  759. package/daemon/dist/domain/snapshot-repository.js +19 -2
  760. package/daemon/dist/domain/snapshot-repository.js.map +1 -1
  761. package/daemon/dist/domain/spec-library-workflow-scanner.d.ts +1 -1
  762. package/daemon/dist/domain/spec-library-workflow-scanner.d.ts.map +1 -1
  763. package/daemon/dist/domain/spec-library-workflow-scanner.js +24 -21
  764. package/daemon/dist/domain/spec-library-workflow-scanner.js.map +1 -1
  765. package/daemon/dist/domain/spec-validation-advisory.js +1 -1
  766. package/daemon/dist/domain/spec-validation-advisory.js.map +1 -1
  767. package/daemon/dist/domain/startup-orchestrator.d.ts +33 -3
  768. package/daemon/dist/domain/startup-orchestrator.d.ts.map +1 -1
  769. package/daemon/dist/domain/startup-orchestrator.js +220 -61
  770. package/daemon/dist/domain/startup-orchestrator.js.map +1 -1
  771. package/daemon/dist/domain/startup-submission-evidence.d.ts +13 -3
  772. package/daemon/dist/domain/startup-submission-evidence.d.ts.map +1 -1
  773. package/daemon/dist/domain/startup-submission-evidence.js +34 -25
  774. package/daemon/dist/domain/startup-submission-evidence.js.map +1 -1
  775. package/daemon/dist/domain/startup-validation.d.ts.map +1 -1
  776. package/daemon/dist/domain/startup-validation.js +3 -0
  777. package/daemon/dist/domain/startup-validation.js.map +1 -1
  778. package/daemon/dist/domain/successor-session-launcher.d.ts +10 -8
  779. package/daemon/dist/domain/successor-session-launcher.d.ts.map +1 -1
  780. package/daemon/dist/domain/successor-session-launcher.js +11 -33
  781. package/daemon/dist/domain/successor-session-launcher.js.map +1 -1
  782. package/daemon/dist/domain/text-cut.d.ts +4 -0
  783. package/daemon/dist/domain/text-cut.d.ts.map +1 -0
  784. package/daemon/dist/domain/text-cut.js +7 -0
  785. package/daemon/dist/domain/text-cut.js.map +1 -0
  786. package/daemon/dist/domain/time-bound-advisory.d.ts +5 -0
  787. package/daemon/dist/domain/time-bound-advisory.d.ts.map +1 -0
  788. package/daemon/dist/domain/time-bound-advisory.js +25 -0
  789. package/daemon/dist/domain/time-bound-advisory.js.map +1 -0
  790. package/daemon/dist/domain/transcript-capture.d.ts +7 -0
  791. package/daemon/dist/domain/transcript-capture.d.ts.map +1 -1
  792. package/daemon/dist/domain/transcript-capture.js +22 -1
  793. package/daemon/dist/domain/transcript-capture.js.map +1 -1
  794. package/daemon/dist/domain/transcript-rotation.d.ts +12 -4
  795. package/daemon/dist/domain/transcript-rotation.d.ts.map +1 -1
  796. package/daemon/dist/domain/transcript-rotation.js +185 -23
  797. package/daemon/dist/domain/transcript-rotation.js.map +1 -1
  798. package/daemon/dist/domain/transcript-store.d.ts +1 -1
  799. package/daemon/dist/domain/transcript-store.d.ts.map +1 -1
  800. package/daemon/dist/domain/transcript-store.js +8 -4
  801. package/daemon/dist/domain/transcript-store.js.map +1 -1
  802. package/daemon/dist/domain/types.d.ts +82 -3
  803. package/daemon/dist/domain/types.d.ts.map +1 -1
  804. package/daemon/dist/domain/types.js.map +1 -1
  805. package/daemon/dist/domain/usage-samples-store.d.ts +8 -0
  806. package/daemon/dist/domain/usage-samples-store.d.ts.map +1 -1
  807. package/daemon/dist/domain/usage-samples-store.js +24 -5
  808. package/daemon/dist/domain/usage-samples-store.js.map +1 -1
  809. package/daemon/dist/domain/usage-series.d.ts +154 -2
  810. package/daemon/dist/domain/usage-series.d.ts.map +1 -1
  811. package/daemon/dist/domain/usage-series.js +208 -9
  812. package/daemon/dist/domain/usage-series.js.map +1 -1
  813. package/daemon/dist/domain/user-settings/settings-store.d.ts +1 -1
  814. package/daemon/dist/domain/user-settings/settings-store.d.ts.map +1 -1
  815. package/daemon/dist/domain/user-settings/settings-store.js +67 -0
  816. package/daemon/dist/domain/user-settings/settings-store.js.map +1 -1
  817. package/daemon/dist/domain/wake-resolver.js +2 -2
  818. package/daemon/dist/domain/wake-resolver.js.map +1 -1
  819. package/daemon/dist/domain/watchdog-jobs-repository.d.ts +3 -1
  820. package/daemon/dist/domain/watchdog-jobs-repository.d.ts.map +1 -1
  821. package/daemon/dist/domain/watchdog-jobs-repository.js +32 -4
  822. package/daemon/dist/domain/watchdog-jobs-repository.js.map +1 -1
  823. package/daemon/dist/domain/watchdog-policy-engine.d.ts +1 -0
  824. package/daemon/dist/domain/watchdog-policy-engine.d.ts.map +1 -1
  825. package/daemon/dist/domain/watchdog-policy-engine.js +31 -2
  826. package/daemon/dist/domain/watchdog-policy-engine.js.map +1 -1
  827. package/daemon/dist/domain/whoami-service.d.ts +4 -1
  828. package/daemon/dist/domain/whoami-service.d.ts.map +1 -1
  829. package/daemon/dist/domain/whoami-service.js +25 -19
  830. package/daemon/dist/domain/whoami-service.js.map +1 -1
  831. package/daemon/dist/domain/workflow-exception-escalation.d.ts.map +1 -1
  832. package/daemon/dist/domain/workflow-exception-escalation.js +3 -1
  833. package/daemon/dist/domain/workflow-exception-escalation.js.map +1 -1
  834. package/daemon/dist/domain/workflow-exception-readiness.d.ts.map +1 -1
  835. package/daemon/dist/domain/workflow-exception-readiness.js +7 -3
  836. package/daemon/dist/domain/workflow-exception-readiness.js.map +1 -1
  837. package/daemon/dist/domain/workflow-instance-store.d.ts +11 -0
  838. package/daemon/dist/domain/workflow-instance-store.d.ts.map +1 -1
  839. package/daemon/dist/domain/workflow-instance-store.js +18 -4
  840. package/daemon/dist/domain/workflow-instance-store.js.map +1 -1
  841. package/daemon/dist/domain/workflow-projector.d.ts.map +1 -1
  842. package/daemon/dist/domain/workflow-projector.js +5 -3
  843. package/daemon/dist/domain/workflow-projector.js.map +1 -1
  844. package/daemon/dist/domain/workflow-rig-placeholder.d.ts +24 -0
  845. package/daemon/dist/domain/workflow-rig-placeholder.d.ts.map +1 -0
  846. package/daemon/dist/domain/workflow-rig-placeholder.js +43 -0
  847. package/daemon/dist/domain/workflow-rig-placeholder.js.map +1 -0
  848. package/daemon/dist/domain/workflow-runtime.d.ts +10 -1
  849. package/daemon/dist/domain/workflow-runtime.d.ts.map +1 -1
  850. package/daemon/dist/domain/workflow-runtime.js +26 -13
  851. package/daemon/dist/domain/workflow-runtime.js.map +1 -1
  852. package/daemon/dist/domain/workflow-scope.d.ts +50 -0
  853. package/daemon/dist/domain/workflow-scope.d.ts.map +1 -0
  854. package/daemon/dist/domain/workflow-scope.js +129 -0
  855. package/daemon/dist/domain/workflow-scope.js.map +1 -0
  856. package/daemon/dist/domain/workflow-spec-cache.d.ts +10 -0
  857. package/daemon/dist/domain/workflow-spec-cache.d.ts.map +1 -1
  858. package/daemon/dist/domain/workflow-spec-cache.js +13 -0
  859. package/daemon/dist/domain/workflow-spec-cache.js.map +1 -1
  860. package/daemon/dist/domain/workflow-types.d.ts +4 -0
  861. package/daemon/dist/domain/workflow-types.d.ts.map +1 -1
  862. package/daemon/dist/domain/workflow-types.js.map +1 -1
  863. package/daemon/dist/domain/workflow-validator.d.ts.map +1 -1
  864. package/daemon/dist/domain/workflow-validator.js +3 -1
  865. package/daemon/dist/domain/workflow-validator.js.map +1 -1
  866. package/daemon/dist/domain/workspace/project-read.d.ts +4 -0
  867. package/daemon/dist/domain/workspace/project-read.d.ts.map +1 -1
  868. package/daemon/dist/domain/workspace/project-read.js +23 -8
  869. package/daemon/dist/domain/workspace/project-read.js.map +1 -1
  870. package/daemon/dist/index.d.ts.map +1 -1
  871. package/daemon/dist/index.js +16 -0
  872. package/daemon/dist/index.js.map +1 -1
  873. package/daemon/dist/lib/pane-envelope.js +1 -1
  874. package/daemon/dist/lib/pane-envelope.js.map +1 -1
  875. package/daemon/dist/middleware/json-body-error.d.ts +4 -3
  876. package/daemon/dist/middleware/json-body-error.d.ts.map +1 -1
  877. package/daemon/dist/middleware/json-body-error.js +18 -4
  878. package/daemon/dist/middleware/json-body-error.js.map +1 -1
  879. package/daemon/dist/routes/activity.d.ts.map +1 -1
  880. package/daemon/dist/routes/activity.js +78 -0
  881. package/daemon/dist/routes/activity.js.map +1 -1
  882. package/daemon/dist/routes/bundles.d.ts.map +1 -1
  883. package/daemon/dist/routes/bundles.js +39 -16
  884. package/daemon/dist/routes/bundles.js.map +1 -1
  885. package/daemon/dist/routes/chat.d.ts.map +1 -1
  886. package/daemon/dist/routes/chat.js +23 -2
  887. package/daemon/dist/routes/chat.js.map +1 -1
  888. package/daemon/dist/routes/community-harnesses.d.ts +3 -0
  889. package/daemon/dist/routes/community-harnesses.d.ts.map +1 -0
  890. package/daemon/dist/routes/community-harnesses.js +18 -0
  891. package/daemon/dist/routes/community-harnesses.js.map +1 -0
  892. package/daemon/dist/routes/compaction.d.ts +3 -0
  893. package/daemon/dist/routes/compaction.d.ts.map +1 -1
  894. package/daemon/dist/routes/compaction.js +14 -2
  895. package/daemon/dist/routes/compaction.js.map +1 -1
  896. package/daemon/dist/routes/events.js +26 -12
  897. package/daemon/dist/routes/events.js.map +1 -1
  898. package/daemon/dist/routes/gateway.d.ts +3 -0
  899. package/daemon/dist/routes/gateway.d.ts.map +1 -1
  900. package/daemon/dist/routes/gateway.js +15 -0
  901. package/daemon/dist/routes/gateway.js.map +1 -1
  902. package/daemon/dist/routes/hosts.d.ts.map +1 -1
  903. package/daemon/dist/routes/hosts.js +2 -1
  904. package/daemon/dist/routes/hosts.js.map +1 -1
  905. package/daemon/dist/routes/proof.d.ts.map +1 -1
  906. package/daemon/dist/routes/proof.js +99 -10
  907. package/daemon/dist/routes/proof.js.map +1 -1
  908. package/daemon/dist/routes/provider.d.ts +11 -1
  909. package/daemon/dist/routes/provider.d.ts.map +1 -1
  910. package/daemon/dist/routes/provider.js +204 -1
  911. package/daemon/dist/routes/provider.js.map +1 -1
  912. package/daemon/dist/routes/query-limit.d.ts +1 -0
  913. package/daemon/dist/routes/query-limit.d.ts.map +1 -1
  914. package/daemon/dist/routes/query-limit.js +1 -1
  915. package/daemon/dist/routes/query-limit.js.map +1 -1
  916. package/daemon/dist/routes/queue.d.ts.map +1 -1
  917. package/daemon/dist/routes/queue.js +62 -9
  918. package/daemon/dist/routes/queue.js.map +1 -1
  919. package/daemon/dist/routes/rig-mode.d.ts.map +1 -1
  920. package/daemon/dist/routes/rig-mode.js +66 -11
  921. package/daemon/dist/routes/rig-mode.js.map +1 -1
  922. package/daemon/dist/routes/rigs.js +5 -3
  923. package/daemon/dist/routes/rigs.js.map +1 -1
  924. package/daemon/dist/routes/scope-audit.d.ts.map +1 -1
  925. package/daemon/dist/routes/scope-audit.js +10 -0
  926. package/daemon/dist/routes/scope-audit.js.map +1 -1
  927. package/daemon/dist/routes/scopes.d.ts.map +1 -1
  928. package/daemon/dist/routes/scopes.js +5 -3
  929. package/daemon/dist/routes/scopes.js.map +1 -1
  930. package/daemon/dist/routes/seat.d.ts.map +1 -1
  931. package/daemon/dist/routes/seat.js +95 -12
  932. package/daemon/dist/routes/seat.js.map +1 -1
  933. package/daemon/dist/routes/sessions.js +1 -1
  934. package/daemon/dist/routes/startup.d.ts.map +1 -1
  935. package/daemon/dist/routes/startup.js +9 -2
  936. package/daemon/dist/routes/startup.js.map +1 -1
  937. package/daemon/dist/routes/telemetry.d.ts.map +1 -1
  938. package/daemon/dist/routes/telemetry.js +13 -3
  939. package/daemon/dist/routes/telemetry.js.map +1 -1
  940. package/daemon/dist/routes/transcripts.d.ts.map +1 -1
  941. package/daemon/dist/routes/transcripts.js +14 -5
  942. package/daemon/dist/routes/transcripts.js.map +1 -1
  943. package/daemon/dist/routes/transport.d.ts.map +1 -1
  944. package/daemon/dist/routes/transport.js +13 -2
  945. package/daemon/dist/routes/transport.js.map +1 -1
  946. package/daemon/dist/routes/up.d.ts.map +1 -1
  947. package/daemon/dist/routes/up.js +4 -0
  948. package/daemon/dist/routes/up.js.map +1 -1
  949. package/daemon/dist/routes/workflow.d.ts.map +1 -1
  950. package/daemon/dist/routes/workflow.js +50 -1
  951. package/daemon/dist/routes/workflow.js.map +1 -1
  952. package/daemon/dist/server.d.ts.map +1 -1
  953. package/daemon/dist/server.js +4 -1
  954. package/daemon/dist/server.js.map +1 -1
  955. package/daemon/dist/spec-validation-surface.d.ts +1 -1
  956. package/daemon/dist/spec-validation-surface.d.ts.map +1 -1
  957. package/daemon/dist/spec-validation-surface.js +1 -1
  958. package/daemon/dist/spec-validation-surface.js.map +1 -1
  959. package/daemon/dist/startup.d.ts +3 -1
  960. package/daemon/dist/startup.d.ts.map +1 -1
  961. package/daemon/dist/startup.js +150 -54
  962. package/daemon/dist/startup.js.map +1 -1
  963. package/daemon/dist/workflow-scope-surface.d.ts +2 -0
  964. package/daemon/dist/workflow-scope-surface.d.ts.map +1 -0
  965. package/daemon/dist/workflow-scope-surface.js +2 -0
  966. package/daemon/dist/workflow-scope-surface.js.map +1 -0
  967. package/daemon/docs/reference/agent-spec.md +4 -2
  968. package/daemon/docs/reference/agent-startup-guide.md +114 -6
  969. package/daemon/docs/reference/claude-status-line.md +69 -0
  970. package/daemon/docs/reference/getting-started.md +39 -6
  971. package/daemon/docs/reference/keeping-a-watch.md +253 -0
  972. package/daemon/docs/reference/project-workspace.md +70 -1
  973. package/daemon/docs/reference/publishing-a-rig-bundle.md +6 -1
  974. package/daemon/docs/reference/refocus-channel.md +41 -5
  975. package/daemon/docs/reference/rig-bundle.md +26 -2
  976. package/daemon/docs/reference/rig-spec.md +66 -5
  977. package/daemon/docs/reference/schemas/bundle-behaviour.v1.schema.json +105 -2
  978. package/daemon/docs/reference/scoped-operating-posture.md +12 -2
  979. package/daemon/docs/reference/sdlc-conventions.md +50 -2
  980. package/daemon/docs/reference/seat-delivery.md +127 -0
  981. package/daemon/docs/reference/slack-app-setup.md +147 -17
  982. package/daemon/docs/reference/topology-naming.md +9 -0
  983. package/daemon/docs/reference/whats-new.md +169 -147
  984. package/daemon/specs/agents/shared/skills/core/openrig-skills/SKILL.md +2 -2
  985. package/daemon/specs/agents/shared/skills/core/openrig-software-factory/SKILL.md +0 -1
  986. package/daemon/specs/agents/shared/skills/core/openrig-software-factory/references/worked-example.md +7 -4
  987. package/daemon/specs/agents/shared/skills/core/topology-mutation-and-seat-management/SKILL.md +1 -1
  988. package/daemon/specs/agents/shared/skills/pods/orchestration-team/SKILL.md +1 -1
  989. package/daemon/specs/rigs/launch/demo/CULTURE.md +1 -1
  990. package/daemon/specs/rigs/launch/factory/CULTURE.md +1 -1
  991. package/daemon/specs/rigs/launch/factory/topology/rig/CRAFT.md +2 -2
  992. package/daemon/specs/rigs/launch/first-project/CULTURE.md +2 -1
  993. package/daemon/specs/rigs/launch/first-project-claude/CULTURE.md +2 -1
  994. package/daemon/specs/rigs/launch/first-project-mixed/CULTURE.md +2 -1
  995. package/daemon/specs/rigs/launch/kernel/agents/operator/agent/guidance/role.md +9 -2
  996. package/daemon/specs/rigs/launch/starter/CULTURE.md +2 -1
  997. package/daemon/specs/rigs/preview/product-team/CULTURE.md +1 -1
  998. package/dist/bin-wrapper.d.ts +2 -1
  999. package/dist/bin-wrapper.d.ts.map +1 -1
  1000. package/dist/bin-wrapper.js +61 -4
  1001. package/dist/bin-wrapper.js.map +1 -1
  1002. package/dist/build-info.js +3 -3
  1003. package/dist/bundle-behaviour.d.ts.map +1 -1
  1004. package/dist/bundle-behaviour.js +22 -0
  1005. package/dist/bundle-behaviour.js.map +1 -1
  1006. package/dist/client.d.ts.map +1 -1
  1007. package/dist/client.js +3 -3
  1008. package/dist/client.js.map +1 -1
  1009. package/dist/commands/add.d.ts.map +1 -1
  1010. package/dist/commands/add.js +1 -1
  1011. package/dist/commands/add.js.map +1 -1
  1012. package/dist/commands/ask.d.ts.map +1 -1
  1013. package/dist/commands/ask.js +16 -5
  1014. package/dist/commands/ask.js.map +1 -1
  1015. package/dist/commands/bootstrap.d.ts.map +1 -1
  1016. package/dist/commands/bootstrap.js +9 -5
  1017. package/dist/commands/bootstrap.js.map +1 -1
  1018. package/dist/commands/bundle.d.ts.map +1 -1
  1019. package/dist/commands/bundle.js +8 -0
  1020. package/dist/commands/bundle.js.map +1 -1
  1021. package/dist/commands/capture.d.ts +4 -0
  1022. package/dist/commands/capture.d.ts.map +1 -1
  1023. package/dist/commands/capture.js +15 -2
  1024. package/dist/commands/capture.js.map +1 -1
  1025. package/dist/commands/community-harness.d.ts +4 -0
  1026. package/dist/commands/community-harness.d.ts.map +1 -0
  1027. package/dist/commands/community-harness.js +48 -0
  1028. package/dist/commands/community-harness.js.map +1 -0
  1029. package/dist/commands/compact.d.ts.map +1 -1
  1030. package/dist/commands/compact.js +8 -4
  1031. package/dist/commands/compact.js.map +1 -1
  1032. package/dist/commands/config.d.ts.map +1 -1
  1033. package/dist/commands/config.js +8 -0
  1034. package/dist/commands/config.js.map +1 -1
  1035. package/dist/commands/crash-cart.d.ts.map +1 -1
  1036. package/dist/commands/crash-cart.js +3 -5
  1037. package/dist/commands/crash-cart.js.map +1 -1
  1038. package/dist/commands/create.d.ts.map +1 -1
  1039. package/dist/commands/create.js +7 -5
  1040. package/dist/commands/create.js.map +1 -1
  1041. package/dist/commands/daemon.d.ts.map +1 -1
  1042. package/dist/commands/daemon.js +7 -0
  1043. package/dist/commands/daemon.js.map +1 -1
  1044. package/dist/commands/down.d.ts.map +1 -1
  1045. package/dist/commands/down.js +2 -1
  1046. package/dist/commands/down.js.map +1 -1
  1047. package/dist/commands/launch.d.ts +1 -0
  1048. package/dist/commands/launch.d.ts.map +1 -1
  1049. package/dist/commands/launch.js +61 -10
  1050. package/dist/commands/launch.js.map +1 -1
  1051. package/dist/commands/policy.d.ts +2 -1
  1052. package/dist/commands/policy.d.ts.map +1 -1
  1053. package/dist/commands/policy.js +66 -7
  1054. package/dist/commands/policy.js.map +1 -1
  1055. package/dist/commands/proof.d.ts.map +1 -1
  1056. package/dist/commands/proof.js +11 -5
  1057. package/dist/commands/proof.js.map +1 -1
  1058. package/dist/commands/provider.d.ts +2 -0
  1059. package/dist/commands/provider.d.ts.map +1 -1
  1060. package/dist/commands/provider.js +360 -1
  1061. package/dist/commands/provider.js.map +1 -1
  1062. package/dist/commands/ps.d.ts +15 -0
  1063. package/dist/commands/ps.d.ts.map +1 -1
  1064. package/dist/commands/ps.js +53 -10
  1065. package/dist/commands/ps.js.map +1 -1
  1066. package/dist/commands/queue.d.ts +15 -5
  1067. package/dist/commands/queue.d.ts.map +1 -1
  1068. package/dist/commands/queue.js +172 -47
  1069. package/dist/commands/queue.js.map +1 -1
  1070. package/dist/commands/requirements.d.ts.map +1 -1
  1071. package/dist/commands/requirements.js +8 -5
  1072. package/dist/commands/requirements.js.map +1 -1
  1073. package/dist/commands/restore.js +1 -1
  1074. package/dist/commands/restore.js.map +1 -1
  1075. package/dist/commands/rig-mode.d.ts.map +1 -1
  1076. package/dist/commands/rig-mode.js +106 -18
  1077. package/dist/commands/rig-mode.js.map +1 -1
  1078. package/dist/commands/scope.d.ts.map +1 -1
  1079. package/dist/commands/scope.js +103 -44
  1080. package/dist/commands/scope.js.map +1 -1
  1081. package/dist/commands/seat.d.ts.map +1 -1
  1082. package/dist/commands/seat.js +290 -28
  1083. package/dist/commands/seat.js.map +1 -1
  1084. package/dist/commands/send.d.ts +2 -2
  1085. package/dist/commands/send.d.ts.map +1 -1
  1086. package/dist/commands/send.js +79 -12
  1087. package/dist/commands/send.js.map +1 -1
  1088. package/dist/commands/slack.d.ts.map +1 -1
  1089. package/dist/commands/slack.js +9 -4
  1090. package/dist/commands/slack.js.map +1 -1
  1091. package/dist/commands/start.d.ts +11 -0
  1092. package/dist/commands/start.d.ts.map +1 -1
  1093. package/dist/commands/start.js +81 -6
  1094. package/dist/commands/start.js.map +1 -1
  1095. package/dist/commands/status.d.ts.map +1 -1
  1096. package/dist/commands/status.js +60 -2
  1097. package/dist/commands/status.js.map +1 -1
  1098. package/dist/commands/up.d.ts.map +1 -1
  1099. package/dist/commands/up.js +68 -0
  1100. package/dist/commands/up.js.map +1 -1
  1101. package/dist/commands/usage.d.ts +12 -0
  1102. package/dist/commands/usage.d.ts.map +1 -1
  1103. package/dist/commands/usage.js +107 -0
  1104. package/dist/commands/usage.js.map +1 -1
  1105. package/dist/commands/watchdog.d.ts.map +1 -1
  1106. package/dist/commands/watchdog.js +20 -7
  1107. package/dist/commands/watchdog.js.map +1 -1
  1108. package/dist/commands/whoami.d.ts +36 -0
  1109. package/dist/commands/whoami.d.ts.map +1 -1
  1110. package/dist/commands/whoami.js +125 -7
  1111. package/dist/commands/whoami.js.map +1 -1
  1112. package/dist/commands/workflow.d.ts.map +1 -1
  1113. package/dist/commands/workflow.js +53 -5
  1114. package/dist/commands/workflow.js.map +1 -1
  1115. package/dist/config-store.d.ts +20 -1
  1116. package/dist/config-store.d.ts.map +1 -1
  1117. package/dist/config-store.js +92 -0
  1118. package/dist/config-store.js.map +1 -1
  1119. package/dist/daemon-lifecycle.d.ts +2 -2
  1120. package/dist/daemon-lifecycle.d.ts.map +1 -1
  1121. package/dist/daemon-lifecycle.js +5 -4
  1122. package/dist/daemon-lifecycle.js.map +1 -1
  1123. package/dist/host-registry.d.ts.map +1 -1
  1124. package/dist/host-registry.js +6 -3
  1125. package/dist/host-registry.js.map +1 -1
  1126. package/dist/index.d.ts +1 -0
  1127. package/dist/index.d.ts.map +1 -1
  1128. package/dist/index.js +4 -7
  1129. package/dist/index.js.map +1 -1
  1130. package/dist/lazy-program.d.ts +9 -0
  1131. package/dist/lazy-program.d.ts.map +1 -0
  1132. package/dist/lazy-program.js +111 -0
  1133. package/dist/lazy-program.js.map +1 -0
  1134. package/dist/lib/bundle-check.js +2 -2
  1135. package/dist/lib/bundle-check.js.map +1 -1
  1136. package/dist/lib/bundle-source.d.ts +1 -0
  1137. package/dist/lib/bundle-source.d.ts.map +1 -1
  1138. package/dist/lib/bundle-source.js +1 -0
  1139. package/dist/lib/bundle-source.js.map +1 -1
  1140. package/dist/lib/codex-auth.d.ts.map +1 -1
  1141. package/dist/lib/codex-auth.js +17 -1
  1142. package/dist/lib/codex-auth.js.map +1 -1
  1143. package/dist/lib/context-install.js +1 -1
  1144. package/dist/lib/context-install.js.map +1 -1
  1145. package/dist/lib/file-transfer.js +1 -1
  1146. package/dist/lib/file-transfer.js.map +1 -1
  1147. package/dist/lib/frontmatter.d.ts +11 -0
  1148. package/dist/lib/frontmatter.d.ts.map +1 -0
  1149. package/dist/lib/frontmatter.js +20 -0
  1150. package/dist/lib/frontmatter.js.map +1 -0
  1151. package/dist/lib/permission-policy/policy-spec.d.ts.map +1 -1
  1152. package/dist/lib/permission-policy/policy-spec.js +5 -7
  1153. package/dist/lib/permission-policy/policy-spec.js.map +1 -1
  1154. package/dist/lib/scope/logical-checkbox.js +1 -1
  1155. package/dist/lib/scope/logical-checkbox.js.map +1 -1
  1156. package/dist/lib/scope/mission-composition.d.ts +5 -1
  1157. package/dist/lib/scope/mission-composition.d.ts.map +1 -1
  1158. package/dist/lib/scope/mission-composition.js +61 -1
  1159. package/dist/lib/scope/mission-composition.js.map +1 -1
  1160. package/dist/lib/scope/scope-fs.d.ts +10 -1
  1161. package/dist/lib/scope/scope-fs.d.ts.map +1 -1
  1162. package/dist/lib/scope/scope-fs.js +54 -5
  1163. package/dist/lib/scope/scope-fs.js.map +1 -1
  1164. package/dist/lib/scope/slice-claims.d.ts +8 -0
  1165. package/dist/lib/scope/slice-claims.d.ts.map +1 -0
  1166. package/dist/lib/scope/slice-claims.js +88 -0
  1167. package/dist/lib/scope/slice-claims.js.map +1 -0
  1168. package/dist/lib/work-install.d.ts.map +1 -1
  1169. package/dist/lib/work-install.js +3 -13
  1170. package/dist/lib/work-install.js.map +1 -1
  1171. package/dist/mcp-server.d.ts.map +1 -1
  1172. package/dist/mcp-server.js +113 -0
  1173. package/dist/mcp-server.js.map +1 -1
  1174. package/dist/program-root.d.ts +5 -0
  1175. package/dist/program-root.d.ts.map +1 -0
  1176. package/dist/program-root.js +11 -0
  1177. package/dist/program-root.js.map +1 -0
  1178. package/dist/queue-read-compact.d.ts +29 -0
  1179. package/dist/queue-read-compact.d.ts.map +1 -0
  1180. package/dist/queue-read-compact.js +74 -0
  1181. package/dist/queue-read-compact.js.map +1 -0
  1182. package/dist/queue-receipt.d.ts +41 -0
  1183. package/dist/queue-receipt.d.ts.map +1 -0
  1184. package/dist/queue-receipt.js +272 -0
  1185. package/dist/queue-receipt.js.map +1 -0
  1186. package/dist/remote-host-ops.d.ts +21 -0
  1187. package/dist/remote-host-ops.d.ts.map +1 -1
  1188. package/dist/remote-host-ops.js +25 -12
  1189. package/dist/remote-host-ops.js.map +1 -1
  1190. package/package.json +1 -1
  1191. package/tui/dist/commands/registry.d.ts.map +1 -1
  1192. package/tui/dist/commands/registry.js +3 -0
  1193. package/tui/dist/commands/registry.js.map +1 -1
  1194. package/tui/dist/config/config-model.d.ts.map +1 -1
  1195. package/tui/dist/config/config-model.js +7 -0
  1196. package/tui/dist/config/config-model.js.map +1 -1
  1197. package/tui/dist/cost/cost-model.d.ts +12 -0
  1198. package/tui/dist/cost/cost-model.d.ts.map +1 -0
  1199. package/tui/dist/cost/cost-model.js +141 -0
  1200. package/tui/dist/cost/cost-model.js.map +1 -0
  1201. package/tui/dist/cost/cost-read.d.ts +19 -0
  1202. package/tui/dist/cost/cost-read.d.ts.map +1 -0
  1203. package/tui/dist/cost/cost-read.js +4 -0
  1204. package/tui/dist/cost/cost-read.js.map +1 -0
  1205. package/tui/dist/daemon-client.d.ts +13 -0
  1206. package/tui/dist/daemon-client.d.ts.map +1 -1
  1207. package/tui/dist/daemon-client.js +77 -1
  1208. package/tui/dist/daemon-client.js.map +1 -1
  1209. package/tui/dist/detail.d.ts +2 -0
  1210. package/tui/dist/detail.d.ts.map +1 -1
  1211. package/tui/dist/detail.js +5 -0
  1212. package/tui/dist/detail.js.map +1 -1
  1213. package/tui/dist/execution/execution-model.d.ts.map +1 -1
  1214. package/tui/dist/execution/execution-model.js +38 -18
  1215. package/tui/dist/execution/execution-model.js.map +1 -1
  1216. package/tui/dist/helper-cwd.d.ts +3 -0
  1217. package/tui/dist/helper-cwd.d.ts.map +1 -0
  1218. package/tui/dist/helper-cwd.js +16 -0
  1219. package/tui/dist/helper-cwd.js.map +1 -0
  1220. package/tui/dist/hydrate.d.ts.map +1 -1
  1221. package/tui/dist/hydrate.js +43 -5
  1222. package/tui/dist/hydrate.js.map +1 -1
  1223. package/tui/dist/input.d.ts.map +1 -1
  1224. package/tui/dist/input.js +2 -1
  1225. package/tui/dist/input.js.map +1 -1
  1226. package/tui/dist/local-reading.d.ts.map +1 -1
  1227. package/tui/dist/local-reading.js +2 -1
  1228. package/tui/dist/local-reading.js.map +1 -1
  1229. package/tui/dist/main.js +6 -5
  1230. package/tui/dist/main.js.map +1 -1
  1231. package/tui/dist/pulse/pulse-model.d.ts +1 -0
  1232. package/tui/dist/pulse/pulse-model.d.ts.map +1 -1
  1233. package/tui/dist/pulse/pulse-model.js +7 -3
  1234. package/tui/dist/pulse/pulse-model.js.map +1 -1
  1235. package/tui/dist/pulse/render-pulse.d.ts.map +1 -1
  1236. package/tui/dist/pulse/render-pulse.js +10 -2
  1237. package/tui/dist/pulse/render-pulse.js.map +1 -1
  1238. package/tui/dist/reading.js +1 -1
  1239. package/tui/dist/reading.js.map +1 -1
  1240. package/tui/dist/render.d.ts.map +1 -1
  1241. package/tui/dist/render.js +36 -12
  1242. package/tui/dist/render.js.map +1 -1
  1243. package/tui/dist/scopes/scopes-model.d.ts +6 -1
  1244. package/tui/dist/scopes/scopes-model.d.ts.map +1 -1
  1245. package/tui/dist/scopes/scopes-model.js +33 -13
  1246. package/tui/dist/scopes/scopes-model.js.map +1 -1
  1247. package/tui/dist/sections.d.ts.map +1 -1
  1248. package/tui/dist/sections.js +4 -1
  1249. package/tui/dist/sections.js.map +1 -1
  1250. package/tui/dist/socket-server.d.ts.map +1 -1
  1251. package/tui/dist/socket-server.js +2 -1
  1252. package/tui/dist/socket-server.js.map +1 -1
  1253. package/tui/dist/specs/launch.d.ts.map +1 -1
  1254. package/tui/dist/specs/launch.js +2 -1
  1255. package/tui/dist/specs/launch.js.map +1 -1
  1256. package/tui/dist/startup.js +1 -1
  1257. package/tui/dist/startup.js.map +1 -1
  1258. package/tui/dist/state.d.ts.map +1 -1
  1259. package/tui/dist/state.js +8 -4
  1260. package/tui/dist/state.js.map +1 -1
  1261. package/tui/dist/terminals/open-window.d.ts.map +1 -1
  1262. package/tui/dist/terminals/open-window.js +2 -1
  1263. package/tui/dist/terminals/open-window.js.map +1 -1
  1264. package/tui/dist/types.d.ts +12 -0
  1265. package/tui/dist/types.d.ts.map +1 -1
  1266. package/tui/dist/usage/usage-hosts-model.d.ts +17 -0
  1267. package/tui/dist/usage/usage-hosts-model.d.ts.map +1 -0
  1268. package/tui/dist/usage/usage-hosts-model.js +73 -0
  1269. package/tui/dist/usage/usage-hosts-model.js.map +1 -0
  1270. package/tui/dist/usage/usage-model.d.ts +39 -0
  1271. package/tui/dist/usage/usage-model.d.ts.map +1 -0
  1272. package/tui/dist/usage/usage-model.js +161 -0
  1273. package/tui/dist/usage/usage-model.js.map +1 -0
  1274. package/ui/dist/assets/{index-D5n8EwkG.js → index-Cfbtfd9G.js} +159 -159
  1275. package/ui/dist/index.html +1 -1
@@ -1,4 +1,5 @@
1
1
  import type { FourBlockReadModel, PrecheckResult } from "./provider-types.js";
2
+ import type { UsageRefreshResult } from "./usage-windows.js";
2
3
  export interface ProviderPrecheckInput {
3
4
  seat: string;
4
5
  toAccount: string;
@@ -29,5 +30,11 @@ export interface ProviderService {
29
30
  precheck(input: ProviderPrecheckInput): Promise<PrecheckResult>;
30
31
  /** Precheck-gated switch; returns an explicit business outcome (never a transport error). */
31
32
  switchAccount(input: ProviderSwitchInput): Promise<ProviderSwitchResult>;
33
+ /** Slice 01: one bounded native read of the usage windows (coalesced); `disabled` while the switch is off. */
34
+ refreshUsage?(provider: "codex" | "claude"): Promise<UsageRefreshResult | {
35
+ disabled: true;
36
+ } | {
37
+ unavailable: true;
38
+ }>;
32
39
  }
33
40
  //# sourceMappingURL=provider-service.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider-service.d.ts","sourceRoot":"","sources":["../../../src/domain/provider/provider-service.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAE9E,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAC5B;IAAE,OAAO,EAAE,WAAW,CAAA;CAAE,GACxB;IAAE,OAAO,EAAE,oBAAoB,CAAA;CAAE,GACjC;IAAE,OAAO,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,CAAA;CAAE,CAAC;AAEjE,MAAM,WAAW,eAAe;IAC9B,wFAAwF;IACxF,YAAY,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC5C,kGAAkG;IAClG,QAAQ,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAChE,6FAA6F;IAC7F,aAAa,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;CAC1E"}
1
+ {"version":3,"file":"provider-service.d.ts","sourceRoot":"","sources":["../../../src/domain/provider/provider-service.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC9E,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAC;AAE7D,MAAM,WAAW,qBAAqB;IACpC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;;;;GAKG;AACH,MAAM,MAAM,oBAAoB,GAC5B;IAAE,OAAO,EAAE,WAAW,CAAA;CAAE,GACxB;IAAE,OAAO,EAAE,oBAAoB,CAAA;CAAE,GACjC;IAAE,OAAO,EAAE,eAAe,CAAC;IAAC,OAAO,EAAE,CAAC,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,CAAA;CAAE,CAAC;AAEjE,MAAM,WAAW,eAAe;IAC9B,wFAAwF;IACxF,YAAY,IAAI,OAAO,CAAC,kBAAkB,CAAC,CAAC;IAC5C,kGAAkG;IAClG,QAAQ,CAAC,KAAK,EAAE,qBAAqB,GAAG,OAAO,CAAC,cAAc,CAAC,CAAC;IAChE,6FAA6F;IAC7F,aAAa,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACzE,8GAA8G;IAC9G,YAAY,CAAC,CAAC,QAAQ,EAAE,OAAO,GAAG,QAAQ,GAAG,OAAO,CAAC,kBAAkB,GAAG;QAAE,QAAQ,EAAE,IAAI,CAAA;KAAE,GAAG;QAAE,WAAW,EAAE,IAAI,CAAA;KAAE,CAAC,CAAC;CACvH"}
@@ -97,5 +97,138 @@ export interface FourBlockReadModel {
97
97
  * row per (host, provider) aggregated from the seat-sourced signal rows. Optional so the
98
98
  * sealed assembler stays untouched; the collect layer always populates it. */
99
99
  hostUsage?: HostUsageRow[];
100
+ /** Slice 01 (OPR.0.7.0.1) — observed usage windows by allowance identity, ADDITIVE and present
101
+ * only while `provider.usage_windows` is on. Read from memory; never probed by a read. */
102
+ usage?: ProviderUsageAllowance[];
103
+ /** Slice 01 — each live seat's CONFIGURED account and its source, kept apart from observed allowances
104
+ * (never linked to a usage row). ADDITIVE and present only while `provider.usage_windows` is on. */
105
+ seatAccounts?: SeatConfiguredAccount[];
106
+ }
107
+ /** Slice 01 — where a seat's account configuration comes from. A registry row is metadata: it doesn't prove
108
+ * which login a running session uses. A default login is whatever the daemon's home held at the seat's launch. */
109
+ export type SeatAccountConfiguration = {
110
+ source: "registry";
111
+ profileRef: string;
112
+ recordedAt: string;
113
+ profileSaved: boolean | null;
114
+ } | {
115
+ source: "default_login";
116
+ home: string | null;
117
+ homeNote: string;
118
+ } | {
119
+ source: "unknown";
120
+ reason: string;
121
+ };
122
+ export interface SeatConfiguredAccount {
123
+ seatSession: string;
124
+ rigName: string;
125
+ runtime: string;
126
+ configured: SeatAccountConfiguration;
127
+ /** A registry row that exists but isn't applied or doesn't match (stale after a runtime change, another
128
+ * runtime in its column, or a profile not saved on this host). */
129
+ registryNotes?: string[];
130
+ /** Always unlinked: nothing supported links a configured account to an observed allowance. */
131
+ allowance: {
132
+ linked: false;
133
+ reason: string;
134
+ };
135
+ /** What this seat itself was observed reporting. Claude: its own status-line samples, and the seats whose
136
+ * fresh readings disagree with it (possibly a different login, never a verdict). `withheld` when several
137
+ * seats share this session name, so samples keyed by it can't be attributed to one seat. */
138
+ observed?: {
139
+ windowsSampled?: boolean;
140
+ lastSampledAt?: string;
141
+ differsFrom?: string[];
142
+ withheld?: true;
143
+ note?: string;
144
+ };
145
+ }
146
+ /** Slice 01 — allowance identity: the usage answer's accountId, else the workspace account/read
147
+ * reports, else unresolved; with the bucket (limitId). Email and plan are labels, never identity. */
148
+ export interface UsageAllowanceIdentity {
149
+ accountId: string | null;
150
+ workspaceId: string | null;
151
+ limitId: string;
152
+ email: string | null;
153
+ planType: string | null;
154
+ source: "account/rateLimits/read accountId" | "account/read workspace routing" | "unresolved";
155
+ }
156
+ /** Slice 01 — a Claude allowance's identity: the organisation and email `claude auth status` reports, with the
157
+ * bucket (the status line's windows cover all models). Claude reports no per-account id, and members of one
158
+ * organisation have their own limits, so the email is part of the identity here (unlike Codex). */
159
+ export interface ClaudeUsageIdentity {
160
+ orgId: string | null;
161
+ limitId: string;
162
+ email: string | null;
163
+ /** Labels only, never part of the key. */
164
+ orgName: string | null;
165
+ subscriptionType: string | null;
166
+ source: "claude auth status orgId and email" | "unresolved";
167
+ }
168
+ export interface UsageWindowRow {
169
+ /** The provider-native window name (Codex: primary / secondary). */
170
+ window: string;
171
+ durationMins: number | null;
172
+ usedPercent: number | null;
173
+ /** 100 − usedPercent: a percentage; the provider reports no absolute amount. */
174
+ remainingPercent: number | null;
175
+ resetsAt: string | null;
176
+ /** When the native read answered (Claude: the status line's own time for the sample): freshness ages from this. */
177
+ observedAt: string;
178
+ /** Claude: the seat whose status-line sample this window is. */
179
+ seatSession?: string;
180
+ /** Claude: other seats whose fresh readings of this window disagree (a reset more than 60 s apart), with their own
181
+ * numbers, so which login is where can be read from the row. Present only when they disagree. */
182
+ disagreeingSeats?: Array<{
183
+ seatSession: string;
184
+ usedPercent: number;
185
+ resetsAt: string | null;
186
+ observedAt: string;
187
+ }>;
188
+ level: "ok" | "nearing" | "exhausted" | "unknown";
189
+ levelReason?: string;
190
+ freshness: "fresh" | "stale" | "unavailable";
191
+ freshnessReason?: string;
192
+ }
193
+ export interface UsageRefreshOutcome {
194
+ at: string;
195
+ outcome: "ok" | "failed";
196
+ reason?: string;
197
+ detail?: string;
198
+ }
199
+ export interface ProviderUsageAllowance {
200
+ provider: ProviderKind;
201
+ /** Null only for the explicit row of a source never read since the daemon started. */
202
+ identity: UsageAllowanceIdentity | ClaudeUsageIdentity | null;
203
+ source: {
204
+ kind: "codex_app_server" | "claude_statusline_samples";
205
+ host: "local";
206
+ };
207
+ observedAt: string | null;
208
+ /** Seat links are not observed by this read. */
209
+ seats: "unknown";
210
+ windows: UsageWindowRow[];
211
+ /** The bucket's provider-reported limit evidence (Codex `rateLimitReachedType`), shown once. */
212
+ limitEvidence: string | null;
213
+ /** False when this row came from an earlier read than the latest one (kept; the latest read didn't match it;
214
+ * its windows read stale: a later read exists). */
215
+ latestFromSource: boolean;
216
+ lastRefresh: UsageRefreshOutcome | null;
217
+ currentAvailability: "known" | "unknown";
218
+ unavailableReason?: string;
219
+ /** Claude: how the identity and the windows were joined (identity as of a refresh; windows from seats' samples at
220
+ * their own times; not proven to be the same login). */
221
+ identityNote?: string;
222
+ /** Present on an unresolved observation: never matched, merged or replaced; kept from the most recent reads. */
223
+ unresolved?: {
224
+ note: string;
225
+ keptReads: number;
226
+ droppedReads: number;
227
+ };
228
+ /** Present when rig auth profiles exist: this read covers only the login active in the daemon's CODEX_HOME. */
229
+ savedProfiles?: {
230
+ names: string[];
231
+ note: string;
232
+ };
100
233
  }
101
234
  //# sourceMappingURL=provider-types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"provider-types.d.ts","sourceRoot":"","sources":["../../../src/domain/provider/provider-types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"provider-types.d.ts","sourceRoot":"","sources":["../../../src/domain/provider/provider-types.ts"],"names":[],"mappings":"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"}
@@ -119,6 +119,8 @@ function discard(seatSession, accountRef, reason) {
119
119
  // an unproven producer yields no row (fail-visible, never fabricated).
120
120
  function eventKind(activity) {
121
121
  const eventClass = activity.rawEvent;
122
+ if (eventClass === "PermissionRequest")
123
+ return null;
122
124
  if (typeof eventClass !== "string")
123
125
  return null;
124
126
  return EVENT_KINDS[eventClass] ?? null;
@@ -1 +1 @@
1
- {"version":3,"file":"reactive-tap.js","sourceRoot":"","sources":["../../../src/domain/provider/reactive-tap.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reactive-tap.js","sourceRoot":"","sources":["../../../src/domain/provider/reactive-tap.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,77 @@
1
+ import type { EventBus } from "../event-bus.js";
2
+ export declare const SUBSCRIPTION_MOVE_EVENT: "subscription.move_recorded";
3
+ export declare const SUBSCRIPTION_MOVE_LIST_SQL = "SELECT seq, payload, created_at FROM events WHERE node_id IS NULL AND type = ? ORDER BY seq DESC";
4
+ export declare const SUBSCRIPTION_MOVE_SHOW_SQL = "SELECT seq, payload, created_at FROM events WHERE node_id IS NULL AND type = ? AND json_extract(payload, '$.move.id') = ? ORDER BY seq DESC LIMIT 1";
5
+ /** How one seat came out of a move. `moved` needs the restart's uptake evidence (a real turn and the account in use). */
6
+ export type SeatMoveResult = "moved" | "unconfirmed" | "unknown";
7
+ export interface SubscriptionMoveSeat {
8
+ seat: string;
9
+ result: SeatMoveResult;
10
+ /** For `unconfirmed` or `unknown`: what is missing, e.g. "no completed tool turn". */
11
+ missing?: string;
12
+ /** What showed the result, e.g. the restart's verify outcome and Account line. */
13
+ evidence?: string;
14
+ }
15
+ /** A reading the agent acted on, with when it was observed. */
16
+ export interface SubscriptionMoveReading {
17
+ /** The allowance or subscription it describes. */
18
+ subject: string;
19
+ /** When the reading was observed (ISO 8601), not when the agent read it. */
20
+ observedAt: string;
21
+ /** What it said, e.g. "weekly 92% used, resets 2026-10-20T00:00Z". */
22
+ summary: string;
23
+ }
24
+ /** What the agent reports. */
25
+ export interface SubscriptionMoveInput {
26
+ /** The Codex home moved, as the agent names it (path or label). */
27
+ home: string;
28
+ /** The machine it is on. */
29
+ host?: string;
30
+ /** Subscription or account references, as labels: never credentials. */
31
+ from: string;
32
+ to: string;
33
+ /** The agent's reason, in its own words. */
34
+ reason: string;
35
+ readings: SubscriptionMoveReading[];
36
+ /** Seats restarted (or attempted), each with its result. */
37
+ seats: SubscriptionMoveSeat[];
38
+ /** Seats on the home that were not restarted ("not restarted; account unverified"), or skipped with a reason. */
39
+ peers?: Array<{
40
+ seat: string;
41
+ note: string;
42
+ }>;
43
+ /** An earlier move id this record follows up, e.g. confirming an unconfirmed seat. */
44
+ supersedes?: string;
45
+ }
46
+ /** What the event log holds for one move. */
47
+ export type SubscriptionMoveEventPayload = SubscriptionMoveInput & {
48
+ id: string;
49
+ recordedBy: string;
50
+ recordedVia: string;
51
+ };
52
+ export interface SubscriptionMoveRecord extends SubscriptionMoveInput {
53
+ id: string;
54
+ /** Who recorded it: the caller's transport identity, or the operator it named when it had none. */
55
+ recordedBy: string;
56
+ /** How recordedBy is known: the transport identity, or `claimed:v1` for a named operator. */
57
+ recordedVia: string;
58
+ recordedAt: string;
59
+ seq: number;
60
+ }
61
+ export declare class SubscriptionMoveInputError extends Error {
62
+ }
63
+ /** The shape check for a reported move. It refuses only malformed input; it never judges the move. */
64
+ export declare function parseSubscriptionMove(raw: unknown): SubscriptionMoveInput;
65
+ export declare class SubscriptionMoves {
66
+ private readonly eventBus;
67
+ constructor(eventBus: EventBus);
68
+ record(input: SubscriptionMoveInput, recordedBy: string, recordedVia: string): SubscriptionMoveRecord;
69
+ /** Newest first. A seat filter matches a moved seat or a peer. */
70
+ list(filter?: {
71
+ home?: string;
72
+ seat?: string;
73
+ limit?: number;
74
+ }): SubscriptionMoveRecord[];
75
+ show(id: string): SubscriptionMoveRecord | null;
76
+ }
77
+ //# sourceMappingURL=subscription-moves.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subscription-moves.d.ts","sourceRoot":"","sources":["../../../src/domain/provider/subscription-moves.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAEhD,eAAO,MAAM,uBAAuB,EAAG,4BAAqC,CAAC;AAI7E,eAAO,MAAM,0BAA0B,qGAC6D,CAAC;AACrG,eAAO,MAAM,0BAA0B,wJACgH,CAAC;AAExJ,yHAAyH;AACzH,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,aAAa,GAAG,SAAS,CAAC;AAGjE,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,cAAc,CAAC;IACvB,sFAAsF;IACtF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kFAAkF;IAClF,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,+DAA+D;AAC/D,MAAM,WAAW,uBAAuB;IACtC,kDAAkD;IAClD,OAAO,EAAE,MAAM,CAAC;IAChB,4EAA4E;IAC5E,UAAU,EAAE,MAAM,CAAC;IACnB,sEAAsE;IACtE,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,8BAA8B;AAC9B,MAAM,WAAW,qBAAqB;IACpC,mEAAmE;IACnE,IAAI,EAAE,MAAM,CAAC;IACb,4BAA4B;IAC5B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,wEAAwE;IACxE,IAAI,EAAE,MAAM,CAAC;IACb,EAAE,EAAE,MAAM,CAAC;IACX,4CAA4C;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,uBAAuB,EAAE,CAAC;IACpC,4DAA4D;IAC5D,KAAK,EAAE,oBAAoB,EAAE,CAAC;IAC9B,iHAAiH;IACjH,KAAK,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9C,sFAAsF;IACtF,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,6CAA6C;AAC7C,MAAM,MAAM,4BAA4B,GAAG,qBAAqB,GAAG;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAE3H,MAAM,WAAW,sBAAuB,SAAQ,qBAAqB;IACnE,EAAE,EAAE,MAAM,CAAC;IACX,mGAAmG;IACnG,UAAU,EAAE,MAAM,CAAC;IACnB,6FAA6F;IAC7F,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,qBAAa,0BAA2B,SAAQ,KAAK;CAAG;AA0BxD,sGAAsG;AACtG,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,qBAAqB,CA+CzE;AAED,qBAAa,iBAAiB;IAChB,OAAO,CAAC,QAAQ,CAAC,QAAQ;gBAAR,QAAQ,EAAE,QAAQ;IAE/C,MAAM,CAAC,KAAK,EAAE,qBAAqB,EAAE,UAAU,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,sBAAsB;IAMrG,kEAAkE;IAClE,IAAI,CAAC,MAAM,GAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,sBAAsB,EAAE;IAgB7F,IAAI,CAAC,EAAE,EAAE,MAAM,GAAG,sBAAsB,GAAG,IAAI;CAKhD"}
@@ -0,0 +1,140 @@
1
+ // The record of each subscription move an agent makes or attempts: which Codex home and seats moved,
2
+ // from which subscription to which, why, on which readings, and how each seat came out. The agent decides and moves
3
+ // (`rig auth switch`, then `rig seat restart --keep-conversation`, then a `--verify` check after a real turn); this
4
+ // only keeps what it reports, in the daemon's append-only event log, for the agent and the observatory to read. It
5
+ // holds labels and references, never credentials, and decides nothing. Its routes are off unless
6
+ // provider.subscription_moves is on.
7
+ import { randomBytes } from "node:crypto";
8
+ export const SUBSCRIPTION_MOVE_EVENT = "subscription.move_recorded";
9
+ // Move events carry no node, so `node_id IS NULL` lets both reads use idx_events_node_type_seq (node_id, type, seq)
10
+ // instead of scanning the whole event log, which on a long-lived daemon holds millions of rows.
11
+ export const SUBSCRIPTION_MOVE_LIST_SQL = "SELECT seq, payload, created_at FROM events WHERE node_id IS NULL AND type = ? ORDER BY seq DESC";
12
+ export const SUBSCRIPTION_MOVE_SHOW_SQL = "SELECT seq, payload, created_at FROM events WHERE node_id IS NULL AND type = ? AND json_extract(payload, '$.move.id') = ? ORDER BY seq DESC LIMIT 1";
13
+ const SEAT_RESULTS = new Set(["moved", "unconfirmed", "unknown"]);
14
+ export class SubscriptionMoveInputError extends Error {
15
+ }
16
+ const text = (value, field, optional = false) => {
17
+ if (value === undefined && optional)
18
+ return undefined;
19
+ if (typeof value !== "string" || value.trim() === "")
20
+ throw new SubscriptionMoveInputError(`${field} must be a non-empty string`);
21
+ return value;
22
+ };
23
+ const list = (value, field, optional = false) => {
24
+ if (value === undefined && optional)
25
+ return [];
26
+ if (!Array.isArray(value))
27
+ throw new SubscriptionMoveInputError(`${field} must be a list`);
28
+ return value;
29
+ };
30
+ const object = (value, field) => {
31
+ if (value === null || typeof value !== "object" || Array.isArray(value))
32
+ throw new SubscriptionMoveInputError(`${field} must be an object`);
33
+ return value;
34
+ };
35
+ /** An ISO 8601 date-time with an explicit timezone, on a real calendar date (no Feb 30): a reading's age depends on it. */
36
+ function isIsoTimestamp(value) {
37
+ const match = /^(\d{4})-(\d{2})-(\d{2})T\d{2}:\d{2}(:\d{2}(\.\d+)?)?(Z|[+-]\d{2}:\d{2})$/.exec(value);
38
+ if (!match || Number.isNaN(Date.parse(value)))
39
+ return false;
40
+ const [year, month, day] = [Number(match[1]), Number(match[2]), Number(match[3])];
41
+ const calendar = new Date(Date.UTC(year, month - 1, day));
42
+ return calendar.getUTCFullYear() === year && calendar.getUTCMonth() === month - 1 && calendar.getUTCDate() === day;
43
+ }
44
+ /** The shape check for a reported move. It refuses only malformed input; it never judges the move. */
45
+ export function parseSubscriptionMove(raw) {
46
+ const body = object(raw, "the move");
47
+ const seats = list(body["seats"], "seats").map((entry, i) => {
48
+ const seat = object(entry, `seats[${i}]`);
49
+ const result = seat["result"];
50
+ if (typeof result !== "string" || !SEAT_RESULTS.has(result)) {
51
+ throw new SubscriptionMoveInputError(`seats[${i}].result must be moved, unconfirmed or unknown`);
52
+ }
53
+ // What the result rests on is part of the record: a move's evidence, or what a lesser result is missing.
54
+ const evidence = text(seat["evidence"], `seats[${i}].evidence`, result !== "moved");
55
+ const missing = text(seat["missing"], `seats[${i}].missing`, result === "moved");
56
+ return {
57
+ seat: text(seat["seat"], `seats[${i}].seat`),
58
+ result: result,
59
+ ...(missing !== undefined ? { missing } : {}),
60
+ ...(evidence !== undefined ? { evidence } : {}),
61
+ };
62
+ });
63
+ const readingList = list(body["readings"], "readings");
64
+ if (readingList.length === 0)
65
+ throw new SubscriptionMoveInputError("readings must name what the move acted on");
66
+ const readings = readingList.map((entry, i) => {
67
+ const reading = object(entry, `readings[${i}]`);
68
+ const observedAt = text(reading["observedAt"], `readings[${i}].observedAt`);
69
+ if (!isIsoTimestamp(observedAt)) {
70
+ throw new SubscriptionMoveInputError(`readings[${i}].observedAt must be an ISO 8601 time with a timezone, e.g. 2026-10-18T09:56:00Z`);
71
+ }
72
+ return { subject: text(reading["subject"], `readings[${i}].subject`), observedAt, summary: text(reading["summary"], `readings[${i}].summary`) };
73
+ });
74
+ const peers = list(body["peers"], "peers", true).map((entry, i) => {
75
+ const peer = object(entry, `peers[${i}]`);
76
+ return { seat: text(peer["seat"], `peers[${i}].seat`), note: text(peer["note"], `peers[${i}].note`) };
77
+ });
78
+ // A home switch can leave every seat as a peer (all mid-turn or running services): record that honestly.
79
+ if (seats.length === 0 && peers.length === 0)
80
+ throw new SubscriptionMoveInputError("seats or peers must name at least one seat");
81
+ const host = text(body["host"], "host", true);
82
+ const supersedes = text(body["supersedes"], "supersedes", true);
83
+ return {
84
+ home: text(body["home"], "home"),
85
+ ...(host ? { host } : {}),
86
+ from: text(body["from"], "from"),
87
+ to: text(body["to"], "to"),
88
+ reason: text(body["reason"], "reason"),
89
+ readings,
90
+ seats,
91
+ ...(peers.length ? { peers } : {}),
92
+ ...(supersedes ? { supersedes } : {}),
93
+ };
94
+ }
95
+ export class SubscriptionMoves {
96
+ eventBus;
97
+ constructor(eventBus) {
98
+ this.eventBus = eventBus;
99
+ }
100
+ record(input, recordedBy, recordedVia) {
101
+ const id = `move-${new Date().toISOString().replace(/\D/g, "").slice(0, 14)}-${randomBytes(4).toString("hex")}`;
102
+ const persisted = this.eventBus.emit({ type: SUBSCRIPTION_MOVE_EVENT, move: { id, recordedBy, recordedVia, ...input } });
103
+ return { id, recordedBy, recordedVia, ...input, recordedAt: persisted.createdAt, seq: persisted.seq };
104
+ }
105
+ /** Newest first. A seat filter matches a moved seat or a peer. */
106
+ list(filter = {}) {
107
+ // Iterate, newest first, and stop as soon as the filtered limit is met: no reading the whole history for one row.
108
+ const rows = this.eventBus.db.prepare(SUBSCRIPTION_MOVE_LIST_SQL)
109
+ .iterate(SUBSCRIPTION_MOVE_EVENT);
110
+ const records = [];
111
+ for (const row of rows) {
112
+ const record = toRecord(row);
113
+ if (!record)
114
+ continue;
115
+ if (filter.home && record.home !== filter.home)
116
+ continue;
117
+ if (filter.seat && !record.seats.some((s) => s.seat === filter.seat) && !(record.peers ?? []).some((p) => p.seat === filter.seat))
118
+ continue;
119
+ records.push(record);
120
+ if (records.length >= (filter.limit ?? 50))
121
+ break;
122
+ }
123
+ return records;
124
+ }
125
+ show(id) {
126
+ const row = this.eventBus.db.prepare(SUBSCRIPTION_MOVE_SHOW_SQL)
127
+ .get(SUBSCRIPTION_MOVE_EVENT, id);
128
+ return row ? toRecord(row) : null;
129
+ }
130
+ }
131
+ function toRecord(row) {
132
+ try {
133
+ const move = JSON.parse(row.payload).move;
134
+ return move ? { ...move, recordedAt: row.created_at, seq: row.seq } : null;
135
+ }
136
+ catch {
137
+ return null;
138
+ }
139
+ }
140
+ //# sourceMappingURL=subscription-moves.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"subscription-moves.js","sourceRoot":"","sources":["../../../src/domain/provider/subscription-moves.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,162 @@
1
+ import type { AggregatedPayload, PerHostStatus } from "../hosts/fanout-contract.js";
2
+ import type { HostEntry, HostRegistryLoadResult } from "../hosts/hosts-registry-reader.js";
3
+ import { type RemoteJsonResult } from "../hosts/remote-daemon-http.js";
4
+ import type { FourBlockReadModel, ProviderKind, ProviderUsageAllowance, SeatConfiguredAccount } from "./provider-types.js";
5
+ /** Reading a host's served model is an ordinary read: the same 5 s class as the read-through and the feed. */
6
+ export declare const USAGE_HOSTS_READ_TIMEOUT_MS = 5000;
7
+ export declare const USAGE_HOSTS_READ_CONCURRENCY = 4;
8
+ /** The whole view answers within this, whatever the registry's size: hosts not heard from by then are listed as such,
9
+ * and the rest are served. One host takes at most 10 s (5 s status, then 5 s settings when it's off or older), so the
10
+ * first four hosts always fit; a caller waiting 20 s has 5 s left for this host's own read and the transfer. */
11
+ export declare const USAGE_HOSTS_VIEW_DEADLINE_MS = 15000;
12
+ /** The largest answer read from a host (status, settings or refresh), stopped at the bound and never parsed. A status
13
+ * answer with both providers and a few dozen seats is tens of kilobytes; 1 MiB leaves room for hundreds of seats. */
14
+ export declare const USAGE_HOSTS_MAX_BYTES: number;
15
+ /** The deepest nesting accepted in a host's answer. Today's deepest is about seven levels (a status answer's usage row,
16
+ * window, disagreeing seat); past 32 the answer is malformed, and that host is unavailable. */
17
+ export declare const USAGE_HOSTS_MAX_DEPTH = 32;
18
+ /** What replaces any string from a host that contains the bearer configured for that host. */
19
+ export declare const BEARER_REDACTED = "[redacted: contained this host's bearer]";
20
+ /** A refresh leg waits for the host's own bounded native read plus stopping what it started (Codex 35 s + ~8 s;
21
+ * Claude's auth status 10 s + ~3 s), with a margin for the network. Never the 5 s read class. */
22
+ export declare const REMOTE_USAGE_REFRESH_DEADLINE_MS: Record<ProviderKind, number>;
23
+ export type HostUsageCoverage = "served" | "off" | "older" | "unavailable";
24
+ export interface UsageRefreshLeg {
25
+ hostId: string;
26
+ provider: ProviderKind;
27
+ at: string;
28
+ outcome: "ok" | "failed";
29
+ /** True when this request joined a leg already running, here or at the host. */
30
+ coalesced: boolean;
31
+ reason?: string;
32
+ detail?: string;
33
+ }
34
+ export interface UsageHostStatus extends PerHostStatus {
35
+ /** Whether this host serves usage windows, apart from whether it answered. */
36
+ usage: HostUsageCoverage;
37
+ usageReason?: string;
38
+ /** When this daemon read the host; null when it couldn't be read. */
39
+ readAt: string | null;
40
+ /** The last refresh leg this daemon ran to the host, per provider (kept in memory). */
41
+ lastRefresh?: Partial<Record<ProviderKind, UsageRefreshLeg>>;
42
+ }
43
+ export interface UsageObservation {
44
+ hostId: string;
45
+ readAt: string;
46
+ /** The host's own served row, verbatim. */
47
+ row: ProviderUsageAllowance;
48
+ }
49
+ /**
50
+ * Between the observations inside one group. single: one host observed it. same: several hosts observed one allowance
51
+ * (each observation kept; never summed). conflict: several hosts observed one allowance and disagree about a window's
52
+ * reset. unknown: the identity is unresolved, or one host's observation of an id can't be linked to other hosts'
53
+ * observations of it (the notes name them).
54
+ */
55
+ export type UsageLinkage = "single" | "same" | "conflict" | "unknown";
56
+ export interface UsageAllowanceGroup {
57
+ provider: ProviderKind;
58
+ /** The allowance identity key the hosts key their rows by; null when unresolved. */
59
+ key: string | null;
60
+ linkage: UsageLinkage;
61
+ observations: UsageObservation[];
62
+ notes: string[];
63
+ }
64
+ export interface UsageAcrossHosts extends AggregatedPayload<UsageAllowanceGroup> {
65
+ hosts: UsageHostStatus[];
66
+ /** Registry entries that name this daemon itself, so not read twice. */
67
+ skipped: Array<{
68
+ hostId: string;
69
+ reason: string;
70
+ }>;
71
+ registry: {
72
+ state: "read" | "absent" | "unreadable";
73
+ note?: string;
74
+ };
75
+ /** Each host's configured seat accounts, verbatim; never linked to an allowance. */
76
+ seatAccounts: Array<{
77
+ hostId: string;
78
+ seats: SeatConfiguredAccount[];
79
+ }>;
80
+ asOf: string;
81
+ }
82
+ /** The key a host keyed this row by (the same functions the hosts use); null when unresolved or never read. */
83
+ export declare function allowanceKey(row: ProviderUsageAllowance): string | null;
84
+ /**
85
+ * Which observations may be linked across hosts. Claude's key already includes the email. Codex's doesn't: within
86
+ * one host a single login is read, but across hosts the same account or workspace id can come with different login
87
+ * emails, and the source can't tell one allowance from a workspace whose members have their own limits. So across
88
+ * hosts a Codex observation links only under the same login email too; the rest stay apart as unknown linkage. A
89
+ * missing (or empty) email is no evidence of the same login, so an observation without one links to nothing on
90
+ * another host.
91
+ */
92
+ export declare function crossHostLinkKey(row: ProviderUsageAllowance, key: string, hostId: string): string;
93
+ export declare function groupUsageAcrossHosts(observations: UsageObservation[]): UsageAllowanceGroup[];
94
+ export interface UsageHostsDeps {
95
+ loadRegistry: () => HostRegistryLoadResult;
96
+ selfHostId: string | null;
97
+ /** Narrow the remote hosts to these registry ids (this daemon is always included). */
98
+ only?: string[];
99
+ lastRefresh?: (hostId: string) => Partial<Record<ProviderKind, UsageRefreshLeg>> | undefined;
100
+ fetchImpl?: typeof fetch;
101
+ env?: Record<string, string | undefined>;
102
+ readFile?: (path: string) => string;
103
+ readTimeoutMs?: number;
104
+ viewDeadlineMs?: number;
105
+ concurrency?: number;
106
+ now?: () => string;
107
+ }
108
+ export type HostSelection = {
109
+ ok: true;
110
+ remotes: HostEntry[];
111
+ skipped: UsageAcrossHosts["skipped"];
112
+ registry: UsageAcrossHosts["registry"];
113
+ } | {
114
+ ok: false;
115
+ error: string;
116
+ };
117
+ /** The registry hosts a call covers: every entry (ssh ones are reported, not read), minus this daemon itself. */
118
+ export declare function selectUsageHosts(deps: Pick<UsageHostsDeps, "loadRegistry" | "selfHostId" | "only">): HostSelection;
119
+ type Check = (v: unknown) => boolean;
120
+ /** A served row with every field the grouping and the views read, typed as provider-types.ts says. */
121
+ export declare function isUsageRow(v: unknown): v is ProviderUsageAllowance;
122
+ /** A served seat account with every field the views read, typed as provider-types.ts says. */
123
+ export declare const isSeat: Check;
124
+ /**
125
+ * A host's answer with any string that contains the bearer configured for that host replaced, and any key that
126
+ * contains it dropped, so a host echoing it can't put it in the view, the CLI or the kept refresh record (the same
127
+ * rule as the Pi charge lookup's key echo). The bearer is resolved by the transport's own resolver and never logged.
128
+ */
129
+ export declare function scrubBearer(value: unknown, bearer: string | undefined, depth?: number): unknown;
130
+ /** A host's answer nested past USAGE_HOSTS_MAX_DEPTH. */
131
+ export declare class AnswerTooDeep extends Error {
132
+ constructor();
133
+ }
134
+ /** The view across hosts. The caller has checked that this daemon serves usage windows (`local.usage` present). */
135
+ export declare function readUsageAcrossHosts(local: FourBlockReadModel, selection: Extract<HostSelection, {
136
+ ok: true;
137
+ }>, deps: UsageHostsDeps): Promise<UsageAcrossHosts>;
138
+ type LegResult = Omit<UsageRefreshLeg, "hostId" | "provider" | "coalesced"> & {
139
+ coalesced?: boolean;
140
+ };
141
+ /** Maps a host's answer to its refresh route into a leg. The host keeps its own reading on its own failure. */
142
+ export declare function remoteRefreshLeg(res: RemoteJsonResult, provider: ProviderKind, deadlineMs: number, at: string): LegResult;
143
+ /**
144
+ * Refresh legs, one per (host, provider) at a time: a request that overlaps a running leg joins it. The last leg per
145
+ * host and provider is kept in memory (a daemon restart forgets it, as each host's own last refresh is forgotten).
146
+ */
147
+ export declare class UsageRefreshLegs {
148
+ private readonly opts;
149
+ private readonly inflight;
150
+ private readonly last;
151
+ constructor(opts?: {
152
+ deadlineMs?: Partial<Record<ProviderKind, number>>;
153
+ now?: () => string;
154
+ });
155
+ deadlineFor(provider: ProviderKind): number;
156
+ lastFor(hostId: string): Partial<Record<ProviderKind, UsageRefreshLeg>> | undefined;
157
+ run(hostId: string, provider: ProviderKind, start: () => Promise<LegResult>): Promise<UsageRefreshLeg>;
158
+ /** One leg to a registry host's own refresh route, bounded by the provider's refresh deadline. */
159
+ remote(host: HostEntry, provider: ProviderKind, deps: Pick<UsageHostsDeps, "fetchImpl" | "env" | "readFile">): Promise<UsageRefreshLeg>;
160
+ }
161
+ export {};
162
+ //# sourceMappingURL=usage-across-hosts.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"usage-across-hosts.d.ts","sourceRoot":"","sources":["../../../src/domain/provider/usage-across-hosts.ts"],"names":[],"mappings":"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"}