effect 4.0.0-beta.34 → 4.0.0-beta.35

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 (50) hide show
  1. package/dist/Channel.d.ts +10 -1
  2. package/dist/Channel.d.ts.map +1 -1
  3. package/dist/Channel.js +5 -1
  4. package/dist/Channel.js.map +1 -1
  5. package/dist/Config.d.ts +4 -0
  6. package/dist/Config.d.ts.map +1 -1
  7. package/dist/Config.js.map +1 -1
  8. package/dist/Effect.d.ts +2 -2
  9. package/dist/Effect.d.ts.map +1 -1
  10. package/dist/Effect.js.map +1 -1
  11. package/dist/Layer.d.ts +5 -2
  12. package/dist/Layer.d.ts.map +1 -1
  13. package/dist/Layer.js +14 -1
  14. package/dist/Layer.js.map +1 -1
  15. package/dist/Schema.d.ts +21 -0
  16. package/dist/Schema.d.ts.map +1 -1
  17. package/dist/Schema.js +20 -0
  18. package/dist/Schema.js.map +1 -1
  19. package/dist/Stream.d.ts +10 -1
  20. package/dist/Stream.d.ts.map +1 -1
  21. package/dist/Stream.js +5 -1
  22. package/dist/Stream.js.map +1 -1
  23. package/dist/internal/dateTime.js +8 -1
  24. package/dist/internal/dateTime.js.map +1 -1
  25. package/dist/internal/effect.js +1 -1
  26. package/dist/internal/effect.js.map +1 -1
  27. package/dist/unstable/ai/AiError.d.ts +1 -0
  28. package/dist/unstable/ai/AiError.d.ts.map +1 -1
  29. package/dist/unstable/ai/AiError.js +7 -3
  30. package/dist/unstable/ai/AiError.js.map +1 -1
  31. package/dist/unstable/ai/LanguageModel.d.ts.map +1 -1
  32. package/dist/unstable/ai/LanguageModel.js +34 -18
  33. package/dist/unstable/ai/LanguageModel.js.map +1 -1
  34. package/dist/unstable/cli/CliOutput.js +4 -3
  35. package/dist/unstable/cli/CliOutput.js.map +1 -1
  36. package/dist/unstable/rpc/RpcSerialization.js +1 -1
  37. package/dist/unstable/rpc/RpcSerialization.js.map +1 -1
  38. package/package.json +1 -1
  39. package/src/Channel.ts +11 -1
  40. package/src/Config.ts +5 -0
  41. package/src/Effect.ts +3 -3
  42. package/src/Layer.ts +27 -9
  43. package/src/Schema.ts +30 -0
  44. package/src/Stream.ts +11 -1
  45. package/src/internal/dateTime.ts +8 -1
  46. package/src/internal/effect.ts +13 -11
  47. package/src/unstable/ai/AiError.ts +4 -2
  48. package/src/unstable/ai/LanguageModel.ts +42 -38
  49. package/src/unstable/cli/CliOutput.ts +5 -4
  50. package/src/unstable/rpc/RpcSerialization.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"RpcSerialization.js","names":["Msgpackr","Layer","Predicate","hasProperty","ServiceMap","RpcSerialization","Service","json","of","contentType","includesFraming","makeUnsafe","decoder","TextDecoder","decode","bytes","decoded","JSON","parse","Array","isArray","encode","response","stringify","ndjson","buffer","position","nlIndex","indexOf","items","item","slice","push","length","undefined","data","i","jsonRpc","options","batches","Map","decodeJsonRpcRaw","encoded","encodeJsonRpcResponse","ndJsonRpc","parser","frames","messages","frame","batch","size","responses","message","decodeJsonRpcMessage","_tag","set","id","map","method","startsWith","tag","requestId","params","String","payload","headers","spanId","traceId","sampled","error","defect","chunk","values","result","exit","cause","value","encodeJsonRpcRaw","encodeJsonRpcMessage","get","delete","from","current","jsonrpc","Number","find","failure","code","jsonRpcInternalError","msgPack","unpackr","Unpackr","useRecords","packr","Packr","encoder","TextEncoder","incomplete","buf","prev","Uint8Array","unpackMultiple","error_","subarray","lastPosition","pack","layerJson","succeed","layerNdjson","layerJsonRpc","layerNdJsonRpc","layerMsgPack"],"sources":["../../../src/unstable/rpc/RpcSerialization.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"RpcSerialization.js","names":["Msgpackr","Layer","Predicate","hasProperty","ServiceMap","RpcSerialization","Service","json","of","contentType","includesFraming","makeUnsafe","decoder","TextDecoder","decode","bytes","decoded","JSON","parse","Array","isArray","encode","response","stringify","ndjson","buffer","position","nlIndex","indexOf","items","item","slice","push","length","undefined","data","i","jsonRpc","options","batches","Map","decodeJsonRpcRaw","encoded","encodeJsonRpcResponse","ndJsonRpc","parser","frames","messages","frame","batch","size","responses","message","decodeJsonRpcMessage","_tag","set","id","method","startsWith","tag","requestId","params","String","payload","headers","spanId","traceId","sampled","error","defect","chunk","values","result","exit","cause","value","encodeJsonRpcRaw","encodeJsonRpcMessage","get","delete","from","current","jsonrpc","Number","find","failure","code","jsonRpcInternalError","msgPack","unpackr","Unpackr","useRecords","packr","Packr","encoder","TextEncoder","incomplete","buf","prev","Uint8Array","unpackMultiple","error_","subarray","lastPosition","pack","layerJson","succeed","layerNdjson","layerJsonRpc","layerNdJsonRpc","layerMsgPack"],"sources":["../../../src/unstable/rpc/RpcSerialization.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "effect",
3
3
  "type": "module",
4
- "version": "4.0.0-beta.34",
4
+ "version": "4.0.0-beta.35",
5
5
  "license": "MIT",
6
6
  "description": "The missing standard library for TypeScript, for writing production-grade software.",
7
7
  "homepage": "https://effect.website",
package/src/Channel.ts CHANGED
@@ -92,7 +92,17 @@ import { ParentSpan, type SpanOptions } from "./Tracer.ts"
92
92
  import type * as Types from "./Types.ts"
93
93
  import type * as Unify from "./Unify.ts"
94
94
 
95
- const TypeId = "~effect/Channel"
95
+ /**
96
+ * @since 4.0.0
97
+ * @category Type Identifiers
98
+ */
99
+ export type TypeId = "~effect/Channel"
100
+
101
+ /**
102
+ * @since 4.0.0
103
+ * @category Type Identifiers
104
+ */
105
+ export const TypeId: TypeId = "~effect/Channel"
96
106
 
97
107
  /**
98
108
  * Tests if a value is a `Channel`.
package/src/Config.ts CHANGED
@@ -680,6 +680,11 @@ export const withDefault: {
680
680
  export const option = <A>(self: Config<A>): Config<Option.Option<A>> =>
681
681
  self.pipe(map(Option.some), withDefault(Option.none()))
682
682
 
683
+ /**
684
+ * @since 3.0.0
685
+ */
686
+ export type Success<T> = [T] extends [Config<infer A>] ? A : never
687
+
683
688
  /**
684
689
  * Utility type that recursively replaces primitives with `Config` in a nested
685
690
  * structure.
package/src/Effect.ts CHANGED
@@ -11999,11 +11999,11 @@ export const scopedWith: <A, E, R>(
11999
11999
  * @since 2.0.0
12000
12000
  * @category Resource Management & Finalization
12001
12001
  */
12002
- export const acquireRelease: <A, E, R>(
12002
+ export const acquireRelease: <A, E, R, R2>(
12003
12003
  acquire: Effect<A, E, R>,
12004
- release: (a: A, exit: Exit.Exit<unknown, unknown>) => Effect<unknown>,
12004
+ release: (a: A, exit: Exit.Exit<unknown, unknown>) => Effect<unknown, never, R2>,
12005
12005
  options?: { readonly interruptible?: boolean }
12006
- ) => Effect<A, E, Scope | R> = internal.acquireRelease
12006
+ ) => Effect<A, E, R | R2 | Scope> = internal.acquireRelease
12007
12007
 
12008
12008
  /**
12009
12009
  * This function is used to ensure that an `Effect` value that represents the
package/src/Layer.ts CHANGED
@@ -19,6 +19,7 @@
19
19
  */
20
20
  import type { NonEmptyArray, NonEmptyReadonlyArray } from "./Array.ts"
21
21
  import type * as Cause from "./Cause.ts"
22
+ import type * as Channel from "./Channel.ts"
22
23
  import * as Deferred from "./Deferred.ts"
23
24
  import type { Effect } from "./Effect.ts"
24
25
  import type * as Exit from "./Exit.ts"
@@ -33,6 +34,7 @@ import { hasProperty } from "./Predicate.ts"
33
34
  import { CurrentStackFrame } from "./References.ts"
34
35
  import * as Scope from "./Scope.ts"
35
36
  import * as ServiceMap from "./ServiceMap.ts"
37
+ import type * as Stream from "./Stream.ts"
36
38
  import * as Tracer from "./Tracer.ts"
37
39
  import type * as Types from "./Types.ts"
38
40
 
@@ -3148,19 +3150,21 @@ export const launch = <RIn, E, ROut>(self: Layer<ROut, E, RIn>): Effect<never, E
3148
3150
  */
3149
3151
  export type PartialEffectful<A extends object> = Types.Simplify<
3150
3152
  & {
3151
- [
3152
- K in keyof A as A[K] extends Effect<any, any, any> | ((...args: any) => Effect<any, any, any>) ? K
3153
- : never
3154
- ]?: A[K]
3153
+ [K in keyof A as A[K] extends AnyEffectOrStream ? K : never]?: A[K]
3155
3154
  }
3156
3155
  & {
3157
- [
3158
- K in keyof A as A[K] extends Effect<any, any, any> | ((...args: any) => Effect<any, any, any>) ? never
3159
- : K
3160
- ]: A[K]
3156
+ [K in keyof A as A[K] extends AnyEffectOrStream ? never : K]: A[K]
3161
3157
  }
3162
3158
  >
3163
3159
 
3160
+ type AnyEffectOrStream =
3161
+ | Effect<any, any, any>
3162
+ | Stream.Stream<any, any, any>
3163
+ | Channel.Channel<any, any, any, any, any, any, any>
3164
+ | ((...args: any) => Effect<any, any, any>)
3165
+ | ((...args: any) => Stream.Stream<any, any, any>)
3166
+ | ((...args: any) => Channel.Channel<any, any, any, any, any, any, any>)
3167
+
3164
3168
  /**
3165
3169
  * Creates a mock layer for testing purposes. You can provide a partial
3166
3170
  * implementation of the service, and any methods not provided will
@@ -3331,7 +3335,18 @@ const mockImpl = <I, S extends object>(service: ServiceMap.Key<I, S>, implementa
3331
3335
  )
3332
3336
 
3333
3337
  const makeUnimplemented = (error: globalThis.Error) => {
3334
- const dead = internalEffect.die(error)
3338
+ const dead = Object.assign(internalEffect.die(error), {
3339
+ [StreamTypeId]: StreamTypeId,
3340
+ channel: {
3341
+ [ChannelTypeId]: ChannelTypeId,
3342
+ transform: () => internalEffect.succeed(dead),
3343
+ pipe() {
3344
+ return pipeArguments(this, arguments)
3345
+ }
3346
+ },
3347
+ [ChannelTypeId]: ChannelTypeId,
3348
+ transform: () => internalEffect.succeed(dead)
3349
+ })
3335
3350
  function unimplemented() {
3336
3351
  return dead
3337
3352
  }
@@ -3341,6 +3356,9 @@ const makeUnimplemented = (error: globalThis.Error) => {
3341
3356
  return unimplemented
3342
3357
  }
3343
3358
 
3359
+ const StreamTypeId: Stream.TypeId = "~effect/Stream"
3360
+ const ChannelTypeId: Channel.TypeId = "~effect/Channel"
3361
+
3344
3362
  // -----------------------------------------------------------------------------
3345
3363
  // Type constraints
3346
3364
  // -----------------------------------------------------------------------------
package/src/Schema.ts CHANGED
@@ -3262,6 +3262,36 @@ export const NonEmptyArray = Struct_.lambda<NonEmptyArrayLambda>((schema) =>
3262
3262
  make(new AST.Arrays(false, [schema.ast], [schema.ast]), { schema })
3263
3263
  )
3264
3264
 
3265
+ /**
3266
+ * @category Arrays
3267
+ * @since 4.0.0
3268
+ */
3269
+ export interface ArrayEnsure<S extends Top> extends decodeTo<$Array<toType<S>>, Union<readonly [S, $Array<S>]>> {}
3270
+
3271
+ /**
3272
+ * Decodes a single value or an array of values into an array.
3273
+ *
3274
+ * Decoding:
3275
+ * - a single value is decoded as a one-element array
3276
+ * - an array is decoded as-is
3277
+ *
3278
+ * Encoding:
3279
+ * - a one-element array is encoded as a single value
3280
+ * - arrays with more than one element are encoded as arrays
3281
+ *
3282
+ * @category Arrays
3283
+ * @since 4.0.0
3284
+ */
3285
+ export function ArrayEnsure<S extends Top>(schema: S): ArrayEnsure<S> {
3286
+ return Union([schema, Array(schema)]).pipe(decodeTo(
3287
+ Array(toType(schema)),
3288
+ Transformation.transform({
3289
+ decode: Arr.ensure,
3290
+ encode: (array) => array.length === 1 ? array[0] : array
3291
+ })
3292
+ ))
3293
+ }
3294
+
3265
3295
  /**
3266
3296
  * Schema type for an array with unique elements. Produced by {@link UniqueArray}.
3267
3297
  *
package/src/Stream.ts CHANGED
@@ -57,7 +57,17 @@ import type {
57
57
  } from "./Types.ts"
58
58
  import type * as Unify from "./Unify.ts"
59
59
 
60
- const TypeId = "~effect/Stream"
60
+ /**
61
+ * @since 4.0.0
62
+ * @category Type Identifiers
63
+ */
64
+ export type TypeId = "~effect/Stream"
65
+
66
+ /**
67
+ * @since 4.0.0
68
+ * @category Type Identifiers
69
+ */
70
+ export const TypeId: TypeId = "~effect/Stream"
61
71
 
62
72
  /**
63
73
  * A `Stream<A, E, R>` describes a program that can emit many `A` values, fail
@@ -232,7 +232,14 @@ export const makeUnsafe = <A extends DateTime.DateTime.Input>(input: A): DateTim
232
232
  return fromDateUnsafe(new Date(input)) as DateTime.DateTime.PreserveZone<A>
233
233
  }
234
234
 
235
- const hasZone = (input: string): boolean => /Z|[+-]\d{2}$|[+-]\d{2}:?\d{2}$|\]$/.test(input)
235
+ /**
236
+ * Detects whether a date string already contains timezone info.
237
+ * Without a zone, `new Date("2024-01-01T12:00:00")` is parsed as local time,
238
+ * so `makeUnsafe` appends "Z" to force UTC interpretation.
239
+ * This check prevents appending "Z" to strings that already have a zone
240
+ * (e.g. "2024-01-01T12:00:00Z", "...+05:30", "...GMT"), which would produce invalid dates.
241
+ */
242
+ const hasZone = (input: string): boolean => /Z|GMT|[+-]\d{2}$|[+-]\d{2}:?\d{2}$|\]$/.test(input)
236
243
 
