@maiaos/protocol 0.1.0-canary.1

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 (926) hide show
  1. package/README.md +166 -0
  2. package/dist/agent/definition.d.ts +64 -0
  3. package/dist/agent/definition.d.ts.map +1 -0
  4. package/dist/agent/definition.js +45 -0
  5. package/dist/agent/definition.js.map +1 -0
  6. package/dist/agent/effect-schema.d.ts +7 -0
  7. package/dist/agent/effect-schema.d.ts.map +1 -0
  8. package/dist/agent/effect-schema.js +7 -0
  9. package/dist/agent/effect-schema.js.map +1 -0
  10. package/dist/agent/index.d.ts +4 -0
  11. package/dist/agent/index.d.ts.map +1 -0
  12. package/dist/agent/index.js +4 -0
  13. package/dist/agent/index.js.map +1 -0
  14. package/dist/agent/permission-preflight.d.ts +18 -0
  15. package/dist/agent/permission-preflight.d.ts.map +1 -0
  16. package/dist/agent/permission-preflight.js +18 -0
  17. package/dist/agent/permission-preflight.js.map +1 -0
  18. package/dist/agent/worker-operation.d.ts +53 -0
  19. package/dist/agent/worker-operation.d.ts.map +1 -0
  20. package/dist/agent/worker-operation.js +17 -0
  21. package/dist/agent/worker-operation.js.map +1 -0
  22. package/dist/approval/contract.d.ts +176 -0
  23. package/dist/approval/contract.d.ts.map +1 -0
  24. package/dist/approval/contract.js +27 -0
  25. package/dist/approval/contract.js.map +1 -0
  26. package/dist/approval/effect-schema.d.ts +3 -0
  27. package/dist/approval/effect-schema.d.ts.map +1 -0
  28. package/dist/approval/effect-schema.js +3 -0
  29. package/dist/approval/effect-schema.js.map +1 -0
  30. package/dist/approval/feature.d.ts +88 -0
  31. package/dist/approval/feature.d.ts.map +1 -0
  32. package/dist/approval/feature.js +88 -0
  33. package/dist/approval/feature.js.map +1 -0
  34. package/dist/approval/index.d.ts +3 -0
  35. package/dist/approval/index.d.ts.map +1 -0
  36. package/dist/approval/index.js +3 -0
  37. package/dist/approval/index.js.map +1 -0
  38. package/dist/approval/request-effect-schema.d.ts +93 -0
  39. package/dist/approval/request-effect-schema.d.ts.map +1 -0
  40. package/dist/approval/request-effect-schema.js +147 -0
  41. package/dist/approval/request-effect-schema.js.map +1 -0
  42. package/dist/approval/result-effect-schema.d.ts +223 -0
  43. package/dist/approval/result-effect-schema.d.ts.map +1 -0
  44. package/dist/approval/result-effect-schema.js +33 -0
  45. package/dist/approval/result-effect-schema.js.map +1 -0
  46. package/dist/capability/capability.d.ts +12 -0
  47. package/dist/capability/capability.d.ts.map +1 -0
  48. package/dist/capability/capability.js +27 -0
  49. package/dist/capability/capability.js.map +1 -0
  50. package/dist/capability/index.d.ts +2 -0
  51. package/dist/capability/index.d.ts.map +1 -0
  52. package/dist/capability/index.js +2 -0
  53. package/dist/capability/index.js.map +1 -0
  54. package/dist/command-receipt/contract.d.ts +76 -0
  55. package/dist/command-receipt/contract.d.ts.map +1 -0
  56. package/dist/command-receipt/contract.js +11 -0
  57. package/dist/command-receipt/contract.js.map +1 -0
  58. package/dist/command-receipt/effect-schema.d.ts +80 -0
  59. package/dist/command-receipt/effect-schema.d.ts.map +1 -0
  60. package/dist/command-receipt/effect-schema.js +72 -0
  61. package/dist/command-receipt/effect-schema.js.map +1 -0
  62. package/dist/command-receipt/feature.d.ts +59 -0
  63. package/dist/command-receipt/feature.d.ts.map +1 -0
  64. package/dist/command-receipt/feature.js +61 -0
  65. package/dist/command-receipt/feature.js.map +1 -0
  66. package/dist/command-receipt/index.d.ts +5 -0
  67. package/dist/command-receipt/index.d.ts.map +1 -0
  68. package/dist/command-receipt/index.js +5 -0
  69. package/dist/command-receipt/index.js.map +1 -0
  70. package/dist/command-receipt/policy.d.ts +4 -0
  71. package/dist/command-receipt/policy.d.ts.map +1 -0
  72. package/dist/command-receipt/policy.js +4 -0
  73. package/dist/command-receipt/policy.js.map +1 -0
  74. package/dist/command-receipt/version.d.ts +2 -0
  75. package/dist/command-receipt/version.d.ts.map +1 -0
  76. package/dist/command-receipt/version.js +2 -0
  77. package/dist/command-receipt/version.js.map +1 -0
  78. package/dist/configuration/configuration.d.ts +63 -0
  79. package/dist/configuration/configuration.d.ts.map +1 -0
  80. package/dist/configuration/configuration.js +93 -0
  81. package/dist/configuration/configuration.js.map +1 -0
  82. package/dist/configuration/index.d.ts +2 -0
  83. package/dist/configuration/index.d.ts.map +1 -0
  84. package/dist/configuration/index.js +2 -0
  85. package/dist/configuration/index.js.map +1 -0
  86. package/dist/connection/contract.d.ts +878 -0
  87. package/dist/connection/contract.d.ts.map +1 -0
  88. package/dist/connection/contract.js +43 -0
  89. package/dist/connection/contract.js.map +1 -0
  90. package/dist/connection/effect-schema.d.ts +760 -0
  91. package/dist/connection/effect-schema.d.ts.map +1 -0
  92. package/dist/connection/effect-schema.js +14 -0
  93. package/dist/connection/effect-schema.js.map +1 -0
  94. package/dist/connection/feature.d.ts +200 -0
  95. package/dist/connection/feature.d.ts.map +1 -0
  96. package/dist/connection/feature.js +192 -0
  97. package/dist/connection/feature.js.map +1 -0
  98. package/dist/connection/gateway-effect-schema.d.ts +26 -0
  99. package/dist/connection/gateway-effect-schema.d.ts.map +1 -0
  100. package/dist/connection/gateway-effect-schema.js +52 -0
  101. package/dist/connection/gateway-effect-schema.js.map +1 -0
  102. package/dist/connection/index.d.ts +3 -0
  103. package/dist/connection/index.d.ts.map +1 -0
  104. package/dist/connection/index.js +3 -0
  105. package/dist/connection/index.js.map +1 -0
  106. package/dist/connection/request-effect-schema.d.ts +192 -0
  107. package/dist/connection/request-effect-schema.d.ts.map +1 -0
  108. package/dist/connection/request-effect-schema.js +188 -0
  109. package/dist/connection/request-effect-schema.js.map +1 -0
  110. package/dist/connection/result-effect-schema.d.ts +985 -0
  111. package/dist/connection/result-effect-schema.d.ts.map +1 -0
  112. package/dist/connection/result-effect-schema.js +112 -0
  113. package/dist/connection/result-effect-schema.js.map +1 -0
  114. package/dist/connection/system-effect-schema.d.ts +519 -0
  115. package/dist/connection/system-effect-schema.d.ts.map +1 -0
  116. package/dist/connection/system-effect-schema.js +179 -0
  117. package/dist/connection/system-effect-schema.js.map +1 -0
  118. package/dist/container/contract.d.ts +207 -0
  119. package/dist/container/contract.d.ts.map +1 -0
  120. package/dist/container/contract.js +19 -0
  121. package/dist/container/contract.js.map +1 -0
  122. package/dist/container/effect-schema.d.ts +371 -0
  123. package/dist/container/effect-schema.d.ts.map +1 -0
  124. package/dist/container/effect-schema.js +176 -0
  125. package/dist/container/effect-schema.js.map +1 -0
  126. package/dist/container/identity-effect-schema.d.ts +3 -0
  127. package/dist/container/identity-effect-schema.d.ts.map +1 -0
  128. package/dist/container/identity-effect-schema.js +4 -0
  129. package/dist/container/identity-effect-schema.js.map +1 -0
  130. package/dist/container/index.d.ts +3 -0
  131. package/dist/container/index.d.ts.map +1 -0
  132. package/dist/container/index.js +3 -0
  133. package/dist/container/index.js.map +1 -0
  134. package/dist/container/portfolio-feature.d.ts +288 -0
  135. package/dist/container/portfolio-feature.d.ts.map +1 -0
  136. package/dist/container/portfolio-feature.js +139 -0
  137. package/dist/container/portfolio-feature.js.map +1 -0
  138. package/dist/coordinator-tool/index.d.ts +4 -0
  139. package/dist/coordinator-tool/index.d.ts.map +1 -0
  140. package/dist/coordinator-tool/index.js +3 -0
  141. package/dist/coordinator-tool/index.js.map +1 -0
  142. package/dist/coordinator-tool/input-schema.d.ts +11 -0
  143. package/dist/coordinator-tool/input-schema.d.ts.map +1 -0
  144. package/dist/coordinator-tool/input-schema.js +66 -0
  145. package/dist/coordinator-tool/input-schema.js.map +1 -0
  146. package/dist/coordinator-tool/registry.d.ts +28 -0
  147. package/dist/coordinator-tool/registry.d.ts.map +1 -0
  148. package/dist/coordinator-tool/registry.js +62 -0
  149. package/dist/coordinator-tool/registry.js.map +1 -0
  150. package/dist/discovery/contract.d.ts +255 -0
  151. package/dist/discovery/contract.d.ts.map +1 -0
  152. package/dist/discovery/contract.js +22 -0
  153. package/dist/discovery/contract.js.map +1 -0
  154. package/dist/discovery/effect-schema.d.ts +485 -0
  155. package/dist/discovery/effect-schema.d.ts.map +1 -0
  156. package/dist/discovery/effect-schema.js +239 -0
  157. package/dist/discovery/effect-schema.js.map +1 -0
  158. package/dist/discovery/feature.d.ts +117 -0
  159. package/dist/discovery/feature.d.ts.map +1 -0
  160. package/dist/discovery/feature.js +115 -0
  161. package/dist/discovery/feature.js.map +1 -0
  162. package/dist/discovery/index.d.ts +3 -0
  163. package/dist/discovery/index.d.ts.map +1 -0
  164. package/dist/discovery/index.js +3 -0
  165. package/dist/discovery/index.js.map +1 -0
  166. package/dist/envelope/display-name-effect-schema.d.ts +3 -0
  167. package/dist/envelope/display-name-effect-schema.d.ts.map +1 -0
  168. package/dist/envelope/display-name-effect-schema.js +14 -0
  169. package/dist/envelope/display-name-effect-schema.js.map +1 -0
  170. package/dist/envelope/effect-schema.d.ts +73 -0
  171. package/dist/envelope/effect-schema.d.ts.map +1 -0
  172. package/dist/envelope/effect-schema.js +68 -0
  173. package/dist/envelope/effect-schema.js.map +1 -0
  174. package/dist/envelope/envelope.d.ts +54 -0
  175. package/dist/envelope/envelope.d.ts.map +1 -0
  176. package/dist/envelope/envelope.js +41 -0
  177. package/dist/envelope/envelope.js.map +1 -0
  178. package/dist/envelope/index.d.ts +3 -0
  179. package/dist/envelope/index.d.ts.map +1 -0
  180. package/dist/envelope/index.js +3 -0
  181. package/dist/envelope/index.js.map +1 -0
  182. package/dist/envelope/policy.d.ts +13 -0
  183. package/dist/envelope/policy.d.ts.map +1 -0
  184. package/dist/envelope/policy.js +23 -0
  185. package/dist/envelope/policy.js.map +1 -0
  186. package/dist/envelope/recorded-at.d.ts +3 -0
  187. package/dist/envelope/recorded-at.d.ts.map +1 -0
  188. package/dist/envelope/recorded-at.js +13 -0
  189. package/dist/envelope/recorded-at.js.map +1 -0
  190. package/dist/envelope/revision-effect-schema.d.ts +3 -0
  191. package/dist/envelope/revision-effect-schema.d.ts.map +1 -0
  192. package/dist/envelope/revision-effect-schema.js +4 -0
  193. package/dist/envelope/revision-effect-schema.js.map +1 -0
  194. package/dist/execution/candidate.d.ts +6 -0
  195. package/dist/execution/candidate.d.ts.map +1 -0
  196. package/dist/execution/candidate.js +6 -0
  197. package/dist/execution/candidate.js.map +1 -0
  198. package/dist/execution/catalog/index.d.ts +2 -0
  199. package/dist/execution/catalog/index.d.ts.map +1 -0
  200. package/dist/execution/catalog/index.js +2 -0
  201. package/dist/execution/catalog/index.js.map +1 -0
  202. package/dist/execution/catalog/version.d.ts +6 -0
  203. package/dist/execution/catalog/version.d.ts.map +1 -0
  204. package/dist/execution/catalog/version.js +6 -0
  205. package/dist/execution/catalog/version.js.map +1 -0
  206. package/dist/execution/contract.d.ts +254 -0
  207. package/dist/execution/contract.d.ts.map +1 -0
  208. package/dist/execution/contract.js +17 -0
  209. package/dist/execution/contract.js.map +1 -0
  210. package/dist/execution/effect-schema.d.ts +751 -0
  211. package/dist/execution/effect-schema.d.ts.map +1 -0
  212. package/dist/execution/effect-schema.js +189 -0
  213. package/dist/execution/effect-schema.js.map +1 -0
  214. package/dist/execution/file-operation-contract.d.ts +106 -0
  215. package/dist/execution/file-operation-contract.d.ts.map +1 -0
  216. package/dist/execution/file-operation-contract.js +7 -0
  217. package/dist/execution/file-operation-contract.js.map +1 -0
  218. package/dist/execution/file-operation-effect-schema.d.ts +102 -0
  219. package/dist/execution/file-operation-effect-schema.d.ts.map +1 -0
  220. package/dist/execution/file-operation-effect-schema.js +91 -0
  221. package/dist/execution/file-operation-effect-schema.js.map +1 -0
  222. package/dist/execution/file-operation-version.d.ts +4 -0
  223. package/dist/execution/file-operation-version.d.ts.map +1 -0
  224. package/dist/execution/file-operation-version.js +4 -0
  225. package/dist/execution/file-operation-version.js.map +1 -0
  226. package/dist/execution/index.d.ts +8 -0
  227. package/dist/execution/index.d.ts.map +1 -0
  228. package/dist/execution/index.js +3 -0
  229. package/dist/execution/index.js.map +1 -0
  230. package/dist/execution/operation-contract.d.ts +102 -0
  231. package/dist/execution/operation-contract.d.ts.map +1 -0
  232. package/dist/execution/operation-contract.js +8 -0
  233. package/dist/execution/operation-contract.js.map +1 -0
  234. package/dist/execution/operation-effect-schema.d.ts +97 -0
  235. package/dist/execution/operation-effect-schema.d.ts.map +1 -0
  236. package/dist/execution/operation-effect-schema.js +80 -0
  237. package/dist/execution/operation-effect-schema.js.map +1 -0
  238. package/dist/execution/operation-version.d.ts +6 -0
  239. package/dist/execution/operation-version.d.ts.map +1 -0
  240. package/dist/execution/operation-version.js +6 -0
  241. package/dist/execution/operation-version.js.map +1 -0
  242. package/dist/execution/placement/contract.d.ts +524 -0
  243. package/dist/execution/placement/contract.d.ts.map +1 -0
  244. package/dist/execution/placement/contract.js +15 -0
  245. package/dist/execution/placement/contract.js.map +1 -0
  246. package/dist/execution/placement/effect-schema.d.ts +512 -0
  247. package/dist/execution/placement/effect-schema.d.ts.map +1 -0
  248. package/dist/execution/placement/effect-schema.js +135 -0
  249. package/dist/execution/placement/effect-schema.js.map +1 -0
  250. package/dist/execution/placement/index.d.ts +3 -0
  251. package/dist/execution/placement/index.d.ts.map +1 -0
  252. package/dist/execution/placement/index.js +3 -0
  253. package/dist/execution/placement/index.js.map +1 -0
  254. package/dist/execution/placement/version.d.ts +2 -0
  255. package/dist/execution/placement/version.d.ts.map +1 -0
  256. package/dist/execution/placement/version.js +2 -0
  257. package/dist/execution/placement/version.js.map +1 -0
  258. package/dist/execution/relocation/contract.d.ts +336 -0
  259. package/dist/execution/relocation/contract.d.ts.map +1 -0
  260. package/dist/execution/relocation/contract.js +16 -0
  261. package/dist/execution/relocation/contract.js.map +1 -0
  262. package/dist/execution/relocation/effect-schema.d.ts +586 -0
  263. package/dist/execution/relocation/effect-schema.d.ts.map +1 -0
  264. package/dist/execution/relocation/effect-schema.js +182 -0
  265. package/dist/execution/relocation/effect-schema.js.map +1 -0
  266. package/dist/execution/relocation/index.d.ts +3 -0
  267. package/dist/execution/relocation/index.d.ts.map +1 -0
  268. package/dist/execution/relocation/index.js +3 -0
  269. package/dist/execution/relocation/index.js.map +1 -0
  270. package/dist/execution/relocation/version.d.ts +4 -0
  271. package/dist/execution/relocation/version.d.ts.map +1 -0
  272. package/dist/execution/relocation/version.js +4 -0
  273. package/dist/execution/relocation/version.js.map +1 -0
  274. package/dist/execution/worktree/contract.d.ts +1388 -0
  275. package/dist/execution/worktree/contract.d.ts.map +1 -0
  276. package/dist/execution/worktree/contract.js +28 -0
  277. package/dist/execution/worktree/contract.js.map +1 -0
  278. package/dist/execution/worktree/effect-schema.d.ts +1363 -0
  279. package/dist/execution/worktree/effect-schema.d.ts.map +1 -0
  280. package/dist/execution/worktree/effect-schema.js +336 -0
  281. package/dist/execution/worktree/effect-schema.js.map +1 -0
  282. package/dist/execution/worktree/index.d.ts +3 -0
  283. package/dist/execution/worktree/index.d.ts.map +1 -0
  284. package/dist/execution/worktree/index.js +3 -0
  285. package/dist/execution/worktree/index.js.map +1 -0
  286. package/dist/execution/worktree/version.d.ts +8 -0
  287. package/dist/execution/worktree/version.d.ts.map +1 -0
  288. package/dist/execution/worktree/version.js +8 -0
  289. package/dist/execution/worktree/version.js.map +1 -0
  290. package/dist/feature/descriptor/descriptor.d.ts +96 -0
  291. package/dist/feature/descriptor/descriptor.d.ts.map +1 -0
  292. package/dist/feature/descriptor/descriptor.js +3 -0
  293. package/dist/feature/descriptor/descriptor.js.map +1 -0
  294. package/dist/feature/descriptor/index.d.ts +2 -0
  295. package/dist/feature/descriptor/index.d.ts.map +1 -0
  296. package/dist/feature/descriptor/index.js +2 -0
  297. package/dist/feature/descriptor/index.js.map +1 -0
  298. package/dist/feature/index.d.ts +2 -0
  299. package/dist/feature/index.d.ts.map +1 -0
  300. package/dist/feature/index.js +2 -0
  301. package/dist/feature/index.js.map +1 -0
  302. package/dist/feature/node-status.d.ts +38 -0
  303. package/dist/feature/node-status.d.ts.map +1 -0
  304. package/dist/feature/node-status.js +42 -0
  305. package/dist/feature/node-status.js.map +1 -0
  306. package/dist/feature/registry.d.ts +63 -0
  307. package/dist/feature/registry.d.ts.map +1 -0
  308. package/dist/feature/registry.js +44 -0
  309. package/dist/feature/registry.js.map +1 -0
  310. package/dist/harness/installed/contract.d.ts +175 -0
  311. package/dist/harness/installed/contract.d.ts.map +1 -0
  312. package/dist/harness/installed/contract.js +6 -0
  313. package/dist/harness/installed/contract.js.map +1 -0
  314. package/dist/harness/installed/effect-schema.d.ts +323 -0
  315. package/dist/harness/installed/effect-schema.d.ts.map +1 -0
  316. package/dist/harness/installed/effect-schema.js +64 -0
  317. package/dist/harness/installed/effect-schema.js.map +1 -0
  318. package/dist/harness/installed/index.d.ts +3 -0
  319. package/dist/harness/installed/index.d.ts.map +1 -0
  320. package/dist/harness/installed/index.js +3 -0
  321. package/dist/harness/installed/index.js.map +1 -0
  322. package/dist/harness/installed/version.d.ts +2 -0
  323. package/dist/harness/installed/version.d.ts.map +1 -0
  324. package/dist/harness/installed/version.js +2 -0
  325. package/dist/harness/installed/version.js.map +1 -0
  326. package/dist/hold/contract.d.ts +212 -0
  327. package/dist/hold/contract.d.ts.map +1 -0
  328. package/dist/hold/contract.js +21 -0
  329. package/dist/hold/contract.js.map +1 -0
  330. package/dist/hold/effect-schema.d.ts +381 -0
  331. package/dist/hold/effect-schema.d.ts.map +1 -0
  332. package/dist/hold/effect-schema.js +162 -0
  333. package/dist/hold/effect-schema.js.map +1 -0
  334. package/dist/hold/index.d.ts +2 -0
  335. package/dist/hold/index.d.ts.map +1 -0
  336. package/dist/hold/index.js +2 -0
  337. package/dist/hold/index.js.map +1 -0
  338. package/dist/index.d.ts +34 -0
  339. package/dist/index.d.ts.map +1 -0
  340. package/dist/index.js +33 -0
  341. package/dist/index.js.map +1 -0
  342. package/dist/integration-authorization/claude-code-contract.d.ts +1089 -0
  343. package/dist/integration-authorization/claude-code-contract.d.ts.map +1 -0
  344. package/dist/integration-authorization/claude-code-contract.js +13 -0
  345. package/dist/integration-authorization/claude-code-contract.js.map +1 -0
  346. package/dist/integration-authorization/contract.d.ts +1092 -0
  347. package/dist/integration-authorization/contract.d.ts.map +1 -0
  348. package/dist/integration-authorization/contract.js +13 -0
  349. package/dist/integration-authorization/contract.js.map +1 -0
  350. package/dist/integration-authorization/effect-schema.d.ts +5859 -0
  351. package/dist/integration-authorization/effect-schema.d.ts.map +1 -0
  352. package/dist/integration-authorization/effect-schema.js +331 -0
  353. package/dist/integration-authorization/effect-schema.js.map +1 -0
  354. package/dist/integration-authorization/index.d.ts +6 -0
  355. package/dist/integration-authorization/index.d.ts.map +1 -0
  356. package/dist/integration-authorization/index.js +6 -0
  357. package/dist/integration-authorization/index.js.map +1 -0
  358. package/dist/integration-authorization/pi-rpc-contract.d.ts +2404 -0
  359. package/dist/integration-authorization/pi-rpc-contract.d.ts.map +1 -0
  360. package/dist/integration-authorization/pi-rpc-contract.js +13 -0
  361. package/dist/integration-authorization/pi-rpc-contract.js.map +1 -0
  362. package/dist/integration-authorization/policy.d.ts +5 -0
  363. package/dist/integration-authorization/policy.d.ts.map +1 -0
  364. package/dist/integration-authorization/policy.js +5 -0
  365. package/dist/integration-authorization/policy.js.map +1 -0
  366. package/dist/integration-authorization/version.d.ts +2 -0
  367. package/dist/integration-authorization/version.d.ts.map +1 -0
  368. package/dist/integration-authorization/version.js +2 -0
  369. package/dist/integration-authorization/version.js.map +1 -0
  370. package/dist/interaction/contract.d.ts +72 -0
  371. package/dist/interaction/contract.d.ts.map +1 -0
  372. package/dist/interaction/contract.js +10 -0
  373. package/dist/interaction/contract.js.map +1 -0
  374. package/dist/interaction/effect-schema.d.ts +3 -0
  375. package/dist/interaction/effect-schema.d.ts.map +1 -0
  376. package/dist/interaction/effect-schema.js +3 -0
  377. package/dist/interaction/effect-schema.js.map +1 -0
  378. package/dist/interaction/feature.d.ts +105 -0
  379. package/dist/interaction/feature.d.ts.map +1 -0
  380. package/dist/interaction/feature.js +103 -0
  381. package/dist/interaction/feature.js.map +1 -0
  382. package/dist/interaction/index.d.ts +4 -0
  383. package/dist/interaction/index.d.ts.map +1 -0
  384. package/dist/interaction/index.js +4 -0
  385. package/dist/interaction/index.js.map +1 -0
  386. package/dist/interaction/projection-effect-schema.d.ts +113 -0
  387. package/dist/interaction/projection-effect-schema.d.ts.map +1 -0
  388. package/dist/interaction/projection-effect-schema.js +83 -0
  389. package/dist/interaction/projection-effect-schema.js.map +1 -0
  390. package/dist/interaction/request-effect-schema.d.ts +144 -0
  391. package/dist/interaction/request-effect-schema.d.ts.map +1 -0
  392. package/dist/interaction/request-effect-schema.js +95 -0
  393. package/dist/interaction/request-effect-schema.js.map +1 -0
  394. package/dist/interaction/result-contract.d.ts +459 -0
  395. package/dist/interaction/result-contract.d.ts.map +1 -0
  396. package/dist/interaction/result-contract.js +13 -0
  397. package/dist/interaction/result-contract.js.map +1 -0
  398. package/dist/interaction/result-effect-schema.d.ts +681 -0
  399. package/dist/interaction/result-effect-schema.d.ts.map +1 -0
  400. package/dist/interaction/result-effect-schema.js +83 -0
  401. package/dist/interaction/result-effect-schema.js.map +1 -0
  402. package/dist/invocation-context/attachment-channel-contract.d.ts +7 -0
  403. package/dist/invocation-context/attachment-channel-contract.d.ts.map +1 -0
  404. package/dist/invocation-context/attachment-channel-contract.js +5 -0
  405. package/dist/invocation-context/attachment-channel-contract.js.map +1 -0
  406. package/dist/invocation-context/attachment-channel-effect-schema.d.ts +5 -0
  407. package/dist/invocation-context/attachment-channel-effect-schema.d.ts.map +1 -0
  408. package/dist/invocation-context/attachment-channel-effect-schema.js +9 -0
  409. package/dist/invocation-context/attachment-channel-effect-schema.js.map +1 -0
  410. package/dist/invocation-context/attachment-contract.d.ts +24 -0
  411. package/dist/invocation-context/attachment-contract.d.ts.map +1 -0
  412. package/dist/invocation-context/attachment-contract.js +5 -0
  413. package/dist/invocation-context/attachment-contract.js.map +1 -0
  414. package/dist/invocation-context/attachment-effect-schema.d.ts +22 -0
  415. package/dist/invocation-context/attachment-effect-schema.d.ts.map +1 -0
  416. package/dist/invocation-context/attachment-effect-schema.js +31 -0
  417. package/dist/invocation-context/attachment-effect-schema.js.map +1 -0
  418. package/dist/invocation-context/candidate.d.ts +3 -0
  419. package/dist/invocation-context/candidate.d.ts.map +1 -0
  420. package/dist/invocation-context/candidate.js +3 -0
  421. package/dist/invocation-context/candidate.js.map +1 -0
  422. package/dist/invocation-context/contract.d.ts +40 -0
  423. package/dist/invocation-context/contract.d.ts.map +1 -0
  424. package/dist/invocation-context/contract.js +7 -0
  425. package/dist/invocation-context/contract.js.map +1 -0
  426. package/dist/invocation-context/effect-schema.d.ts +73 -0
  427. package/dist/invocation-context/effect-schema.d.ts.map +1 -0
  428. package/dist/invocation-context/effect-schema.js +93 -0
  429. package/dist/invocation-context/effect-schema.js.map +1 -0
  430. package/dist/invocation-context/index.d.ts +2 -0
  431. package/dist/invocation-context/index.d.ts.map +1 -0
  432. package/dist/invocation-context/index.js +2 -0
  433. package/dist/invocation-context/index.js.map +1 -0
  434. package/dist/invocation-context/policy.d.ts +9 -0
  435. package/dist/invocation-context/policy.d.ts.map +1 -0
  436. package/dist/invocation-context/policy.js +9 -0
  437. package/dist/invocation-context/policy.js.map +1 -0
  438. package/dist/invocation-context/version.d.ts +2 -0
  439. package/dist/invocation-context/version.d.ts.map +1 -0
  440. package/dist/invocation-context/version.js +2 -0
  441. package/dist/invocation-context/version.js.map +1 -0
  442. package/dist/local-node/contract.d.ts +476 -0
  443. package/dist/local-node/contract.d.ts.map +1 -0
  444. package/dist/local-node/contract.js +50 -0
  445. package/dist/local-node/contract.js.map +1 -0
  446. package/dist/local-node/effect-schema.d.ts +3561 -0
  447. package/dist/local-node/effect-schema.d.ts.map +1 -0
  448. package/dist/local-node/effect-schema.js +483 -0
  449. package/dist/local-node/effect-schema.js.map +1 -0
  450. package/dist/local-node/index.d.ts +4 -0
  451. package/dist/local-node/index.d.ts.map +1 -0
  452. package/dist/local-node/index.js +4 -0
  453. package/dist/local-node/index.js.map +1 -0
  454. package/dist/local-node/node-api/index.d.ts +3 -0
  455. package/dist/local-node/node-api/index.d.ts.map +1 -0
  456. package/dist/local-node/node-api/index.js +3 -0
  457. package/dist/local-node/node-api/index.js.map +1 -0
  458. package/dist/local-node/node-api/methods.d.ts +205 -0
  459. package/dist/local-node/node-api/methods.d.ts.map +1 -0
  460. package/dist/local-node/node-api/methods.js +389 -0
  461. package/dist/local-node/node-api/methods.js.map +1 -0
  462. package/dist/local-node/node-api/policy.d.ts +56 -0
  463. package/dist/local-node/node-api/policy.d.ts.map +1 -0
  464. package/dist/local-node/node-api/policy.js +62 -0
  465. package/dist/local-node/node-api/policy.js.map +1 -0
  466. package/dist/local-node/node-profile.d.ts +2 -0
  467. package/dist/local-node/node-profile.d.ts.map +1 -0
  468. package/dist/local-node/node-profile.js +2 -0
  469. package/dist/local-node/node-profile.js.map +1 -0
  470. package/dist/local-node/profile-location.d.ts +35 -0
  471. package/dist/local-node/profile-location.d.ts.map +1 -0
  472. package/dist/local-node/profile-location.js +99 -0
  473. package/dist/local-node/profile-location.js.map +1 -0
  474. package/dist/local-node/receipt-list.d.ts +36 -0
  475. package/dist/local-node/receipt-list.d.ts.map +1 -0
  476. package/dist/local-node/receipt-list.js +104 -0
  477. package/dist/local-node/receipt-list.js.map +1 -0
  478. package/dist/orchestration/aggregate-contract.d.ts +149 -0
  479. package/dist/orchestration/aggregate-contract.d.ts.map +1 -0
  480. package/dist/orchestration/aggregate-contract.js +4 -0
  481. package/dist/orchestration/aggregate-contract.js.map +1 -0
  482. package/dist/orchestration/canonical.d.ts +12 -0
  483. package/dist/orchestration/canonical.d.ts.map +1 -0
  484. package/dist/orchestration/canonical.js +50 -0
  485. package/dist/orchestration/canonical.js.map +1 -0
  486. package/dist/orchestration/contract.d.ts +2719 -0
  487. package/dist/orchestration/contract.d.ts.map +1 -0
  488. package/dist/orchestration/contract.js +43 -0
  489. package/dist/orchestration/contract.js.map +1 -0
  490. package/dist/orchestration/effect-schema.d.ts +4935 -0
  491. package/dist/orchestration/effect-schema.d.ts.map +1 -0
  492. package/dist/orchestration/effect-schema.js +610 -0
  493. package/dist/orchestration/effect-schema.js.map +1 -0
  494. package/dist/orchestration/feature.d.ts +130 -0
  495. package/dist/orchestration/feature.d.ts.map +1 -0
  496. package/dist/orchestration/feature.js +126 -0
  497. package/dist/orchestration/feature.js.map +1 -0
  498. package/dist/orchestration/index.d.ts +7 -0
  499. package/dist/orchestration/index.d.ts.map +1 -0
  500. package/dist/orchestration/index.js +7 -0
  501. package/dist/orchestration/index.js.map +1 -0
  502. package/dist/orchestration/policy.d.ts +28 -0
  503. package/dist/orchestration/policy.d.ts.map +1 -0
  504. package/dist/orchestration/policy.js +28 -0
  505. package/dist/orchestration/policy.js.map +1 -0
  506. package/dist/orchestration/topology.d.ts +20 -0
  507. package/dist/orchestration/topology.d.ts.map +1 -0
  508. package/dist/orchestration/topology.js +143 -0
  509. package/dist/orchestration/topology.js.map +1 -0
  510. package/dist/orchestration/version.d.ts +3 -0
  511. package/dist/orchestration/version.d.ts.map +1 -0
  512. package/dist/orchestration/version.js +3 -0
  513. package/dist/orchestration/version.js.map +1 -0
  514. package/dist/port-lease/contract.d.ts +222 -0
  515. package/dist/port-lease/contract.d.ts.map +1 -0
  516. package/dist/port-lease/contract.js +28 -0
  517. package/dist/port-lease/contract.js.map +1 -0
  518. package/dist/port-lease/effect-schema.d.ts +3 -0
  519. package/dist/port-lease/effect-schema.d.ts.map +1 -0
  520. package/dist/port-lease/effect-schema.js +3 -0
  521. package/dist/port-lease/effect-schema.js.map +1 -0
  522. package/dist/port-lease/feature.d.ts +121 -0
  523. package/dist/port-lease/feature.d.ts.map +1 -0
  524. package/dist/port-lease/feature.js +119 -0
  525. package/dist/port-lease/feature.js.map +1 -0
  526. package/dist/port-lease/index.d.ts +3 -0
  527. package/dist/port-lease/index.d.ts.map +1 -0
  528. package/dist/port-lease/index.js +3 -0
  529. package/dist/port-lease/index.js.map +1 -0
  530. package/dist/port-lease/request-effect-schema.d.ts +87 -0
  531. package/dist/port-lease/request-effect-schema.d.ts.map +1 -0
  532. package/dist/port-lease/request-effect-schema.js +95 -0
  533. package/dist/port-lease/request-effect-schema.js.map +1 -0
  534. package/dist/port-lease/result-effect-schema.d.ts +308 -0
  535. package/dist/port-lease/result-effect-schema.d.ts.map +1 -0
  536. package/dist/port-lease/result-effect-schema.js +68 -0
  537. package/dist/port-lease/result-effect-schema.js.map +1 -0
  538. package/dist/presentation/catalog.d.ts +3 -0
  539. package/dist/presentation/catalog.d.ts.map +1 -0
  540. package/dist/presentation/catalog.js +5 -0
  541. package/dist/presentation/catalog.js.map +1 -0
  542. package/dist/presentation/contract.d.ts +333 -0
  543. package/dist/presentation/contract.d.ts.map +1 -0
  544. package/dist/presentation/contract.js +16 -0
  545. package/dist/presentation/contract.js.map +1 -0
  546. package/dist/presentation/effect-schema.d.ts +329 -0
  547. package/dist/presentation/effect-schema.d.ts.map +1 -0
  548. package/dist/presentation/effect-schema.js +116 -0
  549. package/dist/presentation/effect-schema.js.map +1 -0
  550. package/dist/presentation/feature.d.ts +105 -0
  551. package/dist/presentation/feature.d.ts.map +1 -0
  552. package/dist/presentation/feature.js +103 -0
  553. package/dist/presentation/feature.js.map +1 -0
  554. package/dist/presentation/index.d.ts +5 -0
  555. package/dist/presentation/index.d.ts.map +1 -0
  556. package/dist/presentation/index.js +4 -0
  557. package/dist/presentation/index.js.map +1 -0
  558. package/dist/presentation/project-list-effect-schema.d.ts +77 -0
  559. package/dist/presentation/project-list-effect-schema.d.ts.map +1 -0
  560. package/dist/presentation/project-list-effect-schema.js +69 -0
  561. package/dist/presentation/project-list-effect-schema.js.map +1 -0
  562. package/dist/presentation/session-list-effect-schema.d.ts +157 -0
  563. package/dist/presentation/session-list-effect-schema.d.ts.map +1 -0
  564. package/dist/presentation/session-list-effect-schema.js +98 -0
  565. package/dist/presentation/session-list-effect-schema.js.map +1 -0
  566. package/dist/project-workspace/contract.d.ts +794 -0
  567. package/dist/project-workspace/contract.d.ts.map +1 -0
  568. package/dist/project-workspace/contract.js +46 -0
  569. package/dist/project-workspace/contract.js.map +1 -0
  570. package/dist/project-workspace/effect-schema.d.ts +1391 -0
  571. package/dist/project-workspace/effect-schema.d.ts.map +1 -0
  572. package/dist/project-workspace/effect-schema.js +460 -0
  573. package/dist/project-workspace/effect-schema.js.map +1 -0
  574. package/dist/project-workspace/feature.d.ts +246 -0
  575. package/dist/project-workspace/feature.d.ts.map +1 -0
  576. package/dist/project-workspace/feature.js +234 -0
  577. package/dist/project-workspace/feature.js.map +1 -0
  578. package/dist/project-workspace/index.d.ts +5 -0
  579. package/dist/project-workspace/index.d.ts.map +1 -0
  580. package/dist/project-workspace/index.js +5 -0
  581. package/dist/project-workspace/index.js.map +1 -0
  582. package/dist/project-workspace/policy.d.ts +4 -0
  583. package/dist/project-workspace/policy.d.ts.map +1 -0
  584. package/dist/project-workspace/policy.js +4 -0
  585. package/dist/project-workspace/policy.js.map +1 -0
  586. package/dist/project-workspace/version.d.ts +8 -0
  587. package/dist/project-workspace/version.d.ts.map +1 -0
  588. package/dist/project-workspace/version.js +8 -0
  589. package/dist/project-workspace/version.js.map +1 -0
  590. package/dist/provider/contract.d.ts +31 -0
  591. package/dist/provider/contract.d.ts.map +1 -0
  592. package/dist/provider/contract.js +8 -0
  593. package/dist/provider/contract.js.map +1 -0
  594. package/dist/provider/effect-schema.d.ts +28 -0
  595. package/dist/provider/effect-schema.d.ts.map +1 -0
  596. package/dist/provider/effect-schema.js +36 -0
  597. package/dist/provider/effect-schema.js.map +1 -0
  598. package/dist/provider/index.d.ts +4 -0
  599. package/dist/provider/index.d.ts.map +1 -0
  600. package/dist/provider/index.js +4 -0
  601. package/dist/provider/index.js.map +1 -0
  602. package/dist/provider/policy.d.ts +4 -0
  603. package/dist/provider/policy.d.ts.map +1 -0
  604. package/dist/provider/policy.js +4 -0
  605. package/dist/provider/policy.js.map +1 -0
  606. package/dist/provider/version.d.ts +2 -0
  607. package/dist/provider/version.d.ts.map +1 -0
  608. package/dist/provider/version.js +2 -0
  609. package/dist/provider/version.js.map +1 -0
  610. package/dist/reference/contract.d.ts +28 -0
  611. package/dist/reference/contract.d.ts.map +1 -0
  612. package/dist/reference/contract.js +5 -0
  613. package/dist/reference/contract.js.map +1 -0
  614. package/dist/reference/effect-schema.d.ts +59 -0
  615. package/dist/reference/effect-schema.d.ts.map +1 -0
  616. package/dist/reference/effect-schema.js +77 -0
  617. package/dist/reference/effect-schema.js.map +1 -0
  618. package/dist/reference/feature.d.ts +34 -0
  619. package/dist/reference/feature.d.ts.map +1 -0
  620. package/dist/reference/feature.js +38 -0
  621. package/dist/reference/feature.js.map +1 -0
  622. package/dist/reference/index.d.ts +4 -0
  623. package/dist/reference/index.d.ts.map +1 -0
  624. package/dist/reference/index.js +4 -0
  625. package/dist/reference/index.js.map +1 -0
  626. package/dist/reference/policy.d.ts +11 -0
  627. package/dist/reference/policy.d.ts.map +1 -0
  628. package/dist/reference/policy.js +17 -0
  629. package/dist/reference/policy.js.map +1 -0
  630. package/dist/remote-node/bridge-effect-schema.d.ts +60 -0
  631. package/dist/remote-node/bridge-effect-schema.d.ts.map +1 -0
  632. package/dist/remote-node/bridge-effect-schema.js +55 -0
  633. package/dist/remote-node/bridge-effect-schema.js.map +1 -0
  634. package/dist/remote-node/contract.d.ts +475 -0
  635. package/dist/remote-node/contract.d.ts.map +1 -0
  636. package/dist/remote-node/contract.js +37 -0
  637. package/dist/remote-node/contract.js.map +1 -0
  638. package/dist/remote-node/effect-schema.d.ts +4 -0
  639. package/dist/remote-node/effect-schema.d.ts.map +1 -0
  640. package/dist/remote-node/effect-schema.js +4 -0
  641. package/dist/remote-node/effect-schema.js.map +1 -0
  642. package/dist/remote-node/feature.d.ts +33 -0
  643. package/dist/remote-node/feature.d.ts.map +1 -0
  644. package/dist/remote-node/feature.js +37 -0
  645. package/dist/remote-node/feature.js.map +1 -0
  646. package/dist/remote-node/index.d.ts +3 -0
  647. package/dist/remote-node/index.d.ts.map +1 -0
  648. package/dist/remote-node/index.js +3 -0
  649. package/dist/remote-node/index.js.map +1 -0
  650. package/dist/remote-node/request-effect-schema.d.ts +130 -0
  651. package/dist/remote-node/request-effect-schema.d.ts.map +1 -0
  652. package/dist/remote-node/request-effect-schema.js +110 -0
  653. package/dist/remote-node/request-effect-schema.js.map +1 -0
  654. package/dist/remote-node/result-effect-schema.d.ts +641 -0
  655. package/dist/remote-node/result-effect-schema.d.ts.map +1 -0
  656. package/dist/remote-node/result-effect-schema.js +197 -0
  657. package/dist/remote-node/result-effect-schema.js.map +1 -0
  658. package/dist/run-ledger/contract.d.ts +499 -0
  659. package/dist/run-ledger/contract.d.ts.map +1 -0
  660. package/dist/run-ledger/contract.js +35 -0
  661. package/dist/run-ledger/contract.js.map +1 -0
  662. package/dist/run-ledger/effect-schema.d.ts +3 -0
  663. package/dist/run-ledger/effect-schema.d.ts.map +1 -0
  664. package/dist/run-ledger/effect-schema.js +3 -0
  665. package/dist/run-ledger/effect-schema.js.map +1 -0
  666. package/dist/run-ledger/feature.d.ts +179 -0
  667. package/dist/run-ledger/feature.d.ts.map +1 -0
  668. package/dist/run-ledger/feature.js +182 -0
  669. package/dist/run-ledger/feature.js.map +1 -0
  670. package/dist/run-ledger/index.d.ts +3 -0
  671. package/dist/run-ledger/index.d.ts.map +1 -0
  672. package/dist/run-ledger/index.js +3 -0
  673. package/dist/run-ledger/index.js.map +1 -0
  674. package/dist/run-ledger/request-effect-schema.d.ts +192 -0
  675. package/dist/run-ledger/request-effect-schema.d.ts.map +1 -0
  676. package/dist/run-ledger/request-effect-schema.js +193 -0
  677. package/dist/run-ledger/request-effect-schema.js.map +1 -0
  678. package/dist/run-ledger/result-effect-schema.d.ts +700 -0
  679. package/dist/run-ledger/result-effect-schema.d.ts.map +1 -0
  680. package/dist/run-ledger/result-effect-schema.js +72 -0
  681. package/dist/run-ledger/result-effect-schema.js.map +1 -0
  682. package/dist/runtime/contract.d.ts +171 -0
  683. package/dist/runtime/contract.d.ts.map +1 -0
  684. package/dist/runtime/contract.js +5 -0
  685. package/dist/runtime/contract.js.map +1 -0
  686. package/dist/runtime/effect-schema.d.ts +211 -0
  687. package/dist/runtime/effect-schema.d.ts.map +1 -0
  688. package/dist/runtime/effect-schema.js +137 -0
  689. package/dist/runtime/effect-schema.js.map +1 -0
  690. package/dist/runtime/index.d.ts +3 -0
  691. package/dist/runtime/index.d.ts.map +1 -0
  692. package/dist/runtime/index.js +3 -0
  693. package/dist/runtime/index.js.map +1 -0
  694. package/dist/runtime/version.d.ts +2 -0
  695. package/dist/runtime/version.d.ts.map +1 -0
  696. package/dist/runtime/version.js +2 -0
  697. package/dist/runtime/version.js.map +1 -0
  698. package/dist/runtime-schema/effect-adapter.d.ts +4 -0
  699. package/dist/runtime-schema/effect-adapter.d.ts.map +1 -0
  700. package/dist/runtime-schema/effect-adapter.js +25 -0
  701. package/dist/runtime-schema/effect-adapter.js.map +1 -0
  702. package/dist/runtime-schema/effect-schema.d.ts +2 -0
  703. package/dist/runtime-schema/effect-schema.d.ts.map +1 -0
  704. package/dist/runtime-schema/effect-schema.js +2 -0
  705. package/dist/runtime-schema/effect-schema.js.map +1 -0
  706. package/dist/runtime-schema/index.d.ts +2 -0
  707. package/dist/runtime-schema/index.d.ts.map +1 -0
  708. package/dist/runtime-schema/index.js +2 -0
  709. package/dist/runtime-schema/index.js.map +1 -0
  710. package/dist/runtime-schema/runtime-schema.d.ts +23 -0
  711. package/dist/runtime-schema/runtime-schema.d.ts.map +1 -0
  712. package/dist/runtime-schema/runtime-schema.js +12 -0
  713. package/dist/runtime-schema/runtime-schema.js.map +1 -0
  714. package/dist/session/agent-permission-contract.d.ts +108 -0
  715. package/dist/session/agent-permission-contract.d.ts.map +1 -0
  716. package/dist/session/agent-permission-contract.js +8 -0
  717. package/dist/session/agent-permission-contract.js.map +1 -0
  718. package/dist/session/agent-permission-effect-schema.d.ts +191 -0
  719. package/dist/session/agent-permission-effect-schema.d.ts.map +1 -0
  720. package/dist/session/agent-permission-effect-schema.js +74 -0
  721. package/dist/session/agent-permission-effect-schema.js.map +1 -0
  722. package/dist/session/contract.d.ts +1184 -0
  723. package/dist/session/contract.d.ts.map +1 -0
  724. package/dist/session/contract.js +35 -0
  725. package/dist/session/contract.js.map +1 -0
  726. package/dist/session/effect-schema.d.ts +2304 -0
  727. package/dist/session/effect-schema.d.ts.map +1 -0
  728. package/dist/session/effect-schema.js +505 -0
  729. package/dist/session/effect-schema.js.map +1 -0
  730. package/dist/session/feature.d.ts +382 -0
  731. package/dist/session/feature.d.ts.map +1 -0
  732. package/dist/session/feature.js +362 -0
  733. package/dist/session/feature.js.map +1 -0
  734. package/dist/session/index.d.ts +8 -0
  735. package/dist/session/index.d.ts.map +1 -0
  736. package/dist/session/index.js +8 -0
  737. package/dist/session/index.js.map +1 -0
  738. package/dist/session/observation-contract.d.ts +73 -0
  739. package/dist/session/observation-contract.d.ts.map +1 -0
  740. package/dist/session/observation-contract.js +6 -0
  741. package/dist/session/observation-contract.js.map +1 -0
  742. package/dist/session/observation-effect-schema.d.ts +73 -0
  743. package/dist/session/observation-effect-schema.d.ts.map +1 -0
  744. package/dist/session/observation-effect-schema.js +55 -0
  745. package/dist/session/observation-effect-schema.js.map +1 -0
  746. package/dist/session/policy.d.ts +26 -0
  747. package/dist/session/policy.d.ts.map +1 -0
  748. package/dist/session/policy.js +33 -0
  749. package/dist/session/policy.js.map +1 -0
  750. package/dist/session/stop-resume-contract.d.ts +130 -0
  751. package/dist/session/stop-resume-contract.d.ts.map +1 -0
  752. package/dist/session/stop-resume-contract.js +7 -0
  753. package/dist/session/stop-resume-contract.js.map +1 -0
  754. package/dist/session/turn-event-effect-schema.d.ts +69 -0
  755. package/dist/session/turn-event-effect-schema.d.ts.map +1 -0
  756. package/dist/session/turn-event-effect-schema.js +74 -0
  757. package/dist/session/turn-event-effect-schema.js.map +1 -0
  758. package/dist/session/version.d.ts +4 -0
  759. package/dist/session/version.d.ts.map +1 -0
  760. package/dist/session/version.js +4 -0
  761. package/dist/session/version.js.map +1 -0
  762. package/dist/session/worktree-effect-schema.d.ts +87 -0
  763. package/dist/session/worktree-effect-schema.d.ts.map +1 -0
  764. package/dist/session/worktree-effect-schema.js +122 -0
  765. package/dist/session/worktree-effect-schema.js.map +1 -0
  766. package/dist/session-guard/contract.d.ts +176 -0
  767. package/dist/session-guard/contract.d.ts.map +1 -0
  768. package/dist/session-guard/contract.js +61 -0
  769. package/dist/session-guard/contract.js.map +1 -0
  770. package/dist/session-guard/effect-schema.d.ts +3 -0
  771. package/dist/session-guard/effect-schema.d.ts.map +1 -0
  772. package/dist/session-guard/effect-schema.js +3 -0
  773. package/dist/session-guard/effect-schema.js.map +1 -0
  774. package/dist/session-guard/feature.d.ts +34 -0
  775. package/dist/session-guard/feature.d.ts.map +1 -0
  776. package/dist/session-guard/feature.js +38 -0
  777. package/dist/session-guard/feature.js.map +1 -0
  778. package/dist/session-guard/index.d.ts +3 -0
  779. package/dist/session-guard/index.d.ts.map +1 -0
  780. package/dist/session-guard/index.js +3 -0
  781. package/dist/session-guard/index.js.map +1 -0
  782. package/dist/session-guard/request-effect-schema.d.ts +125 -0
  783. package/dist/session-guard/request-effect-schema.d.ts.map +1 -0
  784. package/dist/session-guard/request-effect-schema.js +82 -0
  785. package/dist/session-guard/request-effect-schema.js.map +1 -0
  786. package/dist/session-guard/result-effect-schema.d.ts +166 -0
  787. package/dist/session-guard/result-effect-schema.d.ts.map +1 -0
  788. package/dist/session-guard/result-effect-schema.js +48 -0
  789. package/dist/session-guard/result-effect-schema.js.map +1 -0
  790. package/dist/session-stream/contract.d.ts +485 -0
  791. package/dist/session-stream/contract.d.ts.map +1 -0
  792. package/dist/session-stream/contract.js +18 -0
  793. package/dist/session-stream/contract.js.map +1 -0
  794. package/dist/session-stream/effect-schema.d.ts +485 -0
  795. package/dist/session-stream/effect-schema.d.ts.map +1 -0
  796. package/dist/session-stream/effect-schema.js +234 -0
  797. package/dist/session-stream/effect-schema.js.map +1 -0
  798. package/dist/session-stream/index.d.ts +2 -0
  799. package/dist/session-stream/index.d.ts.map +1 -0
  800. package/dist/session-stream/index.js +2 -0
  801. package/dist/session-stream/index.js.map +1 -0
  802. package/dist/session-stream/policy.d.ts +23 -0
  803. package/dist/session-stream/policy.d.ts.map +1 -0
  804. package/dist/session-stream/policy.js +32 -0
  805. package/dist/session-stream/policy.js.map +1 -0
  806. package/dist/terminal/contract.d.ts +2476 -0
  807. package/dist/terminal/contract.d.ts.map +1 -0
  808. package/dist/terminal/contract.js +17 -0
  809. package/dist/terminal/contract.js.map +1 -0
  810. package/dist/terminal/effect-schema.d.ts +15723 -0
  811. package/dist/terminal/effect-schema.d.ts.map +1 -0
  812. package/dist/terminal/effect-schema.js +191 -0
  813. package/dist/terminal/effect-schema.js.map +1 -0
  814. package/dist/terminal/feature.d.ts +333 -0
  815. package/dist/terminal/feature.d.ts.map +1 -0
  816. package/dist/terminal/feature.js +313 -0
  817. package/dist/terminal/feature.js.map +1 -0
  818. package/dist/terminal/index.d.ts +7 -0
  819. package/dist/terminal/index.d.ts.map +1 -0
  820. package/dist/terminal/index.js +7 -0
  821. package/dist/terminal/index.js.map +1 -0
  822. package/dist/terminal/live-contract.d.ts +87 -0
  823. package/dist/terminal/live-contract.d.ts.map +1 -0
  824. package/dist/terminal/live-contract.js +52 -0
  825. package/dist/terminal/live-contract.js.map +1 -0
  826. package/dist/terminal/live-effect-schema.d.ts +24770 -0
  827. package/dist/terminal/live-effect-schema.d.ts.map +1 -0
  828. package/dist/terminal/live-effect-schema.js +985 -0
  829. package/dist/terminal/live-effect-schema.js.map +1 -0
  830. package/dist/terminal/live-policy.d.ts +79 -0
  831. package/dist/terminal/live-policy.d.ts.map +1 -0
  832. package/dist/terminal/live-policy.js +91 -0
  833. package/dist/terminal/live-policy.js.map +1 -0
  834. package/dist/terminal/live-types.d.ts +584 -0
  835. package/dist/terminal/live-types.d.ts.map +1 -0
  836. package/dist/terminal/live-types.js +2 -0
  837. package/dist/terminal/live-types.js.map +1 -0
  838. package/dist/terminal/live-version.d.ts +4 -0
  839. package/dist/terminal/live-version.d.ts.map +1 -0
  840. package/dist/terminal/live-version.js +4 -0
  841. package/dist/terminal/live-version.js.map +1 -0
  842. package/dist/terminal/policy.d.ts +5 -0
  843. package/dist/terminal/policy.d.ts.map +1 -0
  844. package/dist/terminal/policy.js +5 -0
  845. package/dist/terminal/policy.js.map +1 -0
  846. package/dist/terminal/version.d.ts +4 -0
  847. package/dist/terminal/version.d.ts.map +1 -0
  848. package/dist/terminal/version.js +4 -0
  849. package/dist/terminal/version.js.map +1 -0
  850. package/dist/turn/contract.d.ts +529 -0
  851. package/dist/turn/contract.d.ts.map +1 -0
  852. package/dist/turn/contract.js +12 -0
  853. package/dist/turn/contract.js.map +1 -0
  854. package/dist/turn/effect-schema.d.ts +974 -0
  855. package/dist/turn/effect-schema.d.ts.map +1 -0
  856. package/dist/turn/effect-schema.js +181 -0
  857. package/dist/turn/effect-schema.js.map +1 -0
  858. package/dist/turn/index.d.ts +5 -0
  859. package/dist/turn/index.d.ts.map +1 -0
  860. package/dist/turn/index.js +5 -0
  861. package/dist/turn/index.js.map +1 -0
  862. package/dist/turn/policy.d.ts +14 -0
  863. package/dist/turn/policy.d.ts.map +1 -0
  864. package/dist/turn/policy.js +14 -0
  865. package/dist/turn/policy.js.map +1 -0
  866. package/dist/turn/version.d.ts +2 -0
  867. package/dist/turn/version.d.ts.map +1 -0
  868. package/dist/turn/version.js +2 -0
  869. package/dist/turn/version.js.map +1 -0
  870. package/dist/turn/wait-contract.d.ts +25 -0
  871. package/dist/turn/wait-contract.d.ts.map +1 -0
  872. package/dist/turn/wait-contract.js +5 -0
  873. package/dist/turn/wait-contract.js.map +1 -0
  874. package/dist/voice/contract.d.ts +261 -0
  875. package/dist/voice/contract.d.ts.map +1 -0
  876. package/dist/voice/contract.js +21 -0
  877. package/dist/voice/contract.js.map +1 -0
  878. package/dist/voice/effect-schema.d.ts +492 -0
  879. package/dist/voice/effect-schema.d.ts.map +1 -0
  880. package/dist/voice/effect-schema.js +280 -0
  881. package/dist/voice/effect-schema.js.map +1 -0
  882. package/dist/voice/feature.d.ts +382 -0
  883. package/dist/voice/feature.d.ts.map +1 -0
  884. package/dist/voice/feature.js +205 -0
  885. package/dist/voice/feature.js.map +1 -0
  886. package/dist/voice/index.d.ts +7 -0
  887. package/dist/voice/index.d.ts.map +1 -0
  888. package/dist/voice/index.js +5 -0
  889. package/dist/voice/index.js.map +1 -0
  890. package/dist/voice/managed-turn-contract.d.ts +49 -0
  891. package/dist/voice/managed-turn-contract.d.ts.map +1 -0
  892. package/dist/voice/managed-turn-contract.js +6 -0
  893. package/dist/voice/managed-turn-contract.js.map +1 -0
  894. package/dist/voice/managed-turn-effect-schema.d.ts +76 -0
  895. package/dist/voice/managed-turn-effect-schema.d.ts.map +1 -0
  896. package/dist/voice/managed-turn-effect-schema.js +58 -0
  897. package/dist/voice/managed-turn-effect-schema.js.map +1 -0
  898. package/dist/voice/orchestrator-system-prompt.d.ts +12 -0
  899. package/dist/voice/orchestrator-system-prompt.d.ts.map +1 -0
  900. package/dist/voice/orchestrator-system-prompt.js +28 -0
  901. package/dist/voice/orchestrator-system-prompt.js.map +1 -0
  902. package/dist/voice/orchestrator.d.ts +7 -0
  903. package/dist/voice/orchestrator.d.ts.map +1 -0
  904. package/dist/voice/orchestrator.js +7 -0
  905. package/dist/voice/orchestrator.js.map +1 -0
  906. package/dist/voice/pi-relay.d.ts +5 -0
  907. package/dist/voice/pi-relay.d.ts.map +1 -0
  908. package/dist/voice/pi-relay.js +4 -0
  909. package/dist/voice/pi-relay.js.map +1 -0
  910. package/dist/voice/policy.d.ts +18 -0
  911. package/dist/voice/policy.d.ts.map +1 -0
  912. package/dist/voice/policy.js +28 -0
  913. package/dist/voice/policy.js.map +1 -0
  914. package/dist/voice/relay-contract.d.ts +78 -0
  915. package/dist/voice/relay-contract.d.ts.map +1 -0
  916. package/dist/voice/relay-contract.js +9 -0
  917. package/dist/voice/relay-contract.js.map +1 -0
  918. package/dist/voice/relay-effect-schema.d.ts +147 -0
  919. package/dist/voice/relay-effect-schema.d.ts.map +1 -0
  920. package/dist/voice/relay-effect-schema.js +89 -0
  921. package/dist/voice/relay-effect-schema.js.map +1 -0
  922. package/dist/voice/version.d.ts +7 -0
  923. package/dist/voice/version.d.ts.map +1 -0
  924. package/dist/voice/version.js +7 -0
  925. package/dist/voice/version.js.map +1 -0
  926. package/package.json +100 -0
