@openrig/cli 0.5.3 → 0.5.5

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 (842) hide show
  1. package/daemon/assets/guidance/openrig-start.md +7 -0
  2. package/daemon/assets/onboarding/01-world-and-purpose.md +52 -0
  3. package/daemon/assets/onboarding/02-self-and-competent-action.md +57 -0
  4. package/daemon/assets/plugins/openrig-core/.claude-plugin/plugin.json +1 -1
  5. package/daemon/assets/plugins/openrig-core/.codex-plugin/plugin.json +1 -1
  6. package/daemon/assets/plugins/openrig-core/README.md +5 -2
  7. package/daemon/assets/plugins/openrig-core/hooks/claude.json +3 -12
  8. package/daemon/assets/plugins/openrig-core/hooks/codex.json +5 -12
  9. package/daemon/assets/plugins/openrig-core/hooks/scripts/refocus.cjs +196 -106
  10. package/daemon/assets/plugins/openrig-core/skills/mission-slice-sop/SKILL.md +18 -23
  11. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/CHANGELOG.md +92 -0
  12. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/REVISION-GUIDE.md +34 -0
  13. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/ROADMAP.md +23 -0
  14. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/ROLLOUT.md +234 -0
  15. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/SKILL.md +404 -0
  16. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/scripts/compose.py +653 -0
  17. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/scripts/scaffold.sh +34 -0
  18. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/scripts/trace-due.sh +32 -0
  19. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/scripts/trace-stamp.sh +5 -0
  20. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/scripts/trunk-diff.sh +18 -0
  21. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/templates/LEARNED.md +40 -0
  22. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/templates/NOTES.md +9 -0
  23. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/templates/PLAYBOOK.md +5 -0
  24. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/templates/SOP.md +24 -0
  25. package/daemon/assets/plugins/openrig-core/skills/openrig-operating-model/templates/SPEC.md +54 -0
  26. package/daemon/assets/plugins/openrig-core/skills/openrig-skills/SKILL.md +5 -0
  27. package/daemon/assets/plugins/openrig-core/skills/refocusing/SKILL.md +31 -0
  28. package/daemon/assets/plugins/openrig-core/skills/refocusing/references/refocus.md +22 -0
  29. package/daemon/assets/plugins/openrig-core/skills/refocusing/scripts/trace-to-root.py +221 -0
  30. package/daemon/assets/plugins/openrig-core/skills/retiring-and-inheriting-a-seat/SKILL.md +3 -3
  31. package/daemon/assets/plugins/openrig-core/skills/software-for-agents/SKILL.md +4 -9
  32. package/daemon/context-packs/onboarding-width/manifest.yaml +11 -0
  33. package/daemon/context-packs/{world/install/reference-material.md → onboarding-width/public-reference-material.md} +4 -26
  34. package/daemon/context-packs/{world/install/what-you-can-do.md → onboarding-width/public-what-you-can-do.md} +13 -9
  35. package/daemon/context-packs/skills/core/agent-starters/manifest.yaml +1 -1
  36. package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/SKILL.md +1 -1
  37. package/daemon/context-packs/skills/core/agent-startup-and-context-ingestion/manifest.yaml +1 -1
  38. package/daemon/context-packs/skills/core/attention-queue/manifest.yaml +1 -1
  39. package/daemon/context-packs/skills/core/cross-host-rig-commands/manifest.yaml +1 -1
  40. package/daemon/context-packs/skills/core/human-in-the-loop/manifest.yaml +1 -1
  41. package/daemon/context-packs/skills/core/openrig-architect/manifest.yaml +1 -1
  42. package/daemon/context-packs/skills/core/openrig-cmux/manifest.yaml +1 -1
  43. package/daemon/context-packs/skills/core/openrig-herdr/manifest.yaml +1 -1
  44. package/daemon/context-packs/skills/core/openrig-upgrade/manifest.yaml +1 -1
  45. package/daemon/context-packs/skills/core/rig-bundles-and-shareable-artifacts/manifest.yaml +1 -1
  46. package/daemon/context-packs/skills/core/rig-lifecycle/manifest.yaml +1 -1
  47. package/daemon/context-packs/skills/core/session-source-fork/manifest.yaml +1 -1
  48. package/daemon/context-packs/skills/core/specification-system/manifest.yaml +1 -1
  49. package/daemon/context-packs/skills/core/topology-mutation-and-seat-management/manifest.yaml +1 -1
  50. package/daemon/context-packs/skills/core/watchdog/manifest.yaml +1 -1
  51. package/daemon/context-packs/skills/pm/backlog-capture/manifest.yaml +1 -1
  52. package/daemon/context-packs/skills/pm/context-builder/manifest.yaml +1 -1
  53. package/daemon/context-packs/skills/pm/exec-summary/manifest.yaml +1 -1
  54. package/daemon/context-packs/skills/pm/office-hours/manifest.yaml +1 -1
  55. package/daemon/context-packs/skills/pm/plan-review/manifest.yaml +1 -1
  56. package/daemon/context-packs/skills/pm/requirements-writer/SKILL.md +21 -15
  57. package/daemon/context-packs/skills/pm/requirements-writer/manifest.yaml +3 -3
  58. package/daemon/context-packs/skills/pm/ui-mockup/manifest.yaml +1 -1
  59. package/daemon/context-packs/skills/pods/development-team/manifest.yaml +1 -1
  60. package/daemon/context-packs/skills/pods/orchestration-team/manifest.yaml +1 -1
  61. package/daemon/context-packs/skills/pods/oversight-team/manifest.yaml +1 -1
  62. package/daemon/context-packs/skills/pods/review-team/manifest.yaml +1 -1
  63. package/daemon/context-packs/skills/process/agent-browser/manifest.yaml +1 -1
  64. package/daemon/context-packs/skills/process/brainstorming/manifest.yaml +1 -1
  65. package/daemon/context-packs/skills/process/context-engineering/manifest.yaml +1 -1
  66. package/daemon/context-packs/skills/process/dogfood/manifest.yaml +1 -1
  67. package/daemon/context-packs/skills/process/executing-plans/manifest.yaml +1 -1
  68. package/daemon/context-packs/skills/process/frontend-design/manifest.yaml +1 -1
  69. package/daemon/context-packs/skills/process/systematic-debugging/manifest.yaml +1 -1
  70. package/daemon/context-packs/skills/process/test-driven-development/manifest.yaml +1 -1
  71. package/daemon/context-packs/skills/process/using-superpowers/manifest.yaml +1 -1
  72. package/daemon/context-packs/skills/process/verification-before-completion/manifest.yaml +1 -1
  73. package/daemon/context-packs/skills/process/writing-plans/manifest.yaml +1 -1
  74. package/daemon/context-packs/world-example/manifest.yaml +8 -0
  75. package/daemon/context-packs/world-example/your-world.md +37 -0
  76. package/daemon/dist/adapters/claude-code-adapter.d.ts +15 -0
  77. package/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
  78. package/daemon/dist/adapters/claude-code-adapter.js +57 -0
  79. package/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
  80. package/daemon/dist/adapters/tmux.d.ts +31 -0
  81. package/daemon/dist/adapters/tmux.d.ts.map +1 -1
  82. package/daemon/dist/adapters/tmux.js +31 -11
  83. package/daemon/dist/adapters/tmux.js.map +1 -1
  84. package/daemon/dist/build-info.js +3 -3
  85. package/daemon/dist/daemon-db-path.d.ts.map +1 -1
  86. package/daemon/dist/daemon-db-path.js +50 -2
  87. package/daemon/dist/daemon-db-path.js.map +1 -1
  88. package/daemon/dist/db/all-migrations.d.ts.map +1 -1
  89. package/daemon/dist/db/all-migrations.js +4 -0
  90. package/daemon/dist/db/all-migrations.js.map +1 -1
  91. package/daemon/dist/db/migrations/072_thread_seat_map.d.ts +3 -0
  92. package/daemon/dist/db/migrations/072_thread_seat_map.d.ts.map +1 -0
  93. package/daemon/dist/db/migrations/072_thread_seat_map.js +22 -0
  94. package/daemon/dist/db/migrations/072_thread_seat_map.js.map +1 -0
  95. package/daemon/dist/db/migrations/073_queue_transition_wakes.d.ts +3 -0
  96. package/daemon/dist/db/migrations/073_queue_transition_wakes.d.ts.map +1 -0
  97. package/daemon/dist/db/migrations/073_queue_transition_wakes.js +21 -0
  98. package/daemon/dist/db/migrations/073_queue_transition_wakes.js.map +1 -0
  99. package/daemon/dist/domain/activity-taxonomy.d.ts +112 -0
  100. package/daemon/dist/domain/activity-taxonomy.d.ts.map +1 -0
  101. package/daemon/dist/domain/activity-taxonomy.js +99 -0
  102. package/daemon/dist/domain/activity-taxonomy.js.map +1 -0
  103. package/daemon/dist/domain/bind-plan.d.ts +19 -0
  104. package/daemon/dist/domain/bind-plan.d.ts.map +1 -0
  105. package/daemon/dist/domain/bind-plan.js +25 -0
  106. package/daemon/dist/domain/bind-plan.js.map +1 -0
  107. package/daemon/dist/domain/event-bus.d.ts +6 -0
  108. package/daemon/dist/domain/event-bus.d.ts.map +1 -1
  109. package/daemon/dist/domain/event-bus.js +15 -5
  110. package/daemon/dist/domain/event-bus.js.map +1 -1
  111. package/daemon/dist/domain/gateway/gateway-process-main.d.ts.map +1 -1
  112. package/daemon/dist/domain/gateway/gateway-process-main.js +9 -0
  113. package/daemon/dist/domain/gateway/gateway-process-main.js.map +1 -1
  114. package/daemon/dist/domain/gateway/gateway-process.d.ts.map +1 -1
  115. package/daemon/dist/domain/gateway/gateway-process.js +9 -0
  116. package/daemon/dist/domain/gateway/gateway-process.js.map +1 -1
  117. package/daemon/dist/domain/gateway/gateway-subsystem.d.ts +80 -0
  118. package/daemon/dist/domain/gateway/gateway-subsystem.d.ts.map +1 -0
  119. package/daemon/dist/domain/gateway/gateway-subsystem.js +149 -0
  120. package/daemon/dist/domain/gateway/gateway-subsystem.js.map +1 -0
  121. package/daemon/dist/domain/gateway/human-registry.d.ts +109 -0
  122. package/daemon/dist/domain/gateway/human-registry.d.ts.map +1 -1
  123. package/daemon/dist/domain/gateway/human-registry.js +250 -0
  124. package/daemon/dist/domain/gateway/human-registry.js.map +1 -1
  125. package/{dist → daemon/dist/domain/gateway}/slack/config.d.ts +8 -5
  126. package/daemon/dist/domain/gateway/slack/config.d.ts.map +1 -0
  127. package/{dist → daemon/dist/domain/gateway}/slack/config.js +8 -6
  128. package/daemon/dist/domain/gateway/slack/config.js.map +1 -0
  129. package/{dist → daemon/dist/domain/gateway}/slack/inbound-admission.d.ts +1 -1
  130. package/daemon/dist/domain/gateway/slack/inbound-admission.d.ts.map +1 -0
  131. package/daemon/dist/domain/gateway/slack/inbound-admission.js.map +1 -0
  132. package/{dist → daemon/dist/domain/gateway}/slack/inbound.d.ts +14 -3
  133. package/daemon/dist/domain/gateway/slack/inbound.d.ts.map +1 -0
  134. package/{dist → daemon/dist/domain/gateway}/slack/inbound.js +6 -5
  135. package/daemon/dist/domain/gateway/slack/inbound.js.map +1 -0
  136. package/daemon/dist/domain/gateway/slack/message.d.ts +80 -0
  137. package/daemon/dist/domain/gateway/slack/message.d.ts.map +1 -0
  138. package/daemon/dist/domain/gateway/slack/message.js +164 -0
  139. package/daemon/dist/domain/gateway/slack/message.js.map +1 -0
  140. package/daemon/dist/domain/gateway/slack/outbound-driver.d.ts +54 -0
  141. package/daemon/dist/domain/gateway/slack/outbound-driver.d.ts.map +1 -0
  142. package/daemon/dist/domain/gateway/slack/outbound-driver.js +96 -0
  143. package/daemon/dist/domain/gateway/slack/outbound-driver.js.map +1 -0
  144. package/daemon/dist/domain/gateway/slack/queue-access.d.ts +53 -0
  145. package/daemon/dist/domain/gateway/slack/queue-access.d.ts.map +1 -0
  146. package/daemon/dist/domain/gateway/slack/queue-access.js +72 -0
  147. package/daemon/dist/domain/gateway/slack/queue-access.js.map +1 -0
  148. package/daemon/dist/domain/gateway/slack/secrets.d.ts.map +1 -0
  149. package/daemon/dist/domain/gateway/slack/secrets.js.map +1 -0
  150. package/daemon/dist/domain/gateway/slack/slack-api.d.ts +106 -0
  151. package/daemon/dist/domain/gateway/slack/slack-api.d.ts.map +1 -0
  152. package/daemon/dist/domain/gateway/slack/slack-api.js +198 -0
  153. package/daemon/dist/domain/gateway/slack/slack-api.js.map +1 -0
  154. package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts +47 -0
  155. package/daemon/dist/domain/gateway/slack/slack-delivery.d.ts.map +1 -0
  156. package/daemon/dist/domain/gateway/slack/slack-delivery.js +147 -0
  157. package/daemon/dist/domain/gateway/slack/slack-delivery.js.map +1 -0
  158. package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts +21 -0
  159. package/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts.map +1 -0
  160. package/daemon/dist/domain/gateway/slack/slack-subsystem.js +198 -0
  161. package/daemon/dist/domain/gateway/slack/slack-subsystem.js.map +1 -0
  162. package/daemon/dist/domain/gateway/slack/socket-inbound.d.ts +30 -0
  163. package/daemon/dist/domain/gateway/slack/socket-inbound.d.ts.map +1 -0
  164. package/daemon/dist/domain/gateway/slack/socket-inbound.js +99 -0
  165. package/daemon/dist/domain/gateway/slack/socket-inbound.js.map +1 -0
  166. package/daemon/dist/domain/gateway/slack/state-store.d.ts.map +1 -0
  167. package/daemon/dist/domain/gateway/slack/state-store.js.map +1 -0
  168. package/daemon/dist/domain/gateway/slack/thread-routing.d.ts +17 -0
  169. package/daemon/dist/domain/gateway/slack/thread-routing.d.ts.map +1 -0
  170. package/daemon/dist/domain/gateway/slack/thread-routing.js +35 -0
  171. package/daemon/dist/domain/gateway/slack/thread-routing.js.map +1 -0
  172. package/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts +56 -0
  173. package/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts.map +1 -0
  174. package/daemon/dist/domain/gateway/slack/thread-seat-map.js +103 -0
  175. package/daemon/dist/domain/gateway/slack/thread-seat-map.js.map +1 -0
  176. package/daemon/dist/domain/gateway/spawn-gateway.d.ts.map +1 -1
  177. package/daemon/dist/domain/gateway/spawn-gateway.js +9 -0
  178. package/daemon/dist/domain/gateway/spawn-gateway.js.map +1 -1
  179. package/daemon/dist/domain/gateway/transport.d.ts.map +1 -1
  180. package/daemon/dist/domain/gateway/transport.js +9 -0
  181. package/daemon/dist/domain/gateway/transport.js.map +1 -1
  182. package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
  183. package/daemon/dist/domain/node-inventory.js +20 -0
  184. package/daemon/dist/domain/node-inventory.js.map +1 -1
  185. package/daemon/dist/domain/parked-query.d.ts +81 -0
  186. package/daemon/dist/domain/parked-query.d.ts.map +1 -0
  187. package/daemon/dist/domain/parked-query.js +126 -0
  188. package/daemon/dist/domain/parked-query.js.map +1 -0
  189. package/daemon/dist/domain/plugin-discovery-service.d.ts +16 -0
  190. package/daemon/dist/domain/plugin-discovery-service.d.ts.map +1 -1
  191. package/daemon/dist/domain/plugin-discovery-service.js +175 -1
  192. package/daemon/dist/domain/plugin-discovery-service.js.map +1 -1
  193. package/daemon/dist/domain/plugin-vendor-service.d.ts +9 -5
  194. package/daemon/dist/domain/plugin-vendor-service.d.ts.map +1 -1
  195. package/daemon/dist/domain/plugin-vendor-service.js +101 -12
  196. package/daemon/dist/domain/plugin-vendor-service.js.map +1 -1
  197. package/daemon/dist/domain/queue-pickup.d.ts +38 -0
  198. package/daemon/dist/domain/queue-pickup.d.ts.map +1 -0
  199. package/daemon/dist/domain/queue-pickup.js +67 -0
  200. package/daemon/dist/domain/queue-pickup.js.map +1 -0
  201. package/daemon/dist/domain/queue-repository.d.ts +41 -11
  202. package/daemon/dist/domain/queue-repository.d.ts.map +1 -1
  203. package/daemon/dist/domain/queue-repository.js +316 -36
  204. package/daemon/dist/domain/queue-repository.js.map +1 -1
  205. package/daemon/dist/domain/queue-stuck-sweep.d.ts +77 -0
  206. package/daemon/dist/domain/queue-stuck-sweep.d.ts.map +1 -0
  207. package/daemon/dist/domain/queue-stuck-sweep.js +348 -0
  208. package/daemon/dist/domain/queue-stuck-sweep.js.map +1 -0
  209. package/daemon/dist/domain/queue-wake-ladder.d.ts +96 -0
  210. package/daemon/dist/domain/queue-wake-ladder.d.ts.map +1 -0
  211. package/daemon/dist/domain/queue-wake-ladder.js +533 -0
  212. package/daemon/dist/domain/queue-wake-ladder.js.map +1 -0
  213. package/daemon/dist/domain/queue-wake-repository.d.ts +37 -0
  214. package/daemon/dist/domain/queue-wake-repository.d.ts.map +1 -0
  215. package/daemon/dist/domain/queue-wake-repository.js +80 -0
  216. package/daemon/dist/domain/queue-wake-repository.js.map +1 -0
  217. package/daemon/dist/domain/rebuild-priming-chain.d.ts +28 -0
  218. package/daemon/dist/domain/rebuild-priming-chain.d.ts.map +1 -0
  219. package/daemon/dist/domain/rebuild-priming-chain.js +71 -0
  220. package/daemon/dist/domain/rebuild-priming-chain.js.map +1 -0
  221. package/daemon/dist/domain/reconciler.d.ts.map +1 -1
  222. package/daemon/dist/domain/reconciler.js +6 -1
  223. package/daemon/dist/domain/reconciler.js.map +1 -1
  224. package/daemon/dist/domain/review/compose.d.ts +3 -1
  225. package/daemon/dist/domain/review/compose.d.ts.map +1 -1
  226. package/daemon/dist/domain/review/compose.js +14 -8
  227. package/daemon/dist/domain/review/compose.js.map +1 -1
  228. package/daemon/dist/domain/review/gather.d.ts.map +1 -1
  229. package/daemon/dist/domain/review/gather.js +3 -1
  230. package/daemon/dist/domain/review/gather.js.map +1 -1
  231. package/daemon/dist/domain/rig-repository.d.ts +4 -0
  232. package/daemon/dist/domain/rig-repository.d.ts.map +1 -1
  233. package/daemon/dist/domain/rig-repository.js +9 -0
  234. package/daemon/dist/domain/rig-repository.js.map +1 -1
  235. package/daemon/dist/domain/rigspec-instantiator.d.ts +12 -0
  236. package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
  237. package/daemon/dist/domain/rigspec-instantiator.js +50 -0
  238. package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
  239. package/daemon/dist/domain/running-name-guard.d.ts +52 -0
  240. package/daemon/dist/domain/running-name-guard.d.ts.map +1 -0
  241. package/daemon/dist/domain/running-name-guard.js +34 -0
  242. package/daemon/dist/domain/running-name-guard.js.map +1 -0
  243. package/daemon/dist/domain/scope/plan-lock-artifacts.d.ts +6 -5
  244. package/daemon/dist/domain/scope/plan-lock-artifacts.d.ts.map +1 -1
  245. package/daemon/dist/domain/scope/plan-lock-artifacts.js +23 -20
  246. package/daemon/dist/domain/scope/plan-lock-artifacts.js.map +1 -1
  247. package/daemon/dist/domain/scope/scaffold-placeholder.d.ts +4 -5
  248. package/daemon/dist/domain/scope/scaffold-placeholder.d.ts.map +1 -1
  249. package/daemon/dist/domain/scope/scaffold-placeholder.js +6 -7
  250. package/daemon/dist/domain/scope/scaffold-placeholder.js.map +1 -1
  251. package/daemon/dist/domain/scope/scope-approve.d.ts +1 -1
  252. package/daemon/dist/domain/scope/scope-approve.d.ts.map +1 -1
  253. package/daemon/dist/domain/scope/scope-approve.js +5 -4
  254. package/daemon/dist/domain/scope/scope-approve.js.map +1 -1
  255. package/daemon/dist/domain/scope/scope-audit.d.ts +42 -3
  256. package/daemon/dist/domain/scope/scope-audit.d.ts.map +1 -1
  257. package/daemon/dist/domain/scope/scope-audit.js +78 -93
  258. package/daemon/dist/domain/scope/scope-audit.js.map +1 -1
  259. package/daemon/dist/domain/scope/scope-view-projection.d.ts.map +1 -1
  260. package/daemon/dist/domain/scope/scope-view-projection.js +7 -2
  261. package/daemon/dist/domain/scope/scope-view-projection.js.map +1 -1
  262. package/daemon/dist/domain/seat-activity-service.d.ts +91 -0
  263. package/daemon/dist/domain/seat-activity-service.d.ts.map +1 -1
  264. package/daemon/dist/domain/seat-activity-service.js +416 -1
  265. package/daemon/dist/domain/seat-activity-service.js.map +1 -1
  266. package/daemon/dist/domain/seat-handover-planner.d.ts +14 -0
  267. package/daemon/dist/domain/seat-handover-planner.d.ts.map +1 -1
  268. package/daemon/dist/domain/seat-handover-planner.js +14 -1
  269. package/daemon/dist/domain/seat-handover-planner.js.map +1 -1
  270. package/daemon/dist/domain/seat-handover-service.d.ts +54 -1
  271. package/daemon/dist/domain/seat-handover-service.d.ts.map +1 -1
  272. package/daemon/dist/domain/seat-handover-service.js +162 -19
  273. package/daemon/dist/domain/seat-handover-service.js.map +1 -1
  274. package/daemon/dist/domain/seat-lifecycle-service.d.ts +97 -0
  275. package/daemon/dist/domain/seat-lifecycle-service.d.ts.map +1 -0
  276. package/daemon/dist/domain/seat-lifecycle-service.js +312 -0
  277. package/daemon/dist/domain/seat-lifecycle-service.js.map +1 -0
  278. package/daemon/dist/domain/session-transport.d.ts +8 -5
  279. package/daemon/dist/domain/session-transport.d.ts.map +1 -1
  280. package/daemon/dist/domain/session-transport.js +40 -18
  281. package/daemon/dist/domain/session-transport.js.map +1 -1
  282. package/daemon/dist/domain/successor-session-launcher.d.ts +6 -1
  283. package/daemon/dist/domain/successor-session-launcher.d.ts.map +1 -1
  284. package/daemon/dist/domain/successor-session-launcher.js +3 -3
  285. package/daemon/dist/domain/successor-session-launcher.js.map +1 -1
  286. package/daemon/dist/domain/types.d.ts +69 -0
  287. package/daemon/dist/domain/types.d.ts.map +1 -1
  288. package/daemon/dist/domain/types.js.map +1 -1
  289. package/daemon/dist/domain/user-settings/settings-store.d.ts +1 -1
  290. package/daemon/dist/domain/user-settings/settings-store.d.ts.map +1 -1
  291. package/daemon/dist/domain/user-settings/settings-store.js +48 -0
  292. package/daemon/dist/domain/user-settings/settings-store.js.map +1 -1
  293. package/daemon/dist/domain/view-projector.d.ts +1 -1
  294. package/daemon/dist/domain/view-projector.d.ts.map +1 -1
  295. package/daemon/dist/domain/view-projector.js +41 -2
  296. package/daemon/dist/domain/view-projector.js.map +1 -1
  297. package/daemon/dist/domain/watchdog-policy-engine.d.ts +7 -0
  298. package/daemon/dist/domain/watchdog-policy-engine.d.ts.map +1 -1
  299. package/daemon/dist/domain/watchdog-policy-engine.js +3 -0
  300. package/daemon/dist/domain/watchdog-policy-engine.js.map +1 -1
  301. package/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts +4 -3
  302. package/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts.map +1 -1
  303. package/daemon/dist/domain/workspace/default-workspace-scaffold.js +56 -196
  304. package/daemon/dist/domain/workspace/default-workspace-scaffold.js.map +1 -1
  305. package/daemon/dist/domain/workspace/getting-started-narrative.js +1 -1
  306. package/daemon/dist/domain/workspace/getting-started-narrative.js.map +1 -1
  307. package/daemon/dist/domain/workspace/workspace-doctor.d.ts +8 -11
  308. package/daemon/dist/domain/workspace/workspace-doctor.d.ts.map +1 -1
  309. package/daemon/dist/domain/workspace/workspace-doctor.js +23 -25
  310. package/daemon/dist/domain/workspace/workspace-doctor.js.map +1 -1
  311. package/daemon/dist/gateway-slack-surface.d.ts +4 -0
  312. package/daemon/dist/gateway-slack-surface.d.ts.map +1 -0
  313. package/daemon/dist/gateway-slack-surface.js +8 -0
  314. package/daemon/dist/gateway-slack-surface.js.map +1 -0
  315. package/daemon/dist/index.d.ts +29 -0
  316. package/daemon/dist/index.d.ts.map +1 -1
  317. package/daemon/dist/index.js +99 -4
  318. package/daemon/dist/index.js.map +1 -1
  319. package/daemon/dist/lib/pane-envelope.d.ts +1 -1
  320. package/daemon/dist/lib/pane-envelope.d.ts.map +1 -1
  321. package/daemon/dist/lib/pane-envelope.js +8 -14
  322. package/daemon/dist/lib/pane-envelope.js.map +1 -1
  323. package/daemon/dist/routes/activity.d.ts +13 -0
  324. package/daemon/dist/routes/activity.d.ts.map +1 -1
  325. package/daemon/dist/routes/activity.js +186 -0
  326. package/daemon/dist/routes/activity.js.map +1 -1
  327. package/daemon/dist/routes/config.js +2 -2
  328. package/daemon/dist/routes/config.js.map +1 -1
  329. package/daemon/dist/routes/gateway.d.ts +3 -0
  330. package/daemon/dist/routes/gateway.d.ts.map +1 -0
  331. package/daemon/dist/routes/gateway.js +46 -0
  332. package/daemon/dist/routes/gateway.js.map +1 -0
  333. package/daemon/dist/routes/health-summary.d.ts.map +1 -1
  334. package/daemon/dist/routes/health-summary.js +8 -0
  335. package/daemon/dist/routes/health-summary.js.map +1 -1
  336. package/daemon/dist/routes/queue.d.ts.map +1 -1
  337. package/daemon/dist/routes/queue.js +32 -25
  338. package/daemon/dist/routes/queue.js.map +1 -1
  339. package/daemon/dist/routes/rigspec.js +20 -6
  340. package/daemon/dist/routes/rigspec.js.map +1 -1
  341. package/daemon/dist/routes/scope-audit.d.ts.map +1 -1
  342. package/daemon/dist/routes/scope-audit.js +72 -13
  343. package/daemon/dist/routes/scope-audit.js.map +1 -1
  344. package/daemon/dist/routes/seat.d.ts.map +1 -1
  345. package/daemon/dist/routes/seat.js +73 -0
  346. package/daemon/dist/routes/seat.js.map +1 -1
  347. package/daemon/dist/routes/transport.d.ts.map +1 -1
  348. package/daemon/dist/routes/transport.js +40 -36
  349. package/daemon/dist/routes/transport.js.map +1 -1
  350. package/daemon/dist/routes/up.js +21 -2
  351. package/daemon/dist/routes/up.js.map +1 -1
  352. package/daemon/dist/server.d.ts +17 -0
  353. package/daemon/dist/server.d.ts.map +1 -1
  354. package/daemon/dist/server.js +25 -4
  355. package/daemon/dist/server.js.map +1 -1
  356. package/daemon/dist/startup.d.ts +4 -0
  357. package/daemon/dist/startup.d.ts.map +1 -1
  358. package/daemon/dist/startup.js +33 -0
  359. package/daemon/dist/startup.js.map +1 -1
  360. package/daemon/docs/reference/agent-state-taxonomy.md +106 -0
  361. package/daemon/docs/reference/project-workspace.md +22 -14
  362. package/daemon/docs/reference/refocus-channel.md +27 -14
  363. package/daemon/docs/reference/sdlc-conventions.md +24 -13
  364. package/daemon/specs/agents/shared/skills/core/agent-startup-and-context-ingestion/SKILL.md +1 -1
  365. package/daemon/specs/agents/shared/skills/pm/requirements-writer/SKILL.md +21 -15
  366. package/daemon/specs/rigs/launch/kernel/agents/advisor/lead/guidance/role.md +1 -1
  367. package/dist/build-info.js +3 -3
  368. package/dist/cli-error.js +1 -1
  369. package/dist/cli-error.js.map +1 -1
  370. package/dist/commands/broadcast.js +6 -0
  371. package/dist/commands/broadcast.js.map +1 -1
  372. package/dist/commands/config-init-workspace.d.ts.map +1 -1
  373. package/dist/commands/config-init-workspace.js +32 -57
  374. package/dist/commands/config-init-workspace.js.map +1 -1
  375. package/dist/commands/config.d.ts.map +1 -1
  376. package/dist/commands/config.js +5 -0
  377. package/dist/commands/config.js.map +1 -1
  378. package/dist/commands/context.d.ts.map +1 -1
  379. package/dist/commands/context.js +13 -3
  380. package/dist/commands/context.js.map +1 -1
  381. package/dist/commands/daemon.d.ts.map +1 -1
  382. package/dist/commands/daemon.js +36 -5
  383. package/dist/commands/daemon.js.map +1 -1
  384. package/dist/commands/gateway.d.ts +19 -1
  385. package/dist/commands/gateway.d.ts.map +1 -1
  386. package/dist/commands/gateway.js +157 -33
  387. package/dist/commands/gateway.js.map +1 -1
  388. package/dist/commands/import.d.ts.map +1 -1
  389. package/dist/commands/import.js +10 -0
  390. package/dist/commands/import.js.map +1 -1
  391. package/dist/commands/parked.d.ts +3 -0
  392. package/dist/commands/parked.d.ts.map +1 -0
  393. package/dist/commands/parked.js +83 -0
  394. package/dist/commands/parked.js.map +1 -0
  395. package/dist/commands/proof.d.ts +2 -1
  396. package/dist/commands/proof.d.ts.map +1 -1
  397. package/dist/commands/proof.js +8 -8
  398. package/dist/commands/proof.js.map +1 -1
  399. package/dist/commands/ps.d.ts +10 -0
  400. package/dist/commands/ps.d.ts.map +1 -1
  401. package/dist/commands/ps.js +14 -3
  402. package/dist/commands/ps.js.map +1 -1
  403. package/dist/commands/queue.d.ts.map +1 -1
  404. package/dist/commands/queue.js +67 -16
  405. package/dist/commands/queue.js.map +1 -1
  406. package/dist/commands/scope.d.ts.map +1 -1
  407. package/dist/commands/scope.js +255 -136
  408. package/dist/commands/scope.js.map +1 -1
  409. package/dist/commands/seat.d.ts.map +1 -1
  410. package/dist/commands/seat.js +128 -10
  411. package/dist/commands/seat.js.map +1 -1
  412. package/dist/commands/send.d.ts +1 -1
  413. package/dist/commands/send.d.ts.map +1 -1
  414. package/dist/commands/send.js +237 -34
  415. package/dist/commands/send.js.map +1 -1
  416. package/dist/commands/slack.d.ts +14 -28
  417. package/dist/commands/slack.d.ts.map +1 -1
  418. package/dist/commands/slack.js +73 -187
  419. package/dist/commands/slack.js.map +1 -1
  420. package/dist/commands/start.d.ts +3 -0
  421. package/dist/commands/start.d.ts.map +1 -1
  422. package/dist/commands/start.js +12 -5
  423. package/dist/commands/start.js.map +1 -1
  424. package/dist/commands/up.d.ts.map +1 -1
  425. package/dist/commands/up.js +19 -4
  426. package/dist/commands/up.js.map +1 -1
  427. package/dist/commands/view.d.ts +4 -2
  428. package/dist/commands/view.d.ts.map +1 -1
  429. package/dist/commands/view.js +1 -1
  430. package/dist/commands/view.js.map +1 -1
  431. package/dist/commands/walk.d.ts +1 -1
  432. package/dist/commands/walk.d.ts.map +1 -1
  433. package/dist/commands/walk.js +20 -10
  434. package/dist/commands/walk.js.map +1 -1
  435. package/dist/commands/watchdog.d.ts.map +1 -1
  436. package/dist/commands/watchdog.js +2 -1
  437. package/dist/commands/watchdog.js.map +1 -1
  438. package/dist/commands/workspace.js +1 -1
  439. package/dist/config-store.d.ts +15 -1
  440. package/dist/config-store.d.ts.map +1 -1
  441. package/dist/config-store.js +60 -0
  442. package/dist/config-store.js.map +1 -1
  443. package/dist/cross-host-target.d.ts.map +1 -1
  444. package/dist/cross-host-target.js +5 -4
  445. package/dist/cross-host-target.js.map +1 -1
  446. package/dist/daemon-lifecycle.d.ts +45 -3
  447. package/dist/daemon-lifecycle.d.ts.map +1 -1
  448. package/dist/daemon-lifecycle.js +126 -0
  449. package/dist/daemon-lifecycle.js.map +1 -1
  450. package/dist/index.d.ts.map +1 -1
  451. package/dist/index.js +2 -0
  452. package/dist/index.js.map +1 -1
  453. package/dist/lib/scope/capability-delta.d.ts +9 -0
  454. package/dist/lib/scope/capability-delta.d.ts.map +1 -0
  455. package/dist/lib/scope/capability-delta.js +73 -0
  456. package/dist/lib/scope/capability-delta.js.map +1 -0
  457. package/dist/lib/scope/scaffold-placeholder.d.ts +4 -5
  458. package/dist/lib/scope/scaffold-placeholder.d.ts.map +1 -1
  459. package/dist/lib/scope/scaffold-placeholder.js +6 -7
  460. package/dist/lib/scope/scaffold-placeholder.js.map +1 -1
  461. package/dist/lib/scope/scope-audit.d.ts +42 -3
  462. package/dist/lib/scope/scope-audit.d.ts.map +1 -1
  463. package/dist/lib/scope/scope-audit.js +78 -93
  464. package/dist/lib/scope/scope-audit.js.map +1 -1
  465. package/dist/lib/scope/scope-fs.d.ts +18 -14
  466. package/dist/lib/scope/scope-fs.d.ts.map +1 -1
  467. package/dist/lib/scope/scope-fs.js +60 -29
  468. package/dist/lib/scope/scope-fs.js.map +1 -1
  469. package/dist/lib/scope/templates.d.ts +17 -17
  470. package/dist/lib/scope/templates.d.ts.map +1 -1
  471. package/dist/lib/scope/templates.js +35 -39
  472. package/dist/lib/scope/templates.js.map +1 -1
  473. package/dist/lib/scope-templates/backlog-deprecation.md +3 -1
  474. package/dist/lib/scope-templates/backlog-tech-debt.md +3 -1
  475. package/dist/lib/scope-templates/bug-fix.md +3 -1
  476. package/dist/lib/scope-templates/capability-delta.md +60 -0
  477. package/dist/lib/scope-templates/mission-placeholder.md +9 -40
  478. package/dist/lib/scope-templates/mission-progress.md +5 -6
  479. package/dist/lib/scope-templates/mission-release.md +9 -40
  480. package/dist/lib/scope-templates/notes.md +14 -0
  481. package/dist/lib/scope-templates/placeholder.md +3 -1
  482. package/dist/lib/scope-templates/proof.md +1 -1
  483. package/dist/lib/scope-templates/release-feature.md +3 -1
  484. package/dist/lib/scope-templates/research.md +3 -1
  485. package/dist/lib/scope-templates/slice-progress.md +4 -5
  486. package/node_modules/@openrig/daemon/dist/adapters/claude-code-adapter.d.ts +15 -0
  487. package/node_modules/@openrig/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
  488. package/node_modules/@openrig/daemon/dist/adapters/claude-code-adapter.js +57 -0
  489. package/node_modules/@openrig/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
  490. package/node_modules/@openrig/daemon/dist/adapters/tmux.d.ts +31 -0
  491. package/node_modules/@openrig/daemon/dist/adapters/tmux.d.ts.map +1 -1
  492. package/node_modules/@openrig/daemon/dist/adapters/tmux.js +31 -11
  493. package/node_modules/@openrig/daemon/dist/adapters/tmux.js.map +1 -1
  494. package/node_modules/@openrig/daemon/dist/build-info.js +3 -3
  495. package/node_modules/@openrig/daemon/dist/daemon-db-path.d.ts.map +1 -1
  496. package/node_modules/@openrig/daemon/dist/daemon-db-path.js +50 -2
  497. package/node_modules/@openrig/daemon/dist/daemon-db-path.js.map +1 -1
  498. package/node_modules/@openrig/daemon/dist/db/all-migrations.d.ts.map +1 -1
  499. package/node_modules/@openrig/daemon/dist/db/all-migrations.js +4 -0
  500. package/node_modules/@openrig/daemon/dist/db/all-migrations.js.map +1 -1
  501. package/node_modules/@openrig/daemon/dist/db/migrations/072_thread_seat_map.d.ts +3 -0
  502. package/node_modules/@openrig/daemon/dist/db/migrations/072_thread_seat_map.d.ts.map +1 -0
  503. package/node_modules/@openrig/daemon/dist/db/migrations/072_thread_seat_map.js +22 -0
  504. package/node_modules/@openrig/daemon/dist/db/migrations/072_thread_seat_map.js.map +1 -0
  505. package/node_modules/@openrig/daemon/dist/db/migrations/073_queue_transition_wakes.d.ts +3 -0
  506. package/node_modules/@openrig/daemon/dist/db/migrations/073_queue_transition_wakes.d.ts.map +1 -0
  507. package/node_modules/@openrig/daemon/dist/db/migrations/073_queue_transition_wakes.js +21 -0
  508. package/node_modules/@openrig/daemon/dist/db/migrations/073_queue_transition_wakes.js.map +1 -0
  509. package/node_modules/@openrig/daemon/dist/domain/activity-taxonomy.d.ts +112 -0
  510. package/node_modules/@openrig/daemon/dist/domain/activity-taxonomy.d.ts.map +1 -0
  511. package/node_modules/@openrig/daemon/dist/domain/activity-taxonomy.js +99 -0
  512. package/node_modules/@openrig/daemon/dist/domain/activity-taxonomy.js.map +1 -0
  513. package/node_modules/@openrig/daemon/dist/domain/bind-plan.d.ts +19 -0
  514. package/node_modules/@openrig/daemon/dist/domain/bind-plan.d.ts.map +1 -0
  515. package/node_modules/@openrig/daemon/dist/domain/bind-plan.js +25 -0
  516. package/node_modules/@openrig/daemon/dist/domain/bind-plan.js.map +1 -0
  517. package/node_modules/@openrig/daemon/dist/domain/event-bus.d.ts +6 -0
  518. package/node_modules/@openrig/daemon/dist/domain/event-bus.d.ts.map +1 -1
  519. package/node_modules/@openrig/daemon/dist/domain/event-bus.js +15 -5
  520. package/node_modules/@openrig/daemon/dist/domain/event-bus.js.map +1 -1
  521. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-process-main.d.ts.map +1 -1
  522. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-process-main.js +9 -0
  523. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-process-main.js.map +1 -1
  524. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-process.d.ts.map +1 -1
  525. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-process.js +9 -0
  526. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-process.js.map +1 -1
  527. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-subsystem.d.ts +80 -0
  528. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-subsystem.d.ts.map +1 -0
  529. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-subsystem.js +149 -0
  530. package/node_modules/@openrig/daemon/dist/domain/gateway/gateway-subsystem.js.map +1 -0
  531. package/node_modules/@openrig/daemon/dist/domain/gateway/human-registry.d.ts +109 -0
  532. package/node_modules/@openrig/daemon/dist/domain/gateway/human-registry.d.ts.map +1 -1
  533. package/node_modules/@openrig/daemon/dist/domain/gateway/human-registry.js +250 -0
  534. package/node_modules/@openrig/daemon/dist/domain/gateway/human-registry.js.map +1 -1
  535. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/config.d.ts +44 -0
  536. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/config.d.ts.map +1 -0
  537. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/config.js +62 -0
  538. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/config.js.map +1 -0
  539. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound-admission.d.ts +8 -0
  540. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound-admission.d.ts.map +1 -0
  541. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound-admission.js +20 -0
  542. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound-admission.js.map +1 -0
  543. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound.d.ts +113 -0
  544. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound.d.ts.map +1 -0
  545. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound.js +146 -0
  546. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/inbound.js.map +1 -0
  547. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/message.d.ts +80 -0
  548. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/message.d.ts.map +1 -0
  549. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/message.js +164 -0
  550. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/message.js.map +1 -0
  551. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/outbound-driver.d.ts +54 -0
  552. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/outbound-driver.d.ts.map +1 -0
  553. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/outbound-driver.js +96 -0
  554. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/outbound-driver.js.map +1 -0
  555. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.d.ts +53 -0
  556. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.d.ts.map +1 -0
  557. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.js +72 -0
  558. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/queue-access.js.map +1 -0
  559. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/secrets.d.ts +21 -0
  560. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/secrets.d.ts.map +1 -0
  561. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/secrets.js +73 -0
  562. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/secrets.js.map +1 -0
  563. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-api.d.ts +106 -0
  564. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-api.d.ts.map +1 -0
  565. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-api.js +198 -0
  566. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-api.js.map +1 -0
  567. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-delivery.d.ts +47 -0
  568. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-delivery.d.ts.map +1 -0
  569. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-delivery.js +147 -0
  570. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-delivery.js.map +1 -0
  571. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts +21 -0
  572. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-subsystem.d.ts.map +1 -0
  573. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-subsystem.js +198 -0
  574. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/slack-subsystem.js.map +1 -0
  575. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/socket-inbound.d.ts +30 -0
  576. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/socket-inbound.d.ts.map +1 -0
  577. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/socket-inbound.js +99 -0
  578. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/socket-inbound.js.map +1 -0
  579. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/state-store.d.ts +62 -0
  580. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/state-store.d.ts.map +1 -0
  581. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/state-store.js +132 -0
  582. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/state-store.js.map +1 -0
  583. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-routing.d.ts +17 -0
  584. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-routing.d.ts.map +1 -0
  585. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-routing.js +35 -0
  586. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-routing.js.map +1 -0
  587. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts +56 -0
  588. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-seat-map.d.ts.map +1 -0
  589. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-seat-map.js +103 -0
  590. package/node_modules/@openrig/daemon/dist/domain/gateway/slack/thread-seat-map.js.map +1 -0
  591. package/node_modules/@openrig/daemon/dist/domain/gateway/spawn-gateway.d.ts.map +1 -1
  592. package/node_modules/@openrig/daemon/dist/domain/gateway/spawn-gateway.js +9 -0
  593. package/node_modules/@openrig/daemon/dist/domain/gateway/spawn-gateway.js.map +1 -1
  594. package/node_modules/@openrig/daemon/dist/domain/gateway/transport.d.ts.map +1 -1
  595. package/node_modules/@openrig/daemon/dist/domain/gateway/transport.js +9 -0
  596. package/node_modules/@openrig/daemon/dist/domain/gateway/transport.js.map +1 -1
  597. package/node_modules/@openrig/daemon/dist/domain/node-inventory.d.ts.map +1 -1
  598. package/node_modules/@openrig/daemon/dist/domain/node-inventory.js +20 -0
  599. package/node_modules/@openrig/daemon/dist/domain/node-inventory.js.map +1 -1
  600. package/node_modules/@openrig/daemon/dist/domain/parked-query.d.ts +81 -0
  601. package/node_modules/@openrig/daemon/dist/domain/parked-query.d.ts.map +1 -0
  602. package/node_modules/@openrig/daemon/dist/domain/parked-query.js +126 -0
  603. package/node_modules/@openrig/daemon/dist/domain/parked-query.js.map +1 -0
  604. package/node_modules/@openrig/daemon/dist/domain/plugin-discovery-service.d.ts +16 -0
  605. package/node_modules/@openrig/daemon/dist/domain/plugin-discovery-service.d.ts.map +1 -1
  606. package/node_modules/@openrig/daemon/dist/domain/plugin-discovery-service.js +175 -1
  607. package/node_modules/@openrig/daemon/dist/domain/plugin-discovery-service.js.map +1 -1
  608. package/node_modules/@openrig/daemon/dist/domain/plugin-vendor-service.d.ts +9 -5
  609. package/node_modules/@openrig/daemon/dist/domain/plugin-vendor-service.d.ts.map +1 -1
  610. package/node_modules/@openrig/daemon/dist/domain/plugin-vendor-service.js +101 -12
  611. package/node_modules/@openrig/daemon/dist/domain/plugin-vendor-service.js.map +1 -1
  612. package/node_modules/@openrig/daemon/dist/domain/queue-pickup.d.ts +38 -0
  613. package/node_modules/@openrig/daemon/dist/domain/queue-pickup.d.ts.map +1 -0
  614. package/node_modules/@openrig/daemon/dist/domain/queue-pickup.js +67 -0
  615. package/node_modules/@openrig/daemon/dist/domain/queue-pickup.js.map +1 -0
  616. package/node_modules/@openrig/daemon/dist/domain/queue-repository.d.ts +41 -11
  617. package/node_modules/@openrig/daemon/dist/domain/queue-repository.d.ts.map +1 -1
  618. package/node_modules/@openrig/daemon/dist/domain/queue-repository.js +316 -36
  619. package/node_modules/@openrig/daemon/dist/domain/queue-repository.js.map +1 -1
  620. package/node_modules/@openrig/daemon/dist/domain/queue-stuck-sweep.d.ts +77 -0
  621. package/node_modules/@openrig/daemon/dist/domain/queue-stuck-sweep.d.ts.map +1 -0
  622. package/node_modules/@openrig/daemon/dist/domain/queue-stuck-sweep.js +348 -0
  623. package/node_modules/@openrig/daemon/dist/domain/queue-stuck-sweep.js.map +1 -0
  624. package/node_modules/@openrig/daemon/dist/domain/queue-wake-ladder.d.ts +96 -0
  625. package/node_modules/@openrig/daemon/dist/domain/queue-wake-ladder.d.ts.map +1 -0
  626. package/node_modules/@openrig/daemon/dist/domain/queue-wake-ladder.js +533 -0
  627. package/node_modules/@openrig/daemon/dist/domain/queue-wake-ladder.js.map +1 -0
  628. package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.d.ts +37 -0
  629. package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.d.ts.map +1 -0
  630. package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.js +80 -0
  631. package/node_modules/@openrig/daemon/dist/domain/queue-wake-repository.js.map +1 -0
  632. package/node_modules/@openrig/daemon/dist/domain/rebuild-priming-chain.d.ts +28 -0
  633. package/node_modules/@openrig/daemon/dist/domain/rebuild-priming-chain.d.ts.map +1 -0
  634. package/node_modules/@openrig/daemon/dist/domain/rebuild-priming-chain.js +71 -0
  635. package/node_modules/@openrig/daemon/dist/domain/rebuild-priming-chain.js.map +1 -0
  636. package/node_modules/@openrig/daemon/dist/domain/reconciler.d.ts.map +1 -1
  637. package/node_modules/@openrig/daemon/dist/domain/reconciler.js +6 -1
  638. package/node_modules/@openrig/daemon/dist/domain/reconciler.js.map +1 -1
  639. package/node_modules/@openrig/daemon/dist/domain/review/compose.d.ts +3 -1
  640. package/node_modules/@openrig/daemon/dist/domain/review/compose.d.ts.map +1 -1
  641. package/node_modules/@openrig/daemon/dist/domain/review/compose.js +14 -8
  642. package/node_modules/@openrig/daemon/dist/domain/review/compose.js.map +1 -1
  643. package/node_modules/@openrig/daemon/dist/domain/review/gather.d.ts.map +1 -1
  644. package/node_modules/@openrig/daemon/dist/domain/review/gather.js +3 -1
  645. package/node_modules/@openrig/daemon/dist/domain/review/gather.js.map +1 -1
  646. package/node_modules/@openrig/daemon/dist/domain/rig-repository.d.ts +4 -0
  647. package/node_modules/@openrig/daemon/dist/domain/rig-repository.d.ts.map +1 -1
  648. package/node_modules/@openrig/daemon/dist/domain/rig-repository.js +9 -0
  649. package/node_modules/@openrig/daemon/dist/domain/rig-repository.js.map +1 -1
  650. package/node_modules/@openrig/daemon/dist/domain/rigspec-instantiator.d.ts +12 -0
  651. package/node_modules/@openrig/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
  652. package/node_modules/@openrig/daemon/dist/domain/rigspec-instantiator.js +50 -0
  653. package/node_modules/@openrig/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
  654. package/node_modules/@openrig/daemon/dist/domain/running-name-guard.d.ts +52 -0
  655. package/node_modules/@openrig/daemon/dist/domain/running-name-guard.d.ts.map +1 -0
  656. package/node_modules/@openrig/daemon/dist/domain/running-name-guard.js +34 -0
  657. package/node_modules/@openrig/daemon/dist/domain/running-name-guard.js.map +1 -0
  658. package/node_modules/@openrig/daemon/dist/domain/scope/plan-lock-artifacts.d.ts +6 -5
  659. package/node_modules/@openrig/daemon/dist/domain/scope/plan-lock-artifacts.d.ts.map +1 -1
  660. package/node_modules/@openrig/daemon/dist/domain/scope/plan-lock-artifacts.js +23 -20
  661. package/node_modules/@openrig/daemon/dist/domain/scope/plan-lock-artifacts.js.map +1 -1
  662. package/node_modules/@openrig/daemon/dist/domain/scope/scaffold-placeholder.d.ts +4 -5
  663. package/node_modules/@openrig/daemon/dist/domain/scope/scaffold-placeholder.d.ts.map +1 -1
  664. package/node_modules/@openrig/daemon/dist/domain/scope/scaffold-placeholder.js +6 -7
  665. package/node_modules/@openrig/daemon/dist/domain/scope/scaffold-placeholder.js.map +1 -1
  666. package/node_modules/@openrig/daemon/dist/domain/scope/scope-approve.d.ts +1 -1
  667. package/node_modules/@openrig/daemon/dist/domain/scope/scope-approve.d.ts.map +1 -1
  668. package/node_modules/@openrig/daemon/dist/domain/scope/scope-approve.js +5 -4
  669. package/node_modules/@openrig/daemon/dist/domain/scope/scope-approve.js.map +1 -1
  670. package/node_modules/@openrig/daemon/dist/domain/scope/scope-audit.d.ts +42 -3
  671. package/node_modules/@openrig/daemon/dist/domain/scope/scope-audit.d.ts.map +1 -1
  672. package/node_modules/@openrig/daemon/dist/domain/scope/scope-audit.js +78 -93
  673. package/node_modules/@openrig/daemon/dist/domain/scope/scope-audit.js.map +1 -1
  674. package/node_modules/@openrig/daemon/dist/domain/scope/scope-view-projection.d.ts.map +1 -1
  675. package/node_modules/@openrig/daemon/dist/domain/scope/scope-view-projection.js +7 -2
  676. package/node_modules/@openrig/daemon/dist/domain/scope/scope-view-projection.js.map +1 -1
  677. package/node_modules/@openrig/daemon/dist/domain/seat-activity-service.d.ts +91 -0
  678. package/node_modules/@openrig/daemon/dist/domain/seat-activity-service.d.ts.map +1 -1
  679. package/node_modules/@openrig/daemon/dist/domain/seat-activity-service.js +416 -1
  680. package/node_modules/@openrig/daemon/dist/domain/seat-activity-service.js.map +1 -1
  681. package/node_modules/@openrig/daemon/dist/domain/seat-handover-planner.d.ts +14 -0
  682. package/node_modules/@openrig/daemon/dist/domain/seat-handover-planner.d.ts.map +1 -1
  683. package/node_modules/@openrig/daemon/dist/domain/seat-handover-planner.js +14 -1
  684. package/node_modules/@openrig/daemon/dist/domain/seat-handover-planner.js.map +1 -1
  685. package/node_modules/@openrig/daemon/dist/domain/seat-handover-service.d.ts +54 -1
  686. package/node_modules/@openrig/daemon/dist/domain/seat-handover-service.d.ts.map +1 -1
  687. package/node_modules/@openrig/daemon/dist/domain/seat-handover-service.js +162 -19
  688. package/node_modules/@openrig/daemon/dist/domain/seat-handover-service.js.map +1 -1
  689. package/node_modules/@openrig/daemon/dist/domain/seat-lifecycle-service.d.ts +97 -0
  690. package/node_modules/@openrig/daemon/dist/domain/seat-lifecycle-service.d.ts.map +1 -0
  691. package/node_modules/@openrig/daemon/dist/domain/seat-lifecycle-service.js +312 -0
  692. package/node_modules/@openrig/daemon/dist/domain/seat-lifecycle-service.js.map +1 -0
  693. package/node_modules/@openrig/daemon/dist/domain/session-transport.d.ts +8 -5
  694. package/node_modules/@openrig/daemon/dist/domain/session-transport.d.ts.map +1 -1
  695. package/node_modules/@openrig/daemon/dist/domain/session-transport.js +40 -18
  696. package/node_modules/@openrig/daemon/dist/domain/session-transport.js.map +1 -1
  697. package/node_modules/@openrig/daemon/dist/domain/successor-session-launcher.d.ts +6 -1
  698. package/node_modules/@openrig/daemon/dist/domain/successor-session-launcher.d.ts.map +1 -1
  699. package/node_modules/@openrig/daemon/dist/domain/successor-session-launcher.js +3 -3
  700. package/node_modules/@openrig/daemon/dist/domain/successor-session-launcher.js.map +1 -1
  701. package/node_modules/@openrig/daemon/dist/domain/types.d.ts +69 -0
  702. package/node_modules/@openrig/daemon/dist/domain/types.d.ts.map +1 -1
  703. package/node_modules/@openrig/daemon/dist/domain/types.js.map +1 -1
  704. package/node_modules/@openrig/daemon/dist/domain/user-settings/settings-store.d.ts +1 -1
  705. package/node_modules/@openrig/daemon/dist/domain/user-settings/settings-store.d.ts.map +1 -1
  706. package/node_modules/@openrig/daemon/dist/domain/user-settings/settings-store.js +48 -0
  707. package/node_modules/@openrig/daemon/dist/domain/user-settings/settings-store.js.map +1 -1
  708. package/node_modules/@openrig/daemon/dist/domain/view-projector.d.ts +1 -1
  709. package/node_modules/@openrig/daemon/dist/domain/view-projector.d.ts.map +1 -1
  710. package/node_modules/@openrig/daemon/dist/domain/view-projector.js +41 -2
  711. package/node_modules/@openrig/daemon/dist/domain/view-projector.js.map +1 -1
  712. package/node_modules/@openrig/daemon/dist/domain/watchdog-policy-engine.d.ts +7 -0
  713. package/node_modules/@openrig/daemon/dist/domain/watchdog-policy-engine.d.ts.map +1 -1
  714. package/node_modules/@openrig/daemon/dist/domain/watchdog-policy-engine.js +3 -0
  715. package/node_modules/@openrig/daemon/dist/domain/watchdog-policy-engine.js.map +1 -1
  716. package/node_modules/@openrig/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts +4 -3
  717. package/node_modules/@openrig/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts.map +1 -1
  718. package/node_modules/@openrig/daemon/dist/domain/workspace/default-workspace-scaffold.js +56 -196
  719. package/node_modules/@openrig/daemon/dist/domain/workspace/default-workspace-scaffold.js.map +1 -1
  720. package/node_modules/@openrig/daemon/dist/domain/workspace/getting-started-narrative.js +1 -1
  721. package/node_modules/@openrig/daemon/dist/domain/workspace/getting-started-narrative.js.map +1 -1
  722. package/node_modules/@openrig/daemon/dist/domain/workspace/workspace-doctor.d.ts +8 -11
  723. package/node_modules/@openrig/daemon/dist/domain/workspace/workspace-doctor.d.ts.map +1 -1
  724. package/node_modules/@openrig/daemon/dist/domain/workspace/workspace-doctor.js +23 -25
  725. package/node_modules/@openrig/daemon/dist/domain/workspace/workspace-doctor.js.map +1 -1
  726. package/node_modules/@openrig/daemon/dist/gateway-slack-surface.d.ts +4 -0
  727. package/node_modules/@openrig/daemon/dist/gateway-slack-surface.d.ts.map +1 -0
  728. package/node_modules/@openrig/daemon/dist/gateway-slack-surface.js +8 -0
  729. package/node_modules/@openrig/daemon/dist/gateway-slack-surface.js.map +1 -0
  730. package/node_modules/@openrig/daemon/dist/index.d.ts +29 -0
  731. package/node_modules/@openrig/daemon/dist/index.d.ts.map +1 -1
  732. package/node_modules/@openrig/daemon/dist/index.js +99 -4
  733. package/node_modules/@openrig/daemon/dist/index.js.map +1 -1
  734. package/node_modules/@openrig/daemon/dist/lib/pane-envelope.d.ts +1 -1
  735. package/node_modules/@openrig/daemon/dist/lib/pane-envelope.d.ts.map +1 -1
  736. package/node_modules/@openrig/daemon/dist/lib/pane-envelope.js +8 -14
  737. package/node_modules/@openrig/daemon/dist/lib/pane-envelope.js.map +1 -1
  738. package/node_modules/@openrig/daemon/dist/routes/activity.d.ts +13 -0
  739. package/node_modules/@openrig/daemon/dist/routes/activity.d.ts.map +1 -1
  740. package/node_modules/@openrig/daemon/dist/routes/activity.js +186 -0
  741. package/node_modules/@openrig/daemon/dist/routes/activity.js.map +1 -1
  742. package/node_modules/@openrig/daemon/dist/routes/config.js +2 -2
  743. package/node_modules/@openrig/daemon/dist/routes/config.js.map +1 -1
  744. package/node_modules/@openrig/daemon/dist/routes/gateway.d.ts +3 -0
  745. package/node_modules/@openrig/daemon/dist/routes/gateway.d.ts.map +1 -0
  746. package/node_modules/@openrig/daemon/dist/routes/gateway.js +46 -0
  747. package/node_modules/@openrig/daemon/dist/routes/gateway.js.map +1 -0
  748. package/node_modules/@openrig/daemon/dist/routes/health-summary.d.ts.map +1 -1
  749. package/node_modules/@openrig/daemon/dist/routes/health-summary.js +8 -0
  750. package/node_modules/@openrig/daemon/dist/routes/health-summary.js.map +1 -1
  751. package/node_modules/@openrig/daemon/dist/routes/queue.d.ts.map +1 -1
  752. package/node_modules/@openrig/daemon/dist/routes/queue.js +32 -25
  753. package/node_modules/@openrig/daemon/dist/routes/queue.js.map +1 -1
  754. package/node_modules/@openrig/daemon/dist/routes/rigspec.js +20 -6
  755. package/node_modules/@openrig/daemon/dist/routes/rigspec.js.map +1 -1
  756. package/node_modules/@openrig/daemon/dist/routes/scope-audit.d.ts.map +1 -1
  757. package/node_modules/@openrig/daemon/dist/routes/scope-audit.js +72 -13
  758. package/node_modules/@openrig/daemon/dist/routes/scope-audit.js.map +1 -1
  759. package/node_modules/@openrig/daemon/dist/routes/seat.d.ts.map +1 -1
  760. package/node_modules/@openrig/daemon/dist/routes/seat.js +73 -0
  761. package/node_modules/@openrig/daemon/dist/routes/seat.js.map +1 -1
  762. package/node_modules/@openrig/daemon/dist/routes/transport.d.ts.map +1 -1
  763. package/node_modules/@openrig/daemon/dist/routes/transport.js +40 -36
  764. package/node_modules/@openrig/daemon/dist/routes/transport.js.map +1 -1
  765. package/node_modules/@openrig/daemon/dist/routes/up.js +21 -2
  766. package/node_modules/@openrig/daemon/dist/routes/up.js.map +1 -1
  767. package/node_modules/@openrig/daemon/dist/server.d.ts +17 -0
  768. package/node_modules/@openrig/daemon/dist/server.d.ts.map +1 -1
  769. package/node_modules/@openrig/daemon/dist/server.js +25 -4
  770. package/node_modules/@openrig/daemon/dist/server.js.map +1 -1
  771. package/node_modules/@openrig/daemon/dist/startup.d.ts +4 -0
  772. package/node_modules/@openrig/daemon/dist/startup.d.ts.map +1 -1
  773. package/node_modules/@openrig/daemon/dist/startup.js +33 -0
  774. package/node_modules/@openrig/daemon/dist/startup.js.map +1 -1
  775. package/node_modules/@openrig/daemon/package.json +5 -1
  776. package/package.json +1 -1
  777. package/tui/dist/daemon-client.d.ts +5 -0
  778. package/tui/dist/daemon-client.d.ts.map +1 -1
  779. package/tui/dist/daemon-client.js +17 -0
  780. package/tui/dist/daemon-client.js.map +1 -1
  781. package/tui/dist/hydrate.d.ts.map +1 -1
  782. package/tui/dist/hydrate.js +12 -4
  783. package/tui/dist/hydrate.js.map +1 -1
  784. package/tui/dist/live-events.d.ts +21 -0
  785. package/tui/dist/live-events.d.ts.map +1 -0
  786. package/tui/dist/live-events.js +88 -0
  787. package/tui/dist/live-events.js.map +1 -0
  788. package/tui/dist/live.js +1 -1
  789. package/tui/dist/main.js +27 -8
  790. package/tui/dist/main.js.map +1 -1
  791. package/tui/dist/refresh.d.ts +10 -1
  792. package/tui/dist/refresh.d.ts.map +1 -1
  793. package/tui/dist/refresh.js +22 -2
  794. package/tui/dist/refresh.js.map +1 -1
  795. package/daemon/context-packs/world/install/01-world-from-primitives.md +0 -97
  796. package/daemon/context-packs/world/install/02-permission-self-sleep.md +0 -141
  797. package/daemon/context-packs/world/install/03-what-this-is-for.md +0 -86
  798. package/daemon/context-packs/world/install/04-ontology.md +0 -790
  799. package/daemon/context-packs/world/install/05-harness-power-use.md +0 -355
  800. package/daemon/context-packs/world/install/06-a-competent-turn.md +0 -225
  801. package/daemon/context-packs/world/install/manifest.yaml +0 -125
  802. package/dist/lib/scope-templates/mission-brief.md +0 -20
  803. package/dist/lib/scope-templates/mission-notes.md +0 -102
  804. package/dist/slack/config.d.ts.map +0 -1
  805. package/dist/slack/config.js.map +0 -1
  806. package/dist/slack/connector-server.d.ts +0 -31
  807. package/dist/slack/connector-server.d.ts.map +0 -1
  808. package/dist/slack/connector-server.js +0 -108
  809. package/dist/slack/connector-server.js.map +0 -1
  810. package/dist/slack/inbound-admission.d.ts.map +0 -1
  811. package/dist/slack/inbound-admission.js.map +0 -1
  812. package/dist/slack/inbound.d.ts.map +0 -1
  813. package/dist/slack/inbound.js.map +0 -1
  814. package/dist/slack/message.d.ts +0 -39
  815. package/dist/slack/message.d.ts.map +0 -1
  816. package/dist/slack/message.js +0 -88
  817. package/dist/slack/message.js.map +0 -1
  818. package/dist/slack/outbound.d.ts +0 -39
  819. package/dist/slack/outbound.d.ts.map +0 -1
  820. package/dist/slack/outbound.js +0 -63
  821. package/dist/slack/outbound.js.map +0 -1
  822. package/dist/slack/queue-bridge.d.ts +0 -61
  823. package/dist/slack/queue-bridge.d.ts.map +0 -1
  824. package/dist/slack/queue-bridge.js +0 -114
  825. package/dist/slack/queue-bridge.js.map +0 -1
  826. package/dist/slack/secrets.d.ts.map +0 -1
  827. package/dist/slack/secrets.js.map +0 -1
  828. package/dist/slack/slack-api.d.ts +0 -49
  829. package/dist/slack/slack-api.d.ts.map +0 -1
  830. package/dist/slack/slack-api.js +0 -110
  831. package/dist/slack/slack-api.js.map +0 -1
  832. package/dist/slack/slack-delivery.d.ts +0 -14
  833. package/dist/slack/slack-delivery.d.ts.map +0 -1
  834. package/dist/slack/slack-delivery.js +0 -28
  835. package/dist/slack/slack-delivery.js.map +0 -1
  836. package/dist/slack/state-store.d.ts.map +0 -1
  837. package/dist/slack/state-store.js.map +0 -1
  838. /package/{dist → daemon/dist/domain/gateway}/slack/inbound-admission.js +0 -0
  839. /package/{dist → daemon/dist/domain/gateway}/slack/secrets.d.ts +0 -0
  840. /package/{dist → daemon/dist/domain/gateway}/slack/secrets.js +0 -0
  841. /package/{dist → daemon/dist/domain/gateway}/slack/state-store.d.ts +0 -0
  842. /package/{dist → daemon/dist/domain/gateway}/slack/state-store.js +0 -0
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import type { AuditFinding } from "./scope-audit.js";
2
+ /**
3
+ * Derive expiry advisories for versioned capability deltas at a mission root.
4
+ * The event is deliberately conjunctive: canon must name the exact delta in its
5
+ * header AND a distinct successor file must exist. Missing or unreadable inputs
6
+ * remain unknown/live and never turn the advisory into a gate.
7
+ */
8
+ export declare function capabilityDeltaExpiryFindings(missionDir: string): AuditFinding[];
9
+ //# sourceMappingURL=capability-delta.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capability-delta.d.ts","sourceRoot":"","sources":["../../../src/lib/scope/capability-delta.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAgBrD;;;;;GAKG;AACH,wBAAgB,6BAA6B,CAAC,UAAU,EAAE,MAAM,GAAG,YAAY,EAAE,CAmDhF"}
@@ -0,0 +1,73 @@
1
+ import fs from "node:fs";
2
+ import path from "node:path";
3
+ import { splitFrontmatter } from "./scope-fs.js";
4
+ const CAPABILITY_DELTA_FILE = /^CAPABILITY-DELTA-v.+\.md$/;
5
+ function asRecord(value) {
6
+ return value && typeof value === "object" && !Array.isArray(value)
7
+ ? value
8
+ : null;
9
+ }
10
+ function documentHeader(content) {
11
+ const firstSection = content.search(/^##\s+/m);
12
+ return firstSection === -1 ? content : content.slice(0, firstSection);
13
+ }
14
+ /**
15
+ * Derive expiry advisories for versioned capability deltas at a mission root.
16
+ * The event is deliberately conjunctive: canon must name the exact delta in its
17
+ * header AND a distinct successor file must exist. Missing or unreadable inputs
18
+ * remain unknown/live and never turn the advisory into a gate.
19
+ */
20
+ export function capabilityDeltaExpiryFindings(missionDir) {
21
+ let filenames;
22
+ try {
23
+ filenames = fs.readdirSync(missionDir)
24
+ .filter((filename) => CAPABILITY_DELTA_FILE.test(filename))
25
+ .sort();
26
+ }
27
+ catch {
28
+ return [];
29
+ }
30
+ const findings = [];
31
+ for (const filename of filenames) {
32
+ const deltaPath = path.join(missionDir, filename);
33
+ let frontmatter;
34
+ try {
35
+ frontmatter = splitFrontmatter(fs.readFileSync(deltaPath, "utf8")).frontmatter;
36
+ }
37
+ catch {
38
+ continue;
39
+ }
40
+ const identity = typeof frontmatter.capability_delta === "string"
41
+ ? frontmatter.capability_delta.trim()
42
+ : "";
43
+ const expiry = asRecord(frontmatter.expiry);
44
+ const canonRef = typeof expiry?.canon_path === "string" ? expiry.canon_path.trim() : "";
45
+ const successorRef = typeof expiry?.successor_path === "string" ? expiry.successor_path.trim() : "";
46
+ if (!identity || !canonRef || !successorRef)
47
+ continue;
48
+ const canonPath = path.resolve(path.dirname(deltaPath), canonRef);
49
+ const successorPath = path.resolve(path.dirname(deltaPath), successorRef);
50
+ if (successorPath === deltaPath || !fs.existsSync(canonPath) || !fs.existsSync(successorPath))
51
+ continue;
52
+ let canonNamesDelta = false;
53
+ try {
54
+ canonNamesDelta = documentHeader(fs.readFileSync(canonPath, "utf8"))
55
+ .split(/[^A-Za-z0-9._-]+/)
56
+ .includes(identity);
57
+ }
58
+ catch {
59
+ continue;
60
+ }
61
+ if (!canonNamesDelta)
62
+ continue;
63
+ findings.push({
64
+ kind: "expired_capability_delta",
65
+ severity: "medium",
66
+ path: deltaPath,
67
+ message: `Capability delta ${identity} reached its expiry event: canon header ${canonRef} names it and successor ${successorRef} exists; it is citable no more.`,
68
+ remediation: `Stop citing ${filename}; use the successor delta and archive this release-specific artifact when the release procedure calls for it.`,
69
+ });
70
+ }
71
+ return findings;
72
+ }
73
+ //# sourceMappingURL=capability-delta.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"capability-delta.js","sourceRoot":"","sources":["../../../src/lib/scope/capability-delta.ts"],"names":[],"mappings":"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"}
@@ -42,11 +42,10 @@ export declare const GENERIC_SCAFFOLD_ACCEPTANCE: readonly string[];
42
42
  * while compose/audit fell back to README with no SPEC path — evidence
43
43
  * recorded against one contract, displayed against another. Selection order
44
44
  * over SECTION BODIES (each reader keeps its own extractor):
45
- * authored PRD -> "prd" (canonical, the first-face ruling)
46
- * pristine PRD -> authored SPEC -> "spec"
47
- * -> else authored README -> "readme"
48
- * -> else null (nothing authored; never the placeholder)
49
- * absent PRD -> authored SPEC -> authored README -> null
45
+ * authored SPEC -> "spec" (the one current contract)
46
+ * absent/pristine SPEC -> authored PRD -> "prd" (legacy fallback)
47
+ * -> authored README -> "readme" (older fallback)
48
+ * -> null
50
49
  * "Authored" = present and NOT isPristineScaffoldSection. Consumers parse
51
50
  * items from the SELECTED source's body with their shipped parsers. */
52
51
  export declare function selectProofContractBody(args: {
@@ -1 +1 @@
1
- {"version":3,"file":"scaffold-placeholder.d.ts","sourceRoot":"","sources":["../../../src/lib/scope/scaffold-placeholder.ts"],"names":[],"mappings":"AAuBA;+EAC+E;AAC/E,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE/D;AAED;;;;;;;;0CAQ0C;AAC1C,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAOpE;AAED;;;;;;oCAMoC;AACpC,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAQpE;AAED;;;;;;;;;6DAS6D;AAC7D,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAWtE;AAED;;;4EAG4E;AAC5E,eAAO,MAAM,2BAA2B,EAAE,SAAS,MAAM,EAIxD,CAAC;AAEF;;;;;;;;;;;;;wEAawE;AACxE,wBAAgB,uBAAuB,CAAC,IAAI,EAAE;IAC5C,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,GAAG;IAAE,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAMpE"}
1
+ {"version":3,"file":"scaffold-placeholder.d.ts","sourceRoot":"","sources":["../../../src/lib/scope/scaffold-placeholder.ts"],"names":[],"mappings":"AAuBA;+EAC+E;AAC/E,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAE/D;AAED;;;;;;;;0CAQ0C;AAC1C,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAOpE;AAED;;;;;;oCAMoC;AACpC,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAQpE;AAED;;;;;;;;;6DAS6D;AAC7D,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAWtE;AAED;;;4EAG4E;AAC5E,eAAO,MAAM,2BAA2B,EAAE,SAAS,MAAM,EAIxD,CAAC;AAEF;;;;;;;;;;;;wEAYwE;AACxE,wBAAgB,uBAAuB,CAAC,IAAI,EAAE;IAC5C,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B,GAAG;IAAE,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,QAAQ,GAAG,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAMpE"}
@@ -102,19 +102,18 @@ export const GENERIC_SCAFFOLD_ACCEPTANCE = [
102
102
  * while compose/audit fell back to README with no SPEC path — evidence
103
103
  * recorded against one contract, displayed against another. Selection order
104
104
  * over SECTION BODIES (each reader keeps its own extractor):
105
- * authored PRD -> "prd" (canonical, the first-face ruling)
106
- * pristine PRD -> authored SPEC -> "spec"
107
- * -> else authored README -> "readme"
108
- * -> else null (nothing authored; never the placeholder)
109
- * absent PRD -> authored SPEC -> authored README -> null
105
+ * authored SPEC -> "spec" (the one current contract)
106
+ * absent/pristine SPEC -> authored PRD -> "prd" (legacy fallback)
107
+ * -> authored README -> "readme" (older fallback)
108
+ * -> null
110
109
  * "Authored" = present and NOT isPristineScaffoldSection. Consumers parse
111
110
  * items from the SELECTED source's body with their shipped parsers. */
112
111
  export function selectProofContractBody(args) {
113
112
  const authored = (b) => b !== null && !isPristineScaffoldSection(b);
114
- if (authored(args.prdBody))
115
- return { source: "prd", body: args.prdBody };
116
113
  if (authored(args.specBody))
117
114
  return { source: "spec", body: args.specBody };
115
+ if (authored(args.prdBody))
116
+ return { source: "prd", body: args.prdBody };
118
117
  if (authored(args.readmeBody))
119
118
  return { source: "readme", body: args.readmeBody };
120
119
  return { source: null, body: null };
@@ -1 +1 @@
1
- {"version":3,"file":"scaffold-placeholder.js","sourceRoot":"","sources":["../../../src/lib/scope/scaffold-placeholder.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scaffold-placeholder.js","sourceRoot":"","sources":["../../../src/lib/scope/scaffold-placeholder.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  export type RailStatus = "present" | "missing" | "malformed" | "readme-only";
2
2
  export type FindingSeverity = "high" | "medium" | "low" | "info";
3
- export type FindingKind = "missing_progress" | "registration_ghost" | "missing_id" | "id_convention_violation" | "orphan_progress" | "missing_mission_brief" | "malformed_mission_brief" | "missing_mission_notes" | "missing_proof" | "progress_not_updated_on_commit" | "proof_artifact_c1_invalid" | "missing_impl_prd" | "missing_intent_section" | "mini_requirements_missing_or_malformed" | "proof_contract_missing_or_malformed" | "ui_slice_missing_mockup" | "shadowed_node_file";
3
+ export type FindingKind = "missing_progress" | "registration_ghost" | "missing_id" | "id_convention_violation" | "orphan_progress" | "missing_mission_brief" | "malformed_mission_brief" | "missing_mission_notes" | "missing_proof" | "proof_artifact_c1_invalid" | "missing_impl_prd" | "missing_intent_section" | "mini_requirements_missing_or_malformed" | "proof_contract_missing_or_malformed" | "ui_slice_missing_mockup" | "expired_capability_delta" | "shadowed_node_file";
4
4
  export interface AuditFinding {
5
5
  kind: FindingKind;
6
6
  severity: FindingSeverity;
@@ -28,13 +28,12 @@ export interface ScopeAuditInput {
28
28
  proofDirHasEntries?: boolean;
29
29
  hasProofPacket?: boolean;
30
30
  sliceStatus?: string | null;
31
- sliceTouchedByRecentCommit?: boolean;
32
- progressTouchedByRecentCommit?: boolean;
33
31
  proofArtifacts?: Array<{
34
32
  path: string;
35
33
  frontmatterRaw: string | null;
36
34
  }>;
37
35
  implementationPrdExists?: boolean;
36
+ nodeFileName?: "SPEC.md" | "README.md";
38
37
  readmeContent?: string | null;
39
38
  implementationPrdContent?: string | null;
40
39
  }
@@ -43,6 +42,46 @@ export interface ScopeAuditResult {
43
42
  findings: AuditFinding[];
44
43
  frontmatterError: string | null;
45
44
  }
45
+ export interface MissionDependencyGraph {
46
+ mission: {
47
+ id: string | null;
48
+ name: string;
49
+ dependsOn: string[];
50
+ };
51
+ nodes: Array<{
52
+ id: string;
53
+ name: string;
54
+ dependsOn: string[];
55
+ }>;
56
+ ready: string[];
57
+ waiting: Array<{
58
+ id: string;
59
+ on: string[];
60
+ }>;
61
+ advisories: Array<{
62
+ id: string;
63
+ dependency?: string;
64
+ kind: "invalid_field" | "invalid_dependency" | "outside_parent" | "missing_sibling" | "missing_id";
65
+ message: string;
66
+ }>;
67
+ }
68
+ export interface MissionDependencyGraphInput {
69
+ mission: {
70
+ id: string | null;
71
+ name: string;
72
+ dependsOn: unknown;
73
+ };
74
+ slices: Array<{
75
+ id: string | null;
76
+ name: string;
77
+ dependsOn: unknown;
78
+ active: boolean;
79
+ }>;
80
+ }
81
+ /** Pure advisory graph derivation shared by mission graph and both audit surfaces.
82
+ * Unknown, stale, malformed, and cross-parent edges are reported and ignored:
83
+ * dependency data can steer build order but never gate execution. */
84
+ export declare function deriveMissionDependencyGraph(input: MissionDependencyGraphInput): MissionDependencyGraph;
46
85
  export declare const MISSION_BRIEF_HEADERS: string[];
47
86
  export declare function classifyScopeItem(input: ScopeAuditInput): ScopeAuditResult;
48
87
  //# sourceMappingURL=scope-audit.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scope-audit.d.ts","sourceRoot":"","sources":["../../../src/lib/scope/scope-audit.ts"],"names":[],"mappings":"AAIA,MAAM,MAAM,UAAU,GAAG,SAAS,GAAG,SAAS,GAAG,WAAW,GAAG,aAAa,CAAC;AAC7E,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAC;AACjE,MAAM,MAAM,WAAW,GACnB,kBAAkB,GAClB,oBAAoB,GACpB,YAAY,GACZ,yBAAyB,GACzB,iBAAiB,GACjB,uBAAuB,GACvB,yBAAyB,GACzB,uBAAuB,GACvB,eAAe,GACf,gCAAgC,GAGhC,2BAA2B,GAC3B,kBAAkB,GAIlB,wBAAwB,GACxB,wCAAwC,GACxC,qCAAqC,GACrC,yBAAyB,GAIzB,oBAAoB,CAAC;AAEzB,MAAM,WAAW,YAAY;IAC3B,IAAI,EAAE,WAAW,CAAC;IAClB,QAAQ,EAAE,eAAe,CAAC;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,MAAM,GAAG,IAAI,CAAC;IAClB,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,kBAAkB,EAAE,OAAO,CAAC;IAC5B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,eAAe,EAAE,OAAO,CAAC;IACzB,KAAK,EAAE,SAAS,GAAG,OAAO,CAAC;IAC3B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACpC,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAQ5B,0BAA0B,CAAC,EAAE,OAAO,CAAC;IACrC,6BAA6B,CAAC,EAAE,OAAO,CAAC;IAMxC,cAAc,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;IAGxE,uBAAuB,CAAC,EAAE,OAAO,CAAC;IAKlC,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,wBAAwB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1C;AAED,MAAM,WAAW,gBAAgB;IAC/B,UAAU,EAAE,UAAU,CAAC;IACvB,QAAQ,EAAE,YAAY,EAAE,CAAC;IACzB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAMD,eAAO,MAAM,qBAAqB,UAA4E,CAAC;AA2H/G,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,eAAe,GAAG,gBAAgB,CA4T1E"}
1
+ {"version":3,"file":"scope-audit.d.ts","sourceRoot":"","sources":["../../../src/lib/scope/scope-audit.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,59 @@
1
1
  import * as YAML from "yaml";
2
2
  import { isMissionDotId, isSliceDotId } from "./dot-id.js";
3
3
  import { isScaffoldPlaceholderText, hasAuthoredNumberedItem, isPristineScaffoldSection } from "./scaffold-placeholder.js";
4
+ /** Pure advisory graph derivation shared by mission graph and both audit surfaces.
5
+ * Unknown, stale, malformed, and cross-parent edges are reported and ignored:
6
+ * dependency data can steer build order but never gate execution. */
7
+ export function deriveMissionDependencyGraph(input) {
8
+ const active = input.slices.filter((slice) => slice.active);
9
+ const allIds = new Set(input.slices.flatMap((slice) => slice.id ? [slice.id] : []));
10
+ const activeIds = new Set(active.flatMap((slice) => slice.id ? [slice.id] : []));
11
+ const advisories = [];
12
+ const nodes = [];
13
+ const ready = [];
14
+ const waiting = [];
15
+ for (const slice of active) {
16
+ if (!slice.id) {
17
+ advisories.push({ id: slice.name, kind: "missing_id", message: "Slice has no dot-ID; it cannot participate in the dependency graph." });
18
+ continue;
19
+ }
20
+ const dependencies = [];
21
+ if (slice.dependsOn !== undefined && !Array.isArray(slice.dependsOn)) {
22
+ advisories.push({ id: slice.id, kind: "invalid_field", message: "depends_on must be a list of sibling dot-IDs; the value was ignored." });
23
+ }
24
+ for (const value of Array.isArray(slice.dependsOn) ? slice.dependsOn : []) {
25
+ if (typeof value !== "string" || !isSliceDotId(value)) {
26
+ advisories.push({ id: slice.id, dependency: String(value), kind: "invalid_dependency", message: "Dependency is not a slice dot-ID and was ignored." });
27
+ continue;
28
+ }
29
+ if (input.mission.id && !value.startsWith(`${input.mission.id}.`)) {
30
+ advisories.push({ id: slice.id, dependency: value, kind: "outside_parent", message: "Dependency is outside this mission and was ignored." });
31
+ continue;
32
+ }
33
+ if (!allIds.has(value)) {
34
+ advisories.push({ id: slice.id, dependency: value, kind: "missing_sibling", message: "Dependency does not resolve to a sibling and was ignored." });
35
+ continue;
36
+ }
37
+ dependencies.push(value);
38
+ }
39
+ nodes.push({ id: slice.id, name: slice.name, dependsOn: dependencies });
40
+ const unmet = dependencies.filter((dependency) => activeIds.has(dependency));
41
+ if (unmet.length === 0)
42
+ ready.push(slice.id);
43
+ else
44
+ waiting.push({ id: slice.id, on: unmet });
45
+ }
46
+ const missionDependsOn = Array.isArray(input.mission.dependsOn)
47
+ ? input.mission.dependsOn.filter((value) => typeof value === "string")
48
+ : [];
49
+ return {
50
+ mission: { id: input.mission.id, name: input.mission.name, dependsOn: missionDependsOn },
51
+ nodes,
52
+ ready,
53
+ waiting,
54
+ advisories,
55
+ };
56
+ }
4
57
  // OPR.0.4.4.20 FR-8: exported so the review brief-spine writer conforms to
5
58
  // the SAME pinned exact-order schema this audit enforces (parity by
6
59
  // construction — the generated output can never trip malformed_mission_brief
@@ -9,21 +62,6 @@ export const MISSION_BRIEF_HEADERS = ["What & why", "Building", "Progress", "Pro
9
62
  function childPath(parent, child) {
10
63
  return parent.endsWith("/") ? `${parent}${child}` : `${parent}/${child}`;
11
64
  }
12
- function missionBriefFix() {
13
- return "Create/populate MISSION_BRIEF.md using the slice-16 schema: # <Mission name> — Brief, then ## What & why, ## Building, ## Progress, ## Proven, ## Needs you, ## Pointers.";
14
- }
15
- function missionBriefConforms(content) {
16
- const lines = content.split(/\r?\n/);
17
- const title = lines.find((line) => /^#\s+/.test(line) && !/^##\s+/.test(line))?.trim() ?? "";
18
- if (!/^#\s+.+\s+—\s+Brief\s*$/.test(title))
19
- return false;
20
- const h2s = lines
21
- .map((line) => /^##\s+(.+?)\s*$/.exec(line)?.[1]?.trim() ?? null)
22
- .filter((header) => header !== null);
23
- if (h2s.length < MISSION_BRIEF_HEADERS.length)
24
- return false;
25
- return MISSION_BRIEF_HEADERS.every((header, idx) => h2s[idx] === header);
26
- }
27
65
  function parseStatusFromFrontmatter(raw) {
28
66
  if (raw === null)
29
67
  return null;
@@ -49,21 +87,6 @@ function statusRequiresProof(status) {
49
87
  || normalized.includes("proven")
50
88
  || normalized.includes("promoted");
51
89
  }
52
- // OPR.0.4.4.19 FR-10 (C7) — the statusRequiresProof pattern applied one
53
- // phase earlier: a slice whose status implies SPECCED/BUILDING (or later)
54
- // must carry IMPLEMENTATION-PRD.md at its root ("no build without a
55
- // specifying doc"). Shaping / pre-spec statuses are NOT violations.
56
- function statusRequiresSpec(status) {
57
- if (!status)
58
- return false;
59
- const normalized = status.toLowerCase().trim();
60
- return normalized.includes("build")
61
- || normalized.includes("implement")
62
- || normalized.includes("in-progress")
63
- || normalized.includes("review")
64
- || normalized.includes("qa")
65
- || statusRequiresProof(normalized);
66
- }
67
90
  // OPR.0.4.4.19 FR-10 (C1) — the ratified closed sets (BR-4; source of truth
68
91
  // for the drop path lives in the CLI proof command; this mirrored file
69
92
  // carries its own copy because both scope-audit copies must stay
@@ -129,6 +152,7 @@ function missionIsActive(status) {
129
152
  export function classifyScopeItem(input) {
130
153
  const findings = [];
131
154
  let frontmatterError = null;
155
+ let parsedFrontmatter = {};
132
156
  let railStatus;
133
157
  // Rail status
134
158
  if (input.readmeOnlyMarker) {
@@ -193,6 +217,7 @@ export function classifyScopeItem(input) {
193
217
  const fm = parsed && typeof parsed === "object" && !Array.isArray(parsed)
194
218
  ? parsed
195
219
  : {};
220
+ parsedFrontmatter = fm;
196
221
  const id = typeof fm.id === "string" ? fm.id : null;
197
222
  if (!id) {
198
223
  findings.push({
@@ -218,36 +243,15 @@ export function classifyScopeItem(input) {
218
243
  }
219
244
  }
220
245
  if (input.level === "mission") {
221
- const briefPath = input.missionBriefPath ?? childPath(input.path, "MISSION_BRIEF.md");
222
- if (input.missionBriefExists === false) {
223
- findings.push({
224
- kind: "missing_mission_brief",
225
- severity: "medium",
226
- path: briefPath,
227
- message: "Mission has no root MISSION_BRIEF.md, so the Steering tab human-facing brief degrades.",
228
- remediation: missionBriefFix(),
229
- });
230
- }
231
- else if (input.missionBriefExists === true
232
- && typeof input.missionBriefContent === "string"
233
- && !missionBriefConforms(input.missionBriefContent)) {
234
- findings.push({
235
- kind: "malformed_mission_brief",
236
- severity: "medium",
237
- path: briefPath,
238
- message: "MISSION_BRIEF.md does not match the canonical MISSION_BRIEF.md section order.",
239
- remediation: missionBriefFix(),
240
- });
241
- }
242
246
  if (input.missionNotesExists === false
243
247
  && missionIsActive(parseStatusFromFrontmatter(input.readmeFrontmatterRaw))) {
244
- const notesPath = input.missionNotesPath ?? childPath(input.path, "MISSION_NOTES.md");
248
+ const notesPath = input.missionNotesPath ?? childPath(input.path, "NOTES.md");
245
249
  findings.push({
246
250
  kind: "missing_mission_notes",
247
251
  severity: "low",
248
252
  path: notesPath,
249
- message: "Mission has no MISSION_NOTES.md continuity file.",
250
- remediation: "Add MISSION_NOTES.md at the mission root and populate it per the mission-notes convention.",
253
+ message: "Mission has no NOTES.md context file.",
254
+ remediation: "Add NOTES.md at the mission root. Existing MISSION_NOTES.md remains a readable legacy fallback.",
251
255
  });
252
256
  }
253
257
  }
@@ -284,31 +288,25 @@ export function classifyScopeItem(input) {
284
288
  });
285
289
  }
286
290
  }
287
- // OPR.0.4.4.19 FR-10 (C7 backstop) — a specced/building-or-later slice
288
- // must carry IMPLEMENTATION-PRD.md (the pinned expected filename) at its
289
- // root. Status-gated: shaping is not a violation. Inert when the caller
290
- // provided no fs context (implementationPrdExists undefined).
291
- if (input.implementationPrdExists === false && statusRequiresSpec(status)) {
292
- findings.push({
293
- kind: "missing_impl_prd",
294
- severity: "medium",
295
- path: childPath(input.path, "IMPLEMENTATION-PRD.md"),
296
- message: `Slice status "${status}" implies specced/building but there is no IMPLEMENTATION-PRD.md at the slice root (C7: no build without a specifying doc).`,
297
- remediation: "Author (or relocate) the slice's IMPLEMENTATION-PRD.md at the slice root — the pinned C7 filename — before building continues.",
298
- });
299
- }
300
291
  // OPR.0.4.4.23 — SDLC convention-section advisories (SSOT:
301
292
  // docs/reference/sdlc-conventions.md). Structurally fail-open: the
302
293
  // audit command flips its exit code on HIGH findings only, and these
303
294
  // are low/info by construction — they record and advise, never gate.
304
295
  // Inert when the caller provided no content context (undefined inputs).
305
- if (typeof input.readmeContent === "string" && !hasH2(input.readmeContent, "Intent")) {
296
+ const frontmatterIntent = typeof parsedFrontmatter.intent === "string"
297
+ && parsedFrontmatter.intent.trim().length > 0;
298
+ const currentSpec = input.nodeFileName === "SPEC.md"
299
+ || (input.nodeFileName === undefined && frontmatterIntent);
300
+ const nodeFileName = currentSpec ? "SPEC.md" : "README.md";
301
+ if (typeof input.readmeContent === "string" && !frontmatterIntent && !hasH2(input.readmeContent, "Intent")) {
306
302
  findings.push({
307
303
  kind: "missing_intent_section",
308
304
  severity: "low",
309
- path: childPath(input.path, "README.md"),
310
- message: "Slice README has no `## Intent` section, so the Living Notes UI cannot project its INTENT section.",
311
- remediation: "Add `## Intent` carrying the recorded intent verbatim (conventions SSOT: docs/reference/sdlc-conventions.md (installed: $OPENRIG_HOME/reference/sdlc-conventions.md); `rig scope slice create` scaffolds it).",
305
+ path: childPath(input.path, nodeFileName),
306
+ message: `${nodeFileName} has no frontmatter \`intent:\` or legacy \`## Intent\` section.`,
307
+ remediation: currentSpec
308
+ ? "Add a non-empty `intent:` to SPEC.md frontmatter."
309
+ : "Add a non-empty `intent:` or retain a legacy `## Intent` section in README.md.",
312
310
  });
313
311
  }
314
312
  // PM dogfood #1 (qitem-20260720015700-630eef64) — per-SECTION source
@@ -322,6 +320,9 @@ export function classifyScopeItem(input) {
322
320
  const prdContentStr = typeof input.implementationPrdContent === "string" ? input.implementationPrdContent : null;
323
321
  const readmeContentStr = typeof input.readmeContent === "string" ? input.readmeContent : null;
324
322
  const pickSectionSource = (heading) => {
323
+ if (currentSpec && readmeContentStr !== null) {
324
+ return { body: h2Body(readmeContentStr, heading), path: childPath(input.path, nodeFileName) };
325
+ }
325
326
  if (prdContentStr !== null) {
326
327
  const prdBody = h2Body(prdContentStr, heading);
327
328
  if (isPristineScaffoldSection(prdBody) && readmeContentStr !== null) {
@@ -358,9 +359,9 @@ export function classifyScopeItem(input) {
358
359
  severity: "low",
359
360
  path: miniSource.path,
360
361
  message: miniBody === null
361
- ? "No `## Mini-requirements` section — the Living Notes PLAN section has no concise requirements tier to project."
362
+ ? "No `## Mini-requirements` section — the scope plan has no concise requirements tier."
362
363
  : "`## Mini-requirements` carries no numbered items (`1. …`) — the one-glance requirement tier is where approval starts.",
363
- remediation: "Add `## Mini-requirements` with a numbered list of observable outcomes (conventions SSOT: docs/reference/sdlc-conventions.md (installed: $OPENRIG_HOME/reference/sdlc-conventions.md); for a small slice this may BE the whole PRD).",
364
+ remediation: `Add \`## Mini-requirements\` to ${nodeFileName} with a numbered list of observable outcomes (for a small slice this may be the whole specification).`,
364
365
  });
365
366
  }
366
367
  }
@@ -380,9 +381,9 @@ export function classifyScopeItem(input) {
380
381
  severity: "low",
381
382
  path: contractSource.path,
382
383
  message: contractBody === null
383
- ? "No `## Proof contract` section — the DELIVERED pairing has no promised-deliverables source to join proof against."
384
- : "`## Proof contract` carries no checkbox deliverables (`- [ ] …`) the DELIVERED pairing joins proof against those items.",
385
- remediation: "Add `## Proof contract` with one checkbox line per promised deliverable, written as an observable outcome (conventions SSOT: docs/reference/sdlc-conventions.md (installed: $OPENRIG_HOME/reference/sdlc-conventions.md)).",
384
+ ? "No `## Proof contract` section — proof has no promised-deliverables source to pair against."
385
+ : "`## Proof contract` carries no checkbox deliverables (`- [ ] …`) for proof to pair against.",
386
+ remediation: `Add \`## Proof contract\` to ${nodeFileName} with one checkbox line per promised deliverable, written as an observable outcome (conventions SSOT: docs/reference/sdlc-conventions.md (installed: $OPENRIG_HOME/reference/sdlc-conventions.md)).`,
386
387
  });
387
388
  }
388
389
  if (typeof input.readmeContent === "string") {
@@ -400,29 +401,13 @@ export function classifyScopeItem(input) {
400
401
  findings.push({
401
402
  kind: "ui_slice_missing_mockup",
402
403
  severity: "info",
403
- path: childPath(input.path, "README.md"),
404
+ path: childPath(input.path, nodeFileName),
404
405
  message: "Slice declares an Intent visual (UI slice) but no mockup reference is present — a UI slice with no mockup in its locked set is an incomplete plan.",
405
406
  remediation: "Attach the planned mockup: an image ref in `## Intent visual` or a plannedRef on the proof-contract deliverable (conventions SSOT: docs/reference/sdlc-conventions.md §3 (installed: $OPENRIG_HOME/reference/sdlc-conventions.md §3)).",
406
407
  });
407
408
  }
408
409
  }
409
410
  }
410
- // committed-without-PROGRESS. Fires only on POSITIVE evidence: the most
411
- // recent commit (HEAD) touched this slice AND definitively did NOT touch its
412
- // PROGRESS.md. Inputs are git-derived and CLI-only; when git context is
413
- // unavailable they are left undefined and this branch is inert (no
414
- // false-green, no false-positive). See ScopeAuditInput.
415
- if (input.sliceTouchedByRecentCommit === true
416
- && input.progressTouchedByRecentCommit === false) {
417
- const progressPath = childPath(input.path, "PROGRESS.md");
418
- findings.push({
419
- kind: "progress_not_updated_on_commit",
420
- severity: "medium",
421
- path: progressPath,
422
- message: "The most recent commit (HEAD) touched this slice but did not update PROGRESS.md.",
423
- remediation: "Update PROGRESS.md to reflect the committed change (one line per outcome) and amend or add a follow-up commit. Per the mission-slice-sop, PROGRESS.md is updated on every commit — fix the flag, do not suppress it.",
424
- });
425
- }
426
411
  }
427
412
  return { railStatus, findings, frontmatterError };
428
413
  }