@richhardry/codor 0.10.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 (388) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +293 -0
  3. package/bin/codor.mjs +7 -0
  4. package/node_modules/@codor/adapter-antigravity/dist/adapter.d.ts +41 -0
  5. package/node_modules/@codor/adapter-antigravity/dist/adapter.d.ts.map +1 -0
  6. package/node_modules/@codor/adapter-antigravity/dist/adapter.js +275 -0
  7. package/node_modules/@codor/adapter-antigravity/dist/adapter.js.map +1 -0
  8. package/node_modules/@codor/adapter-antigravity/dist/index.d.ts +2 -0
  9. package/node_modules/@codor/adapter-antigravity/dist/index.d.ts.map +1 -0
  10. package/node_modules/@codor/adapter-antigravity/dist/index.js +2 -0
  11. package/node_modules/@codor/adapter-antigravity/dist/index.js.map +1 -0
  12. package/node_modules/@codor/adapter-antigravity/package.json +18 -0
  13. package/node_modules/@codor/adapter-claude-code/dist/adapter.d.ts +94 -0
  14. package/node_modules/@codor/adapter-claude-code/dist/adapter.d.ts.map +1 -0
  15. package/node_modules/@codor/adapter-claude-code/dist/adapter.js +785 -0
  16. package/node_modules/@codor/adapter-claude-code/dist/adapter.js.map +1 -0
  17. package/node_modules/@codor/adapter-claude-code/dist/index.d.ts +8 -0
  18. package/node_modules/@codor/adapter-claude-code/dist/index.d.ts.map +1 -0
  19. package/node_modules/@codor/adapter-claude-code/dist/index.js +5 -0
  20. package/node_modules/@codor/adapter-claude-code/dist/index.js.map +1 -0
  21. package/node_modules/@codor/adapter-claude-code/dist/limits-probe.d.ts +18 -0
  22. package/node_modules/@codor/adapter-claude-code/dist/limits-probe.d.ts.map +1 -0
  23. package/node_modules/@codor/adapter-claude-code/dist/limits-probe.js +67 -0
  24. package/node_modules/@codor/adapter-claude-code/dist/limits-probe.js.map +1 -0
  25. package/node_modules/@codor/adapter-claude-code/dist/peek.d.ts +3 -0
  26. package/node_modules/@codor/adapter-claude-code/dist/peek.d.ts.map +1 -0
  27. package/node_modules/@codor/adapter-claude-code/dist/peek.js +128 -0
  28. package/node_modules/@codor/adapter-claude-code/dist/peek.js.map +1 -0
  29. package/node_modules/@codor/adapter-claude-code/dist/query.d.ts +9 -0
  30. package/node_modules/@codor/adapter-claude-code/dist/query.d.ts.map +1 -0
  31. package/node_modules/@codor/adapter-claude-code/dist/query.js +7 -0
  32. package/node_modules/@codor/adapter-claude-code/dist/query.js.map +1 -0
  33. package/node_modules/@codor/adapter-claude-code/dist/translate.d.ts +40 -0
  34. package/node_modules/@codor/adapter-claude-code/dist/translate.d.ts.map +1 -0
  35. package/node_modules/@codor/adapter-claude-code/dist/translate.js +505 -0
  36. package/node_modules/@codor/adapter-claude-code/dist/translate.js.map +1 -0
  37. package/node_modules/@codor/adapter-claude-code/package.json +18 -0
  38. package/node_modules/@codor/adapter-codex/dist/adapter.d.ts +105 -0
  39. package/node_modules/@codor/adapter-codex/dist/adapter.d.ts.map +1 -0
  40. package/node_modules/@codor/adapter-codex/dist/adapter.js +625 -0
  41. package/node_modules/@codor/adapter-codex/dist/adapter.js.map +1 -0
  42. package/node_modules/@codor/adapter-codex/dist/app-server-transport.d.ts +39 -0
  43. package/node_modules/@codor/adapter-codex/dist/app-server-transport.d.ts.map +1 -0
  44. package/node_modules/@codor/adapter-codex/dist/app-server-transport.js +186 -0
  45. package/node_modules/@codor/adapter-codex/dist/app-server-transport.js.map +1 -0
  46. package/node_modules/@codor/adapter-codex/dist/index.d.ts +8 -0
  47. package/node_modules/@codor/adapter-codex/dist/index.d.ts.map +1 -0
  48. package/node_modules/@codor/adapter-codex/dist/index.js +5 -0
  49. package/node_modules/@codor/adapter-codex/dist/index.js.map +1 -0
  50. package/node_modules/@codor/adapter-codex/dist/limits-probe.d.ts +18 -0
  51. package/node_modules/@codor/adapter-codex/dist/limits-probe.d.ts.map +1 -0
  52. package/node_modules/@codor/adapter-codex/dist/limits-probe.js +87 -0
  53. package/node_modules/@codor/adapter-codex/dist/limits-probe.js.map +1 -0
  54. package/node_modules/@codor/adapter-codex/dist/peek.d.ts +3 -0
  55. package/node_modules/@codor/adapter-codex/dist/peek.d.ts.map +1 -0
  56. package/node_modules/@codor/adapter-codex/dist/peek.js +98 -0
  57. package/node_modules/@codor/adapter-codex/dist/peek.js.map +1 -0
  58. package/node_modules/@codor/adapter-codex/dist/translate.d.ts +17 -0
  59. package/node_modules/@codor/adapter-codex/dist/translate.d.ts.map +1 -0
  60. package/node_modules/@codor/adapter-codex/dist/translate.js +286 -0
  61. package/node_modules/@codor/adapter-codex/dist/translate.js.map +1 -0
  62. package/node_modules/@codor/adapter-codex/package.json +17 -0
  63. package/node_modules/@codor/adapter-copilot/dist/adapter.d.ts +40 -0
  64. package/node_modules/@codor/adapter-copilot/dist/adapter.d.ts.map +1 -0
  65. package/node_modules/@codor/adapter-copilot/dist/adapter.js +190 -0
  66. package/node_modules/@codor/adapter-copilot/dist/adapter.js.map +1 -0
  67. package/node_modules/@codor/adapter-copilot/dist/index.d.ts +4 -0
  68. package/node_modules/@codor/adapter-copilot/dist/index.d.ts.map +1 -0
  69. package/node_modules/@codor/adapter-copilot/dist/index.js +3 -0
  70. package/node_modules/@codor/adapter-copilot/dist/index.js.map +1 -0
  71. package/node_modules/@codor/adapter-copilot/dist/translate.d.ts +11 -0
  72. package/node_modules/@codor/adapter-copilot/dist/translate.d.ts.map +1 -0
  73. package/node_modules/@codor/adapter-copilot/dist/translate.js +184 -0
  74. package/node_modules/@codor/adapter-copilot/dist/translate.js.map +1 -0
  75. package/node_modules/@codor/adapter-copilot/package.json +18 -0
  76. package/node_modules/@codor/adapter-cursor/dist/adapter.d.ts +32 -0
  77. package/node_modules/@codor/adapter-cursor/dist/adapter.d.ts.map +1 -0
  78. package/node_modules/@codor/adapter-cursor/dist/adapter.js +179 -0
  79. package/node_modules/@codor/adapter-cursor/dist/adapter.js.map +1 -0
  80. package/node_modules/@codor/adapter-cursor/dist/index.d.ts +9 -0
  81. package/node_modules/@codor/adapter-cursor/dist/index.d.ts.map +1 -0
  82. package/node_modules/@codor/adapter-cursor/dist/index.js +8 -0
  83. package/node_modules/@codor/adapter-cursor/dist/index.js.map +1 -0
  84. package/node_modules/@codor/adapter-cursor/dist/translate.d.ts +15 -0
  85. package/node_modules/@codor/adapter-cursor/dist/translate.d.ts.map +1 -0
  86. package/node_modules/@codor/adapter-cursor/dist/translate.js +164 -0
  87. package/node_modules/@codor/adapter-cursor/dist/translate.js.map +1 -0
  88. package/node_modules/@codor/adapter-cursor/package.json +17 -0
  89. package/node_modules/@codor/adapter-gemini/dist/adapter.d.ts +36 -0
  90. package/node_modules/@codor/adapter-gemini/dist/adapter.d.ts.map +1 -0
  91. package/node_modules/@codor/adapter-gemini/dist/adapter.js +245 -0
  92. package/node_modules/@codor/adapter-gemini/dist/adapter.js.map +1 -0
  93. package/node_modules/@codor/adapter-gemini/dist/index.d.ts +4 -0
  94. package/node_modules/@codor/adapter-gemini/dist/index.d.ts.map +1 -0
  95. package/node_modules/@codor/adapter-gemini/dist/index.js +3 -0
  96. package/node_modules/@codor/adapter-gemini/dist/index.js.map +1 -0
  97. package/node_modules/@codor/adapter-gemini/dist/translate.d.ts +12 -0
  98. package/node_modules/@codor/adapter-gemini/dist/translate.d.ts.map +1 -0
  99. package/node_modules/@codor/adapter-gemini/dist/translate.js +123 -0
  100. package/node_modules/@codor/adapter-gemini/dist/translate.js.map +1 -0
  101. package/node_modules/@codor/adapter-gemini/package.json +18 -0
  102. package/node_modules/@codor/adapter-opencode/dist/adapter.d.ts +42 -0
  103. package/node_modules/@codor/adapter-opencode/dist/adapter.d.ts.map +1 -0
  104. package/node_modules/@codor/adapter-opencode/dist/adapter.js +240 -0
  105. package/node_modules/@codor/adapter-opencode/dist/adapter.js.map +1 -0
  106. package/node_modules/@codor/adapter-opencode/dist/index.d.ts +4 -0
  107. package/node_modules/@codor/adapter-opencode/dist/index.d.ts.map +1 -0
  108. package/node_modules/@codor/adapter-opencode/dist/index.js +3 -0
  109. package/node_modules/@codor/adapter-opencode/dist/index.js.map +1 -0
  110. package/node_modules/@codor/adapter-opencode/dist/translate.d.ts +12 -0
  111. package/node_modules/@codor/adapter-opencode/dist/translate.d.ts.map +1 -0
  112. package/node_modules/@codor/adapter-opencode/dist/translate.js +144 -0
  113. package/node_modules/@codor/adapter-opencode/dist/translate.js.map +1 -0
  114. package/node_modules/@codor/adapter-opencode/package.json +18 -0
  115. package/node_modules/@codor/cli/dist/artifact.d.ts +33 -0
  116. package/node_modules/@codor/cli/dist/artifact.d.ts.map +1 -0
  117. package/node_modules/@codor/cli/dist/artifact.js +183 -0
  118. package/node_modules/@codor/cli/dist/artifact.js.map +1 -0
  119. package/node_modules/@codor/cli/dist/attach.d.ts +25 -0
  120. package/node_modules/@codor/cli/dist/attach.d.ts.map +1 -0
  121. package/node_modules/@codor/cli/dist/attach.js +133 -0
  122. package/node_modules/@codor/cli/dist/attach.js.map +1 -0
  123. package/node_modules/@codor/cli/dist/connection.d.ts +21 -0
  124. package/node_modules/@codor/cli/dist/connection.d.ts.map +1 -0
  125. package/node_modules/@codor/cli/dist/connection.js +130 -0
  126. package/node_modules/@codor/cli/dist/connection.js.map +1 -0
  127. package/node_modules/@codor/cli/dist/detect.d.ts +14 -0
  128. package/node_modules/@codor/cli/dist/detect.d.ts.map +1 -0
  129. package/node_modules/@codor/cli/dist/detect.js +99 -0
  130. package/node_modules/@codor/cli/dist/detect.js.map +1 -0
  131. package/node_modules/@codor/cli/dist/index.d.ts +17 -0
  132. package/node_modules/@codor/cli/dist/index.d.ts.map +1 -0
  133. package/node_modules/@codor/cli/dist/index.js +24 -0
  134. package/node_modules/@codor/cli/dist/index.js.map +1 -0
  135. package/node_modules/@codor/cli/dist/mirror.d.ts +4 -0
  136. package/node_modules/@codor/cli/dist/mirror.d.ts.map +1 -0
  137. package/node_modules/@codor/cli/dist/mirror.js +93 -0
  138. package/node_modules/@codor/cli/dist/mirror.js.map +1 -0
  139. package/node_modules/@codor/cli/dist/program.d.ts +17 -0
  140. package/node_modules/@codor/cli/dist/program.d.ts.map +1 -0
  141. package/node_modules/@codor/cli/dist/program.js +1068 -0
  142. package/node_modules/@codor/cli/dist/program.js.map +1 -0
  143. package/node_modules/@codor/cli/dist/runtime-install.d.ts +61 -0
  144. package/node_modules/@codor/cli/dist/runtime-install.d.ts.map +1 -0
  145. package/node_modules/@codor/cli/dist/runtime-install.js +122 -0
  146. package/node_modules/@codor/cli/dist/runtime-install.js.map +1 -0
  147. package/node_modules/@codor/cli/dist/runtime-paths.d.ts +24 -0
  148. package/node_modules/@codor/cli/dist/runtime-paths.d.ts.map +1 -0
  149. package/node_modules/@codor/cli/dist/runtime-paths.js +69 -0
  150. package/node_modules/@codor/cli/dist/runtime-paths.js.map +1 -0
  151. package/node_modules/@codor/cli/dist/setup-flow.d.ts +69 -0
  152. package/node_modules/@codor/cli/dist/setup-flow.d.ts.map +1 -0
  153. package/node_modules/@codor/cli/dist/setup-flow.js +110 -0
  154. package/node_modules/@codor/cli/dist/setup-flow.js.map +1 -0
  155. package/node_modules/@codor/cli/dist/setup-session.d.ts +105 -0
  156. package/node_modules/@codor/cli/dist/setup-session.d.ts.map +1 -0
  157. package/node_modules/@codor/cli/dist/setup-session.js +346 -0
  158. package/node_modules/@codor/cli/dist/setup-session.js.map +1 -0
  159. package/node_modules/@codor/cli/dist/setup-ui.d.ts +93 -0
  160. package/node_modules/@codor/cli/dist/setup-ui.d.ts.map +1 -0
  161. package/node_modules/@codor/cli/dist/setup-ui.js +249 -0
  162. package/node_modules/@codor/cli/dist/setup-ui.js.map +1 -0
  163. package/node_modules/@codor/cli/dist/setup.d.ts +108 -0
  164. package/node_modules/@codor/cli/dist/setup.d.ts.map +1 -0
  165. package/node_modules/@codor/cli/dist/setup.js +878 -0
  166. package/node_modules/@codor/cli/dist/setup.js.map +1 -0
  167. package/node_modules/@codor/cli/dist/terminal-keys.d.ts +26 -0
  168. package/node_modules/@codor/cli/dist/terminal-keys.d.ts.map +1 -0
  169. package/node_modules/@codor/cli/dist/terminal-keys.js +70 -0
  170. package/node_modules/@codor/cli/dist/terminal-keys.js.map +1 -0
  171. package/node_modules/@codor/cli/dist/terminal-qr.d.ts +2 -0
  172. package/node_modules/@codor/cli/dist/terminal-qr.d.ts.map +1 -0
  173. package/node_modules/@codor/cli/dist/terminal-qr.js +30 -0
  174. package/node_modules/@codor/cli/dist/terminal-qr.js.map +1 -0
  175. package/node_modules/@codor/cli/dist/up.d.ts +52 -0
  176. package/node_modules/@codor/cli/dist/up.d.ts.map +1 -0
  177. package/node_modules/@codor/cli/dist/up.js +178 -0
  178. package/node_modules/@codor/cli/dist/up.js.map +1 -0
  179. package/node_modules/@codor/cli/package.json +24 -0
  180. package/node_modules/@codor/cli/packaging/systemd/codor.service +21 -0
  181. package/node_modules/@codor/cli/runtime/web/assets/LandingPage-BOmG5kSw.js +31 -0
  182. package/node_modules/@codor/cli/runtime/web/assets/LedgerPage-CecuTS8-.js +1 -0
  183. package/node_modules/@codor/cli/runtime/web/assets/NoChannels-CYiBXGQd.js +11 -0
  184. package/node_modules/@codor/cli/runtime/web/assets/PairingCodeInput-Cr6XDWx-.js +1 -0
  185. package/node_modules/@codor/cli/runtime/web/assets/PairingPage-CQBWNA2L.js +6 -0
  186. package/node_modules/@codor/cli/runtime/web/assets/SettingsPage-DGLbSXE7.js +16 -0
  187. package/node_modules/@codor/cli/runtime/web/assets/StartupUnavailable-DdQBHip_.js +1 -0
  188. package/node_modules/@codor/cli/runtime/web/assets/arrow-left-BOpjMuRi.js +6 -0
  189. package/node_modules/@codor/cli/runtime/web/assets/browser-BWQYNOsD.js +6 -0
  190. package/node_modules/@codor/cli/runtime/web/assets/graph-toBZHlC0.js +1 -0
  191. package/node_modules/@codor/cli/runtime/web/assets/index-Cxi54Xim.js +408 -0
  192. package/node_modules/@codor/cli/runtime/web/assets/index-DjwJakJC.css +1 -0
  193. package/node_modules/@codor/cli/runtime/web/assets/qr-DpynCwP9.js +8 -0
  194. package/node_modules/@codor/cli/runtime/web/assets/react-C8w-UNLI.js +32 -0
  195. package/node_modules/@codor/cli/runtime/web/assets/sodium-DtsvMzX9.js +1 -0
  196. package/node_modules/@codor/cli/runtime/web/codor-192.png +0 -0
  197. package/node_modules/@codor/cli/runtime/web/codor-512.png +0 -0
  198. package/node_modules/@codor/cli/runtime/web/codor-apple-touch-180.png +0 -0
  199. package/node_modules/@codor/cli/runtime/web/codor-favicon.svg +86 -0
  200. package/node_modules/@codor/cli/runtime/web/codor-mark.svg +86 -0
  201. package/node_modules/@codor/cli/runtime/web/codor-maskable-512.png +0 -0
  202. package/node_modules/@codor/cli/runtime/web/codor-og.png +0 -0
  203. package/node_modules/@codor/cli/runtime/web/fonts/BitcountPropSingle-latin.woff2 +0 -0
  204. package/node_modules/@codor/cli/runtime/web/fonts/Geist-Variable.woff2 +0 -0
  205. package/node_modules/@codor/cli/runtime/web/fonts/GeistMono-Variable.woff2 +0 -0
  206. package/node_modules/@codor/cli/runtime/web/fonts/OFL.txt +93 -0
  207. package/node_modules/@codor/cli/runtime/web/index.html +53 -0
  208. package/node_modules/@codor/cli/runtime/web/manifest.webmanifest +1 -0
  209. package/node_modules/@codor/cli/runtime/web/sw.js +2 -0
  210. package/node_modules/@codor/protocol/dist/adapter.d.ts +118 -0
  211. package/node_modules/@codor/protocol/dist/adapter.d.ts.map +1 -0
  212. package/node_modules/@codor/protocol/dist/adapter.js +15 -0
  213. package/node_modules/@codor/protocol/dist/adapter.js.map +1 -0
  214. package/node_modules/@codor/protocol/dist/body.d.ts +14 -0
  215. package/node_modules/@codor/protocol/dist/body.d.ts.map +1 -0
  216. package/node_modules/@codor/protocol/dist/body.js +50 -0
  217. package/node_modules/@codor/protocol/dist/body.js.map +1 -0
  218. package/node_modules/@codor/protocol/dist/changelog.d.ts +30 -0
  219. package/node_modules/@codor/protocol/dist/changelog.d.ts.map +1 -0
  220. package/node_modules/@codor/protocol/dist/changelog.js +19 -0
  221. package/node_modules/@codor/protocol/dist/changelog.js.map +1 -0
  222. package/node_modules/@codor/protocol/dist/default-recipient.d.ts +8 -0
  223. package/node_modules/@codor/protocol/dist/default-recipient.d.ts.map +1 -0
  224. package/node_modules/@codor/protocol/dist/default-recipient.js +19 -0
  225. package/node_modules/@codor/protocol/dist/default-recipient.js.map +1 -0
  226. package/node_modules/@codor/protocol/dist/delivery.d.ts +42 -0
  227. package/node_modules/@codor/protocol/dist/delivery.d.ts.map +1 -0
  228. package/node_modules/@codor/protocol/dist/delivery.js +44 -0
  229. package/node_modules/@codor/protocol/dist/delivery.js.map +1 -0
  230. package/node_modules/@codor/protocol/dist/events.d.ts +284 -0
  231. package/node_modules/@codor/protocol/dist/events.d.ts.map +1 -0
  232. package/node_modules/@codor/protocol/dist/events.js +150 -0
  233. package/node_modules/@codor/protocol/dist/events.js.map +1 -0
  234. package/node_modules/@codor/protocol/dist/ids.d.ts +19 -0
  235. package/node_modules/@codor/protocol/dist/ids.d.ts.map +1 -0
  236. package/node_modules/@codor/protocol/dist/ids.js +27 -0
  237. package/node_modules/@codor/protocol/dist/ids.js.map +1 -0
  238. package/node_modules/@codor/protocol/dist/index.d.ts +14 -0
  239. package/node_modules/@codor/protocol/dist/index.d.ts.map +1 -0
  240. package/node_modules/@codor/protocol/dist/index.js +14 -0
  241. package/node_modules/@codor/protocol/dist/index.js.map +1 -0
  242. package/node_modules/@codor/protocol/dist/interaction.d.ts +45 -0
  243. package/node_modules/@codor/protocol/dist/interaction.d.ts.map +1 -0
  244. package/node_modules/@codor/protocol/dist/interaction.js +33 -0
  245. package/node_modules/@codor/protocol/dist/interaction.js.map +1 -0
  246. package/node_modules/@codor/protocol/dist/member.d.ts +146 -0
  247. package/node_modules/@codor/protocol/dist/member.d.ts.map +1 -0
  248. package/node_modules/@codor/protocol/dist/member.js +169 -0
  249. package/node_modules/@codor/protocol/dist/member.js.map +1 -0
  250. package/node_modules/@codor/protocol/dist/message.d.ts +166 -0
  251. package/node_modules/@codor/protocol/dist/message.d.ts.map +1 -0
  252. package/node_modules/@codor/protocol/dist/message.js +95 -0
  253. package/node_modules/@codor/protocol/dist/message.js.map +1 -0
  254. package/node_modules/@codor/protocol/dist/observability.d.ts +80 -0
  255. package/node_modules/@codor/protocol/dist/observability.d.ts.map +1 -0
  256. package/node_modules/@codor/protocol/dist/observability.js +41 -0
  257. package/node_modules/@codor/protocol/dist/observability.js.map +1 -0
  258. package/node_modules/@codor/protocol/dist/room.d.ts +430 -0
  259. package/node_modules/@codor/protocol/dist/room.d.ts.map +1 -0
  260. package/node_modules/@codor/protocol/dist/room.js +142 -0
  261. package/node_modules/@codor/protocol/dist/room.js.map +1 -0
  262. package/node_modules/@codor/protocol/dist/ws.d.ts +1348 -0
  263. package/node_modules/@codor/protocol/dist/ws.d.ts.map +1 -0
  264. package/node_modules/@codor/protocol/dist/ws.js +282 -0
  265. package/node_modules/@codor/protocol/dist/ws.js.map +1 -0
  266. package/node_modules/@codor/protocol/package.json +17 -0
  267. package/node_modules/@codor/switchboard/dist/adapter-registry.d.ts +14 -0
  268. package/node_modules/@codor/switchboard/dist/adapter-registry.d.ts.map +1 -0
  269. package/node_modules/@codor/switchboard/dist/adapter-registry.js +175 -0
  270. package/node_modules/@codor/switchboard/dist/adapter-registry.js.map +1 -0
  271. package/node_modules/@codor/switchboard/dist/authorization.d.ts +13 -0
  272. package/node_modules/@codor/switchboard/dist/authorization.d.ts.map +1 -0
  273. package/node_modules/@codor/switchboard/dist/authorization.js +96 -0
  274. package/node_modules/@codor/switchboard/dist/authorization.js.map +1 -0
  275. package/node_modules/@codor/switchboard/dist/blobs.d.ts +17 -0
  276. package/node_modules/@codor/switchboard/dist/blobs.d.ts.map +1 -0
  277. package/node_modules/@codor/switchboard/dist/blobs.js +54 -0
  278. package/node_modules/@codor/switchboard/dist/blobs.js.map +1 -0
  279. package/node_modules/@codor/switchboard/dist/collaboration.d.ts +115 -0
  280. package/node_modules/@codor/switchboard/dist/collaboration.d.ts.map +1 -0
  281. package/node_modules/@codor/switchboard/dist/collaboration.js +123 -0
  282. package/node_modules/@codor/switchboard/dist/collaboration.js.map +1 -0
  283. package/node_modules/@codor/switchboard/dist/continuation.d.ts +33 -0
  284. package/node_modules/@codor/switchboard/dist/continuation.d.ts.map +1 -0
  285. package/node_modules/@codor/switchboard/dist/continuation.js +177 -0
  286. package/node_modules/@codor/switchboard/dist/continuation.js.map +1 -0
  287. package/node_modules/@codor/switchboard/dist/crypto/browser-sessions.d.ts +22 -0
  288. package/node_modules/@codor/switchboard/dist/crypto/browser-sessions.d.ts.map +1 -0
  289. package/node_modules/@codor/switchboard/dist/crypto/browser-sessions.js +92 -0
  290. package/node_modules/@codor/switchboard/dist/crypto/browser-sessions.js.map +1 -0
  291. package/node_modules/@codor/switchboard/dist/crypto/challenge.d.ts +37 -0
  292. package/node_modules/@codor/switchboard/dist/crypto/challenge.d.ts.map +1 -0
  293. package/node_modules/@codor/switchboard/dist/crypto/challenge.js +132 -0
  294. package/node_modules/@codor/switchboard/dist/crypto/challenge.js.map +1 -0
  295. package/node_modules/@codor/switchboard/dist/crypto/keys.d.ts +41 -0
  296. package/node_modules/@codor/switchboard/dist/crypto/keys.d.ts.map +1 -0
  297. package/node_modules/@codor/switchboard/dist/crypto/keys.js +145 -0
  298. package/node_modules/@codor/switchboard/dist/crypto/keys.js.map +1 -0
  299. package/node_modules/@codor/switchboard/dist/crypto/pairing.d.ts +53 -0
  300. package/node_modules/@codor/switchboard/dist/crypto/pairing.d.ts.map +1 -0
  301. package/node_modules/@codor/switchboard/dist/crypto/pairing.js +182 -0
  302. package/node_modules/@codor/switchboard/dist/crypto/pairing.js.map +1 -0
  303. package/node_modules/@codor/switchboard/dist/crypto/roomkeys.d.ts +30 -0
  304. package/node_modules/@codor/switchboard/dist/crypto/roomkeys.d.ts.map +1 -0
  305. package/node_modules/@codor/switchboard/dist/crypto/roomkeys.js +101 -0
  306. package/node_modules/@codor/switchboard/dist/crypto/roomkeys.js.map +1 -0
  307. package/node_modules/@codor/switchboard/dist/daemon.d.ts +545 -0
  308. package/node_modules/@codor/switchboard/dist/daemon.d.ts.map +1 -0
  309. package/node_modules/@codor/switchboard/dist/daemon.js +3907 -0
  310. package/node_modules/@codor/switchboard/dist/daemon.js.map +1 -0
  311. package/node_modules/@codor/switchboard/dist/fake-adapter.d.ts +103 -0
  312. package/node_modules/@codor/switchboard/dist/fake-adapter.d.ts.map +1 -0
  313. package/node_modules/@codor/switchboard/dist/fake-adapter.js +228 -0
  314. package/node_modules/@codor/switchboard/dist/fake-adapter.js.map +1 -0
  315. package/node_modules/@codor/switchboard/dist/index.d.ts +44 -0
  316. package/node_modules/@codor/switchboard/dist/index.d.ts.map +1 -0
  317. package/node_modules/@codor/switchboard/dist/index.js +24 -0
  318. package/node_modules/@codor/switchboard/dist/index.js.map +1 -0
  319. package/node_modules/@codor/switchboard/dist/ledger/resolve.d.ts +12 -0
  320. package/node_modules/@codor/switchboard/dist/ledger/resolve.d.ts.map +1 -0
  321. package/node_modules/@codor/switchboard/dist/ledger/resolve.js +17 -0
  322. package/node_modules/@codor/switchboard/dist/ledger/resolve.js.map +1 -0
  323. package/node_modules/@codor/switchboard/dist/ledger/vault.d.ts +47 -0
  324. package/node_modules/@codor/switchboard/dist/ledger/vault.d.ts.map +1 -0
  325. package/node_modules/@codor/switchboard/dist/ledger/vault.js +175 -0
  326. package/node_modules/@codor/switchboard/dist/ledger/vault.js.map +1 -0
  327. package/node_modules/@codor/switchboard/dist/ledger/watch.d.ts +73 -0
  328. package/node_modules/@codor/switchboard/dist/ledger/watch.d.ts.map +1 -0
  329. package/node_modules/@codor/switchboard/dist/ledger/watch.js +232 -0
  330. package/node_modules/@codor/switchboard/dist/ledger/watch.js.map +1 -0
  331. package/node_modules/@codor/switchboard/dist/local-dirs.d.ts +14 -0
  332. package/node_modules/@codor/switchboard/dist/local-dirs.d.ts.map +1 -0
  333. package/node_modules/@codor/switchboard/dist/local-dirs.js +40 -0
  334. package/node_modules/@codor/switchboard/dist/local-dirs.js.map +1 -0
  335. package/node_modules/@codor/switchboard/dist/local-socket.d.ts +3 -0
  336. package/node_modules/@codor/switchboard/dist/local-socket.d.ts.map +1 -0
  337. package/node_modules/@codor/switchboard/dist/local-socket.js +16 -0
  338. package/node_modules/@codor/switchboard/dist/local-socket.js.map +1 -0
  339. package/node_modules/@codor/switchboard/dist/pricing.d.ts +32 -0
  340. package/node_modules/@codor/switchboard/dist/pricing.d.ts.map +1 -0
  341. package/node_modules/@codor/switchboard/dist/pricing.js +64 -0
  342. package/node_modules/@codor/switchboard/dist/pricing.js.map +1 -0
  343. package/node_modules/@codor/switchboard/dist/process-liveness.d.ts +2 -0
  344. package/node_modules/@codor/switchboard/dist/process-liveness.d.ts.map +1 -0
  345. package/node_modules/@codor/switchboard/dist/process-liveness.js +9 -0
  346. package/node_modules/@codor/switchboard/dist/process-liveness.js.map +1 -0
  347. package/node_modules/@codor/switchboard/dist/push/producer.d.ts +54 -0
  348. package/node_modules/@codor/switchboard/dist/push/producer.d.ts.map +1 -0
  349. package/node_modules/@codor/switchboard/dist/push/producer.js +168 -0
  350. package/node_modules/@codor/switchboard/dist/push/producer.js.map +1 -0
  351. package/node_modules/@codor/switchboard/dist/push/subscriptions.d.ts +29 -0
  352. package/node_modules/@codor/switchboard/dist/push/subscriptions.d.ts.map +1 -0
  353. package/node_modules/@codor/switchboard/dist/push/subscriptions.js +83 -0
  354. package/node_modules/@codor/switchboard/dist/push/subscriptions.js.map +1 -0
  355. package/node_modules/@codor/switchboard/dist/redact.d.ts +11 -0
  356. package/node_modules/@codor/switchboard/dist/redact.d.ts.map +1 -0
  357. package/node_modules/@codor/switchboard/dist/redact.js +65 -0
  358. package/node_modules/@codor/switchboard/dist/redact.js.map +1 -0
  359. package/node_modules/@codor/switchboard/dist/residency.d.ts +110 -0
  360. package/node_modules/@codor/switchboard/dist/residency.d.ts.map +1 -0
  361. package/node_modules/@codor/switchboard/dist/residency.js +587 -0
  362. package/node_modules/@codor/switchboard/dist/residency.js.map +1 -0
  363. package/node_modules/@codor/switchboard/dist/router.d.ts +120 -0
  364. package/node_modules/@codor/switchboard/dist/router.d.ts.map +1 -0
  365. package/node_modules/@codor/switchboard/dist/router.js +198 -0
  366. package/node_modules/@codor/switchboard/dist/router.js.map +1 -0
  367. package/node_modules/@codor/switchboard/dist/server.d.ts +50 -0
  368. package/node_modules/@codor/switchboard/dist/server.d.ts.map +1 -0
  369. package/node_modules/@codor/switchboard/dist/server.js +1425 -0
  370. package/node_modules/@codor/switchboard/dist/server.js.map +1 -0
  371. package/node_modules/@codor/switchboard/dist/store.d.ts +534 -0
  372. package/node_modules/@codor/switchboard/dist/store.d.ts.map +1 -0
  373. package/node_modules/@codor/switchboard/dist/store.js +2625 -0
  374. package/node_modules/@codor/switchboard/dist/store.js.map +1 -0
  375. package/node_modules/@codor/switchboard/dist/transport/hyperswarm.d.ts +59 -0
  376. package/node_modules/@codor/switchboard/dist/transport/hyperswarm.d.ts.map +1 -0
  377. package/node_modules/@codor/switchboard/dist/transport/hyperswarm.js +183 -0
  378. package/node_modules/@codor/switchboard/dist/transport/hyperswarm.js.map +1 -0
  379. package/node_modules/@codor/switchboard/dist/transport/peer.d.ts +87 -0
  380. package/node_modules/@codor/switchboard/dist/transport/peer.d.ts.map +1 -0
  381. package/node_modules/@codor/switchboard/dist/transport/peer.js +316 -0
  382. package/node_modules/@codor/switchboard/dist/transport/peer.js.map +1 -0
  383. package/node_modules/@codor/switchboard/dist/working-directory.d.ts +2 -0
  384. package/node_modules/@codor/switchboard/dist/working-directory.d.ts.map +1 -0
  385. package/node_modules/@codor/switchboard/dist/working-directory.js +26 -0
  386. package/node_modules/@codor/switchboard/dist/working-directory.js.map +1 -0
  387. package/node_modules/@codor/switchboard/package.json +33 -0
  388. package/package.json +58 -0
