@kortix/sdk 0.11.0 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (194) hide show
  1. package/README.md +110 -73
  2. package/dist/browser/cache/idb-sync-cache-key.d.ts +2 -0
  3. package/dist/browser/cache/idb-sync-cache-key.d.ts.map +1 -0
  4. package/dist/browser/cache/idb-sync-cache-key.js +7 -0
  5. package/dist/browser/cache/idb-sync-cache-key.js.map +1 -0
  6. package/dist/browser/cache/idb-sync-cache.d.ts +3 -3
  7. package/dist/browser/cache/idb-sync-cache.d.ts.map +1 -1
  8. package/dist/browser/cache/idb-sync-cache.js +49 -26
  9. package/dist/browser/cache/idb-sync-cache.js.map +1 -1
  10. package/dist/browser/session-sync/session-cache-ownership.d.ts +36 -0
  11. package/dist/browser/session-sync/session-cache-ownership.d.ts.map +1 -0
  12. package/dist/browser/session-sync/session-cache-ownership.js +66 -0
  13. package/dist/browser/session-sync/session-cache-ownership.js.map +1 -0
  14. package/dist/browser/session-sync/session-sync-registry.d.ts +8 -6
  15. package/dist/browser/session-sync/session-sync-registry.d.ts.map +1 -1
  16. package/dist/browser/session-sync/session-sync-registry.js +86 -33
  17. package/dist/browser/session-sync/session-sync-registry.js.map +1 -1
  18. package/dist/browser/session-sync/session-transcript-cache.d.ts +55 -0
  19. package/dist/browser/session-sync/session-transcript-cache.d.ts.map +1 -0
  20. package/dist/browser/session-sync/session-transcript-cache.js +69 -0
  21. package/dist/browser/session-sync/session-transcript-cache.js.map +1 -0
  22. package/dist/core/client/kortix.d.ts +72 -25
  23. package/dist/core/client/kortix.d.ts.map +1 -1
  24. package/dist/core/client/kortix.js +76 -17
  25. package/dist/core/client/kortix.js.map +1 -1
  26. package/dist/core/rest/platform-client/host-boundary.d.ts +7 -0
  27. package/dist/core/rest/platform-client/host-boundary.d.ts.map +1 -1
  28. package/dist/core/rest/platform-client/host-boundary.js +14 -0
  29. package/dist/core/rest/platform-client/host-boundary.js.map +1 -1
  30. package/dist/core/rest/projects-client/access.d.ts +1 -2
  31. package/dist/core/rest/projects-client/access.d.ts.map +1 -1
  32. package/dist/core/rest/projects-client/access.js +9 -6
  33. package/dist/core/rest/projects-client/access.js.map +1 -1
  34. package/dist/core/rest/projects-client/agent-config.d.ts +15 -7
  35. package/dist/core/rest/projects-client/agent-config.d.ts.map +1 -1
  36. package/dist/core/rest/projects-client/agent-config.js +43 -2
  37. package/dist/core/rest/projects-client/agent-config.js.map +1 -1
  38. package/dist/core/rest/projects-client/agent-scope.d.ts +4 -0
  39. package/dist/core/rest/projects-client/agent-scope.d.ts.map +1 -1
  40. package/dist/core/rest/projects-client/agent-scope.js +34 -1
  41. package/dist/core/rest/projects-client/agent-scope.js.map +1 -1
  42. package/dist/core/rest/projects-client/audit.d.ts +34 -0
  43. package/dist/core/rest/projects-client/audit.d.ts.map +1 -1
  44. package/dist/core/rest/projects-client/audit.js +49 -4
  45. package/dist/core/rest/projects-client/audit.js.map +1 -1
  46. package/dist/core/rest/projects-client/billing.d.ts +26 -14
  47. package/dist/core/rest/projects-client/billing.d.ts.map +1 -1
  48. package/dist/core/rest/projects-client/billing.js +4 -5
  49. package/dist/core/rest/projects-client/billing.js.map +1 -1
  50. package/dist/core/rest/projects-client/connectors.d.ts +106 -45
  51. package/dist/core/rest/projects-client/connectors.d.ts.map +1 -1
  52. package/dist/core/rest/projects-client/connectors.js +95 -58
  53. package/dist/core/rest/projects-client/connectors.js.map +1 -1
  54. package/dist/core/rest/projects-client/iam.d.ts +17 -0
  55. package/dist/core/rest/projects-client/iam.d.ts.map +1 -1
  56. package/dist/core/rest/projects-client/iam.js +14 -0
  57. package/dist/core/rest/projects-client/iam.js.map +1 -1
  58. package/dist/core/rest/projects-client/index.d.ts +1 -0
  59. package/dist/core/rest/projects-client/index.d.ts.map +1 -1
  60. package/dist/core/rest/projects-client/index.js +1 -0
  61. package/dist/core/rest/projects-client/index.js.map +1 -1
  62. package/dist/core/rest/projects-client/policies.d.ts +18 -0
  63. package/dist/core/rest/projects-client/policies.d.ts.map +1 -1
  64. package/dist/core/rest/projects-client/policies.js.map +1 -1
  65. package/dist/core/rest/projects-client/projects.d.ts +8 -1
  66. package/dist/core/rest/projects-client/projects.d.ts.map +1 -1
  67. package/dist/core/rest/projects-client/projects.js.map +1 -1
  68. package/dist/core/rest/projects-client/sandbox.d.ts +50 -0
  69. package/dist/core/rest/projects-client/sandbox.d.ts.map +1 -1
  70. package/dist/core/rest/projects-client/sandbox.js.map +1 -1
  71. package/dist/core/rest/projects-client/session-costs.d.ts +102 -0
  72. package/dist/core/rest/projects-client/session-costs.d.ts.map +1 -0
  73. package/dist/core/rest/projects-client/session-costs.js +25 -0
  74. package/dist/core/rest/projects-client/session-costs.js.map +1 -0
  75. package/dist/core/rest/projects-client/session-sandbox.d.ts +0 -2
  76. package/dist/core/rest/projects-client/session-sandbox.d.ts.map +1 -1
  77. package/dist/core/rest/projects-client/session-sandbox.js +1 -10
  78. package/dist/core/rest/projects-client/session-sandbox.js.map +1 -1
  79. package/dist/core/rest/projects-client/sessions.d.ts +80 -44
  80. package/dist/core/rest/projects-client/sessions.d.ts.map +1 -1
  81. package/dist/core/rest/projects-client/sessions.js +9 -15
  82. package/dist/core/rest/projects-client/sessions.js.map +1 -1
  83. package/dist/core/rest/projects-client/setup-links.d.ts +37 -0
  84. package/dist/core/rest/projects-client/setup-links.d.ts.map +1 -1
  85. package/dist/core/rest/projects-client/setup-links.js +11 -0
  86. package/dist/core/rest/projects-client/setup-links.js.map +1 -1
  87. package/dist/core/session/index.d.ts +1 -1
  88. package/dist/core/session/index.d.ts.map +1 -1
  89. package/dist/core/session/index.js +1 -1
  90. package/dist/core/session/index.js.map +1 -1
  91. package/dist/core/session/preview-auth.d.ts +32 -0
  92. package/dist/core/session/preview-auth.d.ts.map +1 -0
  93. package/dist/core/session/preview-auth.js +53 -0
  94. package/dist/core/session/preview-auth.js.map +1 -0
  95. package/dist/core/session/server-store/url-helpers.d.ts.map +1 -1
  96. package/dist/core/session/server-store/url-helpers.js +5 -3
  97. package/dist/core/session/server-store/url-helpers.js.map +1 -1
  98. package/dist/core/session-sync/session-sync-controller.d.ts +12 -1
  99. package/dist/core/session-sync/session-sync-controller.d.ts.map +1 -1
  100. package/dist/core/session-sync/session-sync-controller.js +34 -2
  101. package/dist/core/session-sync/session-sync-controller.js.map +1 -1
  102. package/dist/index.d.ts +1 -2
  103. package/dist/index.d.ts.map +1 -1
  104. package/dist/index.js +0 -1
  105. package/dist/index.js.map +1 -1
  106. package/dist/kortix.esm.min.js +19 -24
  107. package/dist/kortix.global.js +19 -24
  108. package/dist/platform/auth-core.d.ts +5 -3
  109. package/dist/platform/auth-core.d.ts.map +1 -1
  110. package/dist/platform/auth-core.js +6 -4
  111. package/dist/platform/auth-core.js.map +1 -1
  112. package/dist/react/index.d.ts +0 -1
  113. package/dist/react/index.d.ts.map +1 -1
  114. package/dist/react/index.js +0 -1
  115. package/dist/react/index.js.map +1 -1
  116. package/dist/react/model-flatten.d.ts +8 -0
  117. package/dist/react/model-flatten.d.ts.map +1 -1
  118. package/dist/react/model-flatten.js +1 -0
  119. package/dist/react/model-flatten.js.map +1 -1
  120. package/dist/react/opencode.d.ts +1 -1
  121. package/dist/react/opencode.d.ts.map +1 -1
  122. package/dist/react/opencode.js +1 -1
  123. package/dist/react/opencode.js.map +1 -1
  124. package/dist/react/session-title-sync.d.ts +9 -5
  125. package/dist/react/session-title-sync.d.ts.map +1 -1
  126. package/dist/react/session-title-sync.js +14 -10
  127. package/dist/react/session-title-sync.js.map +1 -1
  128. package/dist/react/use-canonical-opencode-session.d.ts +2 -2
  129. package/dist/react/use-canonical-opencode-session.d.ts.map +1 -1
  130. package/dist/react/use-model-store.d.ts +6 -14
  131. package/dist/react/use-model-store.d.ts.map +1 -1
  132. package/dist/react/use-model-store.js +30 -52
  133. package/dist/react/use-model-store.js.map +1 -1
  134. package/dist/react/use-opencode-events/handle-event.d.ts.map +1 -1
  135. package/dist/react/use-opencode-events/handle-event.js +103 -41
  136. package/dist/react/use-opencode-events/handle-event.js.map +1 -1
  137. package/dist/react/use-opencode-sessions/keys.d.ts +3 -1
  138. package/dist/react/use-opencode-sessions/keys.d.ts.map +1 -1
  139. package/dist/react/use-opencode-sessions/keys.js +2 -0
  140. package/dist/react/use-opencode-sessions/keys.js.map +1 -1
  141. package/dist/react/use-opencode-sessions/sessions.d.ts.map +1 -1
  142. package/dist/react/use-opencode-sessions/sessions.js +16 -7
  143. package/dist/react/use-opencode-sessions/sessions.js.map +1 -1
  144. package/dist/react/use-opencode-sessions/shared.d.ts +3 -2
  145. package/dist/react/use-opencode-sessions/shared.d.ts.map +1 -1
  146. package/dist/react/use-opencode-sessions/shared.js +6 -3
  147. package/dist/react/use-opencode-sessions/shared.js.map +1 -1
  148. package/dist/react/use-opencode-sessions/sharing.js +2 -2
  149. package/dist/react/use-opencode-sessions/sharing.js.map +1 -1
  150. package/dist/react/use-session-sync.d.ts +13 -1
  151. package/dist/react/use-session-sync.d.ts.map +1 -1
  152. package/dist/react/use-session-sync.js +85 -17
  153. package/dist/react/use-session-sync.js.map +1 -1
  154. package/dist/react/use-session.d.ts +36 -39
  155. package/dist/react/use-session.d.ts.map +1 -1
  156. package/dist/react/use-session.js +100 -205
  157. package/dist/react/use-session.js.map +1 -1
  158. package/package.json +2 -2
  159. package/dist/core/acp/client.d.ts +0 -45
  160. package/dist/core/acp/client.d.ts.map +0 -1
  161. package/dist/core/acp/client.js +0 -277
  162. package/dist/core/acp/client.js.map +0 -1
  163. package/dist/core/acp/index.d.ts +0 -5
  164. package/dist/core/acp/index.d.ts.map +0 -1
  165. package/dist/core/acp/index.js +0 -5
  166. package/dist/core/acp/index.js.map +0 -1
  167. package/dist/core/acp/projection.d.ts +0 -23
  168. package/dist/core/acp/projection.d.ts.map +0 -1
  169. package/dist/core/acp/projection.js +0 -603
  170. package/dist/core/acp/projection.js.map +0 -1
  171. package/dist/core/acp/session-controller.d.ts +0 -90
  172. package/dist/core/acp/session-controller.d.ts.map +0 -1
  173. package/dist/core/acp/session-controller.js +0 -530
  174. package/dist/core/acp/session-controller.js.map +0 -1
  175. package/dist/core/acp/types.d.ts +0 -66
  176. package/dist/core/acp/types.d.ts.map +0 -1
  177. package/dist/core/acp/types.js +0 -21
  178. package/dist/core/acp/types.js.map +0 -1
  179. package/dist/core/session/runtime-transport.d.ts +0 -16
  180. package/dist/core/session/runtime-transport.d.ts.map +0 -1
  181. package/dist/core/session/runtime-transport.js +0 -30
  182. package/dist/core/session/runtime-transport.js.map +0 -1
  183. package/dist/react/session-busy.d.ts +0 -8
  184. package/dist/react/session-busy.d.ts.map +0 -1
  185. package/dist/react/session-busy.js +0 -4
  186. package/dist/react/session-busy.js.map +0 -1
  187. package/dist/react/use-acp-session-runtime.d.ts +0 -34
  188. package/dist/react/use-acp-session-runtime.d.ts.map +0 -1
  189. package/dist/react/use-acp-session-runtime.js +0 -84
  190. package/dist/react/use-acp-session-runtime.js.map +0 -1
  191. package/dist/react/use-admin-users.d.ts +0 -98
  192. package/dist/react/use-admin-users.d.ts.map +0 -1
  193. package/dist/react/use-admin-users.js +0 -121
  194. package/dist/react/use-admin-users.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"sharing.js","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/sharing.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E,MAAM,UAAU,eAAe;IAC7B,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,OAAO,WAAW,CAAC;QACjB,UAAU,EAAE,KAAK,EAAE,SAAiB,EAAE,EAAE;YACtC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;YACpE,OAAO,MAAM,CAAC,MAAM,CAAY,CAAC;QACnC,CAAC;QACD,SAAS,EAAE,CAAC,cAAc,EAAE,EAAE;YAC5B,0CAA0C;YAC1C,WAAW,CAAC,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC,EAAE,cAAc,CAAC,CAAC;YAClF,WAAW,CAAC,YAAY,CAAY,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE;gBACnE,IAAI,CAAC,GAAG;oBAAE,OAAO,GAAG,CAAC;gBACrB,MAAM,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,cAAc,CAAC,EAAE,CAAC,CAAC;gBAC7D,IAAI,GAAG,GAAG,CAAC;oBAAE,OAAO,GAAG,CAAC;gBACxB,MAAM,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;gBACtB,IAAI,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC;gBAC3B,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,OAAO,WAAW,CAAC;QACjB,UAAU,EAAE,KAAK,EAAE,SAAiB,EAAE,EAAE;YACtC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;YACtE,OAAO,MAAM,CAAC,MAAM,CAAY,CAAC;QACnC,CAAC;QACD,SAAS,EAAE,CAAC,cAAc,EAAE,EAAE;YAC5B,4CAA4C;YAC5C,WAAW,CAAC,YAAY,CAAC,YAAY,CAAC,OAAO,CAAC,cAAc,CAAC,EAAE,CAAC,EAAE,cAAc,CAAC,CAAC;YAClF,WAAW,CAAC,YAAY,CAAY,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE;gBACnE,IAAI,CAAC,GAAG;oBAAE,OAAO,GAAG,CAAC;gBACrB,MAAM,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,cAAc,CAAC,EAAE,CAAC,CAAC;gBAC7D,IAAI,GAAG,GAAG,CAAC;oBAAE,OAAO,GAAG,CAAC;gBACxB,MAAM,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;gBACtB,IAAI,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC;gBAC3B,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"sharing.js","sourceRoot":"","sources":["../../../src/react/use-opencode-sessions/sharing.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,MAAM,2BAA2B,CAAC;AAEtD,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,+EAA+E;AAC/E,wBAAwB;AACxB,+EAA+E;AAE/E,MAAM,UAAU,eAAe;IAC7B,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,OAAO,WAAW,CAAC;QACjB,UAAU,EAAE,KAAK,EAAE,SAAiB,EAAE,EAAE;YACtC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;YACpE,OAAO,MAAM,CAAC,MAAM,CAAY,CAAC;QACnC,CAAC;QACD,SAAS,EAAE,CAAC,cAAc,EAAE,EAAE;YAC5B,0CAA0C;YAC1C,WAAW,CAAC,YAAY,CAAC,YAAY,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,CAAC,EAAE,cAAc,CAAC,CAAC;YACzF,WAAW,CAAC,YAAY,CAAY,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE;gBACnE,IAAI,CAAC,GAAG;oBAAE,OAAO,GAAG,CAAC;gBACrB,MAAM,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,cAAc,CAAC,EAAE,CAAC,CAAC;gBAC7D,IAAI,GAAG,GAAG,CAAC;oBAAE,OAAO,GAAG,CAAC;gBACxB,MAAM,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;gBACtB,IAAI,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC;gBAC3B,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,MAAM,WAAW,GAAG,cAAc,EAAE,CAAC;IAErC,OAAO,WAAW,CAAC;QACjB,UAAU,EAAE,KAAK,EAAE,SAAiB,EAAE,EAAE;YACtC,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC,CAAC;YACtE,OAAO,MAAM,CAAC,MAAM,CAAY,CAAC;QACnC,CAAC;QACD,SAAS,EAAE,CAAC,cAAc,EAAE,EAAE;YAC5B,4CAA4C;YAC5C,WAAW,CAAC,YAAY,CAAC,YAAY,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,CAAC,EAAE,cAAc,CAAC,CAAC;YACzF,WAAW,CAAC,YAAY,CAAY,YAAY,CAAC,QAAQ,EAAE,EAAE,CAAC,GAAG,EAAE,EAAE;gBACnE,IAAI,CAAC,GAAG;oBAAE,OAAO,GAAG,CAAC;gBACrB,MAAM,GAAG,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,cAAc,CAAC,EAAE,CAAC,CAAC;gBAC7D,IAAI,GAAG,GAAG,CAAC;oBAAE,OAAO,GAAG,CAAC;gBACxB,MAAM,IAAI,GAAG,CAAC,GAAG,GAAG,CAAC,CAAC;gBACtB,IAAI,CAAC,GAAG,CAAC,GAAG,cAAc,CAAC;gBAC3B,OAAO,IAAI,CAAC;YACd,CAAC,CAAC,CAAC;QACL,CAAC;KACF,CAAC,CAAC;AACL,CAAC"}
