@psnext/slingcli 2.5.20260724-1 → 2.5.20260725-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (385) hide show
  1. package/bin/sling.js +1 -1
  2. package/node_modules/@aws-sdk/core/dist-cjs/submodules/httpAuthSchemes/index.js +66 -28
  3. package/node_modules/@aws-sdk/core/dist-cjs/submodules/protocols/index.js +133 -15
  4. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.js +7 -2
  5. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.js +28 -14
  6. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/clock-skew-defaults.browser.js +1 -0
  7. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/clock-skew-defaults.js +3 -0
  8. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/clock-skew-node-config.js +8 -0
  9. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/index.js +1 -1
  10. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.js +3 -3
  11. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/index.browser.js +9 -0
  12. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/index.js +5 -1
  13. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getDateHeader.js +1 -0
  14. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.js +12 -6
  15. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/index.js +2 -1
  16. package/node_modules/@aws-sdk/core/dist-es/submodules/httpAuthSchemes/utils/isClockSkewed.js +1 -1
  17. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonShapeDeserializer.js +10 -1
  18. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/JsonShapeSerializer.js +10 -0
  19. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/detectBufferParsing.js +18 -0
  20. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/experimental/BufferJsonShapeDeserializer.js +13 -15
  21. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/experimental/ByteJsonShapeSerializer.js +27 -17
  22. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/jsonReviver.js +22 -3
  23. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/needsReviver.js +41 -0
  24. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/json/parseJsonBody.js +33 -13
  25. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/writeKey.js +3 -0
  26. package/node_modules/@aws-sdk/core/dist-es/submodules/protocols/xml/XmlShapeDeserializer.js +4 -0
  27. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.d.ts +2 -1
  28. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/aws_sdk/clock-skew-defaults.browser.d.ts +6 -0
  29. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/aws_sdk/clock-skew-defaults.d.ts +7 -0
  30. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/aws_sdk/clock-skew-node-config.d.ts +13 -0
  31. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/aws_sdk/index.d.ts +1 -1
  32. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.d.ts +22 -6
  33. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/index.browser.d.ts +11 -0
  34. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/index.d.ts +7 -1
  35. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/utils/getDateHeader.d.ts +4 -0
  36. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.d.ts +22 -6
  37. package/node_modules/@aws-sdk/core/dist-types/submodules/httpAuthSchemes/utils/index.d.ts +2 -1
  38. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/detectBufferParsing.d.ts +1 -0
  39. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/experimental/ByteJsonShapeSerializer.d.ts +0 -2
  40. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/needsReviver.d.ts +11 -0
  41. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/json/parseJsonBody.d.ts +7 -2
  42. package/node_modules/@aws-sdk/core/dist-types/submodules/protocols/writeKey.d.ts +4 -0
  43. package/node_modules/@aws-sdk/core/dist-types/ts3.4/api-extractor-type-index.d.ts +7 -4
  44. package/node_modules/@aws-sdk/core/dist-types/ts3.4/index.d.ts +21 -61
  45. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/AccountIdEndpointModeConfigResolver.d.ts +27 -13
  46. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/AccountIdEndpointModeConstants.d.ts +16 -4
  47. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/NodeAccountIdEndpointModeConfigOptions.d.ts +14 -5
  48. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/account-id-endpoint/index.d.ts +5 -16
  49. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/emitWarningIfUnsupportedVersion.d.ts +11 -4
  50. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/index.browser.d.ts +47 -107
  51. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/index.d.ts +39 -112
  52. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/index.native.d.ts +48 -107
  53. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/longPollMiddleware.d.ts +14 -13
  54. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-host-header/hostHeaderMiddleware.d.ts +35 -25
  55. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-logger/loggerMiddleware.d.ts +4 -14
  56. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/configuration.d.ts +6 -2
  57. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/getRecursionDetectionPlugin.browser.d.ts +5 -2
  58. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/getRecursionDetectionPlugin.d.ts +5 -2
  59. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.browser.d.ts +6 -2
  60. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.d.ts +10 -2
  61. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-recursion-detection/recursionDetectionMiddleware.native.d.ts +6 -2
  62. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/check-features.d.ts +20 -16
  63. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/configurations.d.ts +44 -21
  64. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/constants.d.ts +7 -7
  65. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/encode-features.d.ts +5 -2
  66. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/middleware-user-agent/user-agent-middleware.d.ts +18 -18
  67. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/awsRegionConfig.d.ts +11 -8
  68. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/extensions.d.ts +16 -14
  69. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/stsRegionDefaultResolver.browser.d.ts +4 -1
  70. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/stsRegionDefaultResolver.d.ts +14 -7
  71. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/region-config-resolver/stsRegionDefaultResolver.native.d.ts +4 -1
  72. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/setCredentialFeature.d.ts +7 -6
  73. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/setFeature.d.ts +12 -6
  74. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/setTokenFeature.d.ts +7 -6
  75. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/aws.d.ts +2 -2
  76. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/isVirtualHostableS3Bucket.d.ts +5 -4
  77. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/parseArn.d.ts +7 -2
  78. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/partition.d.ts +38 -28
  79. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/aws/partitions.d.ts +638 -647
  80. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/lib/isIpAddress.d.ts +1 -1
  81. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/resolveDefaultAwsRegionalEndpointsConfig.d.ts +56 -29
  82. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/resolveEndpoint.d.ts +1 -1
  83. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/EndpointError.d.ts +1 -1
  84. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/EndpointRuleObject.d.ts +1 -6
  85. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/ErrorRuleObject.d.ts +1 -1
  86. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/RuleSetObject.d.ts +1 -1
  87. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/TreeRuleObject.d.ts +1 -1
  88. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-endpoints/types/shared.d.ts +1 -12
  89. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/configurations.d.ts +7 -4
  90. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/createUserAgentStringParsingProvider.d.ts +14 -7
  91. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/defaultUserAgent.browser.d.ts +2 -7
  92. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/defaultUserAgent.d.ts +27 -18
  93. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-browser/defaultUserAgent.native.d.ts +18 -13
  94. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/crt-availability.d.ts +8 -3
  95. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/defaultUserAgent.d.ts +28 -17
  96. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/getRuntimeUserAgentPair.d.ts +6 -2
  97. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/is-crt-available.d.ts +5 -2
  98. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/client/util-user-agent-node/nodeAppIdConfigOptions.d.ts +13 -4
  99. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4ASigner.d.ts +10 -9
  100. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/AwsSdkSigV4Signer.d.ts +44 -37
  101. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/NODE_AUTH_SCHEME_PREFERENCE_OPTIONS.d.ts +5 -2
  102. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/clock-skew-defaults.browser.d.ts +6 -0
  103. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/clock-skew-defaults.d.ts +7 -0
  104. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/clock-skew-node-config.d.ts +13 -0
  105. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/index.d.ts +7 -23
  106. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4AConfig.d.ts +38 -13
  107. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/aws_sdk/resolveAwsSdkSigV4Config.d.ts +133 -56
  108. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/index.browser.d.ts +11 -0
  109. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/index.d.ts +9 -24
  110. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getArrayForCommaSeparatedString.d.ts +8 -1
  111. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getBearerTokenEnvKey.d.ts +6 -1
  112. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getDateHeader.d.ts +8 -1
  113. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getSkewCorrectedDate.d.ts +8 -1
  114. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/getUpdatedSystemClockOffset.d.ts +26 -4
  115. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/index.d.ts +4 -3
  116. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/httpAuthSchemes/utils/isClockSkewed.d.ts +9 -1
  117. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/ConfigurableSerdeContext.d.ts +8 -5
  118. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/ProtocolLib.d.ts +74 -40
  119. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/UnionSerde.d.ts +24 -9
  120. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/cbor/AwsSmithyRpcV2CborProtocol.d.ts +25 -36
  121. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/coercing-serializers.d.ts +18 -3
  122. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/common.d.ts +2 -5
  123. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/index.d.ts +22 -27
  124. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJson1_0Protocol.d.ts +22 -21
  125. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJson1_1Protocol.d.ts +22 -21
  126. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsJsonRpcProtocol.d.ts +29 -49
  127. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/AwsRestJsonProtocol.d.ts +36 -49
  128. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonCodec.d.ts +19 -13
  129. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonShapeDeserializer.d.ts +13 -13
  130. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/JsonShapeSerializer.d.ts +28 -18
  131. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/awsExpectUnion.d.ts +7 -1
  132. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/detectBufferParsing.d.ts +1 -0
  133. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/experimental/BufferJsonShapeDeserializer.d.ts +29 -14
  134. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/experimental/ByteJsonShapeSerializer.d.ts +57 -30
  135. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/jsonReplacer.d.ts +21 -7
  136. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/jsonReviver.d.ts +15 -7
  137. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/needsReviver.d.ts +11 -0
  138. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/json/parseJsonBody.d.ts +22 -9
  139. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/AwsEc2QueryProtocol.d.ts +27 -18
  140. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/AwsQueryProtocol.d.ts +49 -57
  141. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/QuerySerializerSettings.d.ts +13 -7
  142. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/query/QueryShapeSerializer.d.ts +16 -21
  143. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/writeKey.d.ts +4 -0
  144. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/AwsRestXmlProtocol.d.ts +31 -47
  145. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/XmlCodec.d.ts +14 -17
  146. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/XmlShapeDeserializer.d.ts +20 -15
  147. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/XmlShapeSerializer.d.ts +21 -21
  148. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/parseXmlBody.d.ts +13 -4
  149. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/protocols/xml/simpleFormatXml.d.ts +6 -1
  150. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/util/index.d.ts +3 -3
  151. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/util/util-arn-parser/arn.d.ts +32 -14
  152. package/node_modules/@aws-sdk/core/dist-types/ts3.4/submodules/util/util-format-url/format-url.d.ts +2 -4
  153. package/node_modules/@aws-sdk/core/package.json +10 -6
  154. package/node_modules/@aws-sdk/credential-provider-env/package.json +3 -3
  155. package/node_modules/@aws-sdk/credential-provider-http/node_modules/@smithy/node-http-handler/package.json +2 -2
  156. package/node_modules/@aws-sdk/credential-provider-http/package.json +5 -5
  157. package/node_modules/@aws-sdk/credential-provider-ini/package.json +11 -11
  158. package/node_modules/@aws-sdk/credential-provider-login/package.json +4 -4
  159. package/node_modules/@aws-sdk/credential-provider-node/package.json +9 -9
  160. package/node_modules/@aws-sdk/credential-provider-process/package.json +3 -3
  161. package/node_modules/@aws-sdk/credential-provider-sso/node_modules/@aws-sdk/token-providers/package.json +4 -4
  162. package/node_modules/@aws-sdk/credential-provider-sso/package.json +5 -5
  163. package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +4 -4
  164. package/node_modules/@aws-sdk/eventstream-handler-node/package.json +2 -2
  165. package/node_modules/@aws-sdk/middleware-eventstream/package.json +2 -2
  166. package/node_modules/@aws-sdk/middleware-websocket/package.json +5 -5
  167. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/cognito-identity/index.js +1 -1
  168. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/signin/index.js +1 -1
  169. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso/index.js +1 -1
  170. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sso-oidc/index.js +1 -1
  171. package/node_modules/@aws-sdk/nested-clients/dist-cjs/submodules/sts/index.js +1 -1
  172. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/runtimeConfig.browser.d.ts +2 -0
  173. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/runtimeConfig.d.ts +2 -0
  174. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/cognito-identity/runtimeConfig.native.d.ts +2 -0
  175. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/runtimeConfig.browser.d.ts +2 -0
  176. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/runtimeConfig.d.ts +2 -0
  177. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/signin/runtimeConfig.native.d.ts +2 -0
  178. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/runtimeConfig.browser.d.ts +2 -0
  179. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/runtimeConfig.d.ts +2 -0
  180. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso/runtimeConfig.native.d.ts +2 -0
  181. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/runtimeConfig.browser.d.ts +2 -0
  182. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/runtimeConfig.d.ts +2 -0
  183. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sso-oidc/runtimeConfig.native.d.ts +2 -0
  184. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.browser.d.ts +2 -0
  185. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.d.ts +2 -0
  186. package/node_modules/@aws-sdk/nested-clients/dist-types/submodules/sts/runtimeConfig.native.d.ts +2 -0
  187. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/runtimeConfig.browser.d.ts +2 -0
  188. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/runtimeConfig.d.ts +2 -0
  189. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/cognito-identity/runtimeConfig.native.d.ts +2 -0
  190. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/runtimeConfig.browser.d.ts +2 -0
  191. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/runtimeConfig.d.ts +2 -0
  192. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/signin/runtimeConfig.native.d.ts +2 -0
  193. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/runtimeConfig.browser.d.ts +2 -0
  194. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/runtimeConfig.d.ts +2 -0
  195. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso/runtimeConfig.native.d.ts +2 -0
  196. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/runtimeConfig.browser.d.ts +2 -0
  197. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/runtimeConfig.d.ts +2 -0
  198. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sso-oidc/runtimeConfig.native.d.ts +2 -0
  199. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.browser.d.ts +2 -0
  200. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.d.ts +2 -0
  201. package/node_modules/@aws-sdk/nested-clients/dist-types/ts3.4/submodules/sts/runtimeConfig.native.d.ts +2 -0
  202. package/node_modules/@aws-sdk/nested-clients/node_modules/@smithy/node-http-handler/package.json +2 -2
  203. package/node_modules/@aws-sdk/nested-clients/package.json +6 -6
  204. package/node_modules/@aws-sdk/signature-v4-multi-region/package.json +2 -2
  205. package/node_modules/@aws-sdk/xml-builder/dist-cjs/index.js +14 -4
  206. package/node_modules/@aws-sdk/xml-builder/dist-es/xml-parser.js +14 -4
  207. package/node_modules/@aws-sdk/xml-builder/package.json +1 -1
  208. package/node_modules/@earendil-works/pi-agent-core/dist/harness/agent-harness.js +17 -4
  209. package/node_modules/@earendil-works/pi-agent-core/dist/harness/compaction/compaction.js +8 -2
  210. package/node_modules/@earendil-works/pi-agent-core/dist/harness/env/nodejs.js +118 -11
  211. package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/bash.js +132 -0
  212. package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/edit-diff.js +386 -0
  213. package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/edit.js +95 -0
  214. package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/file-mutation-queue.js +46 -0
  215. package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/image.js +106 -0
  216. package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/index.js +5 -0
  217. package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/path-utils.js +26 -0
  218. package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/read.js +110 -0
  219. package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/tool-context.js +2 -0
  220. package/node_modules/@earendil-works/pi-agent-core/dist/harness/tools/write.js +31 -0
  221. package/node_modules/@earendil-works/pi-agent-core/dist/harness/utils/shell-output.js +90 -35
  222. package/node_modules/@earendil-works/pi-agent-core/dist/harness/utils/truncate.js +10 -4
  223. package/node_modules/@earendil-works/pi-agent-core/dist/index.js +1 -0
  224. package/node_modules/@earendil-works/pi-agent-core/package.json +3 -2
  225. package/node_modules/@earendil-works/pi-ai/dist/api/anthropic-messages.js +26 -10
  226. package/node_modules/@earendil-works/pi-ai/dist/api/azure-openai-responses.js +21 -8
  227. package/node_modules/@earendil-works/pi-ai/dist/api/bedrock-converse-stream.js +17 -10
  228. package/node_modules/@earendil-works/pi-ai/dist/api/constrained-sampling.js +100 -0
  229. package/node_modules/@earendil-works/pi-ai/dist/api/google-generative-ai.js +7 -11
  230. package/node_modules/@earendil-works/pi-ai/dist/api/google-shared.js +17 -3
  231. package/node_modules/@earendil-works/pi-ai/dist/api/google-vertex.js +7 -11
  232. package/node_modules/@earendil-works/pi-ai/dist/api/mistral-conversations.js +13 -9
  233. package/node_modules/@earendil-works/pi-ai/dist/api/openai-codex-responses.js +68 -27
  234. package/node_modules/@earendil-works/pi-ai/dist/api/openai-completions.js +131 -34
  235. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses-shared.js +173 -66
  236. package/node_modules/@earendil-works/pi-ai/dist/api/openai-responses.js +29 -7
  237. package/node_modules/@earendil-works/pi-ai/dist/api/openrouter-images.js +8 -3
  238. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/load.js +5 -0
  239. package/node_modules/@earendil-works/pi-ai/dist/auth/oauth/openrouter.js +222 -0
  240. package/node_modules/@earendil-works/pi-ai/dist/bun-oauth.js +2 -0
  241. package/node_modules/@earendil-works/pi-ai/dist/env-api-keys.js +9 -3
  242. package/node_modules/@earendil-works/pi-ai/dist/image-models.generated.js +15 -0
  243. package/node_modules/@earendil-works/pi-ai/dist/model-catalog.js +4 -0
  244. package/node_modules/@earendil-works/pi-ai/dist/providers/all.js +5 -3
  245. package/node_modules/@earendil-works/pi-ai/dist/providers/amazon-bedrock.models.js +2 -1
  246. package/node_modules/@earendil-works/pi-ai/dist/providers/ant-ling.models.js +2 -1
  247. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.js +30 -3
  248. package/node_modules/@earendil-works/pi-ai/dist/providers/anthropic.models.js +2 -1
  249. package/node_modules/@earendil-works/pi-ai/dist/providers/azure-openai-responses.models.js +2 -1
  250. package/node_modules/@earendil-works/pi-ai/dist/providers/cerebras.models.js +2 -1
  251. package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-ai-gateway.models.js +2 -1
  252. package/node_modules/@earendil-works/pi-ai/dist/providers/cloudflare-workers-ai.models.js +2 -1
  253. package/node_modules/@earendil-works/pi-ai/dist/providers/data/.manifest.json +1 -1
  254. package/node_modules/@earendil-works/pi-ai/dist/providers/data/amazon-bedrock.json +1 -1
  255. package/node_modules/@earendil-works/pi-ai/dist/providers/data/ant-ling.json +1 -1
  256. package/node_modules/@earendil-works/pi-ai/dist/providers/data/anthropic.json +1 -1
  257. package/node_modules/@earendil-works/pi-ai/dist/providers/data/azure-openai-responses.json +1 -1
  258. package/node_modules/@earendil-works/pi-ai/dist/providers/data/cerebras.json +1 -1
  259. package/node_modules/@earendil-works/pi-ai/dist/providers/data/cloudflare-ai-gateway.json +1 -1
  260. package/node_modules/@earendil-works/pi-ai/dist/providers/data/cloudflare-workers-ai.json +1 -1
  261. package/node_modules/@earendil-works/pi-ai/dist/providers/data/deepseek.json +1 -1
  262. package/node_modules/@earendil-works/pi-ai/dist/providers/data/fireworks.json +1 -1
  263. package/node_modules/@earendil-works/pi-ai/dist/providers/data/github-copilot.json +1 -1
  264. package/node_modules/@earendil-works/pi-ai/dist/providers/data/google-vertex.json +1 -1
  265. package/node_modules/@earendil-works/pi-ai/dist/providers/data/google.json +1 -1
  266. package/node_modules/@earendil-works/pi-ai/dist/providers/data/groq.json +1 -1
  267. package/node_modules/@earendil-works/pi-ai/dist/providers/data/huggingface.json +1 -1
  268. package/node_modules/@earendil-works/pi-ai/dist/providers/data/kimi-coding.json +1 -1
  269. package/node_modules/@earendil-works/pi-ai/dist/providers/data/minimax-cn.json +1 -1
  270. package/node_modules/@earendil-works/pi-ai/dist/providers/data/minimax.json +1 -1
  271. package/node_modules/@earendil-works/pi-ai/dist/providers/data/mistral.json +1 -1
  272. package/node_modules/@earendil-works/pi-ai/dist/providers/data/moonshotai-cn.json +1 -1
  273. package/node_modules/@earendil-works/pi-ai/dist/providers/data/moonshotai.json +1 -1
  274. package/node_modules/@earendil-works/pi-ai/dist/providers/data/nvidia.json +1 -1
  275. package/node_modules/@earendil-works/pi-ai/dist/providers/data/openai-codex.json +1 -1
  276. package/node_modules/@earendil-works/pi-ai/dist/providers/data/openai.json +1 -1
  277. package/node_modules/@earendil-works/pi-ai/dist/providers/data/opencode-go.json +1 -1
  278. package/node_modules/@earendil-works/pi-ai/dist/providers/data/opencode.json +1 -1
  279. package/node_modules/@earendil-works/pi-ai/dist/providers/data/openrouter.json +1 -1
  280. package/node_modules/@earendil-works/pi-ai/dist/providers/data/qwen-token-plan-cn.json +1 -1
  281. package/node_modules/@earendil-works/pi-ai/dist/providers/data/qwen-token-plan.json +1 -1
  282. package/node_modules/@earendil-works/pi-ai/dist/providers/data/together.json +1 -1
  283. package/node_modules/@earendil-works/pi-ai/dist/providers/data/vercel-ai-gateway.json +1 -1
  284. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xai.json +1 -1
  285. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi-token-plan-ams.json +1 -1
  286. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi-token-plan-cn.json +1 -1
  287. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi-token-plan-sgp.json +1 -1
  288. package/node_modules/@earendil-works/pi-ai/dist/providers/data/xiaomi.json +1 -1
  289. package/node_modules/@earendil-works/pi-ai/dist/providers/data/zai-coding-cn.json +1 -1
  290. package/node_modules/@earendil-works/pi-ai/dist/providers/data/zai.json +1 -1
  291. package/node_modules/@earendil-works/pi-ai/dist/providers/deepseek.models.js +2 -1
  292. package/node_modules/@earendil-works/pi-ai/dist/providers/fireworks.models.js +2 -1
  293. package/node_modules/@earendil-works/pi-ai/dist/providers/github-copilot.models.js +2 -1
  294. package/node_modules/@earendil-works/pi-ai/dist/providers/google-vertex.models.js +2 -1
  295. package/node_modules/@earendil-works/pi-ai/dist/providers/google.models.js +2 -1
  296. package/node_modules/@earendil-works/pi-ai/dist/providers/groq.models.js +2 -1
  297. package/node_modules/@earendil-works/pi-ai/dist/providers/huggingface.models.js +2 -1
  298. package/node_modules/@earendil-works/pi-ai/dist/providers/kimi-coding.models.js +2 -1
  299. package/node_modules/@earendil-works/pi-ai/dist/providers/minimax-cn.models.js +2 -1
  300. package/node_modules/@earendil-works/pi-ai/dist/providers/minimax.models.js +2 -1
  301. package/node_modules/@earendil-works/pi-ai/dist/providers/mistral.models.js +2 -1
  302. package/node_modules/@earendil-works/pi-ai/dist/providers/moonshotai-cn.models.js +2 -1
  303. package/node_modules/@earendil-works/pi-ai/dist/providers/moonshotai.models.js +2 -1
  304. package/node_modules/@earendil-works/pi-ai/dist/providers/nvidia.models.js +2 -1
  305. package/node_modules/@earendil-works/pi-ai/dist/providers/openai-codex.models.js +2 -1
  306. package/node_modules/@earendil-works/pi-ai/dist/providers/openai.models.js +2 -1
  307. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode-go.models.js +2 -1
  308. package/node_modules/@earendil-works/pi-ai/dist/providers/opencode.models.js +2 -1
  309. package/node_modules/@earendil-works/pi-ai/dist/providers/openrouter-images.js +10 -2
  310. package/node_modules/@earendil-works/pi-ai/dist/providers/openrouter.js +10 -2
  311. package/node_modules/@earendil-works/pi-ai/dist/providers/openrouter.models.js +2 -1
  312. package/node_modules/@earendil-works/pi-ai/dist/providers/qwen-token-plan-cn.models.js +2 -1
  313. package/node_modules/@earendil-works/pi-ai/dist/providers/qwen-token-plan.models.js +2 -1
  314. package/node_modules/@earendil-works/pi-ai/dist/providers/together.models.js +2 -1
  315. package/node_modules/@earendil-works/pi-ai/dist/providers/vercel-ai-gateway.models.js +2 -1
  316. package/node_modules/@earendil-works/pi-ai/dist/providers/xai.models.js +2 -1
  317. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi-token-plan-ams.models.js +2 -1
  318. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi-token-plan-cn.models.js +2 -1
  319. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi-token-plan-sgp.models.js +2 -1
  320. package/node_modules/@earendil-works/pi-ai/dist/providers/xiaomi.models.js +2 -1
  321. package/node_modules/@earendil-works/pi-ai/dist/providers/zai-coding-cn.models.js +2 -1
  322. package/node_modules/@earendil-works/pi-ai/dist/providers/zai.models.js +2 -1
  323. package/node_modules/@earendil-works/pi-ai/dist/utils/provider-retry.js +94 -0
  324. package/node_modules/@earendil-works/pi-ai/dist/utils/retry.js +3 -0
  325. package/node_modules/@earendil-works/pi-ai/package.json +1 -1
  326. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/args.js +1 -0
  327. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/config-selector.js +1 -1
  328. package/node_modules/@earendil-works/pi-coding-agent/dist/cli/startup-ui.js +1 -1
  329. package/node_modules/@earendil-works/pi-coding-agent/dist/core/agent-session.js +7 -8
  330. package/node_modules/@earendil-works/pi-coding-agent/dist/core/compaction/compaction.js +11 -3
  331. package/node_modules/@earendil-works/pi-coding-agent/dist/core/extensions/runner.js +4 -0
  332. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-config.js +6 -0
  333. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-registry.js +2 -2
  334. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-resolver.js +7 -0
  335. package/node_modules/@earendil-works/pi-coding-agent/dist/core/model-runtime.js +3 -5
  336. package/node_modules/@earendil-works/pi-coding-agent/dist/core/remote-catalog-provider.js +5 -10
  337. package/node_modules/@earendil-works/pi-coding-agent/dist/core/system-prompt.js +4 -4
  338. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/bash.js +34 -5
  339. package/node_modules/@earendil-works/pi-coding-agent/dist/core/tools/tool-definition-wrapper.js +3 -1
  340. package/node_modules/@earendil-works/pi-coding-agent/dist/extensions/llama/provider.js +1 -2
  341. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/components/extension-editor.js +16 -46
  342. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/external-editor.js +37 -0
  343. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/interactive/interactive-mode.js +29 -47
  344. package/node_modules/@earendil-works/pi-coding-agent/dist/modes/rpc/rpc-mode.js +1 -0
  345. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/clipboard.js +19 -8
  346. package/node_modules/@earendil-works/pi-coding-agent/dist/utils/version-check.js +3 -1
  347. package/node_modules/@earendil-works/pi-coding-agent/npm-shrinkwrap.json +16 -15
  348. package/node_modules/@earendil-works/pi-coding-agent/package.json +6 -6
  349. package/node_modules/@earendil-works/pi-server/package.json +2 -2
  350. package/node_modules/@earendil-works/pi-tui/dist/components/editor.js +15 -12
  351. package/node_modules/@earendil-works/pi-tui/dist/tui.js +6 -3
  352. package/node_modules/@earendil-works/pi-tui/package.json +1 -1
  353. package/node_modules/@smithy/core/dist-cjs/submodules/retry/index.browser.js +1 -0
  354. package/node_modules/@smithy/core/dist-cjs/submodules/retry/index.js +1 -0
  355. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.browser.js +2 -2
  356. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.js +2 -2
  357. package/node_modules/@smithy/core/dist-cjs/submodules/serde/index.native.js +2 -2
  358. package/node_modules/@smithy/core/dist-es/submodules/retry/service-error-classification/constants.js +1 -0
  359. package/node_modules/@smithy/core/dist-es/submodules/serde/value/NumericValue.js +2 -2
  360. package/node_modules/@smithy/core/dist-types/submodules/retry/service-error-classification/constants.d.ts +1 -0
  361. package/node_modules/@smithy/core/dist-types/ts3.4/submodules/retry/service-error-classification/constants.d.ts +1 -0
  362. package/node_modules/@smithy/core/package.json +1 -1
  363. package/node_modules/@smithy/credential-provider-imds/package.json +2 -2
  364. package/node_modules/@smithy/fetch-http-handler/package.json +2 -2
  365. package/node_modules/@smithy/signature-v4/package.json +2 -2
  366. package/node_modules/gaxios/build/cjs/tsconfig.cjs.tsbuildinfo +1 -1
  367. package/node_modules/gaxios/build/esm/tsconfig.tsbuildinfo +1 -1
  368. package/node_modules/gaxios/package.json +1 -1
  369. package/node_modules/google-auth-library/build/src/auth/googleauth.js +24 -19
  370. package/node_modules/google-auth-library/package.json +1 -1
  371. package/node_modules/undici/lib/cache/memory-cache-store.js +54 -9
  372. package/node_modules/undici/lib/cache/sqlite-cache-store.js +7 -1
  373. package/node_modules/undici/lib/core/request.js +12 -1
  374. package/node_modules/undici/lib/dispatcher/client-h1.js +11 -2
  375. package/node_modules/undici/lib/handler/cache-handler.js +246 -64
  376. package/node_modules/undici/lib/handler/cache-revalidation-handler.js +3 -3
  377. package/node_modules/undici/lib/handler/retry-handler.js +24 -0
  378. package/node_modules/undici/lib/interceptor/cache.js +159 -52
  379. package/node_modules/undici/lib/util/cache.js +324 -62
  380. package/node_modules/undici/lib/util/date.js +23 -6
  381. package/node_modules/undici/lib/web/cookies/util.js +79 -9
  382. package/node_modules/undici/package.json +1 -1
  383. package/package.json +7 -7
  384. package/sling-default-packages.json +2 -1
  385. package/slingshot/index.js +337 -339
