@morsehq-dev/sdk 0.5.0-rc.2 → 0.5.0-rc.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (107) hide show
  1. package/dist/anthropic/index.cjs +11 -11
  2. package/dist/anthropic/index.js +4 -4
  3. package/dist/anthropic-agent-sdk/index.cjs +37 -37
  4. package/dist/anthropic-agent-sdk/index.js +6 -6
  5. package/dist/browser/anthropic/index.cjs +11 -11
  6. package/dist/browser/anthropic/index.js +4 -4
  7. package/dist/browser/anthropic-agent-sdk/index.cjs +37 -37
  8. package/dist/browser/anthropic-agent-sdk/index.js +6 -6
  9. package/dist/browser/{chunk-SOJYLXCR.cjs → chunk-KFWCOUL3.cjs} +5 -5
  10. package/dist/browser/{chunk-SOJYLXCR.cjs.map → chunk-KFWCOUL3.cjs.map} +1 -1
  11. package/dist/browser/{chunk-L6FWDEGJ.js → chunk-KGSLJLWW.js} +4 -4
  12. package/dist/browser/{chunk-L6FWDEGJ.js.map → chunk-KGSLJLWW.js.map} +1 -1
  13. package/dist/{chunk-ZWOSPXS4.js → browser/chunk-LGG5PL5U.js} +3 -3
  14. package/dist/browser/{chunk-AM6LMQCT.js.map → chunk-LGG5PL5U.js.map} +1 -1
  15. package/dist/browser/{chunk-NRYB5GJT.js → chunk-MI4OUWUZ.js} +3 -3
  16. package/dist/browser/{chunk-NRYB5GJT.js.map → chunk-MI4OUWUZ.js.map} +1 -1
  17. package/dist/browser/{chunk-FDE32B3R.js → chunk-MOBYR3AP.js} +4 -4
  18. package/dist/browser/{chunk-FDE32B3R.js.map → chunk-MOBYR3AP.js.map} +1 -1
  19. package/dist/browser/{chunk-3MTJGZGX.js → chunk-N4Q2WMOE.js} +5 -5
  20. package/dist/browser/{chunk-3MTJGZGX.js.map → chunk-N4Q2WMOE.js.map} +1 -1
  21. package/dist/browser/{chunk-YMEU6XQQ.cjs → chunk-P7XWSMFX.cjs} +6 -6
  22. package/dist/browser/{chunk-YMEU6XQQ.cjs.map → chunk-P7XWSMFX.cjs.map} +1 -1
  23. package/dist/browser/{chunk-A5EYWAOT.cjs → chunk-PM5D6VXF.cjs} +12 -6
  24. package/dist/browser/chunk-PM5D6VXF.cjs.map +1 -0
  25. package/dist/browser/{chunk-T4NHSVXH.cjs → chunk-QCI2ZDQS.cjs} +12 -12
  26. package/dist/browser/{chunk-T4NHSVXH.cjs.map → chunk-QCI2ZDQS.cjs.map} +1 -1
  27. package/dist/browser/{chunk-YR2FCEWM.cjs → chunk-VSG4EWNL.cjs} +18 -18
  28. package/dist/browser/{chunk-YR2FCEWM.cjs.map → chunk-VSG4EWNL.cjs.map} +1 -1
  29. package/dist/browser/{chunk-NH54DAJP.js → chunk-WUQXNRD3.js} +3 -3
  30. package/dist/browser/{chunk-NH54DAJP.js.map → chunk-WUQXNRD3.js.map} +1 -1
  31. package/dist/{chunk-Z2IYSTRT.cjs → browser/chunk-XLQSSJUZ.cjs} +15 -15
  32. package/dist/browser/{chunk-63ZI6PGP.cjs.map → chunk-XLQSSJUZ.cjs.map} +1 -1
  33. package/dist/browser/{chunk-OOGAYEJF.js → chunk-Y3BOPSM3.js} +12 -7
  34. package/dist/browser/chunk-Y3BOPSM3.js.map +1 -0
  35. package/dist/{chunk-Y2QHMV6H.cjs → browser/chunk-YSJVJ3Z3.cjs} +7 -7
  36. package/dist/browser/{chunk-N3PXJCOE.cjs.map → chunk-YSJVJ3Z3.cjs.map} +1 -1
  37. package/dist/browser/index.cjs +90 -89
  38. package/dist/browser/index.cjs.map +1 -1
  39. package/dist/browser/index.js +9 -8
  40. package/dist/browser/index.js.map +1 -1
  41. package/dist/browser/integrations/pino.cjs +4 -4
  42. package/dist/browser/integrations/pino.js +3 -3
  43. package/dist/browser/langchain/index.cjs +17 -17
  44. package/dist/browser/langchain/index.js +2 -2
  45. package/dist/browser/langgraph/index.cjs +27 -27
  46. package/dist/browser/langgraph/index.js +5 -5
  47. package/dist/browser/openai/index.cjs +11 -11
  48. package/dist/browser/openai/index.js +2 -2
  49. package/dist/browser/openai-agents/index.cjs +38 -36
  50. package/dist/browser/openai-agents/index.cjs.map +1 -1
  51. package/dist/browser/openai-agents/index.js +8 -6
  52. package/dist/browser/openai-agents/index.js.map +1 -1
  53. package/dist/browser/vercel-ai/index.cjs +14 -14
  54. package/dist/browser/vercel-ai/index.js +3 -3
  55. package/dist/{browser/chunk-N3PXJCOE.cjs → chunk-3XQOZXJM.cjs} +7 -7
  56. package/dist/{chunk-Y2QHMV6H.cjs.map → chunk-3XQOZXJM.cjs.map} +1 -1
  57. package/dist/{chunk-FCAPLB7A.js → chunk-7PGR4NJG.js} +4 -4
  58. package/dist/{chunk-FCAPLB7A.js.map → chunk-7PGR4NJG.js.map} +1 -1
  59. package/dist/{browser/chunk-63ZI6PGP.cjs → chunk-DPGUBZVO.cjs} +15 -15
  60. package/dist/{chunk-Z2IYSTRT.cjs.map → chunk-DPGUBZVO.cjs.map} +1 -1
  61. package/dist/{chunk-XCOZIFHC.cjs → chunk-E3G3IE6Y.cjs} +12 -6
  62. package/dist/chunk-E3G3IE6Y.cjs.map +1 -0
  63. package/dist/{chunk-SHK2XEPB.js → chunk-HCEKAVDR.js} +4 -4
  64. package/dist/{chunk-SHK2XEPB.js.map → chunk-HCEKAVDR.js.map} +1 -1
  65. package/dist/{chunk-VHF4GWJ4.cjs → chunk-NGBJJGOC.cjs} +5 -5
  66. package/dist/{chunk-VHF4GWJ4.cjs.map → chunk-NGBJJGOC.cjs.map} +1 -1
  67. package/dist/{chunk-ZIER4DGK.cjs → chunk-RK3JPX27.cjs} +12 -12
  68. package/dist/{chunk-ZIER4DGK.cjs.map → chunk-RK3JPX27.cjs.map} +1 -1
  69. package/dist/{chunk-XJUH6PR5.js → chunk-T2NESDMT.js} +3 -3
  70. package/dist/{chunk-XJUH6PR5.js.map → chunk-T2NESDMT.js.map} +1 -1
  71. package/dist/{chunk-6DZNK4VX.cjs → chunk-TGHDV5MC.cjs} +6 -6
  72. package/dist/{chunk-6DZNK4VX.cjs.map → chunk-TGHDV5MC.cjs.map} +1 -1
  73. package/dist/{chunk-S4WUABAU.js → chunk-UAJO6JM7.js} +3 -3
  74. package/dist/{chunk-S4WUABAU.js.map → chunk-UAJO6JM7.js.map} +1 -1
  75. package/dist/{chunk-YJYF4NSA.js → chunk-XHOLQGN6.js} +5 -5
  76. package/dist/{chunk-YJYF4NSA.js.map → chunk-XHOLQGN6.js.map} +1 -1
  77. package/dist/{chunk-3IGQWLWE.js → chunk-XZRJXJFA.js} +12 -7
  78. package/dist/chunk-XZRJXJFA.js.map +1 -0
  79. package/dist/{chunk-SNGYSP7Z.cjs → chunk-YQ6ZA7OE.cjs} +18 -18
  80. package/dist/{chunk-SNGYSP7Z.cjs.map → chunk-YQ6ZA7OE.cjs.map} +1 -1
  81. package/dist/{browser/chunk-AM6LMQCT.js → chunk-ZFE75G7S.js} +3 -3
  82. package/dist/{chunk-ZWOSPXS4.js.map → chunk-ZFE75G7S.js.map} +1 -1
  83. package/dist/index.cjs +97 -96
  84. package/dist/index.cjs.map +1 -1
  85. package/dist/index.js +10 -9
  86. package/dist/index.js.map +1 -1
  87. package/dist/integrations/pino.cjs +4 -4
  88. package/dist/integrations/pino.js +3 -3
  89. package/dist/langchain/index.cjs +17 -17
  90. package/dist/langchain/index.js +2 -2
  91. package/dist/langgraph/index.cjs +27 -27
  92. package/dist/langgraph/index.js +5 -5
  93. package/dist/openai/index.cjs +11 -11
  94. package/dist/openai/index.js +2 -2
  95. package/dist/openai-agents/index.cjs +38 -36
  96. package/dist/openai-agents/index.cjs.map +1 -1
  97. package/dist/openai-agents/index.d.cts +4 -0
  98. package/dist/openai-agents/index.d.ts +4 -0
  99. package/dist/openai-agents/index.js +8 -6
  100. package/dist/openai-agents/index.js.map +1 -1
  101. package/dist/vercel-ai/index.cjs +14 -14
  102. package/dist/vercel-ai/index.js +3 -3
  103. package/package.json +1 -1
  104. package/dist/browser/chunk-A5EYWAOT.cjs.map +0 -1
  105. package/dist/browser/chunk-OOGAYEJF.js.map +0 -1
  106. package/dist/chunk-3IGQWLWE.js.map +0 -1
  107. package/dist/chunk-XCOZIFHC.cjs.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"sources":["../../src/_agent-sdk-common/redaction.ts"],"names":["absorbErrorsSync"],"mappings":"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","file":"chunk-N3PXJCOE.cjs","sourcesContent":["/**\n * Agent-SDK-specific redaction layered on top of `_internal/redaction.ts`.\n *\n * Phase 13 W1.2. The three TS agent-SDK adapters (Anthropic Agent SDK,\n * OpenAI Agents SDK, LangGraph JS) all summarize tool inputs/outputs and\n * content blocks before stamping them onto span attributes. This module\n * provides the shared helpers they call.\n *\n * Rules (see openspec/changes/2026-05-26-phase-13-ts-agent-sdk-adapters/\n * design.md §\"redaction.ts\"):\n * - Tool inputs truncated to 2 KB by default; tool outputs to 4 KB.\n * - Base64 / data: URL blobs >= 4 KB are replaced with a hashed marker\n * `<blob:sha256:HEX:LEN>` rather than stored inline.\n * - Binary content blocks (image / audio / video / screenshot) are\n * replaced by `{kind, hash, byte_len, dims?, mime?}` summaries.\n *\n * All public helpers are wrapped in `absorbErrorsSync` so they cannot\n * throw at the caller — telemetry must never break the host application.\n * On absorbed error: strings degrade to `\"<redaction_error>\"`,\n * `summarizeBinaryBlock` returns `null`, `redactContentBlocks` returns\n * its input unchanged.\n *\n * NB: The sha256 + canonical-JSON helpers below are duplicated from\n * `src/anthropic/index.ts` rather than imported. This is deliberate — the\n * Phase 13 W1 tasks are file-disjoint and cannot reach across into\n * `anthropic/`. The duplication is small and the algorithms are stable.\n */\n\nimport { absorbErrorsSync } from \"../_internal/errors\";\n\n/* ------------------------------------------------------------------------ */\n/* Public constants */\n/* ------------------------------------------------------------------------ */\n\nexport const DEFAULT_TOOL_ARG_MAX_BYTES = 2048;\nexport const DEFAULT_TOOL_OUTPUT_MAX_BYTES = 4096;\nexport const DEFAULT_BLOB_TRIGGER_BYTES = 4096;\n\n/* ------------------------------------------------------------------------ */\n/* Public types */\n/* ------------------------------------------------------------------------ */\n\nexport interface SummarizeOptions {\n /** Maximum byte length of the returned string. */\n maxBytes?: number;\n /**\n * If true (default), data: URLs and >= DEFAULT_BLOB_TRIGGER_BYTES base64\n * runs are replaced with `<blob:sha256:HEX:LEN>` markers before\n * truncation. Set false to keep blobs inline (still subject to\n * truncation).\n */\n stripBlobs?: boolean;\n}\n\nexport interface BinaryBlockSummary {\n kind: \"image\" | \"audio\" | \"video\" | \"screenshot\" | \"binary\";\n /** sha256 hex of the decoded (or, if not base64, raw) bytes. */\n hash: string;\n byte_len: number;\n dims?: { width: number; height: number };\n mime?: string;\n}\n\n/* ------------------------------------------------------------------------ */\n/* summarizeToolInput / summarizeToolOutput */\n/* ------------------------------------------------------------------------ */\n\nconst REDACTION_ERROR_FALLBACK = \"<redaction_error>\";\n\nfunction summarizeImpl(value: unknown, opts: SummarizeOptions, defaultMax: number): string {\n const maxBytes = opts.maxBytes ?? defaultMax;\n const stripBlobs = opts.stripBlobs !== false;\n\n // Stringify with stable key order.\n let str: string;\n if (typeof value === \"string\") {\n str = value;\n } else if (value === undefined) {\n str = \"undefined\";\n } else {\n str = canonicalJsonStringify(value);\n }\n\n if (stripBlobs) {\n str = stripBlobsFromString(str);\n }\n\n return truncateUtf8(str, maxBytes);\n}\n\nconst summarizeToolInputInner = (value: unknown, opts?: SummarizeOptions): string =>\n summarizeImpl(value, opts ?? {}, DEFAULT_TOOL_ARG_MAX_BYTES);\n\nconst summarizeToolOutputInner = (value: unknown, opts?: SummarizeOptions): string =>\n summarizeImpl(value, opts ?? {}, DEFAULT_TOOL_OUTPUT_MAX_BYTES);\n\nconst safeSummarizeToolInput = absorbErrorsSync(summarizeToolInputInner, {\n fingerprint: \"agent-sdk.redaction.summarizeToolInput\",\n});\n\nconst safeSummarizeToolOutput = absorbErrorsSync(summarizeToolOutputInner, {\n fingerprint: \"agent-sdk.redaction.summarizeToolOutput\",\n});\n\n/**\n * Reduce an arbitrary tool argument value to a small string suitable for\n * a span attribute. JSON-canonicalized (sorted keys), with optional blob\n * stripping, then truncated to `maxBytes` UTF-8 bytes.\n */\nexport function summarizeToolInput(value: unknown, opts?: SummarizeOptions): string {\n const out = safeSummarizeToolInput(value, opts);\n return out === undefined ? REDACTION_ERROR_FALLBACK : out;\n}\n\n/**\n * Same shape as `summarizeToolInput` but defaults to a larger byte cap\n * (`DEFAULT_TOOL_OUTPUT_MAX_BYTES`) appropriate for tool *results*.\n */\nexport function summarizeToolOutput(value: unknown, opts?: SummarizeOptions): string {\n const out = safeSummarizeToolOutput(value, opts);\n return out === undefined ? REDACTION_ERROR_FALLBACK : out;\n}\n\n/* ------------------------------------------------------------------------ */\n/* summarizeBinaryBlock */\n/* ------------------------------------------------------------------------ */\n\nconst BINARY_KINDS: ReadonlySet<string> = new Set([\"image\", \"audio\", \"video\", \"screenshot\"]);\n\nfunction summarizeBinaryBlockInner(block: unknown): BinaryBlockSummary | null {\n if (block === null || typeof block !== \"object\") return null;\n const b = block as Record<string, unknown>;\n const type = typeof b.type === \"string\" ? b.type : null;\n if (type === null || !BINARY_KINDS.has(type)) return null;\n\n const kind = type as BinaryBlockSummary[\"kind\"];\n\n // Try to extract base64 payload + mime from a variety of shapes.\n let base64: string | null = null;\n let mime: string | undefined;\n\n // Shape 1: { source: { type: \"base64\", data: \"...\", media_type: \"image/png\" } }\n const source = b.source;\n if (source !== null && typeof source === \"object\") {\n const s = source as Record<string, unknown>;\n if (typeof s.data === \"string\") base64 = s.data;\n if (typeof s.media_type === \"string\") mime = s.media_type;\n else if (typeof s.mediaType === \"string\") mime = s.mediaType;\n }\n\n // Shape 2: { url: \"data:image/jpg;base64,...\" } or { dataUrl: \"...\" }\n if (base64 === null) {\n const url =\n typeof b.url === \"string\" ? b.url : typeof b.dataUrl === \"string\" ? b.dataUrl : null;\n if (url !== null && url.startsWith(\"data:\")) {\n const parsed = parseDataUrl(url);\n if (parsed !== null) {\n base64 = parsed.base64;\n if (mime === undefined) mime = parsed.mime;\n }\n }\n }\n\n // Shape 3: raw { data: \"...\" } at the top level.\n if (base64 === null && typeof b.data === \"string\") {\n base64 = b.data;\n }\n\n // Dimensions (optional).\n let dims: { width: number; height: number } | undefined;\n const w = b.width;\n const h = b.height;\n if (typeof w === \"number\" && typeof h === \"number\") {\n dims = { width: w, height: h };\n }\n\n // Hash + length. If we have base64, decode it; otherwise hash whatever\n // string we found as bytes. If we have neither, return a zero-length\n // summary — we still know the block was a binary type.\n let hash: string;\n let byte_len: number;\n if (base64 !== null) {\n const bytes = decodeBase64ToBytes(base64);\n hash = sha256HexBytes(bytes);\n byte_len = bytes.length;\n } else {\n hash = sha256Hex(\"\");\n byte_len = 0;\n }\n\n const out: BinaryBlockSummary = { kind, hash, byte_len };\n if (dims !== undefined) out.dims = dims;\n if (mime !== undefined) out.mime = mime;\n return out;\n}\n\nconst safeSummarizeBinaryBlock = absorbErrorsSync(summarizeBinaryBlockInner, {\n fingerprint: \"agent-sdk.redaction.summarizeBinaryBlock\",\n});\n\n/**\n * Recognize a content block of type image/audio/video/screenshot and\n * return a hashed summary instead of the raw bytes. Returns null if the\n * block isn't a recognizable binary block (or on internal error).\n */\nexport function summarizeBinaryBlock(block: unknown): BinaryBlockSummary | null {\n const out = safeSummarizeBinaryBlock(block);\n return out === undefined ? null : out;\n}\n\n/* ------------------------------------------------------------------------ */\n/* redactContentBlocks */\n/* ------------------------------------------------------------------------ */\n\nfunction redactContentBlocksInner(blocks: unknown[]): unknown[] {\n return blocks.map((block) => {\n const summary = summarizeBinaryBlockInner(block);\n return summary === null ? block : summary;\n });\n}\n\nconst safeRedactContentBlocks = absorbErrorsSync(redactContentBlocksInner, {\n fingerprint: \"agent-sdk.redaction.redactContentBlocks\",\n});\n\n/**\n * Walk a content-blocks array and replace any binary blocks with their\n * `BinaryBlockSummary`. Non-binary blocks pass through unchanged.\n */\nexport function redactContentBlocks(blocks: unknown[]): unknown[] {\n const out = safeRedactContentBlocks(blocks);\n return out === undefined ? blocks : out;\n}\n\n/* ------------------------------------------------------------------------ */\n/* Blob stripping */\n/* ------------------------------------------------------------------------ */\n\n/** Match `data:<mime>;base64,<payload>` URLs of any length. */\nconst DATA_URL_RE = /data:[A-Za-z0-9.+/-]*(?:;[A-Za-z0-9.=+/-]+)*?;base64,[A-Za-z0-9+/=]+/g;\n\n/**\n * Match a long, unbroken run of base64 characters (no whitespace) that\n * could plausibly be a blob. The threshold here is deliberately small —\n * the byte-length check after the match decides whether it really gets\n * replaced.\n */\nconst LONG_BASE64_RE = /[A-Za-z0-9+/]{100,}={0,2}/g;\n\nfunction stripBlobsFromString(s: string): string {\n // Pass 1: data: URLs (any length >= trigger).\n let out = s.replace(DATA_URL_RE, (match) => {\n if (match.length < DEFAULT_BLOB_TRIGGER_BYTES) return match;\n const parsed = parseDataUrl(match);\n if (parsed === null) {\n return blobMarker(sha256Hex(match), match.length);\n }\n const bytes = decodeBase64ToBytes(parsed.base64);\n return blobMarker(sha256HexBytes(bytes), bytes.length);\n });\n\n // Pass 2: long base64 runs not embedded in a data: URL.\n out = out.replace(LONG_BASE64_RE, (match) => {\n if (match.length < DEFAULT_BLOB_TRIGGER_BYTES) return match;\n const bytes = decodeBase64ToBytes(match);\n return blobMarker(sha256HexBytes(bytes), bytes.length);\n });\n\n return out;\n}\n\nfunction blobMarker(hashHex: string, byteLen: number): string {\n return `<blob:sha256:${hashHex}:${byteLen}>`;\n}\n\nfunction parseDataUrl(url: string): { mime: string; base64: string } | null {\n // data:<mime>[;params];base64,<payload>\n if (!url.startsWith(\"data:\")) return null;\n const comma = url.indexOf(\",\");\n if (comma < 0) return null;\n const header = url.slice(5, comma);\n const payload = url.slice(comma + 1);\n if (!header.includes(\"base64\")) return null;\n // Strip any `;base64` and any other params.\n const parts = header.split(\";\");\n const mime = parts[0] !== undefined && parts[0] !== \"\" ? parts[0] : \"application/octet-stream\";\n return { mime, base64: payload };\n}\n\n/* ------------------------------------------------------------------------ */\n/* Base64 decode */\n/* ------------------------------------------------------------------------ */\n\nfunction decodeBase64ToBytes(b64: string): Uint8Array {\n // Strip whitespace.\n const cleaned = b64.replace(/\\s+/g, \"\");\n\n // Prefer Node's Buffer.\n try {\n if (typeof process !== \"undefined\" && process.versions?.node) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const dynamicRequire = Function(\"m\", \"return require(m)\") as any as (m: string) => unknown;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const bufferMod = dynamicRequire(\"node:buffer\") as any;\n if (bufferMod?.Buffer) {\n const buf = bufferMod.Buffer.from(cleaned, \"base64\") as Uint8Array;\n return new Uint8Array(buf);\n }\n }\n } catch {\n // fall through\n }\n\n // Browser: atob.\n try {\n if (typeof atob === \"function\") {\n const bin = atob(cleaned);\n const out = new Uint8Array(bin.length);\n for (let i = 0; i < bin.length; i++) out[i] = bin.charCodeAt(i);\n return out;\n }\n } catch {\n // fall through\n }\n\n // Last-resort pure-JS decoder.\n return pureBase64Decode(cleaned);\n}\n\nconst B64_ALPHABET = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\nconst B64_LOOKUP: Record<string, number> = (() => {\n const m: Record<string, number> = {};\n for (let i = 0; i < B64_ALPHABET.length; i++) m[B64_ALPHABET[i]!] = i;\n return m;\n})();\n\nfunction pureBase64Decode(s: string): Uint8Array {\n const stripped = s.replace(/=+$/, \"\");\n const out: number[] = [];\n let buffer = 0;\n let bits = 0;\n for (let i = 0; i < stripped.length; i++) {\n const ch = stripped[i]!;\n const v = B64_LOOKUP[ch];\n if (v === undefined) continue; // skip invalid\n buffer = (buffer << 6) | v;\n bits += 6;\n if (bits >= 8) {\n bits -= 8;\n out.push((buffer >> bits) & 0xff);\n }\n }\n return new Uint8Array(out);\n}\n\n/* ------------------------------------------------------------------------ */\n/* Canonical JSON stringify (duplicated from anthropic/index.ts) */\n/* ------------------------------------------------------------------------ */\n\nfunction canonicalJsonStringify(value: unknown): string {\n return JSON.stringify(value, function replacer(_key, val) {\n if (val && typeof val === \"object\" && !Array.isArray(val)) {\n const obj = val as Record<string, unknown>;\n const sorted: Record<string, unknown> = {};\n for (const k of Object.keys(obj).sort()) {\n sorted[k] = obj[k];\n }\n return sorted;\n }\n return val;\n });\n}\n\n/* ------------------------------------------------------------------------ */\n/* UTF-8 byte truncation */\n/* ------------------------------------------------------------------------ */\n\nfunction truncateUtf8(text: string, maxBytes: number): string {\n if (maxBytes <= 0) return \"\";\n // Fast path: cheap upper bound.\n if (text.length <= maxBytes / 4) return text;\n const bytes = utf8Encode(text);\n if (bytes.length <= maxBytes) return text;\n let cut = maxBytes;\n while (cut > 0 && (bytes[cut]! & 0xc0) === 0x80) {\n cut--;\n }\n return utf8Decode(bytes.subarray(0, cut));\n}\n\nfunction utf8Encode(text: string): Uint8Array {\n if (typeof TextEncoder !== \"undefined\") {\n return new TextEncoder().encode(text);\n }\n const out: number[] = [];\n for (let i = 0; i < text.length; i++) {\n const code = text.charCodeAt(i);\n if (code < 0x80) {\n out.push(code);\n } else if (code < 0x800) {\n out.push(0xc0 | (code >> 6), 0x80 | (code & 0x3f));\n } else {\n out.push(0xe0 | (code >> 12), 0x80 | ((code >> 6) & 0x3f), 0x80 | (code & 0x3f));\n }\n }\n return new Uint8Array(out);\n}\n\nfunction utf8Decode(bytes: Uint8Array): string {\n if (typeof TextDecoder !== \"undefined\") {\n return new TextDecoder(\"utf-8\").decode(bytes);\n }\n let out = \"\";\n for (let i = 0; i < bytes.length; ) {\n const b = bytes[i]!;\n if (b < 0x80) {\n out += String.fromCharCode(b);\n i++;\n } else if (b < 0xe0) {\n out += String.fromCharCode(((b & 0x1f) << 6) | (bytes[i + 1]! & 0x3f));\n i += 2;\n } else {\n out += String.fromCharCode(\n ((b & 0x0f) << 12) | ((bytes[i + 1]! & 0x3f) << 6) | (bytes[i + 2]! & 0x3f),\n );\n i += 3;\n }\n }\n return out;\n}\n\n/* ------------------------------------------------------------------------ */\n/* SHA-256 (duplicated from anthropic/index.ts) */\n/* ------------------------------------------------------------------------ */\n\nfunction sha256Hex(text: string): string {\n try {\n if (typeof process !== \"undefined\" && process.versions?.node) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const dynamicRequire = Function(\"m\", \"return require(m)\") as any as (m: string) => unknown;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const cryptoMod = dynamicRequire(\"node:crypto\") as any;\n if (cryptoMod?.createHash) {\n return cryptoMod.createHash(\"sha256\").update(text).digest(\"hex\");\n }\n }\n } catch {\n // fall through\n }\n return purejsSha256Bytes(utf8Encode(text));\n}\n\nfunction sha256HexBytes(bytes: Uint8Array): string {\n try {\n if (typeof process !== \"undefined\" && process.versions?.node) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const dynamicRequire = Function(\"m\", \"return require(m)\") as any as (m: string) => unknown;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const cryptoMod = dynamicRequire(\"node:crypto\") as any;\n if (cryptoMod?.createHash) {\n return cryptoMod.createHash(\"sha256\").update(bytes).digest(\"hex\");\n }\n }\n } catch {\n // fall through\n }\n return purejsSha256Bytes(bytes);\n}\n\nfunction purejsSha256Bytes(msg: Uint8Array): string {\n const K = [\n 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,\n 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,\n 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,\n 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,\n 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,\n 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,\n 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,\n 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2,\n ];\n const H = [\n 0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19,\n ];\n\n const msgLen = msg.length;\n const bitLen = msgLen * 8;\n const padded = new Uint8Array(((msgLen + 9 + 63) >> 6) << 6);\n padded.set(msg);\n padded[msgLen] = 0x80;\n // 64-bit BE length. JS bitwise ops are 32-bit, so split lo/hi via /.\n const lo = (bitLen & 0xffffffff) >>> 0;\n const hi = Math.floor(bitLen / 0x100000000) >>> 0;\n padded[padded.length - 8] = (hi >>> 24) & 0xff;\n padded[padded.length - 7] = (hi >>> 16) & 0xff;\n padded[padded.length - 6] = (hi >>> 8) & 0xff;\n padded[padded.length - 5] = hi & 0xff;\n padded[padded.length - 4] = (lo >>> 24) & 0xff;\n padded[padded.length - 3] = (lo >>> 16) & 0xff;\n padded[padded.length - 2] = (lo >>> 8) & 0xff;\n padded[padded.length - 1] = lo & 0xff;\n\n const W = new Uint32Array(64);\n for (let chunk = 0; chunk < padded.length; chunk += 64) {\n for (let i = 0; i < 16; i++) {\n // `>>> 0` forces unsigned — `(byte << 24)` otherwise produces a\n // signed int when the high bit is set, which corrupts the schedule.\n W[i] =\n ((padded[chunk + i * 4]! << 24) |\n (padded[chunk + i * 4 + 1]! << 16) |\n (padded[chunk + i * 4 + 2]! << 8) |\n padded[chunk + i * 4 + 3]!) >>>\n 0;\n }\n for (let i = 16; i < 64; i++) {\n const s0 = rotr(W[i - 15]!, 7) ^ rotr(W[i - 15]!, 18) ^ (W[i - 15]! >>> 3);\n const s1 = rotr(W[i - 2]!, 17) ^ rotr(W[i - 2]!, 19) ^ (W[i - 2]! >>> 10);\n W[i] = (W[i - 16]! + s0 + W[i - 7]! + s1) >>> 0;\n }\n\n let [a, b, c, d, e, f, g, h] = H;\n\n for (let i = 0; i < 64; i++) {\n const S1 = rotr(e!, 6) ^ rotr(e!, 11) ^ rotr(e!, 25);\n const ch = (e! & f!) ^ (~e! & g!);\n const temp1 = (h! + S1 + ch + K[i]! + W[i]!) >>> 0;\n const S0 = rotr(a!, 2) ^ rotr(a!, 13) ^ rotr(a!, 22);\n const maj = (a! & b!) ^ (a! & c!) ^ (b! & c!);\n const temp2 = (S0 + maj) >>> 0;\n h = g;\n g = f;\n f = e;\n e = (d! + temp1) >>> 0;\n d = c;\n c = b;\n b = a;\n a = (temp1 + temp2) >>> 0;\n }\n\n H[0] = (H[0]! + a!) >>> 0;\n H[1] = (H[1]! + b!) >>> 0;\n H[2] = (H[2]! + c!) >>> 0;\n H[3] = (H[3]! + d!) >>> 0;\n H[4] = (H[4]! + e!) >>> 0;\n H[5] = (H[5]! + f!) >>> 0;\n H[6] = (H[6]! + g!) >>> 0;\n H[7] = (H[7]! + h!) >>> 0;\n }\n\n let hex = \"\";\n for (const v of H) {\n hex += v.toString(16).padStart(8, \"0\");\n }\n return hex;\n}\n\nfunction rotr(x: number, n: number): number {\n return ((x >>> n) | (x << (32 - n))) >>> 0;\n}\n"]}
