@code-yeongyu/senpi 2026.8.19 → 2026.8.20-2

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 (713) hide show
  1. package/CHANGELOG.md +133 -0
  2. package/dist/cli-main.js +4 -0
  3. package/dist/cli-main.js.map +1 -1
  4. package/dist/cli.js +31 -3
  5. package/dist/cli.js.map +1 -1
  6. package/dist/compile-cache.d.ts +2 -0
  7. package/dist/compile-cache.d.ts.map +1 -0
  8. package/dist/compile-cache.js +33 -0
  9. package/dist/compile-cache.js.map +1 -0
  10. package/dist/core/agent-session.d.ts +5 -0
  11. package/dist/core/agent-session.d.ts.map +1 -1
  12. package/dist/core/agent-session.js +94 -12
  13. package/dist/core/agent-session.js.map +1 -1
  14. package/dist/core/compaction/compaction.d.ts +6 -0
  15. package/dist/core/compaction/compaction.d.ts.map +1 -1
  16. package/dist/core/compaction/compaction.js +13 -0
  17. package/dist/core/compaction/compaction.js.map +1 -1
  18. package/dist/core/cursor-exec-bridge-session.d.ts +2 -1
  19. package/dist/core/cursor-exec-bridge-session.d.ts.map +1 -1
  20. package/dist/core/cursor-exec-bridge-session.js +5 -2
  21. package/dist/core/cursor-exec-bridge-session.js.map +1 -1
  22. package/dist/core/cursor-exec-bridge.d.ts +9 -1
  23. package/dist/core/cursor-exec-bridge.d.ts.map +1 -1
  24. package/dist/core/cursor-exec-bridge.js +26 -2
  25. package/dist/core/cursor-exec-bridge.js.map +1 -1
  26. package/dist/core/extensions/builtin/claude-sdk-oauth/custom-tools.d.ts +1 -1
  27. package/dist/core/extensions/builtin/claude-sdk-oauth/custom-tools.d.ts.map +1 -1
  28. package/dist/core/extensions/builtin/claude-sdk-oauth/custom-tools.js +5 -2
  29. package/dist/core/extensions/builtin/claude-sdk-oauth/custom-tools.js.map +1 -1
  30. package/dist/core/extensions/builtin/claude-sdk-oauth/sdk-boundary.d.ts +6 -4
  31. package/dist/core/extensions/builtin/claude-sdk-oauth/sdk-boundary.d.ts.map +1 -1
  32. package/dist/core/extensions/builtin/claude-sdk-oauth/sdk-boundary.js +24 -2
  33. package/dist/core/extensions/builtin/claude-sdk-oauth/sdk-boundary.js.map +1 -1
  34. package/dist/core/extensions/builtin/claude-sdk-oauth/sdk-boundary.lazy.d.ts +39 -0
  35. package/dist/core/extensions/builtin/claude-sdk-oauth/sdk-boundary.lazy.d.ts.map +1 -0
  36. package/dist/core/extensions/builtin/claude-sdk-oauth/sdk-boundary.lazy.js +31 -0
  37. package/dist/core/extensions/builtin/claude-sdk-oauth/sdk-boundary.lazy.js.map +1 -0
  38. package/dist/core/extensions/builtin/claude-sdk-oauth/session-continuity.d.ts +2 -0
  39. package/dist/core/extensions/builtin/claude-sdk-oauth/session-continuity.d.ts.map +1 -1
  40. package/dist/core/extensions/builtin/claude-sdk-oauth/session-continuity.js +35 -0
  41. package/dist/core/extensions/builtin/claude-sdk-oauth/session-continuity.js.map +1 -1
  42. package/dist/core/extensions/builtin/claude-sdk-oauth/session-observability.d.ts +1 -1
  43. package/dist/core/extensions/builtin/claude-sdk-oauth/session-observability.d.ts.map +1 -1
  44. package/dist/core/extensions/builtin/claude-sdk-oauth/session-observability.js +1 -0
  45. package/dist/core/extensions/builtin/claude-sdk-oauth/session-observability.js.map +1 -1
  46. package/dist/core/extensions/builtin/claude-sdk-oauth/session-reattach.d.ts +8 -0
  47. package/dist/core/extensions/builtin/claude-sdk-oauth/session-reattach.d.ts.map +1 -1
  48. package/dist/core/extensions/builtin/claude-sdk-oauth/session-reattach.js +4 -1
  49. package/dist/core/extensions/builtin/claude-sdk-oauth/session-reattach.js.map +1 -1
  50. package/dist/core/extensions/builtin/claude-sdk-oauth/session-turn-attempt.d.ts.map +1 -1
  51. package/dist/core/extensions/builtin/claude-sdk-oauth/session-turn-attempt.js +28 -1
  52. package/dist/core/extensions/builtin/claude-sdk-oauth/session-turn-attempt.js.map +1 -1
  53. package/dist/core/extensions/builtin/claude-sdk-oauth/stream.d.ts.map +1 -1
  54. package/dist/core/extensions/builtin/claude-sdk-oauth/stream.js +5 -2
  55. package/dist/core/extensions/builtin/claude-sdk-oauth/stream.js.map +1 -1
  56. package/dist/core/extensions/builtin/compaction/index.d.ts.map +1 -1
  57. package/dist/core/extensions/builtin/compaction/index.js +5 -0
  58. package/dist/core/extensions/builtin/compaction/index.js.map +1 -1
  59. package/dist/core/extensions/builtin/compaction/log.d.ts +1 -1
  60. package/dist/core/extensions/builtin/compaction/log.d.ts.map +1 -1
  61. package/dist/core/extensions/builtin/compaction/log.js +1 -0
  62. package/dist/core/extensions/builtin/compaction/log.js.map +1 -1
  63. package/dist/core/extensions/builtin/compaction/speculative.d.ts +1 -0
  64. package/dist/core/extensions/builtin/compaction/speculative.d.ts.map +1 -1
  65. package/dist/core/extensions/builtin/compaction/speculative.js +4 -0
  66. package/dist/core/extensions/builtin/compaction/speculative.js.map +1 -1
  67. package/dist/core/extensions/builtin/config-reload/index.d.ts.map +1 -1
  68. package/dist/core/extensions/builtin/config-reload/index.js +13 -10
  69. package/dist/core/extensions/builtin/config-reload/index.js.map +1 -1
  70. package/dist/core/extensions/builtin/config-reload/watch-engine.d.ts +8 -1
  71. package/dist/core/extensions/builtin/config-reload/watch-engine.d.ts.map +1 -1
  72. package/dist/core/extensions/builtin/config-reload/watch-engine.js +98 -18
  73. package/dist/core/extensions/builtin/config-reload/watch-engine.js.map +1 -1
  74. package/dist/core/extensions/builtin/config-reload/watch-event-source.d.ts +1 -1
  75. package/dist/core/extensions/builtin/config-reload/watch-event-source.d.ts.map +1 -1
  76. package/dist/core/extensions/builtin/config-reload/watch-event-source.js +7 -2
  77. package/dist/core/extensions/builtin/config-reload/watch-event-source.js.map +1 -1
  78. package/dist/core/extensions/builtin/goal/elapsed-ticker.d.ts.map +1 -1
  79. package/dist/core/extensions/builtin/goal/elapsed-ticker.js +15 -1
  80. package/dist/core/extensions/builtin/goal/elapsed-ticker.js.map +1 -1
  81. package/dist/core/extensions/builtin/goal/index.d.ts.map +1 -1
  82. package/dist/core/extensions/builtin/goal/index.js +7 -22
  83. package/dist/core/extensions/builtin/goal/index.js.map +1 -1
  84. package/dist/core/extensions/builtin/goal/stale-context.d.ts +9 -0
  85. package/dist/core/extensions/builtin/goal/stale-context.d.ts.map +1 -0
  86. package/dist/core/extensions/builtin/goal/stale-context.js +11 -0
  87. package/dist/core/extensions/builtin/goal/stale-context.js.map +1 -0
  88. package/dist/core/extensions/builtin/goal/wait-ticker.d.ts +8 -0
  89. package/dist/core/extensions/builtin/goal/wait-ticker.d.ts.map +1 -1
  90. package/dist/core/extensions/builtin/goal/wait-ticker.js +37 -3
  91. package/dist/core/extensions/builtin/goal/wait-ticker.js.map +1 -1
  92. package/dist/core/extensions/builtin/mcp/index.d.ts.map +1 -1
  93. package/dist/core/extensions/builtin/mcp/index.js +12 -1
  94. package/dist/core/extensions/builtin/mcp/index.js.map +1 -1
  95. package/dist/core/extensions/builtin/prompt-url-widget.d.ts.map +1 -1
  96. package/dist/core/extensions/builtin/prompt-url-widget.js +7 -15
  97. package/dist/core/extensions/builtin/prompt-url-widget.js.map +1 -1
  98. package/dist/core/extensions/builtin/rules/ui/rules-banner.d.ts.map +1 -1
  99. package/dist/core/extensions/builtin/rules/ui/rules-banner.js +21 -25
  100. package/dist/core/extensions/builtin/rules/ui/rules-banner.js.map +1 -1
  101. package/dist/core/extensions/builtin/todotools/index.d.ts.map +1 -1
  102. package/dist/core/extensions/builtin/todotools/index.js +20 -0
  103. package/dist/core/extensions/builtin/todotools/index.js.map +1 -1
  104. package/dist/core/extensions/builtin/todotools/native-todo-mirror.d.ts +3 -0
  105. package/dist/core/extensions/builtin/todotools/native-todo-mirror.d.ts.map +1 -0
  106. package/dist/core/extensions/builtin/todotools/native-todo-mirror.js +22 -0
  107. package/dist/core/extensions/builtin/todotools/native-todo-mirror.js.map +1 -0
  108. package/dist/core/extensions/builtin/webfetch/webfetch/content.lazy.d.ts +17 -0
  109. package/dist/core/extensions/builtin/webfetch/webfetch/content.lazy.d.ts.map +1 -0
  110. package/dist/core/extensions/builtin/webfetch/webfetch/content.lazy.js +22 -0
  111. package/dist/core/extensions/builtin/webfetch/webfetch/content.lazy.js.map +1 -0
  112. package/dist/core/extensions/builtin/webfetch/webfetch/tool.js +3 -3
  113. package/dist/core/extensions/builtin/webfetch/webfetch/tool.js.map +1 -1
  114. package/dist/core/messages.d.ts +9 -2
  115. package/dist/core/messages.d.ts.map +1 -1
  116. package/dist/core/messages.js +13 -18
  117. package/dist/core/messages.js.map +1 -1
  118. package/dist/core/retry-fallback/hint-policy.d.ts +3 -2
  119. package/dist/core/retry-fallback/hint-policy.d.ts.map +1 -1
  120. package/dist/core/retry-fallback/hint-policy.js +19 -8
  121. package/dist/core/retry-fallback/hint-policy.js.map +1 -1
  122. package/dist/core/retry-fallback/settings.js.map +1 -1
  123. package/dist/core/session-discovery.d.ts +16 -0
  124. package/dist/core/session-discovery.d.ts.map +1 -0
  125. package/dist/core/session-discovery.js +101 -0
  126. package/dist/core/session-discovery.js.map +1 -0
  127. package/dist/core/session-manager.d.ts +2 -1
  128. package/dist/core/session-manager.d.ts.map +1 -1
  129. package/dist/core/session-manager.js +4 -170
  130. package/dist/core/session-manager.js.map +1 -1
  131. package/dist/core/session-record.d.ts +14 -0
  132. package/dist/core/session-record.d.ts.map +1 -0
  133. package/dist/core/session-record.js +47 -0
  134. package/dist/core/session-record.js.map +1 -0
  135. package/dist/core/session-summary-cache.d.ts +40 -0
  136. package/dist/core/session-summary-cache.d.ts.map +1 -0
  137. package/dist/core/session-summary-cache.js +79 -0
  138. package/dist/core/session-summary-cache.js.map +1 -0
  139. package/dist/core/session-summary-lru.d.ts +54 -0
  140. package/dist/core/session-summary-lru.d.ts.map +1 -0
  141. package/dist/core/session-summary-lru.js +72 -0
  142. package/dist/core/session-summary-lru.js.map +1 -0
  143. package/dist/core/session-summary.d.ts +29 -0
  144. package/dist/core/session-summary.d.ts.map +1 -0
  145. package/dist/core/session-summary.js +90 -0
  146. package/dist/core/session-summary.js.map +1 -0
  147. package/dist/index.d.ts +1 -0
  148. package/dist/index.d.ts.map +1 -1
  149. package/dist/index.js +2 -0
  150. package/dist/index.js.map +1 -1
  151. package/dist/inspector-policy.d.ts +6 -0
  152. package/dist/inspector-policy.d.ts.map +1 -1
  153. package/dist/inspector-policy.js +6 -1
  154. package/dist/inspector-policy.js.map +1 -1
  155. package/dist/modes/interactive/components/earendil-announcement.d.ts.map +1 -1
  156. package/dist/modes/interactive/components/earendil-announcement.js +8 -8
  157. package/dist/modes/interactive/components/earendil-announcement.js.map +1 -1
  158. package/dist/modes/interactive/components/progressive-transcript-container.d.ts +72 -0
  159. package/dist/modes/interactive/components/progressive-transcript-container.d.ts.map +1 -0
  160. package/dist/modes/interactive/components/progressive-transcript-container.js +150 -0
  161. package/dist/modes/interactive/components/progressive-transcript-container.js.map +1 -0
  162. package/dist/modes/interactive/components/status-indicator.d.ts +1 -1
  163. package/dist/modes/interactive/components/status-indicator.d.ts.map +1 -1
  164. package/dist/modes/interactive/components/status-indicator.js +8 -2
  165. package/dist/modes/interactive/components/status-indicator.js.map +1 -1
  166. package/dist/modes/interactive/interactive-mode.d.ts +4 -0
  167. package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
  168. package/dist/modes/interactive/interactive-mode.js +127 -65
  169. package/dist/modes/interactive/interactive-mode.js.map +1 -1
  170. package/dist/modes/interactive/split-trailing-assistant-text.d.ts +7 -0
  171. package/dist/modes/interactive/split-trailing-assistant-text.d.ts.map +1 -0
  172. package/dist/modes/interactive/split-trailing-assistant-text.js +19 -0
  173. package/dist/modes/interactive/split-trailing-assistant-text.js.map +1 -0
  174. package/dist/senpi +31 -3
  175. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-cjs/index.js +38 -13
  176. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-es/index.js +1 -1
  177. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-es/schemas/schemas_0.js +34 -12
  178. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/commands/ConverseCommand.d.ts +29 -0
  179. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/commands/ConverseStreamCommand.d.ts +15 -0
  180. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/commands/CountTokensCommand.d.ts +14 -0
  181. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/index.d.ts +1 -1
  182. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/models/models_0.d.ts +119 -1
  183. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/runtimeConfig.browser.d.ts +46 -46
  184. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/runtimeConfig.d.ts +36 -36
  185. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/runtimeConfig.native.d.ts +48 -48
  186. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/runtimeConfig.shared.d.ts +2 -2
  187. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/schemas/schemas_0.d.ts +3 -0
  188. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/ts3.4/index.d.ts +1 -1
  189. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/ts3.4/models/models_0.d.ts +76 -0
  190. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/ts3.4/runtimeConfig.browser.d.ts +70 -72
  191. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/ts3.4/runtimeConfig.d.ts +68 -68
  192. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/ts3.4/runtimeConfig.native.d.ts +86 -88
  193. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/ts3.4/runtimeConfig.shared.d.ts +3 -3
  194. package/node_modules/@aws-sdk/client-bedrock-runtime/dist-types/ts3.4/schemas/schemas_0.d.ts +3 -0
  195. package/node_modules/@aws-sdk/client-bedrock-runtime/package.json +14 -14
  196. package/node_modules/@aws-sdk/core/dist-cjs/submodules/protocols/index.js +1328 -411
  197. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/index.js +8 -5
  198. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsJsonRpcProtocol.js +2 -2
  199. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/AwsRestJsonProtocol.js +3 -3
  200. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonSettings.js +1 -0
  201. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/{JsonCodec.js → codec-v1/JsonCodec.js} +1 -1
  202. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v1/JsonSettings.js +1 -0
  203. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/{JsonShapeDeserializer.js → codec-v1/JsonShapeDeserializer.js} +6 -6
  204. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/{JsonShapeSerializer.js → codec-v1/JsonShapeSerializer.js} +8 -5
  205. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v2/JsonBytesStringAdapter.js +103 -0
  206. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/codec-v2/JsonCodec2.js +20 -0
  207. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/{experimental/BufferJsonShapeDeserializer.js → codec-v2/JsonShapeDeserializer2.js} +38 -18
  208. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/{experimental/ByteJsonShapeSerializer.js → codec-v2/JsonShapeSerializer2.js} +107 -71
  209. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/jsonReviver.js +93 -9
  210. package/node_modules/@aws-sdk/core/dist-types/submodules/client/util-endpoints/lib/aws/partitions.d.ts +54 -54
  211. package/node_modules/@aws-sdk/core/dist-types/submodules/client/util-user-agent-browser/defaultUserAgent.d.ts +1 -1
  212. package/node_modules/@aws-sdk/core/dist-types/submodules/client/util-user-agent-browser/defaultUserAgent.native.d.ts +1 -1
  213. package/node_modules/@aws-sdk/core/dist-types/submodules/client/util-user-agent-node/defaultUserAgent.d.ts +1 -1
  214. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/index.d.ts +9 -6
  215. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsJson1_0Protocol.d.ts +3 -2
  216. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsJson1_1Protocol.d.ts +3 -2
  217. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsJsonRpcProtocol.d.ts +4 -3
  218. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/AwsRestJsonProtocol.d.ts +5 -3
  219. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/JsonSettings.d.ts +7 -0
  220. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/{JsonCodec.d.ts → codec-v1/JsonCodec.d.ts} +4 -8
  221. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v1/JsonSettings.d.ts +7 -0
  222. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/{JsonShapeDeserializer.d.ts → codec-v1/JsonShapeDeserializer.d.ts} +3 -2
  223. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/{JsonShapeSerializer.d.ts → codec-v1/JsonShapeSerializer.d.ts} +3 -2
  224. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v2/JsonBytesStringAdapter.d.ts +51 -0
  225. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/codec-v2/JsonCodec2.d.ts +13 -0
  226. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/{experimental/BufferJsonShapeDeserializer.d.ts → codec-v2/JsonShapeDeserializer2.d.ts} +4 -3
  227. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/{experimental/ByteJsonShapeSerializer.d.ts → codec-v2/JsonShapeSerializer2.d.ts} +19 -16
  228. package/node_modules/@aws-sdk/core/dist-types/ts3.4/api-extractor-type-index.d.ts +4 -7
  229. package/node_modules/@aws-sdk/core/dist-types/ts3.4/index.d.ts +61 -21
  230. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/AccountIdEndpointModeConfigResolver.d.ts +13 -27
  231. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/AccountIdEndpointModeConstants.d.ts +4 -16
  232. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/NodeAccountIdEndpointModeConfigOptions.d.ts +5 -14
  233. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/index.d.ts +16 -5
  234. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/emitWarningIfUnsupportedVersion.d.ts +4 -11
  235. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/index.browser.d.ts +107 -47
  236. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/index.d.ts +112 -39
  237. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/index.native.d.ts +107 -48
  238. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/longPollMiddleware.d.ts +13 -14
  239. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-host-header/hostHeaderMiddleware.d.ts +25 -35
  240. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-logger/loggerMiddleware.d.ts +14 -4
  241. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/configuration.d.ts +2 -6
  242. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/getRecursionDetectionPlugin.browser.d.ts +2 -5
  243. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/getRecursionDetectionPlugin.d.ts +2 -5
  244. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.browser.d.ts +2 -6
  245. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.d.ts +2 -10
  246. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.native.d.ts +2 -6
  247. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/check-features.d.ts +16 -20
  248. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/configurations.d.ts +21 -44
  249. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/constants.d.ts +7 -7
  250. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/encode-features.d.ts +2 -5
  251. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/user-agent-middleware.d.ts +18 -18
  252. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/awsRegionConfig.d.ts +8 -11
  253. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/extensions.d.ts +14 -16
  254. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/stsRegionDefaultResolver.browser.d.ts +1 -4
  255. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/stsRegionDefaultResolver.d.ts +7 -14
  256. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/stsRegionDefaultResolver.native.d.ts +1 -4
  257. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/setCredentialFeature.d.ts +6 -7
  258. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/setFeature.d.ts +6 -12
  259. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/setTokenFeature.d.ts +6 -7
  260. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/aws.d.ts +2 -2
  261. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/isVirtualHostableS3Bucket.d.ts +4 -5
  262. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/parseArn.d.ts +2 -7
  263. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/partition.d.ts +28 -38
  264. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/partitions.d.ts +647 -638
  265. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/isIpAddress.d.ts +1 -1
  266. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/resolveDefaultAwsRegionalEndpointsConfig.d.ts +29 -56
  267. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/resolveEndpoint.d.ts +1 -1
  268. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/EndpointError.d.ts +1 -1
  269. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/EndpointRuleObject.d.ts +6 -1
  270. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/ErrorRuleObject.d.ts +1 -1
  271. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/RuleSetObject.d.ts +1 -1
  272. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/TreeRuleObject.d.ts +1 -1
  273. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/shared.d.ts +12 -1
  274. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/configurations.d.ts +4 -7
  275. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/createUserAgentStringParsingProvider.d.ts +7 -14
  276. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/defaultUserAgent.browser.d.ts +7 -2
  277. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/defaultUserAgent.d.ts +15 -27
  278. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/defaultUserAgent.native.d.ts +10 -18
  279. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/crt-availability.d.ts +3 -8
  280. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/defaultUserAgent.d.ts +14 -28
  281. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/getRuntimeUserAgentPair.d.ts +2 -6
  282. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/is-crt-available.d.ts +2 -5
  283. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/nodeAppIdConfigOptions.d.ts +4 -13
  284. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.d.ts +9 -10
  285. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.d.ts +39 -44
  286. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/NODE_AUTH_SCHEME_PREFERENCE_OPTIONS.d.ts +2 -5
  287. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/clock-skew-defaults.browser.d.ts +1 -6
  288. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/clock-skew-defaults.d.ts +1 -7
  289. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/clock-skew-node-config.d.ts +4 -13
  290. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/index.d.ts +23 -7
  291. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4AConfig.d.ts +13 -38
  292. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.d.ts +57 -133
  293. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/index.browser.d.ts +32 -11
  294. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/index.d.ts +32 -9
  295. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getArrayForCommaSeparatedString.d.ts +1 -8
  296. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getBearerTokenEnvKey.d.ts +1 -6
  297. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getDateHeader.d.ts +2 -8
  298. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.d.ts +1 -8
  299. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.d.ts +6 -26
  300. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/index.d.ts +4 -4
  301. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/isClockSkewed.d.ts +1 -9
  302. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/ConfigurableSerdeContext.d.ts +5 -8
  303. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/ProtocolLib.d.ts +40 -74
  304. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/UnionSerde.d.ts +9 -24
  305. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/cbor/AwsSmithyRpcV2CborProtocol.d.ts +36 -25
  306. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/coercing-serializers.d.ts +3 -18
  307. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/common.d.ts +5 -2
  308. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/index.d.ts +30 -22
  309. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJson1_0Protocol.d.ts +22 -22
  310. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJson1_1Protocol.d.ts +22 -22
  311. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJsonRpcProtocol.d.ts +50 -29
  312. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsRestJsonProtocol.d.ts +52 -36
  313. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonSettings.d.ts +4 -0
  314. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/awsExpectUnion.d.ts +1 -7
  315. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonCodec.d.ts +11 -0
  316. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonSettings.d.ts +4 -0
  317. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonShapeDeserializer.d.ts +13 -0
  318. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v1/JsonShapeSerializer.d.ts +18 -0
  319. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonBytesStringAdapter.d.ts +27 -0
  320. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonCodec2.d.ts +9 -0
  321. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonShapeDeserializer2.d.ts +15 -0
  322. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/codec-v2/JsonShapeSerializer2.d.ts +39 -0
  323. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/detectBufferParsing.d.ts +1 -1
  324. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/jsonReplacer.d.ts +7 -21
  325. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/jsonReviver.d.ts +7 -15
  326. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/needsReviver.d.ts +2 -11
  327. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/parseJsonBody.d.ts +14 -22
  328. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/AwsEc2QueryProtocol.d.ts +18 -27
  329. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/AwsQueryProtocol.d.ts +57 -49
  330. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/QuerySerializerSettings.d.ts +7 -13
  331. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/QueryShapeSerializer.d.ts +21 -16
  332. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/writeKey.d.ts +1 -4
  333. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/AwsRestXmlProtocol.d.ts +47 -31
  334. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/XmlCodec.d.ts +17 -14
  335. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/XmlShapeDeserializer.d.ts +15 -20
  336. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/XmlShapeSerializer.d.ts +21 -21
  337. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/parseXmlBody.d.ts +4 -13
  338. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/simpleFormatXml.d.ts +1 -6
  339. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/util/index.d.ts +3 -3
  340. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/util/util-arn-parser/arn.d.ts +14 -32
  341. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/util/util-format-url/format-url.d.ts +4 -2
  342. package/node_modules/@aws-sdk/core/package.json +6 -6
  343. package/node_modules/@aws-sdk/credential-provider-env/package.json +5 -5
  344. package/node_modules/@aws-sdk/credential-provider-http/package.json +7 -7
  345. package/node_modules/@aws-sdk/credential-provider-ini/package.json +13 -13
  346. package/node_modules/@aws-sdk/credential-provider-login/dist-cjs/index.js +35 -28
  347. package/node_modules/@aws-sdk/credential-provider-login/dist-es/LoginCredentialsFetcher.js +35 -28
  348. package/node_modules/@aws-sdk/credential-provider-login/dist-types/LoginCredentialsFetcher.d.ts +1 -0
  349. package/node_modules/@aws-sdk/credential-provider-login/dist-types/ts3.4/LoginCredentialsFetcher.d.ts +1 -0
  350. package/node_modules/@aws-sdk/credential-provider-login/package.json +6 -6
  351. package/node_modules/@aws-sdk/credential-provider-node/package.json +11 -11
  352. package/node_modules/@aws-sdk/credential-provider-process/package.json +5 -5
  353. package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/package.json +6 -6
  354. package/node_modules/@aws-sdk/credential-provider-sso/package.json +7 -7
  355. package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +6 -6
  356. package/node_modules/@aws-sdk/eventstream-handler-node/package.json +4 -4
  357. package/node_modules/@aws-sdk/middleware-eventstream/package.json +4 -4
  358. package/node_modules/@aws-sdk/middleware-websocket/package.json +7 -7
  359. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/index.js +1 -1
  360. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/index.js +1 -1
  361. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/index.js +1 -1
  362. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/index.js +1 -1
  363. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/index.js +1 -1
  364. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/runtimeConfig.browser.d.ts +42 -42
  365. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/runtimeConfig.d.ts +42 -42
  366. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/runtimeConfig.native.d.ts +41 -41
  367. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/runtimeConfig.shared.d.ts +2 -2
  368. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/runtimeConfig.browser.d.ts +43 -43
  369. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/runtimeConfig.d.ts +43 -43
  370. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/runtimeConfig.native.d.ts +42 -42
  371. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/runtimeConfig.shared.d.ts +2 -2
  372. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/runtimeConfig.browser.d.ts +42 -42
  373. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/runtimeConfig.d.ts +42 -42
  374. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/runtimeConfig.native.d.ts +41 -41
  375. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/runtimeConfig.shared.d.ts +2 -2
  376. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/runtimeConfig.browser.d.ts +42 -42
  377. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/runtimeConfig.d.ts +42 -42
  378. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/runtimeConfig.native.d.ts +41 -41
  379. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/runtimeConfig.shared.d.ts +2 -2
  380. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.browser.d.ts +44 -44
  381. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.d.ts +35 -35
  382. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.native.d.ts +43 -43
  383. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.shared.d.ts +2 -2
  384. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/runtimeConfig.browser.d.ts +64 -66
  385. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/runtimeConfig.d.ts +65 -65
  386. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/runtimeConfig.native.d.ts +68 -70
  387. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/runtimeConfig.shared.d.ts +3 -3
  388. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/runtimeConfig.browser.d.ts +67 -69
  389. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/runtimeConfig.d.ts +66 -66
  390. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/runtimeConfig.native.d.ts +71 -73
  391. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/runtimeConfig.shared.d.ts +3 -3
  392. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/runtimeConfig.browser.d.ts +64 -66
  393. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/runtimeConfig.d.ts +65 -65
  394. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/runtimeConfig.native.d.ts +68 -70
  395. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/runtimeConfig.shared.d.ts +3 -3
  396. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/runtimeConfig.browser.d.ts +64 -66
  397. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/runtimeConfig.d.ts +65 -65
  398. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/runtimeConfig.native.d.ts +68 -70
  399. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/runtimeConfig.shared.d.ts +3 -3
  400. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.browser.d.ts +68 -70
  401. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.d.ts +68 -68
  402. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.native.d.ts +72 -74
  403. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.shared.d.ts +3 -3
  404. package/node_modules/@aws-sdk/nested-clients/package.json +8 -8
  405. package/node_modules/@aws-sdk/signature-v4-multi-region/package.json +4 -4
  406. package/node_modules/@aws-sdk/token-providers/package.json +6 -6
  407. package/node_modules/@aws-sdk/types/package.json +2 -2
  408. package/node_modules/@aws-sdk/xml-builder/package.json +2 -2
  409. package/node_modules/@bufbuild/protobuf/README.md +12 -15
  410. package/node_modules/@bufbuild/protobuf/dist/commonjs/create.js +199 -162
  411. package/node_modules/@bufbuild/protobuf/dist/commonjs/from-binary.js +321 -153
  412. package/node_modules/@bufbuild/protobuf/dist/commonjs/from-json.js +601 -303
  413. package/node_modules/@bufbuild/protobuf/dist/commonjs/reflect/message.d.ts +49 -0
  414. package/node_modules/@bufbuild/protobuf/dist/commonjs/reflect/message.js +157 -0
  415. package/node_modules/@bufbuild/protobuf/dist/commonjs/reflect/reflect-check.d.ts +27 -1
  416. package/node_modules/@bufbuild/protobuf/dist/commonjs/reflect/reflect-check.js +80 -56
  417. package/node_modules/@bufbuild/protobuf/dist/commonjs/reflect/reflect.js +3 -80
  418. package/node_modules/@bufbuild/protobuf/dist/commonjs/registry.js +12 -3
  419. package/node_modules/@bufbuild/protobuf/dist/commonjs/to-binary.d.ts +4 -0
  420. package/node_modules/@bufbuild/protobuf/dist/commonjs/to-binary.js +365 -127
  421. package/node_modules/@bufbuild/protobuf/dist/commonjs/to-json.js +393 -159
  422. package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/base64-encoding.d.ts +3 -1
  423. package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/base64-encoding.js +40 -8
  424. package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/binary-encoding.d.ts +37 -19
  425. package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/binary-encoding.js +281 -85
  426. package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/index.d.ts +1 -1
  427. package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/index.js +4 -1
  428. package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/text-encoding.d.ts +19 -2
  429. package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/text-encoding.js +47 -13
  430. package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/varint.d.ts +4 -4
  431. package/node_modules/@bufbuild/protobuf/dist/commonjs/wire/varint.js +35 -23
  432. package/node_modules/@bufbuild/protobuf/dist/commonjs/wkt/json.d.ts +28 -0
  433. package/node_modules/@bufbuild/protobuf/dist/commonjs/wkt/json.js +44 -0
  434. package/node_modules/@bufbuild/protobuf/dist/commonjs/wkt/wrappers.js +12 -12
  435. package/node_modules/@bufbuild/protobuf/dist/esm/create.js +199 -162
  436. package/node_modules/@bufbuild/protobuf/dist/esm/from-binary.js +321 -153
  437. package/node_modules/@bufbuild/protobuf/dist/esm/from-json.js +602 -304
  438. package/node_modules/@bufbuild/protobuf/dist/esm/reflect/message.d.ts +49 -0
  439. package/node_modules/@bufbuild/protobuf/dist/esm/reflect/message.js +152 -0
  440. package/node_modules/@bufbuild/protobuf/dist/esm/reflect/reflect-check.d.ts +27 -1
  441. package/node_modules/@bufbuild/protobuf/dist/esm/reflect/reflect-check.js +79 -57
  442. package/node_modules/@bufbuild/protobuf/dist/esm/reflect/reflect.js +1 -78
  443. package/node_modules/@bufbuild/protobuf/dist/esm/registry.js +12 -3
  444. package/node_modules/@bufbuild/protobuf/dist/esm/to-binary.d.ts +4 -0
  445. package/node_modules/@bufbuild/protobuf/dist/esm/to-binary.js +365 -127
  446. package/node_modules/@bufbuild/protobuf/dist/esm/to-json.js +393 -159
  447. package/node_modules/@bufbuild/protobuf/dist/esm/wire/base64-encoding.d.ts +3 -1
  448. package/node_modules/@bufbuild/protobuf/dist/esm/wire/base64-encoding.js +40 -8
  449. package/node_modules/@bufbuild/protobuf/dist/esm/wire/binary-encoding.d.ts +37 -19
  450. package/node_modules/@bufbuild/protobuf/dist/esm/wire/binary-encoding.js +283 -87
  451. package/node_modules/@bufbuild/protobuf/dist/esm/wire/index.d.ts +1 -1
  452. package/node_modules/@bufbuild/protobuf/dist/esm/wire/index.js +1 -1
  453. package/node_modules/@bufbuild/protobuf/dist/esm/wire/text-encoding.d.ts +19 -2
  454. package/node_modules/@bufbuild/protobuf/dist/esm/wire/text-encoding.js +46 -13
  455. package/node_modules/@bufbuild/protobuf/dist/esm/wire/varint.d.ts +4 -4
  456. package/node_modules/@bufbuild/protobuf/dist/esm/wire/varint.js +35 -23
  457. package/node_modules/@bufbuild/protobuf/dist/esm/wkt/json.d.ts +28 -0
  458. package/node_modules/@bufbuild/protobuf/dist/esm/wkt/json.js +41 -0
  459. package/node_modules/@bufbuild/protobuf/dist/esm/wkt/wrappers.js +12 -12
  460. package/node_modules/@bufbuild/protobuf/package.json +2 -2
  461. package/node_modules/@code-yeongyu/senpi-codemode/CHANGELOG.md +24 -0
  462. package/node_modules/@code-yeongyu/senpi-codemode/package.json +4 -4
  463. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.d.ts.map +1 -1
  464. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js +38 -3
  465. package/node_modules/@earendil-works/pi-agent-core/dist/agent-loop.js.map +1 -1
  466. package/node_modules/@earendil-works/pi-agent-core/dist/assistant-terminal-state.d.ts +8 -1
  467. package/node_modules/@earendil-works/pi-agent-core/dist/assistant-terminal-state.d.ts.map +1 -1
  468. package/node_modules/@earendil-works/pi-agent-core/dist/assistant-terminal-state.js +25 -1
  469. package/node_modules/@earendil-works/pi-agent-core/dist/assistant-terminal-state.js.map +1 -1
  470. package/node_modules/@earendil-works/pi-agent-core/package.json +6 -6
  471. package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent.d.ts +2 -0
  472. package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent.d.ts.map +1 -1
  473. package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent.js +284 -209
  474. package/node_modules/@earendil-works/pi-ai/dist/api/cursor-agent.js.map +1 -1
  475. package/node_modules/@earendil-works/pi-ai/dist/api/cursor-conversation-rotation.d.ts +37 -0
  476. package/node_modules/@earendil-works/pi-ai/dist/api/cursor-conversation-rotation.d.ts.map +1 -0
  477. package/node_modules/@earendil-works/pi-ai/dist/api/cursor-conversation-rotation.js +110 -0
  478. package/node_modules/@earendil-works/pi-ai/dist/api/cursor-conversation-rotation.js.map +1 -0
  479. package/node_modules/@earendil-works/pi-ai/dist/api/cursor-task-args.d.ts +3 -0
  480. package/node_modules/@earendil-works/pi-ai/dist/api/cursor-task-args.d.ts.map +1 -0
  481. package/node_modules/@earendil-works/pi-ai/dist/api/cursor-task-args.js +17 -0
  482. package/node_modules/@earendil-works/pi-ai/dist/api/cursor-task-args.js.map +1 -0
  483. package/node_modules/@earendil-works/pi-ai/dist/cursor/selection-descriptor.d.ts.map +1 -1
  484. package/node_modules/@earendil-works/pi-ai/dist/cursor/selection-descriptor.js +27 -11
  485. package/node_modules/@earendil-works/pi-ai/dist/cursor/selection-descriptor.js.map +1 -1
  486. package/node_modules/@earendil-works/pi-ai/dist/providers/data/.manifest.json +1 -1
  487. package/node_modules/@earendil-works/pi-ai/dist/providers/data/amazon-bedrock.json +1 -1
  488. package/node_modules/@earendil-works/pi-ai/dist/providers/data/baseten.json +1 -1
  489. package/node_modules/@earendil-works/pi-ai/dist/providers/data/huggingface.json +1 -1
  490. package/node_modules/@earendil-works/pi-ai/dist/providers/data/opencode-go.json +1 -1
  491. package/node_modules/@earendil-works/pi-ai/dist/providers/data/opencode.json +1 -1
  492. package/node_modules/@earendil-works/pi-ai/dist/providers/data/openrouter.json +1 -1
  493. package/node_modules/@earendil-works/pi-ai/dist/providers/data/vercel-ai-gateway.json +1 -1
  494. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/index.d.ts.map +1 -1
  495. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/index.js +2 -0
  496. package/node_modules/@earendil-works/pi-ai/dist/tool-call-middleware/index.js.map +1 -1
  497. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.d.ts +30 -0
  498. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.d.ts.map +1 -1
  499. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.js +33 -0
  500. package/node_modules/@earendil-works/pi-ai/dist/utils/overflow.js.map +1 -1
  501. package/node_modules/@earendil-works/pi-ai/package.json +8 -8
  502. package/node_modules/@earendil-works/pi-pty/package.json +2 -2
  503. package/node_modules/@earendil-works/pi-telemetry/package.json +2 -2
  504. package/node_modules/@earendil-works/pi-tui/package.json +1 -1
  505. package/node_modules/@smithy/core/dist-cjs/submodules/cbor/index.js +1562 -339
  506. package/node_modules/@smithy/core/dist-cjs/submodules/event-streams/index.browser.js +23 -23
  507. package/node_modules/@smithy/core/dist-cjs/submodules/event-streams/index.js +23 -23
  508. package/node_modules/@smithy/core/dist-cjs/submodules/protocols/index.js +17 -13
  509. package/node_modules/@smithy/core/dist-cjs/submodules/schema/index.js +0 -10
  510. package/node_modules/@smithy/core/dist-es/submodules/cbor/CborCodec.js +4 -205
  511. package/node_modules/@smithy/core/dist-es/submodules/cbor/SmithyRpcV2CborProtocol.js +1 -2
  512. package/node_modules/@smithy/core/dist-es/submodules/cbor/cbor-encode.js +1 -1
  513. package/node_modules/@smithy/core/dist-es/submodules/cbor/codec-v1/CborShapeDeserializer.js +113 -0
  514. package/node_modules/@smithy/core/dist-es/submodules/cbor/codec-v1/CborShapeSerializer.js +103 -0
  515. package/node_modules/@smithy/core/dist-es/submodules/cbor/codec-v2/CborShapeDeserializer2.js +621 -0
  516. package/node_modules/@smithy/core/dist-es/submodules/cbor/codec-v2/CborShapeSerializer2.js +602 -0
  517. package/node_modules/@smithy/core/dist-es/submodules/cbor/index.js +5 -1
  518. package/node_modules/@smithy/core/dist-es/submodules/event-streams/EventStreamSerde.js +4 -4
  519. package/node_modules/@smithy/core/dist-es/submodules/event-streams/eventstream-codec/HeaderMarshaller.js +19 -19
  520. package/node_modules/@smithy/core/dist-es/submodules/protocols/RpcProtocol.js +3 -4
  521. package/node_modules/@smithy/core/dist-es/submodules/protocols/middleware-content-length/contentLengthMiddleware.js +6 -4
  522. package/node_modules/@smithy/core/dist-es/submodules/protocols/protocol-http/extensions/httpExtensionConfiguration.js +8 -5
  523. package/node_modules/@smithy/core/dist-es/submodules/schema/schemas/ListSchema.js +0 -2
  524. package/node_modules/@smithy/core/dist-es/submodules/schema/schemas/MapSchema.js +0 -2
  525. package/node_modules/@smithy/core/dist-es/submodules/schema/schemas/OperationSchema.js +0 -2
  526. package/node_modules/@smithy/core/dist-es/submodules/schema/schemas/SimpleSchema.js +0 -2
  527. package/node_modules/@smithy/core/dist-es/submodules/schema/schemas/StructureSchema.js +0 -2
  528. package/node_modules/@smithy/core/dist-types/submodules/cbor/CborCodec.d.ts +5 -27
  529. package/node_modules/@smithy/core/dist-types/submodules/cbor/SmithyRpcV2CborProtocol.d.ts +2 -2
  530. package/node_modules/@smithy/core/dist-types/submodules/cbor/codec-v1/CborShapeDeserializer.d.ts +13 -0
  531. package/node_modules/@smithy/core/dist-types/submodules/cbor/codec-v1/CborShapeSerializer.d.ts +15 -0
  532. package/node_modules/@smithy/core/dist-types/submodules/cbor/codec-v2/CborShapeDeserializer2.d.ts +18 -0
  533. package/node_modules/@smithy/core/dist-types/submodules/cbor/codec-v2/CborShapeSerializer2.d.ts +35 -0
  534. package/node_modules/@smithy/core/dist-types/submodules/cbor/index.d.ts +5 -1
  535. package/node_modules/@smithy/core/dist-types/submodules/client/smithy-client/extensions/defaultExtensionConfiguration.d.ts +1 -7
  536. package/node_modules/@smithy/core/dist-types/submodules/config/config-resolver/regionConfig/checkRegion.d.ts +2 -1
  537. package/node_modules/@smithy/core/dist-types/submodules/endpoints/util-endpoints/utils/evaluateCondition.d.ts +1 -1
  538. package/node_modules/@smithy/core/dist-types/submodules/endpoints/util-endpoints/utils/evaluateConditions.d.ts +1 -1
  539. package/node_modules/@smithy/core/dist-types/submodules/endpoints/util-endpoints/utils/evaluateExpression.d.ts +2 -2
  540. package/node_modules/@smithy/core/dist-types/submodules/endpoints/util-endpoints/utils/evaluateRules.d.ts +2 -2
  541. package/node_modules/@smithy/core/dist-types/submodules/endpoints/util-endpoints/utils/getEndpointProperties.d.ts +2 -2
  542. package/node_modules/@smithy/core/dist-types/submodules/endpoints/util-endpoints/utils/getReferenceValue.d.ts +2 -2
  543. package/node_modules/@smithy/core/dist-types/submodules/event-streams/EventStreamSerde.d.ts +14 -2
  544. package/node_modules/@smithy/core/dist-types/submodules/protocols/protocol-http/extensions/httpExtensionConfiguration.d.ts +7 -2
  545. package/node_modules/@smithy/core/dist-types/submodules/retry/util-retry/retries-2026-config.d.ts +2 -2
  546. package/node_modules/@smithy/core/dist-types/submodules/schema/TypeRegistry.d.ts +1 -1
  547. package/node_modules/@smithy/core/dist-types/submodules/serde/parse-utils.d.ts +5 -5
  548. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/CborCodec.d.ts +5 -27
  549. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/SmithyRpcV2CborProtocol.d.ts +2 -2
  550. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/codec-v1/CborShapeDeserializer.d.ts +13 -0
  551. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/codec-v1/CborShapeSerializer.d.ts +15 -0
  552. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/codec-v2/CborShapeDeserializer2.d.ts +18 -0
  553. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/codec-v2/CborShapeSerializer2.d.ts +35 -0
  554. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/cbor/index.d.ts +5 -1
  555. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/client/smithy-client/extensions/defaultExtensionConfiguration.d.ts +1 -7
  556. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/config/config-resolver/regionConfig/checkRegion.d.ts +2 -1
  557. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/endpoints/util-endpoints/utils/evaluateCondition.d.ts +1 -1
  558. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/endpoints/util-endpoints/utils/evaluateConditions.d.ts +1 -1
  559. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/endpoints/util-endpoints/utils/evaluateExpression.d.ts +2 -2
  560. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/endpoints/util-endpoints/utils/evaluateRules.d.ts +2 -2
  561. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/endpoints/util-endpoints/utils/getEndpointProperties.d.ts +2 -2
  562. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/endpoints/util-endpoints/utils/getReferenceValue.d.ts +2 -2
  563. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/event-streams/EventStreamSerde.d.ts +14 -2
  564. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/protocols/protocol-http/extensions/httpExtensionConfiguration.d.ts +7 -2
  565. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/retry/util-retry/retries-2026-config.d.ts +2 -2
  566. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/schema/TypeRegistry.d.ts +1 -1
  567. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/serde/parse-utils.d.ts +5 -5
  568. package/node_modules/@smithy/core/package.json +4 -11
  569. package/node_modules/@smithy/credential-provider-imds/package.json +4 -12
  570. package/node_modules/@smithy/fetch-http-handler/package.json +5 -13
  571. package/node_modules/@smithy/node-http-handler/dist-cjs/index.js +9 -2
  572. package/node_modules/@smithy/node-http-handler/dist-es/node-http-handler.js +9 -2
  573. package/node_modules/@smithy/node-http-handler/dist-types/node-http2-handler.d.ts +1 -1
  574. package/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http2-handler.d.ts +1 -1
  575. package/node_modules/@smithy/node-http-handler/package.json +5 -13
  576. package/node_modules/@smithy/signature-v4/dist-cjs/index.js +9 -9
  577. package/node_modules/@smithy/signature-v4/dist-es/HeaderFormatter.js +9 -9
  578. package/node_modules/@smithy/signature-v4/package.json +4 -12
  579. package/node_modules/@smithy/types/dist-types/schema/sentinels.d.ts +14 -14
  580. package/node_modules/@smithy/types/package.json +29 -39
  581. package/node_modules/@types/node/README.md +1 -1
  582. package/node_modules/@types/node/child_process.d.ts +0 -1
  583. package/node_modules/@types/node/crypto.d.ts +7 -7
  584. package/node_modules/@types/node/dns/promises.d.ts +5 -5
  585. package/node_modules/@types/node/dns.d.ts +5 -5
  586. package/node_modules/@types/node/fs.d.ts +7 -0
  587. package/node_modules/@types/node/http.d.ts +30 -0
  588. package/node_modules/@types/node/http2.d.ts +4 -4
  589. package/node_modules/@types/node/os.d.ts +30 -30
  590. package/node_modules/@types/node/package.json +2 -2
  591. package/node_modules/@types/node/perf_hooks.d.ts +2 -1
  592. package/node_modules/@types/node/process.d.ts +42 -43
  593. package/node_modules/@types/node/quic.d.ts +1049 -84
  594. package/node_modules/@types/node/sqlite.d.ts +14 -1
  595. package/node_modules/@types/node/stream/iter.d.ts +3 -2
  596. package/node_modules/@types/node/test.d.ts +61 -0
  597. package/node_modules/@types/node/v8.d.ts +20 -23
  598. package/package.json +36 -36
  599. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonCodec.d.ts +0 -19
  600. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonShapeDeserializer.d.ts +0 -13
  601. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonShapeSerializer.d.ts +0 -28
  602. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/experimental/BufferJsonShapeDeserializer.d.ts +0 -29
  603. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/experimental/ByteJsonShapeSerializer.d.ts +0 -57
  604. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/LICENSE +0 -201
  605. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/README.md +0 -9
  606. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-cjs/index.js +0 -840
  607. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/build-abort-error.js +0 -19
  608. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/constants.js +0 -1
  609. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/get-transformed-headers.js +0 -9
  610. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/http2/ClientHttp2SessionRef.js +0 -50
  611. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/index.js +0 -3
  612. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/node-http-handler.js +0 -241
  613. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/node-http2-connection-manager.js +0 -136
  614. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/node-http2-connection-pool.js +0 -46
  615. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/node-http2-handler.js +0 -173
  616. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/node-http2.js +0 -2
  617. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/node-https.js +0 -2
  618. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/set-connection-timeout.js +0 -36
  619. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/set-request-timeout.js +0 -21
  620. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/set-socket-keep-alive.js +0 -22
  621. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/set-socket-timeout.js +0 -23
  622. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/timing.js +0 -4
  623. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-es/write-request-body.js +0 -63
  624. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/build-abort-error.d.ts +0 -10
  625. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/constants.d.ts +0 -5
  626. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/get-transformed-headers.d.ts +0 -4
  627. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/http2/ClientHttp2SessionRef.d.ts +0 -46
  628. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/index.d.ts +0 -3
  629. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/node-http-handler.d.ts +0 -47
  630. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/node-http2-connection-manager.d.ts +0 -46
  631. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/node-http2-connection-pool.d.ts +0 -36
  632. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/node-http2-handler.d.ts +0 -76
  633. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/node-http2.d.ts +0 -2
  634. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/node-https.d.ts +0 -2
  635. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/set-connection-timeout.d.ts +0 -2
  636. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/set-request-timeout.d.ts +0 -6
  637. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/set-socket-keep-alive.d.ts +0 -6
  638. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/set-socket-timeout.d.ts +0 -2
  639. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/timing.d.ts +0 -9
  640. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/build-abort-error.d.ts +0 -10
  641. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/constants.d.ts +0 -5
  642. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/get-transformed-headers.d.ts +0 -4
  643. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/http2/ClientHttp2SessionRef.d.ts +0 -46
  644. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/index.d.ts +0 -3
  645. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http-handler.d.ts +0 -47
  646. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http2-connection-manager.d.ts +0 -46
  647. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http2-connection-pool.d.ts +0 -36
  648. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http2-handler.d.ts +0 -76
  649. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http2.d.ts +0 -2
  650. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-https.d.ts +0 -2
  651. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/set-connection-timeout.d.ts +0 -2
  652. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/set-request-timeout.d.ts +0 -6
  653. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/set-socket-keep-alive.d.ts +0 -6
  654. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/set-socket-timeout.d.ts +0 -2
  655. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/timing.d.ts +0 -9
  656. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/ts3.4/write-request-body.d.ts +0 -12
  657. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/dist-types/write-request-body.d.ts +0 -12
  658. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/package.json +0 -64
  659. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/LICENSE +0 -201
  660. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/README.md +0 -9
  661. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-cjs/index.js +0 -840
  662. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/build-abort-error.js +0 -19
  663. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/constants.js +0 -1
  664. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/get-transformed-headers.js +0 -9
  665. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/http2/ClientHttp2SessionRef.js +0 -50
  666. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/index.js +0 -3
  667. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/node-http-handler.js +0 -241
  668. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/node-http2-connection-manager.js +0 -136
  669. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/node-http2-connection-pool.js +0 -46
  670. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/node-http2-handler.js +0 -173
  671. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/node-http2.js +0 -2
  672. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/node-https.js +0 -2
  673. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/set-connection-timeout.js +0 -36
  674. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/set-request-timeout.js +0 -21
  675. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/set-socket-keep-alive.js +0 -22
  676. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/set-socket-timeout.js +0 -23
  677. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/timing.js +0 -4
  678. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-es/write-request-body.js +0 -63
  679. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/build-abort-error.d.ts +0 -10
  680. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/constants.d.ts +0 -5
  681. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/get-transformed-headers.d.ts +0 -4
  682. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/http2/ClientHttp2SessionRef.d.ts +0 -46
  683. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/index.d.ts +0 -3
  684. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/node-http-handler.d.ts +0 -47
  685. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/node-http2-connection-manager.d.ts +0 -46
  686. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/node-http2-connection-pool.d.ts +0 -36
  687. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/node-http2-handler.d.ts +0 -76
  688. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/node-http2.d.ts +0 -2
  689. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/node-https.d.ts +0 -2
  690. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/set-connection-timeout.d.ts +0 -2
  691. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/set-request-timeout.d.ts +0 -6
  692. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/set-socket-keep-alive.d.ts +0 -6
  693. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/set-socket-timeout.d.ts +0 -2
  694. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/timing.d.ts +0 -9
  695. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/build-abort-error.d.ts +0 -10
  696. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/constants.d.ts +0 -5
  697. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/get-transformed-headers.d.ts +0 -4
  698. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/http2/ClientHttp2SessionRef.d.ts +0 -46
  699. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/index.d.ts +0 -3
  700. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http-handler.d.ts +0 -47
  701. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http2-connection-manager.d.ts +0 -46
  702. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http2-connection-pool.d.ts +0 -36
  703. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http2-handler.d.ts +0 -76
  704. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-http2.d.ts +0 -2
  705. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/node-https.d.ts +0 -2
  706. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/set-connection-timeout.d.ts +0 -2
  707. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/set-request-timeout.d.ts +0 -6
  708. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/set-socket-keep-alive.d.ts +0 -6
  709. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/set-socket-timeout.d.ts +0 -2
  710. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/timing.d.ts +0 -9
  711. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/ts3.4/write-request-body.d.ts +0 -12
  712. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/dist-types/write-request-body.d.ts +0 -12
  713. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/package.json +0 -64
