@openrig/cli 0.6.10 → 0.6.11

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 (352) hide show
  1. package/daemon/assets/plugins/openrig-core/skills/openrig-skills/SKILL.md +1 -1
  2. package/daemon/assets/plugins/openrig-core/skills/refocusing/scripts/trace-to-root.py +6 -1
  3. package/daemon/assets/skills/rigs/SKILL.md +1 -1
  4. package/daemon/context-packs/help/manifest.yaml +1 -1
  5. package/daemon/context-packs/onboarding-width/manifest.yaml +1 -1
  6. package/daemon/context-packs/onboarding-width/public-what-you-can-do.md +36 -11
  7. package/daemon/context-packs/reference/manifest.yaml +1 -1
  8. package/daemon/context-packs/reference/rig-spec.md +2 -2
  9. package/daemon/context-packs/reference/whats-new.md +135 -134
  10. package/daemon/context-packs/skills/agent-operated-software/manifest.yaml +1 -1
  11. package/daemon/context-packs/skills/agent-operated-workflows/manifest.yaml +1 -1
  12. package/daemon/context-packs/skills/applying-a-permission-policy/manifest.yaml +1 -1
  13. package/daemon/context-packs/skills/claude-compaction-restore/manifest.yaml +1 -1
  14. package/daemon/context-packs/skills/core/agent-starters/manifest.yaml +1 -1
  15. package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/manifest.yaml +1 -1
  16. package/daemon/context-packs/skills/core/cross-host-rig-commands/manifest.yaml +1 -1
  17. package/daemon/context-packs/skills/core/human-in-the-loop/manifest.yaml +1 -1
  18. package/daemon/context-packs/skills/core/messaging-the-human/manifest.yaml +1 -1
  19. package/daemon/context-packs/skills/core/openrig-architect/manifest.yaml +1 -1
  20. package/daemon/context-packs/skills/core/openrig-cmux/manifest.yaml +1 -1
  21. package/daemon/context-packs/skills/core/openrig-herdr/manifest.yaml +1 -1
  22. package/daemon/context-packs/skills/core/openrig-skills/SKILL.md +1 -1
  23. package/daemon/context-packs/skills/core/openrig-skills/manifest.yaml +3 -3
  24. package/daemon/context-packs/skills/core/openrig-software-factory/manifest.yaml +1 -1
  25. package/daemon/context-packs/skills/core/openrig-upgrade/manifest.yaml +1 -1
  26. package/daemon/context-packs/skills/core/rig-bundles-and-shareable-artifacts/manifest.yaml +1 -1
  27. package/daemon/context-packs/skills/core/rig-lifecycle/manifest.yaml +1 -1
  28. package/daemon/context-packs/skills/core/session-source-fork/manifest.yaml +1 -1
  29. package/daemon/context-packs/skills/core/specification-system/manifest.yaml +1 -1
  30. package/daemon/context-packs/skills/core/topology-mutation-and-seat-management/manifest.yaml +1 -1
  31. package/daemon/context-packs/skills/core/watchdog/manifest.yaml +1 -1
  32. package/daemon/context-packs/skills/delegating-work/manifest.yaml +1 -1
  33. package/daemon/context-packs/skills/forming-an-openrig-mental-model/manifest.yaml +1 -1
  34. package/daemon/context-packs/skills/loading-addressable-markdown/manifest.yaml +1 -1
  35. package/daemon/context-packs/skills/mission-slice-sop/manifest.yaml +1 -1
  36. package/daemon/context-packs/skills/openrig-operating-model/manifest.yaml +1 -1
  37. package/daemon/context-packs/skills/openrig-user/manifest.yaml +1 -1
  38. package/daemon/context-packs/skills/orienting-to-an-inherited-seat/manifest.yaml +1 -1
  39. package/daemon/context-packs/skills/pm/backlog-capture/manifest.yaml +1 -1
  40. package/daemon/context-packs/skills/pm/context-builder/manifest.yaml +1 -1
  41. package/daemon/context-packs/skills/pm/exec-summary/manifest.yaml +1 -1
  42. package/daemon/context-packs/skills/pm/office-hours/manifest.yaml +1 -1
  43. package/daemon/context-packs/skills/pm/plan-review/manifest.yaml +1 -1
  44. package/daemon/context-packs/skills/pm/requirements-writer/manifest.yaml +1 -1
  45. package/daemon/context-packs/skills/pm/ui-mockup/manifest.yaml +1 -1
  46. package/daemon/context-packs/skills/pods/development-team/manifest.yaml +1 -1
  47. package/daemon/context-packs/skills/pods/orchestration-team/manifest.yaml +1 -1
  48. package/daemon/context-packs/skills/pods/oversight-team/manifest.yaml +1 -1
  49. package/daemon/context-packs/skills/pods/review-team/manifest.yaml +1 -1
  50. package/daemon/context-packs/skills/process/agent-browser/manifest.yaml +1 -1
  51. package/daemon/context-packs/skills/process/context-engineering/manifest.yaml +1 -1
  52. package/daemon/context-packs/skills/process/dogfood/manifest.yaml +1 -1
  53. package/daemon/context-packs/skills/process/frontend-design/manifest.yaml +1 -1
  54. package/daemon/context-packs/skills/process/systematic-debugging/manifest.yaml +1 -1
  55. package/daemon/context-packs/skills/process/test-driven-development/manifest.yaml +1 -1
  56. package/daemon/context-packs/skills/process/verification-before-completion/manifest.yaml +1 -1
  57. package/daemon/context-packs/skills/queue-handoff/manifest.yaml +1 -1
  58. package/daemon/context-packs/skills/refocusing/manifest.yaml +1 -1
  59. package/daemon/context-packs/skills/refocusing/scripts/trace-to-root.py +6 -1
  60. package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/manifest.yaml +1 -1
  61. package/daemon/context-packs/skills/seat-continuity-and-handover/manifest.yaml +1 -1
  62. package/daemon/context-packs/skills/session-compaction-and-restore/manifest.yaml +1 -1
  63. package/daemon/context-packs/skills/software-for-agents/manifest.yaml +1 -1
  64. package/daemon/context-packs/world-example/manifest.yaml +1 -1
  65. package/daemon/context-packs/world-public/manifest.yaml +1 -1
  66. package/daemon/dist/adapters/claude-code-adapter.d.ts +0 -14
  67. package/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
  68. package/daemon/dist/adapters/claude-code-adapter.js +27 -73
  69. package/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
  70. package/daemon/dist/adapters/codex-runtime-adapter.d.ts +35 -0
  71. package/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
  72. package/daemon/dist/adapters/codex-runtime-adapter.js +94 -44
  73. package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
  74. package/daemon/dist/adapters/pi-runner.d.ts.map +1 -1
  75. package/daemon/dist/adapters/pi-runner.js +6 -3
  76. package/daemon/dist/adapters/pi-runner.js.map +1 -1
  77. package/daemon/dist/adapters/pi-runtime-adapter.js +1 -1
  78. package/daemon/dist/adapters/pi-runtime-adapter.js.map +1 -1
  79. package/daemon/dist/adapters/tmux.d.ts +23 -0
  80. package/daemon/dist/adapters/tmux.d.ts.map +1 -1
  81. package/daemon/dist/adapters/tmux.js +127 -6
  82. package/daemon/dist/adapters/tmux.js.map +1 -1
  83. package/daemon/dist/build-info.js +3 -3
  84. package/daemon/dist/db/all-migrations.d.ts.map +1 -1
  85. package/daemon/dist/db/all-migrations.js +2 -0
  86. package/daemon/dist/db/all-migrations.js.map +1 -1
  87. package/daemon/dist/db/migrations/103_session_stop_intent.d.ts +4 -0
  88. package/daemon/dist/db/migrations/103_session_stop_intent.d.ts.map +1 -0
  89. package/daemon/dist/db/migrations/103_session_stop_intent.js +9 -0
  90. package/daemon/dist/db/migrations/103_session_stop_intent.js.map +1 -0
  91. package/daemon/dist/domain/active-occupant.d.ts +14 -0
  92. package/daemon/dist/domain/active-occupant.d.ts.map +1 -1
  93. package/daemon/dist/domain/active-occupant.js +17 -0
  94. package/daemon/dist/domain/active-occupant.js.map +1 -1
  95. package/daemon/dist/domain/codex-network-default.d.ts +3 -0
  96. package/daemon/dist/domain/codex-network-default.d.ts.map +1 -1
  97. package/daemon/dist/domain/codex-network-default.js +1 -1
  98. package/daemon/dist/domain/codex-network-default.js.map +1 -1
  99. package/daemon/dist/domain/codex-pane-patterns.d.ts +2 -0
  100. package/daemon/dist/domain/codex-pane-patterns.d.ts.map +1 -0
  101. package/daemon/dist/domain/codex-pane-patterns.js +5 -0
  102. package/daemon/dist/domain/codex-pane-patterns.js.map +1 -0
  103. package/daemon/dist/domain/context-monitor.d.ts.map +1 -1
  104. package/daemon/dist/domain/context-monitor.js +46 -22
  105. package/daemon/dist/domain/context-monitor.js.map +1 -1
  106. package/daemon/dist/domain/cwd-resolution.d.ts +8 -0
  107. package/daemon/dist/domain/cwd-resolution.d.ts.map +1 -1
  108. package/daemon/dist/domain/cwd-resolution.js +24 -3
  109. package/daemon/dist/domain/cwd-resolution.js.map +1 -1
  110. package/daemon/dist/domain/gateway/slack/channel-recovery.d.ts.map +1 -1
  111. package/daemon/dist/domain/gateway/slack/channel-recovery.js +4 -3
  112. package/daemon/dist/domain/gateway/slack/channel-recovery.js.map +1 -1
  113. package/daemon/dist/domain/native-process-lineage.d.ts +5 -0
  114. package/daemon/dist/domain/native-process-lineage.d.ts.map +1 -1
  115. package/daemon/dist/domain/native-process-lineage.js +53 -15
  116. package/daemon/dist/domain/native-process-lineage.js.map +1 -1
  117. package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
  118. package/daemon/dist/domain/node-inventory.js +15 -7
  119. package/daemon/dist/domain/node-inventory.js.map +1 -1
  120. package/daemon/dist/domain/node-launcher.d.ts.map +1 -1
  121. package/daemon/dist/domain/node-launcher.js +2 -1
  122. package/daemon/dist/domain/node-launcher.js.map +1 -1
  123. package/daemon/dist/domain/pane-cutover.d.ts +27 -0
  124. package/daemon/dist/domain/pane-cutover.d.ts.map +1 -0
  125. package/daemon/dist/domain/pane-cutover.js +37 -0
  126. package/daemon/dist/domain/pane-cutover.js.map +1 -0
  127. package/daemon/dist/domain/parent-session-env.d.ts +8 -0
  128. package/daemon/dist/domain/parent-session-env.d.ts.map +1 -0
  129. package/daemon/dist/domain/parent-session-env.js +37 -0
  130. package/daemon/dist/domain/parent-session-env.js.map +1 -0
  131. package/daemon/dist/domain/policies/parked-owner-consumer.d.ts +11 -0
  132. package/daemon/dist/domain/policies/parked-owner-consumer.d.ts.map +1 -1
  133. package/daemon/dist/domain/policies/parked-owner-consumer.js +81 -11
  134. package/daemon/dist/domain/policies/parked-owner-consumer.js.map +1 -1
  135. package/daemon/dist/domain/profile-resolver.d.ts.map +1 -1
  136. package/daemon/dist/domain/profile-resolver.js +2 -3
  137. package/daemon/dist/domain/profile-resolver.js.map +1 -1
  138. package/daemon/dist/domain/proof/judgments.d.ts +10 -5
  139. package/daemon/dist/domain/proof/judgments.d.ts.map +1 -1
  140. package/daemon/dist/domain/proof/judgments.js +27 -19
  141. package/daemon/dist/domain/proof/judgments.js.map +1 -1
  142. package/daemon/dist/domain/provider/codex-limit-banner.d.ts +2 -2
  143. package/daemon/dist/domain/provider/codex-limit-banner.d.ts.map +1 -1
  144. package/daemon/dist/domain/provider/codex-limit-banner.js +56 -9
  145. package/daemon/dist/domain/provider/codex-limit-banner.js.map +1 -1
  146. package/daemon/dist/domain/provider/codex-usage-reader.d.ts +31 -0
  147. package/daemon/dist/domain/provider/codex-usage-reader.d.ts.map +1 -0
  148. package/daemon/dist/domain/provider/codex-usage-reader.js +115 -0
  149. package/daemon/dist/domain/provider/codex-usage-reader.js.map +1 -0
  150. package/daemon/dist/domain/provider/codex-usage-windows.d.ts +78 -0
  151. package/daemon/dist/domain/provider/codex-usage-windows.d.ts.map +1 -0
  152. package/daemon/dist/domain/provider/codex-usage-windows.js +259 -0
  153. package/daemon/dist/domain/provider/codex-usage-windows.js.map +1 -0
  154. package/daemon/dist/domain/provider/provider-service-impl.d.ts +10 -0
  155. package/daemon/dist/domain/provider/provider-service-impl.d.ts.map +1 -1
  156. package/daemon/dist/domain/provider/provider-service-impl.js +27 -1
  157. package/daemon/dist/domain/provider/provider-service-impl.js.map +1 -1
  158. package/daemon/dist/domain/provider/provider-service.d.ts +5 -0
  159. package/daemon/dist/domain/provider/provider-service.d.ts.map +1 -1
  160. package/daemon/dist/domain/provider/provider-types.d.ts +65 -0
  161. package/daemon/dist/domain/provider/provider-types.d.ts.map +1 -1
  162. package/daemon/dist/domain/ps-projection.d.ts +5 -2
  163. package/daemon/dist/domain/ps-projection.d.ts.map +1 -1
  164. package/daemon/dist/domain/ps-projection.js +27 -25
  165. package/daemon/dist/domain/ps-projection.js.map +1 -1
  166. package/daemon/dist/domain/queue-repository.d.ts +2 -0
  167. package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
  168. package/daemon/dist/domain/queue-repository.js +16 -3
  169. package/daemon/dist/domain/queue-repository.js.map +1 -1
  170. package/daemon/dist/domain/queue-stuck-sweep.d.ts.map +1 -1
  171. package/daemon/dist/domain/queue-stuck-sweep.js +21 -7
  172. package/daemon/dist/domain/queue-stuck-sweep.js.map +1 -1
  173. package/daemon/dist/domain/restore-check-service.d.ts +8 -0
  174. package/daemon/dist/domain/restore-check-service.d.ts.map +1 -1
  175. package/daemon/dist/domain/restore-check-service.js +12 -3
  176. package/daemon/dist/domain/restore-check-service.js.map +1 -1
  177. package/daemon/dist/domain/restore-orchestrator.d.ts +4 -0
  178. package/daemon/dist/domain/restore-orchestrator.d.ts.map +1 -1
  179. package/daemon/dist/domain/restore-orchestrator.js +34 -5
  180. package/daemon/dist/domain/restore-orchestrator.js.map +1 -1
  181. package/daemon/dist/domain/restore-plan-preview.d.ts +4 -0
  182. package/daemon/dist/domain/restore-plan-preview.d.ts.map +1 -1
  183. package/daemon/dist/domain/restore-plan-preview.js +14 -3
  184. package/daemon/dist/domain/restore-plan-preview.js.map +1 -1
  185. package/daemon/dist/domain/rigspec-preflight.d.ts.map +1 -1
  186. package/daemon/dist/domain/rigspec-preflight.js +7 -6
  187. package/daemon/dist/domain/rigspec-preflight.js.map +1 -1
  188. package/daemon/dist/domain/runtime-adapter.d.ts +1 -0
  189. package/daemon/dist/domain/runtime-adapter.d.ts.map +1 -1
  190. package/daemon/dist/domain/runtime-adapter.js.map +1 -1
  191. package/daemon/dist/domain/scope/scope-view-projection.d.ts +4 -2
  192. package/daemon/dist/domain/scope/scope-view-projection.d.ts.map +1 -1
  193. package/daemon/dist/domain/scope/scope-view-projection.js +6 -4
  194. package/daemon/dist/domain/scope/scope-view-projection.js.map +1 -1
  195. package/daemon/dist/domain/seat-lifecycle-service.d.ts +117 -2
  196. package/daemon/dist/domain/seat-lifecycle-service.d.ts.map +1 -1
  197. package/daemon/dist/domain/seat-lifecycle-service.js +335 -74
  198. package/daemon/dist/domain/seat-lifecycle-service.js.map +1 -1
  199. package/daemon/dist/domain/seat-restart-in-place.d.ts +292 -0
  200. package/daemon/dist/domain/seat-restart-in-place.d.ts.map +1 -0
  201. package/daemon/dist/domain/seat-restart-in-place.js +895 -0
  202. package/daemon/dist/domain/seat-restart-in-place.js.map +1 -0
  203. package/daemon/dist/domain/seat-structural-activity-service.d.ts +1 -1
  204. package/daemon/dist/domain/seat-structural-activity-service.d.ts.map +1 -1
  205. package/daemon/dist/domain/seat-structural-activity-service.js +5 -6
  206. package/daemon/dist/domain/seat-structural-activity-service.js.map +1 -1
  207. package/daemon/dist/domain/session-fingerprinter.d.ts.map +1 -1
  208. package/daemon/dist/domain/session-fingerprinter.js +9 -5
  209. package/daemon/dist/domain/session-fingerprinter.js.map +1 -1
  210. package/daemon/dist/domain/session-registry.d.ts +3 -0
  211. package/daemon/dist/domain/session-registry.d.ts.map +1 -1
  212. package/daemon/dist/domain/session-registry.js +6 -1
  213. package/daemon/dist/domain/session-registry.js.map +1 -1
  214. package/daemon/dist/domain/session-transport.d.ts +33 -3
  215. package/daemon/dist/domain/session-transport.d.ts.map +1 -1
  216. package/daemon/dist/domain/session-transport.js +391 -21
  217. package/daemon/dist/domain/session-transport.js.map +1 -1
  218. package/daemon/dist/domain/startup-orchestrator.d.ts +2 -0
  219. package/daemon/dist/domain/startup-orchestrator.d.ts.map +1 -1
  220. package/daemon/dist/domain/startup-orchestrator.js +4 -3
  221. package/daemon/dist/domain/startup-orchestrator.js.map +1 -1
  222. package/daemon/dist/domain/successor-session-launcher.d.ts +3 -7
  223. package/daemon/dist/domain/successor-session-launcher.d.ts.map +1 -1
  224. package/daemon/dist/domain/successor-session-launcher.js +6 -32
  225. package/daemon/dist/domain/successor-session-launcher.js.map +1 -1
  226. package/daemon/dist/domain/types.d.ts +29 -0
  227. package/daemon/dist/domain/types.d.ts.map +1 -1
  228. package/daemon/dist/domain/types.js.map +1 -1
  229. package/daemon/dist/domain/user-settings/settings-store.d.ts +1 -1
  230. package/daemon/dist/domain/user-settings/settings-store.d.ts.map +1 -1
  231. package/daemon/dist/domain/user-settings/settings-store.js +31 -0
  232. package/daemon/dist/domain/user-settings/settings-store.js.map +1 -1
  233. package/daemon/dist/domain/wake-resolver.js +2 -2
  234. package/daemon/dist/domain/wake-resolver.js.map +1 -1
  235. package/daemon/dist/domain/watchdog-jobs-repository.d.ts.map +1 -1
  236. package/daemon/dist/domain/watchdog-jobs-repository.js +19 -3
  237. package/daemon/dist/domain/watchdog-jobs-repository.js.map +1 -1
  238. package/daemon/dist/domain/whoami-service.d.ts +4 -1
  239. package/daemon/dist/domain/whoami-service.d.ts.map +1 -1
  240. package/daemon/dist/domain/whoami-service.js +25 -19
  241. package/daemon/dist/domain/whoami-service.js.map +1 -1
  242. package/daemon/dist/domain/workspace/project-read.d.ts +2 -0
  243. package/daemon/dist/domain/workspace/project-read.d.ts.map +1 -1
  244. package/daemon/dist/domain/workspace/project-read.js +19 -8
  245. package/daemon/dist/domain/workspace/project-read.js.map +1 -1
  246. package/daemon/dist/index.d.ts.map +1 -1
  247. package/daemon/dist/index.js +6 -0
  248. package/daemon/dist/index.js.map +1 -1
  249. package/daemon/dist/routes/chat.d.ts.map +1 -1
  250. package/daemon/dist/routes/chat.js +23 -2
  251. package/daemon/dist/routes/chat.js.map +1 -1
  252. package/daemon/dist/routes/proof.d.ts.map +1 -1
  253. package/daemon/dist/routes/proof.js +99 -10
  254. package/daemon/dist/routes/proof.js.map +1 -1
  255. package/daemon/dist/routes/provider.d.ts.map +1 -1
  256. package/daemon/dist/routes/provider.js +31 -0
  257. package/daemon/dist/routes/provider.js.map +1 -1
  258. package/daemon/dist/routes/queue.d.ts.map +1 -1
  259. package/daemon/dist/routes/queue.js +18 -6
  260. package/daemon/dist/routes/queue.js.map +1 -1
  261. package/daemon/dist/routes/rigs.js +5 -3
  262. package/daemon/dist/routes/rigs.js.map +1 -1
  263. package/daemon/dist/routes/scopes.d.ts.map +1 -1
  264. package/daemon/dist/routes/scopes.js +5 -3
  265. package/daemon/dist/routes/scopes.js.map +1 -1
  266. package/daemon/dist/routes/seat.d.ts.map +1 -1
  267. package/daemon/dist/routes/seat.js +32 -0
  268. package/daemon/dist/routes/seat.js.map +1 -1
  269. package/daemon/dist/startup.d.ts.map +1 -1
  270. package/daemon/dist/startup.js +12 -2
  271. package/daemon/dist/startup.js.map +1 -1
  272. package/daemon/docs/reference/agent-startup-guide.md +19 -0
  273. package/daemon/docs/reference/keeping-a-watch.md +156 -0
  274. package/daemon/docs/reference/rig-spec.md +2 -2
  275. package/daemon/docs/reference/sdlc-conventions.md +11 -1
  276. package/daemon/docs/reference/slack-app-setup.md +6 -4
  277. package/daemon/docs/reference/whats-new.md +135 -134
  278. package/daemon/specs/agents/shared/skills/core/openrig-skills/SKILL.md +1 -1
  279. package/dist/build-info.js +3 -3
  280. package/dist/commands/config.d.ts.map +1 -1
  281. package/dist/commands/config.js +2 -0
  282. package/dist/commands/config.js.map +1 -1
  283. package/dist/commands/daemon.d.ts.map +1 -1
  284. package/dist/commands/daemon.js +7 -0
  285. package/dist/commands/daemon.js.map +1 -1
  286. package/dist/commands/proof.d.ts.map +1 -1
  287. package/dist/commands/proof.js +11 -5
  288. package/dist/commands/proof.js.map +1 -1
  289. package/dist/commands/provider.d.ts.map +1 -1
  290. package/dist/commands/provider.js +72 -0
  291. package/dist/commands/provider.js.map +1 -1
  292. package/dist/commands/ps.d.ts +4 -0
  293. package/dist/commands/ps.d.ts.map +1 -1
  294. package/dist/commands/ps.js +13 -4
  295. package/dist/commands/ps.js.map +1 -1
  296. package/dist/commands/queue.d.ts +15 -5
  297. package/dist/commands/queue.d.ts.map +1 -1
  298. package/dist/commands/queue.js +113 -37
  299. package/dist/commands/queue.js.map +1 -1
  300. package/dist/commands/scope.d.ts.map +1 -1
  301. package/dist/commands/scope.js +57 -36
  302. package/dist/commands/scope.js.map +1 -1
  303. package/dist/commands/seat.d.ts.map +1 -1
  304. package/dist/commands/seat.js +161 -10
  305. package/dist/commands/seat.js.map +1 -1
  306. package/dist/commands/start.d.ts.map +1 -1
  307. package/dist/commands/start.js +4 -3
  308. package/dist/commands/start.js.map +1 -1
  309. package/dist/commands/up.d.ts.map +1 -1
  310. package/dist/commands/up.js +10 -0
  311. package/dist/commands/up.js.map +1 -1
  312. package/dist/config-store.d.ts +7 -1
  313. package/dist/config-store.d.ts.map +1 -1
  314. package/dist/config-store.js +43 -0
  315. package/dist/config-store.js.map +1 -1
  316. package/dist/lib/scope/mission-composition.d.ts +5 -1
  317. package/dist/lib/scope/mission-composition.d.ts.map +1 -1
  318. package/dist/lib/scope/mission-composition.js +61 -1
  319. package/dist/lib/scope/mission-composition.js.map +1 -1
  320. package/dist/lib/scope/scope-fs.d.ts +2 -1
  321. package/dist/lib/scope/scope-fs.d.ts.map +1 -1
  322. package/dist/lib/scope/scope-fs.js +4 -4
  323. package/dist/lib/scope/scope-fs.js.map +1 -1
  324. package/dist/lib/scope/slice-claims.d.ts +8 -0
  325. package/dist/lib/scope/slice-claims.d.ts.map +1 -0
  326. package/dist/lib/scope/slice-claims.js +88 -0
  327. package/dist/lib/scope/slice-claims.js.map +1 -0
  328. package/dist/queue-receipt.d.ts +41 -0
  329. package/dist/queue-receipt.d.ts.map +1 -0
  330. package/dist/queue-receipt.js +272 -0
  331. package/dist/queue-receipt.js.map +1 -0
  332. package/package.json +1 -1
  333. package/tui/dist/config/config-model.d.ts.map +1 -1
  334. package/tui/dist/config/config-model.js +2 -0
  335. package/tui/dist/config/config-model.js.map +1 -1
  336. package/tui/dist/hydrate.d.ts.map +1 -1
  337. package/tui/dist/hydrate.js +11 -4
  338. package/tui/dist/hydrate.js.map +1 -1
  339. package/tui/dist/pulse/pulse-model.d.ts +1 -0
  340. package/tui/dist/pulse/pulse-model.d.ts.map +1 -1
  341. package/tui/dist/pulse/pulse-model.js +7 -3
  342. package/tui/dist/pulse/pulse-model.js.map +1 -1
  343. package/tui/dist/pulse/render-pulse.d.ts.map +1 -1
  344. package/tui/dist/pulse/render-pulse.js +3 -1
  345. package/tui/dist/pulse/render-pulse.js.map +1 -1
  346. package/tui/dist/render.d.ts.map +1 -1
  347. package/tui/dist/render.js +26 -11
  348. package/tui/dist/render.js.map +1 -1
  349. package/tui/dist/types.d.ts +3 -0
  350. package/tui/dist/types.d.ts.map +1 -1
  351. package/ui/dist/assets/{index-D5n8EwkG.js → index-DhmxKuZf.js} +159 -159
  352. package/ui/dist/index.html +1 -1