1
+ {"version":3,"sources":["../../src/_agent-sdk-common/redaction.ts"],"names":["absorbErrorsSync"],"mappings":"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","file":"chunk-YSJVJ3Z3.cjs","sourcesContent":["/**\n * Agent-SDK-specific redaction layered on top of `_internal/redaction.ts`.\n *\n * Phase 13 W1.2. The three TS agent-SDK adapters (Anthropic Agent SDK,\n * OpenAI Agents SDK, LangGraph JS) all summarize tool inputs/outputs and\n * content blocks before stamping them onto span attributes. This module\n * provides the shared helpers they call.\n *\n * Rules (see openspec/changes/2026-05-26-phase-13-ts-agent-sdk-adapters/\n * design.md §\"redaction.ts\"):\n * - Tool inputs truncated to 2 KB by default; tool outputs to 4 KB.\n * - Base64 / data: URL blobs >= 4 KB are replaced with a hashed marker\n * `<blob:sha256:HEX:LEN>` rather than stored inline.\n * - Binary content blocks (image / audio / video / screenshot) are\n * replaced by `{kind, hash, byte_len, dims?, mime?}` summaries.\n *\n * All public helpers are wrapped in `absorbErrorsSync` so they cannot\n * throw at the caller — telemetry must never break the host application.\n * On absorbed error: strings degrade to `\"<redaction_error>\"`,\n * `summarizeBinaryBlock` returns `null`, `redactContentBlocks` returns\n * its input unchanged.\n *\n * NB: The sha256 + canonical-JSON helpers below are duplicated from\n * `src/anthropic/index.ts` rather than imported. This is deliberate — the\n * Phase 13 W1 tasks are file-disjoint and cannot reach across into\n * `anthropic/`. The duplication is small and the algorithms are stable.\n */\n\nimport { absorbErrorsSync } from \"../_internal/errors\";\n\n/* ------------------------------------------------------------------------ */\n/* Public constants */\n/* ------------------------------------------------------------------------ */\n\nexport const DEFAULT_TOOL_ARG_MAX_BYTES = 2048;\nexport const DEFAULT_TOOL_OUTPUT_MAX_BYTES = 4096;\nexport const DEFAULT_BLOB_TRIGGER_BYTES = 4096;\n\n/* ------------------------------------------------------------------------ */\n/* Public types */\n/* ------------------------------------------------------------------------ */\n\nexport interface SummarizeOptions {\n /** Maximum byte length of the returned string. */\n maxBytes?: number;\n /**\n * If true (default), data: URLs and >= DEFAULT_BLOB_TRIGGER_BYTES base64\n * runs are replaced with `<blob:sha256:HEX:LEN>` markers before\n * truncation. Set false to keep blobs inline (still subject to\n * truncation).\n */\n stripBlobs?: boolean;\n}\n\nexport interface BinaryBlockSummary {\n kind: \"image\" | \"audio\" | \"video\" | \"screenshot\" | \"binary\";\n /** sha256 hex of the decoded (or, if not base64, raw) bytes. */\n hash: string;\n byte_len: number;\n dims?: { width: number; height: number };\n mime?: string;\n}\n\n/* ------------------------------------------------------------------------ */\n/* summarizeToolInput / summarizeToolOutput */\n/* ------------------------------------------------------------------------ */\n\nconst REDACTION_ERROR_FALLBACK = \"<redaction_error>\";\n\nfunction summarizeImpl(value: unknown, opts: SummarizeOptions, defaultMax: number): string {\n const maxBytes = opts.maxBytes ?? defaultMax;\n const stripBlobs = opts.stripBlobs !== false;\n\n // Stringify with stable key order.\n let str: string;\n if (typeof value === \"string\") {\n str = value;\n } else if (value === undefined) {\n str = \"undefined\";\n } else {\n str = canonicalJsonStringify(value);\n }\n\n if (stripBlobs) {\n str = stripBlobsFromString(str);\n }\n\n return truncateUtf8(str, maxBytes);\n}\n\nconst summarizeToolInputInner = (value: unknown, opts?: SummarizeOptions): string =>\n summarizeImpl(value, opts ?? {}, DEFAULT_TOOL_ARG_MAX_BYTES);\n\nconst summarizeToolOutputInner = (value: unknown, opts?: SummarizeOptions): string =>\n summarizeImpl(value, opts ?? {}, DEFAULT_TOOL_OUTPUT_MAX_BYTES);\n\nconst safeSummarizeToolInput = absorbErrorsSync(summarizeToolInputInner, {\n fingerprint: \"agent-sdk.redaction.summarizeToolInput\",\n});\n\nconst safeSummarizeToolOutput = absorbErrorsSync(summarizeToolOutputInner, {\n fingerprint: \"agent-sdk.redaction.summarizeToolOutput\",\n});\n\n/**\n * Reduce an arbitrary tool argument value to a small string suitable for\n * a span attribute. JSON-canonicalized (sorted keys), with optional blob\n * stripping, then truncated to `maxBytes` UTF-8 bytes.\n */\nexport function summarizeToolInput(value: unknown, opts?: SummarizeOptions): string {\n const out = safeSummarizeToolInput(value, opts);\n return out === undefined ? REDACTION_ERROR_FALLBACK : out;\n}\n\n/**\n * Same shape as `summarizeToolInput` but defaults to a larger byte cap\n * (`DEFAULT_TOOL_OUTPUT_MAX_BYTES`) appropriate for tool *results*.\n */\nexport function summarizeToolOutput(value: unknown, opts?: SummarizeOptions): string {\n const out = safeSummarizeToolOutput(value, opts);\n return out === undefined ? REDACTION_ERROR_FALLBACK : out;\n}\n\n/* ------------------------------------------------------------------------ */\n/* summarizeBinaryBlock */\n/* ------------------------------------------------------------------------ */\n\nconst BINARY_KINDS: ReadonlySet<string> = new Set([\"image\", \"audio\", \"video\", \"screenshot\"]);\n\nfunction summarizeBinaryBlockInner(block: unknown): BinaryBlockSummary | null {\n if (block === null || typeof block !== \"object\") return null;\n const b = block as Record<string, unknown>;\n const type = typeof b.type === \"string\" ? b.type : null;\n if (type === null || !BINARY_KINDS.has(type)) return null;\n\n const kind = type as BinaryBlockSummary[\"kind\"];\n\n // Try to extract base64 payload + mime from a variety of shapes.\n let base64: string | null = null;\n let mime: string | undefined;\n\n // Shape 1: { source: { type: \"base64\", data: \"...\", media_type: \"image/png\" } }\n const source = b.source;\n if (source !== null && typeof source === \"object\") {\n const s = source as Record<string, unknown>;\n if (typeof s.data === \"string\") base64 = s.data;\n if (typeof s.media_type === \"string\") mime = s.media_type;\n else if (typeof s.mediaType === \"string\") mime = s.mediaType;\n }\n\n // Shape 2: { url: \"data:image/jpg;base64,...\" } or { dataUrl: \"...\" }\n if (base64 === null) {\n const url =\n typeof b.url === \"string\" ? b.url : typeof b.dataUrl === \"string\" ? b.dataUrl : null;\n if (url !== null && url.startsWith(\"data:\")) {\n const parsed = parseDataUrl(url);\n if (parsed !== null) {\n base64 = parsed.base64;\n if (mime === undefined) mime = parsed.mime;\n }\n }\n }\n\n // Shape 3: raw { data: \"...\" } at the top level.\n if (base64 === null && typeof b.data === \"string\") {\n base64 = b.data;\n }\n\n // Dimensions (optional).\n let dims: { width: number; height: number } | undefined;\n const w = b.width;\n const h = b.height;\n if (typeof w === \"number\" && typeof h === \"number\") {\n dims = { width: w, height: h };\n }\n\n // Hash + length. If we have base64, decode it; otherwise hash whatever\n // string we found as bytes. If we have neither, return a zero-length\n // summary — we still know the block was a binary type.\n let hash: string;\n let byte_len: number;\n if (base64 !== null) {\n const bytes = decodeBase64ToBytes(base64);\n hash = sha256HexBytes(bytes);\n byte_len = bytes.length;\n } else {\n hash = sha256Hex(\"\");\n byte_len = 0;\n }\n\n const out: BinaryBlockSummary = { kind, hash, byte_len };\n if (dims !== undefined) out.dims = dims;\n if (mime !== undefined) out.mime = mime;\n return out;\n}\n\nconst safeSummarizeBinaryBlock = absorbErrorsSync(summarizeBinaryBlockInner, {\n fingerprint: \"agent-sdk.redaction.summarizeBinaryBlock\",\n});\n\n/**\n * Recognize a content block of type image/audio/video/screenshot and\n * return a hashed summary instead of the raw bytes. Returns null if the\n * block isn't a recognizable binary block (or on internal error).\n */\nexport function summarizeBinaryBlock(block: unknown): BinaryBlockSummary | null {\n const out = safeSummarizeBinaryBlock(block);\n return out === undefined ? null : out;\n}\n\n/* ------------------------------------------------------------------------ */\n/* redactContentBlocks */\n/* ------------------------------------------------------------------------ */\n\nfunction redactContentBlocksInner(blocks: unknown[]): unknown[] {\n return blocks.map((block) => {\n const summary = summarizeBinaryBlockInner(block);\n return summary === null ? block : summary;\n });\n}\n\nconst safeRedactContentBlocks = absorbErrorsSync(redactContentBlocksInner, {\n fingerprint: \"agent-sdk.redaction.redactContentBlocks\",\n});\n\n/**\n * Walk a content-blocks array and replace any binary blocks with their\n * `BinaryBlockSummary`. Non-binary blocks pass through unchanged.\n */\nexport function redactContentBlocks(blocks: unknown[]): unknown[] {\n const out = safeRedactContentBlocks(blocks);\n return out === undefined ? blocks : out;\n}\n\n/* ------------------------------------------------------------------------ */\n/* Blob stripping */\n/* ------------------------------------------------------------------------ */\n\n/** Match `data:<mime>;base64,<payload>` URLs of any length. */\nconst DATA_URL_RE = /data:[A-Za-z0-9.+/-]*(?:;[A-Za-z0-9.=+/-]+)*?;base64,[A-Za-z0-9+/=]+/g;\n\n/**\n * Match a long, unbroken run of base64 characters (no whitespace) that\n * could plausibly be a blob. The threshold here is deliberately small —\n * the byte-length check after the match decides whether it really gets\n * replaced.\n */\nconst LONG_BASE64_RE = /[A-Za-z0-9+/]{100,}={0,2}/g;\n\nfunction stripBlobsFromString(s: string): string {\n // Pass 1: data: URLs (any length >= trigger).\n let out = s.replace(DATA_URL_RE, (match) => {\n if (match.length < DEFAULT_BLOB_TRIGGER_BYTES) return match;\n const parsed = parseDataUrl(match);\n if (parsed === null) {\n return blobMarker(sha256Hex(match), match.length);\n }\n const bytes = decodeBase64ToBytes(parsed.base64);\n return blobMarker(sha256HexBytes(bytes), bytes.length);\n });\n\n // Pass 2: long base64 runs not embedded in a data: URL.\n out = out.replace(LONG_BASE64_RE, (match) => {\n if (match.length < DEFAULT_BLOB_TRIGGER_BYTES) return match;\n const bytes = decodeBase64ToBytes(match);\n return blobMarker(sha256HexBytes(bytes), bytes.length);\n });\n\n return out;\n}\n\nfunction blobMarker(hashHex: string, byteLen: number): string {\n return `<blob:sha256:${hashHex}:${byteLen}>`;\n}\n\nfunction parseDataUrl(url: string): { mime: string; base64: string } | null {\n // data:<mime>[;params];base64,<payload>\n if (!url.startsWith(\"data:\")) return null;\n const comma = url.indexOf(\",\");\n if (comma < 0) return null;\n const header = url.slice(5, comma);\n const payload = url.slice(comma + 1);\n if (!header.includes(\"base64\")) return null;\n // Strip any `;base64` and any other params.\n const parts = header.split(\";\");\n const mime = parts[0] !== undefined && parts[0] !== \"\" ? parts[0] : \"application/octet-stream\";\n return { mime, base64: payload };\n}\n\n/* ------------------------------------------------------------------------ */\n/* Base64 decode */\n/* ------------------------------------------------------------------------ */\n\nfunction decodeBase64ToBytes(b64: string): Uint8Array {\n // Strip whitespace.\n const cleaned = b64.replace(/\\s+/g, \"\");\n\n // Prefer Node's Buffer.\n try {\n if (typeof process !== \"undefined\" && process.versions?.node) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const dynamicRequire = Function(\"m\", \"return require(m)\") as any as (m: string) => unknown;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const bufferMod = dynamicRequire(\"node:buffer\") as any;\n if (bufferMod?.Buffer) {\n const buf = bufferMod.Buffer.from(cleaned, \"base64\") as Uint8Array;\n return new Uint8Array(buf);\n }\n }\n } catch {\n // fall through\n }\n\n // Browser: atob.\n try {\n if (typeof atob === \"function\") {\n const bin = atob(cleaned);\n const out = new Uint8Array(bin.length);\n for (let i = 0; i < bin.length; i++) out[i] = bin.charCodeAt(i);\n return out;\n }\n } catch {\n // fall through\n }\n\n // Last-resort pure-JS decoder.\n return pureBase64Decode(cleaned);\n}\n\nconst B64_ALPHABET = \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/\";\nconst B64_LOOKUP: Record<string, number> = (() => {\n const m: Record<string, number> = {};\n for (let i = 0; i < B64_ALPHABET.length; i++) m[B64_ALPHABET[i]!] = i;\n return m;\n})();\n\nfunction pureBase64Decode(s: string): Uint8Array {\n const stripped = s.replace(/=+$/, \"\");\n const out: number[] = [];\n let buffer = 0;\n let bits = 0;\n for (let i = 0; i < stripped.length; i++) {\n const ch = stripped[i]!;\n const v = B64_LOOKUP[ch];\n if (v === undefined) continue; // skip invalid\n buffer = (buffer << 6) | v;\n bits += 6;\n if (bits >= 8) {\n bits -= 8;\n out.push((buffer >> bits) & 0xff);\n }\n }\n return new Uint8Array(out);\n}\n\n/* ------------------------------------------------------------------------ */\n/* Canonical JSON stringify (duplicated from anthropic/index.ts) */\n/* ------------------------------------------------------------------------ */\n\nfunction canonicalJsonStringify(value: unknown): string {\n return JSON.stringify(value, function replacer(_key, val) {\n if (val && typeof val === \"object\" && !Array.isArray(val)) {\n const obj = val as Record<string, unknown>;\n const sorted: Record<string, unknown> = {};\n for (const k of Object.keys(obj).sort()) {\n sorted[k] = obj[k];\n }\n return sorted;\n }\n return val;\n });\n}\n\n/* ------------------------------------------------------------------------ */\n/* UTF-8 byte truncation */\n/* ------------------------------------------------------------------------ */\n\nfunction truncateUtf8(text: string, maxBytes: number): string {\n if (maxBytes <= 0) return \"\";\n // Fast path: cheap upper bound.\n if (text.length <= maxBytes / 4) return text;\n const bytes = utf8Encode(text);\n if (bytes.length <= maxBytes) return text;\n let cut = maxBytes;\n while (cut > 0 && (bytes[cut]! & 0xc0) === 0x80) {\n cut--;\n }\n return utf8Decode(bytes.subarray(0, cut));\n}\n\nfunction utf8Encode(text: string): Uint8Array {\n if (typeof TextEncoder !== \"undefined\") {\n return new TextEncoder().encode(text);\n }\n const out: number[] = [];\n for (let i = 0; i < text.length; i++) {\n const code = text.charCodeAt(i);\n if (code < 0x80) {\n out.push(code);\n } else if (code < 0x800) {\n out.push(0xc0 | (code >> 6), 0x80 | (code & 0x3f));\n } else {\n out.push(0xe0 | (code >> 12), 0x80 | ((code >> 6) & 0x3f), 0x80 | (code & 0x3f));\n }\n }\n return new Uint8Array(out);\n}\n\nfunction utf8Decode(bytes: Uint8Array): string {\n if (typeof TextDecoder !== \"undefined\") {\n return new TextDecoder(\"utf-8\").decode(bytes);\n }\n let out = \"\";\n for (let i = 0; i < bytes.length; ) {\n const b = bytes[i]!;\n if (b < 0x80) {\n out += String.fromCharCode(b);\n i++;\n } else if (b < 0xe0) {\n out += String.fromCharCode(((b & 0x1f) << 6) | (bytes[i + 1]! & 0x3f));\n i += 2;\n } else {\n out += String.fromCharCode(\n ((b & 0x0f) << 12) | ((bytes[i + 1]! & 0x3f) << 6) | (bytes[i + 2]! & 0x3f),\n );\n i += 3;\n }\n }\n return out;\n}\n\n/* ------------------------------------------------------------------------ */\n/* SHA-256 (duplicated from anthropic/index.ts) */\n/* ------------------------------------------------------------------------ */\n\nfunction sha256Hex(text: string): string {\n try {\n if (typeof process !== \"undefined\" && process.versions?.node) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const dynamicRequire = Function(\"m\", \"return require(m)\") as any as (m: string) => unknown;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const cryptoMod = dynamicRequire(\"node:crypto\") as any;\n if (cryptoMod?.createHash) {\n return cryptoMod.createHash(\"sha256\").update(text).digest(\"hex\");\n }\n }\n } catch {\n // fall through\n }\n return purejsSha256Bytes(utf8Encode(text));\n}\n\nfunction sha256HexBytes(bytes: Uint8Array): string {\n try {\n if (typeof process !== \"undefined\" && process.versions?.node) {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const dynamicRequire = Function(\"m\", \"return require(m)\") as any as (m: string) => unknown;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const cryptoMod = dynamicRequire(\"node:crypto\") as any;\n if (cryptoMod?.createHash) {\n return cryptoMod.createHash(\"sha256\").update(bytes).digest(\"hex\");\n }\n }\n } catch {\n // fall through\n }\n return purejsSha256Bytes(bytes);\n}\n\nfunction purejsSha256Bytes(msg: Uint8Array): string {\n const K = [\n 0x428a2f98, 0x71374491, 0xb5c0fbcf, 0xe9b5dba5, 0x3956c25b, 0x59f111f1, 0x923f82a4, 0xab1c5ed5,\n 0xd807aa98, 0x12835b01, 0x243185be, 0x550c7dc3, 0x72be5d74, 0x80deb1fe, 0x9bdc06a7, 0xc19bf174,\n 0xe49b69c1, 0xefbe4786, 0x0fc19dc6, 0x240ca1cc, 0x2de92c6f, 0x4a7484aa, 0x5cb0a9dc, 0x76f988da,\n 0x983e5152, 0xa831c66d, 0xb00327c8, 0xbf597fc7, 0xc6e00bf3, 0xd5a79147, 0x06ca6351, 0x14292967,\n 0x27b70a85, 0x2e1b2138, 0x4d2c6dfc, 0x53380d13, 0x650a7354, 0x766a0abb, 0x81c2c92e, 0x92722c85,\n 0xa2bfe8a1, 0xa81a664b, 0xc24b8b70, 0xc76c51a3, 0xd192e819, 0xd6990624, 0xf40e3585, 0x106aa070,\n 0x19a4c116, 0x1e376c08, 0x2748774c, 0x34b0bcb5, 0x391c0cb3, 0x4ed8aa4a, 0x5b9cca4f, 0x682e6ff3,\n 0x748f82ee, 0x78a5636f, 0x84c87814, 0x8cc70208, 0x90befffa, 0xa4506ceb, 0xbef9a3f7, 0xc67178f2,\n ];\n const H = [\n 0x6a09e667, 0xbb67ae85, 0x3c6ef372, 0xa54ff53a, 0x510e527f, 0x9b05688c, 0x1f83d9ab, 0x5be0cd19,\n ];\n\n const msgLen = msg.length;\n const bitLen = msgLen * 8;\n const padded = new Uint8Array(((msgLen + 9 + 63) >> 6) << 6);\n padded.set(msg);\n padded[msgLen] = 0x80;\n // 64-bit BE length. JS bitwise ops are 32-bit, so split lo/hi via /.\n const lo = (bitLen & 0xffffffff) >>> 0;\n const hi = Math.floor(bitLen / 0x100000000) >>> 0;\n padded[padded.length - 8] = (hi >>> 24) & 0xff;\n padded[padded.length - 7] = (hi >>> 16) & 0xff;\n padded[padded.length - 6] = (hi >>> 8) & 0xff;\n padded[padded.length - 5] = hi & 0xff;\n padded[padded.length - 4] = (lo >>> 24) & 0xff;\n padded[padded.length - 3] = (lo >>> 16) & 0xff;\n padded[padded.length - 2] = (lo >>> 8) & 0xff;\n padded[padded.length - 1] = lo & 0xff;\n\n const W = new Uint32Array(64);\n for (let chunk = 0; chunk < padded.length; chunk += 64) {\n for (let i = 0; i < 16; i++) {\n // `>>> 0` forces unsigned — `(byte << 24)` otherwise produces a\n // signed int when the high bit is set, which corrupts the schedule.\n W[i] =\n ((padded[chunk + i * 4]! << 24) |\n (padded[chunk + i * 4 + 1]! << 16) |\n (padded[chunk + i * 4 + 2]! << 8) |\n padded[chunk + i * 4 + 3]!) >>>\n 0;\n }\n for (let i = 16; i < 64; i++) {\n const s0 = rotr(W[i - 15]!, 7) ^ rotr(W[i - 15]!, 18) ^ (W[i - 15]! >>> 3);\n const s1 = rotr(W[i - 2]!, 17) ^ rotr(W[i - 2]!, 19) ^ (W[i - 2]! >>> 10);\n W[i] = (W[i - 16]! + s0 + W[i - 7]! + s1) >>> 0;\n }\n\n let [a, b, c, d, e, f, g, h] = H;\n\n for (let i = 0; i < 64; i++) {\n const S1 = rotr(e!, 6) ^ rotr(e!, 11) ^ rotr(e!, 25);\n const ch = (e! & f!) ^ (~e! & g!);\n const temp1 = (h! + S1 + ch + K[i]! + W[i]!) >>> 0;\n const S0 = rotr(a!, 2) ^ rotr(a!, 13) ^ rotr(a!, 22);\n const maj = (a! & b!) ^ (a! & c!) ^ (b! & c!);\n const temp2 = (S0 + maj) >>> 0;\n h = g;\n g = f;\n f = e;\n e = (d! + temp1) >>> 0;\n d = c;\n c = b;\n b = a;\n a = (temp1 + temp2) >>> 0;\n }\n\n H[0] = (H[0]! + a!) >>> 0;\n H[1] = (H[1]! + b!) >>> 0;\n H[2] = (H[2]! + c!) >>> 0;\n H[3] = (H[3]! + d!) >>> 0;\n H[4] = (H[4]! + e!) >>> 0;\n H[5] = (H[5]! + f!) >>> 0;\n H[6] = (H[6]! + g!) >>> 0;\n H[7] = (H[7]! + h!) >>> 0;\n }\n\n let hex = \"\";\n for (const v of H) {\n hex += v.toString(16).padStart(8, \"0\");\n }\n return hex;\n}\n\nfunction rotr(x: number, n: number): number {\n return ((x >>> n) | (x << (32 - n))) >>> 0;\n}\n"]}
@@ -1,31 +1,31 @@
1
1
  'use strict';
