@shpitdev/convex-cliproxy-observability 0.3.5 → 0.3.7

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 (56) hide show
  1. package/CHANGELOG.md +20 -0
  2. package/README.md +2 -2
  3. package/dist/capture/content-health.d.ts +29 -0
  4. package/dist/capture/content-health.d.ts.map +1 -0
  5. package/dist/capture/content-health.js +29 -0
  6. package/dist/capture/content-health.js.map +1 -0
  7. package/dist/capture/index.d.ts +26 -2
  8. package/dist/capture/index.d.ts.map +1 -1
  9. package/dist/capture/index.js +99 -7
  10. package/dist/capture/index.js.map +1 -1
  11. package/dist/client.d.ts.map +1 -1
  12. package/dist/client.js +3 -0
  13. package/dist/client.js.map +1 -1
  14. package/dist/component/_generated/api.d.ts.map +1 -1
  15. package/dist/component/_generated/api.js.map +1 -1
  16. package/dist/component/_generated/component.d.ts.map +1 -1
  17. package/dist/component/ingest.d.ts +13 -0
  18. package/dist/component/ingest.d.ts.map +1 -1
  19. package/dist/component/ingest.js +4 -0
  20. package/dist/component/ingest.js.map +1 -1
  21. package/dist/model-call/index.d.ts +3 -1
  22. package/dist/model-call/index.d.ts.map +1 -1
  23. package/dist/model-call/index.js.map +1 -1
  24. package/dist/projection.d.ts +6 -3
  25. package/dist/projection.d.ts.map +1 -1
  26. package/dist/projection.js +55 -7
  27. package/dist/projection.js.map +1 -1
  28. package/dist/protocols/body-parts.d.ts +19 -0
  29. package/dist/protocols/body-parts.d.ts.map +1 -0
  30. package/dist/protocols/body-parts.js +56 -0
  31. package/dist/protocols/body-parts.js.map +1 -0
  32. package/dist/protocols/checkpoint.d.ts +16 -1
  33. package/dist/protocols/checkpoint.d.ts.map +1 -1
  34. package/dist/protocols/checkpoint.js +69 -24
  35. package/dist/protocols/checkpoint.js.map +1 -1
  36. package/dist/protocols/index.d.ts +3 -1
  37. package/dist/protocols/index.d.ts.map +1 -1
  38. package/dist/protocols/index.js +2 -0
  39. package/dist/protocols/index.js.map +1 -1
  40. package/dist/protocols/stock-block.d.ts +3 -0
  41. package/dist/protocols/stock-block.d.ts.map +1 -0
  42. package/dist/protocols/stock-block.js +17 -0
  43. package/dist/protocols/stock-block.js.map +1 -0
  44. package/package.json +1 -1
  45. package/src/capture/content-health.ts +32 -0
  46. package/src/capture/index.ts +139 -9
  47. package/src/client.ts +3 -0
  48. package/src/component/_generated/api.ts +5 -6
  49. package/src/component/_generated/component.ts +6 -6
  50. package/src/component/ingest.ts +3 -0
  51. package/src/model-call/index.ts +3 -1
  52. package/src/projection.ts +71 -16
  53. package/src/protocols/body-parts.ts +58 -0
  54. package/src/protocols/checkpoint.ts +76 -22
  55. package/src/protocols/index.ts +4 -1
  56. package/src/protocols/stock-block.ts +18 -0
package/CHANGELOG.md CHANGED
@@ -1,5 +1,25 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.3.7
4
+
5
+ - Native 0.2.5 stores request, after-auth, non-stream response bodies and single stream callbacks larger than 1 MiB as exact ordered parts instead of dropping them. Parts use consecutive sequences; each record carries `bodyPart: { index, count, offset, totalBytes, totalSha256 }`, every part but the last holds exactly 1 MiB, and readers verify the whole-body digest. Record body, envelope (2 MiB), segment (1408 KiB), sequence/ACK, FULL/WAL and retention bounds are unchanged.
6
+ - The receiver validates split parts alongside unchanged historical records. `/protocols` exports `BodyPartAssembler` for exact reassembly and `stockHookPieces` for block or split-callback replay. Package projection reassembles split bodies up to 8 MiB (`MAX_PROJECTED_SPLIT_BYTES`) from owned segments and rejects a split body interrupted across segments. Larger split bodies stay raw-complete without projection allocating them: a request takes streaming from protocol evidence, and a response or stream body reports `frame_limit`.
7
+ - Source-repository reader fixture `fixtures/body-part-v1.ndjson`: the two exact native 0.2.5 `request` parts of a 1,100,069-byte streamed Responses body, captured through official stock 8.0.23 during private qualification.
8
+ - Native 0.2.5 no longer rejects stock hook callbacks by whole-frame size. Stock header-init frames carry two undecoded base64 request copies; only retained fields are bounded. An unreadable callback marks only the call it names (`unreadable_callback`); without a recoverable request ID it is an unknown loss and never marks unrelated active calls.
9
+ - A split body is admitted all-or-nothing against the unchanged byte pool and 256 shared record slots. Parts share one buffer, so the item is charged that buffer once, 16 KiB per part, and 3 MiB serialization headroom for the one part its writer holds. A rejected body records its exact known loss at one sequence.
10
+ - Content health adds optional `missedCalls`: enrolled calls that could not start a capture scope, with their known request bytes counted lost. Older health senders remain accepted.
11
+ - Deploy receiver 0.3.7 and split-aware readers before native 0.2.5. Readers that do not reassemble parts see partial JSON per record and must not treat them as complete content.
12
+
13
+ ## 0.3.6
14
+
15
+ - Preserve streamed content in bounded, byte-identical stock hook blocks rather than one durable record per callback. The shared `expandStockHookBlock` helper restores parser boundaries for receiver projection and selected-call readers.
16
+ - Accept both historical observations and `hook-content-block-v1`; retain exact diagnostics up to the supported 1 MiB content bound and persisted local byte-health counters.
17
+ - Native 0.2.4 charges partial, queued and worker-held content against one byte budget (64 MiB default). Capacity admission never waits on a writer; exhaustion records exact known loss while preserving later bytes. Timer, size, lifecycle and shutdown flushes keep capture completeness separate from provider outcome and remote delivery.
18
+ - Deploy the compatible receiver and consuming readers before activating the new native producer. No database schema or retention changes.
19
+ - Share the unchanged 256 data-record slots globally, including records held by workers, so an idle enrolled destination does not strand slots while another loses content. Destination byte allowances and the separate control reserve stay bounded.
20
+ - Source-repository reader fixtures are in `fixtures/content-block-v1.ndjson`: exact producer Chat and Responses blocks plus an incomplete shutdown completion with unknown provider outcome. Recover callback boundaries through `/protocols`' `expandStockHookBlock`; treat gaps, positive `lostContentBytes`, or `captureIncomplete` as incomplete argument assembly.
21
+ - CT101's final-binary burst qualification preserved all 4,566,810 observed bytes and eight terminals at approximately 30,000 callbacks/s with zero loss, incompleteness or capacity rejections at both 64 MiB and 16 MiB. Preserve its existing explicit 16 MiB setting: measured charged peak was 3,561,920, leaving over fourfold headroom. The package default remains 64 MiB; these are offline qualification results, and live acceptance remains a separate gate.
22
+
3
23
  ## 0.3.5