@@ -0,0 +1,985 @@
1
+ import * as Schema from "effect/Schema";
2
+ import { aggregateRevisionEffectSchema, protocolIdentifierEffectSchema, recordedAtEffectSchema, } from "../envelope/effect-schema.js";
3
+ import { LIVE_TERMINAL_CREATE_FAILURE_CLEANUP_POLICY, LIVE_TERMINAL_RESTART_POLICY, LIVE_TERMINAL_STATE_CHANGED_EDGES, MAX_TERMINAL_COLUMNS, MAX_TERMINAL_CONTROLLER_LEASE_MS, MAX_TERMINAL_CONTROLLER_REQUESTS_PER_TERMINAL, MAX_TERMINAL_GENERATION, MAX_TERMINAL_INPUT_CHUNK_BYTES, MAX_TERMINAL_INPUT_SEQUENCE, MAX_TERMINAL_MUTATION_SEQUENCE, MAX_TERMINAL_NATIVE_OPERATION_SEQUENCE, MAX_TERMINAL_OBSERVER_CHECK_EVENTS, MAX_TERMINAL_OBSERVER_CHECK_RESPONSE_BYTES, MAX_TERMINAL_OBSERVER_LEASE_MS, MAX_TERMINAL_OBSERVER_WAIT_MS, MAX_TERMINAL_OUTPUT_CHUNK_BYTES, MAX_TERMINAL_ROWS, MAX_TERMINAL_SCROLLBACK_BYTES, MAX_TERMINAL_SCROLLBACK_LINES, MAX_TERMINAL_SNAPSHOT_CHUNKS, MAX_TERMINAL_SNAPSHOT_RESPONSE_BYTES, MIN_TERMINAL_COLUMNS, MIN_TERMINAL_CONTROLLER_LEASE_MS, MIN_TERMINAL_OBSERVER_LEASE_MS, MIN_TERMINAL_ROWS, TERMINAL_REVOCATION_POLICY_REVISION, } from "./live-policy.js";
4
+ import { LIVE_TERMINAL_EVENT_SCHEMA_VERSION, LIVE_TERMINAL_MUTATION_SCHEMA_VERSION, LIVE_TERMINAL_SCHEMA_VERSION, } from "./live-version.js";
5
+ const boundedInt = (minimum, maximum) => Schema.Int.check(Schema.isGreaterThanOrEqualTo(minimum), Schema.isLessThanOrEqualTo(maximum));
6
+ const viewportFields = {
7
+ columns: boundedInt(MIN_TERMINAL_COLUMNS, MAX_TERMINAL_COLUMNS),
8
+ rows: boundedInt(MIN_TERMINAL_ROWS, MAX_TERMINAL_ROWS),
9
+ };
10
+ const nativeSequenceFields = {
11
+ nativeOperationSequence: boundedInt(1, MAX_TERMINAL_NATIVE_OPERATION_SEQUENCE),
12
+ };
13
+ export const liveTerminalViewportEffectSchema = Schema.Struct(viewportFields);
14
+ export const liveTerminalExecutionCapabilityEffectSchema = Schema.Struct({
15
+ assumption: Schema.Literal("cooperative_unsandboxed_local_user_code_may_include_automation"),
16
+ hardContainment: Schema.Literal(false),
17
+ limits: Schema.Struct({
18
+ cpuTime: Schema.Literal("unavailable"),
19
+ memory: Schema.Literal("unavailable"),
20
+ processCount: Schema.Literal("unavailable"),
21
+ survivorCleanup: Schema.Literal("unavailable"),
22
+ wallTime: Schema.Literal("cooperative"),
23
+ }),
24
+ measurementSources: Schema.Struct({
25
+ host: Schema.Literal("process_host"),
26
+ knownMembers: Schema.Literal("darwin_descendant_snapshot"),
27
+ }),
28
+ releaseQualified: Schema.Literal(false),
29
+ revocationPolicyRevision: Schema.Literal(TERMINAL_REVOCATION_POLICY_REVISION),
30
+ sourceCandidate: Schema.Literal(true),
31
+ tier: Schema.Literal("local_user_interactive_terminal"),
32
+ });
33
+ const pendingCleanupEffectSchema = Schema.Struct({
34
+ semantic: Schema.Literal("known_identity_members"),
35
+ state: Schema.Literal("pending"),
36
+ });
37
+ const completeCleanupEffectSchema = Schema.Struct({
38
+ semantic: Schema.Literal("known_identity_members_complete"),
39
+ state: Schema.Literal("known_identity_members_complete"),
40
+ unknownSurvivorExclusion: Schema.Literal("unavailable"),
41
+ });
42
+ const unknownCleanupEffectSchema = Schema.Struct({
43
+ reason: Schema.Literals([
44
+ "cleanup_deadline",
45
+ "containment_lost",
46
+ "host_failed",
47
+ "identity_observation_lost",
48
+ "native_acknowledgement_lost",
49
+ "node_restarted",
50
+ ]),
51
+ semantic: Schema.Literal("known_identity_members"),
52
+ state: Schema.Literal("unknown"),
53
+ });
54
+ export const liveTerminalCleanupEffectSchema = Schema.Union([
55
+ pendingCleanupEffectSchema,
56
+ completeCleanupEffectSchema,
57
+ unknownCleanupEffectSchema,
58
+ ]);
59
+ const terminalExitEffectSchema = Schema.Struct({
60
+ code: Schema.optional(Schema.Int.check(Schema.isGreaterThanOrEqualTo(0), Schema.isLessThanOrEqualTo(255))),
61
+ observedAt: recordedAtEffectSchema,
62
+ signal: Schema.optional(Schema.Literals(["hangup", "interrupt", "kill", "terminate", "unknown"])),
63
+ });
64
+ const sessionBaseFields = {
65
+ capability: liveTerminalExecutionCapabilityEffectSchema,
66
+ chunkHead: aggregateRevisionEffectSchema,
67
+ createdAt: recordedAtEffectSchema,
68
+ eventHead: aggregateRevisionEffectSchema,
69
+ generation: boundedInt(1, MAX_TERMINAL_GENERATION),
70
+ id: protocolIdentifierEffectSchema,
71
+ mutationHead: aggregateRevisionEffectSchema,
72
+ projectId: protocolIdentifierEffectSchema,
73
+ revision: aggregateRevisionEffectSchema,
74
+ schemaVersion: Schema.Literal(LIVE_TERMINAL_SCHEMA_VERSION),
75
+ updatedAt: recordedAtEffectSchema,
76
+ viewport: liveTerminalViewportEffectSchema,
77
+ workspaceId: protocolIdentifierEffectSchema,
78
+ workspaceRevision: aggregateRevisionEffectSchema,
79
+ };
80
+ const activeSessionEffectSchema = (state) => Schema.Struct({
81
+ ...sessionBaseFields,
82
+ cleanup: pendingCleanupEffectSchema,
83
+ state: Schema.Literal(state),
84
+ });
85
+ const closingSessionEffectSchema = Schema.Struct({
86
+ ...sessionBaseFields,
87
+ cleanup: pendingCleanupEffectSchema,
88
+ state: Schema.Literal("closing"),
89
+ });
90
+ const restartingSessionEffectSchema = Schema.Struct({
91
+ ...sessionBaseFields,
92
+ cleanup: Schema.Union([
93
+ pendingCleanupEffectSchema,
94
+ completeCleanupEffectSchema,
95
+ ]),
96
+ state: Schema.Literal("restarting"),
97
+ });
98
+ const exitedSessionEffectSchema = Schema.Struct({
99
+ ...sessionBaseFields,
100
+ cleanup: liveTerminalCleanupEffectSchema,
101
+ exit: terminalExitEffectSchema,
102
+ state: Schema.Literal("exited"),
103
+ });
104
+ const disconnectedSessionEffectSchema = Schema.Struct({
105
+ ...sessionBaseFields,
106
+ cleanup: unknownCleanupEffectSchema,
107
+ exit: Schema.optional(terminalExitEffectSchema),
108
+ state: Schema.Literal("disconnected"),
109
+ });
110
+ export const liveTerminalSessionEffectSchema = Schema.Union([
111
+ activeSessionEffectSchema("creating"),
112
+ activeSessionEffectSchema("running"),
113
+ closingSessionEffectSchema,
114
+ restartingSessionEffectSchema,
115
+ exitedSessionEffectSchema,
116
+ disconnectedSessionEffectSchema,
117
+ ]);
118
+ const decodedBase64Bytes = (value) => {
119
+ let padding = 0;
120
+ if (value.endsWith("=="))
121
+ padding = 2;
122
+ else if (value.endsWith("="))
123
+ padding = 1;
124
+ return (value.length / 4) * 3 - padding;
125
+ };
126
+ const encodedJsonBytes = (value) => new TextEncoder().encode(JSON.stringify(value)).byteLength;
127
+ const base64Bytes = (maximumBytes, expected) => Schema.String.check(Schema.makeFilter((value) => {
128
+ if (value.length === 0 ||
129
+ !/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/u.test(value)) {
130
+ return false;
131
+ }
132
+ return decodedBase64Bytes(value) <= maximumBytes;
133
+ }, { expected }));
134
+ const outputBytesEffectSchema = base64Bytes(MAX_TERMINAL_OUTPUT_CHUNK_BYTES, "base64 terminal output encoded from at most 32768 bytes");
135
+ const inputBytesEffectSchema = base64Bytes(MAX_TERMINAL_INPUT_CHUNK_BYTES, "base64 terminal input encoded from at most 32768 bytes");
136
+ export const liveTerminalOutputChunkEffectSchema = Schema.Struct({
137
+ bytesBase64: outputBytesEffectSchema,
138
+ capability: liveTerminalExecutionCapabilityEffectSchema,
139
+ cursor: aggregateRevisionEffectSchema,
140
+ generation: boundedInt(1, MAX_TERMINAL_GENERATION),
141
+ recordedAt: recordedAtEffectSchema,
142
+ schemaVersion: Schema.Literal(LIVE_TERMINAL_EVENT_SCHEMA_VERSION),
143
+ terminalId: protocolIdentifierEffectSchema,
144
+ });
145
+ const observerEventFields = {
146
+ capability: liveTerminalExecutionCapabilityEffectSchema,
147
+ cursor: aggregateRevisionEffectSchema,
148
+ recordedAt: recordedAtEffectSchema,
149
+ schemaVersion: Schema.Literal(LIVE_TERMINAL_EVENT_SCHEMA_VERSION),
150
+ terminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
151
+ terminalId: protocolIdentifierEffectSchema,
152
+ };
153
+ const terminalStateChangedEdges = new Set([
154
+ ...LIVE_TERMINAL_STATE_CHANGED_EDGES.map(([from, to]) => `${from}:${to}`),
155
+ ...LIVE_TERMINAL_RESTART_POLICY.stateChanged.map(({ from, to }) => `${from}:${to}`),
156
+ ]);
157
+ const restartStateChangedIsAdmitted = (value) => LIVE_TERMINAL_RESTART_POLICY.stateChanged.some((policy) => value.previousState === policy.from &&
158
+ value.terminal.state === policy.to &&
159
+ value.previousCleanup.state === policy.previousCleanup &&
160
+ value.terminal.cleanup.state === policy.resultingCleanup);
161
+ const generationTransitionMatches = (value, policy) => value.previousState === policy.from &&
162
+ value.terminal.state === policy.to &&
163
+ value.previousCleanup.state === policy.previousCleanup &&
164
+ value.terminal.cleanup.state === policy.resultingCleanup &&
165
+ value.previousGeneration < MAX_TERMINAL_GENERATION &&
166
+ value.terminalGeneration === value.previousGeneration + 1;
167
+ const lifecycleIdentityMatches = (value) => value.terminal.id === value.terminalId &&
168
+ value.terminal.generation === value.terminalGeneration &&
169
+ value.terminal.capability.revocationPolicyRevision ===
170
+ value.capability.revocationPolicyRevision &&
171
+ value.terminal.eventHead === value.cursor &&
172
+ BigInt(value.terminal.revision) === BigInt(value.previousRevision) + 1n;
173
+ const createFailureCleanupMatches = (value) => value.transition === "create-failure-cleanup" &&
174
+ value.previousState === LIVE_TERMINAL_CREATE_FAILURE_CLEANUP_POLICY.from &&
175
+ value.terminal.state === LIVE_TERMINAL_CREATE_FAILURE_CLEANUP_POLICY.to &&
176
+ value.terminalGeneration === value.previousGeneration &&
177
+ value.previousCleanup.state ===
178
+ LIVE_TERMINAL_CREATE_FAILURE_CLEANUP_POLICY.previousCleanup &&
179
+ value.terminal.cleanup.state ===
180
+ LIVE_TERMINAL_CREATE_FAILURE_CLEANUP_POLICY.resultingCleanup;
181
+ const stateChangeMatches = (value) => value.transition === "state-changed" &&
182
+ value.terminalGeneration === value.previousGeneration &&
183
+ terminalStateChangedEdges.has(`${value.previousState}:${value.terminal.state}`) &&
184
+ (value.terminal.state !== "restarting" ||
185
+ restartStateChangedIsAdmitted(value));
186
+ const lifecycleTransitionIsAdmitted = (value) => {
187
+ if (!lifecycleIdentityMatches(value))
188
+ return false;
189
+ if (value.transition === "generation-started") {
190
+ return generationTransitionMatches(value, LIVE_TERMINAL_RESTART_POLICY.generationStarted);
191
+ }
192
+ if (value.transition === "generation-outcome-unknown") {
193
+ return (generationTransitionMatches(value, LIVE_TERMINAL_RESTART_POLICY.generationOutcomeUnknown) && value.terminal.cleanup.reason === "native_acknowledgement_lost");
194
+ }
195
+ return createFailureCleanupMatches(value) || stateChangeMatches(value);
196
+ };
197
+ const liveTerminalLifecycleTransitionEventEffectSchema = Schema.Struct({
198
+ ...observerEventFields,
199
+ previousCleanup: liveTerminalCleanupEffectSchema,
200
+ previousGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
201
+ previousRevision: aggregateRevisionEffectSchema,
202
+ previousState: Schema.Literals([
203
+ "closing",
204
+ "creating",
205
+ "disconnected",
206
+ "exited",
207
+ "restarting",
208
+ "running",
209
+ ]),
210
+ terminal: liveTerminalSessionEffectSchema,
211
+ transition: Schema.Literals([
212
+ "create-failure-cleanup",
213
+ "generation-outcome-unknown",
214
+ "generation-started",
215
+ "state-changed",
216
+ ]),
217
+ type: Schema.Literal("lifecycle-transition"),
218
+ }).check(Schema.makeFilter(lifecycleTransitionIsAdmitted, {
219
+ expected: "a lifecycle transition matching its terminal, generation, and prior cleanup",
220
+ }));
221
+ export const liveTerminalObserverEventEffectSchema = Schema.Union([
222
+ Schema.Struct({
223
+ ...observerEventFields,
224
+ bytesBase64: outputBytesEffectSchema,
225
+ type: Schema.Literal("output"),
226
+ }),
227
+ Schema.Struct({
228
+ ...observerEventFields,
229
+ exit: terminalExitEffectSchema,
230
+ type: Schema.Literal("exit"),
231
+ }),
232
+ Schema.Struct({
233
+ ...observerEventFields,
234
+ cleanup: liveTerminalCleanupEffectSchema,
235
+ type: Schema.Literal("cleanup"),
236
+ }),
237
+ Schema.Struct({
238
+ ...observerEventFields,
239
+ leaseId: protocolIdentifierEffectSchema,
240
+ reason: Schema.Literals(["expired", "policy", "released", "superseded"]),
241
+ type: Schema.Literal("controller-revoked"),
242
+ }),
243
+ Schema.Struct({
244
+ ...observerEventFields,
245
+ headCursor: aggregateRevisionEffectSchema,
246
+ oldestAvailableCursor: aggregateRevisionEffectSchema,
247
+ reason: Schema.Literals(["backpressure", "cursor_expired"]),
248
+ recovery: Schema.Literal("resync-required"),
249
+ requestedAfterCursor: Schema.optional(aggregateRevisionEffectSchema),
250
+ type: Schema.Literal("gap"),
251
+ }),
252
+ liveTerminalLifecycleTransitionEventEffectSchema,
253
+ ]);
254
+ export const liveTerminalObserverSnapshotEffectSchema = Schema.Struct({
255
+ headCursor: aggregateRevisionEffectSchema,
256
+ oldestAvailableCursor: aggregateRevisionEffectSchema,
257
+ retainedBytes: Schema.Int.check(Schema.isGreaterThanOrEqualTo(0), Schema.isLessThanOrEqualTo(MAX_TERMINAL_SCROLLBACK_BYTES)),
258
+ retainedLines: Schema.Int.check(Schema.isGreaterThanOrEqualTo(0), Schema.isLessThanOrEqualTo(MAX_TERMINAL_SCROLLBACK_LINES)),
259
+ tail: Schema.Array(liveTerminalOutputChunkEffectSchema).check(Schema.isMaxLength(MAX_TERMINAL_SNAPSHOT_CHUNKS)),
260
+ terminal: liveTerminalSessionEffectSchema,
261
+ }).check(Schema.makeFilter((value) => value.tail.every((chunk) => chunk.terminalId === value.terminal.id) &&
262
+ value.tail.reduce((total, chunk) => total + decodedBase64Bytes(chunk.bytesBase64), 0) <= MAX_TERMINAL_SNAPSHOT_RESPONSE_BYTES &&
263
+ encodedJsonBytes(value) <= MAX_TERMINAL_SNAPSHOT_RESPONSE_BYTES, { expected: "a terminal observer snapshot within its response byte cap" }));
264
+ const controllerRequestFields = {
265
+ capability: liveTerminalExecutionCapabilityEffectSchema,
266
+ expiresAt: recordedAtEffectSchema,
267
+ id: protocolIdentifierEffectSchema,
268
+ requestedAt: recordedAtEffectSchema,
269
+ terminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
270
+ terminalId: protocolIdentifierEffectSchema,
271
+ };
272
+ export const liveTerminalControllerRequestEffectSchema = Schema.Union([
273
+ Schema.Struct({
274
+ ...controllerRequestFields,
275
+ position: boundedInt(1, MAX_TERMINAL_CONTROLLER_REQUESTS_PER_TERMINAL),
276
+ state: Schema.Literal("pending"),
277
+ }),
278
+ Schema.Struct({
279
+ ...controllerRequestFields,
280
+ state: Schema.Literal("ready"),
281
+ }),
282
+ Schema.Struct({
283
+ ...controllerRequestFields,
284
+ reason: Schema.Literals(["expired", "policy", "queue_saturated"]),
285
+ state: Schema.Literal("denied"),
286
+ }),
287
+ ]);
288
+ const controllerLeaseFields = {
289
+ capability: liveTerminalExecutionCapabilityEffectSchema,
290
+ epoch: aggregateRevisionEffectSchema,
291
+ expiresAt: recordedAtEffectSchema,
292
+ id: protocolIdentifierEffectSchema,
293
+ revision: aggregateRevisionEffectSchema,
294
+ terminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
295
+ terminalId: protocolIdentifierEffectSchema,
296
+ };
297
+ export const liveTerminalControllerLeaseEffectSchema = Schema.Union([
298
+ Schema.Struct({
299
+ ...controllerLeaseFields,
300
+ state: Schema.Literal("active"),
301
+ }),
302
+ Schema.Struct({
303
+ ...controllerLeaseFields,
304
+ state: Schema.Literals(["expired", "released", "revoked"]),
305
+ }),
306
+ ]);
307
+ const commandFields = {
308
+ commandId: protocolIdentifierEffectSchema,
309
+ };
310
+ const terminalFields = {
311
+ terminalId: protocolIdentifierEffectSchema,
312
+ };
313
+ const expectedRevisionFields = {
314
+ expectedTerminalRevision: aggregateRevisionEffectSchema,
315
+ };
316
+ const controllerFenceFields = {
317
+ controller: Schema.Struct({
318
+ epoch: aggregateRevisionEffectSchema,
319
+ expiresAt: recordedAtEffectSchema,
320
+ id: protocolIdentifierEffectSchema,
321
+ revision: aggregateRevisionEffectSchema,
322
+ terminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
323
+ terminalId: protocolIdentifierEffectSchema,
324
+ }),
325
+ };
326
+ export const liveTerminalCreateParametersEffectSchema = Schema.Struct({
327
+ ...commandFields,
328
+ ...viewportFields,
329
+ expectedRevision: Schema.Literal("0"),
330
+ mode: Schema.Literal("interactive"),
331
+ workspaceId: protocolIdentifierEffectSchema,
332
+ });
333
+ export const liveTerminalObserverAttachParametersEffectSchema = Schema.Struct({
334
+ afterCursor: Schema.optional(aggregateRevisionEffectSchema),
335
+ attachId: protocolIdentifierEffectSchema,
336
+ commandId: protocolIdentifierEffectSchema,
337
+ requestedLeaseDurationMs: boundedInt(MIN_TERMINAL_OBSERVER_LEASE_MS, MAX_TERMINAL_OBSERVER_LEASE_MS),
338
+ terminalId: protocolIdentifierEffectSchema,
339
+ });
340
+ export const liveTerminalObserverCheckParametersEffectSchema = Schema.Struct({
341
+ afterCursor: aggregateRevisionEffectSchema,
342
+ limit: boundedInt(1, MAX_TERMINAL_OBSERVER_CHECK_EVENTS),
343
+ observerId: protocolIdentifierEffectSchema,
344
+ terminalId: protocolIdentifierEffectSchema,
345
+ waitMilliseconds: boundedInt(0, MAX_TERMINAL_OBSERVER_WAIT_MS),
346
+ });
347
+ export const liveTerminalObserverDetachParametersEffectSchema = Schema.Struct({
348
+ observerId: protocolIdentifierEffectSchema,
349
+ terminalId: protocolIdentifierEffectSchema,
350
+ });
351
+ export const liveTerminalObserverResyncParametersEffectSchema = Schema.Struct({
352
+ terminalId: protocolIdentifierEffectSchema,
353
+ });
354
+ export const liveTerminalControllerRequestShowParametersEffectSchema = Schema.Struct({
355
+ controllerRequestId: protocolIdentifierEffectSchema,
356
+ terminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
357
+ terminalId: protocolIdentifierEffectSchema,
358
+ });
359
+ export const liveTerminalControllerRequestParametersEffectSchema = Schema.Struct({
360
+ ...commandFields,
361
+ ...terminalFields,
362
+ requestedLeaseDurationMs: boundedInt(MIN_TERMINAL_CONTROLLER_LEASE_MS, MAX_TERMINAL_CONTROLLER_LEASE_MS),
363
+ terminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
364
+ });
365
+ export const liveTerminalControllerAcquireParametersEffectSchema = Schema.Struct({
366
+ ...commandFields,
367
+ ...expectedRevisionFields,
368
+ ...terminalFields,
369
+ controllerRequestId: protocolIdentifierEffectSchema,
370
+ terminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
371
+ });
372
+ const fencedMutationFields = {
373
+ ...commandFields,
374
+ ...controllerFenceFields,
375
+ ...expectedRevisionFields,
376
+ ...terminalFields,
377
+ };
378
+ export const liveTerminalControllerRenewParametersEffectSchema = Schema.Struct({
379
+ ...fencedMutationFields,
380
+ requestedLeaseDurationMs: boundedInt(MIN_TERMINAL_CONTROLLER_LEASE_MS, MAX_TERMINAL_CONTROLLER_LEASE_MS),
381
+ });
382
+ export const liveTerminalControllerReleaseParametersEffectSchema = Schema.Struct(fencedMutationFields);
383
+ export const liveTerminalWriteParametersEffectSchema = Schema.Struct({
384
+ ...fencedMutationFields,
385
+ bytesBase64: inputBytesEffectSchema,
386
+ inputId: protocolIdentifierEffectSchema,
387
+ inputSequence: boundedInt(1, MAX_TERMINAL_INPUT_SEQUENCE),
388
+ });
389
+ export const liveTerminalResizeParametersEffectSchema = Schema.Struct({
390
+ ...fencedMutationFields,
391
+ ...viewportFields,
392
+ });
393
+ export const liveTerminalSignalParametersEffectSchema = Schema.Struct({
394
+ ...fencedMutationFields,
395
+ signal: Schema.Literals(["hangup", "interrupt", "terminate"]),
396
+ });
397
+ export const liveTerminalCloseParametersEffectSchema = Schema.Struct(fencedMutationFields);
398
+ export const liveTerminalRestartParametersEffectSchema = Schema.Struct(fencedMutationFields);
399
+ export const liveTerminalDeleteParametersEffectSchema = Schema.Struct({
400
+ ...commandFields,
401
+ ...expectedRevisionFields,
402
+ ...terminalFields,
403
+ terminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
404
+ });
405
+ export const liveTerminalReconcileParametersEffectSchema = Schema.Union([
406
+ Schema.Struct({
407
+ ...commandFields,
408
+ mutationSequence: boundedInt(1, MAX_TERMINAL_MUTATION_SEQUENCE),
409
+ operation: Schema.Literals([
410
+ "close",
411
+ "controller.acquire",
412
+ "controller.release",
413
+ "controller.renew",
414
+ "controller.request",
415
+ "create",
416
+ "delete",
417
+ "resize",
418
+ "signal",
419
+ "write",
420
+ ]),
421
+ terminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
422
+ ...terminalFields,
423
+ }),
424
+ Schema.Struct({
425
+ ...commandFields,
426
+ mutationSequence: boundedInt(1, MAX_TERMINAL_MUTATION_SEQUENCE),
427
+ operation: Schema.Literal("restart"),
428
+ plannedTargetTerminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
429
+ sourceTerminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
430
+ ...terminalFields,
431
+ }).check(Schema.makeFilter((value) => value.sourceTerminalGeneration < MAX_TERMINAL_GENERATION &&
432
+ value.plannedTargetTerminalGeneration ===
433
+ value.sourceTerminalGeneration + 1, { expected: "a restart reconciliation for the planned next generation" })),
434
+ ]);
435
+ const sha256EffectSchema = Schema.String.check(Schema.isBetweenLength(64, 64), Schema.isPattern(/^[a-f0-9]{64}$/u));
436
+ const mutationReceiptFields = {
437
+ actorId: Schema.Literal("actor_local_user"),
438
+ capability: liveTerminalExecutionCapabilityEffectSchema,
439
+ commandId: protocolIdentifierEffectSchema,
440
+ delivery: Schema.Literals(["duplicate", "new"]),
441
+ mutationSequence: boundedInt(1, MAX_TERMINAL_MUTATION_SEQUENCE),
442
+ receiptId: protocolIdentifierEffectSchema,
443
+ recordedAt: recordedAtEffectSchema,
444
+ schemaVersion: Schema.Literal(LIVE_TERMINAL_MUTATION_SCHEMA_VERSION),
445
+ terminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
446
+ terminalId: protocolIdentifierEffectSchema,
447
+ terminalRevision: aggregateRevisionEffectSchema,
448
+ };
449
+ const nonNativeReceipt = (method, operation) => Schema.Struct({
450
+ ...mutationReceiptFields,
451
+ method: Schema.Literal(method),
452
+ nativeAcknowledgement: Schema.Struct({
453
+ fact: Schema.Literal("not_applicable"),
454
+ }),
455
+ operation: Schema.Literal(operation),
456
+ });
457
+ const restartMutationReceiptEffectSchema = Schema.Struct({
458
+ ...mutationReceiptFields,
459
+ method: Schema.Literal("terminal.session.restart"),
460
+ nativeAcknowledgement: Schema.Struct({
461
+ fact: Schema.Literal("generation_started"),
462
+ previousCleanup: Schema.Literal("known_identity_members_complete"),
463
+ }),
464
+ operation: Schema.Literal("restart"),
465
+ sourceTerminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
466
+ }).check(Schema.makeFilter((value) => value.sourceTerminalGeneration < MAX_TERMINAL_GENERATION &&
467
+ value.terminalGeneration === value.sourceTerminalGeneration + 1, { expected: "a restart receipt for the exact next generation" }));
468
+ export const liveTerminalMutationReceiptEffectSchema = Schema.Union([
469
+ Schema.Struct({
470
+ ...mutationReceiptFields,
471
+ ...nativeSequenceFields,
472
+ method: Schema.Literal("terminal.create"),
473
+ nativeAcknowledgement: Schema.Struct({
474
+ fact: Schema.Literal("generation_started"),
475
+ }),
476
+ operation: Schema.Literal("create"),
477
+ }),
478
+ nonNativeReceipt("terminal.controller.request", "controller.request"),
479
+ nonNativeReceipt("terminal.controller.acquire", "controller.acquire"),
480
+ nonNativeReceipt("terminal.controller.renew", "controller.renew"),
481
+ nonNativeReceipt("terminal.controller.release", "controller.release"),
482
+ Schema.Struct({
483
+ ...mutationReceiptFields,
484
+ ...nativeSequenceFields,
485
+ method: Schema.Literal("terminal.input.write"),
486
+ nativeAcknowledgement: Schema.Struct({
487
+ acceptedBytes: boundedInt(1, MAX_TERMINAL_INPUT_CHUNK_BYTES),
488
+ byteLength: boundedInt(1, MAX_TERMINAL_INPUT_CHUNK_BYTES),
489
+ fact: Schema.Literal("pty_master_all_bytes_accepted"),
490
+ inputId: protocolIdentifierEffectSchema,
491
+ inputSequence: boundedInt(1, MAX_TERMINAL_INPUT_SEQUENCE),
492
+ sha256: sha256EffectSchema,
493
+ }),
494
+ operation: Schema.Literal("write"),
495
+ }),
496
+ Schema.Struct({
497
+ ...mutationReceiptFields,
498
+ ...nativeSequenceFields,
499
+ method: Schema.Literal("terminal.session.resize"),
500
+ nativeAcknowledgement: Schema.Struct({
501
+ ...viewportFields,
502
+ fact: Schema.Literal("tiocswinsz_succeeded"),
503
+ }),
504
+ operation: Schema.Literal("resize"),
505
+ }),
506
+ Schema.Struct({
507
+ ...mutationReceiptFields,
508
+ ...nativeSequenceFields,
509
+ method: Schema.Literal("terminal.session.signal"),
510
+ nativeAcknowledgement: Schema.Struct({
511
+ fact: Schema.Literal("tiocsig_succeeded"),
512
+ signal: Schema.Literals(["hangup", "interrupt", "terminate"]),
513
+ }),
514
+ operation: Schema.Literal("signal"),
515
+ }),
516
+ Schema.Struct({
517
+ ...mutationReceiptFields,
518
+ ...nativeSequenceFields,
519
+ method: Schema.Literal("terminal.session.close"),
520
+ nativeAcknowledgement: Schema.Struct({
521
+ fact: Schema.Literal("known_identity_members_complete"),
522
+ unknownSurvivorExclusion: Schema.Literal("unavailable"),
523
+ }),
524
+ operation: Schema.Literal("close"),
525
+ }),
526
+ restartMutationReceiptEffectSchema,
527
+ nonNativeReceipt("terminal.session.delete", "delete"),
528
+ ]);
529
+ const outcomeUnknownFields = {
530
+ capability: liveTerminalExecutionCapabilityEffectSchema,
531
+ commandId: protocolIdentifierEffectSchema,
532
+ mutationSequence: boundedInt(1, MAX_TERMINAL_MUTATION_SEQUENCE),
533
+ outcome: Schema.Literal("outcome_unknown"),
534
+ reconciliation: Schema.Literal("terminal.mutation.reconcile-required"),
535
+ replay: Schema.Literal("forbidden"),
536
+ terminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
537
+ terminalId: protocolIdentifierEffectSchema,
538
+ };
539
+ const unknownMutation = (method, operation) => Schema.Struct({
540
+ ...outcomeUnknownFields,
541
+ method: Schema.Literal(method),
542
+ operation: Schema.Literal(operation),
543
+ });
544
+ const nativeUnknownMutation = (method, operation) => Schema.Struct({
545
+ ...outcomeUnknownFields,
546
+ ...nativeSequenceFields,
547
+ method: Schema.Literal(method),
548
+ operation: Schema.Literal(operation),
549
+ });
550
+ const unknownWriteEffectSchema = Schema.Struct({
551
+ ...outcomeUnknownFields,
552
+ ...nativeSequenceFields,
553
+ byteLength: boundedInt(1, MAX_TERMINAL_INPUT_CHUNK_BYTES),
554
+ inputId: protocolIdentifierEffectSchema,
555
+ inputSequence: boundedInt(1, MAX_TERMINAL_INPUT_SEQUENCE),
556
+ method: Schema.Literal("terminal.input.write"),
557
+ operation: Schema.Literal("write"),
558
+ sha256: sha256EffectSchema,
559
+ });
560
+ const restartUnknownBaseFields = {
561
+ capability: liveTerminalExecutionCapabilityEffectSchema,
562
+ commandId: protocolIdentifierEffectSchema,
563
+ method: Schema.Literal("terminal.session.restart"),
564
+ mutationSequence: boundedInt(1, MAX_TERMINAL_MUTATION_SEQUENCE),
565
+ operation: Schema.Literal("restart"),
566
+ outcome: Schema.Literal("outcome_unknown"),
567
+ plannedTargetTerminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
568
+ reconciliation: Schema.Literal("terminal.mutation.reconcile-required"),
569
+ replay: Schema.Literal("forbidden"),
570
+ sourceTerminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
571
+ terminal: liveTerminalSessionEffectSchema,
572
+ terminalId: protocolIdentifierEffectSchema,
573
+ };
574
+ const liveTerminalRestartOutcomeUnknownEffectSchema = Schema.Union([
575
+ Schema.Struct({
576
+ ...restartUnknownBaseFields,
577
+ effectPhase: Schema.Literal("source-cleanup"),
578
+ targetAttempt: Schema.Literal("not-attempted"),
579
+ }),
580
+ Schema.Struct({
581
+ ...restartUnknownBaseFields,
582
+ effectPhase: Schema.Literal("target-start"),
583
+ targetAttempt: Schema.Literals(["attempted", "may-have-been-attempted"]),
584
+ }),
585
+ ]).check(Schema.makeFilter((value) => value.sourceTerminalGeneration < MAX_TERMINAL_GENERATION &&
586
+ value.plannedTargetTerminalGeneration ===
587
+ value.sourceTerminalGeneration + 1 &&
588
+ value.terminal.id === value.terminalId &&
589
+ value.terminal.state === "disconnected" &&
590
+ value.terminal.cleanup.state === "unknown" &&
591
+ (value.effectPhase === "source-cleanup"
592
+ ? value.terminal.generation === value.sourceTerminalGeneration
593
+ : value.terminal.generation === value.plannedTargetTerminalGeneration &&
594
+ value.terminal.cleanup.reason === "native_acknowledgement_lost"), { expected: "a phase-exact unknown restart generation projection" }));
595
+ export const liveTerminalMutationOutcomeUnknownEffectSchema = Schema.Union([
596
+ nativeUnknownMutation("terminal.create", "create"),
597
+ unknownMutation("terminal.controller.request", "controller.request"),
598
+ unknownMutation("terminal.controller.acquire", "controller.acquire"),
599
+ unknownMutation("terminal.controller.renew", "controller.renew"),
600
+ unknownMutation("terminal.controller.release", "controller.release"),
601
+ unknownWriteEffectSchema,
602
+ nativeUnknownMutation("terminal.session.resize", "resize"),
603
+ nativeUnknownMutation("terminal.session.signal", "signal"),
604
+ nativeUnknownMutation("terminal.session.close", "close"),
605
+ liveTerminalRestartOutcomeUnknownEffectSchema,
606
+ unknownMutation("terminal.session.delete", "delete"),
607
+ ]);
608
+ const acknowledged = (fields) => Schema.Struct({
609
+ ...fields,
610
+ outcome: Schema.Literal("acknowledged"),
611
+ receipt: liveTerminalMutationReceiptEffectSchema,
612
+ });
613
+ const liveTerminalCreateAcknowledgedResultEffectSchema = acknowledged({
614
+ accepted: Schema.Literal(true),
615
+ delivery: Schema.Literals(["duplicate", "new"]),
616
+ method: Schema.Literal("terminal.create"),
617
+ terminal: liveTerminalSessionEffectSchema,
618
+ }).check(Schema.makeFilter((value) => value.delivery === value.receipt.delivery &&
619
+ value.receipt.method === value.method &&
620
+ value.receipt.operation === "create" &&
621
+ value.receipt.terminalGeneration === value.terminal.generation &&
622
+ value.receipt.terminalId === value.terminal.id &&
623
+ value.receipt.terminalRevision === value.terminal.revision, { expected: "an acknowledged terminal creation matching its receipt" }));
624
+ export const liveTerminalCreateResultEffectSchema = Schema.Union([
625
+ liveTerminalCreateAcknowledgedResultEffectSchema,
626
+ nativeUnknownMutation("terminal.create", "create"),
627
+ ]);
628
+ const liveTerminalControllerRequestAcknowledgedResultEffectSchema = acknowledged({
629
+ controllerRequest: liveTerminalControllerRequestEffectSchema,
630
+ method: Schema.Literal("terminal.controller.request"),
631
+ }).check(Schema.makeFilter((value) => value.receipt.method === value.method &&
632
+ value.receipt.operation === "controller.request" &&
633
+ value.receipt.terminalGeneration ===
634
+ value.controllerRequest.terminalGeneration &&
635
+ value.receipt.terminalId === value.controllerRequest.terminalId, { expected: "a controller request matching its mutation receipt" }));
636
+ export const liveTerminalControllerRequestResultEffectSchema = Schema.Union([
637
+ liveTerminalControllerRequestAcknowledgedResultEffectSchema,
638
+ unknownMutation("terminal.controller.request", "controller.request"),
639
+ ]);
640
+ const controllerLeaseResult = (method, operation) => Schema.Union([
641
+ acknowledged({
642
+ lease: liveTerminalControllerLeaseEffectSchema,
643
+ method: Schema.Literal(method),
644
+ }).check(Schema.makeFilter((value) => value.receipt.method === value.method &&
645
+ value.receipt.operation === operation &&
646
+ value.receipt.terminalGeneration === value.lease.terminalGeneration &&
647
+ value.receipt.terminalId === value.lease.terminalId, { expected: `a ${operation} lease matching its mutation receipt` })),
648
+ unknownMutation(method, operation),
649
+ ]);
650
+ export const liveTerminalControllerAcquireResultEffectSchema = controllerLeaseResult("terminal.controller.acquire", "controller.acquire");
651
+ export const liveTerminalControllerRenewResultEffectSchema = controllerLeaseResult("terminal.controller.renew", "controller.renew");
652
+ export const liveTerminalControllerReleaseResultEffectSchema = controllerLeaseResult("terminal.controller.release", "controller.release");
653
+ const liveTerminalWriteAcknowledgedResultEffectSchema = acknowledged({
654
+ acceptedBytes: boundedInt(1, MAX_TERMINAL_INPUT_CHUNK_BYTES),
655
+ inputId: protocolIdentifierEffectSchema,
656
+ inputSequence: boundedInt(1, MAX_TERMINAL_INPUT_SEQUENCE),
657
+ method: Schema.Literal("terminal.input.write"),
658
+ terminal: liveTerminalSessionEffectSchema,
659
+ }).check(Schema.makeFilter((value) => value.receipt.method === value.method &&
660
+ value.receipt.operation === "write" &&
661
+ value.receipt.terminalGeneration === value.terminal.generation &&
662
+ value.receipt.terminalId === value.terminal.id &&
663
+ value.receipt.terminalRevision === value.terminal.revision &&
664
+ value.receipt.nativeAcknowledgement.fact ===
665
+ "pty_master_all_bytes_accepted" &&
666
+ value.receipt.nativeAcknowledgement.acceptedBytes ===
667
+ value.acceptedBytes &&
668
+ value.receipt.nativeAcknowledgement.byteLength === value.acceptedBytes &&
669
+ value.receipt.nativeAcknowledgement.inputId === value.inputId &&
670
+ value.receipt.nativeAcknowledgement.inputSequence === value.inputSequence, { expected: "a terminal write matching its native acknowledgement" }));
671
+ export const liveTerminalWriteResultEffectSchema = Schema.Union([
672
+ liveTerminalWriteAcknowledgedResultEffectSchema,
673
+ unknownWriteEffectSchema,
674
+ ]);
675
+ const sessionMutationResult = (method, operation) => Schema.Union([
676
+ acknowledged({
677
+ method: Schema.Literal(method),
678
+ terminal: liveTerminalSessionEffectSchema,
679
+ }).check(Schema.makeFilter((value) => value.receipt.method === value.method &&
680
+ value.receipt.operation === operation &&
681
+ value.receipt.terminalGeneration === value.terminal.generation &&
682
+ value.receipt.terminalId === value.terminal.id &&
683
+ value.receipt.terminalRevision === value.terminal.revision, { expected: `a ${operation} terminal matching its mutation receipt` })),
684
+ nativeUnknownMutation(method, operation),
685
+ ]);
686
+ export const liveTerminalResizeResultEffectSchema = sessionMutationResult("terminal.session.resize", "resize");
687
+ export const liveTerminalSignalResultEffectSchema = sessionMutationResult("terminal.session.signal", "signal");
688
+ export const liveTerminalCloseResultEffectSchema = sessionMutationResult("terminal.session.close", "close");
689
+ const liveTerminalRestartAcknowledgedResultEffectSchema = acknowledged({
690
+ method: Schema.Literal("terminal.session.restart"),
691
+ terminal: liveTerminalSessionEffectSchema,
692
+ }).check(Schema.makeFilter((value) => value.receipt.method === value.method &&
693
+ value.receipt.operation === "restart" &&
694
+ value.receipt.terminalGeneration === value.terminal.generation &&
695
+ value.receipt.terminalId === value.terminal.id &&
696
+ value.receipt.terminalRevision === value.terminal.revision &&
697
+ value.receipt.sourceTerminalGeneration < MAX_TERMINAL_GENERATION &&
698
+ value.terminal.generation === value.receipt.sourceTerminalGeneration + 1, { expected: "a restart terminal matching its source and target receipt" }));
699
+ export const liveTerminalRestartResultEffectSchema = Schema.Union([
700
+ liveTerminalRestartAcknowledgedResultEffectSchema,
701
+ liveTerminalRestartOutcomeUnknownEffectSchema,
702
+ ]);
703
+ export const liveTerminalDeleteResultEffectSchema = Schema.Union([
704
+ acknowledged({
705
+ capability: liveTerminalExecutionCapabilityEffectSchema,
706
+ deletedAt: recordedAtEffectSchema,
707
+ method: Schema.Literal("terminal.session.delete"),
708
+ terminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
709
+ terminalId: protocolIdentifierEffectSchema,
710
+ }).check(Schema.makeFilter((value) => value.receipt.method === value.method &&
711
+ value.receipt.operation === "delete" &&
712
+ value.receipt.terminalGeneration === value.terminalGeneration &&
713
+ value.receipt.terminalId === value.terminalId, { expected: "a terminal deletion matching its mutation receipt" })),
714
+ unknownMutation("terminal.session.delete", "delete"),
715
+ ]);
716
+ export const liveTerminalObserverAttachResultEffectSchema = Schema.Struct({
717
+ attachId: protocolIdentifierEffectSchema,
718
+ capability: liveTerminalExecutionCapabilityEffectSchema,
719
+ delivery: Schema.Literals(["duplicate", "new"]),
720
+ expiresAt: recordedAtEffectSchema,
721
+ method: Schema.Literal("terminal.observer.attach"),
722
+ observerId: protocolIdentifierEffectSchema,
723
+ renewal: Schema.Literal("successful-check-renews"),
724
+ snapshot: liveTerminalObserverSnapshotEffectSchema,
725
+ terminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
726
+ }).check(Schema.makeFilter((value) => value.attachId === value.observerId &&
727
+ value.terminalGeneration === value.snapshot.terminal.generation, {
728
+ expected: "an idempotent observer attachment matching its terminal generation",
729
+ }));
730
+ export const liveTerminalObserverCheckResultEffectSchema = Schema.Struct({
731
+ capability: liveTerminalExecutionCapabilityEffectSchema,
732
+ events: Schema.Array(liveTerminalObserverEventEffectSchema).check(Schema.isMaxLength(MAX_TERMINAL_OBSERVER_CHECK_EVENTS)),
733
+ headCursor: aggregateRevisionEffectSchema,
734
+ leaseExpiresAt: recordedAtEffectSchema,
735
+ method: Schema.Literal("terminal.observer.check"),
736
+ observerId: protocolIdentifierEffectSchema,
737
+ renewal: Schema.Literal("successful-check-renewed"),
738
+ terminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
739
+ terminalId: protocolIdentifierEffectSchema,
740
+ timedOut: Schema.Boolean,
741
+ }).check(Schema.makeFilter((value) => value.events.every((event) => event.terminalId === value.terminalId &&
742
+ event.capability.revocationPolicyRevision ===
743
+ value.capability.revocationPolicyRevision) &&
744
+ !(value.timedOut && value.events.length > 0) &&
745
+ encodedJsonBytes(value) <= MAX_TERMINAL_OBSERVER_CHECK_RESPONSE_BYTES, { expected: "a terminal observer check within its response byte cap" }));
746
+ export const liveTerminalObserverDetachResultEffectSchema = Schema.Struct({
747
+ capability: liveTerminalExecutionCapabilityEffectSchema,
748
+ detached: Schema.Literal(true),
749
+ method: Schema.Literal("terminal.observer.detach"),
750
+ observerId: protocolIdentifierEffectSchema,
751
+ terminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
752
+ terminalId: protocolIdentifierEffectSchema,
753
+ });
754
+ export const liveTerminalObserverResyncResultEffectSchema = Schema.Struct({
755
+ method: Schema.Literal("terminal.observer.resync"),
756
+ snapshot: liveTerminalObserverSnapshotEffectSchema,
757
+ });
758
+ export const liveTerminalControllerRequestShowResultEffectSchema = Schema.Struct({
759
+ controllerRequest: liveTerminalControllerRequestEffectSchema,
760
+ method: Schema.Literal("terminal.controller.request.show"),
761
+ });
762
+ const reconciliationIdentityFields = {
763
+ commandId: protocolIdentifierEffectSchema,
764
+ mutationSequence: boundedInt(1, MAX_TERMINAL_MUTATION_SEQUENCE),
765
+ operation: Schema.Literals([
766
+ "close",
767
+ "controller.acquire",
768
+ "controller.release",
769
+ "controller.renew",
770
+ "controller.request",
771
+ "create",
772
+ "delete",
773
+ "resize",
774
+ "signal",
775
+ "write",
776
+ ]),
777
+ originalReplay: Schema.Literal("forbidden"),
778
+ terminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
779
+ terminalId: protocolIdentifierEffectSchema,
780
+ };
781
+ const liveTerminalOrdinaryReconcileResultEffectSchema = Schema.Union([
782
+ Schema.Struct({
783
+ checkedAt: recordedAtEffectSchema,
784
+ ...reconciliationIdentityFields,
785
+ method: Schema.Literal("terminal.mutation.reconcile"),
786
+ next: Schema.Literal("new-mutation-only"),
787
+ receipt: liveTerminalMutationReceiptEffectSchema,
788
+ state: Schema.Literal("acknowledged"),
789
+ terminal: liveTerminalSessionEffectSchema,
790
+ }),
791
+ Schema.Struct({
792
+ checkedAt: recordedAtEffectSchema,
793
+ ...reconciliationIdentityFields,
794
+ method: Schema.Literal("terminal.mutation.reconcile"),
795
+ next: Schema.Literal("new-mutation-only"),
796
+ receipt: Schema.Literal("not_found"),
797
+ state: Schema.Literal("not_found"),
798
+ terminal: liveTerminalSessionEffectSchema,
799
+ }),
800
+ Schema.Struct({
801
+ checkedAt: recordedAtEffectSchema,
802
+ ...reconciliationIdentityFields,
803
+ method: Schema.Literal("terminal.mutation.reconcile"),
804
+ next: Schema.Literal("reconcile-again"),
805
+ receipt: Schema.Literal("unknown"),
806
+ state: Schema.Literal("still_unknown"),
807
+ terminal: liveTerminalSessionEffectSchema,
808
+ }),
809
+ ]).check(Schema.makeFilter((value) => value.terminal.id === value.terminalId &&
810
+ value.terminal.generation >= value.terminalGeneration &&
811
+ (value.state !== "acknowledged" ||
812
+ (value.receipt.commandId === value.commandId &&
813
+ value.receipt.operation === value.operation &&
814
+ value.receipt.mutationSequence === value.mutationSequence &&
815
+ value.receipt.terminalGeneration === value.terminalGeneration &&
816
+ value.receipt.terminalId === value.terminalId)), { expected: "an exact terminal mutation reconciliation identity" }));
817
+ const restartReconciliationIdentityFields = {
818
+ checkedAt: recordedAtEffectSchema,
819
+ commandId: protocolIdentifierEffectSchema,
820
+ method: Schema.Literal("terminal.mutation.reconcile"),
821
+ mutationSequence: boundedInt(1, MAX_TERMINAL_MUTATION_SEQUENCE),
822
+ operation: Schema.Literal("restart"),
823
+ originalReplay: Schema.Literal("forbidden"),
824
+ plannedTargetTerminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
825
+ sourceTerminalGeneration: boundedInt(1, MAX_TERMINAL_GENERATION),
826
+ terminal: liveTerminalSessionEffectSchema,
827
+ terminalId: protocolIdentifierEffectSchema,
828
+ };
829
+ const liveTerminalRestartReconcileResultStructEffectSchema = Schema.Union([
830
+ Schema.Struct({
831
+ ...restartReconciliationIdentityFields,
832
+ effectPhase: Schema.Literal("not-found"),
833
+ next: Schema.Literal("new-mutation-only"),
834
+ receipt: Schema.Literal("not_found"),
835
+ state: Schema.Literal("not_found"),
836
+ targetAttempt: Schema.Literal("unknown"),
837
+ }),
838
+ Schema.Struct({
839
+ ...restartReconciliationIdentityFields,
840
+ effectPhase: Schema.Literal("target-start"),
841
+ next: Schema.Literal("new-mutation-only"),
842
+ receipt: restartMutationReceiptEffectSchema,
843
+ state: Schema.Literal("acknowledged"),
844
+ targetAttempt: Schema.Literal("attempted"),
845
+ }),
846
+ Schema.Struct({
847
+ ...restartReconciliationIdentityFields,
848
+ effectPhase: Schema.Literal("source-cleanup"),
849
+ next: Schema.Literal("reconcile-again"),
850
+ receipt: Schema.Literal("unknown"),
851
+ state: Schema.Literal("still_unknown"),
852
+ targetAttempt: Schema.Literal("not-attempted"),
853
+ }),
854
+ Schema.Struct({
855
+ ...restartReconciliationIdentityFields,
856
+ effectPhase: Schema.Literal("target-start"),
857
+ next: Schema.Literal("reconcile-again"),
858
+ receipt: Schema.Literal("unknown"),
859
+ state: Schema.Literal("still_unknown"),
860
+ targetAttempt: Schema.Literals(["attempted", "may-have-been-attempted"]),
861
+ }),
862
+ ]);
863
+ const restartAcknowledgementMatches = (value) => value.receipt.commandId === value.commandId &&
864
+ value.receipt.mutationSequence === value.mutationSequence &&
865
+ value.receipt.sourceTerminalGeneration === value.sourceTerminalGeneration &&
866
+ value.receipt.terminalGeneration === value.plannedTargetTerminalGeneration &&
867
+ value.receipt.terminalId === value.terminalId &&
868
+ value.terminal.generation >= value.plannedTargetTerminalGeneration;
869
+ const restartUnknownProjectionMatches = (value) => {
870
+ if (value.terminal.state !== "disconnected")
871
+ return false;
872
+ if (value.effectPhase === "source-cleanup") {
873
+ return value.terminal.generation === value.sourceTerminalGeneration;
874
+ }
875
+ return (value.terminal.generation === value.plannedTargetTerminalGeneration &&
876
+ value.terminal.cleanup.reason === "native_acknowledgement_lost");
877
+ };
878
+ const restartReconciliationIsAdmitted = (value) => {
879
+ if (value.sourceTerminalGeneration >= MAX_TERMINAL_GENERATION ||
880
+ value.plannedTargetTerminalGeneration !==
881
+ value.sourceTerminalGeneration + 1 ||
882
+ value.terminal.id !== value.terminalId) {
883
+ return false;
884
+ }
885
+ if (value.state === "acknowledged") {
886
+ return restartAcknowledgementMatches(value);
887
+ }
888
+ if (value.state === "not_found") {
889
+ return value.terminal.generation >= value.sourceTerminalGeneration;
890
+ }
891
+ return restartUnknownProjectionMatches(value);
892
+ };
893
+ const liveTerminalRestartReconcileResultEffectSchema = liveTerminalRestartReconcileResultStructEffectSchema.check(Schema.makeFilter(restartReconciliationIsAdmitted, {
894
+ expected: "a phase-exact restart reconciliation identity",
895
+ }));
896
+ export const liveTerminalReconcileResultEffectSchema = Schema.Union([
897
+ liveTerminalOrdinaryReconcileResultEffectSchema,
898
+ liveTerminalRestartReconcileResultEffectSchema,
899
+ ]);
900
+ export const liveTerminalRequestPayloadEffectSchema = Schema.Union([
901
+ Schema.Struct({
902
+ method: Schema.Literal("terminal.observer.attach"),
903
+ parameters: liveTerminalObserverAttachParametersEffectSchema,
904
+ }),
905
+ Schema.Struct({
906
+ method: Schema.Literal("terminal.observer.check"),
907
+ parameters: liveTerminalObserverCheckParametersEffectSchema,
908
+ }),
909
+ Schema.Struct({
910
+ method: Schema.Literal("terminal.observer.detach"),
911
+ parameters: liveTerminalObserverDetachParametersEffectSchema,
912
+ }),
913
+ Schema.Struct({
914
+ method: Schema.Literal("terminal.observer.resync"),
915
+ parameters: liveTerminalObserverResyncParametersEffectSchema,
916
+ }),
917
+ Schema.Struct({
918
+ method: Schema.Literal("terminal.controller.request"),
919
+ parameters: liveTerminalControllerRequestParametersEffectSchema,
920
+ }),
921
+ Schema.Struct({
922
+ method: Schema.Literal("terminal.controller.request.show"),
923
+ parameters: liveTerminalControllerRequestShowParametersEffectSchema,
924
+ }),
925
+ Schema.Struct({
926
+ method: Schema.Literal("terminal.controller.acquire"),
927
+ parameters: liveTerminalControllerAcquireParametersEffectSchema,
928
+ }),
929
+ Schema.Struct({
930
+ method: Schema.Literal("terminal.controller.renew"),
931
+ parameters: liveTerminalControllerRenewParametersEffectSchema,
932
+ }),
933
+ Schema.Struct({
934
+ method: Schema.Literal("terminal.controller.release"),
935
+ parameters: liveTerminalControllerReleaseParametersEffectSchema,
936
+ }),
937
+ Schema.Struct({
938
+ method: Schema.Literal("terminal.input.write"),
939
+ parameters: liveTerminalWriteParametersEffectSchema,
940
+ }),
941
+ Schema.Struct({
942
+ method: Schema.Literal("terminal.session.resize"),
943
+ parameters: liveTerminalResizeParametersEffectSchema,
944
+ }),
945
+ Schema.Struct({
946
+ method: Schema.Literal("terminal.session.signal"),
947
+ parameters: liveTerminalSignalParametersEffectSchema,
948
+ }),
949
+ Schema.Struct({
950
+ method: Schema.Literal("terminal.session.close"),
951
+ parameters: liveTerminalCloseParametersEffectSchema,
952
+ }),
953
+ Schema.Struct({
954
+ method: Schema.Literal("terminal.session.restart"),
955
+ parameters: liveTerminalRestartParametersEffectSchema,
956
+ }),
957
+ Schema.Struct({
958
+ method: Schema.Literal("terminal.session.delete"),
959
+ parameters: liveTerminalDeleteParametersEffectSchema,
960
+ }),
961
+ Schema.Struct({
962
+ method: Schema.Literal("terminal.mutation.reconcile"),
963
+ parameters: liveTerminalReconcileParametersEffectSchema,
964
+ }),
965
+ ]);
966
+ export const liveTerminalSuccessResultEffectSchema = Schema.Union([
967
+ liveTerminalCreateResultEffectSchema,
968
+ liveTerminalObserverAttachResultEffectSchema,
969
+ liveTerminalObserverCheckResultEffectSchema,
970
+ liveTerminalObserverDetachResultEffectSchema,
971
+ liveTerminalObserverResyncResultEffectSchema,
972
+ liveTerminalControllerRequestResultEffectSchema,
973
+ liveTerminalControllerRequestShowResultEffectSchema,
974
+ liveTerminalControllerAcquireResultEffectSchema,
975
+ liveTerminalControllerRenewResultEffectSchema,
976
+ liveTerminalControllerReleaseResultEffectSchema,
977
+ liveTerminalWriteResultEffectSchema,
978
+ liveTerminalResizeResultEffectSchema,
979
+ liveTerminalSignalResultEffectSchema,
980
+ liveTerminalCloseResultEffectSchema,
981
+ liveTerminalRestartResultEffectSchema,
982
+ liveTerminalDeleteResultEffectSchema,
983
+ liveTerminalReconcileResultEffectSchema,
984
+ ]);
985
+ //# sourceMappingURL=live-effect-schema.js.map