@@ -75,6 +75,7 @@ export declare const getRuntimeConfig: (config: SigninClientConfig) => {
75
75
  },
76
76
  ) => import("@smithy/types").EndpointV2;
77
77
  tls?: boolean;
78
+ ignoreConfiguredEndpointUrls?: boolean;
78
79
  serviceConfiguredEndpoint?: never;
79
80
  authSchemePreference?: string[] | import("@smithy/types").Provider<string[]>;
80
81
  httpAuthSchemes:
@@ -115,4 +116,5 @@ export declare const getRuntimeConfig: (config: SigninClientConfig) => {
115
116
  options: import("@smithy/signature-v4").SignatureV4Init &
116
117
  import("@smithy/signature-v4").SignatureV4CryptoInit,
117
118
  ) => import("@smithy/types").RequestSigner;
119
+ disableClockSkewCorrection?: boolean | import("@smithy/types").Provider<boolean>;
118
120
  };
@@ -68,6 +68,7 @@ export declare const getRuntimeConfig: (config: SSOClientConfig) => {
68
68
  },
69
69
  ) => import("@smithy/types").EndpointV2;
70
70
  tls?: boolean;
71
+ ignoreConfiguredEndpointUrls?: boolean;
71
72
  serviceConfiguredEndpoint?: never;