2
2
 
3
- var chunkYR2FCEWM_cjs = require('./chunk-YR2FCEWM.cjs');
4
- var chunkT4NHSVXH_cjs = require('./chunk-T4NHSVXH.cjs');
5
- require('./chunk-SOJYLXCR.cjs');
6
- var chunkYMEU6XQQ_cjs = require('./chunk-YMEU6XQQ.cjs');
3
+ var chunkVSG4EWNL_cjs = require('./chunk-VSG4EWNL.cjs');
4
+ var chunkQCI2ZDQS_cjs = require('./chunk-QCI2ZDQS.cjs');
5
+ require('./chunk-KFWCOUL3.cjs');
6
+ var chunkP7XWSMFX_cjs = require('./chunk-P7XWSMFX.cjs');
7
7
  require('./chunk-SWQOPFE4.cjs');
8
8
  require('./chunk-RBNCTHK3.cjs');
9
- var chunkA5EYWAOT_cjs = require('./chunk-A5EYWAOT.cjs');
9
+ var chunkPM5D6VXF_cjs = require('./chunk-PM5D6VXF.cjs');
10
10
 
11
11
  // src/_internal/auto-detect.browser.ts
12
12
  async function installAdapters() {
13
13
  }
14
14
 
15
15
  // src/index.ts