@@ -0,0 +1,534 @@
1
+ import { type AttachLease, type Attachment, type BridgeOrigin, type ChangeLogEntry, type Delivery, type Member, type Message, type PendingInteraction, type Room, type RoomConfig, type RoomMeter, type RoomSupport, type RunSummary } from '@codor/protocol';
2
+ import { type CollaborationGroup, type CollaborationParticipant, type CollaborationRound, type CollaborationRoundParticipantInput, type CollaborationRoundProjection, type CollaborationTerminalStatus } from './collaboration.js';
3
+ type MessageActivityMode = 'auto' | 'defer' | 'force';
4
+ export interface NewMember {
5
+ kind: Member['kind'];
6
+ handle: string;
7
+ display_name: string;
8
+ purpose?: string;
9
+ harness?: string;
10
+ session_ref?: string;
11
+ cwd?: string;
12
+ policy?: string;
13
+ model?: string;
14
+ thinking?: Member['thinking'];
15
+ host?: string;
16
+ state?: Member['state'];
17
+ custody?: Member['custody'];
18
+ parent?: string;
19
+ role?: Member['role'];
20
+ roster_stale?: boolean;
21
+ removed_ts?: string;
22
+ }
23
+ export interface NewMessage {
24
+ author: string;
25
+ kind: Message['kind'];
26
+ body: string;
27
+ mentions?: Message['mentions'];
28
+ refs?: number[];
29
+ ledger_refs?: string[];
30
+ reply_to?: number;
31
+ run?: RunSummary;
32
+ run_parent_id?: number;
33
+ ask?: Message['ask'];
34
+ origin?: Message['origin'];
35
+ ack?: boolean;
36
+ attachments?: Attachment[];
37
+ }
38
+ export interface SyncResult {
39
+ seq: number;
40
+ room: Room;
41
+ /** Earliest id of the CONTIGUOUS tail a bounded cold hydration served, with
42
+ * correctness outliers excluded. Absent on an unbounded replay. */
43
+ history_floor?: number;
44
+ messages: Message[];
45
+ members: Member[];
46
+ inbox: Delivery[];
47
+ meters: RoomMeter[];
48
+ support?: RoomSupport;
49
+ }
50
+ export interface FanoutDelivery {
51
+ recipient: string;
52
+ state?: Delivery['state'];
53
+ payload_snapshot?: string;
54
+ hop_count?: number;
55
+ }
56
+ export interface AtomicTurnStart {
57
+ runMessage: Message;
58
+ deliveries: Delivery[];
59
+ }
60
+ export interface AtomicTurnCompletion {
61
+ message: Message;
62
+ outputMessages: Message[];
63
+ member: Member;
64
+ meter: RoomMeter;
65
+ deliveries: Delivery[];
66
+ collaboration?: CollaborationRoundProjection;
67
+ }
68
+ export interface TurnOutputPatch {
69
+ id: number;
70
+ body: string;
71
+ mentions: Message['mentions'];
72
+ refs: Message['refs'];
73
+ ledger_refs: Message['ledger_refs'];
74
+ ack?: boolean;
75
+ substantive: boolean;
76
+ }
77
+ export interface AtomicMirroredTurn {
78
+ message: Message;
79
+ deliveries: Delivery[];
80
+ member?: Member;
81
+ collaboration?: CollaborationRoundProjection;
82
+ deduped: boolean;
83
+ }
84
+ export interface RoutedMessagePlan {
85
+ fanout: FanoutDelivery[];
86
+ collaboration?: {
87
+ groupId?: string;
88
+ participants: CollaborationRoundParticipantInput[];
89
+ };
90
+ markMisaddressed?: boolean;
91
+ }
92
+ export interface AtomicRoutedMessage {
93
+ message: Message;
94
+ deliveries: Delivery[];
95
+ member?: Member;
96
+ collaboration?: CollaborationRoundProjection;
97
+ }
98
+ export type CollaborationRoundRelease = {
99
+ status: 'pending' | 'released' | 'closed' | 'already_released';
100
+ deliveries: Delivery[];
101
+ projection?: CollaborationRoundProjection;
102
+ };
103
+ export interface DeliveryAttemptProcess {
104
+ pid?: number;
105
+ process_group_id?: number;
106
+ }
107
+ export type LifecycleRetryRefusalReason = 'attempt_ceiling' | 'deleted_trigger' | 'settled_collaboration';
108
+ /**
109
+ * The room store: better-sqlite3, synchronous, one file per switchboard.
110
+ * Every mutation of a client-visible entity appends to the change log inside
111
+ * the same transaction — sync hydrates exclusively from that log.
112
+ */
113
+ export declare class Store {
114
+ private readonly db;
115
+ constructor(path: string);
116
+ close(): void;
117
+ /**
118
+ * Allocates the room's next seq and appends one change row — called by
119
+ * EVERY mutating method below, inside its transaction. Returns the seq so
120
+ * the mutation can stamp it on the entity (messages carry their seq).
121
+ */
122
+ private appendChange;
123
+ /**
124
+ * Creates a room and atomically seeds its two structural members: the
125
+ * owner human (the authenticated principal's author identity) and the
126
+ * non-addressable system member holding the reserved 'switchboard' handle.
127
+ */
128
+ createRoom(opts: {
129
+ id: string;
130
+ name: string;
131
+ owner: {
132
+ handle: string;
133
+ display_name: string;
134
+ };
135
+ config?: Partial<RoomConfig>;
136
+ }): {
137
+ room: Room;
138
+ owner: Member;
139
+ system: Member;
140
+ };
141
+ getRoom(id: string): Room | undefined;
142
+ listRooms(): Room[];
143
+ updateRoomConfig(room: string, patch: Partial<RoomConfig>): Room;
144
+ private insertMember;
145
+ addMember(room: string, member: NewMember): Member;
146
+ updateMember(room: string, memberId: string, patch: Partial<Omit<Member, 'id' | 'kind'>>): Member;
147
+ setAgentCredentialHash(room: string, memberId: string, credentialHash: string): void;
148
+ findAgentByCredentialHash(credentialHash: string): {
149
+ room: string;
150
+ member: Member;
151
+ } | undefined;
152
+ getMember(room: string, memberId: string): Member | undefined;
153
+ getMemberByHandle(room: string, handle: string): Member | undefined;
154
+ findMemberBySessionRef(harness: string, sessionRef: string): {
155
+ room: string;
156
+ member: Member;
157
+ } | undefined;
158
+ getExtensionByNativeId(room: string, parentId: string, nativeId: string): Member | undefined;
159
+ listMembers(room: string, options?: {
160
+ includeRemoved?: boolean;
161
+ }): Member[];
162
+ markAgentRostersStale(room: string): void;
163
+ clearAgentRosterStale(room: string, memberId: string): void;
164
+ getMirroredMessageId(room: string, memberId: string, nativeTurnId: string): number | undefined;
165
+ recordMirroredTurn(room: string, memberId: string, nativeTurnId: string, messageId: number): void;
166
+ commitMirroredTurn(room: string, opts: {
167
+ memberId: string;
168
+ nativeTurnId: string;
169
+ finalize(placeholder: Message): {
170
+ message: Partial<Pick<Message, 'body' | 'mentions' | 'refs' | 'ledger_refs' | 'run'>>;
171
+ fanout: FanoutDelivery[];
172
+ collaboration?: RoutedMessagePlan['collaboration'];
173
+ markMisaddressed?: boolean;
174
+ };
175
+ }): AtomicMirroredTurn;
176
+ createAttachLease(input: {
177
+ room: string;
178
+ member_id: string;
179
+ cli_pid: number;
180
+ heartbeat_ts: number;
181
+ }): AttachLease;
182
+ getAttachLease(id: string): AttachLease | undefined;
183
+ getAttachLeaseForMember(memberId: string): AttachLease | undefined;
184
+ listAttachLeases(): AttachLease[];
185
+ setAttachLeaseChild(id: string, childPid: number, processGroupId: number, heartbeatTs: number): AttachLease;
186
+ heartbeatAttachLease(id: string, heartbeatTs: number): AttachLease;
187
+ deleteAttachLease(id: string): void;
188
+ private attachLeaseFromRow;
189
+ /**
190
+ * Message ids are per-room dense monotonic ints allocated as MAX(id)+1
191
+ * INSIDE the same synchronous transaction as the insert — ids are permanent
192
+ * (#N refs), so allocation can never race or leave gaps.
193
+ */
194
+ postMessage(room: string, message: NewMessage, options?: {
195
+ activity?: MessageActivityMode;
196
+ }): Message;
197
+ commitRoutedMessage(room: string, opts: {
198
+ message: NewMessage;
199
+ plan(message: Message): RoutedMessagePlan;
200
+ }): AtomicRoutedMessage;
201
+ postBridgeMessage(room: string, bridgeMemberId: string, body: string, origin: BridgeOrigin, parsed: Pick<Message, 'mentions' | 'refs' | 'ledger_refs'>, plan?: (message: Message) => RoutedMessagePlan): AtomicRoutedMessage & {
202
+ deduped: boolean;
203
+ };
204
+ latestMessageId(room: string): number;
205
+ /** Allocate and insert a permanent empty continuation before its id is journaled. */
206
+ createRunContinuation(room: string, rootMessageId: number): Message;
207
+ listRunContinuations(room: string, rootMessageId: number): Message[];
208
+ /** Resolve either a root or one of its result fragments to lifecycle truth. */
209
+ getRunRoot(room: string, message: Message): Message | undefined;
210
+ latestFinalizedAgentAuthor(room: string): string | undefined;
211
+ listMessagesAfter(room: string, after: number, limit?: number): Message[];
212
+ /**
213
+ * In-place update of a message (run finalization: body becomes final_text,
214
+ * mentions/refs re-parsed, run summary updated). Same id, new seq.
215
+ */
216
+ updateMessage(room: string, id: number, patch: Partial<Pick<Message, 'body' | 'mentions' | 'refs' | 'ledger_refs' | 'run' | 'ask' | 'ack'>>, options?: {
217
+ activity?: MessageActivityMode;
218
+ }): Message;
219
+ /**
220
+ * Flip a message's pinned flag through the change log, so live frames and
221
+ * reconnect sync both carry it. Same id, new seq; nothing else on the row
222
+ * moves.
223
+ */
224
+ setMessagePinned(room: string, id: number, pinned: boolean): Message;
225
+ /**
226
+ * Purge a message in place through the change log: body emptied, payload
227
+ * columns nulled, pin cleared (a tombstone cannot stay pinned), the deleted
228
+ * flag set. Same id and new seq keep ordering, attribution, and permalinks
229
+ * coherent; the purge is irreversible.
230
+ */
231
+ deleteMessage(room: string, id: number): Message;
232
+ getMessage(room: string, id: number): Message | undefined;
233
+ /** Every pinned message, id-ascending — the strip hydrates from this whole
234
+ * set (pins are few) so a pin older than the loaded page still shows. */
235
+ listPinnedMessages(room: string): Message[];
236
+ /** Engine-reported context window, persisted so gauge estimates outlive
237
+ * restarts (daemon-internal; not part of the protocol Member shape). */
238
+ getMemberContextWindow(room: string, id: string): number | undefined;
239
+ setMemberContextWindow(room: string, id: string, contextWindow: number): void;
240
+ /** Newest message in a room — the rail preview's single source. */
241
+ latestMessage(room: string, options?: {
242
+ ignoreAcks?: boolean;
243
+ }): Message | undefined;
244
+ /** Legacy caller-cursor arithmetic retained until every client opts into
245
+ * durable room support. */
246
+ countMessagesAfter(room: string, afterId: number): number;
247
+ getRoomReadSeq(room: string, memberId: string): number;
248
+ markRoomRead(room: string, memberId: string, throughSeq: number): {
249
+ read_seq: number;
250
+ deliveries: Delivery[];
251
+ };
252
+ countUnreadMessages(room: string, memberId: string): number;
253
+ private actionableInbox;
254
+ roomSupport(room: string, memberId: string): RoomSupport;
255
+ listMessages(room: string, opts?: {
256
+ limit?: number;
257
+ before?: number;
258
+ }): Message[];
259
+ listRunMessages(room: string, opts?: {
260
+ limit?: number;
261
+ author?: string;
262
+ }): Message[];
263
+ listChatMessagesByAuthorWithin(room: string, author: string, startedTs: string, endedTs: string | undefined, limit?: number): Message[];
264
+ searchMessages(room: string, query: string, opts?: {
265
+ limit?: number;
266
+ }): Message[];
267
+ createDelivery(room: string, delivery: {
268
+ message_id: number;
269
+ recipient: string;
270
+ state?: Delivery['state'];
271
+ payload_snapshot?: string;
272
+ hop_count?: number;
273
+ group_id?: string;
274
+ group_round?: number;
275
+ }): Delivery;
276
+ updateDelivery(room: string, deliveryId: string, patch: Partial<Pick<Delivery, 'state' | 'attempt_count' | 'batch_id' | 'run_msg_id' | 'read_ts' | 'interaction_resolved_ts'>>): Delivery;
277
+ getDelivery(room: string, deliveryId: string): Delivery | undefined;
278
+ consumeQueuedDelivery(room: string, deliveryId: string, recipientId: string): {
279
+ delivery: Delivery;
280
+ message: Message;
281
+ };
282
+ getDeliveryPayloadSnapshot(room: string, deliveryId: string): string | undefined;
283
+ /** Internal process evidence for one delivery attempt; not client-visible. */
284
+ getDeliveryAttemptProcess(room: string, deliveryId: string): DeliveryAttemptProcess | undefined;
285
+ setDeliveryAttemptProcess(room: string, deliveryIds: string[], process: DeliveryAttemptProcess | undefined): void;
286
+ listDeliveries(room: string, filter?: {
287
+ recipient?: string;
288
+ state?: Delivery['state'];
289
+ }): Delivery[];
290
+ /** Creates/reuses the run and binds the complete batch in one transaction. */
291
+ beginTurn(room: string, opts: {
292
+ memberId: string;
293
+ deliveryIds: string[];
294
+ startedTs: string;
295
+ model?: string;
296
+ eventsRef: (messageId: number) => string;
297
+ reuseRunMsgId?: number;
298
+ }): AtomicTurnStart | undefined;
299
+ /** Commits lifecycle truth, every output row, custody, accounting, and fanout together. */
300
+ completeTurn(room: string, opts: {
301
+ runMsgId: number;
302
+ message: Partial<Pick<Message, 'body' | 'mentions' | 'refs' | 'ledger_refs' | 'run' | 'ack'>>;
303
+ outputs: TurnOutputPatch[];
304
+ resultMessageId: number;
305
+ inputDeliveryIds: string[];
306
+ memberId: string;
307
+ memberPatch: Partial<Omit<Member, 'id' | 'kind'>>;
308
+ meterDay: string;
309
+ meterDelta: {
310
+ turns?: number;
311
+ cost_usd?: number;
312
+ estimated_cost_usd?: number;
313
+ input_tokens?: number;
314
+ output_tokens?: number;
315
+ uncosted_tokens?: number;
316
+ };
317
+ fanout: FanoutDelivery[];
318
+ participantTerminal?: {
319
+ deliveryId: string;
320
+ status: Exclude<CollaborationTerminalStatus, 'skipped'>;
321
+ completedTs: string;
322
+ };
323
+ collaboration?: RoutedMessagePlan['collaboration'];
324
+ }): AtomicTurnCompletion;
325
+ getCollaborationGroup(room: string, groupId: string): CollaborationGroup | undefined;
326
+ getCollaborationGroupByRoot(room: string, rootMessageId: number): CollaborationGroup | undefined;
327
+ listCollaborationGroups(room: string, state?: CollaborationGroup['state']): CollaborationGroup[];
328
+ getCollaborationRound(room: string, groupId: string, roundNumber: number): CollaborationRound | undefined;
329
+ listCollaborationRounds(room: string, groupId: string): CollaborationRound[];
330
+ listCollaborationParticipants(room: string, groupId: string, roundNumber: number): CollaborationParticipant[];
331
+ findCollaborationParticipantByDelivery(room: string, deliveryId: string): CollaborationParticipant | undefined;
332
+ getCollaborationRoundProjection(room: string, groupId: string, roundNumber: number): CollaborationRoundProjection | undefined;
333
+ updateCollaborationGroup(room: string, groupId: string, patch: Partial<Pick<CollaborationGroup, 'state' | 'completed_ts'>>): CollaborationGroup;
334
+ updateCollaborationRound(room: string, groupId: string, roundNumber: number, patch: Partial<Pick<CollaborationRound, 'state' | 'released_ts'>>): CollaborationRound;
335
+ updateCollaborationParticipant(room: string, groupId: string, roundNumber: number, memberId: string, patch: Partial<Pick<CollaborationParticipant, 'terminal_status' | 'result_message_id' | 'completed_ts'>>): CollaborationParticipant;
336
+ recordCollaborationParticipantTerminal(room: string, opts: {
337
+ deliveryId: string;
338
+ status: Exclude<CollaborationTerminalStatus, 'skipped'>;
339
+ resultMessageId: number;
340
+ completedTs: string;
341
+ }): CollaborationParticipant;
342
+ recoverCollaborationParticipantTerminal(room: string, opts: {
343
+ deliveryId: string;
344
+ status: Exclude<CollaborationTerminalStatus, 'skipped'>;
345
+ resultMessageId: number;
346
+ completedTs: string;
347
+ }): {
348
+ delivery: Delivery;
349
+ participant: CollaborationParticipant;
350
+ };
351
+ skipCollaborationParticipant(room: string, deliveryId: string, completedTs: string): {
352
+ delivery: Delivery;
353
+ participant: CollaborationParticipant;
354
+ };
355
+ releaseCollaborationRound(room: string, opts: {
356
+ groupId: string;
357
+ roundNumber: number;
358
+ releasedTs: string;
359
+ nextParticipants: CollaborationRoundParticipantInput[];
360
+ }): CollaborationRoundRelease;
361
+ private assertCollaborationParticipantInputShape;
362
+ private assertActiveAgentParticipants;
363
+ private assertExistingCollaborationRound;
364
+ private materializeCollaborationRound;
365
+ createCollaborationGroup(room: string, opts: {
366
+ groupId?: string;
367
+ rootMessageId: number;
368
+ participants: CollaborationRoundParticipantInput[];
369
+ createdTs?: string;
370
+ }): CollaborationRoundProjection;
371
+ createCollaborationRound(room: string, opts: {
372
+ groupId: string;
373
+ roundNumber: number;
374
+ participants: CollaborationRoundParticipantInput[];
375
+ createdTs?: string;
376
+ }): CollaborationRoundProjection;
377
+ /**
378
+ * Settle a turn whose journal is terminal but whose NORMAL finalization could
379
+ * not commit — the #599 shape: a lifecycle retry rebound to a delivery whose
380
+ * participant already holds a terminal result, so completeTurn's participant
381
+ * write correctly refused and took the whole transaction down with it, leaving
382
+ * the row `running` and the delivery `delivering` after the in-memory guard
383
+ * had already cleared.
384
+ *
385
+ * This is deliberately NOT the normal path: it routes nothing, replaces no
386
+ * participant result, and keeps the original journal so the evidence of what
387
+ * the engine actually did survives. It only makes the durable state honest —
388
+ * the attempt failed, its input is settled, the member is not running.
389
+ *
390
+ * Idempotent by construction: a run that is no longer `running` has already
391
+ * been repaired (or finalized normally), so a second runtime or boot pass
392
+ * returns `repaired: false` and writes nothing — including the meter, which
393
+ * is why the rolled-back attempt is counted exactly once rather than never.
394
+ */
395
+ repairFailedFinalization(room: string, opts: {
396
+ runMsgId: number;
397
+ memberId: string;
398
+ deliveryIds: string[];
399
+ outputs?: TurnOutputPatch[];
400
+ error: string;
401
+ endedTs: string;
402
+ usage?: RunSummary['usage'];
403
+ estimatedCostUsd?: number;
404
+ meterDay: string;
405
+ meterDelta: {
406
+ turns?: number;
407
+ cost_usd?: number;
408
+ estimated_cost_usd?: number;
409
+ input_tokens?: number;
410
+ output_tokens?: number;
411
+ uncosted_tokens?: number;
412
+ };
413
+ }): {
414
+ repaired: boolean;
415
+ message?: Message;
416
+ outputMessages?: Message[];
417
+ member?: Member;
418
+ meter?: RoomMeter;
419
+ notice?: Message;
420
+ deliveries: Delivery[];
421
+ held: string[];
422
+ };
423
+ /**
424
+ * True when this delivery's collaboration work is already settled — a terminal
425
+ * participant, or a round/group that is no longer accepting work. A delivery
426
+ * with no collaboration context at all is NOT settled: an ordinary turn that
427
+ * failed to finalize is exactly the ambiguous case an operator should see.
428
+ *
429
+ * Public because it is the SAME predicate on both sides of the seam: the
430
+ * daemon asks it before attempting normal finalization, and repair asks it
431
+ * when deciding consume-vs-hold. A second copy of this rule that drifted
432
+ * would let a closed group accept a new result — `recordCollaboration-
433
+ * ParticipantTerminal` guards only the participant, never its round or group.
434
+ */
435
+ collaborationWorkIsSettled(room: string, deliveryId: string): boolean;
436
+ /**
437
+ * Settle a turn the daemon's OWN lifecycle interrupted, deciding retry
438
+ * eligibility and terminality as ONE fact.
439
+ *
440
+ * The #598/#599 bug was these being two facts: the attempt finalized as a
441
+ * terminal participant result, and only afterwards was its delivery re-queued
442
+ * — so the retry came back to a participant that already had an answer. Here
443
+ * a delivery is either durably re-queued (and its participant deliberately
444
+ * left nonterminal, its round still open, so the eventual retry produces the
445
+ * one result) or it is settled and its participant recorded `interrupted` so
446
+ * the barrier releases. Never both, never neither: a nonterminal participant
447
+ * may exist only with a queued retry behind it.
448
+ *
449
+ * Retry is admissible only while the work is genuinely still live — below the
450
+ * attempt ceiling, trigger not deleted, and collaboration work not settled.
451
+ * Operator Stop never reaches here; it is terminal by construction.
452
+ */
453
+ settleLifecycleInterruption(room: string, opts: {
454
+ runMsgId: number;
455
+ memberId: string;
456
+ deliveryIds: string[];
457
+ message: Partial<Pick<Message, 'body' | 'mentions' | 'refs' | 'ledger_refs' | 'run' | 'ack'>>;
458
+ outputs: TurnOutputPatch[];
459
+ memberPatch: Partial<Omit<Member, 'id' | 'kind'>>;
460
+ endedTs: string;
461
+ attemptCeiling: number;
462
+ meterDay: string;
463
+ meterDelta: {
464
+ turns?: number;
465
+ cost_usd?: number;
466
+ estimated_cost_usd?: number;
467
+ input_tokens?: number;
468
+ output_tokens?: number;
469
+ uncosted_tokens?: number;
470
+ };
471
+ }): {
472
+ message: Message;
473
+ outputMessages: Message[];
474
+ member: Member;
475
+ meter: RoomMeter;
476
+ notice?: Message;
477
+ requeued: Delivery[];
478
+ settled: Delivery[];
479
+ refusals: {
480
+ delivery: Delivery;
481
+ reason: LifecycleRetryRefusalReason;
482
+ }[];
483
+ };
484
+ upsertInteraction(interaction: PendingInteraction): PendingInteraction;
485
+ getInteraction(id: string): PendingInteraction | undefined;
486
+ listInteractions(room: string, state?: PendingInteraction['state']): PendingInteraction[];
487
+ private resolveApprovalDeliveries;
488
+ orphanInteraction(room: string, interactionId: string, orphanedTs: string): {
489
+ interaction: PendingInteraction;
490
+ deliveries: Delivery[];
491
+ };
492
+ answerApproval(room: string, interactionId: string, answer: unknown, answeredBy: string, answeredTs: string): {
493
+ interaction: PendingInteraction;
494
+ deliveries: Delivery[];
495
+ };
496
+ bumpMeter(room: string, day: string, delta: {
497
+ turns?: number;
498
+ cost_usd?: number;
499
+ estimated_cost_usd?: number;
500
+ input_tokens?: number;
501
+ output_tokens?: number;
502
+ uncosted_tokens?: number;
503
+ }): RoomMeter;
504
+ getMeter(room: string, day: string): RoomMeter | undefined;
505
+ currentSeq(room: string): number;
506
+ getChangesSince(room: string, sinceSeq: number): ChangeLogEntry[];
507
+ /** Delta-sync: hydrate rows and its final cursor from one SQLite snapshot. */
508
+ sync(room: string, sinceSeq: number, opts?: {
509
+ hydrateLimit?: number;
510
+ subscriber?: string;
511
+ strictTail?: boolean;
512
+ supportFor?: string;
513
+ }): SyncResult;
514
+ /**
515
+ * A cold viewer's bounded snapshot, built INSIDE sync()'s transaction. An
516
+ * addressed subscriber gets exactly the contiguous tail and a separate
517
+ * support projection. A legacy subscriber keeps the prior outlier-bearing
518
+ * shape until the client cutover:
519
+ * - every running run, so a live turn renders however old it is;
520
+ * - the cards of unresolved interactions, so an ask that scrolled past the
521
+ * tail is still answerable;
522
+ * - the messages this subscriber's unread deliveries point at, because the
523
+ * inbox filter drops deliveries whose message is absent and the badge
524
+ * would undercount;
525
+ * - the latest finalized non-ack agent run, the default-recipient seed.
526
+ * `history_floor` is the tail's floor ALONE — an outlier must never drag the
527
+ * client's cursor backwards past a gap it did not receive.
528
+ */
529
+ private boundedColdSnapshot;
530
+ /** Crockford-base32 ULID (timestamp + randomness), no external dep. */
531
+ private newUlid;
532
+ }
533
+ export {};
534
+ //# sourceMappingURL=store.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"store.d.ts","sourceRoot":"","sources":["../src/store.ts"],"names":[],"mappings":"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"}