@openrig/cli 0.4.6 → 0.4.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 (472) 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/applying-a-permission-policy/SKILL.md +120 -0
  5. package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/SKILL.md +9 -6
  6. package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/scripts/precompact-hook.mjs +11 -72
  7. package/daemon/assets/plugins/openrig-core/skills/claude-compaction-restore/scripts/restore-from-jsonl.mjs +0 -0
  8. package/daemon/assets/plugins/openrig-core/skills/delegating-work/SKILL.md +43 -0
  9. package/daemon/assets/plugins/openrig-core/skills/forming-an-openrig-mental-model/SKILL.md +36 -22
  10. package/daemon/assets/plugins/openrig-core/skills/messaging-the-human/SKILL.md +108 -0
  11. package/daemon/assets/plugins/openrig-core/skills/mission-slice-sop/SKILL.md +7 -13
  12. package/daemon/assets/plugins/openrig-core/skills/openrig-skills/SKILL.md +88 -0
  13. package/daemon/assets/plugins/openrig-core/skills/openrig-user/SKILL.md +189 -105
  14. package/daemon/assets/plugins/openrig-core/skills/queue-handoff/SKILL.md +26 -9
  15. package/daemon/assets/plugins/openrig-core/skills/seat-continuity-and-handover/SKILL.md +11 -9
  16. package/daemon/assets/plugins/openrig-core/skills/session-compaction-and-restore/SKILL.md +162 -0
  17. package/daemon/assets/plugins/openrig-core/skills/software-for-agents/SKILL.md +165 -0
  18. package/daemon/dist/adapters/claude-code-adapter.d.ts +0 -9
  19. package/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
  20. package/daemon/dist/adapters/claude-code-adapter.js +13 -46
  21. package/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
  22. package/daemon/dist/adapters/claude-resume.d.ts +1 -1
  23. package/daemon/dist/adapters/claude-resume.d.ts.map +1 -1
  24. package/daemon/dist/adapters/claude-resume.js +8 -2
  25. package/daemon/dist/adapters/claude-resume.js.map +1 -1
  26. package/daemon/dist/adapters/cmux-transport.d.ts.map +1 -1
  27. package/daemon/dist/adapters/cmux-transport.js +8 -1
  28. package/daemon/dist/adapters/cmux-transport.js.map +1 -1
  29. package/daemon/dist/adapters/cmux.d.ts +9 -0
  30. package/daemon/dist/adapters/cmux.d.ts.map +1 -1
  31. package/daemon/dist/adapters/cmux.js +21 -0
  32. package/daemon/dist/adapters/cmux.js.map +1 -1
  33. package/daemon/dist/adapters/codex-resume.d.ts +1 -1
  34. package/daemon/dist/adapters/codex-resume.d.ts.map +1 -1
  35. package/daemon/dist/adapters/codex-resume.js +4 -2
  36. package/daemon/dist/adapters/codex-resume.js.map +1 -1
  37. package/daemon/dist/adapters/codex-runtime-adapter.d.ts +3 -0
  38. package/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
  39. package/daemon/dist/adapters/codex-runtime-adapter.js +30 -9
  40. package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
  41. package/daemon/dist/adapters/pi-resume.d.ts +1 -1
  42. package/daemon/dist/adapters/pi-resume.d.ts.map +1 -1
  43. package/daemon/dist/adapters/pi-resume.js +7 -2
  44. package/daemon/dist/adapters/pi-resume.js.map +1 -1
  45. package/daemon/dist/adapters/pi-runtime-adapter.d.ts.map +1 -1
  46. package/daemon/dist/adapters/pi-runtime-adapter.js +4 -1
  47. package/daemon/dist/adapters/pi-runtime-adapter.js.map +1 -1
  48. package/daemon/dist/adapters/yolo-mode.d.ts +23 -0
  49. package/daemon/dist/adapters/yolo-mode.d.ts.map +1 -0
  50. package/daemon/dist/adapters/yolo-mode.js +49 -0
  51. package/daemon/dist/adapters/yolo-mode.js.map +1 -0
  52. package/daemon/dist/build-info.js +3 -3
  53. package/daemon/dist/db/migrations/055_node_permission_policy.d.ts +13 -0
  54. package/daemon/dist/db/migrations/055_node_permission_policy.d.ts.map +1 -0
  55. package/daemon/dist/db/migrations/055_node_permission_policy.js +17 -0
  56. package/daemon/dist/db/migrations/055_node_permission_policy.js.map +1 -0
  57. package/daemon/dist/db/migrations/056_rig_permission_policy.d.ts +13 -0
  58. package/daemon/dist/db/migrations/056_rig_permission_policy.d.ts.map +1 -0
  59. package/daemon/dist/db/migrations/056_rig_permission_policy.js +17 -0
  60. package/daemon/dist/db/migrations/056_rig_permission_policy.js.map +1 -0
  61. package/daemon/dist/db/migrations/057_node_policy_provenance.d.ts +19 -0
  62. package/daemon/dist/db/migrations/057_node_policy_provenance.d.ts.map +1 -0
  63. package/daemon/dist/db/migrations/057_node_policy_provenance.js +26 -0
  64. package/daemon/dist/db/migrations/057_node_policy_provenance.js.map +1 -0
  65. package/daemon/dist/db/migrations/058_rig_policy_provenance.d.ts +15 -0
  66. package/daemon/dist/db/migrations/058_rig_policy_provenance.d.ts.map +1 -0
  67. package/daemon/dist/db/migrations/058_rig_policy_provenance.js +22 -0
  68. package/daemon/dist/db/migrations/058_rig_policy_provenance.js.map +1 -0
  69. package/daemon/dist/domain/builtin-policy-reference.d.ts +13 -0
  70. package/daemon/dist/domain/builtin-policy-reference.d.ts.map +1 -0
  71. package/daemon/dist/domain/builtin-policy-reference.js +58 -0
  72. package/daemon/dist/domain/builtin-policy-reference.js.map +1 -0
  73. package/daemon/dist/domain/claude-compaction-enforcer.d.ts +3 -0
  74. package/daemon/dist/domain/claude-compaction-enforcer.d.ts.map +1 -1
  75. package/daemon/dist/domain/claude-compaction-enforcer.js +19 -3
  76. package/daemon/dist/domain/claude-compaction-enforcer.js.map +1 -1
  77. package/daemon/dist/domain/cmux-layout-service.d.ts +36 -0
  78. package/daemon/dist/domain/cmux-layout-service.d.ts.map +1 -1
  79. package/daemon/dist/domain/cmux-layout-service.js +100 -28
  80. package/daemon/dist/domain/cmux-layout-service.js.map +1 -1
  81. package/daemon/dist/domain/context-monitor.d.ts +2 -0
  82. package/daemon/dist/domain/context-monitor.d.ts.map +1 -1
  83. package/daemon/dist/domain/context-monitor.js +14 -0
  84. package/daemon/dist/domain/context-monitor.js.map +1 -1
  85. package/daemon/dist/domain/feed/attention-aggregator.js +1 -1
  86. package/daemon/dist/domain/feed/attention-aggregator.js.map +1 -1
  87. package/daemon/dist/domain/hosts/hosts-registry-reader.d.ts.map +1 -1
  88. package/daemon/dist/domain/hosts/hosts-registry-reader.js +12 -10
  89. package/daemon/dist/domain/hosts/hosts-registry-reader.js.map +1 -1
  90. package/daemon/dist/domain/hosts/hosts-registry-writer.d.ts.map +1 -1
  91. package/daemon/dist/domain/hosts/hosts-registry-writer.js +3 -2
  92. package/daemon/dist/domain/hosts/hosts-registry-writer.js.map +1 -1
  93. package/daemon/dist/domain/hosts/read-through.js +1 -1
  94. package/daemon/dist/domain/hosts/read-through.js.map +1 -1
  95. package/daemon/dist/domain/hosts/remote-daemon-http.d.ts.map +1 -1
  96. package/daemon/dist/domain/hosts/remote-daemon-http.js +8 -5
  97. package/daemon/dist/domain/hosts/remote-daemon-http.js.map +1 -1
  98. package/daemon/dist/domain/native-resume-probe.d.ts +1 -1
  99. package/daemon/dist/domain/native-resume-probe.d.ts.map +1 -1
  100. package/daemon/dist/domain/native-resume-probe.js +11 -4
  101. package/daemon/dist/domain/native-resume-probe.js.map +1 -1
  102. package/daemon/dist/domain/node-inventory.d.ts +3 -12
  103. package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
  104. package/daemon/dist/domain/node-inventory.js +57 -15
  105. package/daemon/dist/domain/node-inventory.js.map +1 -1
  106. package/daemon/dist/domain/permission-policy/policy-ref.d.ts +89 -0
  107. package/daemon/dist/domain/permission-policy/policy-ref.d.ts.map +1 -0
  108. package/daemon/dist/domain/permission-policy/policy-ref.js +171 -0
  109. package/daemon/dist/domain/permission-policy/policy-ref.js.map +1 -0
  110. package/daemon/dist/domain/permission-policy/policy-spec.d.ts +34 -0
  111. package/daemon/dist/domain/permission-policy/policy-spec.d.ts.map +1 -0
  112. package/daemon/dist/domain/permission-policy/policy-spec.js +106 -0
  113. package/daemon/dist/domain/permission-policy/policy-spec.js.map +1 -0
  114. package/daemon/dist/domain/plugin-vendor-service.d.ts +2 -0
  115. package/daemon/dist/domain/plugin-vendor-service.d.ts.map +1 -1
  116. package/daemon/dist/domain/plugin-vendor-service.js +23 -0
  117. package/daemon/dist/domain/plugin-vendor-service.js.map +1 -1
  118. package/daemon/dist/domain/projection-lane.d.ts +7 -0
  119. package/daemon/dist/domain/projection-lane.d.ts.map +1 -0
  120. package/daemon/dist/domain/projection-lane.js +28 -0
  121. package/daemon/dist/domain/projection-lane.js.map +1 -0
  122. package/daemon/dist/domain/ps-projection.d.ts +19 -0
  123. package/daemon/dist/domain/ps-projection.d.ts.map +1 -1
  124. package/daemon/dist/domain/ps-projection.js +46 -6
  125. package/daemon/dist/domain/ps-projection.js.map +1 -1
  126. package/daemon/dist/domain/queue-repository.d.ts +14 -10
  127. package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
  128. package/daemon/dist/domain/queue-repository.js +33 -12
  129. package/daemon/dist/domain/queue-repository.js.map +1 -1
  130. package/daemon/dist/domain/restore-orchestrator.d.ts +14 -0
  131. package/daemon/dist/domain/restore-orchestrator.d.ts.map +1 -1
  132. package/daemon/dist/domain/restore-orchestrator.js +90 -6
  133. package/daemon/dist/domain/restore-orchestrator.js.map +1 -1
  134. package/daemon/dist/domain/review/compose.d.ts +77 -4
  135. package/daemon/dist/domain/review/compose.d.ts.map +1 -1
  136. package/daemon/dist/domain/review/compose.js +152 -16
  137. package/daemon/dist/domain/review/compose.js.map +1 -1
  138. package/daemon/dist/domain/review/fleet-compose.js +1 -1
  139. package/daemon/dist/domain/review/fleet-compose.js.map +1 -1
  140. package/daemon/dist/domain/review/gather.d.ts +1 -1
  141. package/daemon/dist/domain/review/gather.d.ts.map +1 -1
  142. package/daemon/dist/domain/review/gather.js +92 -67
  143. package/daemon/dist/domain/review/gather.js.map +1 -1
  144. package/daemon/dist/domain/review/proof-io.d.ts +2 -0
  145. package/daemon/dist/domain/review/proof-io.d.ts.map +1 -0
  146. package/daemon/dist/domain/review/proof-io.js +38 -0
  147. package/daemon/dist/domain/review/proof-io.js.map +1 -0
  148. package/daemon/dist/domain/rig-expansion-service.d.ts.map +1 -1
  149. package/daemon/dist/domain/rig-expansion-service.js +10 -1
  150. package/daemon/dist/domain/rig-expansion-service.js.map +1 -1
  151. package/daemon/dist/domain/rig-repository.d.ts +45 -0
  152. package/daemon/dist/domain/rig-repository.d.ts.map +1 -1
  153. package/daemon/dist/domain/rig-repository.js +75 -1
  154. package/daemon/dist/domain/rig-repository.js.map +1 -1
  155. package/daemon/dist/domain/rigspec-codec.d.ts.map +1 -1
  156. package/daemon/dist/domain/rigspec-codec.js +6 -0
  157. package/daemon/dist/domain/rigspec-codec.js.map +1 -1
  158. package/daemon/dist/domain/rigspec-exporter.d.ts.map +1 -1
  159. package/daemon/dist/domain/rigspec-exporter.js +8 -0
  160. package/daemon/dist/domain/rigspec-exporter.js.map +1 -1
  161. package/daemon/dist/domain/rigspec-instantiator.d.ts +18 -1
  162. package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
  163. package/daemon/dist/domain/rigspec-instantiator.js +202 -10
  164. package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
  165. package/daemon/dist/domain/rigspec-preflight.d.ts +11 -0
  166. package/daemon/dist/domain/rigspec-preflight.d.ts.map +1 -1
  167. package/daemon/dist/domain/rigspec-preflight.js +35 -1
  168. package/daemon/dist/domain/rigspec-preflight.js.map +1 -1
  169. package/daemon/dist/domain/rigspec-schema.d.ts.map +1 -1
  170. package/daemon/dist/domain/rigspec-schema.js +25 -0
  171. package/daemon/dist/domain/rigspec-schema.js.map +1 -1
  172. package/daemon/dist/domain/runtime-adapter.d.ts +5 -0
  173. package/daemon/dist/domain/runtime-adapter.d.ts.map +1 -1
  174. package/daemon/dist/domain/runtime-adapter.js.map +1 -1
  175. package/daemon/dist/domain/scope/plan-lock-artifacts.d.ts +8 -0
  176. package/daemon/dist/domain/scope/plan-lock-artifacts.d.ts.map +1 -0
  177. package/daemon/dist/domain/scope/plan-lock-artifacts.js +57 -0
  178. package/daemon/dist/domain/scope/plan-lock-artifacts.js.map +1 -0
  179. package/daemon/dist/domain/scope/scaffold-placeholder.d.ts +38 -0
  180. package/daemon/dist/domain/scope/scaffold-placeholder.d.ts.map +1 -0
  181. package/daemon/dist/domain/scope/scaffold-placeholder.js +98 -0
  182. package/daemon/dist/domain/scope/scaffold-placeholder.js.map +1 -0
  183. package/daemon/dist/domain/scope/scope-approve.d.ts.map +1 -1
  184. package/daemon/dist/domain/scope/scope-approve.js +22 -1
  185. package/daemon/dist/domain/scope/scope-approve.js.map +1 -1
  186. package/daemon/dist/domain/scope/scope-audit.d.ts.map +1 -1
  187. package/daemon/dist/domain/scope/scope-audit.js +57 -20
  188. package/daemon/dist/domain/scope/scope-audit.js.map +1 -1
  189. package/daemon/dist/domain/seat-handover-service.d.ts.map +1 -1
  190. package/daemon/dist/domain/seat-handover-service.js +7 -1
  191. package/daemon/dist/domain/seat-handover-service.js.map +1 -1
  192. package/daemon/dist/domain/session-transport.d.ts +17 -0
  193. package/daemon/dist/domain/session-transport.d.ts.map +1 -1
  194. package/daemon/dist/domain/session-transport.js +44 -0
  195. package/daemon/dist/domain/session-transport.js.map +1 -1
  196. package/daemon/dist/domain/slices/qitem-membership.d.ts +17 -0
  197. package/daemon/dist/domain/slices/qitem-membership.d.ts.map +1 -0
  198. package/daemon/dist/domain/slices/qitem-membership.js +60 -0
  199. package/daemon/dist/domain/slices/qitem-membership.js.map +1 -0
  200. package/daemon/dist/domain/slices/slice-detail-projector.d.ts +5 -0
  201. package/daemon/dist/domain/slices/slice-detail-projector.d.ts.map +1 -1
  202. package/daemon/dist/domain/slices/slice-detail-projector.js +157 -11
  203. package/daemon/dist/domain/slices/slice-detail-projector.js.map +1 -1
  204. package/daemon/dist/domain/slices/slice-indexer.d.ts +86 -0
  205. package/daemon/dist/domain/slices/slice-indexer.d.ts.map +1 -1
  206. package/daemon/dist/domain/slices/slice-indexer.js +422 -45
  207. package/daemon/dist/domain/slices/slice-indexer.js.map +1 -1
  208. package/daemon/dist/domain/startup-orchestrator.d.ts +9 -0
  209. package/daemon/dist/domain/startup-orchestrator.d.ts.map +1 -1
  210. package/daemon/dist/domain/startup-orchestrator.js +71 -3
  211. package/daemon/dist/domain/startup-orchestrator.js.map +1 -1
  212. package/daemon/dist/domain/successor-session-launcher.d.ts +4 -0
  213. package/daemon/dist/domain/successor-session-launcher.d.ts.map +1 -1
  214. package/daemon/dist/domain/successor-session-launcher.js +2 -0
  215. package/daemon/dist/domain/successor-session-launcher.js.map +1 -1
  216. package/daemon/dist/domain/terminal/cmux-provider-adapter.d.ts +12 -11
  217. package/daemon/dist/domain/terminal/cmux-provider-adapter.d.ts.map +1 -1
  218. package/daemon/dist/domain/terminal/cmux-provider-adapter.js +61 -28
  219. package/daemon/dist/domain/terminal/cmux-provider-adapter.js.map +1 -1
  220. package/daemon/dist/domain/terminal/herdr-adapter.d.ts +27 -10
  221. package/daemon/dist/domain/terminal/herdr-adapter.d.ts.map +1 -1
  222. package/daemon/dist/domain/terminal/herdr-adapter.js +74 -33
  223. package/daemon/dist/domain/terminal/herdr-adapter.js.map +1 -1
  224. package/daemon/dist/domain/transcript-capture.d.ts +3 -0
  225. package/daemon/dist/domain/transcript-capture.d.ts.map +1 -1
  226. package/daemon/dist/domain/transcript-capture.js +28 -0
  227. package/daemon/dist/domain/transcript-capture.js.map +1 -1
  228. package/daemon/dist/domain/transcript-store.d.ts +10 -0
  229. package/daemon/dist/domain/transcript-store.d.ts.map +1 -1
  230. package/daemon/dist/domain/transcript-store.js +26 -0
  231. package/daemon/dist/domain/transcript-store.js.map +1 -1
  232. package/daemon/dist/domain/types.d.ts +21 -0
  233. package/daemon/dist/domain/types.d.ts.map +1 -1
  234. package/daemon/dist/domain/types.js.map +1 -1
  235. package/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts.map +1 -1
  236. package/daemon/dist/domain/workspace/default-workspace-scaffold.js +9 -4
  237. package/daemon/dist/domain/workspace/default-workspace-scaffold.js.map +1 -1
  238. package/daemon/dist/domain/workspace/workspace-doctor.js +1 -1
  239. package/daemon/dist/domain/workspace/workspace-doctor.js.map +1 -1
  240. package/daemon/dist/routes/agent-images.d.ts.map +1 -1
  241. package/daemon/dist/routes/agent-images.js +2 -0
  242. package/daemon/dist/routes/agent-images.js.map +1 -1
  243. package/daemon/dist/routes/mission-control.js +1 -1
  244. package/daemon/dist/routes/mission-control.js.map +1 -1
  245. package/daemon/dist/routes/missions.d.ts +7 -0
  246. package/daemon/dist/routes/missions.d.ts.map +1 -1
  247. package/daemon/dist/routes/missions.js +6 -1
  248. package/daemon/dist/routes/missions.js.map +1 -1
  249. package/daemon/dist/routes/ps.d.ts.map +1 -1
  250. package/daemon/dist/routes/ps.js +5 -1
  251. package/daemon/dist/routes/ps.js.map +1 -1
  252. package/daemon/dist/routes/queue.d.ts.map +1 -1
  253. package/daemon/dist/routes/queue.js +9 -2
  254. package/daemon/dist/routes/queue.js.map +1 -1
  255. package/daemon/dist/routes/rigs.d.ts.map +1 -1
  256. package/daemon/dist/routes/rigs.js +29 -10
  257. package/daemon/dist/routes/rigs.js.map +1 -1
  258. package/daemon/dist/routes/scope-audit.d.ts.map +1 -1
  259. package/daemon/dist/routes/scope-audit.js +141 -135
  260. package/daemon/dist/routes/scope-audit.js.map +1 -1
  261. package/daemon/dist/routes/sessions.js +2 -1
  262. package/daemon/dist/routes/sessions.js.map +1 -1
  263. package/daemon/dist/routes/slices.d.ts.map +1 -1
  264. package/daemon/dist/routes/slices.js +48 -38
  265. package/daemon/dist/routes/slices.js.map +1 -1
  266. package/daemon/dist/routes/transcripts.d.ts.map +1 -1
  267. package/daemon/dist/routes/transcripts.js +62 -33
  268. package/daemon/dist/routes/transcripts.js.map +1 -1
  269. package/daemon/dist/startup.d.ts.map +1 -1
  270. package/daemon/dist/startup.js +42 -12
  271. package/daemon/dist/startup.js.map +1 -1
  272. package/daemon/docs/reference/agent-startup-guide.md +1 -0
  273. package/daemon/docs/reference/rig-spec.md +19 -0
  274. package/daemon/policies/builtin/locked.policy.md +24 -0
  275. package/daemon/policies/builtin/open.policy.md +24 -0
  276. package/daemon/policies/builtin/standard.policy.md +25 -0
  277. package/daemon/policies/builtin/yolo.policy.md +20 -0
  278. package/daemon/policies/examples/my-cautious-dev.policy.md +40 -0
  279. package/daemon/specs/agents/apps/vault-specialist/agent.yaml +2 -1
  280. package/daemon/specs/agents/conveyor/builder/agent.yaml +2 -1
  281. package/daemon/specs/agents/conveyor/lead/agent.yaml +2 -1
  282. package/daemon/specs/agents/conveyor/planner/agent.yaml +2 -1
  283. package/daemon/specs/agents/conveyor/reviewer/agent.yaml +2 -1
  284. package/daemon/specs/agents/design/product-designer/agent.yaml +12 -2
  285. package/daemon/specs/agents/development/implementer/agent.yaml +12 -2
  286. package/daemon/specs/agents/development/qa/agent.yaml +12 -2
  287. package/daemon/specs/agents/development/qa/guidance/role.md +1 -0
  288. package/daemon/specs/agents/factory-rsi/dogfood/agent.yaml +2 -1
  289. package/daemon/specs/agents/factory-rsi/release-manager/agent.yaml +2 -1
  290. package/daemon/specs/agents/orchestration/orchestrator/agent.yaml +12 -2
  291. package/daemon/specs/agents/product-management/pm/agent.yaml +1 -2
  292. package/daemon/specs/agents/research/analyst/agent.yaml +2 -1
  293. package/daemon/specs/agents/research/synthesizer/agent.yaml +2 -1
  294. package/daemon/specs/agents/review/independent-reviewer/agent.yaml +12 -2
  295. package/daemon/specs/agents/shared/agent.yaml +5 -8
  296. package/daemon/specs/agents/shared/runtime/claude-settings.fragment.json +1 -8
  297. package/daemon/specs/agents/shared/skills/core/agent-starters/SKILL.md +132 -0
  298. package/daemon/{assets/plugins/openrig-core/skills → specs/agents/shared/skills/core}/agent-startup-and-context-ingestion/SKILL.md +27 -19
  299. package/daemon/specs/agents/shared/skills/core/attention-queue/SKILL.md +264 -0
  300. package/daemon/specs/agents/shared/skills/core/cross-host-rig-commands/SKILL.md +190 -0
  301. package/daemon/specs/agents/shared/skills/core/human-in-the-loop/SKILL.md +104 -0
  302. package/daemon/specs/agents/shared/skills/core/openrig-architect/SKILL.md +23 -8
  303. package/daemon/specs/agents/shared/skills/core/openrig-cmux/SKILL.md +0 -5
  304. package/daemon/specs/agents/shared/skills/core/openrig-herdr/SKILL.md +1 -6
  305. package/daemon/specs/agents/shared/skills/core/openrig-upgrade/SKILL.md +460 -0
  306. package/daemon/specs/agents/shared/skills/core/rig-bundles-and-shareable-artifacts/SKILL.md +101 -0
  307. package/daemon/specs/agents/shared/skills/core/rig-lifecycle/SKILL.md +22 -11
  308. package/daemon/specs/agents/shared/skills/core/session-source-fork/SKILL.md +160 -0
  309. package/daemon/specs/agents/shared/skills/core/specification-system/SKILL.md +103 -0
  310. package/daemon/specs/agents/shared/skills/core/topology-mutation-and-seat-management/SKILL.md +118 -0
  311. package/daemon/specs/agents/shared/skills/core/watchdog/SKILL.md +125 -0
  312. package/daemon/specs/agents/shared/skills/process/brainstorming/OPENRIG.md +3 -3
  313. package/daemon/specs/agents/shared/skills/process/executing-plans/OPENRIG.md +1 -1
  314. package/daemon/specs/agents/shared/skills/process/frontend-design/SKILL.md +6 -3
  315. package/daemon/specs/agents/shared/skills/process/systematic-debugging/find-polluter.sh +0 -0
  316. package/daemon/specs/agents/shared/skills/process/test-driven-development/SKILL.md +1 -1
  317. package/daemon/specs/agents/shared/skills/process/using-superpowers/OPENRIG.md +1 -1
  318. package/daemon/specs/agents/shared/skills/process/verification-before-completion/SKILL.md +13 -2
  319. package/daemon/specs/agents/shared/skills/process/writing-plans/OPENRIG.md +1 -1
  320. package/daemon/specs/rigs/focused/pm-team/CULTURE.md +1 -1
  321. package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/agent.yaml +2 -2
  322. package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/guidance/role.md +5 -4
  323. package/daemon/specs/rigs/launch/kernel/agents/operator/agent/agent.yaml +2 -2
  324. package/daemon/specs/rigs/launch/kernel/agents/operator/agent/guidance/role.md +3 -5
  325. package/daemon/specs/rigs/launch/kernel/agents/queue/worker/agent.yaml +2 -2
  326. package/daemon/specs/rigs/launch/kernel/culture/CULTURE.md +3 -4
  327. package/daemon/specs/rigs/preview/product-team/CULTURE.md +1 -1
  328. package/dist/bin-wrapper.d.ts.map +1 -1
  329. package/dist/bin-wrapper.js +3 -1
  330. package/dist/bin-wrapper.js.map +1 -1
  331. package/dist/build-info.js +3 -3
  332. package/dist/cli-error.d.ts +33 -0
  333. package/dist/cli-error.d.ts.map +1 -0
  334. package/dist/cli-error.js +94 -0
  335. package/dist/cli-error.js.map +1 -0
  336. package/dist/commands/config-init-workspace.js +1 -1
  337. package/dist/commands/doctor.d.ts +1 -1
  338. package/dist/commands/doctor.d.ts.map +1 -1
  339. package/dist/commands/doctor.js +17 -11
  340. package/dist/commands/doctor.js.map +1 -1
  341. package/dist/commands/host.d.ts.map +1 -1
  342. package/dist/commands/host.js +24 -10
  343. package/dist/commands/host.js.map +1 -1
  344. package/dist/commands/proof.js +1 -1
  345. package/dist/commands/proof.js.map +1 -1
  346. package/dist/commands/ps.d.ts.map +1 -1
  347. package/dist/commands/ps.js +16 -2
  348. package/dist/commands/ps.js.map +1 -1
  349. package/dist/commands/queue.d.ts.map +1 -1
  350. package/dist/commands/queue.js +103 -24
  351. package/dist/commands/queue.js.map +1 -1
  352. package/dist/commands/rig.d.ts.map +1 -1
  353. package/dist/commands/rig.js +122 -0
  354. package/dist/commands/rig.js.map +1 -1
  355. package/dist/commands/scope.js +2 -2
  356. package/dist/commands/scope.js.map +1 -1
  357. package/dist/commands/send.d.ts.map +1 -1
  358. package/dist/commands/send.js +118 -24
  359. package/dist/commands/send.js.map +1 -1
  360. package/dist/commands/setup.d.ts +14 -0
  361. package/dist/commands/setup.d.ts.map +1 -1
  362. package/dist/commands/setup.js +131 -8
  363. package/dist/commands/setup.js.map +1 -1
  364. package/dist/commands/slack.d.ts +37 -0
  365. package/dist/commands/slack.d.ts.map +1 -0
  366. package/dist/commands/slack.js +274 -0
  367. package/dist/commands/slack.js.map +1 -0
  368. package/dist/commands/ui.d.ts +1 -0
  369. package/dist/commands/ui.d.ts.map +1 -1
  370. package/dist/commands/ui.js +2 -0
  371. package/dist/commands/ui.js.map +1 -1
  372. package/dist/commands/up.js +1 -1
  373. package/dist/commands/up.js.map +1 -1
  374. package/dist/commands/whoami.d.ts.map +1 -1
  375. package/dist/commands/whoami.js +3 -3
  376. package/dist/commands/whoami.js.map +1 -1
  377. package/dist/daemon-lifecycle.d.ts.map +1 -1
  378. package/dist/daemon-lifecycle.js +45 -14
  379. package/dist/daemon-lifecycle.js.map +1 -1
  380. package/dist/host-registry.d.ts +6 -1
  381. package/dist/host-registry.d.ts.map +1 -1
  382. package/dist/host-registry.js +15 -6
  383. package/dist/host-registry.js.map +1 -1
  384. package/dist/index.d.ts +3 -0
  385. package/dist/index.d.ts.map +1 -1
  386. package/dist/index.js +6 -1
  387. package/dist/index.js.map +1 -1
  388. package/dist/lib/scope/scaffold-placeholder.d.ts +38 -0
  389. package/dist/lib/scope/scaffold-placeholder.d.ts.map +1 -0
  390. package/dist/lib/scope/scaffold-placeholder.js +98 -0
  391. package/dist/lib/scope/scaffold-placeholder.js.map +1 -0
  392. package/dist/lib/scope/scope-audit.d.ts.map +1 -1
  393. package/dist/lib/scope/scope-audit.js +57 -20
  394. package/dist/lib/scope/scope-audit.js.map +1 -1
  395. package/dist/lib/scope-templates/backlog-deprecation.md +1 -1
  396. package/dist/lib/scope-templates/backlog-tech-debt.md +1 -1
  397. package/dist/lib/scope-templates/bug-fix.md +1 -1
  398. package/dist/lib/scope-templates/implementation-prd.md +1 -1
  399. package/dist/lib/scope-templates/mission-notes.md +7 -2
  400. package/dist/lib/scope-templates/mission-placeholder.md +1 -1
  401. package/dist/lib/scope-templates/mission-progress.md +1 -1
  402. package/dist/lib/scope-templates/mission-release.md +1 -1
  403. package/dist/lib/scope-templates/placeholder.md +1 -1
  404. package/dist/lib/scope-templates/proof.md +1 -1
  405. package/dist/lib/scope-templates/release-feature.md +1 -1
  406. package/dist/lib/scope-templates/research.md +1 -1
  407. package/dist/lib/scope-templates/slice-progress.md +1 -1
  408. package/dist/remote-host-ops.d.ts.map +1 -1
  409. package/dist/remote-host-ops.js +2 -2
  410. package/dist/remote-host-ops.js.map +1 -1
  411. package/dist/slack/config.d.ts +41 -0
  412. package/dist/slack/config.d.ts.map +1 -0
  413. package/dist/slack/config.js +60 -0
  414. package/dist/slack/config.js.map +1 -0
  415. package/dist/slack/inbound.d.ts +75 -0
  416. package/dist/slack/inbound.d.ts.map +1 -0
  417. package/dist/slack/inbound.js +133 -0
  418. package/dist/slack/inbound.js.map +1 -0
  419. package/dist/slack/message.d.ts +26 -0
  420. package/dist/slack/message.d.ts.map +1 -0
  421. package/dist/slack/message.js +60 -0
  422. package/dist/slack/message.js.map +1 -0
  423. package/dist/slack/outbound.d.ts +39 -0
  424. package/dist/slack/outbound.d.ts.map +1 -0
  425. package/dist/slack/outbound.js +52 -0
  426. package/dist/slack/outbound.js.map +1 -0
  427. package/dist/slack/queue-bridge.d.ts +56 -0
  428. package/dist/slack/queue-bridge.d.ts.map +1 -0
  429. package/dist/slack/queue-bridge.js +114 -0
  430. package/dist/slack/queue-bridge.js.map +1 -0
  431. package/dist/slack/secrets.d.ts +21 -0
  432. package/dist/slack/secrets.d.ts.map +1 -0
  433. package/dist/slack/secrets.js +73 -0
  434. package/dist/slack/secrets.js.map +1 -0
  435. package/dist/slack/slack-api.d.ts +49 -0
  436. package/dist/slack/slack-api.d.ts.map +1 -0
  437. package/dist/slack/slack-api.js +110 -0
  438. package/dist/slack/slack-api.js.map +1 -0
  439. package/dist/slack/state-store.d.ts +62 -0
  440. package/dist/slack/state-store.d.ts.map +1 -0
  441. package/dist/slack/state-store.js +132 -0
  442. package/dist/slack/state-store.js.map +1 -0
  443. package/package.json +1 -1
  444. package/ui/dist/assets/{index-zrFqS7gL.js → index-DkNi0RT8.js} +184 -184
  445. package/ui/dist/assets/index-N-SdPj-I.css +32 -0
  446. package/ui/dist/index.html +2 -2
  447. package/daemon/assets/plugins/openrig-core/skills/openrig-architect/SKILL.md +0 -361
  448. package/daemon/assets/plugins/openrig-core/skills/openrig-cmux/SKILL.md +0 -86
  449. package/daemon/assets/plugins/openrig-core/skills/openrig-herdr/SKILL.md +0 -158
  450. package/daemon/assets/plugins/openrig-core/skills/openrig-operator/SKILL.md +0 -222
  451. package/daemon/docs/reference/product-factory-vps-runbook.md +0 -132
  452. package/daemon/specs/agents/shared/skills/core/mission-slice-sop/SKILL.md +0 -113
  453. package/daemon/specs/agents/shared/skills/core/openrig-installer/SKILL.md +0 -142
  454. package/daemon/specs/agents/shared/skills/core/openrig-operator/SKILL.md +0 -110
  455. package/daemon/specs/agents/shared/skills/core/openrig-user/SKILL.md +0 -1245
  456. package/daemon/specs/agents/shared/skills/core/openrig-user-settings/SKILL.md +0 -153
  457. package/daemon/specs/agents/shared/skills/pm/backlog-capture/SKILL.md +0 -43
  458. package/daemon/specs/agents/shared/skills/pm/context-builder/SKILL.md +0 -87
  459. package/daemon/specs/agents/shared/skills/pm/exec-summary/SKILL.md +0 -84
  460. package/daemon/specs/agents/shared/skills/pm/office-hours/SKILL.md +0 -129
  461. package/daemon/specs/agents/shared/skills/pm/plan-review/SKILL.md +0 -98
  462. package/daemon/specs/agents/shared/skills/pm/requirements-writer/SKILL.md +0 -113
  463. package/daemon/specs/agents/shared/skills/pm/ui-mockup/SKILL.md +0 -76
  464. package/daemon/specs/agents/shared/skills/pods/development-team/SKILL.md +0 -148
  465. package/daemon/specs/agents/shared/skills/pods/orchestration-team/SKILL.md +0 -266
  466. package/daemon/specs/agents/shared/skills/pods/review-team/SKILL.md +0 -210
  467. package/daemon/specs/agents/shared/skills/process/systematic-debugging/CREATION-LOG.md +0 -119
  468. package/daemon/specs/agents/shared/skills/process/systematic-debugging/test-academic.md +0 -14
  469. package/daemon/specs/agents/shared/skills/process/systematic-debugging/test-pressure-1.md +0 -58
  470. package/daemon/specs/agents/shared/skills/process/systematic-debugging/test-pressure-2.md +0 -68
  471. package/daemon/specs/agents/shared/skills/process/systematic-debugging/test-pressure-3.md +0 -69
  472. package/ui/dist/assets/index-CFqxa0zW.css +0 -32
