@rivetkit/traces 0.0.0-pr.4949.4add738 → 0.0.0-pr.4949.5f0637c

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.
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/nathan/r7/rivetkit-typescript/packages/traces/dist/tsup/chunk-AQ2YFUDS.cjs","../../src/otlp.ts","../../src/read-range.ts"],"names":["decodeCbor"],"mappings":"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","file":"/home/nathan/r7/rivetkit-typescript/packages/traces/dist/tsup/chunk-AQ2YFUDS.cjs","sourcesContent":[null,"import { decode as decodeCbor } from \"cbor-x\";\n\nexport interface OtlpAnyValue {\n\tstringValue?: string;\n\tboolValue?: boolean;\n\tintValue?: string;\n\tdoubleValue?: number;\n\tbytesValue?: string;\n\tarrayValue?: { values: OtlpAnyValue[] };\n\tkvlistValue?: { values: OtlpKeyValue[] };\n}\n\nexport interface OtlpKeyValue {\n\tkey: string;\n\tvalue?: OtlpAnyValue;\n}\n\nexport interface OtlpSpanStatus {\n\tcode: number;\n\tmessage?: string;\n}\n\nexport interface OtlpSpanEvent {\n\ttimeUnixNano: string;\n\tname: string;\n\tattributes?: OtlpKeyValue[];\n\tdroppedAttributesCount?: number;\n}\n\nexport interface OtlpSpanLink {\n\ttraceId: string;\n\tspanId: string;\n\ttraceState?: string;\n\tattributes?: OtlpKeyValue[];\n\tdroppedAttributesCount?: number;\n}\n\nexport interface OtlpSpan {\n\ttraceId: string;\n\tspanId: string;\n\tparentSpanId?: string;\n\tname: string;\n\tkind?: number;\n\tstartTimeUnixNano: string;\n\tendTimeUnixNano?: string;\n\tattributes?: OtlpKeyValue[];\n\tdroppedAttributesCount?: number;\n\tevents?: OtlpSpanEvent[];\n\tdroppedEventsCount?: number;\n\tlinks?: OtlpSpanLink[];\n\tdroppedLinksCount?: number;\n\tstatus?: OtlpSpanStatus;\n\ttraceState?: string;\n\tflags?: number;\n}\n\nexport interface OtlpInstrumentationScope {\n\tname: string;\n\tversion?: string;\n\tattributes?: OtlpKeyValue[];\n\tdroppedAttributesCount?: number;\n}\n\nexport interface OtlpScopeSpans {\n\tscope?: OtlpInstrumentationScope;\n\tspans: OtlpSpan[];\n\tschemaUrl?: string;\n}\n\nexport interface OtlpResource {\n\tattributes?: OtlpKeyValue[];\n\tdroppedAttributesCount?: number;\n}\n\nexport interface OtlpResourceSpans {\n\tresource?: OtlpResource;\n\tscopeSpans: OtlpScopeSpans[];\n\tschemaUrl?: string;\n}\n\nexport interface OtlpExportTraceServiceRequestJson {\n\tresourceSpans: OtlpResourceSpans[];\n}\n\nexport function hexFromBytes(bytes: Uint8Array): string {\n\tlet out = \"\";\n\tfor (let i = 0; i < bytes.length; i++) {\n\t\tout += bytes[i].toString(16).padStart(2, \"0\");\n\t}\n\treturn out;\n}\n\nexport function base64FromBytes(bytes: Uint8Array): string {\n\tconst bufferCtor = (\n\t\tglobalThis as {\n\t\t\tBuffer?: {\n\t\t\t\tfrom: (data: Uint8Array) => {\n\t\t\t\t\ttoString: (encoding: string) => string;\n\t\t\t\t};\n\t\t\t};\n\t\t}\n\t).Buffer;\n\tif (bufferCtor) {\n\t\treturn bufferCtor.from(bytes).toString(\"base64\");\n\t}\n\tlet binary = \"\";\n\tfor (let i = 0; i < bytes.length; i++) {\n\t\tbinary += String.fromCharCode(bytes[i]);\n\t}\n\tconst btoaFn = (globalThis as { btoa?: (data: string) => string }).btoa;\n\tif (!btoaFn) {\n\t\tthrow new Error(\"No base64 encoder available\");\n\t}\n\treturn btoaFn(binary);\n}\n\nexport function anyValueFromCborBytes(bytes: Uint8Array): OtlpAnyValue {\n\tconst value = decodeCbor(bytes) as unknown;\n\treturn anyValueFromJs(value);\n}\n\nexport function anyValueFromJs(value: unknown): OtlpAnyValue {\n\tif (value === null || value === undefined) {\n\t\treturn { stringValue: \"\" };\n\t}\n\tif (typeof value === \"string\") {\n\t\treturn { stringValue: value };\n\t}\n\tif (typeof value === \"boolean\") {\n\t\treturn { boolValue: value };\n\t}\n\tif (typeof value === \"number\") {\n\t\tif (Number.isFinite(value) && Number.isInteger(value)) {\n\t\t\treturn { intValue: value.toString() };\n\t\t}\n\t\treturn { doubleValue: value };\n\t}\n\tif (typeof value === \"bigint\") {\n\t\treturn { intValue: value.toString() };\n\t}\n\tif (value instanceof Uint8Array) {\n\t\treturn { bytesValue: base64FromBytes(value) };\n\t}\n\tif (Array.isArray(value)) {\n\t\treturn { arrayValue: { values: value.map((v) => anyValueFromJs(v)) } };\n\t}\n\tif (value instanceof Map) {\n\t\tconst values: OtlpKeyValue[] = [];\n\t\tfor (const [key, mapValue] of value.entries()) {\n\t\t\tif (typeof key !== \"string\") {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tvalues.push({ key, value: anyValueFromJs(mapValue) });\n\t\t}\n\t\treturn { kvlistValue: { values } };\n\t}\n\tif (typeof value === \"object\") {\n\t\tconst values: OtlpKeyValue[] = [];\n\t\tfor (const [key, objectValue] of Object.entries(value as object)) {\n\t\t\tvalues.push({ key, value: anyValueFromJs(objectValue) });\n\t\t}\n\t\treturn { kvlistValue: { values } };\n\t}\n\n\treturn { stringValue: String(value) };\n}\n","import { decode as decodeCbor } from \"cbor-x\";\nimport {\n\ttype Attributes,\n\ttype Chunk,\n\ttype ReadRangeWire,\n\ttype Record as TraceRecord,\n\ttype RecordBody,\n\ttype SpanId,\n\ttype SpanLink,\n\ttype SpanSnapshot,\n\ttype SpanStart,\n\ttype SpanStatus,\n\tSpanStatusCode,\n\ttype TraceId,\n} from \"../schemas/versioned.js\";\nimport {\n\tanyValueFromJs,\n\thexFromBytes,\n\ttype OtlpExportTraceServiceRequestJson,\n\ttype OtlpKeyValue,\n\ttype OtlpResource,\n\ttype OtlpSpan,\n\ttype OtlpSpanEvent,\n\ttype OtlpSpanLink,\n\ttype OtlpSpanStatus,\n} from \"./otlp.js\";\n\ntype AttributeMap = Map<string, unknown>;\n\ntype LinkState = {\n\ttraceId: TraceId;\n\tspanId: SpanId;\n\ttraceState: string | null;\n\tattributes: AttributeMap;\n\tdroppedAttributesCount: number;\n};\n\ntype SpanEventState = {\n\tname: string;\n\ttimeUnixNs: bigint;\n\tattributes: AttributeMap;\n\tdroppedAttributesCount: number;\n};\n\ntype SpanBuilder = {\n\ttraceId: TraceId;\n\tspanId: SpanId;\n\tparentSpanId: SpanId | null;\n\tname: string;\n\tkind: number;\n\ttraceState: string | null;\n\tflags: number;\n\tattributes: AttributeMap;\n\tdroppedAttributesCount: number;\n\tlinks: LinkState[];\n\tdroppedLinksCount: number;\n\tstatus: SpanStatus | null;\n\tstartTimeUnixNs: bigint;\n\tendTimeUnixNs: bigint | null;\n\tevents: SpanEventState[];\n};\n\ntype RecordEntry = {\n\trecord: TraceRecord;\n\tstrings: readonly string[];\n\tabsNs: bigint;\n\tsequence: number;\n};\n\ntype BaseRecordEntry = {\n\trecord: TraceRecord;\n\tstrings: readonly string[];\n\tabsNs: bigint;\n};\n\nfunction toUint8Array(buffer: ArrayBuffer): Uint8Array {\n\treturn new Uint8Array(buffer);\n}\n\nfunction normalizeBytes(input: Uint8Array | ArrayBuffer): Uint8Array {\n\treturn input instanceof Uint8Array ? input : new Uint8Array(input);\n}\n\nfunction spanKey(spanId: Uint8Array | SpanId): string {\n\treturn hexFromBytes(normalizeBytes(spanId));\n}\n\nexport function readRangeWireToOtlp(\n\twire: ReadRangeWire,\n\tresource?: OtlpResource,\n): { otlp: OtlpExportTraceServiceRequestJson; clamped: boolean } {\n\tconst startMs =\n\t\ttypeof wire.startTimeMs === \"bigint\"\n\t\t\t? wire.startTimeMs\n\t\t\t: BigInt(Math.floor(wire.startTimeMs));\n\tconst endMs =\n\t\ttypeof wire.endTimeMs === \"bigint\"\n\t\t\t? wire.endTimeMs\n\t\t\t: BigInt(Math.floor(wire.endTimeMs));\n\tconst limit =\n\t\ttypeof wire.limit === \"bigint\" ? Number(wire.limit) : wire.limit;\n\n\tif (limit <= 0 || endMs <= startMs) {\n\t\treturn { otlp: emptyExport(resource), clamped: wire.clamped };\n\t}\n\n\tconst startNs = startMs * 1_000_000n;\n\tconst endNs = endMs * 1_000_000n;\n\tconst baseRecords = buildBaseRecordMap(wire.baseChunks);\n\tconst sequenceRef = { value: 0 };\n\tconst records: RecordEntry[] = [];\n\tfor (const chunk of wire.chunks) {\n\t\tcollectRecordEntries(records, chunk, startNs, endNs, sequenceRef);\n\t}\n\n\trecords.sort((a, b) => {\n\t\tif (a.absNs < b.absNs) return -1;\n\t\tif (a.absNs > b.absNs) return 1;\n\t\treturn a.sequence - b.sequence;\n\t});\n\n\tconst { spans, reachedSpanLimit } = buildSpansFromRecords(\n\t\trecords,\n\t\tbaseRecords,\n\t\tlimit,\n\t);\n\tconst exported = spans.map(toOtlpSpan);\n\treturn {\n\t\totlp: buildExport(exported, resource),\n\t\tclamped: wire.clamped || reachedSpanLimit,\n\t};\n}\n\nfunction collectRecordEntries(\n\tcollector: RecordEntry[],\n\tchunk: Chunk,\n\tstartNs: bigint,\n\tendNs: bigint,\n\tsequenceRef: { value: number },\n): void {\n\tfor (const record of chunk.records) {\n\t\tconst absNs = chunk.baseUnixNs + record.timeOffsetNs;\n\t\tif (absNs < startNs || absNs >= endNs) {\n\t\t\tcontinue;\n\t\t}\n\t\tcollector.push({\n\t\t\trecord,\n\t\t\tstrings: chunk.strings,\n\t\t\tabsNs,\n\t\t\tsequence: sequenceRef.value++,\n\t\t});\n\t}\n}\n\nfunction buildBaseRecordMap(\n\tchunks: readonly Chunk[],\n): Map<string, BaseRecordEntry> {\n\tconst map = new Map<string, BaseRecordEntry>();\n\tfor (const chunk of chunks) {\n\t\tfor (const record of chunk.records) {\n\t\t\tconst absNs = chunk.baseUnixNs + record.timeOffsetNs;\n\t\t\tmap.set(spanKey(recordSpanId(record.body)), {\n\t\t\t\trecord,\n\t\t\t\tstrings: chunk.strings,\n\t\t\t\tabsNs,\n\t\t\t});\n\t\t}\n\t}\n\treturn map;\n}\n\nfunction buildSpansFromRecords(\n\trecords: RecordEntry[],\n\tbaseRecords: Map<string, BaseRecordEntry>,\n\tlimit: number,\n): { spans: SpanBuilder[]; reachedSpanLimit: boolean } {\n\tconst spans = new Map<string, SpanBuilder>();\n\tlet reachedSpanLimit = false;\n\n\tfor (const entry of records) {\n\t\tconst body = entry.record.body;\n\t\tconst id = recordSpanId(body);\n\t\tconst key = spanKey(id);\n\t\tlet span = spans.get(key);\n\t\tif (!span) {\n\t\t\tif (spans.size >= limit) {\n\t\t\t\treachedSpanLimit = true;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tconst baseRecord = baseRecords.get(key);\n\t\t\tif (baseRecord) {\n\t\t\t\tspan = initSpanFromBaseRecord(\n\t\t\t\t\tbaseRecord.record.body,\n\t\t\t\t\tbaseRecord.strings,\n\t\t\t\t\tbaseRecord.absNs,\n\t\t\t\t);\n\t\t\t}\n\t\t\tif (!span) {\n\t\t\t\tspan = initSpanFromRecord(body, entry.absNs, entry.strings);\n\t\t\t}\n\t\t\tif (!span) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tspans.set(key, span);\n\t\t}\n\t\tapplyRecord(span, body, entry.absNs, entry.strings);\n\t}\n\n\treturn { spans: Array.from(spans.values()), reachedSpanLimit };\n}\n\nfunction recordSpanId(body: RecordBody): SpanId {\n\tswitch (body.tag) {\n\t\tcase \"SpanStart\":\n\t\t\treturn body.val.spanId;\n\t\tcase \"SpanEvent\":\n\t\t\treturn body.val.spanId;\n\t\tcase \"SpanUpdate\":\n\t\t\treturn body.val.spanId;\n\t\tcase \"SpanEnd\":\n\t\t\treturn body.val.spanId;\n\t\tcase \"SpanSnapshot\":\n\t\t\treturn body.val.spanId;\n\t}\n}\n\nfunction initSpanFromBaseRecord(\n\tbase: RecordBody,\n\tstrings: readonly string[],\n\tabsNs: bigint,\n): SpanBuilder | undefined {\n\tswitch (base.tag) {\n\t\tcase \"SpanStart\":\n\t\t\treturn initSpanFromStart(base.val, absNs, strings);\n\t\tcase \"SpanSnapshot\":\n\t\t\treturn initSpanFromSnapshot(base.val, strings);\n\t\tdefault:\n\t\t\treturn undefined;\n\t}\n}\n\nfunction initSpanFromRecord(\n\tbody: RecordBody,\n\tabsNs: bigint,\n\tstrings: readonly string[],\n): SpanBuilder | undefined {\n\tswitch (body.tag) {\n\t\tcase \"SpanStart\":\n\t\t\treturn initSpanFromStart(body.val, absNs, strings);\n\t\tcase \"SpanSnapshot\":\n\t\t\treturn initSpanFromSnapshot(body.val, strings);\n\t\tdefault:\n\t\t\treturn undefined;\n\t}\n}\n\nfunction initSpanFromStart(\n\tstart: SpanStart,\n\tabsNs: bigint | null,\n\tstrings: readonly string[],\n): SpanBuilder {\n\treturn {\n\t\ttraceId: start.traceId,\n\t\tspanId: start.spanId,\n\t\tparentSpanId: start.parentSpanId,\n\t\tname: strings[start.name] ?? \"\",\n\t\tkind: start.kind,\n\t\ttraceState: start.traceState,\n\t\tflags: start.flags,\n\t\tattributes: decodeAttributeList(start.attributes, strings),\n\t\tdroppedAttributesCount: start.droppedAttributesCount,\n\t\tlinks: decodeLinks(start.links, strings),\n\t\tdroppedLinksCount: start.droppedLinksCount,\n\t\tstatus: null,\n\t\tstartTimeUnixNs: absNs ?? 0n,\n\t\tendTimeUnixNs: null,\n\t\tevents: [],\n\t};\n}\n\nfunction initSpanFromSnapshot(\n\tsnapshot: SpanSnapshot,\n\tstrings: readonly string[],\n): SpanBuilder {\n\treturn {\n\t\ttraceId: snapshot.traceId,\n\t\tspanId: snapshot.spanId,\n\t\tparentSpanId: snapshot.parentSpanId,\n\t\tname: strings[snapshot.name] ?? \"\",\n\t\tkind: snapshot.kind,\n\t\ttraceState: snapshot.traceState,\n\t\tflags: snapshot.flags,\n\t\tattributes: decodeAttributeList(snapshot.attributes, strings),\n\t\tdroppedAttributesCount: snapshot.droppedAttributesCount,\n\t\tlinks: decodeLinks(snapshot.links, strings),\n\t\tdroppedLinksCount: snapshot.droppedLinksCount,\n\t\tstatus: snapshot.status,\n\t\tstartTimeUnixNs: snapshot.startTimeUnixNs,\n\t\tendTimeUnixNs: null,\n\t\tevents: [],\n\t};\n}\n\nfunction applyRecord(\n\tspan: SpanBuilder,\n\tbody: RecordBody,\n\tabsNs: bigint,\n\tstrings: readonly string[],\n): void {\n\tswitch (body.tag) {\n\t\tcase \"SpanStart\":\n\t\t\tif (span.startTimeUnixNs === 0n) {\n\t\t\t\tspan.startTimeUnixNs = absNs;\n\t\t\t}\n\t\t\treturn;\n\t\tcase \"SpanSnapshot\":\n\t\t\tspan.traceId = body.val.traceId;\n\t\t\tspan.parentSpanId = body.val.parentSpanId;\n\t\t\tspan.name = strings[body.val.name] ?? \"\";\n\t\t\tspan.kind = body.val.kind;\n\t\t\tspan.traceState = body.val.traceState;\n\t\t\tspan.flags = body.val.flags;\n\t\t\tspan.attributes = decodeAttributeList(body.val.attributes, strings);\n\t\t\tspan.droppedAttributesCount = body.val.droppedAttributesCount;\n\t\t\tspan.links = decodeLinks(body.val.links, strings);\n\t\t\tspan.droppedLinksCount = body.val.droppedLinksCount;\n\t\t\tspan.status = body.val.status;\n\t\t\tspan.startTimeUnixNs = body.val.startTimeUnixNs;\n\t\t\treturn;\n\t\tcase \"SpanUpdate\":\n\t\t\tapplyAttributes(span.attributes, body.val.attributes, strings);\n\t\t\tspan.droppedAttributesCount += body.val.droppedAttributesCount;\n\t\t\tif (body.val.status) {\n\t\t\t\tspan.status = body.val.status;\n\t\t\t}\n\t\t\treturn;\n\t\tcase \"SpanEvent\":\n\t\t\tspan.events.push({\n\t\t\t\tname: strings[body.val.name] ?? \"\",\n\t\t\t\ttimeUnixNs: absNs,\n\t\t\t\tattributes: decodeAttributeList(body.val.attributes, strings),\n\t\t\t\tdroppedAttributesCount: body.val.droppedAttributesCount,\n\t\t\t});\n\t\t\treturn;\n\t\tcase \"SpanEnd\":\n\t\t\tspan.endTimeUnixNs = absNs;\n\t\t\tif (body.val.status) {\n\t\t\t\tspan.status = body.val.status;\n\t\t\t}\n\t\t\treturn;\n\t}\n}\n\nfunction decodeAttributeList(\n\tattributes: Attributes,\n\tstrings: readonly string[],\n): AttributeMap {\n\tconst map = new Map<string, unknown>();\n\tfor (const kv of attributes) {\n\t\tconst key = strings[kv.key] ?? \"\";\n\t\ttry {\n\t\t\tmap.set(key, decodeCbor(toUint8Array(kv.value)) as unknown);\n\t\t} catch {\n\t\t\tcontinue;\n\t\t}\n\t}\n\treturn map;\n}\n\nfunction applyAttributes(\n\tmap: AttributeMap,\n\tattributes: Attributes,\n\tstrings: readonly string[],\n): void {\n\tfor (const kv of attributes) {\n\t\tconst key = strings[kv.key] ?? \"\";\n\t\ttry {\n\t\t\tmap.set(key, decodeCbor(toUint8Array(kv.value)) as unknown);\n\t\t} catch {\n\t\t\tcontinue;\n\t\t}\n\t}\n}\n\nfunction decodeLinks(\n\tlinks: readonly SpanLink[],\n\tstrings: readonly string[],\n): LinkState[] {\n\treturn links.map((link) => ({\n\t\ttraceId: link.traceId,\n\t\tspanId: link.spanId,\n\t\ttraceState: link.traceState,\n\t\tattributes: decodeAttributeList(link.attributes, strings),\n\t\tdroppedAttributesCount: link.droppedAttributesCount,\n\t}));\n}\n\nfunction toOtlpSpan(span: SpanBuilder): OtlpSpan {\n\tconst attributes = mapToOtlpAttributes(span.attributes);\n\tconst events = span.events.map((event) => toOtlpEvent(event));\n\tconst links = span.links.map((link) => toOtlpLink(link));\n\tconst status = span.status ? toOtlpStatus(span.status) : undefined;\n\treturn {\n\t\ttraceId: hexFromBytes(normalizeBytes(span.traceId)),\n\t\tspanId: hexFromBytes(normalizeBytes(span.spanId)),\n\t\tparentSpanId: span.parentSpanId\n\t\t\t? hexFromBytes(normalizeBytes(span.parentSpanId))\n\t\t\t: undefined,\n\t\tname: span.name,\n\t\tkind: span.kind,\n\t\ttraceState: span.traceState ?? undefined,\n\t\tflags: span.flags || undefined,\n\t\tstartTimeUnixNano: span.startTimeUnixNs.toString(),\n\t\tendTimeUnixNano: span.endTimeUnixNs\n\t\t\t? span.endTimeUnixNs.toString()\n\t\t\t: undefined,\n\t\tattributes: attributes.length > 0 ? attributes : undefined,\n\t\tdroppedAttributesCount: span.droppedAttributesCount || undefined,\n\t\tevents: events.length > 0 ? events : undefined,\n\t\tlinks: links.length > 0 ? links : undefined,\n\t\tdroppedLinksCount: span.droppedLinksCount || undefined,\n\t\tstatus,\n\t};\n}\n\nfunction toOtlpEvent(event: SpanEventState): OtlpSpanEvent {\n\tconst attributes = mapToOtlpAttributes(event.attributes);\n\treturn {\n\t\ttimeUnixNano: event.timeUnixNs.toString(),\n\t\tname: event.name,\n\t\tattributes: attributes.length > 0 ? attributes : undefined,\n\t\tdroppedAttributesCount: event.droppedAttributesCount || undefined,\n\t};\n}\n\nfunction toOtlpLink(link: LinkState): OtlpSpanLink {\n\tconst attributes = mapToOtlpAttributes(link.attributes);\n\treturn {\n\t\ttraceId: hexFromBytes(normalizeBytes(link.traceId)),\n\t\tspanId: hexFromBytes(normalizeBytes(link.spanId)),\n\t\ttraceState: link.traceState ?? undefined,\n\t\tattributes: attributes.length > 0 ? attributes : undefined,\n\t\tdroppedAttributesCount: link.droppedAttributesCount || undefined,\n\t};\n}\n\nfunction toOtlpStatus(status: SpanStatus): OtlpSpanStatus {\n\tconst code =\n\t\tstatus.code === SpanStatusCode.OK\n\t\t\t? 1\n\t\t\t: status.code === SpanStatusCode.ERROR\n\t\t\t\t? 2\n\t\t\t\t: 0;\n\treturn {\n\t\tcode,\n\t\tmessage: status.message ?? undefined,\n\t};\n}\n\nfunction mapToOtlpAttributes(map: AttributeMap): OtlpKeyValue[] {\n\tconst list: OtlpKeyValue[] = [];\n\tfor (const [key, value] of map.entries()) {\n\t\tif (value === undefined || typeof value === \"function\") {\n\t\t\tcontinue;\n\t\t}\n\t\tif (typeof value === \"symbol\") {\n\t\t\tcontinue;\n\t\t}\n\t\tlist.push({ key, value: anyValueFromJs(value) });\n\t}\n\treturn list;\n}\n\nfunction emptyExport(\n\tresourceValue?: OtlpResource,\n): OtlpExportTraceServiceRequestJson {\n\treturn buildExport([], resourceValue);\n}\n\nfunction buildExport(\n\tspans: OtlpSpan[],\n\tresourceValue?: OtlpResource,\n): OtlpExportTraceServiceRequestJson {\n\treturn {\n\t\tresourceSpans: [\n\t\t\t{\n\t\t\t\tresource: resourceValue,\n\t\t\t\tscopeSpans: [{ spans }],\n\t\t\t},\n\t\t],\n\t};\n}\n"]}
1
+ {"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/traces/dist/tsup/chunk-AQ2YFUDS.cjs","../../src/otlp.ts","../../src/read-range.ts"],"names":["decodeCbor"],"mappings":"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","file":"/home/runner/work/rivet/rivet/rivetkit-typescript/packages/traces/dist/tsup/chunk-AQ2YFUDS.cjs","sourcesContent":[null,"import { decode as decodeCbor } from \"cbor-x\";\n\nexport interface OtlpAnyValue {\n\tstringValue?: string;\n\tboolValue?: boolean;\n\tintValue?: string;\n\tdoubleValue?: number;\n\tbytesValue?: string;\n\tarrayValue?: { values: OtlpAnyValue[] };\n\tkvlistValue?: { values: OtlpKeyValue[] };\n}\n\nexport interface OtlpKeyValue {\n\tkey: string;\n\tvalue?: OtlpAnyValue;\n}\n\nexport interface OtlpSpanStatus {\n\tcode: number;\n\tmessage?: string;\n}\n\nexport interface OtlpSpanEvent {\n\ttimeUnixNano: string;\n\tname: string;\n\tattributes?: OtlpKeyValue[];\n\tdroppedAttributesCount?: number;\n}\n\nexport interface OtlpSpanLink {\n\ttraceId: string;\n\tspanId: string;\n\ttraceState?: string;\n\tattributes?: OtlpKeyValue[];\n\tdroppedAttributesCount?: number;\n}\n\nexport interface OtlpSpan {\n\ttraceId: string;\n\tspanId: string;\n\tparentSpanId?: string;\n\tname: string;\n\tkind?: number;\n\tstartTimeUnixNano: string;\n\tendTimeUnixNano?: string;\n\tattributes?: OtlpKeyValue[];\n\tdroppedAttributesCount?: number;\n\tevents?: OtlpSpanEvent[];\n\tdroppedEventsCount?: number;\n\tlinks?: OtlpSpanLink[];\n\tdroppedLinksCount?: number;\n\tstatus?: OtlpSpanStatus;\n\ttraceState?: string;\n\tflags?: number;\n}\n\nexport interface OtlpInstrumentationScope {\n\tname: string;\n\tversion?: string;\n\tattributes?: OtlpKeyValue[];\n\tdroppedAttributesCount?: number;\n}\n\nexport interface OtlpScopeSpans {\n\tscope?: OtlpInstrumentationScope;\n\tspans: OtlpSpan[];\n\tschemaUrl?: string;\n}\n\nexport interface OtlpResource {\n\tattributes?: OtlpKeyValue[];\n\tdroppedAttributesCount?: number;\n}\n\nexport interface OtlpResourceSpans {\n\tresource?: OtlpResource;\n\tscopeSpans: OtlpScopeSpans[];\n\tschemaUrl?: string;\n}\n\nexport interface OtlpExportTraceServiceRequestJson {\n\tresourceSpans: OtlpResourceSpans[];\n}\n\nexport function hexFromBytes(bytes: Uint8Array): string {\n\tlet out = \"\";\n\tfor (let i = 0; i < bytes.length; i++) {\n\t\tout += bytes[i].toString(16).padStart(2, \"0\");\n\t}\n\treturn out;\n}\n\nexport function base64FromBytes(bytes: Uint8Array): string {\n\tconst bufferCtor = (\n\t\tglobalThis as {\n\t\t\tBuffer?: {\n\t\t\t\tfrom: (data: Uint8Array) => {\n\t\t\t\t\ttoString: (encoding: string) => string;\n\t\t\t\t};\n\t\t\t};\n\t\t}\n\t).Buffer;\n\tif (bufferCtor) {\n\t\treturn bufferCtor.from(bytes).toString(\"base64\");\n\t}\n\tlet binary = \"\";\n\tfor (let i = 0; i < bytes.length; i++) {\n\t\tbinary += String.fromCharCode(bytes[i]);\n\t}\n\tconst btoaFn = (globalThis as { btoa?: (data: string) => string }).btoa;\n\tif (!btoaFn) {\n\t\tthrow new Error(\"No base64 encoder available\");\n\t}\n\treturn btoaFn(binary);\n}\n\nexport function anyValueFromCborBytes(bytes: Uint8Array): OtlpAnyValue {\n\tconst value = decodeCbor(bytes) as unknown;\n\treturn anyValueFromJs(value);\n}\n\nexport function anyValueFromJs(value: unknown): OtlpAnyValue {\n\tif (value === null || value === undefined) {\n\t\treturn { stringValue: \"\" };\n\t}\n\tif (typeof value === \"string\") {\n\t\treturn { stringValue: value };\n\t}\n\tif (typeof value === \"boolean\") {\n\t\treturn { boolValue: value };\n\t}\n\tif (typeof value === \"number\") {\n\t\tif (Number.isFinite(value) && Number.isInteger(value)) {\n\t\t\treturn { intValue: value.toString() };\n\t\t}\n\t\treturn { doubleValue: value };\n\t}\n\tif (typeof value === \"bigint\") {\n\t\treturn { intValue: value.toString() };\n\t}\n\tif (value instanceof Uint8Array) {\n\t\treturn { bytesValue: base64FromBytes(value) };\n\t}\n\tif (Array.isArray(value)) {\n\t\treturn { arrayValue: { values: value.map((v) => anyValueFromJs(v)) } };\n\t}\n\tif (value instanceof Map) {\n\t\tconst values: OtlpKeyValue[] = [];\n\t\tfor (const [key, mapValue] of value.entries()) {\n\t\t\tif (typeof key !== \"string\") {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tvalues.push({ key, value: anyValueFromJs(mapValue) });\n\t\t}\n\t\treturn { kvlistValue: { values } };\n\t}\n\tif (typeof value === \"object\") {\n\t\tconst values: OtlpKeyValue[] = [];\n\t\tfor (const [key, objectValue] of Object.entries(value as object)) {\n\t\t\tvalues.push({ key, value: anyValueFromJs(objectValue) });\n\t\t}\n\t\treturn { kvlistValue: { values } };\n\t}\n\n\treturn { stringValue: String(value) };\n}\n","import { decode as decodeCbor } from \"cbor-x\";\nimport {\n\ttype Attributes,\n\ttype Chunk,\n\ttype ReadRangeWire,\n\ttype Record as TraceRecord,\n\ttype RecordBody,\n\ttype SpanId,\n\ttype SpanLink,\n\ttype SpanSnapshot,\n\ttype SpanStart,\n\ttype SpanStatus,\n\tSpanStatusCode,\n\ttype TraceId,\n} from \"../schemas/versioned.js\";\nimport {\n\tanyValueFromJs,\n\thexFromBytes,\n\ttype OtlpExportTraceServiceRequestJson,\n\ttype OtlpKeyValue,\n\ttype OtlpResource,\n\ttype OtlpSpan,\n\ttype OtlpSpanEvent,\n\ttype OtlpSpanLink,\n\ttype OtlpSpanStatus,\n} from \"./otlp.js\";\n\ntype AttributeMap = Map<string, unknown>;\n\ntype LinkState = {\n\ttraceId: TraceId;\n\tspanId: SpanId;\n\ttraceState: string | null;\n\tattributes: AttributeMap;\n\tdroppedAttributesCount: number;\n};\n\ntype SpanEventState = {\n\tname: string;\n\ttimeUnixNs: bigint;\n\tattributes: AttributeMap;\n\tdroppedAttributesCount: number;\n};\n\ntype SpanBuilder = {\n\ttraceId: TraceId;\n\tspanId: SpanId;\n\tparentSpanId: SpanId | null;\n\tname: string;\n\tkind: number;\n\ttraceState: string | null;\n\tflags: number;\n\tattributes: AttributeMap;\n\tdroppedAttributesCount: number;\n\tlinks: LinkState[];\n\tdroppedLinksCount: number;\n\tstatus: SpanStatus | null;\n\tstartTimeUnixNs: bigint;\n\tendTimeUnixNs: bigint | null;\n\tevents: SpanEventState[];\n};\n\ntype RecordEntry = {\n\trecord: TraceRecord;\n\tstrings: readonly string[];\n\tabsNs: bigint;\n\tsequence: number;\n};\n\ntype BaseRecordEntry = {\n\trecord: TraceRecord;\n\tstrings: readonly string[];\n\tabsNs: bigint;\n};\n\nfunction toUint8Array(buffer: ArrayBuffer): Uint8Array {\n\treturn new Uint8Array(buffer);\n}\n\nfunction normalizeBytes(input: Uint8Array | ArrayBuffer): Uint8Array {\n\treturn input instanceof Uint8Array ? input : new Uint8Array(input);\n}\n\nfunction spanKey(spanId: Uint8Array | SpanId): string {\n\treturn hexFromBytes(normalizeBytes(spanId));\n}\n\nexport function readRangeWireToOtlp(\n\twire: ReadRangeWire,\n\tresource?: OtlpResource,\n): { otlp: OtlpExportTraceServiceRequestJson; clamped: boolean } {\n\tconst startMs =\n\t\ttypeof wire.startTimeMs === \"bigint\"\n\t\t\t? wire.startTimeMs\n\t\t\t: BigInt(Math.floor(wire.startTimeMs));\n\tconst endMs =\n\t\ttypeof wire.endTimeMs === \"bigint\"\n\t\t\t? wire.endTimeMs\n\t\t\t: BigInt(Math.floor(wire.endTimeMs));\n\tconst limit =\n\t\ttypeof wire.limit === \"bigint\" ? Number(wire.limit) : wire.limit;\n\n\tif (limit <= 0 || endMs <= startMs) {\n\t\treturn { otlp: emptyExport(resource), clamped: wire.clamped };\n\t}\n\n\tconst startNs = startMs * 1_000_000n;\n\tconst endNs = endMs * 1_000_000n;\n\tconst baseRecords = buildBaseRecordMap(wire.baseChunks);\n\tconst sequenceRef = { value: 0 };\n\tconst records: RecordEntry[] = [];\n\tfor (const chunk of wire.chunks) {\n\t\tcollectRecordEntries(records, chunk, startNs, endNs, sequenceRef);\n\t}\n\n\trecords.sort((a, b) => {\n\t\tif (a.absNs < b.absNs) return -1;\n\t\tif (a.absNs > b.absNs) return 1;\n\t\treturn a.sequence - b.sequence;\n\t});\n\n\tconst { spans, reachedSpanLimit } = buildSpansFromRecords(\n\t\trecords,\n\t\tbaseRecords,\n\t\tlimit,\n\t);\n\tconst exported = spans.map(toOtlpSpan);\n\treturn {\n\t\totlp: buildExport(exported, resource),\n\t\tclamped: wire.clamped || reachedSpanLimit,\n\t};\n}\n\nfunction collectRecordEntries(\n\tcollector: RecordEntry[],\n\tchunk: Chunk,\n\tstartNs: bigint,\n\tendNs: bigint,\n\tsequenceRef: { value: number },\n): void {\n\tfor (const record of chunk.records) {\n\t\tconst absNs = chunk.baseUnixNs + record.timeOffsetNs;\n\t\tif (absNs < startNs || absNs >= endNs) {\n\t\t\tcontinue;\n\t\t}\n\t\tcollector.push({\n\t\t\trecord,\n\t\t\tstrings: chunk.strings,\n\t\t\tabsNs,\n\t\t\tsequence: sequenceRef.value++,\n\t\t});\n\t}\n}\n\nfunction buildBaseRecordMap(\n\tchunks: readonly Chunk[],\n): Map<string, BaseRecordEntry> {\n\tconst map = new Map<string, BaseRecordEntry>();\n\tfor (const chunk of chunks) {\n\t\tfor (const record of chunk.records) {\n\t\t\tconst absNs = chunk.baseUnixNs + record.timeOffsetNs;\n\t\t\tmap.set(spanKey(recordSpanId(record.body)), {\n\t\t\t\trecord,\n\t\t\t\tstrings: chunk.strings,\n\t\t\t\tabsNs,\n\t\t\t});\n\t\t}\n\t}\n\treturn map;\n}\n\nfunction buildSpansFromRecords(\n\trecords: RecordEntry[],\n\tbaseRecords: Map<string, BaseRecordEntry>,\n\tlimit: number,\n): { spans: SpanBuilder[]; reachedSpanLimit: boolean } {\n\tconst spans = new Map<string, SpanBuilder>();\n\tlet reachedSpanLimit = false;\n\n\tfor (const entry of records) {\n\t\tconst body = entry.record.body;\n\t\tconst id = recordSpanId(body);\n\t\tconst key = spanKey(id);\n\t\tlet span = spans.get(key);\n\t\tif (!span) {\n\t\t\tif (spans.size >= limit) {\n\t\t\t\treachedSpanLimit = true;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tconst baseRecord = baseRecords.get(key);\n\t\t\tif (baseRecord) {\n\t\t\t\tspan = initSpanFromBaseRecord(\n\t\t\t\t\tbaseRecord.record.body,\n\t\t\t\t\tbaseRecord.strings,\n\t\t\t\t\tbaseRecord.absNs,\n\t\t\t\t);\n\t\t\t}\n\t\t\tif (!span) {\n\t\t\t\tspan = initSpanFromRecord(body, entry.absNs, entry.strings);\n\t\t\t}\n\t\t\tif (!span) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tspans.set(key, span);\n\t\t}\n\t\tapplyRecord(span, body, entry.absNs, entry.strings);\n\t}\n\n\treturn { spans: Array.from(spans.values()), reachedSpanLimit };\n}\n\nfunction recordSpanId(body: RecordBody): SpanId {\n\tswitch (body.tag) {\n\t\tcase \"SpanStart\":\n\t\t\treturn body.val.spanId;\n\t\tcase \"SpanEvent\":\n\t\t\treturn body.val.spanId;\n\t\tcase \"SpanUpdate\":\n\t\t\treturn body.val.spanId;\n\t\tcase \"SpanEnd\":\n\t\t\treturn body.val.spanId;\n\t\tcase \"SpanSnapshot\":\n\t\t\treturn body.val.spanId;\n\t}\n}\n\nfunction initSpanFromBaseRecord(\n\tbase: RecordBody,\n\tstrings: readonly string[],\n\tabsNs: bigint,\n): SpanBuilder | undefined {\n\tswitch (base.tag) {\n\t\tcase \"SpanStart\":\n\t\t\treturn initSpanFromStart(base.val, absNs, strings);\n\t\tcase \"SpanSnapshot\":\n\t\t\treturn initSpanFromSnapshot(base.val, strings);\n\t\tdefault:\n\t\t\treturn undefined;\n\t}\n}\n\nfunction initSpanFromRecord(\n\tbody: RecordBody,\n\tabsNs: bigint,\n\tstrings: readonly string[],\n): SpanBuilder | undefined {\n\tswitch (body.tag) {\n\t\tcase \"SpanStart\":\n\t\t\treturn initSpanFromStart(body.val, absNs, strings);\n\t\tcase \"SpanSnapshot\":\n\t\t\treturn initSpanFromSnapshot(body.val, strings);\n\t\tdefault:\n\t\t\treturn undefined;\n\t}\n}\n\nfunction initSpanFromStart(\n\tstart: SpanStart,\n\tabsNs: bigint | null,\n\tstrings: readonly string[],\n): SpanBuilder {\n\treturn {\n\t\ttraceId: start.traceId,\n\t\tspanId: start.spanId,\n\t\tparentSpanId: start.parentSpanId,\n\t\tname: strings[start.name] ?? \"\",\n\t\tkind: start.kind,\n\t\ttraceState: start.traceState,\n\t\tflags: start.flags,\n\t\tattributes: decodeAttributeList(start.attributes, strings),\n\t\tdroppedAttributesCount: start.droppedAttributesCount,\n\t\tlinks: decodeLinks(start.links, strings),\n\t\tdroppedLinksCount: start.droppedLinksCount,\n\t\tstatus: null,\n\t\tstartTimeUnixNs: absNs ?? 0n,\n\t\tendTimeUnixNs: null,\n\t\tevents: [],\n\t};\n}\n\nfunction initSpanFromSnapshot(\n\tsnapshot: SpanSnapshot,\n\tstrings: readonly string[],\n): SpanBuilder {\n\treturn {\n\t\ttraceId: snapshot.traceId,\n\t\tspanId: snapshot.spanId,\n\t\tparentSpanId: snapshot.parentSpanId,\n\t\tname: strings[snapshot.name] ?? \"\",\n\t\tkind: snapshot.kind,\n\t\ttraceState: snapshot.traceState,\n\t\tflags: snapshot.flags,\n\t\tattributes: decodeAttributeList(snapshot.attributes, strings),\n\t\tdroppedAttributesCount: snapshot.droppedAttributesCount,\n\t\tlinks: decodeLinks(snapshot.links, strings),\n\t\tdroppedLinksCount: snapshot.droppedLinksCount,\n\t\tstatus: snapshot.status,\n\t\tstartTimeUnixNs: snapshot.startTimeUnixNs,\n\t\tendTimeUnixNs: null,\n\t\tevents: [],\n\t};\n}\n\nfunction applyRecord(\n\tspan: SpanBuilder,\n\tbody: RecordBody,\n\tabsNs: bigint,\n\tstrings: readonly string[],\n): void {\n\tswitch (body.tag) {\n\t\tcase \"SpanStart\":\n\t\t\tif (span.startTimeUnixNs === 0n) {\n\t\t\t\tspan.startTimeUnixNs = absNs;\n\t\t\t}\n\t\t\treturn;\n\t\tcase \"SpanSnapshot\":\n\t\t\tspan.traceId = body.val.traceId;\n\t\t\tspan.parentSpanId = body.val.parentSpanId;\n\t\t\tspan.name = strings[body.val.name] ?? \"\";\n\t\t\tspan.kind = body.val.kind;\n\t\t\tspan.traceState = body.val.traceState;\n\t\t\tspan.flags = body.val.flags;\n\t\t\tspan.attributes = decodeAttributeList(body.val.attributes, strings);\n\t\t\tspan.droppedAttributesCount = body.val.droppedAttributesCount;\n\t\t\tspan.links = decodeLinks(body.val.links, strings);\n\t\t\tspan.droppedLinksCount = body.val.droppedLinksCount;\n\t\t\tspan.status = body.val.status;\n\t\t\tspan.startTimeUnixNs = body.val.startTimeUnixNs;\n\t\t\treturn;\n\t\tcase \"SpanUpdate\":\n\t\t\tapplyAttributes(span.attributes, body.val.attributes, strings);\n\t\t\tspan.droppedAttributesCount += body.val.droppedAttributesCount;\n\t\t\tif (body.val.status) {\n\t\t\t\tspan.status = body.val.status;\n\t\t\t}\n\t\t\treturn;\n\t\tcase \"SpanEvent\":\n\t\t\tspan.events.push({\n\t\t\t\tname: strings[body.val.name] ?? \"\",\n\t\t\t\ttimeUnixNs: absNs,\n\t\t\t\tattributes: decodeAttributeList(body.val.attributes, strings),\n\t\t\t\tdroppedAttributesCount: body.val.droppedAttributesCount,\n\t\t\t});\n\t\t\treturn;\n\t\tcase \"SpanEnd\":\n\t\t\tspan.endTimeUnixNs = absNs;\n\t\t\tif (body.val.status) {\n\t\t\t\tspan.status = body.val.status;\n\t\t\t}\n\t\t\treturn;\n\t}\n}\n\nfunction decodeAttributeList(\n\tattributes: Attributes,\n\tstrings: readonly string[],\n): AttributeMap {\n\tconst map = new Map<string, unknown>();\n\tfor (const kv of attributes) {\n\t\tconst key = strings[kv.key] ?? \"\";\n\t\ttry {\n\t\t\tmap.set(key, decodeCbor(toUint8Array(kv.value)) as unknown);\n\t\t} catch {\n\t\t\tcontinue;\n\t\t}\n\t}\n\treturn map;\n}\n\nfunction applyAttributes(\n\tmap: AttributeMap,\n\tattributes: Attributes,\n\tstrings: readonly string[],\n): void {\n\tfor (const kv of attributes) {\n\t\tconst key = strings[kv.key] ?? \"\";\n\t\ttry {\n\t\t\tmap.set(key, decodeCbor(toUint8Array(kv.value)) as unknown);\n\t\t} catch {\n\t\t\tcontinue;\n\t\t}\n\t}\n}\n\nfunction decodeLinks(\n\tlinks: readonly SpanLink[],\n\tstrings: readonly string[],\n): LinkState[] {\n\treturn links.map((link) => ({\n\t\ttraceId: link.traceId,\n\t\tspanId: link.spanId,\n\t\ttraceState: link.traceState,\n\t\tattributes: decodeAttributeList(link.attributes, strings),\n\t\tdroppedAttributesCount: link.droppedAttributesCount,\n\t}));\n}\n\nfunction toOtlpSpan(span: SpanBuilder): OtlpSpan {\n\tconst attributes = mapToOtlpAttributes(span.attributes);\n\tconst events = span.events.map((event) => toOtlpEvent(event));\n\tconst links = span.links.map((link) => toOtlpLink(link));\n\tconst status = span.status ? toOtlpStatus(span.status) : undefined;\n\treturn {\n\t\ttraceId: hexFromBytes(normalizeBytes(span.traceId)),\n\t\tspanId: hexFromBytes(normalizeBytes(span.spanId)),\n\t\tparentSpanId: span.parentSpanId\n\t\t\t? hexFromBytes(normalizeBytes(span.parentSpanId))\n\t\t\t: undefined,\n\t\tname: span.name,\n\t\tkind: span.kind,\n\t\ttraceState: span.traceState ?? undefined,\n\t\tflags: span.flags || undefined,\n\t\tstartTimeUnixNano: span.startTimeUnixNs.toString(),\n\t\tendTimeUnixNano: span.endTimeUnixNs\n\t\t\t? span.endTimeUnixNs.toString()\n\t\t\t: undefined,\n\t\tattributes: attributes.length > 0 ? attributes : undefined,\n\t\tdroppedAttributesCount: span.droppedAttributesCount || undefined,\n\t\tevents: events.length > 0 ? events : undefined,\n\t\tlinks: links.length > 0 ? links : undefined,\n\t\tdroppedLinksCount: span.droppedLinksCount || undefined,\n\t\tstatus,\n\t};\n}\n\nfunction toOtlpEvent(event: SpanEventState): OtlpSpanEvent {\n\tconst attributes = mapToOtlpAttributes(event.attributes);\n\treturn {\n\t\ttimeUnixNano: event.timeUnixNs.toString(),\n\t\tname: event.name,\n\t\tattributes: attributes.length > 0 ? attributes : undefined,\n\t\tdroppedAttributesCount: event.droppedAttributesCount || undefined,\n\t};\n}\n\nfunction toOtlpLink(link: LinkState): OtlpSpanLink {\n\tconst attributes = mapToOtlpAttributes(link.attributes);\n\treturn {\n\t\ttraceId: hexFromBytes(normalizeBytes(link.traceId)),\n\t\tspanId: hexFromBytes(normalizeBytes(link.spanId)),\n\t\ttraceState: link.traceState ?? undefined,\n\t\tattributes: attributes.length > 0 ? attributes : undefined,\n\t\tdroppedAttributesCount: link.droppedAttributesCount || undefined,\n\t};\n}\n\nfunction toOtlpStatus(status: SpanStatus): OtlpSpanStatus {\n\tconst code =\n\t\tstatus.code === SpanStatusCode.OK\n\t\t\t? 1\n\t\t\t: status.code === SpanStatusCode.ERROR\n\t\t\t\t? 2\n\t\t\t\t: 0;\n\treturn {\n\t\tcode,\n\t\tmessage: status.message ?? undefined,\n\t};\n}\n\nfunction mapToOtlpAttributes(map: AttributeMap): OtlpKeyValue[] {\n\tconst list: OtlpKeyValue[] = [];\n\tfor (const [key, value] of map.entries()) {\n\t\tif (value === undefined || typeof value === \"function\") {\n\t\t\tcontinue;\n\t\t}\n\t\tif (typeof value === \"symbol\") {\n\t\t\tcontinue;\n\t\t}\n\t\tlist.push({ key, value: anyValueFromJs(value) });\n\t}\n\treturn list;\n}\n\nfunction emptyExport(\n\tresourceValue?: OtlpResource,\n): OtlpExportTraceServiceRequestJson {\n\treturn buildExport([], resourceValue);\n}\n\nfunction buildExport(\n\tspans: OtlpSpan[],\n\tresourceValue?: OtlpResource,\n): OtlpExportTraceServiceRequestJson {\n\treturn {\n\t\tresourceSpans: [\n\t\t\t{\n\t\t\t\tresource: resourceValue,\n\t\t\t\tscopeSpans: [{ spans }],\n\t\t\t},\n\t\t],\n\t};\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/nathan/r7/rivetkit-typescript/packages/traces/dist/tsup/chunk-MFBM65UR.cjs","../../src/noop.ts"],"names":[],"mappings":"AAAA;ACcA,IAAM,QAAA,EAAU,UAAA;AAEhB,IAAM,UAAA,EAAwB;AAAA,EAC7B,MAAA,EAAQ,IAAI,UAAA,CAAW,CAAC,CAAA;AAAA,EACxB,OAAA,EAAS,IAAI,UAAA,CAAW,EAAE,CAAA;AAAA,EAC1B,QAAA,EAAU,CAAA,EAAA,GAAM;AACjB,CAAA;AAEA,SAAS,qBAAA,CAAA,EAA2D;AACnE,EAAA,OAAO;AAAA,IACN,aAAA,EAAe;AAAA,MACd;AAAA,QACC,UAAA,EAAY,CAAC,EAAE,KAAA,EAAO,CAAC,EAAE,CAAC;AAAA,MAC3B;AAAA,IACD;AAAA,EACD,CAAA;AACD;AAKO,SAAS,gBAAA,CAAA,EAA8D;AAC7E,EAAA,OAAO;AAAA,IACN,SAAA,CAAU,KAAA,EAAe,QAAA,EAAyC;AACjE,MAAA,OAAO,SAAA;AAAA,IACR,CAAA;AAAA,IACA,UAAA,CAAW,OAAA,EAAqB,QAAA,EAAmC;AAAA,IAAC,CAAA;AAAA,IACpE,aAAA,CACC,OAAA,EACA,WAAA,EACO;AAAA,IAAC,CAAA;AAAA,IACT,SAAA,CAAU,OAAA,EAAqB,OAAA,EAAgC;AAAA,IAAC,CAAA;AAAA,IAChE,OAAA,CAAQ,OAAA,EAAqB,QAAA,EAAiC;AAAA,IAAC,CAAA;AAAA,IAC/D,SAAA,CACC,OAAA,EACA,KAAA,EACA,QAAA,EACO;AAAA,IAAC,CAAA;AAAA,IACT,QAAA,CAAY,OAAA,EAAqB,EAAA,EAAgB;AAChD,MAAA,OAAO,EAAA,CAAG,CAAA;AAAA,IACX,CAAA;AAAA,IACA,cAAA,CAAA,EAAoC;AACnC,MAAA,OAAO,IAAA;AAAA,IACR,CAAA;AAAA,IACA,MAAM,KAAA,CAAA,EAA0B;AAC/B,MAAA,OAAO,KAAA;AAAA,IACR,CAAA;AAAA,IACA,iBAAA,CAAA,EAAoC;AACnC,MAAA,OAAO,IAAA;AAAA,IACR,CAAA;AAAA,IACA,MAAM,SAAA,CACL,QAAA,EAC8D;AAC9D,MAAA,OAAO;AAAA,QACN,IAAA,EAAM,qBAAA,CAAsB,CAAA;AAAA,QAC5B,OAAA,EAAS;AAAA,MACV,CAAA;AAAA,IACD,CAAA;AAAA,IACA,MAAM,aAAA,CAAc,OAAA,EAAmD;AACtE,MAAA,OAAO;AAAA,QACN,WAAA,EAAa,MAAA,CAAO,OAAA,CAAQ,OAAO,CAAA;AAAA,QACnC,SAAA,EAAW,MAAA,CAAO,OAAA,CAAQ,KAAK,CAAA;AAAA,QAC/B,KAAA,EAAO,IAAA,CAAK,GAAA;AAAA,UACX,CAAA;AAAA,UACA,IAAA,CAAK,GAAA,CAAI,OAAA,EAAS,IAAA,CAAK,KAAA,CAAM,OAAA,CAAQ,KAAK,CAAC;AAAA,QAC5C,CAAA;AAAA,QACA,OAAA,EAAS,KAAA;AAAA,QACT,UAAA,EAAY,CAAC,CAAA;AAAA,QACb,MAAA,EAAQ,CAAC;AAAA,MACV,CAAA;AAAA,IACD;AAAA,EACD,CAAA;AACD;ADtBA;AACA;AACE;AACF,4CAAC","file":"/home/nathan/r7/rivetkit-typescript/packages/traces/dist/tsup/chunk-MFBM65UR.cjs","sourcesContent":[null,"import type { OtlpExportTraceServiceRequestJson } from \"./otlp.js\";\nimport type {\n\tEndSpanOptions,\n\tEventOptions,\n\tReadRangeOptions,\n\tReadRangeResult,\n\tReadRangeWire,\n\tSpanHandle,\n\tSpanStatusInput,\n\tStartSpanOptions,\n\tTraces,\n\tUpdateSpanOptions,\n} from \"./types.js\";\n\nconst U32_MAX = 0xffff_ffff;\n\nconst NOOP_SPAN: SpanHandle = {\n\tspanId: new Uint8Array(8),\n\ttraceId: new Uint8Array(16),\n\tisActive: () => false,\n};\n\nfunction createEmptyOtlpExport(): OtlpExportTraceServiceRequestJson {\n\treturn {\n\t\tresourceSpans: [\n\t\t\t{\n\t\t\t\tscopeSpans: [{ spans: [] }],\n\t\t\t},\n\t\t],\n\t};\n}\n\n/**\n * Implements the Traces contract without persisting or exporting trace data.\n */\nexport function createNoopTraces(): Traces<OtlpExportTraceServiceRequestJson> {\n\treturn {\n\t\tstartSpan(_name: string, _options?: StartSpanOptions): SpanHandle {\n\t\t\treturn NOOP_SPAN;\n\t\t},\n\t\tupdateSpan(_handle: SpanHandle, _options: UpdateSpanOptions): void {},\n\t\tsetAttributes(\n\t\t\t_handle: SpanHandle,\n\t\t\t_attributes: Record<string, unknown>,\n\t\t): void {},\n\t\tsetStatus(_handle: SpanHandle, _status: SpanStatusInput): void {},\n\t\tendSpan(_handle: SpanHandle, _options?: EndSpanOptions): void {},\n\t\temitEvent(\n\t\t\t_handle: SpanHandle,\n\t\t\t_name: string,\n\t\t\t_options?: EventOptions,\n\t\t): void {},\n\t\twithSpan<T>(_handle: SpanHandle, fn: () => T): T {\n\t\t\treturn fn();\n\t\t},\n\t\tgetCurrentSpan(): SpanHandle | null {\n\t\t\treturn null;\n\t\t},\n\t\tasync flush(): Promise<boolean> {\n\t\t\treturn false;\n\t\t},\n\t\tgetLastWriteError(): unknown | null {\n\t\t\treturn null;\n\t\t},\n\t\tasync readRange(\n\t\t\t_options: ReadRangeOptions,\n\t\t): Promise<ReadRangeResult<OtlpExportTraceServiceRequestJson>> {\n\t\t\treturn {\n\t\t\t\totlp: createEmptyOtlpExport(),\n\t\t\t\tclamped: false,\n\t\t\t};\n\t\t},\n\t\tasync readRangeWire(options: ReadRangeOptions): Promise<ReadRangeWire> {\n\t\t\treturn {\n\t\t\t\tstartTimeMs: BigInt(options.startMs),\n\t\t\t\tendTimeMs: BigInt(options.endMs),\n\t\t\t\tlimit: Math.max(\n\t\t\t\t\t0,\n\t\t\t\t\tMath.min(U32_MAX, Math.floor(options.limit)),\n\t\t\t\t),\n\t\t\t\tclamped: false,\n\t\t\t\tbaseChunks: [],\n\t\t\t\tchunks: [],\n\t\t\t};\n\t\t},\n\t};\n}\n"]}
1
+ {"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/traces/dist/tsup/chunk-MFBM65UR.cjs","../../src/noop.ts"],"names":[],"mappings":"AAAA;ACcA,IAAM,QAAA,EAAU,UAAA;AAEhB,IAAM,UAAA,EAAwB;AAAA,EAC7B,MAAA,EAAQ,IAAI,UAAA,CAAW,CAAC,CAAA;AAAA,EACxB,OAAA,EAAS,IAAI,UAAA,CAAW,EAAE,CAAA;AAAA,EAC1B,QAAA,EAAU,CAAA,EAAA,GAAM;AACjB,CAAA;AAEA,SAAS,qBAAA,CAAA,EAA2D;AACnE,EAAA,OAAO;AAAA,IACN,aAAA,EAAe;AAAA,MACd;AAAA,QACC,UAAA,EAAY,CAAC,EAAE,KAAA,EAAO,CAAC,EAAE,CAAC;AAAA,MAC3B;AAAA,IACD;AAAA,EACD,CAAA;AACD;AAKO,SAAS,gBAAA,CAAA,EAA8D;AAC7E,EAAA,OAAO;AAAA,IACN,SAAA,CAAU,KAAA,EAAe,QAAA,EAAyC;AACjE,MAAA,OAAO,SAAA;AAAA,IACR,CAAA;AAAA,IACA,UAAA,CAAW,OAAA,EAAqB,QAAA,EAAmC;AAAA,IAAC,CAAA;AAAA,IACpE,aAAA,CACC,OAAA,EACA,WAAA,EACO;AAAA,IAAC,CAAA;AAAA,IACT,SAAA,CAAU,OAAA,EAAqB,OAAA,EAAgC;AAAA,IAAC,CAAA;AAAA,IAChE,OAAA,CAAQ,OAAA,EAAqB,QAAA,EAAiC;AAAA,IAAC,CAAA;AAAA,IAC/D,SAAA,CACC,OAAA,EACA,KAAA,EACA,QAAA,EACO;AAAA,IAAC,CAAA;AAAA,IACT,QAAA,CAAY,OAAA,EAAqB,EAAA,EAAgB;AAChD,MAAA,OAAO,EAAA,CAAG,CAAA;AAAA,IACX,CAAA;AAAA,IACA,cAAA,CAAA,EAAoC;AACnC,MAAA,OAAO,IAAA;AAAA,IACR,CAAA;AAAA,IACA,MAAM,KAAA,CAAA,EAA0B;AAC/B,MAAA,OAAO,KAAA;AAAA,IACR,CAAA;AAAA,IACA,iBAAA,CAAA,EAAoC;AACnC,MAAA,OAAO,IAAA;AAAA,IACR,CAAA;AAAA,IACA,MAAM,SAAA,CACL,QAAA,EAC8D;AAC9D,MAAA,OAAO;AAAA,QACN,IAAA,EAAM,qBAAA,CAAsB,CAAA;AAAA,QAC5B,OAAA,EAAS;AAAA,MACV,CAAA;AAAA,IACD,CAAA;AAAA,IACA,MAAM,aAAA,CAAc,OAAA,EAAmD;AACtE,MAAA,OAAO;AAAA,QACN,WAAA,EAAa,MAAA,CAAO,OAAA,CAAQ,OAAO,CAAA;AAAA,QACnC,SAAA,EAAW,MAAA,CAAO,OAAA,CAAQ,KAAK,CAAA;AAAA,QAC/B,KAAA,EAAO,IAAA,CAAK,GAAA;AAAA,UACX,CAAA;AAAA,UACA,IAAA,CAAK,GAAA,CAAI,OAAA,EAAS,IAAA,CAAK,KAAA,CAAM,OAAA,CAAQ,KAAK,CAAC;AAAA,QAC5C,CAAA;AAAA,QACA,OAAA,EAAS,KAAA;AAAA,QACT,UAAA,EAAY,CAAC,CAAA;AAAA,QACb,MAAA,EAAQ,CAAC;AAAA,MACV,CAAA;AAAA,IACD;AAAA,EACD,CAAA;AACD;ADtBA;AACA;AACE;AACF,4CAAC","file":"/home/runner/work/rivet/rivet/rivetkit-typescript/packages/traces/dist/tsup/chunk-MFBM65UR.cjs","sourcesContent":[null,"import type { OtlpExportTraceServiceRequestJson } from \"./otlp.js\";\nimport type {\n\tEndSpanOptions,\n\tEventOptions,\n\tReadRangeOptions,\n\tReadRangeResult,\n\tReadRangeWire,\n\tSpanHandle,\n\tSpanStatusInput,\n\tStartSpanOptions,\n\tTraces,\n\tUpdateSpanOptions,\n} from \"./types.js\";\n\nconst U32_MAX = 0xffff_ffff;\n\nconst NOOP_SPAN: SpanHandle = {\n\tspanId: new Uint8Array(8),\n\ttraceId: new Uint8Array(16),\n\tisActive: () => false,\n};\n\nfunction createEmptyOtlpExport(): OtlpExportTraceServiceRequestJson {\n\treturn {\n\t\tresourceSpans: [\n\t\t\t{\n\t\t\t\tscopeSpans: [{ spans: [] }],\n\t\t\t},\n\t\t],\n\t};\n}\n\n/**\n * Implements the Traces contract without persisting or exporting trace data.\n */\nexport function createNoopTraces(): Traces<OtlpExportTraceServiceRequestJson> {\n\treturn {\n\t\tstartSpan(_name: string, _options?: StartSpanOptions): SpanHandle {\n\t\t\treturn NOOP_SPAN;\n\t\t},\n\t\tupdateSpan(_handle: SpanHandle, _options: UpdateSpanOptions): void {},\n\t\tsetAttributes(\n\t\t\t_handle: SpanHandle,\n\t\t\t_attributes: Record<string, unknown>,\n\t\t): void {},\n\t\tsetStatus(_handle: SpanHandle, _status: SpanStatusInput): void {},\n\t\tendSpan(_handle: SpanHandle, _options?: EndSpanOptions): void {},\n\t\temitEvent(\n\t\t\t_handle: SpanHandle,\n\t\t\t_name: string,\n\t\t\t_options?: EventOptions,\n\t\t): void {},\n\t\twithSpan<T>(_handle: SpanHandle, fn: () => T): T {\n\t\t\treturn fn();\n\t\t},\n\t\tgetCurrentSpan(): SpanHandle | null {\n\t\t\treturn null;\n\t\t},\n\t\tasync flush(): Promise<boolean> {\n\t\t\treturn false;\n\t\t},\n\t\tgetLastWriteError(): unknown | null {\n\t\t\treturn null;\n\t\t},\n\t\tasync readRange(\n\t\t\t_options: ReadRangeOptions,\n\t\t): Promise<ReadRangeResult<OtlpExportTraceServiceRequestJson>> {\n\t\t\treturn {\n\t\t\t\totlp: createEmptyOtlpExport(),\n\t\t\t\tclamped: false,\n\t\t\t};\n\t\t},\n\t\tasync readRangeWire(options: ReadRangeOptions): Promise<ReadRangeWire> {\n\t\t\treturn {\n\t\t\t\tstartTimeMs: BigInt(options.startMs),\n\t\t\t\tendTimeMs: BigInt(options.endMs),\n\t\t\t\tlimit: Math.max(\n\t\t\t\t\t0,\n\t\t\t\t\tMath.min(U32_MAX, Math.floor(options.limit)),\n\t\t\t\t),\n\t\t\t\tclamped: false,\n\t\t\t\tbaseChunks: [],\n\t\t\t\tchunks: [],\n\t\t\t};\n\t\t},\n\t};\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/nathan/r7/rivetkit-typescript/packages/traces/dist/tsup/chunk-QOSSO6CN.cjs","../../schemas/versioned.ts","../schemas/v1.ts"],"names":[],"mappings":"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","file":"/home/nathan/r7/rivetkit-typescript/packages/traces/dist/tsup/chunk-QOSSO6CN.cjs","sourcesContent":[null,"import * as bare from \"@rivetkit/bare-ts\";\nimport { createVersionedDataHandler } from \"vbare\";\nimport * as v1 from \"../dist/schemas/v1\";\n\nexport const CURRENT_VERSION = 1;\n\nexport type {\n\tActiveSpanRef,\n\tAttributes,\n\tChunk,\n\tKeyValue,\n\tReadRangeWire,\n\tRecord,\n\tRecordBody,\n\tSpanEnd,\n\tSpanEvent,\n\tSpanId,\n\tSpanLink,\n\tSpanRecordKey,\n\tSpanSnapshot,\n\tSpanStart,\n\tSpanStatus,\n\tSpanUpdate,\n\tStringId,\n\tTraceId,\n} from \"../dist/schemas/v1\";\n\nexport { SpanStatusCode } from \"../dist/schemas/v1\";\n\nexport const CHUNK_VERSIONED = createVersionedDataHandler<v1.Chunk>({\n\tdeserializeVersion: (bytes, version) => {\n\t\tswitch (version) {\n\t\t\tcase 1:\n\t\t\t\treturn decodeChunk(bytes);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(`Unknown Chunk version ${version}`);\n\t\t}\n\t},\n\tserializeVersion: (data, version) => {\n\t\tswitch (version) {\n\t\t\tcase 1:\n\t\t\t\treturn encodeChunk(data as v1.Chunk);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(`Unknown Chunk version ${version}`);\n\t\t}\n\t},\n\tdeserializeConverters: () => [],\n\tserializeConverters: () => [],\n});\n\nexport const READ_RANGE_VERSIONED =\n\tcreateVersionedDataHandler<v1.ReadRangeWire>({\n\t\tdeserializeVersion: (bytes, version) => {\n\t\t\tswitch (version) {\n\t\t\t\tcase 1:\n\t\t\t\t\treturn v1.decodeReadRangeWire(bytes);\n\t\t\t\tdefault:\n\t\t\t\t\tthrow new Error(`Unknown ReadRangeWire version ${version}`);\n\t\t\t}\n\t\t},\n\t\tserializeVersion: (data, version) => {\n\t\t\tswitch (version) {\n\t\t\t\tcase 1:\n\t\t\t\t\treturn v1.encodeReadRangeWire(data as v1.ReadRangeWire);\n\t\t\t\tdefault:\n\t\t\t\t\tthrow new Error(`Unknown ReadRangeWire version ${version}`);\n\t\t\t}\n\t\t},\n\t\tdeserializeConverters: () => [],\n\t\tserializeConverters: () => [],\n\t});\n\nexport { decodeReadRangeWire, encodeReadRangeWire } from \"../dist/schemas/v1\";\n\nconst recordConfig = bare.Config({});\nconst chunkConfig = bare.Config({});\n\nexport function encodeChunk(chunk: v1.Chunk): Uint8Array {\n\tconst bc = new bare.ByteCursor(\n\t\tnew Uint8Array(chunkConfig.initialBufferLength),\n\t\tchunkConfig,\n\t);\n\tv1.writeChunk(bc, chunk);\n\treturn new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset);\n}\n\nexport function decodeChunk(bytes: Uint8Array): v1.Chunk {\n\tconst bc = new bare.ByteCursor(bytes, chunkConfig);\n\treturn v1.readChunk(bc);\n}\n\nexport function encodeRecord(record: v1.Record): Uint8Array {\n\tconst bc = new bare.ByteCursor(\n\t\tnew Uint8Array(recordConfig.initialBufferLength),\n\t\trecordConfig,\n\t);\n\tv1.writeRecord(bc, record);\n\treturn new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset);\n}\n","// @generated - post-processed by compile-bare.ts\nimport * as bare from \"@rivetkit/bare-ts\"\n\nconst config = /* @__PURE__ */ bare.Config({})\n\nexport type u32 = number\nexport type u64 = bigint\n\nexport type Cbor = ArrayBuffer\n\nexport function readCbor(bc: bare.ByteCursor): Cbor {\n return bare.readData(bc)\n}\n\nexport function writeCbor(bc: bare.ByteCursor, x: Cbor): void {\n bare.writeData(bc, x)\n}\n\nexport type TraceId = ArrayBuffer\n\nexport function readTraceId(bc: bare.ByteCursor): TraceId {\n return bare.readData(bc)\n}\n\nexport function writeTraceId(bc: bare.ByteCursor, x: TraceId): void {\n bare.writeData(bc, x)\n}\n\nexport type SpanId = ArrayBuffer\n\nexport function readSpanId(bc: bare.ByteCursor): SpanId {\n return bare.readData(bc)\n}\n\nexport function writeSpanId(bc: bare.ByteCursor, x: SpanId): void {\n bare.writeData(bc, x)\n}\n\nexport type StringId = u32\n\nexport function readStringId(bc: bare.ByteCursor): StringId {\n return bare.readU32(bc)\n}\n\nexport function writeStringId(bc: bare.ByteCursor, x: StringId): void {\n bare.writeU32(bc, x)\n}\n\nexport type KeyValue = {\n readonly key: StringId,\n readonly value: Cbor,\n}\n\nexport function readKeyValue(bc: bare.ByteCursor): KeyValue {\n return {\n key: readStringId(bc),\n value: readCbor(bc),\n }\n}\n\nexport function writeKeyValue(bc: bare.ByteCursor, x: KeyValue): void {\n writeStringId(bc, x.key)\n writeCbor(bc, x.value)\n}\n\nexport type Attributes = readonly KeyValue[]\n\nexport function readAttributes(bc: bare.ByteCursor): Attributes {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readKeyValue(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readKeyValue(bc)\n }\n return result\n}\n\nexport function writeAttributes(bc: bare.ByteCursor, x: Attributes): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeKeyValue(bc, x[i])\n }\n}\n\nexport enum SpanStatusCode {\n UNSET = \"UNSET\",\n OK = \"OK\",\n ERROR = \"ERROR\",\n}\n\nexport function readSpanStatusCode(bc: bare.ByteCursor): SpanStatusCode {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return SpanStatusCode.UNSET\n case 1:\n return SpanStatusCode.OK\n case 2:\n return SpanStatusCode.ERROR\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeSpanStatusCode(bc: bare.ByteCursor, x: SpanStatusCode): void {\n switch (x) {\n case SpanStatusCode.UNSET: {\n bare.writeU8(bc, 0)\n break\n }\n case SpanStatusCode.OK: {\n bare.writeU8(bc, 1)\n break\n }\n case SpanStatusCode.ERROR: {\n bare.writeU8(bc, 2)\n break\n }\n }\n}\n\nfunction read0(bc: bare.ByteCursor): string | null {\n return bare.readBool(bc)\n ? bare.readString(bc)\n : null\n}\n\nfunction write0(bc: bare.ByteCursor, x: string | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n bare.writeString(bc, x)\n }\n}\n\nexport type SpanStatus = {\n readonly code: SpanStatusCode,\n readonly message: string | null,\n}\n\nexport function readSpanStatus(bc: bare.ByteCursor): SpanStatus {\n return {\n code: readSpanStatusCode(bc),\n message: read0(bc),\n }\n}\n\nexport function writeSpanStatus(bc: bare.ByteCursor, x: SpanStatus): void {\n writeSpanStatusCode(bc, x.code)\n write0(bc, x.message)\n}\n\nexport type SpanLink = {\n readonly traceId: TraceId,\n readonly spanId: SpanId,\n readonly traceState: string | null,\n readonly attributes: Attributes,\n readonly droppedAttributesCount: u32,\n}\n\nexport function readSpanLink(bc: bare.ByteCursor): SpanLink {\n return {\n traceId: readTraceId(bc),\n spanId: readSpanId(bc),\n traceState: read0(bc),\n attributes: readAttributes(bc),\n droppedAttributesCount: bare.readU32(bc),\n }\n}\n\nexport function writeSpanLink(bc: bare.ByteCursor, x: SpanLink): void {\n writeTraceId(bc, x.traceId)\n writeSpanId(bc, x.spanId)\n write0(bc, x.traceState)\n writeAttributes(bc, x.attributes)\n bare.writeU32(bc, x.droppedAttributesCount)\n}\n\nfunction read1(bc: bare.ByteCursor): SpanId | null {\n return bare.readBool(bc)\n ? readSpanId(bc)\n : null\n}\n\nfunction write1(bc: bare.ByteCursor, x: SpanId | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeSpanId(bc, x)\n }\n}\n\nfunction read2(bc: bare.ByteCursor): readonly SpanLink[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readSpanLink(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readSpanLink(bc)\n }\n return result\n}\n\nfunction write2(bc: bare.ByteCursor, x: readonly SpanLink[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeSpanLink(bc, x[i])\n }\n}\n\nexport type SpanStart = {\n readonly traceId: TraceId,\n readonly spanId: SpanId,\n readonly parentSpanId: SpanId | null,\n readonly name: StringId,\n readonly kind: u32,\n readonly traceState: string | null,\n readonly flags: u32,\n readonly attributes: Attributes,\n readonly droppedAttributesCount: u32,\n readonly links: readonly SpanLink[],\n readonly droppedLinksCount: u32,\n}\n\nexport function readSpanStart(bc: bare.ByteCursor): SpanStart {\n return {\n traceId: readTraceId(bc),\n spanId: readSpanId(bc),\n parentSpanId: read1(bc),\n name: readStringId(bc),\n kind: bare.readU32(bc),\n traceState: read0(bc),\n flags: bare.readU32(bc),\n attributes: readAttributes(bc),\n droppedAttributesCount: bare.readU32(bc),\n links: read2(bc),\n droppedLinksCount: bare.readU32(bc),\n }\n}\n\nexport function writeSpanStart(bc: bare.ByteCursor, x: SpanStart): void {\n writeTraceId(bc, x.traceId)\n writeSpanId(bc, x.spanId)\n write1(bc, x.parentSpanId)\n writeStringId(bc, x.name)\n bare.writeU32(bc, x.kind)\n write0(bc, x.traceState)\n bare.writeU32(bc, x.flags)\n writeAttributes(bc, x.attributes)\n bare.writeU32(bc, x.droppedAttributesCount)\n write2(bc, x.links)\n bare.writeU32(bc, x.droppedLinksCount)\n}\n\nfunction read3(bc: bare.ByteCursor): SpanStatus | null {\n return bare.readBool(bc)\n ? readSpanStatus(bc)\n : null\n}\n\nfunction write3(bc: bare.ByteCursor, x: SpanStatus | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeSpanStatus(bc, x)\n }\n}\n\nexport type SpanUpdate = {\n readonly spanId: SpanId,\n readonly attributes: Attributes,\n readonly droppedAttributesCount: u32,\n readonly status: SpanStatus | null,\n}\n\nexport function readSpanUpdate(bc: bare.ByteCursor): SpanUpdate {\n return {\n spanId: readSpanId(bc),\n attributes: readAttributes(bc),\n droppedAttributesCount: bare.readU32(bc),\n status: read3(bc),\n }\n}\n\nexport function writeSpanUpdate(bc: bare.ByteCursor, x: SpanUpdate): void {\n writeSpanId(bc, x.spanId)\n writeAttributes(bc, x.attributes)\n bare.writeU32(bc, x.droppedAttributesCount)\n write3(bc, x.status)\n}\n\nexport type SpanEvent = {\n readonly spanId: SpanId,\n readonly name: StringId,\n readonly attributes: Attributes,\n readonly droppedAttributesCount: u32,\n}\n\nexport function readSpanEvent(bc: bare.ByteCursor): SpanEvent {\n return {\n spanId: readSpanId(bc),\n name: readStringId(bc),\n attributes: readAttributes(bc),\n droppedAttributesCount: bare.readU32(bc),\n }\n}\n\nexport function writeSpanEvent(bc: bare.ByteCursor, x: SpanEvent): void {\n writeSpanId(bc, x.spanId)\n writeStringId(bc, x.name)\n writeAttributes(bc, x.attributes)\n bare.writeU32(bc, x.droppedAttributesCount)\n}\n\nexport type SpanEnd = {\n readonly spanId: SpanId,\n readonly status: SpanStatus | null,\n}\n\nexport function readSpanEnd(bc: bare.ByteCursor): SpanEnd {\n return {\n spanId: readSpanId(bc),\n status: read3(bc),\n }\n}\n\nexport function writeSpanEnd(bc: bare.ByteCursor, x: SpanEnd): void {\n writeSpanId(bc, x.spanId)\n write3(bc, x.status)\n}\n\nexport type SpanSnapshot = {\n readonly traceId: TraceId,\n readonly spanId: SpanId,\n readonly parentSpanId: SpanId | null,\n readonly name: StringId,\n readonly kind: u32,\n readonly startTimeUnixNs: u64,\n readonly traceState: string | null,\n readonly flags: u32,\n readonly attributes: Attributes,\n readonly droppedAttributesCount: u32,\n readonly links: readonly SpanLink[],\n readonly droppedLinksCount: u32,\n readonly status: SpanStatus | null,\n}\n\nexport function readSpanSnapshot(bc: bare.ByteCursor): SpanSnapshot {\n return {\n traceId: readTraceId(bc),\n spanId: readSpanId(bc),\n parentSpanId: read1(bc),\n name: readStringId(bc),\n kind: bare.readU32(bc),\n startTimeUnixNs: bare.readU64(bc),\n traceState: read0(bc),\n flags: bare.readU32(bc),\n attributes: readAttributes(bc),\n droppedAttributesCount: bare.readU32(bc),\n links: read2(bc),\n droppedLinksCount: bare.readU32(bc),\n status: read3(bc),\n }\n}\n\nexport function writeSpanSnapshot(bc: bare.ByteCursor, x: SpanSnapshot): void {\n writeTraceId(bc, x.traceId)\n writeSpanId(bc, x.spanId)\n write1(bc, x.parentSpanId)\n writeStringId(bc, x.name)\n bare.writeU32(bc, x.kind)\n bare.writeU64(bc, x.startTimeUnixNs)\n write0(bc, x.traceState)\n bare.writeU32(bc, x.flags)\n writeAttributes(bc, x.attributes)\n bare.writeU32(bc, x.droppedAttributesCount)\n write2(bc, x.links)\n bare.writeU32(bc, x.droppedLinksCount)\n write3(bc, x.status)\n}\n\nexport type RecordBody =\n | { readonly tag: \"SpanStart\", readonly val: SpanStart }\n | { readonly tag: \"SpanEvent\", readonly val: SpanEvent }\n | { readonly tag: \"SpanUpdate\", readonly val: SpanUpdate }\n | { readonly tag: \"SpanEnd\", readonly val: SpanEnd }\n | { readonly tag: \"SpanSnapshot\", readonly val: SpanSnapshot }\n\nexport function readRecordBody(bc: bare.ByteCursor): RecordBody {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"SpanStart\", val: readSpanStart(bc) }\n case 1:\n return { tag: \"SpanEvent\", val: readSpanEvent(bc) }\n case 2:\n return { tag: \"SpanUpdate\", val: readSpanUpdate(bc) }\n case 3:\n return { tag: \"SpanEnd\", val: readSpanEnd(bc) }\n case 4:\n return { tag: \"SpanSnapshot\", val: readSpanSnapshot(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeRecordBody(bc: bare.ByteCursor, x: RecordBody): void {\n switch (x.tag) {\n case \"SpanStart\": {\n bare.writeU8(bc, 0)\n writeSpanStart(bc, x.val)\n break\n }\n case \"SpanEvent\": {\n bare.writeU8(bc, 1)\n writeSpanEvent(bc, x.val)\n break\n }\n case \"SpanUpdate\": {\n bare.writeU8(bc, 2)\n writeSpanUpdate(bc, x.val)\n break\n }\n case \"SpanEnd\": {\n bare.writeU8(bc, 3)\n writeSpanEnd(bc, x.val)\n break\n }\n case \"SpanSnapshot\": {\n bare.writeU8(bc, 4)\n writeSpanSnapshot(bc, x.val)\n break\n }\n }\n}\n\nexport type Record = {\n readonly timeOffsetNs: u64,\n readonly body: RecordBody,\n}\n\nexport function readRecord(bc: bare.ByteCursor): Record {\n return {\n timeOffsetNs: bare.readU64(bc),\n body: readRecordBody(bc),\n }\n}\n\nexport function writeRecord(bc: bare.ByteCursor, x: Record): void {\n bare.writeU64(bc, x.timeOffsetNs)\n writeRecordBody(bc, x.body)\n}\n\nexport type SpanRecordKey = {\n readonly prefix: u32,\n readonly bucketStartSec: u64,\n readonly chunkId: u32,\n readonly recordIndex: u32,\n}\n\nexport function readSpanRecordKey(bc: bare.ByteCursor): SpanRecordKey {\n return {\n prefix: bare.readU32(bc),\n bucketStartSec: bare.readU64(bc),\n chunkId: bare.readU32(bc),\n recordIndex: bare.readU32(bc),\n }\n}\n\nexport function writeSpanRecordKey(bc: bare.ByteCursor, x: SpanRecordKey): void {\n bare.writeU32(bc, x.prefix)\n bare.writeU64(bc, x.bucketStartSec)\n bare.writeU32(bc, x.chunkId)\n bare.writeU32(bc, x.recordIndex)\n}\n\nfunction read4(bc: bare.ByteCursor): SpanRecordKey | null {\n return bare.readBool(bc)\n ? readSpanRecordKey(bc)\n : null\n}\n\nfunction write4(bc: bare.ByteCursor, x: SpanRecordKey | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeSpanRecordKey(bc, x)\n }\n}\n\nexport type ActiveSpanRef = {\n readonly spanId: SpanId,\n readonly startKey: SpanRecordKey,\n readonly latestSnapshotKey: SpanRecordKey | null,\n}\n\nexport function readActiveSpanRef(bc: bare.ByteCursor): ActiveSpanRef {\n return {\n spanId: readSpanId(bc),\n startKey: readSpanRecordKey(bc),\n latestSnapshotKey: read4(bc),\n }\n}\n\nexport function writeActiveSpanRef(bc: bare.ByteCursor, x: ActiveSpanRef): void {\n writeSpanId(bc, x.spanId)\n writeSpanRecordKey(bc, x.startKey)\n write4(bc, x.latestSnapshotKey)\n}\n\nfunction read5(bc: bare.ByteCursor): readonly string[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [bare.readString(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = bare.readString(bc)\n }\n return result\n}\n\nfunction write5(bc: bare.ByteCursor, x: readonly string[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n bare.writeString(bc, x[i])\n }\n}\n\nfunction read6(bc: bare.ByteCursor): readonly Record[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readRecord(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readRecord(bc)\n }\n return result\n}\n\nfunction write6(bc: bare.ByteCursor, x: readonly Record[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeRecord(bc, x[i])\n }\n}\n\nfunction read7(bc: bare.ByteCursor): readonly ActiveSpanRef[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readActiveSpanRef(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readActiveSpanRef(bc)\n }\n return result\n}\n\nfunction write7(bc: bare.ByteCursor, x: readonly ActiveSpanRef[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeActiveSpanRef(bc, x[i])\n }\n}\n\nexport type Chunk = {\n readonly baseUnixNs: u64,\n readonly strings: readonly string[],\n readonly records: readonly Record[],\n readonly activeSpans: readonly ActiveSpanRef[],\n}\n\nexport function readChunk(bc: bare.ByteCursor): Chunk {\n return {\n baseUnixNs: bare.readU64(bc),\n strings: read5(bc),\n records: read6(bc),\n activeSpans: read7(bc),\n }\n}\n\nexport function writeChunk(bc: bare.ByteCursor, x: Chunk): void {\n bare.writeU64(bc, x.baseUnixNs)\n write5(bc, x.strings)\n write6(bc, x.records)\n write7(bc, x.activeSpans)\n}\n\nfunction read8(bc: bare.ByteCursor): readonly Chunk[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readChunk(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readChunk(bc)\n }\n return result\n}\n\nfunction write8(bc: bare.ByteCursor, x: readonly Chunk[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeChunk(bc, x[i])\n }\n}\n\nexport type ReadRangeWire = {\n readonly startTimeMs: u64,\n readonly endTimeMs: u64,\n readonly limit: u32,\n readonly clamped: boolean,\n readonly baseChunks: readonly Chunk[],\n readonly chunks: readonly Chunk[],\n}\n\nexport function readReadRangeWire(bc: bare.ByteCursor): ReadRangeWire {\n return {\n startTimeMs: bare.readU64(bc),\n endTimeMs: bare.readU64(bc),\n limit: bare.readU32(bc),\n clamped: bare.readBool(bc),\n baseChunks: read8(bc),\n chunks: read8(bc),\n }\n}\n\nexport function writeReadRangeWire(bc: bare.ByteCursor, x: ReadRangeWire): void {\n bare.writeU64(bc, x.startTimeMs)\n bare.writeU64(bc, x.endTimeMs)\n bare.writeU32(bc, x.limit)\n bare.writeBool(bc, x.clamped)\n write8(bc, x.baseChunks)\n write8(bc, x.chunks)\n}\n\nexport function encodeReadRangeWire(x: ReadRangeWire): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeReadRangeWire(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeReadRangeWire(bytes: Uint8Array): ReadRangeWire {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readReadRangeWire(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\n\nfunction assert(condition: boolean, message?: string): asserts condition {\n if (!condition) throw new Error(message ?? \"Assertion failed\")\n}\n"]}
1
+ {"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/traces/dist/tsup/chunk-QOSSO6CN.cjs","../../schemas/versioned.ts","../schemas/v1.ts"],"names":[],"mappings":"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","file":"/home/runner/work/rivet/rivet/rivetkit-typescript/packages/traces/dist/tsup/chunk-QOSSO6CN.cjs","sourcesContent":[null,"import * as bare from \"@rivetkit/bare-ts\";\nimport { createVersionedDataHandler } from \"vbare\";\nimport * as v1 from \"../dist/schemas/v1\";\n\nexport const CURRENT_VERSION = 1;\n\nexport type {\n\tActiveSpanRef,\n\tAttributes,\n\tChunk,\n\tKeyValue,\n\tReadRangeWire,\n\tRecord,\n\tRecordBody,\n\tSpanEnd,\n\tSpanEvent,\n\tSpanId,\n\tSpanLink,\n\tSpanRecordKey,\n\tSpanSnapshot,\n\tSpanStart,\n\tSpanStatus,\n\tSpanUpdate,\n\tStringId,\n\tTraceId,\n} from \"../dist/schemas/v1\";\n\nexport { SpanStatusCode } from \"../dist/schemas/v1\";\n\nexport const CHUNK_VERSIONED = createVersionedDataHandler<v1.Chunk>({\n\tdeserializeVersion: (bytes, version) => {\n\t\tswitch (version) {\n\t\t\tcase 1:\n\t\t\t\treturn decodeChunk(bytes);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(`Unknown Chunk version ${version}`);\n\t\t}\n\t},\n\tserializeVersion: (data, version) => {\n\t\tswitch (version) {\n\t\t\tcase 1:\n\t\t\t\treturn encodeChunk(data as v1.Chunk);\n\t\t\tdefault:\n\t\t\t\tthrow new Error(`Unknown Chunk version ${version}`);\n\t\t}\n\t},\n\tdeserializeConverters: () => [],\n\tserializeConverters: () => [],\n});\n\nexport const READ_RANGE_VERSIONED =\n\tcreateVersionedDataHandler<v1.ReadRangeWire>({\n\t\tdeserializeVersion: (bytes, version) => {\n\t\t\tswitch (version) {\n\t\t\t\tcase 1:\n\t\t\t\t\treturn v1.decodeReadRangeWire(bytes);\n\t\t\t\tdefault:\n\t\t\t\t\tthrow new Error(`Unknown ReadRangeWire version ${version}`);\n\t\t\t}\n\t\t},\n\t\tserializeVersion: (data, version) => {\n\t\t\tswitch (version) {\n\t\t\t\tcase 1:\n\t\t\t\t\treturn v1.encodeReadRangeWire(data as v1.ReadRangeWire);\n\t\t\t\tdefault:\n\t\t\t\t\tthrow new Error(`Unknown ReadRangeWire version ${version}`);\n\t\t\t}\n\t\t},\n\t\tdeserializeConverters: () => [],\n\t\tserializeConverters: () => [],\n\t});\n\nexport { decodeReadRangeWire, encodeReadRangeWire } from \"../dist/schemas/v1\";\n\nconst recordConfig = bare.Config({});\nconst chunkConfig = bare.Config({});\n\nexport function encodeChunk(chunk: v1.Chunk): Uint8Array {\n\tconst bc = new bare.ByteCursor(\n\t\tnew Uint8Array(chunkConfig.initialBufferLength),\n\t\tchunkConfig,\n\t);\n\tv1.writeChunk(bc, chunk);\n\treturn new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset);\n}\n\nexport function decodeChunk(bytes: Uint8Array): v1.Chunk {\n\tconst bc = new bare.ByteCursor(bytes, chunkConfig);\n\treturn v1.readChunk(bc);\n}\n\nexport function encodeRecord(record: v1.Record): Uint8Array {\n\tconst bc = new bare.ByteCursor(\n\t\tnew Uint8Array(recordConfig.initialBufferLength),\n\t\trecordConfig,\n\t);\n\tv1.writeRecord(bc, record);\n\treturn new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset);\n}\n","// @generated - post-processed by compile-bare.ts\nimport * as bare from \"@rivetkit/bare-ts\"\n\nconst config = /* @__PURE__ */ bare.Config({})\n\nexport type u32 = number\nexport type u64 = bigint\n\nexport type Cbor = ArrayBuffer\n\nexport function readCbor(bc: bare.ByteCursor): Cbor {\n return bare.readData(bc)\n}\n\nexport function writeCbor(bc: bare.ByteCursor, x: Cbor): void {\n bare.writeData(bc, x)\n}\n\nexport type TraceId = ArrayBuffer\n\nexport function readTraceId(bc: bare.ByteCursor): TraceId {\n return bare.readData(bc)\n}\n\nexport function writeTraceId(bc: bare.ByteCursor, x: TraceId): void {\n bare.writeData(bc, x)\n}\n\nexport type SpanId = ArrayBuffer\n\nexport function readSpanId(bc: bare.ByteCursor): SpanId {\n return bare.readData(bc)\n}\n\nexport function writeSpanId(bc: bare.ByteCursor, x: SpanId): void {\n bare.writeData(bc, x)\n}\n\nexport type StringId = u32\n\nexport function readStringId(bc: bare.ByteCursor): StringId {\n return bare.readU32(bc)\n}\n\nexport function writeStringId(bc: bare.ByteCursor, x: StringId): void {\n bare.writeU32(bc, x)\n}\n\nexport type KeyValue = {\n readonly key: StringId,\n readonly value: Cbor,\n}\n\nexport function readKeyValue(bc: bare.ByteCursor): KeyValue {\n return {\n key: readStringId(bc),\n value: readCbor(bc),\n }\n}\n\nexport function writeKeyValue(bc: bare.ByteCursor, x: KeyValue): void {\n writeStringId(bc, x.key)\n writeCbor(bc, x.value)\n}\n\nexport type Attributes = readonly KeyValue[]\n\nexport function readAttributes(bc: bare.ByteCursor): Attributes {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readKeyValue(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readKeyValue(bc)\n }\n return result\n}\n\nexport function writeAttributes(bc: bare.ByteCursor, x: Attributes): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeKeyValue(bc, x[i])\n }\n}\n\nexport enum SpanStatusCode {\n UNSET = \"UNSET\",\n OK = \"OK\",\n ERROR = \"ERROR\",\n}\n\nexport function readSpanStatusCode(bc: bare.ByteCursor): SpanStatusCode {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return SpanStatusCode.UNSET\n case 1:\n return SpanStatusCode.OK\n case 2:\n return SpanStatusCode.ERROR\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeSpanStatusCode(bc: bare.ByteCursor, x: SpanStatusCode): void {\n switch (x) {\n case SpanStatusCode.UNSET: {\n bare.writeU8(bc, 0)\n break\n }\n case SpanStatusCode.OK: {\n bare.writeU8(bc, 1)\n break\n }\n case SpanStatusCode.ERROR: {\n bare.writeU8(bc, 2)\n break\n }\n }\n}\n\nfunction read0(bc: bare.ByteCursor): string | null {\n return bare.readBool(bc)\n ? bare.readString(bc)\n : null\n}\n\nfunction write0(bc: bare.ByteCursor, x: string | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n bare.writeString(bc, x)\n }\n}\n\nexport type SpanStatus = {\n readonly code: SpanStatusCode,\n readonly message: string | null,\n}\n\nexport function readSpanStatus(bc: bare.ByteCursor): SpanStatus {\n return {\n code: readSpanStatusCode(bc),\n message: read0(bc),\n }\n}\n\nexport function writeSpanStatus(bc: bare.ByteCursor, x: SpanStatus): void {\n writeSpanStatusCode(bc, x.code)\n write0(bc, x.message)\n}\n\nexport type SpanLink = {\n readonly traceId: TraceId,\n readonly spanId: SpanId,\n readonly traceState: string | null,\n readonly attributes: Attributes,\n readonly droppedAttributesCount: u32,\n}\n\nexport function readSpanLink(bc: bare.ByteCursor): SpanLink {\n return {\n traceId: readTraceId(bc),\n spanId: readSpanId(bc),\n traceState: read0(bc),\n attributes: readAttributes(bc),\n droppedAttributesCount: bare.readU32(bc),\n }\n}\n\nexport function writeSpanLink(bc: bare.ByteCursor, x: SpanLink): void {\n writeTraceId(bc, x.traceId)\n writeSpanId(bc, x.spanId)\n write0(bc, x.traceState)\n writeAttributes(bc, x.attributes)\n bare.writeU32(bc, x.droppedAttributesCount)\n}\n\nfunction read1(bc: bare.ByteCursor): SpanId | null {\n return bare.readBool(bc)\n ? readSpanId(bc)\n : null\n}\n\nfunction write1(bc: bare.ByteCursor, x: SpanId | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeSpanId(bc, x)\n }\n}\n\nfunction read2(bc: bare.ByteCursor): readonly SpanLink[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readSpanLink(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readSpanLink(bc)\n }\n return result\n}\n\nfunction write2(bc: bare.ByteCursor, x: readonly SpanLink[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeSpanLink(bc, x[i])\n }\n}\n\nexport type SpanStart = {\n readonly traceId: TraceId,\n readonly spanId: SpanId,\n readonly parentSpanId: SpanId | null,\n readonly name: StringId,\n readonly kind: u32,\n readonly traceState: string | null,\n readonly flags: u32,\n readonly attributes: Attributes,\n readonly droppedAttributesCount: u32,\n readonly links: readonly SpanLink[],\n readonly droppedLinksCount: u32,\n}\n\nexport function readSpanStart(bc: bare.ByteCursor): SpanStart {\n return {\n traceId: readTraceId(bc),\n spanId: readSpanId(bc),\n parentSpanId: read1(bc),\n name: readStringId(bc),\n kind: bare.readU32(bc),\n traceState: read0(bc),\n flags: bare.readU32(bc),\n attributes: readAttributes(bc),\n droppedAttributesCount: bare.readU32(bc),\n links: read2(bc),\n droppedLinksCount: bare.readU32(bc),\n }\n}\n\nexport function writeSpanStart(bc: bare.ByteCursor, x: SpanStart): void {\n writeTraceId(bc, x.traceId)\n writeSpanId(bc, x.spanId)\n write1(bc, x.parentSpanId)\n writeStringId(bc, x.name)\n bare.writeU32(bc, x.kind)\n write0(bc, x.traceState)\n bare.writeU32(bc, x.flags)\n writeAttributes(bc, x.attributes)\n bare.writeU32(bc, x.droppedAttributesCount)\n write2(bc, x.links)\n bare.writeU32(bc, x.droppedLinksCount)\n}\n\nfunction read3(bc: bare.ByteCursor): SpanStatus | null {\n return bare.readBool(bc)\n ? readSpanStatus(bc)\n : null\n}\n\nfunction write3(bc: bare.ByteCursor, x: SpanStatus | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeSpanStatus(bc, x)\n }\n}\n\nexport type SpanUpdate = {\n readonly spanId: SpanId,\n readonly attributes: Attributes,\n readonly droppedAttributesCount: u32,\n readonly status: SpanStatus | null,\n}\n\nexport function readSpanUpdate(bc: bare.ByteCursor): SpanUpdate {\n return {\n spanId: readSpanId(bc),\n attributes: readAttributes(bc),\n droppedAttributesCount: bare.readU32(bc),\n status: read3(bc),\n }\n}\n\nexport function writeSpanUpdate(bc: bare.ByteCursor, x: SpanUpdate): void {\n writeSpanId(bc, x.spanId)\n writeAttributes(bc, x.attributes)\n bare.writeU32(bc, x.droppedAttributesCount)\n write3(bc, x.status)\n}\n\nexport type SpanEvent = {\n readonly spanId: SpanId,\n readonly name: StringId,\n readonly attributes: Attributes,\n readonly droppedAttributesCount: u32,\n}\n\nexport function readSpanEvent(bc: bare.ByteCursor): SpanEvent {\n return {\n spanId: readSpanId(bc),\n name: readStringId(bc),\n attributes: readAttributes(bc),\n droppedAttributesCount: bare.readU32(bc),\n }\n}\n\nexport function writeSpanEvent(bc: bare.ByteCursor, x: SpanEvent): void {\n writeSpanId(bc, x.spanId)\n writeStringId(bc, x.name)\n writeAttributes(bc, x.attributes)\n bare.writeU32(bc, x.droppedAttributesCount)\n}\n\nexport type SpanEnd = {\n readonly spanId: SpanId,\n readonly status: SpanStatus | null,\n}\n\nexport function readSpanEnd(bc: bare.ByteCursor): SpanEnd {\n return {\n spanId: readSpanId(bc),\n status: read3(bc),\n }\n}\n\nexport function writeSpanEnd(bc: bare.ByteCursor, x: SpanEnd): void {\n writeSpanId(bc, x.spanId)\n write3(bc, x.status)\n}\n\nexport type SpanSnapshot = {\n readonly traceId: TraceId,\n readonly spanId: SpanId,\n readonly parentSpanId: SpanId | null,\n readonly name: StringId,\n readonly kind: u32,\n readonly startTimeUnixNs: u64,\n readonly traceState: string | null,\n readonly flags: u32,\n readonly attributes: Attributes,\n readonly droppedAttributesCount: u32,\n readonly links: readonly SpanLink[],\n readonly droppedLinksCount: u32,\n readonly status: SpanStatus | null,\n}\n\nexport function readSpanSnapshot(bc: bare.ByteCursor): SpanSnapshot {\n return {\n traceId: readTraceId(bc),\n spanId: readSpanId(bc),\n parentSpanId: read1(bc),\n name: readStringId(bc),\n kind: bare.readU32(bc),\n startTimeUnixNs: bare.readU64(bc),\n traceState: read0(bc),\n flags: bare.readU32(bc),\n attributes: readAttributes(bc),\n droppedAttributesCount: bare.readU32(bc),\n links: read2(bc),\n droppedLinksCount: bare.readU32(bc),\n status: read3(bc),\n }\n}\n\nexport function writeSpanSnapshot(bc: bare.ByteCursor, x: SpanSnapshot): void {\n writeTraceId(bc, x.traceId)\n writeSpanId(bc, x.spanId)\n write1(bc, x.parentSpanId)\n writeStringId(bc, x.name)\n bare.writeU32(bc, x.kind)\n bare.writeU64(bc, x.startTimeUnixNs)\n write0(bc, x.traceState)\n bare.writeU32(bc, x.flags)\n writeAttributes(bc, x.attributes)\n bare.writeU32(bc, x.droppedAttributesCount)\n write2(bc, x.links)\n bare.writeU32(bc, x.droppedLinksCount)\n write3(bc, x.status)\n}\n\nexport type RecordBody =\n | { readonly tag: \"SpanStart\", readonly val: SpanStart }\n | { readonly tag: \"SpanEvent\", readonly val: SpanEvent }\n | { readonly tag: \"SpanUpdate\", readonly val: SpanUpdate }\n | { readonly tag: \"SpanEnd\", readonly val: SpanEnd }\n | { readonly tag: \"SpanSnapshot\", readonly val: SpanSnapshot }\n\nexport function readRecordBody(bc: bare.ByteCursor): RecordBody {\n const offset = bc.offset\n const tag = bare.readU8(bc)\n switch (tag) {\n case 0:\n return { tag: \"SpanStart\", val: readSpanStart(bc) }\n case 1:\n return { tag: \"SpanEvent\", val: readSpanEvent(bc) }\n case 2:\n return { tag: \"SpanUpdate\", val: readSpanUpdate(bc) }\n case 3:\n return { tag: \"SpanEnd\", val: readSpanEnd(bc) }\n case 4:\n return { tag: \"SpanSnapshot\", val: readSpanSnapshot(bc) }\n default: {\n bc.offset = offset\n throw new bare.BareError(offset, \"invalid tag\")\n }\n }\n}\n\nexport function writeRecordBody(bc: bare.ByteCursor, x: RecordBody): void {\n switch (x.tag) {\n case \"SpanStart\": {\n bare.writeU8(bc, 0)\n writeSpanStart(bc, x.val)\n break\n }\n case \"SpanEvent\": {\n bare.writeU8(bc, 1)\n writeSpanEvent(bc, x.val)\n break\n }\n case \"SpanUpdate\": {\n bare.writeU8(bc, 2)\n writeSpanUpdate(bc, x.val)\n break\n }\n case \"SpanEnd\": {\n bare.writeU8(bc, 3)\n writeSpanEnd(bc, x.val)\n break\n }\n case \"SpanSnapshot\": {\n bare.writeU8(bc, 4)\n writeSpanSnapshot(bc, x.val)\n break\n }\n }\n}\n\nexport type Record = {\n readonly timeOffsetNs: u64,\n readonly body: RecordBody,\n}\n\nexport function readRecord(bc: bare.ByteCursor): Record {\n return {\n timeOffsetNs: bare.readU64(bc),\n body: readRecordBody(bc),\n }\n}\n\nexport function writeRecord(bc: bare.ByteCursor, x: Record): void {\n bare.writeU64(bc, x.timeOffsetNs)\n writeRecordBody(bc, x.body)\n}\n\nexport type SpanRecordKey = {\n readonly prefix: u32,\n readonly bucketStartSec: u64,\n readonly chunkId: u32,\n readonly recordIndex: u32,\n}\n\nexport function readSpanRecordKey(bc: bare.ByteCursor): SpanRecordKey {\n return {\n prefix: bare.readU32(bc),\n bucketStartSec: bare.readU64(bc),\n chunkId: bare.readU32(bc),\n recordIndex: bare.readU32(bc),\n }\n}\n\nexport function writeSpanRecordKey(bc: bare.ByteCursor, x: SpanRecordKey): void {\n bare.writeU32(bc, x.prefix)\n bare.writeU64(bc, x.bucketStartSec)\n bare.writeU32(bc, x.chunkId)\n bare.writeU32(bc, x.recordIndex)\n}\n\nfunction read4(bc: bare.ByteCursor): SpanRecordKey | null {\n return bare.readBool(bc)\n ? readSpanRecordKey(bc)\n : null\n}\n\nfunction write4(bc: bare.ByteCursor, x: SpanRecordKey | null): void {\n bare.writeBool(bc, x !== null)\n if (x !== null) {\n writeSpanRecordKey(bc, x)\n }\n}\n\nexport type ActiveSpanRef = {\n readonly spanId: SpanId,\n readonly startKey: SpanRecordKey,\n readonly latestSnapshotKey: SpanRecordKey | null,\n}\n\nexport function readActiveSpanRef(bc: bare.ByteCursor): ActiveSpanRef {\n return {\n spanId: readSpanId(bc),\n startKey: readSpanRecordKey(bc),\n latestSnapshotKey: read4(bc),\n }\n}\n\nexport function writeActiveSpanRef(bc: bare.ByteCursor, x: ActiveSpanRef): void {\n writeSpanId(bc, x.spanId)\n writeSpanRecordKey(bc, x.startKey)\n write4(bc, x.latestSnapshotKey)\n}\n\nfunction read5(bc: bare.ByteCursor): readonly string[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [bare.readString(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = bare.readString(bc)\n }\n return result\n}\n\nfunction write5(bc: bare.ByteCursor, x: readonly string[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n bare.writeString(bc, x[i])\n }\n}\n\nfunction read6(bc: bare.ByteCursor): readonly Record[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readRecord(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readRecord(bc)\n }\n return result\n}\n\nfunction write6(bc: bare.ByteCursor, x: readonly Record[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeRecord(bc, x[i])\n }\n}\n\nfunction read7(bc: bare.ByteCursor): readonly ActiveSpanRef[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readActiveSpanRef(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readActiveSpanRef(bc)\n }\n return result\n}\n\nfunction write7(bc: bare.ByteCursor, x: readonly ActiveSpanRef[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeActiveSpanRef(bc, x[i])\n }\n}\n\nexport type Chunk = {\n readonly baseUnixNs: u64,\n readonly strings: readonly string[],\n readonly records: readonly Record[],\n readonly activeSpans: readonly ActiveSpanRef[],\n}\n\nexport function readChunk(bc: bare.ByteCursor): Chunk {\n return {\n baseUnixNs: bare.readU64(bc),\n strings: read5(bc),\n records: read6(bc),\n activeSpans: read7(bc),\n }\n}\n\nexport function writeChunk(bc: bare.ByteCursor, x: Chunk): void {\n bare.writeU64(bc, x.baseUnixNs)\n write5(bc, x.strings)\n write6(bc, x.records)\n write7(bc, x.activeSpans)\n}\n\nfunction read8(bc: bare.ByteCursor): readonly Chunk[] {\n const len = bare.readUintSafe(bc)\n if (len === 0) { return [] }\n const result = [readChunk(bc)]\n for (let i = 1; i < len; i++) {\n result[i] = readChunk(bc)\n }\n return result\n}\n\nfunction write8(bc: bare.ByteCursor, x: readonly Chunk[]): void {\n bare.writeUintSafe(bc, x.length)\n for (let i = 0; i < x.length; i++) {\n writeChunk(bc, x[i])\n }\n}\n\nexport type ReadRangeWire = {\n readonly startTimeMs: u64,\n readonly endTimeMs: u64,\n readonly limit: u32,\n readonly clamped: boolean,\n readonly baseChunks: readonly Chunk[],\n readonly chunks: readonly Chunk[],\n}\n\nexport function readReadRangeWire(bc: bare.ByteCursor): ReadRangeWire {\n return {\n startTimeMs: bare.readU64(bc),\n endTimeMs: bare.readU64(bc),\n limit: bare.readU32(bc),\n clamped: bare.readBool(bc),\n baseChunks: read8(bc),\n chunks: read8(bc),\n }\n}\n\nexport function writeReadRangeWire(bc: bare.ByteCursor, x: ReadRangeWire): void {\n bare.writeU64(bc, x.startTimeMs)\n bare.writeU64(bc, x.endTimeMs)\n bare.writeU32(bc, x.limit)\n bare.writeBool(bc, x.clamped)\n write8(bc, x.baseChunks)\n write8(bc, x.chunks)\n}\n\nexport function encodeReadRangeWire(x: ReadRangeWire): Uint8Array {\n const bc = new bare.ByteCursor(\n new Uint8Array(config.initialBufferLength),\n config\n )\n writeReadRangeWire(bc, x)\n return new Uint8Array(bc.view.buffer, bc.view.byteOffset, bc.offset)\n}\n\nexport function decodeReadRangeWire(bytes: Uint8Array): ReadRangeWire {\n const bc = new bare.ByteCursor(bytes, config)\n const result = readReadRangeWire(bc)\n if (bc.offset < bc.view.byteLength) {\n throw new bare.BareError(bc.offset, \"remaining bytes\")\n }\n return result\n}\n\n\nfunction assert(condition: boolean, message?: string): asserts condition {\n if (!condition) throw new Error(message ?? \"Assertion failed\")\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/nathan/r7/rivetkit-typescript/packages/traces/dist/tsup/encoding.cjs","../../src/encoding.ts"],"names":[],"mappings":"AAAA;AACE;AACA;AACF,wDAA6B;AAC7B;AACA;ACGO,SAAS,mBAAA,CAAoB,IAAA,EAAiC;AACpE,EAAA,OAAO,sCAAA,CAAqB,4BAAA;AAAA,IAC3B,IAAA;AAAA,IACA;AAAA,EACD,CAAA;AACD;AAEO,SAAS,mBAAA,CAAoB,KAAA,EAAkC;AACrE,EAAA,OAAO,sCAAA,CAAqB,8BAAA,CAA+B,KAAK,CAAA;AACjE;ADFA;AACE;AACA;AACF,qGAAC","file":"/home/nathan/r7/rivetkit-typescript/packages/traces/dist/tsup/encoding.cjs","sourcesContent":[null,"import {\n\tCURRENT_VERSION,\n\tREAD_RANGE_VERSIONED,\n\ttype ReadRangeWire,\n} from \"../schemas/versioned.js\";\n\nexport type { ReadRangeWire };\n\nexport function encodeReadRangeWire(wire: ReadRangeWire): Uint8Array {\n\treturn READ_RANGE_VERSIONED.serializeWithEmbeddedVersion(\n\t\twire,\n\t\tCURRENT_VERSION,\n\t);\n}\n\nexport function decodeReadRangeWire(bytes: Uint8Array): ReadRangeWire {\n\treturn READ_RANGE_VERSIONED.deserializeWithEmbeddedVersion(bytes);\n}\n"]}
1
+ {"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/traces/dist/tsup/encoding.cjs","../../src/encoding.ts"],"names":[],"mappings":"AAAA;AACE;AACA;AACF,wDAA6B;AAC7B;AACA;ACGO,SAAS,mBAAA,CAAoB,IAAA,EAAiC;AACpE,EAAA,OAAO,sCAAA,CAAqB,4BAAA;AAAA,IAC3B,IAAA;AAAA,IACA;AAAA,EACD,CAAA;AACD;AAEO,SAAS,mBAAA,CAAoB,KAAA,EAAkC;AACrE,EAAA,OAAO,sCAAA,CAAqB,8BAAA,CAA+B,KAAK,CAAA;AACjE;ADFA;AACE;AACA;AACF,qGAAC","file":"/home/runner/work/rivet/rivet/rivetkit-typescript/packages/traces/dist/tsup/encoding.cjs","sourcesContent":[null,"import {\n\tCURRENT_VERSION,\n\tREAD_RANGE_VERSIONED,\n\ttype ReadRangeWire,\n} from \"../schemas/versioned.js\";\n\nexport type { ReadRangeWire };\n\nexport function encodeReadRangeWire(wire: ReadRangeWire): Uint8Array {\n\treturn READ_RANGE_VERSIONED.serializeWithEmbeddedVersion(\n\t\twire,\n\t\tCURRENT_VERSION,\n\t);\n}\n\nexport function decodeReadRangeWire(bytes: Uint8Array): ReadRangeWire {\n\treturn READ_RANGE_VERSIONED.deserializeWithEmbeddedVersion(bytes);\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/nathan/r7/rivetkit-typescript/packages/traces/dist/tsup/index.browser.cjs","../../src/index.browser.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACA;ACIO,SAAS,YAAA,CAAA,EAAsB;AACrC,EAAA,MAAM,IAAI,KAAA;AAAA,IACT;AAAA,EACD,CAAA;AACD;ADFA;AACE;AACA;AACF,mGAAC","file":"/home/nathan/r7/rivetkit-typescript/packages/traces/dist/tsup/index.browser.cjs","sourcesContent":[null,"export { createNoopTraces } from \"./noop.js\";\n\n// Browser stub: createTraces is server-only (uses node:async_hooks, node:crypto,\n// fdb-tuple). This module is selected via the \"browser\" export condition so that\n// bundlers like Vite never pull in the real implementation when resolving\n// @rivetkit/traces in a browser context. The function is never actually called\n// in the browser; it only exists because tsup chunk-splitting may place the\n// import in a shared chunk also reached by client code.\nexport function createTraces(): never {\n\tthrow new Error(\n\t\t\"createTraces is not available in the browser. This is a server-only API.\",\n\t);\n}\n"]}
1
+ {"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/traces/dist/tsup/index.browser.cjs","../../src/index.browser.ts"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B;AACA;ACIO,SAAS,YAAA,CAAA,EAAsB;AACrC,EAAA,MAAM,IAAI,KAAA;AAAA,IACT;AAAA,EACD,CAAA;AACD;ADFA;AACE;AACA;AACF,mGAAC","file":"/home/runner/work/rivet/rivet/rivetkit-typescript/packages/traces/dist/tsup/index.browser.cjs","sourcesContent":[null,"export { createNoopTraces } from \"./noop.js\";\n\n// Browser stub: createTraces is server-only (uses node:async_hooks, node:crypto,\n// fdb-tuple). This module is selected via the \"browser\" export condition so that\n// bundlers like Vite never pull in the real implementation when resolving\n// @rivetkit/traces in a browser context. The function is never actually called\n// in the browser; it only exists because tsup chunk-splitting may place the\n// import in a shared chunk also reached by client code.\nexport function createTraces(): never {\n\tthrow new Error(\n\t\t\"createTraces is not available in the browser. This is a server-only API.\",\n\t);\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/nathan/r7/rivetkit-typescript/packages/traces/dist/tsup/index.cjs","../../src/traces.ts"],"names":["options","record","absNs"],"mappings":"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","file":"/home/nathan/r7/rivetkit-typescript/packages/traces/dist/tsup/index.cjs","sourcesContent":[null,"import { AsyncLocalStorage } from \"node:async_hooks\";\nimport { Buffer } from \"node:buffer\";\nimport { randomBytes } from \"node:crypto\";\nimport { performance } from \"node:perf_hooks\";\nimport { decode as decodeCbor, encode as encodeCbor } from \"cbor-x\";\nimport { pack, unpack } from \"fdb-tuple\";\nimport {\n\tCHUNK_VERSIONED,\n\tCURRENT_VERSION,\n\tencodeRecord,\n\ttype ActiveSpanRef,\n\ttype Attributes,\n\ttype Chunk,\n\ttype KeyValue,\n\ttype Record as TraceRecord,\n\ttype RecordBody,\n\ttype SpanEnd,\n\ttype SpanEvent,\n\ttype SpanId,\n\ttype SpanLink,\n\ttype SpanRecordKey,\n\ttype SpanSnapshot,\n\ttype SpanStart,\n\ttype SpanStatus,\n\tSpanStatusCode,\n\ttype SpanUpdate,\n\ttype StringId,\n\ttype TraceId,\n} from \"../schemas/versioned.js\";\nimport {\n\thexFromBytes,\n\ttype OtlpExportTraceServiceRequestJson,\n\ttype OtlpResource,\n} from \"./otlp.js\";\nimport { readRangeWireToOtlp } from \"./read-range.js\";\nimport type {\n\tEndSpanOptions,\n\tEventOptions,\n\tReadRangeOptions,\n\tReadRangeResult,\n\tReadRangeWire,\n\tSpanHandle,\n\tSpanStatusInput,\n\tStartSpanOptions,\n\tTraces,\n\tTracesDriver,\n\tTracesOptions,\n\tUpdateSpanOptions,\n} from \"./types.js\";\n\n// OTLP v1 JSON reference: https://opentelemetry.io/docs/specs/otlp/\n// Span data model reference: https://opentelemetry.io/docs/specs/otel/trace/api/\n\nconst KEY_PREFIX = {\n\tDATA: 1,\n};\n\nconst MAX_CHUNK_ID = 0xffff_ffff;\nconst AFTER_MAX_CHUNK_ID = 0x1_0000_0000;\n\nconst DEFAULT_BUCKET_SIZE_SEC = 3600;\nconst DEFAULT_TARGET_CHUNK_BYTES = 512 * 1024;\nconst DEFAULT_MAX_CHUNK_BYTES = 96 * 1024;\nconst DEFAULT_MAX_CHUNK_AGE_MS = 5000;\nconst DEFAULT_SNAPSHOT_INTERVAL_MS = 300_000;\nconst DEFAULT_SNAPSHOT_BYTES_THRESHOLD = 256 * 1024;\nconst DEFAULT_MAX_READ_LIMIT = 10_000;\nconst DEFAULT_MAX_ACTIVE_SPANS = 10_000;\n\nconst SPAN_ID_BYTES = 8;\nconst TRACE_ID_BYTES = 16;\n\ntype AttributeMap = Map<string, unknown>;\n\ntype SpanState = {\n\tspanId: SpanId;\n\ttraceId: TraceId;\n\tparentSpanId: SpanId | null;\n\tname: string;\n\tkind: number;\n\ttraceState: string | null;\n\tflags: number;\n\tattributes: AttributeMap;\n\tdroppedAttributesCount: number;\n\tlinks: LinkState[];\n\tdroppedLinksCount: number;\n\tstatus: SpanStatus | null;\n\tstartTimeUnixNs: bigint;\n\tdepth: number;\n\tbytesSinceSnapshot: number;\n\tlastSnapshotMonoMs: number;\n};\n\ntype LinkState = {\n\ttraceId: TraceId;\n\tspanId: SpanId;\n\ttraceState: string | null;\n\tattributes: AttributeMap;\n\tdroppedAttributesCount: number;\n};\n\ntype ChunkState = {\n\tbucketStartSec: number;\n\tchunkId: number;\n\tbaseUnixNs: bigint;\n\tstrings: string[];\n\tstringIds: Map<string, number>;\n\trecords: TraceRecord[];\n\tsizeBytes: number;\n\tcreatedAtMonoMs: number;\n};\n\ntype PendingChunk = {\n\tkey: Uint8Array;\n\tbucketStartSec: number;\n\tchunkId: number;\n\tchunk: Chunk;\n\tbytes: Uint8Array;\n\tmaxRecordNs: bigint;\n};\n\nconst spanContext = new AsyncLocalStorage<SpanHandle | null>();\n\nfunction spanKey(spanId: Uint8Array | SpanId): string {\n\treturn hexFromBytes(normalizeBytes(spanId));\n}\n\nfunction toArrayBuffer(bytes: Uint8Array): ArrayBuffer {\n\tconst copy = new Uint8Array(bytes.byteLength);\n\tcopy.set(bytes);\n\treturn copy.buffer;\n}\n\nfunction toUint8Array(buffer: ArrayBuffer): Uint8Array {\n\treturn new Uint8Array(buffer);\n}\n\nfunction normalizeBytes(input: Uint8Array | ArrayBuffer): Uint8Array {\n\treturn input instanceof Uint8Array ? input : new Uint8Array(input);\n}\n\nexport function createTraces(\n\toptions: TracesOptions<OtlpResource>,\n): Traces<OtlpExportTraceServiceRequestJson> {\n\tconst driver = options.driver;\n\tconst bucketSizeSec = options.bucketSizeSec ?? DEFAULT_BUCKET_SIZE_SEC;\n\tconst maxChunkBytes = options.maxChunkBytes ?? DEFAULT_MAX_CHUNK_BYTES;\n\tconst targetChunkBytes = Math.min(\n\t\toptions.targetChunkBytes ?? DEFAULT_TARGET_CHUNK_BYTES,\n\t\tmaxChunkBytes,\n\t);\n\tconst maxChunkAgeMs = options.maxChunkAgeMs ?? DEFAULT_MAX_CHUNK_AGE_MS;\n\tconst snapshotIntervalMs =\n\t\toptions.snapshotIntervalMs ?? DEFAULT_SNAPSHOT_INTERVAL_MS;\n\tconst snapshotBytesThreshold =\n\t\toptions.snapshotBytesThreshold ?? DEFAULT_SNAPSHOT_BYTES_THRESHOLD;\n\tconst maxActiveSpans = options.maxActiveSpans ?? DEFAULT_MAX_ACTIVE_SPANS;\n\tconst maxReadLimit = options.maxReadLimit ?? DEFAULT_MAX_READ_LIMIT;\n\tconst resource = options.resource;\n\n\tconst timeAnchor = {\n\t\tunixMs: Date.now(),\n\t\tmonoMs: performance.now(),\n\t};\n\n\tconst activeSpans = new Map<string, SpanState>();\n\tconst activeSpanRefs = new Map<string, ActiveSpanRef>();\n\tconst pendingChunks: PendingChunk[] = [];\n\tlet writeChain: Promise<void> = Promise.resolve();\n\tlet lastWriteError: unknown = null;\n\tconst bucketChunkCounters = new Map<number, number>();\n\n\tfunction nowUnixMs(): number {\n\t\treturn timeAnchor.unixMs + (performance.now() - timeAnchor.monoMs);\n\t}\n\n\tfunction nowUnixNs(anchor: { unixMs: number; monoMs: number }): bigint {\n\t\tconst unixMs = anchor.unixMs + (performance.now() - anchor.monoMs);\n\t\tconst wholeMs = Math.floor(unixMs);\n\t\tconst fracMs = unixMs - wholeMs;\n\t\treturn (\n\t\t\tBigInt(wholeMs) * 1_000_000n +\n\t\t\tBigInt(Math.floor(fracMs * 1_000_000))\n\t\t);\n\t}\n\n\tfunction createChunkState(bucketStartSec: number): ChunkState {\n\t\treturn {\n\t\t\tbucketStartSec,\n\t\t\tchunkId: nextChunkId(bucketStartSec),\n\t\t\tbaseUnixNs: BigInt(bucketStartSec) * 1_000_000_000n,\n\t\t\tstrings: [],\n\t\t\tstringIds: new Map(),\n\t\t\trecords: [],\n\t\t\tsizeBytes: 0,\n\t\t\tcreatedAtMonoMs: performance.now(),\n\t\t};\n\t}\n\n\tfunction nextChunkId(bucketStartSec: number): number {\n\t\tconst current = bucketChunkCounters.get(bucketStartSec) ?? 0;\n\t\tbucketChunkCounters.set(bucketStartSec, current + 1);\n\t\treturn current;\n\t}\n\n\tconst currentChunk = createChunkState(\n\t\tcomputeBucketStartSec(nowUnixNs(timeAnchor), bucketSizeSec),\n\t);\n\n\tfunction computeBucketStartSec(\n\t\tabsoluteUnixNs: bigint,\n\t\tbucketSize: number,\n\t): number {\n\t\tconst sec = absoluteUnixNs / 1_000_000_000n;\n\t\tconst bucket = sec / BigInt(bucketSize);\n\t\treturn Number(bucket * BigInt(bucketSize));\n\t}\n\n\tfunction internString(value: string): StringId {\n\t\tconst existing = currentChunk.stringIds.get(value);\n\t\tif (existing !== undefined) {\n\t\t\treturn existing;\n\t\t}\n\t\tconst id = currentChunk.strings.length;\n\t\tcurrentChunk.strings.push(value);\n\t\tcurrentChunk.stringIds.set(value, id);\n\t\treturn id;\n\t}\n\n\tfunction encodeAttributes(attributes?: Record<string, unknown>): {\n\t\tattributes: Attributes;\n\t\tdropped: number;\n\t} {\n\t\tconst list: KeyValue[] = [];\n\t\tlet dropped = 0;\n\t\tif (!attributes) {\n\t\t\treturn { attributes: list, dropped };\n\t\t}\n\t\tfor (const [key, value] of Object.entries(attributes)) {\n\t\t\tconst sanitized = sanitizeAttributeValue(value);\n\t\t\tif (sanitized === undefined) {\n\t\t\t\tdropped++;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\ttry {\n\t\t\t\tconst encoded = encodeCbor(sanitized);\n\t\t\t\tlist.push({\n\t\t\t\t\tkey: internString(key),\n\t\t\t\t\tvalue: toArrayBuffer(encoded),\n\t\t\t\t});\n\t\t\t} catch {\n\t\t\t\tdropped++;\n\t\t\t}\n\t\t}\n\t\treturn { attributes: list, dropped };\n\t}\n\n\tfunction sanitizeAttributeValue(value: unknown): unknown | undefined {\n\t\tif (value === undefined || typeof value === \"function\") {\n\t\t\treturn undefined;\n\t\t}\n\t\tif (typeof value === \"symbol\") {\n\t\t\treturn undefined;\n\t\t}\n\t\tif (value instanceof Map) {\n\t\t\tconst obj: Record<string, unknown> = {};\n\t\t\tfor (const [key, mapValue] of value.entries()) {\n\t\t\t\tif (typeof key !== \"string\") {\n\t\t\t\t\treturn undefined;\n\t\t\t\t}\n\t\t\t\tconst sanitized = sanitizeAttributeValue(mapValue);\n\t\t\t\tif (sanitized !== undefined) {\n\t\t\t\t\tobj[key] = sanitized;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn obj;\n\t\t}\n\t\tif (Array.isArray(value)) {\n\t\t\treturn value\n\t\t\t\t.map((entry) => sanitizeAttributeValue(entry))\n\t\t\t\t.filter((entry) => entry !== undefined);\n\t\t}\n\t\treturn value;\n\t}\n\n\tfunction encodeLinks(links?: StartSpanOptions[\"links\"]): {\n\t\tlinks: SpanLink[];\n\t\tdropped: number;\n\t} {\n\t\tconst result: SpanLink[] = [];\n\t\tlet dropped = 0;\n\t\tif (!links) {\n\t\t\treturn { links: result, dropped };\n\t\t}\n\t\tfor (const link of links) {\n\t\t\tconst { attributes, dropped: droppedAttributes } = encodeAttributes(\n\t\t\t\tlink.attributes,\n\t\t\t);\n\t\t\tresult.push({\n\t\t\t\ttraceId: toArrayBuffer(link.traceId),\n\t\t\t\tspanId: toArrayBuffer(link.spanId),\n\t\t\t\ttraceState: link.traceState ?? null,\n\t\t\t\tattributes,\n\t\t\t\tdroppedAttributesCount: droppedAttributes,\n\t\t\t});\n\t\t}\n\t\treturn { links: result, dropped };\n\t}\n\n\tfunction createSpanStartRecord(\n\t\tspanId: SpanId,\n\t\ttraceId: TraceId,\n\t\tname: string,\n\t\toptions: StartSpanOptions | undefined,\n\t\tparentSpanId: SpanId | null,\n\t): SpanStart {\n\t\tconst { attributes, dropped } = encodeAttributes(options?.attributes);\n\t\tconst { links, dropped: droppedLinks } = encodeLinks(options?.links);\n\t\treturn {\n\t\t\ttraceId,\n\t\t\tspanId,\n\t\t\tparentSpanId,\n\t\t\tname: internString(name),\n\t\t\tkind: options?.kind ?? 0,\n\t\t\ttraceState: options?.traceState ?? null,\n\t\t\tflags: options?.flags ?? 0,\n\t\t\tattributes,\n\t\t\tdroppedAttributesCount: dropped,\n\t\t\tlinks,\n\t\t\tdroppedLinksCount: droppedLinks,\n\t\t};\n\t}\n\n\tfunction createSpanUpdateRecord(\n\t\tspanId: SpanId,\n\t\toptions: UpdateSpanOptions,\n\t): SpanUpdate {\n\t\tconst { attributes, dropped } = encodeAttributes(options.attributes);\n\t\treturn {\n\t\t\tspanId,\n\t\t\tattributes,\n\t\t\tdroppedAttributesCount: dropped,\n\t\t\tstatus: options.status ? toBareStatus(options.status) : null,\n\t\t};\n\t}\n\n\tfunction createSpanEventRecord(\n\t\tspanId: SpanId,\n\t\tname: string,\n\t\toptions: EventOptions | undefined,\n\t): SpanEvent {\n\t\tconst { attributes, dropped } = encodeAttributes(options?.attributes);\n\t\treturn {\n\t\t\tspanId,\n\t\t\tname: internString(name),\n\t\t\tattributes,\n\t\t\tdroppedAttributesCount: dropped,\n\t\t};\n\t}\n\n\tfunction createSpanEndRecord(\n\t\tspanId: SpanId,\n\t\toptions: EndSpanOptions | undefined,\n\t): SpanEnd {\n\t\treturn {\n\t\t\tspanId,\n\t\t\tstatus: options?.status ? toBareStatus(options.status) : null,\n\t\t};\n\t}\n\n\tfunction createSpanSnapshotRecord(state: SpanState): SpanSnapshot {\n\t\tconst { attributes, dropped } = encodeAttributeMap(state.attributes);\n\t\tconst { links, dropped: droppedLinks } = encodeLinkState(state.links);\n\t\treturn {\n\t\t\ttraceId: state.traceId,\n\t\t\tspanId: state.spanId,\n\t\t\tparentSpanId: state.parentSpanId,\n\t\t\tname: internString(state.name),\n\t\t\tkind: state.kind,\n\t\t\tstartTimeUnixNs: state.startTimeUnixNs,\n\t\t\ttraceState: state.traceState,\n\t\t\tflags: state.flags,\n\t\t\tattributes,\n\t\t\tdroppedAttributesCount: state.droppedAttributesCount + dropped,\n\t\t\tlinks,\n\t\t\tdroppedLinksCount: state.droppedLinksCount + droppedLinks,\n\t\t\tstatus: state.status,\n\t\t};\n\t}\n\n\tfunction encodeAttributeMap(attributes: AttributeMap): {\n\t\tattributes: Attributes;\n\t\tdropped: number;\n\t} {\n\t\tconst list: KeyValue[] = [];\n\t\tlet dropped = 0;\n\t\tfor (const [key, value] of attributes.entries()) {\n\t\t\tconst sanitized = sanitizeAttributeValue(value);\n\t\t\tif (sanitized === undefined) {\n\t\t\t\tdropped++;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\ttry {\n\t\t\t\tconst encoded = encodeCbor(sanitized);\n\t\t\t\tlist.push({\n\t\t\t\t\tkey: internString(key),\n\t\t\t\t\tvalue: toArrayBuffer(encoded),\n\t\t\t\t});\n\t\t\t} catch {\n\t\t\t\tdropped++;\n\t\t\t}\n\t\t}\n\t\treturn { attributes: list, dropped };\n\t}\n\n\tfunction buildAttributeMapFromInput(\n\t\tattributes?: Record<string, unknown>,\n\t): AttributeMap {\n\t\tconst map = new Map<string, unknown>();\n\t\tif (!attributes) {\n\t\t\treturn map;\n\t\t}\n\t\tfor (const [key, value] of Object.entries(attributes)) {\n\t\t\tconst sanitized = sanitizeAttributeValue(value);\n\t\t\tif (sanitized !== undefined) {\n\t\t\t\tmap.set(key, sanitized);\n\t\t\t}\n\t\t}\n\t\treturn map;\n\t}\n\n\tfunction decodeAttributeList(\n\t\tattributes: Attributes,\n\t\tstrings: readonly string[],\n\t): AttributeMap {\n\t\tconst map = new Map<string, unknown>();\n\t\tfor (const kv of attributes) {\n\t\t\tconst key = strings[kv.key] ?? \"\";\n\t\t\ttry {\n\t\t\t\tmap.set(key, decodeCbor(toUint8Array(kv.value)) as unknown);\n\t\t\t} catch {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\t\treturn map;\n\t}\n\n\tfunction decodeLinks(\n\t\tlinks: readonly SpanLink[],\n\t\tstrings: readonly string[],\n\t): LinkState[] {\n\t\treturn links.map((link) => ({\n\t\t\ttraceId: link.traceId,\n\t\t\tspanId: link.spanId,\n\t\t\ttraceState: link.traceState,\n\t\t\tattributes: decodeAttributeList(link.attributes, strings),\n\t\t\tdroppedAttributesCount: link.droppedAttributesCount,\n\t\t}));\n\t}\n\n\tfunction encodeLinkState(links: LinkState[]): {\n\t\tlinks: SpanLink[];\n\t\tdropped: number;\n\t} {\n\t\tconst result: SpanLink[] = [];\n\t\tlet dropped = 0;\n\t\tfor (const link of links) {\n\t\t\tconst { attributes, dropped: droppedAttributes } =\n\t\t\t\tencodeAttributeMap(link.attributes);\n\t\t\tresult.push({\n\t\t\t\ttraceId: link.traceId,\n\t\t\t\tspanId: link.spanId,\n\t\t\t\ttraceState: link.traceState,\n\t\t\t\tattributes,\n\t\t\t\tdroppedAttributesCount: droppedAttributes,\n\t\t\t});\n\t\t}\n\t\treturn { links: result, dropped };\n\t}\n\n\tfunction appendRecord(\n\t\tbuildBody: () => RecordBody,\n\t\tprovidedTimeUnixMs?: number,\n\t): { recordIndex: number; encodedBytes: number; body: RecordBody } {\n\t\tconst absoluteUnixNs =\n\t\t\tprovidedTimeUnixMs !== undefined\n\t\t\t\t? BigInt(Math.floor(providedTimeUnixMs)) * 1_000_000n\n\t\t\t\t: nowUnixNs(timeAnchor);\n\t\tconst recordBucketStart = computeBucketStartSec(\n\t\t\tabsoluteUnixNs,\n\t\t\tbucketSizeSec,\n\t\t);\n\t\tif (recordBucketStart !== currentChunk.bucketStartSec) {\n\t\t\tflushChunk();\n\t\t\tresetChunkState(recordBucketStart);\n\t\t}\n\t\tif (performance.now() - currentChunk.createdAtMonoMs >= maxChunkAgeMs) {\n\t\t\tflushChunk();\n\t\t\tresetChunkState(recordBucketStart);\n\t\t}\n\t\tlet body = buildBody();\n\t\tconst timeOffsetNs = absoluteUnixNs - currentChunk.baseUnixNs;\n\t\tlet record: TraceRecord = { timeOffsetNs, body };\n\t\tlet encodedRecord = encodeRecord(record);\n\t\tif (encodedRecord.length > maxChunkBytes) {\n\t\t\tthrow new Error(\"Record exceeds maxChunkBytes\");\n\t\t}\n\t\tif (currentChunk.sizeBytes + encodedRecord.length > targetChunkBytes) {\n\t\t\tflushChunk();\n\t\t\tresetChunkState(recordBucketStart);\n\t\t\tbody = buildBody();\n\t\t\trecord = { timeOffsetNs, body };\n\t\t\tencodedRecord = encodeRecord(record);\n\t\t\tif (encodedRecord.length > maxChunkBytes) {\n\t\t\t\tthrow new Error(\"Record exceeds maxChunkBytes\");\n\t\t\t}\n\t\t}\n\t\tcurrentChunk.records.push(record);\n\t\tcurrentChunk.sizeBytes += encodedRecord.length;\n\t\tconst recordIndex = currentChunk.records.length - 1;\n\t\treturn { recordIndex, encodedBytes: encodedRecord.length, body };\n\t}\n\n\tfunction flushChunk(): boolean {\n\t\tif (currentChunk.records.length === 0) {\n\t\t\treturn false;\n\t\t}\n\t\tconst chunk: Chunk = {\n\t\t\tbaseUnixNs: currentChunk.baseUnixNs,\n\t\t\tstrings: currentChunk.strings,\n\t\t\trecords: currentChunk.records,\n\t\t\tactiveSpans: Array.from(activeSpanRefs.values()),\n\t\t};\n\t\tconst bytes = CHUNK_VERSIONED.serializeWithEmbeddedVersion(\n\t\t\tchunk,\n\t\t\tCURRENT_VERSION,\n\t\t);\n\t\tconst key = buildChunkKey(\n\t\t\tcurrentChunk.bucketStartSec,\n\t\t\tcurrentChunk.chunkId,\n\t\t);\n\t\tconst maxRecordNs =\n\t\t\tchunk.records.length > 0\n\t\t\t\t? chunk.baseUnixNs +\n\t\t\t\t\tchunk.records[chunk.records.length - 1].timeOffsetNs\n\t\t\t\t: chunk.baseUnixNs;\n\t\tconst pending: PendingChunk = {\n\t\t\tkey,\n\t\t\tbucketStartSec: currentChunk.bucketStartSec,\n\t\t\tchunkId: currentChunk.chunkId,\n\t\t\tchunk,\n\t\t\tbytes,\n\t\t\tmaxRecordNs,\n\t\t};\n\t\tpendingChunks.push(pending);\n\t\tenqueueWrite(pending);\n\t\treturn true;\n\t}\n\n\tfunction enqueueWrite(pending: PendingChunk): void {\n\t\twriteChain = writeChain\n\t\t\t.then(async () => {\n\t\t\t\tawait driver.set(pending.key, pending.bytes);\n\t\t\t\tconst index = pendingChunks.indexOf(pending);\n\t\t\t\tif (index !== -1) {\n\t\t\t\t\tpendingChunks.splice(index, 1);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch(recoverWriteChain);\n\t}\n\n\tfunction recoverWriteChain(error: unknown): undefined {\n\t\tlastWriteError = error;\n\t\tconsole.warn(\"[rivetkit/traces] trace chunk write failed\", error);\n\t\treturn undefined;\n\t}\n\n\tfunction resetChunkState(bucketStartSec: number): void {\n\t\tcurrentChunk.bucketStartSec = bucketStartSec;\n\t\tcurrentChunk.chunkId = nextChunkId(bucketStartSec);\n\t\tcurrentChunk.baseUnixNs = BigInt(bucketStartSec) * 1_000_000_000n;\n\t\tcurrentChunk.strings = [];\n\t\tcurrentChunk.stringIds = new Map();\n\t\tcurrentChunk.records = [];\n\t\tcurrentChunk.sizeBytes = 0;\n\t\tcurrentChunk.createdAtMonoMs = performance.now();\n\t}\n\n\tfunction enforceMaxActiveSpans(): void {\n\t\tif (activeSpans.size <= maxActiveSpans) {\n\t\t\treturn;\n\t\t}\n\t\tconst candidates = Array.from(activeSpans.values()).sort((a, b) => {\n\t\t\tif (a.depth !== b.depth) {\n\t\t\t\treturn b.depth - a.depth;\n\t\t\t}\n\t\t\tif (a.startTimeUnixNs > b.startTimeUnixNs) {\n\t\t\t\treturn -1;\n\t\t\t}\n\t\t\tif (a.startTimeUnixNs < b.startTimeUnixNs) {\n\t\t\t\treturn 1;\n\t\t\t}\n\t\t\treturn 0;\n\t\t});\n\t\tfor (const span of candidates) {\n\t\t\tdropSpan(span.spanId);\n\t\t\tif (activeSpans.size <= maxActiveSpans) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction dropSpan(spanId: SpanId | Uint8Array): void {\n\t\tconst key = spanKey(spanId);\n\t\tactiveSpans.delete(key);\n\t\tactiveSpanRefs.delete(key);\n\t}\n\n\tfunction assertActive(handle: SpanHandle): void {\n\t\tif (!isActive(handle)) {\n\t\t\tthrow new Error(\"Span handle is not active\");\n\t\t}\n\t}\n\n\tfunction isActive(handle: SpanHandle): boolean {\n\t\treturn activeSpans.has(spanKey(handle.spanId));\n\t}\n\n\tfunction startSpan(name: string, options?: StartSpanOptions): SpanHandle {\n\t\tconst parent = options?.parent ?? getCurrentSpan();\n\t\tif (parent) {\n\t\t\tassertActive(parent);\n\t\t}\n\t\tconst spanIdBytes = randomBytes(SPAN_ID_BYTES);\n\t\tconst traceIdBytes = parent\n\t\t\t? parent.traceId\n\t\t\t: randomBytes(TRACE_ID_BYTES);\n\t\tconst spanId = toArrayBuffer(spanIdBytes);\n\t\tconst traceId = toArrayBuffer(traceIdBytes);\n\t\tconst parentSpanId = parent ? toArrayBuffer(parent.spanId) : null;\n\t\tconst { recordIndex, encodedBytes, body } = appendRecord(() => ({\n\t\t\ttag: \"SpanStart\",\n\t\t\tval: createSpanStartRecord(\n\t\t\t\tspanId,\n\t\t\t\ttraceId,\n\t\t\t\tname,\n\t\t\t\toptions,\n\t\t\t\tparentSpanId,\n\t\t\t),\n\t\t}));\n\t\tconst spanStart = body.val as SpanStart;\n\t\tconst key = spanKey(spanId);\n\t\tconst startKey: SpanRecordKey = {\n\t\t\tprefix: KEY_PREFIX.DATA,\n\t\t\tbucketStartSec: BigInt(currentChunk.bucketStartSec),\n\t\t\tchunkId: currentChunk.chunkId,\n\t\t\trecordIndex,\n\t\t};\n\t\tactiveSpanRefs.set(key, {\n\t\t\tspanId,\n\t\t\tstartKey,\n\t\t\tlatestSnapshotKey: null,\n\t\t});\n\t\tconst depth = computeSpanDepth(parentSpanId);\n\t\tactiveSpans.set(key, {\n\t\t\tspanId,\n\t\t\ttraceId,\n\t\t\tparentSpanId,\n\t\t\tname,\n\t\t\tkind: options?.kind ?? 0,\n\t\t\ttraceState: options?.traceState ?? null,\n\t\t\tflags: options?.flags ?? 0,\n\t\t\tattributes: buildAttributeMapFromInput(options?.attributes),\n\t\t\tdroppedAttributesCount: spanStart.droppedAttributesCount,\n\t\t\tlinks: decodeLinks(spanStart.links, currentChunk.strings),\n\t\t\tdroppedLinksCount: spanStart.droppedLinksCount,\n\t\t\tstatus: null,\n\t\t\tstartTimeUnixNs:\n\t\t\t\tcurrentChunk.baseUnixNs +\n\t\t\t\tcurrentChunk.records[recordIndex].timeOffsetNs,\n\t\t\tdepth,\n\t\t\tbytesSinceSnapshot: encodedBytes,\n\t\t\tlastSnapshotMonoMs: performance.now(),\n\t\t});\n\t\tenforceMaxActiveSpans();\n\t\treturn {\n\t\t\tspanId: spanIdBytes,\n\t\t\ttraceId: traceIdBytes,\n\t\t\tisActive: () => activeSpans.has(key),\n\t\t};\n\t}\n\n\tfunction updateSpan(handle: SpanHandle, options: UpdateSpanOptions): void {\n\t\tif (!options.attributes && !options.status) {\n\t\t\treturn;\n\t\t}\n\t\tassertActive(handle);\n\t\tconst { encodedBytes, body } = appendRecord(() => ({\n\t\t\ttag: \"SpanUpdate\",\n\t\t\tval: createSpanUpdateRecord(toArrayBuffer(handle.spanId), options),\n\t\t}));\n\t\tconst spanUpdate = body.val as SpanUpdate;\n\t\tconst state = activeSpans.get(spanKey(handle.spanId));\n\t\tif (!state) {\n\t\t\treturn;\n\t\t}\n\t\tif (options.attributes) {\n\t\t\tconst updates = buildAttributeMapFromInput(options.attributes);\n\t\t\tfor (const [key, value] of updates.entries()) {\n\t\t\t\tstate.attributes.set(key, value);\n\t\t\t}\n\t\t}\n\t\tstate.droppedAttributesCount += spanUpdate.droppedAttributesCount;\n\t\tif (options.status) {\n\t\t\tstate.status = toBareStatus(options.status);\n\t\t}\n\t\tstate.bytesSinceSnapshot += encodedBytes;\n\t\tmaybeSnapshot(handle.spanId, state);\n\t}\n\n\tfunction setAttributes(\n\t\thandle: SpanHandle,\n\t\tattributes: Record<string, unknown>,\n\t): void {\n\t\tupdateSpan(handle, { attributes });\n\t}\n\n\tfunction setStatus(handle: SpanHandle, status: SpanStatusInput): void {\n\t\tupdateSpan(handle, { status });\n\t}\n\n\tfunction emitEvent(\n\t\thandle: SpanHandle,\n\t\tname: string,\n\t\toptions?: EventOptions,\n\t): void {\n\t\tassertActive(handle);\n\t\tconst { encodedBytes } = appendRecord(\n\t\t\t() => ({\n\t\t\t\ttag: \"SpanEvent\",\n\t\t\t\tval: createSpanEventRecord(\n\t\t\t\t\ttoArrayBuffer(handle.spanId),\n\t\t\t\t\tname,\n\t\t\t\t\toptions,\n\t\t\t\t),\n\t\t\t}),\n\t\t\toptions?.timeUnixMs,\n\t\t);\n\t\tconst state = activeSpans.get(spanKey(handle.spanId));\n\t\tif (state) {\n\t\t\tstate.bytesSinceSnapshot += encodedBytes;\n\t\t\tmaybeSnapshot(handle.spanId, state);\n\t\t}\n\t}\n\n\tfunction endSpan(handle: SpanHandle, options?: EndSpanOptions): void {\n\t\tassertActive(handle);\n\t\tappendRecord(() => ({\n\t\t\ttag: \"SpanEnd\",\n\t\t\tval: createSpanEndRecord(toArrayBuffer(handle.spanId), options),\n\t\t}));\n\t\tdropSpan(handle.spanId);\n\t}\n\n\tfunction maybeSnapshot(\n\t\tspanId: SpanId | Uint8Array,\n\t\tstate: SpanState,\n\t): void {\n\t\tif (\n\t\t\tstate.bytesSinceSnapshot < snapshotBytesThreshold &&\n\t\t\tperformance.now() - state.lastSnapshotMonoMs < snapshotIntervalMs\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t\tconst { recordIndex } = appendRecord(() => ({\n\t\t\ttag: \"SpanSnapshot\",\n\t\t\tval: createSpanSnapshotRecord(state),\n\t\t}));\n\t\tconst key = spanKey(spanId);\n\t\tconst ref = activeSpanRefs.get(key);\n\t\tif (ref) {\n\t\t\tactiveSpanRefs.set(key, {\n\t\t\t\t...ref,\n\t\t\t\tlatestSnapshotKey: {\n\t\t\t\t\tprefix: KEY_PREFIX.DATA,\n\t\t\t\t\tbucketStartSec: BigInt(currentChunk.bucketStartSec),\n\t\t\t\t\tchunkId: currentChunk.chunkId,\n\t\t\t\t\trecordIndex,\n\t\t\t\t},\n\t\t\t});\n\t\t}\n\t\tstate.bytesSinceSnapshot = 0;\n\t\tstate.lastSnapshotMonoMs = performance.now();\n\t}\n\n\tasync function flush(): Promise<boolean> {\n\t\tconst didFlush = flushChunk();\n\t\tif (didFlush) {\n\t\t\tresetChunkState(currentChunk.bucketStartSec);\n\t\t}\n\t\tawait writeChain.catch(recoverWriteChain);\n\t\treturn didFlush;\n\t}\n\n\tfunction getLastWriteError(): unknown | null {\n\t\treturn lastWriteError;\n\t}\n\n\tfunction withSpan<T>(handle: SpanHandle, fn: () => T): T {\n\t\treturn spanContext.run(handle, fn);\n\t}\n\n\tfunction getCurrentSpan(): SpanHandle | null {\n\t\tconst handle = spanContext.getStore() ?? null;\n\t\tif (!handle) {\n\t\t\treturn null;\n\t\t}\n\t\treturn isActive(handle) ? handle : null;\n\t}\n\n\tasync function readRangeWire(\n\t\toptions: ReadRangeOptions,\n\t): Promise<ReadRangeWire> {\n\t\tconst startMs = Math.floor(options.startMs);\n\t\tconst endMs = Math.floor(options.endMs);\n\t\tif (options.limit <= 0 || endMs <= startMs) {\n\t\t\treturn {\n\t\t\t\tstartTimeMs: BigInt(startMs),\n\t\t\t\tendTimeMs: BigInt(endMs),\n\t\t\t\tlimit: 0,\n\t\t\t\tclamped: false,\n\t\t\t\tbaseChunks: [],\n\t\t\t\tchunks: [],\n\t\t\t};\n\t\t}\n\t\tconst limitWasClamped = options.limit > maxReadLimit;\n\t\tconst limit = Math.min(options.limit, maxReadLimit);\n\t\tconst startNs = BigInt(startMs) * 1_000_000n;\n\t\tconst endNs = BigInt(endMs) * 1_000_000n;\n\n\t\tconst previousChunk = await findPreviousChunk(startNs, bucketSizeSec);\n\t\tconst activeRefs = previousChunk?.activeSpans ?? [];\n\t\tconst baseChunks: Chunk[] = [];\n\t\tfor (const ref of activeRefs) {\n\t\t\tconst baseRecord = await loadBaseRecord(ref);\n\t\t\tif (!baseRecord) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tconst baseUnixNs =\n\t\t\t\tbaseRecord.absNs - baseRecord.record.timeOffsetNs;\n\t\t\tbaseChunks.push({\n\t\t\t\tbaseUnixNs,\n\t\t\t\tstrings: baseRecord.strings,\n\t\t\t\trecords: [baseRecord.record],\n\t\t\t\tactiveSpans: [],\n\t\t\t});\n\t\t}\n\n\t\tconst chunks: Chunk[] = [];\n\t\tconst diskChunks = await listRangeChunks(startNs, endNs, bucketSizeSec);\n\t\tfor (const chunk of diskChunks) {\n\t\t\tconst filtered = filterChunkRecords(chunk.chunk, startNs, endNs);\n\t\t\tif (filtered) {\n\t\t\t\tchunks.push(filtered);\n\t\t\t}\n\t\t}\n\t\tfor (const pending of pendingChunks) {\n\t\t\tconst filtered = filterChunkRecords(pending.chunk, startNs, endNs);\n\t\t\tif (filtered) {\n\t\t\t\tchunks.push(filtered);\n\t\t\t}\n\t\t}\n\t\tconst currentFiltered = filterChunkRecords(\n\t\t\tcurrentChunkAsChunk(),\n\t\t\tstartNs,\n\t\t\tendNs,\n\t\t);\n\t\tif (currentFiltered) {\n\t\t\tchunks.push(currentFiltered);\n\t\t}\n\n\t\tconst reachedSpanLimit = countUniqueSpanIds(chunks, limit);\n\t\treturn {\n\t\t\tstartTimeMs: BigInt(startMs),\n\t\t\tendTimeMs: BigInt(endMs),\n\t\t\tlimit,\n\t\t\tclamped: limitWasClamped || reachedSpanLimit,\n\t\t\tbaseChunks,\n\t\t\tchunks,\n\t\t};\n\t}\n\n\tasync function readRange(\n\t\toptions: ReadRangeOptions,\n\t): Promise<ReadRangeResult<OtlpExportTraceServiceRequestJson>> {\n\t\tconst wire = await readRangeWire(options);\n\t\treturn readRangeWireToOtlp(wire, resource);\n\t}\n\n\tfunction filterChunkRecords(\n\t\tchunk: Chunk,\n\t\tstartNs: bigint,\n\t\tendNs: bigint,\n\t): Chunk | null {\n\t\tconst filtered: TraceRecord[] = [];\n\t\tfor (const record of chunk.records) {\n\t\t\tconst absNs = chunk.baseUnixNs + record.timeOffsetNs;\n\t\t\tif (absNs < startNs || absNs >= endNs) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tfiltered.push(record);\n\t\t}\n\t\tif (filtered.length === 0) {\n\t\t\treturn null;\n\t\t}\n\t\treturn {\n\t\t\tbaseUnixNs: chunk.baseUnixNs,\n\t\t\tstrings: chunk.strings,\n\t\t\trecords: filtered,\n\t\t\tactiveSpans: chunk.activeSpans,\n\t\t};\n\t}\n\n\tfunction countUniqueSpanIds(chunks: Chunk[], limit: number): boolean {\n\t\tif (limit <= 0) {\n\t\t\treturn true;\n\t\t}\n\t\tconst seen = new Set<string>();\n\t\tfor (const chunk of chunks) {\n\t\t\tfor (const record of chunk.records) {\n\t\t\t\tconst key = spanKey(recordSpanId(record.body));\n\t\t\t\tif (seen.has(key)) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (seen.size >= limit) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t\tseen.add(key);\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tfunction recordSpanId(body: RecordBody): SpanId {\n\t\tswitch (body.tag) {\n\t\t\tcase \"SpanStart\":\n\t\t\t\treturn body.val.spanId;\n\t\t\tcase \"SpanEvent\":\n\t\t\t\treturn body.val.spanId;\n\t\t\tcase \"SpanUpdate\":\n\t\t\t\treturn body.val.spanId;\n\t\t\tcase \"SpanEnd\":\n\t\t\t\treturn body.val.spanId;\n\t\t\tcase \"SpanSnapshot\":\n\t\t\t\treturn body.val.spanId;\n\t\t}\n\t}\n\n\tfunction currentChunkAsChunk(): Chunk {\n\t\treturn {\n\t\t\tbaseUnixNs: currentChunk.baseUnixNs,\n\t\t\tstrings: currentChunk.strings,\n\t\t\trecords: currentChunk.records,\n\t\t\tactiveSpans: Array.from(activeSpanRefs.values()),\n\t\t};\n\t}\n\n\tasync function listRangeChunks(\n\t\tstartNs: bigint,\n\t\tendNs: bigint,\n\t\tbucketSize: number,\n\t): Promise<Array<{ key: Uint8Array; chunk: Chunk }>> {\n\t\tconst startBucket = computeBucketStartSec(startNs, bucketSize);\n\t\tconst endBucket = computeBucketStartSec(endNs, bucketSize);\n\t\tconst startKey = buildChunkKey(startBucket, 0);\n\t\tconst endKey = buildChunkKey(endBucket + bucketSize, 0);\n\t\tconst entries = await driver.listRange(startKey, endKey);\n\t\tconst output: Array<{ key: Uint8Array; chunk: Chunk }> = [];\n\t\tfor (const entry of entries) {\n\t\t\tconst chunk = deserializeChunkSafe(entry.value);\n\t\t\tif (!chunk) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\toutput.push({ key: entry.key, chunk });\n\t\t}\n\t\treturn output;\n\t}\n\n\tasync function findPreviousChunk(\n\t\tstartNs: bigint,\n\t\tbucketSize: number,\n\t): Promise<Chunk | null> {\n\t\tconst startBucket = computeBucketStartSec(startNs, bucketSize);\n\t\tlet cursor = {\n\t\t\tbucketStartSec: startBucket,\n\t\t\tchunkId: AFTER_MAX_CHUNK_ID,\n\t\t};\n\n\t\twhile (true) {\n\t\t\tconst pendingCandidate = findLatestPendingBefore(cursor);\n\t\t\tconst diskCandidate = await findLatestDiskBefore(cursor);\n\t\t\tconst candidate = selectLatestCandidate(\n\t\t\t\tpendingCandidate,\n\t\t\t\tdiskCandidate,\n\t\t\t);\n\t\t\tif (!candidate) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tif (candidate.maxRecordNs < startNs) {\n\t\t\t\treturn candidate.chunk;\n\t\t\t}\n\t\t\tcursor = {\n\t\t\t\tbucketStartSec: candidate.bucketStartSec,\n\t\t\t\tchunkId: candidate.chunkId,\n\t\t\t};\n\t\t}\n\t}\n\n\tfunction findLatestPendingBefore(cursor: {\n\t\tbucketStartSec: number;\n\t\tchunkId: number;\n\t}): PendingChunk | null {\n\t\tlet best: PendingChunk | null = null;\n\t\tfor (const pending of pendingChunks) {\n\t\t\tif (compareChunkKey(pending, cursor) >= 0) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (!best || compareChunkKey(pending, best) > 0) {\n\t\t\t\tbest = pending;\n\t\t\t}\n\t\t}\n\t\treturn best;\n\t}\n\n\tasync function findLatestDiskBefore(cursor: {\n\t\tbucketStartSec: number;\n\t\tchunkId: number;\n\t}): Promise<PendingChunk | null> {\n\t\tconst startKey = buildChunkKey(0, 0);\n\t\tlet endKey = buildChunkKey(cursor.bucketStartSec, cursor.chunkId);\n\n\t\twhile (true) {\n\t\t\tconst entries = await driver.listRange(startKey, endKey, {\n\t\t\t\treverse: true,\n\t\t\t\tlimit: 10,\n\t\t\t});\n\t\t\tif (entries.length === 0) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tfor (const entry of entries) {\n\t\t\t\tconst chunk = deserializeChunkSafe(entry.value);\n\t\t\t\tif (!chunk) {\n\t\t\t\t\tendKey = entry.key;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tconst { bucketStartSec, chunkId } = decodeChunkKey(entry.key);\n\t\t\t\tconst maxRecordNs =\n\t\t\t\t\tchunk.records.length > 0\n\t\t\t\t\t\t? chunk.baseUnixNs +\n\t\t\t\t\t\t\tchunk.records[chunk.records.length - 1].timeOffsetNs\n\t\t\t\t\t\t: chunk.baseUnixNs;\n\t\t\t\treturn {\n\t\t\t\t\tkey: entry.key,\n\t\t\t\t\tbucketStartSec,\n\t\t\t\t\tchunkId,\n\t\t\t\t\tchunk,\n\t\t\t\t\tbytes: entry.value,\n\t\t\t\t\tmaxRecordNs,\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction selectLatestCandidate(\n\t\tpending: PendingChunk | null,\n\t\tdisk: PendingChunk | null,\n\t): PendingChunk | null {\n\t\tif (pending && disk) {\n\t\t\treturn compareChunkKey(pending, disk) >= 0 ? pending : disk;\n\t\t}\n\t\treturn pending ?? disk;\n\t}\n\n\tfunction compareChunkKey(\n\t\ta: { bucketStartSec: number; chunkId: number },\n\t\tb: { bucketStartSec: number; chunkId: number },\n\t): number {\n\t\tif (a.bucketStartSec !== b.bucketStartSec) {\n\t\t\treturn a.bucketStartSec - b.bucketStartSec;\n\t\t}\n\t\treturn a.chunkId - b.chunkId;\n\t}\n\n\tfunction decodeChunkKey(key: Uint8Array): {\n\t\tbucketStartSec: number;\n\t\tchunkId: number;\n\t} {\n\t\tconst tuple = unpack(Buffer.from(key)) as [number, number, number];\n\t\treturn { bucketStartSec: tuple[1], chunkId: tuple[2] };\n\t}\n\n\tfunction buildChunkKey(\n\t\tbucketStartSec: number,\n\t\tchunkId: number,\n\t): Uint8Array {\n\t\treturn pack([KEY_PREFIX.DATA, bucketStartSec, chunkId]);\n\t}\n\n\tfunction deserializeChunkSafe(bytes: Uint8Array): Chunk | null {\n\t\ttry {\n\t\t\treturn CHUNK_VERSIONED.deserializeWithEmbeddedVersion(bytes);\n\t\t} catch {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tasync function loadBaseRecord(ref: ActiveSpanRef): Promise<{\n\t\trecord: TraceRecord;\n\t\tstrings: readonly string[];\n\t\tabsNs: bigint;\n\t} | null> {\n\t\tconst key = ref.latestSnapshotKey ?? ref.startKey;\n\t\tconst bucketStartSec = toNumber(key.bucketStartSec);\n\t\tconst fromMemory = findChunkInMemory(bucketStartSec, key.chunkId);\n\t\tif (fromMemory) {\n\t\t\tconst record = fromMemory.records[key.recordIndex];\n\t\t\tif (!record) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tconst absNs = fromMemory.baseUnixNs + record.timeOffsetNs;\n\t\t\treturn { record, strings: fromMemory.strings, absNs };\n\t\t}\n\t\tconst chunkKey = buildChunkKey(bucketStartSec, key.chunkId);\n\t\tconst bytes = await driver.get(chunkKey);\n\t\tif (!bytes) {\n\t\t\treturn null;\n\t\t}\n\t\tconst chunk = deserializeChunkSafe(bytes);\n\t\tif (!chunk) {\n\t\t\treturn null;\n\t\t}\n\t\tconst record = chunk.records[key.recordIndex];\n\t\tif (!record) {\n\t\t\treturn null;\n\t\t}\n\t\tconst absNs = chunk.baseUnixNs + record.timeOffsetNs;\n\t\treturn { record, strings: chunk.strings, absNs };\n\t}\n\n\tfunction findChunkInMemory(\n\t\tbucketStartSec: number,\n\t\tchunkId: number,\n\t): Chunk | null {\n\t\tif (\n\t\t\tcurrentChunk.bucketStartSec === bucketStartSec &&\n\t\t\tcurrentChunk.chunkId === chunkId\n\t\t) {\n\t\t\treturn currentChunkAsChunk();\n\t\t}\n\t\tconst pending = pendingChunks.find(\n\t\t\t(candidate) =>\n\t\t\t\tcandidate.bucketStartSec === bucketStartSec &&\n\t\t\t\tcandidate.chunkId === chunkId,\n\t\t);\n\t\treturn pending?.chunk ?? null;\n\t}\n\n\tfunction toNumber(value: bigint): number {\n\t\tconst asNumber = Number(value);\n\t\tif (!Number.isSafeInteger(asNumber)) {\n\t\t\tthrow new Error(\"Value exceeds safe integer range\");\n\t\t}\n\t\treturn asNumber;\n\t}\n\n\tfunction computeSpanDepth(parentSpanId: SpanId | null): number {\n\t\tif (!parentSpanId) {\n\t\t\treturn 0;\n\t\t}\n\t\tconst parent = activeSpans.get(spanKey(parentSpanId));\n\t\tif (!parent) {\n\t\t\treturn 0;\n\t\t}\n\t\treturn parent.depth + 1;\n\t}\n\n\tfunction randomSpanId(): SpanId {\n\t\treturn toArrayBuffer(randomBytes(SPAN_ID_BYTES));\n\t}\n\n\tfunction randomTraceId(): TraceId {\n\t\treturn toArrayBuffer(randomBytes(TRACE_ID_BYTES));\n\t}\n\n\tfunction toBareStatus(status: SpanStatusInput): SpanStatus {\n\t\treturn {\n\t\t\tcode: toBareStatusCode(status.code),\n\t\t\tmessage: status.message ?? null,\n\t\t};\n\t}\n\n\tfunction toBareStatusCode(code: SpanStatusInput[\"code\"]): SpanStatusCode {\n\t\tswitch (code) {\n\t\t\tcase \"OK\":\n\t\t\t\treturn SpanStatusCode.OK;\n\t\t\tcase \"ERROR\":\n\t\t\t\treturn SpanStatusCode.ERROR;\n\t\t\tcase \"UNSET\":\n\t\t\tdefault:\n\t\t\t\treturn SpanStatusCode.UNSET;\n\t\t}\n\t}\n\n\treturn {\n\t\tstartSpan,\n\t\tupdateSpan,\n\t\tsetAttributes,\n\t\tsetStatus,\n\t\tendSpan,\n\t\temitEvent,\n\t\twithSpan,\n\t\tgetCurrentSpan,\n\t\tflush,\n\t\tgetLastWriteError,\n\t\treadRange,\n\t\treadRangeWire,\n\t};\n}\n"]}
1
+ {"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/traces/dist/tsup/index.cjs","../../src/traces.ts"],"names":["options","record","absNs"],"mappings":"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","file":"/home/runner/work/rivet/rivet/rivetkit-typescript/packages/traces/dist/tsup/index.cjs","sourcesContent":[null,"import { AsyncLocalStorage } from \"node:async_hooks\";\nimport { Buffer } from \"node:buffer\";\nimport { randomBytes } from \"node:crypto\";\nimport { performance } from \"node:perf_hooks\";\nimport { decode as decodeCbor, encode as encodeCbor } from \"cbor-x\";\nimport { pack, unpack } from \"fdb-tuple\";\nimport {\n\tCHUNK_VERSIONED,\n\tCURRENT_VERSION,\n\tencodeRecord,\n\ttype ActiveSpanRef,\n\ttype Attributes,\n\ttype Chunk,\n\ttype KeyValue,\n\ttype Record as TraceRecord,\n\ttype RecordBody,\n\ttype SpanEnd,\n\ttype SpanEvent,\n\ttype SpanId,\n\ttype SpanLink,\n\ttype SpanRecordKey,\n\ttype SpanSnapshot,\n\ttype SpanStart,\n\ttype SpanStatus,\n\tSpanStatusCode,\n\ttype SpanUpdate,\n\ttype StringId,\n\ttype TraceId,\n} from \"../schemas/versioned.js\";\nimport {\n\thexFromBytes,\n\ttype OtlpExportTraceServiceRequestJson,\n\ttype OtlpResource,\n} from \"./otlp.js\";\nimport { readRangeWireToOtlp } from \"./read-range.js\";\nimport type {\n\tEndSpanOptions,\n\tEventOptions,\n\tReadRangeOptions,\n\tReadRangeResult,\n\tReadRangeWire,\n\tSpanHandle,\n\tSpanStatusInput,\n\tStartSpanOptions,\n\tTraces,\n\tTracesDriver,\n\tTracesOptions,\n\tUpdateSpanOptions,\n} from \"./types.js\";\n\n// OTLP v1 JSON reference: https://opentelemetry.io/docs/specs/otlp/\n// Span data model reference: https://opentelemetry.io/docs/specs/otel/trace/api/\n\nconst KEY_PREFIX = {\n\tDATA: 1,\n};\n\nconst MAX_CHUNK_ID = 0xffff_ffff;\nconst AFTER_MAX_CHUNK_ID = 0x1_0000_0000;\n\nconst DEFAULT_BUCKET_SIZE_SEC = 3600;\nconst DEFAULT_TARGET_CHUNK_BYTES = 512 * 1024;\nconst DEFAULT_MAX_CHUNK_BYTES = 96 * 1024;\nconst DEFAULT_MAX_CHUNK_AGE_MS = 5000;\nconst DEFAULT_SNAPSHOT_INTERVAL_MS = 300_000;\nconst DEFAULT_SNAPSHOT_BYTES_THRESHOLD = 256 * 1024;\nconst DEFAULT_MAX_READ_LIMIT = 10_000;\nconst DEFAULT_MAX_ACTIVE_SPANS = 10_000;\n\nconst SPAN_ID_BYTES = 8;\nconst TRACE_ID_BYTES = 16;\n\ntype AttributeMap = Map<string, unknown>;\n\ntype SpanState = {\n\tspanId: SpanId;\n\ttraceId: TraceId;\n\tparentSpanId: SpanId | null;\n\tname: string;\n\tkind: number;\n\ttraceState: string | null;\n\tflags: number;\n\tattributes: AttributeMap;\n\tdroppedAttributesCount: number;\n\tlinks: LinkState[];\n\tdroppedLinksCount: number;\n\tstatus: SpanStatus | null;\n\tstartTimeUnixNs: bigint;\n\tdepth: number;\n\tbytesSinceSnapshot: number;\n\tlastSnapshotMonoMs: number;\n};\n\ntype LinkState = {\n\ttraceId: TraceId;\n\tspanId: SpanId;\n\ttraceState: string | null;\n\tattributes: AttributeMap;\n\tdroppedAttributesCount: number;\n};\n\ntype ChunkState = {\n\tbucketStartSec: number;\n\tchunkId: number;\n\tbaseUnixNs: bigint;\n\tstrings: string[];\n\tstringIds: Map<string, number>;\n\trecords: TraceRecord[];\n\tsizeBytes: number;\n\tcreatedAtMonoMs: number;\n};\n\ntype PendingChunk = {\n\tkey: Uint8Array;\n\tbucketStartSec: number;\n\tchunkId: number;\n\tchunk: Chunk;\n\tbytes: Uint8Array;\n\tmaxRecordNs: bigint;\n};\n\nconst spanContext = new AsyncLocalStorage<SpanHandle | null>();\n\nfunction spanKey(spanId: Uint8Array | SpanId): string {\n\treturn hexFromBytes(normalizeBytes(spanId));\n}\n\nfunction toArrayBuffer(bytes: Uint8Array): ArrayBuffer {\n\tconst copy = new Uint8Array(bytes.byteLength);\n\tcopy.set(bytes);\n\treturn copy.buffer;\n}\n\nfunction toUint8Array(buffer: ArrayBuffer): Uint8Array {\n\treturn new Uint8Array(buffer);\n}\n\nfunction normalizeBytes(input: Uint8Array | ArrayBuffer): Uint8Array {\n\treturn input instanceof Uint8Array ? input : new Uint8Array(input);\n}\n\nexport function createTraces(\n\toptions: TracesOptions<OtlpResource>,\n): Traces<OtlpExportTraceServiceRequestJson> {\n\tconst driver = options.driver;\n\tconst bucketSizeSec = options.bucketSizeSec ?? DEFAULT_BUCKET_SIZE_SEC;\n\tconst maxChunkBytes = options.maxChunkBytes ?? DEFAULT_MAX_CHUNK_BYTES;\n\tconst targetChunkBytes = Math.min(\n\t\toptions.targetChunkBytes ?? DEFAULT_TARGET_CHUNK_BYTES,\n\t\tmaxChunkBytes,\n\t);\n\tconst maxChunkAgeMs = options.maxChunkAgeMs ?? DEFAULT_MAX_CHUNK_AGE_MS;\n\tconst snapshotIntervalMs =\n\t\toptions.snapshotIntervalMs ?? DEFAULT_SNAPSHOT_INTERVAL_MS;\n\tconst snapshotBytesThreshold =\n\t\toptions.snapshotBytesThreshold ?? DEFAULT_SNAPSHOT_BYTES_THRESHOLD;\n\tconst maxActiveSpans = options.maxActiveSpans ?? DEFAULT_MAX_ACTIVE_SPANS;\n\tconst maxReadLimit = options.maxReadLimit ?? DEFAULT_MAX_READ_LIMIT;\n\tconst resource = options.resource;\n\n\tconst timeAnchor = {\n\t\tunixMs: Date.now(),\n\t\tmonoMs: performance.now(),\n\t};\n\n\tconst activeSpans = new Map<string, SpanState>();\n\tconst activeSpanRefs = new Map<string, ActiveSpanRef>();\n\tconst pendingChunks: PendingChunk[] = [];\n\tlet writeChain: Promise<void> = Promise.resolve();\n\tlet lastWriteError: unknown = null;\n\tconst bucketChunkCounters = new Map<number, number>();\n\n\tfunction nowUnixMs(): number {\n\t\treturn timeAnchor.unixMs + (performance.now() - timeAnchor.monoMs);\n\t}\n\n\tfunction nowUnixNs(anchor: { unixMs: number; monoMs: number }): bigint {\n\t\tconst unixMs = anchor.unixMs + (performance.now() - anchor.monoMs);\n\t\tconst wholeMs = Math.floor(unixMs);\n\t\tconst fracMs = unixMs - wholeMs;\n\t\treturn (\n\t\t\tBigInt(wholeMs) * 1_000_000n +\n\t\t\tBigInt(Math.floor(fracMs * 1_000_000))\n\t\t);\n\t}\n\n\tfunction createChunkState(bucketStartSec: number): ChunkState {\n\t\treturn {\n\t\t\tbucketStartSec,\n\t\t\tchunkId: nextChunkId(bucketStartSec),\n\t\t\tbaseUnixNs: BigInt(bucketStartSec) * 1_000_000_000n,\n\t\t\tstrings: [],\n\t\t\tstringIds: new Map(),\n\t\t\trecords: [],\n\t\t\tsizeBytes: 0,\n\t\t\tcreatedAtMonoMs: performance.now(),\n\t\t};\n\t}\n\n\tfunction nextChunkId(bucketStartSec: number): number {\n\t\tconst current = bucketChunkCounters.get(bucketStartSec) ?? 0;\n\t\tbucketChunkCounters.set(bucketStartSec, current + 1);\n\t\treturn current;\n\t}\n\n\tconst currentChunk = createChunkState(\n\t\tcomputeBucketStartSec(nowUnixNs(timeAnchor), bucketSizeSec),\n\t);\n\n\tfunction computeBucketStartSec(\n\t\tabsoluteUnixNs: bigint,\n\t\tbucketSize: number,\n\t): number {\n\t\tconst sec = absoluteUnixNs / 1_000_000_000n;\n\t\tconst bucket = sec / BigInt(bucketSize);\n\t\treturn Number(bucket * BigInt(bucketSize));\n\t}\n\n\tfunction internString(value: string): StringId {\n\t\tconst existing = currentChunk.stringIds.get(value);\n\t\tif (existing !== undefined) {\n\t\t\treturn existing;\n\t\t}\n\t\tconst id = currentChunk.strings.length;\n\t\tcurrentChunk.strings.push(value);\n\t\tcurrentChunk.stringIds.set(value, id);\n\t\treturn id;\n\t}\n\n\tfunction encodeAttributes(attributes?: Record<string, unknown>): {\n\t\tattributes: Attributes;\n\t\tdropped: number;\n\t} {\n\t\tconst list: KeyValue[] = [];\n\t\tlet dropped = 0;\n\t\tif (!attributes) {\n\t\t\treturn { attributes: list, dropped };\n\t\t}\n\t\tfor (const [key, value] of Object.entries(attributes)) {\n\t\t\tconst sanitized = sanitizeAttributeValue(value);\n\t\t\tif (sanitized === undefined) {\n\t\t\t\tdropped++;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\ttry {\n\t\t\t\tconst encoded = encodeCbor(sanitized);\n\t\t\t\tlist.push({\n\t\t\t\t\tkey: internString(key),\n\t\t\t\t\tvalue: toArrayBuffer(encoded),\n\t\t\t\t});\n\t\t\t} catch {\n\t\t\t\tdropped++;\n\t\t\t}\n\t\t}\n\t\treturn { attributes: list, dropped };\n\t}\n\n\tfunction sanitizeAttributeValue(value: unknown): unknown | undefined {\n\t\tif (value === undefined || typeof value === \"function\") {\n\t\t\treturn undefined;\n\t\t}\n\t\tif (typeof value === \"symbol\") {\n\t\t\treturn undefined;\n\t\t}\n\t\tif (value instanceof Map) {\n\t\t\tconst obj: Record<string, unknown> = {};\n\t\t\tfor (const [key, mapValue] of value.entries()) {\n\t\t\t\tif (typeof key !== \"string\") {\n\t\t\t\t\treturn undefined;\n\t\t\t\t}\n\t\t\t\tconst sanitized = sanitizeAttributeValue(mapValue);\n\t\t\t\tif (sanitized !== undefined) {\n\t\t\t\t\tobj[key] = sanitized;\n\t\t\t\t}\n\t\t\t}\n\t\t\treturn obj;\n\t\t}\n\t\tif (Array.isArray(value)) {\n\t\t\treturn value\n\t\t\t\t.map((entry) => sanitizeAttributeValue(entry))\n\t\t\t\t.filter((entry) => entry !== undefined);\n\t\t}\n\t\treturn value;\n\t}\n\n\tfunction encodeLinks(links?: StartSpanOptions[\"links\"]): {\n\t\tlinks: SpanLink[];\n\t\tdropped: number;\n\t} {\n\t\tconst result: SpanLink[] = [];\n\t\tlet dropped = 0;\n\t\tif (!links) {\n\t\t\treturn { links: result, dropped };\n\t\t}\n\t\tfor (const link of links) {\n\t\t\tconst { attributes, dropped: droppedAttributes } = encodeAttributes(\n\t\t\t\tlink.attributes,\n\t\t\t);\n\t\t\tresult.push({\n\t\t\t\ttraceId: toArrayBuffer(link.traceId),\n\t\t\t\tspanId: toArrayBuffer(link.spanId),\n\t\t\t\ttraceState: link.traceState ?? null,\n\t\t\t\tattributes,\n\t\t\t\tdroppedAttributesCount: droppedAttributes,\n\t\t\t});\n\t\t}\n\t\treturn { links: result, dropped };\n\t}\n\n\tfunction createSpanStartRecord(\n\t\tspanId: SpanId,\n\t\ttraceId: TraceId,\n\t\tname: string,\n\t\toptions: StartSpanOptions | undefined,\n\t\tparentSpanId: SpanId | null,\n\t): SpanStart {\n\t\tconst { attributes, dropped } = encodeAttributes(options?.attributes);\n\t\tconst { links, dropped: droppedLinks } = encodeLinks(options?.links);\n\t\treturn {\n\t\t\ttraceId,\n\t\t\tspanId,\n\t\t\tparentSpanId,\n\t\t\tname: internString(name),\n\t\t\tkind: options?.kind ?? 0,\n\t\t\ttraceState: options?.traceState ?? null,\n\t\t\tflags: options?.flags ?? 0,\n\t\t\tattributes,\n\t\t\tdroppedAttributesCount: dropped,\n\t\t\tlinks,\n\t\t\tdroppedLinksCount: droppedLinks,\n\t\t};\n\t}\n\n\tfunction createSpanUpdateRecord(\n\t\tspanId: SpanId,\n\t\toptions: UpdateSpanOptions,\n\t): SpanUpdate {\n\t\tconst { attributes, dropped } = encodeAttributes(options.attributes);\n\t\treturn {\n\t\t\tspanId,\n\t\t\tattributes,\n\t\t\tdroppedAttributesCount: dropped,\n\t\t\tstatus: options.status ? toBareStatus(options.status) : null,\n\t\t};\n\t}\n\n\tfunction createSpanEventRecord(\n\t\tspanId: SpanId,\n\t\tname: string,\n\t\toptions: EventOptions | undefined,\n\t): SpanEvent {\n\t\tconst { attributes, dropped } = encodeAttributes(options?.attributes);\n\t\treturn {\n\t\t\tspanId,\n\t\t\tname: internString(name),\n\t\t\tattributes,\n\t\t\tdroppedAttributesCount: dropped,\n\t\t};\n\t}\n\n\tfunction createSpanEndRecord(\n\t\tspanId: SpanId,\n\t\toptions: EndSpanOptions | undefined,\n\t): SpanEnd {\n\t\treturn {\n\t\t\tspanId,\n\t\t\tstatus: options?.status ? toBareStatus(options.status) : null,\n\t\t};\n\t}\n\n\tfunction createSpanSnapshotRecord(state: SpanState): SpanSnapshot {\n\t\tconst { attributes, dropped } = encodeAttributeMap(state.attributes);\n\t\tconst { links, dropped: droppedLinks } = encodeLinkState(state.links);\n\t\treturn {\n\t\t\ttraceId: state.traceId,\n\t\t\tspanId: state.spanId,\n\t\t\tparentSpanId: state.parentSpanId,\n\t\t\tname: internString(state.name),\n\t\t\tkind: state.kind,\n\t\t\tstartTimeUnixNs: state.startTimeUnixNs,\n\t\t\ttraceState: state.traceState,\n\t\t\tflags: state.flags,\n\t\t\tattributes,\n\t\t\tdroppedAttributesCount: state.droppedAttributesCount + dropped,\n\t\t\tlinks,\n\t\t\tdroppedLinksCount: state.droppedLinksCount + droppedLinks,\n\t\t\tstatus: state.status,\n\t\t};\n\t}\n\n\tfunction encodeAttributeMap(attributes: AttributeMap): {\n\t\tattributes: Attributes;\n\t\tdropped: number;\n\t} {\n\t\tconst list: KeyValue[] = [];\n\t\tlet dropped = 0;\n\t\tfor (const [key, value] of attributes.entries()) {\n\t\t\tconst sanitized = sanitizeAttributeValue(value);\n\t\t\tif (sanitized === undefined) {\n\t\t\t\tdropped++;\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\ttry {\n\t\t\t\tconst encoded = encodeCbor(sanitized);\n\t\t\t\tlist.push({\n\t\t\t\t\tkey: internString(key),\n\t\t\t\t\tvalue: toArrayBuffer(encoded),\n\t\t\t\t});\n\t\t\t} catch {\n\t\t\t\tdropped++;\n\t\t\t}\n\t\t}\n\t\treturn { attributes: list, dropped };\n\t}\n\n\tfunction buildAttributeMapFromInput(\n\t\tattributes?: Record<string, unknown>,\n\t): AttributeMap {\n\t\tconst map = new Map<string, unknown>();\n\t\tif (!attributes) {\n\t\t\treturn map;\n\t\t}\n\t\tfor (const [key, value] of Object.entries(attributes)) {\n\t\t\tconst sanitized = sanitizeAttributeValue(value);\n\t\t\tif (sanitized !== undefined) {\n\t\t\t\tmap.set(key, sanitized);\n\t\t\t}\n\t\t}\n\t\treturn map;\n\t}\n\n\tfunction decodeAttributeList(\n\t\tattributes: Attributes,\n\t\tstrings: readonly string[],\n\t): AttributeMap {\n\t\tconst map = new Map<string, unknown>();\n\t\tfor (const kv of attributes) {\n\t\t\tconst key = strings[kv.key] ?? \"\";\n\t\t\ttry {\n\t\t\t\tmap.set(key, decodeCbor(toUint8Array(kv.value)) as unknown);\n\t\t\t} catch {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t}\n\t\treturn map;\n\t}\n\n\tfunction decodeLinks(\n\t\tlinks: readonly SpanLink[],\n\t\tstrings: readonly string[],\n\t): LinkState[] {\n\t\treturn links.map((link) => ({\n\t\t\ttraceId: link.traceId,\n\t\t\tspanId: link.spanId,\n\t\t\ttraceState: link.traceState,\n\t\t\tattributes: decodeAttributeList(link.attributes, strings),\n\t\t\tdroppedAttributesCount: link.droppedAttributesCount,\n\t\t}));\n\t}\n\n\tfunction encodeLinkState(links: LinkState[]): {\n\t\tlinks: SpanLink[];\n\t\tdropped: number;\n\t} {\n\t\tconst result: SpanLink[] = [];\n\t\tlet dropped = 0;\n\t\tfor (const link of links) {\n\t\t\tconst { attributes, dropped: droppedAttributes } =\n\t\t\t\tencodeAttributeMap(link.attributes);\n\t\t\tresult.push({\n\t\t\t\ttraceId: link.traceId,\n\t\t\t\tspanId: link.spanId,\n\t\t\t\ttraceState: link.traceState,\n\t\t\t\tattributes,\n\t\t\t\tdroppedAttributesCount: droppedAttributes,\n\t\t\t});\n\t\t}\n\t\treturn { links: result, dropped };\n\t}\n\n\tfunction appendRecord(\n\t\tbuildBody: () => RecordBody,\n\t\tprovidedTimeUnixMs?: number,\n\t): { recordIndex: number; encodedBytes: number; body: RecordBody } {\n\t\tconst absoluteUnixNs =\n\t\t\tprovidedTimeUnixMs !== undefined\n\t\t\t\t? BigInt(Math.floor(providedTimeUnixMs)) * 1_000_000n\n\t\t\t\t: nowUnixNs(timeAnchor);\n\t\tconst recordBucketStart = computeBucketStartSec(\n\t\t\tabsoluteUnixNs,\n\t\t\tbucketSizeSec,\n\t\t);\n\t\tif (recordBucketStart !== currentChunk.bucketStartSec) {\n\t\t\tflushChunk();\n\t\t\tresetChunkState(recordBucketStart);\n\t\t}\n\t\tif (performance.now() - currentChunk.createdAtMonoMs >= maxChunkAgeMs) {\n\t\t\tflushChunk();\n\t\t\tresetChunkState(recordBucketStart);\n\t\t}\n\t\tlet body = buildBody();\n\t\tconst timeOffsetNs = absoluteUnixNs - currentChunk.baseUnixNs;\n\t\tlet record: TraceRecord = { timeOffsetNs, body };\n\t\tlet encodedRecord = encodeRecord(record);\n\t\tif (encodedRecord.length > maxChunkBytes) {\n\t\t\tthrow new Error(\"Record exceeds maxChunkBytes\");\n\t\t}\n\t\tif (currentChunk.sizeBytes + encodedRecord.length > targetChunkBytes) {\n\t\t\tflushChunk();\n\t\t\tresetChunkState(recordBucketStart);\n\t\t\tbody = buildBody();\n\t\t\trecord = { timeOffsetNs, body };\n\t\t\tencodedRecord = encodeRecord(record);\n\t\t\tif (encodedRecord.length > maxChunkBytes) {\n\t\t\t\tthrow new Error(\"Record exceeds maxChunkBytes\");\n\t\t\t}\n\t\t}\n\t\tcurrentChunk.records.push(record);\n\t\tcurrentChunk.sizeBytes += encodedRecord.length;\n\t\tconst recordIndex = currentChunk.records.length - 1;\n\t\treturn { recordIndex, encodedBytes: encodedRecord.length, body };\n\t}\n\n\tfunction flushChunk(): boolean {\n\t\tif (currentChunk.records.length === 0) {\n\t\t\treturn false;\n\t\t}\n\t\tconst chunk: Chunk = {\n\t\t\tbaseUnixNs: currentChunk.baseUnixNs,\n\t\t\tstrings: currentChunk.strings,\n\t\t\trecords: currentChunk.records,\n\t\t\tactiveSpans: Array.from(activeSpanRefs.values()),\n\t\t};\n\t\tconst bytes = CHUNK_VERSIONED.serializeWithEmbeddedVersion(\n\t\t\tchunk,\n\t\t\tCURRENT_VERSION,\n\t\t);\n\t\tconst key = buildChunkKey(\n\t\t\tcurrentChunk.bucketStartSec,\n\t\t\tcurrentChunk.chunkId,\n\t\t);\n\t\tconst maxRecordNs =\n\t\t\tchunk.records.length > 0\n\t\t\t\t? chunk.baseUnixNs +\n\t\t\t\t\tchunk.records[chunk.records.length - 1].timeOffsetNs\n\t\t\t\t: chunk.baseUnixNs;\n\t\tconst pending: PendingChunk = {\n\t\t\tkey,\n\t\t\tbucketStartSec: currentChunk.bucketStartSec,\n\t\t\tchunkId: currentChunk.chunkId,\n\t\t\tchunk,\n\t\t\tbytes,\n\t\t\tmaxRecordNs,\n\t\t};\n\t\tpendingChunks.push(pending);\n\t\tenqueueWrite(pending);\n\t\treturn true;\n\t}\n\n\tfunction enqueueWrite(pending: PendingChunk): void {\n\t\twriteChain = writeChain\n\t\t\t.then(async () => {\n\t\t\t\tawait driver.set(pending.key, pending.bytes);\n\t\t\t\tconst index = pendingChunks.indexOf(pending);\n\t\t\t\tif (index !== -1) {\n\t\t\t\t\tpendingChunks.splice(index, 1);\n\t\t\t\t}\n\t\t\t})\n\t\t\t.catch(recoverWriteChain);\n\t}\n\n\tfunction recoverWriteChain(error: unknown): undefined {\n\t\tlastWriteError = error;\n\t\tconsole.warn(\"[rivetkit/traces] trace chunk write failed\", error);\n\t\treturn undefined;\n\t}\n\n\tfunction resetChunkState(bucketStartSec: number): void {\n\t\tcurrentChunk.bucketStartSec = bucketStartSec;\n\t\tcurrentChunk.chunkId = nextChunkId(bucketStartSec);\n\t\tcurrentChunk.baseUnixNs = BigInt(bucketStartSec) * 1_000_000_000n;\n\t\tcurrentChunk.strings = [];\n\t\tcurrentChunk.stringIds = new Map();\n\t\tcurrentChunk.records = [];\n\t\tcurrentChunk.sizeBytes = 0;\n\t\tcurrentChunk.createdAtMonoMs = performance.now();\n\t}\n\n\tfunction enforceMaxActiveSpans(): void {\n\t\tif (activeSpans.size <= maxActiveSpans) {\n\t\t\treturn;\n\t\t}\n\t\tconst candidates = Array.from(activeSpans.values()).sort((a, b) => {\n\t\t\tif (a.depth !== b.depth) {\n\t\t\t\treturn b.depth - a.depth;\n\t\t\t}\n\t\t\tif (a.startTimeUnixNs > b.startTimeUnixNs) {\n\t\t\t\treturn -1;\n\t\t\t}\n\t\t\tif (a.startTimeUnixNs < b.startTimeUnixNs) {\n\t\t\t\treturn 1;\n\t\t\t}\n\t\t\treturn 0;\n\t\t});\n\t\tfor (const span of candidates) {\n\t\t\tdropSpan(span.spanId);\n\t\t\tif (activeSpans.size <= maxActiveSpans) {\n\t\t\t\tbreak;\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction dropSpan(spanId: SpanId | Uint8Array): void {\n\t\tconst key = spanKey(spanId);\n\t\tactiveSpans.delete(key);\n\t\tactiveSpanRefs.delete(key);\n\t}\n\n\tfunction assertActive(handle: SpanHandle): void {\n\t\tif (!isActive(handle)) {\n\t\t\tthrow new Error(\"Span handle is not active\");\n\t\t}\n\t}\n\n\tfunction isActive(handle: SpanHandle): boolean {\n\t\treturn activeSpans.has(spanKey(handle.spanId));\n\t}\n\n\tfunction startSpan(name: string, options?: StartSpanOptions): SpanHandle {\n\t\tconst parent = options?.parent ?? getCurrentSpan();\n\t\tif (parent) {\n\t\t\tassertActive(parent);\n\t\t}\n\t\tconst spanIdBytes = randomBytes(SPAN_ID_BYTES);\n\t\tconst traceIdBytes = parent\n\t\t\t? parent.traceId\n\t\t\t: randomBytes(TRACE_ID_BYTES);\n\t\tconst spanId = toArrayBuffer(spanIdBytes);\n\t\tconst traceId = toArrayBuffer(traceIdBytes);\n\t\tconst parentSpanId = parent ? toArrayBuffer(parent.spanId) : null;\n\t\tconst { recordIndex, encodedBytes, body } = appendRecord(() => ({\n\t\t\ttag: \"SpanStart\",\n\t\t\tval: createSpanStartRecord(\n\t\t\t\tspanId,\n\t\t\t\ttraceId,\n\t\t\t\tname,\n\t\t\t\toptions,\n\t\t\t\tparentSpanId,\n\t\t\t),\n\t\t}));\n\t\tconst spanStart = body.val as SpanStart;\n\t\tconst key = spanKey(spanId);\n\t\tconst startKey: SpanRecordKey = {\n\t\t\tprefix: KEY_PREFIX.DATA,\n\t\t\tbucketStartSec: BigInt(currentChunk.bucketStartSec),\n\t\t\tchunkId: currentChunk.chunkId,\n\t\t\trecordIndex,\n\t\t};\n\t\tactiveSpanRefs.set(key, {\n\t\t\tspanId,\n\t\t\tstartKey,\n\t\t\tlatestSnapshotKey: null,\n\t\t});\n\t\tconst depth = computeSpanDepth(parentSpanId);\n\t\tactiveSpans.set(key, {\n\t\t\tspanId,\n\t\t\ttraceId,\n\t\t\tparentSpanId,\n\t\t\tname,\n\t\t\tkind: options?.kind ?? 0,\n\t\t\ttraceState: options?.traceState ?? null,\n\t\t\tflags: options?.flags ?? 0,\n\t\t\tattributes: buildAttributeMapFromInput(options?.attributes),\n\t\t\tdroppedAttributesCount: spanStart.droppedAttributesCount,\n\t\t\tlinks: decodeLinks(spanStart.links, currentChunk.strings),\n\t\t\tdroppedLinksCount: spanStart.droppedLinksCount,\n\t\t\tstatus: null,\n\t\t\tstartTimeUnixNs:\n\t\t\t\tcurrentChunk.baseUnixNs +\n\t\t\t\tcurrentChunk.records[recordIndex].timeOffsetNs,\n\t\t\tdepth,\n\t\t\tbytesSinceSnapshot: encodedBytes,\n\t\t\tlastSnapshotMonoMs: performance.now(),\n\t\t});\n\t\tenforceMaxActiveSpans();\n\t\treturn {\n\t\t\tspanId: spanIdBytes,\n\t\t\ttraceId: traceIdBytes,\n\t\t\tisActive: () => activeSpans.has(key),\n\t\t};\n\t}\n\n\tfunction updateSpan(handle: SpanHandle, options: UpdateSpanOptions): void {\n\t\tif (!options.attributes && !options.status) {\n\t\t\treturn;\n\t\t}\n\t\tassertActive(handle);\n\t\tconst { encodedBytes, body } = appendRecord(() => ({\n\t\t\ttag: \"SpanUpdate\",\n\t\t\tval: createSpanUpdateRecord(toArrayBuffer(handle.spanId), options),\n\t\t}));\n\t\tconst spanUpdate = body.val as SpanUpdate;\n\t\tconst state = activeSpans.get(spanKey(handle.spanId));\n\t\tif (!state) {\n\t\t\treturn;\n\t\t}\n\t\tif (options.attributes) {\n\t\t\tconst updates = buildAttributeMapFromInput(options.attributes);\n\t\t\tfor (const [key, value] of updates.entries()) {\n\t\t\t\tstate.attributes.set(key, value);\n\t\t\t}\n\t\t}\n\t\tstate.droppedAttributesCount += spanUpdate.droppedAttributesCount;\n\t\tif (options.status) {\n\t\t\tstate.status = toBareStatus(options.status);\n\t\t}\n\t\tstate.bytesSinceSnapshot += encodedBytes;\n\t\tmaybeSnapshot(handle.spanId, state);\n\t}\n\n\tfunction setAttributes(\n\t\thandle: SpanHandle,\n\t\tattributes: Record<string, unknown>,\n\t): void {\n\t\tupdateSpan(handle, { attributes });\n\t}\n\n\tfunction setStatus(handle: SpanHandle, status: SpanStatusInput): void {\n\t\tupdateSpan(handle, { status });\n\t}\n\n\tfunction emitEvent(\n\t\thandle: SpanHandle,\n\t\tname: string,\n\t\toptions?: EventOptions,\n\t): void {\n\t\tassertActive(handle);\n\t\tconst { encodedBytes } = appendRecord(\n\t\t\t() => ({\n\t\t\t\ttag: \"SpanEvent\",\n\t\t\t\tval: createSpanEventRecord(\n\t\t\t\t\ttoArrayBuffer(handle.spanId),\n\t\t\t\t\tname,\n\t\t\t\t\toptions,\n\t\t\t\t),\n\t\t\t}),\n\t\t\toptions?.timeUnixMs,\n\t\t);\n\t\tconst state = activeSpans.get(spanKey(handle.spanId));\n\t\tif (state) {\n\t\t\tstate.bytesSinceSnapshot += encodedBytes;\n\t\t\tmaybeSnapshot(handle.spanId, state);\n\t\t}\n\t}\n\n\tfunction endSpan(handle: SpanHandle, options?: EndSpanOptions): void {\n\t\tassertActive(handle);\n\t\tappendRecord(() => ({\n\t\t\ttag: \"SpanEnd\",\n\t\t\tval: createSpanEndRecord(toArrayBuffer(handle.spanId), options),\n\t\t}));\n\t\tdropSpan(handle.spanId);\n\t}\n\n\tfunction maybeSnapshot(\n\t\tspanId: SpanId | Uint8Array,\n\t\tstate: SpanState,\n\t): void {\n\t\tif (\n\t\t\tstate.bytesSinceSnapshot < snapshotBytesThreshold &&\n\t\t\tperformance.now() - state.lastSnapshotMonoMs < snapshotIntervalMs\n\t\t) {\n\t\t\treturn;\n\t\t}\n\t\tconst { recordIndex } = appendRecord(() => ({\n\t\t\ttag: \"SpanSnapshot\",\n\t\t\tval: createSpanSnapshotRecord(state),\n\t\t}));\n\t\tconst key = spanKey(spanId);\n\t\tconst ref = activeSpanRefs.get(key);\n\t\tif (ref) {\n\t\t\tactiveSpanRefs.set(key, {\n\t\t\t\t...ref,\n\t\t\t\tlatestSnapshotKey: {\n\t\t\t\t\tprefix: KEY_PREFIX.DATA,\n\t\t\t\t\tbucketStartSec: BigInt(currentChunk.bucketStartSec),\n\t\t\t\t\tchunkId: currentChunk.chunkId,\n\t\t\t\t\trecordIndex,\n\t\t\t\t},\n\t\t\t});\n\t\t}\n\t\tstate.bytesSinceSnapshot = 0;\n\t\tstate.lastSnapshotMonoMs = performance.now();\n\t}\n\n\tasync function flush(): Promise<boolean> {\n\t\tconst didFlush = flushChunk();\n\t\tif (didFlush) {\n\t\t\tresetChunkState(currentChunk.bucketStartSec);\n\t\t}\n\t\tawait writeChain.catch(recoverWriteChain);\n\t\treturn didFlush;\n\t}\n\n\tfunction getLastWriteError(): unknown | null {\n\t\treturn lastWriteError;\n\t}\n\n\tfunction withSpan<T>(handle: SpanHandle, fn: () => T): T {\n\t\treturn spanContext.run(handle, fn);\n\t}\n\n\tfunction getCurrentSpan(): SpanHandle | null {\n\t\tconst handle = spanContext.getStore() ?? null;\n\t\tif (!handle) {\n\t\t\treturn null;\n\t\t}\n\t\treturn isActive(handle) ? handle : null;\n\t}\n\n\tasync function readRangeWire(\n\t\toptions: ReadRangeOptions,\n\t): Promise<ReadRangeWire> {\n\t\tconst startMs = Math.floor(options.startMs);\n\t\tconst endMs = Math.floor(options.endMs);\n\t\tif (options.limit <= 0 || endMs <= startMs) {\n\t\t\treturn {\n\t\t\t\tstartTimeMs: BigInt(startMs),\n\t\t\t\tendTimeMs: BigInt(endMs),\n\t\t\t\tlimit: 0,\n\t\t\t\tclamped: false,\n\t\t\t\tbaseChunks: [],\n\t\t\t\tchunks: [],\n\t\t\t};\n\t\t}\n\t\tconst limitWasClamped = options.limit > maxReadLimit;\n\t\tconst limit = Math.min(options.limit, maxReadLimit);\n\t\tconst startNs = BigInt(startMs) * 1_000_000n;\n\t\tconst endNs = BigInt(endMs) * 1_000_000n;\n\n\t\tconst previousChunk = await findPreviousChunk(startNs, bucketSizeSec);\n\t\tconst activeRefs = previousChunk?.activeSpans ?? [];\n\t\tconst baseChunks: Chunk[] = [];\n\t\tfor (const ref of activeRefs) {\n\t\t\tconst baseRecord = await loadBaseRecord(ref);\n\t\t\tif (!baseRecord) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tconst baseUnixNs =\n\t\t\t\tbaseRecord.absNs - baseRecord.record.timeOffsetNs;\n\t\t\tbaseChunks.push({\n\t\t\t\tbaseUnixNs,\n\t\t\t\tstrings: baseRecord.strings,\n\t\t\t\trecords: [baseRecord.record],\n\t\t\t\tactiveSpans: [],\n\t\t\t});\n\t\t}\n\n\t\tconst chunks: Chunk[] = [];\n\t\tconst diskChunks = await listRangeChunks(startNs, endNs, bucketSizeSec);\n\t\tfor (const chunk of diskChunks) {\n\t\t\tconst filtered = filterChunkRecords(chunk.chunk, startNs, endNs);\n\t\t\tif (filtered) {\n\t\t\t\tchunks.push(filtered);\n\t\t\t}\n\t\t}\n\t\tfor (const pending of pendingChunks) {\n\t\t\tconst filtered = filterChunkRecords(pending.chunk, startNs, endNs);\n\t\t\tif (filtered) {\n\t\t\t\tchunks.push(filtered);\n\t\t\t}\n\t\t}\n\t\tconst currentFiltered = filterChunkRecords(\n\t\t\tcurrentChunkAsChunk(),\n\t\t\tstartNs,\n\t\t\tendNs,\n\t\t);\n\t\tif (currentFiltered) {\n\t\t\tchunks.push(currentFiltered);\n\t\t}\n\n\t\tconst reachedSpanLimit = countUniqueSpanIds(chunks, limit);\n\t\treturn {\n\t\t\tstartTimeMs: BigInt(startMs),\n\t\t\tendTimeMs: BigInt(endMs),\n\t\t\tlimit,\n\t\t\tclamped: limitWasClamped || reachedSpanLimit,\n\t\t\tbaseChunks,\n\t\t\tchunks,\n\t\t};\n\t}\n\n\tasync function readRange(\n\t\toptions: ReadRangeOptions,\n\t): Promise<ReadRangeResult<OtlpExportTraceServiceRequestJson>> {\n\t\tconst wire = await readRangeWire(options);\n\t\treturn readRangeWireToOtlp(wire, resource);\n\t}\n\n\tfunction filterChunkRecords(\n\t\tchunk: Chunk,\n\t\tstartNs: bigint,\n\t\tendNs: bigint,\n\t): Chunk | null {\n\t\tconst filtered: TraceRecord[] = [];\n\t\tfor (const record of chunk.records) {\n\t\t\tconst absNs = chunk.baseUnixNs + record.timeOffsetNs;\n\t\t\tif (absNs < startNs || absNs >= endNs) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tfiltered.push(record);\n\t\t}\n\t\tif (filtered.length === 0) {\n\t\t\treturn null;\n\t\t}\n\t\treturn {\n\t\t\tbaseUnixNs: chunk.baseUnixNs,\n\t\t\tstrings: chunk.strings,\n\t\t\trecords: filtered,\n\t\t\tactiveSpans: chunk.activeSpans,\n\t\t};\n\t}\n\n\tfunction countUniqueSpanIds(chunks: Chunk[], limit: number): boolean {\n\t\tif (limit <= 0) {\n\t\t\treturn true;\n\t\t}\n\t\tconst seen = new Set<string>();\n\t\tfor (const chunk of chunks) {\n\t\t\tfor (const record of chunk.records) {\n\t\t\t\tconst key = spanKey(recordSpanId(record.body));\n\t\t\t\tif (seen.has(key)) {\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tif (seen.size >= limit) {\n\t\t\t\t\treturn true;\n\t\t\t\t}\n\t\t\t\tseen.add(key);\n\t\t\t}\n\t\t}\n\t\treturn false;\n\t}\n\n\tfunction recordSpanId(body: RecordBody): SpanId {\n\t\tswitch (body.tag) {\n\t\t\tcase \"SpanStart\":\n\t\t\t\treturn body.val.spanId;\n\t\t\tcase \"SpanEvent\":\n\t\t\t\treturn body.val.spanId;\n\t\t\tcase \"SpanUpdate\":\n\t\t\t\treturn body.val.spanId;\n\t\t\tcase \"SpanEnd\":\n\t\t\t\treturn body.val.spanId;\n\t\t\tcase \"SpanSnapshot\":\n\t\t\t\treturn body.val.spanId;\n\t\t}\n\t}\n\n\tfunction currentChunkAsChunk(): Chunk {\n\t\treturn {\n\t\t\tbaseUnixNs: currentChunk.baseUnixNs,\n\t\t\tstrings: currentChunk.strings,\n\t\t\trecords: currentChunk.records,\n\t\t\tactiveSpans: Array.from(activeSpanRefs.values()),\n\t\t};\n\t}\n\n\tasync function listRangeChunks(\n\t\tstartNs: bigint,\n\t\tendNs: bigint,\n\t\tbucketSize: number,\n\t): Promise<Array<{ key: Uint8Array; chunk: Chunk }>> {\n\t\tconst startBucket = computeBucketStartSec(startNs, bucketSize);\n\t\tconst endBucket = computeBucketStartSec(endNs, bucketSize);\n\t\tconst startKey = buildChunkKey(startBucket, 0);\n\t\tconst endKey = buildChunkKey(endBucket + bucketSize, 0);\n\t\tconst entries = await driver.listRange(startKey, endKey);\n\t\tconst output: Array<{ key: Uint8Array; chunk: Chunk }> = [];\n\t\tfor (const entry of entries) {\n\t\t\tconst chunk = deserializeChunkSafe(entry.value);\n\t\t\tif (!chunk) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\toutput.push({ key: entry.key, chunk });\n\t\t}\n\t\treturn output;\n\t}\n\n\tasync function findPreviousChunk(\n\t\tstartNs: bigint,\n\t\tbucketSize: number,\n\t): Promise<Chunk | null> {\n\t\tconst startBucket = computeBucketStartSec(startNs, bucketSize);\n\t\tlet cursor = {\n\t\t\tbucketStartSec: startBucket,\n\t\t\tchunkId: AFTER_MAX_CHUNK_ID,\n\t\t};\n\n\t\twhile (true) {\n\t\t\tconst pendingCandidate = findLatestPendingBefore(cursor);\n\t\t\tconst diskCandidate = await findLatestDiskBefore(cursor);\n\t\t\tconst candidate = selectLatestCandidate(\n\t\t\t\tpendingCandidate,\n\t\t\t\tdiskCandidate,\n\t\t\t);\n\t\t\tif (!candidate) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tif (candidate.maxRecordNs < startNs) {\n\t\t\t\treturn candidate.chunk;\n\t\t\t}\n\t\t\tcursor = {\n\t\t\t\tbucketStartSec: candidate.bucketStartSec,\n\t\t\t\tchunkId: candidate.chunkId,\n\t\t\t};\n\t\t}\n\t}\n\n\tfunction findLatestPendingBefore(cursor: {\n\t\tbucketStartSec: number;\n\t\tchunkId: number;\n\t}): PendingChunk | null {\n\t\tlet best: PendingChunk | null = null;\n\t\tfor (const pending of pendingChunks) {\n\t\t\tif (compareChunkKey(pending, cursor) >= 0) {\n\t\t\t\tcontinue;\n\t\t\t}\n\t\t\tif (!best || compareChunkKey(pending, best) > 0) {\n\t\t\t\tbest = pending;\n\t\t\t}\n\t\t}\n\t\treturn best;\n\t}\n\n\tasync function findLatestDiskBefore(cursor: {\n\t\tbucketStartSec: number;\n\t\tchunkId: number;\n\t}): Promise<PendingChunk | null> {\n\t\tconst startKey = buildChunkKey(0, 0);\n\t\tlet endKey = buildChunkKey(cursor.bucketStartSec, cursor.chunkId);\n\n\t\twhile (true) {\n\t\t\tconst entries = await driver.listRange(startKey, endKey, {\n\t\t\t\treverse: true,\n\t\t\t\tlimit: 10,\n\t\t\t});\n\t\t\tif (entries.length === 0) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tfor (const entry of entries) {\n\t\t\t\tconst chunk = deserializeChunkSafe(entry.value);\n\t\t\t\tif (!chunk) {\n\t\t\t\t\tendKey = entry.key;\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\t\t\t\tconst { bucketStartSec, chunkId } = decodeChunkKey(entry.key);\n\t\t\t\tconst maxRecordNs =\n\t\t\t\t\tchunk.records.length > 0\n\t\t\t\t\t\t? chunk.baseUnixNs +\n\t\t\t\t\t\t\tchunk.records[chunk.records.length - 1].timeOffsetNs\n\t\t\t\t\t\t: chunk.baseUnixNs;\n\t\t\t\treturn {\n\t\t\t\t\tkey: entry.key,\n\t\t\t\t\tbucketStartSec,\n\t\t\t\t\tchunkId,\n\t\t\t\t\tchunk,\n\t\t\t\t\tbytes: entry.value,\n\t\t\t\t\tmaxRecordNs,\n\t\t\t\t};\n\t\t\t}\n\t\t}\n\t}\n\n\tfunction selectLatestCandidate(\n\t\tpending: PendingChunk | null,\n\t\tdisk: PendingChunk | null,\n\t): PendingChunk | null {\n\t\tif (pending && disk) {\n\t\t\treturn compareChunkKey(pending, disk) >= 0 ? pending : disk;\n\t\t}\n\t\treturn pending ?? disk;\n\t}\n\n\tfunction compareChunkKey(\n\t\ta: { bucketStartSec: number; chunkId: number },\n\t\tb: { bucketStartSec: number; chunkId: number },\n\t): number {\n\t\tif (a.bucketStartSec !== b.bucketStartSec) {\n\t\t\treturn a.bucketStartSec - b.bucketStartSec;\n\t\t}\n\t\treturn a.chunkId - b.chunkId;\n\t}\n\n\tfunction decodeChunkKey(key: Uint8Array): {\n\t\tbucketStartSec: number;\n\t\tchunkId: number;\n\t} {\n\t\tconst tuple = unpack(Buffer.from(key)) as [number, number, number];\n\t\treturn { bucketStartSec: tuple[1], chunkId: tuple[2] };\n\t}\n\n\tfunction buildChunkKey(\n\t\tbucketStartSec: number,\n\t\tchunkId: number,\n\t): Uint8Array {\n\t\treturn pack([KEY_PREFIX.DATA, bucketStartSec, chunkId]);\n\t}\n\n\tfunction deserializeChunkSafe(bytes: Uint8Array): Chunk | null {\n\t\ttry {\n\t\t\treturn CHUNK_VERSIONED.deserializeWithEmbeddedVersion(bytes);\n\t\t} catch {\n\t\t\treturn null;\n\t\t}\n\t}\n\n\tasync function loadBaseRecord(ref: ActiveSpanRef): Promise<{\n\t\trecord: TraceRecord;\n\t\tstrings: readonly string[];\n\t\tabsNs: bigint;\n\t} | null> {\n\t\tconst key = ref.latestSnapshotKey ?? ref.startKey;\n\t\tconst bucketStartSec = toNumber(key.bucketStartSec);\n\t\tconst fromMemory = findChunkInMemory(bucketStartSec, key.chunkId);\n\t\tif (fromMemory) {\n\t\t\tconst record = fromMemory.records[key.recordIndex];\n\t\t\tif (!record) {\n\t\t\t\treturn null;\n\t\t\t}\n\t\t\tconst absNs = fromMemory.baseUnixNs + record.timeOffsetNs;\n\t\t\treturn { record, strings: fromMemory.strings, absNs };\n\t\t}\n\t\tconst chunkKey = buildChunkKey(bucketStartSec, key.chunkId);\n\t\tconst bytes = await driver.get(chunkKey);\n\t\tif (!bytes) {\n\t\t\treturn null;\n\t\t}\n\t\tconst chunk = deserializeChunkSafe(bytes);\n\t\tif (!chunk) {\n\t\t\treturn null;\n\t\t}\n\t\tconst record = chunk.records[key.recordIndex];\n\t\tif (!record) {\n\t\t\treturn null;\n\t\t}\n\t\tconst absNs = chunk.baseUnixNs + record.timeOffsetNs;\n\t\treturn { record, strings: chunk.strings, absNs };\n\t}\n\n\tfunction findChunkInMemory(\n\t\tbucketStartSec: number,\n\t\tchunkId: number,\n\t): Chunk | null {\n\t\tif (\n\t\t\tcurrentChunk.bucketStartSec === bucketStartSec &&\n\t\t\tcurrentChunk.chunkId === chunkId\n\t\t) {\n\t\t\treturn currentChunkAsChunk();\n\t\t}\n\t\tconst pending = pendingChunks.find(\n\t\t\t(candidate) =>\n\t\t\t\tcandidate.bucketStartSec === bucketStartSec &&\n\t\t\t\tcandidate.chunkId === chunkId,\n\t\t);\n\t\treturn pending?.chunk ?? null;\n\t}\n\n\tfunction toNumber(value: bigint): number {\n\t\tconst asNumber = Number(value);\n\t\tif (!Number.isSafeInteger(asNumber)) {\n\t\t\tthrow new Error(\"Value exceeds safe integer range\");\n\t\t}\n\t\treturn asNumber;\n\t}\n\n\tfunction computeSpanDepth(parentSpanId: SpanId | null): number {\n\t\tif (!parentSpanId) {\n\t\t\treturn 0;\n\t\t}\n\t\tconst parent = activeSpans.get(spanKey(parentSpanId));\n\t\tif (!parent) {\n\t\t\treturn 0;\n\t\t}\n\t\treturn parent.depth + 1;\n\t}\n\n\tfunction randomSpanId(): SpanId {\n\t\treturn toArrayBuffer(randomBytes(SPAN_ID_BYTES));\n\t}\n\n\tfunction randomTraceId(): TraceId {\n\t\treturn toArrayBuffer(randomBytes(TRACE_ID_BYTES));\n\t}\n\n\tfunction toBareStatus(status: SpanStatusInput): SpanStatus {\n\t\treturn {\n\t\t\tcode: toBareStatusCode(status.code),\n\t\t\tmessage: status.message ?? null,\n\t\t};\n\t}\n\n\tfunction toBareStatusCode(code: SpanStatusInput[\"code\"]): SpanStatusCode {\n\t\tswitch (code) {\n\t\t\tcase \"OK\":\n\t\t\t\treturn SpanStatusCode.OK;\n\t\t\tcase \"ERROR\":\n\t\t\t\treturn SpanStatusCode.ERROR;\n\t\t\tcase \"UNSET\":\n\t\t\tdefault:\n\t\t\t\treturn SpanStatusCode.UNSET;\n\t\t}\n\t}\n\n\treturn {\n\t\tstartSpan,\n\t\tupdateSpan,\n\t\tsetAttributes,\n\t\tsetStatus,\n\t\tendSpan,\n\t\temitEvent,\n\t\twithSpan,\n\t\tgetCurrentSpan,\n\t\tflush,\n\t\tgetLastWriteError,\n\t\treadRange,\n\t\treadRangeWire,\n\t};\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/nathan/r7/rivetkit-typescript/packages/traces/dist/tsup/otlp-entry.cjs"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACF,4TAAC","file":"/home/nathan/r7/rivetkit-typescript/packages/traces/dist/tsup/otlp-entry.cjs"}
1
+ {"version":3,"sources":["/home/runner/work/rivet/rivet/rivetkit-typescript/packages/traces/dist/tsup/otlp-entry.cjs"],"names":[],"mappings":"AAAA;AACE;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACF,4TAAC","file":"/home/runner/work/rivet/rivet/rivetkit-typescript/packages/traces/dist/tsup/otlp-entry.cjs"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@rivetkit/traces",
3
- "version": "0.0.0-pr.4949.4add738",
3
+ "version": "0.0.0-pr.4949.5f0637c",
4
4
  "description": "Generic tracing storage and OTLP export for RivetKit",
5
5
  "license": "Apache-2.0",
6
6
  "type": "module",