72
73
  authSchemePreference?: string[] | import("@smithy/types").Provider<string[]>;
73
74
  httpAuthSchemes:
@@ -108,4 +109,5 @@ export declare const getRuntimeConfig: (config: SSOClientConfig) => {
108
109
  options: import("@smithy/signature-v4").SignatureV4Init &
109
110
  import("@smithy/signature-v4").SignatureV4CryptoInit,
110
111
  ) => import("@smithy/types").RequestSigner;
112
+ disableClockSkewCorrection?: boolean | import("@smithy/types").Provider<boolean>;
111
113
  };
@@ -67,6 +67,7 @@ export declare const getRuntimeConfig: (config: SSOClientConfig) => {
67
67
  },
68
68
  ) => import("@smithy/types").EndpointV2;
69
69
  tls?: boolean;
70
+ ignoreConfiguredEndpointUrls?: boolean;
70
71
  serviceConfiguredEndpoint?: never;
71
72
  httpAuthSchemes:
72
73
  | import("@smithy/types").HttpAuthScheme[]
@@ -106,4 +107,5 @@ export declare const getRuntimeConfig: (config: SSOClientConfig) => {
106
107
  options: import("@smithy/signature-v4").SignatureV4Init &
107
108
  import("@smithy/signature-v4").SignatureV4CryptoInit,
108
109
  ) => import("@smithy/types").RequestSigner;
