effect 4.0.0 → 4.0.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.
- package/ai-docs/package.json +2 -2
- package/ai-docs/tsconfig.json +2 -1
- package/dist/Array.d.ts +339 -0
- package/dist/Array.d.ts.map +1 -1
- package/dist/Array.js +143 -3
- package/dist/Array.js.map +1 -1
- package/dist/BigDecimal.d.ts +88 -0
- package/dist/BigDecimal.d.ts.map +1 -1
- package/dist/BigDecimal.js +44 -0
- package/dist/BigDecimal.js.map +1 -1
- package/dist/BigInt.d.ts +68 -0
- package/dist/BigInt.d.ts.map +1 -1
- package/dist/BigInt.js +36 -0
- package/dist/BigInt.js.map +1 -1
- package/dist/Boolean.d.ts +34 -0
- package/dist/Boolean.d.ts.map +1 -1
- package/dist/Boolean.js +18 -0
- package/dist/Boolean.js.map +1 -1
- package/dist/Brand.d.ts +9 -0
- package/dist/Brand.d.ts.map +1 -1
- package/dist/Brand.js +6 -0
- package/dist/Brand.js.map +1 -1
- package/dist/ByteSize.d.ts +86 -0
- package/dist/ByteSize.d.ts.map +1 -1
- package/dist/ByteSize.js +51 -0
- package/dist/ByteSize.js.map +1 -1
- package/dist/Cache.d.ts +38 -1
- package/dist/Cache.d.ts.map +1 -1
- package/dist/Cache.js +47 -23
- package/dist/Cache.js.map +1 -1
- package/dist/Cause.d.ts +82 -0
- package/dist/Cause.d.ts.map +1 -1
- package/dist/Cause.js +61 -1
- package/dist/Cause.js.map +1 -1
- package/dist/Channel.d.ts +327 -4
- package/dist/Channel.d.ts.map +1 -1
- package/dist/Channel.js +168 -8
- package/dist/Channel.js.map +1 -1
- package/dist/ChannelSchema.d.ts +11 -0
- package/dist/ChannelSchema.d.ts.map +1 -1
- package/dist/ChannelSchema.js +6 -0
- package/dist/ChannelSchema.js.map +1 -1
- package/dist/Chunk.d.ts +192 -0
- package/dist/Chunk.d.ts.map +1 -1
- package/dist/Chunk.js +78 -0
- package/dist/Chunk.js.map +1 -1
- package/dist/Clock.d.ts +7 -0
- package/dist/Clock.d.ts.map +1 -1
- package/dist/Clock.js +5 -0
- package/dist/Clock.js.map +1 -1
- package/dist/Combiner.d.ts +10 -0
- package/dist/Combiner.d.ts.map +1 -1
- package/dist/Combiner.js +8 -0
- package/dist/Combiner.js.map +1 -1
- package/dist/Config.d.ts +52 -12
- package/dist/Config.d.ts.map +1 -1
- package/dist/Config.js +55 -5
- package/dist/Config.js.map +1 -1
- package/dist/ConfigProvider.d.ts +28 -0
- package/dist/ConfigProvider.d.ts.map +1 -1
- package/dist/ConfigProvider.js +19 -0
- package/dist/ConfigProvider.js.map +1 -1
- package/dist/Console.d.ts +22 -0
- package/dist/Console.d.ts.map +1 -1
- package/dist/Console.js +20 -0
- package/dist/Console.js.map +1 -1
- package/dist/Context.d.ts +50 -0
- package/dist/Context.d.ts.map +1 -1
- package/dist/Context.js +21 -0
- package/dist/Context.js.map +1 -1
- package/dist/Cron.d.ts +16 -0
- package/dist/Cron.d.ts.map +1 -1
- package/dist/Cron.js +26 -1
- package/dist/Cron.js.map +1 -1
- package/dist/Crypto.d.ts +5 -0
- package/dist/Crypto.d.ts.map +1 -1
- package/dist/Crypto.js +3 -0
- package/dist/Crypto.js.map +1 -1
- package/dist/Data.d.ts +13 -0
- package/dist/Data.d.ts.map +1 -1
- package/dist/Data.js +5 -0
- package/dist/Data.js.map +1 -1
- package/dist/DateTime.d.ts +171 -0
- package/dist/DateTime.d.ts.map +1 -1
- package/dist/DateTime.js +89 -0
- package/dist/DateTime.js.map +1 -1
- package/dist/Deferred.d.ts +51 -0
- package/dist/Deferred.d.ts.map +1 -1
- package/dist/Deferred.js +22 -0
- package/dist/Deferred.js.map +1 -1
- package/dist/Differ.d.ts +2 -0
- package/dist/Differ.d.ts.map +1 -1
- package/dist/Differ.js +1 -0
- package/dist/Duration.d.ts +90 -0
- package/dist/Duration.d.ts.map +1 -1
- package/dist/Duration.js +53 -0
- package/dist/Duration.js.map +1 -1
- package/dist/Effect.d.ts +677 -22
- package/dist/Effect.d.ts.map +1 -1
- package/dist/Effect.js +251 -10
- package/dist/Effect.js.map +1 -1
- package/dist/Effectable.d.ts +4 -0
- package/dist/Effectable.d.ts.map +1 -1
- package/dist/Effectable.js +3 -0
- package/dist/Effectable.js.map +1 -1
- package/dist/Equal.d.ts +8 -0
- package/dist/Equal.d.ts.map +1 -1
- package/dist/Equal.js +9 -1
- package/dist/Equal.js.map +1 -1
- package/dist/Equivalence.d.ts +21 -0
- package/dist/Equivalence.d.ts.map +1 -1
- package/dist/Equivalence.js +16 -0
- package/dist/Equivalence.js.map +1 -1
- package/dist/ErrorReporter.d.ts +36 -0
- package/dist/ErrorReporter.d.ts.map +1 -1
- package/dist/ErrorReporter.js +11 -0
- package/dist/ErrorReporter.js.map +1 -1
- package/dist/ExecutionPlan.d.ts +49 -8
- package/dist/ExecutionPlan.d.ts.map +1 -1
- package/dist/ExecutionPlan.js +7 -0
- package/dist/ExecutionPlan.js.map +1 -1
- package/dist/Exit.d.ts +40 -0
- package/dist/Exit.d.ts.map +1 -1
- package/dist/Exit.js +27 -0
- package/dist/Exit.js.map +1 -1
- package/dist/Fiber.d.ts +20 -0
- package/dist/Fiber.d.ts.map +1 -1
- package/dist/Fiber.js +11 -0
- package/dist/Fiber.js.map +1 -1
- package/dist/FiberHandle.d.ts +21 -0
- package/dist/FiberHandle.d.ts.map +1 -1
- package/dist/FiberHandle.js +21 -4
- package/dist/FiberHandle.js.map +1 -1
- package/dist/FiberMap.d.ts +35 -0
- package/dist/FiberMap.d.ts.map +1 -1
- package/dist/FiberMap.js +19 -0
- package/dist/FiberMap.js.map +1 -1
- package/dist/FiberSet.d.ts +20 -0
- package/dist/FiberSet.d.ts.map +1 -1
- package/dist/FiberSet.js +14 -0
- package/dist/FiberSet.js.map +1 -1
- package/dist/FileSystem.d.ts +15 -0
- package/dist/FileSystem.d.ts.map +1 -1
- package/dist/FileSystem.js +8 -0
- package/dist/FileSystem.js.map +1 -1
- package/dist/Filter.d.ts +55 -0
- package/dist/Filter.d.ts.map +1 -1
- package/dist/Filter.js +28 -0
- package/dist/Filter.js.map +1 -1
- package/dist/Formatter.d.ts +3 -0
- package/dist/Formatter.d.ts.map +1 -1
- package/dist/Formatter.js +39 -1
- package/dist/Formatter.js.map +1 -1
- package/dist/Function.d.ts +30 -0
- package/dist/Function.d.ts.map +1 -1
- package/dist/Function.js +20 -0
- package/dist/Function.js.map +1 -1
- package/dist/Graph.d.ts +247 -12
- package/dist/Graph.d.ts.map +1 -1
- package/dist/Graph.js +149 -28
- package/dist/Graph.js.map +1 -1
- package/dist/HKT.d.ts +5 -0
- package/dist/HKT.d.ts.map +1 -1
- package/dist/Hash.d.ts +14 -0
- package/dist/Hash.d.ts.map +1 -1
- package/dist/Hash.js +12 -0
- package/dist/Hash.js.map +1 -1
- package/dist/HashMap.d.ts +91 -0
- package/dist/HashMap.d.ts.map +1 -1
- package/dist/HashMap.js +39 -0
- package/dist/HashMap.js.map +1 -1
- package/dist/HashRing.d.ts +17 -0
- package/dist/HashRing.d.ts.map +1 -1
- package/dist/HashRing.js +22 -5
- package/dist/HashRing.js.map +1 -1
- package/dist/HashSet.d.ts +49 -0
- package/dist/HashSet.d.ts.map +1 -1
- package/dist/HashSet.js +19 -0
- package/dist/HashSet.js.map +1 -1
- package/dist/Inspectable.d.ts +7 -0
- package/dist/Inspectable.d.ts.map +1 -1
- package/dist/Inspectable.js +6 -0
- package/dist/Inspectable.js.map +1 -1
- package/dist/Iterable.d.ts +127 -0
- package/dist/Iterable.d.ts.map +1 -1
- package/dist/Iterable.js +51 -0
- package/dist/Iterable.js.map +1 -1
- package/dist/JsonPatch.d.ts +4 -0
- package/dist/JsonPatch.d.ts.map +1 -1
- package/dist/JsonPatch.js +3 -0
- package/dist/JsonPatch.js.map +1 -1
- package/dist/JsonPointer.d.ts +5 -0
- package/dist/JsonPointer.d.ts.map +1 -1
- package/dist/JsonPointer.js +5 -0
- package/dist/JsonPointer.js.map +1 -1
- package/dist/JsonSchema.d.ts +16 -0
- package/dist/JsonSchema.d.ts.map +1 -1
- package/dist/JsonSchema.js +11 -0
- package/dist/JsonSchema.js.map +1 -1
- package/dist/Latch.d.ts +14 -0
- package/dist/Latch.d.ts.map +1 -1
- package/dist/Latch.js +10 -0
- package/dist/Latch.js.map +1 -1
- package/dist/Layer.d.ts +100 -0
- package/dist/Layer.d.ts.map +1 -1
- package/dist/Layer.js +45 -1
- package/dist/Layer.js.map +1 -1
- package/dist/LayerMap.d.ts +7 -0
- package/dist/LayerMap.d.ts.map +1 -1
- package/dist/LayerMap.js +4 -0
- package/dist/LayerMap.js.map +1 -1
- package/dist/LayerRef.d.ts +5 -0
- package/dist/LayerRef.d.ts.map +1 -1
- package/dist/LayerRef.js +3 -0
- package/dist/LayerRef.js.map +1 -1
- package/dist/LogLevel.d.ts +20 -0
- package/dist/LogLevel.d.ts.map +1 -1
- package/dist/LogLevel.js +9 -0
- package/dist/LogLevel.js.map +1 -1
- package/dist/Logger.d.ts +25 -0
- package/dist/Logger.d.ts.map +1 -1
- package/dist/Logger.js +30 -4
- package/dist/Logger.js.map +1 -1
- package/dist/ManagedRuntime.d.ts +5 -0
- package/dist/ManagedRuntime.d.ts.map +1 -1
- package/dist/ManagedRuntime.js +9 -1
- package/dist/ManagedRuntime.js.map +1 -1
- package/dist/Match.d.ts +51 -0
- package/dist/Match.d.ts.map +1 -1
- package/dist/Match.js +39 -0
- package/dist/Match.js.map +1 -1
- package/dist/Metric.d.ts +59 -0
- package/dist/Metric.d.ts.map +1 -1
- package/dist/Metric.js +31 -0
- package/dist/Metric.js.map +1 -1
- package/dist/MutableHashMap.d.ts +32 -0
- package/dist/MutableHashMap.d.ts.map +1 -1
- package/dist/MutableHashMap.js +16 -0
- package/dist/MutableHashMap.js.map +1 -1
- package/dist/MutableHashSet.d.ts +16 -0
- package/dist/MutableHashSet.d.ts.map +1 -1
- package/dist/MutableHashSet.js +10 -0
- package/dist/MutableHashSet.js.map +1 -1
- package/dist/MutableList.d.ts +20 -0
- package/dist/MutableList.d.ts.map +1 -1
- package/dist/MutableList.js +18 -0
- package/dist/MutableList.js.map +1 -1
- package/dist/MutableRef.d.ts +31 -0
- package/dist/MutableRef.d.ts.map +1 -1
- package/dist/MutableRef.js +17 -0
- package/dist/MutableRef.js.map +1 -1
- package/dist/Newtype.d.ts +9 -0
- package/dist/Newtype.d.ts.map +1 -1
- package/dist/Newtype.js +6 -0
- package/dist/Newtype.js.map +1 -1
- package/dist/NonEmptyIterable.d.ts +4 -0
- package/dist/NonEmptyIterable.d.ts.map +1 -1
- package/dist/NonEmptyIterable.js +2 -0
- package/dist/NonEmptyIterable.js.map +1 -1
- package/dist/Number.d.ts +61 -0
- package/dist/Number.d.ts.map +1 -1
- package/dist/Number.js +31 -0
- package/dist/Number.js.map +1 -1
- package/dist/Optic.d.ts +41 -0
- package/dist/Optic.d.ts.map +1 -1
- package/dist/Optic.js +20 -0
- package/dist/Optic.js.map +1 -1
- package/dist/Option.d.ts +134 -0
- package/dist/Option.d.ts.map +1 -1
- package/dist/Option.js +61 -0
- package/dist/Option.js.map +1 -1
- package/dist/Order.d.ts +29 -0
- package/dist/Order.d.ts.map +1 -1
- package/dist/Order.js +24 -0
- package/dist/Order.js.map +1 -1
- package/dist/Ordering.d.ts +7 -0
- package/dist/Ordering.d.ts.map +1 -1
- package/dist/Ordering.js +3 -0
- package/dist/Ordering.js.map +1 -1
- package/dist/PartitionedSemaphore.d.ts +24 -0
- package/dist/PartitionedSemaphore.d.ts.map +1 -1
- package/dist/PartitionedSemaphore.js +47 -21
- package/dist/PartitionedSemaphore.js.map +1 -1
- package/dist/Path.d.ts +6 -0
- package/dist/Path.d.ts.map +1 -1
- package/dist/Path.js +4 -0
- package/dist/Path.js.map +1 -1
- package/dist/Pipeable.d.ts +7 -0
- package/dist/Pipeable.d.ts.map +1 -1
- package/dist/Pipeable.js +5 -0
- package/dist/Pipeable.js.map +1 -1
- package/dist/PlatformError.d.ts +8 -0
- package/dist/PlatformError.d.ts.map +1 -1
- package/dist/PlatformError.js +7 -0
- package/dist/PlatformError.js.map +1 -1
- package/dist/Pool.d.ts +28 -5
- package/dist/Pool.d.ts.map +1 -1
- package/dist/Pool.js +42 -42
- package/dist/Pool.js.map +1 -1
- package/dist/Predicate.d.ts +84 -0
- package/dist/Predicate.d.ts.map +1 -1
- package/dist/Predicate.js +48 -0
- package/dist/Predicate.js.map +1 -1
- package/dist/PrimaryKey.d.ts +5 -0
- package/dist/PrimaryKey.d.ts.map +1 -1
- package/dist/PrimaryKey.js +4 -0
- package/dist/PrimaryKey.js.map +1 -1
- package/dist/PubSub.d.ts +67 -5
- package/dist/PubSub.d.ts.map +1 -1
- package/dist/PubSub.js +60 -8
- package/dist/PubSub.js.map +1 -1
- package/dist/Pull.d.ts +20 -0
- package/dist/Pull.d.ts.map +1 -1
- package/dist/Pull.js +10 -0
- package/dist/Pull.js.map +1 -1
- package/dist/Queue.d.ts +60 -0
- package/dist/Queue.d.ts.map +1 -1
- package/dist/Queue.js +58 -8
- package/dist/Queue.js.map +1 -1
- package/dist/Random.d.ts +13 -0
- package/dist/Random.d.ts.map +1 -1
- package/dist/Random.js +9 -0
- package/dist/Random.js.map +1 -1
- package/dist/RcMap.d.ts +23 -0
- package/dist/RcMap.d.ts.map +1 -1
- package/dist/RcMap.js +24 -1
- package/dist/RcMap.js.map +1 -1
- package/dist/RcRef.d.ts +6 -0
- package/dist/RcRef.d.ts.map +1 -1
- package/dist/RcRef.js +3 -0
- package/dist/RcRef.js.map +1 -1
- package/dist/Record.d.ts +100 -0
- package/dist/Record.d.ts.map +1 -1
- package/dist/Record.js +43 -0
- package/dist/Record.js.map +1 -1
- package/dist/Redactable.d.ts +6 -0
- package/dist/Redactable.d.ts.map +1 -1
- package/dist/Redactable.js +4 -0
- package/dist/Redactable.js.map +1 -1
- package/dist/Redacted.d.ts +8 -0
- package/dist/Redacted.d.ts.map +1 -1
- package/dist/Redacted.js +6 -0
- package/dist/Redacted.js.map +1 -1
- package/dist/Reducer.d.ts +4 -0
- package/dist/Reducer.d.ts.map +1 -1
- package/dist/Reducer.js +3 -0
- package/dist/Reducer.js.map +1 -1
- package/dist/Ref.d.ts +20 -0
- package/dist/Ref.d.ts.map +1 -1
- package/dist/Ref.js +16 -0
- package/dist/Ref.js.map +1 -1
- package/dist/References.d.ts +21 -0
- package/dist/References.d.ts.map +1 -1
- package/dist/References.js +19 -0
- package/dist/References.js.map +1 -1
- package/dist/RegExp.d.ts +3 -0
- package/dist/RegExp.d.ts.map +1 -1
- package/dist/RegExp.js +4 -0
- package/dist/RegExp.js.map +1 -1
- package/dist/Request.d.ts +32 -0
- package/dist/Request.d.ts.map +1 -1
- package/dist/Request.js +12 -0
- package/dist/Request.js.map +1 -1
- package/dist/RequestResolver.d.ts +42 -0
- package/dist/RequestResolver.d.ts.map +1 -1
- package/dist/RequestResolver.js +27 -6
- package/dist/RequestResolver.js.map +1 -1
- package/dist/Resource.d.ts +6 -0
- package/dist/Resource.d.ts.map +1 -1
- package/dist/Resource.js +6 -0
- package/dist/Resource.js.map +1 -1
- package/dist/Result.d.ts +91 -0
- package/dist/Result.d.ts.map +1 -1
- package/dist/Result.js +41 -0
- package/dist/Result.js.map +1 -1
- package/dist/Runtime.d.ts +9 -0
- package/dist/Runtime.d.ts.map +1 -1
- package/dist/Runtime.js +7 -0
- package/dist/Runtime.js.map +1 -1
- package/dist/Schedule.d.ts +57 -0
- package/dist/Schedule.d.ts.map +1 -1
- package/dist/Schedule.js +32 -0
- package/dist/Schedule.js.map +1 -1
- package/dist/Scheduler.d.ts +7 -0
- package/dist/Scheduler.d.ts.map +1 -1
- package/dist/Scheduler.js +5 -0
- package/dist/Scheduler.js.map +1 -1
- package/dist/Schema.d.ts +496 -1
- package/dist/Schema.d.ts.map +1 -1
- package/dist/Schema.js +280 -1
- package/dist/Schema.js.map +1 -1
- package/dist/SchemaAST.d.ts +107 -0
- package/dist/SchemaAST.d.ts.map +1 -1
- package/dist/SchemaAST.js +81 -1
- package/dist/SchemaAST.js.map +1 -1
- package/dist/SchemaGetter.d.ts +69 -2
- package/dist/SchemaGetter.d.ts.map +1 -1
- package/dist/SchemaGetter.js +63 -4
- package/dist/SchemaGetter.js.map +1 -1
- package/dist/SchemaIssue.d.ts +33 -0
- package/dist/SchemaIssue.d.ts.map +1 -1
- package/dist/SchemaIssue.js +18 -0
- package/dist/SchemaIssue.js.map +1 -1
- package/dist/SchemaParser.d.ts +25 -0
- package/dist/SchemaParser.d.ts.map +1 -1
- package/dist/SchemaParser.js +26 -0
- package/dist/SchemaParser.js.map +1 -1
- package/dist/SchemaRepresentation.d.ts +147 -0
- package/dist/SchemaRepresentation.d.ts.map +1 -1
- package/dist/SchemaRepresentation.js +99 -0
- package/dist/SchemaRepresentation.js.map +1 -1
- package/dist/SchemaTransformation.d.ts +53 -0
- package/dist/SchemaTransformation.d.ts.map +1 -1
- package/dist/SchemaTransformation.js +46 -0
- package/dist/SchemaTransformation.js.map +1 -1
- package/dist/Scope.d.ts +19 -0
- package/dist/Scope.d.ts.map +1 -1
- package/dist/Scope.js +12 -0
- package/dist/Scope.js.map +1 -1
- package/dist/ScopedCache.d.ts +34 -0
- package/dist/ScopedCache.d.ts.map +1 -1
- package/dist/ScopedCache.js +50 -19
- package/dist/ScopedCache.js.map +1 -1
- package/dist/ScopedRef.d.ts +9 -0
- package/dist/ScopedRef.d.ts.map +1 -1
- package/dist/ScopedRef.js +6 -0
- package/dist/ScopedRef.js.map +1 -1
- package/dist/Semaphore.d.ts +26 -0
- package/dist/Semaphore.d.ts.map +1 -1
- package/dist/Semaphore.js +10 -0
- package/dist/Semaphore.js.map +1 -1
- package/dist/Sink.d.ts +125 -1
- package/dist/Sink.d.ts.map +1 -1
- package/dist/Sink.js +75 -1
- package/dist/Sink.js.map +1 -1
- package/dist/StandardSchema.d.ts +1 -0
- package/dist/StandardSchema.d.ts.map +1 -1
- package/dist/StandardSchema.js +1 -0
- package/dist/Stdio.d.ts +7 -0
- package/dist/Stdio.d.ts.map +1 -1
- package/dist/Stdio.js +5 -0
- package/dist/Stdio.js.map +1 -1
- package/dist/Stream.d.ts +603 -6
- package/dist/Stream.d.ts.map +1 -1
- package/dist/Stream.js +316 -57
- package/dist/Stream.js.map +1 -1
- package/dist/String.d.ts +87 -0
- package/dist/String.d.ts.map +1 -1
- package/dist/String.js +61 -0
- package/dist/String.js.map +1 -1
- package/dist/Struct.d.ts +46 -0
- package/dist/Struct.d.ts.map +1 -1
- package/dist/Struct.js +19 -0
- package/dist/Struct.js.map +1 -1
- package/dist/SubscriptionRef.d.ts +65 -0
- package/dist/SubscriptionRef.d.ts.map +1 -1
- package/dist/SubscriptionRef.js +25 -0
- package/dist/SubscriptionRef.js.map +1 -1
- package/dist/Symbol.d.ts +2 -0
- package/dist/Symbol.d.ts.map +1 -1
- package/dist/Symbol.js +2 -0
- package/dist/Symbol.js.map +1 -1
- package/dist/SynchronizedRef.d.ts +63 -0
- package/dist/SynchronizedRef.d.ts.map +1 -1
- package/dist/SynchronizedRef.js +24 -0
- package/dist/SynchronizedRef.js.map +1 -1
- package/dist/Take.d.ts +3 -0
- package/dist/Take.d.ts.map +1 -1
- package/dist/Take.js +1 -0
- package/dist/Take.js.map +1 -1
- package/dist/Terminal.d.ts +8 -0
- package/dist/Terminal.d.ts.map +1 -1
- package/dist/Terminal.js +4 -0
- package/dist/Terminal.js.map +1 -1
- package/dist/Tracer.d.ts +23 -0
- package/dist/Tracer.d.ts.map +1 -1
- package/dist/Tracer.js +12 -0
- package/dist/Tracer.js.map +1 -1
- package/dist/Trie.d.ts +68 -0
- package/dist/Trie.d.ts.map +1 -1
- package/dist/Trie.js +28 -0
- package/dist/Trie.js.map +1 -1
- package/dist/Tuple.d.ts +38 -0
- package/dist/Tuple.d.ts.map +1 -1
- package/dist/Tuple.js +18 -0
- package/dist/Tuple.js.map +1 -1
- package/dist/TxChunk.d.ts +52 -0
- package/dist/TxChunk.d.ts.map +1 -1
- package/dist/TxChunk.js +23 -0
- package/dist/TxChunk.js.map +1 -1
- package/dist/TxDeferred.d.ts +15 -0
- package/dist/TxDeferred.d.ts.map +1 -1
- package/dist/TxDeferred.js +8 -0
- package/dist/TxDeferred.js.map +1 -1
- package/dist/TxHashMap.d.ts +83 -0
- package/dist/TxHashMap.d.ts.map +1 -1
- package/dist/TxHashMap.js +52 -7
- package/dist/TxHashMap.js.map +1 -1
- package/dist/TxHashSet.d.ts +51 -0
- package/dist/TxHashSet.d.ts.map +1 -1
- package/dist/TxHashSet.js +29 -4
- package/dist/TxHashSet.js.map +1 -1
- package/dist/TxPriorityQueue.d.ts +30 -0
- package/dist/TxPriorityQueue.d.ts.map +1 -1
- package/dist/TxPriorityQueue.js +22 -1
- package/dist/TxPriorityQueue.js.map +1 -1
- package/dist/TxPubSub.d.ts +25 -0
- package/dist/TxPubSub.d.ts.map +1 -1
- package/dist/TxPubSub.js +19 -0
- package/dist/TxPubSub.js.map +1 -1
- package/dist/TxQueue.d.ts +51 -0
- package/dist/TxQueue.d.ts.map +1 -1
- package/dist/TxQueue.js +30 -0
- package/dist/TxQueue.js.map +1 -1
- package/dist/TxReentrantLock.d.ts +24 -0
- package/dist/TxReentrantLock.d.ts.map +1 -1
- package/dist/TxReentrantLock.js +32 -18
- package/dist/TxReentrantLock.js.map +1 -1
- package/dist/TxRef.d.ts +14 -0
- package/dist/TxRef.d.ts.map +1 -1
- package/dist/TxRef.js +7 -0
- package/dist/TxRef.js.map +1 -1
- package/dist/TxSemaphore.d.ts +25 -0
- package/dist/TxSemaphore.d.ts.map +1 -1
- package/dist/TxSemaphore.js +29 -13
- package/dist/TxSemaphore.js.map +1 -1
- package/dist/TxSubscriptionRef.d.ts +25 -0
- package/dist/TxSubscriptionRef.d.ts.map +1 -1
- package/dist/TxSubscriptionRef.js +12 -0
- package/dist/TxSubscriptionRef.js.map +1 -1
- package/dist/Types.d.ts +36 -0
- package/dist/Types.d.ts.map +1 -1
- package/dist/Types.js +1 -0
- package/dist/UndefinedOr.d.ts +15 -0
- package/dist/UndefinedOr.d.ts.map +1 -1
- package/dist/UndefinedOr.js +9 -0
- package/dist/UndefinedOr.js.map +1 -1
- package/dist/Unify.d.ts +15 -0
- package/dist/Unify.d.ts.map +1 -1
- package/dist/Unify.js +2 -0
- package/dist/Unify.js.map +1 -1
- package/dist/Utils.d.ts +4 -0
- package/dist/Utils.d.ts.map +1 -1
- package/dist/Utils.js +1 -0
- package/dist/Utils.js.map +1 -1
- package/dist/Version.d.ts +26 -0
- package/dist/Version.d.ts.map +1 -0
- package/dist/Version.js +36 -0
- package/dist/Version.js.map +1 -0
- package/dist/ai/Chat.js +1 -1
- package/dist/ai/Chat.js.map +1 -1
- package/dist/ai/DecisionModel.d.ts +22 -0
- package/dist/ai/DecisionModel.d.ts.map +1 -1
- package/dist/ai/DecisionModel.js +22 -4
- package/dist/ai/DecisionModel.js.map +1 -1
- package/dist/ai/LanguageModel.d.ts +8 -0
- package/dist/ai/LanguageModel.d.ts.map +1 -1
- package/dist/ai/LanguageModel.js +27 -15
- package/dist/ai/LanguageModel.js.map +1 -1
- package/dist/ai/McpSchema.d.ts +508 -508
- package/dist/ai/McpSchema.d.ts.map +1 -1
- package/dist/ai/McpSchema.js +1 -1
- package/dist/ai/McpSchema.js.map +1 -1
- package/dist/ai/McpServer.d.ts +32 -11
- package/dist/ai/McpServer.d.ts.map +1 -1
- package/dist/ai/McpServer.js +224 -172
- package/dist/ai/McpServer.js.map +1 -1
- package/dist/ai/Response.d.ts.map +1 -1
- package/dist/ai/Response.js +22 -12
- package/dist/ai/Response.js.map +1 -1
- package/dist/ai/Telemetry.d.ts +49 -41
- package/dist/ai/Telemetry.d.ts.map +1 -1
- package/dist/ai/Telemetry.js +6 -8
- package/dist/ai/Telemetry.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2024_11_05.js +1 -0
- package/dist/ai/internal/mcpProtocol/v2024_11_05.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2025_03_26.js +1 -0
- package/dist/ai/internal/mcpProtocol/v2025_03_26.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2025_06_18.js +1 -0
- package/dist/ai/internal/mcpProtocol/v2025_06_18.js.map +1 -1
- package/dist/ai/internal/mcpProtocol/v2025_11_25.js +1 -0
- package/dist/ai/internal/mcpProtocol/v2025_11_25.js.map +1 -1
- package/dist/ai/internal/mcpRuntime.js +79 -46
- package/dist/ai/internal/mcpRuntime.js.map +1 -1
- package/dist/ai/internal/mcpSchema/v2024_11_05.js +3 -1
- package/dist/ai/internal/mcpSchema/v2024_11_05.js.map +1 -1
- package/dist/ai/internal/mcpStatefulRuntime.js +1 -0
- package/dist/ai/internal/mcpStatefulRuntime.js.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.d.ts.map +1 -1
- package/dist/cluster/ClusterWorkflowEngine.js +11 -2
- package/dist/cluster/ClusterWorkflowEngine.js.map +1 -1
- package/dist/cluster/K8sHttpClient.d.ts.map +1 -1
- package/dist/cluster/K8sHttpClient.js +5 -2
- package/dist/cluster/K8sHttpClient.js.map +1 -1
- package/dist/cluster/Sharding.d.ts.map +1 -1
- package/dist/cluster/Sharding.js +14 -7
- package/dist/cluster/Sharding.js.map +1 -1
- package/dist/cluster/SqlMessageStorage.d.ts.map +1 -1
- package/dist/cluster/SqlMessageStorage.js +21 -12
- package/dist/cluster/SqlMessageStorage.js.map +1 -1
- package/dist/cluster/SqlRunnerStorage.d.ts.map +1 -1
- package/dist/cluster/SqlRunnerStorage.js +30 -44
- package/dist/cluster/SqlRunnerStorage.js.map +1 -1
- package/dist/cluster/internal/entityManager.js +63 -62
- package/dist/cluster/internal/entityManager.js.map +1 -1
- package/dist/cluster/internal/interruptors.js +8 -0
- package/dist/cluster/internal/interruptors.js.map +1 -1
- package/dist/cluster/internal/resourceMap.js +39 -14
- package/dist/cluster/internal/resourceMap.js.map +1 -1
- package/dist/cluster/internal/resourceRef.js +168 -87
- package/dist/cluster/internal/resourceRef.js.map +1 -1
- package/dist/encoding/Base64.d.ts +4 -0
- package/dist/encoding/Base64.d.ts.map +1 -1
- package/dist/encoding/Base64.js +4 -0
- package/dist/encoding/Base64.js.map +1 -1
- package/dist/encoding/Base64Url.d.ts +4 -0
- package/dist/encoding/Base64Url.d.ts.map +1 -1
- package/dist/encoding/Base64Url.js +4 -0
- package/dist/encoding/Base64Url.js.map +1 -1
- package/dist/encoding/EncodingError.d.ts +4 -0
- package/dist/encoding/EncodingError.d.ts.map +1 -1
- package/dist/encoding/EncodingError.js +4 -0
- package/dist/encoding/EncodingError.js.map +1 -1
- package/dist/encoding/Hex.d.ts +5 -0
- package/dist/encoding/Hex.d.ts.map +1 -1
- package/dist/encoding/Hex.js +5 -0
- package/dist/encoding/Hex.js.map +1 -1
- package/dist/encoding/Toml.js +2 -2
- package/dist/encoding/Toml.js.map +1 -1
- package/dist/encoding/Yaml.d.ts.map +1 -1
- package/dist/encoding/Yaml.js +6 -4
- package/dist/encoding/Yaml.js.map +1 -1
- package/dist/encoding/index.d.ts +4 -0
- package/dist/encoding/index.d.ts.map +1 -1
- package/dist/encoding/index.js +4 -0
- package/dist/encoding/index.js.map +1 -1
- package/dist/eventlog/SqlEventJournal.js +8 -4
- package/dist/eventlog/SqlEventJournal.js.map +1 -1
- package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts +27 -10
- package/dist/eventlog/SqlEventLogServerUnencrypted.d.ts.map +1 -1
- package/dist/eventlog/SqlEventLogServerUnencrypted.js +49 -7
- package/dist/eventlog/SqlEventLogServerUnencrypted.js.map +1 -1
- package/dist/http/Headers.d.ts +3 -1
- package/dist/http/Headers.d.ts.map +1 -1
- package/dist/http/Headers.js +4 -2
- package/dist/http/Headers.js.map +1 -1
- package/dist/http/HttpClient.d.ts +9 -0
- package/dist/http/HttpClient.d.ts.map +1 -1
- package/dist/http/HttpClient.js +40 -21
- package/dist/http/HttpClient.js.map +1 -1
- package/dist/http/HttpClientResponse.js +3 -1
- package/dist/http/HttpClientResponse.js.map +1 -1
- package/dist/http/HttpEffect.d.ts +3 -0
- package/dist/http/HttpEffect.d.ts.map +1 -1
- package/dist/http/HttpEffect.js +5 -2
- package/dist/http/HttpEffect.js.map +1 -1
- package/dist/http/HttpMiddleware.d.ts +17 -0
- package/dist/http/HttpMiddleware.d.ts.map +1 -1
- package/dist/http/HttpMiddleware.js +58 -40
- package/dist/http/HttpMiddleware.js.map +1 -1
- package/dist/http/HttpServer.d.ts +1 -1
- package/dist/http/HttpServer.d.ts.map +1 -1
- package/dist/http/HttpStaticServer.d.ts.map +1 -1
- package/dist/http/HttpStaticServer.js +14 -0
- package/dist/http/HttpStaticServer.js.map +1 -1
- package/dist/http/HttpTraceContext.d.ts +1 -1
- package/dist/http/HttpTraceContext.d.ts.map +1 -1
- package/dist/http/HttpTraceContext.js +4 -4
- package/dist/http/HttpTraceContext.js.map +1 -1
- package/dist/http/internal/tracing.d.ts +2 -0
- package/dist/http/internal/tracing.d.ts.map +1 -0
- package/dist/http/internal/tracing.js +37 -0
- package/dist/http/internal/tracing.js.map +1 -0
- package/dist/http-api/HttpApiBuilder.js +2 -1
- package/dist/http-api/HttpApiBuilder.js.map +1 -1
- package/dist/http-api/HttpApiClient.d.ts +12 -3
- package/dist/http-api/HttpApiClient.d.ts.map +1 -1
- package/dist/http-api/HttpApiClient.js.map +1 -1
- package/dist/http-api/HttpApiError.d.ts +4 -2
- package/dist/http-api/HttpApiError.d.ts.map +1 -1
- package/dist/http-api/HttpApiError.js +7 -3
- package/dist/http-api/HttpApiError.js.map +1 -1
- package/dist/http-api/HttpApiSecurity.d.ts +8 -8
- package/dist/http-api/HttpApiSecurity.js +8 -8
- package/dist/index.d.ts +155 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +155 -0
- package/dist/index.js.map +1 -1
- package/dist/internal/arbitrary/array.js +3 -3
- package/dist/internal/arbitrary/array.js.map +1 -1
- package/dist/internal/arbitrary/model.js +26 -11
- package/dist/internal/arbitrary/model.js.map +1 -1
- package/dist/internal/arbitrary/runner.js +8 -8
- package/dist/internal/arbitrary/runner.js.map +1 -1
- package/dist/internal/arbitrary/schema.js +4 -5
- package/dist/internal/arbitrary/schema.js.map +1 -1
- package/dist/internal/core.js +43 -2
- package/dist/internal/core.js.map +1 -1
- package/dist/internal/dateTime.js +1 -1
- package/dist/internal/dateTime.js.map +1 -1
- package/dist/internal/effect.js +104 -120
- package/dist/internal/effect.js.map +1 -1
- package/dist/internal/rcRef.js +59 -23
- package/dist/internal/rcRef.js.map +1 -1
- package/dist/internal/schedule.js +7 -5
- package/dist/internal/schedule.js.map +1 -1
- package/dist/internal/schema/fromJsonSchemaDocument.js +11 -8
- package/dist/internal/schema/fromJsonSchemaDocument.js.map +1 -1
- package/dist/internal/schema/standardSchema.js +2 -2
- package/dist/internal/schema/standardSchema.js.map +1 -1
- package/dist/internal/version.d.ts +2 -0
- package/dist/internal/version.d.ts.map +1 -0
- package/dist/internal/version.js +3 -0
- package/dist/internal/version.js.map +1 -0
- package/dist/observability/OtlpExporter.d.ts.map +1 -1
- package/dist/observability/OtlpExporter.js +5 -6
- package/dist/observability/OtlpExporter.js.map +1 -1
- package/dist/observability/OtlpLogger.d.ts.map +1 -1
- package/dist/observability/OtlpLogger.js +23 -27
- package/dist/observability/OtlpLogger.js.map +1 -1
- package/dist/observability/OtlpMetrics.d.ts +5 -3
- package/dist/observability/OtlpMetrics.d.ts.map +1 -1
- package/dist/observability/OtlpMetrics.js +21 -94
- package/dist/observability/OtlpMetrics.js.map +1 -1
- package/dist/observability/OtlpResource.d.ts +4 -3
- package/dist/observability/OtlpResource.d.ts.map +1 -1
- package/dist/observability/OtlpResource.js +20 -23
- package/dist/observability/OtlpResource.js.map +1 -1
- package/dist/observability/OtlpTracer.d.ts +1 -0
- package/dist/observability/OtlpTracer.d.ts.map +1 -1
- package/dist/observability/OtlpTracer.js +32 -36
- package/dist/observability/OtlpTracer.js.map +1 -1
- package/dist/observability/internal/otlpProtobuf.js +32 -1
- package/dist/observability/internal/otlpProtobuf.js.map +1 -1
- package/dist/reactivity/AsyncResult.d.ts +1 -1
- package/dist/reactivity/Atom.d.ts +5 -5
- package/dist/reactivity/Atom.d.ts.map +1 -1
- package/dist/reactivity/Atom.js +9 -5
- package/dist/reactivity/Atom.js.map +1 -1
- package/dist/reactivity/AtomHttpApi.d.ts +2 -2
- package/dist/reactivity/AtomHttpApi.d.ts.map +1 -1
- package/dist/reactivity/AtomRegistry.d.ts +8 -0
- package/dist/reactivity/AtomRegistry.d.ts.map +1 -1
- package/dist/reactivity/AtomRegistry.js.map +1 -1
- package/dist/rpc/RpcClient.d.ts +21 -3
- package/dist/rpc/RpcClient.d.ts.map +1 -1
- package/dist/rpc/RpcClient.js +58 -34
- package/dist/rpc/RpcClient.js.map +1 -1
- package/dist/rpc/RpcServer.d.ts.map +1 -1
- package/dist/rpc/RpcServer.js +20 -23
- package/dist/rpc/RpcServer.js.map +1 -1
- package/dist/rpc/Utils.d.ts +2 -3
- package/dist/rpc/Utils.d.ts.map +1 -1
- package/dist/rpc/Utils.js +3 -4
- package/dist/rpc/Utils.js.map +1 -1
- package/dist/rpc/internal/tracing.d.ts +2 -0
- package/dist/rpc/internal/tracing.d.ts.map +1 -0
- package/dist/rpc/internal/tracing.js +18 -0
- package/dist/rpc/internal/tracing.js.map +1 -0
- package/dist/schema/SchemaCompiler/runtime.js +9 -1
- package/dist/schema/SchemaCompiler/runtime.js.map +1 -1
- package/dist/sql/SqlClient.js +4 -4
- package/dist/sql/SqlClient.js.map +1 -1
- package/dist/sql/Statement.d.ts +21 -1
- package/dist/sql/Statement.d.ts.map +1 -1
- package/dist/sql/Statement.js +55 -7
- package/dist/sql/Statement.js.map +1 -1
- package/dist/testing/TestClock.d.ts +8 -0
- package/dist/testing/TestClock.d.ts.map +1 -1
- package/dist/testing/TestClock.js +7 -0
- package/dist/testing/TestClock.js.map +1 -1
- package/dist/testing/TestConsole.d.ts +7 -0
- package/dist/testing/TestConsole.d.ts.map +1 -1
- package/dist/testing/TestConsole.js +6 -0
- package/dist/testing/TestConsole.js.map +1 -1
- package/dist/testing/index.d.ts +3 -0
- package/dist/testing/index.d.ts.map +1 -1
- package/dist/testing/index.js +3 -0
- package/dist/testing/index.js.map +1 -1
- package/dist/workflow/WorkflowEngine.d.ts +2 -0
- package/dist/workflow/WorkflowEngine.d.ts.map +1 -1
- package/dist/workflow/WorkflowEngine.js +1 -0
- package/dist/workflow/WorkflowEngine.js.map +1 -1
- package/package.json +3 -3
- package/src/Array.ts +351 -3
- package/src/BigDecimal.ts +88 -0
- package/src/BigInt.ts +68 -0
- package/src/Boolean.ts +34 -0
- package/src/Brand.ts +10 -0
- package/src/ByteSize.ts +87 -0
- package/src/Cache.ts +72 -24
- package/src/Cause.ts +83 -1
- package/src/Channel.ts +368 -18
- package/src/ChannelSchema.ts +13 -0
- package/src/Chunk.ts +193 -0
- package/src/Clock.ts +7 -0
- package/src/Combiner.ts +10 -0
- package/src/Config.ts +82 -8
- package/src/ConfigProvider.ts +28 -0
- package/src/Console.ts +26 -0
- package/src/Context.ts +50 -0
- package/src/Cron.ts +32 -1
- package/src/Crypto.ts +5 -0
- package/src/Data.ts +13 -0
- package/src/DateTime.ts +171 -0
- package/src/Deferred.ts +51 -0
- package/src/Differ.ts +2 -0
- package/src/Duration.ts +90 -0
- package/src/Effect.ts +692 -27
- package/src/Effectable.ts +4 -0
- package/src/Equal.ts +12 -1
- package/src/Equivalence.ts +22 -0
- package/src/ErrorReporter.ts +36 -0
- package/src/ExecutionPlan.ts +58 -14
- package/src/Exit.ts +40 -0
- package/src/Fiber.ts +20 -0
- package/src/FiberHandle.ts +29 -4
- package/src/FiberMap.ts +38 -0
- package/src/FiberSet.ts +21 -0
- package/src/FileSystem.ts +16 -0
- package/src/Filter.ts +55 -0
- package/src/Formatter.ts +42 -1
- package/src/Function.ts +30 -0
- package/src/Graph.ts +317 -36
- package/src/HKT.ts +5 -0
- package/src/Hash.ts +15 -0
- package/src/HashMap.ts +91 -0
- package/src/HashRing.ts +32 -5
- package/src/HashSet.ts +53 -0
- package/src/Inspectable.ts +8 -0
- package/src/Iterable.ts +127 -0
- package/src/JsonPatch.ts +5 -0
- package/src/JsonPointer.ts +5 -0
- package/src/JsonSchema.ts +17 -0
- package/src/Latch.ts +14 -0
- package/src/Layer.ts +101 -1
- package/src/LayerMap.ts +7 -0
- package/src/LayerRef.ts +5 -0
- package/src/LogLevel.ts +20 -0
- package/src/Logger.ts +41 -5
- package/src/ManagedRuntime.ts +12 -1
- package/src/Match.ts +52 -0
- package/src/Metric.ts +69 -0
- package/src/MutableHashMap.ts +44 -0
- package/src/MutableHashSet.ts +17 -0
- package/src/MutableList.ts +21 -0
- package/src/MutableRef.ts +32 -0
- package/src/Newtype.ts +9 -0
- package/src/NonEmptyIterable.ts +4 -0
- package/src/Number.ts +61 -0
- package/src/Optic.ts +57 -0
- package/src/Option.ts +134 -0
- package/src/Order.ts +30 -0
- package/src/Ordering.ts +7 -0
- package/src/PartitionedSemaphore.ts +61 -22
- package/src/Path.ts +6 -0
- package/src/Pipeable.ts +7 -0
- package/src/PlatformError.ts +8 -0
- package/src/Pool.ts +48 -37
- package/src/Predicate.ts +85 -0
- package/src/PrimaryKey.ts +5 -0
- package/src/PubSub.ts +90 -9
- package/src/Pull.ts +20 -0
- package/src/Queue.ts +80 -10
- package/src/Random.ts +13 -0
- package/src/RcMap.ts +49 -2
- package/src/RcRef.ts +6 -0
- package/src/Record.ts +100 -0
- package/src/Redactable.ts +6 -0
- package/src/Redacted.ts +8 -0
- package/src/Reducer.ts +4 -0
- package/src/Ref.ts +42 -0
- package/src/References.ts +21 -0
- package/src/RegExp.ts +4 -0
- package/src/Request.ts +32 -0
- package/src/RequestResolver.ts +59 -10
- package/src/Resource.ts +7 -0
- package/src/Result.ts +93 -0
- package/src/Runtime.ts +10 -0
- package/src/Schedule.ts +61 -0
- package/src/Scheduler.ts +7 -0
- package/src/Schema.ts +499 -4
- package/src/SchemaAST.ts +115 -1
- package/src/SchemaGetter.ts +80 -4
- package/src/SchemaIssue.ts +34 -0
- package/src/SchemaParser.ts +26 -0
- package/src/SchemaRepresentation.ts +148 -0
- package/src/SchemaTransformation.ts +53 -0
- package/src/Scope.ts +19 -0
- package/src/ScopedCache.ts +82 -19
- package/src/ScopedRef.ts +9 -0
- package/src/Semaphore.ts +26 -0
- package/src/Sink.ts +126 -2
- package/src/StandardSchema.ts +1 -0
- package/src/Stdio.ts +7 -0
- package/src/Stream.ts +780 -103
- package/src/String.ts +87 -0
- package/src/Struct.ts +46 -0
- package/src/SubscriptionRef.ts +65 -0
- package/src/Symbol.ts +2 -0
- package/src/SynchronizedRef.ts +63 -0
- package/src/Take.ts +3 -0
- package/src/Terminal.ts +8 -0
- package/src/Tracer.ts +23 -0
- package/src/Trie.ts +68 -0
- package/src/Tuple.ts +38 -0
- package/src/TxChunk.ts +52 -0
- package/src/TxDeferred.ts +15 -0
- package/src/TxHashMap.ts +97 -6
- package/src/TxHashSet.ts +83 -3
- package/src/TxPriorityQueue.ts +34 -2
- package/src/TxPubSub.ts +26 -0
- package/src/TxQueue.ts +51 -0
- package/src/TxReentrantLock.ts +53 -36
- package/src/TxRef.ts +14 -0
- package/src/TxSemaphore.ts +47 -31
- package/src/TxSubscriptionRef.ts +25 -0
- package/src/Types.ts +36 -0
- package/src/UndefinedOr.ts +15 -0
- package/src/Unify.ts +15 -0
- package/src/Utils.ts +4 -0
- package/src/Version.ts +38 -0
- package/src/ai/Chat.ts +1 -1
- package/src/ai/DecisionModel.ts +42 -1
- package/src/ai/LanguageModel.ts +43 -21
- package/src/ai/McpSchema.ts +3 -3
- package/src/ai/McpServer.ts +119 -39
- package/src/ai/Response.ts +27 -12
- package/src/ai/Telemetry.ts +62 -58
- package/src/ai/internal/mcpProtocol/v2024_11_05.ts +1 -0
- package/src/ai/internal/mcpProtocol/v2025_03_26.ts +1 -0
- package/src/ai/internal/mcpProtocol/v2025_06_18.ts +1 -0
- package/src/ai/internal/mcpProtocol/v2025_11_25.ts +1 -0
- package/src/ai/internal/mcpRuntime.ts +84 -43
- package/src/ai/internal/mcpSchema/v2024_11_05.ts +4 -2
- package/src/ai/internal/mcpStatefulRuntime.ts +2 -0
- package/src/cluster/ClusterWorkflowEngine.ts +18 -4
- package/src/cluster/K8sHttpClient.ts +12 -2
- package/src/cluster/Sharding.ts +24 -24
- package/src/cluster/SqlMessageStorage.ts +26 -13
- package/src/cluster/SqlRunnerStorage.ts +85 -113
- package/src/cluster/internal/entityManager.ts +68 -80
- package/src/cluster/internal/interruptors.ts +13 -0
- package/src/cluster/internal/resourceMap.ts +55 -17
- package/src/cluster/internal/resourceRef.ts +189 -96
- package/src/encoding/Base64.ts +4 -0
- package/src/encoding/Base64Url.ts +4 -0
- package/src/encoding/EncodingError.ts +5 -0
- package/src/encoding/Hex.ts +5 -0
- package/src/encoding/Toml.ts +2 -2
- package/src/encoding/Yaml.ts +8 -4
- package/src/encoding/index.ts +4 -0
- package/src/eventlog/SqlEventJournal.ts +18 -4
- package/src/eventlog/SqlEventLogServerUnencrypted.ts +282 -235
- package/src/http/Headers.ts +8 -2
- package/src/http/HttpClient.ts +44 -27
- package/src/http/HttpClientResponse.ts +3 -1
- package/src/http/HttpEffect.ts +11 -2
- package/src/http/HttpMiddleware.ts +67 -46
- package/src/http/HttpServer.ts +1 -1
- package/src/http/HttpStaticServer.ts +16 -0
- package/src/http/HttpTraceContext.ts +8 -4
- package/src/http/internal/tracing.ts +52 -0
- package/src/http-api/HttpApiBuilder.ts +5 -1
- package/src/http-api/HttpApiClient.ts +13 -4
- package/src/http-api/HttpApiError.ts +8 -3
- package/src/http-api/HttpApiSecurity.ts +8 -8
- package/src/index.ts +156 -0
- package/src/internal/arbitrary/array.ts +3 -3
- package/src/internal/arbitrary/model.ts +37 -14
- package/src/internal/arbitrary/runner.ts +7 -7
- package/src/internal/arbitrary/schema.ts +4 -3
- package/src/internal/core.ts +56 -2
- package/src/internal/dateTime.ts +3 -1
- package/src/internal/effect.ts +156 -156
- package/src/internal/rcRef.ts +83 -33
- package/src/internal/schedule.ts +23 -17
- package/src/internal/schema/fromJsonSchemaDocument.ts +5 -3
- package/src/internal/schema/standardSchema.ts +2 -2
- package/src/internal/version.ts +2 -0
- package/src/observability/OtlpExporter.ts +9 -6
- package/src/observability/OtlpLogger.ts +20 -21
- package/src/observability/OtlpMetrics.ts +34 -93
- package/src/observability/OtlpResource.ts +18 -27
- package/src/observability/OtlpTracer.ts +34 -40
- package/src/observability/internal/otlpProtobuf.ts +60 -0
- package/src/reactivity/AsyncResult.ts +1 -1
- package/src/reactivity/Atom.ts +10 -6
- package/src/reactivity/AtomHttpApi.ts +2 -4
- package/src/reactivity/AtomRegistry.ts +7 -0
- package/src/rpc/RpcClient.ts +74 -46
- package/src/rpc/RpcServer.ts +28 -25
- package/src/rpc/Utils.ts +4 -10
- package/src/rpc/internal/tracing.ts +22 -0
- package/src/schema/SchemaCompiler/runtime.ts +4 -1
- package/src/sql/SqlClient.ts +4 -4
- package/src/sql/Statement.ts +59 -7
- package/src/testing/TestClock.ts +9 -0
- package/src/testing/TestConsole.ts +8 -0
- package/src/testing/index.ts +3 -0
- package/src/workflow/WorkflowEngine.ts +4 -0
|
@@ -1067,13 +1067,15 @@ function translateJsonSchemaMultiDocument(
|
|
|
1067
1067
|
)
|
|
1068
1068
|
case "ignore":
|
|
1069
1069
|
return undefined
|
|
1070
|
-
case "apply":
|
|
1070
|
+
case "apply": {
|
|
1071
|
+
let regex: RegExp
|
|
1071
1072
|
try {
|
|
1072
|
-
globalThis.RegExp(pattern, jsonSchemaPatternFlags)
|
|
1073
|
+
regex = globalThis.RegExp(pattern, jsonSchemaPatternFlags)
|
|
1073
1074
|
} catch {
|
|
1074
1075
|
throw errorWithPath("Cannot import pattern using ECMAScript Unicode mode.", path)
|
|
1075
1076
|
}
|
|
1076
|
-
return jsonSchemaFilter("effect/schema/isPattern", { source:
|
|
1077
|
+
return jsonSchemaFilter("effect/schema/isPattern", { source: regex.source, flags: regex.flags })
|
|
1078
|
+
}
|
|
1077
1079
|
}
|
|
1078
1080
|
}
|
|
1079
1081
|
|
|
@@ -53,7 +53,7 @@ export function toStandardSchemaV1<S extends Schema.ConstraintDecoder<unknown>>(
|
|
|
53
53
|
})
|
|
54
54
|
})
|
|
55
55
|
}
|
|
56
|
-
if ("~standard"
|
|
56
|
+
if (Object.hasOwn(self, "~standard")) {
|
|
57
57
|
const out = self as any
|
|
58
58
|
if ("validate" in out["~standard"]) return out
|
|
59
59
|
Object.assign(out["~standard"], { validate })
|
|
@@ -109,7 +109,7 @@ export function toStandardJSONSchemaV1<S extends Schema.Constraint>(
|
|
|
109
109
|
return toBaseStandardJSONSchemaV1(SchemaAST.toType(self.ast), options.target)
|
|
110
110
|
}
|
|
111
111
|
}
|
|
112
|
-
if ("~standard"
|
|
112
|
+
if (Object.hasOwn(self, "~standard")) {
|
|
113
113
|
const out = self as any
|
|
114
114
|
if ("jsonSchema" in out["~standard"]) return out
|
|
115
115
|
Object.assign(out["~standard"], { jsonSchema })
|
|
@@ -26,6 +26,7 @@ import * as Num from "../Number.ts"
|
|
|
26
26
|
import * as Option from "../Option.ts"
|
|
27
27
|
import * as Schedule from "../Schedule.ts"
|
|
28
28
|
import * as Scope from "../Scope.ts"
|
|
29
|
+
import * as Version from "../Version.ts"
|
|
29
30
|
|
|
30
31
|
const retryAfterDelay = (value: string | undefined): Effect.Effect<Duration.Duration> => {
|
|
31
32
|
const seconds = Option.fromUndefinedOr(value).pipe(Option.flatMap(Num.parse))
|
|
@@ -194,12 +195,14 @@ export const make: (
|
|
|
194
195
|
HttpClient.retryTransient({ schedule: policy, times: 3 })
|
|
195
196
|
)
|
|
196
197
|
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
198
|
+
const exporterUserAgent = `OTel-OTLP-Exporter-JavaScript-Effect-${options.label}/${Version.getCurrentVersion()}`
|
|
199
|
+
const userHeaders = Headers.fromInput(options.headers)
|
|
200
|
+
const userAgent = userHeaders["user-agent"]
|
|
201
|
+
const headers = Headers.set(
|
|
202
|
+
userHeaders,
|
|
203
|
+
"user-agent",
|
|
204
|
+
userAgent ? `${userAgent} ${exporterUserAgent}` : exporterUserAgent
|
|
205
|
+
)
|
|
203
206
|
|
|
204
207
|
const request = HttpClientRequest.post(options.url, { headers })
|
|
205
208
|
let buffer: Array<any> = []
|
|
@@ -23,6 +23,7 @@ import type * as LogLevel from "../LogLevel.ts"
|
|
|
23
23
|
import * as Option from "../Option.ts"
|
|
24
24
|
import { CurrentLogAnnotations, CurrentLogSpans } from "../References.ts"
|
|
25
25
|
import type * as Scope from "../Scope.ts"
|
|
26
|
+
import * as Version from "../Version.ts"
|
|
26
27
|
import * as OtlpEnv from "./internal/otlpEnv.ts"
|
|
27
28
|
import * as Exporter from "./OtlpExporter.ts"
|
|
28
29
|
import type { AnyValue, Fixed64, KeyValue, Resource } from "./OtlpResource.ts"
|
|
@@ -64,7 +65,8 @@ export const make: (
|
|
|
64
65
|
const serialization = yield* OtlpSerialization
|
|
65
66
|
const otelResource = yield* OtlpResource.fromConfig(options.resource)
|
|
66
67
|
const scope: IInstrumentationScope = {
|
|
67
|
-
name:
|
|
68
|
+
name: "effect",
|
|
69
|
+
version: Version.getCurrentVersion()
|
|
68
70
|
}
|
|
69
71
|
|
|
70
72
|
const exporter = yield* Exporter.make({
|
|
@@ -192,32 +194,29 @@ export interface LogsData {
|
|
|
192
194
|
|
|
193
195
|
// internal
|
|
194
196
|
|
|
197
|
+
const nanosPerMilli = BigInt(1_000_000)
|
|
198
|
+
|
|
195
199
|
const makeLogRecord = (options: Logger.Options<unknown>, opts: {
|
|
196
200
|
readonly excludeLogSpans: boolean
|
|
197
201
|
readonly clock: Clock
|
|
198
202
|
}): ILogRecord => {
|
|
199
|
-
const
|
|
200
|
-
const
|
|
201
|
-
const
|
|
203
|
+
const observedTime = opts.clock.currentTimeNanosUnsafe().toString()
|
|
204
|
+
const eventMillis = options.date.getTime()
|
|
205
|
+
const eventTime = (BigInt(eventMillis) * nanosPerMilli).toString()
|
|
202
206
|
|
|
203
|
-
const attributes =
|
|
204
|
-
attributes.
|
|
205
|
-
key: "fiberId",
|
|
206
|
-
value: { intValue: options.fiber.id }
|
|
207
|
-
})
|
|
207
|
+
const attributes: Record<string, unknown> = { ...options.fiber.getRef(CurrentLogAnnotations) }
|
|
208
|
+
attributes["effect.fiberId"] = options.fiber.id
|
|
208
209
|
if (!opts.excludeLogSpans) {
|
|
210
|
+
// Outermost spans win duplicate labels.
|
|
209
211
|
for (const [label, startTime] of options.fiber.getRef(CurrentLogSpans)) {
|
|
210
|
-
attributes.
|
|
211
|
-
key: `logSpan.${label}`,
|
|
212
|
-
value: { stringValue: `${nowMillis - startTime}ms` }
|
|
213
|
-
})
|
|
212
|
+
attributes[`effect.log_span.${label}`] = eventMillis - startTime
|
|
214
213
|
}
|
|
215
214
|
}
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
215
|
+
const errors = Cause.prettyErrors(options.cause, { includeCauseInStack: true })
|
|
216
|
+
if (errors.length > 0) {
|
|
217
|
+
attributes["exception.type"] = errors[0].name
|
|
218
|
+
attributes["exception.message"] = errors[0].message
|
|
219
|
+
attributes["exception.stacktrace"] = errors.map((error) => error.stack).join("\n")
|
|
221
220
|
}
|
|
222
221
|
|
|
223
222
|
const message = Arr.ensure(options.message)
|
|
@@ -225,9 +224,9 @@ const makeLogRecord = (options: Logger.Options<unknown>, opts: {
|
|
|
225
224
|
const logRecord: ILogRecord = {
|
|
226
225
|
severityNumber: logLevelToSeverityNumber(options.logLevel),
|
|
227
226
|
severityText: options.logLevel,
|
|
228
|
-
timeUnixNano:
|
|
229
|
-
observedTimeUnixNano:
|
|
230
|
-
attributes,
|
|
227
|
+
timeUnixNano: eventTime,
|
|
228
|
+
observedTimeUnixNano: observedTime,
|
|
229
|
+
attributes: OtlpResource.entriesToAttributes(Object.entries(attributes)),
|
|
231
230
|
body: OtlpResource.unknownToAttributeValue(message.length === 1 ? message[0] : message),
|
|
232
231
|
droppedAttributesCount: 0
|
|
233
232
|
}
|
|
@@ -39,6 +39,8 @@ import { OtlpSerialization } from "./OtlpSerialization.ts"
|
|
|
39
39
|
*
|
|
40
40
|
* `"delta"` reports changes since the last export. Each interval is independent with no dependency on previous measurements.
|
|
41
41
|
*
|
|
42
|
+
* Summaries are always cumulative, regardless of this setting.
|
|
43
|
+
*
|
|
42
44
|
* **Example** (Configuring aggregation temporality)
|
|
43
45
|
*
|
|
44
46
|
* ```ts import.meta.vitest
|
|
@@ -114,7 +116,6 @@ export const make: (options: {
|
|
|
114
116
|
let previousCounterState = new Map<string, number | bigint>()
|
|
115
117
|
let previousHistogramState = new Map<string, PreviousHistogramState>()
|
|
116
118
|
let previousFrequencyState = new Map<string, Map<string, number>>()
|
|
117
|
-
let previousSummaryState = new Map<string, PreviousSummaryState>()
|
|
118
119
|
let snapshotSequence = 0
|
|
119
120
|
let committedSnapshotSequence = -1
|
|
120
121
|
|
|
@@ -126,7 +127,6 @@ export const make: (options: {
|
|
|
126
127
|
const nextCounterState = new Map(previousCounterState)
|
|
127
128
|
const nextHistogramState = new Map(previousHistogramState)
|
|
128
129
|
const nextFrequencyState = new Map(previousFrequencyState)
|
|
129
|
-
const nextSummaryState = new Map(previousSummaryState)
|
|
130
130
|
const metricData: Array<IMetric> = []
|
|
131
131
|
const metricDataByName = new Map<string, IMetric>()
|
|
132
132
|
const addMetricData = (data: IMetric) => {
|
|
@@ -144,7 +144,7 @@ export const make: (options: {
|
|
|
144
144
|
|
|
145
145
|
for (let i = 0, len = snapshot.length; i < len; i++) {
|
|
146
146
|
const state = snapshot[i]
|
|
147
|
-
const unit = state.attributes?.unit ?? state.attributes?.time_unit
|
|
147
|
+
const unit = toUcumUnit(state.attributes?.unit ?? state.attributes?.time_unit)
|
|
148
148
|
const attributes = state.attributes ? OtlpResource.entriesToAttributes(Object.entries(state.attributes)) : []
|
|
149
149
|
const metricKey = makeMetricKey(state.id, state.attributes)
|
|
150
150
|
|
|
@@ -181,7 +181,7 @@ export const make: (options: {
|
|
|
181
181
|
timeUnixNano: nowTime
|
|
182
182
|
}
|
|
183
183
|
if (typeof reportValue === "bigint") {
|
|
184
|
-
dataPoint.asInt =
|
|
184
|
+
dataPoint.asInt = bigintToInt64(reportValue)
|
|
185
185
|
} else {
|
|
186
186
|
dataPoint.asDouble = reportValue
|
|
187
187
|
}
|
|
@@ -209,7 +209,7 @@ export const make: (options: {
|
|
|
209
209
|
timeUnixNano: nowTime
|
|
210
210
|
}
|
|
211
211
|
if (typeof state.state.value === "bigint") {
|
|
212
|
-
dataPoint.asInt =
|
|
212
|
+
dataPoint.asInt = bigintToInt64(state.state.value)
|
|
213
213
|
} else {
|
|
214
214
|
dataPoint.asDouble = state.state.value
|
|
215
215
|
}
|
|
@@ -344,91 +344,25 @@ export const make: (options: {
|
|
|
344
344
|
break
|
|
345
345
|
}
|
|
346
346
|
case "Summary": {
|
|
347
|
-
//
|
|
348
|
-
|
|
349
|
-
const dataPoints: Array<INumberDataPoint> = [{
|
|
350
|
-
attributes: [...attributes, { key: "quantile", value: { stringValue: "min" } }],
|
|
351
|
-
startTimeUnixNano: intervalStartTime,
|
|
352
|
-
timeUnixNano: nowTime,
|
|
353
|
-
asDouble: state.state.min
|
|
354
|
-
}]
|
|
355
|
-
for (const [quantile, value] of state.state.quantiles) {
|
|
356
|
-
dataPoints.push({
|
|
357
|
-
attributes: [...attributes, { key: "quantile", value: { stringValue: quantile.toString() } }],
|
|
358
|
-
startTimeUnixNano: intervalStartTime,
|
|
359
|
-
timeUnixNano: nowTime,
|
|
360
|
-
asDouble: value ?? 0
|
|
361
|
-
})
|
|
362
|
-
}
|
|
363
|
-
dataPoints.push({
|
|
364
|
-
attributes: [...attributes, { key: "quantile", value: { stringValue: "max" } }],
|
|
365
|
-
startTimeUnixNano: intervalStartTime,
|
|
366
|
-
timeUnixNano: nowTime,
|
|
367
|
-
asDouble: state.state.max
|
|
368
|
-
})
|
|
369
|
-
|
|
370
|
-
let reportCount = state.state.count
|
|
371
|
-
let reportSum = state.state.sum
|
|
372
|
-
|
|
373
|
-
if (isDelta) {
|
|
374
|
-
const previousState = previousSummaryState.get(metricKey)
|
|
375
|
-
if (previousState !== undefined) {
|
|
376
|
-
reportCount = state.state.count - previousState.count
|
|
377
|
-
reportSum = state.state.sum - previousState.sum
|
|
378
|
-
}
|
|
379
|
-
nextSummaryState.set(metricKey, {
|
|
380
|
-
count: state.state.count,
|
|
381
|
-
sum: state.state.sum
|
|
382
|
-
})
|
|
383
|
-
}
|
|
384
|
-
|
|
385
|
-
const countDataPoint: INumberDataPoint = {
|
|
347
|
+
// Count and sum are lifetime totals, so summaries are always cumulative
|
|
348
|
+
const dataPoint: ISummaryDataPoint = {
|
|
386
349
|
attributes,
|
|
387
|
-
startTimeUnixNano:
|
|
388
|
-
timeUnixNano: nowTime,
|
|
389
|
-
asInt: reportCount
|
|
390
|
-
}
|
|
391
|
-
const sumDataPoint: INumberDataPoint = {
|
|
392
|
-
attributes,
|
|
393
|
-
startTimeUnixNano: intervalStartTime,
|
|
350
|
+
startTimeUnixNano: startTime,
|
|
394
351
|
timeUnixNano: nowTime,
|
|
395
|
-
|
|
352
|
+
count: state.state.count,
|
|
353
|
+
sum: state.state.sum,
|
|
354
|
+
quantileValues: state.state.quantiles.flatMap(([quantile, value]) =>
|
|
355
|
+
value === undefined ? [] : [{ quantile, value }]
|
|
356
|
+
)
|
|
396
357
|
}
|
|
397
|
-
|
|
398
|
-
|
|
399
|
-
metricDataByName.get(`${state.id}_quantiles`)!.sum!.dataPoints.push(...dataPoints)
|
|
400
|
-
metricDataByName.get(`${state.id}_count`)!.sum!.dataPoints.push(countDataPoint)
|
|
401
|
-
metricDataByName.get(`${state.id}_sum`)!.sum!.dataPoints.push(sumDataPoint)
|
|
358
|
+
if (metricDataByName.has(state.id)) {
|
|
359
|
+
metricDataByName.get(state.id)!.summary!.dataPoints.push(dataPoint)
|
|
402
360
|
} else {
|
|
403
361
|
addMetricData({
|
|
404
|
-
name:
|
|
362
|
+
name: state.id,
|
|
405
363
|
description: state.description!,
|
|
406
364
|
unit,
|
|
407
|
-
|
|
408
|
-
aggregationTemporality: aggregationTemporalityEnum,
|
|
409
|
-
isMonotonic: false,
|
|
410
|
-
dataPoints
|
|
411
|
-
}
|
|
412
|
-
})
|
|
413
|
-
addMetricData({
|
|
414
|
-
name: `${state.id}_count`,
|
|
415
|
-
description: state.description!,
|
|
416
|
-
unit: "1",
|
|
417
|
-
sum: {
|
|
418
|
-
aggregationTemporality: aggregationTemporalityEnum,
|
|
419
|
-
isMonotonic: true,
|
|
420
|
-
dataPoints: [countDataPoint]
|
|
421
|
-
}
|
|
422
|
-
})
|
|
423
|
-
addMetricData({
|
|
424
|
-
name: `${state.id}_sum`,
|
|
425
|
-
description: state.description!,
|
|
426
|
-
unit: "1",
|
|
427
|
-
sum: {
|
|
428
|
-
aggregationTemporality: aggregationTemporalityEnum,
|
|
429
|
-
isMonotonic: true,
|
|
430
|
-
dataPoints: [sumDataPoint]
|
|
431
|
-
}
|
|
365
|
+
summary: { dataPoints: [dataPoint] }
|
|
432
366
|
})
|
|
433
367
|
}
|
|
434
368
|
break
|
|
@@ -451,7 +385,6 @@ export const make: (options: {
|
|
|
451
385
|
previousCounterState = nextCounterState
|
|
452
386
|
previousHistogramState = nextHistogramState
|
|
453
387
|
previousFrequencyState = nextFrequencyState
|
|
454
|
-
previousSummaryState = nextSummaryState
|
|
455
388
|
previousExportTimeNanos = nowNanos
|
|
456
389
|
committedSnapshotSequence = currentSnapshotSequence
|
|
457
390
|
})
|
|
@@ -567,6 +500,20 @@ const makeMetricKey = (id: string, attributes: Metric.Metric.AttributeSet | unde
|
|
|
567
500
|
return `${id}:${JSON.stringify(sortedEntries)}`
|
|
568
501
|
}
|
|
569
502
|
|
|
503
|
+
const ucumUnits = new Map([
|
|
504
|
+
["nanoseconds", "ns"],
|
|
505
|
+
["microseconds", "us"],
|
|
506
|
+
["milliseconds", "ms"],
|
|
507
|
+
["seconds", "s"],
|
|
508
|
+
["bytes", "By"]
|
|
509
|
+
])
|
|
510
|
+
|
|
511
|
+
const toUcumUnit = (unit: string | undefined): string => unit === undefined ? "1" : ucumUnits.get(unit) ?? unit
|
|
512
|
+
|
|
513
|
+
/** OTLP/JSON accepts int64 as a decimal string, which keeps values beyond 2^53 exact */
|
|
514
|
+
const bigintToInt64 = (value: bigint): number | string =>
|
|
515
|
+
Number.isSafeInteger(Number(value)) ? Number(value) : value.toString()
|
|
516
|
+
|
|
570
517
|
/** Previous state for histogram delta computation */
|
|
571
518
|
interface PreviousHistogramState {
|
|
572
519
|
readonly count: number
|
|
@@ -576,12 +523,6 @@ interface PreviousHistogramState {
|
|
|
576
523
|
readonly max: number
|
|
577
524
|
}
|
|
578
525
|
|
|
579
|
-
/** Previous state for summary delta computation */
|
|
580
|
-
interface PreviousSummaryState {
|
|
581
|
-
readonly count: number
|
|
582
|
-
readonly sum: number
|
|
583
|
-
}
|
|
584
|
-
|
|
585
526
|
/** Properties of an InstrumentationScope. */
|
|
586
527
|
interface IInstrumentationScope {
|
|
587
528
|
/** InstrumentationScope name */
|
|
@@ -675,7 +616,7 @@ interface INumberDataPoint {
|
|
|
675
616
|
/** NumberDataPoint asDouble */
|
|
676
617
|
asDouble?: number | null
|
|
677
618
|
/** NumberDataPoint asInt */
|
|
678
|
-
asInt?: number
|
|
619
|
+
asInt?: number | string
|
|
679
620
|
/** NumberDataPoint exemplars */
|
|
680
621
|
exemplars?: Array<IExemplar>
|
|
681
622
|
/** NumberDataPoint flags */
|
|
@@ -740,9 +681,9 @@ interface ISummaryDataPoint {
|
|
|
740
681
|
/** SummaryDataPoint attributes */
|
|
741
682
|
attributes?: Array<KeyValue>
|
|
742
683
|
/** SummaryDataPoint startTimeUnixNano */
|
|
743
|
-
startTimeUnixNano?:
|
|
684
|
+
startTimeUnixNano?: Fixed64
|
|
744
685
|
/** SummaryDataPoint timeUnixNano */
|
|
745
|
-
timeUnixNano?:
|
|
686
|
+
timeUnixNano?: Fixed64
|
|
746
687
|
/** SummaryDataPoint count */
|
|
747
688
|
count?: number
|
|
748
689
|
/** SummaryDataPoint sum */
|
|
@@ -13,6 +13,7 @@ import * as Config from "../Config.ts"
|
|
|
13
13
|
import * as Effect from "../Effect.ts"
|
|
14
14
|
import { format } from "../Formatter.ts"
|
|
15
15
|
import * as Schema from "../Schema.ts"
|
|
16
|
+
import * as Version from "../Version.ts"
|
|
16
17
|
|
|
17
18
|
/**
|
|
18
19
|
* OTLP resource metadata attached to exported logs, metrics, and traces.
|
|
@@ -28,46 +29,36 @@ export interface Resource {
|
|
|
28
29
|
droppedAttributesCount: number
|
|
29
30
|
}
|
|
30
31
|
|
|
32
|
+
const isBrowser = "window" in globalThis || "importScripts" in globalThis
|
|
33
|
+
|
|
31
34
|
/**
|
|
32
35
|
* Creates an OTLP resource from service metadata and additional attributes.
|
|
33
36
|
*
|
|
34
37
|
* **Details**
|
|
35
38
|
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
39
|
+
* Adds `telemetry.sdk.*` defaults and converts custom attributes to OTLP values.
|
|
40
|
+
* Custom attributes override SDK defaults; service options override matching
|
|
41
|
+
* attributes. Omitted service options add no service attributes.
|
|
38
42
|
*
|
|
39
43
|
* @stability unstable
|
|
40
44
|
* @category constructors
|
|
41
45
|
* @since 4.0.0
|
|
42
46
|
*/
|
|
43
47
|
export const make = (options: {
|
|
44
|
-
readonly serviceName
|
|
48
|
+
readonly serviceName?: string | undefined
|
|
45
49
|
readonly serviceVersion?: string | undefined
|
|
46
50
|
readonly attributes?: Record<string, unknown> | undefined
|
|
47
|
-
}): Resource => {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
:
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
resourceAttributes.push({
|
|
59
|
-
key: "service.version",
|
|
60
|
-
value: {
|
|
61
|
-
stringValue: options.serviceVersion
|
|
62
|
-
}
|
|
63
|
-
})
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
return {
|
|
67
|
-
attributes: resourceAttributes,
|
|
68
|
-
droppedAttributesCount: 0
|
|
69
|
-
}
|
|
70
|
-
}
|
|
51
|
+
}): Resource => ({
|
|
52
|
+
attributes: entriesToAttributes(Object.entries({
|
|
53
|
+
"telemetry.sdk.name": "effect",
|
|
54
|
+
"telemetry.sdk.language": isBrowser ? "webjs" : "nodejs",
|
|
55
|
+
"telemetry.sdk.version": Version.getCurrentVersion(),
|
|
56
|
+
...options.attributes,
|
|
57
|
+
...(options.serviceName ? { "service.name": options.serviceName } : undefined),
|
|
58
|
+
...(options.serviceVersion ? { "service.version": options.serviceVersion } : undefined)
|
|
59
|
+
})),
|
|
60
|
+
droppedAttributesCount: 0
|
|
61
|
+
})
|
|
71
62
|
|
|
72
63
|
/**
|
|
73
64
|
* Creates an OTLP resource from explicit options and OpenTelemetry
|
|
@@ -26,6 +26,7 @@ import * as Option from "../Option.ts"
|
|
|
26
26
|
import type * as Scope from "../Scope.ts"
|
|
27
27
|
import * as Tracer from "../Tracer.ts"
|
|
28
28
|
import type { ExtractTag } from "../Types.ts"
|
|
29
|
+
import * as Version from "../Version.ts"
|
|
29
30
|
import * as OtlpEnv from "./internal/otlpEnv.ts"
|
|
30
31
|
import * as Exporter from "./OtlpExporter.ts"
|
|
31
32
|
import type { KeyValue, Resource } from "./OtlpResource.ts"
|
|
@@ -67,7 +68,8 @@ export const make: (
|
|
|
67
68
|
const otelResource = yield* OtlpResource.fromConfig(options.resource)
|
|
68
69
|
const serialization = yield* OtlpSerialization
|
|
69
70
|
const scope: Scope = {
|
|
70
|
-
name:
|
|
71
|
+
name: "effect",
|
|
72
|
+
version: Version.getCurrentVersion()
|
|
71
73
|
}
|
|
72
74
|
|
|
73
75
|
const exporter = yield* Exporter.make({
|
|
@@ -295,53 +297,44 @@ const makeOtlpSpan = (self: SpanImpl): OtlpSpan => {
|
|
|
295
297
|
if (status.exit._tag === "Success") {
|
|
296
298
|
otelStatus = { code: StatusCode.Ok }
|
|
297
299
|
} else if (Cause.hasInterruptsOnly(status.exit.cause)) {
|
|
298
|
-
otelStatus = {
|
|
299
|
-
code: StatusCode.Ok,
|
|
300
|
-
message: "Interrupted"
|
|
301
|
-
}
|
|
300
|
+
otelStatus = { code: StatusCode.Unset }
|
|
302
301
|
attributes.push({
|
|
303
|
-
key: "
|
|
304
|
-
value: { stringValue: "⚠︎ Interrupted" }
|
|
305
|
-
}, {
|
|
306
|
-
key: "status.interrupted",
|
|
302
|
+
key: "effect.fiber.interrupted",
|
|
307
303
|
value: { boolValue: true }
|
|
308
304
|
})
|
|
309
305
|
} else {
|
|
310
306
|
const errors = Cause.prettyErrors(status.exit.cause, {
|
|
311
307
|
includeCauseInStack: true
|
|
312
308
|
})
|
|
313
|
-
otelStatus =
|
|
314
|
-
code: StatusCode.Error
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
{
|
|
325
|
-
"
|
|
326
|
-
"value": {
|
|
327
|
-
"stringValue": error.name
|
|
328
|
-
}
|
|
329
|
-
},
|
|
330
|
-
{
|
|
331
|
-
"key": "exception.message",
|
|
332
|
-
"value": {
|
|
333
|
-
"stringValue": error.message
|
|
334
|
-
}
|
|
335
|
-
},
|
|
336
|
-
{
|
|
337
|
-
"key": "exception.stacktrace",
|
|
338
|
-
"value": {
|
|
339
|
-
"stringValue": error.stack ?? "No stack trace available"
|
|
340
|
-
}
|
|
309
|
+
otelStatus = errors.length > 0
|
|
310
|
+
? { code: StatusCode.Error, message: errors[0].message }
|
|
311
|
+
: { code: StatusCode.Ok }
|
|
312
|
+
for (const error of errors) {
|
|
313
|
+
events.push({
|
|
314
|
+
name: "exception",
|
|
315
|
+
timeUnixNano: String(status.endTime),
|
|
316
|
+
droppedAttributesCount: 0,
|
|
317
|
+
attributes: [
|
|
318
|
+
{
|
|
319
|
+
"key": "exception.type",
|
|
320
|
+
"value": {
|
|
321
|
+
"stringValue": error.name
|
|
341
322
|
}
|
|
342
|
-
|
|
343
|
-
|
|
344
|
-
|
|
323
|
+
},
|
|
324
|
+
{
|
|
325
|
+
"key": "exception.message",
|
|
326
|
+
"value": {
|
|
327
|
+
"stringValue": error.message
|
|
328
|
+
}
|
|
329
|
+
},
|
|
330
|
+
{
|
|
331
|
+
"key": "exception.stacktrace",
|
|
332
|
+
"value": {
|
|
333
|
+
"stringValue": error.stack ?? "No stack trace available"
|
|
334
|
+
}
|
|
335
|
+
}
|
|
336
|
+
]
|
|
337
|
+
})
|
|
345
338
|
}
|
|
346
339
|
}
|
|
347
340
|
|
|
@@ -413,6 +406,7 @@ export interface ScopeSpan {
|
|
|
413
406
|
|
|
414
407
|
interface Scope {
|
|
415
408
|
readonly name: string
|
|
409
|
+
readonly version?: string
|
|
416
410
|
}
|
|
417
411
|
|
|
418
412
|
interface OtlpSpan {
|
|
@@ -493,6 +493,62 @@ export const encodeHistogram = (histogram: {
|
|
|
493
493
|
Proto.varintField(2, histogram.aggregationTemporality)
|
|
494
494
|
)
|
|
495
495
|
|
|
496
|
+
/**
|
|
497
|
+
* Encodes a SummaryDataPoint message.
|
|
498
|
+
*
|
|
499
|
+
* message SummaryDataPoint {
|
|
500
|
+
* repeated KeyValue attributes = 7;
|
|
501
|
+
* fixed64 start_time_unix_nano = 2;
|
|
502
|
+
* fixed64 time_unix_nano = 3;
|
|
503
|
+
* fixed64 count = 4;
|
|
504
|
+
* double sum = 5;
|
|
505
|
+
* repeated ValueAtQuantile quantile_values = 6;
|
|
506
|
+
* uint32 flags = 8;
|
|
507
|
+
* }
|
|
508
|
+
*
|
|
509
|
+
* message ValueAtQuantile {
|
|
510
|
+
* double quantile = 1;
|
|
511
|
+
* double value = 2;
|
|
512
|
+
* }
|
|
513
|
+
*
|
|
514
|
+
* @internal
|
|
515
|
+
*/
|
|
516
|
+
export const encodeSummaryDataPoint = (point: {
|
|
517
|
+
readonly attributes: ReadonlyArray<KeyValue>
|
|
518
|
+
readonly startTimeUnixNano: string
|
|
519
|
+
readonly timeUnixNano: string
|
|
520
|
+
readonly count: string | number | bigint
|
|
521
|
+
readonly sum: number
|
|
522
|
+
readonly quantileValues: ReadonlyArray<{ readonly quantile: number; readonly value: number }>
|
|
523
|
+
readonly flags?: number | undefined
|
|
524
|
+
}): Uint8Array =>
|
|
525
|
+
Proto.concat(
|
|
526
|
+
Proto.fixed64Field(2, BigInt(point.startTimeUnixNano)),
|
|
527
|
+
Proto.fixed64Field(3, BigInt(point.timeUnixNano)),
|
|
528
|
+
Proto.fixed64Field(4, BigInt(point.count)),
|
|
529
|
+
Proto.doubleField(5, point.sum),
|
|
530
|
+
Proto.repeatedField(
|
|
531
|
+
6,
|
|
532
|
+
point.quantileValues,
|
|
533
|
+
(q) => Proto.concat(Proto.doubleField(1, q.quantile), Proto.doubleField(2, q.value))
|
|
534
|
+
),
|
|
535
|
+
Proto.repeatedField(7, point.attributes, encodeKeyValue),
|
|
536
|
+
point.flags !== undefined ? Proto.varintField(8, point.flags) : new Uint8Array(0)
|
|
537
|
+
)
|
|
538
|
+
|
|
539
|
+
/**
|
|
540
|
+
* Encodes a Summary message.
|
|
541
|
+
*
|
|
542
|
+
* message Summary {
|
|
543
|
+
* repeated SummaryDataPoint data_points = 1;
|
|
544
|
+
* }
|
|
545
|
+
*
|
|
546
|
+
* @internal
|
|
547
|
+
*/
|
|
548
|
+
export const encodeSummary = (summary: {
|
|
549
|
+
readonly dataPoints: ReadonlyArray<Parameters<typeof encodeSummaryDataPoint>[0]>
|
|
550
|
+
}): Uint8Array => Proto.repeatedField(1, summary.dataPoints, encodeSummaryDataPoint)
|
|
551
|
+
|
|
496
552
|
/**
|
|
497
553
|
* Encodes a Metric message.
|
|
498
554
|
*
|
|
@@ -518,6 +574,7 @@ export const encodeMetric = (metric: {
|
|
|
518
574
|
readonly gauge?: Parameters<typeof encodeGauge>[0] | undefined
|
|
519
575
|
readonly sum?: Parameters<typeof encodeSum>[0] | undefined
|
|
520
576
|
readonly histogram?: Parameters<typeof encodeHistogram>[0] | undefined
|
|
577
|
+
readonly summary?: Parameters<typeof encodeSummary>[0] | undefined
|
|
521
578
|
}): Uint8Array =>
|
|
522
579
|
Proto.concat(
|
|
523
580
|
Proto.stringField(1, metric.name),
|
|
@@ -531,6 +588,9 @@ export const encodeMetric = (metric: {
|
|
|
531
588
|
: new Uint8Array(0),
|
|
532
589
|
metric.histogram !== undefined
|
|
533
590
|
? Proto.messageField(9, encodeHistogram(metric.histogram))
|
|
591
|
+
: new Uint8Array(0),
|
|
592
|
+
metric.summary !== undefined
|
|
593
|
+
? Proto.messageField(11, encodeSummary(metric.summary))
|
|
534
594
|
: new Uint8Array(0)
|
|
535
595
|
)
|
|
536
596
|
|
|
@@ -644,7 +644,7 @@ export const flatMap: {
|
|
|
644
644
|
* @category combinators
|
|
645
645
|
* @since 4.0.0
|
|
646
646
|
*/
|
|
647
|
-
<A, E, B, E2>(f: (a: A, prev: Success<A, E>) => AsyncResult<
|
|
647
|
+
<A, E, B, E2>(f: (a: A, prev: Success<A, E>) => AsyncResult<B, E2>): (self: AsyncResult<A, E>) => AsyncResult<B, E | E2>
|
|
648
648
|
/**
|
|
649
649
|
* Maps the success value of an `AsyncResult` and flattens the result.
|
|
650
650
|
*
|