@@ -1 +1 @@
1
- {"version":3,"file":"node-inventory.js","sourceRoot":"","sources":["../../src/domain/node-inventory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"node-inventory.js","sourceRoot":"","sources":["../../src/domain/node-inventory.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,89 @@
1
+ import type { LaunchPosture, PolicySurface } from "./policy-spec.js";
2
+ /** The packaged read-only built-in policy set (README v4: 3 Policy-Mode specs + Operator/YOLO). */
3
+ export declare const BUILTIN_POLICY_NAMES: readonly ["locked", "standard", "open", "yolo"];
4
+ export type BuiltinPolicyName = (typeof BUILTIN_POLICY_NAMES)[number];
5
+ /** deliberate_none: the ruled amendment 5f37e40f — the recorded choice; never file-backed. */
6
+ export type PolicyRefOrigin = "builtin" | "custom" | "deliberate_none";
7
+ export interface ResolvedPolicyRef {
8
+ /** The ref string, preserved verbatim (travels with the spec through the state). */
9
+ ref: string;
10
+ origin: PolicyRefOrigin;
11
+ /** Present when origin === "builtin": the validated built-in name. */
12
+ builtinName?: BuiltinPolicyName;
13
+ }
14
+ /**
15
+ * Validate + classify a permission_policy REF. Returns a STRUCTURED error string for an invalid ref
16
+ * (an invalid ref is a spec DEFECT, never a silent floor fallback), or null when valid. ABSENT is the
17
+ * caller's concern (only pass a present value here). `label` prefixes the error for the surfacing
18
+ * layer (matches the RigSpec validate convention, e.g. "permission_policy" / "pods[0].members[1].
19
+ * permission_policy").
20
+ */
21
+ export declare function validatePermissionPolicyRef(value: unknown, label: string): string | null;
22
+ /**
23
+ * Classify a VALID ref (call validatePermissionPolicyRef first). Preserves + surfaces origin, never
24
+ * silently reclassifies (origin honesty). Never throws on a validated ref.
25
+ */
26
+ export declare function classifyPermissionPolicyRef(value: string): ResolvedPolicyRef;
27
+ /**
28
+ * A restart-stable resolved attachment (dev-guard early ruling, 2026-08-04): persisting only the raw
29
+ * relative ref is NOT restart-complete. We carry the raw `ref` (for export truth + later skill apply)
30
+ * PLUS `resolvedTarget` (canonical package identifier for built-ins; the absolute resolved path for
31
+ * custom) + `declaringDir` (custom) + `origin`, so a restore can reopen/validate the custom policy
32
+ * and re-derive surface + launch_posture without the original in-memory RigSpec.
33
+ */
34
+ export interface ResolvedPolicyAttachment {
35
+ /** Raw ref, preserved verbatim for export + skill apply. */
36
+ ref: string;
37
+ origin: PolicyRefOrigin;
38
+ /** origin=builtin: the validated built-in name. */
39
+ builtinName?: BuiltinPolicyName;
40
+ /** custom: the absolute resolved path. builtin: the canonical shipped package-copy path once the
41
+ * packaging leg rules it (PM lane c76c7153) — ABSENT until then; NEVER a `builtin:<name>` echo of
42
+ * the raw ref (dev-guard correction 2: the ref is persisted separately for export; duplicating it
43
+ * here is not restart-stable provenance). */
44
+ resolvedTarget?: string;
45
+ /** origin=custom: the canonical (absolute) declaring RigSpec directory — restart-stable provenance. */
46
+ declaringDir?: string;
47
+ /** The resolved policy surface, when content was resolvable (custom) or known (built-in). */
48
+ surface?: PolicySurface;
49
+ /** Flag-surface launch posture for per-seat binding (floor | full_bypass). */
50
+ launchPosture: LaunchPosture;
51
+ /** Guard round-2 (8232199a): TRUE only when custom CONTENT resolution genuinely
52
+ * succeeded with USABLE semantics — parse OK + known surface + (flag ⇒ a valid
53
+ * launch_posture). Restore trusts a re-derivation ONLY when this is true; otherwise
54
+ * the PERSISTED posture carries. Builtins: always true (name-derived semantics). */
55
+ contentResolved: boolean;
56
+ }
57
+ /** Injected reader so resolution is testable + does not hard-couple the module to fs. Throws when
58
+ * the target is missing/unreadable (resolver treats that as an advisory floor, provenance kept). */
59
+ export interface PolicyResolveDeps {
60
+ readFile: (absolutePath: string) => string;
61
+ }
62
+ /**
63
+ * The SINGLE mapping point for the built-in policies' canonical shipped package-copy path —
64
+ * PM-RULED (inline ruling via dev-guard NOT-CLEAR at 9e94c274, lane c76c7153):
65
+ * repo source (future): packages/daemon/policies/builtin/<name>.policy.md
66
+ * provenance target: policies/builtin/<name>.policy.md (package-relative;
67
+ * module-relative at runtime)
68
+ * The raw `builtin:<name>` ref stays separate (export truth); this target is the restart-
69
+ * stable provenance. Built-in CONTENT stays a later leg — no asset read or copy here.
70
+ */
71
+ export declare function builtinPackageTarget(name: BuiltinPolicyName): string;
72
+ /**
73
+ * Resolve a VALIDATED, present ref (call validatePermissionPolicyRef first) into a restart-stable
74
+ * attachment. `declaringDir` is the canonical directory of the RigSpec that declared the ref (custom
75
+ * refs resolve relative to it — README v4 A2). Flag-surface CONTENT resolution is CORE-owned (guard
76
+ * ruling): a custom `surface: flag` policy's `launch_posture` (floor|full_bypass) is read here.
77
+ * - built-in: name-derived posture bounded to the locked set (yolo → full_bypass, else floor);
78
+ * origin + canonical `builtin:<name>` target preserved. Package ASSET existence is a later leg.
79
+ * - custom: resolve relative to declaringDir, read + parse (Seam A), derive surface; flag →
80
+ * its launch_posture; config → floor (config-surface CONTENT application is deferred to the
81
+ * skill; no config write here). Unreadable/invalid → advisory floor, provenance still preserved.
82
+ */
83
+ export declare function resolvePermissionPolicyAttachment(ref: string, declaringDir: string, deps: PolicyResolveDeps): ResolvedPolicyAttachment;
84
+ /**
85
+ * Precedence: a per-member ref overrides the rig-level ref; absence at both is undefined (= floor).
86
+ * member > rig > floor (README v4 + IMPL-PLAN). No pod level exists in the spec surface.
87
+ */
88
+ export declare function resolvePermissionPolicyRefValue(memberRef: string | null | undefined, rigRef: string | null | undefined): string | undefined;
89
+ //# sourceMappingURL=policy-ref.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policy-ref.d.ts","sourceRoot":"","sources":["../../../src/domain/permission-policy/policy-ref.ts"],"names":[],"mappings":"AAmBA,OAAO,KAAK,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAErE,mGAAmG;AACnG,eAAO,MAAM,oBAAoB,iDAAkD,CAAC;AACpF,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,oBAAoB,CAAC,CAAC,MAAM,CAAC,CAAC;AACtE,8FAA8F;AAC9F,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,QAAQ,GAAG,iBAAiB,CAAC;AAIvE,MAAM,WAAW,iBAAiB;IAChC,oFAAoF;IACpF,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,eAAe,CAAC;IACxB,sEAAsE;IACtE,WAAW,CAAC,EAAE,iBAAiB,CAAC;CACjC;AAMD;;;;;;GAMG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAsCxF;AAED;;;GAGG;AACH,wBAAgB,2BAA2B,CAAC,KAAK,EAAE,MAAM,GAAG,iBAAiB,CAK5E;AAED;;;;;;GAMG;AACH,MAAM,WAAW,wBAAwB;IACvC,4DAA4D;IAC5D,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,eAAe,CAAC;IACxB,mDAAmD;IACnD,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC;;;iDAG6C;IAC7C,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,uGAAuG;IACvG,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6FAA6F;IAC7F,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,8EAA8E;IAC9E,aAAa,EAAE,aAAa,CAAC;IAC7B;;;yFAGqF;IACrF,eAAe,EAAE,OAAO,CAAC;CAC1B;AAED;qGACqG;AACrG,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,CAAC,YAAY,EAAE,MAAM,KAAK,MAAM,CAAC;CAC5C;AAED;;;;;;;;GAQG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,iBAAiB,GAAG,MAAM,CAEpE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iCAAiC,CAC/C,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,EACpB,IAAI,EAAE,iBAAiB,GACtB,wBAAwB,CAuD1B;AAED;;;GAGG;AACH,wBAAgB,+BAA+B,CAC7C,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,EACpC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAChC,MAAM,GAAG,SAAS,CAEpB"}
@@ -0,0 +1,171 @@
1
+ // Slice-03 (OPR.0.4.8.3) Seam B — permission_policy REF resolution + precedence + launch-posture.
2
+ // The `permission_policy` value attached to a rig or a seat is a REF (not a policy body). Semantics
3
+ // are grounded in Slice03 README v4 (sha256-8 d65afe67), rulings A1/A2/A3 + the Policy/YOLO framing:
4
+ // - `builtin:<name>`, <name> ∈ {locked, standard, open, yolo} (A1): resolves into the packaged
5
+ // read-only built-in set (origin=builtin). Unknown name = STRUCTURED error listing the known
6
+ // set. The `builtin:` prefix is MANDATORY — bare canonical names never resolve (no shadowing).
7
+ // - a RELATIVE custom path (A2), resolved relative to the DECLARING RigSpec dir (origin=custom);
8
+ // absolute / `..` traversal / empty segments = STRUCTURED error (a spec defect, NOT a floor
9
+ // fallback). Reuses the established safe-path discipline (path-safety.validateSafePath).
10
+ // - `none` = the RECORDED DELIBERATE choice (RULED-FORM-deliberate-none-2026-08-04,
11
+ // sha256 5f37e40f — the A3 reservation ACTIVATED by its own amendment): third origin
12
+ // deliberate_none, never resolves to any file, posture identical to absent (floor).
13
+ // - ABSENT (no value) = the floor (honest absence) — the CALLER passes undefined; not an error.
14
+ // Built-in ASSET packaging is a LATER leg: builtin resolution here is REF-SEMANTICS (prefix→origin),
15
+ // it does NOT read or require the asset file to exist.
16
+ import * as path from "node:path";
17
+ import { validateSafePath } from "../path-safety.js";
18
+ import { parsePolicySpec, validatePolicySpec } from "./policy-spec.js";
19
+ /** The packaged read-only built-in policy set (README v4: 3 Policy-Mode specs + Operator/YOLO). */
20
+ export const BUILTIN_POLICY_NAMES = ["locked", "standard", "open", "yolo"];
21
+ const BUILTIN_PREFIX = "builtin:";
22
+ function isBuiltinName(name) {
23
+ return BUILTIN_POLICY_NAMES.includes(name);
24
+ }
25
+ /**
26
+ * Validate + classify a permission_policy REF. Returns a STRUCTURED error string for an invalid ref
27
+ * (an invalid ref is a spec DEFECT, never a silent floor fallback), or null when valid. ABSENT is the
28
+ * caller's concern (only pass a present value here). `label` prefixes the error for the surfacing
29
+ * layer (matches the RigSpec validate convention, e.g. "permission_policy" / "pods[0].members[1].
30
+ * permission_policy").
31
+ */
32
+ export function validatePermissionPolicyRef(value, label) {
33
+ if (typeof value !== "string" || value.trim().length === 0) {
34
+ return `${label}: permission_policy must be a non-empty string ref`;
35
+ }
36
+ if (value === "none") {
37
+ // RULED amendment (5f37e40f): the A3-reserved literal IS the recorded
38
+ // deliberate choice — valid; classification/resolution handle it below.
39
+ return null;
40
+ }
41
+ if (value.startsWith(BUILTIN_PREFIX)) {
42
+ const name = value.slice(BUILTIN_PREFIX.length);
43
+ if (!isBuiltinName(name)) {
44
+ return `${label}: unknown built-in policy '${name}' (known: ${BUILTIN_POLICY_NAMES.join(", ")})`;
45
+ }
46
+ return null;
47
+ }
48
+ // Anti-shadowing (A1: "no canonical-name shadowing, ever"): a BARE canonical name must NOT
49
+ // masquerade as a custom ref — that would silently mis-resolve origin (and, for `yolo`, silently
50
+ // downgrade full_bypass→floor). Require the explicit builtin: prefix.
51
+ if (isBuiltinName(value)) {
52
+ return `${label}: '${value}' is a built-in policy name — use 'builtin:${value}' (the builtin: prefix is mandatory; bare names never resolve, no shadowing)`;
53
+ }
54
+ // Custom relative ref — the established safe-path discipline (absolute / .. rejected)…
55
+ const pathErr = validateSafePath(value, label);
56
+ if (pathErr)
57
+ return pathErr;
58
+ // …plus the explicit empty-segment rejection (README v4 A2) that validateSafePath does not cover.
59
+ const segments = value.replace(/\\/g, "/").split("/");
60
+ if (segments.some((seg) => seg.length === 0)) {
61
+ return `${label}: empty path segments are not allowed (got "${value}")`;
62
+ }
63
+ // README v4 A2 per-segment charset (the established ref discipline — same class as the
64
+ // rig-context day-one contract): every segment is a single safe path component.
65
+ for (const seg of segments) {
66
+ if (!/^[A-Za-z0-9][A-Za-z0-9._-]*$/.test(seg)) {
67
+ return `${label}: path segment "${seg}" violates the ref charset (each segment must match [A-Za-z0-9][A-Za-z0-9._-]*)`;
68
+ }
69
+ }
70
+ return null;
71
+ }
72
+ /**
73
+ * Classify a VALID ref (call validatePermissionPolicyRef first). Preserves + surfaces origin, never
74
+ * silently reclassifies (origin honesty). Never throws on a validated ref.
75
+ */
76
+ export function classifyPermissionPolicyRef(value) {
77
+ if (value.startsWith(BUILTIN_PREFIX)) {
78
+ return { ref: value, origin: "builtin", builtinName: value.slice(BUILTIN_PREFIX.length) };
79
+ }
80
+ return { ref: value, origin: "custom" };
81
+ }
82
+ /**
83
+ * The SINGLE mapping point for the built-in policies' canonical shipped package-copy path —
84
+ * PM-RULED (inline ruling via dev-guard NOT-CLEAR at 9e94c274, lane c76c7153):
85
+ * repo source (future): packages/daemon/policies/builtin/<name>.policy.md
86
+ * provenance target: policies/builtin/<name>.policy.md (package-relative;
87
+ * module-relative at runtime)
88
+ * The raw `builtin:<name>` ref stays separate (export truth); this target is the restart-
89
+ * stable provenance. Built-in CONTENT stays a later leg — no asset read or copy here.
90
+ */
91
+ export function builtinPackageTarget(name) {
92
+ return `policies/builtin/${name}.policy.md`;
93
+ }
94
+ /**
95
+ * Resolve a VALIDATED, present ref (call validatePermissionPolicyRef first) into a restart-stable
96
+ * attachment. `declaringDir` is the canonical directory of the RigSpec that declared the ref (custom
97
+ * refs resolve relative to it — README v4 A2). Flag-surface CONTENT resolution is CORE-owned (guard
98
+ * ruling): a custom `surface: flag` policy's `launch_posture` (floor|full_bypass) is read here.
99
+ * - built-in: name-derived posture bounded to the locked set (yolo → full_bypass, else floor);
100
+ * origin + canonical `builtin:<name>` target preserved. Package ASSET existence is a later leg.
101
+ * - custom: resolve relative to declaringDir, read + parse (Seam A), derive surface; flag →
102
+ * its launch_posture; config → floor (config-surface CONTENT application is deferred to the
103
+ * skill; no config write here). Unreadable/invalid → advisory floor, provenance still preserved.
104
+ */
105
+ export function resolvePermissionPolicyAttachment(ref, declaringDir, deps) {
106
+ if (ref === "none") {
107
+ // RULED amendment (5f37e40f): recorded deliberate choice. NEVER resolves to
108
+ // any file (no resolvedTarget/declaringDir — the A3 no-squatting fence
109
+ // holds because 'none' stays unreferenceable); posture IDENTICAL to absent
110
+ // (zero privilege delta — the entire change is record/provenance).
111
+ return {
112
+ ref,
113
+ origin: "deliberate_none",
114
+ launchPosture: "floor",
115
+ contentResolved: true, // semantics fully known by construction (like builtins)
116
+ };
117
+ }
118
+ if (ref.startsWith(BUILTIN_PREFIX)) {
119
+ const builtinName = ref.slice(BUILTIN_PREFIX.length);
120
+ return {
121
+ ref,
122
+ origin: "builtin",
123
+ builtinName,
124
+ resolvedTarget: builtinPackageTarget(builtinName),
125
+ surface: builtinName === "yolo" ? "flag" : undefined,
126
+ launchPosture: builtinName === "yolo" ? "full_bypass" : "floor",
127
+ contentResolved: true,
128
+ };
129
+ }
130
+ // Custom ref: resolve relative to the declaring RigSpec directory (never cwd/workspace root).
131
+ const resolvedTarget = path.resolve(declaringDir, ref);
132
+ let surface;
133
+ let launchPosture = "floor";
134
+ let contentResolved = false;
135
+ try {
136
+ const parsed = parsePolicySpec(deps.readFile(resolvedTarget));
137
+ if (!("error" in parsed)) {
138
+ const s = parsed.frontmatter["surface"];
139
+ if (s === "flag" || s === "config")
140
+ surface = s;
141
+ // R2 HIGH-2: content is RESOLVED only when the COMPLETE sealed Seam-A frontmatter
142
+ // contract validates (validatePolicySpec: surface-appropriate required fields,
143
+ // action-list shapes, schema version, description, …) — parseable-but-invalid
144
+ // content must NOT be trusted over persisted posture. Advisory read only.
145
+ const contract = validatePolicySpec(parsed.frontmatter);
146
+ if (contract.ok && surface === "flag") {
147
+ const lp = parsed.frontmatter["launch_posture"];
148
+ if (lp === "floor" || lp === "full_bypass") {
149
+ launchPosture = lp;
150
+ contentResolved = true;
151
+ }
152
+ }
153
+ else if (contract.ok && surface === "config") {
154
+ contentResolved = true; // valid config semantics; posture floor is genuine
155
+ }
156
+ // invalid contract or unknown surface → NOT resolved (advisory floor, provenance kept)
157
+ }
158
+ }
159
+ catch {
160
+ // Unreadable/unresolvable at resolve time → advisory floor; ref + provenance still preserved.
161
+ }
162
+ return { ref, origin: "custom", resolvedTarget, declaringDir, surface, launchPosture, contentResolved };
163
+ }
164
+ /**
165
+ * Precedence: a per-member ref overrides the rig-level ref; absence at both is undefined (= floor).
166
+ * member > rig > floor (README v4 + IMPL-PLAN). No pod level exists in the spec surface.
167
+ */
168
+ export function resolvePermissionPolicyRefValue(memberRef, rigRef) {
169
+ return (memberRef ?? undefined) ?? (rigRef ?? undefined);
170
+ }
171
+ //# sourceMappingURL=policy-ref.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policy-ref.js","sourceRoot":"","sources":["../../../src/domain/permission-policy/policy-ref.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,34 @@
1
+ export type PolicySurface = "flag" | "config";
2
+ export type PolicySource = "builtin" | "custom";
3
+ export type LaunchPosture = "floor" | "full_bypass";
4
+ export type DefaultPosture = "allow" | "ask" | "deny";
5
+ /** A parsed policy spec: the raw frontmatter object + the preserved Markdown body. */
6
+ export interface ParsedPolicySpec {
7
+ frontmatter: Record<string, unknown>;
8
+ /** The Markdown body after the frontmatter block — preserved verbatim (human prose, not contract). */
9
+ body: string;
10
+ }
11
+ export interface ParseError {
12
+ error: string;
13
+ }
14
+ /** Parse a policy spec into its frontmatter contract + preserved body. Never throws. */
15
+ export declare function parsePolicySpec(raw: string): ParsedPolicySpec | ParseError;
16
+ export interface ValidationResult {
17
+ ok: boolean;
18
+ errors: string[];
19
+ }
20
+ /**
21
+ * Validate-by-convention: required scalars, enum membership, surface-appropriate EXCLUSIVITY, and
22
+ * scalar/list SHAPES. ADVISORY + fail-open — returns {ok, errors[]}, never throws, never enforces.
23
+ * Does NOT validate the semantic-action vocabulary (taxonomy 668bb0d2 owns it) nor resolve to any
24
+ * harness format.
25
+ */
26
+ export declare function validatePolicySpec(fm: Record<string, unknown>): ValidationResult;
27
+ /**
28
+ * Deterministic CANONICAL serialization: frontmatter re-emitted in canonical field order (unknown
29
+ * keys preserved, appended stably) + the body verbatim. Round-trip contract = serialize is STABLE
30
+ * (serialize∘parse is idempotent) + SEMANTIC equality (frontmatter deep-equal) + BODY preserved —
31
+ * NOT original-input byte identity.
32
+ */
33
+ export declare function serializePolicySpec(parsed: ParsedPolicySpec): string;
34
+ //# sourceMappingURL=policy-spec.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policy-spec.d.ts","sourceRoot":"","sources":["../../../src/domain/permission-policy/policy-spec.ts"],"names":[],"mappings":"AAUA,MAAM,MAAM,aAAa,GAAG,MAAM,GAAG,QAAQ,CAAC;AAC9C,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,QAAQ,CAAC;AAChD,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,aAAa,CAAC;AACpD,MAAM,MAAM,cAAc,GAAG,OAAO,GAAG,KAAK,GAAG,MAAM,CAAC;AAEtD,sFAAsF;AACtF,MAAM,WAAW,gBAAgB;IAC/B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACrC,sGAAsG;IACtG,IAAI,EAAE,MAAM,CAAC;CACd;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;CACf;AAMD,wFAAwF;AACxF,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,gBAAgB,GAAG,UAAU,CAa1E;AAED,MAAM,WAAW,gBAAgB;IAC/B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAYD;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,EAAE,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,gBAAgB,CA8BhF;AAQD;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,gBAAgB,GAAG,MAAM,CAOpE"}
@@ -0,0 +1,106 @@
1
+ // Slice-03 (OPR.0.4.8.3) Seam A — the permission-policy SPEC primitive: parse + validate-by-convention.
2
+ // A policy spec is a Markdown file with a leading YAML FRONTMATTER contract + an explanatory body.
3
+ // This module PARSES the whole contract from frontmatter (preserving the body verbatim) and
4
+ // VALIDATES it by convention — ADVISORY + fail-open (mirrors `rig scope audit`), never enforcement.
5
+ // It NEVER validates the semantic-action vocabulary (the taxonomy 668bb0d2 owns that) and NEVER
6
+ // resolves intent to a harness format (flag surface = deterministic code elsewhere; config surface =
7
+ // the skill). Schema authority: ARCH-POLICY-SPEC-SCHEMA sha256-8 92409094.
8
+ import { parse as parseYaml, stringify as stringifyYaml } from "yaml";
9
+ // Leading `---\n<yaml>\n---\n<body>` frontmatter block. Non-greedy YAML capture so the FIRST closing
10
+ // `---` ends the frontmatter; everything after is the body (preserved exactly).
11
+ const FRONTMATTER_RE = /^---\n([\s\S]*?)\n---\n?([\s\S]*)$/;
12
+ /** Parse a policy spec into its frontmatter contract + preserved body. Never throws. */
13
+ export function parsePolicySpec(raw) {
14
+ const m = FRONTMATTER_RE.exec(raw);
15
+ if (!m)
16
+ return { error: "policy spec must open with a '---' YAML frontmatter block" };
17
+ let frontmatter;
18
+ try {
19
+ frontmatter = parseYaml(m[1]);
20
+ }
21
+ catch (e) {
22
+ return { error: `frontmatter is not valid YAML: ${e.message}` };
23
+ }
24
+ if (!frontmatter || typeof frontmatter !== "object" || Array.isArray(frontmatter)) {
25
+ return { error: "frontmatter must be a YAML object at the root" };
26
+ }
27
+ return { frontmatter: frontmatter, body: m[2] ?? "" };
28
+ }
29
+ const SOURCES = new Set(["builtin", "custom"]);
30
+ const SURFACES = new Set(["flag", "config"]);
31
+ const LAUNCH_POSTURES = new Set(["floor", "full_bypass"]);
32
+ const DEFAULT_POSTURES = new Set(["allow", "ask", "deny"]);
33
+ const ACTION_LIST_FIELDS = ["allow", "ask", "deny", "destructive_class"];
34
+ function isStringList(v) {
35
+ return Array.isArray(v) && v.every((x) => typeof x === "string");
36
+ }
37
+ /**
38
+ * Validate-by-convention: required scalars, enum membership, surface-appropriate EXCLUSIVITY, and
39
+ * scalar/list SHAPES. ADVISORY + fail-open — returns {ok, errors[]}, never throws, never enforces.
40
+ * Does NOT validate the semantic-action vocabulary (taxonomy 668bb0d2 owns it) nor resolve to any
41
+ * harness format.
42
+ */
43
+ export function validatePolicySpec(fm) {
44
+ const errors = [];
45
+ if (fm["policy_schema_version"] !== 1)
46
+ errors.push("policy_schema_version must be the number 1");
47
+ if (typeof fm["name"] !== "string" || fm["name"].length === 0)
48
+ errors.push("name must be a non-empty string");
49
+ if (typeof fm["source"] !== "string" || !SOURCES.has(fm["source"]))
50
+ errors.push("source must be 'builtin' or 'custom'");
51
+ if (typeof fm["description"] !== "string" || fm["description"].length === 0)
52
+ errors.push("description must be a non-empty string");
53
+ const surface = fm["surface"];
54
+ if (typeof surface !== "string" || !SURFACES.has(surface)) {
55
+ errors.push("surface must be 'flag' or 'config'");
56
+ return { ok: errors.length === 0, errors }; // can't check surface-appropriate fields without a valid surface
57
+ }
58
+ if (surface === "flag") {
59
+ if (!LAUNCH_POSTURES.has(fm["launch_posture"]))
60
+ errors.push("flag-surface policy requires launch_posture ('floor' or 'full_bypass')");
61
+ if (fm["default_posture"] !== undefined)
62
+ errors.push("flag-surface policy must NOT carry default_posture (config-surface field)");
63
+ for (const f of ACTION_LIST_FIELDS)
64
+ if (fm[f] !== undefined)
65
+ errors.push(`flag-surface policy must NOT carry '${f}' (config-surface field)`);
66
+ }
67
+ else {
68
+ // config
69
+ if (fm["launch_posture"] !== undefined)
70
+ errors.push("config-surface policy must NOT carry launch_posture (flag-surface field)");
71
+ if (!DEFAULT_POSTURES.has(fm["default_posture"]))
72
+ errors.push("config-surface policy requires default_posture ('allow', 'ask' or 'deny')");
73
+ // The schema requires all four action-list fields present (use [] for none) — not optional.
74
+ for (const f of ACTION_LIST_FIELDS) {
75
+ if (fm[f] === undefined)
76
+ errors.push(`config-surface policy requires '${f}' (a list of strings; use [] for none)`);
77
+ else if (!isStringList(fm[f]))
78
+ errors.push(`${f} must be a list of strings`);
79
+ }
80
+ }
81
+ return { ok: errors.length === 0, errors };
82
+ }
83
+ // Canonical field order for deterministic serialization (unknown keys appended stably after).
84
+ const CANONICAL_ORDER = [
85
+ "source", "name", "surface", "launch_posture", "policy_schema_version", "description",
86
+ "default_posture", "allow", "ask", "deny", "destructive_class",
87
+ ];
88
+ /**
89
+ * Deterministic CANONICAL serialization: frontmatter re-emitted in canonical field order (unknown
90
+ * keys preserved, appended stably) + the body verbatim. Round-trip contract = serialize is STABLE
91
+ * (serialize∘parse is idempotent) + SEMANTIC equality (frontmatter deep-equal) + BODY preserved —
92
+ * NOT original-input byte identity.
93
+ */
94
+ export function serializePolicySpec(parsed) {
95
+ const fm = parsed.frontmatter;
96
+ const ordered = {};
97
+ for (const k of CANONICAL_ORDER)
98
+ if (fm[k] !== undefined)
99
+ ordered[k] = fm[k];
100
+ for (const k of Object.keys(fm))
101
+ if (!(k in ordered))
102
+ ordered[k] = fm[k];
103
+ const yamlBlock = stringifyYaml(ordered).replace(/\n+$/, "");
104
+ return `---\n${yamlBlock}\n---\n${parsed.body}`;
105
+ }
106
+ //# sourceMappingURL=policy-spec.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"policy-spec.js","sourceRoot":"","sources":["../../../src/domain/permission-policy/policy-spec.ts"],"names":[],"mappings":"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"}
@@ -37,6 +37,8 @@ export declare class PluginVendorService {
37
37
  * No-op when the vendored asset doesn't exist (e.g. plugin not bundled).
38
38
  */
39
39
  ensureVendored(pluginName: string): Promise<void>;
40
+ /** Project one plugin skill into the harness-global skill roots. */
41
+ ensureSkillGlobally(pluginName: string, skillName: string, globalSkillRoots: string[]): void;
40
42
  /**
41
43
  * Attempt to fetch the latest plugin tree from
42
44
  * github.com/mvschwarz/openrig-plugins. Tolerates 404, network errors,
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-vendor-service.d.ts","sourceRoot":"","sources":["../../src/domain/plugin-vendor-service.ts"],"names":[],"mappings":"AA4BA,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/C,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAC9B,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACjC,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf;mFAC+E;IAC/E,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAErG,MAAM,WAAW,uBAAuB;IACtC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,EAAE,EAAE,cAAc,CAAC;IACnB,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;CACvC;AAKD,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,EAAE,CAAiB;IAC3B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,MAAM,CAA+B;gBAEjC,IAAI,EAAE,uBAAuB;IAQzC;;;;;OAKG;IACG,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBvD;;;;;OAKG;IACG,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBzD;;;;OAIG;IACG,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAItD"}
1
+ {"version":3,"file":"plugin-vendor-service.d.ts","sourceRoot":"","sources":["../../src/domain/plugin-vendor-service.ts"],"names":[],"mappings":"AA4BA,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IAC/B,SAAS,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/C,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;IAC9B,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;IACjC,IAAI,CAAC,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf;mFAC+E;IAC/E,IAAI,CAAC,EAAE,OAAO,CAAC;CAChB;AAED,MAAM,MAAM,UAAU,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;IAAE,SAAS,CAAC,EAAE,MAAM,CAAA;CAAE,KAAK,OAAO,CAAC,kBAAkB,CAAC,CAAC;AAErG,MAAM,WAAW,uBAAuB;IACtC,iBAAiB,EAAE,MAAM,CAAC;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,EAAE,EAAE,cAAc,CAAC;IACnB,UAAU,EAAE,UAAU,CAAC;IACvB,MAAM,CAAC,EAAE,CAAC,GAAG,IAAI,EAAE,OAAO,EAAE,KAAK,IAAI,CAAC;CACvC;AAKD,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,iBAAiB,CAAS;IAClC,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,EAAE,CAAiB;IAC3B,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,MAAM,CAA+B;gBAEjC,IAAI,EAAE,uBAAuB;IAQzC;;;;;OAKG;IACG,cAAc,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAyBvD,oEAAoE;IACpE,mBAAmB,CACjB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,EACjB,gBAAgB,EAAE,MAAM,EAAE,GACzB,IAAI;IAiCP;;;;;OAKG;IACG,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsBzD;;;;OAIG;IACG,YAAY,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAItD"}
@@ -66,6 +66,29 @@ export class PluginVendorService {
66
66
  this.fs.writeFile(destPath, content);
67
67
  }
68
68
  }
69
+ /** Project one plugin skill into the harness-global skill roots. */
70
+ ensureSkillGlobally(pluginName, skillName, globalSkillRoots) {
71
+ const sourceDir = nodePath.join(this.userPluginsDir, pluginName, "skills", skillName);
72
+ if (!this.fs.exists(sourceDir)) {
73
+ throw new Error(`Required global seed '${skillName}' is missing from plugin '${pluginName}'`);
74
+ }
75
+ const files = this.fs.listFiles(sourceDir);
76
+ for (const root of globalSkillRoots) {
77
+ const targetDir = nodePath.join(root, skillName);
78
+ this.fs.mkdirp(targetDir);
79
+ for (const relPath of files) {
80
+ const srcPath = nodePath.join(sourceDir, relPath);
81
+ const destPath = nodePath.join(targetDir, relPath);
82
+ const content = this.fs.readFile(srcPath);
83
+ if (this.fs.exists(destPath) &&
84
+ hashContent(this.fs.readFile(destPath)) === hashContent(content)) {
85
+ continue;
86
+ }
87
+ this.fs.mkdirp(nodePath.dirname(destPath));
88
+ this.fs.writeFile(destPath, content);
89
+ }
90
+ }
91
+ }
69
92
  /**
70
93
  * Attempt to fetch the latest plugin tree from
71
94
  * github.com/mvschwarz/openrig-plugins. Tolerates 404, network errors,
@@ -1 +1 @@
1
- {"version":3,"file":"plugin-vendor-service.js","sourceRoot":"","sources":["../../src/domain/plugin-vendor-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"plugin-vendor-service.js","sourceRoot":"","sources":["../../src/domain/plugin-vendor-service.ts"],"names":[],"mappings":"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"}