237
244
  const minEpochMillis = -8640000000000000 + (12 * 60 * 60 * 1000)
238
245
  const maxEpochMillis = 8640000000000000 - (14 * 60 * 60 * 1000)
@@ -3792,19 +3792,21 @@ export const scopedWith = <A, E, R>(
3792
3792
  })
3793
3793
 
3794
3794
  /** @internal */
3795
- export const acquireRelease = <A, E, R>(
3795
+ export const acquireRelease = <A, E, R, R2>(
3796
3796
  acquire: Effect.Effect<A, E, R>,
3797
- release: (a: A, exit: Exit.Exit<unknown, unknown>) => Effect.Effect<unknown>,
3797
+ release: (a: A, exit: Exit.Exit<unknown, unknown>) => Effect.Effect<unknown, never, R2>,
3798
3798
  options?: { readonly interruptible?: boolean }
3799
- ): Effect.Effect<A, E, R | Scope.Scope> =>
3800
- uninterruptibleMask((restore) =>
3801
- flatMap(
3802
- scope,
3803
- (scope) =>
3804
- tap(
3805
- options?.interruptible ? restore(acquire) : acquire,
3806
- (a) => scopeAddFinalizerExit(scope, (exit) => release(a, exit))
3807
- )
3799
+ ): Effect.Effect<A, E, R | R2 | Scope.Scope> =>
3800
+ servicesWith((services: ServiceMap.ServiceMap<R2>) =>
3801
+ uninterruptibleMask((restore) =>
3802
+ flatMap(
3803
+ scope,
3804
+ (scope) =>
3805
+ tap(
3806
+ options?.interruptible ? restore(acquire) : acquire,
3807
+ (a) => scopeAddFinalizerExit(scope, (exit) => provideServices(release(a, exit), services))
3808
+ )
3809
+ )
3808
3810
  )
3809
3811
  )
3810
3812
 
@@ -1532,11 +1532,13 @@ export const reasonFromHttpStatus = (params: {
1532
1532
  readonly body?: unknown
1533
1533
  readonly http?: typeof HttpContext.Type
1534
1534
  readonly metadata?: typeof ProviderMetadata.Type
1535
+ readonly description?: string | undefined
1535
1536
  }): AiErrorReason => {
1536
- const { status, http, metadata } = params
1537
+ const { status, http, metadata, description } = params
1537
1538
  const common = {
1538
1539
  http,
1539
- ...(Predicate.isNotUndefined(metadata) ? { metadata } : {})
1540
+ ...(metadata ? { metadata } : undefined),
1541
+ ...(description ? { description } : undefined)
1540
1542
  }
1541
1543
  switch (status) {
1542
1544
  case 400:
@@ -937,19 +937,23 @@ export const make: (params: {
937
937
  const tracker = Option.getOrUndefined(yield* Effect.serviceOption(ResponseIdTracker.ResponseIdTracker))
938
938
  const toolChoice = options.toolChoice ?? "auto"
939
939
 
940
- const withNonIncrementalFallback = <R>(
941
- effect: Effect.Effect<Array<Response.PartEncoded>, AiError.AiError, R>
942
- ): Effect.Effect<Array<Response.PartEncoded>, AiError.AiError, R | IdGenerator> =>
943
- providerOptions.incrementalPrompt ?
944
- effect.pipe(
945
- Effect.catchReason("AiError", "InvalidRequestError", (_) =>
946
- params.generateText({
947
- ...providerOptions,
948
- incrementalPrompt: undefined,
949
- previousResponseId: undefined
950
- }))
951
- ) :
952
- effect
940
+ const generateWithNonIncrementalFallback = () => {
941
+ const requestOptions: ProviderOptions = {
942
+ ...providerOptions
943
+ }
944
+ const fallbackPrompt = requestOptions.prompt
945
+ const fallbackOptions: ProviderOptions = {
946
+ ...requestOptions,
947
+ prompt: fallbackPrompt,
948
+ incrementalPrompt: undefined,
949
+ previousResponseId: undefined
950
+ }
951
+ return requestOptions.incrementalPrompt
952
+ ? params.generateText(requestOptions).pipe(
953
+ Effect.catchReason("AiError", "InvalidRequestError", (_) => params.generateText(fallbackOptions))
954
+ )
955
+ : params.generateText(requestOptions)
956
+ }
953
957
 
954
958
  // Check for pending approvals that need resolution
955
959
  const { approved, denied } = collectToolApprovals(
@@ -982,7 +986,7 @@ export const make: (params: {
982
986
  const ResponseSchema = Schema.mutable(
983
987
  Schema.Array(Response.Part(Toolkit.empty))
984
988
  )
985
- const rawContent = yield* withNonIncrementalFallback(params.generateText(providerOptions))
989
+ const rawContent = yield* generateWithNonIncrementalFallback()
986
990
  const content = yield* Schema.decodeEffect(ResponseSchema)(rawContent)
987
991
  if (tracker) {
988
992
  const responseMetadata = content.find((part) => part.type === "response-metadata")
@@ -1020,7 +1024,7 @@ export const make: (params: {
1020
1024
  const ResponseSchema = Schema.mutable(
1021
1025
  Schema.Array(Response.Part(Toolkit.empty))
1022
1026
  )
1023
- const rawContent = yield* withNonIncrementalFallback(params.generateText(providerOptions))
1027
+ const rawContent = yield* generateWithNonIncrementalFallback()
1024
1028
  const content = yield* Schema.decodeEffect(ResponseSchema)(rawContent)
1025
1029
  if (tracker) {
1026
1030
  const responseMetadata = content.find((part) => part.type === "response-metadata")
@@ -1099,7 +1103,7 @@ export const make: (params: {
1099
1103
  // If tool call resolution is disabled, return the response without
1100
1104
  // resolving the tool calls that were generated
1101
1105
  if (options.disableToolCallResolution === true) {
1102
- const rawContent = yield* withNonIncrementalFallback(params.generateText(providerOptions))
1106
+ const rawContent = yield* generateWithNonIncrementalFallback()
1103
1107
  const content = yield* Schema.decodeEffect(ResponseSchema)(rawContent)
1104
1108
  if (tracker) {
1105
1109
  const responseMetadata = content.find((part) => part.type === "response-metadata")
@@ -1110,7 +1114,7 @@ export const make: (params: {
1110
1114
  return content as Array<Response.Part<Tools>>
1111
1115
  }
1112
1116
 
1113
- const rawContent = yield* withNonIncrementalFallback(params.generateText(providerOptions))
1117
+ const rawContent = yield* generateWithNonIncrementalFallback()
1114
1118
 
1115
1119
  // Resolve the generated tool calls
1116
1120
  const toolResults = yield* resolveToolCalls(
@@ -1168,19 +1172,23 @@ export const make: (params: {
1168
1172
  const tracker = Option.getOrUndefined(yield* Effect.serviceOption(ResponseIdTracker.ResponseIdTracker))
1169
1173
  const toolChoice = options.toolChoice ?? "auto"
1170
1174
 
1171
- const withNonIncrementalFallback = <R>(
1172
- stream: Stream.Stream<Response.StreamPartEncoded, AiError.AiError, R>
1173
- ): Stream.Stream<Response.StreamPartEncoded, AiError.AiError, R | IdGenerator> =>
1174
- providerOptions.incrementalPrompt ?
1175
- stream.pipe(
1176
- Stream.catchReason("AiError", "InvalidRequestError", (_) =>
1177
- params.streamText({
1178
- ...providerOptions,
1179
- incrementalPrompt: undefined,
1180
- previousResponseId: undefined
1181
- }))
1182
- ) :
1183
- stream
1175
+ const streamWithNonIncrementalFallback = () => {
1176
+ const requestOptions: ProviderOptions = {
1177
+ ...providerOptions
1178
+ }
1179
+ const fallbackPrompt = requestOptions.prompt
1180
+ const fallbackOptions: ProviderOptions = {
1181
+ ...requestOptions,
1182
+ prompt: fallbackPrompt,
1183
+ incrementalPrompt: undefined,
1184
+ previousResponseId: undefined
1185
+ }
1186
+ return requestOptions.incrementalPrompt
1187
+ ? params.streamText(requestOptions).pipe(
1188
+ Stream.catchReason("AiError", "InvalidRequestError", (_) => params.streamText(fallbackOptions))
1189
+ )
1190
+ : params.streamText(requestOptions)
1191
+ }
1184
1192
 
1185
1193
  // Check for pending approvals that need resolution
1186
1194
  const { approved: pendingApproved, denied: pendingDenied } = collectToolApprovals(providerOptions.prompt.content, {
@@ -1212,8 +1220,7 @@ export const make: (params: {
1212
1220
  const schema = Schema.NonEmptyArray(Response.StreamPart(Toolkit.empty))
1213
1221
  const decodeParts = Schema.decodeEffect(schema)
1214
1222
  return pipe(
1215
- params.streamText(providerOptions),
1216
- withNonIncrementalFallback,
1223
+ streamWithNonIncrementalFallback(),
1217
1224
  Stream.mapArrayEffect((parts) =>
1218
1225
  decodeParts(parts).pipe(
1219
1226
  tracker ?
@@ -1262,8 +1269,7 @@ export const make: (params: {
1262
1269
  const schema = Schema.NonEmptyArray(Response.StreamPart(Toolkit.empty))
1263
1270
  const decodeParts = Schema.decodeEffect(schema)
1264
1271
  return pipe(
1265
- params.streamText(providerOptions),
1266
- withNonIncrementalFallback,
1272
+ streamWithNonIncrementalFallback(),
1267
1273
  Stream.mapArrayEffect((parts) =>
1268
1274
  decodeParts(parts).pipe(
1269
1275
  tracker ?
@@ -1369,8 +1375,7 @@ export const make: (params: {
1369
1375
  if (options.disableToolCallResolution === true) {
1370
1376
  const schema = Schema.NonEmptyArray(Response.StreamPart(toolkit))
1371
1377
  const decodeParts = Schema.decodeEffect(schema)
1372
- return params.streamText(providerOptions).pipe(
1373
- withNonIncrementalFallback,
1378
+ return streamWithNonIncrementalFallback().pipe(
1374
1379
  Stream.mapArrayEffect((parts) =>
1375
1380
  decodeParts(parts).pipe(
1376
1381
  tracker ?
@@ -1449,8 +1454,7 @@ export const make: (params: {
1449
1454
  )
1450
1455
  })
1451
1456
 
1452
- yield* params.streamText(providerOptions).pipe(
1453
- withNonIncrementalFallback,
1457
+ yield* streamWithNonIncrementalFallback().pipe(
1454
1458
  Stream.runForEachArray(
1455
1459
  Effect.fnUntraced(function*(chunk) {
1456
1460
  const parts = yield* decodeParts(chunk)
@@ -406,8 +406,9 @@ interface Row {
406
406
  * Renders a table with aligned columns.
407
407
  * @internal
408
408
  */
409
- const renderTable = (rows: ReadonlyArray<Row>, widthCap: number) => {
410
- const col = Math.min(Math.max(...rows.map((r) => visualLength(r.left))) + 4, widthCap)
409
+ const renderTable = (rows: ReadonlyArray<Row>, widthCap?: number) => {
410
+ const maxColumn = Math.max(...rows.map((r) => visualLength(r.left))) + 4
411
+ const col = widthCap === undefined ? maxColumn : Math.min(maxColumn, widthCap)
411
412
  return rows.map(({ left, right }) => ` ${pad(left, col)}${right}`).join("\n")
412
413
  }
413
414
 
@@ -497,7 +498,7 @@ const formatHelpDocImpl = (doc: HelpDoc, colors: ColorFunctions): string => {
497
498
  }
498
499
  })
499
500
 
500
- sections.push(renderTable(flagRows, 30))
501
+ sections.push(renderTable(flagRows))
501
502
  sections.push("")
502
503
  }
503
504
 
@@ -525,7 +526,7 @@ const formatHelpDocImpl = (doc: HelpDoc, colors: ColorFunctions): string => {
525
526
  }
526
527
  })
527
528
 
528
- sections.push(renderTable(globalFlagRows, 30))
529
+ sections.push(renderTable(globalFlagRows))
529
530
  sections.push("")
530
531
  }
531
532
 
@@ -175,7 +175,7 @@ function decodeJsonRpcRaw(
175
175
  }
176
176
  return messages
177
177
  }
178
- return Array.isArray(decoded) ? decoded.map(decodeJsonRpcMessage) : [decodeJsonRpcMessage(decoded)]
178
+ return [decodeJsonRpcMessage(decoded)]
179
179
  }
180
180
 
181
181
  function decodeJsonRpcMessage(decoded: JsonRpcMessage): RpcMessage.FromClientEncoded | RpcMessage.FromServerEncoded {