@sentry/junior 0.72.0 → 0.74.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 (109) hide show
  1. package/bin/junior.mjs +12 -10
  2. package/dist/api-reference.d.ts +1 -1
  3. package/dist/app.d.ts +11 -2
  4. package/dist/app.js +1233 -13143
  5. package/dist/chat/agent-dispatch/runner.d.ts +2 -0
  6. package/dist/chat/agent-dispatch/store.d.ts +2 -2
  7. package/dist/chat/agent-dispatch/types.d.ts +6 -3
  8. package/dist/chat/agent-dispatch/validation.d.ts +2 -3
  9. package/dist/chat/app/production.d.ts +11 -1
  10. package/dist/chat/app/services.d.ts +7 -0
  11. package/dist/chat/config.d.ts +3 -0
  12. package/dist/chat/conversations/configured.d.ts +5 -0
  13. package/dist/chat/conversations/sql/migrations.d.ts +11 -0
  14. package/dist/chat/conversations/sql/schema/conversations.d.ts +435 -0
  15. package/dist/chat/conversations/sql/schema/destinations.d.ts +200 -0
  16. package/dist/chat/conversations/sql/schema/identities.d.ts +214 -0
  17. package/dist/chat/conversations/sql/schema/migrations.d.ts +58 -0
  18. package/dist/chat/conversations/sql/schema/timestamps.d.ts +1 -0
  19. package/dist/chat/conversations/sql/schema.d.ts +910 -0
  20. package/dist/chat/conversations/sql/store.d.ts +52 -0
  21. package/dist/chat/conversations/state.d.ts +4 -0
  22. package/dist/chat/conversations/store.d.ts +57 -0
  23. package/dist/chat/destination.d.ts +3 -1
  24. package/dist/chat/ingress/slack-webhook.d.ts +2 -0
  25. package/dist/chat/logging.d.ts +3 -0
  26. package/dist/chat/oauth-flow.d.ts +1 -1
  27. package/dist/chat/plugins/agent-hooks.d.ts +2 -2
  28. package/dist/chat/plugins/registry.d.ts +2 -0
  29. package/dist/chat/plugins/types.d.ts +2 -0
  30. package/dist/chat/prompt.d.ts +4 -1
  31. package/dist/chat/requester.d.ts +19 -12
  32. package/dist/chat/respond.d.ts +7 -3
  33. package/dist/chat/runtime/agent-continue-runner.d.ts +1 -1
  34. package/dist/chat/runtime/reply-executor.d.ts +3 -1
  35. package/dist/chat/runtime/slack-resume.d.ts +3 -3
  36. package/dist/chat/runtime/slack-runtime.d.ts +13 -3
  37. package/dist/chat/runtime/turn.d.ts +15 -1
  38. package/dist/chat/sandbox/egress-credentials.d.ts +5 -2
  39. package/dist/chat/sandbox/egress-policy.d.ts +5 -1
  40. package/dist/chat/sandbox/egress-proxy.d.ts +2 -0
  41. package/dist/chat/sandbox/egress-schemas.d.ts +4 -0
  42. package/dist/chat/sandbox/egress-session.d.ts +3 -1
  43. package/dist/chat/sandbox/egress-tracing.d.ts +7 -0
  44. package/dist/chat/sandbox/sandbox.d.ts +2 -0
  45. package/dist/chat/sandbox/session.d.ts +3 -2
  46. package/dist/chat/services/auth-pause-response.d.ts +1 -1
  47. package/dist/chat/services/auth-pause.d.ts +2 -1
  48. package/dist/chat/services/mcp-auth-orchestration.d.ts +7 -6
  49. package/dist/chat/services/message-actor-identity.d.ts +2 -2
  50. package/dist/chat/services/pending-auth.d.ts +2 -0
  51. package/dist/chat/services/plugin-auth-orchestration.d.ts +14 -12
  52. package/dist/chat/services/turn-result.d.ts +3 -0
  53. package/dist/chat/slack/user.d.ts +2 -2
  54. package/dist/chat/sql/db.d.ts +20 -0
  55. package/dist/chat/sql/neon.d.ts +9 -0
  56. package/dist/chat/sql/schema.d.ts +906 -0
  57. package/dist/chat/state/turn-session.d.ts +3 -0
  58. package/dist/chat/task-execution/slack-work.d.ts +2 -0
  59. package/dist/chat/task-execution/state.d.ts +209 -0
  60. package/dist/chat/task-execution/store.d.ts +30 -114
  61. package/dist/chat/task-execution/vercel-callback.d.ts +2 -0
  62. package/dist/chat/task-execution/worker.d.ts +2 -0
  63. package/dist/chat/tools/slack/canvas-tools.d.ts +3 -2
  64. package/dist/chat/tools/slack/channel-list-messages.d.ts +2 -2
  65. package/dist/chat/tools/slack/channel-post-message.d.ts +3 -2
  66. package/dist/chat/tools/slack/context.d.ts +15 -2
  67. package/dist/chat/tools/slack/message-add-reaction.d.ts +3 -2
  68. package/dist/chat/tools/slack/thread-read.d.ts +2 -2
  69. package/dist/chat/tools/types.d.ts +19 -19
  70. package/dist/chunk-2LUZA3LY.js +275 -0
  71. package/dist/{chunk-6GEYPE6T.js → chunk-3BYAPS6B.js} +30 -6
  72. package/dist/{chunk-VLIO6RQR.js → chunk-6UP2Z2RZ.js} +4 -4
  73. package/dist/{chunk-GB3AL54K.js → chunk-7Q5YOUUT.js} +10 -2
  74. package/dist/{chunk-PP7AGSBU.js → chunk-CYUI7JU5.js} +18 -8
  75. package/dist/{chunk-3FYPXHPL.js → chunk-F6HWCPOC.js} +1 -1
  76. package/dist/{chunk-ZJQPA67D.js → chunk-GM7HTXYC.js} +230 -224
  77. package/dist/{chunk-VSNA5KAB.js → chunk-HYHKTFG2.js} +1338 -1499
  78. package/dist/chunk-JL2SLRAT.js +1970 -0
  79. package/dist/{chunk-4JXCSGSA.js → chunk-M4FLLXXD.js} +1 -1
  80. package/dist/{chunk-55XEZFGD.js → chunk-OR6NQJ5E.js} +2 -2
  81. package/dist/chunk-SJHUF3DP.js +43 -0
  82. package/dist/chunk-SQGMG7OD.js +12801 -0
  83. package/dist/{chunk-QUXPUKBH.js → chunk-Y7X25LFY.js} +1 -1
  84. package/dist/{chunk-ICKIDP7G.js → chunk-YOHFWWBV.js} +1 -1
  85. package/dist/{chunk-XC33FJZN.js → chunk-YRDS7VKO.js} +25 -4
  86. package/dist/cli/chat.js +205 -0
  87. package/dist/cli/check.js +9 -10
  88. package/dist/cli/init.js +1 -1
  89. package/dist/cli/run.js +10 -2
  90. package/dist/cli/snapshot-warmup.js +7 -7
  91. package/dist/cli/upgrade.js +81 -11
  92. package/dist/deployment.d.ts +4 -0
  93. package/dist/handlers/agent-dispatch.d.ts +6 -1
  94. package/dist/handlers/mcp-oauth-callback.d.ts +6 -1
  95. package/dist/handlers/oauth-callback.d.ts +6 -1
  96. package/dist/handlers/sandbox-egress-proxy.d.ts +2 -0
  97. package/dist/handlers/webhooks.d.ts +4 -2
  98. package/dist/instrumentation.js +17 -3
  99. package/dist/nitro.js +9 -10
  100. package/dist/reporting/conversations.d.ts +13 -3
  101. package/dist/reporting.d.ts +9 -2
  102. package/dist/reporting.js +114 -48
  103. package/dist/runner-27NP2TEO.js +259 -0
  104. package/dist/vercel.d.ts +6 -1
  105. package/dist/vercel.js +1 -1
  106. package/package.json +9 -4
  107. package/dist/chunk-6YY4Q3D4.js +0 -12
  108. package/dist/chunk-HNMUVGSR.js +0 -1119
  109. package/dist/chunk-Z3YD6NHK.js +0 -12
