@openrig/cli 0.5.6 → 0.5.8

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 (562) hide show
  1. package/daemon/assets/plugins/openrig-core/README.md +1 -1
  2. package/daemon/assets/plugins/openrig-core/hooks/scripts/refocus.cjs +25 -2
  3. package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/scripts/precompact-hook.mjs +95 -8
  4. package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/scripts/restore-from-jsonl.mjs +9 -1
  5. package/daemon/assets/plugins/openrig-core/skills/loading-addressable-markdown/SKILL.md +34 -0
  6. package/daemon/assets/plugins/openrig-core/skills/loading-addressable-markdown/scripts/resolve-markdown.mjs +170 -0
  7. package/daemon/assets/plugins/openrig-core/skills/openrig-skills/SKILL.md +1 -4
  8. package/daemon/assets/plugins/openrig-core/skills/retiring-and-inheriting-a-seat/SKILL.md +3 -3
  9. package/daemon/assets/plugins/openrig-core/skills/software-for-agents/SKILL.md +4 -9
  10. package/daemon/assets/vm-preview-fixtures/workflows/sample-basic-loop.yaml +3 -3
  11. package/daemon/context-packs/onboarding-width/manifest.yaml +1 -1
  12. package/daemon/context-packs/onboarding-width/public-what-you-can-do.md +40 -15
  13. package/daemon/context-packs/skills/applying-a-permission-policy/SKILL.md +120 -0
  14. package/daemon/context-packs/skills/applying-a-permission-policy/manifest.yaml +10 -0
  15. package/daemon/context-packs/skills/claude-compaction-restore/SKILL.md +166 -0
  16. package/daemon/context-packs/skills/claude-compaction-restore/manifest.yaml +18 -0
  17. package/daemon/context-packs/skills/claude-compaction-restore/scripts/precompact-hook.mjs +261 -0
  18. package/daemon/context-packs/skills/claude-compaction-restore/scripts/restore-from-jsonl.mjs +495 -0
  19. package/daemon/context-packs/skills/claude-compaction-restore/templates/compact-instruction.md +1 -0
  20. package/daemon/context-packs/skills/claude-compaction-restore/templates/post-compact-restore-instruction.md +1 -0
  21. package/daemon/context-packs/skills/core/agent-starters/manifest.yaml +1 -1
  22. package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/SKILL.md +1 -1
  23. package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/manifest.yaml +1 -1
  24. package/daemon/context-packs/skills/core/cross-host-rig-commands/manifest.yaml +1 -1
  25. package/daemon/context-packs/skills/core/human-in-the-loop/manifest.yaml +1 -1
  26. package/daemon/context-packs/skills/core/messaging-the-human/manifest.yaml +1 -1
  27. package/daemon/context-packs/skills/core/openrig-architect/manifest.yaml +1 -1
  28. package/daemon/context-packs/skills/core/openrig-cmux/manifest.yaml +1 -1
  29. package/daemon/context-packs/skills/core/openrig-herdr/manifest.yaml +1 -1
  30. package/daemon/context-packs/skills/core/openrig-skills/SKILL.md +1 -4
  31. package/daemon/context-packs/skills/core/openrig-skills/manifest.yaml +1 -1
  32. package/daemon/context-packs/skills/core/openrig-upgrade/SKILL.md +120 -355
  33. package/daemon/context-packs/skills/core/openrig-upgrade/manifest.yaml +9 -3
  34. package/daemon/context-packs/skills/core/openrig-upgrade/scripts/backup-sqlite.mjs +62 -0
  35. package/daemon/context-packs/skills/core/openrig-upgrade/scripts/inspect-upgrade.mjs +40 -0
  36. package/daemon/context-packs/skills/core/openrig-upgrade/scripts/refresh-managed-plugin.mjs +151 -0
  37. package/daemon/context-packs/skills/core/rig-bundles-and-shareable-artifacts/manifest.yaml +1 -1
  38. package/daemon/context-packs/skills/core/rig-lifecycle/manifest.yaml +1 -1
  39. package/daemon/context-packs/skills/core/session-source-fork/manifest.yaml +1 -1
  40. package/daemon/context-packs/skills/core/specification-system/manifest.yaml +1 -1
  41. package/daemon/context-packs/skills/core/topology-mutation-and-seat-management/manifest.yaml +1 -1
  42. package/daemon/context-packs/skills/core/watchdog/manifest.yaml +1 -1
  43. package/daemon/context-packs/skills/delegating-work/SKILL.md +43 -0
  44. package/daemon/context-packs/skills/delegating-work/manifest.yaml +10 -0
  45. package/daemon/context-packs/skills/forming-an-openrig-mental-model/SKILL.md +318 -0
  46. package/daemon/context-packs/skills/forming-an-openrig-mental-model/manifest.yaml +10 -0
  47. package/daemon/context-packs/skills/loading-addressable-markdown/SKILL.md +34 -0
  48. package/daemon/context-packs/skills/loading-addressable-markdown/manifest.yaml +12 -0
  49. package/daemon/context-packs/skills/loading-addressable-markdown/scripts/resolve-markdown.mjs +170 -0
  50. package/daemon/context-packs/skills/mission-slice-sop/SKILL.md +94 -0
  51. package/daemon/context-packs/skills/mission-slice-sop/manifest.yaml +10 -0
  52. package/daemon/context-packs/skills/openrig-operating-model/SKILL.md +397 -0
  53. package/daemon/context-packs/skills/openrig-operating-model/manifest.yaml +30 -0
  54. package/daemon/context-packs/skills/openrig-operating-model/scripts/compose.py +572 -0
  55. package/daemon/context-packs/skills/openrig-operating-model/scripts/scaffold.sh +34 -0
  56. package/daemon/context-packs/skills/openrig-operating-model/scripts/trace-due.sh +32 -0
  57. package/daemon/context-packs/skills/openrig-operating-model/scripts/trace-stamp.sh +5 -0
  58. package/daemon/context-packs/skills/openrig-operating-model/scripts/trunk-diff.sh +18 -0
  59. package/daemon/context-packs/skills/openrig-operating-model/templates/LEARNED.md +40 -0
  60. package/daemon/context-packs/skills/openrig-operating-model/templates/NOTES.md +9 -0
  61. package/daemon/context-packs/skills/openrig-operating-model/templates/PLAYBOOK.md +5 -0
  62. package/daemon/context-packs/skills/openrig-operating-model/templates/SOP.md +24 -0
  63. package/daemon/context-packs/skills/openrig-operating-model/templates/SPEC.md +54 -0
  64. package/daemon/context-packs/skills/openrig-user/SKILL.md +1374 -0
  65. package/daemon/context-packs/skills/openrig-user/manifest.yaml +10 -0
  66. package/daemon/context-packs/skills/orienting-to-an-inherited-seat/CHANGELOG.md +64 -0
  67. package/daemon/context-packs/skills/orienting-to-an-inherited-seat/SKILL.md +250 -0
  68. package/daemon/context-packs/skills/orienting-to-an-inherited-seat/manifest.yaml +12 -0
  69. package/daemon/context-packs/skills/pm/backlog-capture/manifest.yaml +1 -1
  70. package/daemon/context-packs/skills/pm/context-builder/manifest.yaml +1 -1
  71. package/daemon/context-packs/skills/pm/exec-summary/manifest.yaml +1 -1
  72. package/daemon/context-packs/skills/pm/office-hours/manifest.yaml +1 -1
  73. package/daemon/context-packs/skills/pm/plan-review/manifest.yaml +1 -1
  74. package/daemon/context-packs/skills/pm/requirements-writer/SKILL.md +21 -15
  75. package/daemon/context-packs/skills/pm/requirements-writer/manifest.yaml +3 -3
  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/SKILL.md +1 -1
  82. package/daemon/context-packs/skills/pods/review-team/manifest.yaml +1 -1
  83. package/daemon/context-packs/skills/process/agent-browser/manifest.yaml +1 -1
  84. package/daemon/context-packs/skills/process/context-engineering/manifest.yaml +1 -1
  85. package/daemon/context-packs/skills/process/dogfood/manifest.yaml +1 -1
  86. package/daemon/context-packs/skills/process/frontend-design/manifest.yaml +1 -1
  87. package/daemon/context-packs/skills/process/systematic-debugging/manifest.yaml +1 -1
  88. package/daemon/context-packs/skills/process/test-driven-development/manifest.yaml +1 -1
  89. package/daemon/context-packs/skills/process/verification-before-completion/manifest.yaml +1 -1
  90. package/daemon/context-packs/skills/queue-handoff/SKILL.md +192 -0
  91. package/daemon/context-packs/skills/queue-handoff/manifest.yaml +10 -0
  92. package/daemon/context-packs/skills/refocusing/SKILL.md +31 -0
  93. package/daemon/context-packs/skills/refocusing/manifest.yaml +14 -0
  94. package/daemon/context-packs/skills/refocusing/references/refocus.md +22 -0
  95. package/daemon/context-packs/skills/refocusing/scripts/trace-to-root.py +264 -0
  96. package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/CHANGELOG.md +48 -0
  97. package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/SKILL.md +231 -0
  98. package/daemon/context-packs/skills/retiring-and-inheriting-a-seat/manifest.yaml +12 -0
  99. package/daemon/context-packs/skills/seat-continuity-and-handover/SKILL.md +151 -0
  100. package/daemon/context-packs/skills/seat-continuity-and-handover/manifest.yaml +16 -0
  101. package/daemon/context-packs/skills/seat-continuity-and-handover/references/apprentice-evidence-toolkit.md +32 -0
  102. package/daemon/context-packs/skills/seat-continuity-and-handover/references/apprentice-successor-seat-cutover.md +256 -0
  103. package/daemon/context-packs/skills/seat-continuity-and-handover/references/orchestrator-role.md +40 -0
  104. package/daemon/context-packs/skills/session-compaction-and-restore/SKILL.md +163 -0
  105. package/daemon/context-packs/skills/session-compaction-and-restore/manifest.yaml +10 -0
  106. package/daemon/context-packs/skills/software-for-agents/SKILL.md +187 -0
  107. package/daemon/context-packs/skills/software-for-agents/manifest.yaml +10 -0
  108. package/daemon/context-packs/world-example/manifest.yaml +1 -1
  109. package/daemon/context-packs/world-public/manifest.yaml +1 -1
  110. package/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
  111. package/daemon/dist/adapters/codex-runtime-adapter.js +249 -2
  112. package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
  113. package/daemon/dist/adapters/tmux.d.ts +6 -5
  114. package/daemon/dist/adapters/tmux.d.ts.map +1 -1
  115. package/daemon/dist/adapters/tmux.js +29 -12
  116. package/daemon/dist/adapters/tmux.js.map +1 -1
  117. package/daemon/dist/build-info.js +3 -3
  118. package/daemon/dist/builtins/workflow-specs/basic-loop.yaml +3 -3
  119. package/daemon/dist/builtins/workflow-specs/conveyor.yaml +1 -1
  120. package/daemon/dist/builtins/workflow-specs/factory-rsi.yaml +1 -1
  121. package/daemon/dist/db/all-migrations.d.ts +1 -1
  122. package/daemon/dist/db/all-migrations.d.ts.map +1 -1
  123. package/daemon/dist/db/all-migrations.js +6 -2
  124. package/daemon/dist/db/all-migrations.js.map +1 -1
  125. package/daemon/dist/db/migrations/077_node_session_source.d.ts +4 -0
  126. package/daemon/dist/db/migrations/077_node_session_source.d.ts.map +1 -0
  127. package/daemon/dist/db/migrations/077_node_session_source.js +6 -0
  128. package/daemon/dist/db/migrations/077_node_session_source.js.map +1 -0
  129. package/daemon/dist/db/migrations/078_idle_gate_fired_condition.d.ts +17 -0
  130. package/daemon/dist/db/migrations/078_idle_gate_fired_condition.d.ts.map +1 -0
  131. package/daemon/dist/db/migrations/078_idle_gate_fired_condition.js +21 -0
  132. package/daemon/dist/db/migrations/078_idle_gate_fired_condition.js.map +1 -0
  133. package/daemon/dist/domain/active-occupant.d.ts +6 -0
  134. package/daemon/dist/domain/active-occupant.d.ts.map +1 -1
  135. package/daemon/dist/domain/active-occupant.js +14 -0
  136. package/daemon/dist/domain/active-occupant.js.map +1 -1
  137. package/daemon/dist/domain/context-packs/manifest-parser.d.ts.map +1 -1
  138. package/daemon/dist/domain/context-packs/manifest-parser.js +5 -6
  139. package/daemon/dist/domain/context-packs/manifest-parser.js.map +1 -1
  140. package/daemon/dist/domain/context-packs/profile-composer.d.ts +1 -1
  141. package/daemon/dist/domain/context-packs/profile-composer.d.ts.map +1 -1
  142. package/daemon/dist/domain/context-packs/profile-composer.js +2 -2
  143. package/daemon/dist/domain/context-packs/profile-composer.js.map +1 -1
  144. package/daemon/dist/domain/context-packs/profile-source-resolver.d.ts +3 -1
  145. package/daemon/dist/domain/context-packs/profile-source-resolver.d.ts.map +1 -1
  146. package/daemon/dist/domain/context-packs/profile-source-resolver.js +3 -2
  147. package/daemon/dist/domain/context-packs/profile-source-resolver.js.map +1 -1
  148. package/daemon/dist/domain/current-work.d.ts +73 -0
  149. package/daemon/dist/domain/current-work.d.ts.map +1 -0
  150. package/daemon/dist/domain/current-work.js +225 -0
  151. package/daemon/dist/domain/current-work.js.map +1 -0
  152. package/daemon/dist/domain/execution-view.d.ts.map +1 -1
  153. package/daemon/dist/domain/execution-view.js +215 -13
  154. package/daemon/dist/domain/execution-view.js.map +1 -1
  155. package/daemon/dist/domain/gateway/human-registry.d.ts +3 -2
  156. package/daemon/dist/domain/gateway/human-registry.d.ts.map +1 -1
  157. package/daemon/dist/domain/gateway/human-registry.js +113 -18
  158. package/daemon/dist/domain/gateway/human-registry.js.map +1 -1
  159. package/daemon/dist/domain/model-divergence/effective-model-readers.d.ts +3 -2
  160. package/daemon/dist/domain/model-divergence/effective-model-readers.d.ts.map +1 -1
  161. package/daemon/dist/domain/model-divergence/effective-model-readers.js +7 -5
  162. package/daemon/dist/domain/model-divergence/effective-model-readers.js.map +1 -1
  163. package/daemon/dist/domain/policies/idle-gate-qitem.d.ts +5 -5
  164. package/daemon/dist/domain/policies/idle-gate-qitem.d.ts.map +1 -1
  165. package/daemon/dist/domain/policies/idle-gate-qitem.js +130 -22
  166. package/daemon/dist/domain/policies/idle-gate-qitem.js.map +1 -1
  167. package/daemon/dist/domain/policies/types.d.ts +12 -0
  168. package/daemon/dist/domain/policies/types.d.ts.map +1 -1
  169. package/daemon/dist/domain/queue-repository.d.ts +37 -2
  170. package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
  171. package/daemon/dist/domain/queue-repository.js +171 -16
  172. package/daemon/dist/domain/queue-repository.js.map +1 -1
  173. package/daemon/dist/domain/queue-wake-repository.d.ts +19 -0
  174. package/daemon/dist/domain/queue-wake-repository.d.ts.map +1 -1
  175. package/daemon/dist/domain/queue-wake-repository.js +33 -0
  176. package/daemon/dist/domain/queue-wake-repository.js.map +1 -1
  177. package/daemon/dist/domain/reconciler.d.ts.map +1 -1
  178. package/daemon/dist/domain/reconciler.js +4 -1
  179. package/daemon/dist/domain/reconciler.js.map +1 -1
  180. package/daemon/dist/domain/rehydrate-eligibility.d.ts +11 -1
  181. package/daemon/dist/domain/rehydrate-eligibility.d.ts.map +1 -1
  182. package/daemon/dist/domain/rehydrate-eligibility.js +34 -0
  183. package/daemon/dist/domain/rehydrate-eligibility.js.map +1 -1
  184. package/daemon/dist/domain/restore-orchestrator.d.ts +9 -0
  185. package/daemon/dist/domain/restore-orchestrator.d.ts.map +1 -1
  186. package/daemon/dist/domain/restore-orchestrator.js +32 -0
  187. package/daemon/dist/domain/restore-orchestrator.js.map +1 -1
  188. package/daemon/dist/domain/restore-plan-preview.js +2 -2
  189. package/daemon/dist/domain/restore-plan-preview.js.map +1 -1
  190. package/daemon/dist/domain/rig-lifecycle-service.d.ts +24 -4
  191. package/daemon/dist/domain/rig-lifecycle-service.d.ts.map +1 -1
  192. package/daemon/dist/domain/rig-lifecycle-service.js +116 -6
  193. package/daemon/dist/domain/rig-lifecycle-service.js.map +1 -1
  194. package/daemon/dist/domain/rig-repository.d.ts +2 -1
  195. package/daemon/dist/domain/rig-repository.d.ts.map +1 -1
  196. package/daemon/dist/domain/rig-repository.js +7 -0
  197. package/daemon/dist/domain/rig-repository.js.map +1 -1
  198. package/daemon/dist/domain/rigspec-exporter.d.ts.map +1 -1
  199. package/daemon/dist/domain/rigspec-exporter.js +4 -0
  200. package/daemon/dist/domain/rigspec-exporter.js.map +1 -1
  201. package/daemon/dist/domain/rigspec-instantiator.d.ts +15 -9
  202. package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
  203. package/daemon/dist/domain/rigspec-instantiator.js +68 -83
  204. package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
  205. package/daemon/dist/domain/rigspec-schema.d.ts +5 -1
  206. package/daemon/dist/domain/rigspec-schema.d.ts.map +1 -1
  207. package/daemon/dist/domain/rigspec-schema.js +41 -2
  208. package/daemon/dist/domain/rigspec-schema.js.map +1 -1
  209. package/daemon/dist/domain/seat-attention-reconciler.d.ts +32 -1
  210. package/daemon/dist/domain/seat-attention-reconciler.d.ts.map +1 -1
  211. package/daemon/dist/domain/seat-attention-reconciler.js +183 -4
  212. package/daemon/dist/domain/seat-attention-reconciler.js.map +1 -1
  213. package/daemon/dist/domain/session-transport.d.ts +5 -0
  214. package/daemon/dist/domain/session-transport.d.ts.map +1 -1
  215. package/daemon/dist/domain/session-transport.js +33 -7
  216. package/daemon/dist/domain/session-transport.js.map +1 -1
  217. package/daemon/dist/domain/snapshot-capture.d.ts.map +1 -1
  218. package/daemon/dist/domain/snapshot-capture.js +4 -2
  219. package/daemon/dist/domain/snapshot-capture.js.map +1 -1
  220. package/daemon/dist/domain/topology-defaults-installer.d.ts +4 -2
  221. package/daemon/dist/domain/topology-defaults-installer.d.ts.map +1 -1
  222. package/daemon/dist/domain/topology-defaults-installer.js +27 -0
  223. package/daemon/dist/domain/topology-defaults-installer.js.map +1 -1
  224. package/daemon/dist/domain/types.d.ts +3 -1
  225. package/daemon/dist/domain/types.d.ts.map +1 -1
  226. package/daemon/dist/domain/types.js.map +1 -1
  227. package/daemon/dist/domain/up-command-router.d.ts.map +1 -1
  228. package/daemon/dist/domain/up-command-router.js +19 -0
  229. package/daemon/dist/domain/up-command-router.js.map +1 -1
  230. package/daemon/dist/domain/watchdog-jobs-repository.d.ts +9 -0
  231. package/daemon/dist/domain/watchdog-jobs-repository.d.ts.map +1 -1
  232. package/daemon/dist/domain/watchdog-jobs-repository.js +15 -2
  233. package/daemon/dist/domain/watchdog-jobs-repository.js.map +1 -1
  234. package/daemon/dist/domain/watchdog-policy-engine.d.ts +7 -0
  235. package/daemon/dist/domain/watchdog-policy-engine.d.ts.map +1 -1
  236. package/daemon/dist/domain/watchdog-policy-engine.js +47 -0
  237. package/daemon/dist/domain/watchdog-policy-engine.js.map +1 -1
  238. package/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts.map +1 -1
  239. package/daemon/dist/domain/workspace/default-workspace-scaffold.js +37 -2
  240. package/daemon/dist/domain/workspace/default-workspace-scaffold.js.map +1 -1
  241. package/daemon/dist/routes/context-packs.d.ts.map +1 -1
  242. package/daemon/dist/routes/context-packs.js +146 -6
  243. package/daemon/dist/routes/context-packs.js.map +1 -1
  244. package/daemon/dist/routes/queue.d.ts.map +1 -1
  245. package/daemon/dist/routes/queue.js +31 -10
  246. package/daemon/dist/routes/queue.js.map +1 -1
  247. package/daemon/dist/routes/rigs.js +17 -6
  248. package/daemon/dist/routes/rigs.js.map +1 -1
  249. package/daemon/dist/routes/rigspec.d.ts.map +1 -1
  250. package/daemon/dist/routes/rigspec.js +37 -0
  251. package/daemon/dist/routes/rigspec.js.map +1 -1
  252. package/daemon/dist/routes/sessions.js +7 -3
  253. package/daemon/dist/routes/sessions.js.map +1 -1
  254. package/daemon/dist/routes/up.js +10 -3
  255. package/daemon/dist/routes/up.js.map +1 -1
  256. package/daemon/dist/startup.d.ts.map +1 -1
  257. package/daemon/dist/startup.js +19 -7
  258. package/daemon/dist/startup.js.map +1 -1
  259. package/daemon/docs/reference/agent-spec.md +34 -1
  260. package/daemon/docs/reference/chain-file-convention.md +17 -12
  261. package/daemon/docs/reference/mission-install.md +23 -2
  262. package/daemon/docs/reference/product-journey-sdlc.md +305 -0
  263. package/daemon/docs/reference/release-boundary.md +29 -5
  264. package/daemon/docs/reference/sdlc-conventions.md +15 -2
  265. package/daemon/specs/agents/apps/vault-specialist/agent.yaml +1 -1
  266. package/daemon/specs/agents/apps/vault-specialist/guidance/role.md +0 -1
  267. package/daemon/specs/agents/conveyor/builder/agent.yaml +1 -1
  268. package/daemon/specs/agents/conveyor/builder/guidance/role.md +0 -1
  269. package/daemon/specs/agents/conveyor/lead/agent.yaml +1 -1
  270. package/daemon/specs/agents/conveyor/lead/guidance/role.md +0 -3
  271. package/daemon/specs/agents/conveyor/planner/agent.yaml +1 -1
  272. package/daemon/specs/agents/conveyor/planner/guidance/role.md +0 -1
  273. package/daemon/specs/agents/design/product-designer/agent.yaml +3 -4
  274. package/daemon/specs/agents/design/product-designer/guidance/role.md +0 -3
  275. package/daemon/specs/agents/development/implementer/agent.yaml +3 -4
  276. package/daemon/specs/agents/development/implementer/guidance/role.md +0 -3
  277. package/daemon/specs/agents/development/qa/agent.yaml +4 -4
  278. package/daemon/specs/agents/development/qa/guidance/role.md +1 -4
  279. package/daemon/specs/agents/factory-rsi/dogfood/agent.yaml +1 -1
  280. package/daemon/specs/agents/factory-rsi/release-manager/agent.yaml +1 -1
  281. package/daemon/specs/agents/orchestration/orchestrator/agent.yaml +3 -4
  282. package/daemon/specs/agents/orchestration/orchestrator/guidance/role.md +0 -4
  283. package/daemon/specs/agents/review/independent-reviewer/agent.yaml +3 -4
  284. package/daemon/specs/agents/review/independent-reviewer/guidance/role.md +0 -3
  285. package/daemon/specs/agents/shared/agent.yaml +2 -10
  286. package/daemon/specs/agents/shared/skills/core/agent-startup-and-context-ingestion/SKILL.md +1 -1
  287. package/daemon/specs/agents/shared/skills/core/openrig-skills/SKILL.md +1 -4
  288. package/daemon/specs/agents/shared/skills/core/openrig-upgrade/SKILL.md +120 -355
  289. package/daemon/specs/agents/shared/skills/core/openrig-upgrade/scripts/backup-sqlite.mjs +62 -0
  290. package/daemon/specs/agents/shared/skills/core/openrig-upgrade/scripts/inspect-upgrade.mjs +40 -0
  291. package/daemon/specs/agents/shared/skills/core/openrig-upgrade/scripts/refresh-managed-plugin.mjs +151 -0
  292. package/daemon/specs/agents/shared/skills/pm/requirements-writer/SKILL.md +21 -15
  293. package/daemon/specs/agents/shared/skills/pods/orchestration-team/SKILL.md +1 -1
  294. package/daemon/specs/agents/shared/skills/pods/review-team/SKILL.md +1 -1
  295. package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/agent.yaml +1 -1
  296. package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/guidance/role.md +2 -3
  297. package/daemon/specs/rigs/preview/product-team/topology/instance/CRAFT.md +4 -4
  298. package/daemon/specs/rigs/preview/product-team/topology/rig/ORCHESTRATION-CRAFT.md +3 -3
  299. package/dist/build-info.js +3 -3
  300. package/dist/commands/config-init-workspace.d.ts.map +1 -1
  301. package/dist/commands/config-init-workspace.js +38 -3
  302. package/dist/commands/config-init-workspace.js.map +1 -1
  303. package/dist/commands/context.d.ts.map +1 -1
  304. package/dist/commands/context.js +90 -7
  305. package/dist/commands/context.js.map +1 -1
  306. package/dist/commands/create.d.ts +4 -0
  307. package/dist/commands/create.d.ts.map +1 -0
  308. package/dist/commands/create.js +84 -0
  309. package/dist/commands/create.js.map +1 -0
  310. package/dist/commands/grow.d.ts +4 -0
  311. package/dist/commands/grow.d.ts.map +1 -0
  312. package/dist/commands/grow.js +182 -0
  313. package/dist/commands/grow.js.map +1 -0
  314. package/dist/commands/import.d.ts.map +1 -1
  315. package/dist/commands/import.js +27 -1
  316. package/dist/commands/import.js.map +1 -1
  317. package/dist/commands/remove.d.ts.map +1 -1
  318. package/dist/commands/remove.js +9 -1
  319. package/dist/commands/remove.js.map +1 -1
  320. package/dist/commands/rig.d.ts.map +1 -1
  321. package/dist/commands/rig.js +48 -1
  322. package/dist/commands/rig.js.map +1 -1
  323. package/dist/commands/scope.d.ts.map +1 -1
  324. package/dist/commands/scope.js +21 -2
  325. package/dist/commands/scope.js.map +1 -1
  326. package/dist/commands/shrink.d.ts.map +1 -1
  327. package/dist/commands/shrink.js +6 -1
  328. package/dist/commands/shrink.js.map +1 -1
  329. package/dist/commands/topology-default-agent.d.ts +4 -0
  330. package/dist/commands/topology-default-agent.d.ts.map +1 -0
  331. package/dist/commands/topology-default-agent.js +13 -0
  332. package/dist/commands/topology-default-agent.js.map +1 -0
  333. package/dist/commands/walk.d.ts.map +1 -1
  334. package/dist/commands/walk.js +3 -0
  335. package/dist/commands/walk.js.map +1 -1
  336. package/dist/commands/watchdog.d.ts.map +1 -1
  337. package/dist/commands/watchdog.js +51 -3
  338. package/dist/commands/watchdog.js.map +1 -1
  339. package/dist/front-door.d.ts.map +1 -1
  340. package/dist/front-door.js +16 -4
  341. package/dist/front-door.js.map +1 -1
  342. package/dist/index.d.ts +2 -0
  343. package/dist/index.d.ts.map +1 -1
  344. package/dist/index.js +4 -0
  345. package/dist/index.js.map +1 -1
  346. package/dist/lib/topology-trace.d.ts +3 -2
  347. package/dist/lib/topology-trace.d.ts.map +1 -1
  348. package/dist/lib/topology-trace.js +12 -2
  349. package/dist/lib/topology-trace.js.map +1 -1
  350. package/dist/lib/work-install.d.ts +39 -0
  351. package/dist/lib/work-install.d.ts.map +1 -0
  352. package/dist/lib/work-install.js +312 -0
  353. package/dist/lib/work-install.js.map +1 -0
  354. package/node_modules/@openrig/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
  355. package/node_modules/@openrig/daemon/dist/adapters/codex-runtime-adapter.js +249 -2
  356. package/node_modules/@openrig/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
  357. package/node_modules/@openrig/daemon/dist/adapters/tmux.d.ts +6 -5
  358. package/node_modules/@openrig/daemon/dist/adapters/tmux.d.ts.map +1 -1
  359. package/node_modules/@openrig/daemon/dist/adapters/tmux.js +29 -12
  360. package/node_modules/@openrig/daemon/dist/adapters/tmux.js.map +1 -1
  361. package/node_modules/@openrig/daemon/dist/build-info.js +3 -3
  362. package/node_modules/@openrig/daemon/dist/builtins/workflow-specs/basic-loop.yaml +3 -3
  363. package/node_modules/@openrig/daemon/dist/builtins/workflow-specs/conveyor.yaml +1 -1
  364. package/node_modules/@openrig/daemon/dist/builtins/workflow-specs/factory-rsi.yaml +1 -1
  365. package/node_modules/@openrig/daemon/dist/db/all-migrations.d.ts +1 -1
  366. package/node_modules/@openrig/daemon/dist/db/all-migrations.d.ts.map +1 -1
  367. package/node_modules/@openrig/daemon/dist/db/all-migrations.js +6 -2
  368. package/node_modules/@openrig/daemon/dist/db/all-migrations.js.map +1 -1
  369. package/node_modules/@openrig/daemon/dist/db/migrations/077_node_session_source.d.ts +4 -0
  370. package/node_modules/@openrig/daemon/dist/db/migrations/077_node_session_source.d.ts.map +1 -0
  371. package/node_modules/@openrig/daemon/dist/db/migrations/077_node_session_source.js +6 -0
  372. package/node_modules/@openrig/daemon/dist/db/migrations/077_node_session_source.js.map +1 -0
  373. package/node_modules/@openrig/daemon/dist/db/migrations/078_idle_gate_fired_condition.d.ts +17 -0
  374. package/node_modules/@openrig/daemon/dist/db/migrations/078_idle_gate_fired_condition.d.ts.map +1 -0
  375. package/node_modules/@openrig/daemon/dist/db/migrations/078_idle_gate_fired_condition.js +21 -0
  376. package/node_modules/@openrig/daemon/dist/db/migrations/078_idle_gate_fired_condition.js.map +1 -0
  377. package/node_modules/@openrig/daemon/dist/domain/active-occupant.d.ts +6 -0
  378. package/node_modules/@openrig/daemon/dist/domain/active-occupant.d.ts.map +1 -1
  379. package/node_modules/@openrig/daemon/dist/domain/active-occupant.js +14 -0
  380. package/node_modules/@openrig/daemon/dist/domain/active-occupant.js.map +1 -1
  381. package/node_modules/@openrig/daemon/dist/domain/context-packs/manifest-parser.d.ts.map +1 -1
  382. package/node_modules/@openrig/daemon/dist/domain/context-packs/manifest-parser.js +5 -6
  383. package/node_modules/@openrig/daemon/dist/domain/context-packs/manifest-parser.js.map +1 -1
  384. package/node_modules/@openrig/daemon/dist/domain/context-packs/profile-composer.d.ts +1 -1
  385. package/node_modules/@openrig/daemon/dist/domain/context-packs/profile-composer.d.ts.map +1 -1
  386. package/node_modules/@openrig/daemon/dist/domain/context-packs/profile-composer.js +2 -2
  387. package/node_modules/@openrig/daemon/dist/domain/context-packs/profile-composer.js.map +1 -1
  388. package/node_modules/@openrig/daemon/dist/domain/context-packs/profile-source-resolver.d.ts +3 -1
  389. package/node_modules/@openrig/daemon/dist/domain/context-packs/profile-source-resolver.d.ts.map +1 -1
  390. package/node_modules/@openrig/daemon/dist/domain/context-packs/profile-source-resolver.js +3 -2
  391. package/node_modules/@openrig/daemon/dist/domain/context-packs/profile-source-resolver.js.map +1 -1
  392. package/node_modules/@openrig/daemon/dist/domain/current-work.d.ts +73 -0
  393. package/node_modules/@openrig/daemon/dist/domain/current-work.d.ts.map +1 -0
  394. package/node_modules/@openrig/daemon/dist/domain/current-work.js +225 -0
  395. package/node_modules/@openrig/daemon/dist/domain/current-work.js.map +1 -0
  396. package/node_modules/@openrig/daemon/dist/domain/execution-view.d.ts.map +1 -1
  397. package/node_modules/@openrig/daemon/dist/domain/execution-view.js +215 -13
  398. package/node_modules/@openrig/daemon/dist/domain/execution-view.js.map +1 -1
  399. package/node_modules/@openrig/daemon/dist/domain/gateway/human-registry.d.ts +3 -2
  400. package/node_modules/@openrig/daemon/dist/domain/gateway/human-registry.d.ts.map +1 -1
  401. package/node_modules/@openrig/daemon/dist/domain/gateway/human-registry.js +113 -18
  402. package/node_modules/@openrig/daemon/dist/domain/gateway/human-registry.js.map +1 -1
  403. package/node_modules/@openrig/daemon/dist/domain/model-divergence/effective-model-readers.d.ts +3 -2
  404. package/node_modules/@openrig/daemon/dist/domain/model-divergence/effective-model-readers.d.ts.map +1 -1
  405. package/node_modules/@openrig/daemon/dist/domain/model-divergence/effective-model-readers.js +7 -5
  406. package/node_modules/@openrig/daemon/dist/domain/model-divergence/effective-model-readers.js.map +1 -1
  407. package/node_modules/@openrig/daemon/dist/domain/policies/idle-gate-qitem.d.ts +5 -5
  408. package/node_modules/@openrig/daemon/dist/domain/policies/idle-gate-qitem.d.ts.map +1 -1
  409. package/node_modules/@openrig/daemon/dist/domain/policies/idle-gate-qitem.js +130 -22
  410. package/node_modules/@openrig/daemon/dist/domain/policies/idle-gate-qitem.js.map +1 -1
  411. package/node_modules/@openrig/daemon/dist/domain/policies/types.d.ts +12 -0
  412. package/node_modules/@openrig/daemon/dist/domain/policies/types.d.ts.map +1 -1
  413. package/node_modules/@openrig/daemon/dist/domain/queue-repository.d.ts +37 -2
  414. package/node_modules/@openrig/daemon/dist/domain/queue-repository.d.ts.map +1 -1
  415. package/node_modules/@openrig/daemon/dist/domain/queue-repository.js +171 -16
  416. package/node_modules/@openrig/daemon/dist/domain/queue-repository.js.map +1 -1
  417. package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.d.ts +19 -0
  418. package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.d.ts.map +1 -1
  419. package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.js +33 -0
  420. package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.js.map +1 -1
  421. package/node_modules/@openrig/daemon/dist/domain/reconciler.d.ts.map +1 -1
  422. package/node_modules/@openrig/daemon/dist/domain/reconciler.js +4 -1
  423. package/node_modules/@openrig/daemon/dist/domain/reconciler.js.map +1 -1
  424. package/node_modules/@openrig/daemon/dist/domain/rehydrate-eligibility.d.ts +11 -1
  425. package/node_modules/@openrig/daemon/dist/domain/rehydrate-eligibility.d.ts.map +1 -1
  426. package/node_modules/@openrig/daemon/dist/domain/rehydrate-eligibility.js +34 -0
  427. package/node_modules/@openrig/daemon/dist/domain/rehydrate-eligibility.js.map +1 -1
  428. package/node_modules/@openrig/daemon/dist/domain/restore-orchestrator.d.ts +9 -0
  429. package/node_modules/@openrig/daemon/dist/domain/restore-orchestrator.d.ts.map +1 -1
  430. package/node_modules/@openrig/daemon/dist/domain/restore-orchestrator.js +32 -0
  431. package/node_modules/@openrig/daemon/dist/domain/restore-orchestrator.js.map +1 -1
  432. package/node_modules/@openrig/daemon/dist/domain/restore-plan-preview.js +2 -2
  433. package/node_modules/@openrig/daemon/dist/domain/restore-plan-preview.js.map +1 -1
  434. package/node_modules/@openrig/daemon/dist/domain/rig-lifecycle-service.d.ts +24 -4
  435. package/node_modules/@openrig/daemon/dist/domain/rig-lifecycle-service.d.ts.map +1 -1
  436. package/node_modules/@openrig/daemon/dist/domain/rig-lifecycle-service.js +116 -6
  437. package/node_modules/@openrig/daemon/dist/domain/rig-lifecycle-service.js.map +1 -1
  438. package/node_modules/@openrig/daemon/dist/domain/rig-repository.d.ts +2 -1
  439. package/node_modules/@openrig/daemon/dist/domain/rig-repository.d.ts.map +1 -1
  440. package/node_modules/@openrig/daemon/dist/domain/rig-repository.js +7 -0
  441. package/node_modules/@openrig/daemon/dist/domain/rig-repository.js.map +1 -1
  442. package/node_modules/@openrig/daemon/dist/domain/rigspec-exporter.d.ts.map +1 -1
  443. package/node_modules/@openrig/daemon/dist/domain/rigspec-exporter.js +4 -0
  444. package/node_modules/@openrig/daemon/dist/domain/rigspec-exporter.js.map +1 -1
  445. package/node_modules/@openrig/daemon/dist/domain/rigspec-instantiator.d.ts +15 -9
  446. package/node_modules/@openrig/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
  447. package/node_modules/@openrig/daemon/dist/domain/rigspec-instantiator.js +68 -83
  448. package/node_modules/@openrig/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
  449. package/node_modules/@openrig/daemon/dist/domain/rigspec-schema.d.ts +5 -1
  450. package/node_modules/@openrig/daemon/dist/domain/rigspec-schema.d.ts.map +1 -1
  451. package/node_modules/@openrig/daemon/dist/domain/rigspec-schema.js +41 -2
  452. package/node_modules/@openrig/daemon/dist/domain/rigspec-schema.js.map +1 -1
  453. package/node_modules/@openrig/daemon/dist/domain/seat-attention-reconciler.d.ts +32 -1
  454. package/node_modules/@openrig/daemon/dist/domain/seat-attention-reconciler.d.ts.map +1 -1
  455. package/node_modules/@openrig/daemon/dist/domain/seat-attention-reconciler.js +183 -4
  456. package/node_modules/@openrig/daemon/dist/domain/seat-attention-reconciler.js.map +1 -1
  457. package/node_modules/@openrig/daemon/dist/domain/session-transport.d.ts +5 -0
  458. package/node_modules/@openrig/daemon/dist/domain/session-transport.d.ts.map +1 -1
  459. package/node_modules/@openrig/daemon/dist/domain/session-transport.js +33 -7
  460. package/node_modules/@openrig/daemon/dist/domain/session-transport.js.map +1 -1
  461. package/node_modules/@openrig/daemon/dist/domain/snapshot-capture.d.ts.map +1 -1
  462. package/node_modules/@openrig/daemon/dist/domain/snapshot-capture.js +4 -2
  463. package/node_modules/@openrig/daemon/dist/domain/snapshot-capture.js.map +1 -1
  464. package/node_modules/@openrig/daemon/dist/domain/topology-defaults-installer.d.ts +4 -2
  465. package/node_modules/@openrig/daemon/dist/domain/topology-defaults-installer.d.ts.map +1 -1
  466. package/node_modules/@openrig/daemon/dist/domain/topology-defaults-installer.js +27 -0
  467. package/node_modules/@openrig/daemon/dist/domain/topology-defaults-installer.js.map +1 -1
  468. package/node_modules/@openrig/daemon/dist/domain/types.d.ts +3 -1
  469. package/node_modules/@openrig/daemon/dist/domain/types.d.ts.map +1 -1
  470. package/node_modules/@openrig/daemon/dist/domain/types.js.map +1 -1
  471. package/node_modules/@openrig/daemon/dist/domain/up-command-router.d.ts.map +1 -1
  472. package/node_modules/@openrig/daemon/dist/domain/up-command-router.js +19 -0
  473. package/node_modules/@openrig/daemon/dist/domain/up-command-router.js.map +1 -1
  474. package/node_modules/@openrig/daemon/dist/domain/watchdog-jobs-repository.d.ts +9 -0
  475. package/node_modules/@openrig/daemon/dist/domain/watchdog-jobs-repository.d.ts.map +1 -1
  476. package/node_modules/@openrig/daemon/dist/domain/watchdog-jobs-repository.js +15 -2
  477. package/node_modules/@openrig/daemon/dist/domain/watchdog-jobs-repository.js.map +1 -1
  478. package/node_modules/@openrig/daemon/dist/domain/watchdog-policy-engine.d.ts +7 -0
  479. package/node_modules/@openrig/daemon/dist/domain/watchdog-policy-engine.d.ts.map +1 -1
  480. package/node_modules/@openrig/daemon/dist/domain/watchdog-policy-engine.js +47 -0
  481. package/node_modules/@openrig/daemon/dist/domain/watchdog-policy-engine.js.map +1 -1
  482. package/node_modules/@openrig/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts.map +1 -1
  483. package/node_modules/@openrig/daemon/dist/domain/workspace/default-workspace-scaffold.js +37 -2
  484. package/node_modules/@openrig/daemon/dist/domain/workspace/default-workspace-scaffold.js.map +1 -1
  485. package/node_modules/@openrig/daemon/dist/routes/context-packs.d.ts.map +1 -1
  486. package/node_modules/@openrig/daemon/dist/routes/context-packs.js +146 -6
  487. package/node_modules/@openrig/daemon/dist/routes/context-packs.js.map +1 -1
  488. package/node_modules/@openrig/daemon/dist/routes/queue.d.ts.map +1 -1
  489. package/node_modules/@openrig/daemon/dist/routes/queue.js +31 -10
  490. package/node_modules/@openrig/daemon/dist/routes/queue.js.map +1 -1
  491. package/node_modules/@openrig/daemon/dist/routes/rigs.js +17 -6
  492. package/node_modules/@openrig/daemon/dist/routes/rigs.js.map +1 -1
  493. package/node_modules/@openrig/daemon/dist/routes/rigspec.d.ts.map +1 -1
  494. package/node_modules/@openrig/daemon/dist/routes/rigspec.js +37 -0
  495. package/node_modules/@openrig/daemon/dist/routes/rigspec.js.map +1 -1
  496. package/node_modules/@openrig/daemon/dist/routes/sessions.js +7 -3
  497. package/node_modules/@openrig/daemon/dist/routes/sessions.js.map +1 -1
  498. package/node_modules/@openrig/daemon/dist/routes/up.js +10 -3
  499. package/node_modules/@openrig/daemon/dist/routes/up.js.map +1 -1
  500. package/node_modules/@openrig/daemon/dist/startup.d.ts.map +1 -1
  501. package/node_modules/@openrig/daemon/dist/startup.js +19 -7
  502. package/node_modules/@openrig/daemon/dist/startup.js.map +1 -1
  503. package/node_modules/@openrig/daemon/package.json +1 -1
  504. package/package.json +2 -1
  505. package/tui/dist/daemon-client.d.ts +2 -0
  506. package/tui/dist/daemon-client.d.ts.map +1 -1
  507. package/tui/dist/daemon-client.js +4 -0
  508. package/tui/dist/daemon-client.js.map +1 -1
  509. package/tui/dist/execution/execution-model.d.ts +19 -0
  510. package/tui/dist/execution/execution-model.d.ts.map +1 -0
  511. package/tui/dist/execution/execution-model.js +518 -0
  512. package/tui/dist/execution/execution-model.js.map +1 -0
  513. package/tui/dist/hydrate.d.ts +1 -1
  514. package/tui/dist/hydrate.d.ts.map +1 -1
  515. package/tui/dist/hydrate.js +6 -2
  516. package/tui/dist/hydrate.js.map +1 -1
  517. package/tui/dist/input.d.ts +7 -0
  518. package/tui/dist/input.d.ts.map +1 -1
  519. package/tui/dist/input.js +13 -0
  520. package/tui/dist/input.js.map +1 -1
  521. package/tui/dist/live.d.ts +10 -0
  522. package/tui/dist/live.d.ts.map +1 -1
  523. package/tui/dist/live.js +34 -1
  524. package/tui/dist/live.js.map +1 -1
  525. package/tui/dist/main.js +22 -3
  526. package/tui/dist/main.js.map +1 -1
  527. package/tui/dist/render.d.ts.map +1 -1
  528. package/tui/dist/render.js +13 -2
  529. package/tui/dist/render.js.map +1 -1
  530. package/tui/dist/scopes/scopes-model.d.ts +1 -0
  531. package/tui/dist/scopes/scopes-model.d.ts.map +1 -1
  532. package/tui/dist/scopes/scopes-model.js +4 -2
  533. package/tui/dist/scopes/scopes-model.js.map +1 -1
  534. package/tui/dist/sections.js +2 -2
  535. package/tui/dist/sections.js.map +1 -1
  536. package/tui/dist/state.d.ts.map +1 -1
  537. package/tui/dist/state.js +15 -2
  538. package/tui/dist/state.js.map +1 -1
  539. package/tui/dist/stylize.js +2 -2
  540. package/tui/dist/stylize.js.map +1 -1
  541. package/tui/dist/types.d.ts +20 -0
  542. package/tui/dist/types.d.ts.map +1 -1
  543. package/daemon/context-packs/skills/process/brainstorming/OPENRIG.md +0 -48
  544. package/daemon/context-packs/skills/process/brainstorming/SKILL.md +0 -107
  545. package/daemon/context-packs/skills/process/brainstorming/manifest.yaml +0 -12
  546. package/daemon/context-packs/skills/process/executing-plans/OPENRIG.md +0 -56
  547. package/daemon/context-packs/skills/process/executing-plans/SKILL.md +0 -94
  548. package/daemon/context-packs/skills/process/executing-plans/manifest.yaml +0 -12
  549. package/daemon/context-packs/skills/process/using-superpowers/OPENRIG.md +0 -48
  550. package/daemon/context-packs/skills/process/using-superpowers/SKILL.md +0 -106
  551. package/daemon/context-packs/skills/process/using-superpowers/manifest.yaml +0 -12
  552. package/daemon/context-packs/skills/process/writing-plans/OPENRIG.md +0 -52
  553. package/daemon/context-packs/skills/process/writing-plans/SKILL.md +0 -126
  554. package/daemon/context-packs/skills/process/writing-plans/manifest.yaml +0 -12
  555. package/daemon/specs/agents/shared/skills/process/brainstorming/OPENRIG.md +0 -48
  556. package/daemon/specs/agents/shared/skills/process/brainstorming/SKILL.md +0 -107
  557. package/daemon/specs/agents/shared/skills/process/executing-plans/OPENRIG.md +0 -56
  558. package/daemon/specs/agents/shared/skills/process/executing-plans/SKILL.md +0 -94
  559. package/daemon/specs/agents/shared/skills/process/using-superpowers/OPENRIG.md +0 -48
  560. package/daemon/specs/agents/shared/skills/process/using-superpowers/SKILL.md +0 -106
  561. package/daemon/specs/agents/shared/skills/process/writing-plans/OPENRIG.md +0 -52
  562. package/daemon/specs/agents/shared/skills/process/writing-plans/SKILL.md +0 -126