4
24
 
5
25
  - Native 0.2.3 pins go-sqlite3 1.14.52 with SQLite 3.53.4, which includes
package/README.md CHANGED
@@ -69,7 +69,7 @@ Mount `@shpitdev/convex-cliproxy-observability/convex.config` with `app.use`. Co
69
69
 
70
70
  The host supplies `PrivateCaptureStorage.put/get` and a durable `scheduleProjection` callback. Projection actions call `projectPendingSegments`, rescheduling when `more` is true. Scheduler failure returns 503 after the raw receipt, making exporter retries safe. The host must monitor and recover failed projection actions; persisted raw content and receipts remain independently readable. No TTL or cleanup cron removes calls, receipts or content by default.
71
71
 
72
- The receiver accepts `CaptureSegmentV1` from the `/capture` export: immutable NDJSON batches of up to 256 contiguous observations. A segment is at most 1408 KiB; the outer JSON envelope is at most 2 MiB. Each observation payload is at most 1 MiB. The exporter must persist batch boundaries before retrying. Identical identities and digests deduplicate; changed digests or overlapping ranges conflict.
72
+ The receiver accepts `CaptureSegmentV1` from the `/capture` export: immutable NDJSON batches of up to 256 contiguous observations. A segment is at most 1408 KiB; the outer JSON envelope is at most 2 MiB. Each observation payload is at most 1 MiB; native 0.2.5 splits larger bodies into ordered `bodyPart` records (up to 256) that readers reassemble. The exporter must persist batch boundaries before retrying. Identical identities and digests deduplicate; changed digests or overlapping ranges conflict.
73
73
 
74
74
  ## Reads and evidence
75
75
 
@@ -81,7 +81,7 @@ The receiver accepts `CaptureSegmentV1` from the `/capture` export: immutable ND
81
81
 
82
82
  For `capturePolicy: hook-body-v1`, decode each observation body from base64 and verify `contentBytes`/`contentSha256` before presenting it. Keep callbacks separate for raw evidence; their bytes may be partial JSON or UTF-8. `request_after_auth` is executed-request evidence, not the original client request. `executionModel`, `executionProtocol`, `selectedAuthId` and `selectedAuthIndex` are exact stock fields, not inferred provider or attempt identities. Header collections and opaque auth metadata are excluded. Model payload content is unredacted and must remain private.
83
83
 
84
- `projectCapturedPayloads` reconstructs selected-call content from bounded pages. Pass `stockHookChunks: true` only for the new hook-body policy; historical observations already contain canonical framing. Its 16 MiB replay limit is a read-operation bound, not a retention limit. Larger calls remain available through raw event pages. Summary checkpoints retain scalar state and private references for large unfinished frames; immutable segments retain text, reasoning, tools and native usage snapshots.
84
+ `projectCapturedPayloads` reconstructs selected-call content from bounded pages. For `hook-content-block-v1`, verify the whole record body/digest, then use the shared `/protocols` export `expandStockHookBlock(body, stockHookChunkLengths)` before replay. Never treat concatenated bare JSON objects as one frame. Deploy receiver 0.3.7 and compatible readers before the producer. Native 0.2.5 records with `bodyPart` are exact 1 MiB slices of one larger body: feed every validated observation, in sequence order, to `/protocols`' `BodyPartAssembler` and use the body it returns at the final part (it verifies order, offsets, length and SHA-256); `stockHookPieces(observation, body)` returns block callbacks or the single split callback. Bound `BodyPartAssembler(maxBytes)` to the read budget; in a 64 MiB Convex action, 8 MiB (`MAX_PROJECTED_SPLIT_BYTES`, which package projection uses) leaves room to decode the result. Keep gaps and incomplete capture explicit; an incomplete terminal may have no known provider outcome. Pass `stockHookChunks: true` only for raw stock hook pieces from either hook policy; historical observations already contain canonical framing. Its 16 MiB replay limit is a read-operation bound, not a retention limit. Larger calls remain available through raw event pages. Summary checkpoints retain scalar state and private references for large unfinished frames; immutable segments retain text, reasoning, tools and native usage snapshots.
85
85
 
86
86
  ## Provider, tokens and cost
87
87
 
@@ -0,0 +1,29 @@
1
+ /** Local durable ACK counts. They do not claim remote persistence or projection. */
2
+ export declare const contentHealthValidator: import("convex/values").VObject<{
3
+ missedCalls?: number | undefined;
4
+ observedBytes: number;
5
+ committedBytes: number;
6
+ lostBytes: number;
7
+ unconfirmedBytes: number;
8
+ unknownLosses: number;
9
+ streamCallbacks: number;
10
+ incompleteCalls: number;
11
+ capacityRejections: number;
12
+ retainedChargedBytes: number;
13
+ peakChargedBytes: number;
14
+ }, {
15
+ observedBytes: import("convex/values").VFloat64<number, "required">;
16
+ committedBytes: import("convex/values").VFloat64<number, "required">;
17
+ lostBytes: import("convex/values").VFloat64<number, "required">;
18
+ unconfirmedBytes: import("convex/values").VFloat64<number, "required">;
19
+ unknownLosses: import("convex/values").VFloat64<number, "required">;
20
+ /** Native 0.2.5: enrolled calls that could not start a scope. Optional for older senders. */
21
+ missedCalls: import("convex/values").VFloat64<number | undefined, "optional">;
22
+ streamCallbacks: import("convex/values").VFloat64<number, "required">;
23
+ incompleteCalls: import("convex/values").VFloat64<number, "required">;
24
+ capacityRejections: import("convex/values").VFloat64<number, "required">;
25
+ retainedChargedBytes: import("convex/values").VFloat64<number, "required">;
26
+ peakChargedBytes: import("convex/values").VFloat64<number, "required">;
27
+ }, "required", "observedBytes" | "committedBytes" | "lostBytes" | "unconfirmedBytes" | "unknownLosses" | "missedCalls" | "streamCallbacks" | "incompleteCalls" | "capacityRejections" | "retainedChargedBytes" | "peakChargedBytes">;
28
+ export declare function validContentHealth(value: unknown): boolean;
29
+ //# sourceMappingURL=content-health.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content-health.d.ts","sourceRoot":"","sources":["../../src/capture/content-health.ts"],"names":[],"mappings":"AAEA,oFAAoF;AACpF,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;IAMjC,6FAA6F;;;;;;;oOAO7F,CAAC;AAEH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAa1D"}
@@ -0,0 +1,29 @@
1
+ import { v } from "convex/values";
2
+ /** Local durable ACK counts. They do not claim remote persistence or projection. */
3
+ export const contentHealthValidator = v.object({
4
+ observedBytes: v.number(),
5
+ committedBytes: v.number(),
6
+ lostBytes: v.number(),
7
+ unconfirmedBytes: v.number(),
8
+ unknownLosses: v.number(),
9
+ /** Native 0.2.5: enrolled calls that could not start a scope. Optional for older senders. */
10
+ missedCalls: v.optional(v.number()),
11
+ streamCallbacks: v.number(),
12
+ incompleteCalls: v.number(),
13
+ capacityRejections: v.number(),
14
+ retainedChargedBytes: v.number(),
15
+ peakChargedBytes: v.number(),
16
+ });
17
+ export function validContentHealth(value) {
18
+ if (value === undefined)
19
+ return true;
20
+ if (value === null || typeof value !== "object" || Array.isArray(value))
21
+ return false;
22
+ const counters = value;
23
+ const fields = Object.keys(contentHealthValidator.fields);
24
+ return (Object.keys(counters).every((key) => fields.includes(key)) &&
25
+ fields.every((key) => key === "missedCalls" || key in counters) &&
26
+ Object.values(counters).every((n) => typeof n === "number" && Number.isSafeInteger(n) && n >= 0) &&
27
+ counters.retainedChargedBytes <= counters.peakChargedBytes);
28
+ }
29
+ //# sourceMappingURL=content-health.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"content-health.js","sourceRoot":"","sources":["../../src/capture/content-health.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAElC,oFAAoF;AACpF,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;IACzB,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;IAC1B,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE;IAC5B,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;IACzB,6FAA6F;IAC7F,WAAW,EAAE,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACnC,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;IAC3B,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE;IAC3B,kBAAkB,EAAE,CAAC,CAAC,MAAM,EAAE;IAC9B,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE;IAChC,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE;CAC7B,CAAC,CAAC;AAEH,MAAM,UAAU,kBAAkB,CAAC,KAAc;IAC/C,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,IAAI,CAAC;IACrC,IAAI,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IACtF,MAAM,QAAQ,GAAG,KAAgC,CAAC;IAClD,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC;IAC1D,OAAO,CACL,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAC1D,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,aAAa,IAAI,GAAG,IAAI,QAAQ,CAAC;QAC/D,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,KAAK,CAC3B,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,QAAQ,IAAI,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAClE;QACA,QAAQ,CAAC,oBAA+B,IAAK,QAAQ,CAAC,gBAA2B,CACnF,CAAC;AACJ,CAAC"}
@@ -1,12 +1,28 @@
1
1
  import type { ExactCorrelation } from "../model-call/index.js";