@@ -1 +1 @@
1
- {"version":3,"file":"session-reattach.d.ts","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/claude-sdk-oauth/session-reattach.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,KAAK,EAAE,OAAO,EAAkB,MAAM,mBAAmB,CAAC;AAEjE,OAAO,EAAE,KAAK,0BAA0B,EAAoC,MAAM,uBAAuB,CAAC;AAG1G,MAAM,MAAM,iBAAiB,GAAG;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,qFAAqF;IACrF,oBAAoB,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;CAC9D,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC3B,OAAO,EAAE,iBAAiB,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,WAAW,CAAC;CACrB,CAAC;AAIF,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,UAAU,CAAC;AAU/C,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,YAAY,CAInE;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAEhE;AAED,wBAAgB,UAAU,CAAC,cAAc,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAGhF;AAED,wBAAgB,aAAa,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAE1D;AAED,wBAAgB,gBAAgB,CAC/B,KAAK,EAAE,IAAI,CACV,0BAA0B,EACxB,gBAAgB,GAChB,cAAc,GACd,WAAW,GACX,aAAa,GACb,SAAS,GACT,kBAAkB,GAClB,aAAa,GACb,sBAAsB,CACxB,EACD,UAAU,EAAE,SAAS,MAAM,EAAE,GAC3B,iBAAiB,CAanB;AAED,wBAAsB,wBAAwB,CAC7C,OAAO,EAAE,iBAAiB,EAC1B,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,sBAAsB,GAC9B,OAAO,CAAC,OAAO,CAAC,CAmBlB;AAoBD;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAyB/F"}
1
+ {"version":3,"file":"session-reattach.d.ts","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/claude-sdk-oauth/session-reattach.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,cAAc,CAAC;AAC3D,OAAO,KAAK,EAAE,OAAO,EAAkB,MAAM,mBAAmB,CAAC;AAEjE,OAAO,EAAE,KAAK,0BAA0B,EAAoC,MAAM,uBAAuB,CAAC;AAG1G,MAAM,MAAM,iBAAiB,GAAG;IAC/B,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,MAAM,CAAC;IACzB,WAAW,EAAE,MAAM,CAAC;IACpB,qFAAqF;IACrF,oBAAoB,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,EAAE,CAAC;IAC9D;;;;;;OAMG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC9B,CAAC;AAEF,MAAM,MAAM,aAAa,GAAG;IAC3B,OAAO,EAAE,iBAAiB,CAAC;IAC3B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,WAAW,CAAC;CACrB,CAAC;AAIF,MAAM,MAAM,YAAY,GAAG,MAAM,GAAG,UAAU,CAAC;AAU/C,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,OAAO,GAAG,YAAY,CAInE;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,iBAAiB,GAAG,IAAI,CAEhE;AAED,wBAAgB,UAAU,CAAC,cAAc,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS,CAGhF;AAED,wBAAgB,aAAa,CAAC,cAAc,EAAE,MAAM,GAAG,IAAI,CAE1D;AAED,wBAAgB,gBAAgB,CAC/B,KAAK,EAAE,IAAI,CACV,0BAA0B,EACxB,gBAAgB,GAChB,cAAc,GACd,WAAW,GACX,aAAa,GACb,SAAS,GACT,kBAAkB,GAClB,aAAa,GACb,sBAAsB,CACxB,EACD,UAAU,EAAE,SAAS,MAAM,EAAE,GAC3B,iBAAiB,CAanB;AAED,wBAAsB,wBAAwB,CAC7C,OAAO,EAAE,iBAAiB,EAC1B,GAAG,EAAE,MAAM,EACX,QAAQ,EAAE,sBAAsB,GAC9B,OAAO,CAAC,OAAO,CAAC,CAmBlB;AAoBD;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,0BAA0B,CAAC,CA4B/F"}
@@ -1,4 +1,4 @@
1
- import { getSdkBoundary } from "./sdk-boundary.js";
1
+ import { getSdkBoundary, loadClaudeAgentSdk } from "./sdk-boundary.js";
2
2
  import { closeSession, getOrCreateSession } from "./session-registry.js";
