@sentry/junior 0.78.0 → 0.80.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 (53) hide show
  1. package/dist/{agent-hooks-OFDNZJB2.js → agent-hooks-ZGTDOXQY.js} +11 -10
  2. package/dist/api-reference.d.ts +1 -1
  3. package/dist/app.js +39 -41
  4. package/dist/catalog-runtime-IVWRAPSI.js +12 -0
  5. package/dist/chat/conversation-privacy.d.ts +4 -0
  6. package/dist/chat/plugins/catalog-runtime.d.ts +1 -0
  7. package/dist/chat/plugins/registry.d.ts +27 -26
  8. package/dist/chat/sentry-payload-filter.d.ts +14 -0
  9. package/dist/chat/sentry.d.ts +1 -1
  10. package/dist/chat/state/session-log.d.ts +84 -0
  11. package/dist/chat/tools/advisor/tool.d.ts +1 -0
  12. package/dist/chat/tools/definition.d.ts +6 -0
  13. package/dist/{chunk-LUNMJQ7D.js → chunk-2AJ4TEKE.js} +6 -6
  14. package/dist/{chunk-ST6YNAXG.js → chunk-3DA7X2U3.js} +6 -3
  15. package/dist/{chunk-PNGAJ75P.js → chunk-3JKTVW4R.js} +7 -8
  16. package/dist/{chunk-Q6XFTRV5.js → chunk-4XHCVBXH.js} +2 -2
  17. package/dist/{chunk-Z4CIQ3EB.js → chunk-66NX7MNW.js} +1 -1
  18. package/dist/{chunk-Q3XNY442.js → chunk-6APU57E6.js} +1 -3
  19. package/dist/{chunk-T77LUIX3.js → chunk-ABRNFE3N.js} +7 -211
  20. package/dist/chunk-DR75T7J3.js +225 -0
  21. package/dist/{chunk-KIDP757T.js → chunk-FAGWUF44.js} +17 -7
  22. package/dist/{chunk-OJ53FYVG.js → chunk-FTMXFBDC.js} +14 -0
  23. package/dist/{chunk-RARSKPVT.js → chunk-GUO4EE7L.js} +2 -2
  24. package/dist/{chunk-2ECJXSVQ.js → chunk-IOBSRZK5.js} +1 -1
  25. package/dist/{chunk-EJN6G5A2.js → chunk-KF7522P3.js} +5 -19
  26. package/dist/{chunk-C2YBH4S6.js → chunk-LX5GBMEP.js} +6 -6
  27. package/dist/{chunk-237T7XAN.js → chunk-PQ2U2AO3.js} +3 -3
  28. package/dist/{chunk-YLVJRYTD.js → chunk-TW23AT22.js} +190 -196
  29. package/dist/{chunk-2MSW5BZY.js → chunk-W2QGQCKG.js} +129 -62
  30. package/dist/{chunk-Y3EG7S7P.js → chunk-WCXVEQPI.js} +7 -8
  31. package/dist/{chunk-LXTPBU4K.js → chunk-X2FL5ZH5.js} +1 -1
  32. package/dist/{chunk-SSWBYEFH.js → chunk-Y3YUOEAZ.js} +13 -7
  33. package/dist/{chunk-QDQVOMBA.js → chunk-YA2JCC7G.js} +165 -14
  34. package/dist/{chunk-VALUBQ7R.js → chunk-ZPCGQRFJ.js} +1 -1
  35. package/dist/cli/chat.js +12 -10
  36. package/dist/cli/check.js +7 -7
  37. package/dist/cli/main.js +1 -1
  38. package/dist/cli/plugins.js +17 -16
  39. package/dist/cli/snapshot-warmup.js +14 -15
  40. package/dist/cli/upgrade.js +20 -22
  41. package/dist/db-GQJKBX5W.js +18 -0
  42. package/dist/instrumentation.js +76 -3
  43. package/dist/nitro.js +8 -7
  44. package/dist/reporting/conversations.d.ts +30 -0
  45. package/dist/reporting.d.ts +1 -1
  46. package/dist/reporting.js +115 -24
  47. package/dist/{runner-WW4GJFUB.js → runner-JOVPVMIH.js} +18 -17
  48. package/dist/{sentry-4CP5NNQ5.js → sentry-EGFOV3DH.js} +5 -3
  49. package/dist/validation-TN6HMZAD.js +15 -0
  50. package/package.json +4 -4
  51. package/dist/db-NGQ3JCMF.js +0 -17
  52. package/dist/registry-RRIDPJBT.js +0 -46
  53. package/dist/validation-MDMYBRFB.js +0 -15