110
+ disableClockSkewCorrection?: boolean | import("@smithy/types").Provider<boolean>;
109
111
  };
@@ -72,6 +72,7 @@ export declare const getRuntimeConfig: (config: SSOClientConfig) => {
72
72
  },
73
73
  ) => import("@smithy/types").EndpointV2;
74
74
  tls?: boolean;
75
+ ignoreConfiguredEndpointUrls?: boolean;
75
76
  serviceConfiguredEndpoint?: never;
76
77
  authSchemePreference?: string[] | import("@smithy/types").Provider<string[]>;
77
78
  httpAuthSchemes:
@@ -112,4 +113,5 @@ export declare const getRuntimeConfig: (config: SSOClientConfig) => {
112
113
  options: import("@smithy/signature-v4").SignatureV4Init &
113
114
  import("@smithy/signature-v4").SignatureV4CryptoInit,
114
115
  ) => import("@smithy/types").RequestSigner;
116
+ disableClockSkewCorrection?: boolean | import("@smithy/types").Provider<boolean>;
115
117
  };
@@ -68,6 +68,7 @@ export declare const getRuntimeConfig: (config: SSOOIDCClientConfig) => {
68
68
  },
69
69
  ) => import("@smithy/types").EndpointV2;
70
70
  tls?: boolean;