@@ -157,7 +157,7 @@ function queueFacts(snap, session) {
157
157
  }
158
158
  const primary = rows[0];
159
159
  if (!primary)
160
- return { count: 0, work: "—", now: "—" };
160
+ return { count: 0, work: queueIncomplete(snap) ? "unknown" : "—", now: queueIncomplete(snap) ? "not in sample" : "—" };
161
161
  const slice = primary.row.tags?.find((tag) => tag.startsWith("slice:"))?.slice("slice:".length);
162
162
  const work = slice?.match(/^OPR(?:\.\d+){3}\.(\d+)$/)?.[1]
163
163
  ? `S${slice.slice(slice.lastIndexOf(".") + 1)}`
@@ -166,6 +166,18 @@ function queueFacts(snap, session) {
166
166
  const now = primary.role === "working" ? summary : `${primary.role} · ${summary}`;
167
167
  return { count: rows.length, work, now };
168
168
  }
169
+ function queueIncomplete(snap) {
170
+ return snap.queueCoverage === "partial" || snap.queueCoverage === "unavailable";
171
+ }
172
+ function queueCount(snap, count) {
173
+ return queueIncomplete(snap) ? count ? `${count}+` : "?" : count || "·";
174
+ }
175
+ function queueSampleLines(snap, width) {
176
+ return queueIncomplete(snap) ? wrapDetailLines([
177
+ { text: snap.queueCoverage === "unavailable" ? "Queue sample incomplete: a list read failed." : "Queue sample may be incomplete: a list reached its cap." },
178
+ { text: "Counts are lower bounds; unlisted work is unknown." },
179
+ ], width) : [];
180
+ }
169
181
  function number(value) {
170
182
  return value == null ? "—" : value.toLocaleString("en-US");
171
183
  }