@@ -1,15 +1,84 @@
1
+ import {
2
+ getCurrentConversationPrivacy
3
+ } from "./chunk-DR75T7J3.js";
1
4
  import {
2
5
  getDeploymentServiceVersion,
3
6
  getDeploymentTelemetryAttributes
4
- } from "./chunk-OJ53FYVG.js";
7
+ } from "./chunk-FTMXFBDC.js";
5
8
  import {
6
9
  getClient,
7
10
  getGlobalScope,
8
11
  init,
9
- vercelAIIntegration
10
- } from "./chunk-ST6YNAXG.js";
12
+ vercelAIIntegration,
13
+ withStreamedSpan
14
+ } from "./chunk-3DA7X2U3.js";
11
15
  import "./chunk-MLKGABMK.js";
12
16
 
17
+ // src/chat/sentry-payload-filter.ts
18
+ var PAYLOAD_ATTRIBUTE_KEYS = /* @__PURE__ */ new Set([
19
+ "app.message.input",
20
+ "app.message.output",
21
+ "gen_ai.input.messages",
22
+ "gen_ai.output.messages",
23
+ "gen_ai.system_instructions",
24
+ "gen_ai.tool.call.arguments",
25
+ "gen_ai.tool.call.result"
26
+ ]);
27
+ function hasPayloadAttributes(attributes) {
28
+ return Object.keys(attributes).some((key) => PAYLOAD_ATTRIBUTE_KEYS.has(key));
29
+ }
30
+ function shouldScrubPayloads(attributes) {
31
+ if (!hasPayloadAttributes(attributes)) {
32
+ return false;
33
+ }
34
+ return getCurrentConversationPrivacy() !== "public";
35
+ }
36
+ function scrubPayloadAttributes(attributes) {
37
+ if (!attributes) {
38
+ return;
39
+ }
40
+ if (!shouldScrubPayloads(attributes)) {
41
+ return;
42
+ }
43
+ for (const key of PAYLOAD_ATTRIBUTE_KEYS) {
44
+ delete attributes[key];
45
+ }
46
+ attributes["app.conversation.payload_redacted"] = true;
47
+ }
48
+ function scrubContainer(container) {
49
+ if (!container) {
50
+ return;
51
+ }
52
+ scrubPayloadAttributes(container.data);
53
+ scrubPayloadAttributes(container.attributes);
54
+ }
55
+ function scrubPrivateSentryEvent(event) {
56
+ const eventRecord = event;
57
+ scrubContainer(eventRecord);
58
+ scrubContainer(event.contexts?.trace);
59
+ for (const breadcrumb of event.breadcrumbs ?? []) {
60
+ scrubContainer(breadcrumb);
61
+ }
62
+ return event;
63
+ }
64
+ function scrubPrivateSentryTransaction(event) {
65
+ const eventRecord = event;
66
+ scrubContainer(eventRecord);
67
+ scrubContainer(event.contexts?.trace);
68
+ for (const span of event.spans ?? []) {
69
+ scrubContainer(span);
70
+ }
71
+ return event;
72
+ }
73
+ function scrubPrivateSentrySpan(span) {
74
+ scrubContainer(span);
75
+ return span;
76
+ }
77
+ function scrubPrivateSentryLog(log) {
78
+ scrubContainer(log);
79
+ return log;
80
+ }
81
+
13
82
  // src/instrumentation.ts
