@dogpile/sdk 0.2.2 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. package/CHANGELOG.md +15 -0
  2. package/dist/browser/index.js +1044 -507
  3. package/dist/browser/index.js.map +1 -1
  4. package/dist/index.d.ts +5 -1
  5. package/dist/index.d.ts.map +1 -1
  6. package/dist/index.js +2 -0
  7. package/dist/index.js.map +1 -1
  8. package/dist/runtime/broadcast.d.ts +1 -0
  9. package/dist/runtime/broadcast.d.ts.map +1 -1
  10. package/dist/runtime/broadcast.js +28 -19
  11. package/dist/runtime/broadcast.js.map +1 -1
  12. package/dist/runtime/coordinator.d.ts +1 -0
  13. package/dist/runtime/coordinator.d.ts.map +1 -1
  14. package/dist/runtime/coordinator.js +46 -21
  15. package/dist/runtime/coordinator.js.map +1 -1
  16. package/dist/runtime/engine.d.ts.map +1 -1
  17. package/dist/runtime/engine.js +5 -0
  18. package/dist/runtime/engine.js.map +1 -1
  19. package/dist/runtime/ids.d.ts +19 -0
  20. package/dist/runtime/ids.d.ts.map +1 -0
  21. package/dist/runtime/ids.js +36 -0
  22. package/dist/runtime/ids.js.map +1 -0
  23. package/dist/runtime/logger.d.ts +61 -0
  24. package/dist/runtime/logger.d.ts.map +1 -0
  25. package/dist/runtime/logger.js +114 -0
  26. package/dist/runtime/logger.js.map +1 -0
  27. package/dist/runtime/retry.d.ts +99 -0
  28. package/dist/runtime/retry.d.ts.map +1 -0
  29. package/dist/runtime/retry.js +181 -0
  30. package/dist/runtime/retry.js.map +1 -0
  31. package/dist/runtime/sequential.d.ts +1 -0
  32. package/dist/runtime/sequential.d.ts.map +1 -1
  33. package/dist/runtime/sequential.js +25 -16
  34. package/dist/runtime/sequential.js.map +1 -1
  35. package/dist/runtime/shared.d.ts +1 -0
  36. package/dist/runtime/shared.d.ts.map +1 -1
  37. package/dist/runtime/shared.js +25 -19
  38. package/dist/runtime/shared.js.map +1 -1
  39. package/dist/runtime/termination.d.ts +6 -1
  40. package/dist/runtime/termination.d.ts.map +1 -1
  41. package/dist/runtime/termination.js +75 -0
  42. package/dist/runtime/termination.js.map +1 -1
  43. package/dist/runtime/tools/built-in.d.ts +99 -0
  44. package/dist/runtime/tools/built-in.d.ts.map +1 -0
  45. package/dist/runtime/tools/built-in.js +577 -0
  46. package/dist/runtime/tools/built-in.js.map +1 -0
  47. package/dist/runtime/tools/vercel-ai.d.ts +67 -0
  48. package/dist/runtime/tools/vercel-ai.d.ts.map +1 -0
  49. package/dist/runtime/tools/vercel-ai.js +148 -0
  50. package/dist/runtime/tools/vercel-ai.js.map +1 -0
  51. package/dist/runtime/tools.d.ts +5 -268
  52. package/dist/runtime/tools.d.ts.map +1 -1
  53. package/dist/runtime/tools.js +7 -770
  54. package/dist/runtime/tools.js.map +1 -1
  55. package/dist/runtime/validation.d.ts.map +1 -1
  56. package/dist/runtime/validation.js +22 -0
  57. package/dist/runtime/validation.js.map +1 -1
  58. package/dist/runtime/wrap-up.d.ts +26 -0
  59. package/dist/runtime/wrap-up.d.ts.map +1 -0
  60. package/dist/runtime/wrap-up.js +178 -0
  61. package/dist/runtime/wrap-up.js.map +1 -0
  62. package/dist/types/benchmark.d.ts +276 -0
  63. package/dist/types/benchmark.d.ts.map +1 -0
  64. package/dist/types/benchmark.js +2 -0
  65. package/dist/types/benchmark.js.map +1 -0
  66. package/dist/types/events.d.ts +495 -0
  67. package/dist/types/events.d.ts.map +1 -0
  68. package/dist/types/events.js +2 -0
  69. package/dist/types/events.js.map +1 -0
  70. package/dist/types/replay.d.ts +169 -0
  71. package/dist/types/replay.d.ts.map +1 -0
  72. package/dist/types/replay.js +2 -0
  73. package/dist/types/replay.js.map +1 -0
  74. package/dist/types.d.ts +74 -935
  75. package/dist/types.d.ts.map +1 -1
  76. package/package.json +28 -1
  77. package/src/index.ts +7 -1
  78. package/src/runtime/broadcast.ts +50 -35
  79. package/src/runtime/coordinator.ts +84 -43
  80. package/src/runtime/engine.ts +6 -0
  81. package/src/runtime/ids.ts +41 -0
  82. package/src/runtime/logger.ts +152 -0
  83. package/src/runtime/retry.ts +270 -0
  84. package/src/runtime/sequential.ts +46 -31
  85. package/src/runtime/shared.ts +46 -35
  86. package/src/runtime/termination.ts +100 -0
  87. package/src/runtime/tools/built-in.ts +875 -0
  88. package/src/runtime/tools/vercel-ai.ts +269 -0
  89. package/src/runtime/tools.ts +60 -1255
  90. package/src/runtime/validation.ts +25 -0
  91. package/src/runtime/wrap-up.ts +257 -0
  92. package/src/types/benchmark.ts +300 -0
  93. package/src/types/events.ts +544 -0
  94. package/src/types/replay.ts +201 -0
  95. package/src/types.ts +174 -994
