@openrig/cli 0.4.6 → 0.4.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (352) hide show
  1. package/daemon/assets/guidance/CULTURE-default.md +19 -0
  2. package/daemon/assets/guidance/openrig-start.md +20 -5
  3. package/daemon/assets/plugins/openrig-core/README.md +1 -1
  4. package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/SKILL.md +9 -6
  5. package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/scripts/precompact-hook.mjs +11 -72
  6. package/daemon/assets/plugins/openrig-core/skills/forming-an-openrig-mental-model/SKILL.md +34 -22
  7. package/daemon/assets/plugins/openrig-core/skills/messaging-the-human/SKILL.md +108 -0
  8. package/daemon/assets/plugins/openrig-core/skills/mission-slice-sop/SKILL.md +11 -14
  9. package/daemon/assets/plugins/openrig-core/skills/openrig-skills/SKILL.md +95 -0
  10. package/daemon/assets/plugins/openrig-core/skills/openrig-user/SKILL.md +175 -105
  11. package/daemon/assets/plugins/openrig-core/skills/queue-handoff/SKILL.md +26 -9
  12. package/daemon/assets/plugins/openrig-core/skills/seat-continuity-and-handover/SKILL.md +11 -9
  13. package/daemon/assets/plugins/openrig-core/skills/session-compaction-and-restore/SKILL.md +162 -0
  14. package/daemon/assets/plugins/openrig-core/skills/software-for-agents/SKILL.md +165 -0
  15. package/daemon/dist/adapters/cmux-transport.d.ts.map +1 -1
  16. package/daemon/dist/adapters/cmux-transport.js +8 -1
  17. package/daemon/dist/adapters/cmux-transport.js.map +1 -1
  18. package/daemon/dist/adapters/cmux.d.ts +9 -0
  19. package/daemon/dist/adapters/cmux.d.ts.map +1 -1
  20. package/daemon/dist/adapters/cmux.js +21 -0
  21. package/daemon/dist/adapters/cmux.js.map +1 -1
  22. package/daemon/dist/adapters/codex-runtime-adapter.d.ts +3 -0
  23. package/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
  24. package/daemon/dist/adapters/codex-runtime-adapter.js +20 -4
  25. package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
  26. package/daemon/dist/build-info.js +3 -3
  27. package/daemon/dist/domain/claude-compaction-enforcer.d.ts +3 -0
  28. package/daemon/dist/domain/claude-compaction-enforcer.d.ts.map +1 -1
  29. package/daemon/dist/domain/claude-compaction-enforcer.js +19 -3
  30. package/daemon/dist/domain/claude-compaction-enforcer.js.map +1 -1
  31. package/daemon/dist/domain/cmux-layout-service.d.ts +36 -0
  32. package/daemon/dist/domain/cmux-layout-service.d.ts.map +1 -1
  33. package/daemon/dist/domain/cmux-layout-service.js +100 -28
  34. package/daemon/dist/domain/cmux-layout-service.js.map +1 -1
  35. package/daemon/dist/domain/context-monitor.d.ts +2 -0
  36. package/daemon/dist/domain/context-monitor.d.ts.map +1 -1
  37. package/daemon/dist/domain/context-monitor.js +14 -0
  38. package/daemon/dist/domain/context-monitor.js.map +1 -1
  39. package/daemon/dist/domain/feed/attention-aggregator.js +1 -1
  40. package/daemon/dist/domain/feed/attention-aggregator.js.map +1 -1
  41. package/daemon/dist/domain/hosts/hosts-registry-reader.d.ts.map +1 -1
  42. package/daemon/dist/domain/hosts/hosts-registry-reader.js +12 -10
  43. package/daemon/dist/domain/hosts/hosts-registry-reader.js.map +1 -1
  44. package/daemon/dist/domain/hosts/hosts-registry-writer.d.ts.map +1 -1
  45. package/daemon/dist/domain/hosts/hosts-registry-writer.js +3 -2
  46. package/daemon/dist/domain/hosts/hosts-registry-writer.js.map +1 -1
  47. package/daemon/dist/domain/hosts/read-through.js +1 -1
  48. package/daemon/dist/domain/hosts/read-through.js.map +1 -1
  49. package/daemon/dist/domain/hosts/remote-daemon-http.d.ts.map +1 -1
  50. package/daemon/dist/domain/hosts/remote-daemon-http.js +8 -5
  51. package/daemon/dist/domain/hosts/remote-daemon-http.js.map +1 -1
  52. package/daemon/dist/domain/node-inventory.d.ts +3 -12
  53. package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
  54. package/daemon/dist/domain/node-inventory.js +55 -13
  55. package/daemon/dist/domain/node-inventory.js.map +1 -1
  56. package/daemon/dist/domain/plugin-vendor-service.d.ts +2 -0
  57. package/daemon/dist/domain/plugin-vendor-service.d.ts.map +1 -1
  58. package/daemon/dist/domain/plugin-vendor-service.js +23 -0
  59. package/daemon/dist/domain/plugin-vendor-service.js.map +1 -1
  60. package/daemon/dist/domain/projection-lane.d.ts +7 -0
  61. package/daemon/dist/domain/projection-lane.d.ts.map +1 -0
  62. package/daemon/dist/domain/projection-lane.js +28 -0
  63. package/daemon/dist/domain/projection-lane.js.map +1 -0
  64. package/daemon/dist/domain/ps-projection.d.ts +19 -0
  65. package/daemon/dist/domain/ps-projection.d.ts.map +1 -1
  66. package/daemon/dist/domain/ps-projection.js +46 -6
  67. package/daemon/dist/domain/ps-projection.js.map +1 -1
  68. package/daemon/dist/domain/queue-repository.d.ts +14 -10
  69. package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
  70. package/daemon/dist/domain/queue-repository.js +33 -12
  71. package/daemon/dist/domain/queue-repository.js.map +1 -1
  72. package/daemon/dist/domain/review/compose.d.ts +77 -4
  73. package/daemon/dist/domain/review/compose.d.ts.map +1 -1
  74. package/daemon/dist/domain/review/compose.js +152 -16
  75. package/daemon/dist/domain/review/compose.js.map +1 -1
  76. package/daemon/dist/domain/review/fleet-compose.js +1 -1
  77. package/daemon/dist/domain/review/fleet-compose.js.map +1 -1
  78. package/daemon/dist/domain/review/gather.d.ts +1 -1
  79. package/daemon/dist/domain/review/gather.d.ts.map +1 -1
  80. package/daemon/dist/domain/review/gather.js +92 -67
  81. package/daemon/dist/domain/review/gather.js.map +1 -1
  82. package/daemon/dist/domain/review/proof-io.d.ts +2 -0
  83. package/daemon/dist/domain/review/proof-io.d.ts.map +1 -0
  84. package/daemon/dist/domain/review/proof-io.js +38 -0
  85. package/daemon/dist/domain/review/proof-io.js.map +1 -0
  86. package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
  87. package/daemon/dist/domain/rigspec-instantiator.js +15 -2
  88. package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
  89. package/daemon/dist/domain/scope/plan-lock-artifacts.d.ts +8 -0
  90. package/daemon/dist/domain/scope/plan-lock-artifacts.d.ts.map +1 -0
  91. package/daemon/dist/domain/scope/plan-lock-artifacts.js +57 -0
  92. package/daemon/dist/domain/scope/plan-lock-artifacts.js.map +1 -0
  93. package/daemon/dist/domain/scope/scaffold-placeholder.d.ts +38 -0
  94. package/daemon/dist/domain/scope/scaffold-placeholder.d.ts.map +1 -0
  95. package/daemon/dist/domain/scope/scaffold-placeholder.js +98 -0
  96. package/daemon/dist/domain/scope/scaffold-placeholder.js.map +1 -0
  97. package/daemon/dist/domain/scope/scope-approve.d.ts.map +1 -1
  98. package/daemon/dist/domain/scope/scope-approve.js +22 -1
  99. package/daemon/dist/domain/scope/scope-approve.js.map +1 -1
  100. package/daemon/dist/domain/scope/scope-audit.d.ts.map +1 -1
  101. package/daemon/dist/domain/scope/scope-audit.js +57 -20
  102. package/daemon/dist/domain/scope/scope-audit.js.map +1 -1
  103. package/daemon/dist/domain/session-transport.d.ts +17 -0
  104. package/daemon/dist/domain/session-transport.d.ts.map +1 -1
  105. package/daemon/dist/domain/session-transport.js +44 -0
  106. package/daemon/dist/domain/session-transport.js.map +1 -1
  107. package/daemon/dist/domain/slices/qitem-membership.d.ts +17 -0
  108. package/daemon/dist/domain/slices/qitem-membership.d.ts.map +1 -0
  109. package/daemon/dist/domain/slices/qitem-membership.js +60 -0
  110. package/daemon/dist/domain/slices/qitem-membership.js.map +1 -0
  111. package/daemon/dist/domain/slices/slice-detail-projector.d.ts +5 -0
  112. package/daemon/dist/domain/slices/slice-detail-projector.d.ts.map +1 -1
  113. package/daemon/dist/domain/slices/slice-detail-projector.js +157 -11
  114. package/daemon/dist/domain/slices/slice-detail-projector.js.map +1 -1
  115. package/daemon/dist/domain/slices/slice-indexer.d.ts +86 -0
  116. package/daemon/dist/domain/slices/slice-indexer.d.ts.map +1 -1
  117. package/daemon/dist/domain/slices/slice-indexer.js +422 -45
  118. package/daemon/dist/domain/slices/slice-indexer.js.map +1 -1
  119. package/daemon/dist/domain/startup-orchestrator.d.ts +9 -0
  120. package/daemon/dist/domain/startup-orchestrator.d.ts.map +1 -1
  121. package/daemon/dist/domain/startup-orchestrator.js +71 -3
  122. package/daemon/dist/domain/startup-orchestrator.js.map +1 -1
  123. package/daemon/dist/domain/terminal/cmux-provider-adapter.d.ts +12 -11
  124. package/daemon/dist/domain/terminal/cmux-provider-adapter.d.ts.map +1 -1
  125. package/daemon/dist/domain/terminal/cmux-provider-adapter.js +61 -28
  126. package/daemon/dist/domain/terminal/cmux-provider-adapter.js.map +1 -1
  127. package/daemon/dist/domain/terminal/herdr-adapter.d.ts +27 -10
  128. package/daemon/dist/domain/terminal/herdr-adapter.d.ts.map +1 -1
  129. package/daemon/dist/domain/terminal/herdr-adapter.js +74 -33
  130. package/daemon/dist/domain/terminal/herdr-adapter.js.map +1 -1
  131. package/daemon/dist/domain/transcript-capture.d.ts +3 -0
  132. package/daemon/dist/domain/transcript-capture.d.ts.map +1 -1
  133. package/daemon/dist/domain/transcript-capture.js +28 -0
  134. package/daemon/dist/domain/transcript-capture.js.map +1 -1
  135. package/daemon/dist/domain/transcript-store.d.ts +10 -0
  136. package/daemon/dist/domain/transcript-store.d.ts.map +1 -1
  137. package/daemon/dist/domain/transcript-store.js +26 -0
  138. package/daemon/dist/domain/transcript-store.js.map +1 -1
  139. package/daemon/dist/domain/types.d.ts +4 -0
  140. package/daemon/dist/domain/types.d.ts.map +1 -1
  141. package/daemon/dist/domain/types.js.map +1 -1
  142. package/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts.map +1 -1
  143. package/daemon/dist/domain/workspace/default-workspace-scaffold.js +9 -4
  144. package/daemon/dist/domain/workspace/default-workspace-scaffold.js.map +1 -1
  145. package/daemon/dist/domain/workspace/workspace-doctor.js +1 -1
  146. package/daemon/dist/domain/workspace/workspace-doctor.js.map +1 -1
  147. package/daemon/dist/routes/mission-control.js +1 -1
  148. package/daemon/dist/routes/mission-control.js.map +1 -1
  149. package/daemon/dist/routes/missions.d.ts +7 -0
  150. package/daemon/dist/routes/missions.d.ts.map +1 -1
  151. package/daemon/dist/routes/missions.js +6 -1
  152. package/daemon/dist/routes/missions.js.map +1 -1
  153. package/daemon/dist/routes/ps.d.ts.map +1 -1
  154. package/daemon/dist/routes/ps.js +5 -1
  155. package/daemon/dist/routes/ps.js.map +1 -1
  156. package/daemon/dist/routes/queue.d.ts.map +1 -1
  157. package/daemon/dist/routes/queue.js +9 -2
  158. package/daemon/dist/routes/queue.js.map +1 -1
  159. package/daemon/dist/routes/rigs.d.ts.map +1 -1
  160. package/daemon/dist/routes/rigs.js +21 -10
  161. package/daemon/dist/routes/rigs.js.map +1 -1
  162. package/daemon/dist/routes/scope-audit.d.ts.map +1 -1
  163. package/daemon/dist/routes/scope-audit.js +141 -135
  164. package/daemon/dist/routes/scope-audit.js.map +1 -1
  165. package/daemon/dist/routes/sessions.js +2 -1
  166. package/daemon/dist/routes/sessions.js.map +1 -1
  167. package/daemon/dist/routes/slices.d.ts.map +1 -1
  168. package/daemon/dist/routes/slices.js +48 -38
  169. package/daemon/dist/routes/slices.js.map +1 -1
  170. package/daemon/dist/routes/transcripts.d.ts.map +1 -1
  171. package/daemon/dist/routes/transcripts.js +62 -33
  172. package/daemon/dist/routes/transcripts.js.map +1 -1
  173. package/daemon/dist/startup.d.ts.map +1 -1
  174. package/daemon/dist/startup.js +25 -11
  175. package/daemon/dist/startup.js.map +1 -1
  176. package/daemon/docs/reference/agent-startup-guide.md +1 -0
  177. package/daemon/specs/agents/apps/vault-specialist/agent.yaml +2 -1
  178. package/daemon/specs/agents/conveyor/builder/agent.yaml +2 -1
  179. package/daemon/specs/agents/conveyor/lead/agent.yaml +2 -1
  180. package/daemon/specs/agents/conveyor/planner/agent.yaml +2 -1
  181. package/daemon/specs/agents/conveyor/reviewer/agent.yaml +2 -1
  182. package/daemon/specs/agents/design/product-designer/agent.yaml +12 -2
  183. package/daemon/specs/agents/development/implementer/agent.yaml +12 -2
  184. package/daemon/specs/agents/development/qa/agent.yaml +12 -2
  185. package/daemon/specs/agents/development/qa/guidance/role.md +1 -0
  186. package/daemon/specs/agents/factory-rsi/dogfood/agent.yaml +2 -1
  187. package/daemon/specs/agents/factory-rsi/release-manager/agent.yaml +2 -1
  188. package/daemon/specs/agents/orchestration/orchestrator/agent.yaml +12 -2
  189. package/daemon/specs/agents/product-management/pm/agent.yaml +1 -2
  190. package/daemon/specs/agents/research/analyst/agent.yaml +2 -1
  191. package/daemon/specs/agents/research/synthesizer/agent.yaml +2 -1
  192. package/daemon/specs/agents/review/independent-reviewer/agent.yaml +12 -2
  193. package/daemon/specs/agents/shared/agent.yaml +5 -8
  194. package/daemon/specs/agents/shared/runtime/claude-settings.fragment.json +13 -1
  195. package/daemon/specs/agents/shared/skills/core/agent-starters/SKILL.md +132 -0
  196. package/daemon/{assets/plugins/openrig-core/skills → specs/agents/shared/skills/core}/agent-startup-and-context-ingestion/SKILL.md +27 -19
  197. package/daemon/specs/agents/shared/skills/core/attention-queue/SKILL.md +264 -0
  198. package/daemon/specs/agents/shared/skills/core/cross-host-rig-commands/SKILL.md +190 -0
  199. package/daemon/specs/agents/shared/skills/core/human-in-the-loop/SKILL.md +104 -0
  200. package/daemon/specs/agents/shared/skills/core/openrig-architect/SKILL.md +25 -8
  201. package/daemon/specs/agents/shared/skills/core/openrig-cmux/SKILL.md +0 -5
  202. package/daemon/specs/agents/shared/skills/core/openrig-herdr/SKILL.md +1 -6
  203. package/daemon/specs/agents/shared/skills/core/openrig-upgrade/SKILL.md +460 -0
  204. package/daemon/specs/agents/shared/skills/core/rig-bundles-and-shareable-artifacts/SKILL.md +101 -0
  205. package/daemon/specs/agents/shared/skills/core/rig-lifecycle/SKILL.md +22 -11
  206. package/daemon/specs/agents/shared/skills/core/session-source-fork/SKILL.md +160 -0
  207. package/daemon/specs/agents/shared/skills/core/specification-system/SKILL.md +103 -0
  208. package/daemon/specs/agents/shared/skills/core/topology-mutation-and-seat-management/SKILL.md +118 -0
  209. package/daemon/specs/agents/shared/skills/core/watchdog/SKILL.md +125 -0
  210. package/daemon/specs/agents/shared/skills/pods/orchestration-team/SKILL.md +4 -4
  211. package/daemon/specs/agents/shared/skills/pods/review-team/SKILL.md +3 -0
  212. package/daemon/specs/agents/shared/skills/process/brainstorming/OPENRIG.md +3 -3
  213. package/daemon/specs/agents/shared/skills/process/executing-plans/OPENRIG.md +1 -1
  214. package/daemon/specs/agents/shared/skills/process/frontend-design/SKILL.md +6 -3
  215. package/daemon/specs/agents/shared/skills/process/test-driven-development/SKILL.md +1 -1
  216. package/daemon/specs/agents/shared/skills/process/using-superpowers/OPENRIG.md +1 -1
  217. package/daemon/specs/agents/shared/skills/process/verification-before-completion/SKILL.md +12 -2
  218. package/daemon/specs/agents/shared/skills/process/writing-plans/OPENRIG.md +1 -1
  219. package/daemon/specs/rigs/focused/pm-team/CULTURE.md +1 -1
  220. package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/agent.yaml +2 -2
  221. package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/guidance/role.md +5 -4
  222. package/daemon/specs/rigs/launch/kernel/agents/operator/agent/agent.yaml +2 -2
  223. package/daemon/specs/rigs/launch/kernel/agents/operator/agent/guidance/role.md +3 -5
  224. package/daemon/specs/rigs/launch/kernel/agents/queue/worker/agent.yaml +2 -2
  225. package/daemon/specs/rigs/launch/kernel/culture/CULTURE.md +3 -4
  226. package/daemon/specs/rigs/preview/product-team/CULTURE.md +1 -1
  227. package/dist/bin-wrapper.d.ts.map +1 -1
  228. package/dist/bin-wrapper.js +3 -1
  229. package/dist/bin-wrapper.js.map +1 -1
  230. package/dist/build-info.js +3 -3
  231. package/dist/cli-error.d.ts +33 -0
  232. package/dist/cli-error.d.ts.map +1 -0
  233. package/dist/cli-error.js +94 -0
  234. package/dist/cli-error.js.map +1 -0
  235. package/dist/commands/config-init-workspace.js +1 -1
  236. package/dist/commands/doctor.d.ts +1 -1
  237. package/dist/commands/doctor.d.ts.map +1 -1
  238. package/dist/commands/doctor.js +17 -11
  239. package/dist/commands/doctor.js.map +1 -1
  240. package/dist/commands/host.d.ts.map +1 -1
  241. package/dist/commands/host.js +24 -10
  242. package/dist/commands/host.js.map +1 -1
  243. package/dist/commands/proof.js +1 -1
  244. package/dist/commands/proof.js.map +1 -1
  245. package/dist/commands/ps.d.ts.map +1 -1
  246. package/dist/commands/ps.js +16 -2
  247. package/dist/commands/ps.js.map +1 -1
  248. package/dist/commands/queue.d.ts.map +1 -1
  249. package/dist/commands/queue.js +103 -24
  250. package/dist/commands/queue.js.map +1 -1
  251. package/dist/commands/rig.d.ts.map +1 -1
  252. package/dist/commands/rig.js +122 -0
  253. package/dist/commands/rig.js.map +1 -1
  254. package/dist/commands/scope.js +2 -2
  255. package/dist/commands/scope.js.map +1 -1
  256. package/dist/commands/send.d.ts.map +1 -1
  257. package/dist/commands/send.js +118 -24
  258. package/dist/commands/send.js.map +1 -1
  259. package/dist/commands/slack.d.ts +37 -0
  260. package/dist/commands/slack.d.ts.map +1 -0
  261. package/dist/commands/slack.js +274 -0
  262. package/dist/commands/slack.js.map +1 -0
  263. package/dist/commands/ui.d.ts +1 -0
  264. package/dist/commands/ui.d.ts.map +1 -1
  265. package/dist/commands/ui.js +2 -0
  266. package/dist/commands/ui.js.map +1 -1
  267. package/dist/commands/up.js +1 -1
  268. package/dist/commands/up.js.map +1 -1
  269. package/dist/commands/whoami.d.ts.map +1 -1
  270. package/dist/commands/whoami.js +3 -3
  271. package/dist/commands/whoami.js.map +1 -1
  272. package/dist/daemon-lifecycle.d.ts.map +1 -1
  273. package/dist/daemon-lifecycle.js +45 -14
  274. package/dist/daemon-lifecycle.js.map +1 -1
  275. package/dist/host-registry.d.ts +6 -1
  276. package/dist/host-registry.d.ts.map +1 -1
  277. package/dist/host-registry.js +15 -6
  278. package/dist/host-registry.js.map +1 -1
  279. package/dist/index.d.ts +3 -0
  280. package/dist/index.d.ts.map +1 -1
  281. package/dist/index.js +6 -1
  282. package/dist/index.js.map +1 -1
  283. package/dist/lib/scope/scaffold-placeholder.d.ts +38 -0
  284. package/dist/lib/scope/scaffold-placeholder.d.ts.map +1 -0
  285. package/dist/lib/scope/scaffold-placeholder.js +98 -0
  286. package/dist/lib/scope/scaffold-placeholder.js.map +1 -0
  287. package/dist/lib/scope/scope-audit.d.ts.map +1 -1
  288. package/dist/lib/scope/scope-audit.js +57 -20
  289. package/dist/lib/scope/scope-audit.js.map +1 -1
  290. package/dist/lib/scope-templates/backlog-deprecation.md +1 -1
  291. package/dist/lib/scope-templates/backlog-tech-debt.md +1 -1
  292. package/dist/lib/scope-templates/bug-fix.md +1 -1
  293. package/dist/lib/scope-templates/implementation-prd.md +1 -1
  294. package/dist/lib/scope-templates/mission-notes.md +7 -2
  295. package/dist/lib/scope-templates/mission-placeholder.md +1 -1
  296. package/dist/lib/scope-templates/mission-progress.md +1 -1
  297. package/dist/lib/scope-templates/mission-release.md +1 -1
  298. package/dist/lib/scope-templates/placeholder.md +1 -1
  299. package/dist/lib/scope-templates/proof.md +1 -1
  300. package/dist/lib/scope-templates/release-feature.md +1 -1
  301. package/dist/lib/scope-templates/research.md +1 -1
  302. package/dist/lib/scope-templates/slice-progress.md +1 -1
  303. package/dist/remote-host-ops.d.ts.map +1 -1
  304. package/dist/remote-host-ops.js +2 -2
  305. package/dist/remote-host-ops.js.map +1 -1
  306. package/dist/slack/config.d.ts +41 -0
  307. package/dist/slack/config.d.ts.map +1 -0
  308. package/dist/slack/config.js +60 -0
  309. package/dist/slack/config.js.map +1 -0
  310. package/dist/slack/inbound.d.ts +75 -0
  311. package/dist/slack/inbound.d.ts.map +1 -0
  312. package/dist/slack/inbound.js +133 -0
  313. package/dist/slack/inbound.js.map +1 -0
  314. package/dist/slack/message.d.ts +26 -0
  315. package/dist/slack/message.d.ts.map +1 -0
  316. package/dist/slack/message.js +60 -0
  317. package/dist/slack/message.js.map +1 -0
  318. package/dist/slack/outbound.d.ts +39 -0
  319. package/dist/slack/outbound.d.ts.map +1 -0
  320. package/dist/slack/outbound.js +52 -0
  321. package/dist/slack/outbound.js.map +1 -0
  322. package/dist/slack/queue-bridge.d.ts +56 -0
  323. package/dist/slack/queue-bridge.d.ts.map +1 -0
  324. package/dist/slack/queue-bridge.js +114 -0
  325. package/dist/slack/queue-bridge.js.map +1 -0
  326. package/dist/slack/secrets.d.ts +21 -0
  327. package/dist/slack/secrets.d.ts.map +1 -0
  328. package/dist/slack/secrets.js +73 -0
  329. package/dist/slack/secrets.js.map +1 -0
  330. package/dist/slack/slack-api.d.ts +49 -0
  331. package/dist/slack/slack-api.d.ts.map +1 -0
  332. package/dist/slack/slack-api.js +110 -0
  333. package/dist/slack/slack-api.js.map +1 -0
  334. package/dist/slack/state-store.d.ts +62 -0
  335. package/dist/slack/state-store.d.ts.map +1 -0
  336. package/dist/slack/state-store.js +132 -0
  337. package/dist/slack/state-store.js.map +1 -0
  338. package/package.json +1 -1
  339. package/ui/dist/assets/{index-zrFqS7gL.js → index-DkNi0RT8.js} +184 -184
  340. package/ui/dist/assets/index-N-SdPj-I.css +32 -0
  341. package/ui/dist/index.html +2 -2
  342. package/daemon/assets/plugins/openrig-core/skills/openrig-architect/SKILL.md +0 -361
  343. package/daemon/assets/plugins/openrig-core/skills/openrig-cmux/SKILL.md +0 -86
  344. package/daemon/assets/plugins/openrig-core/skills/openrig-herdr/SKILL.md +0 -158
  345. package/daemon/assets/plugins/openrig-core/skills/openrig-operator/SKILL.md +0 -222
  346. package/daemon/docs/reference/product-factory-vps-runbook.md +0 -132
  347. package/daemon/specs/agents/shared/skills/core/mission-slice-sop/SKILL.md +0 -113
  348. package/daemon/specs/agents/shared/skills/core/openrig-installer/SKILL.md +0 -142
  349. package/daemon/specs/agents/shared/skills/core/openrig-operator/SKILL.md +0 -110
  350. package/daemon/specs/agents/shared/skills/core/openrig-user/SKILL.md +0 -1245
  351. package/daemon/specs/agents/shared/skills/core/openrig-user-settings/SKILL.md +0 -153
  352. package/ui/dist/assets/index-CFqxa0zW.css +0 -32