71
+ ignoreConfiguredEndpointUrls?: boolean;
71
72
  serviceConfiguredEndpoint?: never;
72
73
  authSchemePreference?: string[] | import("@smithy/types").Provider<string[]>;
73
74
  httpAuthSchemes:
@@ -108,4 +109,5 @@ export declare const getRuntimeConfig: (config: SSOOIDCClientConfig) => {
108
109
  options: import("@smithy/signature-v4").SignatureV4Init &
109
110
  import("@smithy/signature-v4").SignatureV4CryptoInit,
110
111
  ) => import("@smithy/types").RequestSigner;
112
+ disableClockSkewCorrection?: boolean | import("@smithy/types").Provider<boolean>;
111
113
  };
@@ -67,6 +67,7 @@ export declare const getRuntimeConfig: (config: SSOOIDCClientConfig) => {
67
67
  },
68
68
  ) => import("@smithy/types").EndpointV2;
69
69
  tls?: boolean;
70
+ ignoreConfiguredEndpointUrls?: boolean;
70
71
  serviceConfiguredEndpoint?: never;
71
72
  httpAuthSchemes:
72
73
  | import("@smithy/types").HttpAuthScheme[]
@@ -106,4 +107,5 @@ export declare const getRuntimeConfig: (config: SSOOIDCClientConfig) => {
106
107
  options: import("@smithy/signature-v4").SignatureV4Init &
107
108
  import("@smithy/signature-v4").SignatureV4CryptoInit,
108
109
  ) => import("@smithy/types").RequestSigner;
110
+ disableClockSkewCorrection?: boolean | import("@smithy/types").Provider<boolean>;
109
111
  };
@@ -72,6 +72,7 @@ export declare const getRuntimeConfig: (config: SSOOIDCClientConfig) => {
72
72
  },
73
73
  ) => import("@smithy/types").EndpointV2;
74
74
  tls?: boolean;
75
+ ignoreConfiguredEndpointUrls?: boolean;
75
76
  serviceConfiguredEndpoint?: never;
76
77
  authSchemePreference?: string[] | import("@smithy/types").Provider<string[]>;
77
78
  httpAuthSchemes:
@@ -112,4 +113,5 @@ export declare const getRuntimeConfig: (config: SSOOIDCClientConfig) => {
112
113
  options: import("@smithy/signature-v4").SignatureV4Init &
113
114
  import("@smithy/signature-v4").SignatureV4CryptoInit,
114
115
  ) => import("@smithy/types").RequestSigner;
116
+ disableClockSkewCorrection?: boolean | import("@smithy/types").Provider<boolean>;
115
117
  };
@@ -71,6 +71,7 @@ export declare const getRuntimeConfig: (config: STSClientConfig) => {
71
71
  },
72
72
  ) => import("@smithy/types").EndpointV2;
73
73
  tls?: boolean;
74
+ ignoreConfiguredEndpointUrls?: boolean;
74
75
  serviceConfiguredEndpoint?: never;
75
76
  authSchemePreference?: string[] | import("@smithy/types").Provider<string[]>;
76
77
  httpAuthSchemes:
@@ -113,6 +114,7 @@ export declare const getRuntimeConfig: (config: STSClientConfig) => {
113
114
  import("@smithy/signature-v4").SignatureV4CryptoInit,
114
115
  ) => import("@smithy/types").RequestSigner)
115
116
  | typeof import("@aws-sdk/signature-v4-multi-region").SignatureV4MultiRegion;
117
+ disableClockSkewCorrection?: boolean | import("@smithy/types").Provider<boolean>;
116
118
  sigv4aSigningRegionSet?:
117
119
  | string[]
118
120
  | undefined
@@ -94,6 +94,7 @@ export declare const getRuntimeConfig: (config: STSClientConfig) => {
94
94
  },
95
95
  ) => import("@smithy/types").EndpointV2;
96
96
  tls?: boolean;
97
+ ignoreConfiguredEndpointUrls?: boolean;
97
98
  serviceConfiguredEndpoint?: never;
98
99
  httpAuthSchemeProvider: import("./auth/httpAuthSchemeProvider").STSHttpAuthSchemeProvider;
99
100
  credentials?:
@@ -113,5 +114,6 @@ export declare const getRuntimeConfig: (config: STSClientConfig) => {
113
114
  import("@smithy/signature-v4").SignatureV4CryptoInit,
114
115
  ) => import("@smithy/types").RequestSigner)
115
116
  | typeof import("@aws-sdk/signature-v4-multi-region").SignatureV4MultiRegion;
117
+ disableClockSkewCorrection?: boolean | import("@smithy/types").Provider<boolean>;
116
118
  useGlobalEndpoint?: boolean | undefined | import("@smithy/types").Provider<boolean | undefined>;
117
119
  };
@@ -75,6 +75,7 @@ export declare const getRuntimeConfig: (config: STSClientConfig) => {
75
75
  },
76
76
  ) => import("@smithy/types").EndpointV2;
77
77
  tls?: boolean;
78
+ ignoreConfiguredEndpointUrls?: boolean;
78
79
  serviceConfiguredEndpoint?: never;
79
80
  authSchemePreference?: string[] | import("@smithy/types").Provider<string[]>;