3
3
  import { recordSyncedStream } from "./session-sync.js";
4
4
  const bindings = new Map();
@@ -86,6 +86,9 @@ async function awaitInitialization(entry, signal) {
86
86
  * (sdk.d.ts:1805-1808) and would otherwise silently start an unrelated session.
87
87
  */
88
88
  export async function reattachSession(input) {
89
+ // getOrCreateSession() reaches the synchronous SDK `query` through the
90
+ // session-registry boundary - see sdk-boundary.lazy.ts.
91
+ await loadClaudeAgentSdk();
89
92
  const { binding, atUuid } = input;
90
93
  closeSession(binding.senpiSessionId, "reattach");
91
94
  const entry = getOrCreateSession({
@@ -1 +1 @@
1
- {"version":3,"file":"session-reattach.js","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/claude-sdk-oauth/session-reattach.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ClaudeSdkOauthAuthLane } from \"./options.ts\";\nimport type { Options, SessionMessage } from \"./sdk-boundary.ts\";\nimport { getSdkBoundary } from \"./sdk-boundary.ts\";\nimport { type ClaudeSdkOauthSessionEntry, closeSession, getOrCreateSession } from \"./session-registry.ts\";\nimport { recordSyncedStream } from \"./session-sync.ts\";\n\nexport type ContinuityBinding = {\n\tsenpiSessionId: string;\n\tsdkSessionId: string;\n\tsentCount: number;\n\tsentHashes: readonly string[];\n\tsentPrefixHash?: string;\n\tlastAssistantUuid: string | null;\n\taccountName: string;\n\tmodelId: string;\n\tsystemPromptHash: string;\n\ttoolsetHash: string;\n\t/** Assistant boundaries kept as entries so a later fork still has a resume point. */\n\tassistantUuidByIndex?: readonly (readonly [number, string])[];\n};\n\nexport type ReattachInput = {\n\tbinding: ContinuityBinding;\n\toptions: Options;\n\tatUuid?: string;\n\tsignal?: AbortSignal;\n};\n\nconst bindings = new Map<string, ContinuityBinding>();\n\nexport type AbortOutcome = \"keep\" | \"reattach\";\n\nfunction cloneBinding(binding: ContinuityBinding): ContinuityBinding {\n\treturn {\n\t\t...binding,\n\t\tsentHashes: [...binding.sentHashes],\n\t\tassistantUuidByIndex: binding.assistantUuidByIndex?.map(([index, uuid]) => [index, uuid]),\n\t};\n}\n\nexport function evaluateAbortOutcome(receipt: unknown): AbortOutcome {\n\tif (!receipt || typeof receipt !== \"object\") return \"reattach\";\n\tconst queued = (receipt as { still_queued?: unknown }).still_queued;\n\treturn Array.isArray(queued) && queued.length === 0 ? \"keep\" : \"reattach\";\n}\n\nexport function rememberBinding(binding: ContinuityBinding): void {\n\tbindings.set(binding.senpiSessionId, cloneBinding(binding));\n}\n\nexport function getBinding(senpiSessionId: string): ContinuityBinding | undefined {\n\tconst binding = bindings.get(senpiSessionId);\n\treturn binding ? cloneBinding(binding) : undefined;\n}\n\nexport function forgetBinding(senpiSessionId: string): void {\n\tbindings.delete(senpiSessionId);\n}\n\nexport function bindingFromEntry(\n\tentry: Pick<\n\t\tClaudeSdkOauthSessionEntry,\n\t\t| \"senpiSessionId\"\n\t\t| \"sdkSessionId\"\n\t\t| \"sentCount\"\n\t\t| \"accountName\"\n\t\t| \"modelId\"\n\t\t| \"systemPromptHash\"\n\t\t| \"toolsetHash\"\n\t\t| \"assistantUuidByIndex\"\n\t>,\n\tsentHashes: readonly string[],\n): ContinuityBinding {\n\treturn {\n\t\tsenpiSessionId: entry.senpiSessionId,\n\t\tsdkSessionId: entry.sdkSessionId,\n\t\tsentCount: entry.sentCount,\n\t\tsentHashes: [...sentHashes],\n\t\tlastAssistantUuid: entry.assistantUuidByIndex.get(entry.sentCount) ?? null,\n\t\tassistantUuidByIndex: [...entry.assistantUuidByIndex.entries()],\n\t\taccountName: entry.accountName,\n\t\tmodelId: entry.modelId,\n\t\tsystemPromptHash: entry.systemPromptHash,\n\t\ttoolsetHash: entry.toolsetHash,\n\t};\n}\n\nexport async function verifyRestoredTranscript(\n\tbinding: ContinuityBinding,\n\tcwd: string,\n\tauthLane: ClaudeSdkOauthAuthLane,\n): Promise<boolean> {\n\tif (authLane === \"config-dir\") return false;\n\tlet messages: SessionMessage[];\n\ttry {\n\t\tmessages = await getSdkBoundary().getSessionMessages(binding.sdkSessionId, { dir: cwd });\n\t} catch (error) {\n\t\tif (error instanceof Error) return false;\n\t\tthrow error;\n\t}\n\tif (messages.length === 0 || messages.some((message) => message.session_id !== binding.sdkSessionId)) {\n\t\treturn false;\n\t}\n\tif (binding.lastAssistantUuid === null) return true;\n\treturn messages.some(\n\t\t(message) =>\n\t\t\tmessage.type === \"assistant\" &&\n\t\t\tmessage.uuid === binding.lastAssistantUuid &&\n\t\t\tmessage.parent_tool_use_id === null,\n\t);\n}\n\nasync function awaitInitialization(entry: ClaudeSdkOauthSessionEntry, signal?: AbortSignal): Promise<void> {\n\tconst initialize = entry.query.initializationResult;\n\tif (!initialize) return;\n\tif (!signal) {\n\t\tawait initialize.call(entry.query);\n\t\treturn;\n\t}\n\tconst aborted = new Promise<never>((_resolve, reject) => {\n\t\tconst onAbort = (): void => {\n\t\t\tcloseSession(entry.senpiSessionId, \"resume_initialization_aborted\");\n\t\t\treject(new Error(\"Claude SDK OAuth reattach aborted\"));\n\t\t};\n\t\tif (signal.aborted) onAbort();\n\t\telse signal.addEventListener(\"abort\", onAbort, { once: true });\n\t});\n\tawait Promise.race([initialize.call(entry.query), aborted]);\n}\n\n/**\n * A new query is not a new session: `resume` re-attaches to the existing lineage.\n * `sessionId` must stay absent unless forking, because the SDK rejects the pair\n * (sdk.d.ts:1805-1808) and would otherwise silently start an unrelated session.\n */\nexport async function reattachSession(input: ReattachInput): Promise<ClaudeSdkOauthSessionEntry> {\n\tconst { binding, atUuid } = input;\n\tcloseSession(binding.senpiSessionId, \"reattach\");\n\tconst entry = getOrCreateSession({\n\t\tsenpiSessionId: binding.senpiSessionId,\n\t\taccountName: binding.accountName,\n\t\tmodelId: binding.modelId,\n\t\tsystemPromptHash: binding.systemPromptHash,\n\t\ttoolsetHash: binding.toolsetHash,\n\t\toptions: input.options,\n\t\tresume: atUuid ? { sdkSessionId: binding.sdkSessionId, atUuid } : { sdkSessionId: binding.sdkSessionId },\n\t});\n\n\ttry {\n\t\tawait awaitInitialization(entry, input.signal);\n\t} catch (error) {\n\t\tcloseSession(binding.senpiSessionId, \"resume_initialization_failed\");\n\t\tthrow error;\n\t}\n\n\trecordSyncedStream(entry, binding.sentHashes);\n\tfor (const [index, uuid] of binding.assistantUuidByIndex ?? []) entry.assistantUuidByIndex.set(index, uuid);\n\tif (binding.lastAssistantUuid) entry.assistantUuidByIndex.set(binding.sentCount, binding.lastAssistantUuid);\n\trememberBinding({ ...binding, sdkSessionId: entry.sdkSessionId });\n\treturn entry;\n}\n"]}
1
+ {"version":3,"file":"session-reattach.js","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/claude-sdk-oauth/session-reattach.ts"],"names":[],"mappings":"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","sourcesContent":["import type { ClaudeSdkOauthAuthLane } from \"./options.ts\";\nimport type { Options, SessionMessage } from \"./sdk-boundary.ts\";\nimport { getSdkBoundary, loadClaudeAgentSdk } from \"./sdk-boundary.ts\";\nimport { type ClaudeSdkOauthSessionEntry, closeSession, getOrCreateSession } from \"./session-registry.ts\";\nimport { recordSyncedStream } from \"./session-sync.ts\";\n\nexport type ContinuityBinding = {\n\tsenpiSessionId: string;\n\tsdkSessionId: string;\n\tsentCount: number;\n\tsentHashes: readonly string[];\n\tsentPrefixHash?: string;\n\tlastAssistantUuid: string | null;\n\taccountName: string;\n\tmodelId: string;\n\tsystemPromptHash: string;\n\ttoolsetHash: string;\n\t/** Assistant boundaries kept as entries so a later fork still has a resume point. */\n\tassistantUuidByIndex?: readonly (readonly [number, string])[];\n\t/**\n\t * Digest of the FULL sent stream an attempt pushed but never got answered\n\t * (stream-start timeout abort/failure). Purely in-memory: it lets the SAME\n\t * turn's retry fork at the pre-turn boundary instead of re-appending its user\n\t * message to a lineage that already carries it. Never persisted — the sidecar\n\t * schema is fixed at schemaVersion 1 and restart retries are out of scope.\n\t */\n\tunansweredTurnDigest?: string;\n};\n\nexport type ReattachInput = {\n\tbinding: ContinuityBinding;\n\toptions: Options;\n\tatUuid?: string;\n\tsignal?: AbortSignal;\n};\n\nconst bindings = new Map<string, ContinuityBinding>();\n\nexport type AbortOutcome = \"keep\" | \"reattach\";\n\nfunction cloneBinding(binding: ContinuityBinding): ContinuityBinding {\n\treturn {\n\t\t...binding,\n\t\tsentHashes: [...binding.sentHashes],\n\t\tassistantUuidByIndex: binding.assistantUuidByIndex?.map(([index, uuid]) => [index, uuid]),\n\t};\n}\n\nexport function evaluateAbortOutcome(receipt: unknown): AbortOutcome {\n\tif (!receipt || typeof receipt !== \"object\") return \"reattach\";\n\tconst queued = (receipt as { still_queued?: unknown }).still_queued;\n\treturn Array.isArray(queued) && queued.length === 0 ? \"keep\" : \"reattach\";\n}\n\nexport function rememberBinding(binding: ContinuityBinding): void {\n\tbindings.set(binding.senpiSessionId, cloneBinding(binding));\n}\n\nexport function getBinding(senpiSessionId: string): ContinuityBinding | undefined {\n\tconst binding = bindings.get(senpiSessionId);\n\treturn binding ? cloneBinding(binding) : undefined;\n}\n\nexport function forgetBinding(senpiSessionId: string): void {\n\tbindings.delete(senpiSessionId);\n}\n\nexport function bindingFromEntry(\n\tentry: Pick<\n\t\tClaudeSdkOauthSessionEntry,\n\t\t| \"senpiSessionId\"\n\t\t| \"sdkSessionId\"\n\t\t| \"sentCount\"\n\t\t| \"accountName\"\n\t\t| \"modelId\"\n\t\t| \"systemPromptHash\"\n\t\t| \"toolsetHash\"\n\t\t| \"assistantUuidByIndex\"\n\t>,\n\tsentHashes: readonly string[],\n): ContinuityBinding {\n\treturn {\n\t\tsenpiSessionId: entry.senpiSessionId,\n\t\tsdkSessionId: entry.sdkSessionId,\n\t\tsentCount: entry.sentCount,\n\t\tsentHashes: [...sentHashes],\n\t\tlastAssistantUuid: entry.assistantUuidByIndex.get(entry.sentCount) ?? null,\n\t\tassistantUuidByIndex: [...entry.assistantUuidByIndex.entries()],\n\t\taccountName: entry.accountName,\n\t\tmodelId: entry.modelId,\n\t\tsystemPromptHash: entry.systemPromptHash,\n\t\ttoolsetHash: entry.toolsetHash,\n\t};\n}\n\nexport async function verifyRestoredTranscript(\n\tbinding: ContinuityBinding,\n\tcwd: string,\n\tauthLane: ClaudeSdkOauthAuthLane,\n): Promise<boolean> {\n\tif (authLane === \"config-dir\") return false;\n\tlet messages: SessionMessage[];\n\ttry {\n\t\tmessages = await getSdkBoundary().getSessionMessages(binding.sdkSessionId, { dir: cwd });\n\t} catch (error) {\n\t\tif (error instanceof Error) return false;\n\t\tthrow error;\n\t}\n\tif (messages.length === 0 || messages.some((message) => message.session_id !== binding.sdkSessionId)) {\n\t\treturn false;\n\t}\n\tif (binding.lastAssistantUuid === null) return true;\n\treturn messages.some(\n\t\t(message) =>\n\t\t\tmessage.type === \"assistant\" &&\n\t\t\tmessage.uuid === binding.lastAssistantUuid &&\n\t\t\tmessage.parent_tool_use_id === null,\n\t);\n}\n\nasync function awaitInitialization(entry: ClaudeSdkOauthSessionEntry, signal?: AbortSignal): Promise<void> {\n\tconst initialize = entry.query.initializationResult;\n\tif (!initialize) return;\n\tif (!signal) {\n\t\tawait initialize.call(entry.query);\n\t\treturn;\n\t}\n\tconst aborted = new Promise<never>((_resolve, reject) => {\n\t\tconst onAbort = (): void => {\n\t\t\tcloseSession(entry.senpiSessionId, \"resume_initialization_aborted\");\n\t\t\treject(new Error(\"Claude SDK OAuth reattach aborted\"));\n\t\t};\n\t\tif (signal.aborted) onAbort();\n\t\telse signal.addEventListener(\"abort\", onAbort, { once: true });\n\t});\n\tawait Promise.race([initialize.call(entry.query), aborted]);\n}\n\n/**\n * A new query is not a new session: `resume` re-attaches to the existing lineage.\n * `sessionId` must stay absent unless forking, because the SDK rejects the pair\n * (sdk.d.ts:1805-1808) and would otherwise silently start an unrelated session.\n */\nexport async function reattachSession(input: ReattachInput): Promise<ClaudeSdkOauthSessionEntry> {\n\t// getOrCreateSession() reaches the synchronous SDK `query` through the\n\t// session-registry boundary - see sdk-boundary.lazy.ts.\n\tawait loadClaudeAgentSdk();\n\tconst { binding, atUuid } = input;\n\tcloseSession(binding.senpiSessionId, \"reattach\");\n\tconst entry = getOrCreateSession({\n\t\tsenpiSessionId: binding.senpiSessionId,\n\t\taccountName: binding.accountName,\n\t\tmodelId: binding.modelId,\n\t\tsystemPromptHash: binding.systemPromptHash,\n\t\ttoolsetHash: binding.toolsetHash,\n\t\toptions: input.options,\n\t\tresume: atUuid ? { sdkSessionId: binding.sdkSessionId, atUuid } : { sdkSessionId: binding.sdkSessionId },\n\t});\n\n\ttry {\n\t\tawait awaitInitialization(entry, input.signal);\n\t} catch (error) {\n\t\tcloseSession(binding.senpiSessionId, \"resume_initialization_failed\");\n\t\tthrow error;\n\t}\n\n\trecordSyncedStream(entry, binding.sentHashes);\n\tfor (const [index, uuid] of binding.assistantUuidByIndex ?? []) entry.assistantUuidByIndex.set(index, uuid);\n\tif (binding.lastAssistantUuid) entry.assistantUuidByIndex.set(binding.sentCount, binding.lastAssistantUuid);\n\trememberBinding({ ...binding, sdkSessionId: entry.sdkSessionId });\n\treturn entry;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"session-turn-attempt.d.ts","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/claude-sdk-oauth/session-turn-attempt.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEpE,OAAO,EACN,KAAK,0BAA0B,EAI/B,MAAM,uBAAuB,CAAC;AAI/B,KAAK,wBAAwB,GAAG;IAAE,IAAI,IAAI,IAAI,CAAA;CAAE,CAAC;AAYjD,wBAAgB,wBAAwB,CACvC,KAAK,EAAE,0BAA0B,EACjC,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,EAClC,MAAM,EAAE,SAAS,MAAM,EAAE,EACzB,MAAM,EAAE,WAAW,GAAG,SAAS,EAC/B,MAAM,EAAE,wBAAwB;;mBA6BlB,IAAI;EAMlB"}
1
+ {"version":3,"file":"session-turn-attempt.d.ts","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/claude-sdk-oauth/session-turn-attempt.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEpE,OAAO,EACN,KAAK,0BAA0B,EAI/B,MAAM,uBAAuB,CAAC;AAI/B,KAAK,wBAAwB,GAAG;IAAE,IAAI,IAAI,IAAI,CAAA;CAAE,CAAC;AA4BjD,wBAAgB,wBAAwB,CACvC,KAAK,EAAE,0BAA0B,EACjC,OAAO,EAAE,cAAc,CAAC,SAAS,CAAC,EAClC,MAAM,EAAE,SAAS,MAAM,EAAE,EACzB,MAAM,EAAE,WAAW,GAAG,SAAS,EAC/B,MAAM,EAAE,wBAAwB;;mBAqClB,IAAI;EAOlB"}
@@ -2,7 +2,7 @@ import { BoundedAsyncQueue, SESSION_STREAM_QUEUE_CAPACITY } from "./bounded-queu
2
2
  import { bindingFromEntry, rememberBinding } from "./session-reattach.js";
3
3
  import { closeSession, isCurrentGeneration, sessionRegistry, } from "./session-registry.js";
4
4
  import { submitSessionTurn } from "./session-registry-pump.js";
5
- import { recordSyncedStream } from "./session-sync.js";
5
+ import { recordSyncedStream, sentHashPrefixDigest } from "./session-sync.js";
6
6
  function successfulTurn(messages) {
7
7
  return messages.some((message) => message.type === "result" && message.subtype === "success");
8
8
  }
@@ -11,6 +11,22 @@ function recordAssistantUuid(entry, sentCount, message) {
11
11
  entry.assistantUuidByIndex.set(sentCount, message.uuid);
12
12
  }
13
13
  }
14
+ /**
15
+ * An attempt that pushed its user payload and then aborted or failed leaves that
16
+ * message on the lineage un-answered: `recordSyncedStream` never ran, so the
17
+ * entry still points at the PRE-TURN boundary. Remembering the binding at that
18
+ * boundary, tagged with the attempted turn's full sent-stream digest, lets the
19
+ * SAME turn's retry fork past the orphaned message instead of appending it
20
+ * twice (issue #723 retry storm). In-memory only — nothing here is persisted.
21
+ */
22
+ function rememberRetryCheckpoint(entry, hashes) {
23
+ if (entry.sentCount < 0 || entry.sentCount > hashes.length)
24
+ return;
25
+ rememberBinding({
26
+ ...bindingFromEntry(entry, hashes.slice(0, entry.sentCount)),
27
+ unansweredTurnDigest: sentHashPrefixDigest(hashes, hashes.length),
28
+ });
29
+ }
14
30
  export function createSessionTurnAttempt(entry, message, hashes, signal, staged) {
15
31
  const generation = entry.generation;
16
32
  return {
@@ -33,12 +49,23 @@ export function createSessionTurnAttempt(entry, message, hashes, signal, staged)
33
49
  recordSyncedStream(entry, hashes);
34
50
  rememberBinding(bindingFromEntry(entry, hashes));
35
51
  }
52
+ else {
53
+ rememberRetryCheckpoint(entry, hashes);
54
+ }
55
+ }
56
+ catch (error) {
57
+ // The queue failed (completion rejected: pump failure, query end,
58
+ // attribution error). The payload was still pushed, so the retry needs
59
+ // the same checkpoint the aborted path records.
60
+ rememberRetryCheckpoint(entry, hashes);
61
+ throw error;
36
62
  }
37
63
  finally {
38
64
  staged.emit();
39
65
  }
40
66
  })(),
41
67
  discard: () => {
68
+ rememberRetryCheckpoint(entry, hashes);
42
69
  if (isCurrentGeneration(entry.senpiSessionId, generation)) {
43
70
  closeSession(entry.senpiSessionId, "attempt_discarded");
44
71
  }
@@ -1 +1 @@
1
- {"version":3,"file":"session-turn-attempt.js","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/claude-sdk-oauth/session-turn-attempt.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,6BAA6B,EAAE,MAAM,oBAAoB,CAAC;AAEtF,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,EAEN,YAAY,EACZ,mBAAmB,EACnB,eAAe,GACf,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAC/D,OAAO,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AAIvD,SAAS,cAAc,CAAC,QAA+B;IACtD,OAAO,QAAQ,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC;AAC/F,CAAC;AAED,SAAS,mBAAmB,CAAC,KAAiC,EAAE,SAAiB,EAAE,OAAmB;IACrG,IAAI,OAAO,CAAC,IAAI,KAAK,WAAW,IAAI,OAAO,CAAC,kBAAkB,KAAK,IAAI,EAAE,CAAC;QACzE,KAAK,CAAC,oBAAoB,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC;IACzD,CAAC;AACF,CAAC;AAED,MAAM,UAAU,wBAAwB,CACvC,KAAiC,EACjC,OAAkC,EAClC,MAAyB,EACzB,MAA+B,EAC/B,MAAgC;IAEhC,MAAM,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;IACpC,OAAO;QACN,QAAQ,EAAE,CAAC,KAAK,SAAS,CAAC;YACzB,MAAM,KAAK,GAAG,IAAI,iBAAiB,CAAa,6BAA6B,CAAC,CAAC;YAC/E,MAAM,UAAU,GAAG,iBAAiB,CAAC,eAAe,EAAE,KAAK,EAAE;gBAC5D,OAAO;gBACP,MAAM;gBACN,SAAS,EAAE,CAAC,UAAU,EAAE,EAAE;oBACzB,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;oBACtD,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBACxB,CAAC;aACD,CAAC,CAAC;YACH,KAAK,UAAU,CAAC,IAAI,CACnB,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE,EACnB,CAAC,KAAc,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CACrC,CAAC;YACF,IAAI,CAAC;gBACJ,IAAI,KAAK,EAAE,MAAM,UAAU,IAAI,KAAK;oBAAE,MAAM,UAAU,CAAC;gBACvD,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC;gBAC9B,IAAI,CAAC,IAAI,CAAC,OAAO,IAAI,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACpD,kBAAkB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;oBAClC,eAAe,CAAC,gBAAgB,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC,CAAC;gBAClD,CAAC;YACF,CAAC;oBAAS,CAAC;gBACV,MAAM,CAAC,IAAI,EAAE,CAAC;YACf,CAAC;QACF,CAAC,CAAC,EAAE;QACJ,OAAO,EAAE,GAAS,EAAE;YACnB,IAAI,mBAAmB,CAAC,KAAK,CAAC,cAAc,EAAE,UAAU,CAAC,EAAE,CAAC;gBAC3D,YAAY,CAAC,KAAK,CAAC,cAAc,EAAE,mBAAmB,CAAC,CAAC;YACzD,CAAC;QACF,CAAC;KACD,CAAC;AACH,CAAC","sourcesContent":["import { BoundedAsyncQueue, SESSION_STREAM_QUEUE_CAPACITY } from \"./bounded-queue.ts\";\nimport type { SDKMessage, SDKUserMessage } from \"./sdk-boundary.ts\";\nimport { bindingFromEntry, rememberBinding } from \"./session-reattach.ts\";\nimport {\n\ttype ClaudeSdkOauthSessionEntry,\n\tcloseSession,\n\tisCurrentGeneration,\n\tsessionRegistry,\n} from \"./session-registry.ts\";\nimport { submitSessionTurn } from \"./session-registry-pump.ts\";\nimport { recordSyncedStream } from \"./session-sync.ts\";\n\ntype StagedContinuityDecision = { emit(): void };\n\nfunction successfulTurn(messages: readonly SDKMessage[]): boolean {\n\treturn messages.some((message) => message.type === \"result\" && message.subtype === \"success\");\n}\n\nfunction recordAssistantUuid(entry: ClaudeSdkOauthSessionEntry, sentCount: number, message: SDKMessage): void {\n\tif (message.type === \"assistant\" && message.parent_tool_use_id === null) {\n\t\tentry.assistantUuidByIndex.set(sentCount, message.uuid);\n\t}\n}\n\nexport function createSessionTurnAttempt(\n\tentry: ClaudeSdkOauthSessionEntry,\n\tmessage: SDKUserMessage[\"message\"],\n\thashes: readonly string[],\n\tsignal: AbortSignal | undefined,\n\tstaged: StagedContinuityDecision,\n) {\n\tconst generation = entry.generation;\n\treturn {\n\t\tmessages: (async function* (): AsyncGenerator<SDKMessage> {\n\t\t\tconst queue = new BoundedAsyncQueue<SDKMessage>(SESSION_STREAM_QUEUE_CAPACITY);\n\t\t\tconst completion = submitSessionTurn(sessionRegistry, entry, {\n\t\t\t\tmessage,\n\t\t\t\tsignal,\n\t\t\t\tonMessage: (sdkMessage) => {\n\t\t\t\t\trecordAssistantUuid(entry, hashes.length, sdkMessage);\n\t\t\t\t\tqueue.push(sdkMessage);\n\t\t\t\t},\n\t\t\t});\n\t\t\tvoid completion.then(\n\t\t\t\t() => queue.close(),\n\t\t\t\t(error: unknown) => queue.fail(error),\n\t\t\t);\n\t\t\ttry {\n\t\t\t\tfor await (const sdkMessage of queue) yield sdkMessage;\n\t\t\t\tconst turn = await completion;\n\t\t\t\tif (!turn.aborted && successfulTurn(turn.messages)) {\n\t\t\t\t\trecordSyncedStream(entry, hashes);\n\t\t\t\t\trememberBinding(bindingFromEntry(entry, hashes));\n\t\t\t\t}\n\t\t\t} finally {\n\t\t\t\tstaged.emit();\n\t\t\t}\n\t\t})(),\n\t\tdiscard: (): void => {\n\t\t\tif (isCurrentGeneration(entry.senpiSessionId, generation)) {\n\t\t\t\tcloseSession(entry.senpiSessionId, \"attempt_discarded\");\n\t\t\t}\n\t\t},\n\t};\n}\n"]}
1
+ {"version":3,"file":"session-turn-attempt.js","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/claude-sdk-oauth/session-turn-attempt.ts"],"names":[],"mappings":"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","sourcesContent":["import { BoundedAsyncQueue, SESSION_STREAM_QUEUE_CAPACITY } from \"./bounded-queue.ts\";\nimport type { SDKMessage, SDKUserMessage } from \"./sdk-boundary.ts\";\nimport { bindingFromEntry, rememberBinding } from \"./session-reattach.ts\";\nimport {\n\ttype ClaudeSdkOauthSessionEntry,\n\tcloseSession,\n\tisCurrentGeneration,\n\tsessionRegistry,\n} from \"./session-registry.ts\";\nimport { submitSessionTurn } from \"./session-registry-pump.ts\";\nimport { recordSyncedStream, sentHashPrefixDigest } from \"./session-sync.ts\";\n\ntype StagedContinuityDecision = { emit(): void };\n\nfunction successfulTurn(messages: readonly SDKMessage[]): boolean {\n\treturn messages.some((message) => message.type === \"result\" && message.subtype === \"success\");\n}\n\nfunction recordAssistantUuid(entry: ClaudeSdkOauthSessionEntry, sentCount: number, message: SDKMessage): void {\n\tif (message.type === \"assistant\" && message.parent_tool_use_id === null) {\n\t\tentry.assistantUuidByIndex.set(sentCount, message.uuid);\n\t}\n}\n\n/**\n * An attempt that pushed its user payload and then aborted or failed leaves that\n * message on the lineage un-answered: `recordSyncedStream` never ran, so the\n * entry still points at the PRE-TURN boundary. Remembering the binding at that\n * boundary, tagged with the attempted turn's full sent-stream digest, lets the\n * SAME turn's retry fork past the orphaned message instead of appending it\n * twice (issue #723 retry storm). In-memory only — nothing here is persisted.\n */\nfunction rememberRetryCheckpoint(entry: ClaudeSdkOauthSessionEntry, hashes: readonly string[]): void {\n\tif (entry.sentCount < 0 || entry.sentCount > hashes.length) return;\n\trememberBinding({\n\t\t...bindingFromEntry(entry, hashes.slice(0, entry.sentCount)),\n\t\tunansweredTurnDigest: sentHashPrefixDigest(hashes, hashes.length),\n\t});\n}\n\nexport function createSessionTurnAttempt(\n\tentry: ClaudeSdkOauthSessionEntry,\n\tmessage: SDKUserMessage[\"message\"],\n\thashes: readonly string[],\n\tsignal: AbortSignal | undefined,\n\tstaged: StagedContinuityDecision,\n) {\n\tconst generation = entry.generation;\n\treturn {\n\t\tmessages: (async function* (): AsyncGenerator<SDKMessage> {\n\t\t\tconst queue = new BoundedAsyncQueue<SDKMessage>(SESSION_STREAM_QUEUE_CAPACITY);\n\t\t\tconst completion = submitSessionTurn(sessionRegistry, entry, {\n\t\t\t\tmessage,\n\t\t\t\tsignal,\n\t\t\t\tonMessage: (sdkMessage) => {\n\t\t\t\t\trecordAssistantUuid(entry, hashes.length, sdkMessage);\n\t\t\t\t\tqueue.push(sdkMessage);\n\t\t\t\t},\n\t\t\t});\n\t\t\tvoid completion.then(\n\t\t\t\t() => queue.close(),\n\t\t\t\t(error: unknown) => queue.fail(error),\n\t\t\t);\n\t\t\ttry {\n\t\t\t\tfor await (const sdkMessage of queue) yield sdkMessage;\n\t\t\t\tconst turn = await completion;\n\t\t\t\tif (!turn.aborted && successfulTurn(turn.messages)) {\n\t\t\t\t\trecordSyncedStream(entry, hashes);\n\t\t\t\t\trememberBinding(bindingFromEntry(entry, hashes));\n\t\t\t\t} else {\n\t\t\t\t\trememberRetryCheckpoint(entry, hashes);\n\t\t\t\t}\n\t\t\t} catch (error) {\n\t\t\t\t// The queue failed (completion rejected: pump failure, query end,\n\t\t\t\t// attribution error). The payload was still pushed, so the retry needs\n\t\t\t\t// the same checkpoint the aborted path records.\n\t\t\t\trememberRetryCheckpoint(entry, hashes);\n\t\t\t\tthrow error;\n\t\t\t} finally {\n\t\t\t\tstaged.emit();\n\t\t\t}\n\t\t})(),\n\t\tdiscard: (): void => {\n\t\t\trememberRetryCheckpoint(entry, hashes);\n\t\t\tif (isCurrentGeneration(entry.senpiSessionId, generation)) {\n\t\t\t\tcloseSession(entry.senpiSessionId, \"attempt_discarded\");\n\t\t\t}\n\t\t},\n\t};\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/claude-sdk-oauth/stream.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,GAAG,EACR,KAAK,2BAA2B,EAChC,KAAK,OAAO,EAGZ,KAAK,KAAK,EACV,KAAK,mBAAmB,EACxB,MAAM,uBAAuB,CAAC;AAkB/B,wBAAgB,oBAAoB,CACnC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EACjB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,mBAAmB,GAC3B,2BAA2B,CA+L7B"}
1
+ {"version":3,"file":"stream.d.ts","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/claude-sdk-oauth/stream.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,KAAK,GAAG,EACR,KAAK,2BAA2B,EAChC,KAAK,OAAO,EAGZ,KAAK,KAAK,EACV,KAAK,mBAAmB,EACxB,MAAM,uBAAuB,CAAC;AAkB/B,wBAAgB,oBAAoB,CACnC,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,EACjB,OAAO,EAAE,OAAO,EAChB,OAAO,CAAC,EAAE,mBAAmB,GAC3B,2BAA2B,CAkM7B"}
@@ -6,7 +6,7 @@ import { defaultExecutableDeps, resolveClaudeCodeExecutable } from "./executable
6
6
  import { buildClaudeSdkOauthQueryOptions } from "./options.js";
7
7
  import { buildPromptBlocks, buildPromptStream } from "./prompt-bridge.js";
8
8
  import { dedupeUltraworkBlocks } from "./prompt-directive-dedupe.js";
9
- import { getSdkBoundary } from "./sdk-boundary.js";
9
+ import { getSdkBoundary, loadClaudeAgentSdk } from "./sdk-boundary.js";
10
10
  import { emitContinuityObservation } from "./session-observability.js";
11
11
  import { residentSessionMessages } from "./session-stream.js";
12
12
  import { loadClaudeSdkOauthProviderSettingsFromDisk } from "./settings.js";
@@ -48,6 +48,9 @@ export function streamClaudeSdkOauth(model, context, options) {
48
48
  else
49
49
  options?.signal?.addEventListener("abort", onAbort, { once: true });
50
50
  try {
51
+ // Resident before the synchronous SDK member below (getSdkBoundary().query)
52
+ // reads it - see sdk-boundary.lazy.ts.
53
+ await loadClaudeAgentSdk();
51
54
  const resolvedTools = resolveSdkTools(context);
52
55
  const affinityKey = options?.affinitySessionId ?? options?.sessionId;
53
56
  const sessionKey = options?.sessionId ? toolWatch.sessionKey(options.sessionId) : undefined;
@@ -55,7 +58,7 @@ export function streamClaudeSdkOauth(model, context, options) {
55
58
  toolWatch.reconcileWithContext(sessionKey, context);
56
59
  const toolWatchNote = toolWatch.buildPromptNote(sessionKey, context, resolvedTools.customToolNameToSdk);
57
60
  const providerSettings = loadClaudeSdkOauthProviderSettingsFromDisk(process.cwd());
58
- const mcpServers = buildCustomToolServers(resolvedTools.customTools);
61
+ const mcpServers = await buildCustomToolServers(resolvedTools.customTools);
59
62
  const executable = resolveClaudeCodeExecutable(defaultExecutableDeps());
60
63
  const buildOptions = (authLane) => {
61
64
  const queryOptions = buildClaudeSdkOauthQueryOptions({
@@ -1 +1 @@
1
- {"version":3,"file":"stream.js","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/claude-sdk-oauth/stream.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n\ttype Api,\n\ttype AssistantMessageEventStream,\n\ttype Context,\n\tcreateAssistantMessageDiagnostic,\n\tcreateAssistantMessageEventStream,\n\ttype Model,\n\ttype SimpleStreamOptions,\n} from \"@earendil-works/pi-ai\";\nimport { getSessionClaudeAccountPin } from \"./account-command.ts\";\nimport { queryWithAuthLane } from \"./auth-lane.ts\";\nimport { buildCustomToolServers } from \"./custom-tools.ts\";\nimport { defaultExecutableDeps, resolveClaudeCodeExecutable } from \"./executable.ts\";\nimport { buildClaudeSdkOauthQueryOptions } from \"./options.ts\";\nimport { buildPromptBlocks, buildPromptStream } from \"./prompt-bridge.ts\";\nimport { dedupeUltraworkBlocks } from \"./prompt-directive-dedupe.ts\";\nimport { getSdkBoundary, type SdkQueryHandle } from \"./sdk-boundary.ts\";\nimport { type ContinuityObservation, emitContinuityObservation } from \"./session-observability.ts\";\nimport { residentSessionMessages } from \"./session-stream.ts\";\nimport { loadClaudeSdkOauthProviderSettingsFromDisk } from \"./settings.ts\";\nimport { applyStreamEvent } from \"./stream-events.ts\";\nimport { withAuthGuidance } from \"./stream-guidance.ts\";\nimport { emptyOutput, errorMessage, mapStopReason, type StreamBlock, updateUsage } from \"./stream-protocol.ts\";\nimport { toolWatch } from \"./tool-watch.ts\";\nimport { resolveSdkTools } from \"./tools.ts\";\n\nexport function streamClaudeSdkOauth(\n\tmodel: Model<Api>,\n\tcontext: Context,\n\toptions?: SimpleStreamOptions,\n): AssistantMessageEventStream {\n\tconst stream = createAssistantMessageEventStream();\n\tvoid (async () => {\n\t\tconst output = emptyOutput(model);\n\t\tconst blocks: StreamBlock[] = [];\n\t\tlet sdkQuery: SdkQueryHandle | undefined;\n\t\tlet closed = false;\n\t\tlet wasAborted = false;\n\t\tlet started = false;\n\t\tlet sawStreamEvent = false;\n\t\tconst closeQuery = (): void => {\n\t\t\tif (closed || !sdkQuery) return;\n\t\t\tclosed = true;\n\t\t\tsdkQuery.close();\n\t\t};\n\t\tconst requestAbort = (): void => {\n\t\t\tif (!sdkQuery) return;\n\t\t\tvoid sdkQuery\n\t\t\t\t.interrupt()\n\t\t\t\t.catch(() => {})\n\t\t\t\t.finally(closeQuery);\n\t\t};\n\t\tconst onAbort = (): void => {\n\t\t\twasAborted = true;\n\t\t\trequestAbort();\n\t\t};\n\t\tif (options?.signal?.aborted) onAbort();\n\t\telse options?.signal?.addEventListener(\"abort\", onAbort, { once: true });\n\n\t\ttry {\n\t\t\tconst resolvedTools = resolveSdkTools(context);\n\t\t\tconst affinityKey = options?.affinitySessionId ?? options?.sessionId;\n\t\t\tconst sessionKey = options?.sessionId ? toolWatch.sessionKey(options.sessionId) : undefined;\n\t\t\tif (sessionKey) toolWatch.reconcileWithContext(sessionKey, context);\n\t\t\tconst toolWatchNote = toolWatch.buildPromptNote(sessionKey, context, resolvedTools.customToolNameToSdk);\n\t\t\tconst providerSettings = loadClaudeSdkOauthProviderSettingsFromDisk(process.cwd());\n\t\t\tconst mcpServers = buildCustomToolServers(resolvedTools.customTools);\n\t\t\tconst executable = resolveClaudeCodeExecutable(defaultExecutableDeps());\n\t\t\tconst buildOptions = (authLane: Parameters<typeof buildClaudeSdkOauthQueryOptions>[0][\"authLane\"]) => {\n\t\t\t\tconst queryOptions = buildClaudeSdkOauthQueryOptions({\n\t\t\t\t\tmodel,\n\t\t\t\t\tcontext,\n\t\t\t\t\tstreamOptions: options,\n\t\t\t\t\tproviderSettings,\n\t\t\t\t\tauthLane,\n\t\t\t\t\ttools: resolvedTools.sdkTools,\n\t\t\t\t\tpathToClaudeCodeExecutable: executable,\n\t\t\t\t\tsessionId: options?.sessionId,\n\t\t\t\t\tonGuidance: (text) => {\n\t\t\t\t\t\toutput.diagnostics = [\n\t\t\t\t\t\t\t...(output.diagnostics ?? []),\n\t\t\t\t\t\t\tcreateAssistantMessageDiagnostic(\"claude_sdk_oauth_deprecation\", text),\n\t\t\t\t\t\t];\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t\tif (mcpServers) queryOptions.mcpServers = mcpServers;\n\t\t\t\treturn queryOptions;\n\t\t\t};\n\t\t\tconst recordContinuity = (observation: ContinuityObservation): void => {\n\t\t\t\t// Not a failure: carry the observation as details only, with no synthesized error.\n\t\t\t\toutput.diagnostics = [\n\t\t\t\t\t...(output.diagnostics ?? []),\n\t\t\t\t\t{\n\t\t\t\t\t\ttype: \"claude_sdk_oauth_session_continuity\",\n\t\t\t\t\t\ttimestamp: Date.now(),\n\t\t\t\t\t\tdetails: { ...observation },\n\t\t\t\t\t},\n\t\t\t\t];\n\t\t\t};\n\t\t\tconst useResidentSession =\n\t\t\t\toptions?.streamKind === \"main\" && providerSettings.resumeMode !== \"off\" && options.sessionId !== undefined;\n\t\t\tif (options?.streamKind === \"main\" && !useResidentSession) {\n\t\t\t\t// The reason must reflect the ACTUAL cause: resume mode \"off\"\n\t\t\t\t// disables the lane by setting, while any other mode simply has no\n\t\t\t\t// resident session to reuse yet.\n\t\t\t\temitContinuityObservation(\n\t\t\t\t\t{\n\t\t\t\t\t\tkind: \"disabled\",\n\t\t\t\t\t\treason: providerSettings.resumeMode === \"off\" ? \"resume_mode_off\" : \"registry_miss\",\n\t\t\t\t\t},\n\t\t\t\t\trecordContinuity,\n\t\t\t\t);\n\t\t\t}\n\t\t\tconst messages = useResidentSession\n\t\t\t\t? residentSessionMessages({\n\t\t\t\t\t\tmodel,\n\t\t\t\t\t\tcontext,\n\t\t\t\t\t\tstreamOptions: options,\n\t\t\t\t\t\tproviderSettings,\n\t\t\t\t\t\tpinnedAccount: getSessionClaudeAccountPin(options.sessionId),\n\t\t\t\t\t\tbuildOptions,\n\t\t\t\t\t\tcustomToolNameToSdk: resolvedTools.customToolNameToSdk,\n\t\t\t\t\t\ttoolWatchNote,\n\t\t\t\t\t\tonContinuityDecision: recordContinuity,\n\t\t\t\t\t\tonResumeFallback: (error) => {\n\t\t\t\t\t\t\toutput.diagnostics = [\n\t\t\t\t\t\t\t\t...(output.diagnostics ?? []),\n\t\t\t\t\t\t\t\tcreateAssistantMessageDiagnostic(\"claude_sdk_oauth_resume_fallback\", error),\n\t\t\t\t\t\t\t];\n\t\t\t\t\t\t},\n\t\t\t\t\t})\n\t\t\t\t: queryWithAuthLane({\n\t\t\t\t\t\tprompt: buildPromptStream(\n\t\t\t\t\t\t\tdedupeUltraworkBlocks(buildPromptBlocks(context, resolvedTools.customToolNameToSdk, toolWatchNote))\n\t\t\t\t\t\t\t\t.blocks,\n\t\t\t\t\t\t),\n\t\t\t\t\t\tquery: getSdkBoundary().query,\n\t\t\t\t\t\tproviderSettings,\n\t\t\t\t\t\tenv: options?.env,\n\t\t\t\t\t\tsignal: options?.signal,\n\t\t\t\t\t\tsessionId: affinityKey,\n\t\t\t\t\t\tpinnedAccount: getSessionClaudeAccountPin(options?.sessionId),\n\t\t\t\t\t\tonQuery: (query) => {\n\t\t\t\t\t\t\tsdkQuery = query;\n\t\t\t\t\t\t\tif (wasAborted) requestAbort();\n\t\t\t\t\t\t},\n\t\t\t\t\t\tbuildOptions,\n\t\t\t\t\t});\n\n\t\t\tfor await (const message of messages) {\n\t\t\t\tif (!started) {\n\t\t\t\t\tstream.push({ type: \"start\", partial: output });\n\t\t\t\t\tstarted = true;\n\t\t\t\t}\n\t\t\t\tif (message.type === \"stream_event\") {\n\t\t\t\t\tsawStreamEvent = true;\n\t\t\t\t\tapplyStreamEvent(\n\t\t\t\t\t\t{ model, output, blocks, stream, customToolNameToPi: resolvedTools.customToolNameToPi },\n\t\t\t\t\t\tmessage.event,\n\t\t\t\t\t);\n\t\t\t\t} else if (message.type === \"system\" && message.subtype === \"compact_boundary\") {\n\t\t\t\t\t// Native compactions must reach the ledger: attach the boundary as a\n\t\t\t\t\t// diagnostic so the lane-policy collector can build a ledger entry\n\t\t\t\t\t// instead of the boundary being discarded in the stream.\n\t\t\t\t\toutput.diagnostics = [\n\t\t\t\t\t\t...(output.diagnostics ?? []),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: \"claude_sdk_oauth_compact_boundary\",\n\t\t\t\t\t\t\ttimestamp: Date.now(),\n\t\t\t\t\t\t\tdetails: {\n\t\t\t\t\t\t\t\tboundary: {\n\t\t\t\t\t\t\t\t\ttrigger: message.compact_metadata?.trigger ?? \"unknown\",\n\t\t\t\t\t\t\t\t\tpreTokens: message.compact_metadata?.pre_tokens ?? 0,\n\t\t\t\t\t\t\t\t\tpostTokens: message.compact_metadata?.post_tokens ?? 0,\n\t\t\t\t\t\t\t\t\tlineageId: message.session_id ?? \"\",\n\t\t\t\t\t\t\t\t\tobservedAt: Date.now(),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t];\n\t\t\t\t} else if (message.type === \"result\" && message.subtype === \"success\") {\n\t\t\t\t\t// Both fields are optional on the wire, so only adopt them when present.\n\t\t\t\t\t// A terminal result must never downgrade a toolUse turn that the stream\n\t\t\t\t\t// already established, or the agent loop would stop instead of running\n\t\t\t\t\t// the tool call sitting in `output.content`.\n\t\t\t\t\tif (message.usage) updateUsage(model, output, message.usage);\n\t\t\t\t\tif (message.stop_reason != null && output.stopReason !== \"toolUse\") {\n\t\t\t\t\t\toutput.stopReason = mapStopReason(message.stop_reason);\n\t\t\t\t\t}\n\t\t\t\t\tif (!sawStreamEvent) output.content.push({ type: \"text\", text: message.result });\n\t\t\t\t} else if (message.type === \"result\") {\n\t\t\t\t\tconst reason =\n\t\t\t\t\t\t\"errors\" in message && Array.isArray(message.errors) && message.errors.length > 0\n\t\t\t\t\t\t\t? String(message.errors[0])\n\t\t\t\t\t\t\t: `Claude Code ${message.subtype}`;\n\t\t\t\t\tthrow new Error(reason);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (wasAborted || options?.signal?.aborted) {\n\t\t\t\toutput.stopReason = \"aborted\";\n\t\t\t\toutput.errorMessage = \"Operation aborted\";\n\t\t\t\tstream.push({ type: \"error\", reason: \"aborted\", error: output });\n\t\t\t} else {\n\t\t\t\tstream.push({\n\t\t\t\t\ttype: \"done\",\n\t\t\t\t\treason: output.stopReason === \"toolUse\" ? \"toolUse\" : output.stopReason === \"length\" ? \"length\" : \"stop\",\n\t\t\t\t\tmessage: output,\n\t\t\t\t});\n\t\t\t}\n\t\t} catch (error) {\n\t\t\toutput.stopReason = options?.signal?.aborted ? \"aborted\" : \"error\";\n\t\t\toutput.errorMessage = withAuthGuidance(error, errorMessage(error));\n\t\t\tstream.push({ type: \"error\", reason: output.stopReason, error: output });\n\t\t} finally {\n\t\t\toptions?.signal?.removeEventListener(\"abort\", onAbort);\n\t\t\tcloseQuery();\n\t\t\tstream.end();\n\t\t}\n\t})();\n\treturn stream;\n}\n"]}
1
+ {"version":3,"file":"stream.js","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/claude-sdk-oauth/stream.ts"],"names":[],"mappings":"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","sourcesContent":["import {\n\ttype Api,\n\ttype AssistantMessageEventStream,\n\ttype Context,\n\tcreateAssistantMessageDiagnostic,\n\tcreateAssistantMessageEventStream,\n\ttype Model,\n\ttype SimpleStreamOptions,\n} from \"@earendil-works/pi-ai\";\nimport { getSessionClaudeAccountPin } from \"./account-command.ts\";\nimport { queryWithAuthLane } from \"./auth-lane.ts\";\nimport { buildCustomToolServers } from \"./custom-tools.ts\";\nimport { defaultExecutableDeps, resolveClaudeCodeExecutable } from \"./executable.ts\";\nimport { buildClaudeSdkOauthQueryOptions } from \"./options.ts\";\nimport { buildPromptBlocks, buildPromptStream } from \"./prompt-bridge.ts\";\nimport { dedupeUltraworkBlocks } from \"./prompt-directive-dedupe.ts\";\nimport { getSdkBoundary, loadClaudeAgentSdk, type SdkQueryHandle } from \"./sdk-boundary.ts\";\nimport { type ContinuityObservation, emitContinuityObservation } from \"./session-observability.ts\";\nimport { residentSessionMessages } from \"./session-stream.ts\";\nimport { loadClaudeSdkOauthProviderSettingsFromDisk } from \"./settings.ts\";\nimport { applyStreamEvent } from \"./stream-events.ts\";\nimport { withAuthGuidance } from \"./stream-guidance.ts\";\nimport { emptyOutput, errorMessage, mapStopReason, type StreamBlock, updateUsage } from \"./stream-protocol.ts\";\nimport { toolWatch } from \"./tool-watch.ts\";\nimport { resolveSdkTools } from \"./tools.ts\";\n\nexport function streamClaudeSdkOauth(\n\tmodel: Model<Api>,\n\tcontext: Context,\n\toptions?: SimpleStreamOptions,\n): AssistantMessageEventStream {\n\tconst stream = createAssistantMessageEventStream();\n\tvoid (async () => {\n\t\tconst output = emptyOutput(model);\n\t\tconst blocks: StreamBlock[] = [];\n\t\tlet sdkQuery: SdkQueryHandle | undefined;\n\t\tlet closed = false;\n\t\tlet wasAborted = false;\n\t\tlet started = false;\n\t\tlet sawStreamEvent = false;\n\t\tconst closeQuery = (): void => {\n\t\t\tif (closed || !sdkQuery) return;\n\t\t\tclosed = true;\n\t\t\tsdkQuery.close();\n\t\t};\n\t\tconst requestAbort = (): void => {\n\t\t\tif (!sdkQuery) return;\n\t\t\tvoid sdkQuery\n\t\t\t\t.interrupt()\n\t\t\t\t.catch(() => {})\n\t\t\t\t.finally(closeQuery);\n\t\t};\n\t\tconst onAbort = (): void => {\n\t\t\twasAborted = true;\n\t\t\trequestAbort();\n\t\t};\n\t\tif (options?.signal?.aborted) onAbort();\n\t\telse options?.signal?.addEventListener(\"abort\", onAbort, { once: true });\n\n\t\ttry {\n\t\t\t// Resident before the synchronous SDK member below (getSdkBoundary().query)\n\t\t\t// reads it - see sdk-boundary.lazy.ts.\n\t\t\tawait loadClaudeAgentSdk();\n\t\t\tconst resolvedTools = resolveSdkTools(context);\n\t\t\tconst affinityKey = options?.affinitySessionId ?? options?.sessionId;\n\t\t\tconst sessionKey = options?.sessionId ? toolWatch.sessionKey(options.sessionId) : undefined;\n\t\t\tif (sessionKey) toolWatch.reconcileWithContext(sessionKey, context);\n\t\t\tconst toolWatchNote = toolWatch.buildPromptNote(sessionKey, context, resolvedTools.customToolNameToSdk);\n\t\t\tconst providerSettings = loadClaudeSdkOauthProviderSettingsFromDisk(process.cwd());\n\t\t\tconst mcpServers = await buildCustomToolServers(resolvedTools.customTools);\n\t\t\tconst executable = resolveClaudeCodeExecutable(defaultExecutableDeps());\n\t\t\tconst buildOptions = (authLane: Parameters<typeof buildClaudeSdkOauthQueryOptions>[0][\"authLane\"]) => {\n\t\t\t\tconst queryOptions = buildClaudeSdkOauthQueryOptions({\n\t\t\t\t\tmodel,\n\t\t\t\t\tcontext,\n\t\t\t\t\tstreamOptions: options,\n\t\t\t\t\tproviderSettings,\n\t\t\t\t\tauthLane,\n\t\t\t\t\ttools: resolvedTools.sdkTools,\n\t\t\t\t\tpathToClaudeCodeExecutable: executable,\n\t\t\t\t\tsessionId: options?.sessionId,\n\t\t\t\t\tonGuidance: (text) => {\n\t\t\t\t\t\toutput.diagnostics = [\n\t\t\t\t\t\t\t...(output.diagnostics ?? []),\n\t\t\t\t\t\t\tcreateAssistantMessageDiagnostic(\"claude_sdk_oauth_deprecation\", text),\n\t\t\t\t\t\t];\n\t\t\t\t\t},\n\t\t\t\t});\n\t\t\t\tif (mcpServers) queryOptions.mcpServers = mcpServers;\n\t\t\t\treturn queryOptions;\n\t\t\t};\n\t\t\tconst recordContinuity = (observation: ContinuityObservation): void => {\n\t\t\t\t// Not a failure: carry the observation as details only, with no synthesized error.\n\t\t\t\toutput.diagnostics = [\n\t\t\t\t\t...(output.diagnostics ?? []),\n\t\t\t\t\t{\n\t\t\t\t\t\ttype: \"claude_sdk_oauth_session_continuity\",\n\t\t\t\t\t\ttimestamp: Date.now(),\n\t\t\t\t\t\tdetails: { ...observation },\n\t\t\t\t\t},\n\t\t\t\t];\n\t\t\t};\n\t\t\tconst useResidentSession =\n\t\t\t\toptions?.streamKind === \"main\" && providerSettings.resumeMode !== \"off\" && options.sessionId !== undefined;\n\t\t\tif (options?.streamKind === \"main\" && !useResidentSession) {\n\t\t\t\t// The reason must reflect the ACTUAL cause: resume mode \"off\"\n\t\t\t\t// disables the lane by setting, while any other mode simply has no\n\t\t\t\t// resident session to reuse yet.\n\t\t\t\temitContinuityObservation(\n\t\t\t\t\t{\n\t\t\t\t\t\tkind: \"disabled\",\n\t\t\t\t\t\treason: providerSettings.resumeMode === \"off\" ? \"resume_mode_off\" : \"registry_miss\",\n\t\t\t\t\t},\n\t\t\t\t\trecordContinuity,\n\t\t\t\t);\n\t\t\t}\n\t\t\tconst messages = useResidentSession\n\t\t\t\t? residentSessionMessages({\n\t\t\t\t\t\tmodel,\n\t\t\t\t\t\tcontext,\n\t\t\t\t\t\tstreamOptions: options,\n\t\t\t\t\t\tproviderSettings,\n\t\t\t\t\t\tpinnedAccount: getSessionClaudeAccountPin(options.sessionId),\n\t\t\t\t\t\tbuildOptions,\n\t\t\t\t\t\tcustomToolNameToSdk: resolvedTools.customToolNameToSdk,\n\t\t\t\t\t\ttoolWatchNote,\n\t\t\t\t\t\tonContinuityDecision: recordContinuity,\n\t\t\t\t\t\tonResumeFallback: (error) => {\n\t\t\t\t\t\t\toutput.diagnostics = [\n\t\t\t\t\t\t\t\t...(output.diagnostics ?? []),\n\t\t\t\t\t\t\t\tcreateAssistantMessageDiagnostic(\"claude_sdk_oauth_resume_fallback\", error),\n\t\t\t\t\t\t\t];\n\t\t\t\t\t\t},\n\t\t\t\t\t})\n\t\t\t\t: queryWithAuthLane({\n\t\t\t\t\t\tprompt: buildPromptStream(\n\t\t\t\t\t\t\tdedupeUltraworkBlocks(buildPromptBlocks(context, resolvedTools.customToolNameToSdk, toolWatchNote))\n\t\t\t\t\t\t\t\t.blocks,\n\t\t\t\t\t\t),\n\t\t\t\t\t\tquery: getSdkBoundary().query,\n\t\t\t\t\t\tproviderSettings,\n\t\t\t\t\t\tenv: options?.env,\n\t\t\t\t\t\tsignal: options?.signal,\n\t\t\t\t\t\tsessionId: affinityKey,\n\t\t\t\t\t\tpinnedAccount: getSessionClaudeAccountPin(options?.sessionId),\n\t\t\t\t\t\tonQuery: (query) => {\n\t\t\t\t\t\t\tsdkQuery = query;\n\t\t\t\t\t\t\tif (wasAborted) requestAbort();\n\t\t\t\t\t\t},\n\t\t\t\t\t\tbuildOptions,\n\t\t\t\t\t});\n\n\t\t\tfor await (const message of messages) {\n\t\t\t\tif (!started) {\n\t\t\t\t\tstream.push({ type: \"start\", partial: output });\n\t\t\t\t\tstarted = true;\n\t\t\t\t}\n\t\t\t\tif (message.type === \"stream_event\") {\n\t\t\t\t\tsawStreamEvent = true;\n\t\t\t\t\tapplyStreamEvent(\n\t\t\t\t\t\t{ model, output, blocks, stream, customToolNameToPi: resolvedTools.customToolNameToPi },\n\t\t\t\t\t\tmessage.event,\n\t\t\t\t\t);\n\t\t\t\t} else if (message.type === \"system\" && message.subtype === \"compact_boundary\") {\n\t\t\t\t\t// Native compactions must reach the ledger: attach the boundary as a\n\t\t\t\t\t// diagnostic so the lane-policy collector can build a ledger entry\n\t\t\t\t\t// instead of the boundary being discarded in the stream.\n\t\t\t\t\toutput.diagnostics = [\n\t\t\t\t\t\t...(output.diagnostics ?? []),\n\t\t\t\t\t\t{\n\t\t\t\t\t\t\ttype: \"claude_sdk_oauth_compact_boundary\",\n\t\t\t\t\t\t\ttimestamp: Date.now(),\n\t\t\t\t\t\t\tdetails: {\n\t\t\t\t\t\t\t\tboundary: {\n\t\t\t\t\t\t\t\t\ttrigger: message.compact_metadata?.trigger ?? \"unknown\",\n\t\t\t\t\t\t\t\t\tpreTokens: message.compact_metadata?.pre_tokens ?? 0,\n\t\t\t\t\t\t\t\t\tpostTokens: message.compact_metadata?.post_tokens ?? 0,\n\t\t\t\t\t\t\t\t\tlineageId: message.session_id ?? \"\",\n\t\t\t\t\t\t\t\t\tobservedAt: Date.now(),\n\t\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t},\n\t\t\t\t\t];\n\t\t\t\t} else if (message.type === \"result\" && message.subtype === \"success\") {\n\t\t\t\t\t// Both fields are optional on the wire, so only adopt them when present.\n\t\t\t\t\t// A terminal result must never downgrade a toolUse turn that the stream\n\t\t\t\t\t// already established, or the agent loop would stop instead of running\n\t\t\t\t\t// the tool call sitting in `output.content`.\n\t\t\t\t\tif (message.usage) updateUsage(model, output, message.usage);\n\t\t\t\t\tif (message.stop_reason != null && output.stopReason !== \"toolUse\") {\n\t\t\t\t\t\toutput.stopReason = mapStopReason(message.stop_reason);\n\t\t\t\t\t}\n\t\t\t\t\tif (!sawStreamEvent) output.content.push({ type: \"text\", text: message.result });\n\t\t\t\t} else if (message.type === \"result\") {\n\t\t\t\t\tconst reason =\n\t\t\t\t\t\t\"errors\" in message && Array.isArray(message.errors) && message.errors.length > 0\n\t\t\t\t\t\t\t? String(message.errors[0])\n\t\t\t\t\t\t\t: `Claude Code ${message.subtype}`;\n\t\t\t\t\tthrow new Error(reason);\n\t\t\t\t}\n\t\t\t}\n\n\t\t\tif (wasAborted || options?.signal?.aborted) {\n\t\t\t\toutput.stopReason = \"aborted\";\n\t\t\t\toutput.errorMessage = \"Operation aborted\";\n\t\t\t\tstream.push({ type: \"error\", reason: \"aborted\", error: output });\n\t\t\t} else {\n\t\t\t\tstream.push({\n\t\t\t\t\ttype: \"done\",\n\t\t\t\t\treason: output.stopReason === \"toolUse\" ? \"toolUse\" : output.stopReason === \"length\" ? \"length\" : \"stop\",\n\t\t\t\t\tmessage: output,\n\t\t\t\t});\n\t\t\t}\n\t\t} catch (error) {\n\t\t\toutput.stopReason = options?.signal?.aborted ? \"aborted\" : \"error\";\n\t\t\toutput.errorMessage = withAuthGuidance(error, errorMessage(error));\n\t\t\tstream.push({ type: \"error\", reason: output.stopReason, error: output });\n\t\t} finally {\n\t\t\toptions?.signal?.removeEventListener(\"abort\", onAbort);\n\t\t\tcloseQuery();\n\t\t\tstream.end();\n\t\t}\n\t})();\n\treturn stream;\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/compaction/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAEX,YAAY,EAIZ,MAAM,gBAAgB,CAAC;AA4BxB,OAAO,EAEN,KAAK,kCAAkC,EAIvC,MAAM,oBAAoB,CAAC;AAgD5B,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAMnG;AAuFD,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAC1C,EAAE,EAAE,YAAY,EAChB,4BAA4B,GAAE,kCAAuC,GACnE,IAAI,CA0xBN"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/core/extensions/builtin/compaction/index.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAEX,YAAY,EAIZ,MAAM,gBAAgB,CAAC;AA4BxB,OAAO,EAEN,KAAK,kCAAkC,EAIvC,MAAM,oBAAoB,CAAC;AAgD5B,wBAAgB,sBAAsB,CAAC,aAAa,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAMnG;AAuFD,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAC1C,EAAE,EAAE,YAAY,EAChB,4BAA4B,GAAE,kCAAuC,GACnE,IAAI,CA+xBN"}
@@ -295,6 +295,11 @@ export default function compactionExtension(pi, remoteCompactionDependencies = {
295
295
  todoBridge.persistTodoSnapshot(pi, metadata.todoSnapshot);
296
296
  }
297
297
  async function applyBlockingCompaction(ctx, customInstructions) {
298
+ const provider = ctx.model?.provider;
299
+ if ((provider === "cursor" || provider === "cursor-cli-oauth") && !ctx.isIdle()) {
300
+ getLogger(ctx).debug("skip_cursor_mid_turn", { route: "blocking" });
301
+ return { applied: false, reason: "rejected" };
302
+ }
298
303
  if (breaker.isTripped(state, Date.now())) {
299
304
  getLogger(ctx).debug("skip_breaker", { route: "blocking" });
300
305
  return { applied: false, reason: "rejected" };