@openrig/cli 0.1.12 → 0.3.0

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 (856) hide show
  1. package/daemon/assets/openrig-activity-hook-relay.cjs +104 -0
  2. package/daemon/dist/adapters/claude-code-adapter.d.ts +24 -6
  3. package/daemon/dist/adapters/claude-code-adapter.d.ts.map +1 -1
  4. package/daemon/dist/adapters/claude-code-adapter.js +221 -65
  5. package/daemon/dist/adapters/claude-code-adapter.js.map +1 -1
  6. package/daemon/dist/adapters/claude-resume.d.ts +5 -0
  7. package/daemon/dist/adapters/claude-resume.d.ts.map +1 -1
  8. package/daemon/dist/adapters/claude-resume.js +13 -0
  9. package/daemon/dist/adapters/claude-resume.js.map +1 -1
  10. package/daemon/dist/adapters/codex-resume.d.ts +8 -1
  11. package/daemon/dist/adapters/codex-resume.d.ts.map +1 -1
  12. package/daemon/dist/adapters/codex-resume.js +74 -5
  13. package/daemon/dist/adapters/codex-resume.js.map +1 -1
  14. package/daemon/dist/adapters/codex-runtime-adapter.d.ts +9 -5
  15. package/daemon/dist/adapters/codex-runtime-adapter.d.ts.map +1 -1
  16. package/daemon/dist/adapters/codex-runtime-adapter.js +255 -28
  17. package/daemon/dist/adapters/codex-runtime-adapter.js.map +1 -1
  18. package/daemon/dist/adapters/terminal-adapter.d.ts +2 -1
  19. package/daemon/dist/adapters/terminal-adapter.d.ts.map +1 -1
  20. package/daemon/dist/adapters/terminal-adapter.js +7 -1
  21. package/daemon/dist/adapters/terminal-adapter.js.map +1 -1
  22. package/daemon/dist/adapters/tmux.d.ts.map +1 -1
  23. package/daemon/dist/adapters/tmux.js +53 -5
  24. package/daemon/dist/adapters/tmux.js.map +1 -1
  25. package/daemon/dist/builtins/workflow-specs/basic-loop.yaml +76 -0
  26. package/daemon/dist/builtins/workflow-specs/conveyor.yaml +80 -0
  27. package/daemon/dist/db/migrations/021_seat_handover_observability.d.ts +3 -0
  28. package/daemon/dist/db/migrations/021_seat_handover_observability.d.ts.map +1 -0
  29. package/daemon/dist/db/migrations/021_seat_handover_observability.js +11 -0
  30. package/daemon/dist/db/migrations/021_seat_handover_observability.js.map +1 -0
  31. package/daemon/dist/db/migrations/022_node_codex_config_profile.d.ts +3 -0
  32. package/daemon/dist/db/migrations/022_node_codex_config_profile.d.ts.map +1 -0
  33. package/daemon/dist/db/migrations/022_node_codex_config_profile.js +7 -0
  34. package/daemon/dist/db/migrations/022_node_codex_config_profile.js.map +1 -0
  35. package/daemon/dist/db/migrations/023_stream_items.d.ts +16 -0
  36. package/daemon/dist/db/migrations/023_stream_items.d.ts.map +1 -0
  37. package/daemon/dist/db/migrations/023_stream_items.js +37 -0
  38. package/daemon/dist/db/migrations/023_stream_items.js.map +1 -0
  39. package/daemon/dist/db/migrations/024_queue_items.d.ts +19 -0
  40. package/daemon/dist/db/migrations/024_queue_items.d.ts.map +1 -0
  41. package/daemon/dist/db/migrations/024_queue_items.js +52 -0
  42. package/daemon/dist/db/migrations/024_queue_items.js.map +1 -0
  43. package/daemon/dist/db/migrations/025_queue_transitions.d.ts +13 -0
  44. package/daemon/dist/db/migrations/025_queue_transitions.d.ts.map +1 -0
  45. package/daemon/dist/db/migrations/025_queue_transitions.js +28 -0
  46. package/daemon/dist/db/migrations/025_queue_transitions.js.map +1 -0
  47. package/daemon/dist/db/migrations/026_inbox_entries.d.ts +14 -0
  48. package/daemon/dist/db/migrations/026_inbox_entries.d.ts.map +1 -0
  49. package/daemon/dist/db/migrations/026_inbox_entries.js +35 -0
  50. package/daemon/dist/db/migrations/026_inbox_entries.js.map +1 -0
  51. package/daemon/dist/db/migrations/027_outbox_entries.d.ts +12 -0
  52. package/daemon/dist/db/migrations/027_outbox_entries.d.ts.map +1 -0
  53. package/daemon/dist/db/migrations/027_outbox_entries.js +30 -0
  54. package/daemon/dist/db/migrations/027_outbox_entries.js.map +1 -0
  55. package/daemon/dist/db/migrations/028_project_classifications.d.ts +26 -0
  56. package/daemon/dist/db/migrations/028_project_classifications.d.ts.map +1 -0
  57. package/daemon/dist/db/migrations/028_project_classifications.js +44 -0
  58. package/daemon/dist/db/migrations/028_project_classifications.js.map +1 -0
  59. package/daemon/dist/db/migrations/029_classifier_leases.d.ts +22 -0
  60. package/daemon/dist/db/migrations/029_classifier_leases.d.ts.map +1 -0
  61. package/daemon/dist/db/migrations/029_classifier_leases.js +41 -0
  62. package/daemon/dist/db/migrations/029_classifier_leases.js.map +1 -0
  63. package/daemon/dist/db/migrations/030_views_custom.d.ts +15 -0
  64. package/daemon/dist/db/migrations/030_views_custom.d.ts.map +1 -0
  65. package/daemon/dist/db/migrations/030_views_custom.js +27 -0
  66. package/daemon/dist/db/migrations/030_views_custom.js.map +1 -0
  67. package/daemon/dist/db/migrations/031_watchdog_jobs.d.ts +34 -0
  68. package/daemon/dist/db/migrations/031_watchdog_jobs.d.ts.map +1 -0
  69. package/daemon/dist/db/migrations/031_watchdog_jobs.js +59 -0
  70. package/daemon/dist/db/migrations/031_watchdog_jobs.js.map +1 -0
  71. package/daemon/dist/db/migrations/032_watchdog_history.d.ts +28 -0
  72. package/daemon/dist/db/migrations/032_watchdog_history.d.ts.map +1 -0
  73. package/daemon/dist/db/migrations/032_watchdog_history.js +46 -0
  74. package/daemon/dist/db/migrations/032_watchdog_history.js.map +1 -0
  75. package/daemon/dist/db/migrations/033_workflow_specs.d.ts +30 -0
  76. package/daemon/dist/db/migrations/033_workflow_specs.d.ts.map +1 -0
  77. package/daemon/dist/db/migrations/033_workflow_specs.js +50 -0
  78. package/daemon/dist/db/migrations/033_workflow_specs.js.map +1 -0
  79. package/daemon/dist/db/migrations/034_workflow_instances.d.ts +42 -0
  80. package/daemon/dist/db/migrations/034_workflow_instances.d.ts.map +1 -0
  81. package/daemon/dist/db/migrations/034_workflow_instances.js +63 -0
  82. package/daemon/dist/db/migrations/034_workflow_instances.js.map +1 -0
  83. package/daemon/dist/db/migrations/035_workflow_step_trails.d.ts +29 -0
  84. package/daemon/dist/db/migrations/035_workflow_step_trails.d.ts.map +1 -0
  85. package/daemon/dist/db/migrations/035_workflow_step_trails.js +48 -0
  86. package/daemon/dist/db/migrations/035_workflow_step_trails.js.map +1 -0
  87. package/daemon/dist/db/migrations/036_watchdog_policy_enum_extension.d.ts +35 -0
  88. package/daemon/dist/db/migrations/036_watchdog_policy_enum_extension.d.ts.map +1 -0
  89. package/daemon/dist/db/migrations/036_watchdog_policy_enum_extension.js +43 -0
  90. package/daemon/dist/db/migrations/036_watchdog_policy_enum_extension.js.map +1 -0
  91. package/daemon/dist/db/migrations/037_mission_control_actions.d.ts +51 -0
  92. package/daemon/dist/db/migrations/037_mission_control_actions.d.ts.map +1 -0
  93. package/daemon/dist/db/migrations/037_mission_control_actions.js +74 -0
  94. package/daemon/dist/db/migrations/037_mission_control_actions.js.map +1 -0
  95. package/daemon/dist/db/migrations/038_workspace_primitive.d.ts +16 -0
  96. package/daemon/dist/db/migrations/038_workspace_primitive.d.ts.map +1 -0
  97. package/daemon/dist/db/migrations/038_workspace_primitive.js +20 -0
  98. package/daemon/dist/db/migrations/038_workspace_primitive.js.map +1 -0
  99. package/daemon/dist/db/migrations/039_queue_target_repo.d.ts +16 -0
  100. package/daemon/dist/db/migrations/039_queue_target_repo.d.ts.map +1 -0
  101. package/daemon/dist/db/migrations/039_queue_target_repo.js +21 -0
  102. package/daemon/dist/db/migrations/039_queue_target_repo.js.map +1 -0
  103. package/daemon/dist/domain/active-lens-store.d.ts +23 -0
  104. package/daemon/dist/domain/active-lens-store.d.ts.map +1 -0
  105. package/daemon/dist/domain/active-lens-store.js +87 -0
  106. package/daemon/dist/domain/active-lens-store.js.map +1 -0
  107. package/daemon/dist/domain/agent-activity-store.d.ts +42 -0
  108. package/daemon/dist/domain/agent-activity-store.d.ts.map +1 -0
  109. package/daemon/dist/domain/agent-activity-store.js +177 -0
  110. package/daemon/dist/domain/agent-activity-store.js.map +1 -0
  111. package/daemon/dist/domain/agent-images/agent-image-library-service.d.ts +68 -0
  112. package/daemon/dist/domain/agent-images/agent-image-library-service.d.ts.map +1 -0
  113. package/daemon/dist/domain/agent-images/agent-image-library-service.js +339 -0
  114. package/daemon/dist/domain/agent-images/agent-image-library-service.js.map +1 -0
  115. package/daemon/dist/domain/agent-images/agent-image-types.d.ts +113 -0
  116. package/daemon/dist/domain/agent-images/agent-image-types.d.ts.map +1 -0
  117. package/daemon/dist/domain/agent-images/agent-image-types.js +24 -0
  118. package/daemon/dist/domain/agent-images/agent-image-types.js.map +1 -0
  119. package/daemon/dist/domain/agent-images/evidence-guard.d.ts +26 -0
  120. package/daemon/dist/domain/agent-images/evidence-guard.d.ts.map +1 -0
  121. package/daemon/dist/domain/agent-images/evidence-guard.js +185 -0
  122. package/daemon/dist/domain/agent-images/evidence-guard.js.map +1 -0
  123. package/daemon/dist/domain/agent-images/manifest-parser.d.ts +3 -0
  124. package/daemon/dist/domain/agent-images/manifest-parser.d.ts.map +1 -0
  125. package/daemon/dist/domain/agent-images/manifest-parser.js +114 -0
  126. package/daemon/dist/domain/agent-images/manifest-parser.js.map +1 -0
  127. package/daemon/dist/domain/agent-images/resume-token-discovery.d.ts +28 -0
  128. package/daemon/dist/domain/agent-images/resume-token-discovery.d.ts.map +1 -0
  129. package/daemon/dist/domain/agent-images/resume-token-discovery.js +83 -0
  130. package/daemon/dist/domain/agent-images/resume-token-discovery.js.map +1 -0
  131. package/daemon/dist/domain/agent-images/snapshot-capturer.d.ts +36 -0
  132. package/daemon/dist/domain/agent-images/snapshot-capturer.d.ts.map +1 -0
  133. package/daemon/dist/domain/agent-images/snapshot-capturer.js +58 -0
  134. package/daemon/dist/domain/agent-images/snapshot-capturer.js.map +1 -0
  135. package/daemon/dist/domain/agent-manifest.d.ts.map +1 -1
  136. package/daemon/dist/domain/agent-manifest.js +3 -0
  137. package/daemon/dist/domain/agent-manifest.js.map +1 -1
  138. package/daemon/dist/domain/agent-starter-resolver.d.ts +94 -0
  139. package/daemon/dist/domain/agent-starter-resolver.d.ts.map +1 -0
  140. package/daemon/dist/domain/agent-starter-resolver.js +198 -0
  141. package/daemon/dist/domain/agent-starter-resolver.js.map +1 -0
  142. package/daemon/dist/domain/classifier-lease-manager.d.ts +130 -0
  143. package/daemon/dist/domain/classifier-lease-manager.d.ts.map +1 -0
  144. package/daemon/dist/domain/classifier-lease-manager.js +285 -0
  145. package/daemon/dist/domain/classifier-lease-manager.js.map +1 -0
  146. package/daemon/dist/domain/conflict-detector.d.ts.map +1 -1
  147. package/daemon/dist/domain/conflict-detector.js +6 -3
  148. package/daemon/dist/domain/conflict-detector.js.map +1 -1
  149. package/daemon/dist/domain/context-monitor.d.ts +5 -4
  150. package/daemon/dist/domain/context-monitor.d.ts.map +1 -1
  151. package/daemon/dist/domain/context-monitor.js +26 -11
  152. package/daemon/dist/domain/context-monitor.js.map +1 -1
  153. package/daemon/dist/domain/context-packs/bundle-assembler.d.ts +49 -0
  154. package/daemon/dist/domain/context-packs/bundle-assembler.d.ts.map +1 -0
  155. package/daemon/dist/domain/context-packs/bundle-assembler.js +81 -0
  156. package/daemon/dist/domain/context-packs/bundle-assembler.js.map +1 -0
  157. package/daemon/dist/domain/context-packs/context-pack-library-service.d.ts +41 -0
  158. package/daemon/dist/domain/context-packs/context-pack-library-service.d.ts.map +1 -0
  159. package/daemon/dist/domain/context-packs/context-pack-library-service.js +148 -0
  160. package/daemon/dist/domain/context-packs/context-pack-library-service.js.map +1 -0
  161. package/daemon/dist/domain/context-packs/context-pack-types.d.ts +64 -0
  162. package/daemon/dist/domain/context-packs/context-pack-types.d.ts.map +1 -0
  163. package/daemon/dist/domain/context-packs/context-pack-types.js +22 -0
  164. package/daemon/dist/domain/context-packs/context-pack-types.js.map +1 -0
  165. package/daemon/dist/domain/context-packs/manifest-parser.d.ts +3 -0
  166. package/daemon/dist/domain/context-packs/manifest-parser.d.ts.map +1 -0
  167. package/daemon/dist/domain/context-packs/manifest-parser.js +74 -0
  168. package/daemon/dist/domain/context-packs/manifest-parser.js.map +1 -0
  169. package/daemon/dist/domain/context-usage-store.d.ts +15 -2
  170. package/daemon/dist/domain/context-usage-store.d.ts.map +1 -1
  171. package/daemon/dist/domain/context-usage-store.js +157 -2
  172. package/daemon/dist/domain/context-usage-store.js.map +1 -1
  173. package/daemon/dist/domain/files/file-write-service.d.ts +61 -0
  174. package/daemon/dist/domain/files/file-write-service.d.ts.map +1 -0
  175. package/daemon/dist/domain/files/file-write-service.js +180 -0
  176. package/daemon/dist/domain/files/file-write-service.js.map +1 -0
  177. package/daemon/dist/domain/files/path-safety.d.ts +47 -0
  178. package/daemon/dist/domain/files/path-safety.d.ts.map +1 -0
  179. package/daemon/dist/domain/files/path-safety.js +176 -0
  180. package/daemon/dist/domain/files/path-safety.js.map +1 -0
  181. package/daemon/dist/domain/graph-projection.d.ts +14 -1
  182. package/daemon/dist/domain/graph-projection.d.ts.map +1 -1
  183. package/daemon/dist/domain/graph-projection.js +8 -0
  184. package/daemon/dist/domain/graph-projection.js.map +1 -1
  185. package/daemon/dist/domain/hot-potato-enforcer.d.ts +45 -0
  186. package/daemon/dist/domain/hot-potato-enforcer.d.ts.map +1 -0
  187. package/daemon/dist/domain/hot-potato-enforcer.js +94 -0
  188. package/daemon/dist/domain/hot-potato-enforcer.js.map +1 -0
  189. package/daemon/dist/domain/inbox-handler.d.ts +68 -0
  190. package/daemon/dist/domain/inbox-handler.d.ts.map +1 -0
  191. package/daemon/dist/domain/inbox-handler.js +177 -0
  192. package/daemon/dist/domain/inbox-handler.js.map +1 -0
  193. package/daemon/dist/domain/install-engine.d.ts.map +1 -1
  194. package/daemon/dist/domain/install-engine.js +22 -6
  195. package/daemon/dist/domain/install-engine.js.map +1 -1
  196. package/daemon/dist/domain/install-verifier.d.ts.map +1 -1
  197. package/daemon/dist/domain/install-verifier.js +10 -5
  198. package/daemon/dist/domain/install-verifier.js.map +1 -1
  199. package/daemon/dist/domain/managed-blocks.d.ts.map +1 -1
  200. package/daemon/dist/domain/managed-blocks.js +22 -3
  201. package/daemon/dist/domain/managed-blocks.js.map +1 -1
  202. package/daemon/dist/domain/mission-control/audit-browse.d.ts +26 -0
  203. package/daemon/dist/domain/mission-control/audit-browse.d.ts.map +1 -0
  204. package/daemon/dist/domain/mission-control/audit-browse.js +101 -0
  205. package/daemon/dist/domain/mission-control/audit-browse.js.map +1 -0
  206. package/daemon/dist/domain/mission-control/mission-control-action-log.d.ts +51 -0
  207. package/daemon/dist/domain/mission-control/mission-control-action-log.d.ts.map +1 -0
  208. package/daemon/dist/domain/mission-control/mission-control-action-log.js +124 -0
  209. package/daemon/dist/domain/mission-control/mission-control-action-log.js.map +1 -0
  210. package/daemon/dist/domain/mission-control/mission-control-fleet-cli-capability.d.ts +131 -0
  211. package/daemon/dist/domain/mission-control/mission-control-fleet-cli-capability.d.ts.map +1 -0
  212. package/daemon/dist/domain/mission-control/mission-control-fleet-cli-capability.js +232 -0
  213. package/daemon/dist/domain/mission-control/mission-control-fleet-cli-capability.js.map +1 -0
  214. package/daemon/dist/domain/mission-control/mission-control-read-layer.d.ts +85 -0
  215. package/daemon/dist/domain/mission-control/mission-control-read-layer.d.ts.map +1 -0
  216. package/daemon/dist/domain/mission-control/mission-control-read-layer.js +265 -0
  217. package/daemon/dist/domain/mission-control/mission-control-read-layer.js.map +1 -0
  218. package/daemon/dist/domain/mission-control/mission-control-write-contract.d.ts +69 -0
  219. package/daemon/dist/domain/mission-control/mission-control-write-contract.d.ts.map +1 -0
  220. package/daemon/dist/domain/mission-control/mission-control-write-contract.js +300 -0
  221. package/daemon/dist/domain/mission-control/mission-control-write-contract.js.map +1 -0
  222. package/daemon/dist/domain/mission-control/notification-adapter-ntfy.d.ts +18 -0
  223. package/daemon/dist/domain/mission-control/notification-adapter-ntfy.d.ts.map +1 -0
  224. package/daemon/dist/domain/mission-control/notification-adapter-ntfy.js +48 -0
  225. package/daemon/dist/domain/mission-control/notification-adapter-ntfy.js.map +1 -0
  226. package/daemon/dist/domain/mission-control/notification-adapter-types.d.ts +25 -0
  227. package/daemon/dist/domain/mission-control/notification-adapter-types.d.ts.map +1 -0
  228. package/daemon/dist/domain/mission-control/notification-adapter-types.js +7 -0
  229. package/daemon/dist/domain/mission-control/notification-adapter-types.js.map +1 -0
  230. package/daemon/dist/domain/mission-control/notification-adapter-webhook.d.ts +27 -0
  231. package/daemon/dist/domain/mission-control/notification-adapter-webhook.d.ts.map +1 -0
  232. package/daemon/dist/domain/mission-control/notification-adapter-webhook.js +47 -0
  233. package/daemon/dist/domain/mission-control/notification-adapter-webhook.js.map +1 -0
  234. package/daemon/dist/domain/mission-control/notification-dispatcher.d.ts +53 -0
  235. package/daemon/dist/domain/mission-control/notification-dispatcher.d.ts.map +1 -0
  236. package/daemon/dist/domain/mission-control/notification-dispatcher.js +181 -0
  237. package/daemon/dist/domain/mission-control/notification-dispatcher.js.map +1 -0
  238. package/daemon/dist/domain/native-resume-probe.d.ts +1 -1
  239. package/daemon/dist/domain/native-resume-probe.d.ts.map +1 -1
  240. package/daemon/dist/domain/native-resume-probe.js +67 -0
  241. package/daemon/dist/domain/native-resume-probe.js.map +1 -1
  242. package/daemon/dist/domain/node-inventory.d.ts +29 -1
  243. package/daemon/dist/domain/node-inventory.d.ts.map +1 -1
  244. package/daemon/dist/domain/node-inventory.js +184 -38
  245. package/daemon/dist/domain/node-inventory.js.map +1 -1
  246. package/daemon/dist/domain/node-launcher.d.ts +2 -0
  247. package/daemon/dist/domain/node-launcher.d.ts.map +1 -1
  248. package/daemon/dist/domain/node-launcher.js +21 -7
  249. package/daemon/dist/domain/node-launcher.js.map +1 -1
  250. package/daemon/dist/domain/outbox-handler.d.ts +48 -0
  251. package/daemon/dist/domain/outbox-handler.d.ts.map +1 -0
  252. package/daemon/dist/domain/outbox-handler.js +106 -0
  253. package/daemon/dist/domain/outbox-handler.js.map +1 -0
  254. package/daemon/dist/domain/policies/artifact-pool-helpers.d.ts +64 -0
  255. package/daemon/dist/domain/policies/artifact-pool-helpers.d.ts.map +1 -0
  256. package/daemon/dist/domain/policies/artifact-pool-helpers.js +226 -0
  257. package/daemon/dist/domain/policies/artifact-pool-helpers.js.map +1 -0
  258. package/daemon/dist/domain/policies/artifact-pool-ready.d.ts +3 -0
  259. package/daemon/dist/domain/policies/artifact-pool-ready.d.ts.map +1 -0
  260. package/daemon/dist/domain/policies/artifact-pool-ready.js +41 -0
  261. package/daemon/dist/domain/policies/artifact-pool-ready.js.map +1 -0
  262. package/daemon/dist/domain/policies/edge-artifact-required.d.ts +3 -0
  263. package/daemon/dist/domain/policies/edge-artifact-required.d.ts.map +1 -0
  264. package/daemon/dist/domain/policies/edge-artifact-required.js +90 -0
  265. package/daemon/dist/domain/policies/edge-artifact-required.js.map +1 -0
  266. package/daemon/dist/domain/policies/periodic-reminder.d.ts +3 -0
  267. package/daemon/dist/domain/policies/periodic-reminder.d.ts.map +1 -0
  268. package/daemon/dist/domain/policies/periodic-reminder.js +30 -0
  269. package/daemon/dist/domain/policies/periodic-reminder.js.map +1 -0
  270. package/daemon/dist/domain/policies/types.d.ts +51 -0
  271. package/daemon/dist/domain/policies/types.d.ts.map +1 -0
  272. package/daemon/dist/domain/policies/types.js +9 -0
  273. package/daemon/dist/domain/policies/types.js.map +1 -0
  274. package/daemon/dist/domain/policies/workflow-keepalive.d.ts +7 -0
  275. package/daemon/dist/domain/policies/workflow-keepalive.d.ts.map +1 -0
  276. package/daemon/dist/domain/policies/workflow-keepalive.js +123 -0
  277. package/daemon/dist/domain/policies/workflow-keepalive.js.map +1 -0
  278. package/daemon/dist/domain/preview/preview-rate-limiter.d.ts +20 -0
  279. package/daemon/dist/domain/preview/preview-rate-limiter.d.ts.map +1 -0
  280. package/daemon/dist/domain/preview/preview-rate-limiter.js +46 -0
  281. package/daemon/dist/domain/preview/preview-rate-limiter.js.map +1 -0
  282. package/daemon/dist/domain/profile-resolver.d.ts +5 -0
  283. package/daemon/dist/domain/profile-resolver.d.ts.map +1 -1
  284. package/daemon/dist/domain/profile-resolver.js +62 -8
  285. package/daemon/dist/domain/profile-resolver.js.map +1 -1
  286. package/daemon/dist/domain/progress/progress-indexer.d.ts +73 -0
  287. package/daemon/dist/domain/progress/progress-indexer.d.ts.map +1 -0
  288. package/daemon/dist/domain/progress/progress-indexer.js +210 -0
  289. package/daemon/dist/domain/progress/progress-indexer.js.map +1 -0
  290. package/daemon/dist/domain/project-classifier.d.ts +75 -0
  291. package/daemon/dist/domain/project-classifier.d.ts.map +1 -0
  292. package/daemon/dist/domain/project-classifier.js +132 -0
  293. package/daemon/dist/domain/project-classifier.js.map +1 -0
  294. package/daemon/dist/domain/projection-planner.d.ts +1 -0
  295. package/daemon/dist/domain/projection-planner.d.ts.map +1 -1
  296. package/daemon/dist/domain/projection-planner.js +3 -0
  297. package/daemon/dist/domain/projection-planner.js.map +1 -1
  298. package/daemon/dist/domain/ps-projection.d.ts +31 -0
  299. package/daemon/dist/domain/ps-projection.d.ts.map +1 -1
  300. package/daemon/dist/domain/ps-projection.js +38 -0
  301. package/daemon/dist/domain/ps-projection.js.map +1 -1
  302. package/daemon/dist/domain/queue-repository.d.ts +340 -0
  303. package/daemon/dist/domain/queue-repository.d.ts.map +1 -0
  304. package/daemon/dist/domain/queue-repository.js +744 -0
  305. package/daemon/dist/domain/queue-repository.js.map +1 -0
  306. package/daemon/dist/domain/queue-transition-log.d.ts +38 -0
  307. package/daemon/dist/domain/queue-transition-log.d.ts.map +1 -0
  308. package/daemon/dist/domain/queue-transition-log.js +52 -0
  309. package/daemon/dist/domain/queue-transition-log.js.map +1 -0
  310. package/daemon/dist/domain/rehydrate-eligibility.d.ts +16 -0
  311. package/daemon/dist/domain/rehydrate-eligibility.d.ts.map +1 -0
  312. package/daemon/dist/domain/rehydrate-eligibility.js +43 -0
  313. package/daemon/dist/domain/rehydrate-eligibility.js.map +1 -0
  314. package/daemon/dist/domain/restore-check-service.d.ts +203 -0
  315. package/daemon/dist/domain/restore-check-service.d.ts.map +1 -0
  316. package/daemon/dist/domain/restore-check-service.js +1060 -0
  317. package/daemon/dist/domain/restore-check-service.js.map +1 -0
  318. package/daemon/dist/domain/restore-orchestrator.d.ts +49 -3
  319. package/daemon/dist/domain/restore-orchestrator.d.ts.map +1 -1
  320. package/daemon/dist/domain/restore-orchestrator.js +464 -64
  321. package/daemon/dist/domain/restore-orchestrator.js.map +1 -1
  322. package/daemon/dist/domain/rig-expansion-service.d.ts.map +1 -1
  323. package/daemon/dist/domain/rig-expansion-service.js +13 -0
  324. package/daemon/dist/domain/rig-expansion-service.js.map +1 -1
  325. package/daemon/dist/domain/rig-repository.d.ts +31 -1
  326. package/daemon/dist/domain/rig-repository.d.ts.map +1 -1
  327. package/daemon/dist/domain/rig-repository.js +104 -5
  328. package/daemon/dist/domain/rig-repository.js.map +1 -1
  329. package/daemon/dist/domain/rig-teardown.d.ts.map +1 -1
  330. package/daemon/dist/domain/rig-teardown.js +5 -0
  331. package/daemon/dist/domain/rig-teardown.js.map +1 -1
  332. package/daemon/dist/domain/rigspec-codec.d.ts.map +1 -1
  333. package/daemon/dist/domain/rigspec-codec.js +28 -0
  334. package/daemon/dist/domain/rigspec-codec.js.map +1 -1
  335. package/daemon/dist/domain/rigspec-exporter.d.ts.map +1 -1
  336. package/daemon/dist/domain/rigspec-exporter.js +2 -0
  337. package/daemon/dist/domain/rigspec-exporter.js.map +1 -1
  338. package/daemon/dist/domain/rigspec-instantiator.d.ts +29 -0
  339. package/daemon/dist/domain/rigspec-instantiator.d.ts.map +1 -1
  340. package/daemon/dist/domain/rigspec-instantiator.js +194 -2
  341. package/daemon/dist/domain/rigspec-instantiator.js.map +1 -1
  342. package/daemon/dist/domain/rigspec-schema.d.ts.map +1 -1
  343. package/daemon/dist/domain/rigspec-schema.js +349 -0
  344. package/daemon/dist/domain/rigspec-schema.js.map +1 -1
  345. package/daemon/dist/domain/runtime-adapter.d.ts +38 -2
  346. package/daemon/dist/domain/runtime-adapter.d.ts.map +1 -1
  347. package/daemon/dist/domain/runtime-adapter.js +5 -0
  348. package/daemon/dist/domain/runtime-adapter.js.map +1 -1
  349. package/daemon/dist/domain/seat-handover-planner.d.ts +84 -0
  350. package/daemon/dist/domain/seat-handover-planner.d.ts.map +1 -0
  351. package/daemon/dist/domain/seat-handover-planner.js +188 -0
  352. package/daemon/dist/domain/seat-handover-planner.js.map +1 -0
  353. package/daemon/dist/domain/seat-handover-service.d.ts +104 -0
  354. package/daemon/dist/domain/seat-handover-service.d.ts.map +1 -0
  355. package/daemon/dist/domain/seat-handover-service.js +343 -0
  356. package/daemon/dist/domain/seat-handover-service.js.map +1 -0
  357. package/daemon/dist/domain/seat-status-service.d.ts +50 -0
  358. package/daemon/dist/domain/seat-status-service.d.ts.map +1 -0
  359. package/daemon/dist/domain/seat-status-service.js +66 -0
  360. package/daemon/dist/domain/seat-status-service.js.map +1 -0
  361. package/daemon/dist/domain/session-source-rebuild-resolver.d.ts +53 -0
  362. package/daemon/dist/domain/session-source-rebuild-resolver.d.ts.map +1 -0
  363. package/daemon/dist/domain/session-source-rebuild-resolver.js +59 -0
  364. package/daemon/dist/domain/session-source-rebuild-resolver.js.map +1 -0
  365. package/daemon/dist/domain/session-transport.d.ts +30 -0
  366. package/daemon/dist/domain/session-transport.d.ts.map +1 -1
  367. package/daemon/dist/domain/session-transport.js +322 -12
  368. package/daemon/dist/domain/session-transport.js.map +1 -1
  369. package/daemon/dist/domain/skill-discovery.d.ts +51 -0
  370. package/daemon/dist/domain/skill-discovery.d.ts.map +1 -0
  371. package/daemon/dist/domain/skill-discovery.js +144 -0
  372. package/daemon/dist/domain/skill-discovery.js.map +1 -0
  373. package/daemon/dist/domain/slices/slice-detail-projector.d.ts +182 -0
  374. package/daemon/dist/domain/slices/slice-detail-projector.d.ts.map +1 -0
  375. package/daemon/dist/domain/slices/slice-detail-projector.js +508 -0
  376. package/daemon/dist/domain/slices/slice-detail-projector.js.map +1 -0
  377. package/daemon/dist/domain/slices/slice-indexer.d.ts +118 -0
  378. package/daemon/dist/domain/slices/slice-indexer.d.ts.map +1 -0
  379. package/daemon/dist/domain/slices/slice-indexer.js +503 -0
  380. package/daemon/dist/domain/slices/slice-indexer.js.map +1 -0
  381. package/daemon/dist/domain/snapshot-repository.d.ts +18 -0
  382. package/daemon/dist/domain/snapshot-repository.d.ts.map +1 -1
  383. package/daemon/dist/domain/snapshot-repository.js +77 -0
  384. package/daemon/dist/domain/snapshot-repository.js.map +1 -1
  385. package/daemon/dist/domain/spec-library-service.d.ts +17 -2
  386. package/daemon/dist/domain/spec-library-service.d.ts.map +1 -1
  387. package/daemon/dist/domain/spec-library-service.js +31 -1
  388. package/daemon/dist/domain/spec-library-service.js.map +1 -1
  389. package/daemon/dist/domain/spec-library-workflow-scanner.d.ts +81 -0
  390. package/daemon/dist/domain/spec-library-workflow-scanner.d.ts.map +1 -0
  391. package/daemon/dist/domain/spec-library-workflow-scanner.js +171 -0
  392. package/daemon/dist/domain/spec-library-workflow-scanner.js.map +1 -0
  393. package/daemon/dist/domain/startup-orchestrator.d.ts +22 -3
  394. package/daemon/dist/domain/startup-orchestrator.d.ts.map +1 -1
  395. package/daemon/dist/domain/startup-orchestrator.js +31 -5
  396. package/daemon/dist/domain/startup-orchestrator.js.map +1 -1
  397. package/daemon/dist/domain/startup-validation.d.ts.map +1 -1
  398. package/daemon/dist/domain/startup-validation.js +57 -11
  399. package/daemon/dist/domain/startup-validation.js.map +1 -1
  400. package/daemon/dist/domain/steering/health-summary.d.ts +39 -0
  401. package/daemon/dist/domain/steering/health-summary.d.ts.map +1 -0
  402. package/daemon/dist/domain/steering/health-summary.js +100 -0
  403. package/daemon/dist/domain/steering/health-summary.js.map +1 -0
  404. package/daemon/dist/domain/steering/steering-composer.d.ts +102 -0
  405. package/daemon/dist/domain/steering/steering-composer.d.ts.map +1 -0
  406. package/daemon/dist/domain/steering/steering-composer.js +263 -0
  407. package/daemon/dist/domain/steering/steering-composer.js.map +1 -0
  408. package/daemon/dist/domain/stream-store.d.ts +56 -0
  409. package/daemon/dist/domain/stream-store.d.ts.map +1 -0
  410. package/daemon/dist/domain/stream-store.js +108 -0
  411. package/daemon/dist/domain/stream-store.js.map +1 -0
  412. package/daemon/dist/domain/transcript-capture.d.ts.map +1 -1
  413. package/daemon/dist/domain/transcript-capture.js +7 -4
  414. package/daemon/dist/domain/transcript-capture.js.map +1 -1
  415. package/daemon/dist/domain/transcript-redaction.d.ts +13 -0
  416. package/daemon/dist/domain/transcript-redaction.d.ts.map +1 -0
  417. package/daemon/dist/domain/transcript-redaction.js +34 -0
  418. package/daemon/dist/domain/transcript-redaction.js.map +1 -0
  419. package/daemon/dist/domain/transcript-rotation.d.ts +29 -0
  420. package/daemon/dist/domain/transcript-rotation.d.ts.map +1 -0
  421. package/daemon/dist/domain/transcript-rotation.js +109 -0
  422. package/daemon/dist/domain/transcript-rotation.js.map +1 -0
  423. package/daemon/dist/domain/transcript-store.d.ts +15 -0
  424. package/daemon/dist/domain/transcript-store.d.ts.map +1 -1
  425. package/daemon/dist/domain/transcript-store.js +64 -2
  426. package/daemon/dist/domain/transcript-store.js.map +1 -1
  427. package/daemon/dist/domain/types.d.ts +416 -4
  428. package/daemon/dist/domain/types.d.ts.map +1 -1
  429. package/daemon/dist/domain/types.js +8 -1
  430. package/daemon/dist/domain/types.js.map +1 -1
  431. package/daemon/dist/domain/user-settings/settings-store.d.ts +42 -0
  432. package/daemon/dist/domain/user-settings/settings-store.d.ts.map +1 -0
  433. package/daemon/dist/domain/user-settings/settings-store.js +364 -0
  434. package/daemon/dist/domain/user-settings/settings-store.js.map +1 -0
  435. package/daemon/dist/domain/view-event-bridge.d.ts +12 -0
  436. package/daemon/dist/domain/view-event-bridge.d.ts.map +1 -0
  437. package/daemon/dist/domain/view-event-bridge.js +91 -0
  438. package/daemon/dist/domain/view-event-bridge.js.map +1 -0
  439. package/daemon/dist/domain/view-projector.d.ts +83 -0
  440. package/daemon/dist/domain/view-projector.d.ts.map +1 -0
  441. package/daemon/dist/domain/view-projector.js +296 -0
  442. package/daemon/dist/domain/view-projector.js.map +1 -0
  443. package/daemon/dist/domain/watchdog-history-log.d.ts +49 -0
  444. package/daemon/dist/domain/watchdog-history-log.d.ts.map +1 -0
  445. package/daemon/dist/domain/watchdog-history-log.js +67 -0
  446. package/daemon/dist/domain/watchdog-history-log.js.map +1 -0
  447. package/daemon/dist/domain/watchdog-jobs-repository.d.ts +81 -0
  448. package/daemon/dist/domain/watchdog-jobs-repository.d.ts.map +1 -0
  449. package/daemon/dist/domain/watchdog-jobs-repository.js +164 -0
  450. package/daemon/dist/domain/watchdog-jobs-repository.js.map +1 -0
  451. package/daemon/dist/domain/watchdog-policy-engine.d.ts +92 -0
  452. package/daemon/dist/domain/watchdog-policy-engine.d.ts.map +1 -0
  453. package/daemon/dist/domain/watchdog-policy-engine.js +442 -0
  454. package/daemon/dist/domain/watchdog-policy-engine.js.map +1 -0
  455. package/daemon/dist/domain/watchdog-scheduler.d.ts +76 -0
  456. package/daemon/dist/domain/watchdog-scheduler.d.ts.map +1 -0
  457. package/daemon/dist/domain/watchdog-scheduler.js +112 -0
  458. package/daemon/dist/domain/watchdog-scheduler.js.map +1 -0
  459. package/daemon/dist/domain/whoami-service.d.ts +29 -0
  460. package/daemon/dist/domain/whoami-service.d.ts.map +1 -1
  461. package/daemon/dist/domain/whoami-service.js +68 -0
  462. package/daemon/dist/domain/whoami-service.js.map +1 -1
  463. package/daemon/dist/domain/workflow/slice-workflow-binding.d.ts +21 -0
  464. package/daemon/dist/domain/workflow/slice-workflow-binding.d.ts.map +1 -0
  465. package/daemon/dist/domain/workflow/slice-workflow-binding.js +103 -0
  466. package/daemon/dist/domain/workflow/slice-workflow-binding.js.map +1 -0
  467. package/daemon/dist/domain/workflow/slice-workflow-projection.d.ts +81 -0
  468. package/daemon/dist/domain/workflow/slice-workflow-projection.d.ts.map +1 -0
  469. package/daemon/dist/domain/workflow/slice-workflow-projection.js +127 -0
  470. package/daemon/dist/domain/workflow/slice-workflow-projection.js.map +1 -0
  471. package/daemon/dist/domain/workflow/starter-spec-loader.d.ts +51 -0
  472. package/daemon/dist/domain/workflow/starter-spec-loader.d.ts.map +1 -0
  473. package/daemon/dist/domain/workflow/starter-spec-loader.js +140 -0
  474. package/daemon/dist/domain/workflow/starter-spec-loader.js.map +1 -0
  475. package/daemon/dist/domain/workflow-instance-store.d.ts +46 -0
  476. package/daemon/dist/domain/workflow-instance-store.d.ts.map +1 -0
  477. package/daemon/dist/domain/workflow-instance-store.js +116 -0
  478. package/daemon/dist/domain/workflow-instance-store.js.map +1 -0
  479. package/daemon/dist/domain/workflow-projector.d.ts +64 -0
  480. package/daemon/dist/domain/workflow-projector.d.ts.map +1 -0
  481. package/daemon/dist/domain/workflow-projector.js +432 -0
  482. package/daemon/dist/domain/workflow-projector.js.map +1 -0
  483. package/daemon/dist/domain/workflow-runtime.d.ts +63 -0
  484. package/daemon/dist/domain/workflow-runtime.d.ts.map +1 -0
  485. package/daemon/dist/domain/workflow-runtime.js +150 -0
  486. package/daemon/dist/domain/workflow-runtime.js.map +1 -0
  487. package/daemon/dist/domain/workflow-spec-cache.d.ts +42 -0
  488. package/daemon/dist/domain/workflow-spec-cache.d.ts.map +1 -0
  489. package/daemon/dist/domain/workflow-spec-cache.js +218 -0
  490. package/daemon/dist/domain/workflow-spec-cache.js.map +1 -0
  491. package/daemon/dist/domain/workflow-step-trail-log.d.ts +27 -0
  492. package/daemon/dist/domain/workflow-step-trail-log.d.ts.map +1 -0
  493. package/daemon/dist/domain/workflow-step-trail-log.js +73 -0
  494. package/daemon/dist/domain/workflow-step-trail-log.js.map +1 -0
  495. package/daemon/dist/domain/workflow-types.d.ts +108 -0
  496. package/daemon/dist/domain/workflow-types.d.ts.map +1 -0
  497. package/daemon/dist/domain/workflow-types.js +11 -0
  498. package/daemon/dist/domain/workflow-types.js.map +1 -0
  499. package/daemon/dist/domain/workflow-validator.d.ts +31 -0
  500. package/daemon/dist/domain/workflow-validator.d.ts.map +1 -0
  501. package/daemon/dist/domain/workflow-validator.js +115 -0
  502. package/daemon/dist/domain/workflow-validator.js.map +1 -0
  503. package/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts +6 -0
  504. package/daemon/dist/domain/workspace/default-workspace-scaffold.d.ts.map +1 -0
  505. package/daemon/dist/domain/workspace/default-workspace-scaffold.js +207 -0
  506. package/daemon/dist/domain/workspace/default-workspace-scaffold.js.map +1 -0
  507. package/daemon/dist/domain/workspace/frontmatter-validator.d.ts +40 -0
  508. package/daemon/dist/domain/workspace/frontmatter-validator.d.ts.map +1 -0
  509. package/daemon/dist/domain/workspace/frontmatter-validator.js +185 -0
  510. package/daemon/dist/domain/workspace/frontmatter-validator.js.map +1 -0
  511. package/daemon/dist/domain/workspace/workspace-resolver.d.ts +25 -0
  512. package/daemon/dist/domain/workspace/workspace-resolver.d.ts.map +1 -0
  513. package/daemon/dist/domain/workspace/workspace-resolver.js +86 -0
  514. package/daemon/dist/domain/workspace/workspace-resolver.js.map +1 -0
  515. package/daemon/dist/index.d.ts.map +1 -1
  516. package/daemon/dist/index.js +30 -2
  517. package/daemon/dist/index.js.map +1 -1
  518. package/daemon/dist/middleware/auth-bearer-token.d.ts +49 -0
  519. package/daemon/dist/middleware/auth-bearer-token.d.ts.map +1 -0
  520. package/daemon/dist/middleware/auth-bearer-token.js +135 -0
  521. package/daemon/dist/middleware/auth-bearer-token.js.map +1 -0
  522. package/daemon/dist/openrig-compat.d.ts +1 -1
  523. package/daemon/dist/openrig-compat.d.ts.map +1 -1
  524. package/daemon/dist/openrig-compat.js +6 -4
  525. package/daemon/dist/openrig-compat.js.map +1 -1
  526. package/daemon/dist/routes/activity.d.ts +3 -0
  527. package/daemon/dist/routes/activity.d.ts.map +1 -0
  528. package/daemon/dist/routes/activity.js +47 -0
  529. package/daemon/dist/routes/activity.js.map +1 -0
  530. package/daemon/dist/routes/agent-images.d.ts +8 -0
  531. package/daemon/dist/routes/agent-images.d.ts.map +1 -0
  532. package/daemon/dist/routes/agent-images.js +253 -0
  533. package/daemon/dist/routes/agent-images.js.map +1 -0
  534. package/daemon/dist/routes/config.d.ts +3 -0
  535. package/daemon/dist/routes/config.d.ts.map +1 -0
  536. package/daemon/dist/routes/config.js +109 -0
  537. package/daemon/dist/routes/config.js.map +1 -0
  538. package/daemon/dist/routes/context-packs.d.ts +3 -0
  539. package/daemon/dist/routes/context-packs.d.ts.map +1 -0
  540. package/daemon/dist/routes/context-packs.js +129 -0
  541. package/daemon/dist/routes/context-packs.js.map +1 -0
  542. package/daemon/dist/routes/files.d.ts +17 -0
  543. package/daemon/dist/routes/files.d.ts.map +1 -0
  544. package/daemon/dist/routes/files.js +262 -0
  545. package/daemon/dist/routes/files.js.map +1 -0
  546. package/daemon/dist/routes/health-summary.d.ts +9 -0
  547. package/daemon/dist/routes/health-summary.d.ts.map +1 -0
  548. package/daemon/dist/routes/health-summary.js +33 -0
  549. package/daemon/dist/routes/health-summary.js.map +1 -0
  550. package/daemon/dist/routes/mission-control.d.ts +37 -0
  551. package/daemon/dist/routes/mission-control.d.ts.map +1 -0
  552. package/daemon/dist/routes/mission-control.js +283 -0
  553. package/daemon/dist/routes/mission-control.js.map +1 -0
  554. package/daemon/dist/routes/progress.d.ts +7 -0
  555. package/daemon/dist/routes/progress.d.ts.map +1 -0
  556. package/daemon/dist/routes/progress.js +33 -0
  557. package/daemon/dist/routes/progress.js.map +1 -0
  558. package/daemon/dist/routes/projects.d.ts +12 -0
  559. package/daemon/dist/routes/projects.d.ts.map +1 -0
  560. package/daemon/dist/routes/projects.js +178 -0
  561. package/daemon/dist/routes/projects.js.map +1 -0
  562. package/daemon/dist/routes/queue.d.ts +10 -0
  563. package/daemon/dist/routes/queue.d.ts.map +1 -0
  564. package/daemon/dist/routes/queue.js +425 -0
  565. package/daemon/dist/routes/queue.js.map +1 -0
  566. package/daemon/dist/routes/restore-check.d.ts +3 -0
  567. package/daemon/dist/routes/restore-check.d.ts.map +1 -0
  568. package/daemon/dist/routes/restore-check.js +200 -0
  569. package/daemon/dist/routes/restore-check.js.map +1 -0
  570. package/daemon/dist/routes/rigs.d.ts +3 -0
  571. package/daemon/dist/routes/rigs.d.ts.map +1 -1
  572. package/daemon/dist/routes/rigs.js +131 -9
  573. package/daemon/dist/routes/rigs.js.map +1 -1
  574. package/daemon/dist/routes/rigspec.js +6 -3
  575. package/daemon/dist/routes/rigspec.js.map +1 -1
  576. package/daemon/dist/routes/seat.d.ts +3 -0
  577. package/daemon/dist/routes/seat.d.ts.map +1 -0
  578. package/daemon/dist/routes/seat.js +69 -0
  579. package/daemon/dist/routes/seat.js.map +1 -0
  580. package/daemon/dist/routes/sessions.d.ts.map +1 -1
  581. package/daemon/dist/routes/sessions.js +144 -4
  582. package/daemon/dist/routes/sessions.js.map +1 -1
  583. package/daemon/dist/routes/slices.d.ts +9 -0
  584. package/daemon/dist/routes/slices.d.ts.map +1 -0
  585. package/daemon/dist/routes/slices.js +192 -0
  586. package/daemon/dist/routes/slices.js.map +1 -0
  587. package/daemon/dist/routes/snapshots.js +66 -29
  588. package/daemon/dist/routes/snapshots.js.map +1 -1
  589. package/daemon/dist/routes/spec-library.d.ts.map +1 -1
  590. package/daemon/dist/routes/spec-library.js +72 -5
  591. package/daemon/dist/routes/spec-library.js.map +1 -1
  592. package/daemon/dist/routes/steering.d.ts +7 -0
  593. package/daemon/dist/routes/steering.d.ts.map +1 -0
  594. package/daemon/dist/routes/steering.js +27 -0
  595. package/daemon/dist/routes/steering.js.map +1 -0
  596. package/daemon/dist/routes/stream.d.ts +9 -0
  597. package/daemon/dist/routes/stream.d.ts.map +1 -0
  598. package/daemon/dist/routes/stream.js +119 -0
  599. package/daemon/dist/routes/stream.js.map +1 -0
  600. package/daemon/dist/routes/transcripts.d.ts.map +1 -1
  601. package/daemon/dist/routes/transcripts.js +38 -0
  602. package/daemon/dist/routes/transcripts.js.map +1 -1
  603. package/daemon/dist/routes/transport.d.ts.map +1 -1
  604. package/daemon/dist/routes/transport.js +21 -0
  605. package/daemon/dist/routes/transport.js.map +1 -1
  606. package/daemon/dist/routes/up.d.ts.map +1 -1
  607. package/daemon/dist/routes/up.js +43 -4
  608. package/daemon/dist/routes/up.js.map +1 -1
  609. package/daemon/dist/routes/views.d.ts +13 -0
  610. package/daemon/dist/routes/views.d.ts.map +1 -0
  611. package/daemon/dist/routes/views.js +120 -0
  612. package/daemon/dist/routes/views.js.map +1 -0
  613. package/daemon/dist/routes/watchdog.d.ts +18 -0
  614. package/daemon/dist/routes/watchdog.d.ts.map +1 -0
  615. package/daemon/dist/routes/watchdog.js +148 -0
  616. package/daemon/dist/routes/watchdog.js.map +1 -0
  617. package/daemon/dist/routes/whoami.d.ts.map +1 -1
  618. package/daemon/dist/routes/whoami.js +6 -1
  619. package/daemon/dist/routes/whoami.js.map +1 -1
  620. package/daemon/dist/routes/workflow.d.ts +20 -0
  621. package/daemon/dist/routes/workflow.d.ts.map +1 -0
  622. package/daemon/dist/routes/workflow.js +227 -0
  623. package/daemon/dist/routes/workflow.js.map +1 -0
  624. package/daemon/dist/routes/workspace.d.ts +3 -0
  625. package/daemon/dist/routes/workspace.d.ts.map +1 -0
  626. package/daemon/dist/routes/workspace.js +53 -0
  627. package/daemon/dist/routes/workspace.js.map +1 -0
  628. package/daemon/dist/server.d.ts +81 -0
  629. package/daemon/dist/server.d.ts.map +1 -1
  630. package/daemon/dist/server.js +85 -1
  631. package/daemon/dist/server.js.map +1 -1
  632. package/daemon/dist/startup.d.ts +9 -0
  633. package/daemon/dist/startup.d.ts.map +1 -1
  634. package/daemon/dist/startup.js +585 -8
  635. package/daemon/dist/startup.js.map +1 -1
  636. package/daemon/docs/reference/agent-spec.md +19 -12
  637. package/daemon/docs/reference/agent-startup-guide.md +11 -11
  638. package/daemon/docs/reference/project-workspace.md +102 -0
  639. package/daemon/specs/agents/apps/vault-specialist/agent.yaml +2 -2
  640. package/daemon/specs/agents/apps/vault-specialist/guidance/role.md +0 -1
  641. package/daemon/specs/agents/conveyor/builder/agent.yaml +35 -0
  642. package/daemon/specs/agents/conveyor/builder/guidance/role.md +31 -0
  643. package/daemon/specs/agents/conveyor/builder/startup/context.md +9 -0
  644. package/daemon/specs/agents/conveyor/lead/agent.yaml +35 -0
  645. package/daemon/specs/agents/conveyor/lead/guidance/role.md +34 -0
  646. package/daemon/specs/agents/conveyor/lead/startup/context.md +15 -0
  647. package/daemon/specs/agents/conveyor/planner/agent.yaml +35 -0
  648. package/daemon/specs/agents/conveyor/planner/guidance/role.md +29 -0
  649. package/daemon/specs/agents/conveyor/planner/startup/context.md +12 -0
  650. package/daemon/specs/agents/conveyor/reviewer/agent.yaml +35 -0
  651. package/daemon/specs/agents/conveyor/reviewer/guidance/role.md +29 -0
  652. package/daemon/specs/agents/conveyor/reviewer/startup/context.md +10 -0
  653. package/daemon/specs/agents/design/product-designer/agent.yaml +1 -1
  654. package/daemon/specs/agents/development/implementer/agent.yaml +2 -2
  655. package/daemon/specs/agents/development/implementer/guidance/role.md +0 -1
  656. package/daemon/specs/agents/development/qa/agent.yaml +1 -1
  657. package/daemon/specs/agents/orchestration/orchestrator/agent.yaml +2 -2
  658. package/daemon/specs/agents/orchestration/orchestrator/guidance/role.md +2 -3
  659. package/daemon/specs/agents/product-management/pm/agent.yaml +4 -0
  660. package/daemon/specs/agents/research/analyst/agent.yaml +1 -1
  661. package/daemon/specs/agents/research/synthesizer/agent.yaml +1 -1
  662. package/daemon/specs/agents/review/independent-reviewer/agent.yaml +1 -1
  663. package/daemon/specs/agents/shared/agent.yaml +17 -2
  664. package/daemon/specs/agents/shared/runtime/claude-mcp.fragment.json +12 -0
  665. package/daemon/specs/agents/shared/runtime/claude-settings.fragment.json +16 -0
  666. package/daemon/specs/agents/shared/runtime/codex-config.fragment.toml +5 -0
  667. package/daemon/specs/agents/shared/skills/claude-compact-in-place/SKILL.md +100 -0
  668. package/daemon/specs/agents/shared/skills/core/openrig-operator/SKILL.md +110 -0
  669. package/daemon/specs/agents/shared/skills/core/openrig-user/SKILL.md +69 -1
  670. package/daemon/specs/agents/shared/skills/core/openrig-user-settings/SKILL.md +153 -0
  671. package/daemon/specs/agents/shared/skills/pods/orchestration-team/SKILL.md +3 -0
  672. package/daemon/specs/agents/shared/skills/rig-architect/SKILL.md +11 -1
  673. package/daemon/specs/rigs/launch/conveyor/CULTURE.md +34 -0
  674. package/daemon/specs/rigs/launch/conveyor/README.md +33 -0
  675. package/daemon/specs/rigs/launch/conveyor/rig.yaml +72 -0
  676. package/daemon/specs/rigs/preview/product-team/CULTURE.md +2 -2
  677. package/daemon/specs/rigs/preview/product-team/rig.yaml +3 -4
  678. package/dist/bin-wrapper.js +0 -0
  679. package/dist/commands/agent-image.d.ts +4 -0
  680. package/dist/commands/agent-image.d.ts.map +1 -0
  681. package/dist/commands/agent-image.js +352 -0
  682. package/dist/commands/agent-image.js.map +1 -0
  683. package/dist/commands/capture.d.ts +7 -1
  684. package/dist/commands/capture.d.ts.map +1 -1
  685. package/dist/commands/capture.js +59 -1
  686. package/dist/commands/capture.js.map +1 -1
  687. package/dist/commands/compact-plan.d.ts +9 -0
  688. package/dist/commands/compact-plan.d.ts.map +1 -0
  689. package/dist/commands/compact-plan.js +354 -0
  690. package/dist/commands/compact-plan.js.map +1 -0
  691. package/dist/commands/config-init-workspace.d.ts +35 -0
  692. package/dist/commands/config-init-workspace.d.ts.map +1 -0
  693. package/dist/commands/config-init-workspace.js +300 -0
  694. package/dist/commands/config-init-workspace.js.map +1 -0
  695. package/dist/commands/config.d.ts.map +1 -1
  696. package/dist/commands/config.js +78 -18
  697. package/dist/commands/config.js.map +1 -1
  698. package/dist/commands/context-pack.d.ts +4 -0
  699. package/dist/commands/context-pack.d.ts.map +1 -0
  700. package/dist/commands/context-pack.js +357 -0
  701. package/dist/commands/context-pack.js.map +1 -0
  702. package/dist/commands/context.d.ts +9 -0
  703. package/dist/commands/context.d.ts.map +1 -0
  704. package/dist/commands/context.js +220 -0
  705. package/dist/commands/context.js.map +1 -0
  706. package/dist/commands/daemon.d.ts.map +1 -1
  707. package/dist/commands/daemon.js +8 -0
  708. package/dist/commands/daemon.js.map +1 -1
  709. package/dist/commands/expand.d.ts.map +1 -1
  710. package/dist/commands/expand.js +15 -4
  711. package/dist/commands/expand.js.map +1 -1
  712. package/dist/commands/heartbeat.d.ts +99 -0
  713. package/dist/commands/heartbeat.d.ts.map +1 -0
  714. package/dist/commands/heartbeat.js +393 -0
  715. package/dist/commands/heartbeat.js.map +1 -0
  716. package/dist/commands/import.d.ts.map +1 -1
  717. package/dist/commands/import.js +7 -2
  718. package/dist/commands/import.js.map +1 -1
  719. package/dist/commands/project.d.ts +14 -0
  720. package/dist/commands/project.d.ts.map +1 -0
  721. package/dist/commands/project.js +157 -0
  722. package/dist/commands/project.js.map +1 -0
  723. package/dist/commands/ps.d.ts +20 -3
  724. package/dist/commands/ps.d.ts.map +1 -1
  725. package/dist/commands/ps.js +614 -33
  726. package/dist/commands/ps.js.map +1 -1
  727. package/dist/commands/queue.d.ts +16 -0
  728. package/dist/commands/queue.d.ts.map +1 -0
  729. package/dist/commands/queue.js +410 -0
  730. package/dist/commands/queue.js.map +1 -0
  731. package/dist/commands/restore-check.d.ts +9 -0
  732. package/dist/commands/restore-check.d.ts.map +1 -0
  733. package/dist/commands/restore-check.js +234 -0
  734. package/dist/commands/restore-check.js.map +1 -0
  735. package/dist/commands/restore-packet.d.ts +9 -0
  736. package/dist/commands/restore-packet.d.ts.map +1 -0
  737. package/dist/commands/restore-packet.js +383 -0
  738. package/dist/commands/restore-packet.js.map +1 -0
  739. package/dist/commands/restore.d.ts.map +1 -1
  740. package/dist/commands/restore.js +44 -1
  741. package/dist/commands/restore.js.map +1 -1
  742. package/dist/commands/seat.d.ts +5 -0
  743. package/dist/commands/seat.d.ts.map +1 -0
  744. package/dist/commands/seat.js +170 -0
  745. package/dist/commands/seat.js.map +1 -0
  746. package/dist/commands/send.d.ts +19 -1
  747. package/dist/commands/send.d.ts.map +1 -1
  748. package/dist/commands/send.js +116 -5
  749. package/dist/commands/send.js.map +1 -1
  750. package/dist/commands/setup.js +3 -3
  751. package/dist/commands/setup.js.map +1 -1
  752. package/dist/commands/specs.d.ts +4 -2
  753. package/dist/commands/specs.d.ts.map +1 -1
  754. package/dist/commands/specs.js +111 -24
  755. package/dist/commands/specs.js.map +1 -1
  756. package/dist/commands/stream.d.ts +12 -0
  757. package/dist/commands/stream.d.ts.map +1 -0
  758. package/dist/commands/stream.js +111 -0
  759. package/dist/commands/stream.js.map +1 -0
  760. package/dist/commands/up.d.ts.map +1 -1
  761. package/dist/commands/up.js +79 -5
  762. package/dist/commands/up.js.map +1 -1
  763. package/dist/commands/view.d.ts +12 -0
  764. package/dist/commands/view.d.ts.map +1 -0
  765. package/dist/commands/view.js +82 -0
  766. package/dist/commands/view.js.map +1 -0
  767. package/dist/commands/watchdog.d.ts +15 -0
  768. package/dist/commands/watchdog.d.ts.map +1 -0
  769. package/dist/commands/watchdog.js +120 -0
  770. package/dist/commands/watchdog.js.map +1 -0
  771. package/dist/commands/whoami.d.ts +8 -1
  772. package/dist/commands/whoami.d.ts.map +1 -1
  773. package/dist/commands/whoami.js +69 -5
  774. package/dist/commands/whoami.js.map +1 -1
  775. package/dist/commands/workflow.d.ts +17 -0
  776. package/dist/commands/workflow.d.ts.map +1 -0
  777. package/dist/commands/workflow.js +175 -0
  778. package/dist/commands/workflow.js.map +1 -0
  779. package/dist/commands/workspace.d.ts +6 -0
  780. package/dist/commands/workspace.d.ts.map +1 -0
  781. package/dist/commands/workspace.js +83 -0
  782. package/dist/commands/workspace.js.map +1 -0
  783. package/dist/config-store.d.ts +73 -1
  784. package/dist/config-store.d.ts.map +1 -1
  785. package/dist/config-store.js +314 -42
  786. package/dist/config-store.js.map +1 -1
  787. package/dist/cross-host-cli-helpers.d.ts +12 -0
  788. package/dist/cross-host-cli-helpers.d.ts.map +1 -0
  789. package/dist/cross-host-cli-helpers.js +48 -0
  790. package/dist/cross-host-cli-helpers.js.map +1 -0
  791. package/dist/cross-host-executor.d.ts +84 -0
  792. package/dist/cross-host-executor.d.ts.map +1 -0
  793. package/dist/cross-host-executor.js +138 -0
  794. package/dist/cross-host-executor.js.map +1 -0
  795. package/dist/daemon-lifecycle.d.ts +22 -0
  796. package/dist/daemon-lifecycle.d.ts.map +1 -1
  797. package/dist/daemon-lifecycle.js +41 -0
  798. package/dist/daemon-lifecycle.js.map +1 -1
  799. package/dist/host-registry.d.ts +50 -0
  800. package/dist/host-registry.d.ts.map +1 -0
  801. package/dist/host-registry.js +116 -0
  802. package/dist/host-registry.js.map +1 -0
  803. package/dist/index.d.ts +24 -0
  804. package/dist/index.d.ts.map +1 -1
  805. package/dist/index.js +30 -0
  806. package/dist/index.js.map +1 -1
  807. package/dist/mcp-server.d.ts.map +1 -1
  808. package/dist/mcp-server.js +22 -2
  809. package/dist/mcp-server.js.map +1 -1
  810. package/dist/openrig-compat.d.ts +1 -1
  811. package/dist/openrig-compat.d.ts.map +1 -1
  812. package/dist/openrig-compat.js +6 -4
  813. package/dist/openrig-compat.js.map +1 -1
  814. package/dist/restore-packet/claude-transcript-parser.d.ts +12 -0
  815. package/dist/restore-packet/claude-transcript-parser.d.ts.map +1 -0
  816. package/dist/restore-packet/claude-transcript-parser.js +221 -0
  817. package/dist/restore-packet/claude-transcript-parser.js.map +1 -0
  818. package/dist/restore-packet/codex-jsonl-parser.d.ts +11 -0
  819. package/dist/restore-packet/codex-jsonl-parser.d.ts.map +1 -0
  820. package/dist/restore-packet/codex-jsonl-parser.js +159 -0
  821. package/dist/restore-packet/codex-jsonl-parser.js.map +1 -0
  822. package/dist/restore-packet/omitted-records.d.ts +60 -0
  823. package/dist/restore-packet/omitted-records.d.ts.map +1 -0
  824. package/dist/restore-packet/omitted-records.js +116 -0
  825. package/dist/restore-packet/omitted-records.js.map +1 -0
  826. package/dist/restore-packet/packet-writer.d.ts +59 -0
  827. package/dist/restore-packet/packet-writer.d.ts.map +1 -0
  828. package/dist/restore-packet/packet-writer.js +224 -0
  829. package/dist/restore-packet/packet-writer.js.map +1 -0
  830. package/dist/restore-packet/redaction.d.ts +30 -0
  831. package/dist/restore-packet/redaction.d.ts.map +1 -0
  832. package/dist/restore-packet/redaction.js +71 -0
  833. package/dist/restore-packet/redaction.js.map +1 -0
  834. package/dist/restore-packet/runtime-detect.d.ts +19 -0
  835. package/dist/restore-packet/runtime-detect.d.ts.map +1 -0
  836. package/dist/restore-packet/runtime-detect.js +81 -0
  837. package/dist/restore-packet/runtime-detect.js.map +1 -0
  838. package/dist/restore-packet/schema-validator.d.ts +13 -0
  839. package/dist/restore-packet/schema-validator.d.ts.map +1 -0
  840. package/dist/restore-packet/schema-validator.js +245 -0
  841. package/dist/restore-packet/schema-validator.js.map +1 -0
  842. package/dist/restore-packet/types.d.ts +76 -0
  843. package/dist/restore-packet/types.d.ts.map +1 -0
  844. package/dist/restore-packet/types.js +15 -0
  845. package/dist/restore-packet/types.js.map +1 -0
  846. package/dist/schemas/restore-summary.schema.json +98 -0
  847. package/package.json +10 -3
  848. package/scripts/check-abi.mjs +123 -0
  849. package/ui/dist/assets/index-BDHU1JUK.js +412 -0
  850. package/ui/dist/assets/index-DXTyJSqu.css +1 -0
  851. package/ui/dist/graphics/operator-climber-monochrome.png +0 -0
  852. package/ui/dist/index.html +3 -2
  853. package/daemon/specs/agents/shared/skills/mental-model-ha/SKILL.md +0 -953
  854. package/ui/dist/assets/index-B09doO8H.js +0 -139
  855. package/ui/dist/assets/index-Ccd-jwRN.js +0 -225
  856. package/ui/dist/assets/index-DlMH-REm.css +0 -1