@@ -1,9 +1,11 @@
1
1
  import { generateAssistantReply as generateAssistantReplyImpl } from "@/chat/respond";
2
+ import type { SandboxEgressTracePropagationConfig } from "@/chat/sandbox/egress-tracing";
2
3
  import { scheduleDispatchCallback } from "./signing";
3
4
  import type { DispatchCallback } from "./types";
4
5
  export interface AgentDispatchRunnerDeps {
5
6
  generateAssistantReply?: typeof generateAssistantReplyImpl;
6
7
  scheduleCallback?: typeof scheduleDispatchCallback;
8
+ tracePropagation?: SandboxEgressTracePropagationConfig;
7
9
  }
8
10
  /** Run one serverless slice for a core-owned agent dispatch. */
9
11
  export declare function runAgentDispatchSlice(callback: DispatchCallback, deps?: AgentDispatchRunnerDeps): Promise<void>;
@@ -1,12 +1,12 @@
1
1
  import type { StateAdapter } from "chat";
2
- import { type Destination } from "@sentry/junior-plugin-api";
2
+ import { type SlackDestination } from "@sentry/junior-plugin-api";
3
3
  import type { BoundDispatchOptions, DispatchCreateResult, DispatchProjection, DispatchRecord, DispatchStatus } from "./types";