@@ -439,7 +439,7 @@ export class PodRigInstantiator {
439
439
  .map((node) => node.logicalId.includes(".") ? node.logicalId.split(".")[0] : null)
440
440
  .filter((value) => value !== null));
441
441
  for (const pod of rigSpec.pods) {
442
- if (existingPodIds.has(pod.id)) {
442
+ if (existingPodIds.has(pod.id) && opts?.existingPodNamespace !== pod.id) {
443
443
  throw { code: "materialize_conflict", message: `Pod id '${pod.id}' already exists in rig '${currentRig.rig.name}'` };
444
444
  }
445
445
  for (const member of pod.members) {
@@ -451,18 +451,26 @@ export class PodRigInstantiator {
451
451
  }
452
452
  const podIdMap = {};
453
453
  for (const pod of rigSpec.pods) {
454
- const podRecord = this.deps.podRepo.createPod(materializedRigId, pod.id, pod.label, {
454
+ const existingPod = opts?.existingPodNamespace === pod.id
455
+ ? this.deps.podRepo.getPodByNamespace(materializedRigId, pod.id)
456
+ : null;
457
+ if (opts?.existingPodNamespace === pod.id && !existingPod) {
458
+ throw { code: "materialize_conflict", message: `Existing pod '${pod.id}' not found in rig '${currentRig.rig.name}'` };
459
+ }
460
+ const podRecord = existingPod ?? this.deps.podRepo.createPod(materializedRigId, pod.id, pod.label, {
455
461
  summary: pod.summary,
456
462
  continuityPolicyJson: pod.continuityPolicy ? JSON.stringify(pod.continuityPolicy) : undefined,
457
463
  });
458
464
  podIdMap[pod.id] = podRecord.id;
459
- persistedEvents.push(this.deps.eventBus.persistWithinTransaction({
460
- type: "pod.created",
461
- rigId: materializedRigId,
462
- podId: podRecord.id,
463
- namespace: podRecord.namespace,
464
- label: pod.label,
465
- }));
465
+ if (!existingPod) {
466
+ persistedEvents.push(this.deps.eventBus.persistWithinTransaction({
467
+ type: "pod.created",
468
+ rigId: materializedRigId,
469
+ podId: podRecord.id,
470
+ namespace: podRecord.namespace,
471
+ label: pod.label,
472
+ }));
473
+ }
466
474
  for (const member of pod.members) {
467
475
  const qualifiedId = `${pod.id}.${member.id}`;
468
476
  const { node, event } = this.createMemberNode({
@@ -534,10 +542,11 @@ export class PodRigInstantiator {
534
542
  // overwritten). Best-effort AFTER the persistence tx: a rig never fails
535
543
  // to materialize over a defaults copy, but failures are surfaced as
536
544
  // named warnings, never swallowed.
537
- if (this.deps.topologyRootResolver) {
545
+ if (this.deps.topologyRootResolver && !opts?.existingPodNamespace) {
538
546
  const defaults = installTopologyDefaults({
539
547
  specDir: rigRoot,
540
548
  rigName: rigSpec.name,
549
+ podIds: rigSpec.pods.map((pod) => pod.id),
541
550
  topologyRoot: this.deps.topologyRootResolver(),
542
551
  });
543
552
  for (const f of defaults.failed) {
@@ -594,7 +603,7 @@ export class PodRigInstantiator {
594
603
  * round-trip; launchMaterialized(yaml) is the parse/validate/normalize front
595
604
  * over it. Behaviour identical (loop body relocated verbatim).
596
605
  */
597
- async launchValidatedSpec(rigSpec, rigRoot, targetRigId) {
606
+ async launchValidatedSpec(rigSpec, rigRoot, targetRigId, cwdOverride) {
598
607
  const launchOrder = this.computePodLaunchOrder(rigSpec);
599
608
  const podWarnings = [];
600
609
  const nodeResults = [];
@@ -627,6 +636,7 @@ export class PodRigInstantiator {
627
636
  member: memberContext.member,
628
637
  qualifiedId: logicalId,
629
638
  nodeId: node.id,
639
+ cwdOverride,
630
640
  });
631
641
  if (launched.warnings?.length) {
632
642
  podWarnings.push(...launched.warnings);
@@ -649,9 +659,10 @@ export class PodRigInstantiator {
649
659
  }
650
660
  /**
651
661
  * add_member converge op (OPR.0.3.3.24): add a single MEMBER to an EXISTING
652
- * pod in a live rig, composing the two extracted primitives — createMemberNode
653
- * (create-node) + launchBinding (launch-binding) — WITHOUT createPod and
654
- * WITHOUT fabricating a synthetic rig spec.
662
+ * pod in a live rig. S9 makes this the ordinary-growth front over the same
663
+ * materializeValidatedSpec + launchValidatedSpec effect ingress used by pod
664
+ * expansion; this method owns validation and result shaping, not a sibling
665
+ * create/launch transaction.
655
666
  *
656
667
  * Identity-migration-FREE: the new node mints a fresh node id + fresh logical
657
668
  * id + fresh `@rigged_*` at launch; no existing seat's logical id,
@@ -659,11 +670,10 @@ export class PodRigInstantiator {
659
670
  * source-visible fault line that lets add_member ship while move/fork wait for
660
671
  * the 0.4.0 identity stack.
661
672
  *
662
- * Versus materialize: this does NOT call materializeValidatedSpec (which always
663
- * createPods and carries the pod-exists conflict guard). It resolves the
664
- * EXISTING pod's DB id via `podRepo.getPodByNamespace` and creates the one node
665
- * directly under it. The pod-exists guard is lifted (adding to a live pod is
666
- * not a conflict); the per-member duplicate-logical-id guard is KEPT (AC-3).
673
+ * It resolves the EXISTING pod's DB id via `podRepo.getPodByNamespace`, then
674
+ * explicitly tells the shared materializer to reuse that pod. The pod-exists
675
+ * guard is lifted only for this named target; the per-member duplicate-logical-
676
+ * id guard is KEPT (AC-3).
667
677
  */
668
678
  async addMemberToPod(rigId, podNamespace, memberFragment, rigRoot, opts) {
669
679
  // 1. Resolve the rig.
@@ -771,70 +781,42 @@ export class PodRigInstantiator {
771
781
  }
772
782
  resolvedEdges.push({ from, to, kind: edge.kind });
773
783
  }
774
- // 8. create-node into the EXISTING pod (pod_id = resolved pod.id) + persist
775
- // the resolved pod-local edges, all in one tx so the node row, the
776
- // node.added event, and the edges commit atomically (mirroring the
777
- // materialize core); subscribers notified after commit.
778
- let createdNodeId = "";
779
- let createdEvent;
780
- const tx = this.db.transaction(() => {
781
- const { node, event } = this.createMemberNode({
782
- rigId,
783
- qualifiedId,
784
- member,
785
- podId: pod.id,
786
- rigRoot,
787
- cwdOverride: opts?.cwdOverride,
788
- });
789
- createdNodeId = node.id;
790
- createdEvent = event;
791
- // Seam B Guard-F1: add_member runs under the CURRENT operation's root, which may
792
- // differ from the ORIGINAL declaring RigSpec dir. A member OVERRIDE resolves against
793
- // this operation's root (it is declared HERE); an INHERITED rig policy must reuse the
794
- // PERSISTED rig attachment (original declaring root) — never re-resolve the raw rig
795
- // ref against an unrelated root. STRICT persistence (load-bearing).
796
- if (member.permissionPolicy) {
797
- const memberAttachment = resolvePermissionPolicyAttachment(member.permissionPolicy, rigRoot, {
798
- readFile: (p) => this.deps.fsOps.readFile(p),
799
- });
800
- this.persistNodePolicyProvenanceStrict(node.id, memberAttachment);
801
- }
802
- else {
803
- const rigProv = this.deps.rigRepo.getRigPolicyProvenance(rigId);
804
- if (rigProv) {
805
- this.deps.rigRepo.setNodePolicyProvenance(node.id, {
806
- origin: rigProv.origin,
807
- resolvedTarget: rigProv.resolvedTarget,
808
- declaringDir: rigProv.declaringDir,
809
- launchPosture: rigProv.launchPosture,
810
- });
811
- }
812
- }
813
- if (resolvedEdges.length > 0) {
814
- const logicalIdToNodeId = new Map(rig.nodes.map((n) => [n.logicalId, n.id]));
815
- logicalIdToNodeId.set(qualifiedId, node.id);
816
- for (const edge of resolvedEdges) {
817
- this.deps.rigRepo.addEdge(rigId, logicalIdToNodeId.get(edge.from), logicalIdToNodeId.get(edge.to), edge.kind);
818
- }
819
- }
820
- });
821
- tx();
822
- if (createdEvent)
823
- this.deps.eventBus.notifySubscribers(createdEvent);
824
- // 9. launch-binding for the one new node (startup projection + delivery +
825
- // readiness + `@rigged_*`). The minimal spec supplies the member/pod/rig
826
- // context launchBinding needs; the derived session name is
827
- // `${podNamespace}-${member.id}@${rig.name}` — queue-addressable immediately.
828
- const launched = await this.launchBinding({
829
- rigId,
830
- rigSpec,
831
- rigRoot,
832
- pod: rigSpec.pods[0],
833
- member,
834
- qualifiedId,
835
- nodeId: createdNodeId,
784
+ // 8. Feed the already-validated member and edges to the ONE creation
785
+ // effect. Pod-local edges may name existing pod-mates, so they are checked
786
+ // above against the live topology, then attached after schema validation.
787
+ rigSpec.pods[0].edges = declaredEdges;
788
+ const materialized = await this.materializeValidatedSpec(rigSpec, rigRoot, preflight.warnings, {
789
+ targetRigId: rigId,
790
+ suppressSummaryEvent: true,
836
791
  cwdOverride: opts?.cwdOverride,
792
+ existingPodNamespace: podNamespace,
837
793
  });
794
+ if (!materialized.ok) {
795
+ const message = "message" in materialized
796
+ ? materialized.message
797
+ : "errors" in materialized
798
+ ? materialized.errors.join("; ")
799
+ : "member materialization failed";
800
+ if (materialized.code === "materialize_conflict") {
801
+ return { ok: false, code: "member_conflict", message };
802
+ }
803
+ return { ok: false, code: "materialize_error", message };
804
+ }
805
+ // 9. The shared launch effect owns startup projection + delivery +
806
+ // readiness + `@rigged_*` for both expansion and ordinary growth.
807
+ const launchOutcome = await this.launchValidatedSpec(rigSpec, rigRoot, rigId, opts?.cwdOverride);
808
+ if (!launchOutcome.ok) {
809
+ const message = "message" in launchOutcome
810
+ ? launchOutcome.message
811
+ : "errors" in launchOutcome
812
+ ? launchOutcome.errors.join("; ")
813
+ : "member launch failed";
814
+ return { ok: false, code: "materialize_error", message };
815
+ }
816
+ const launched = launchOutcome.result.nodes.find((node) => node.logicalId === qualifiedId);
817
+ if (!launched) {
818
+ return { ok: false, code: "materialize_error", message: `No launch outcome returned for member "${qualifiedId}".` };
819
+ }
838
820
  return {
839
821
  ok: true,
840
822
  result: {
@@ -842,13 +824,13 @@ export class PodRigInstantiator {
842
824
  podNamespace,
843
825
  node: {
844
826
  logicalId: qualifiedId,
845
- nodeId: createdNodeId,
827
+ nodeId: launched.nodeId,
846
828
  status: launched.status,
847
829
  error: launched.error,
848
830
  sessionName: launched.sessionName,
849
831
  },
850
832
  edges: resolvedEdges,
851
- warnings: [...preflight.warnings, ...(launched.warnings ?? [])],
833
+ warnings: [...(materialized.result.warnings ?? []), ...(launchOutcome.result.warnings ?? [])],
852
834
  },
853
835
  };
854
836
  }
@@ -942,6 +924,7 @@ export class PodRigInstantiator {
942
924
  const defaults = installTopologyDefaults({
943
925
  specDir: rigRoot,
944
926
  rigName: rigSpec.name,
927
+ podIds: rigSpec.pods.map((pod) => pod.id),
945
928
  topologyRoot: this.deps.topologyRootResolver(),
946
929
  });
947
930
  for (const f of defaults.failed) {
@@ -1043,6 +1026,7 @@ export class PodRigInstantiator {
1043
1026
  // site (see the role wire note above) — same member-ref persistence as
1044
1027
  // createMemberNode or `rig up <spec>` seats lose their policy ref.
1045
1028
  permissionPolicy: member.permissionPolicy,
1029
+ sessionSource: member.sessionSource,
1046
1030
  cwd: configResult.config.cwd,
1047
1031
  restorePolicy: configResult.config.restorePolicy,
1048
1032
  podId,
@@ -1345,6 +1329,7 @@ export class PodRigInstantiator {
1345
1329
  // OPR.0.4.8.3 Seam B: the member's OWN raw ref persists on the node (like role);
1346
1330
  // rig-level lives on the rig row; precedence applies at RESOLUTION, not storage.
1347
1331
  permissionPolicy: input.member.permissionPolicy,
1332
+ sessionSource: input.member.sessionSource,
1348
1333
  cwd: effectiveCwd,
1349
1334
  restorePolicy: input.member.restorePolicy,
1350
1335
  podId: input.podId,
@@ -1 +1 @@
1
- {"version":3,"file":"rigspec-instantiator.js","sourceRoot":"","sources":["../../src/domain/rigspec-instantiator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"rigspec-instantiator.js","sourceRoot":"","sources":["../../src/domain/rigspec-instantiator.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { LegacyRigSpec, RigSpec, ValidationResult } from "./types.js";
1
+ import type { LegacyRigSpec, RigSpec, ValidationResult, WorkspaceSpec } from "./types.js";
2
2
  export declare const VALID_EDGE_KINDS: Set<string>;
3
3
  /** SPEC-VALIDATION CAPABILITY REGISTRY (B8-family, r2-ruled expiry coupling). Behavioral sentinel,
4
4
  * not a filename: a validation feature that other code must react to REGISTERS itself here, and
@@ -25,6 +25,10 @@ export declare class RigSpecSchema {
25
25
  * @returns normalized RigSpec
26
26
  */
27
27
  static normalize(raw: Record<string, unknown>): RigSpec;
28
+ /** Validate only a RigSpec workspace block through the canonical schema. */
29
+ static validateWorkspace(raw: unknown): ValidationResult;
30
+ /** Normalize only a validated RigSpec workspace block. */
31
+ static normalizeWorkspace(raw: unknown): WorkspaceSpec | undefined;
28
32
  }
29
33
  export declare class LegacyRigSpecSchema {
30
34
  static validate(raw: unknown): ValidationResult;
@@ -1 +1 @@
1
- {"version":3,"file":"rigspec-schema.d.ts","sourceRoot":"","sources":["../../src/domain/rigspec-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EAGb,OAAO,EAMP,gBAAgB,EAGjB,MAAM,YAAY,CAAC;AAepB,eAAO,MAAM,gBAAgB,aAA8F,CAAC;AAE5H;;;;;yFAKyF;AACzF,eAAO,MAAM,4BAA4B,EAAE,WAAW,CAAC,MAAM,CAA2C,CAAC;AASzG;;GAEG;AACH,qBAAa,aAAa;IACxB;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE;QAAE,oBAAoB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;KAAE,GAAG,gBAAgB;IAmHnG;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO;CA4BxD;AAg5BD,qBAAa,mBAAmB;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB;IA2F/C,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,aAAa;CAoC9C"}
1
+ {"version":3,"file":"rigspec-schema.d.ts","sourceRoot":"","sources":["../../src/domain/rigspec-schema.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,aAAa,EAGb,OAAO,EAMP,gBAAgB,EAChB,aAAa,EAEd,MAAM,YAAY,CAAC;AAepB,eAAO,MAAM,gBAAgB,aAA8F,CAAC;AAE5H;;;;;yFAKyF;AACzF,eAAO,MAAM,4BAA4B,EAAE,WAAW,CAAC,MAAM,CAA2C,CAAC;AAuCzG;;GAEG;AACH,qBAAa,aAAa;IACxB;;;;OAIG;IACH,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,EAAE;QAAE,oBAAoB,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAA;KAAE,GAAG,gBAAgB;IAoHnG;;;;OAIG;IACH,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO;IA6BvD,4EAA4E;IAC5E,MAAM,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB;IAKxD,0DAA0D;IAC1D,MAAM,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,aAAa,GAAG,SAAS;CAGnE;AAo5BD,qBAAa,mBAAmB;IAC9B,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB;IA2F/C,MAAM,CAAC,SAAS,CAAC,GAAG,EAAE,OAAO,GAAG,aAAa;CAoC9C"}