brass-runtime 1.14.0 → 1.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +6 -3
- package/dist/agent/cli/main.cjs +44 -43
- package/dist/agent/cli/main.js +5 -4
- package/dist/agent/cli/main.mjs +5 -4
- package/dist/agent/index.cjs +4 -3
- package/dist/agent/index.d.ts +1 -1
- package/dist/agent/index.js +3 -2
- package/dist/agent/index.mjs +3 -2
- package/dist/{chunk-WJESVBWN.js → chunk-3QMOKAS5.js} +9 -7
- package/dist/{chunk-BMRF4FN6.js → chunk-4NHES7VK.mjs} +59 -237
- package/dist/chunk-AR22SXML.js +1043 -0
- package/dist/{chunk-4N2JEK4H.mjs → chunk-BDF4AMWX.mjs} +27 -151
- package/dist/chunk-BDYEENHT.js +224 -0
- package/dist/{chunk-JT7D6M5H.js → chunk-BMH5AV44.js} +27 -151
- package/dist/chunk-ELOOF35R.mjs +131 -0
- package/dist/chunk-JFPU5GQI.mjs +1043 -0
- package/dist/{chunk-MQF7HZ7Y.mjs → chunk-K6M7MDZ4.mjs} +9 -7
- package/dist/chunk-MS34J5LY.cjs +224 -0
- package/dist/{chunk-UWMMYKVK.mjs → chunk-PPUXIH5R.js} +59 -237
- package/dist/chunk-R3R2FVLG.cjs +131 -0
- package/dist/chunk-STVLQ3XD.cjs +489 -0
- package/dist/{chunk-BKBFSOGT.cjs → chunk-TGIFUAK4.cjs} +26 -150
- package/dist/chunk-TO7IKXYT.js +131 -0
- package/dist/chunk-UMAZLXAB.mjs +224 -0
- package/dist/{chunk-XTMZTVIT.cjs → chunk-VEZNF5GZ.cjs} +136 -134
- package/dist/chunk-XPZNXSVN.cjs +1043 -0
- package/dist/core/index.cjs +216 -0
- package/dist/core/index.d.ts +673 -0
- package/dist/core/index.js +216 -0
- package/dist/core/index.mjs +216 -0
- package/dist/{effect-DM56H743.d.ts → effect-CMOQKX8y.d.ts} +12 -11
- package/dist/http/index.cjs +2557 -235
- package/dist/http/index.d.ts +1514 -4
- package/dist/http/index.js +2549 -227
- package/dist/http/index.mjs +2549 -227
- package/dist/index.cjs +237 -1168
- package/dist/index.d.ts +7 -673
- package/dist/index.js +77 -1008
- package/dist/index.mjs +77 -1008
- package/dist/stream-FQm9h4Mg.d.ts +74 -0
- package/dist/tracing-DNT9jEbr.d.ts +106 -0
- package/package.json +11 -3
- package/dist/chunk-SKVY72E5.cjs +0 -667
- package/dist/stream-Oqe6WeLE.d.ts +0 -173
|
@@ -1,173 +0,0 @@
|
|
|
1
|
-
import { A as Async, Z as ZIO, O as Option, E as Exit } from './effect-DM56H743.js';
|
|
2
|
-
|
|
3
|
-
type CircuitBreakerState = "closed" | "open" | "half-open";
|
|
4
|
-
type CircuitBreakerError = {
|
|
5
|
-
readonly _tag: "CircuitBreakerOpen";
|
|
6
|
-
readonly openSince: number;
|
|
7
|
-
readonly failures: number;
|
|
8
|
-
};
|
|
9
|
-
type CircuitBreakerConfig = {
|
|
10
|
-
/** Number of consecutive failures before opening the circuit. Default: 5 */
|
|
11
|
-
readonly failureThreshold?: number;
|
|
12
|
-
/** Time in ms to wait before transitioning from OPEN to HALF_OPEN. Default: 30000 */
|
|
13
|
-
readonly resetTimeoutMs?: number;
|
|
14
|
-
/** Number of successes in HALF_OPEN needed to close the circuit. Default: 1 */
|
|
15
|
-
readonly successThreshold?: number;
|
|
16
|
-
/** Custom predicate: should this error count as a failure? Default: all errors count. */
|
|
17
|
-
readonly isFailure?: (error: unknown) => boolean;
|
|
18
|
-
/** Called on state transitions (for observability). */
|
|
19
|
-
readonly onStateChange?: (from: CircuitBreakerState, to: CircuitBreakerState) => void;
|
|
20
|
-
};
|
|
21
|
-
type CircuitBreakerStats = {
|
|
22
|
-
readonly state: CircuitBreakerState;
|
|
23
|
-
readonly failures: number;
|
|
24
|
-
readonly successes: number;
|
|
25
|
-
readonly totalRequests: number;
|
|
26
|
-
readonly totalFailures: number;
|
|
27
|
-
readonly totalSuccesses: number;
|
|
28
|
-
readonly totalRejected: number;
|
|
29
|
-
readonly lastFailureTime: number | null;
|
|
30
|
-
readonly lastSuccessTime: number | null;
|
|
31
|
-
};
|
|
32
|
-
type CircuitBreaker = {
|
|
33
|
-
/** Current state of the circuit breaker. */
|
|
34
|
-
readonly state: () => CircuitBreakerState;
|
|
35
|
-
/** Run an effect through the circuit breaker. */
|
|
36
|
-
readonly protect: <R, E, A>(effect: Async<R, E, A>) => Async<R, E | CircuitBreakerError, A>;
|
|
37
|
-
/** Get current stats. */
|
|
38
|
-
readonly stats: () => CircuitBreakerStats;
|
|
39
|
-
/** Manually reset to closed state. */
|
|
40
|
-
readonly reset: () => void;
|
|
41
|
-
};
|
|
42
|
-
/**
|
|
43
|
-
* Creates a circuit breaker.
|
|
44
|
-
*
|
|
45
|
-
* ```ts
|
|
46
|
-
* const breaker = makeCircuitBreaker({ failureThreshold: 3, resetTimeoutMs: 10000 });
|
|
47
|
-
*
|
|
48
|
-
* // Protect an effect:
|
|
49
|
-
* const result = await run(breaker.protect(callExternalService()));
|
|
50
|
-
* // Throws CircuitBreakerOpen if circuit is open
|
|
51
|
-
* ```
|
|
52
|
-
*/
|
|
53
|
-
declare function makeCircuitBreaker(config?: CircuitBreakerConfig): CircuitBreaker;
|
|
54
|
-
|
|
55
|
-
type SpanContext = {
|
|
56
|
-
readonly traceId: string;
|
|
57
|
-
readonly spanId: string;
|
|
58
|
-
readonly parentSpanId?: string;
|
|
59
|
-
};
|
|
60
|
-
type SpanStatus = "ok" | "error" | "unset";
|
|
61
|
-
type Span = {
|
|
62
|
-
readonly name: string;
|
|
63
|
-
readonly context: SpanContext;
|
|
64
|
-
readonly startTime: number;
|
|
65
|
-
endTime?: number;
|
|
66
|
-
status: SpanStatus;
|
|
67
|
-
readonly attributes: Record<string, string | number | boolean>;
|
|
68
|
-
readonly events: SpanEvent[];
|
|
69
|
-
};
|
|
70
|
-
type SpanEvent = {
|
|
71
|
-
readonly name: string;
|
|
72
|
-
readonly time: number;
|
|
73
|
-
readonly attributes?: Record<string, string | number | boolean>;
|
|
74
|
-
};
|
|
75
|
-
type TracerConfig = {
|
|
76
|
-
/** Service name for span metadata. */
|
|
77
|
-
readonly serviceName: string;
|
|
78
|
-
/** Called when a span ends (for export). */
|
|
79
|
-
readonly onSpanEnd?: (span: Span) => void;
|
|
80
|
-
/** Sampling rate (0.0 to 1.0). Default: 1.0 (sample everything). */
|
|
81
|
-
readonly sampleRate?: number;
|
|
82
|
-
};
|
|
83
|
-
type Tracer = {
|
|
84
|
-
/** Wrap an effect in a span. */
|
|
85
|
-
readonly span: <R, E, A>(name: string, effect: Async<R, E, A>, attributes?: Record<string, string | number | boolean>) => Async<R, E, A>;
|
|
86
|
-
/** Get all completed spans (for testing). */
|
|
87
|
-
readonly spans: () => readonly Span[];
|
|
88
|
-
/** Clear collected spans. */
|
|
89
|
-
readonly clear: () => void;
|
|
90
|
-
};
|
|
91
|
-
/**
|
|
92
|
-
* Creates a tracer that wraps effects in spans.
|
|
93
|
-
*
|
|
94
|
-
* ```ts
|
|
95
|
-
* const tracer = makeTracer({ serviceName: "my-app" });
|
|
96
|
-
*
|
|
97
|
-
* const result = await run(
|
|
98
|
-
* tracer.span("fetchUser", fetchUser(id), { userId: id })
|
|
99
|
-
* );
|
|
100
|
-
*
|
|
101
|
-
* console.log(tracer.spans()); // all completed spans
|
|
102
|
-
* ```
|
|
103
|
-
*/
|
|
104
|
-
declare function makeTracer(config: TracerConfig): Tracer;
|
|
105
|
-
|
|
106
|
-
type Empty<R, E, A> = {
|
|
107
|
-
readonly _tag: "Empty";
|
|
108
|
-
};
|
|
109
|
-
type Emit<R, E, A> = {
|
|
110
|
-
readonly _tag: "Emit";
|
|
111
|
-
readonly value: ZIO<R, E, A>;
|
|
112
|
-
};
|
|
113
|
-
type Concat<R, E, A> = {
|
|
114
|
-
readonly _tag: "Concat";
|
|
115
|
-
readonly left: ZStream<R, E, A>;
|
|
116
|
-
readonly right: ZStream<R, E, A>;
|
|
117
|
-
};
|
|
118
|
-
type Flatten<R, E, A> = {
|
|
119
|
-
readonly _tag: "Flatten";
|
|
120
|
-
readonly stream: ZStream<R, E, ZStream<R, E, A>>;
|
|
121
|
-
};
|
|
122
|
-
type FromPull<R, E, A> = {
|
|
123
|
-
readonly _tag: "FromPull";
|
|
124
|
-
readonly pull: ZIO<R, Option<E>, [A, ZStream<R, E, A>]>;
|
|
125
|
-
};
|
|
126
|
-
type Merge<R, E, A> = {
|
|
127
|
-
readonly _tag: "Merge";
|
|
128
|
-
readonly left: ZStream<R, E, A>;
|
|
129
|
-
readonly right: ZStream<R, E, A>;
|
|
130
|
-
readonly flip: boolean;
|
|
131
|
-
};
|
|
132
|
-
type Scoped<R, E, A> = {
|
|
133
|
-
readonly _tag: "Scoped";
|
|
134
|
-
readonly acquire: ZIO<R, E, ZStream<R, E, A>>;
|
|
135
|
-
readonly release: (exit: Exit<any, any>) => Async<R, any, void>;
|
|
136
|
-
};
|
|
137
|
-
type Managed<R, E, A> = {
|
|
138
|
-
readonly _tag: "Managed";
|
|
139
|
-
readonly acquire: ZIO<R, E, {
|
|
140
|
-
stream: ZStream<R, E, A>;
|
|
141
|
-
release: (exit: Exit<any, any>) => Async<R, any, void>;
|
|
142
|
-
}>;
|
|
143
|
-
};
|
|
144
|
-
type FromArray<R, E, A> = {
|
|
145
|
-
readonly _tag: "FromArray";
|
|
146
|
-
readonly values: readonly A[];
|
|
147
|
-
};
|
|
148
|
-
type ZStream<R, E, A> = Empty<R, E, A> | Emit<R, E, A> | Concat<R, E, A> | FromPull<R, E, A> | FromArray<R, E, A> | Flatten<R, E, A> | Merge<R, E, A> | Scoped<R, E, A> | Managed<R, E, A>;
|
|
149
|
-
type Normalize<E> = (u: unknown) => E;
|
|
150
|
-
declare const widenOpt: <E1, E2>(opt: Option<E1>) => Option<E1 | E2>;
|
|
151
|
-
declare const fromPull: <R, E, A>(pull: ZIO<R, Option<E>, [A, ZStream<R, E, A>]>) => ZStream<R, E, A>;
|
|
152
|
-
declare const unwrapScoped: <R, E, A>(acquire: ZIO<R, E, ZStream<R, E, A>>, release: (exit: Exit<any, any>) => Async<R, any, void>) => ZStream<R, E, A>;
|
|
153
|
-
declare const managedStream: <R, E, A>(acquire: ZIO<R, E, {
|
|
154
|
-
stream: ZStream<R, E, A>;
|
|
155
|
-
release: (exit: Exit<any, any>) => Async<R, any, void>;
|
|
156
|
-
}>) => ZStream<R, E, A>;
|
|
157
|
-
declare const mergeStream: <R, E, A>(left: ZStream<R, E, A>, right: ZStream<R, E, A>, flip?: boolean) => ZStream<R, E, A>;
|
|
158
|
-
declare const emptyStream: <R, E, A>() => ZStream<R, E, A>;
|
|
159
|
-
declare const emitStream: <R, E, A>(value: ZIO<R, E, A>) => ZStream<R, E, A>;
|
|
160
|
-
declare const concatStream: <R, E, A>(left: ZStream<R, E, A>, right: ZStream<R, E, A>) => ZStream<R, E, A>;
|
|
161
|
-
declare const flattenStream: <R, E, A>(stream: ZStream<R, E, ZStream<R, E, A>>) => ZStream<R, E, A>;
|
|
162
|
-
declare function merge<R, E, A>(left: ZStream<R, E, A>, right: ZStream<R, E, A>): ZStream<R, E, A>;
|
|
163
|
-
declare function uncons<R, E, A>(self: ZStream<R, E, A>): ZIO<R, Option<E>, [A, ZStream<R, E, A>]>;
|
|
164
|
-
declare function assertNever(x: never, msg?: string): never;
|
|
165
|
-
declare function mapStream<R, E, A, B>(self: ZStream<R, E, A>, f: (a: A) => B): ZStream<R, E, B>;
|
|
166
|
-
declare function rangeStream(start: number, end: number): ZStream<unknown, never, number>;
|
|
167
|
-
declare function zip<R, E1, A, E2, B>(left: ZStream<R, E1, A>, right: ZStream<R, E2, B>): ZStream<R, E1 | E2, [A, B]>;
|
|
168
|
-
declare function foreachStream<R, E, A, R2, E2>(stream: ZStream<R, E, A>, f: (a: A) => Async<R2, E2, void>): Async<R & R2, E | E2, void>;
|
|
169
|
-
declare function fromArray<A>(values: readonly A[]): ZStream<unknown, never, A>;
|
|
170
|
-
declare function collectStream<R, E, A>(stream: ZStream<R, E, A>): ZIO<R, E, A[]>;
|
|
171
|
-
declare function streamFromReadableStream<E>(body: ReadableStream<Uint8Array> | null | undefined, normalizeError: Normalize<E>): ZStream<unknown, E, Uint8Array>;
|
|
172
|
-
|
|
173
|
-
export { mapStream as A, merge as B, type CircuitBreakerConfig as C, mergeStream as D, type Emit as E, type Flatten as F, rangeStream as G, streamFromReadableStream as H, uncons as I, unwrapScoped as J, widenOpt as K, zip as L, type Managed as M, type Normalize as N, type Scoped as S, type Tracer as T, type ZStream as Z, type CircuitBreaker as a, type CircuitBreakerError as b, type CircuitBreakerState as c, type CircuitBreakerStats as d, type Concat as e, type Empty as f, type FromArray as g, type FromPull as h, type Merge as i, type Span as j, type SpanContext as k, type SpanEvent as l, type SpanStatus as m, type TracerConfig as n, assertNever as o, collectStream as p, concatStream as q, emitStream as r, emptyStream as s, flattenStream as t, foreachStream as u, fromArray as v, fromPull as w, makeCircuitBreaker as x, makeTracer as y, managedStream as z };
|