@@ -1 +1 @@
1
- {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/runtime/engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"engine.js","sourceRoot":"","sources":["../../src/runtime/engine.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,19 @@
1
+ /**
2
+ * Repo-internal id and timing helpers used across all four protocols.
3
+ *
4
+ * Centralized here so a change to id format or fallback semantics happens in
5
+ * exactly one place — switching `protocol` must not change the run-id contract.
6
+ */
7
+ /**
8
+ * Generates a fresh run id using `globalThis.crypto.randomUUID`.
9
+ *
10
+ * Throws a `DogpileError` when no UUID source is available rather than falling
11
+ * back to a millisecond-based id (which collides under back-to-back runs in
12
+ * the same tick). Node 22+, Bun latest, and modern browsers all expose
13
+ * `crypto.randomUUID`; environments without it are unsupported by Dogpile.
14
+ */
15
+ export declare function createRunId(): string;
16
+ export declare function nowMs(): number;
17
+ export declare function elapsedMs(startedAtMs: number): number;
18
+ export declare function providerCallIdFor(runId: string, oneBasedIndex: number): string;
19
+ //# sourceMappingURL=ids.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ids.d.ts","sourceRoot":"","sources":["../../src/runtime/ids.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AAEH;;;;;;;GAOG;AACH,wBAAgB,WAAW,IAAI,MAAM,CAWpC;AAED,wBAAgB,KAAK,IAAI,MAAM,CAE9B;AAED,wBAAgB,SAAS,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAErD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,CAE9E"}
@@ -0,0 +1,36 @@
1
+ import { DogpileError } from "../types.js";
2
+ /**
3
+ * Repo-internal id and timing helpers used across all four protocols.
4
+ *
5
+ * Centralized here so a change to id format or fallback semantics happens in
6
+ * exactly one place — switching `protocol` must not change the run-id contract.
7
+ */
8
+ /**
9
+ * Generates a fresh run id using `globalThis.crypto.randomUUID`.
10
+ *
11
+ * Throws a `DogpileError` when no UUID source is available rather than falling
12
+ * back to a millisecond-based id (which collides under back-to-back runs in
13
+ * the same tick). Node 22+, Bun latest, and modern browsers all expose
14
+ * `crypto.randomUUID`; environments without it are unsupported by Dogpile.
15
+ */
16
+ export function createRunId() {
17
+ const random = globalThis.crypto?.randomUUID?.();
18
+ if (typeof random === "string" && random.length > 0) {
19
+ return random;
20
+ }
21
+ throw new DogpileError({
22
+ code: "invalid-configuration",
23
+ message: "Dogpile requires globalThis.crypto.randomUUID to mint a run id. " +
24
+ "Run on Node 22+, Bun latest, or a modern browser ESM environment."
25
+ });
26
+ }
27
+ export function nowMs() {
28
+ return globalThis.performance?.now() ?? Date.now();
29
+ }
30
+ export function elapsedMs(startedAtMs) {
31
+ return Math.max(0, nowMs() - startedAtMs);
32
+ }
33
+ export function providerCallIdFor(runId, oneBasedIndex) {
34
+ return `${runId}:provider-call:${oneBasedIndex}`;
35
+ }
36
+ //# sourceMappingURL=ids.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ids.js","sourceRoot":"","sources":["../../src/runtime/ids.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAE3C;;;;;GAKG;AAEH;;;;;;;GAOG;AACH,MAAM,UAAU,WAAW;IACzB,MAAM,MAAM,GAAG,UAAU,CAAC,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC;IACjD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpD,OAAO,MAAM,CAAC;IAChB,CAAC;IACD,MAAM,IAAI,YAAY,CAAC;QACrB,IAAI,EAAE,uBAAuB;QAC7B,OAAO,EACL,kEAAkE;YAClE,mEAAmE;KACtE,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,KAAK;IACnB,OAAO,UAAU,CAAC,WAAW,EAAE,GAAG,EAAE,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;AACrD,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,WAAmB;IAC3C,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,WAAW,CAAC,CAAC;AAC5C,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,KAAa,EAAE,aAAqB;IACpE,OAAO,GAAG,KAAK,kBAAkB,aAAa,EAAE,CAAC;AACnD,CAAC"}
@@ -0,0 +1,61 @@
1
+ import type { JsonValue, StreamEvent, StreamEventSubscriber } from "../types.js";
2
+ /**
3
+ * Severity levels recognized by `consoleLogger` and used as the floor when
4
+ * deciding which events surface through `loggerFromEvents`.
5
+ */
6
+ export type LogLevel = "debug" | "info" | "warn" | "error";
7
+ /**
8
+ * Minimal structured-logging seam that callers can implement against pino,
9
+ * winston, console, or anything else. Logger calls must be synchronous,
10
+ * non-throwing, and have no return value — Dogpile catches throws and routes
11
+ * them to the same logger's `error` channel rather than failing the run.
12
+ */
13
+ export interface Logger {
14
+ debug(message: string, fields?: Readonly<Record<string, JsonValue>>): void;
15
+ info(message: string, fields?: Readonly<Record<string, JsonValue>>): void;
16
+ warn(message: string, fields?: Readonly<Record<string, JsonValue>>): void;
17
+ error(message: string, fields?: Readonly<Record<string, JsonValue>>): void;
18
+ }
19
+ /** Logger that drops every call. The default when no logger is supplied. */
20
+ export declare const noopLogger: Logger;
21
+ /**
22
+ * Build a console-backed logger respecting a minimum level.
23
+ *
24
+ * The output format is JSON-on-one-line so it can be piped straight into log
25
+ * collectors. Use `loggerFromEvents` to bridge it to a Dogpile stream handle.
26
+ */
27
+ export declare function consoleLogger(options?: {
28
+ readonly level?: LogLevel;
29
+ }): Logger;
30
+ /**
31
+ * Options for `loggerFromEvents`.
32
+ */
33
+ export interface LoggerFromEventsOptions {
34
+ /**
35
+ * Restrict logging to the listed event types. By default every
36
+ * lifecycle event is forwarded.
37
+ */
38
+ readonly include?: ReadonlyArray<StreamEvent["type"]>;
39
+ /**
40
+ * Override the level chosen for a given event type. Useful for elevating
41
+ * tool-result errors to `warn` or downgrading `model-output-chunk` to
42
+ * `debug`.
43
+ */
44
+ readonly levelFor?: (event: StreamEvent) => LogLevel | undefined;
45
+ }
46
+ /**
47
+ * Bridge a `Logger` to a Dogpile stream handle by returning a
48
+ * `StreamEventSubscriber`. Pass it to `handle.subscribe(...)`.
49
+ *
50
+ * Logger throws are caught and routed to `logger.error` so a misbehaving
51
+ * logger can never crash an in-flight run.
52
+ *
53
+ * @example
54
+ * ```ts
55
+ * const handle = Dogpile.stream({ intent, model });
56
+ * handle.subscribe(loggerFromEvents(consoleLogger({ level: "info" })));
57
+ * const result = await handle.result;
58
+ * ```
59
+ */
60
+ export declare function loggerFromEvents(logger: Logger, options?: LoggerFromEventsOptions): StreamEventSubscriber;
61
+ //# sourceMappingURL=logger.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.d.ts","sourceRoot":"","sources":["../../src/runtime/logger.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,WAAW,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AAEjF;;;GAGG;AACH,MAAM,MAAM,QAAQ,GAAG,OAAO,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,CAAC;AAE3D;;;;;GAKG;AACH,MAAM,WAAW,MAAM;IACrB,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC;IAC3E,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC;IAC1E,IAAI,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC;IAC1E,KAAK,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,GAAG,IAAI,CAAC;CAC5E;AAED,4EAA4E;AAC5E,eAAO,MAAM,UAAU,EAAE,MAKxB,CAAC;AAEF;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,OAAO,GAAE;IAAE,QAAQ,CAAC,KAAK,CAAC,EAAE,QAAQ,CAAA;CAAO,GAAG,MAAM,CAgBjF;AASD;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC;;;OAGG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,aAAa,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC;IACtD;;;;OAIG;IACH,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,WAAW,KAAK,QAAQ,GAAG,SAAS,CAAC;CAClE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAC9B,MAAM,EAAE,MAAM,EACd,OAAO,GAAE,uBAA4B,GACpC,qBAAqB,CAuBvB"}
@@ -0,0 +1,114 @@
1
+ /** Logger that drops every call. The default when no logger is supplied. */
2
+ export const noopLogger = {
3
+ debug() { },
4
+ info() { },
5
+ warn() { },
6
+ error() { }
7
+ };
8
+ /**
9
+ * Build a console-backed logger respecting a minimum level.
10
+ *
11
+ * The output format is JSON-on-one-line so it can be piped straight into log
12
+ * collectors. Use `loggerFromEvents` to bridge it to a Dogpile stream handle.
13
+ */
14
+ export function consoleLogger(options = {}) {
15
+ const minLevel = options.level ?? "info";
16
+ const allowed = (level) => LEVEL_ORDER[level] >= LEVEL_ORDER[minLevel];
17
+ const emit = (level, message, fields) => {
18
+ if (!allowed(level))
19
+ return;
20
+ const payload = { level, message };
21
+ if (fields !== undefined)
22
+ payload.fields = fields;
23
+ const sink = level === "error" ? console.error : level === "warn" ? console.warn : console.log;
24
+ sink(JSON.stringify(payload));
25
+ };
26
+ return {
27
+ debug: (message, fields) => emit("debug", message, fields),
28
+ info: (message, fields) => emit("info", message, fields),
29
+ warn: (message, fields) => emit("warn", message, fields),
30
+ error: (message, fields) => emit("error", message, fields)
31
+ };
32
+ }
33
+ const LEVEL_ORDER = {
34
+ debug: 0,
35
+ info: 1,
36
+ warn: 2,
37
+ error: 3
38
+ };
39
+ /**
40
+ * Bridge a `Logger` to a Dogpile stream handle by returning a
41
+ * `StreamEventSubscriber`. Pass it to `handle.subscribe(...)`.
42
+ *
43
+ * Logger throws are caught and routed to `logger.error` so a misbehaving
44
+ * logger can never crash an in-flight run.
45
+ *
46
+ * @example
47
+ * ```ts
48
+ * const handle = Dogpile.stream({ intent, model });
49
+ * handle.subscribe(loggerFromEvents(consoleLogger({ level: "info" })));
50
+ * const result = await handle.result;
51
+ * ```
52
+ */
53
+ export function loggerFromEvents(logger, options = {}) {
54
+ const includeSet = options.include ? new Set(options.include) : undefined;
55
+ return (event) => {
56
+ const eventType = event.type;
57
+ if (includeSet && !includeSet.has(eventType)) {
58
+ return;
59
+ }
60
+ const level = options.levelFor?.(event) ?? defaultLevel(event);
61
+ const message = describeEvent(event);
62
+ const fields = summarizeEvent(event);
63
+ try {
64
+ logger[level](message, fields);
65
+ }
66
+ catch (cause) {
67
+ try {
68
+ logger.error("dogpile logger threw while handling event", {
69
+ eventType,
70
+ error: cause instanceof Error ? cause.message : String(cause)
71
+ });
72
+ }
73
+ catch {
74
+ // Swallow — a logger that throws from error() cannot be helped.
75
+ }
76
+ }
77
+ };
78
+ }
79
+ function defaultLevel(event) {
80
+ switch (event.type) {
81
+ case "model-output-chunk":
82
+ return "debug";
83
+ case "budget-stop":
84
+ return "warn";
85
+ case "error":
86
+ return "error";
87
+ case "tool-result": {
88
+ const result = event.result;
89
+ return result?.type === "error" ? "warn" : "info";
90
+ }
91
+ default:
92
+ return "info";
93
+ }
94
+ }
95
+ function describeEvent(event) {
96
+ return `dogpile:${event.type}`;
97
+ }
98
+ function summarizeEvent(event) {
99
+ const fields = { eventType: event.type };
100
+ const at = event.at;
101
+ if (typeof at === "string")
102
+ fields.at = at;
103
+ const runId = event.runId;
104
+ if (typeof runId === "string")
105
+ fields.runId = runId;
106
+ const agentId = event.agentId;
107
+ if (typeof agentId === "string")
108
+ fields.agentId = agentId;
109
+ const role = event.role;
110
+ if (typeof role === "string")
111
+ fields.role = role;
112
+ return fields;
113
+ }
114
+ //# sourceMappingURL=logger.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"logger.js","sourceRoot":"","sources":["../../src/runtime/logger.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,99 @@
1
+ import { type ConfiguredModelProvider, type DogpileErrorCode } from "../types.js";
2
+ /**
3
+ * Default DogpileError codes that `withRetry` retries when no `retryOn`
4
+ * predicate is supplied. These map to the transient provider failures listed
5
+ * in `docs/developer-usage.md`.
6
+ */
7
+ export declare const DEFAULT_RETRYABLE_DOGPILE_CODES: readonly DogpileErrorCode[];
8
+ /** Reason passed to `onRetry` and used to drive jitter selection. */
9
+ export type RetryJitterMode = "full" | "none";
10
+ /**
11
+ * Information about a single retry attempt that has just failed and is about
12
+ * to sleep before the next attempt.
13
+ */
14
+ export interface RetryAttemptInfo {
15
+ /** 1-based index of the attempt that just failed. */
16
+ readonly attempt: number;
17
+ /** Maximum number of attempts the policy will make before giving up. */
18
+ readonly maxAttempts: number;
19
+ /** Sleep duration before the next attempt, in milliseconds. */
20
+ readonly delayMs: number;
21
+ /** The error thrown by the failing attempt. */
22
+ readonly error: unknown;
23
+ /** Provider id of the wrapped provider. */
24
+ readonly providerId: string;
25
+ }
26
+ /**
27
+ * Caller-supplied retry policy for `withRetry`.
28
+ *
29
+ * The defaults match the conservative, neutrality-preserving recipe in
30
+ * `docs/developer-usage.md`. A caller that wants per-error custom logic
31
+ * (e.g. honor a custom `Retry-After` header from a non-Dogpile error shape)
32
+ * should pass `retryOn` and `delayForError`.
33
+ */
34
+ export interface RetryPolicy {
35
+ /** Maximum total attempts including the first call. Default: 3. */
36
+ readonly maxAttempts?: number;
37
+ /** Initial backoff delay in milliseconds. Default: 250. */
38
+ readonly baseDelayMs?: number;
39
+ /** Cap on the per-attempt backoff delay. Default: 4000. */
40
+ readonly maxDelayMs?: number;
41
+ /** Jitter strategy. `"full"` uses uniform jitter, `"none"` is deterministic. Default: "full". */
42
+ readonly jitter?: RetryJitterMode;
43
+ /**
44
+ * Predicate deciding whether an error is retryable. Receives the raw error
45
+ * thrown by the wrapped provider; returns `true` to retry, `false` to
46
+ * propagate immediately. Default: matches `DEFAULT_RETRYABLE_DOGPILE_CODES`
47
+ * for `DogpileError`, and treats `AbortError` / `DOMException(AbortError)` /
48
+ * `DogpileError({ code: "aborted" })` as non-retryable.
49
+ */
50
+ readonly retryOn?: (error: unknown) => boolean;
51
+ /**
52
+ * Optional delay override for a specific error. Return a non-negative number
53
+ * (ms) to override the computed backoff for the next attempt — used to
54
+ * honor server-supplied `Retry-After` semantics. Returning `undefined`
55
+ * keeps the computed backoff.
56
+ */
57
+ readonly delayForError?: (error: unknown) => number | undefined;
58
+ /**
59
+ * Side-effect callback invoked after each failing attempt that will be
60
+ * retried. Useful for surfacing retries to a logger or metrics system
61
+ * without wrapping the whole event stream.
62
+ */
63
+ readonly onRetry?: (info: RetryAttemptInfo) => void;
64
+ /**
65
+ * Random source for jitter, primarily for deterministic tests. Must return
66
+ * a value in `[0, 1)`. Default: `Math.random`.
67
+ */
68
+ readonly random?: () => number;
69
+ /**
70
+ * Sleep implementation, primarily for deterministic tests. Default: a
71
+ * `setTimeout`-backed promise that respects `AbortSignal`.
72
+ */
73
+ readonly sleep?: (ms: number, signal?: AbortSignal) => Promise<void>;
74
+ }
75
+ /**
76
+ * Wrap a `ConfiguredModelProvider` with a retry policy. The wrapper:
77
+ *
78
+ * - Preserves the provider `id` so traces remain stable.
79
+ * - Retries `generate()` calls when the policy says the error is retryable.
80
+ * - Propagates `AbortSignal` cancellation immediately — never retries after
81
+ * the caller cancels.
82
+ * - Honors a `Retry-After`-style hint exposed via `error.detail.retryAfterMs`
83
+ * when present and the policy did not provide its own `delayForError`.
84
+ * - Forwards `stream()` calls through unchanged — streaming retries cannot be
85
+ * safely automated because partial output may have already been observed.
86
+ *
87
+ * @example
88
+ * ```ts
89
+ * const robustProvider = withRetry(rawProvider, {
90
+ * maxAttempts: 4,
91
+ * baseDelayMs: 500,
92
+ * onRetry: ({ attempt, delayMs, error }) => {
93
+ * logger.warn("provider retry", { attempt, delayMs, error });
94
+ * }
95
+ * });
96
+ * ```
97
+ */
98
+ export declare function withRetry(provider: ConfiguredModelProvider, policy?: RetryPolicy): ConfiguredModelProvider;
99
+ //# sourceMappingURL=retry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retry.d.ts","sourceRoot":"","sources":["../../src/runtime/retry.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,uBAAuB,EAC5B,KAAK,gBAAgB,EAItB,MAAM,aAAa,CAAC;AAErB;;;;GAIG;AACH,eAAO,MAAM,+BAA+B,EAAE,SAAS,gBAAgB,EAItE,CAAC;AAEF,qEAAqE;AACrE,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,MAAM,CAAC;AAE9C;;;GAGG;AACH,MAAM,WAAW,gBAAgB;IAC/B,qDAAqD;IACrD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,wEAAwE;IACxE,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,+DAA+D;IAC/D,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,+CAA+C;IAC/C,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,2CAA2C;IAC3C,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;CAC7B;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,WAAW;IAC1B,mEAAmE;IACnE,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,2DAA2D;IAC3D,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,2DAA2D;IAC3D,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAC7B,iGAAiG;IACjG,QAAQ,CAAC,MAAM,CAAC,EAAE,eAAe,CAAC;IAClC;;;;;;OAMG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,OAAO,CAAC;IAC/C;;;;;OAKG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,MAAM,GAAG,SAAS,CAAC;IAChE;;;;OAIG;IACH,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,EAAE,gBAAgB,KAAK,IAAI,CAAC;IACpD;;;OAGG;IACH,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,MAAM,CAAC;IAC/B;;;OAGG;IACH,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACtE;AASD;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,wBAAgB,SAAS,CACvB,QAAQ,EAAE,uBAAuB,EACjC,MAAM,GAAE,WAAgB,GACvB,uBAAuB,CAuEzB"}
@@ -0,0 +1,181 @@
1
+ import { DogpileError } from "../types.js";
2
+ /**
3
+ * Default DogpileError codes that `withRetry` retries when no `retryOn`
4
+ * predicate is supplied. These map to the transient provider failures listed
5
+ * in `docs/developer-usage.md`.
6
+ */
7
+ export const DEFAULT_RETRYABLE_DOGPILE_CODES = [
8
+ "provider-rate-limited",
9
+ "provider-timeout",
10
+ "provider-unavailable"
11
+ ];
12
+ const DEFAULTS = {
13
+ maxAttempts: 3,
14
+ baseDelayMs: 250,
15
+ maxDelayMs: 4_000,
16
+ jitter: "full"
17
+ };
18
+ /**
19
+ * Wrap a `ConfiguredModelProvider` with a retry policy. The wrapper:
20
+ *
21
+ * - Preserves the provider `id` so traces remain stable.
22
+ * - Retries `generate()` calls when the policy says the error is retryable.
23
+ * - Propagates `AbortSignal` cancellation immediately — never retries after
24
+ * the caller cancels.
25
+ * - Honors a `Retry-After`-style hint exposed via `error.detail.retryAfterMs`
26
+ * when present and the policy did not provide its own `delayForError`.
27
+ * - Forwards `stream()` calls through unchanged — streaming retries cannot be
28
+ * safely automated because partial output may have already been observed.
29
+ *
30
+ * @example
31
+ * ```ts
32
+ * const robustProvider = withRetry(rawProvider, {
33
+ * maxAttempts: 4,
34
+ * baseDelayMs: 500,
35
+ * onRetry: ({ attempt, delayMs, error }) => {
36
+ * logger.warn("provider retry", { attempt, delayMs, error });
37
+ * }
38
+ * });
39
+ * ```
40
+ */
41
+ export function withRetry(provider, policy = {}) {
42
+ const settings = {
43
+ maxAttempts: policy.maxAttempts ?? DEFAULTS.maxAttempts,
44
+ baseDelayMs: policy.baseDelayMs ?? DEFAULTS.baseDelayMs,
45
+ maxDelayMs: policy.maxDelayMs ?? DEFAULTS.maxDelayMs,
46
+ jitter: policy.jitter ?? DEFAULTS.jitter,
47
+ retryOn: policy.retryOn ?? defaultRetryOn,
48
+ random: policy.random ?? Math.random,
49
+ sleep: policy.sleep ?? defaultSleep
50
+ };
51
+ if (settings.maxAttempts < 1) {
52
+ throw new DogpileError({
53
+ code: "invalid-configuration",
54
+ message: "withRetry: maxAttempts must be >= 1.",
55
+ detail: { maxAttempts: settings.maxAttempts }
56
+ });
57
+ }
58
+ if (settings.baseDelayMs < 0 || settings.maxDelayMs < 0) {
59
+ throw new DogpileError({
60
+ code: "invalid-configuration",
61
+ message: "withRetry: delay fields must be non-negative.",
62
+ detail: { baseDelayMs: settings.baseDelayMs, maxDelayMs: settings.maxDelayMs }
63
+ });
64
+ }
65
+ const wrapped = {
66
+ id: provider.id,
67
+ async generate(request) {
68
+ let lastError;
69
+ for (let attempt = 1; attempt <= settings.maxAttempts; attempt++) {
70
+ if (request.signal?.aborted) {
71
+ throw abortReason(request.signal);
72
+ }
73
+ try {
74
+ return await provider.generate(request);
75
+ }
76
+ catch (error) {
77
+ lastError = error;
78
+ if (isAbortError(error) || request.signal?.aborted) {
79
+ throw error;
80
+ }
81
+ const isLastAttempt = attempt >= settings.maxAttempts;
82
+ if (isLastAttempt || !settings.retryOn(error)) {
83
+ throw error;
84
+ }
85
+ const delayMs = chooseDelay({ attempt, error, settings, policy });
86
+ policy.onRetry?.({
87
+ attempt,
88
+ maxAttempts: settings.maxAttempts,
89
+ delayMs,
90
+ error,
91
+ providerId: provider.id
92
+ });
93
+ await settings.sleep(delayMs, request.signal);
94
+ }
95
+ }
96
+ // Unreachable in practice — the loop either returns or throws — but TS
97
+ // needs an explicit fallthrough.
98
+ throw lastError ?? new DogpileError({
99
+ code: "unknown",
100
+ message: "withRetry: exhausted attempts without throwing or returning."
101
+ });
102
+ }
103
+ };
104
+ if (typeof provider.stream === "function") {
105
+ const upstreamStream = provider.stream.bind(provider);
106
+ wrapped.stream = (request) => upstreamStream(request);
107
+ }
108
+ return wrapped;
109
+ }
110
+ function chooseDelay(args) {
111
+ const override = args.policy.delayForError?.(args.error) ?? retryAfterFromError(args.error);
112
+ if (override !== undefined && Number.isFinite(override) && override >= 0) {
113
+ return Math.min(args.settings.maxDelayMs, override);
114
+ }
115
+ const exponential = args.settings.baseDelayMs * 2 ** (args.attempt - 1);
116
+ const capped = Math.min(args.settings.maxDelayMs, exponential);
117
+ if (args.settings.jitter === "none") {
118
+ return capped;
119
+ }
120
+ return Math.floor(capped * args.settings.random());
121
+ }
122
+ function defaultRetryOn(error) {
123
+ if (isAbortError(error))
124
+ return false;
125
+ if (DogpileError.isInstance(error)) {
126
+ if (error.code === "aborted" || error.code === "invalid-configuration") {
127
+ return false;
128
+ }
129
+ return DEFAULT_RETRYABLE_DOGPILE_CODES.includes(error.code);
130
+ }
131
+ // Treat generic network/transient errors as retryable. Most fetch errors
132
+ // surface as `TypeError` with messages like "fetch failed" / "network".
133
+ if (error instanceof TypeError)
134
+ return true;
135
+ return false;
136
+ }
137
+ function isAbortError(error) {
138
+ if (DogpileError.isInstance(error) && error.code === "aborted")
139
+ return true;
140
+ if (typeof error === "object" && error !== null) {
141
+ const name = error.name;
142
+ if (name === "AbortError")
143
+ return true;
144
+ }
145
+ return false;
146
+ }
147
+ function abortReason(signal) {
148
+ return signal.reason ?? new DogpileError({ code: "aborted", message: "Request aborted." });
149
+ }
150
+ function retryAfterFromError(error) {
151
+ if (!DogpileError.isInstance(error))
152
+ return undefined;
153
+ const detail = error.detail;
154
+ if (!detail || typeof detail !== "object")
155
+ return undefined;
156
+ const candidate = detail.retryAfterMs;
157
+ if (typeof candidate === "number" && Number.isFinite(candidate) && candidate >= 0) {
158
+ return candidate;
159
+ }
160
+ return undefined;
161
+ }
162
+ function defaultSleep(ms, signal) {
163
+ if (ms <= 0)
164
+ return Promise.resolve();
165
+ return new Promise((resolve, reject) => {
166
+ if (signal?.aborted) {
167
+ reject(abortReason(signal));
168
+ return;
169
+ }
170
+ const timer = setTimeout(() => {
171
+ signal?.removeEventListener("abort", onAbort);
172
+ resolve();
173
+ }, ms);
174
+ const onAbort = () => {
175
+ clearTimeout(timer);
176
+ reject(abortReason(signal));
177
+ };
178
+ signal?.addEventListener("abort", onAbort, { once: true });
179
+ });
180
+ }
181
+ //# sourceMappingURL=retry.js.map