14
83
  function getSampleRate(value, fallback) {
15
84
  if (!value) return fallback;
@@ -41,6 +110,10 @@ function initSentry() {
41
110
  enableLogs,
42
111
  registerEsmLoaderHooks: false,
43
112
  streamGenAiSpans: true,
113
+ beforeSend: scrubPrivateSentryEvent,
114
+ beforeSendLog: scrubPrivateSentryLog,
115
+ beforeSendSpan: withStreamedSpan(scrubPrivateSentrySpan),
116
+ beforeSendTransaction: scrubPrivateSentryTransaction,
44
117
  integrations: [
45
118
  vercelAIIntegration({
46
119
  recordInputs: true,
package/dist/nitro.js CHANGED
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  resolveConversationWorkQueueTopic
3
- } from "./chunk-2ECJXSVQ.js";
3
+ } from "./chunk-IOBSRZK5.js";
4
4
  import {
5
5
  PLUGIN_TASK_QUEUE_TOPIC
6
6
  } from "./chunk-KNFROR7R.js";
@@ -8,8 +8,9 @@ import {
8
8
  pluginCatalogConfigFromPluginSet,
9
9
  pluginRuntimeRegistrationsFromPluginSet
10
10
  } from "./chunk-SG5WAA7H.js";
11
- import "./chunk-Q6XFTRV5.js";
12
- import "./chunk-T77LUIX3.js";
11
+ import "./chunk-4XHCVBXH.js";
12
+ import "./chunk-ABRNFE3N.js";
13
+ import "./chunk-DR75T7J3.js";
13
14
  import {
14
15
  loadPluginSetFromModule,
15
16
  resolvePluginModule
@@ -18,15 +19,15 @@ import {
18
19
  discoverInstalledPluginPackageContent,
19
20
  isValidPackageName,
20
21
  resolvePackageDir
21
- } from "./chunk-Q3XNY442.js";
22
- import "./chunk-EJN6G5A2.js";
22
+ } from "./chunk-6APU57E6.js";
23
+ import "./chunk-KF7522P3.js";
23
24
  import {
24
25
  JUNIOR_CONVERSATION_WORK_CALLBACK_ROUTE,
25
26
  JUNIOR_HEARTBEAT_CRON_SCHEDULE,
26
27
  JUNIOR_HEARTBEAT_ROUTE,
27
28
  JUNIOR_PLUGIN_TASK_CALLBACK_ROUTE
28
- } from "./chunk-OJ53FYVG.js";
29
- import "./chunk-ST6YNAXG.js";
29
+ } from "./chunk-FTMXFBDC.js";
30
+ import "./chunk-3DA7X2U3.js";
30
31
  import "./chunk-MLKGABMK.js";
31
32
 
32
33
  // src/nitro.ts
@@ -67,6 +67,7 @@ export interface TranscriptMessage {
67
67
  timestamp?: number;
68
68
  }
69
69
  export interface ConversationRunReport extends ConversationSummaryReport {
70
+ activity?: ConversationActivityReport[];
70
71
  transcriptAvailable: boolean;
71
72
  transcriptMetadata?: TranscriptMessage[];
72
73
  transcriptMessageCount?: number;
@@ -74,6 +75,35 @@ export interface ConversationRunReport extends ConversationSummaryReport {
74
75
  transcriptRedactionReason?: "non_public_conversation";
75
76
  transcript: TranscriptMessage[];
76
77
  }
78
+ export type ConversationActivityStatus = "aborted" | "completed" | "error" | "running" | "success";
79
+ interface ActivityPayloadMetadata {
80
+ inputKeys?: string[];
81
+ inputSizeBytes?: number;
82
+ inputSizeChars?: number;
83
+ inputType?: string;
84
+ }
85
+ export interface ConversationSubagentActivityReport {
86
+ type: "subagent";
87
+ createdAt: string;
88
+ endedAt?: string;
89
+ id: string;
90
+ outcome?: "success" | "error" | "aborted";
91
+ parentToolCallId?: string;
92
+ status: ConversationActivityStatus;
93
+ subagentKind: string;
94
+ }
95
+ export interface ConversationToolActivityReport extends ActivityPayloadMetadata {
96
+ type: "tool_execution";
97
+ args?: unknown;
98
+ createdAt: string;
99
+ id: string;
100
+ redacted?: boolean;
101
+ status: ConversationActivityStatus;
102
+ subagents: ConversationSubagentActivityReport[];
103
+ toolCallId: string;
104
+ toolName: string;
105
+ }
106
+ export type ConversationActivityReport = ConversationToolActivityReport | ConversationSubagentActivityReport;
77
107
  export interface ConversationReport {
78
108
  conversationId: string;
79
109
  /** Always-populated display title, computed the same way as per-run reports. */
@@ -1,6 +1,6 @@
1
1
  import type { PluginOperationalReport } from "@sentry/junior-plugin-api";
2
2
  import { type ConversationFeed, type PluginConversationSummary, type ConversationReport, type ConversationStatsReport } from "./reporting/conversations";
3
- export type { PluginConversationStatus, PluginConversations, PluginConversationSummary, ConversationFeed, ConversationReport, ConversationReportStatus, ConversationRunReport, ConversationStatsItem, ConversationStatsReport, ConversationSummaryReport, ConversationSurface, ConversationUsage, RequesterIdentity, TranscriptMessage, TranscriptPart, TranscriptPartType, TranscriptRole, } from "./reporting/conversations";
3
+ export type { PluginConversationStatus, PluginConversations, PluginConversationSummary, ConversationActivityReport, ConversationActivityStatus, ConversationFeed, ConversationReport, ConversationReportStatus, ConversationRunReport, ConversationSubagentActivityReport, ConversationStatsItem, ConversationStatsReport, ConversationSummaryReport, ConversationSurface, ConversationToolActivityReport, ConversationUsage, RequesterIdentity, TranscriptMessage, TranscriptPart, TranscriptPartType, TranscriptRole, } from "./reporting/conversations";
4
4
  export interface HealthReport {
5
5
  status: "ok";
6
6
  service: string;
package/dist/reporting.js CHANGED
@@ -6,45 +6,46 @@ import {
6
6
  getConversationDetails,
7
7
  getConversationDetailsForIds,
8
8
  resolveSlackConversationContextFromThreadId
9
- } from "./chunk-C2YBH4S6.js";
9
+ } from "./chunk-LX5GBMEP.js";
10
10
  import {
11
11
  buildSystemPrompt,
12
12
  getAgentTurnSessionRecord,
13
- listAgentTurnSessionSummariesForConversation
14
- } from "./chunk-QDQVOMBA.js";
13
+ listAgentTurnSessionSummariesForConversation,
14
+ loadActivityEntries
15
+ } from "./chunk-YA2JCC7G.js";
15
16
  import {
16
17
  getPluginOperationalReports
17
- } from "./chunk-SSWBYEFH.js";
18
- import "./chunk-RARSKPVT.js";
18
+ } from "./chunk-Y3YUOEAZ.js";
19
+ import "./chunk-GUO4EE7L.js";
19
20
  import {
20
21
  getConversationStore
21
- } from "./chunk-237T7XAN.js";
22
+ } from "./chunk-PQ2U2AO3.js";
22
23
  import "./chunk-G3E7SCME.js";
23
- import "./chunk-LXTPBU4K.js";
24
- import "./chunk-Q6XFTRV5.js";
24
+ import "./chunk-X2FL5ZH5.js";
25
+ import "./chunk-4XHCVBXH.js";
26
+ import "./chunk-ABRNFE3N.js";
25
27
  import {
26
28
  canExposeConversationPayload,
27
29
  parseSlackThreadId,
28
30
  resolveConversationPrivacy
29
- } from "./chunk-T77LUIX3.js";
31
+ } from "./chunk-DR75T7J3.js";
30
32
  import {
31
33
  discoverSkills
32
- } from "./chunk-Y3EG7S7P.js";
34
+ } from "./chunk-WCXVEQPI.js";
33
35
  import {
34
- getPluginPackageContent,
35
- getPluginProviders
36
- } from "./chunk-YLVJRYTD.js";
36
+ pluginCatalogRuntime
37
+ } from "./chunk-TW23AT22.js";
37
38
  import {
38
39
  toStoredSlackRequester
39
- } from "./chunk-VALUBQ7R.js";
40
+ } from "./chunk-ZPCGQRFJ.js";
40
41
  import {
41
42
  homeDir
42
- } from "./chunk-Q3XNY442.js";
43
+ } from "./chunk-6APU57E6.js";
44
+ import "./chunk-KF7522P3.js";
43
45
  import {
44
46
  isRecord
45
- } from "./chunk-EJN6G5A2.js";
46
- import "./chunk-OJ53FYVG.js";
47
- import "./chunk-ST6YNAXG.js";
47
+ } from "./chunk-FTMXFBDC.js";
48
+ import "./chunk-3DA7X2U3.js";
48
49
  import "./chunk-MLKGABMK.js";