2
2
  export declare const MAX_ENVELOPE_BYTES: number;
3
3
  export declare const MAX_CONTENT_BYTES: number;
4
+ /** One split body spans at most the producer's 256 shared data-record slots. */
5
+ export declare const MAX_BODY_PARTS = 256;
6
+ /**
7
+ * Native 0.2.5 splits a body larger than `MAX_CONTENT_BYTES` into exact ordered
8
+ * parts with consecutive sequences. Every part but the last holds exactly
9
+ * `MAX_CONTENT_BYTES`; `offset` is `index * MAX_CONTENT_BYTES`. Concatenate in
10
+ * index order and verify `totalBytes`/`totalSha256` (see `/protocols`
11
+ * `BodyPartAssembler`). A split stream callback is one stock callback.
12
+ */
13
+ export type BodyPartV1 = {
14
+ index: number;
15
+ count: number;
16
+ offset: number;
17
+ totalBytes: number;
18
+ totalSha256: string;
19
+ };
4
20
  export type CaptureObservationV1 = {
5
21
  schemaVersion: 1;
6
22
  pluginVersion: string;
7
23
  /** Historical redacted observations retain their original policy label. */
8
24
  redactionVersion?: string;
9
- capturePolicy?: "hook-body-v1";
25
+ capturePolicy?: "hook-body-v1" | "hook-content-block-v1";
10
26
  destinationId: string;
11
27
  instanceId: string;
12
28
  pluginBootId: string;
@@ -30,7 +46,11 @@ export type CaptureObservationV1 = {
30
46
  stockChunkIndex?: number;
31
47
  body?: string;
32
48
  observedBodyBytes?: number;
33
- bodyFraming?: "stock_json_chunk" | "stock_sse_candidate" | "stock_hook_chunk";
49
+ bodyFraming?: "stock_json_chunk" | "stock_sse_candidate" | "stock_hook_chunk" | "stock_hook_block";
50
+ stockHookChunkLengths?: number[];
51
+ bodyPart?: BodyPartV1;
52
+ lostContentBytes?: number;
53
+ captureIncomplete?: boolean;
34
54
  contentSha256: string;
35
55
  contentBytes: number;
36
56
  completionOutcome?: string;
@@ -60,6 +80,9 @@ export declare function validateObservation(raw: Uint8Array, expected: {
60
80
  callId: string;
61
81
  digest: string;
62
82
  }>;
83
+ type PartPosition = Pick<CaptureObservationV1, "kind" | "sequence" | "bodyPart">;
84
+ /** True when `next` is the part that must follow `previous` in one split body. */
85
+ export declare function continuesBodyPart(previous: PartPosition, next: PartPosition): boolean;
63
86
  /** One immutable NDJSON segment batches observations: no per-token Convex writes. */
64
87
  export type CaptureSegmentV1 = {
65
88
  schemaVersion: 1;
@@ -86,4 +109,5 @@ export declare function validateSegment(raw: Uint8Array, expected: {
86
109
  identity: string;
87
110
  digest: string;
88
111
  }>;
112
+ export {};
89
113
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/capture/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/capture/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,8 @@
1
+ import { expandStockHookBlock } from "../protocols/stock-block.js";
1
2
  export const MAX_ENVELOPE_BYTES = 2 * 1024 * 1024;
2
3
  export const MAX_CONTENT_BYTES = 1024 * 1024;
4
+ /** One split body spans at most the producer's 256 shared data-record slots. */
5
+ export const MAX_BODY_PARTS = 256;
3
6
  const id = /^[a-zA-Z0-9][a-zA-Z0-9._:-]{0,199}$/;
4
7
  const routes = new Set([
5
8
  "GET /v1/models",
@@ -68,6 +71,10 @@ export async function validateObservation(raw, expected) {
68
71
  "correlation",
69
72
  "correlationConflicts",
70
73
  "stockChunkIndex",
74
+ "stockHookChunkLengths",
75
+ "bodyPart",
76
+ "lostContentBytes",
77
+ "captureIncomplete",
71
78
  "body",
72
79
  "observedBodyBytes",
73
80
  "bodyFraming",
@@ -158,31 +165,69 @@ export async function validateObservation(raw, expected) {
158
165
  if (o[field] !== undefined && (typeof o[field] !== "string" || o[field].length > 256))
159
166
  throw new Error("invalid optional metadata");
160
167
  }
161
- if (!o.pluginVersion || (!o.redactionVersion && o.capturePolicy !== "hook-body-v1"))
168
+ if (!o.pluginVersion ||
169
+ (!o.redactionVersion &&
170
+ o.capturePolicy !== "hook-body-v1" &&
171
+ o.capturePolicy !== "hook-content-block-v1"))
162
172
  throw new Error("capture versions required");
163
173
  if (o.capturePolicy !== undefined &&
164
- (o.capturePolicy !== "hook-body-v1" || o.redactionVersion !== undefined))
174
+ (!["hook-body-v1", "hook-content-block-v1"].includes(o.capturePolicy) ||
175
+ o.redactionVersion !== undefined))
165
176
  throw new Error("invalid capture policy");
166
177
  if (o.metadataOmissions !== undefined &&
167
178
  (!Array.isArray(o.metadataOmissions) ||
168
179
  o.metadataOmissions.length > 16 ||
169
180
  o.metadataOmissions.some((x) => typeof x !== "string" || x.length > 64)))
170
181
  throw new Error("invalid metadata omissions");
171
- if (o.error !== undefined && (typeof o.error !== "string" || o.error.length > 4096))
182
+ if (o.error !== undefined &&
183
+ (typeof o.error !== "string" ||
184
+ new TextEncoder().encode(o.error).length >
185
+ (o.capturePolicy === "hook-content-block-v1" ? MAX_CONTENT_BYTES : 4096)))
172
186
  throw new Error("invalid error detail");
173
187
  if ((o.kind === "request_after_auth" || o.bodyFraming === "stock_hook_chunk") &&
174
- o.capturePolicy !== "hook-body-v1")
188
+ o.capturePolicy !== "hook-body-v1" &&
189
+ o.capturePolicy !== "hook-content-block-v1")
175
190
  throw new Error("raw hook policy required");
176
191
  if (o.capturePolicy === "hook-body-v1" &&
177
192
  (o.bodyFromSequence !== undefined ||
178
193
  (o.kind === "stream_chunk" && o.bodyFraming !== "stock_hook_chunk")))
179
194
  throw new Error("raw hook provenance required");
180
195
  if (o.kind === "completion" &&
181
- !["succeeded", "failed", "canceled", "rejected"].includes(o.completionOutcome ?? ""))
196
+ !["succeeded", "failed", "canceled", "rejected"].includes(o.completionOutcome ?? "") &&
197
+ !(o.capturePolicy === "hook-content-block-v1" &&
198
+ o.captureIncomplete === true &&
199
+ o.completionOutcome === undefined &&
200
+ ["capture_shutdown_incomplete", "scope_expired"].includes(o.gap ?? "")))
182
201
  throw new Error("invalid completion outcome");
183
202
  if (o.bodyFraming !== undefined &&
184
- !["stock_json_chunk", "stock_sse_candidate", "stock_hook_chunk"].includes(o.bodyFraming))
203
+ !["stock_json_chunk", "stock_sse_candidate", "stock_hook_chunk", "stock_hook_block"].includes(o.bodyFraming))
185
204
  throw new Error("invalid body framing");
205
+ const body = decodeBody(o);
206
+ if (o.bodyPart !== undefined)
207
+ validateBodyPart(o, body);
208
+ if (o.bodyFraming === "stock_hook_block") {
209
+ if (o.capturePolicy !== "hook-content-block-v1" || o.kind !== "stream_chunk")
210
+ throw new Error("stock block policy required");
211
+ expandStockHookBlock(body, o.stockHookChunkLengths ?? []);
212
+ }
213
+ else if (o.stockHookChunkLengths !== undefined) {
214
+ throw new Error("unexpected stock block lengths");
215
+ }
216
+ if (o.capturePolicy === "hook-content-block-v1" &&
217
+ (o.bodyFromSequence !== undefined ||
218
+ (o.kind === "stream_chunk" && o.bodyFraming !== "stock_hook_block")))
219
+ throw new Error("content block provenance required");
220
+ if (o.lostContentBytes !== undefined &&
221
+ (o.capturePolicy !== "hook-content-block-v1" ||
222
+ !Number.isSafeInteger(o.lostContentBytes) ||
223
+ o.lostContentBytes < 0 ||
224
+ (o.lostContentBytes > 0 && o.captureIncomplete !== true)))
225
+ throw new Error("invalid content loss count");
226
+ if (o.captureIncomplete !== undefined &&
227
+ (o.capturePolicy !== "hook-content-block-v1" ||
228
+ typeof o.captureIncomplete !== "boolean" ||
229
+ (o.captureIncomplete && !o.gap)))
230
+ throw new Error("invalid incomplete capture");
186
231
  if (o.observedBodyBytes !== undefined &&
187
232
  (!Number.isSafeInteger(o.observedBodyBytes) ||
188
233
  o.observedBodyBytes < 0 ||
@@ -195,7 +240,6 @@ export async function validateObservation(raw, expected) {
195
240
  o.observedErrorBytes < 0 ||
196
241
  o.observedErrorBytes > MAX_ENVELOPE_BYTES))
197
242
  throw new Error("invalid observed diagnostic size");
198
- const body = decodeBody(o);
199
243
  if ((await sha256(body)) !== o.contentSha256)
200
244
  throw new Error("content digest mismatch");
201
245
  return {
@@ -206,6 +250,45 @@ export async function validateObservation(raw, expected) {
206
250
  digest: await sha256(raw),
207
251
  };
208
252
  }
253
+ const partKinds = new Set(["request", "request_after_auth", "response", "stream_chunk"]);
254
+ function validateBodyPart(o, body) {
255
+ const part = o.bodyPart;
256
+ const keys = ["index", "count", "offset", "totalBytes", "totalSha256"];
257
+ if (!part ||
258
+ typeof part !== "object" ||
259
+ Array.isArray(part) ||
260
+ Object.keys(part).length !== keys.length ||
261
+ !keys.every((key) => key in part))
262
+ throw new Error("invalid body part");
263
+ const { index, count, offset, totalBytes, totalSha256 } = part;
264
+ if (o.capturePolicy !== "hook-content-block-v1" ||
265
+ !partKinds.has(o.kind) ||
266
+ ![index, count, offset, totalBytes].every(Number.isSafeInteger) ||
267
+ count < 2 ||
268
+ count > MAX_BODY_PARTS ||
269
+ index < 0 ||
270
+ index >= count ||
271
+ offset !== index * MAX_CONTENT_BYTES ||
272
+ totalBytes <= (count - 1) * MAX_CONTENT_BYTES ||
273
+ totalBytes > count * MAX_CONTENT_BYTES ||
274
+ body.byteLength !== Math.min(MAX_CONTENT_BYTES, totalBytes - offset) ||
275
+ typeof totalSha256 !== "string" ||
276
+ !/^[a-f0-9]{64}$/.test(totalSha256))
277
+ throw new Error("invalid body part");
278
+ }
279
+ /** True when `next` is the part that must follow `previous` in one split body. */
280
+ export function continuesBodyPart(previous, next) {
281
+ const a = previous.bodyPart;
282
+ const b = next.bodyPart;
283
+ return (!!a &&
284
+ !!b &&
285
+ next.kind === previous.kind &&
286
+ next.sequence === previous.sequence + 1 &&
287
+ b.index === a.index + 1 &&
288
+ b.count === a.count &&
289
+ b.totalBytes === a.totalBytes &&
290
+ b.totalSha256 === a.totalSha256);
291
+ }
209
292
  export const MAX_SEGMENT_BYTES = 1408 * 1024;
210
293
  export async function validateSegment(raw, expected) {
211
294
  if (raw.length > MAX_ENVELOPE_BYTES)
@@ -248,6 +331,15 @@ export async function validateSegment(raw, expected) {
248
331
  o.configRevision !== first.configRevision ||
249
332
  (o.kind === "completion" && index !== observations.length - 1)))
250
333
  throw new Error("inconsistent segment lifecycle");
334
+ // Parts of one split body are consecutive; neighbors within a segment must chain.
335
+ for (const [index, o] of observations.entries()) {
336
+ const previous = observations[index - 1];
337
+ if (!previous)
338
+ continue;
339
+ const open = previous.bodyPart && previous.bodyPart.index < previous.bodyPart.count - 1;
340
+ if ((open || (o.bodyPart && o.bodyPart.index > 0)) && !continuesBodyPart(previous, o))
341
+ throw new Error("body part order mismatch");
342
+ }
251
343
  const callId = await callIdentity(first);
252
344
  const identity = await sha256(new TextEncoder().encode(JSON.stringify([
253
345
  envelope.destinationId,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/capture/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/capture/index.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,gBAAgB,EAChB,gBAAgB,EAChB,kBAAkB,EAClB,eAAe,EACf,YAAY,EACb,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,qCAAqC,CAAC;AACxE,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE/D,OAAO,EAEL,KAAK,WAAW,EAEjB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AAEhE,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,KAAK,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACjF,MAAM,MAAM,8BAA8B,GAAG,YAAY,CAAC;AAC1D,KAAK,WAAW,GAAG,IAAI,CACnB,eAAe,CAAC,gBAAgB,CAAC,GACjC,kBAAkB,CAAC,gBAAgB,CAAC,GACpC,gBAAgB,CAAC,gBAAgB,CAAC,EACpC,UAAU,CACX,CAAC;AACF,KAAK,aAAa,GAAG,IAAI,CAAC,gBAAgB,CAAC,gBAAgB,CAAC,EAAE,aAAa,GAAG,UAAU,CAAC,CAAC;AAC1F,qBAAa,qBAAqB;IACpB,QAAQ,CAAC,SAAS,EAAE,YAAY;gBAAvB,SAAS,EAAE,YAAY;IAC5C,mBAAmB,CACjB,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC;;;;;;;;IAIpE,wBAAwB,CACtB,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,GAAG;QACnE,WAAW,EAAE,WAAW,CACtB,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,aAAa,CAAC,CAC5E,CAAC;KACH;;;;;;;;IAIH,OAAO,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;;;;;;;;;;;;;;;;IAGzE,iBAAiB,CACf,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE,YAAY,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC,mBAAmB,CAAC,CAAC;;;;;;;;;;;;;;;;;;;;;IAIlE,aAAa,CACX,GAAG,EAAE,WAAW,EAChB,IAAI,EAAE;QAAE,aAAa,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,YAAY,EAAE,MAAM,CAAA;KAAE;;;;;;;;;IAI3E,kBAAkB,CAAC,GAAG,EAAE,WAAW,EAAE,IAAI,EAAE;QAAE,aAAa,EAAE,MAAM,CAAA;KAAE;;;;;;;;;;;;;;;;;;CAGrE;AACD,wBAAgB,WAAW,CACzB,CAAC,EAAE,oBAAoB,EACvB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,GACjB,WAAW,CAmDb;AACD,MAAM,MAAM,qBAAqB,GAAG;IAClC,MAAM,EAAE,qBAAqB,CAAC;IAC9B,aAAa,EAAE,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,KAAK,GAAG,MAAM,CAAC;IAC5B,WAAW,EAAE,SAAS,MAAM,EAAE,CAAC;IAC/B,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;IAC1B,OAAO,EAAE,qBAAqB,CAAC;IAC/B,kBAAkB,EAAE,CAAC,GAAG,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3E,CAAC;AAOF,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CA4BlF;AACD,wBAAsB,4BAA4B,CAChD,GAAG,EAAE,aAAa,EAClB,OAAO,EAAE,OAAO,EAChB,OAAO,EAAE,qBAAqB,GAC7B,OAAO,CAAC,QAAQ,CAAC,CA0JnB;AACD,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
package/dist/client.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { validContentHealth } from "./capture/content-health.js";
1
2
  import { validCapacity } from "./capture/capacity.js";
2
3
  import { MAX_ENVELOPE_BYTES, validateSegment, sha256 } from "./capture/index.js";
3
4
  import { providerIdentity, } from "./model-call/index.js";
@@ -167,8 +168,10 @@ export async function handleCliproxyCaptureRequest(ctx, request, options) {
167
168
  expiredScopesTotal: candidate.expiredScopesTotal,
168
169
  activeCalls: candidate.activeCalls,
169
170
  ...(candidate.capacity === undefined ? {} : { capacity: candidate.capacity }),
171
+ ...(candidate.content === undefined ? {} : { content: candidate.content }),
170
172
  };
171
173
  if (!validCapacity(candidate.capacity) ||
174
+ !validContentHealth(candidate.content) ||
172
175
  typeof args.startedAt !== "string" ||
173
176
  typeof args.observedAt !== "string" ||
174
177
  !Number.isFinite(Date.parse(args.startedAt)) ||
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAUtD,OAAO,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AACjF,OAAO,EACL,gBAAgB,GAGjB,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EAAE,QAAQ,EAAE,gBAAgB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAClF,cAAc,uBAAuB,CAAC;AACtC,OAAO,EAAE,eAAe,EAA8B,MAAM,oBAAoB,CAAC;AASjF,MAAM,OAAO,qBAAqB;IACX;IAArB,YAAqB,SAAuB;QAAvB,cAAS,GAAT,SAAS,CAAc;IAAG,CAAC;IAChD,mBAAmB,CACjB,GAAgB,EAChB,IAAkE;QAElE,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,mBAAmB,EAAE,IAAI,CAAC,CAAC;IACxE,CAAC;IACD,wBAAwB,CACtB,GAAgB,EAChB,IAIC;QAED,OAAO,IAAI,CAAC,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC7C,CAAC;IACD,OAAO,CAAC,GAAgB,EAAE,IAA+C;QACvE,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC5D,CAAC;IACD,iBAAiB,CACf,GAAgB,EAChB,IAAgE;QAEhE,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;IACtE,CAAC;IACD,aAAa,CACX,GAAgB,EAChB,IAAyE;QAEzE,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,EAAE,IAAI,CAAC,CAAC;IAClE,CAAC;IACD,kBAAkB,CAAC,GAAgB,EAAE,IAA+B;QAClE,OAAO,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAC;IACvE,CAAC;CACF;AACD,MAAM,UAAU,WAAW,CACzB,CAAuB,EACvB,MAAc,EACd,UAAkB;IAElB,MAAM,YAAY,GAAG,CAAC,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC;IACrD,OAAO;QACL,aAAa,EAAE,CAAC;QAChB,MAAM,EAAE,UAAU;QAClB,MAAM;QACN,gBAAgB,EAAE,EAAE;QACpB,OAAO,EAAE,UAAU;QACnB,QAAQ,EAAE,SAAS;QACnB,KAAK,EAAE,CAAC,CAAC,KAAK;QACd,cAAc,EAAE,CAAC,CAAC,cAAc;QAChC,aAAa,EAAE,CAAC,CAAC,aAAa;QAC9B,UAAU,EAAE,CAAC,CAAC,UAAU;QACxB,YAAY,EAAE,CAAC,CAAC,YAAY;QAC5B,WAAW,EAAE,CAAC,CAAC,SAAS;QACxB,aAAa,EAAE,CAAC,CAAC,aAAa;QAC9B,OAAO,EAAE,CAAC,CAAC,WAAW,EAAE,OAAO;QAC/B,YAAY;QACZ,GAAG,gBAAgB,CAAC,EAAE,YAAY,EAAE,CAAC;QACrC,SAAS,EACP,CAAC,CAAC,KAAK,KAAK,gBAAgB;YAC1B,CAAC,CAAC,WAAW;YACb,CAAC,CAAC,CAAC,CAAC,KAAK,KAAK,gCAAgC;gBAC5C,CAAC,CAAC,aAAa;gBACf,CAAC,CAAC,YAAY;QACpB,cAAc,EAAE,gBAAgB,CAAC,CAAC,CAAC,KAAK,CAAC;QACzC,KAAK,EAAE,aAAa;QACpB,YAAY,EAAE,iBAAiB;QAC/B,iBAAiB,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;QACzC,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,EAAE;QAChC,oBAAoB,EAAE,CAAC,CAAC,oBAAoB,IAAI,EAAE;QAClD,KAAK,EAAE,EAAE;QACT,IAAI,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE;QACzB,cAAc,EAAE,SAAS;QACzB,aAAa,EAAE,aAAa;QAC5B,OAAO,EAAE;YACP,GAAG,EAAE,SAAS;YACd,UAAU,EAAE,SAAS;YACrB,KAAK,EAAE,aAAa;YACpB,OAAO,EAAE,aAAa;YACtB,wBAAwB,EAAE,CAAC;YAC3B,wBAAwB,EAAE,CAAC;YAC3B,IAAI,EAAE,EAAE;YACR,aAAa,EAAE,cAAc;YAC7B,aAAa,EAAE,CAAC,CAAC,aAAa;YAC9B,gBAAgB,EAAE,CAAC,CAAC,gBAAgB;YACpC,aAAa,EAAE,CAAC,CAAC,aAAa;YAC9B,cAAc,EAAE,CAAC,CAAC,UAAU;SAC7B;QACD,UAAU;KACX,CAAC;AACJ,CAAC;AAWD,SAAS,YAAY,CAAC,SAAiB,EAAE,QAAgB;IACvD,IAAI,IAAI,GAAG,SAAS,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC;IAC9C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE;QAClE,IAAI,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACzE,OAAO,IAAI,KAAK,CAAC,CAAC;AACpB,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAAC,OAAgB;IAC3D,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,GAAG,kBAAkB;QACpE,MAAM,IAAI,UAAU,CAAC,gBAAgB,CAAC,CAAC;IACzC,MAAM,MAAM,GAAG,OAAO,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;IACzC,IAAI,CAAC,MAAM;QAAE,OAAO,IAAI,UAAU,EAAE,CAAC;IACrC,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,MAAM,MAAM,GAAiB,EAAE,CAAC;IAChC,IAAI,CAAC;QACH,OAAO,IAAI,EAAE,CAAC;YACZ,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YAC5C,IAAI,IAAI;gBAAE,MAAM;YAChB,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC;YACzB,IAAI,IAAI,GAAG,kBAAkB,EAAE,CAAC;gBAC9B,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;gBACtB,MAAM,IAAI,UAAU,CAAC,gBAAgB,CAAC,CAAC;YACzC,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;YAAS,CAAC;QACT,MAAM,CAAC,WAAW,EAAE,CAAC;IACvB,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC;IACjC,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACvB,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC;IACzB,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AACD,MAAM,CAAC,KAAK,UAAU,4BAA4B,CAChD,GAAkB,EAClB,OAAgB,EAChB,OAA8B;IAE9B,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM;QAAE,OAAO,IAAI,QAAQ,CAAC,oBAAoB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1F,IAAI,OAAO,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,EAAE,CAAC;QAC1E,OAAO,IAAI,QAAQ,CAAC,qBAAqB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAC9D,MAAM,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,IAAI,EAAE,CAAC;IAC1D,IACE,CAAC,oBAAoB,CAAC,IAAI,CAAC,MAAM,CAAC;QAClC,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,YAAY,CAAC,MAAM,EAAE,UAAU,KAAK,EAAE,CAAC,CAAC;QAExE,OAAO,IAAI,QAAQ,CAAC,cAAc,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IACvD,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,KAAK,kBAAkB;QACnF,OAAO,IAAI,QAAQ,CAAC,0BAA0B,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IACnE,IAAI,MAAmD,CAAC;IACxD,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,MAAM,sBAAsB,CAAC,OAAO,CAAC,CAAC;QAClD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,WAAW,CAAC,OAAO,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QACpF,IAAI,SAAS,EAAE,SAAS,KAAK,QAAQ,EAAE,CAAC;YACtC,IACE,SAAS,CAAC,aAAa,KAAK,CAAC;gBAC7B,SAAS,CAAC,aAAa,KAAK,OAAO,CAAC,aAAa;gBACjD,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC;gBAEnD,OAAO,IAAI,QAAQ,CAAC,gBAAgB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;YACzD,OAAO,QAAQ,CAAC,IAAI,CAAC;gBACnB,KAAK,EAAE,IAAI;gBACX,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,UAAU,EAAE,SAAS,CAAC,UAAU;gBAChC,aAAa,EAAE,CAAC;aACjB,CAAC,CAAC;QACL,CAAC;QACD,IAAI,SAAS,EAAE,SAAS,KAAK,eAAe,EAAE,CAAC;YAC7C,IACE,GAAG,CAAC,MAAM,GAAG,KAAK;gBAClB,SAAS,CAAC,aAAa,KAAK,CAAC;gBAC7B,SAAS,CAAC,aAAa,KAAK,OAAO,CAAC,aAAa;gBACjD,CAAC,OAAO,CAAC,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,UAAU,CAAC;gBACnD,OAAO,SAAS,CAAC,YAAY,KAAK,QAAQ;gBAC1C,CAAC,qCAAqC,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC;gBACnE,SAAS,CAAC,iBAAiB,KAAK,6BAA6B;gBAE7D,OAAO,IAAI,QAAQ,CAAC,sBAAsB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;YAC/D,MAAM,IAAI,GAAG;gBACX,aAAa,EAAE,OAAO,CAAC,aAAa;gBACpC,UAAU,EAAE,SAAS,CAAC,UAAU;gBAChC,YAAY,EAAE,SAAS,CAAC,YAAY;gBACpC,SAAS,EAAE,SAAS,CAAC,SAAS;gBAC9B,UAAU,EAAE,SAAS,CAAC,UAAU;gBAChC,iBAAiB,EAAE,SAAS,CAAC,iBAAiB;gBAC9C,wBAAwB,EAAE,SAAS,CAAC,wBAAwB;gBAC5D,4BAA4B,EAAE,SAAS,CAAC,4BAA4B;gBACpE,mBAAmB,EAAE,SAAS,CAAC,mBAAmB;gBAClD,kBAAkB,EAAE,SAAS,CAAC,kBAAkB;gBAChD,WAAW,EAAE,SAAS,CAAC,WAAW;gBAClC,GAAG,CAAC,SAAS,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,SAAS,CAAC,QAAQ,EAAE,CAAC;aAC9E,CAAC;YACF,IACE,CAAC,aAAa,CAAC,SAAS,CAAC,QAAQ,CAAC;gBAClC,OAAO,IAAI,CAAC,SAAS,KAAK,QAAQ;gBAClC,OAAO,IAAI,CAAC,UAAU,KAAK,QAAQ;gBACnC,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;gBAC5C,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;gBAC7C,CAAC;oBACC,IAAI,CAAC,iBAAiB;oBACtB,IAAI,CAAC,wBAAwB;oBAC7B,IAAI,CAAC,4BAA4B;oBACjC,IAAI,CAAC,mBAAmB;oBACxB,IAAI,CAAC,kBAAkB;oBACvB,IAAI,CAAC,WAAW;iBACjB,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;gBAC7D,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,GAAG,IAAI;gBAEhE,OAAO,IAAI,QAAQ,CAAC,uBAAuB,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;YAChE,wEAAwE;YACxE,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;gBACzF,OAAO,QAAQ,CAAC,IAAI,CAAC;oBACnB,GAAG,MAAM;oBACT,MAAM,EAAE,MAAM,MAAM,CAAC,GAAG,CAAC;oBACzB,aAAa,EAAE,OAAO,CAAC,aAAa;oBACpC,YAAY,EAAE,OAAO,CAAC,YAAY;iBACnC,CAAC,CAAC;YACL,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,IAAI,QAAQ,CAAC,iCAAiC,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;QACD,MAAM,GAAG,MAAM,eAAe,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,IAAI,QAAQ,CAAC,yBAAyB,EAAE;YAC7C,MAAM,EAAE,KAAK,YAAY,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG;SAChD,CAAC,CAAC;IACL,CAAC;IACD,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,YAAY,EAAE,GAAG,MAAM,CAAC;IAC7E,MAAM,KAAK,GAAG,YAAY,CAAC,CAAC,CAAE,CAAC;IAC/B,MAAM,SAAS,GAA4B;QACzC,GAAG,EAAE,6BAA6B,QAAQ,CAAC,aAAa,IAAI,QAAQ,CAAC,UAAU,IAAI,MAAM,IAAI,QAAQ,CAAC,aAAa,IAAI,MAAM,SAAS;QACtI,MAAM,EAAE,MAAM;QACd,UAAU,EAAE,OAAO,CAAC,UAAU;QAC9B,WAAW,EAAE,sBAAsB;KACpC,CAAC;IACF,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QAC9C,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC;QAC5C,MAAM,QAAQ,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC;QACnE,MAAM,OAAO,GAAG,MAAM,GAAG,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,KAAK,EAAE;YAC3E,aAAa,EAAE,QAAQ,CAAC,aAAa;YACrC,UAAU,EAAE,QAAQ,CAAC,UAAU;YAC/B,YAAY,EAAE,QAAQ,CAAC,YAAY;YACnC,WAAW,EAAE,QAAQ,CAAC,SAAS;YAC/B,MAAM;YACN,QAAQ,EAAE,QAAQ,CAAC,aAAa;YAChC,eAAe,EAAE,QAAQ,CAAC,eAAe;YACzC,gBAAgB,EAAE,QAAQ,EAAE,QAAQ;YACpC,QAAQ;YACR,MAAM;YACN,SAAS;YACT,WAAW,EAAE,IAAI,CAAC,SAAS,CAAC;gBAC1B,GAAG,WAAW,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC;gBACzC,YAAY,EAAE,OAAO,CAAC,YAAY;gBAClC,WAAW,EAAE,OAAO,CAAC,WAAW;aACjC,CAAC;YACF,UAAU,EAAE,KAAK,CAAC,UAAU;YAC5B,WAAW,EAAE;gBACX,SAAS,EAAE,WAAW,CAAC,SAAS;gBAChC,KAAK,EAAE,WAAW,CAAC,KAAK;gBACxB,KAAK,EAAE,WAAW,CAAC,KAAK;gBACxB,eAAe,EAAE,WAAW,CAAC,eAAe;gBAC5C,iBAAiB,EAAE,WAAW,CAAC,iBAAiB;aACjD;SACF,CAAC,CAAC;QACH,uFAAuF;QACvF,MAAM,OAAO,CAAC,kBAAkB,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QAC9C,OAAO,QAAQ,CAAC,IAAI,CAAC;YACnB,GAAG,OAAO;YACV,aAAa,EAAE,OAAO,CAAC,aAAa;YACpC,YAAY,EAAE,OAAO,CAAC,YAAY;YAClC,YAAY,EAAE,IAAI;YAClB,mBAAmB,EAAE,KAAK;SAC3B,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC;QAC5D,OAAO,IAAI,QAAQ,CACjB,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAC,IAAI,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAC;YAC1F,CAAC,CAAC,2BAA2B;YAC7B,CAAC,CAAC,iCAAiC,EACrC;YACE,MAAM,EACJ,OAAO,CAAC,QAAQ,CAAC,yBAAyB,CAAC;gBAC3C,OAAO,CAAC,QAAQ,CAAC,2BAA2B,CAAC;gBAC3C,CAAC,CAAC,GAAG;gBACL,CAAC,CAAC,GAAG;SACV,CACF,CAAC;IACJ,CAAC;AACH,CAAC;AACD,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/component/_generated/api.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,KAAK,OAAO,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EACV,cAAc,EACd,SAAS,EACT,iBAAiB,EAClB,MAAM,eAAe,CAAC;AAGvB,QAAA,MAAM,OAAO,EAAE,cAAc,CAAC;IAC5B,MAAM,EAAE,OAAO,MAAM,CAAC;IACtB,OAAO,EAAE,OAAO,OAAO,CAAC;CACzB,CAAiB,CAAC;AAEnB,eAAO,MAAM,GAAG,EAAE,SAAS,CAAC,OAAO,OAAO,EAAE,iBAAiB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAiB,CAAC;AAC9F,eAAO,MAAM,QAAQ,EAAE,SAAS,CAAC,OAAO,OAAO,EAAE,iBAAiB,CAAC,GAAG,EAAE,UAAU,CAAC,CAAiB,CAAC;AACrG,eAAO,MAAM,UAAU,EAAqC,EAAE,CAAC"}
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../../src/component/_generated/api.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,KAAK,OAAO,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAE,cAAc,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAGlF,QAAA,MAAM,OAAO,EAAE,cAAc,CAAC;IAC5B,MAAM,EAAE,OAAO,MAAM,CAAC;IACtB,OAAO,EAAE,OAAO,OAAO,CAAC;CACzB,CAAiB,CAAC;AAEnB,eAAO,MAAM,GAAG,EAAE,SAAS,CAAC,OAAO,OAAO,EAAE,iBAAiB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAiB,CAAC;AAC9F,eAAO,MAAM,QAAQ,EAAE,SAAS,CAC9B,OAAO,OAAO,EACd,iBAAiB,CAAC,GAAG,EAAE,UAAU,CAAC,CACnB,CAAC;AAClB,eAAO,MAAM,UAAU,EAAqC,EAAE,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/component/_generated/api.ts"],"names":[],"mappings":"AAAA,oBAAoB;AASpB,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAE1D,MAAM,OAAO,GAGR,MAAa,CAAC;AAEnB,MAAM,CAAC,MAAM,GAAG,GAAgE,MAAa,CAAC;AAC9F,MAAM,CAAC,MAAM,QAAQ,GAAkE,MAAa,CAAC;AACrG,MAAM,CAAC,MAAM,UAAU,GAAG,iBAAiB,EAAmB,CAAC"}
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../../src/component/_generated/api.ts"],"names":[],"mappings":"AAAA,oBAAoB;AAKpB,OAAO,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,eAAe,CAAC;AAE1D,MAAM,OAAO,GAGR,MAAa,CAAC;AAEnB,MAAM,CAAC,MAAM,GAAG,GAAgE,MAAa,CAAC;AAC9F,MAAM,CAAC,MAAM,QAAQ,GAGjB,MAAa,CAAC;AAClB,MAAM,CAAC,MAAM,UAAU,GAAG,iBAAiB,EAAmB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../src/component/_generated/component.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC5F,OAAO,KAAK,KAAK,MAAM,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,KAAK,OAAO,MAAM,eAAe,CAAC;AAE9C,KAAK,cAAc,CAAC,UAAU,EAAE,IAAI,SAAS,MAAM,GAAG,SAAS,IAC7D,UAAU,SAAS,eAAe,CAAC,GAAG,EAAE,MAAM,IAAI,EAAE,MAAM,OAAO,CAAC,GAC9D,iBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,GACpE,KAAK,CAAC;AAEZ,KAAK,aAAa,CAAC,MAAM,EAAE,IAAI,SAAS,MAAM,GAAG,SAAS,IAAI;KAC3D,GAAG,IAAI,MAAM,MAAM,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,eAAe,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC,GAC3E,GAAG,GACH,KAAK,GAAG,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC;CAC9C,CAAC;AAEF,KAAK,iBAAiB,CAAC,UAAU,EAAE,IAAI,SAAS,MAAM,GAAG,SAAS,IAChE,UAAU,SAAS,kBAAkB,CAAC,GAAG,EAAE,MAAM,IAAI,EAAE,MAAM,OAAO,CAAC,GACjE,iBAAiB,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,GACvE,KAAK,CAAC;AAEZ,KAAK,eAAe,CAAC,MAAM,EAAE,IAAI,SAAS,MAAM,GAAG,SAAS,IAAI;KAC7D,GAAG,IAAI,MAAM,MAAM,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,kBAAkB,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC,GAC9E,GAAG,GACH,KAAK,GAAG,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC;CACjD,CAAC;AAEF,MAAM,MAAM,YAAY,CAAC,IAAI,SAAS,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,IAAI;IAC/E,MAAM,EAAE,eAAe,CAAC,OAAO,MAAM,EAAE,IAAI,CAAC,CAAC;IAC7C,OAAO,EAAE,aAAa,CAAC,OAAO,OAAO,EAAE,IAAI,CAAC,CAAC;CAC9C,CAAC"}
1
+ {"version":3,"file":"component.d.ts","sourceRoot":"","sources":["../../../src/component/_generated/component.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,iBAAiB,EAAE,kBAAkB,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC5F,OAAO,KAAK,KAAK,MAAM,MAAM,cAAc,CAAC;AAC5C,OAAO,KAAK,KAAK,OAAO,MAAM,eAAe,CAAC;AAE9C,KAAK,cAAc,CAAC,UAAU,EAAE,IAAI,SAAS,MAAM,GAAG,SAAS,IAC7D,UAAU,SAAS,eAAe,CAAC,GAAG,EAAE,MAAM,IAAI,EAAE,MAAM,OAAO,CAAC,GAC9D,iBAAiB,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,GACpE,KAAK,CAAC;AAEZ,KAAK,aAAa,CAAC,MAAM,EAAE,IAAI,SAAS,MAAM,GAAG,SAAS,IAAI;KAE1D,GAAG,IAAI,MAAM,MAAM,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,eAAe,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK,GAC3F,cAAc,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC;CACrC,CAAC;AAEF,KAAK,iBAAiB,CAAC,UAAU,EAAE,IAAI,SAAS,MAAM,GAAG,SAAS,IAChE,UAAU,SAAS,kBAAkB,CAAC,GAAG,EAAE,MAAM,IAAI,EAAE,MAAM,OAAO,CAAC,GACjE,iBAAiB,CAAC,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,OAAO,CAAC,OAAO,CAAC,EAAE,IAAI,CAAC,GACvE,KAAK,CAAC;AAEZ,KAAK,eAAe,CAAC,MAAM,EAAE,IAAI,SAAS,MAAM,GAAG,SAAS,IAAI;KAE5D,GAAG,IAAI,MAAM,MAAM,IAAI,MAAM,CAAC,GAAG,CAAC,SAAS,kBAAkB,CAAC,QAAQ,EAAE,GAAG,EAAE,GAAG,CAAC,GAAG,GAAG,GAAG,KAAK,GAC9F,iBAAiB,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,IAAI,CAAC;CACxC,CAAC;AAEF,MAAM,MAAM,YAAY,CAAC,IAAI,SAAS,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,IAAI;IAC/E,MAAM,EAAE,eAAe,CAAC,OAAO,MAAM,EAAE,IAAI,CAAC,CAAC;IAC7C,OAAO,EAAE,aAAa,CAAC,OAAO,OAAO,EAAE,IAAI,CAAC,CAAC;CAC9C,CAAC"}
@@ -58,6 +58,19 @@ export declare const recordHealth: import("convex/server").RegisteredMutation<"p
58
58
  acknowledgedEvents: number;
59
59
  observedAt: string;
60
60
  } | undefined;
61
+ content?: {
62
+ missedCalls?: number | undefined;
63
+ observedBytes: number;
64
+ committedBytes: number;
65
+ lostBytes: number;
66
+ unconfirmedBytes: number;
67
+ unknownLosses: number;
68
+ streamCallbacks: number;
69
+ incompleteCalls: number;
70
+ capacityRejections: number;
71
+ retainedChargedBytes: number;
72
+ peakChargedBytes: number;
73
+ } | undefined;
61
74
  observedAt: string;
62
75
  destinationId: string;
63
76
  instanceId: string;
@@ -1 +1 @@
1
- {"version":3,"file":"ingest.d.ts","sourceRoot":"","sources":["../../src/component/ingest.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgLhB,CAAC;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;GAmD3B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;iBAclC,CAAC;AAEH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;GA0EvB,CAAC"}
1
+ {"version":3,"file":"ingest.d.ts","sourceRoot":"","sources":["../../src/component/ingest.ts"],"names":[],"mappings":"AAWA,eAAO,MAAM,KAAK;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgLhB,CAAC;AACH,eAAO,MAAM,gBAAgB;;;;;;;;;;GAmD3B,CAAC;AAEH,eAAO,MAAM,uBAAuB;;;;iBAclC,CAAC;AAEH,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4EvB,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { contentHealthValidator, validContentHealth } from "../capture/content-health.js";
1
2
  import { capacityValidator, validCapacity } from "../capture/capacity.js";
2
3
  import { v } from "convex/values";
3
4
  import { mutation } from "./_generated/server.js";
@@ -250,11 +251,14 @@ export const recordHealth = mutation({
250
251
  expiredScopesTotal: v.number(),
251
252
  activeCalls: v.number(),
252
253
  capacity: v.optional(capacityValidator),
254
+ content: v.optional(contentHealthValidator),
253
255
  },
254
256
  handler: async (ctx, args) => {
255
257
  bounded(JSON.stringify(args), 4096);
256
258
  if (!validCapacity(args.capacity))
257
259
  throw new Error("invalid capture capacity");
260
+ if (!validContentHealth(args.content))
261
+ throw new Error("invalid content health");
258
262
  const at = Date.parse(args.observedAt);
259
263
  if (!Number.isFinite(at) || !Number.isFinite(Date.parse(args.startedAt)))
260
264
  throw new Error("invalid health time");