@glasstrace/sdk 1.9.0 → 1.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (68) hide show
  1. package/dist/async-context/index.cjs +53 -4
  2. package/dist/async-context/index.cjs.map +1 -1
  3. package/dist/async-context/index.js +2 -2
  4. package/dist/{chunk-JHUNLPSS.js → chunk-6RKS3DNA.js} +45 -1
  5. package/dist/{chunk-JHUNLPSS.js.map → chunk-6RKS3DNA.js.map} +1 -1
  6. package/dist/{chunk-HD6JIFKN.js → chunk-BSVWJSVX.js} +2 -2
  7. package/dist/{chunk-QHV7NFON.js → chunk-D54FMQHF.js} +49 -40
  8. package/dist/chunk-D54FMQHF.js.map +1 -0
  9. package/dist/chunk-I2DVVSKW.js +419 -0
  10. package/dist/chunk-I2DVVSKW.js.map +1 -0
  11. package/dist/{chunk-H6WJ63X2.js → chunk-M5GO2SSO.js} +2 -2
  12. package/dist/{chunk-XEPC4NFL.js → chunk-OXA4IHQX.js} +39 -405
  13. package/dist/chunk-OXA4IHQX.js.map +1 -0
  14. package/dist/{chunk-RQ5BIWDT.js → chunk-OXM2BZMF.js} +11 -6
  15. package/dist/{chunk-RQ5BIWDT.js.map → chunk-OXM2BZMF.js.map} +1 -1
  16. package/dist/{chunk-M6EWJCAT.js → chunk-QVTONMVZ.js} +2 -2
  17. package/dist/{chunk-DKV53A2C.js → chunk-RL43PU2X.js} +2 -2
  18. package/dist/{chunk-GWIEUBFR.js → chunk-UMGZJYC4.js} +3 -3
  19. package/dist/{chunk-QXITSNYM.js → chunk-XG6WR2KS.js} +3 -3
  20. package/dist/cli/init.cjs +4 -4
  21. package/dist/cli/init.cjs.map +1 -1
  22. package/dist/cli/init.js +7 -7
  23. package/dist/cli/init.js.map +1 -1
  24. package/dist/cli/mcp-add.cjs +1 -1
  25. package/dist/cli/mcp-add.cjs.map +1 -1
  26. package/dist/cli/mcp-add.js +3 -3
  27. package/dist/cli/mcp-add.js.map +1 -1
  28. package/dist/cli/uninit.js +3 -3
  29. package/dist/cli/upgrade-instructions.cjs +1 -1
  30. package/dist/cli/upgrade-instructions.cjs.map +1 -1
  31. package/dist/cli/upgrade-instructions.js +3 -3
  32. package/dist/cli/upgrade-instructions.js.map +1 -1
  33. package/dist/cli/validate.cjs.map +1 -1
  34. package/dist/cli/validate.js +2 -2
  35. package/dist/edge-entry.cjs +100 -42
  36. package/dist/edge-entry.cjs.map +1 -1
  37. package/dist/edge-entry.js +4 -4
  38. package/dist/index.cjs +58 -5
  39. package/dist/index.cjs.map +1 -1
  40. package/dist/index.js +10 -8
  41. package/dist/index.js.map +1 -1
  42. package/dist/middleware/index.cjs +91 -38
  43. package/dist/middleware/index.cjs.map +1 -1
  44. package/dist/middleware/index.d.cts +8 -0
  45. package/dist/middleware/index.d.ts +8 -0
  46. package/dist/middleware/index.js +2 -2
  47. package/dist/node-entry.cjs +58 -5
  48. package/dist/node-entry.cjs.map +1 -1
  49. package/dist/node-entry.js +12 -10
  50. package/dist/node-subpath.cjs.map +1 -1
  51. package/dist/node-subpath.js +3 -3
  52. package/dist/{source-map-uploader-MMJ2WCL4.js → source-map-uploader-CLYCE2TZ.js} +3 -3
  53. package/dist/trpc/index.cjs +15164 -503
  54. package/dist/trpc/index.cjs.map +1 -1
  55. package/dist/trpc/index.d.cts +62 -1
  56. package/dist/trpc/index.d.ts +62 -1
  57. package/dist/trpc/index.js +200 -1
  58. package/dist/trpc/index.js.map +1 -1
  59. package/package.json +1 -1
  60. package/dist/chunk-QHV7NFON.js.map +0 -1
  61. package/dist/chunk-XEPC4NFL.js.map +0 -1
  62. /package/dist/{chunk-HD6JIFKN.js.map → chunk-BSVWJSVX.js.map} +0 -0
  63. /package/dist/{chunk-H6WJ63X2.js.map → chunk-M5GO2SSO.js.map} +0 -0
  64. /package/dist/{chunk-M6EWJCAT.js.map → chunk-QVTONMVZ.js.map} +0 -0
  65. /package/dist/{chunk-DKV53A2C.js.map → chunk-RL43PU2X.js.map} +0 -0
  66. /package/dist/{chunk-GWIEUBFR.js.map → chunk-UMGZJYC4.js.map} +0 -0
  67. /package/dist/{chunk-QXITSNYM.js.map → chunk-XG6WR2KS.js.map} +0 -0
  68. /package/dist/{source-map-uploader-MMJ2WCL4.js.map → source-map-uploader-CLYCE2TZ.js.map} +0 -0