80
81
  httpAuthSchemes:
@@ -117,6 +118,7 @@ export declare const getRuntimeConfig: (config: STSClientConfig) => {
117
118
  import("@smithy/signature-v4").SignatureV4CryptoInit,
118
119
  ) => import("@smithy/types").RequestSigner)
119
120
  | typeof import("@aws-sdk/signature-v4-multi-region").SignatureV4MultiRegion;
121
+ disableClockSkewCorrection?: boolean | import("@smithy/types").Provider<boolean>;
120
122
  sigv4aSigningRegionSet?:
121
123
  | string[]
122
124
  | undefined
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@smithy/node-http-handler",
3
- "version": "4.9.10",
3
+ "version": "4.9.11",
4
4
  "description": "Provides a way to make requests",
5
5
  "homepage": "https://github.com/smithy-lang/smithy-typescript/tree/main/packages/node-http-handler",
6
6
  "license": "Apache-2.0",
@@ -43,7 +43,7 @@
43
43
  "test:watch": "yarn g:vitest watch"
44
44
  },
45
45
  "dependencies": {
46
- "@smithy/core": "^3.29.8",
46
+ "@smithy/core": "^3.30.0",
47
47
  "@smithy/types": "^4.16.1",
48
48
  "tslib": "^2.6.2"
49
49
  },
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/nested-clients",
3
- "version": "3.997.34",
3
+ "version": "3.997.35",
4
4
  "description": "Nested clients for AWS SDK packages.",
5
5
  "homepage": "https://github.com/aws/aws-sdk-js-v3/tree/main/packages/nested-clients",
6
6
  "license": "Apache-2.0",
@@ -100,12 +100,12 @@
100
100
  "test:watch": "yarn g:vitest watch"
101
101
  },
102
102
  "dependencies": {
103
- "@aws-sdk/core": "^3.976.0",
104
- "@aws-sdk/signature-v4-multi-region": "^3.996.41",
103
+ "@aws-sdk/core": "^3.977.0",
104
+ "@aws-sdk/signature-v4-multi-region": "^3.996.42",
105
105
  "@aws-sdk/types": "^3.974.2",
106
- "@smithy/core": "^3.29.4",
107
- "@smithy/fetch-http-handler": "^5.6.6",
108
- "@smithy/node-http-handler": "^4.9.6",
106
+ "@smithy/core": "^3.29.8",
107
+ "@smithy/fetch-http-handler": "^5.6.10",
108
+ "@smithy/node-http-handler": "^4.9.10",
109
109
  "@smithy/types": "^4.16.1",
110
110
  "tslib": "^2.6.2"
111
111
  },
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/signature-v4-multi-region",
3
- "version": "3.996.41",
3
+ "version": "3.996.42",
4
4
  "homepage": "https://github.com/aws/aws-sdk-js-v3/tree/main/packages/signature-v4-multi-region",
5
5
  "license": "Apache-2.0",
6
6
  "author": {
@@ -43,7 +43,7 @@
43
43
  },
44
44
  "dependencies": {
45
45
  "@aws-sdk/types": "^3.974.2",
46
- "@smithy/signature-v4": "^5.6.5",
46
+ "@smithy/signature-v4": "^5.6.9",
47
47
  "@smithy/types": "^4.16.1",
48
48
  "tslib": "^2.6.2"
49
49
  },
@@ -122,6 +122,9 @@ class XmlNode {
122
122
  }
123
123
  }
124
124
 