@@ -213,9 +225,9 @@ function rowsForAgent(snap, session, sources) {
213
225
  }
214
226
  return rows;
215
227
  }
216
- function workRows(rows, width) {
228
+ function workRows(rows, width, incomplete = false) {
217
229
  if (rows.length === 0)
218
- return [fieldLine({ label: "rows", value: "none in the served bounded lists" })];
230
+ return [fieldLine({ label: "rows", value: incomplete ? "not in sample; work unknown" : "none in the served bounded lists" })];
219
231
  return rows.flatMap((row) => {
220
232
  const summary = row.summary?.trim() || row.body.split("\n").find((line) => line.trim())?.trim() || "no summary served";
221
233
  return [
@@ -233,7 +245,7 @@ function agentDetailLines(snap, found, contentWidth, timeZone = DEFAULT_TIME_ZON
233
245
  const pendingRows = session ? rowsForAgent(snap, session, [snap.pending]) : [];
234
246
  const recentRows = session ? rowsForAgent(snap, session, [snap.recentlyFinished]) : [];
235
247
  const needs = session ? snap.needs.filter((item) => item.target === session) : [];
236
- const visibleAssigned = currentRows.length + pendingRows.length;
248
+ const visibleAssigned = new Set([...currentRows, ...pendingRows].map(row => row.qitemId)).size;
237
249
  const assigned = agent.assignedWorkCount ?? visibleAssigned;
238
250
  const pending = agent.pendingWorkCount ?? pendingRows.length;
239
251
  const inProgress = agent.inProgressWorkCount ?? currentRows.filter((row) => row.state === "in-progress").length;
@@ -293,15 +305,16 @@ function agentDetailLines(snap, found, contentWidth, timeZone = DEFAULT_TIME_ZON
293
305
  local: found.host === snap.hosts[0],
294
306
  }, contentWidth),
295
307
  },
296
- { title: `CURRENT WORK · ${currentRows.length}`, lines: workRows(currentRows, contentWidth) },
308
+ { title: `CURRENT WORK · ${currentRows.length}${queueIncomplete(snap) ? " sampled" : ""}`, lines: workRows(currentRows, contentWidth, queueIncomplete(snap)) },
297
309
  {
298
310
  title: "QUEUE",
299
311
  lines: [
300
- ...wrapDetailValue("depth", `${assigned} assigned · ${pending} pending · ${inProgress} in progress · ${blocked} blocked`, contentWidth),
312
+ ...queueSampleLines(snap, contentWidth),
313
+ ...wrapDetailValue("depth", `${agent.assignedWorkCount == null && queueIncomplete(snap) ? `${assigned}+` : assigned} assigned · ${agent.pendingWorkCount == null && queueIncomplete(snap) ? `${pending}+` : pending} pending · ${agent.inProgressWorkCount == null && queueIncomplete(snap) ? `${inProgress}+` : inProgress} in progress · ${agent.blockedWorkCount == null && queueIncomplete(snap) ? `${blocked}+` : blocked} blocked`, contentWidth),
301
314
  ...(agent.assignedWorkCount == null ? wrapDetailValue("basis", `${visibleAssigned} rows visible in bounded list reads; complete count not served`, contentWidth) : []),
302
315
  ],
303
316
  },
304
- { title: `UP NEXT · ${pending}`, lines: workRows(pendingRows, contentWidth) },
317
+ { title: `UP NEXT · ${pending}${queueIncomplete(snap) ? " · sampled rows" : ""}`, lines: workRows(pendingRows, contentWidth, queueIncomplete(snap)) },
305
318
  { title: `NEEDS YOU · ${needs.length || agent.activity?.needsInput?.count || 0}`, lines: needsRows },
306
319
  ...(recentRows.length ? [{ title: "RECENTLY FINISHED · bounded window", lines: workRows(recentRows, contentWidth) }] : []),
307
320
  {
@@ -603,6 +616,7 @@ function instanceContentLines(state, snap, host, contentWidth, motion) {
603
616
  return lines;
604
617
  }
605
618
  lines.push(healthSummaryLine(snap, scope, contentWidth));
619
+ lines.push(...queueSampleLines(snap, contentWidth));
606
620
  lines.push({ text: state.filter ? `/ filter instance rows: ${state.filter} · / replace · esc clear` : "/ filter instance rows…" });
607
621
  const columns = instanceAgentColumns(contentWidth);
608
622
  lines.push({ text: tableRow(columns, { rig: "RIG", pod: "POD", seat: "SEAT", runtime: "RT", context: "CTX", status: "STATE", queue: "Q", work: "WORK", now: "NOW" }) });
@@ -646,7 +660,7 @@ function instanceContentLines(state, snap, host, contentWidth, motion) {
646
660
  runtime: runtimeShort(agent.runtime),
647
661
  context: contextCompact(agent.context, contentWidth < 110),
648
662
  status: stateCell.word,
649
- queue: queue.count || "·",
663
+ queue: queueCount(snap, queue.count),
650
664
  work: queue.work,
651
665
  now: queue.now,
652
666
  }),
@@ -655,7 +669,7 @@ function instanceContentLines(state, snap, host, contentWidth, motion) {
655
669
  });
656
670
  }
657
671
  }
658
- lines.push({ text: "" }, { text: host.rigs.some(r => r.inventoryUnavailable) ? `${host.rigs.length} rigs · inventory incomplete · ${seatCount} seats read` : `${host.rigs.length} rigs · ${seatCount} seats · ${workingCount} working · ${attentionCount} need attention · ${openCount} open rows` });
672
+ lines.push({ text: "" }, { text: host.rigs.some(r => r.inventoryUnavailable) ? `${host.rigs.length} rigs · inventory incomplete · ${seatCount} seats read` : `${host.rigs.length} rigs · ${seatCount} seats · ${workingCount} working · ${attentionCount} need attention · ${openCount}${queueIncomplete(snap) ? "+ sampled" : ""} open rows` });
659
673
  lines.push(...recentLines(snap, scope, contentWidth, false, state.timeZone));
660
674
  return lines;
661
675
  }