@@ -0,0 +1,30 @@
1
+ /**
2
+ * v0 secret-pattern list. Mirrors Velocity prior art `:34-48` exactly:
3
+ *
4
+ * 1. /\bsk-[A-Za-z0-9_-]{16,}\b/g — OpenAI-style secret tokens.
5
+ * 2. /\bgh[pousr]_[A-Za-z0-9_]{20,}\b/g — GitHub personal/OAuth tokens.
6
+ * 3. /\bgithub_pat_[A-Za-z0-9_]{20,}\b/g — GitHub fine-grained PATs.
7
+ * 4. /\bBearer\s+[A-Za-z0-9._~+/=-]{20,}\b/g — generic Bearer tokens.
8
+ * 5. /\b[A-Za-z0-9+/]{40,}={0,2}\b/g — base64-shaped strings ≥40 chars.
9
+ */
10
+ export declare const SECRET_PATTERNS: readonly RegExp[];
11
+ /**
12
+ * Apply the openrig-v0 redaction policy to a string. Returns the input
13
+ * with each match of the secret patterns replaced by the literal
14
+ * string `[REDACTED]`. Pure function; no side effects.
15
+ *
16
+ * The redaction is non-destructive at the structural level — only the
17
+ * matched substrings are replaced. Surrounding characters are kept.
18
+ */
19
+ export declare function redact(text: string): string;
20
+ /**
21
+ * Returns true if at least one secret pattern matches the input.
22
+ * Used by the omitted-records counter to track how many records had
23
+ * their content redacted (for the `redacted_secrets` omitted-class
24
+ * count in summary).
25
+ *
26
+ * Note: a SINGLE record may match multiple patterns; this returns true
27
+ * after the first match for efficiency.
28
+ */
29
+ export declare function hasSecretPattern(text: string): boolean;
30
+ //# sourceMappingURL=redaction.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redaction.d.ts","sourceRoot":"","sources":["../../src/restore-packet/redaction.ts"],"names":[],"mappings":"AAqBA;;;;;;;;GAQG;AACH,eAAO,MAAM,eAAe,EAAE,SAAS,MAAM,EAM5C,CAAC;AAEF;;;;;;;GAOG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAM3C;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAQtD"}
@@ -0,0 +1,71 @@
1
+ // redaction.ts — applies the v0 redaction policy.
2
+ //
3
+ // Per M1 contract § 4: v0 defines two named policies:
4
+ // - `velocity-v1`: mirrors the Velocity generator's token patterns at
5
+ // field-notes/2026-04-27-velocity-claude-from-codex-restore/tools/
6
+ // codex-jsonl-to-restore-packet.mjs:34-48 (sk-*, gh[pousr]_*,
7
+ // github_pat_*, Bearer *, base64 ≥40 chars).
8
+ // - `openrig-v0`: the productized v0 policy, identical patterns to
9
+ // `velocity-v1` but with the canonical name. v0 generator emits
10
+ // `redaction_policy_id: "openrig-v0"`.
11
+ //
12
+ // Redaction is applied to:
13
+ // - transcript content in transcript-latest.md and transcript.md.
14
+ // - body content in restore-instructions.md if it quotes transcript
15
+ // material.
16
+ // - top_paths / touched-files entries are NOT redacted (paths are not
17
+ // credential material).
18
+ //
19
+ // The validator does NOT scan content for residual credential patterns
20
+ // (per § 4 + § 8: enforcement is generator-side at write time).
21
+ /**
22
+ * v0 secret-pattern list. Mirrors Velocity prior art `:34-48` exactly:
23
+ *
24
+ * 1. /\bsk-[A-Za-z0-9_-]{16,}\b/g — OpenAI-style secret tokens.
25
+ * 2. /\bgh[pousr]_[A-Za-z0-9_]{20,}\b/g — GitHub personal/OAuth tokens.
26
+ * 3. /\bgithub_pat_[A-Za-z0-9_]{20,}\b/g — GitHub fine-grained PATs.
27
+ * 4. /\bBearer\s+[A-Za-z0-9._~+/=-]{20,}\b/g — generic Bearer tokens.
28
+ * 5. /\b[A-Za-z0-9+/]{40,}={0,2}\b/g — base64-shaped strings ≥40 chars.
29
+ */
30
+ export const SECRET_PATTERNS = [
31
+ /\bsk-[A-Za-z0-9_-]{16,}\b/g,
32
+ /\bgh[pousr]_[A-Za-z0-9_]{20,}\b/g,
33
+ /\bgithub_pat_[A-Za-z0-9_]{20,}\b/g,
34
+ /\bBearer\s+[A-Za-z0-9._~+/=-]{20,}\b/g,
35
+ /\b[A-Za-z0-9+/]{40,}={0,2}\b/g,
36
+ ];
37
+ /**
38
+ * Apply the openrig-v0 redaction policy to a string. Returns the input
39
+ * with each match of the secret patterns replaced by the literal
40
+ * string `[REDACTED]`. Pure function; no side effects.
41
+ *
42
+ * The redaction is non-destructive at the structural level — only the
43
+ * matched substrings are replaced. Surrounding characters are kept.
44
+ */
45
+ export function redact(text) {
46
+ let out = text;
47
+ for (const pattern of SECRET_PATTERNS) {
48
+ out = out.replace(pattern, "[REDACTED]");
49
+ }
50
+ return out;
51
+ }
52
+ /**
53
+ * Returns true if at least one secret pattern matches the input.
54
+ * Used by the omitted-records counter to track how many records had
55
+ * their content redacted (for the `redacted_secrets` omitted-class
56
+ * count in summary).
57
+ *
58
+ * Note: a SINGLE record may match multiple patterns; this returns true
59
+ * after the first match for efficiency.
60
+ */
61
+ export function hasSecretPattern(text) {
62
+ for (const pattern of SECRET_PATTERNS) {
63
+ // Non-global test: cannot reuse the global `g` regex without resetting
64
+ // lastIndex, so build a fresh non-global RegExp from source.
65
+ const probe = new RegExp(pattern.source);
66
+ if (probe.test(text))
67
+ return true;
68
+ }
69
+ return false;
70
+ }
71
+ //# sourceMappingURL=redaction.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"redaction.js","sourceRoot":"","sources":["../../src/restore-packet/redaction.ts"],"names":[],"mappings":"AAAA,kDAAkD;AAClD,EAAE;AACF,sDAAsD;AACtD,sEAAsE;AACtE,qEAAqE;AACrE,gEAAgE;AAChE,+CAA+C;AAC/C,mEAAmE;AACnE,kEAAkE;AAClE,yCAAyC;AACzC,EAAE;AACF,2BAA2B;AAC3B,kEAAkE;AAClE,oEAAoE;AACpE,cAAc;AACd,sEAAsE;AACtE,0BAA0B;AAC1B,EAAE;AACF,uEAAuE;AACvE,gEAAgE;AAEhE;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,eAAe,GAAsB;IAChD,4BAA4B;IAC5B,kCAAkC;IAClC,mCAAmC;IACnC,uCAAuC;IACvC,+BAA+B;CAChC,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,UAAU,MAAM,CAAC,IAAY;IACjC,IAAI,GAAG,GAAG,IAAI,CAAC;IACf,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE,CAAC;QACtC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;IAC3C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY;IAC3C,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE,CAAC;QACtC,uEAAuE;QACvE,6DAA6D;QAC7D,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;QACzC,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;IACpC,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC"}
@@ -0,0 +1,19 @@
1
+ import type { SourceRuntime } from "./types.js";
2
+ /**
3
+ * Detect the source runtime from a sample of JSONL lines.
4
+ *
5
+ * Returns:
6
+ * - "codex" — at least one line has `type: "response_item"` OR
7
+ * `type: "session_meta"` OR `type: "compacted"`.
8
+ * - "claude-code" — at least one line has `type: "user"` or
9
+ * `type: "assistant"` AND no Codex markers seen.
10
+ * - null — input is empty / non-JSONL / ambiguous (e.g., neither
11
+ * marker class appears).
12
+ *
13
+ * Detection is non-greedy: walks the input lines until a definitive
14
+ * marker is found. Bias toward Codex markers if both shape classes
15
+ * appear (extremely unlikely in practice; would indicate a malformed
16
+ * mixed source).
17
+ */
18
+ export declare function detectRuntime(content: string): SourceRuntime | null;
19
+ //# sourceMappingURL=runtime-detect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-detect.d.ts","sourceRoot":"","sources":["../../src/restore-packet/runtime-detect.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI,CA6CnE"}
@@ -0,0 +1,81 @@
1
+ // runtime-detect.ts — auto-detect the source runtime from a JSONL/transcript
2
+ // shape.
3
+ //
4
+ // Per M1 contract § 3.4: source-runtime resolution for `--source-jsonl` is
5
+ // auto-detected from the JSONL shape (Codex JSONL has `payload.type`
6
+ // markers; Claude transcript has different shape). If auto-detect is
7
+ // ambiguous, fail with clear error and prompt for `--source-runtime`
8
+ // flag.
9
+ //
10
+ // Detection is by content shape, NOT file extension or filename
11
+ // (per dispatch's "Do NOT use file extensions or filenames as the
12
+ // detection key. Detect by content shape.").
13
+ //
14
+ // Codex shape: each line is JSON with `type` field; the discriminating
15
+ // markers are `type: "session_meta"`, `type: "response_item"`, or
16
+ // `type: "compacted"`. response_item records carry a `payload` object
17
+ // with a `type` sub-field.
18
+ //
19
+ // Claude shape: each line is JSON with `type` field; values include
20
+ // `user`, `assistant`, `system`, `attachment`, `summary`, etc. NO
21
+ // `payload` wrapper; the message content is directly under `message`
22
+ // or `attachment`.
23
+ /**
24
+ * Detect the source runtime from a sample of JSONL lines.
25
+ *
26
+ * Returns:
27
+ * - "codex" — at least one line has `type: "response_item"` OR
28
+ * `type: "session_meta"` OR `type: "compacted"`.
29
+ * - "claude-code" — at least one line has `type: "user"` or
30
+ * `type: "assistant"` AND no Codex markers seen.
31
+ * - null — input is empty / non-JSONL / ambiguous (e.g., neither
32
+ * marker class appears).
33
+ *
34
+ * Detection is non-greedy: walks the input lines until a definitive
35
+ * marker is found. Bias toward Codex markers if both shape classes
36
+ * appear (extremely unlikely in practice; would indicate a malformed
37
+ * mixed source).
38
+ */
39
+ export function detectRuntime(content) {
40
+ if (typeof content !== "string" || content.length === 0)
41
+ return null;
42
+ let sawCodexMarker = false;
43
+ let sawClaudeMarker = false;
44
+ for (const rawLine of content.split("\n")) {
45
+ const line = rawLine.trim();
46
+ if (!line)
47
+ continue;
48
+ let record;
49
+ try {
50
+ record = JSON.parse(line);
51
+ }
52
+ catch {
53
+ // Skip malformed JSON lines; they don't affect detection.
54
+ continue;
55
+ }
56
+ const recordType = typeof record.type === "string" ? record.type : "";
57
+ // Codex discriminators: type values + payload wrapper presence.
58
+ if (recordType === "response_item" ||
59
+ recordType === "session_meta" ||
60
+ recordType === "compacted") {
61
+ sawCodexMarker = true;
62
+ // Early-return on the strongest Codex marker; ambiguity bias
63
+ // toward Codex if Claude markers also appear is intentional
64
+ // (Codex's response_item is structurally distinct from any
65
+ // Claude record; if it's present, the content is Codex JSONL).
66
+ return "codex";
67
+ }
68
+ // Claude discriminators: top-level type as a user/assistant marker.
69
+ if (recordType === "user" || recordType === "assistant") {
70
+ sawClaudeMarker = true;
71
+ // Don't early-return on Claude alone — keep looking for any
72
+ // Codex marker (defensive against the unlikely mixed-shape case).
73
+ }
74
+ }
75
+ if (sawCodexMarker)
76
+ return "codex";
77
+ if (sawClaudeMarker)
78
+ return "claude-code";
79
+ return null;
80
+ }
81
+ //# sourceMappingURL=runtime-detect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"runtime-detect.js","sourceRoot":"","sources":["../../src/restore-packet/runtime-detect.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAC7E,SAAS;AACT,EAAE;AACF,2EAA2E;AAC3E,qEAAqE;AACrE,qEAAqE;AACrE,qEAAqE;AACrE,QAAQ;AACR,EAAE;AACF,gEAAgE;AAChE,kEAAkE;AAClE,6CAA6C;AAC7C,EAAE;AACF,uEAAuE;AACvE,kEAAkE;AAClE,sEAAsE;AACtE,2BAA2B;AAC3B,EAAE;AACF,oEAAoE;AACpE,kEAAkE;AAClE,qEAAqE;AACrE,mBAAmB;AAInB;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,aAAa,CAAC,OAAe;IAC3C,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,IAAI,CAAC;IAErE,IAAI,cAAc,GAAG,KAAK,CAAC;IAC3B,IAAI,eAAe,GAAG,KAAK,CAAC;IAE5B,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QAC1C,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC,IAAI;YAAE,SAAS;QAEpB,IAAI,MAAwD,CAAC;QAC7D,IAAI,CAAC;YACH,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAAC,MAAM,CAAC;YACP,0DAA0D;YAC1D,SAAS;QACX,CAAC;QAED,MAAM,UAAU,GAAG,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;QAEtE,gEAAgE;QAChE,IACE,UAAU,KAAK,eAAe;YAC9B,UAAU,KAAK,cAAc;YAC7B,UAAU,KAAK,WAAW,EAC1B,CAAC;YACD,cAAc,GAAG,IAAI,CAAC;YACtB,6DAA6D;YAC7D,4DAA4D;YAC5D,2DAA2D;YAC3D,+DAA+D;YAC/D,OAAO,OAAO,CAAC;QACjB,CAAC;QAED,oEAAoE;QACpE,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;YACxD,eAAe,GAAG,IAAI,CAAC;YACvB,4DAA4D;YAC5D,kEAAkE;QACpE,CAAC;IACH,CAAC;IAED,IAAI,cAAc;QAAE,OAAO,OAAO,CAAC;IACnC,IAAI,eAAe;QAAE,OAAO,aAAa,CAAC;IAC1C,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -0,0 +1,13 @@
1
+ export interface ValidationError {
2
+ field: string;
3
+ value: string;
4
+ rule: string;
5
+ severity: "error" | "warning";
6
+ }
7
+ export interface ValidationResult {
8
+ valid: boolean;
9
+ errors: ValidationError[];
10
+ }
11
+ export declare const RESTORE_SUMMARY_SCHEMA: Record<string, unknown>;
12
+ export declare function validateRestoreSummary(summary: unknown): ValidationResult;
13
+ //# sourceMappingURL=schema-validator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-validator.d.ts","sourceRoot":"","sources":["../../src/restore-packet/schema-validator.ts"],"names":[],"mappings":"AA0BA,MAAM,WAAW,eAAe;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAC;CAC/B;AAED,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,EAAE,eAAe,EAAE,CAAC;CAC3B;AAKD,eAAO,MAAM,sBAAsB,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAgK1D,CAAC;AAyBF,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,gBAAgB,CAiCzE"}
@@ -0,0 +1,245 @@
1
+ // schema-validator.ts — validates restore-summary.json against the v0 JSON
2
+ // Schema (packages/cli/src/schemas/restore-summary.schema.json).
3
+ //
4
+ // Per M1 contract § 8 + IMPL § M2 line 167:
5
+ // - generator-side: emit-time self-check against the schema before atomic
6
+ // rename of the packet directory.
7
+ // - operator-side: M3 `rig restore-packet validate <packet-dir>` runs this
8
+ // validator and surfaces per-field violations.
9
+ //
10
+ // Validator returns a ValidationResult with `valid` and a per-field error
11
+ // list. Each error names: field path, value (truncated/escaped), rule, and
12
+ // severity. Required-field violations are severity `error`; optional-field
13
+ // malformations are severity `warning` per § 8.
14
+ //
15
+ // M2a R2 packaging fix: the schema is embedded directly in this module as
16
+ // a typed TS const (RESTORE_SUMMARY_SCHEMA) rather than read from the
17
+ // sibling .json file at runtime. tsc emits the const into the compiled
18
+ // validator JS, so the validator works after `tsc` emit without any extra
19
+ // build-script copy step. The canonical JSON Schema file at
20
+ // `packages/cli/src/schemas/restore-summary.schema.json` remains the
21
+ // source of truth for downstream IDE / tooling consumption; a drift-catcher
22
+ // test in `test/restore-packet.test.ts` asserts the two stay byte-equivalent.
23
+ import Ajv from "ajv";
24
+ import addFormats from "ajv-formats";
25
+ // RESTORE_SUMMARY_SCHEMA — verbatim mirror of
26
+ // `packages/cli/src/schemas/restore-summary.schema.json`. Keep these in
27
+ // lockstep; the drift-catcher test enforces equivalence.
28
+ export const RESTORE_SUMMARY_SCHEMA = {
29
+ $schema: "http://json-schema.org/draft-07/schema#",
30
+ $id: "https://openrig.dev/schemas/restore-summary.schema.json",
31
+ title: "Restore Packet Summary",
32
+ description: "Machine-readable metadata for a cross-runtime restore packet per the v0 paper standard.",
33
+ type: "object",
34
+ required: [
35
+ "source_session_id",
36
+ "source_rig",
37
+ "source_runtime",
38
+ "source_cwd",
39
+ "target_rig",
40
+ "target_runtime",
41
+ "target_workspace_root",
42
+ "default_target_repo",
43
+ "role_pointer",
44
+ "bounded_latest_transcript",
45
+ "touched_files",
46
+ "durable_pointers",
47
+ "current_work_summary",
48
+ "next_owner",
49
+ "caveats",
50
+ "authority_boundaries",
51
+ "omitted_classes",
52
+ "redaction_policy_id",
53
+ "source_trust_ranking",
54
+ "generator_version",
55
+ "generated_at",
56
+ ],
57
+ properties: {
58
+ source_session_id: { type: "string", minLength: 1 },
59
+ source_rig: { type: "string", minLength: 1 },
60
+ source_runtime: {
61
+ type: "string",
62
+ enum: ["claude-code", "codex", "terminal", "external"],
63
+ },
64
+ source_cwd: { type: "string", pattern: "^/" },
65
+ target_rig: { type: "string", minLength: 1 },
66
+ target_runtime: {
67
+ type: "string",
68
+ enum: ["claude-code", "codex", "terminal", "external"],
69
+ },
70
+ target_workspace_root: { type: "string", pattern: "^/" },
71
+ default_target_repo: { type: ["string", "null"] },
72
+ role_pointer: {
73
+ type: "string",
74
+ minLength: 1,
75
+ description: "Path or URI pointing to the role guidance file the restored seat should consume. REQUIRED per v0 standard field #9; resolves at restore time.",
76
+ },
77
+ bounded_latest_transcript: {
78
+ type: "object",
79
+ required: ["path", "message_count", "bound"],
80
+ properties: {
81
+ path: { type: "string" },
82
+ message_count: {
83
+ type: "integer",
84
+ minimum: 0,
85
+ description: "Actual count of extracted messages in transcript-latest.md.",
86
+ },
87
+ bound: {
88
+ type: "integer",
89
+ const: 120,
90
+ description: "v0 bound is fixed at 120 messages to match Velocity prior art (per contract § 7). v1+ may make configurable; v0 schema requires const 120 so packets with the wrong bound cannot pass.",
91
+ },
92
+ },
93
+ },
94
+ full_transcript: {
95
+ type: "object",
96
+ properties: {
97
+ path: { type: "string" },
98
+ line_count: { type: "integer", minimum: 0 },
99
+ },
100
+ description: "Optional per v0 standard field #11. Generator emits when full transcript material is available (e.g., from --source-jsonl or full-read --source-session); omitted otherwise.",
101
+ },
102
+ touched_files: {
103
+ type: "object",
104
+ required: ["path", "top_paths"],
105
+ properties: {
106
+ path: { type: "string" },
107
+ top_paths: {
108
+ type: "array",
109
+ items: {
110
+ type: "object",
111
+ required: ["path", "count"],
112
+ properties: {
113
+ path: { type: "string" },
114
+ count: { type: "integer", minimum: 0 },
115
+ },
116
+ },
117
+ },
118
+ },
119
+ },
120
+ durable_pointers: {
121
+ type: "object",
122
+ required: [
123
+ "queue_pointers",
124
+ "progress_pointers",
125
+ "field_note_pointers",
126
+ "artifact_pointers",
127
+ ],
128
+ properties: {
129
+ queue_pointers: {
130
+ type: "array",
131
+ items: { type: "string" },
132
+ description: "References to durable queue items (qitem ids or queue-file paths).",
133
+ },
134
+ progress_pointers: {
135
+ type: "array",
136
+ items: { type: "string" },
137
+ description: "References to PROGRESS.md cursors the source seat was operating against.",
138
+ },
139
+ field_note_pointers: {
140
+ type: "array",
141
+ items: { type: "string" },
142
+ description: "References to field-notes folders or files.",
143
+ },
144
+ artifact_pointers: {
145
+ type: "array",
146
+ items: { type: "string" },
147
+ description: "Other durable artifacts (proof packets, slice packets, candidate dossiers).",
148
+ },
149
+ },
150
+ description: "REQUIRED per v0 standard field #13. Pointers to durable work the source seat was operating against; restored seat reads to recover work-context.",
151
+ },
152
+ current_work_summary: { type: "string", minLength: 1 },
153
+ next_owner: { type: "string", minLength: 1 },
154
+ caveats: { type: "array", items: { type: "string" } },
155
+ authority_boundaries: { type: "string", minLength: 1 },
156
+ omitted_classes: {
157
+ type: "array",
158
+ items: {
159
+ type: "string",
160
+ enum: ["reasoning_records", "raw_tool_outputs", "function_call_output", "redacted_secrets"],
161
+ },
162
+ },
163
+ redaction_policy_id: { type: "string", enum: ["velocity-v1", "openrig-v0"] },
164
+ source_trust_ranking: {
165
+ type: "array",
166
+ items: {
167
+ type: "string",
168
+ enum: [
169
+ "rig_whoami",
170
+ "target_rigspec",
171
+ "bounded_latest_transcript",
172
+ "full_transcript",
173
+ "touched_files",
174
+ "restore_summary",
175
+ ],
176
+ },
177
+ minItems: 1,
178
+ },
179
+ generator_version: { type: "string", minLength: 1 },
180
+ generated_at: { type: "string", format: "date-time" },
181
+ },
182
+ additionalProperties: false,
183
+ };
184
+ let cachedValidator = null;
185
+ function getValidator() {
186
+ if (cachedValidator)
187
+ return cachedValidator;
188
+ const ajv = new Ajv({ allErrors: true, strict: false });
189
+ addFormats(ajv);
190
+ cachedValidator = ajv.compile(RESTORE_SUMMARY_SCHEMA);
191
+ return cachedValidator;
192
+ }
193
+ function truncateValue(value) {
194
+ if (value === undefined)
195
+ return "<undefined>";
196
+ if (value === null)
197
+ return "null";
198
+ let s;
199
+ try {
200
+ s = typeof value === "string" ? value : JSON.stringify(value);
201
+ }
202
+ catch {
203
+ s = String(value);
204
+ }
205
+ if (s.length > 80)
206
+ return s.slice(0, 77) + "...";
207
+ return s;
208
+ }
209
+ export function validateRestoreSummary(summary) {
210
+ const validator = getValidator();
211
+ const ok = validator(summary);
212
+ if (ok) {
213
+ return { valid: true, errors: [] };
214
+ }
215
+ const errors = (validator.errors ?? []).map((err) => {
216
+ const instancePath = err.instancePath || "";
217
+ const missing = err.params && err.params.missingProperty;
218
+ const additional = err.params && err.params.additionalProperty;
219
+ let field = instancePath.replace(/^\//, "").replace(/\//g, ".");
220
+ if (missing)
221
+ field = field ? `${field}.${missing}` : missing;
222
+ if (additional)
223
+ field = additional;
224
+ // Per M1 contract § 8 + IMPL § M3: optional-field malformations are
225
+ // severity "warning"; required-field violations are severity "error".
226
+ // The only top-level optional field in v0 is `full_transcript`.
227
+ // Errors whose path begins at `/full_transcript` come from validating
228
+ // the optional object's contents, not from a missing-required check
229
+ // on a required field.
230
+ const isOptionalFieldError = instancePath.startsWith("/full_transcript");
231
+ return {
232
+ field: field || "<root>",
233
+ value: truncateValue(err.data),
234
+ rule: `${err.keyword}: ${err.message ?? ""}`.trim(),
235
+ severity: isOptionalFieldError ? "warning" : "error",
236
+ };
237
+ });
238
+ // `valid` is false on ANY ajv violation (preserves M2c writer
239
+ // semantics: any malformation should block atomic rename). The M3
240
+ // validate command consults `errors[].severity` to decide exit code
241
+ // per M1 contract § 8 (required-field-class errors → exit nonzero;
242
+ // optional-field warnings → exit 0 with warning text).
243
+ return { valid: false, errors };
244
+ }
245
+ //# sourceMappingURL=schema-validator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"schema-validator.js","sourceRoot":"","sources":["../../src/restore-packet/schema-validator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,76 @@
1
+ /** A single user-visible message extracted from a transcript. */
2
+ export interface ExtractedMessage {
3
+ /** ISO-8601 timestamp if the source provides one; else null. */
4
+ timestamp: string | null;
5
+ /** Speaker role. Restricted to user-visible roles (developer/user/assistant). */
6
+ role: "developer" | "user" | "assistant";
7
+ /** Redacted message text. */
8
+ text: string;
9
+ /** First non-empty line of the text, truncated to ~180 chars. Used in summaries. */
10
+ preview: string;
11
+ }
12
+ /** Canonical record-class enum per M1 contract § 5. */
13
+ export type OmittedRecordClass = "reasoning_records" | "raw_tool_outputs" | "function_call_output" | "redacted_secrets";
14
+ /**
15
+ * A path frequency entry from path extraction. Sorted by count
16
+ * descending then path ascending; used to populate `touched_files.top_paths`.
17
+ */
18
+ export interface PathCount {
19
+ path: string;
20
+ count: number;
21
+ }
22
+ /**
23
+ * Per-runtime per-record-type counter. Flexible string keys because
24
+ * Codex JSONL uses `record.type` strings and Claude transcript uses
25
+ * `record.type` strings; both are runtime-defined.
26
+ */
27
+ export type TypeCounts = Record<string, number>;
28
+ /**
29
+ * Per-omitted-class counter. Records how many records were filtered
30
+ * for each of the 4 contract enums during parsing/redaction.
31
+ */
32
+ export type OmittedCounts = Record<OmittedRecordClass, number>;
33
+ /**
34
+ * Optional session metadata extracted from the source. Codex emits a
35
+ * `session_meta` record at the top of a JSONL; Claude transcripts
36
+ * carry per-record `cwd` etc.
37
+ */
38
+ export interface SessionMeta {
39
+ cwd: string | null;
40
+ sessionId: string | null;
41
+ /** Free-form additional fields the runtime emitted; not load-bearing. */
42
+ raw?: Record<string, unknown>;
43
+ }
44
+ /**
45
+ * Structured representation produced by both parsers. The packet-writer
46
+ * (M2c) consumes this to assemble a v0 restore packet.
47
+ */
48
+ export interface StructuredTranscript {
49
+ /** Top-level session metadata (cwd, sessionId). */
50
+ sessionMeta: SessionMeta | null;
51
+ /** Total source lines processed (raw JSONL line count, including malformed/skipped). */
52
+ lineCount: number;
53
+ /** Number of user-visible messages extracted into `messages`. */
54
+ messageCount: number;
55
+ /**
56
+ * Number of "compaction" records seen. Codex emits these explicitly
57
+ * (`type: "compacted"`); Claude doesn't. The field is parser-specific
58
+ * but always present (zero when not applicable).
59
+ */
60
+ compactedCount: number;
61
+ /** Per-record-type frequency map; used in human reports / debug. */
62
+ typeCounts: TypeCounts;
63
+ /** Per-omitted-class counter; populated as the parser filters records. */
64
+ omittedCounts: OmittedCounts;
65
+ /** Extracted messages in chronological order; redaction has been applied. */
66
+ messages: ExtractedMessage[];
67
+ /**
68
+ * Path frequency inventory; sorted by count desc then path asc.
69
+ * Capped at 200 entries.
70
+ */
71
+ paths: PathCount[];
72
+ }
73
+ /** Source-runtime kind. v0 supports codex + claude-code transcript shapes. */
74
+ export type SourceRuntime = "codex" | "claude-code";
75
+ export declare function emptyOmittedCounts(): OmittedCounts;
76
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/restore-packet/types.ts"],"names":[],"mappings":"AAOA,iEAAiE;AACjE,MAAM,WAAW,gBAAgB;IAC/B,gEAAgE;IAChE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,iFAAiF;IACjF,IAAI,EAAE,WAAW,GAAG,MAAM,GAAG,WAAW,CAAC;IACzC,6BAA6B;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,oFAAoF;IACpF,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,uDAAuD;AACvD,MAAM,MAAM,kBAAkB,GAC1B,mBAAmB,GACnB,kBAAkB,GAClB,sBAAsB,GACtB,kBAAkB,CAAC;AAEvB;;;GAGG;AACH,MAAM,WAAW,SAAS;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;;GAIG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;AAEhD;;;GAGG;AACH,MAAM,MAAM,aAAa,GAAG,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC;AAE/D;;;;GAIG;AACH,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,yEAAyE;IACzE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC/B;AAED;;;GAGG;AACH,MAAM,WAAW,oBAAoB;IACnC,mDAAmD;IACnD,WAAW,EAAE,WAAW,GAAG,IAAI,CAAC;IAChC,wFAAwF;IACxF,SAAS,EAAE,MAAM,CAAC;IAClB,iEAAiE;IACjE,YAAY,EAAE,MAAM,CAAC;IACrB;;;;OAIG;IACH,cAAc,EAAE,MAAM,CAAC;IACvB,oEAAoE;IACpE,UAAU,EAAE,UAAU,CAAC;IACvB,0EAA0E;IAC1E,aAAa,EAAE,aAAa,CAAC;IAC7B,6EAA6E;IAC7E,QAAQ,EAAE,gBAAgB,EAAE,CAAC;IAC7B;;;OAGG;IACH,KAAK,EAAE,SAAS,EAAE,CAAC;CACpB;AAED,8EAA8E;AAC9E,MAAM,MAAM,aAAa,GAAG,OAAO,GAAG,aAAa,CAAC;AAEpD,wBAAgB,kBAAkB,IAAI,aAAa,CAOlD"}
@@ -0,0 +1,15 @@
1
+ // types.ts — shared TypeScript types for the restore-packet generator.
2
+ //
3
+ // Both runtime adapters (codex-jsonl-parser, claude-transcript-parser)
4
+ // emit the same StructuredTranscript shape. Downstream modules
5
+ // (redaction, omitted-records, packet-writer) consume this shape
6
+ // without caring about the source runtime.
7
+ export function emptyOmittedCounts() {
8
+ return {
9
+ reasoning_records: 0,
10
+ raw_tool_outputs: 0,
11
+ function_call_output: 0,
12
+ redacted_secrets: 0,
13
+ };
14
+ }
15
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/restore-packet/types.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,EAAE;AACF,uEAAuE;AACvE,+DAA+D;AAC/D,iEAAiE;AACjE,2CAA2C;AAwF3C,MAAM,UAAU,kBAAkB;IAChC,OAAO;QACL,iBAAiB,EAAE,CAAC;QACpB,gBAAgB,EAAE,CAAC;QACnB,oBAAoB,EAAE,CAAC;QACvB,gBAAgB,EAAE,CAAC;KACpB,CAAC;AACJ,CAAC"}