@cello-protocol/daemon 0.0.227 → 0.0.228

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 (895) hide show
  1. package/dist/agent-admin-handlers.d.ts +56 -0
  2. package/dist/agent-admin-handlers.d.ts.map +1 -0
  3. package/dist/agent-admin-handlers.js +73 -0
  4. package/dist/agent-admin-handlers.js.map +1 -0
  5. package/dist/agent-handlers.d.ts +72 -0
  6. package/dist/agent-handlers.d.ts.map +1 -0
  7. package/dist/agent-handlers.js +604 -0
  8. package/dist/agent-handlers.js.map +1 -0
  9. package/dist/agent-id-migration.d.ts +70 -0
  10. package/dist/agent-id-migration.d.ts.map +1 -0
  11. package/dist/agent-id-migration.js +468 -0
  12. package/dist/agent-id-migration.js.map +1 -0
  13. package/dist/agent-loader.d.ts +37 -0
  14. package/dist/agent-loader.d.ts.map +1 -0
  15. package/dist/agent-loader.js +37 -0
  16. package/dist/agent-loader.js.map +1 -0
  17. package/dist/agent-selection-root.d.ts +29 -0
  18. package/dist/agent-selection-root.d.ts.map +1 -0
  19. package/dist/agent-selection-root.js +126 -0
  20. package/dist/agent-selection-root.js.map +1 -0
  21. package/dist/agent-selection.d.ts +73 -0
  22. package/dist/agent-selection.d.ts.map +1 -0
  23. package/dist/agent-selection.js +80 -0
  24. package/dist/agent-selection.js.map +1 -0
  25. package/dist/agent-settings-keys.d.ts +52 -0
  26. package/dist/agent-settings-keys.d.ts.map +1 -0
  27. package/dist/agent-settings-keys.js +114 -0
  28. package/dist/agent-settings-keys.js.map +1 -0
  29. package/dist/agent-state.d.ts +67 -0
  30. package/dist/agent-state.d.ts.map +1 -0
  31. package/dist/agent-state.js +66 -0
  32. package/dist/agent-state.js.map +1 -0
  33. package/dist/assignment-verify.d.ts +90 -0
  34. package/dist/assignment-verify.d.ts.map +1 -0
  35. package/dist/assignment-verify.js +301 -0
  36. package/dist/assignment-verify.js.map +1 -0
  37. package/dist/attendance-wiring.d.ts +23 -0
  38. package/dist/attendance-wiring.d.ts.map +1 -0
  39. package/dist/attendance-wiring.js +248 -0
  40. package/dist/attendance-wiring.js.map +1 -0
  41. package/dist/attestation-body.d.ts +47 -0
  42. package/dist/attestation-body.d.ts.map +1 -0
  43. package/dist/attestation-body.js +71 -0
  44. package/dist/attestation-body.js.map +1 -0
  45. package/dist/authorship-verification.d.ts +91 -0
  46. package/dist/authorship-verification.d.ts.map +1 -0
  47. package/dist/authorship-verification.js +532 -0
  48. package/dist/authorship-verification.js.map +1 -0
  49. package/dist/away-detection.d.ts +139 -0
  50. package/dist/away-detection.d.ts.map +1 -0
  51. package/dist/away-detection.js +186 -0
  52. package/dist/away-detection.js.map +1 -0
  53. package/dist/away-inbox-oneshot.d.ts +40 -0
  54. package/dist/away-inbox-oneshot.d.ts.map +1 -0
  55. package/dist/away-inbox-oneshot.js +311 -0
  56. package/dist/away-inbox-oneshot.js.map +1 -0
  57. package/dist/backup-restore-handlers.d.ts +10 -0
  58. package/dist/backup-restore-handlers.d.ts.map +1 -0
  59. package/dist/backup-restore-handlers.js +82 -0
  60. package/dist/backup-restore-handlers.js.map +1 -0
  61. package/dist/backup-restore.d.ts +102 -0
  62. package/dist/backup-restore.d.ts.map +1 -0
  63. package/dist/backup-restore.js +341 -0
  64. package/dist/backup-restore.js.map +1 -0
  65. package/dist/bin/cello-daemon.d.ts +13 -0
  66. package/dist/bin/cello-daemon.d.ts.map +1 -0
  67. package/dist/bin/cello-daemon.js.map +1 -0
  68. package/dist/boot-agents.d.ts +64 -0
  69. package/dist/boot-agents.d.ts.map +1 -0
  70. package/dist/boot-agents.js +241 -0
  71. package/dist/boot-agents.js.map +1 -0
  72. package/dist/boot-connection-state.d.ts +38 -0
  73. package/dist/boot-connection-state.d.ts.map +1 -0
  74. package/dist/boot-connection-state.js +95 -0
  75. package/dist/boot-connection-state.js.map +1 -0
  76. package/dist/boot-core.d.ts +36 -0
  77. package/dist/boot-core.d.ts.map +1 -0
  78. package/dist/boot-core.js +293 -0
  79. package/dist/boot-core.js.map +1 -0
  80. package/dist/boot-parked-content.d.ts +34 -0
  81. package/dist/boot-parked-content.d.ts.map +1 -0
  82. package/dist/boot-parked-content.js +528 -0
  83. package/dist/boot-parked-content.js.map +1 -0
  84. package/dist/boot-sweeps.d.ts +22 -0
  85. package/dist/boot-sweeps.d.ts.map +1 -0
  86. package/dist/boot-sweeps.js +51 -0
  87. package/dist/boot-sweeps.js.map +1 -0
  88. package/dist/bundled-consortium-manifest.d.ts +47 -0
  89. package/dist/bundled-consortium-manifest.d.ts.map +1 -0
  90. package/dist/bundled-consortium-manifest.js +116 -0
  91. package/dist/bundled-consortium-manifest.js.map +1 -0
  92. package/dist/cbor-blob-migration.d.ts +8 -0
  93. package/dist/cbor-blob-migration.d.ts.map +1 -0
  94. package/dist/cbor-blob-migration.js +116 -0
  95. package/dist/cbor-blob-migration.js.map +1 -0
  96. package/dist/challenge-verifier.d.ts +12 -0
  97. package/dist/challenge-verifier.d.ts.map +1 -0
  98. package/dist/challenge-verifier.js +11 -0
  99. package/dist/challenge-verifier.js.map +1 -0
  100. package/dist/channel-log-store.d.ts +80 -0
  101. package/dist/channel-log-store.d.ts.map +1 -0
  102. package/dist/channel-log-store.js +290 -0
  103. package/dist/channel-log-store.js.map +1 -0
  104. package/dist/close-commitment.d.ts +67 -0
  105. package/dist/close-commitment.d.ts.map +1 -0
  106. package/dist/close-commitment.js +78 -0
  107. package/dist/close-commitment.js.map +1 -0
  108. package/dist/close-session-handler.d.ts +94 -0
  109. package/dist/close-session-handler.d.ts.map +1 -0
  110. package/dist/close-session-handler.js +1418 -0
  111. package/dist/close-session-handler.js.map +1 -0
  112. package/dist/co-attendance.d.ts +29 -0
  113. package/dist/co-attendance.d.ts.map +1 -0
  114. package/dist/co-attendance.js +32 -0
  115. package/dist/co-attendance.js.map +1 -0
  116. package/dist/column-birth.d.ts +40 -0
  117. package/dist/column-birth.d.ts.map +1 -0
  118. package/dist/column-birth.js +61 -0
  119. package/dist/column-birth.js.map +1 -0
  120. package/dist/connect-or-start.d.ts +25 -0
  121. package/dist/connect-or-start.d.ts.map +1 -0
  122. package/dist/connect-or-start.js +175 -0
  123. package/dist/connect-or-start.js.map +1 -0
  124. package/dist/connection-agents.d.ts +16 -0
  125. package/dist/connection-agents.d.ts.map +1 -0
  126. package/dist/connection-agents.js +68 -0
  127. package/dist/connection-agents.js.map +1 -0
  128. package/dist/consent-migration.d.ts +49 -0
  129. package/dist/consent-migration.d.ts.map +1 -0
  130. package/dist/consent-migration.js +128 -0
  131. package/dist/consent-migration.js.map +1 -0
  132. package/dist/consortium-bootstrap.d.ts +138 -0
  133. package/dist/consortium-bootstrap.d.ts.map +1 -0
  134. package/dist/consortium-bootstrap.js +339 -0
  135. package/dist/consortium-bootstrap.js.map +1 -0
  136. package/dist/consortium-fingerprint.d.ts +115 -0
  137. package/dist/consortium-fingerprint.d.ts.map +1 -0
  138. package/dist/consortium-fingerprint.js +175 -0
  139. package/dist/consortium-fingerprint.js.map +1 -0
  140. package/dist/contact-handlers.d.ts +59 -0
  141. package/dist/contact-handlers.d.ts.map +1 -0
  142. package/dist/contact-handlers.js +343 -0
  143. package/dist/contact-handlers.js.map +1 -0
  144. package/dist/contact-pubkey-case.d.ts +65 -0
  145. package/dist/contact-pubkey-case.d.ts.map +1 -0
  146. package/dist/contact-pubkey-case.js +136 -0
  147. package/dist/contact-pubkey-case.js.map +1 -0
  148. package/dist/contacts-tier-migration.d.ts +90 -0
  149. package/dist/contacts-tier-migration.d.ts.map +1 -0
  150. package/dist/contacts-tier-migration.js +150 -0
  151. package/dist/contacts-tier-migration.js.map +1 -0
  152. package/dist/content-encryption-status.d.ts +111 -0
  153. package/dist/content-encryption-status.d.ts.map +1 -0
  154. package/dist/content-encryption-status.js +158 -0
  155. package/dist/content-encryption-status.js.map +1 -0
  156. package/dist/content-park-client.d.ts +90 -0
  157. package/dist/content-park-client.d.ts.map +1 -0
  158. package/dist/content-park-client.js +362 -0
  159. package/dist/content-park-client.js.map +1 -0
  160. package/dist/content-park.d.ts +52 -0
  161. package/dist/content-park.d.ts.map +1 -0
  162. package/dist/content-park.js +1309 -0
  163. package/dist/content-park.js.map +1 -0
  164. package/dist/cross-node-negotiation.d.ts +44 -0
  165. package/dist/cross-node-negotiation.d.ts.map +1 -0
  166. package/dist/cross-node-negotiation.js +34 -0
  167. package/dist/cross-node-negotiation.js.map +1 -0
  168. package/dist/daemon-handle.d.ts +57 -0
  169. package/dist/daemon-handle.d.ts.map +1 -0
  170. package/dist/daemon-handle.js +2 -0
  171. package/dist/daemon-handle.js.map +1 -0
  172. package/dist/daemon-status-report.d.ts +50 -0
  173. package/dist/daemon-status-report.d.ts.map +1 -0
  174. package/dist/daemon-status-report.js +81 -0
  175. package/dist/daemon-status-report.js.map +1 -0
  176. package/dist/daemon.d.ts +45 -0
  177. package/dist/daemon.d.ts.map +1 -0
  178. package/dist/daemon.js +1177 -0
  179. package/dist/daemon.js.map +1 -0
  180. package/dist/db-identity-store.d.ts +159 -0
  181. package/dist/db-identity-store.d.ts.map +1 -0
  182. package/dist/db-identity-store.js +502 -0
  183. package/dist/db-identity-store.js.map +1 -0
  184. package/dist/delivery-open-registry.d.ts +92 -0
  185. package/dist/delivery-open-registry.d.ts.map +1 -0
  186. package/dist/delivery-open-registry.js +121 -0
  187. package/dist/delivery-open-registry.js.map +1 -0
  188. package/dist/delivery-session-suspects.d.ts +56 -0
  189. package/dist/delivery-session-suspects.d.ts.map +1 -0
  190. package/dist/delivery-session-suspects.js +94 -0
  191. package/dist/delivery-session-suspects.js.map +1 -0
  192. package/dist/directory-auth-posture.d.ts +87 -0
  193. package/dist/directory-auth-posture.d.ts.map +1 -0
  194. package/dist/directory-auth-posture.js +134 -0
  195. package/dist/directory-auth-posture.js.map +1 -0
  196. package/dist/directory-bootstrap.d.ts +310 -0
  197. package/dist/directory-bootstrap.d.ts.map +1 -0
  198. package/dist/directory-bootstrap.js +557 -0
  199. package/dist/directory-bootstrap.js.map +1 -0
  200. package/dist/directory-connect.d.ts +27 -0
  201. package/dist/directory-connect.d.ts.map +1 -0
  202. package/dist/directory-connect.js +106 -0
  203. package/dist/directory-connect.js.map +1 -0
  204. package/dist/disconnect-cleanup.d.ts +51 -0
  205. package/dist/disconnect-cleanup.d.ts.map +1 -0
  206. package/dist/disconnect-cleanup.js +72 -0
  207. package/dist/disconnect-cleanup.js.map +1 -0
  208. package/dist/document-amendment-store.d.ts +120 -0
  209. package/dist/document-amendment-store.d.ts.map +1 -0
  210. package/dist/document-amendment-store.js +266 -0
  211. package/dist/document-amendment-store.js.map +1 -0
  212. package/dist/document-delivery-transport.d.ts +168 -0
  213. package/dist/document-delivery-transport.d.ts.map +1 -0
  214. package/dist/document-delivery-transport.js +206 -0
  215. package/dist/document-delivery-transport.js.map +1 -0
  216. package/dist/document-engine.d.ts +134 -0
  217. package/dist/document-engine.d.ts.map +1 -0
  218. package/dist/document-engine.js +282 -0
  219. package/dist/document-engine.js.map +1 -0
  220. package/dist/document-flag.d.ts +58 -0
  221. package/dist/document-flag.d.ts.map +1 -0
  222. package/dist/document-flag.js +70 -0
  223. package/dist/document-flag.js.map +1 -0
  224. package/dist/document-frame-router.d.ts +245 -0
  225. package/dist/document-frame-router.d.ts.map +1 -0
  226. package/dist/document-frame-router.js +397 -0
  227. package/dist/document-frame-router.js.map +1 -0
  228. package/dist/document-gate-wiring.d.ts +61 -0
  229. package/dist/document-gate-wiring.d.ts.map +1 -0
  230. package/dist/document-gate-wiring.js +125 -0
  231. package/dist/document-gate-wiring.js.map +1 -0
  232. package/dist/document-gate.d.ts +149 -0
  233. package/dist/document-gate.d.ts.map +1 -0
  234. package/dist/document-gate.js +509 -0
  235. package/dist/document-gate.js.map +1 -0
  236. package/dist/document-handlers.d.ts +47 -0
  237. package/dist/document-handlers.d.ts.map +1 -0
  238. package/dist/document-handlers.js +2203 -0
  239. package/dist/document-handlers.js.map +1 -0
  240. package/dist/document-handshake.d.ts +176 -0
  241. package/dist/document-handshake.d.ts.map +1 -0
  242. package/dist/document-handshake.js +452 -0
  243. package/dist/document-handshake.js.map +1 -0
  244. package/dist/document-inbound.d.ts +162 -0
  245. package/dist/document-inbound.d.ts.map +1 -0
  246. package/dist/document-inbound.js +530 -0
  247. package/dist/document-inbound.js.map +1 -0
  248. package/dist/document-json.d.ts +120 -0
  249. package/dist/document-json.d.ts.map +1 -0
  250. package/dist/document-json.js +191 -0
  251. package/dist/document-json.js.map +1 -0
  252. package/dist/document-layer.d.ts +215 -0
  253. package/dist/document-layer.d.ts.map +1 -0
  254. package/dist/document-layer.js +1025 -0
  255. package/dist/document-layer.js.map +1 -0
  256. package/dist/document-lifecycle.d.ts +52 -0
  257. package/dist/document-lifecycle.d.ts.map +1 -0
  258. package/dist/document-lifecycle.js +134 -0
  259. package/dist/document-lifecycle.js.map +1 -0
  260. package/dist/document-live-docs.d.ts +58 -0
  261. package/dist/document-live-docs.d.ts.map +1 -0
  262. package/dist/document-live-docs.js +126 -0
  263. package/dist/document-live-docs.js.map +1 -0
  264. package/dist/document-notify.d.ts +228 -0
  265. package/dist/document-notify.d.ts.map +1 -0
  266. package/dist/document-notify.js +580 -0
  267. package/dist/document-notify.js.map +1 -0
  268. package/dist/document-profile.d.ts +61 -0
  269. package/dist/document-profile.d.ts.map +1 -0
  270. package/dist/document-profile.js +112 -0
  271. package/dist/document-profile.js.map +1 -0
  272. package/dist/document-publish.d.ts +87 -0
  273. package/dist/document-publish.d.ts.map +1 -0
  274. package/dist/document-publish.js +173 -0
  275. package/dist/document-publish.js.map +1 -0
  276. package/dist/document-reachability.d.ts +42 -0
  277. package/dist/document-reachability.d.ts.map +1 -0
  278. package/dist/document-reachability.js +80 -0
  279. package/dist/document-reachability.js.map +1 -0
  280. package/dist/document-reconcile-engine.d.ts +66 -0
  281. package/dist/document-reconcile-engine.d.ts.map +1 -0
  282. package/dist/document-reconcile-engine.js +225 -0
  283. package/dist/document-reconcile-engine.js.map +1 -0
  284. package/dist/document-reconcile-scheduler.d.ts +163 -0
  285. package/dist/document-reconcile-scheduler.d.ts.map +1 -0
  286. package/dist/document-reconcile-scheduler.js +303 -0
  287. package/dist/document-reconcile-scheduler.js.map +1 -0
  288. package/dist/document-rejection.d.ts +251 -0
  289. package/dist/document-rejection.d.ts.map +1 -0
  290. package/dist/document-rejection.js +435 -0
  291. package/dist/document-rejection.js.map +1 -0
  292. package/dist/document-screen.d.ts +114 -0
  293. package/dist/document-screen.d.ts.map +1 -0
  294. package/dist/document-screen.js +223 -0
  295. package/dist/document-screen.js.map +1 -0
  296. package/dist/document-store.d.ts +372 -0
  297. package/dist/document-store.d.ts.map +1 -0
  298. package/dist/document-store.js +931 -0
  299. package/dist/document-store.js.map +1 -0
  300. package/dist/document-surface.d.ts +32 -0
  301. package/dist/document-surface.d.ts.map +1 -0
  302. package/dist/document-surface.js +151 -0
  303. package/dist/document-surface.js.map +1 -0
  304. package/dist/document-types.d.ts +94 -0
  305. package/dist/document-types.d.ts.map +1 -0
  306. package/dist/document-types.js +90 -0
  307. package/dist/document-types.js.map +1 -0
  308. package/dist/document-watch.d.ts +69 -0
  309. package/dist/document-watch.d.ts.map +1 -0
  310. package/dist/document-watch.js +108 -0
  311. package/dist/document-watch.js.map +1 -0
  312. package/dist/document-wiring.d.ts +53 -0
  313. package/dist/document-wiring.d.ts.map +1 -0
  314. package/dist/document-wiring.js +323 -0
  315. package/dist/document-wiring.js.map +1 -0
  316. package/dist/document-write-guard.d.ts +66 -0
  317. package/dist/document-write-guard.d.ts.map +1 -0
  318. package/dist/document-write-guard.js +98 -0
  319. package/dist/document-write-guard.js.map +1 -0
  320. package/dist/document-write-path.d.ts +94 -0
  321. package/dist/document-write-path.d.ts.map +1 -0
  322. package/dist/document-write-path.js +530 -0
  323. package/dist/document-write-path.js.map +1 -0
  324. package/dist/error-message.d.ts +7 -0
  325. package/dist/error-message.d.ts.map +1 -0
  326. package/dist/error-message.js +19 -0
  327. package/dist/error-message.js.map +1 -0
  328. package/dist/file-manifest-provider.d.ts +37 -0
  329. package/dist/file-manifest-provider.d.ts.map +1 -0
  330. package/dist/file-manifest-provider.js +105 -0
  331. package/dist/file-manifest-provider.js.map +1 -0
  332. package/dist/frame-values.d.ts +3 -0
  333. package/dist/frame-values.d.ts.map +1 -0
  334. package/dist/frame-values.js +84 -0
  335. package/dist/frame-values.js.map +1 -0
  336. package/dist/frontier-mismatch.d.ts +73 -0
  337. package/dist/frontier-mismatch.d.ts.map +1 -0
  338. package/dist/frontier-mismatch.js +89 -0
  339. package/dist/frontier-mismatch.js.map +1 -0
  340. package/dist/gateway-config-handlers.d.ts +26 -0
  341. package/dist/gateway-config-handlers.d.ts.map +1 -0
  342. package/dist/gateway-config-handlers.js +429 -0
  343. package/dist/gateway-config-handlers.js.map +1 -0
  344. package/dist/held-content.d.ts +145 -0
  345. package/dist/held-content.d.ts.map +1 -0
  346. package/dist/held-content.js +389 -0
  347. package/dist/held-content.js.map +1 -0
  348. package/dist/http-manifest-poll.d.ts +67 -0
  349. package/dist/http-manifest-poll.d.ts.map +1 -0
  350. package/dist/http-manifest-poll.js +150 -0
  351. package/dist/http-manifest-poll.js.map +1 -0
  352. package/dist/identity-migration.d.ts +40 -0
  353. package/dist/identity-migration.d.ts.map +1 -0
  354. package/dist/identity-migration.js +461 -0
  355. package/dist/identity-migration.js.map +1 -0
  356. package/dist/inbound-refusals.d.ts +283 -0
  357. package/dist/inbound-refusals.d.ts.map +1 -0
  358. package/dist/inbound-refusals.js +919 -0
  359. package/dist/inbound-refusals.js.map +1 -0
  360. package/dist/inbound-seal-request.d.ts +32 -0
  361. package/dist/inbound-seal-request.d.ts.map +1 -0
  362. package/dist/inbound-seal-request.js +228 -0
  363. package/dist/inbound-seal-request.js.map +1 -0
  364. package/dist/inbound-sessions.d.ts +291 -0
  365. package/dist/inbound-sessions.d.ts.map +1 -0
  366. package/dist/inbound-sessions.js +1609 -0
  367. package/dist/inbound-sessions.js.map +1 -0
  368. package/dist/inclusion-proof-handlers.d.ts +43 -0
  369. package/dist/inclusion-proof-handlers.d.ts.map +1 -0
  370. package/dist/inclusion-proof-handlers.js +565 -0
  371. package/dist/inclusion-proof-handlers.js.map +1 -0
  372. package/dist/inclusion-proof.d.ts +151 -0
  373. package/dist/inclusion-proof.d.ts.map +1 -0
  374. package/dist/inclusion-proof.js +228 -0
  375. package/dist/inclusion-proof.js.map +1 -0
  376. package/dist/index.d.ts +32 -0
  377. package/dist/index.d.ts.map +1 -0
  378. package/dist/index.js.map +1 -0
  379. package/dist/initiate-session-handler.d.ts +55 -0
  380. package/dist/initiate-session-handler.d.ts.map +1 -0
  381. package/dist/initiate-session-handler.js +310 -0
  382. package/dist/initiate-session-handler.js.map +1 -0
  383. package/dist/ipc-client.d.ts +31 -0
  384. package/dist/ipc-client.d.ts.map +1 -0
  385. package/dist/ipc-client.js +113 -0
  386. package/dist/ipc-client.js.map +1 -0
  387. package/dist/ipc-server.d.ts +63 -0
  388. package/dist/ipc-server.d.ts.map +1 -0
  389. package/dist/ipc-server.js +429 -0
  390. package/dist/ipc-server.js.map +1 -0
  391. package/dist/ipc-surface.d.ts +44 -0
  392. package/dist/ipc-surface.d.ts.map +1 -0
  393. package/dist/ipc-surface.js +107 -0
  394. package/dist/ipc-surface.js.map +1 -0
  395. package/dist/line-lcs.d.ts +51 -0
  396. package/dist/line-lcs.d.ts.map +1 -0
  397. package/dist/line-lcs.js +71 -0
  398. package/dist/line-lcs.js.map +1 -0
  399. package/dist/lock-file.d.ts +39 -0
  400. package/dist/lock-file.d.ts.map +1 -0
  401. package/dist/lock-file.js +120 -0
  402. package/dist/lock-file.js.map +1 -0
  403. package/dist/log-collapse.d.ts +66 -0
  404. package/dist/log-collapse.d.ts.map +1 -0
  405. package/dist/log-collapse.js +244 -0
  406. package/dist/log-collapse.js.map +1 -0
  407. package/dist/log-rotate.d.ts +67 -0
  408. package/dist/log-rotate.d.ts.map +1 -0
  409. package/dist/log-rotate.js +134 -0
  410. package/dist/log-rotate.js.map +1 -0
  411. package/dist/manifest-deps.d.ts +25 -0
  412. package/dist/manifest-deps.d.ts.map +1 -0
  413. package/dist/manifest-deps.js +151 -0
  414. package/dist/manifest-deps.js.map +1 -0
  415. package/dist/manifest-poll-scheduler.d.ts +31 -0
  416. package/dist/manifest-poll-scheduler.d.ts.map +1 -0
  417. package/dist/manifest-poll-scheduler.js +59 -0
  418. package/dist/manifest-poll-scheduler.js.map +1 -0
  419. package/dist/manifest-validity.d.ts +153 -0
  420. package/dist/manifest-validity.d.ts.map +1 -0
  421. package/dist/manifest-validity.js +268 -0
  422. package/dist/manifest-validity.js.map +1 -0
  423. package/dist/manifest-version-store-db.d.ts +24 -0
  424. package/dist/manifest-version-store-db.d.ts.map +1 -0
  425. package/dist/manifest-version-store-db.js +58 -0
  426. package/dist/manifest-version-store-db.js.map +1 -0
  427. package/dist/manifest-version-store.d.ts +16 -0
  428. package/dist/manifest-version-store.d.ts.map +1 -0
  429. package/dist/manifest-version-store.js +15 -0
  430. package/dist/manifest-version-store.js.map +1 -0
  431. package/dist/network-directory-node.d.ts +136 -0
  432. package/dist/network-directory-node.d.ts.map +1 -0
  433. package/dist/network-directory-node.js +810 -0
  434. package/dist/network-directory-node.js.map +1 -0
  435. package/dist/nonce-dedup.d.ts +68 -0
  436. package/dist/nonce-dedup.d.ts.map +1 -0
  437. package/dist/nonce-dedup.js +205 -0
  438. package/dist/nonce-dedup.js.map +1 -0
  439. package/dist/notification-dispatcher.d.ts +92 -0
  440. package/dist/notification-dispatcher.d.ts.map +1 -0
  441. package/dist/notification-dispatcher.js +210 -0
  442. package/dist/notification-dispatcher.js.map +1 -0
  443. package/dist/notification-handlers.d.ts +53 -0
  444. package/dist/notification-handlers.d.ts.map +1 -0
  445. package/dist/notification-handlers.js +461 -0
  446. package/dist/notification-handlers.js.map +1 -0
  447. package/dist/onboarding-guidance.d.ts +79 -0
  448. package/dist/onboarding-guidance.d.ts.map +1 -0
  449. package/dist/onboarding-guidance.js +95 -0
  450. package/dist/onboarding-guidance.js.map +1 -0
  451. package/dist/operator-guidance.d.ts +25 -0
  452. package/dist/operator-guidance.d.ts.map +1 -0
  453. package/dist/operator-guidance.js +50 -0
  454. package/dist/operator-guidance.js.map +1 -0
  455. package/dist/orphan-triage.d.ts +130 -0
  456. package/dist/orphan-triage.d.ts.map +1 -0
  457. package/dist/orphan-triage.js +207 -0
  458. package/dist/orphan-triage.js.map +1 -0
  459. package/dist/outbound-sessions.d.ts +126 -0
  460. package/dist/outbound-sessions.d.ts.map +1 -0
  461. package/dist/outbound-sessions.js +1052 -0
  462. package/dist/outbound-sessions.js.map +1 -0
  463. package/dist/park-envelope.d.ts +329 -0
  464. package/dist/park-envelope.d.ts.map +1 -0
  465. package/dist/park-envelope.js +509 -0
  466. package/dist/park-envelope.js.map +1 -0
  467. package/dist/park-recovery.d.ts +273 -0
  468. package/dist/park-recovery.d.ts.map +1 -0
  469. package/dist/park-recovery.js +717 -0
  470. package/dist/park-recovery.js.map +1 -0
  471. package/dist/park-refusals.d.ts +147 -0
  472. package/dist/park-refusals.d.ts.map +1 -0
  473. package/dist/park-refusals.js +331 -0
  474. package/dist/park-refusals.js.map +1 -0
  475. package/dist/quarantine-framing.d.ts +92 -0
  476. package/dist/quarantine-framing.d.ts.map +1 -0
  477. package/dist/quarantine-framing.js +111 -0
  478. package/dist/quarantine-framing.js.map +1 -0
  479. package/dist/reconnect-drain.d.ts +22 -0
  480. package/dist/reconnect-drain.d.ts.map +1 -0
  481. package/dist/reconnect-drain.js +65 -0
  482. package/dist/reconnect-drain.js.map +1 -0
  483. package/dist/recovered-position.d.ts +14 -0
  484. package/dist/recovered-position.d.ts.map +1 -0
  485. package/dist/recovered-position.js +59 -0
  486. package/dist/recovered-position.js.map +1 -0
  487. package/dist/refusal-notices.d.ts +196 -0
  488. package/dist/refusal-notices.d.ts.map +1 -0
  489. package/dist/refusal-notices.js +516 -0
  490. package/dist/refusal-notices.js.map +1 -0
  491. package/dist/refusal-reasons.d.ts +245 -0
  492. package/dist/refusal-reasons.d.ts.map +1 -0
  493. package/dist/refusal-reasons.js +363 -0
  494. package/dist/refusal-reasons.js.map +1 -0
  495. package/dist/register-handler.d.ts +36 -0
  496. package/dist/register-handler.d.ts.map +1 -0
  497. package/dist/register-handler.js +285 -0
  498. package/dist/register-handler.js.map +1 -0
  499. package/dist/registration-context.d.ts +72 -0
  500. package/dist/registration-context.d.ts.map +1 -0
  501. package/dist/registration-context.js +126 -0
  502. package/dist/registration-context.js.map +1 -0
  503. package/dist/registration-manager.d.ts +94 -0
  504. package/dist/registration-manager.d.ts.map +1 -0
  505. package/dist/registration-manager.js +585 -0
  506. package/dist/registration-manager.js.map +1 -0
  507. package/dist/registration-persistence.d.ts +183 -0
  508. package/dist/registration-persistence.d.ts.map +1 -0
  509. package/dist/registration-persistence.js +263 -0
  510. package/dist/registration-persistence.js.map +1 -0
  511. package/dist/registry-poll.d.ts +52 -0
  512. package/dist/registry-poll.d.ts.map +1 -0
  513. package/dist/registry-poll.js +140 -0
  514. package/dist/registry-poll.js.map +1 -0
  515. package/dist/registry-version-store-db.d.ts +22 -0
  516. package/dist/registry-version-store-db.d.ts.map +1 -0
  517. package/dist/registry-version-store-db.js +50 -0
  518. package/dist/registry-version-store-db.js.map +1 -0
  519. package/dist/relay-endpoints.d.ts +18 -0
  520. package/dist/relay-endpoints.d.ts.map +1 -0
  521. package/dist/relay-endpoints.js +9 -0
  522. package/dist/relay-endpoints.js.map +1 -0
  523. package/dist/relay-only.d.ts +140 -0
  524. package/dist/relay-only.d.ts.map +1 -0
  525. package/dist/relay-only.js +193 -0
  526. package/dist/relay-only.js.map +1 -0
  527. package/dist/relay-receipt-store.d.ts +155 -0
  528. package/dist/relay-receipt-store.d.ts.map +1 -0
  529. package/dist/relay-receipt-store.js +284 -0
  530. package/dist/relay-receipt-store.js.map +1 -0
  531. package/dist/relay-reconnect.d.ts +32 -0
  532. package/dist/relay-reconnect.d.ts.map +1 -0
  533. package/dist/relay-reconnect.js +29 -0
  534. package/dist/relay-reconnect.js.map +1 -0
  535. package/dist/reply-lag.d.ts +11 -0
  536. package/dist/reply-lag.d.ts.map +1 -0
  537. package/dist/reply-lag.js +46 -0
  538. package/dist/reply-lag.js.map +1 -0
  539. package/dist/resolve-named-agent.d.ts +49 -0
  540. package/dist/resolve-named-agent.d.ts.map +1 -0
  541. package/dist/resolve-named-agent.js +77 -0
  542. package/dist/resolve-named-agent.js.map +1 -0
  543. package/dist/restart-seal-resolver.d.ts +110 -0
  544. package/dist/restart-seal-resolver.d.ts.map +1 -0
  545. package/dist/restart-seal-resolver.js +353 -0
  546. package/dist/restart-seal-resolver.js.map +1 -0
  547. package/dist/resume-last-seen.d.ts +15 -0
  548. package/dist/resume-last-seen.d.ts.map +1 -0
  549. package/dist/resume-last-seen.js +44 -0
  550. package/dist/resume-last-seen.js.map +1 -0
  551. package/dist/retry-queue.d.ts +203 -0
  552. package/dist/retry-queue.d.ts.map +1 -0
  553. package/dist/retry-queue.js +701 -0
  554. package/dist/retry-queue.js.map +1 -0
  555. package/dist/roster-freshness.d.ts +160 -0
  556. package/dist/roster-freshness.d.ts.map +1 -0
  557. package/dist/roster-freshness.js +250 -0
  558. package/dist/roster-freshness.js.map +1 -0
  559. package/dist/screening-status.d.ts +15 -0
  560. package/dist/screening-status.d.ts.map +1 -0
  561. package/dist/screening-status.js +65 -0
  562. package/dist/screening-status.js.map +1 -0
  563. package/dist/seal-carried-close.d.ts +37 -0
  564. package/dist/seal-carried-close.d.ts.map +1 -0
  565. package/dist/seal-carried-close.js +179 -0
  566. package/dist/seal-carried-close.js.map +1 -0
  567. package/dist/seal-certificate-pull.d.ts +79 -0
  568. package/dist/seal-certificate-pull.d.ts.map +1 -0
  569. package/dist/seal-certificate-pull.js +186 -0
  570. package/dist/seal-certificate-pull.js.map +1 -0
  571. package/dist/seal-certified-root-check.d.ts +37 -0
  572. package/dist/seal-certified-root-check.d.ts.map +1 -0
  573. package/dist/seal-certified-root-check.js +127 -0
  574. package/dist/seal-certified-root-check.js.map +1 -0
  575. package/dist/seal-coordinator.d.ts +118 -0
  576. package/dist/seal-coordinator.d.ts.map +1 -0
  577. package/dist/seal-coordinator.js +927 -0
  578. package/dist/seal-coordinator.js.map +1 -0
  579. package/dist/seal-escalation.d.ts +80 -0
  580. package/dist/seal-escalation.d.ts.map +1 -0
  581. package/dist/seal-escalation.js +283 -0
  582. package/dist/seal-escalation.js.map +1 -0
  583. package/dist/seal-evidence-root-check.d.ts +70 -0
  584. package/dist/seal-evidence-root-check.d.ts.map +1 -0
  585. package/dist/seal-evidence-root-check.js +199 -0
  586. package/dist/seal-evidence-root-check.js.map +1 -0
  587. package/dist/seal-failure-store.d.ts +139 -0
  588. package/dist/seal-failure-store.d.ts.map +1 -0
  589. package/dist/seal-failure-store.js +207 -0
  590. package/dist/seal-failure-store.js.map +1 -0
  591. package/dist/seal-flows.d.ts +107 -0
  592. package/dist/seal-flows.d.ts.map +1 -0
  593. package/dist/seal-flows.js +638 -0
  594. package/dist/seal-flows.js.map +1 -0
  595. package/dist/seal-frontier-verify.d.ts +103 -0
  596. package/dist/seal-frontier-verify.d.ts.map +1 -0
  597. package/dist/seal-frontier-verify.js +143 -0
  598. package/dist/seal-frontier-verify.js.map +1 -0
  599. package/dist/seal-leaf.d.ts +58 -0
  600. package/dist/seal-leaf.d.ts.map +1 -0
  601. package/dist/seal-leaf.js +112 -0
  602. package/dist/seal-leaf.js.map +1 -0
  603. package/dist/seal-legibility-tbs.d.ts +25 -0
  604. package/dist/seal-legibility-tbs.d.ts.map +1 -0
  605. package/dist/seal-legibility-tbs.js +77 -0
  606. package/dist/seal-legibility-tbs.js.map +1 -0
  607. package/dist/seal-local-terminus.d.ts +41 -0
  608. package/dist/seal-local-terminus.d.ts.map +1 -0
  609. package/dist/seal-local-terminus.js +170 -0
  610. package/dist/seal-local-terminus.js.map +1 -0
  611. package/dist/seal-receipt-upgrade.d.ts +30 -0
  612. package/dist/seal-receipt-upgrade.d.ts.map +1 -0
  613. package/dist/seal-receipt-upgrade.js +49 -0
  614. package/dist/seal-receipt-upgrade.js.map +1 -0
  615. package/dist/seal-relay-silence.d.ts +51 -0
  616. package/dist/seal-relay-silence.d.ts.map +1 -0
  617. package/dist/seal-relay-silence.js +76 -0
  618. package/dist/seal-relay-silence.js.map +1 -0
  619. package/dist/seal-settle.d.ts +38 -0
  620. package/dist/seal-settle.d.ts.map +1 -0
  621. package/dist/seal-settle.js +33 -0
  622. package/dist/seal-settle.js.map +1 -0
  623. package/dist/seal-upgrade.d.ts +107 -0
  624. package/dist/seal-upgrade.d.ts.map +1 -0
  625. package/dist/seal-upgrade.js +200 -0
  626. package/dist/seal-upgrade.js.map +1 -0
  627. package/dist/sealed-conversation.d.ts +36 -0
  628. package/dist/sealed-conversation.d.ts.map +1 -0
  629. package/dist/sealed-conversation.js +171 -0
  630. package/dist/sealed-conversation.js.map +1 -0
  631. package/dist/sealed-leaf-set.d.ts +92 -0
  632. package/dist/sealed-leaf-set.d.ts.map +1 -0
  633. package/dist/sealed-leaf-set.js +122 -0
  634. package/dist/sealed-leaf-set.js.map +1 -0
  635. package/dist/send-claims.d.ts +56 -0
  636. package/dist/send-claims.d.ts.map +1 -0
  637. package/dist/send-claims.js +50 -0
  638. package/dist/send-claims.js.map +1 -0
  639. package/dist/session-assignment-parser.d.ts +104 -0
  640. package/dist/session-assignment-parser.d.ts.map +1 -0
  641. package/dist/session-assignment-parser.js +345 -0
  642. package/dist/session-assignment-parser.js.map +1 -0
  643. package/dist/session-category.d.ts +19 -0
  644. package/dist/session-category.d.ts.map +1 -0
  645. package/dist/session-category.js +14 -0
  646. package/dist/session-category.js.map +1 -0
  647. package/dist/session-ceremony.d.ts +297 -0
  648. package/dist/session-ceremony.d.ts.map +1 -0
  649. package/dist/session-ceremony.js +964 -0
  650. package/dist/session-ceremony.js.map +1 -0
  651. package/dist/session-closed.d.ts +79 -0
  652. package/dist/session-closed.d.ts.map +1 -0
  653. package/dist/session-closed.js +189 -0
  654. package/dist/session-closed.js.map +1 -0
  655. package/dist/session-connection-gater.d.ts +148 -0
  656. package/dist/session-connection-gater.d.ts.map +1 -0
  657. package/dist/session-connection-gater.js +332 -0
  658. package/dist/session-connection-gater.js.map +1 -0
  659. package/dist/session-content-context.d.ts +162 -0
  660. package/dist/session-content-context.d.ts.map +1 -0
  661. package/dist/session-content-context.js +2 -0
  662. package/dist/session-content-context.js.map +1 -0
  663. package/dist/session-content-handlers.d.ts +82 -0
  664. package/dist/session-content-handlers.d.ts.map +1 -0
  665. package/dist/session-content-handlers.js +1382 -0
  666. package/dist/session-content-handlers.js.map +1 -0
  667. package/dist/session-content-ingest.d.ts +206 -0
  668. package/dist/session-content-ingest.d.ts.map +1 -0
  669. package/dist/session-content-ingest.js +2167 -0
  670. package/dist/session-content-ingest.js.map +1 -0
  671. package/dist/session-content-send.d.ts +191 -0
  672. package/dist/session-content-send.d.ts.map +1 -0
  673. package/dist/session-content-send.js +1360 -0
  674. package/dist/session-content-send.js.map +1 -0
  675. package/dist/session-delivery-acks.d.ts +169 -0
  676. package/dist/session-delivery-acks.d.ts.map +1 -0
  677. package/dist/session-delivery-acks.js +569 -0
  678. package/dist/session-delivery-acks.js.map +1 -0
  679. package/dist/session-ephemerals.d.ts +279 -0
  680. package/dist/session-ephemerals.d.ts.map +1 -0
  681. package/dist/session-ephemerals.js +591 -0
  682. package/dist/session-ephemerals.js.map +1 -0
  683. package/dist/session-leaf-records.d.ts +159 -0
  684. package/dist/session-leaf-records.d.ts.map +1 -0
  685. package/dist/session-leaf-records.js +408 -0
  686. package/dist/session-leaf-records.js.map +1 -0
  687. package/dist/session-lifecycle.d.ts +303 -0
  688. package/dist/session-lifecycle.d.ts.map +1 -0
  689. package/dist/session-lifecycle.js +1679 -0
  690. package/dist/session-lifecycle.js.map +1 -0
  691. package/dist/session-liveness.d.ts +135 -0
  692. package/dist/session-liveness.d.ts.map +1 -0
  693. package/dist/session-liveness.js +347 -0
  694. package/dist/session-liveness.js.map +1 -0
  695. package/dist/session-name.d.ts +35 -0
  696. package/dist/session-name.d.ts.map +1 -0
  697. package/dist/session-name.js +60 -0
  698. package/dist/session-name.js.map +1 -0
  699. package/dist/session-node-factory.d.ts +18 -0
  700. package/dist/session-node-factory.d.ts.map +1 -0
  701. package/dist/session-node-factory.js +182 -0
  702. package/dist/session-node-factory.js.map +1 -0
  703. package/dist/session-node-manager.d.ts +877 -0
  704. package/dist/session-node-manager.d.ts.map +1 -0
  705. package/dist/session-node-manager.js +2998 -0
  706. package/dist/session-node-manager.js.map +1 -0
  707. package/dist/session-node-types.d.ts +1057 -0
  708. package/dist/session-node-types.d.ts.map +1 -0
  709. package/dist/session-node-types.js +657 -0
  710. package/dist/session-node-types.js.map +1 -0
  711. package/dist/session-notify.d.ts +46 -0
  712. package/dist/session-notify.d.ts.map +1 -0
  713. package/dist/session-notify.js +116 -0
  714. package/dist/session-notify.js.map +1 -0
  715. package/dist/session-own-chain-store.d.ts +65 -0
  716. package/dist/session-own-chain-store.d.ts.map +1 -0
  717. package/dist/session-own-chain-store.js +75 -0
  718. package/dist/session-own-chain-store.js.map +1 -0
  719. package/dist/session-queries.d.ts +476 -0
  720. package/dist/session-queries.d.ts.map +1 -0
  721. package/dist/session-queries.js +1007 -0
  722. package/dist/session-queries.js.map +1 -0
  723. package/dist/session-read-handlers.d.ts +87 -0
  724. package/dist/session-read-handlers.d.ts.map +1 -0
  725. package/dist/session-read-handlers.js +689 -0
  726. package/dist/session-read-handlers.js.map +1 -0
  727. package/dist/session-records.d.ts +341 -0
  728. package/dist/session-records.d.ts.map +1 -0
  729. package/dist/session-records.js +858 -0
  730. package/dist/session-records.js.map +1 -0
  731. package/dist/session-relay-client.d.ts +659 -0
  732. package/dist/session-relay-client.d.ts.map +1 -0
  733. package/dist/session-relay-client.js +2876 -0
  734. package/dist/session-relay-client.js.map +1 -0
  735. package/dist/session-relay.d.ts +397 -0
  736. package/dist/session-relay.d.ts.map +1 -0
  737. package/dist/session-relay.js +1636 -0
  738. package/dist/session-relay.js.map +1 -0
  739. package/dist/session-salt-agreement.d.ts +331 -0
  740. package/dist/session-salt-agreement.d.ts.map +1 -0
  741. package/dist/session-salt-agreement.js +472 -0
  742. package/dist/session-salt-agreement.js.map +1 -0
  743. package/dist/session-salts.d.ts +432 -0
  744. package/dist/session-salts.d.ts.map +1 -0
  745. package/dist/session-salts.js +1540 -0
  746. package/dist/session-salts.js.map +1 -0
  747. package/dist/session-schema.d.ts +30 -0
  748. package/dist/session-schema.d.ts.map +1 -0
  749. package/dist/session-schema.js +877 -0
  750. package/dist/session-schema.js.map +1 -0
  751. package/dist/session-seal-leaf-store.d.ts +70 -0
  752. package/dist/session-seal-leaf-store.d.ts.map +1 -0
  753. package/dist/session-seal-leaf-store.js +105 -0
  754. package/dist/session-seal-leaf-store.js.map +1 -0
  755. package/dist/session-seal.d.ts +334 -0
  756. package/dist/session-seal.d.ts.map +1 -0
  757. package/dist/session-seal.js +1017 -0
  758. package/dist/session-seal.js.map +1 -0
  759. package/dist/session-terminal-refusal.d.ts +65 -0
  760. package/dist/session-terminal-refusal.d.ts.map +1 -0
  761. package/dist/session-terminal-refusal.js +87 -0
  762. package/dist/session-terminal-refusal.js.map +1 -0
  763. package/dist/session-tree.d.ts +110 -0
  764. package/dist/session-tree.d.ts.map +1 -0
  765. package/dist/session-tree.js +144 -0
  766. package/dist/session-tree.js.map +1 -0
  767. package/dist/session-views.d.ts +47 -0
  768. package/dist/session-views.d.ts.map +1 -0
  769. package/dist/session-views.js +278 -0
  770. package/dist/session-views.js.map +1 -0
  771. package/dist/signal-handlers.d.ts +63 -0
  772. package/dist/signal-handlers.d.ts.map +1 -0
  773. package/dist/signal-handlers.js +980 -0
  774. package/dist/signal-handlers.js.map +1 -0
  775. package/dist/signal-requirement-policy.d.ts +51 -0
  776. package/dist/signal-requirement-policy.d.ts.map +1 -0
  777. package/dist/signal-requirement-policy.js +89 -0
  778. package/dist/signal-requirement-policy.js.map +1 -0
  779. package/dist/signal-revocability.d.ts +49 -0
  780. package/dist/signal-revocability.d.ts.map +1 -0
  781. package/dist/signal-revocability.js +93 -0
  782. package/dist/signal-revocability.js.map +1 -0
  783. package/dist/signal-submission.d.ts +181 -0
  784. package/dist/signal-submission.d.ts.map +1 -0
  785. package/dist/signal-submission.js +368 -0
  786. package/dist/signal-submission.js.map +1 -0
  787. package/dist/signaling-connect.d.ts +118 -0
  788. package/dist/signaling-connect.d.ts.map +1 -0
  789. package/dist/signaling-connect.js +538 -0
  790. package/dist/signaling-connect.js.map +1 -0
  791. package/dist/signaling-wiring.d.ts +105 -0
  792. package/dist/signaling-wiring.d.ts.map +1 -0
  793. package/dist/signaling-wiring.js +393 -0
  794. package/dist/signaling-wiring.js.map +1 -0
  795. package/dist/singleton-lock.d.ts +85 -0
  796. package/dist/singleton-lock.d.ts.map +1 -0
  797. package/dist/singleton-lock.js +219 -0
  798. package/dist/singleton-lock.js.map +1 -0
  799. package/dist/sqlcipher-db.d.ts +139 -0
  800. package/dist/sqlcipher-db.d.ts.map +1 -0
  801. package/dist/sqlcipher-db.js +357 -0
  802. package/dist/sqlcipher-db.js.map +1 -0
  803. package/dist/standing-receivers.d.ts +319 -0
  804. package/dist/standing-receivers.d.ts.map +1 -0
  805. package/dist/standing-receivers.js +1295 -0
  806. package/dist/standing-receivers.js.map +1 -0
  807. package/dist/start-agent.d.ts +64 -0
  808. package/dist/start-agent.d.ts.map +1 -0
  809. package/dist/start-agent.js +136 -0
  810. package/dist/start-agent.js.map +1 -0
  811. package/dist/status-handler.d.ts +54 -0
  812. package/dist/status-handler.d.ts.map +1 -0
  813. package/dist/status-handler.js +61 -0
  814. package/dist/status-handler.js.map +1 -0
  815. package/dist/submission-retry.d.ts +208 -0
  816. package/dist/submission-retry.d.ts.map +1 -0
  817. package/dist/submission-retry.js +506 -0
  818. package/dist/submission-retry.js.map +1 -0
  819. package/dist/telegram-bot-client.d.ts +34 -0
  820. package/dist/telegram-bot-client.d.ts.map +1 -0
  821. package/dist/telegram-bot-client.js +36 -0
  822. package/dist/telegram-bot-client.js.map +1 -0
  823. package/dist/telegram-doorbell.d.ts +38 -0
  824. package/dist/telegram-doorbell.d.ts.map +1 -0
  825. package/dist/telegram-doorbell.js +140 -0
  826. package/dist/telegram-doorbell.js.map +1 -0
  827. package/dist/test-handlers.d.ts +62 -0
  828. package/dist/test-handlers.d.ts.map +1 -0
  829. package/dist/test-handlers.js +240 -0
  830. package/dist/test-handlers.js.map +1 -0
  831. package/dist/testing.d.ts +10 -0
  832. package/dist/testing.d.ts.map +1 -0
  833. package/dist/testing.js +10 -0
  834. package/dist/testing.js.map +1 -0
  835. package/dist/transport-composition.d.ts +31 -0
  836. package/dist/transport-composition.d.ts.map +1 -0
  837. package/dist/transport-composition.js +55 -0
  838. package/dist/transport-composition.js.map +1 -0
  839. package/dist/transport-selector.d.ts +202 -0
  840. package/dist/transport-selector.d.ts.map +1 -0
  841. package/dist/transport-selector.js +196 -0
  842. package/dist/transport-selector.js.map +1 -0
  843. package/dist/trust-signal-pickup-listener.d.ts +43 -0
  844. package/dist/trust-signal-pickup-listener.d.ts.map +1 -0
  845. package/dist/trust-signal-pickup-listener.js +48 -0
  846. package/dist/trust-signal-pickup-listener.js.map +1 -0
  847. package/dist/trust-signal-store.d.ts +406 -0
  848. package/dist/trust-signal-store.d.ts.map +1 -0
  849. package/dist/trust-signal-store.js +939 -0
  850. package/dist/trust-signal-store.js.map +1 -0
  851. package/dist/trust-signal-sweep-tick.d.ts +60 -0
  852. package/dist/trust-signal-sweep-tick.d.ts.map +1 -0
  853. package/dist/trust-signal-sweep-tick.js +101 -0
  854. package/dist/trust-signal-sweep-tick.js.map +1 -0
  855. package/dist/trust-signal-sweep.d.ts +94 -0
  856. package/dist/trust-signal-sweep.d.ts.map +1 -0
  857. package/dist/trust-signal-sweep.js +147 -0
  858. package/dist/trust-signal-sweep.js.map +1 -0
  859. package/dist/type-registry.d.ts +42 -0
  860. package/dist/type-registry.d.ts.map +1 -0
  861. package/dist/type-registry.js +37 -0
  862. package/dist/type-registry.js.map +1 -0
  863. package/dist/types.d.ts +746 -0
  864. package/dist/types.d.ts.map +1 -0
  865. package/dist/types.js +20 -0
  866. package/dist/types.js.map +1 -0
  867. package/dist/unresolved-nodes-report.d.ts +14 -0
  868. package/dist/unresolved-nodes-report.d.ts.map +1 -0
  869. package/dist/unresolved-nodes-report.js +96 -0
  870. package/dist/unresolved-nodes-report.js.map +1 -0
  871. package/dist/vocabulary.d.ts +150 -0
  872. package/dist/vocabulary.d.ts.map +1 -0
  873. package/dist/vocabulary.js +386 -0
  874. package/dist/vocabulary.js.map +1 -0
  875. package/dist/who-label.d.ts +28 -0
  876. package/dist/who-label.d.ts.map +1 -0
  877. package/dist/who-label.js +31 -0
  878. package/dist/who-label.js.map +1 -0
  879. package/dist/who-resolver.d.ts +15 -0
  880. package/dist/who-resolver.d.ts.map +1 -0
  881. package/dist/who-resolver.js +47 -0
  882. package/dist/who-resolver.js.map +1 -0
  883. package/dist/wire-content-hash.d.ts +93 -0
  884. package/dist/wire-content-hash.d.ts.map +1 -0
  885. package/dist/wire-content-hash.js +116 -0
  886. package/dist/wire-content-hash.js.map +1 -0
  887. package/dist/withheld-content.d.ts +13 -0
  888. package/dist/withheld-content.d.ts.map +1 -0
  889. package/dist/withheld-content.js +46 -0
  890. package/dist/withheld-content.js.map +1 -0
  891. package/dist/witness-alerts.d.ts +40 -0
  892. package/dist/witness-alerts.d.ts.map +1 -0
  893. package/dist/witness-alerts.js +102 -0
  894. package/dist/witness-alerts.js.map +1 -0
  895. package/package.json +5 -5
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-store.js","sourceRoot":"","sources":["../src/document-store.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,32 @@
1
+ import { ReconcileScheduler } from "./document-reconcile-scheduler.js";
2
+ import type { IpcHandler } from "./ipc-server.js";
3
+ import type { Logger } from "./types.js";
4
+ import type { KeyProvider } from "@cello-protocol/crypto";
5
+ import type { SignalingManager } from "@cello-protocol/transport";
6
+ export interface DocumentSurfaceDeps {
7
+ logger: Logger;
8
+ handlers: Map<string, IpcHandler>;
9
+ loadedAgents: ReadonlyArray<{
10
+ name: string;
11
+ pubkey: string;
12
+ keyProvider: KeyProvider;
13
+ }>;
14
+ keyProviders: Map<string, KeyProvider>;
15
+ perConnectionState: ReadonlyMap<string, {
16
+ currentAgent: string | null;
17
+ }>;
18
+ perAgentSignaling: ReadonlyMap<string, {
19
+ signaling: SignalingManager;
20
+ }>;
21
+ resolveCurrentAgent: (connState: {
22
+ currentAgent: string | null;
23
+ } | undefined, explicitAgent?: string) => string | null;
24
+ documentLayer: ReturnType<typeof import("./document-layer.js").createDocumentLayer>;
25
+ documentOwnerKeyFor: (agentName: string) => string | null;
26
+ documentTransportFor: (agentName: string) => ReturnType<typeof import("./document-delivery-transport.js").createDocumentDeliveryTransport>;
27
+ }
28
+ export declare function createDocumentSurface(deps: DocumentSurfaceDeps): {
29
+ reconcileSweepTimer: NodeJS.Timeout;
30
+ reconcileScheduler: ReconcileScheduler;
31
+ };
32
+ //# sourceMappingURL=document-surface.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-surface.d.ts","sourceRoot":"","sources":["../src/document-surface.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,kBAAkB,EAAE,MAAM,mCAAmC,CAAC;AAEvE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAC1D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2BAA2B,CAAC;AAGlE,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IAClC,YAAY,EAAE,aAAa,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,WAAW,CAAA;KAAE,CAAC,CAAC;IACxF,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IACvC,kBAAkB,EAAE,WAAW,CAAC,MAAM,EAAE;QAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;IACzE,iBAAiB,EAAE,WAAW,CAAC,MAAM,EAAE;QAAE,SAAS,EAAE,gBAAgB,CAAA;KAAE,CAAC,CAAC;IACxE,mBAAmB,EAAE,CAAC,SAAS,EAAE;QAAE,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,GAAG,SAAS,EAAE,aAAa,CAAC,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IACvH,aAAa,EAAE,UAAU,CAAC,cAAc,qBAAqB,EAAE,mBAAmB,CAAC,CAAC;IACpF,mBAAmB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,MAAM,GAAG,IAAI,CAAC;IAC1D,oBAAoB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,UAAU,CAAC,cAAc,kCAAkC,EAAE,+BAA+B,CAAC,CAAC;CAC5I;AAED,wBAAgB,qBAAqB,CAAC,IAAI,EAAE,mBAAmB;;;EA+I9D"}
@@ -0,0 +1,151 @@
1
+ /**
2
+ * The document OPERATOR surface, and the sweep that keeps shared documents converging.
3
+ *
4
+ * Registered last of the document wiring, deliberately: this is the only part that can CREATE a
5
+ * document, and everything it creates has to have somewhere to go. Without the inbound path a peer's
6
+ * answer is unroutable; without the delivery worker a published update never leaves.
7
+ *
8
+ * The reconcile sweep travels with it because it is what makes the surface's promise true over time
9
+ * — a document published to a peer who was unreachable is not lost, it is retried on a bound.
10
+ */
11
+ import { DocumentPublish } from "./document-publish.js";
12
+ import { ReconcileScheduler } from "./document-reconcile-scheduler.js";
13
+ import { registerDocumentHandlers } from "./document-handlers.js";
14
+ import { extractErrorMessage } from "./error-message.js";
15
+ export function createDocumentSurface(deps) {
16
+ const { logger, handlers, loadedAgents, keyProviders, perConnectionState, perAgentSignaling, resolveCurrentAgent, documentLayer, documentOwnerKeyFor, documentTransportFor, } = deps;
17
+ // ⚠️ ASSIGNED HERE AND READ ELSEWHERE. Two modules built EARLIER hold getters over the root's
18
+ // `let` for this scheduler; the value is produced below and handed back so the root can set it.
19
+ // Returning it is what keeps those getters correct — they resolve at call time, which is always
20
+ // after this runs.
21
+ let reconcileScheduler;
22
+ // M14 / DOD-DOC-TOOLS-1 — the OPERATOR SURFACE. Registered last of the document wiring, because
23
+ // it is the only part that can create a document, and everything it creates has to have somewhere
24
+ // to go: without the inbound path a peer's answer is unroutable, and without the delivery worker a
25
+ // published update never leaves.
26
+ const documentPublish = new DocumentPublish({
27
+ holdersFor: (ownerAgentId, documentId) => documentLayer.holdersFor(ownerAgentId, documentId),
28
+ governanceFrontierFor: (ownerAgentId, documentId) => documentLayer.governanceFrontierFor(ownerAgentId, documentId),
29
+ store: documentLayer.store,
30
+ engine: documentLayer.engine,
31
+ logger,
32
+ sign: async (ownerAgentId, tbs) => {
33
+ // `ownerAgentId` is the owner KEY here, and keyProviders is keyed by NAME — so it is resolved
34
+ // back through the same map the owner key came from rather than guessed. A miss throws: an
35
+ // unsigned envelope in an append-only log is worse than a failed publish.
36
+ const agentName = loadedAgents.find((a) => a.pubkey?.toLowerCase() === ownerAgentId)?.name;
37
+ const provider = agentName ? keyProviders.get(agentName) : undefined;
38
+ if (!provider) {
39
+ throw new Error(`document_publish_unsigned: no key provider for owner ${ownerAgentId.slice(0, 16)}…, ` +
40
+ `so this update cannot be signed`);
41
+ }
42
+ return provider.sign(tbs);
43
+ },
44
+ // M14-D5: our wire sender id IS the owner key. Kept as its own callback because they are
45
+ // different facts that happen to coincide — see DocumentStore.pendingDeliveries.
46
+ senderIdFor: (ownerAgentId) => ownerAgentId,
47
+ canPublish: (ownerAgentId, documentId) => documentLayer.lifecycle.canPublish(ownerAgentId, documentId),
48
+ // SYNC-P4 (R39's first trigger): each seat gets an initiated reconcile exchange — the
49
+ // envelope rides the exchange's own difference computation. Fire-and-forget by contract.
50
+ nudgeSeats: (ownerAgentId, documentId, seats) => {
51
+ for (const seat of seats) {
52
+ void documentLayer
53
+ .initiateReconcile(ownerAgentId, seat, [documentId])
54
+ .then((sent) => {
55
+ if (!sent.ok) {
56
+ // NOT SILENT (review F3): a lost nudge is legal for correctness (any later
57
+ // exchange recomputes the difference — R40), but until P5's sweeps exist this
58
+ // line is the only trace an operator has for "my edit never arrived".
59
+ logger.warn("document.reconcile.nudge_failed", {
60
+ documentId, peerAgentId: seat, reason: sent.reason,
61
+ });
62
+ }
63
+ })
64
+ .catch((err) => {
65
+ logger.warn("document.reconcile.nudge_failed", {
66
+ documentId, peerAgentId: seat,
67
+ reason: extractErrorMessage(err),
68
+ });
69
+ });
70
+ }
71
+ },
72
+ });
73
+ registerDocumentHandlers({
74
+ handlers,
75
+ logger,
76
+ layer: documentLayer,
77
+ publish: documentPublish,
78
+ transportFor: documentTransportFor,
79
+ resolveAgent: (connectionId, explicit) => resolveCurrentAgent(perConnectionState.get(connectionId), explicit),
80
+ ownerKeyFor: documentOwnerKeyFor,
81
+ sign: async (agentName, tbs) => {
82
+ const provider = keyProviders.get(agentName);
83
+ if (!provider)
84
+ throw new Error(`document_proposal_unsigned: no key provider for ${agentName}`);
85
+ return provider.sign(tbs);
86
+ },
87
+ now: () => Date.now(),
88
+ });
89
+ // SYNC-P5 (R39–R43) — WHEN reconciling is attempted: the periodic sweep and the party-became-
90
+ // reachable trigger. All state volatile (R41); a lost tick costs latency, never correctness.
91
+ reconcileScheduler = new ReconcileScheduler({
92
+ now: () => Date.now(),
93
+ logger,
94
+ sweepTargets: (ownerAgentId) => documentLayer.sweepTargets(ownerAgentId),
95
+ pendingFor: (ownerAgentId, documentId, partyAgentId) => documentLayer.pendingFor(ownerAgentId, documentId, partyAgentId),
96
+ initiateReconcile: (ownerAgentId, peerAgentId, documentIds) => documentLayer.initiateReconcile(ownerAgentId, peerAgentId, documentIds),
97
+ ...(Number.isFinite(Number(process.env["CELLO_DOCUMENT_RECONCILE_BACKOFF_MS"])) &&
98
+ Number(process.env["CELLO_DOCUMENT_RECONCILE_BACKOFF_MS"]) >= 250
99
+ ? { backoffBaseMs: Number(process.env["CELLO_DOCUMENT_RECONCILE_BACKOFF_MS"]) }
100
+ : {}),
101
+ });
102
+ // Overridable for tests (the delivery tick precedent); floored so a misread env cannot busy-loop.
103
+ const reconcileTickOverride = Number(process.env["CELLO_DOCUMENT_RECONCILE_SWEEP_MS"]);
104
+ const RECONCILE_SWEEP_MS = Number.isFinite(reconcileTickOverride) && reconcileTickOverride >= 250
105
+ ? reconcileTickOverride
106
+ : 120_000;
107
+ // Review F2: the guard is TIME-STAMPED, not a bare boolean — a pass that never settles (a
108
+ // dial with no timeout) would otherwise end the sweep silently for the daemon's lifetime,
109
+ // the exact R42 stall one level above the module that fixed it. Past the bound the wedge is
110
+ // WARNED and the guard force-released; the abandoned pass's own scheduler marks are
111
+ // themselves time-bounded, so double-attempts are latency, never correctness.
112
+ const RECONCILE_PASS_BOUND_MS = 5 * 60_000;
113
+ let reconcileSweepStartedAt = null;
114
+ const reconcileSweepTimer = setInterval(() => {
115
+ if (reconcileSweepStartedAt !== null) {
116
+ if (Date.now() - reconcileSweepStartedAt < RECONCILE_PASS_BOUND_MS)
117
+ return;
118
+ logger.warn("document.reconcile.sweep_wedged", {
119
+ heldMs: Date.now() - reconcileSweepStartedAt,
120
+ impact: "a sweep pass never settled; the guard is force-released so sweeping continues",
121
+ });
122
+ }
123
+ reconcileSweepStartedAt = Date.now();
124
+ void (async () => {
125
+ try {
126
+ for (const agentName of perAgentSignaling.keys()) {
127
+ const ownerAgentId = documentOwnerKeyFor(agentName);
128
+ if (ownerAgentId === null)
129
+ continue;
130
+ const result = await reconcileScheduler.sweep(ownerAgentId);
131
+ if (result.attempted > 0 || result.failed > 0) {
132
+ logger.debug("document.reconcile.sweep", { agentName, ...result });
133
+ }
134
+ }
135
+ }
136
+ catch (err) {
137
+ logger.warn("document.reconcile.sweep_threw", {
138
+ reason: extractErrorMessage(err),
139
+ });
140
+ }
141
+ finally {
142
+ reconcileSweepStartedAt = null;
143
+ }
144
+ })();
145
+ }, RECONCILE_SWEEP_MS);
146
+ reconcileSweepTimer.unref?.();
147
+ // `documentPublish` is NOT returned: its only consumer is the handler registration inside this
148
+ // module. Returning it would widen the surface for no caller.
149
+ return { reconcileSweepTimer, reconcileScheduler };
150
+ }
151
+ //# sourceMappingURL=document-surface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-surface.js","sourceRoot":"","sources":["../src/document-surface.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,94 @@
1
+ /**
2
+ * DOD-DOC-TYPES-1 — the single registry of document types.
3
+ *
4
+ * ── WHY THIS FILE EXISTS ─────────────────────────────────────────────────────────────────────────
5
+ *
6
+ * The type list was kept in two places that had no link to each other:
7
+ *
8
+ * `SUPPORTED_DOCUMENT_TYPES` (document-write-path) = markdown, text, plaintext
9
+ * `DIFFABLE_DOCUMENT_TYPES` (document-notify) = markdown, text, json
10
+ *
11
+ * They had already drifted. **`plaintext` was admitted and could not be diffed** — an operator could
12
+ * propose a `plaintext` document, have it accepted, edit it with a peer, and get *"this build renders
13
+ * diffs for markdown, text, json"* from `cello_doc_diff`. The verb that says what changed was dead
14
+ * on a type the product offered them.
15
+ *
16
+ * Neither list was wrong by itself; the defect was that there were two, so adding a type meant
17
+ * remembering a second file. With three more types queued that is a step that gets forgotten, so the
18
+ * properties became COLUMNS on one row and every list is derived.
19
+ *
20
+ * This module deliberately imports nothing. Both `document-write-path` and `document-notify` read
21
+ * it, and a registry that pulled in either of them would be a cycle.
22
+ */
23
+ /** Which Yjs root a type's content lives in. `text` merges by line; `map` merges per key. */
24
+ export type DocumentRoot = "text" | "map";
25
+ export interface DocumentTypeRow {
26
+ /** The root the content projects from — this decides which merge strategy applies. */
27
+ readonly root: DocumentRoot;
28
+ /** The file extension it materializes as. The file IS the editing surface, so this is load-bearing. */
29
+ readonly extension: string;
30
+ /**
31
+ * Whether `propose`/`accept` may admit it.
32
+ *
33
+ * Every type here is admitted today. The flag exists because `json` was NOT, for a real reason
34
+ * worth keeping: the write path served it (map root) while read/write/diff assumed the text root,
35
+ * so it read as empty, wrote into a root nothing projects, and diffed as unchanged forever. A type
36
+ * only some verbs can serve is worse than an absent one — it reads as done and loses content in
37
+ * silence. The flag is how the next half-built type gets refused instead of shipped.
38
+ */
39
+ readonly admitted: boolean;
40
+ /**
41
+ * Opening this file runs its contents.
42
+ *
43
+ * True for `html`: double-clicking a document a peer co-authored executes their script with a
44
+ * `file://` origin. It is NOT a reason to refuse the type or to strip tags — `<script>` is
45
+ * legitimate content in an HTML document, and refusing it is the "a document about prompt formats
46
+ * loses its subject" mistake from the screening audit. It is a reason to tell the operator plainly
47
+ * at the moment they are handed the path, which is generated from this flag rather than from an
48
+ * `if (type === "html")` the next executable type would not match.
49
+ */
50
+ readonly executableWhenOpened?: boolean;
51
+ }
52
+ /**
53
+ * Every document type this build knows.
54
+ *
55
+ * `plaintext` and `text` share ONE row object by identity, not two equal rows — an alias cannot
56
+ * drift from what it aliases if there is nothing to drift from.
57
+ */
58
+ export declare const DOCUMENT_TYPES: ReadonlyMap<string, DocumentTypeRow>;
59
+ /** The row for a type, or `undefined` for one this build does not know. */
60
+ export declare function documentTypeRow(documentType: string): DocumentTypeRow | undefined;
61
+ /**
62
+ * The extension for a type, or `undefined` for an unknown one.
63
+ *
64
+ * Undefined rather than a default: a type nothing can serve must not be handed a plausible-looking
65
+ * path. The silent `: "md"` default is what let `yaml` create a real signed peer-accepted document
66
+ * with no file and no explanation.
67
+ */
68
+ export declare function extensionForDocumentType(documentType: string): string | undefined;
69
+ /** Whether `propose`/`accept` may admit this type. */
70
+ export declare function isSupportedDocumentType(documentType: string): boolean;
71
+ /** The admitted types, sorted — the set a refusal message names. */
72
+ export declare function admittedDocumentTypes(): readonly string[];
73
+ /**
74
+ * The types `cello_doc_diff` can render.
75
+ *
76
+ * EVERY known type is diffable — a text root diffs by line and a map root by key, and there is no
77
+ * third case. It is derived rather than listed because the listed version is what drifted out of
78
+ * agreement with the admitted set and killed `plaintext`'s diff.
79
+ */
80
+ export declare function diffableDocumentTypes(): readonly string[];
81
+ /**
82
+ * What the operator is told when handed the path to a document whose file RUNS when opened.
83
+ *
84
+ * Returns `undefined` for every other type on purpose: a notice attached to every document is a
85
+ * notice on none. Keyed on the row's flag rather than on the type name, so the next executable type
86
+ * inherits it by setting the flag instead of by being remembered here.
87
+ *
88
+ * The wording states the consequence rather than the mechanism, because that is what an operator
89
+ * decides from.
90
+ */
91
+ export declare function openingNoticeFor(documentType: string): string | undefined;
92
+ /** The Yjs root a type's content lives in, or `undefined` for an unknown type. */
93
+ export declare function rootForDocumentType(documentType: string): DocumentRoot | undefined;
94
+ //# sourceMappingURL=document-types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-types.d.ts","sourceRoot":"","sources":["../src/document-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,6FAA6F;AAC7F,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,KAAK,CAAC;AAE1C,MAAM,WAAW,eAAe;IAC9B,sFAAsF;IACtF,QAAQ,CAAC,IAAI,EAAE,YAAY,CAAC;IAC5B,uGAAuG;IACvG,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B;;;;;;;;OAQG;IACH,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC;IAC3B;;;;;;;;;OASG;IACH,QAAQ,CAAC,oBAAoB,CAAC,EAAE,OAAO,CAAC;CACzC;AAID;;;;;GAKG;AACH,eAAO,MAAM,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,eAAe,CAM9D,CAAC;AAEH,2EAA2E;AAC3E,wBAAgB,eAAe,CAAC,YAAY,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAEjF;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAEjF;AAED,sDAAsD;AACtD,wBAAgB,uBAAuB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAErE;AAED,oEAAoE;AACpE,wBAAgB,qBAAqB,IAAI,SAAS,MAAM,EAAE,CAEzD;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,IAAI,SAAS,MAAM,EAAE,CAEzD;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAAC,YAAY,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAOzE;AAED,kFAAkF;AAClF,wBAAgB,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS,CAElF"}
@@ -0,0 +1,90 @@
1
+ /**
2
+ * DOD-DOC-TYPES-1 — the single registry of document types.
3
+ *
4
+ * ── WHY THIS FILE EXISTS ─────────────────────────────────────────────────────────────────────────
5
+ *
6
+ * The type list was kept in two places that had no link to each other:
7
+ *
8
+ * `SUPPORTED_DOCUMENT_TYPES` (document-write-path) = markdown, text, plaintext
9
+ * `DIFFABLE_DOCUMENT_TYPES` (document-notify) = markdown, text, json
10
+ *
11
+ * They had already drifted. **`plaintext` was admitted and could not be diffed** — an operator could
12
+ * propose a `plaintext` document, have it accepted, edit it with a peer, and get *"this build renders
13
+ * diffs for markdown, text, json"* from `cello_doc_diff`. The verb that says what changed was dead
14
+ * on a type the product offered them.
15
+ *
16
+ * Neither list was wrong by itself; the defect was that there were two, so adding a type meant
17
+ * remembering a second file. With three more types queued that is a step that gets forgotten, so the
18
+ * properties became COLUMNS on one row and every list is derived.
19
+ *
20
+ * This module deliberately imports nothing. Both `document-write-path` and `document-notify` read
21
+ * it, and a registry that pulled in either of them would be a cycle.
22
+ */
23
+ const TEXT = { root: "text", extension: "txt", admitted: true };
24
+ /**
25
+ * Every document type this build knows.
26
+ *
27
+ * `plaintext` and `text` share ONE row object by identity, not two equal rows — an alias cannot
28
+ * drift from what it aliases if there is nothing to drift from.
29
+ */
30
+ export const DOCUMENT_TYPES = new Map([
31
+ ["markdown", { root: "text", extension: "md", admitted: true }],
32
+ ["text", TEXT],
33
+ ["plaintext", TEXT],
34
+ ["html", { root: "text", extension: "html", admitted: true, executableWhenOpened: true }],
35
+ ["json", { root: "map", extension: "json", admitted: true }],
36
+ ]);
37
+ /** The row for a type, or `undefined` for one this build does not know. */
38
+ export function documentTypeRow(documentType) {
39
+ return DOCUMENT_TYPES.get(documentType);
40
+ }
41
+ /**
42
+ * The extension for a type, or `undefined` for an unknown one.
43
+ *
44
+ * Undefined rather than a default: a type nothing can serve must not be handed a plausible-looking
45
+ * path. The silent `: "md"` default is what let `yaml` create a real signed peer-accepted document
46
+ * with no file and no explanation.
47
+ */
48
+ export function extensionForDocumentType(documentType) {
49
+ return DOCUMENT_TYPES.get(documentType)?.extension;
50
+ }
51
+ /** Whether `propose`/`accept` may admit this type. */
52
+ export function isSupportedDocumentType(documentType) {
53
+ return DOCUMENT_TYPES.get(documentType)?.admitted === true;
54
+ }
55
+ /** The admitted types, sorted — the set a refusal message names. */
56
+ export function admittedDocumentTypes() {
57
+ return [...DOCUMENT_TYPES.entries()].filter(([, row]) => row.admitted).map(([name]) => name).sort();
58
+ }
59
+ /**
60
+ * The types `cello_doc_diff` can render.
61
+ *
62
+ * EVERY known type is diffable — a text root diffs by line and a map root by key, and there is no
63
+ * third case. It is derived rather than listed because the listed version is what drifted out of
64
+ * agreement with the admitted set and killed `plaintext`'s diff.
65
+ */
66
+ export function diffableDocumentTypes() {
67
+ return [...DOCUMENT_TYPES.keys()].sort();
68
+ }
69
+ /**
70
+ * What the operator is told when handed the path to a document whose file RUNS when opened.
71
+ *
72
+ * Returns `undefined` for every other type on purpose: a notice attached to every document is a
73
+ * notice on none. Keyed on the row's flag rather than on the type name, so the next executable type
74
+ * inherits it by setting the flag instead of by being remembered here.
75
+ *
76
+ * The wording states the consequence rather than the mechanism, because that is what an operator
77
+ * decides from.
78
+ */
79
+ export function openingNoticeFor(documentType) {
80
+ if (DOCUMENT_TYPES.get(documentType)?.executableWhenOpened !== true)
81
+ return undefined;
82
+ return ("This document is an .html file, and your peer can edit it. Opening it in a browser RUNS " +
83
+ "whatever is in it, including anything they wrote — with access to your local files. Read it " +
84
+ "with cello_doc_read, or open it in an editor, rather than double-clicking it.");
85
+ }
86
+ /** The Yjs root a type's content lives in, or `undefined` for an unknown type. */
87
+ export function rootForDocumentType(documentType) {
88
+ return DOCUMENT_TYPES.get(documentType)?.root;
89
+ }
90
+ //# sourceMappingURL=document-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-types.js","sourceRoot":"","sources":["../src/document-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAiCH,MAAM,IAAI,GAAoB,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;AAEjF;;;;;GAKG;AACH,MAAM,CAAC,MAAM,cAAc,GAAyC,IAAI,GAAG,CAA0B;IACnG,CAAC,UAAU,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC/D,CAAC,MAAM,EAAE,IAAI,CAAC;IACd,CAAC,WAAW,EAAE,IAAI,CAAC;IACnB,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC;IACzF,CAAC,MAAM,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;CAC7D,CAAC,CAAC;AAEH,2EAA2E;AAC3E,MAAM,UAAU,eAAe,CAAC,YAAoB;IAClD,OAAO,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;AAC1C,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB,CAAC,YAAoB;IAC3D,OAAO,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,SAAS,CAAC;AACrD,CAAC;AAED,sDAAsD;AACtD,MAAM,UAAU,uBAAuB,CAAC,YAAoB;IAC1D,OAAO,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,QAAQ,KAAK,IAAI,CAAC;AAC7D,CAAC;AAED,oEAAoE;AACpE,MAAM,UAAU,qBAAqB;IACnC,OAAO,CAAC,GAAG,cAAc,CAAC,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;AACtG,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,qBAAqB;IACnC,OAAO,CAAC,GAAG,cAAc,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;AAC3C,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,gBAAgB,CAAC,YAAoB;IACnD,IAAI,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,oBAAoB,KAAK,IAAI;QAAE,OAAO,SAAS,CAAC;IACtF,OAAO,CACL,0FAA0F;QAC1F,8FAA8F;QAC9F,+EAA+E,CAChF,CAAC;AACJ,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,mBAAmB,CAAC,YAAoB;IACtD,OAAO,cAAc,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,IAAI,CAAC;AAChD,CAAC"}
@@ -0,0 +1,69 @@
1
+ /**
2
+ * DOD-DOC-WATCH-1 — the selective nudge: matching what changed against what an agent is waiting on.
3
+ *
4
+ * ── WHY THIS EXISTS ──────────────────────────────────────────────────────────────────────────────
5
+ *
6
+ * A document update raises no doorbell (§11.3), deliberately: a collaborator typing produces a stream
7
+ * of updates, and one doorbell each interrupts continuously for something with no deadline. That
8
+ * decision stands. What it costs is that the only thing shortening the gap between an agent reading a
9
+ * document and writing to it is the agent happening to re-read.
10
+ *
11
+ * `DOD-DOC-STALE-WRITE-1` made that gap SAFE — a stale write is refused rather than destroying the
12
+ * peer's work — and safe is not short. An actor who reads at 09:00 and writes at 11:00 composes a
13
+ * whole edit against a document that moved at 09:04, and learns it at the refusal.
14
+ *
15
+ * And the larger half: **silence currently means three different things** — nothing happened, the
16
+ * peer is offline, or their update was refused — so quiet carries no information and no deadline can
17
+ * rest on it. Once an agent declares what it is waiting for, "no nudge by 11:00" becomes a fact worth
18
+ * acting on. That is an escalation rule becoming evaluable instead of prose in a runbook.
19
+ *
20
+ * ── RECEIVER-LOCAL, WHICH IS THE SECURITY PROPERTY ───────────────────────────────────────────────
21
+ *
22
+ * The watch list is declared by the receiving agent, on its own machine, and never goes on the wire.
23
+ * A sender cannot make your agent wake by claiming a field matters, and cannot suppress a wake by
24
+ * omitting one. There is no schema to enforce and no dependence on the peer describing the document
25
+ * honestly — the receiver decides, from what actually changed in its own copy.
26
+ */
27
+ /** The watch that means "any change at all" — for text documents, which have no key paths. */
28
+ export declare const WATCH_ALL = "*";
29
+ /**
30
+ * The changed paths this agent asked to be told about.
31
+ *
32
+ * An empty watch list matches NOTHING. "I am waiting on nothing" must never be read as "everything" —
33
+ * defaulting to all is exactly how a selective nudge turns back into the per-update doorbell §11.3
34
+ * rejected.
35
+ */
36
+ export declare function matchWatchedPaths(watches: readonly string[], changed: readonly string[]): string[];
37
+ /**
38
+ * Canonicalise a watch list: trimmed, non-empty, de-duplicated, and with any path already covered by
39
+ * a broader one removed.
40
+ *
41
+ * Dropping the redundant child matters beyond tidiness — keeping both `blocking_flags` and
42
+ * `blocking_flags.insufficient_funds` would report one change under two watches and make the nudge's
43
+ * own path list misleading about what fired it.
44
+ *
45
+ * A malformed path THROWS rather than being silently repaired. A watch that was quietly rewritten
46
+ * into something else would fail to fire, and a notification that does not arrive is indistinguishable
47
+ * from nothing having happened — which is the very ambiguity this feature exists to remove.
48
+ */
49
+ export declare function normalizeWatchPaths(paths: readonly string[]): string[];
50
+ /**
51
+ * The watch patterns THIS agent authored that were matched — not the paths that changed.
52
+ *
53
+ * ── WHY THIS EXISTS SEPARATELY FROM `matchWatchedPaths` ──────────────────────────────────────────
54
+ *
55
+ * A changed path can contain a key the PEER named. Watch `blocking_flags`, and a counterparty adding
56
+ * `blocking_flags.<anything they like>` produces a changed path carrying attacker-chosen text. Send
57
+ * that to the operator's agent as a doorbell body and the peer has an unscreened channel into its
58
+ * context — which is precisely what INV-CONTENTFREE exists to close, and a doorbell is the worst
59
+ * place to open it because it arrives without the agent asking for anything.
60
+ *
61
+ * The watch PATTERNS are different: the agent wrote them itself, locally, and they never crossed the
62
+ * wire. Naming them is telling the agent what it asked for.
63
+ *
64
+ * The cost is precision — "your watch on `blocking_flags` fired" rather than naming the exact field.
65
+ * That is the right trade: the agent reads the document next, and `cello_doc_diff` shows the precise
66
+ * paths through a SCREENED read rather than through a notification that bypasses screening.
67
+ */
68
+ export declare function matchingWatches(watches: readonly string[], changed: readonly string[]): string[];
69
+ //# sourceMappingURL=document-watch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-watch.d.ts","sourceRoot":"","sources":["../src/document-watch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,8FAA8F;AAC9F,eAAO,MAAM,SAAS,MAAM,CAAC;AAgB7B;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAGlG;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAoBtE;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,EAAE,OAAO,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAAE,CAEhG"}
@@ -0,0 +1,108 @@
1
+ /**
2
+ * DOD-DOC-WATCH-1 — the selective nudge: matching what changed against what an agent is waiting on.
3
+ *
4
+ * ── WHY THIS EXISTS ──────────────────────────────────────────────────────────────────────────────
5
+ *
6
+ * A document update raises no doorbell (§11.3), deliberately: a collaborator typing produces a stream
7
+ * of updates, and one doorbell each interrupts continuously for something with no deadline. That
8
+ * decision stands. What it costs is that the only thing shortening the gap between an agent reading a
9
+ * document and writing to it is the agent happening to re-read.
10
+ *
11
+ * `DOD-DOC-STALE-WRITE-1` made that gap SAFE — a stale write is refused rather than destroying the
12
+ * peer's work — and safe is not short. An actor who reads at 09:00 and writes at 11:00 composes a
13
+ * whole edit against a document that moved at 09:04, and learns it at the refusal.
14
+ *
15
+ * And the larger half: **silence currently means three different things** — nothing happened, the
16
+ * peer is offline, or their update was refused — so quiet carries no information and no deadline can
17
+ * rest on it. Once an agent declares what it is waiting for, "no nudge by 11:00" becomes a fact worth
18
+ * acting on. That is an escalation rule becoming evaluable instead of prose in a runbook.
19
+ *
20
+ * ── RECEIVER-LOCAL, WHICH IS THE SECURITY PROPERTY ───────────────────────────────────────────────
21
+ *
22
+ * The watch list is declared by the receiving agent, on its own machine, and never goes on the wire.
23
+ * A sender cannot make your agent wake by claiming a field matters, and cannot suppress a wake by
24
+ * omitting one. There is no schema to enforce and no dependence on the peer describing the document
25
+ * honestly — the receiver decides, from what actually changed in its own copy.
26
+ */
27
+ /** The watch that means "any change at all" — for text documents, which have no key paths. */
28
+ export const WATCH_ALL = "*";
29
+ const SEPARATOR = ".";
30
+ /**
31
+ * True when `changed` is `watched` itself or a descendant of it.
32
+ *
33
+ * SEGMENT-AWARE, never a raw string prefix: `status` must not match `status_line`. That mistake
34
+ * surfaces as a false wake, which is the failure mode that gets a notification feature switched off.
35
+ */
36
+ function covers(watched, changed) {
37
+ if (watched === WATCH_ALL)
38
+ return true;
39
+ if (changed === watched)
40
+ return true;
41
+ return changed.startsWith(watched + SEPARATOR);
42
+ }
43
+ /**
44
+ * The changed paths this agent asked to be told about.
45
+ *
46
+ * An empty watch list matches NOTHING. "I am waiting on nothing" must never be read as "everything" —
47
+ * defaulting to all is exactly how a selective nudge turns back into the per-update doorbell §11.3
48
+ * rejected.
49
+ */
50
+ export function matchWatchedPaths(watches, changed) {
51
+ if (watches.length === 0)
52
+ return [];
53
+ return changed.filter((path) => watches.some((w) => covers(w, path)));
54
+ }
55
+ /**
56
+ * Canonicalise a watch list: trimmed, non-empty, de-duplicated, and with any path already covered by
57
+ * a broader one removed.
58
+ *
59
+ * Dropping the redundant child matters beyond tidiness — keeping both `blocking_flags` and
60
+ * `blocking_flags.insufficient_funds` would report one change under two watches and make the nudge's
61
+ * own path list misleading about what fired it.
62
+ *
63
+ * A malformed path THROWS rather than being silently repaired. A watch that was quietly rewritten
64
+ * into something else would fail to fire, and a notification that does not arrive is indistinguishable
65
+ * from nothing having happened — which is the very ambiguity this feature exists to remove.
66
+ */
67
+ export function normalizeWatchPaths(paths) {
68
+ const cleaned = [];
69
+ for (const raw of paths) {
70
+ const path = raw.trim();
71
+ if (path.length === 0)
72
+ continue;
73
+ if (path === WATCH_ALL)
74
+ return [WATCH_ALL];
75
+ if (path.startsWith(SEPARATOR) ||
76
+ path.endsWith(SEPARATOR) ||
77
+ path.includes(SEPARATOR + SEPARATOR)) {
78
+ throw new Error(`invalid watch path '${raw}': a watch path is dot-separated segments, e.g. ` +
79
+ `'blocking_flags.insufficient_funds', or '${WATCH_ALL}' for any change`);
80
+ }
81
+ if (!cleaned.includes(path))
82
+ cleaned.push(path);
83
+ }
84
+ // Drop anything a broader sibling already covers.
85
+ return cleaned.filter((p) => !cleaned.some((other) => other !== p && covers(other, p)));
86
+ }
87
+ /**
88
+ * The watch patterns THIS agent authored that were matched — not the paths that changed.
89
+ *
90
+ * ── WHY THIS EXISTS SEPARATELY FROM `matchWatchedPaths` ──────────────────────────────────────────
91
+ *
92
+ * A changed path can contain a key the PEER named. Watch `blocking_flags`, and a counterparty adding
93
+ * `blocking_flags.<anything they like>` produces a changed path carrying attacker-chosen text. Send
94
+ * that to the operator's agent as a doorbell body and the peer has an unscreened channel into its
95
+ * context — which is precisely what INV-CONTENTFREE exists to close, and a doorbell is the worst
96
+ * place to open it because it arrives without the agent asking for anything.
97
+ *
98
+ * The watch PATTERNS are different: the agent wrote them itself, locally, and they never crossed the
99
+ * wire. Naming them is telling the agent what it asked for.
100
+ *
101
+ * The cost is precision — "your watch on `blocking_flags` fired" rather than naming the exact field.
102
+ * That is the right trade: the agent reads the document next, and `cello_doc_diff` shows the precise
103
+ * paths through a SCREENED read rather than through a notification that bypasses screening.
104
+ */
105
+ export function matchingWatches(watches, changed) {
106
+ return watches.filter((w) => changed.some((path) => covers(w, path)));
107
+ }
108
+ //# sourceMappingURL=document-watch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"document-watch.js","sourceRoot":"","sources":["../src/document-watch.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,8FAA8F;AAC9F,MAAM,CAAC,MAAM,SAAS,GAAG,GAAG,CAAC;AAE7B,MAAM,SAAS,GAAG,GAAG,CAAC;AAEtB;;;;;GAKG;AACH,SAAS,MAAM,CAAC,OAAe,EAAE,OAAe;IAC9C,IAAI,OAAO,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACvC,IAAI,OAAO,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC;IACrC,OAAO,OAAO,CAAC,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,CAAC;AACjD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAA0B,EAAE,OAA0B;IACtF,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IACpC,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;AACxE,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAwB;IAC1D,MAAM,OAAO,GAAa,EAAE,CAAC;IAC7B,KAAK,MAAM,GAAG,IAAI,KAAK,EAAE,CAAC;QACxB,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;QACxB,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;YAAE,SAAS;QAChC,IAAI,IAAI,KAAK,SAAS;YAAE,OAAO,CAAC,SAAS,CAAC,CAAC;QAC3C,IACE,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;YAC1B,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC;YACxB,IAAI,CAAC,QAAQ,CAAC,SAAS,GAAG,SAAS,CAAC,EACpC,CAAC;YACD,MAAM,IAAI,KAAK,CACb,uBAAuB,GAAG,kDAAkD;gBAC1E,4CAA4C,SAAS,kBAAkB,CAC1E,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC;YAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAClD,CAAC;IACD,kDAAkD;IAClD,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,KAAK,CAAC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAC1F,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,eAAe,CAAC,OAA0B,EAAE,OAA0B;IACpF,OAAO,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;AACxE,CAAC"}