@@ -833,6 +847,7 @@ function contentLines(state, snap, contentWidth, motion) {
833
847
  return lines;
834
848
  }
835
849
  const agentCols = agentColumns(contentWidth);
850
+ lines.push(...queueSampleLines(snap, contentWidth));
836
851
  const narrowFactory = !agentCols.some(([key]) => key === "model");
837
852
  if (narrowFactory)
838
853
  lines.push({ text: "MODEL/NOW/ACTIONS on drill (enter)" });
@@ -880,7 +895,7 @@ function contentLines(state, snap, contentWidth, motion) {
880
895
  model: tableModel(a.model),
881
896
  context: contextCompact(a.context, narrowFactory),
882
897
  status: stateCell.word,
883
- queue: queue.count || "·",
898
+ queue: queueCount(snap, queue.count),
884
899
  work: queue.work,
885
900
  now: queue.now,
886
901
  actions: actionsCell,
@@ -892,7 +907,7 @@ function contentLines(state, snap, contentWidth, motion) {
892
907
  lines.push({ text: "" });
893
908
  const working = rows.filter((agent) => ["active", "working", "running"].includes(agent.status)).length;
894
909
  const attention = rows.filter((agent) => /attention|needs|blocked|unknown|failed/.test(agent.status)).length;
895
- lines.push({ text: `${rows.length} seats · ${working} working · ${attention} need attention · ${rows.reduce((n, agent) => n + queueFacts(snap, agent.session).count, 0)} open rows` });
910
+ lines.push({ text: `${rows.length} seats · ${working} working · ${attention} need attention · ${rows.reduce((n, agent) => n + queueFacts(snap, agent.session).count, 0)}${queueIncomplete(snap) ? "+ sampled" : ""} open rows` });
896
911
  if (!podFilter)
897
912
  lines.push(...recentLines(snap, { kind: "rig", rig: rig.name }, contentWidth, false, state.timeZone));
898
913
  return lines;