4
4
  /** Keep dispatch persistence keys consistent across callback and recovery paths. */
5
5
  export declare function getDispatchStorageKey(id: string): string;
6
6
  /** Parse persisted dispatch records before recovery, callbacks, or projections use them. */
7
7
  export declare function parseDispatchRecord(value: unknown): DispatchRecord | undefined;
8
8
  /** Map a dispatch destination to the lock key that serializes Slack delivery. */
9
- export declare function getDispatchDestinationLockId(destination: Destination): string;
9
+ export declare function getDispatchDestinationLockId(destination: SlackDestination): string;
10
10
  /** Return the isolated persisted conversation key for one dispatch run. */
11
11
  export declare function getDispatchConversationId(dispatch: Pick<DispatchRecord, "id">): string;
12
12
  /** Give dispatch slices stable turn ids for resumability and trace correlation. */
@@ -1,7 +1,10 @@
1
- import type { Destination, DispatchOptions } from "@sentry/junior-plugin-api";
1
+ import type { DispatchOptions, SlackDestination } from "@sentry/junior-plugin-api";
2
2
  import type { CredentialSubject, CredentialSystemActor } from "@/chat/credentials/context";
3
3
  export type DispatchStatus = "pending" | "running" | "awaiting_resume" | "completed" | "failed" | "blocked";