49
50
 
50
51
  // src/reporting.ts
@@ -665,6 +666,86 @@ function redactTranscriptMessage(message) {
665
666
  parts: message.parts.map(redactTranscriptPart)
666
667
  };
667
668
  }
669
+ function toolResultStatuses(messages) {
670
+ const statuses = /* @__PURE__ */ new Map();
671
+ for (const message of messages) {
672
+ const record = message;
673
+ if (record.role !== "toolResult" || typeof record.toolCallId !== "string") {
674
+ continue;
675
+ }
676
+ statuses.set(record.toolCallId, record.isError ? "error" : "completed");
677
+ }
678
+ return statuses;
679
+ }
680
+ function activityPayloadFields(args, canExposePayload) {
681
+ if (args === void 0) {
682
+ return {};
683
+ }
684
+ return canExposePayload ? { args } : { redacted: true, ...redactedPayloadFields("input", args) };
685
+ }
686
+ function subagentActivity(entry, options) {
687
+ const end = options.end;
688
+ return {
689
+ type: "subagent",
690
+ id: entry.subagentInvocationId,
691
+ subagentKind: entry.subagentKind,
692
+ ...entry.parentToolCallId ? { parentToolCallId: entry.parentToolCallId } : {},
693
+ createdAt: new Date(entry.createdAtMs).toISOString(),
694
+ ...end ? {
695
+ endedAt: new Date(end.createdAtMs).toISOString(),
696
+ outcome: end.outcome,
697
+ status: end.outcome
698
+ } : { status: options.parentStatus ?? "running" }
699
+ };
700
+ }
701
+ function buildConversationActivity(args) {
702
+ const toolStatuses = toolResultStatuses(args.messages);
703
+ const subagentEnds = /* @__PURE__ */ new Map();
704
+ const subagentsByToolCallId = /* @__PURE__ */ new Map();
705
+ const orphanSubagents = [];
706
+ for (const entry of args.entries) {
707
+ if (entry.type === "subagent_ended") {
708
+ subagentEnds.set(entry.subagentInvocationId, entry);
709
+ }
710
+ }
711
+ for (const entry of args.entries) {
712
+ if (entry.type !== "subagent_started") {
713
+ continue;
714
+ }
715
+ const parentStatus = entry.parentToolCallId ? toolStatuses.get(entry.parentToolCallId) : void 0;
716
+ const activity = subagentActivity(entry, {
717
+ end: subagentEnds.get(entry.subagentInvocationId),
718
+ parentStatus
719
+ });
720
+ if (entry.parentToolCallId) {
721
+ subagentsByToolCallId.set(entry.parentToolCallId, [
722
+ ...subagentsByToolCallId.get(entry.parentToolCallId) ?? [],
723
+ activity
724
+ ]);
725
+ continue;
726
+ }
727
+ orphanSubagents.push(activity);
728
+ }
729
+ const rows = [];
730
+ for (const entry of args.entries) {
731
+ if (entry.type !== "tool_execution_started") {
732
+ continue;
733
+ }
734
+ rows.push({
735
+ type: "tool_execution",
736
+ id: entry.toolCallId,
737
+ toolCallId: entry.toolCallId,
738
+ toolName: entry.toolName,
739
+ createdAt: new Date(entry.createdAtMs).toISOString(),
740
+ status: toolStatuses.get(entry.toolCallId) ?? "running",
741
+ subagents: subagentsByToolCallId.get(entry.toolCallId) ?? [],
742
+ ...activityPayloadFields(entry.args, args.canExposePayload)
743
+ });
744
+ }
745
+ return [...rows, ...orphanSubagents].sort(
746
+ (left, right) => Date.parse(left.createdAt) - Date.parse(right.createdAt) || left.id.localeCompare(right.id)
747
+ );
748
+ }
668
749
  function isConversationMessageRole(role) {
669
750
  return role === "user" || role === "assistant";
670
751
  }