125
+ function writeKey(obj) {
126
+ Object.defineProperty(obj, "__proto__", { value: undefined, writable: true, enumerable: true, configurable: true });
127
+ }
125
128
  function parseXML(xml) {
126
129
  const state = new AwsXmlParser(xml);
127
130
  return state.parse();
@@ -207,7 +210,7 @@ class AwsXmlParser {
207
210
  tag += p.x[p.i++];
208
211
  }
209
212
  let hasAttrs = false;
210
- const attrs = Object.create(null);
213
+ const attrs = {};
211
214
  while (p.i < p.z) {
212
215
  p.trim();
213
216
  if (">/".includes(p.x[p.i])) {
@@ -223,6 +226,9 @@ class AwsXmlParser {
223
226
  }
224
227
  ++p.i;
225
228
  p.trim();
229
+ if (name === "__proto__") {
230
+ writeKey(attrs);
231
+ }
226
232
  attrs[name] = p.readAttrValue();
227
233
  hasAttrs = true;
228
234
  }
@@ -235,7 +241,6 @@ class AwsXmlParser {
235
241
  throw new Error("@aws-sdk XML parse error: expected > at the end of self-closing tag.");
236
242
  }
237
243
  ++p.i;
238
- Object.setPrototypeOf(attrs, Object.prototype);
239
244
  return { tag, value: hasAttrs ? attrs : "" };
240
245
  }
241
246
  if (p.x[p.i] !== ">") {
@@ -291,7 +296,7 @@ class AwsXmlParser {
291
296
  }
292
297
  return { tag, value: text };
293
298
  }
294
- const obj = Object.create(null);
299
+ const obj = {};
295
300
  for (const text of textParts) {
296
301
  if (text.trim() === "" && text.includes("\n")) {
297
302
  continue;
@@ -299,6 +304,9 @@ class AwsXmlParser {
299
304
  obj["#text"] = "#text" in obj ? obj["#text"] + text : text;
300
305
  }
301
306
  for (const child of childTags) {
307
+ if (child.tag === "__proto__") {
308
+ writeKey(obj);
309
+ }
302
310
  if (child.tag in obj) {
303
311
  if (Array.isArray(obj[child.tag])) {
304
312
  obj[child.tag].push(child.value);
@@ -312,9 +320,11 @@ class AwsXmlParser {
312
320
  }
313
321
  }
314
322
  for (const [k, v] of Object.entries(attrs)) {
323
+ if (k === "__proto__") {
324
+ writeKey(obj);
325
+ }
315
326
  obj[k] = v;
316
327
  }
317
- Object.setPrototypeOf(obj, Object.prototype);
318
328
  return { tag, value: obj };
319
329
  }
320
330
  static ENTITIES = {
@@ -1,3 +1,6 @@
1
+ function writeKey(obj) {
2
+ Object.defineProperty(obj, "__proto__", { value: undefined, writable: true, enumerable: true, configurable: true });
3
+ }
1
4
  export function parseXML(xml) {
2
5
  const state = new AwsXmlParser(xml);
3
6
  return state.parse();
@@ -83,7 +86,7 @@ class AwsXmlParser {
83
86
  tag += p.x[p.i++];
84
87
  }
85
88
  let hasAttrs = false;
86
- const attrs = Object.create(null);
89
+ const attrs = {};
87
90
  while (p.i < p.z) {
88
91
  p.trim();
89
92
  if (">/".includes(p.x[p.i])) {
@@ -99,6 +102,9 @@ class AwsXmlParser {
99
102
  }
100
103
  ++p.i;
101
104
  p.trim();
105
+ if (name === "__proto__") {
106
+ writeKey(attrs);
107
+ }
102
108
  attrs[name] = p.readAttrValue();
103
109
  hasAttrs = true;
104
110
  }
@@ -111,7 +117,6 @@ class AwsXmlParser {
111
117
  throw new Error("@aws-sdk XML parse error: expected > at the end of self-closing tag.");
112
118
  }
113
119
  ++p.i;
114
- Object.setPrototypeOf(attrs, Object.prototype);
115
120
  return { tag, value: hasAttrs ? attrs : "" };
116
121
  }
117
122
  if (p.x[p.i] !== ">") {
@@ -167,7 +172,7 @@ class AwsXmlParser {
167
172
  }
168
173
  return { tag, value: text };
169
174
  }
170
- const obj = Object.create(null);
175
+ const obj = {};
171
176
  for (const text of textParts) {
172
177
  if (text.trim() === "" && text.includes("\n")) {
173
178
  continue;
@@ -175,6 +180,9 @@ class AwsXmlParser {
175
180
  obj["#text"] = "#text" in obj ? obj["#text"] + text : text;
176
181
  }
177
182
  for (const child of childTags) {
183
+ if (child.tag === "__proto__") {
184
+ writeKey(obj);
185
+ }
178
186
  if (child.tag in obj) {
179
187
  if (Array.isArray(obj[child.tag])) {
180
188
  obj[child.tag].push(child.value);
@@ -188,9 +196,11 @@ class AwsXmlParser {
188
196
  }
189
197
  }
190
198
  for (const [k, v] of Object.entries(attrs)) {
199
+ if (k === "__proto__") {
200
+ writeKey(obj);
201
+ }
191
202
  obj[k] = v;
192
203
  }
193
- Object.setPrototypeOf(obj, Object.prototype);
194
204
  return { tag, value: obj };
195
205
  }
196
206
  static ENTITIES = {
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws-sdk/xml-builder",
3
- "version": "3.972.36",
3
+ "version": "3.972.37",
4
4
  "description": "XML utilities for the AWS SDK",
5
5
  "homepage": "https://github.com/aws/aws-sdk-js-v3/tree/main/packages-internal/xml-builder",
6
6
  "license": "Apache-2.0",
@@ -112,7 +112,6 @@ function normalizeHookError(error) {
112
112
  return normalizeHarnessError(error, "hook");
113
113
  }
114
114
  export class AgentHarness {
115
- env;
116
115
  session;
117
116
  models;
118
117
  phase = "idle";
@@ -122,6 +121,7 @@ export class AgentHarness {
122
121
  model;
123
122
  thinkingLevel;
124
123
  systemPrompt;
124
+ toolContext;
125
125
  streamOptions;
126
126
  retry;
127
127
  resources;
@@ -134,13 +134,13 @@ export class AgentHarness {
134
134
  nextTurnQueue = [];
135
135
  handlers = new Map();
136
136
  constructor(options) {
137
- this.env = options.env;
138
137
  this.session = options.session;
139
138
  this.models = options.models;
140
139
  this.resources = options.resources ?? {};
141
140
  this.streamOptions = cloneStreamOptions(options.streamOptions);
142
141
  this.retry = options.retry;
143
142
  this.systemPrompt = options.systemPrompt;
143
+ this.toolContext = options.toolContext;
144
144
  this.validateUniqueNames((options.tools ?? []).map((tool) => tool.name), "Duplicate tool name(s)");
145
145
  for (const tool of options.tools ?? []) {
146
146
  this.tools.set(tool.name, tool);
@@ -262,10 +262,23 @@ export class AgentHarness {
262
262
  finish();
263
263
  };
264
264
  }
265
+ async resolveToolContext() {
266
+ if (typeof this.toolContext === "function") {
267
+ return await this.toolContext();
268
+ }
269
+ return this.toolContext;
270
+ }
271
+ bindToolContext(tool, context) {
272
+ return {
273
+ ...tool,
274
+ execute: (toolCallId, params, signal, onUpdate) => tool.execute(toolCallId, params, signal, onUpdate, context),
275
+ };
276
+ }
265
277
  async createTurnState() {
266
278
  const context = await this.session.buildContext();
267
279
  const resources = this.getResources();
268
280
  const sessionMetadata = await this.session.getMetadata();
281
+ const toolContext = await this.resolveToolContext();
269
282
  const tools = [...this.tools.values()];
270
283
  const activeTools = this.activeToolNames
271
284
  .map((name) => this.tools.get(name))
@@ -276,7 +289,6 @@ export class AgentHarness {
276
289
  }
277
290
  else if (this.systemPrompt) {
278
291
  systemPrompt = await this.systemPrompt({
279
- env: this.env,
280
292
  session: this.session,
281
293
  model: this.model,
282
294
  thinkingLevel: this.thinkingLevel,
@@ -287,6 +299,7 @@ export class AgentHarness {
287
299
  return {
288
300
  messages: context.messages,
289
301
  resources,
302
+ toolContext,
290
303
  streamOptions: cloneStreamOptions(this.streamOptions),
291
304
  sessionId: sessionMetadata.id,
292
305
  systemPrompt,
@@ -300,7 +313,7 @@ export class AgentHarness {
300
313
  return {
301
314
  systemPrompt: systemPrompt ?? turnState.systemPrompt,
302
315
  messages: turnState.messages.slice(),
303
- tools: turnState.activeTools.slice(),
316
+ tools: turnState.activeTools.map((tool) => this.bindToolContext(tool, turnState.toolContext)),
304
317
  };
305
318
  }
306
319
  createStreamFn(getTurnState) {
@@ -1,4 +1,4 @@
1
- import { contentText, retryAssistantCall, } from "@earendil-works/pi-ai";
1
+ import { contentText, retryAssistantCall, uuidv7, } from "@earendil-works/pi-ai";
2
2
  import { convertToLlm, createBranchSummaryMessage, createCompactionSummaryMessage, createCustomMessage, } from "../messages.js";
3
3
  import { buildSessionContext } from "../session/session.js";
4
4
  import { CompactionError, err, ok } from "../types.js";
@@ -54,7 +54,13 @@ function getMessageFromEntryForCompaction(entry) {
54
54
  return getMessageFromEntry(entry);
55
55
  }
56
56
  export async function completeSimpleWithRetries(models, model, context, options, retry, callbacks) {
57
- return retryAssistantCall(() => models.completeSimple(model, context, options), retry, options.signal, callbacks);
57
+ // Summaries are standalone requests, so isolate routing and avoid cache writes that cannot be reused.
58
+ const requestOptions = {
59
+ ...options,
60
+ cacheRetention: "none",
61
+ sessionId: uuidv7(),
62
+ };
63
+ return retryAssistantCall(() => models.completeSimple(model, context, requestOptions), retry, requestOptions.signal, callbacks);
58
64
  }
59
65
  function combineUsage(first, second) {
60
66
  return {
@@ -2,12 +2,14 @@ import { spawn } from "node:child_process";
2
2
  import { randomUUID } from "node:crypto";
3
3
  import { constants, createReadStream } from "node:fs";
4
4
  import { access, appendFile, lstat, mkdir, mkdtemp, readdir, readFile, realpath, rm, writeFile, } from "node:fs/promises";
5
- import { tmpdir } from "node:os";
5
+ import { homedir, tmpdir } from "node:os";
6
6
  import { isAbsolute, join, resolve } from "node:path";
7
7
  import { createInterface } from "node:readline";
8
+ import { fileURLToPath } from "node:url";
8
9
  import { ExecutionError, err, FileError, ok, toError, } from "../types.js";
9
10
  const MAX_TIMEOUT_MS = 2_147_483_647;
10
11
  const MAX_TIMEOUT_SECONDS = MAX_TIMEOUT_MS / 1000;
12
+ const EXIT_STDIO_GRACE_MS = 100;
11
13
  function resolveTimeoutMs(timeout) {
12
14
  if (timeout === undefined)
13
15
  return ok(undefined);
@@ -21,7 +23,22 @@ function resolveTimeoutMs(timeout) {
21
23
  return ok(timeoutMs);
22
24
  }
23
25
  function resolvePath(cwd, path) {
24
- return isAbsolute(path) ? path : resolve(cwd, path);
26
+ let normalized = path;
27
+ if (normalized === "~") {
28
+ normalized = homedir();
29
+ }
30
+ else if (normalized.startsWith("~/") || (process.platform === "win32" && normalized.startsWith("~\\"))) {
31
+ normalized = join(homedir(), normalized.slice(2));
32
+ }
33
+ else if (normalized.startsWith("file://")) {
34
+ try {
35
+ normalized = fileURLToPath(normalized);
36
+ }
37
+ catch {
38
+ // Keep malformed URLs as ordinary paths so filesystem methods preserve their non-throwing contract.
39
+ }
40
+ }
41
+ return isAbsolute(normalized) ? resolve(normalized) : resolve(cwd, normalized);
25
42
  }
26
43
  function fileKindFromStats(stats) {
27
44
  if (stats.isFile())
@@ -155,7 +172,11 @@ async function getShellConfig(customShellPath) {
155
172
  if (bashOnPath) {
156
173
  return ok(getBashShellConfig(bashOnPath));
157
174
  }
158
- return err(new ExecutionError("shell_unavailable", "No bash shell found"));
175
+ return err(new ExecutionError("shell_unavailable", `No bash shell found. Options:\n` +
176
+ ` 1. Install Git for Windows: https://git-scm.com/download/win\n` +
177
+ ` 2. Add your bash to PATH (Cygwin, MSYS2, etc.)\n` +
178
+ " 3. Configure an explicit shellPath\n\n" +
179
+ `Searched Git Bash in:\n${candidates.map((path) => ` ${path}`).join("\n")}`));
159
180
  }
160
181
  if (await pathExists("/bin/bash")) {
161
182
  return ok(getBashShellConfig("/bin/bash"));
@@ -166,7 +187,9 @@ async function getShellConfig(customShellPath) {
166
187
  }
167
188
  return ok({ shell: "sh", args: ["-c"] });
168
189
  }
169
- function getShellEnv(baseEnv, extraEnv) {
190
+ function getShellEnv(baseEnv, extraEnv, inheritEnv = true) {
191
+ if (!inheritEnv)
192
+ return { ...extraEnv };
170
193
  return {
171
194
  ...process.env,
172
195
  ...baseEnv,
@@ -199,10 +222,84 @@ function killProcessTree(pid) {
199
222
  }
200
223
  }
201
224
  }
225
+ function waitForChildProcess(child) {
226
+ return new Promise((resolvePromise, reject) => {
227
+ let settled = false;
228
+ let exited = false;
229
+ let exitCode = null;
230
+ let postExitTimer;
231
+ let stdoutEnded = child.stdout === null;
232
+ let stderrEnded = child.stderr === null;
233
+ const cleanup = () => {
234
+ if (postExitTimer)
235
+ clearTimeout(postExitTimer);
236
+ child.removeListener("error", onError);
237
+ child.removeListener("exit", onExit);
238
+ child.removeListener("close", onClose);
239
+ child.stdout?.removeListener("end", onStdoutEnd);
240
+ child.stderr?.removeListener("end", onStderrEnd);
241
+ child.stdout?.removeListener("data", onData);
242
+ child.stderr?.removeListener("data", onData);
243
+ };
244
+ const finalize = (code) => {
245
+ if (settled)
246
+ return;
247
+ settled = true;
248
+ cleanup();
249
+ child.stdout?.destroy();
250
+ child.stderr?.destroy();
251
+ resolvePromise(code);
252
+ };
253
+ const maybeFinalizeAfterExit = () => {
254
+ if (exited && stdoutEnded && stderrEnded)
255
+ finalize(exitCode);
256
+ };
257
+ const armIdleTimer = () => {
258
+ if (postExitTimer)
259
+ clearTimeout(postExitTimer);
260
+ postExitTimer = setTimeout(() => finalize(exitCode), EXIT_STDIO_GRACE_MS);
261
+ };
262
+ const onData = () => {
263
+ if (exited && !settled)
264
+ armIdleTimer();
265
+ };
266
+ const onStdoutEnd = () => {
267
+ stdoutEnded = true;
268
+ maybeFinalizeAfterExit();
269
+ };
270
+ const onStderrEnd = () => {
271
+ stderrEnded = true;
272
+ maybeFinalizeAfterExit();
273
+ };
274
+ const onError = (error) => {
275
+ if (settled)
276
+ return;
277
+ settled = true;
278
+ cleanup();
279
+ reject(error);
280
+ };
281
+ const onExit = (code) => {
282
+ exited = true;
283
+ exitCode = code;
284
+ maybeFinalizeAfterExit();
285
+ if (!settled)
286
+ armIdleTimer();
287
+ };
288
+ const onClose = (code) => finalize(code);
289
+ child.stdout?.once("end", onStdoutEnd);
290
+ child.stderr?.once("end", onStderrEnd);
291
+ child.stdout?.on("data", onData);
292
+ child.stderr?.on("data", onData);
293
+ child.once("error", onError);
294
+ child.once("exit", onExit);
295
+ child.once("close", onClose);
296
+ });
297
+ }
202
298
  export class NodeExecutionEnv {
203
299
  cwd;
204
300
  shellPath;
205
301
  shellEnv;
302
+ activeChildPids = new Set();
206
303
  constructor(options) {
207
304
  this.cwd = options.cwd;
208
305
  this.shellPath = options.shellPath;
@@ -225,6 +322,13 @@ export class NodeExecutionEnv {
225
322
  const shellConfig = await getShellConfig(this.shellPath);
226
323
  if (!shellConfig.ok)
227
324
  return shellConfig;
325
+ try {
326
+ await access(cwd, constants.F_OK);
327
+ }
328
+ catch (error) {
329
+ const cause = toError(error);
330
+ return err(new ExecutionError("spawn_error", `Working directory does not exist: ${cwd}\nCannot execute bash commands.`, cause));
331
+ }
228
332
  return await new Promise((resolvePromise) => {
229
333
  let stdout = "";
230
334
  let stderr = "";
@@ -243,6 +347,8 @@ export class NodeExecutionEnv {
243
347
  clearTimeout(timeoutId);
244
348
  if (options?.abortSignal)
245
349
  options.abortSignal.removeEventListener("abort", onAbort);
350
+ if (child?.pid)
351
+ this.activeChildPids.delete(child.pid);
246
352
  if (settled)
247
353
  return;
248
354
  settled = true;
@@ -253,10 +359,12 @@ export class NodeExecutionEnv {
253
359
  child = spawn(shellConfig.value.shell, commandFromStdin ? shellConfig.value.args : [...shellConfig.value.args, command], {
254
360
  cwd,
255
361
  detached: process.platform !== "win32",
256
- env: getShellEnv(this.shellEnv, options?.env),
362
+ env: getShellEnv(this.shellEnv, options?.env, options?.inheritEnv),
257
363
  stdio: [commandFromStdin ? "pipe" : "ignore", "pipe", "pipe"],
258
364
  windowsHide: true,
259
365
  });
366
+ if (child.pid)
367
+ this.activeChildPids.add(child.pid);
260
368
  if (commandFromStdin) {
261
369
  child.stdin?.on("error", () => { });
262
370
  child.stdin?.end(command);
@@ -308,10 +416,7 @@ export class NodeExecutionEnv {
308
416
  onAbort();
309
417
  }
310
418
  });
311
- child.on("error", (error) => {
312
- settle(err(new ExecutionError("spawn_error", error.message, error)));
313
- });
314
- child.on("close", (code) => {
419
+ void waitForChildProcess(child).then((code) => {
315
420
  if (callbackError) {
316
421
  settle(err(callbackError));
317
422
  return;
@@ -325,7 +430,7 @@ export class NodeExecutionEnv {
325
430
  return;
326
431
  }
327
432
  settle(ok({ stdout, stderr, exitCode: code ?? 0 }));
328
- });
433
+ }, (error) => settle(err(new ExecutionError("spawn_error", error.message, error))));
329
434
  });
330
435
  }
331
436
  async readTextFile(path, abortSignal) {
@@ -510,7 +615,9 @@ export class NodeExecutionEnv {
510
615
  }
511
616
  }
512
617
  async cleanup() {
513
- // nothing to clean up for the local node implementation
618
+ for (const pid of this.activeChildPids)
619
+ killProcessTree(pid);
620
+ this.activeChildPids.clear();
514
621
  }
515
622
  }
516
623
  //# sourceMappingURL=nodejs.js.map