16
- chunkA5EYWAOT_cjs.init_env();
16
+ chunkPM5D6VXF_cjs.init_env();
17
17
 
18
18
  // src/_internal/db-capture.browser.ts
19
19
  function maybeEnableDbCaptureFromEnv() {
20
20
  }
21
21
 
22
22
  // src/index.ts
23
- chunkA5EYWAOT_cjs.init_otel_provider_browser();
24
- chunkA5EYWAOT_cjs.init_redaction();
23
+ chunkPM5D6VXF_cjs.init_otel_provider_browser();
24
+ chunkPM5D6VXF_cjs.init_redaction();
25
25
 
26
26
  // src/_internal/transport.ts
27
- chunkA5EYWAOT_cjs.init_diagnostics();
28
- var SDK_VERSION = "0.5.0-rc.2" ;
27
+ chunkPM5D6VXF_cjs.init_diagnostics();
28
+ var SDK_VERSION = "0.5.0-rc.3" ;
29
29
  var RETRY_AFTER_CAP_SECONDS = 30;
30
30
  function parseRetryAfter(value) {
31
31
  if (!value) return null;
@@ -130,11 +130,11 @@ var BatchTransport = class {
130
130
  /** Enqueue an event. Non-blocking. Returns false if the queue is full. */
131
131
  track(event) {
132
132
  if (this.closed) {
133
- chunkA5EYWAOT_cjs.recordDrop(chunkA5EYWAOT_cjs.REASON_SHUTDOWN_DROP, "trace");
133
+ chunkPM5D6VXF_cjs.recordDrop(chunkPM5D6VXF_cjs.REASON_SHUTDOWN_DROP, "trace");
134
134
  return false;
135
135
  }
136
136
  if (this.queue.length >= this.maxQueueSize) {
137
- chunkA5EYWAOT_cjs.recordDrop(chunkA5EYWAOT_cjs.REASON_QUEUE_FULL, "trace");
137
+ chunkPM5D6VXF_cjs.recordDrop(chunkPM5D6VXF_cjs.REASON_QUEUE_FULL, "trace");
138
138
  return false;
139
139
  }
140
140
  this.queue.push(event);
@@ -221,12 +221,12 @@ var BatchTransport = class {
221
221
  body: JSON.stringify(payload),
222
222
  signal: controller.signal
223
223
  });
224
- chunkA5EYWAOT_cjs.setLevel(resp.headers.get("X-Morse-Diagnostics"));
224
+ chunkPM5D6VXF_cjs.setLevel(resp.headers.get("X-Morse-Diagnostics"));
225
225
  const droppedCount = countPayloadEntries(payload);
226
226
  const droppedCategory = categoryOf(payload);
227
227
  if (resp.status === 429) {
228
228
  await recordQuotaState(resp);
229
- chunkA5EYWAOT_cjs.recordDrop(chunkA5EYWAOT_cjs.REASON_QUOTA_REJECTED, droppedCategory, droppedCount);
229
+ chunkPM5D6VXF_cjs.recordDrop(chunkPM5D6VXF_cjs.REASON_QUOTA_REJECTED, droppedCategory, droppedCount);
230
230
  }
231
231
  if (!resp.ok) {
232
232
  let bodySnippet = "";
@@ -236,9 +236,9 @@ var BatchTransport = class {
236
236
  } catch {
237
237
  }
238
238
  if (resp.status !== 429) {
239
- chunkA5EYWAOT_cjs.recordDrop(chunkA5EYWAOT_cjs.REASON_RETRY_EXHAUSTED, droppedCategory, droppedCount);
239
+ chunkPM5D6VXF_cjs.recordDrop(chunkPM5D6VXF_cjs.REASON_RETRY_EXHAUSTED, droppedCategory, droppedCount);
240
240
  }
241
- chunkA5EYWAOT_cjs.report(new Error(`morse: batch POST returned ${resp.status} ${bodySnippet}`), {
241
+ chunkPM5D6VXF_cjs.report(new Error(`morse: batch POST returned ${resp.status} ${bodySnippet}`), {
242
242
  fingerprint: "morse.transport.post.non_2xx",
243
243
  extra: {
244
244
  endpoint_host: hostnameOf(url),
@@ -247,8 +247,8 @@ var BatchTransport = class {
247
247
  });
248
248
  }
249
249
  } catch (err) {
250
- chunkA5EYWAOT_cjs.recordDrop(chunkA5EYWAOT_cjs.REASON_RETRY_EXHAUSTED, categoryOf(payload), countPayloadEntries(payload));
251
- chunkA5EYWAOT_cjs.report(err, {
250
+ chunkPM5D6VXF_cjs.recordDrop(chunkPM5D6VXF_cjs.REASON_RETRY_EXHAUSTED, categoryOf(payload), countPayloadEntries(payload));
251
+ chunkPM5D6VXF_cjs.report(err, {
252
252
  fingerprint: "morse.transport.post.network",
253
253
  extra: {
254
254
  endpoint_host: hostnameOf(url),
@@ -292,10 +292,10 @@ function categoryOf(payload) {
292
292
  }
293
293
 
294
294
  // src/index.ts
295
- chunkA5EYWAOT_cjs.init_tracing();
296
- chunkA5EYWAOT_cjs.init_diagnostics();
297
- chunkA5EYWAOT_cjs.init_spans();
298
- chunkA5EYWAOT_cjs.init_propagation();
295
+ chunkPM5D6VXF_cjs.init_tracing();
296
+ chunkPM5D6VXF_cjs.init_diagnostics();
297
+ chunkPM5D6VXF_cjs.init_spans();
298
+ chunkPM5D6VXF_cjs.init_propagation();
299
299
  var version = SDK_VERSION;
300
300
  var singleton = null;
301
301
  var transportFactory = (opts) => new BatchTransport(opts);
@@ -315,9 +315,9 @@ function logDestinationOnce(endpoint) {
315
315
  }
316
316
  function resolveEndpoint(explicit) {
317
317
  if (explicit && explicit.length > 0) return explicit;
318
- const fromEnv = chunkA5EYWAOT_cjs.getEndpoint();
318
+ const fromEnv = chunkPM5D6VXF_cjs.getEndpoint();
319
319
  if (fromEnv) return fromEnv;
320
- return chunkA5EYWAOT_cjs.DEFAULT_ENDPOINT;
320
+ return chunkPM5D6VXF_cjs.DEFAULT_ENDPOINT;
321
321
  }
322
322
  var OTLP_TRACES_PATH = "/api/v1/otlp/v1/traces";
323
323
  function deriveOtlpEndpoint(tracesEndpoint) {
@@ -332,10 +332,10 @@ function deriveOtlpEndpoint(tracesEndpoint) {
332
332
  }
333
333
  }
334
334
  function buildSingleton(opts, redaction) {
335
- if (chunkA5EYWAOT_cjs.isDisabled()) {
335
+ if (chunkPM5D6VXF_cjs.isDisabled()) {
336
336
  return null;
337
337
  }
338
- const apiKey = opts.apiKey ?? chunkA5EYWAOT_cjs.getApiKey();
338
+ const apiKey = opts.apiKey ?? chunkPM5D6VXF_cjs.getApiKey();
339
339
  if (!apiKey) {
340
340
  if (!noApiKeyWarningEmitted) {
341
341
  logger(
@@ -347,23 +347,24 @@ function buildSingleton(opts, redaction) {
347
347
  return null;
348
348
  }
349
349
  const endpoint = resolveEndpoint(opts.endpoint);
350
- const flushIntervalSeconds = opts.flushIntervalSeconds ?? chunkA5EYWAOT_cjs.getFlushIntervalSeconds();
350
+ const flushIntervalSeconds = opts.flushIntervalSeconds ?? chunkPM5D6VXF_cjs.getFlushIntervalSeconds();
351
351
  const transport = transportFactory({ apiKey, endpoint, flushIntervalSeconds });
352
- chunkA5EYWAOT_cjs.setTransport(transport);
353
- chunkA5EYWAOT_cjs.setRedactionConfig(redaction);
354
- const explicitSource = chunkA5EYWAOT_cjs.isValidInternalSource(opts.source) ? opts.source : void 0;
355
- const resolvedSource = explicitSource ?? chunkA5EYWAOT_cjs.getInternalSource() ?? null;
356
- chunkA5EYWAOT_cjs.setSource(resolvedSource);
352
+ chunkPM5D6VXF_cjs.setTransport(transport);
353
+ chunkPM5D6VXF_cjs.setRedactionConfig(redaction);
354
+ chunkPM5D6VXF_cjs.setDiagnosticsClientConfig({ apiKey, endpoint });
355
+ const explicitSource = chunkPM5D6VXF_cjs.isValidInternalSource(opts.source) ? opts.source : void 0;
356
+ const resolvedSource = explicitSource ?? chunkPM5D6VXF_cjs.getInternalSource() ?? null;
357
+ chunkPM5D6VXF_cjs.setSource(resolvedSource);
357
358
  logDestinationOnce(endpoint);
358
359
  try {
359
- chunkA5EYWAOT_cjs.getEngine().configure({
360
+ chunkPM5D6VXF_cjs.getEngine().configure({
360
361
  endpoint: deriveOtlpEndpoint(endpoint),
361
362
  apiKey,
362
- sampleRate: chunkA5EYWAOT_cjs.getSampleRate(),
363
+ sampleRate: chunkPM5D6VXF_cjs.getSampleRate(),
363
364
  scheduleDelayMillis: flushIntervalSeconds * 1e3,
364
- maxQueueSize: chunkA5EYWAOT_cjs.getMaxQueueSize(),
365
- maxExportBatchSize: chunkA5EYWAOT_cjs.getMaxBatchSize(),
366
- maxFieldBytes: chunkA5EYWAOT_cjs.getMaxFieldBytes(),
365
+ maxQueueSize: chunkPM5D6VXF_cjs.getMaxQueueSize(),
366
+ maxExportBatchSize: chunkPM5D6VXF_cjs.getMaxBatchSize(),
367
+ maxFieldBytes: chunkPM5D6VXF_cjs.getMaxFieldBytes(),
367
368
  // 10s (not the exporter's un-overridden 30s ceiling): a genuine
368
369
  // network blip still gets several retries with backoff; a fully dead
369
370
  // endpoint fails within a bounded, shutdown-friendly window instead
@@ -372,32 +373,32 @@ function buildSingleton(opts, redaction) {
372
373
  redactionConfig: redaction
373
374
  });
374
375
  } catch (err) {
375
- chunkA5EYWAOT_cjs.report(err, { fingerprint: "morse.otel_provider.configure" });
376
+ chunkPM5D6VXF_cjs.report(err, { fingerprint: "morse.otel_provider.configure" });
376
377
  }
377
378
  void installAdapters().catch(() => {
378
379
  });
379
380
  try {
380
381
  maybeEnableDbCaptureFromEnv();
381
382
  } catch (err) {
382
- chunkA5EYWAOT_cjs.report(err, { fingerprint: "morse.db_capture.register" });
383
+ chunkPM5D6VXF_cjs.report(err, { fingerprint: "morse.db_capture.register" });
383
384
  }
384
385
  return { apiKey, endpoint, transport, redaction };
385
386
  }
386
387
  function ensureInitialized() {
387
- if (chunkA5EYWAOT_cjs.isDisabled()) return null;
388
+ if (chunkPM5D6VXF_cjs.isDisabled()) return null;
388
389
  if (singleton !== null) return singleton;
389
- singleton = buildSingleton({}, chunkA5EYWAOT_cjs.buildRedactionConfig());
390
+ singleton = buildSingleton({}, chunkPM5D6VXF_cjs.buildRedactionConfig());
390
391
  return singleton;
391
392
  }
392
- chunkT4NHSVXH_cjs._setEnsureInitialized(() => {
393
+ chunkQCI2ZDQS_cjs._setEnsureInitialized(() => {
393
394
  ensureInitialized();
394
395
  });
395
396
  function init(options = {}) {
396
- if (chunkA5EYWAOT_cjs.isDisabled()) {
397
+ if (chunkPM5D6VXF_cjs.isDisabled()) {
397
398
  logger("info", "morse: MORSE_DISABLED=1 \u2014 SDK is a no-op");
398
399
  return;
399
400
  }
400
- const redaction = chunkA5EYWAOT_cjs.buildRedactionConfig(options.redaction);
401
+ const redaction = chunkPM5D6VXF_cjs.buildRedactionConfig(options.redaction);
401
402
  try {
402
403
  if (singleton !== null) {
403
404
  void singleton.transport.shutdown();
@@ -405,10 +406,10 @@ function init(options = {}) {
405
406
  }
406
407
  singleton = buildSingleton(options, redaction);
407
408
  } catch (err) {
408
- chunkA5EYWAOT_cjs.report(err, { fingerprint: "morse.init" });
409
+ chunkPM5D6VXF_cjs.report(err, { fingerprint: "morse.init" });
409
410
  }
410
411
  }
411
- var track = chunkYMEU6XQQ_cjs.absorbErrorsSync(
412
+ var track = chunkP7XWSMFX_cjs.absorbErrorsSync(
412
413
  (options) => {
413
414
  const state = ensureInitialized();
414
415
  if (!state) return;
@@ -416,33 +417,33 @@ var track = chunkYMEU6XQQ_cjs.absorbErrorsSync(
416
417
  agent_id: options.agentId,
417
418
  ...options.runData
418
419
  };
419
- const redacted = chunkA5EYWAOT_cjs.redactValue(payload, state.redaction);
420
+ const redacted = chunkPM5D6VXF_cjs.redactValue(payload, state.redaction);
420
421
  state.transport.track(redacted);
421
422
  },
422
423
  { fingerprint: "morse.track" }
423
424
  );
424
- var batchTrack = chunkYMEU6XQQ_cjs.absorbErrorsSync(
425
+ var batchTrack = chunkP7XWSMFX_cjs.absorbErrorsSync(
425
426
  (runs) => {
426
427
  const state = ensureInitialized();
427
428
  if (!state) return;
428
429
  for (const run2 of runs) {
429
- const redacted = chunkA5EYWAOT_cjs.redactValue(run2, state.redaction);
430
+ const redacted = chunkPM5D6VXF_cjs.redactValue(run2, state.redaction);
430
431
  state.transport.track(redacted);
431
432
  }
432
433
  },
433
434
  { fingerprint: "morse.batch_track" }
434
435
  );
435
- var record = chunkYMEU6XQQ_cjs.absorbErrorsSync(
436
+ var record = chunkP7XWSMFX_cjs.absorbErrorsSync(
436
437
  (rec) => {
437
438
  const state = ensureInitialized();
438
439
  if (!state) return;
439
- const traceId = chunkA5EYWAOT_cjs.generateTraceId();
440
- const now = chunkA5EYWAOT_cjs.nowIso();
440
+ const traceId = chunkPM5D6VXF_cjs.generateTraceId();
441
+ const now = chunkPM5D6VXF_cjs.nowIso();
441
442
  const resolvedStatus = rec.errorMessage ? "failed" : rec.status ?? "completed";
442
443
  const span2 = {
443
444
  trace_id: traceId,
444
- span_id: chunkA5EYWAOT_cjs.generateSpanId(),
445
- type: chunkA5EYWAOT_cjs.SpanType.AGENT,
445
+ span_id: chunkPM5D6VXF_cjs.generateSpanId(),
446
+ type: chunkPM5D6VXF_cjs.SpanType.AGENT,
446
447
  name: rec.agent,
447
448
  started_at: now,
448
449
  ended_at: now,
@@ -467,57 +468,57 @@ var record = chunkYMEU6XQQ_cjs.absorbErrorsSync(
467
468
  success: rec.success,
468
469
  outcome: rec.outcome
469
470
  };
470
- const entry = chunkA5EYWAOT_cjs.buildTraceEntry(traceFields, [span2]);
471
- const redacted = chunkA5EYWAOT_cjs.redactValue(entry, state.redaction);
472
- chunkA5EYWAOT_cjs.sendTrace(redacted);
471
+ const entry = chunkPM5D6VXF_cjs.buildTraceEntry(traceFields, [span2]);
472
+ const redacted = chunkPM5D6VXF_cjs.redactValue(entry, state.redaction);
473
+ chunkPM5D6VXF_cjs.sendTrace(redacted);
473
474
  },
474
475
  { fingerprint: "morse.record" }
475
476
  );
476
477
  function run(nameOrOpts, fn) {
477
478
  const opts = typeof nameOrOpts === "string" ? { agentName: nameOrOpts } : nameOrOpts;
478
479
  ensureInitialized();
479
- return chunkA5EYWAOT_cjs.runSync(opts, fn);
480
+ return chunkPM5D6VXF_cjs.runSync(opts, fn);
480
481
  }
481
482
  function runTraced(options, fn) {
482
483
  ensureInitialized();
483
- return chunkA5EYWAOT_cjs.runAsync(options, fn);
484
+ return chunkPM5D6VXF_cjs.runAsync(options, fn);
484
485
  }
485
486
  function setContext2(dims) {
486
- chunkA5EYWAOT_cjs.setContext(dims);
487
+ chunkPM5D6VXF_cjs.setContext(dims);
487
488
  }
488
489
  function startSpan2(options) {
489
- return chunkA5EYWAOT_cjs.startSpan(options);
490
+ return chunkPM5D6VXF_cjs.startSpan(options);
490
491
  }
491
492
  function span(options, fn) {
492
- return chunkA5EYWAOT_cjs.spanSync(options, fn);
493
+ return chunkPM5D6VXF_cjs.spanSync(options, fn);
493
494
  }
494
495
  function spanAsync2(options, fn) {
495
- return chunkA5EYWAOT_cjs.spanAsync(options, fn);
496
+ return chunkPM5D6VXF_cjs.spanAsync(options, fn);
496
497
  }
497
- var flush = chunkYMEU6XQQ_cjs.absorbErrorsAsync(
498
+ var flush = chunkP7XWSMFX_cjs.absorbErrorsAsync(
498
499
  async () => {
499
500
  if (singleton !== null) {
500
501
  await singleton.transport.flush();
501
- await chunkA5EYWAOT_cjs.getEngine().flush();
502
+ await chunkPM5D6VXF_cjs.getEngine().flush();
502
503
  }
503
504
  },
504
505
  { fingerprint: "morse.flush" }
505
506
  );
506
- var quotaState2 = chunkYMEU6XQQ_cjs.absorbErrorsSync(
507
+ var quotaState2 = chunkP7XWSMFX_cjs.absorbErrorsSync(
507
508
  () => {
508
509
  if (singleton === null) return null;
509
510
  return getQuotaState();
510
511
  },
511
512
  { fingerprint: "morse.quota_state" }
512
513
  );
513
- var shutdown = chunkYMEU6XQQ_cjs.absorbErrorsAsync(
514
+ var shutdown = chunkP7XWSMFX_cjs.absorbErrorsAsync(
514
515
  async () => {
515
516
  if (singleton !== null) {
516
517
  await singleton.transport.shutdown();
517
- await chunkA5EYWAOT_cjs.getEngine().flush();
518
- chunkA5EYWAOT_cjs.getEngine().shutdown();
518
+ await chunkPM5D6VXF_cjs.getEngine().flush();
519
+ chunkPM5D6VXF_cjs.getEngine().shutdown();
519
520
  singleton = null;
520
- chunkA5EYWAOT_cjs.setTransport(null);
521
+ chunkPM5D6VXF_cjs.setTransport(null);
521
522
  }
522
523
  },
523
524
  { fingerprint: "morse.shutdown" }
@@ -526,14 +527,14 @@ function _resetForTesting4() {
526
527
  if (singleton !== null) {
527
528
  void singleton.transport.shutdown();
528
529
  singleton = null;
529
- chunkA5EYWAOT_cjs.setTransport(null);
530
+ chunkPM5D6VXF_cjs.setTransport(null);
530
531
  }
531
- chunkA5EYWAOT_cjs.getEngine().resetForTesting();
532
+ chunkPM5D6VXF_cjs.getEngine().resetForTesting();
532
533
  noApiKeyWarningEmitted = false;
533
534
  lastLoggedEndpoint = null;
534
- chunkA5EYWAOT_cjs.setSource(null);
535
- chunkA5EYWAOT_cjs._resetForTesting2();
536
- chunkA5EYWAOT_cjs._resetForTesting();
535
+ chunkPM5D6VXF_cjs.setSource(null);
536
+ chunkPM5D6VXF_cjs._resetForTesting2();
537
+ chunkPM5D6VXF_cjs._resetForTesting();
537
538
  _resetQuotaStateForTesting();
538
539
  transportFactory = (opts) => new BatchTransport(opts);
539
540
  }
@@ -541,59 +542,59 @@ function _setTransportFactoryForTesting(factory) {
541
542
  transportFactory = factory;
542
543
  }
543
544
  function _getLastTraceForTesting() {
544
- return chunkA5EYWAOT_cjs.getLastTrace();
545
+ return chunkPM5D6VXF_cjs.getLastTrace();
545
546
  }
546
547
  function _getActiveTraceStateForTesting() {
547
- return chunkA5EYWAOT_cjs.getActiveTraceState();
548
+ return chunkPM5D6VXF_cjs.getActiveTraceState();
548
549
  }
549
550
 
550
551
  Object.defineProperty(exports, "MAX_SEGMENT_CONTENT_BYTES", {
551
552
  enumerable: true,
552
- get: function () { return chunkYR2FCEWM_cjs.MAX_SEGMENT_CONTENT_BYTES; }
553
+ get: function () { return chunkVSG4EWNL_cjs.MAX_SEGMENT_CONTENT_BYTES; }
553
554
  });
554
555
  Object.defineProperty(exports, "extractAnthropicSegments", {
555
556
  enumerable: true,
556
- get: function () { return chunkYR2FCEWM_cjs.extractAnthropicSegments; }
557
+ get: function () { return chunkVSG4EWNL_cjs.extractAnthropicSegments; }
557
558
  });
558
559
  Object.defineProperty(exports, "instrumentAnthropic", {
559
560
  enumerable: true,
560
- get: function () { return chunkYR2FCEWM_cjs.instrumentAnthropic; }
561
+ get: function () { return chunkVSG4EWNL_cjs.instrumentAnthropic; }
561
562
  });
562
563
  Object.defineProperty(exports, "isAnthropicWrapped", {
563
564
  enumerable: true,
564
- get: function () { return chunkYR2FCEWM_cjs.isAnthropicWrapped; }
565
+ get: function () { return chunkVSG4EWNL_cjs.isAnthropicWrapped; }
565
566
  });
566
567
  Object.defineProperty(exports, "uninstallAnthropic", {
567
568
  enumerable: true,
568
- get: function () { return chunkYR2FCEWM_cjs.uninstallAnthropic; }
569
+ get: function () { return chunkVSG4EWNL_cjs.uninstallAnthropic; }
569
570
  });
570
571
  Object.defineProperty(exports, "wrapAnthropic", {
571
572
  enumerable: true,
572
- get: function () { return chunkYR2FCEWM_cjs.wrapAnthropic; }
573
+ get: function () { return chunkVSG4EWNL_cjs.wrapAnthropic; }
573
574
  });
574
575
  Object.defineProperty(exports, "log", {
575
576
  enumerable: true,
576
- get: function () { return chunkT4NHSVXH_cjs.log; }
577
+ get: function () { return chunkQCI2ZDQS_cjs.log; }
577
578
  });
578
579
  Object.defineProperty(exports, "W3C_TRACEPARENT_HEADER", {
579
580
  enumerable: true,
580
- get: function () { return chunkA5EYWAOT_cjs.W3C_TRACEPARENT_HEADER; }
581
+ get: function () { return chunkPM5D6VXF_cjs.W3C_TRACEPARENT_HEADER; }
581
582
  });
582
583
  Object.defineProperty(exports, "extractTraceparent", {
583
584
  enumerable: true,
584
- get: function () { return chunkA5EYWAOT_cjs.extractTraceparent; }
585
+ get: function () { return chunkPM5D6VXF_cjs.extractTraceparent; }
585
586
  });
586
587
  Object.defineProperty(exports, "formatTraceparent", {
587
588
  enumerable: true,
588
- get: function () { return chunkA5EYWAOT_cjs.formatTraceparent; }
589
+ get: function () { return chunkPM5D6VXF_cjs.formatTraceparent; }
589
590
  });
590
591
  Object.defineProperty(exports, "injectIntoRequestInit", {
591
592
  enumerable: true,
592
- get: function () { return chunkA5EYWAOT_cjs.injectIntoRequestInit; }
593
+ get: function () { return chunkPM5D6VXF_cjs.injectIntoRequestInit; }
593
594
  });
594
595
  Object.defineProperty(exports, "injectTraceparent", {
595
596
  enumerable: true,
596
- get: function () { return chunkA5EYWAOT_cjs.injectTraceparent; }
597
+ get: function () { return chunkPM5D6VXF_cjs.injectTraceparent; }
597
598
  });
598
599
  exports._getActiveTraceStateForTesting = _getActiveTraceStateForTesting;
599
600
  exports._getLastTraceForTesting = _getLastTraceForTesting;