@@ -864,10 +945,13 @@ async function readConversationReport(conversationId, options = {}) {
864
945
  );
865
946
  const runs = await Promise.all(
866
947
  summaries.map(async (summary) => {
867
- const sessionRecord = await getAgentTurnSessionRecord(
868
- summary.conversationId,
869
- summary.sessionId
870
- );
948
+ const [sessionRecord, activityEntries] = await Promise.all([
949
+ getAgentTurnSessionRecord(summary.conversationId, summary.sessionId),
950
+ loadActivityEntries({
951
+ conversationId: summary.conversationId,
952
+ sessionId: summary.sessionId
953
+ })
954
+ ]);
871
955
  const scopedMessages = sessionRecord?.piMessages ? turnScopedMessages(
872
956
  sessionRecord.piMessages,
873
957
  sessionRecord.turnStartMessageIndex
@@ -876,6 +960,11 @@ async function readConversationReport(conversationId, options = {}) {
876
960
  const normalizedTranscript = scopedMessages.messages.map(
877
961
  normalizeTranscriptMessage
878
962
  );
963
+ const activity = buildConversationActivity({
964
+ canExposePayload: canExposeTranscript,
965
+ entries: activityEntries,
966
+ messages: scopedMessages.messages
967
+ });
879
968
  const transcriptMessageCount = countConversationMessages(normalizedTranscript);
880
969
  const transcript = canExposeTranscript ? [
881
970
  ...scopedMessages.startsAtRunBoundary && normalizedTranscript.length > 0 && sessionRecord?.source ? [systemPromptMessage(sessionRecord.source)] : [],
@@ -888,6 +977,7 @@ async function readConversationReport(conversationId, options = {}) {
888
977
  ...sessionReportFromSummary(summary, nowMs, details),
889
978
  ...traceId ? { traceId } : {},
890
979
  ...sentryTraceUrl ? { sentryTraceUrl } : {},
980
+ activity,
891
981
  transcriptAvailable: Boolean(sessionRecord) && canExposeTranscript,
892
982
  ...sessionRecord && transcriptMessageCount > 0 ? { transcriptMessageCount } : {},
893
983
  ...!canExposeTranscript ? {
@@ -911,6 +1001,7 @@ async function readConversationReport(conversationId, options = {}) {
911
1001
  const effectiveRuns = runs.length > 0 || !conversation ? runs : [
912
1002
  {
913
1003
  ...sessionReportFromConversation(conversation, nowMs, details),
1004
+ activity: [],
914
1005
  transcriptAvailable: false,
915
1006
  transcript: []
916
1007
  }
@@ -949,7 +1040,7 @@ async function readSkills() {
949
1040
  }));
950
1041
  }
951
1042
  async function readPlugins() {
952
- return getPluginProviders().map((plugin) => ({
1043
+ return pluginCatalogRuntime.getProviders().map((plugin) => ({
953
1044
  name: plugin.manifest.name
954
1045
  }));
955
1046
  }
@@ -972,7 +1063,7 @@ function createJuniorReporting() {
972
1063
  descriptionText: readDescriptionText(),
973
1064
  providers: plugins.map((plugin) => plugin.name),
974
1065
  skills,
975
- packagedContent: getPluginPackageContent()
1066
+ packagedContent: pluginCatalogRuntime.getPackageContent()
976
1067
  };
977
1068
  },
978
1069
  getPlugins: readPlugins,
@@ -14,35 +14,36 @@ import {
14
14
  startActiveTurn,
15
15
  updateConversationStats,
16
16
  upsertConversationMessage
17
- } from "./chunk-2MSW5BZY.js";
17
+ } from "./chunk-W2QGQCKG.js";
18
18
  import {
19
19
  coerceThreadConversationState
20
- } from "./chunk-Z4CIQ3EB.js";
21
- import "./chunk-PNGAJ75P.js";
20
+ } from "./chunk-66NX7MNW.js";
21
+ import "./chunk-3JKTVW4R.js";
22
22
  import "./chunk-KNFROR7R.js";
23
23
  import {
24
24
  commitMessages,
25
25
  loadProjection
26
- } from "./chunk-QDQVOMBA.js";
27
- import "./chunk-SSWBYEFH.js";
28
- import "./chunk-RARSKPVT.js";
29
- import "./chunk-237T7XAN.js";
26
+ } from "./chunk-YA2JCC7G.js";
27
+ import "./chunk-Y3YUOEAZ.js";
28
+ import "./chunk-GUO4EE7L.js";
29
+ import "./chunk-PQ2U2AO3.js";
30
30
  import "./chunk-G3E7SCME.js";
31
- import "./chunk-LXTPBU4K.js";
32
- import "./chunk-Q6XFTRV5.js";
31
+ import "./chunk-X2FL5ZH5.js";
32
+ import "./chunk-4XHCVBXH.js";
33
33
  import {
34
34
  stripRuntimeTurnContext,
35
35
  trimTrailingAssistantMessages
36
- } from "./chunk-T77LUIX3.js";
37
- import "./chunk-Y3EG7S7P.js";
38
- import "./chunk-YLVJRYTD.js";
39
- import "./chunk-VALUBQ7R.js";
40
- import "./chunk-Q3XNY442.js";
36
+ } from "./chunk-ABRNFE3N.js";
37
+ import "./chunk-DR75T7J3.js";
38
+ import "./chunk-WCXVEQPI.js";
39
+ import "./chunk-TW23AT22.js";
40
+ import "./chunk-ZPCGQRFJ.js";
41
+ import "./chunk-6APU57E6.js";
41
42
  import {
42
43
  logException
43
- } from "./chunk-EJN6G5A2.js";
44
- import "./chunk-OJ53FYVG.js";
45
- import "./chunk-ST6YNAXG.js";
44
+ } from "./chunk-KF7522P3.js";
45
+ import "./chunk-FTMXFBDC.js";
46
+ import "./chunk-3DA7X2U3.js";
46
47
  import "./chunk-MLKGABMK.js";
47
48
 
48
49
  // src/chat/local/runner.ts
@@ -11,8 +11,9 @@ import {
11
11
  startSpan,
12
12
  vercelAIIntegration,
13
13
  withActiveSpan,
14
- withScope
15
- } from "./chunk-ST6YNAXG.js";
14
+ withScope,
15
+ withStreamedSpan
16
+ } from "./chunk-3DA7X2U3.js";
16
17
  import "./chunk-MLKGABMK.js";
17
18
  export {
18
19
  captureException,
@@ -27,5 +28,6 @@ export {
27
28
  startSpan,
28
29
  vercelAIIntegration,
29
30
  withActiveSpan,
30
- withScope
31
+ withScope,
32
+ withStreamedSpan
31
33
  };
@@ -0,0 +1,15 @@
1
+ import {
2
+ validatePluginEgressCredentialHooks,
3
+ validatePluginRegistrations
4
+ } from "./chunk-FAGWUF44.js";
5
+ import "./chunk-TW23AT22.js";
6
+ import "./chunk-ZPCGQRFJ.js";
7
+ import "./chunk-6APU57E6.js";
8
+ import "./chunk-KF7522P3.js";
9
+ import "./chunk-FTMXFBDC.js";
10
+ import "./chunk-3DA7X2U3.js";
11
+ import "./chunk-MLKGABMK.js";
12
+ export {
13
+ validatePluginEgressCredentialHooks,
14
+ validatePluginRegistrations
15
+ };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sentry/junior",
3
- "version": "0.78.0",
3
+ "version": "0.80.0",
4
4
  "private": false,
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -70,7 +70,7 @@
70
70
  "pg": "^8.16.3",
71
71
  "yaml": "^2.9.0",
72
72
  "zod": "^4.4.3",
73
- "@sentry/junior-plugin-api": "0.78.0"
73
+ "@sentry/junior-plugin-api": "0.80.0"
74
74
  },
75
75
  "devDependencies": {
76
76
  "@emnapi/core": "^1.10.0",
@@ -86,9 +86,9 @@
86
86
  "typescript": "^6.0.3",
87
87
  "vercel": "^54.4.0",
88
88
  "vitest": "^4.1.7",
89
- "@sentry/junior-memory": "0.78.0",
90
89
  "@sentry/junior-testing": "0.0.0",
91
- "@sentry/junior-scheduler": "0.78.0"
90
+ "@sentry/junior-scheduler": "0.80.0",
91
+ "@sentry/junior-memory": "0.80.0"
92
92
  },
93
93
  "scripts": {
94
94
  "build": "tsup && tsc -p tsconfig.build.json --emitDeclarationOnly",
@@ -1,17 +0,0 @@
1
- import {
2
- closeDb,
3
- getConversationStore,
4
- getDb
5
- } from "./chunk-237T7XAN.js";
6
- import "./chunk-Q6XFTRV5.js";
7
- import "./chunk-T77LUIX3.js";
8
- import "./chunk-VALUBQ7R.js";
9
- import "./chunk-EJN6G5A2.js";
10
- import "./chunk-OJ53FYVG.js";
11
- import "./chunk-ST6YNAXG.js";
12
- import "./chunk-MLKGABMK.js";
13
- export {
14
- closeDb,
15
- getConversationStore,
16
- getDb
17
- };
@@ -1,46 +0,0 @@
1
- import {
2
- createPluginBroker,
3
- getPluginCapabilityProviders,
4
- getPluginCatalogSignature,
5
- getPluginDefinition,
6
- getPluginDisplayName,
7
- getPluginForSkillPath,
8
- getPluginMcpProviders,
9
- getPluginMigrationRoots,
10
- getPluginOAuthConfig,
11
- getPluginPackageContent,
12
- getPluginProviders,
13
- getPluginRuntimeDependencies,
14
- getPluginRuntimePostinstall,
15
- getPluginSkillRoots,
16
- isPluginCapability,
17
- isPluginConfigKey,
18
- isPluginProvider,
19
- setPluginCatalogConfig
20
- } from "./chunk-YLVJRYTD.js";
21
- import "./chunk-VALUBQ7R.js";
22
- import "./chunk-Q3XNY442.js";
23
- import "./chunk-EJN6G5A2.js";
24
- import "./chunk-OJ53FYVG.js";
25
- import "./chunk-ST6YNAXG.js";
26
- import "./chunk-MLKGABMK.js";
27
- export {
28
- createPluginBroker,
29
- getPluginCapabilityProviders,
30
- getPluginCatalogSignature,
31
- getPluginDefinition,
32
- getPluginDisplayName,
33
- getPluginForSkillPath,
34
- getPluginMcpProviders,
35
- getPluginMigrationRoots,
36
- getPluginOAuthConfig,
37
- getPluginPackageContent,
38
- getPluginProviders,
39
- getPluginRuntimeDependencies,
40
- getPluginRuntimePostinstall,
41
- getPluginSkillRoots,
42
- isPluginCapability,
43
- isPluginConfigKey,
44
- isPluginProvider,
45
- setPluginCatalogConfig
46
- };
@@ -1,15 +0,0 @@
1
- import {
2
- validatePluginEgressCredentialHooks,
3
- validatePluginRegistrations
4
- } from "./chunk-KIDP757T.js";
5
- import "./chunk-YLVJRYTD.js";
6
- import "./chunk-VALUBQ7R.js";
7
- import "./chunk-Q3XNY442.js";
8
- import "./chunk-EJN6G5A2.js";
9
- import "./chunk-OJ53FYVG.js";
10
- import "./chunk-ST6YNAXG.js";
11
- import "./chunk-MLKGABMK.js";
12
- export {
13
- validatePluginEgressCredentialHooks,
14
- validatePluginRegistrations
15
- };