@@ -14584,6 +14584,21 @@ var GLASSTRACE_ATTRIBUTE_NAMES = {
14584
14584
  HTTP_METHOD: "glasstrace.http.method",
14585
14585
  HTTP_STATUS_CODE: "glasstrace.http.status_code",
14586
14586
  HTTP_DURATION_MS: "glasstrace.http.duration_ms",
14587
+ /**
14588
+ * Boolean audit attribute set to `true` only when the SDK's
14589
+ * boundary-masked-error heuristic at `enriching-exporter.ts`
14590
+ * fires (SDK-051 / DISC-1125 — same-span scope; descendant-traversal
14591
+ * scope is tracked in a follow-up DISC).
14592
+ *
14593
+ * Strict additivity: backend ingestion ignores unknown attributes
14594
+ * today; this attribute is for audit/observability. Downstream
14595
+ * tooling MAY surface heuristic activation rates by querying for
14596
+ * spans with this attribute set; the backend's status-handling
14597
+ * pipeline does NOT depend on it.
14598
+ *
14599
+ * Absent on spans where the heuristic did not fire.
14600
+ */
14601
+ HTTP_BOUNDARY_MASKED: "glasstrace.http.boundary_masked",
14587
14602
  ERROR_MESSAGE: "glasstrace.error.message",
14588
14603
  ERROR_CODE: "glasstrace.error.code",
14589
14604
  ERROR_CATEGORY: "glasstrace.error.category",
@@ -14623,6 +14638,35 @@ var GLASSTRACE_ATTRIBUTE_NAMES = {
14623
14638
  SOURCE_LINE: "glasstrace.source.line",
14624
14639
  SOURCE_MAPPED: "glasstrace.source.mapped",
14625
14640
  TRPC_PROCEDURE: "glasstrace.trpc.procedure",
14641
+ /**
14642
+ * Zero-based positional index of the current member within a tRPC
14643
+ * HTTP-batch dispatch (SDK-052 / DISC-1534 SDK-side slice). Set on
14644
+ * member spans by `tracedMiddleware` when the SDK's
14645
+ * `wrapBatchedHttpHandler` envelope is in scope. Numeric.
14646
+ *
14647
+ * Load-bearing for batches that include the same procedure name
14648
+ * more than once — name-only matching cannot disambiguate, so the
14649
+ * positional index is the canonical disambiguator. Absent on
14650
+ * non-batched spans and on apps not using `wrapBatchedHttpHandler`.
14651
+ */
14652
+ TRPC_BATCH_MEMBER_INDEX: "glasstrace.trpc.batch.member_index",
14653
+ /**
14654
+ * Ordered list of all procedure names in the current tRPC HTTP
14655
+ * batch (SDK-052 / DISC-1534 SDK-side slice). Stored as an OTel
14656
+ * typed string array (`string[]`), NOT a JSON-encoded string —
14657
+ * the typed-array form preserves first-class queryability in the
14658
+ * OTel ingest pipeline.
14659
+ *
14660
+ * Set on each member span that `tracedMiddleware` produces when a
14661
+ * `wrapBatchedHttpHandler` envelope is in scope. Absent on
14662
+ * non-batched spans, on the root HTTP server span (today's
14663
+ * release ships strict-additive scope only — per-root-span
14664
+ * attribution is deferred to a follow-up wave because changing
14665
+ * the root span's existing `glasstrace.trpc.procedure` shape from
14666
+ * comma-joined to first-member representative is non-additive),
14667
+ * and on apps not using `wrapBatchedHttpHandler`.
14668
+ */
14669
+ TRPC_BATCH_MEMBER_PROCEDURES: "glasstrace.trpc.batch.member_procedures",
14626
14670
  ERROR_RESPONSE_BODY: "glasstrace.error.response_body",
14627
14671
  NEXT_ACTION_DETECTED: "glasstrace.next.action.detected",
14628
14672
  // Client-side attributes
@@ -14928,10 +14972,15 @@ function withAsyncCausality(options, fn) {
14928
14972
  })();
14929
14973
  return async () => {
14930
14974
  const tracer = trace.getTracer(TRACER_NAME);
14931
- const span = tracer.startSpan(options.name, {
14932
- root: true,
14933
- links: capturedContext !== void 0 ? [{ context: capturedContext }] : void 0
14934
- });
14975
+ let span;
14976
+ try {
14977
+ span = tracer.startSpan(options.name, {
14978
+ root: true,
14979
+ links: capturedContext !== void 0 ? [{ context: capturedContext }] : void 0
14980
+ });
14981
+ } catch {
14982
+ return Promise.resolve(fn());
14983
+ }
14935
14984
  if (isNoopSpan(span)) {
14936
14985
  if (!_skippedUninstalledEmitted) {
14937
14986
  _skippedUninstalledEmitted = true;