@@ -11,7 +11,19 @@ type FileDiff = Omit<import('@opencode-ai/sdk/v2/client').SnapshotFileDiff, 'pat
11
11
  * Returns the current session tail and explicit history-loading state.
12
12
  * Network synchronization lives in the framework-free SessionSyncController.
13
13
  */
14
- export declare function useSessionSync(sessionId: string): {
14
+ interface UseSessionSyncOptions {
15
+ /**
16
+ * Stable Kortix `(projectId, sessionId)` scope for disk transcript ownership.
17
+ * This prevents equal OpenCode ids in different sandboxes from sharing data.
18
+ */
19
+ kortixSessionScope?: string;
20
+ /**
21
+ * Allow live REST reconciliation against the current runtime.
22
+ * Set false while `/start` has not switched this Kortix session's sandbox.
23
+ */
24
+ networkEnabled?: boolean;
25
+ }
26
+ export declare function useSessionSync(sessionId: string, options?: UseSessionSyncOptions): {
15
27
  messages: MessageWithParts[];
16
28
  status: SessionStatus;
17
29
  freshness: import("../core/session-sync/session-sync-controller.js").SessionSyncFreshness;
@@ -1 +1 @@
1
- {"version":3,"file":"use-session-sync.d.ts","sourceRoot":"","sources":["../../src/react/use-session-sync.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAiB,aAAa,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAErF,OAAO,EAEL,6BAA6B,EAE9B,MAAM,+CAA+C,CAAC;AAEvD,OAAO,EAAE,KAAK,gBAAgB,EAAgB,MAAM,8BAA8B,CAAC;AAGnF,OAAO,EAAE,6BAA6B,EAAE,CAAC;AAEzC,KAAK,QAAQ,GAAG,IAAI,CAAC,OAAO,4BAA4B,EAAE,gBAAgB,EAAE,OAAO,CAAC,GAAG;IACrF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAsDF;;;GAGG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM;;;;;;;;;;;EAoD/C"}
1
+ {"version":3,"file":"use-session-sync.d.ts","sourceRoot":"","sources":["../../src/react/use-session-sync.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAiB,aAAa,EAAE,IAAI,EAAE,MAAM,4BAA4B,CAAC;AAQrF,OAAO,EAEL,6BAA6B,EAG9B,MAAM,+CAA+C,CAAC;AAQvD,OAAO,EAAE,KAAK,gBAAgB,EAAgB,MAAM,8BAA8B,CAAC;AAInF,OAAO,EAAE,6BAA6B,EAAE,CAAC;AAEzC,KAAK,QAAQ,GAAG,IAAI,CAAC,OAAO,4BAA4B,EAAE,gBAAgB,EAAE,OAAO,CAAC,GAAG;IACrF,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAsDF;;;GAGG;AACH,UAAU,qBAAqB;IAC7B;;;OAGG;IACH,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,GAAE,qBAA0B;;;;;;;;;;;EAgIpF"}
@@ -1,8 +1,11 @@
1
1
  'use client';
2
2
  import { useEffect, useSyncExternalStore } from 'react';
3
- import { getSessionSyncController, loadSessionTranscriptMessages, retainSessionSyncController, } from '../browser/session-sync/session-sync-registry.js';
3
+ import { claimSessionCacheOwnership, getSessionCacheOwnership, resolveSessionCacheOwnerScope, sessionCacheOwnerScopesConflict, } from '../browser/session-sync/session-cache-ownership.js';
4
+ import { getSessionSyncController, loadSessionTranscriptMessages, resetSessionSyncControllersForSession, retainSessionSyncController, } from '../browser/session-sync/session-sync-registry.js';
5
+ import { readCachedTranscript, shouldHydrateFromCache, toHydrateEntries, writeCachedTranscript, } from '../browser/session-sync/session-transcript-cache.js';
4
6
  import { useSandboxConnectionStore } from '../browser/stores/sandbox-connection-store.js';
5
7
  import { useSyncStore } from '../browser/stores/sync-store.js';
8
+ import { useCurrentRuntime } from './use-current-runtime.js';
6
9
  import { canQueryOpenCodeSession } from './use-opencode-sessions/index.js';
7
10
  export { loadSessionTranscriptMessages };
8
11
  const EMPTY_MESSAGES = [];
@@ -43,18 +46,61 @@ function buildMessages(sessionId, msgs, parts) {
43
46
  touchMessageCache(sessionId);
44
47
  return result;
45
48
  }
46
- /**
47
- * Returns the current session tail and explicit history-loading state.
48
- * Network synchronization lives in the framework-free SessionSyncController.
49
- */
50
- export function useSessionSync(sessionId) {
49
+ export function useSessionSync(sessionId, options = {}) {
50
+ const { kortixSessionScope, networkEnabled = true } = options;
51
51
  const runtimeHealthy = useSandboxConnectionStore((state) => state.healthy === true);
52
- const controller = getSessionSyncController(sessionId);
52
+ const runtimeScope = useCurrentRuntime((state) => state.sandboxId) ?? 'none';
53
+ const cacheOwnerScope = resolveSessionCacheOwnerScope(runtimeScope, kortixSessionScope);
54
+ const currentOwner = getSessionCacheOwnership(sessionId);
55
+ const cacheBelongsToAnotherRuntime = !!sessionId && sessionCacheOwnerScopesConflict(currentOwner, cacheOwnerScope);
56
+ const readableSessionId = cacheBelongsToAnotherRuntime ? '' : sessionId;
57
+ const controller = getSessionSyncController(sessionId, undefined, runtimeScope);
53
58
  const sync = useSyncExternalStore(controller.subscribe, controller.getSnapshot, controller.getSnapshot);
54
59
  useEffect(() => {
55
- if (!canQueryOpenCodeSession(sessionId) || !runtimeHealthy)
60
+ if (!canQueryOpenCodeSession(sessionId) || !cacheOwnerScope)
56
61
  return;
57
- const release = retainSessionSyncController(sessionId);
62
+ const claim = claimSessionCacheOwnership(sessionId, cacheOwnerScope);
63
+ if (!sessionCacheOwnerScopesConflict(claim.previousOwnerScope, cacheOwnerScope)) {
64
+ return;
65
+ }
66
+ resetSessionSyncControllersForSession(sessionId, runtimeScope === 'none' ? undefined : runtimeScope);
67
+ useSyncStore.getState().clearSession(sessionId);
68
+ messageCache.delete(sessionId);
69
+ }, [cacheOwnerScope, runtimeScope, sessionId]);
70
+ // Paint from disk FIRST, and deliberately without waiting on `runtimeHealthy`.
71
+ // The transcript is settled history; gating it on a woken sandbox is what made
72
+ // opening a hibernated session a blank screen for the length of a VM boot.
73
+ // `shouldHydrateFromCache` keeps this strictly additive — the moment the store
74
+ // holds anything for this session, live data owns it and the cache stands down.
75
+ useEffect(() => {
76
+ if (!canQueryOpenCodeSession(sessionId))
77
+ return;
78
+ let cancelled = false;
79
+ void (async () => {
80
+ const cached = await readCachedTranscript(sessionId, kortixSessionScope);
81
+ if (cancelled || !cached)
82
+ return;
83
+ const store = useSyncStore.getState();
84
+ if (!shouldHydrateFromCache({
85
+ storeHasSession: sessionId in store.messages,
86
+ cachedMessageCount: cached.messages.length,
87
+ })) {
88
+ return;
89
+ }
90
+ store.hydrate(sessionId, toHydrateEntries(cached));
91
+ })();
92
+ return () => {
93
+ cancelled = true;
94
+ };
95
+ }, [kortixSessionScope, sessionId]);
96
+ useEffect(() => {
97
+ if (!networkEnabled ||
98
+ !canQueryOpenCodeSession(sessionId) ||
99
+ !runtimeHealthy ||
100
+ runtimeScope === 'none')
101
+ return;
102
+ resetSessionSyncControllersForSession(sessionId, runtimeScope);
103
+ const release = retainSessionSyncController(sessionId, runtimeScope);
58
104
  // Cached messages render immediately. Revalidate one bounded tail so
59
105
  // events produced while this route was inactive are not skipped.
60
106
  void controller.reconcile('initial');
@@ -62,17 +108,39 @@ export function useSessionSync(sessionId) {
62
108
  release();
63
109
  messageCache.delete(sessionId);
64
110
  };
65
- }, [controller, runtimeHealthy, sessionId]);
66
- const messages = useSyncStore((state) => buildMessages(sessionId, state.messages[sessionId], state.parts));
67
- const runtimeStatus = useSyncStore((state) => state.sessionStatus[sessionId] ?? IDLE_STATUS);
111
+ }, [controller, networkEnabled, runtimeHealthy, runtimeScope, sessionId]);
112
+ // Mirror the tail back to disk as it changes, so the NEXT open of this session
113
+ // has something to paint. Subscribing to the store (rather than reacting to
114
+ // rendered output) also captures SSE updates that arrive while the transcript
115
+ // is scrolled out of view. The IDB layer batches these on its own timer.
116
+ useEffect(() => {
117
+ if (!canQueryOpenCodeSession(sessionId))
118
+ return;
119
+ let lastMessages;
120
+ let lastParts;
121
+ const persist = (state) => {
122
+ // The store is shared by every session and also carries status/todos, so
123
+ // most notifications are irrelevant here. Compare the two slices this
124
+ // cache actually mirrors before rebuilding anything.
125
+ if (state.messages[sessionId] === lastMessages && state.parts === lastParts)
126
+ return;
127
+ lastMessages = state.messages[sessionId];
128
+ lastParts = state.parts;
129
+ void writeCachedTranscript(state, sessionId, kortixSessionScope);
130
+ };
131
+ persist(useSyncStore.getState());
132
+ return useSyncStore.subscribe(persist);
133
+ }, [kortixSessionScope, sessionId]);
134
+ const messages = useSyncStore((state) => buildMessages(readableSessionId, state.messages[readableSessionId], state.parts));
135
+ const runtimeStatus = useSyncStore((state) => state.sessionStatus[readableSessionId] ?? IDLE_STATUS);
68
136
  const status = sync.isPromptObservedBusy && runtimeStatus.type === 'idle' ? BUSY_STATUS : runtimeStatus;
69
- const diffs = useSyncStore((state) => state.diffs[sessionId]);
70
- const todos = useSyncStore((state) => state.todos[sessionId]);
137
+ const diffs = useSyncStore((state) => state.diffs[readableSessionId]);
138
+ const todos = useSyncStore((state) => state.todos[readableSessionId]);
71
139
  const isBusy = status.type === 'busy' || status.type === 'retry';
72
- const isLoading = !useSyncStore((state) => sessionId in state.messages);
140
+ const isLoading = !useSyncStore((state) => readableSessionId in state.messages);
73
141
  useEffect(() => {
74
- controller.setBusy(runtimeHealthy && isBusy);
75
- }, [controller, isBusy, runtimeHealthy]);
142
+ controller.setBusy(networkEnabled && runtimeHealthy && isBusy);
143
+ }, [controller, isBusy, networkEnabled, runtimeHealthy]);
76
144
  return {
77
145
  messages,
78
146
  status,
@@ -1 +1 @@
1
- {"version":3,"file":"use-session-sync.js","sourceRoot":"","sources":["../../src/react/use-session-sync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-session-sync.js","sourceRoot":"","sources":["../../src/react/use-session-sync.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { type SessionRuntimeTransport } from '../core/session/runtime-transport.js';
1
+ import { type SessionStartResult } from '../core/rest/projects-client/index.js';
2
2
  import { BillingError } from '../core/http/api/errors.js';
3
3
  import type { ModelKey } from './use-model-store.js';
4
4
  import { type PromptPart } from './use-opencode-sessions/index.js';
@@ -12,6 +12,32 @@ export type SessionPhase = 'starting' | 'ready' | 'error';
12
12
  * SessionStartErrors never retry; transient transport failures retry a few times.
13
13
  */
14
14
  export declare function shouldRetrySessionStart(failureCount: number, error: unknown, sessionId: string): boolean;
15
+ /**
16
+ * Gap between `/start` polls. The server long-polls each tick, so this is the
17
+ * pause between holds, not the latency to observe `ready`.
18
+ */
19
+ export declare const SESSION_START_POLL_MS = 1500;
20
+ /**
21
+ * Should the `/start` boot poll fire again, given the last tick's outcome?
22
+ * `false` = stop: a terminal stage, or a terminal client error that no amount
23
+ * of polling can fix. Everything else keeps polling — including a `null`
24
+ * payload from a transient transport failure, since the box is still coming up.
25
+ */
26
+ export declare function shouldPollSessionStart(error: unknown, data: SessionStartResult | null | undefined): number | false;
27
+ /**
28
+ * TanStack Query pauses interval fetches while the document is hidden unless
29
+ * this option is true. Session readiness must continue because it gates the
30
+ * runtime switch, event stream, and queued-prompt replay.
31
+ */
32
+ export declare const SESSION_START_POLL_OPTIONS: {
33
+ readonly refetchInterval: (query: {
34
+ state: {
35
+ error: unknown;
36
+ data: SessionStartResult | null | undefined;
37
+ };
38
+ }) => number | false;
39
+ readonly refetchIntervalInBackground: true;
40
+ };
15
41
  /** Discriminant for `KortixSendError` — what kind of failure interrupted a send. */
16
42
  export type KortixSendErrorKind = 'billing' | 'runtime-not-ready' | 'runtime-error';
17
43
  /** Typed failure surfaced by `send` (via `sendError`) and thrown by
@@ -68,21 +94,10 @@ export declare function sendStateOnStart(text: string): SendState;
68
94
  /** New state when a send fails — drops the optimistic message and classifies
69
95
  * the error. */
70
96
  export declare function sendStateOnError(error: unknown): SendState;
71
- /**
72
- * Keep the REST compatibility transcript reconciler active after
73
- * `promptAsync()` accepts a prompt.
74
- *
75
- * The runtime can accept the prompt before the browser receives its first SSE
76
- * status event. Without this optimistic busy state, the 10-second liveness
77
- * reconciliation never starts. The transcript can then stay at the user
78
- * message even though the agent completed the turn.
79
- */
80
- export declare function beginRestPromptObservation(sessionId: string): void;
81
- /** Clear the optimistic REST busy state when the prompt never starts or stops. */
82
- export declare function endRestPromptObservation(sessionId: string): void;
83
- /** Stage a reversible OpenCode rollback on one canonical session. */
97
+ export declare function beginRestPromptObservation(sessionId: string, runtimeScope?: string): void;
98
+ export declare function endRestPromptObservation(sessionId: string, runtimeScope?: string): void;
99
+ export declare function sendRestPromptWithObservation(sessionId: string, runtimeScope: string | undefined, sendPrompt: () => Promise<void>): Promise<void>;
84
100
  export declare function rewindOpenCodeSession(sessionId: string, messageId: string): Promise<void>;
85
- /** Restore a staged OpenCode rollback before a replacement prompt commits it. */
86
101
  export declare function restoreOpenCodeSessionRewind(sessionId: string): Promise<void>;
87
102
  /**
88
103
  * Answer an agent question through the session's runtime and drop it from
@@ -98,12 +113,6 @@ export declare function answerPermission(requestId: string, reply: 'once' | 'alw
98
113
  export interface UseSessionOptions {
99
114
  /** Long-poll budget (ms) the client requests on `/start`; the server clamps it. */
100
115
  waitMs?: number;
101
- /**
102
- * Override the server-selected AI transport for this hook instance.
103
- * Hosts can use this for page-scoped diagnostics without changing project
104
- * configuration. Omit it to use `/start.runtime_transport`.
105
- */
106
- runtimeTransport?: SessionRuntimeTransport;
107
116
  /**
108
117
  * Replay a stashed first message (prompt + model + agent from the "new session"
109
118
  * screen) once the runtime is ready and the thread is empty. Default true. Hosts
@@ -117,11 +126,8 @@ export interface UseSessionOptions {
117
126
  */
118
127
  enabled?: boolean;
119
128
  /**
120
- * A server-authorized OpenCode session pin already associated with this
121
- * Kortix session. The hook uses it only to hydrate cached transcript content
122
- * while `/start` runs. The pin returned by `/start` remains authoritative.
123
- *
124
- * Do not accept this value from an untrusted browser tenant selector.
129
+ * A server-authorized OpenCode session pin associated with this Kortix
130
+ * session. The `/start` response remains authoritative.
125
131
  */
126
132
  initialOpenCodeSessionId?: string | null;
127
133
  /**
@@ -153,10 +159,7 @@ export declare function useSession(projectId: string, sessionId: string, options
153
159
  sessionId: string;
154
160
  /** Canonical OpenCode root id, or null while resolving. */
155
161
  opencodeSessionId: string | null;
156
- /** Server-selected SDK client transport. */
157
- runtimeTransport: SessionRuntimeTransport;
158
- /** Runtime sessions available for legacy deep-link selection.
159
- * ACP exposes only the canonical session during this canary. */
162
+ runtimeTransport: "rest";
160
163
  runtimeSessions: import("@opencode-ai/sdk/v2/types").Session[];
161
164
  runtimeSessionsLoading: boolean;
162
165
  runtimeSessionsListed: boolean;
@@ -202,11 +205,8 @@ export declare function useSession(projectId: string, sessionId: string, options
202
205
  /** Last `send` failure, typed (billing / runtime-not-ready / runtime-error),
203
206
  * or null. Reset on every new `send` call. */
204
207
  sendError: KortixSendError | null;
205
- /** Selected user message while a reversible history rewind is staged. */
206
208
  rewindMessageId: string | null;
207
- /** True while the runtime stages or restores a history rewind. */
208
209
  rewindPending: boolean;
209
- /** Last history rewind failure, or null. */
210
210
  rewindError: KortixSendError | null;
211
211
  models: import("./model-flatten.js").FlatModel[];
212
212
  agents: import("@opencode-ai/sdk/v2/types").Agent[];
@@ -222,27 +222,24 @@ export declare function useSession(projectId: string, sessionId: string, options
222
222
  agent?: string | null;
223
223
  variant?: string | null;
224
224
  }) => void;
225
- /** Send text and file prompt parts through the selected SDK transport. */
226
225
  sendParts: (parts: PromptPart[], override?: {
227
226
  model?: ModelKey | null;
228
227
  agent?: string | null;
229
228
  variant?: string | null;
230
229
  directory?: string | null;
231
230
  }) => Promise<void>;
232
- /** Rewind this canonical session to one user message. */
233
231
  rewind: (messageId: string) => Promise<void>;
234
- /** Restore the removed path before a replacement prompt commits it. */
235
232
  restoreRewind: () => Promise<void>;
236
233
  cancel: () => void;
237
234
  runCommand: (command: string, args: string, options?: SessionCommandOptions) => Promise<void>;
238
235
  /** Answer an agent question through the server and drop it from pending
239
236
  * state on success; throws a `KortixSendError` and leaves it pending on
240
237
  * failure. */
241
- answerQuestion: (requestId: string, answers: string[][]) => Promise<void>;
238
+ answerQuestion: typeof answerQuestion;
242
239
  /** Reject an agent question through the server (see `answerQuestion`). */
243
- rejectQuestion: (requestId: string) => Promise<void>;
240
+ rejectQuestion: typeof rejectQuestion;
244
241
  /** Answer an agent permission request through the server (see `answerQuestion`). */
245
- answerPermission: (requestId: string, reply: "once" | "always" | "reject", message?: string) => Promise<void>;
242
+ answerPermission: typeof answerPermission;
246
243
  /** @deprecated Drops the question from local state WITHOUT replying to the
247
244
  * server — the agent run stays blocked waiting on it. Use `answerQuestion`
248
245
  * / `rejectQuestion` instead. */
@@ -1 +1 @@
1
- {"version":3,"file":"use-session.d.ts","sourceRoot":"","sources":["../../src/react/use-session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"use-session.d.ts","sourceRoot":"","sources":["../../src/react/use-session.ts"],"names":[],"mappings":"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"}