@@ -22,7 +22,28 @@ import * as fs from "node:fs";
22
22
  import * as path from "node:path";
23
23
  import { sessionRigOf } from "../session-name.js";
24
24
  import { findSliceWorkflowBinding, } from "../workflow/slice-workflow-binding.js";
25
+ import { isScaffoldPlaceholderText, GENERIC_SCAFFOLD_ACCEPTANCE, } from "../scope/scaffold-placeholder.js";
26
+ // VM-006 (progress-review-done-coherence): the QA-verdict union reuses
27
+ // Review's OWN exported derivation pair + the ONE proof-artifact reader
28
+ // (arch A1 one-home) — never a second derivation. Cycle-free: compose is
29
+ // pure and proof-io imports only compose + node; nothing in review imports
30
+ // slices.
31
+ import { extractProofContractSelected, composeDelivered, parseLogicalCheckboxes, } from "../review/compose.js";
32
+ import { readProofArtifacts } from "../review/proof-io.js";
25
33
  import { projectSpecGraph, projectPhaseDefinitions, projectCurrentStep, } from "../workflow/slice-workflow-projection.js";
34
+ /** VM-006 (arch PIN-C): the ONE key behind the acceptance dedup, the
35
+ * Progress↔Review join, and the FS-1 guard. VERBATIM the historical dedup
36
+ * expression — trim + casefold, and deliberately NO whitespace collapse.
37
+ *
38
+ * Sharing a single helper across all three is what makes join-relation ==
39
+ * dedup-relation a fact of the code rather than a claim. A join key that is
40
+ * COARSER than the dedup key (e.g. one that strips inline images, so that
41
+ * `X ![shot](a.png)` and a plain `X` collapse together) maps two distinct
42
+ * acceptance rows onto one obligation and silently lifts the wrong row —
43
+ * that is the B1 collision this successor exists to kill. */
44
+ function textKey(text) {
45
+ return text.trim().toLowerCase();
46
+ }
26
47
  export class SliceDetailProjector {
27
48
  db;
28
49
  indexer;
@@ -254,26 +275,151 @@ export class SliceDetailProjector {
254
275
  // Source citation = file + 1-based line number so the operator can jump.
255
276
  const candidateFiles = ["README.md", "IMPLEMENTATION-PRD.md", "PROGRESS.md", "IMPLEMENTATION.md"];
256
277
  const sliceDir = slice.slicePath;
278
+ // VM-006: the PRD bytes are captured during this existing scan — zero new
279
+ // IO for the proof-contract extraction below. PM dogfood #1: the README
280
+ // bytes are captured the same way (this scan already reads them) so the
281
+ // contract extraction can apply the per-section selection.
282
+ let prdContent = null;
283
+ let readmeContent = null;
257
284
  for (const fname of candidateFiles) {
258
285
  const full = path.join(sliceDir, fname);
259
286
  if (!fs.existsSync(full))
260
287
  continue;
261
288
  const content = fs.readFileSync(full, "utf8");
262
- const lines = content.split("\n");
263
- for (let i = 0; i < lines.length; i++) {
264
- const line = lines[i];
265
- const m = line.match(/^\s*-?\s*\[(\s|x|X)\]\s+(.+)$/);
266
- if (!m)
289
+ if (fname === "IMPLEMENTATION-PRD.md")
290
+ prdContent = content;
291
+ if (fname === "README.md")
292
+ readmeContent = content;
293
+ // qitem-render-driver B — the SHARED logical-checkbox relation (the
294
+ // same parser Review's proof contract consumes). rawText carries any
295
+ // joined continuation and IS the VM-006 join key, so acceptance rows
296
+ // and promised items key off identical bytes by construction; a second
297
+ // parser here would silently desynchronize the QA-verdict lift.
298
+ for (const logical of parseLogicalCheckboxes(content)) {
299
+ // release-0.4.7 intent-stage (edit 1): scaffold-template placeholder
300
+ // rows are not acceptance items (shared grammar:
301
+ // ../scope/scaffold-placeholder.ts).
302
+ if (isScaffoldPlaceholderText(logical.rawText))
267
303
  continue;
268
304
  items.push({
269
- text: m[2].trim(),
270
- done: m[1].toLowerCase() === "x",
271
- source: { file: fname, line: i + 1 },
305
+ // rawText UNCHANGED — image-bearing rows keep their authored bytes,
306
+ // preserving the join relation.
307
+ text: logical.rawText,
308
+ done: logical.checked,
309
+ source: { file: fname, line: logical.sourceLine },
272
310
  });
273
311
  }
274
312
  }
275
- const total = items.length;
276
- const done = items.filter((i) => i.done).length;
313
+ // release-0.4.7 intent-stage (edit 2): dedup by normalized text
314
+ // (casefold + trim). First occurrence wins for BOTH the source jump-link
315
+ // and the done-state — deterministic via the candidateFiles scan order
316
+ // (README > IMPLEMENTATION-PRD > PROGRESS > IMPLEMENTATION).
317
+ const seenText = new Set();
318
+ const deduped = [];
319
+ for (const item of items) {
320
+ const key = textKey(item.text);
321
+ if (seenText.has(key))
322
+ continue;
323
+ seenText.add(key);
324
+ deduped.push(item);
325
+ }
326
+ // release-0.4.7 intent-stage (edit 3): skip the generic scaffold triple
327
+ // ONLY-WHILE-PRISTINE — all three slice-progress.md literals present,
328
+ // all unchecked, and they are the ONLY checkbox rows sourced from
329
+ // PROGRESS.md. ANY check, ANY text edit, or ANY added PROGRESS row makes
330
+ // them real (arch AR-6: strictest-pristine — over-count noise beats
331
+ // silent under-count of deliberately-kept items; deliberate-keep stays
332
+ // expressible by checking or editing any of the three).
333
+ const progressRows = deduped.filter((i) => i.source.file === "PROGRESS.md");
334
+ const pristineTriple = progressRows.length === GENERIC_SCAFFOLD_ACCEPTANCE.length &&
335
+ progressRows.every((i) => !i.done) &&
336
+ GENERIC_SCAFFOLD_ACCEPTANCE.every((lit) => progressRows.some((i) => i.text === lit));
337
+ const finalItems = pristineTriple
338
+ ? deduped.filter((i) => i.source.file !== "PROGRESS.md")
339
+ : deduped;
340
+ // VM-006 (progress-review-done-coherence): union the done-state for
341
+ // proof-contract rows — done = checkboxTicked OR qaVerified. Review
342
+ // derives `verified` from the QA passing verdict while the tick-state
343
+ // here never moves (`rig proof add` does not tick the authored box), so
344
+ // the two tabs disagreed about the same obligations.
345
+ //
346
+ // The join is a MULTIPLICITY-GATED 1:1 association on `textKey`, taken
347
+ // over the RAW authored text on BOTH sides (`promised.rawText` vs
348
+ // `item.text`). Raw-on-both is precisely what keeps the join relation
349
+ // identical to the dedup relation above. Joining the STRIPPED promised
350
+ // text against the raw row text would need a coarser comparator, and a
351
+ // coarser relation collapses two distinct rows onto one obligation — the
352
+ // B1 collision that false-lifted a non-contract row (guard BLOCKING on
353
+ // predecessor 0ec6411c).
354
+ //
355
+ // The 1:1 gate — a key reaching >1 obligation OR >1 row lifts NOTHING —
356
+ // makes pm's FR-2 invariants structural rather than argued: (1) lift only
357
+ // via a 1:1 association to a single verified obligation, and (2) the
358
+ // Progress verified-lift count can never exceed Review's verified count.
359
+ // Under raw keys the guard's two collisions become distinctions, so the
360
+ // gate is armed-but-vacuous on real slices; its live purpose is the
361
+ // degenerate case of two byte-identical authored contract lines, where
362
+ // fail-closed (stay ACTIVE) beats a coin-flip lift (arch AR-6).
363
+ //
364
+ // NEVER sets done=false — the author's record is never reversed (FR-3).
365
+ // PM dogfood #1 — the SAME per-section selection Review compose uses
366
+ // (one selection rule, one grammar home): an authored README contract
367
+ // wins over a pristine scaffold-only PRD contract, so the VM-006 lift
368
+ // joins against the contract the author actually wrote.
369
+ const promised = extractProofContractSelected(prdContent, readmeContent).items;
370
+ if (promised.length > 0) {
371
+ const promisedByKey = new Map();
372
+ promised.forEach((p, i) => {
373
+ const k = textKey(p.rawText);
374
+ const at = promisedByKey.get(k);
375
+ if (at)
376
+ at.push(i);
377
+ else
378
+ promisedByKey.set(k, [i]);
379
+ });
380
+ const rowsByKey = new Map();
381
+ for (const item of finalItems) {
382
+ const k = textKey(item.text);
383
+ const at = rowsByKey.get(k);
384
+ if (at)
385
+ at.push(item);
386
+ else
387
+ rowsByKey.set(k, [item]);
388
+ }
389
+ // FS-1 guard (arch-endorsed): buildAcceptance runs per slice across a
390
+ // whole mission on the Progress tab, so the proof-dir read fires ONLY
391
+ // when an authored contract still has an unticked row — the union can
392
+ // only lift, so all-ticked and contract-free slices do ZERO extra IO.
393
+ // Keyed by the SAME textKey as the join: a guard on a different relation
394
+ // could skip the read for a row the join would then have lifted.
395
+ const hasUntickedContractRow = finalItems.some((i) => !i.done && promisedByKey.has(textKey(i.text)));
396
+ if (hasUntickedContractRow) {
397
+ // The ONE reader Review uses (arch A1 one-home) + Review's OWN join:
398
+ // composeDelivered binds `verified` to the promised INDEX, and we read
399
+ // items[i].verified back — the verdict is never re-derived here.
400
+ const delivered = composeDelivered(promised, readProofArtifacts(sliceDir));
401
+ for (const item of finalItems) {
402
+ if (item.done)
403
+ continue;
404
+ const k = textKey(item.text);
405
+ const at = promisedByKey.get(k);
406
+ if (!at || at.length !== 1)
407
+ continue;
408
+ if (rowsByKey.get(k)?.length !== 1)
409
+ continue;
410
+ if (delivered.items[at[0]].verified !== "verified")
411
+ continue;
412
+ item.done = true;
413
+ item.doneVia = "qa-verdict";
414
+ }
415
+ }
416
+ for (const item of finalItems) {
417
+ if (item.done && item.doneVia === undefined)
418
+ item.doneVia = "checkbox";
419
+ }
420
+ }
421
+ const total = finalItems.length;
422
+ const done = finalItems.filter((i) => i.done).length;
277
423
  const pct = total === 0 ? 0 : Math.round((done / total) * 100);
278
424
  const closureCallout = slice.status === "done"
279
425
  ? `Goal Met (status: ${slice.rawStatus ?? "done"})`
@@ -282,7 +428,7 @@ export class SliceDetailProjector {
282
428
  totalItems: total,
283
429
  doneItems: done,
284
430
  percentage: pct,
285
- items,
431
+ items: finalItems,
286
432
  closureCallout,
287
433
  };
288
434
  }
@@ -1 +1 @@
1
- {"version":3,"file":"slice-detail-projector.js","sourceRoot":"","sources":["../../../src/domain/slices/slice-detail-projector.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slice-detail-projector.js","sourceRoot":"","sources":["../../../src/domain/slices/slice-detail-projector.ts"],"names":[],"mappings":"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"}
@@ -108,11 +108,57 @@ export declare class SliceIndexer {
108
108
  private readonly cacheTtlMs;
109
109
  private listingCache;
110
110
  private detailCache;
111
+ private membershipIndex;
112
+ private batchDepth;
113
+ private missionStatusCache;
111
114
  constructor(opts: SliceIndexerOpts);
112
115
  /** Returns true when any configured slice root exists on disk. */
113
116
  isReady(): boolean;
117
+ /** qitem-ccf87c0d corrective — the explicit COMPOSITE-OPERATION scope: a
118
+ * caller performing list()-plus-per-slice-get() as ONE user-visible
119
+ * operation (the slices route's boundToWorkflow lens, ReviewGatherer.
120
+ * composeMission) wraps it here so every inner list/get shares ONE
121
+ * membership batch instead of building one per uncached get (the 2+2N
122
+ * regression). Contract, pinned by test:
123
+ * - the OUTERMOST open never reuses a prior operation's batch (drops
124
+ * any existing one); the index is LAZY, so the first membership
125
+ * access inside the scope builds from then-current queue state —
126
+ * request-boundary freshness, no snapshot claim;
127
+ * - nested/reentrant scopes share the outermost batch;
128
+ * - the outermost exit ALWAYS clears (finally — exception-safe), so
129
+ * separate operations never share a generation;
130
+ * - standalone list()/get() outside any scope keep their own
131
+ * one-operation batch semantics unchanged (their clears are
132
+ * conditional on depth === 0).
133
+ * Synchronous by design — matches the synchronous list/get call graph. */
134
+ withMembershipBatch<T>(fn: () => T): T;
114
135
  /** Drops both caches. Used by tests + by a future explicit-refresh route. */
115
136
  invalidate(): void;
137
+ /** VM-005 B1 (the narrow C-vii exception; arch ruling b8d91aee…) — the
138
+ * READ-AFTER-WRITE seam: POST /:missionId/complete writes the mission
139
+ * README status, and the sidecar's 60s TTL would otherwise keep serving
140
+ * the pre-write word to /api/slices while /api/missions/:id reads the
141
+ * new word from disk. This drops the WHOLE missionStatusCache blob and
142
+ * nothing else (listing/detail caches untouched — drop-the-blob, never
143
+ * full-flush: zero coherence gain and a 60s registry churn were the
144
+ * ruling's reasons to reject the alternatives). The sole write path
145
+ * calls it post-success; the next read rebuilds from disk (README =
146
+ * SSOT). Out-of-band file writes remain the TTL regime by design. */
147
+ invalidateMissionStatusCache(): void;
148
+ /** VM-005 (release-0.4.7) — the authored mission-status sidecar for the
149
+ * slices list payload: one mission-README frontmatter read per indexed
150
+ * mission, inside the same 60s cache discipline as the listing. Keys are
151
+ * missions with at least one INDEXED slice (zero-slice missions have no
152
+ * indexed slices and never appear here — the tree's discovery walk owns
153
+ * that population). Read semantics are LOCKSTEP with
154
+ * routes/missions.ts readMissionStatus (README.md only, raw string, no
155
+ * enum validation, non-empty-or-null) — pinned by test. */
156
+ missionAuthoredStatuses(): Record<string, {
157
+ authoredStatus: string | null;
158
+ }>;
159
+ /** Lockstep twin of routes/missions.ts readMissionStatus (see the sidecar
160
+ * doc above; the lockstep test pins both reads agree on the same bytes). */
161
+ private readMissionAuthoredStatus;
116
162
  list(): SliceListEntry[];
117
163
  get(name: string): SliceRecord | null;
118
164
  private readSliceLocations;
@@ -124,9 +170,49 @@ export declare class SliceIndexer {
124
170
  private readPrimaryFrontmatter;
125
171
  private extractDisplayName;
126
172
  private extractRailItem;
173
+ private extractExplicitRailItem;
127
174
  private extractCommitRefs;
128
175
  private mapStatus;
129
176
  private matchQitems;
177
+ /** qitem-ccf87c0d — build (or reuse) the per-generation membership index.
178
+ * TWO queue_items scans per generation, replacing O(slices) per-slice
179
+ * scans.
180
+ *
181
+ * SCHEMA IS INSPECTED UP FRONT (qitem-18110994), never inferred from a
182
+ * swallowed error:
183
+ * - queue_items absent -> a structurally EMPTY index that is still
184
+ * PUBLISHED with its location metadata (knownSlices/terms), so get/list
185
+ * keep their semantics and no rebuild loop occurs;
186
+ * - tags column absent -> the typed scan is SKIPPED and Scan 2 uses the
187
+ * body-only query shape;
188
+ * - any PRAGMA / typed / fallback EXECUTION failure PROPAGATES to the
189
+ * caller and NOTHING is published (buckets accumulate locally and are
190
+ * published only on full success), so an interrupted build can never be
191
+ * cached as a plausible-but-incomplete answer.
192
+ *
193
+ * Scan 1 (typed): `tags LIKE '%slice:%'` prefilter, ORDER BY ts_created
194
+ * DESC, qitem_id DESC (P2 determinism preserved), parseScopeTags as the
195
+ * authoritative row-level confirm; a row credits EVERY slice it tags;
196
+ * cap after 500 CONFIRMED per slice (never a pre-confirmation LIMIT —
197
+ * the B2/VM-004 rule). Global: every location, regardless of `served`.
198
+ * Scan 2 (fallback): one streamed pass over (body, tags) evaluated
199
+ * against the term universe of the SERVED zero-typed locations — all of
200
+ * them for list() and any open withMembershipBatch scope, exactly one
201
+ * for a standalone uncached get(). A combined regex is a PREFILTER
202
+ * only; every term is then confirmed per row so overlapping terms all
203
+ * credit (no consuming-alternation loss). Terms use SQL-LIKE-equivalent
204
+ * matching (asciiFold + %/_ translation); bucket order is row (rowid)
205
+ * order — the same order the un-ORDERed per-term `LIMIT 500` queries
206
+ * returned; cap 500 per term.
207
+ *
208
+ * `served` (qitem-18110994 item 1) is the EXPLICIT scope of the current
209
+ * public operation — the slice names actually being answered, or null for
210
+ * "all known locations" — threaded through the call chain (get/list ->
211
+ * buildRecord/toListEntry -> matchQitems -> here), never ambient state. It
212
+ * narrows FRONTMATTER READS ONLY: locations, knownSlices, the typed scan
213
+ * and the all-location typedMissions verdict are established FIRST, so the
214
+ * cross-slice modern/legacy rule stays byte-identical (R5 differential). */
215
+ private ensureMembershipIndex;
130
216
  private findProofPacket;
131
217
  private scanProofPacket;
132
218
  private computeLastActivity;
@@ -1 +1 @@
1
- {"version":3,"file":"slice-indexer.d.ts","sourceRoot":"","sources":["../../../src/domain/slices/slice-indexer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slice-indexer.d.ts","sourceRoot":"","sources":["../../../src/domain/slices/slice-indexer.ts"],"names":[],"mappings":"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"}