4
- export interface BoundDispatchOptions extends Omit<DispatchOptions, "credentialSubject"> {
4
+ export type SlackDispatchOptions = Omit<DispatchOptions, "destination"> & {
5
+ destination: SlackDestination;
6
+ };
7
+ export interface BoundDispatchOptions extends Omit<SlackDispatchOptions, "credentialSubject"> {
5
8
  credentialSubject?: CredentialSubject;
6
9
  }
7
10
  export interface DispatchRecord {
@@ -9,7 +12,7 @@ export interface DispatchRecord {
9
12
  attempt: number;
10
13
  createdAtMs: number;
11
14
  credentialSubject?: CredentialSubject;
12
- destination: Destination;
15
+ destination: SlackDestination;
13
16
  errorMessage?: string;
14
17
  id: string;
15
18
  idempotencyKey: string;
@@ -1,6 +1,5 @@
1
- import { type DispatchOptions } from "@sentry/junior-plugin-api";
2
- import type { BoundDispatchOptions } from "./types";
1
+ import type { BoundDispatchOptions, SlackDispatchOptions } from "./types";
3
2
  /** Validate plugin-provided dispatch options before core persists them. */
4
- export declare function validateDispatchOptions(options: unknown): asserts options is DispatchOptions;
3
+ export declare function validateDispatchOptions(options: unknown): asserts options is SlackDispatchOptions;
5
4
  /** Verify runtime-owned access requirements for delegated dispatch credentials. */
6
5
  export declare function verifyDispatchCredentialSubjectAccess(options: BoundDispatchOptions): Promise<void>;
@@ -2,11 +2,21 @@ import type { SlackAdapter } from "@chat-adapter/slack";
2
2
  import { createSlackRuntime } from "@/chat/app/factory";
3
3
  import type { SlackWebhookServices } from "@/chat/ingress/slack-webhook";
4
4
  import type { VercelConversationWorkCallbackOptions } from "@/chat/task-execution/vercel-callback";
5
+ import type { JuniorRuntimeServiceOverrides } from "@/chat/app/services";
6
+ import type { ConversationStore } from "@/chat/conversations/store";
5
7
  /** Return the lazily initialized production Slack adapter. */
6
8
  export declare function getProductionSlackAdapter(): SlackAdapter;
7
9
  /** Return the lazily initialized production Slack runtime. */
8
10
  export declare function getProductionSlackRuntime(): ReturnType<typeof createSlackRuntime>;
11
+ /** Return the production conversation store for current config. */
12
+ export declare function getProductionConversationStore(): ConversationStore;
13
+ /** Create production-backed services for Slack webhook ingress. */
14
+ export declare function createProductionSlackWebhookServices(options?: {
15
+ services?: JuniorRuntimeServiceOverrides;
16
+ }): SlackWebhookServices;
9
17
  /** Return production services for Slack webhook ingress. */
10
18
  export declare function getProductionSlackWebhookServices(): SlackWebhookServices;
11
19
  /** Return the production queue callback options for conversation work. */
12
- export declare function getProductionConversationWorkOptions(): VercelConversationWorkCallbackOptions;
20
+ export declare function createProductionConversationWorkOptions(options?: {
21
+ services?: JuniorRuntimeServiceOverrides;
22
+ }): VercelConversationWorkCallbackOptions;
@@ -1,3 +1,5 @@
1
+ import { generateAssistantReply as generateAssistantReplyImpl } from "@/chat/respond";
2
+ import type { SandboxEgressTracePropagationConfig } from "@/chat/sandbox/egress-tracing";
1
3
  import { type ConversationMemoryDeps, type ConversationMemoryService } from "@/chat/services/conversation-memory";
2
4
  import { type ContextCompactor, type ContextCompactorDeps } from "@/chat/services/context-compaction";
3
5
  import { type SubscribedReplyPolicy, type SubscribedReplyPolicyDeps } from "@/chat/services/subscribed-reply-policy";
@@ -15,6 +17,11 @@ export interface JuniorRuntimeServiceOverrides {
15
17
  contextCompactor?: Partial<ContextCompactorDeps>;
16
18
  replyExecutor?: Partial<Omit<ReplyExecutorServices, "generateThreadTitle">>;
17
19
  subscribedReplyPolicy?: Partial<SubscribedReplyPolicyDeps>;
20
+ sandbox?: {
21
+ tracePropagation?: SandboxEgressTracePropagationConfig;
22
+ };
18
23
  visionContext?: Partial<VisionContextDeps>;
19
24
  }
25
+ /** Apply app-owned sandbox egress trace config unless a turn overrides it. */
26
+ export declare function withSandboxTracePropagation(generateReply: typeof generateAssistantReplyImpl, tracePropagation?: SandboxEgressTracePropagationConfig): typeof generateAssistantReplyImpl;
20
27
  export declare function createJuniorRuntimeServices(overrides?: JuniorRuntimeServiceOverrides): JuniorRuntimeServices;
@@ -22,6 +22,9 @@ export interface AdvisorConfig {
22
22
  export interface ChatConfig {
23
23
  bot: BotConfig;
24
24
  functionMaxDurationSeconds: number;
25
+ sql: {
26
+ databaseUrl?: string;
27
+ };
25
28
  slack: {
26
29
  botToken?: string;
27
30
  clientId?: string;
@@ -0,0 +1,5 @@
1
+ import type { ConversationStore } from "./store";
2
+ /** Return the process-configured conversation record store. */
3
+ export declare function getConfiguredConversationStore(): ConversationStore;
4
+ /** Return whether conversation records use the configured SQL store. */
5
+ export declare function hasConfiguredSqlConversationStore(): boolean;
@@ -0,0 +1,11 @@
1
+ import { schema } from "./schema";
2
+ import type { JuniorSqlMigrationExecutor } from "@/chat/sql/db";
3
+ export interface Migration {
4
+ checksum: string;
5
+ id: string;
6
+ statements: readonly string[];
7
+ }
8
+ export declare const migrations: readonly [Migration];
9
+ export { schema };
10
+ /** Apply pending SQL schema migrations for queryable conversation records. */
11
+ export declare function migrateSchema(executor: JuniorSqlMigrationExecutor, migrationList?: readonly Migration[]): Promise<void>;
@@ -0,0 +1,435 @@
1
+ import type { ConversationSource, ConversationStatus } from "@/chat/conversations/store";
2
+ export declare const juniorConversations: import("drizzle-orm/pg-core").PgTableWithColumns<{
3
+ name: "junior_conversations";
4
+ schema: undefined;
5
+ columns: {
6
+ conversationId: import("drizzle-orm/pg-core").PgColumn<{
7
+ name: "conversation_id";
8
+ tableName: "junior_conversations";
9
+ dataType: "string";
10
+ columnType: "PgText";
11
+ data: string;
12
+ driverParam: string;
13
+ notNull: true;
14
+ hasDefault: false;
15
+ isPrimaryKey: true;
16
+ isAutoincrement: false;
17
+ hasRuntimeDefault: false;
18
+ enumValues: [string, ...string[]];
19
+ baseColumn: never;
20
+ identity: undefined;
21
+ generated: undefined;
22
+ }, {}, {}>;
23
+ schemaVersion: import("drizzle-orm/pg-core").PgColumn<{
24
+ name: "schema_version";
25
+ tableName: "junior_conversations";
26
+ dataType: "number";
27
+ columnType: "PgInteger";
28
+ data: number;
29
+ driverParam: string | number;
30
+ notNull: true;
31
+ hasDefault: true;
32
+ isPrimaryKey: false;
33
+ isAutoincrement: false;
34
+ hasRuntimeDefault: false;
35
+ enumValues: undefined;
36
+ baseColumn: never;
37
+ identity: undefined;
38
+ generated: undefined;
39
+ }, {}, {}>;
40
+ source: import("drizzle-orm/pg-core").PgColumn<{
41
+ name: "source";
42
+ tableName: "junior_conversations";
43
+ dataType: "string";
44
+ columnType: "PgText";
45
+ data: ConversationSource;
46
+ driverParam: string;
47
+ notNull: false;
48
+ hasDefault: false;
49
+ isPrimaryKey: false;
50
+ isAutoincrement: false;
51
+ hasRuntimeDefault: false;
52
+ enumValues: [string, ...string[]];
53
+ baseColumn: never;
54
+ identity: undefined;
55
+ generated: undefined;
56
+ }, {}, {
57
+ $type: ConversationSource;
58
+ }>;
59
+ originType: import("drizzle-orm/pg-core").PgColumn<{
60
+ name: "origin_type";
61
+ tableName: "junior_conversations";
62
+ dataType: "string";
63
+ columnType: "PgText";
64
+ data: string;
65
+ driverParam: string;
66
+ notNull: false;
67
+ hasDefault: false;
68
+ isPrimaryKey: false;
69
+ isAutoincrement: false;
70
+ hasRuntimeDefault: false;
71
+ enumValues: [string, ...string[]];
72
+ baseColumn: never;
73
+ identity: undefined;
74
+ generated: undefined;
75
+ }, {}, {}>;
76
+ originId: import("drizzle-orm/pg-core").PgColumn<{
77
+ name: "origin_id";
78
+ tableName: "junior_conversations";
79
+ dataType: "string";
80
+ columnType: "PgText";
81
+ data: string;
82
+ driverParam: string;
83
+ notNull: false;
84
+ hasDefault: false;
85
+ isPrimaryKey: false;
86
+ isAutoincrement: false;
87
+ hasRuntimeDefault: false;
88
+ enumValues: [string, ...string[]];
89
+ baseColumn: never;
90
+ identity: undefined;
91
+ generated: undefined;
92
+ }, {}, {}>;
93
+ originRunId: import("drizzle-orm/pg-core").PgColumn<{
94
+ name: "origin_run_id";
95
+ tableName: "junior_conversations";
96
+ dataType: "string";
97
+ columnType: "PgText";
98
+ data: string;
99
+ driverParam: string;
100
+ notNull: false;
101
+ hasDefault: false;
102
+ isPrimaryKey: false;
103
+ isAutoincrement: false;
104
+ hasRuntimeDefault: false;
105
+ enumValues: [string, ...string[]];
106
+ baseColumn: never;
107
+ identity: undefined;
108
+ generated: undefined;
109
+ }, {}, {}>;
110
+ destinationId: import("drizzle-orm/pg-core").PgColumn<{
111
+ name: "destination_id";
112
+ tableName: "junior_conversations";
113
+ dataType: "string";
114
+ columnType: "PgText";
115
+ data: string;
116
+ driverParam: string;
117
+ notNull: false;
118
+ hasDefault: false;
119
+ isPrimaryKey: false;
120
+ isAutoincrement: false;
121
+ hasRuntimeDefault: false;
122
+ enumValues: [string, ...string[]];
123
+ baseColumn: never;
124
+ identity: undefined;
125
+ generated: undefined;
126
+ }, {}, {}>;
127
+ destination: import("drizzle-orm/pg-core").PgColumn<{
128
+ name: "destination_json";
129
+ tableName: "junior_conversations";
130
+ dataType: "json";
131
+ columnType: "PgJsonb";
132
+ data: {
133
+ platform: "slack";
134
+ teamId: string;
135
+ channelId: string;
136
+ } | {
137
+ platform: "local";
138
+ conversationId: string;
139
+ };
140
+ driverParam: unknown;
141
+ notNull: false;
142
+ hasDefault: false;
143
+ isPrimaryKey: false;
144
+ isAutoincrement: false;
145
+ hasRuntimeDefault: false;
146
+ enumValues: undefined;
147
+ baseColumn: never;
148
+ identity: undefined;
149
+ generated: undefined;
150
+ }, {}, {
151
+ $type: {
152
+ platform: "slack";
153
+ teamId: string;
154
+ channelId: string;
155
+ } | {
156
+ platform: "local";
157
+ conversationId: string;
158
+ };
159
+ }>;
160
+ actorIdentityId: import("drizzle-orm/pg-core").PgColumn<{
161
+ name: "actor_identity_id";
162
+ tableName: "junior_conversations";
163
+ dataType: "string";
164
+ columnType: "PgText";
165
+ data: string;
166
+ driverParam: string;
167
+ notNull: false;
168
+ hasDefault: false;
169
+ isPrimaryKey: false;
170
+ isAutoincrement: false;
171
+ hasRuntimeDefault: false;
172
+ enumValues: [string, ...string[]];
173
+ baseColumn: never;
174
+ identity: undefined;
175
+ generated: undefined;
176
+ }, {}, {}>;
177
+ requesterIdentityId: import("drizzle-orm/pg-core").PgColumn<{
178
+ name: "requester_identity_id";
179
+ tableName: "junior_conversations";
180
+ dataType: "string";
181
+ columnType: "PgText";
182
+ data: string;
183
+ driverParam: string;
184
+ notNull: false;
185
+ hasDefault: false;
186
+ isPrimaryKey: false;
187
+ isAutoincrement: false;
188
+ hasRuntimeDefault: false;
189
+ enumValues: [string, ...string[]];
190
+ baseColumn: never;
191
+ identity: undefined;
192
+ generated: undefined;
193
+ }, {}, {}>;
194
+ creatorIdentityId: import("drizzle-orm/pg-core").PgColumn<{
195
+ name: "creator_identity_id";
196
+ tableName: "junior_conversations";
197
+ dataType: "string";
198
+ columnType: "PgText";
199
+ data: string;
200
+ driverParam: string;
201
+ notNull: false;
202
+ hasDefault: false;
203
+ isPrimaryKey: false;
204
+ isAutoincrement: false;
205
+ hasRuntimeDefault: false;
206
+ enumValues: [string, ...string[]];
207
+ baseColumn: never;
208
+ identity: undefined;
209
+ generated: undefined;
210
+ }, {}, {}>;
211
+ credentialSubjectIdentityId: import("drizzle-orm/pg-core").PgColumn<{
212
+ name: "credential_subject_identity_id";
213
+ tableName: "junior_conversations";
214
+ dataType: "string";
215
+ columnType: "PgText";
216
+ data: string;
217
+ driverParam: string;
218
+ notNull: false;
219
+ hasDefault: false;
220
+ isPrimaryKey: false;
221
+ isAutoincrement: false;
222
+ hasRuntimeDefault: false;
223
+ enumValues: [string, ...string[]];
224
+ baseColumn: never;
225
+ identity: undefined;
226
+ generated: undefined;
227
+ }, {}, {}>;
228
+ requester: import("drizzle-orm/pg-core").PgColumn<{
229
+ name: "requester_json";
230
+ tableName: "junior_conversations";
231
+ dataType: "json";
232
+ columnType: "PgJsonb";
233
+ data: {
234
+ email?: string | undefined;
235
+ fullName?: string | undefined;
236
+ platform?: "slack" | undefined;
237
+ slackUserId?: string | undefined;
238
+ slackUserName?: string | undefined;
239
+ teamId?: string | undefined;
240
+ };
241
+ driverParam: unknown;
242
+ notNull: false;
243
+ hasDefault: false;
244
+ isPrimaryKey: false;
245
+ isAutoincrement: false;
246
+ hasRuntimeDefault: false;
247
+ enumValues: undefined;
248
+ baseColumn: never;
249
+ identity: undefined;
250
+ generated: undefined;
251
+ }, {}, {
252
+ $type: {
253
+ email?: string | undefined;
254
+ fullName?: string | undefined;
255
+ platform?: "slack" | undefined;
256
+ slackUserId?: string | undefined;
257
+ slackUserName?: string | undefined;
258
+ teamId?: string | undefined;
259
+ };
260
+ }>;
261
+ channelName: import("drizzle-orm/pg-core").PgColumn<{
262
+ name: "channel_name";
263
+ tableName: "junior_conversations";
264
+ dataType: "string";
265
+ columnType: "PgText";
266
+ data: string;
267
+ driverParam: string;
268
+ notNull: false;
269
+ hasDefault: false;
270
+ isPrimaryKey: false;
271
+ isAutoincrement: false;
272
+ hasRuntimeDefault: false;
273
+ enumValues: [string, ...string[]];
274
+ baseColumn: never;
275
+ identity: undefined;
276
+ generated: undefined;
277
+ }, {}, {}>;
278
+ title: import("drizzle-orm/pg-core").PgColumn<{
279
+ name: "title";
280
+ tableName: "junior_conversations";
281
+ dataType: "string";
282
+ columnType: "PgText";
283
+ data: string;
284
+ driverParam: string;
285
+ notNull: false;
286
+ hasDefault: false;
287
+ isPrimaryKey: false;
288
+ isAutoincrement: false;
289
+ hasRuntimeDefault: false;
290
+ enumValues: [string, ...string[]];
291
+ baseColumn: never;
292
+ identity: undefined;
293
+ generated: undefined;
294
+ }, {}, {}>;
295
+ createdAt: import("drizzle-orm/pg-core").PgColumn<{
296
+ name: string;
297
+ tableName: "junior_conversations";
298
+ dataType: "date";
299
+ columnType: "PgTimestamp";
300
+ data: Date;
301
+ driverParam: string;
302
+ notNull: true;
303
+ hasDefault: false;
304
+ isPrimaryKey: false;
305
+ isAutoincrement: false;
306
+ hasRuntimeDefault: false;
307
+ enumValues: undefined;
308
+ baseColumn: never;
309
+ identity: undefined;
310
+ generated: undefined;
311
+ }, {}, {}>;
312
+ lastActivityAt: import("drizzle-orm/pg-core").PgColumn<{
313
+ name: string;
314
+ tableName: "junior_conversations";
315
+ dataType: "date";
316
+ columnType: "PgTimestamp";
317
+ data: Date;
318
+ driverParam: string;
319
+ notNull: true;
320
+ hasDefault: false;
321
+ isPrimaryKey: false;
322
+ isAutoincrement: false;
323
+ hasRuntimeDefault: false;
324
+ enumValues: undefined;
325
+ baseColumn: never;
326
+ identity: undefined;
327
+ generated: undefined;
328
+ }, {}, {}>;
329
+ updatedAt: import("drizzle-orm/pg-core").PgColumn<{
330
+ name: string;
331
+ tableName: "junior_conversations";
332
+ dataType: "date";
333
+ columnType: "PgTimestamp";
334
+ data: Date;
335
+ driverParam: string;
336
+ notNull: true;
337
+ hasDefault: false;
338
+ isPrimaryKey: false;
339
+ isAutoincrement: false;
340
+ hasRuntimeDefault: false;
341
+ enumValues: undefined;
342
+ baseColumn: never;
343
+ identity: undefined;
344
+ generated: undefined;
345
+ }, {}, {}>;
346
+ executionUpdatedAt: import("drizzle-orm/pg-core").PgColumn<{
347
+ name: string;
348
+ tableName: "junior_conversations";
349
+ dataType: "date";
350
+ columnType: "PgTimestamp";
351
+ data: Date;
352
+ driverParam: string;
353
+ notNull: false;
354
+ hasDefault: false;
355
+ isPrimaryKey: false;
356
+ isAutoincrement: false;
357
+ hasRuntimeDefault: false;
358
+ enumValues: undefined;
359
+ baseColumn: never;
360
+ identity: undefined;
361
+ generated: undefined;
362
+ }, {}, {}>;
363
+ executionStatus: import("drizzle-orm/pg-core").PgColumn<{
364
+ name: "execution_status";
365
+ tableName: "junior_conversations";
366
+ dataType: "string";
367
+ columnType: "PgText";
368
+ data: ConversationStatus;
369
+ driverParam: string;
370
+ notNull: true;
371
+ hasDefault: false;
372
+ isPrimaryKey: false;
373
+ isAutoincrement: false;
374
+ hasRuntimeDefault: false;
375
+ enumValues: [string, ...string[]];
376
+ baseColumn: never;
377
+ identity: undefined;
378
+ generated: undefined;
379
+ }, {}, {
380
+ $type: ConversationStatus;
381
+ }>;
382
+ runId: import("drizzle-orm/pg-core").PgColumn<{
383
+ name: "run_id";
384
+ tableName: "junior_conversations";
385
+ dataType: "string";
386
+ columnType: "PgText";
387
+ data: string;
388
+ driverParam: string;
389
+ notNull: false;
390
+ hasDefault: false;
391
+ isPrimaryKey: false;
392
+ isAutoincrement: false;
393
+ hasRuntimeDefault: false;
394
+ enumValues: [string, ...string[]];
395
+ baseColumn: never;
396
+ identity: undefined;
397
+ generated: undefined;
398
+ }, {}, {}>;
399
+ lastCheckpointAt: import("drizzle-orm/pg-core").PgColumn<{
400
+ name: string;
401
+ tableName: "junior_conversations";
402
+ dataType: "date";
403
+ columnType: "PgTimestamp";
404
+ data: Date;
405
+ driverParam: string;
406
+ notNull: false;
407
+ hasDefault: false;
408
+ isPrimaryKey: false;
409
+ isAutoincrement: false;
410
+ hasRuntimeDefault: false;
411
+ enumValues: undefined;
412
+ baseColumn: never;
413
+ identity: undefined;
414
+ generated: undefined;
415
+ }, {}, {}>;
416
+ lastEnqueuedAt: import("drizzle-orm/pg-core").PgColumn<{
417
+ name: string;
418
+ tableName: "junior_conversations";
419
+ dataType: "date";
420
+ columnType: "PgTimestamp";
421
+ data: Date;
422
+ driverParam: string;
423
+ notNull: false;
424
+ hasDefault: false;
425
+ isPrimaryKey: false;
426
+ isAutoincrement: false;
427
+ hasRuntimeDefault: false;
428
+ enumValues: undefined;
429
+ baseColumn: never;
430
+ identity: undefined;
431
+ generated: undefined;
432
+ }, {}, {}>;
433
+ };
434
+ dialect: "pg";
435
+ }>;