@sentry/junior 0.94.0 → 0.95.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.
- package/dist/{agent-hooks-ZG7IDOIN.js → agent-hooks-FTQ5EGPO.js} +9 -10
- package/dist/api/people/list.js +7 -7
- package/dist/api/people/profile.js +7 -7
- package/dist/api/people/shared.d.ts +2 -2
- package/dist/api-reference.d.ts +1 -1
- package/dist/app.js +427 -196
- package/dist/{catalog-runtime-NZHMSMYC.js → catalog-runtime-2D7IVKUT.js} +3 -3
- package/dist/chat/advisor-request.d.ts +4 -0
- package/dist/chat/agent/request.d.ts +2 -0
- package/dist/chat/agent/resume.d.ts +2 -0
- package/dist/chat/conversations/history.d.ts +128 -0
- package/dist/chat/conversations/legacy-import.d.ts +38 -0
- package/dist/chat/conversations/messages.d.ts +39 -0
- package/dist/chat/conversations/projection.d.ts +94 -0
- package/dist/chat/conversations/retention.d.ts +36 -0
- package/dist/chat/conversations/sql/conversation-row.d.ts +14 -0
- package/dist/chat/conversations/sql/history.d.ts +4 -0
- package/dist/chat/conversations/sql/legacy-history-import.d.ts +55 -0
- package/dist/chat/conversations/sql/messages.d.ts +4 -0
- package/dist/chat/conversations/sql/migrations.d.ts +14 -3
- package/dist/chat/conversations/sql/purge.d.ts +53 -0
- package/dist/chat/conversations/sql/store.d.ts +7 -2
- package/dist/chat/conversations/store.d.ts +19 -0
- package/dist/chat/conversations/visible-compactions.d.ts +11 -0
- package/dist/chat/conversations/visible-messages.d.ts +47 -0
- package/dist/chat/db.d.ts +12 -1
- package/dist/chat/identities/sql.d.ts +1 -1
- package/dist/chat/logging.d.ts +2 -1
- package/dist/chat/resource-events/store.d.ts +2 -1
- package/dist/chat/runtime/reply-executor.d.ts +8 -0
- package/dist/chat/runtime/thread-state.d.ts +2 -0
- package/dist/chat/sandbox/resources.d.ts +4 -0
- package/dist/chat/services/mcp-auth-orchestration.d.ts +8 -0
- package/dist/chat/services/plugin-auth-orchestration.d.ts +12 -0
- package/dist/chat/services/turn-session-record.d.ts +14 -2
- package/dist/chat/sleep.d.ts +2 -0
- package/dist/chat/state/conversation.d.ts +7 -4
- package/dist/chat/state/session-log.d.ts +23 -1
- package/dist/chat/state/turn-session.d.ts +6 -0
- package/dist/chat/tool-support/private-trace-result.d.ts +4 -0
- package/dist/chat/tool-support/zod-tool.d.ts +1 -0
- package/dist/chat/tools/advisor/tool.d.ts +9 -4
- package/dist/chat/tools/definition.d.ts +2 -0
- package/dist/chat/tools/execution/tool-error-handler.d.ts +2 -2
- package/dist/chat/tools/system-time.d.ts +8 -0
- package/dist/chat/xml.d.ts +2 -0
- package/dist/{chunk-NYWPISSO.js → chunk-2XXEKR44.js} +1 -1
- package/dist/{chunk-QGEWC27H.js → chunk-5XMNOD3S.js} +5 -7
- package/dist/{chunk-NFXSLTYG.js → chunk-6ONME5IG.js} +864 -62
- package/dist/{chunk-LFLTJQVR.js → chunk-7FBGKXPE.js} +4 -0
- package/dist/{chunk-MC4ZZE4Q.js → chunk-AYP4ERVZ.js} +1 -1
- package/dist/{chunk-GHGPTPBL.js → chunk-B7PUBQQM.js} +1 -1
- package/dist/chunk-CM5EZD5F.js +17 -0
- package/dist/chunk-CRRBJ3JP.js +1037 -0
- package/dist/{chunk-G3E7SCME.js → chunk-CZEX6KIQ.js} +23 -0
- package/dist/{chunk-TNUUATT7.js → chunk-E3E2XNCN.js} +2 -2
- package/dist/{chunk-LNCREA5Z.js → chunk-EKNJM5IG.js} +3 -127
- package/dist/{chunk-NAPITCZ6.js → chunk-GUE7HTNR.js} +251 -6
- package/dist/{chunk-BTH37NCU.js → chunk-GVOUCI2O.js} +1 -1
- package/dist/{chunk-YYBX2BD5.js → chunk-GY34VGP5.js} +1 -1
- package/dist/{chunk-KRMANDHI.js → chunk-HCXXB35T.js} +1481 -349
- package/dist/{chunk-YTNPU7I2.js → chunk-HDTO3A74.js} +2 -2
- package/dist/{chunk-YJ4OPVNA.js → chunk-HZNJLKKI.js} +1 -1
- package/dist/{chunk-HDNWZMUN.js → chunk-KDPCGVIT.js} +116 -51
- package/dist/chunk-N4RNJ32C.js +48 -0
- package/dist/{chunk-UUB3D2XI.js → chunk-NSCHU54X.js} +8 -10
- package/dist/{chunk-PFXC67GJ.js → chunk-RAIB6WSG.js} +6 -80
- package/dist/chunk-WAGQ377B.js +724 -0
- package/dist/{chunk-6H4PP63X.js → chunk-WCMQJE4F.js} +24 -14
- package/dist/{chunk-S6QKIGRM.js → chunk-WPOJ443W.js} +15 -25
- package/dist/{chunk-MAVOJ54A.js → chunk-XX4N4E6C.js} +25 -388
- package/dist/cli/chat.js +24 -23
- package/dist/cli/check.js +4 -4
- package/dist/cli/plugins.js +11 -12
- package/dist/cli/snapshot-warmup.js +7 -8
- package/dist/cli/upgrade.js +78 -17
- package/dist/db/schema/agent-steps.d.ts +134 -0
- package/dist/db/schema/conversation-messages.d.ts +153 -0
- package/dist/{chat/conversations/sql → db}/schema/conversations.d.ts +34 -0
- package/dist/{chat/conversations/sql → db}/schema.d.ts +319 -8
- package/dist/db-W55B74OP.js +24 -0
- package/dist/deployment.d.ts +2 -0
- package/dist/handlers/retention.d.ts +6 -0
- package/dist/instrumentation.js +16 -3
- package/dist/legacy-import-ZPLGLAFD.js +17 -0
- package/dist/nitro.js +14 -4
- package/dist/reporting/conversations/activity.d.ts +40 -0
- package/dist/reporting/conversations/context.d.ts +8 -0
- package/dist/reporting/conversations/details.d.ts +6 -0
- package/dist/reporting/conversations/index.d.ts +4 -0
- package/dist/reporting/conversations/shared.d.ts +9 -0
- package/dist/reporting/conversations/statistics.d.ts +4 -0
- package/dist/reporting/conversations/summaries.d.ts +17 -0
- package/dist/reporting/conversations/transcript.d.ts +28 -0
- package/dist/reporting/conversations/types.d.ts +178 -0
- package/dist/reporting/conversations.d.ts +1 -178
- package/dist/reporting.d.ts +4 -3
- package/dist/reporting.js +603 -827
- package/dist/{runner-XAZPJNAQ.js → runner-OOSBDYRK.js} +35 -41
- package/dist/{validation-KYAWETI4.js → validation-QCGRFRFZ.js} +4 -4
- package/migrations/README.md +32 -0
- package/migrations/meta/0000_snapshot.json +978 -0
- package/migrations/meta/_journal.json +13 -0
- package/package.json +10 -7
- package/dist/chat/sql/schema.d.ts +0 -1049
- package/dist/chat/state/conversation-details.d.ts +0 -47
- package/dist/chunk-7STN2ZSK.js +0 -250
- package/dist/chunk-LE5ANBUZ.js +0 -1040
- package/dist/chunk-QL66APYJ.js +0 -1377
- package/dist/db-YDN6AFJH.js +0 -18
- /package/dist/{chat/sql → db}/db.d.ts +0 -0
- /package/dist/{chat/sql → db}/executor.d.ts +0 -0
- /package/dist/{chat/sql → db}/neon.d.ts +0 -0
- /package/dist/{chat/sql → db}/postgres.d.ts +0 -0
- /package/dist/{chat/conversations/sql → db}/schema/destinations.d.ts +0 -0
- /package/dist/{chat/conversations/sql → db}/schema/identities.d.ts +0 -0
- /package/dist/{chat/conversations/sql → db}/schema/migrations.d.ts +0 -0
- /package/dist/{chat/conversations/sql → db}/schema/timestamps.d.ts +0 -0
- /package/dist/{chat/conversations/sql → db}/schema/users.d.ts +0 -0
|
@@ -0,0 +1,178 @@
|
|
|
1
|
+
import type { PluginConversationStatus, PluginConversations, PluginConversationSummary } from "@sentry/junior-plugin-api";
|
|
2
|
+
export type { PluginConversationStatus, PluginConversations, PluginConversationSummary, };
|
|
3
|
+
export type ConversationReportStatus = "active" | "completed" | "failed" | "hung" | "superseded";
|
|
4
|
+
export type ConversationSurface = "api" | "internal" | "scheduler" | "slack";
|
|
5
|
+
export interface ConversationUsage {
|
|
6
|
+
inputTokens?: number;
|
|
7
|
+
outputTokens?: number;
|
|
8
|
+
cachedInputTokens?: number;
|
|
9
|
+
cacheCreationTokens?: number;
|
|
10
|
+
totalTokens?: number;
|
|
11
|
+
}
|
|
12
|
+
export interface ActorIdentity {
|
|
13
|
+
email?: string;
|
|
14
|
+
fullName?: string;
|
|
15
|
+
slackUserId?: string;
|
|
16
|
+
slackUserName?: string;
|
|
17
|
+
}
|
|
18
|
+
export interface ConversationSummaryReport {
|
|
19
|
+
/** Always-populated display title, with privacy redaction applied first. */
|
|
20
|
+
displayTitle: string;
|
|
21
|
+
cumulativeDurationMs: number;
|
|
22
|
+
cumulativeUsage?: ConversationUsage;
|
|
23
|
+
conversationId: string;
|
|
24
|
+
id: string;
|
|
25
|
+
status: ConversationReportStatus;
|
|
26
|
+
startedAt: string;
|
|
27
|
+
lastSeenAt: string;
|
|
28
|
+
lastProgressAt: string;
|
|
29
|
+
completedAt?: string;
|
|
30
|
+
surface: ConversationSurface;
|
|
31
|
+
actorIdentity?: ActorIdentity;
|
|
32
|
+
channel?: string;
|
|
33
|
+
channelName?: string;
|
|
34
|
+
channelNameRedacted?: boolean;
|
|
35
|
+
sentryTraceUrl?: string;
|
|
36
|
+
traceId?: string;
|
|
37
|
+
}
|
|
38
|
+
export type TranscriptPartType = "text" | "thinking" | "tool_call" | "tool_result" | "unknown";
|
|
39
|
+
export interface TranscriptPart {
|
|
40
|
+
bytes?: number;
|
|
41
|
+
chars?: number;
|
|
42
|
+
id?: string;
|
|
43
|
+
input?: unknown;
|
|
44
|
+
inputKeys?: string[];
|
|
45
|
+
inputSizeBytes?: number;
|
|
46
|
+
inputSizeChars?: number;
|
|
47
|
+
inputType?: string;
|
|
48
|
+
name?: string;
|
|
49
|
+
output?: unknown;
|
|
50
|
+
outputKeys?: string[];
|
|
51
|
+
outputSizeBytes?: number;
|
|
52
|
+
outputSizeChars?: number;
|
|
53
|
+
outputType?: string;
|
|
54
|
+
redacted?: boolean;
|
|
55
|
+
sourceType?: string;
|
|
56
|
+
text?: string;
|
|
57
|
+
type: TranscriptPartType;
|
|
58
|
+
}
|
|
59
|
+
export type TranscriptRole = "assistant" | "system" | "tool" | "toolResult" | "unknown" | "user";
|
|
60
|
+
export interface TranscriptMessage {
|
|
61
|
+
parts: TranscriptPart[];
|
|
62
|
+
role: TranscriptRole;
|
|
63
|
+
timestamp?: number;
|
|
64
|
+
}
|
|
65
|
+
export interface ConversationRunReport extends ConversationSummaryReport {
|
|
66
|
+
activity?: ConversationActivityReport[];
|
|
67
|
+
modelId?: string;
|
|
68
|
+
reasoningLevel?: string;
|
|
69
|
+
transcriptAvailable: boolean;
|
|
70
|
+
transcriptMetadata?: TranscriptMessage[];
|
|
71
|
+
transcriptMessageCount?: number;
|
|
72
|
+
transcriptRedacted?: boolean;
|
|
73
|
+
transcriptRedactionReason?: "non_public_conversation";
|
|
74
|
+
/**
|
|
75
|
+
* True when retention purged this conversation's content. Expiry under
|
|
76
|
+
* retention is distinct from privacy redaction: the content aged out and was
|
|
77
|
+
* deleted, so no metadata is derived from it (see data-redaction-policy.md).
|
|
78
|
+
*/
|
|
79
|
+
transcriptExpired?: boolean;
|
|
80
|
+
/** When the content was purged (ISO 8601); present only with `transcriptExpired`. */
|
|
81
|
+
transcriptExpiredAt?: string;
|
|
82
|
+
transcript: TranscriptMessage[];
|
|
83
|
+
}
|
|
84
|
+
export type ConversationActivityStatus = "aborted" | "completed" | "error" | "running" | "success";
|
|
85
|
+
export interface ConversationSubagentActivityReport {
|
|
86
|
+
type: "subagent";
|
|
87
|
+
createdAt: string;
|
|
88
|
+
endedAt?: string;
|
|
89
|
+
id: string;
|
|
90
|
+
modelId?: string;
|
|
91
|
+
outcome?: "success" | "error" | "aborted";
|
|
92
|
+
parentToolCallId?: string;
|
|
93
|
+
reasoningLevel?: string;
|
|
94
|
+
status: ConversationActivityStatus;
|
|
95
|
+
subagentKind: string;
|
|
96
|
+
transcriptAvailable?: boolean;
|
|
97
|
+
}
|
|
98
|
+
export interface ConversationToolActivityReport {
|
|
99
|
+
type: "tool_execution";
|
|
100
|
+
args?: unknown;
|
|
101
|
+
createdAt: string;
|
|
102
|
+
id: string;
|
|
103
|
+
inputKeys?: string[];
|
|
104
|
+
inputSizeBytes?: number;
|
|
105
|
+
inputSizeChars?: number;
|
|
106
|
+
inputType?: string;
|
|
107
|
+
redacted?: boolean;
|
|
108
|
+
status: ConversationActivityStatus;
|
|
109
|
+
subagents: ConversationSubagentActivityReport[];
|
|
110
|
+
toolCallId: string;
|
|
111
|
+
toolName: string;
|
|
112
|
+
}
|
|
113
|
+
export type ConversationActivityReport = ConversationToolActivityReport | ConversationSubagentActivityReport;
|
|
114
|
+
export interface ConversationReport {
|
|
115
|
+
conversationId: string;
|
|
116
|
+
/** Always-populated display title, computed the same way as per-run reports. */
|
|
117
|
+
displayTitle: string;
|
|
118
|
+
generatedAt: string;
|
|
119
|
+
sentryConversationUrl?: string;
|
|
120
|
+
runs: ConversationRunReport[];
|
|
121
|
+
}
|
|
122
|
+
export interface ConversationSubagentTranscriptReport {
|
|
123
|
+
type: "subagent";
|
|
124
|
+
createdAt: string;
|
|
125
|
+
endedAt?: string;
|
|
126
|
+
id: string;
|
|
127
|
+
modelId?: string;
|
|
128
|
+
outcome?: "success" | "error" | "aborted";
|
|
129
|
+
parentToolCallId?: string;
|
|
130
|
+
reasoningLevel?: string;
|
|
131
|
+
status: ConversationActivityStatus;
|
|
132
|
+
subagentConversationId?: string;
|
|
133
|
+
subagentKind: string;
|
|
134
|
+
subagentSentryConversationUrl?: string;
|
|
135
|
+
transcript: TranscriptMessage[];
|
|
136
|
+
transcriptAvailable: boolean;
|
|
137
|
+
transcriptMessageCount?: number;
|
|
138
|
+
transcriptRedacted?: boolean;
|
|
139
|
+
transcriptRedactionReason?: "non_public_conversation";
|
|
140
|
+
/** True when retention purged the parent conversation's content. */
|
|
141
|
+
transcriptExpired?: boolean;
|
|
142
|
+
/** When the content was purged (ISO 8601); present only with `transcriptExpired`. */
|
|
143
|
+
transcriptExpiredAt?: string;
|
|
144
|
+
unavailableReason?: "missing_transcript_range" | "missing_transcript_ref" | "not_found";
|
|
145
|
+
}
|
|
146
|
+
export interface ConversationFeed {
|
|
147
|
+
conversations: ConversationSummaryReport[];
|
|
148
|
+
source: "conversation_index";
|
|
149
|
+
generatedAt: string;
|
|
150
|
+
}
|
|
151
|
+
export interface ConversationStatsItem {
|
|
152
|
+
active: number;
|
|
153
|
+
conversations: number;
|
|
154
|
+
durationMs: number;
|
|
155
|
+
failed: number;
|
|
156
|
+
hung: number;
|
|
157
|
+
label: string;
|
|
158
|
+
runs: number;
|
|
159
|
+
tokens?: number;
|
|
160
|
+
}
|
|
161
|
+
export interface ConversationStatsReport {
|
|
162
|
+
active: number;
|
|
163
|
+
conversations: number;
|
|
164
|
+
durationMs: number;
|
|
165
|
+
failed: number;
|
|
166
|
+
generatedAt: string;
|
|
167
|
+
hung: number;
|
|
168
|
+
locations: ConversationStatsItem[];
|
|
169
|
+
actors: ConversationStatsItem[];
|
|
170
|
+
sampleLimit: number;
|
|
171
|
+
sampleSize: number;
|
|
172
|
+
source: "conversation_index";
|
|
173
|
+
tokens?: number;
|
|
174
|
+
truncated: boolean;
|
|
175
|
+
runs: number;
|
|
176
|
+
windowEnd: string;
|
|
177
|
+
windowStart: string;
|
|
178
|
+
}
|
|
@@ -1,178 +1 @@
|
|
|
1
|
-
|
|
2
|
-
import type { ConversationStore } from "@/chat/conversations/store";
|
|
3
|
-
export type { PluginConversationStatus, PluginConversations, PluginConversationSummary, };
|
|
4
|
-
interface ConversationReaderOptions {
|
|
5
|
-
conversationStore?: ConversationStore;
|
|
6
|
-
}
|
|
7
|
-
export type ConversationReportStatus = "active" | "completed" | "failed" | "hung" | "superseded";
|
|
8
|
-
export type ConversationSurface = "api" | "internal" | "scheduler" | "slack";
|
|
9
|
-
export interface ConversationUsage {
|
|
10
|
-
inputTokens?: number;
|
|
11
|
-
outputTokens?: number;
|
|
12
|
-
cachedInputTokens?: number;
|
|
13
|
-
cacheCreationTokens?: number;
|
|
14
|
-
totalTokens?: number;
|
|
15
|
-
}
|
|
16
|
-
export interface ActorIdentity {
|
|
17
|
-
email?: string;
|
|
18
|
-
fullName?: string;
|
|
19
|
-
slackUserId?: string;
|
|
20
|
-
slackUserName?: string;
|
|
21
|
-
}
|
|
22
|
-
export interface ConversationSummaryReport {
|
|
23
|
-
/** Always-populated display title, with privacy redaction applied first. */
|
|
24
|
-
displayTitle: string;
|
|
25
|
-
cumulativeDurationMs: number;
|
|
26
|
-
cumulativeUsage?: ConversationUsage;
|
|
27
|
-
conversationId: string;
|
|
28
|
-
id: string;
|
|
29
|
-
status: ConversationReportStatus;
|
|
30
|
-
startedAt: string;
|
|
31
|
-
lastSeenAt: string;
|
|
32
|
-
lastProgressAt: string;
|
|
33
|
-
completedAt?: string;
|
|
34
|
-
surface: ConversationSurface;
|
|
35
|
-
actorIdentity?: ActorIdentity;
|
|
36
|
-
channel?: string;
|
|
37
|
-
channelName?: string;
|
|
38
|
-
channelNameRedacted?: boolean;
|
|
39
|
-
sentryTraceUrl?: string;
|
|
40
|
-
traceId?: string;
|
|
41
|
-
}
|
|
42
|
-
export type TranscriptPartType = "text" | "thinking" | "tool_call" | "tool_result" | "unknown";
|
|
43
|
-
export interface TranscriptPart {
|
|
44
|
-
bytes?: number;
|
|
45
|
-
chars?: number;
|
|
46
|
-
id?: string;
|
|
47
|
-
input?: unknown;
|
|
48
|
-
inputKeys?: string[];
|
|
49
|
-
inputSizeBytes?: number;
|
|
50
|
-
inputSizeChars?: number;
|
|
51
|
-
inputType?: string;
|
|
52
|
-
name?: string;
|
|
53
|
-
output?: unknown;
|
|
54
|
-
outputKeys?: string[];
|
|
55
|
-
outputSizeBytes?: number;
|
|
56
|
-
outputSizeChars?: number;
|
|
57
|
-
outputType?: string;
|
|
58
|
-
redacted?: boolean;
|
|
59
|
-
sourceType?: string;
|
|
60
|
-
text?: string;
|
|
61
|
-
type: TranscriptPartType;
|
|
62
|
-
}
|
|
63
|
-
export type TranscriptRole = "assistant" | "system" | "tool" | "toolResult" | "unknown" | "user";
|
|
64
|
-
export interface TranscriptMessage {
|
|
65
|
-
parts: TranscriptPart[];
|
|
66
|
-
role: TranscriptRole;
|
|
67
|
-
timestamp?: number;
|
|
68
|
-
}
|
|
69
|
-
export interface ConversationRunReport extends ConversationSummaryReport {
|
|
70
|
-
activity?: ConversationActivityReport[];
|
|
71
|
-
transcriptAvailable: boolean;
|
|
72
|
-
transcriptMetadata?: TranscriptMessage[];
|
|
73
|
-
transcriptMessageCount?: number;
|
|
74
|
-
transcriptRedacted?: boolean;
|
|
75
|
-
transcriptRedactionReason?: "non_public_conversation";
|
|
76
|
-
transcript: TranscriptMessage[];
|
|
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
|
-
transcriptAvailable?: boolean;
|
|
95
|
-
}
|
|
96
|
-
export interface ConversationToolActivityReport extends ActivityPayloadMetadata {
|
|
97
|
-
type: "tool_execution";
|
|
98
|
-
args?: unknown;
|
|
99
|
-
createdAt: string;
|
|
100
|
-
id: string;
|
|
101
|
-
redacted?: boolean;
|
|
102
|
-
status: ConversationActivityStatus;
|
|
103
|
-
subagents: ConversationSubagentActivityReport[];
|
|
104
|
-
toolCallId: string;
|
|
105
|
-
toolName: string;
|
|
106
|
-
}
|
|
107
|
-
export type ConversationActivityReport = ConversationToolActivityReport | ConversationSubagentActivityReport;
|
|
108
|
-
export interface ConversationReport {
|
|
109
|
-
conversationId: string;
|
|
110
|
-
/** Always-populated display title, computed the same way as per-run reports. */
|
|
111
|
-
displayTitle: string;
|
|
112
|
-
generatedAt: string;
|
|
113
|
-
sentryConversationUrl?: string;
|
|
114
|
-
runs: ConversationRunReport[];
|
|
115
|
-
}
|
|
116
|
-
export interface ConversationSubagentTranscriptReport {
|
|
117
|
-
type: "subagent";
|
|
118
|
-
createdAt: string;
|
|
119
|
-
endedAt?: string;
|
|
120
|
-
id: string;
|
|
121
|
-
outcome?: "success" | "error" | "aborted";
|
|
122
|
-
parentToolCallId?: string;
|
|
123
|
-
status: ConversationActivityStatus;
|
|
124
|
-
subagentConversationId?: string;
|
|
125
|
-
subagentKind: string;
|
|
126
|
-
subagentSentryConversationUrl?: string;
|
|
127
|
-
transcript: TranscriptMessage[];
|
|
128
|
-
transcriptAvailable: boolean;
|
|
129
|
-
transcriptMessageCount?: number;
|
|
130
|
-
transcriptRedacted?: boolean;
|
|
131
|
-
transcriptRedactionReason?: "non_public_conversation";
|
|
132
|
-
unavailableReason?: "missing_transcript_range" | "missing_transcript_ref" | "not_found";
|
|
133
|
-
}
|
|
134
|
-
export interface ConversationFeed {
|
|
135
|
-
conversations: ConversationSummaryReport[];
|
|
136
|
-
source: "conversation_index";
|
|
137
|
-
generatedAt: string;
|
|
138
|
-
}
|
|
139
|
-
export interface ConversationStatsItem {
|
|
140
|
-
active: number;
|
|
141
|
-
conversations: number;
|
|
142
|
-
durationMs: number;
|
|
143
|
-
failed: number;
|
|
144
|
-
hung: number;
|
|
145
|
-
label: string;
|
|
146
|
-
runs: number;
|
|
147
|
-
tokens?: number;
|
|
148
|
-
}
|
|
149
|
-
export interface ConversationStatsReport {
|
|
150
|
-
active: number;
|
|
151
|
-
conversations: number;
|
|
152
|
-
durationMs: number;
|
|
153
|
-
failed: number;
|
|
154
|
-
generatedAt: string;
|
|
155
|
-
hung: number;
|
|
156
|
-
locations: ConversationStatsItem[];
|
|
157
|
-
actors: ConversationStatsItem[];
|
|
158
|
-
sampleLimit: number;
|
|
159
|
-
sampleSize: number;
|
|
160
|
-
source: "conversation_index";
|
|
161
|
-
tokens?: number;
|
|
162
|
-
truncated: boolean;
|
|
163
|
-
runs: number;
|
|
164
|
-
windowEnd: string;
|
|
165
|
-
windowStart: string;
|
|
166
|
-
}
|
|
167
|
-
/** Read the recent conversation feed for reporting consumers. */
|
|
168
|
-
export declare function readConversationFeed(options?: ConversationReaderOptions): Promise<ConversationFeed>;
|
|
169
|
-
/** Read aggregate conversation statistics for reporting consumers. */
|
|
170
|
-
export declare function readConversationStatsReport(options?: ConversationReaderOptions): Promise<ConversationStatsReport>;
|
|
171
|
-
/** List recent conversation summaries for plugin operational reports. */
|
|
172
|
-
export declare function listRecentConversationSummaries(options?: {
|
|
173
|
-
limit?: number;
|
|
174
|
-
} & ConversationReaderOptions): Promise<PluginConversationSummary[]>;
|
|
175
|
-
/** Read one conversation transcript for reporting consumers. */
|
|
176
|
-
export declare function readConversationReport(conversationId: string, options?: ConversationReaderOptions): Promise<ConversationReport>;
|
|
177
|
-
/** Read one child-agent transcript through its parent conversation run. */
|
|
178
|
-
export declare function readConversationSubagentTranscriptReport(conversationId: string, runId: string, subagentId: string, options?: ConversationReaderOptions): Promise<ConversationSubagentTranscriptReport>;
|
|
1
|
+
export * from "./conversations/index";
|
package/dist/reporting.d.ts
CHANGED
|
@@ -62,9 +62,10 @@ export interface JuniorReporting {
|
|
|
62
62
|
/**
|
|
63
63
|
* Read one conversation transcript for reporting consumers.
|
|
64
64
|
*
|
|
65
|
-
*
|
|
66
|
-
*
|
|
67
|
-
* source
|
|
65
|
+
* Transcript messages and activity steps come from SQL (`junior_agent_steps`
|
|
66
|
+
* / `junior_conversation_messages`); the API should stay compatible with a
|
|
67
|
+
* future Sentry trace-history source, so avoid fields that require store
|
|
68
|
+
* internals.
|
|
68
69
|
*/
|
|
69
70
|
getConversation(conversationId: string): Promise<ConversationReport>;
|
|
70
71
|
/** Load a child-agent transcript only when an operator opens that subagent. */
|