@sentry/junior 0.182.0 → 0.183.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 (86) hide show
  1. package/dist/{agent-hooks-3S25UIHO.js → agent-hooks-SNRBZYAU.js} +11 -11
  2. package/dist/api/code/overview.d.ts +35 -0
  3. package/dist/api/code/routes.d.ts +4 -0
  4. package/dist/api/schema/code.d.ts +75 -0
  5. package/dist/api/schema.d.ts +2 -0
  6. package/dist/api/schema.js +9 -1
  7. package/dist/api.js +258 -134
  8. package/dist/app.js +71 -48
  9. package/dist/{catalog-runtime-ESLMBQBV.js → catalog-runtime-3I3JOIIH.js} +4 -4
  10. package/dist/chat/agent-invocations/store.d.ts +4 -2
  11. package/dist/chat/agent-invocations/work.d.ts +1 -3
  12. package/dist/chat/app/factory.d.ts +3 -3
  13. package/dist/chat/app/services.d.ts +3 -3
  14. package/dist/chat/code/publisher.d.ts +3 -0
  15. package/dist/chat/code/store.d.ts +9 -0
  16. package/dist/chat/event-tasks/store.d.ts +10 -0
  17. package/dist/chat/ingress/slack-webhook.d.ts +1 -1
  18. package/dist/chat/plugins/agent-hooks.d.ts +5 -0
  19. package/dist/chat/{runtime/slack-runtime.d.ts → providers/slack/runtime.d.ts} +2 -2
  20. package/dist/chat/{runtime/reply-executor.d.ts → providers/slack/turn.d.ts} +10 -9
  21. package/dist/chat/resource-events/store.d.ts +12 -0
  22. package/dist/chat/runtime/turn-execution.d.ts +30 -0
  23. package/dist/chat/slack/dispatch-turn.d.ts +12 -14
  24. package/dist/chat/task-execution/slack-work.d.ts +1 -1
  25. package/dist/{chunk-SXOZIG5X.js → chunk-24OJZ5OU.js} +6 -6
  26. package/dist/{chunk-SVFSYQMT.js → chunk-2ADFGSUS.js} +1 -1
  27. package/dist/{chunk-GGYA5NPN.js → chunk-2EPYYVJC.js} +8 -8
  28. package/dist/{chunk-KGMHUDVF.js → chunk-35PM4YY5.js} +6 -6
  29. package/dist/{chunk-3ENUMZNG.js → chunk-37IQ6DGU.js} +3 -3
  30. package/dist/{chunk-3THPTNN6.js → chunk-3HJ4F4L7.js} +4 -4
  31. package/dist/{chunk-3NFHI2NA.js → chunk-3L7CWDQQ.js} +1 -1
  32. package/dist/{chunk-CVBIM4Z3.js → chunk-4WGFWHWP.js} +1 -1
  33. package/dist/{chunk-YHL2L2ZZ.js → chunk-56XONJPF.js} +1 -1
  34. package/dist/{chunk-44BQ3TSK.js → chunk-6UXDTPEN.js} +233 -173
  35. package/dist/{chunk-2CEOXDG2.js → chunk-AHMWPFIW.js} +174 -6
  36. package/dist/{chunk-6TSWXBTQ.js → chunk-AX3UDIMA.js} +3 -3
  37. package/dist/{chunk-S35OZMSL.js → chunk-AYW7J6K4.js} +13 -13
  38. package/dist/{chunk-WOIALVN2.js → chunk-E3OBGRHN.js} +1 -1
  39. package/dist/{chunk-4DZ62L36.js → chunk-EENQGEIP.js} +1 -1
  40. package/dist/{chunk-UUMBHORH.js → chunk-FJMTMGBC.js} +1 -1
  41. package/dist/{chunk-Z7ALSQS3.js → chunk-G2B2XZQW.js} +1 -1
  42. package/dist/{chunk-TEFNHMO2.js → chunk-HUK5XIZL.js} +4 -4
  43. package/dist/{chunk-LT4QYGKM.js → chunk-IO6KFXYE.js} +160 -97
  44. package/dist/{chunk-JIOKUIAS.js → chunk-KTXOGLNE.js} +2 -2
  45. package/dist/{chunk-LHQK5XCU.js → chunk-LMNMMESF.js} +2 -2
  46. package/dist/{chunk-UQP54CXZ.js → chunk-LZBPGX5A.js} +1 -1
  47. package/dist/{chunk-PQES5LB5.js → chunk-PLZT45VC.js} +5 -5
  48. package/dist/{chunk-V5UZCCNW.js → chunk-QI5JW5AG.js} +6 -6
  49. package/dist/{chunk-A7THOQ6N.js → chunk-QZV76CM4.js} +21 -21
  50. package/dist/{chunk-LB4FWMCV.js → chunk-R767Y7QV.js} +183 -155
  51. package/dist/{chunk-MJISSOWB.js → chunk-SQHFVIMZ.js} +1 -1
  52. package/dist/{chunk-BDDWVY32.js → chunk-T5MTGX2E.js} +19 -19
  53. package/dist/{chunk-DZR3L74W.js → chunk-V64JCZUV.js} +3 -3
  54. package/dist/{chunk-VHMAFMHB.js → chunk-VOV3SCM3.js} +1 -1
  55. package/dist/{chunk-BZD4ADQH.js → chunk-W46NIB5H.js} +1 -1
  56. package/dist/{chunk-QHALFHZA.js → chunk-W5JMPEBO.js} +9 -9
  57. package/dist/{chunk-D6OHGAIO.js → chunk-WOKJRLM2.js} +5 -5
  58. package/dist/chunk-WVIA7V3M.js +975 -0
  59. package/dist/{chunk-UKIHNBBD.js → chunk-X52ESOBP.js} +3 -3
  60. package/dist/cli/chat.js +33 -35
  61. package/dist/cli/check.js +5 -5
  62. package/dist/cli/plugins.js +12 -12
  63. package/dist/cli/snapshot-create.js +9 -9
  64. package/dist/cli/upgrade.js +6 -6
  65. package/dist/db/schema/code.d.ts +367 -0
  66. package/dist/db/schema.d.ts +367 -1
  67. package/dist/{db-NYIWZ4L5.js → db-K2VMNLHQ.js} +6 -6
  68. package/dist/instrumentation.js +3 -3
  69. package/dist/nitro.js +6 -6
  70. package/dist/{oauth-callback-server-A2YTPVVX.js → oauth-callback-server-DZZMTKSS.js} +25 -25
  71. package/dist/{runner-VKAEU52J.js → runner-IIAKWDXI.js} +18 -18
  72. package/dist/{skills-52GMXUTY.js → skills-EXIQ7BP5.js} +5 -5
  73. package/dist/spawn-ZR6OOEAN.js +37 -0
  74. package/dist/task-runner-C52HYCVD.js +32 -0
  75. package/dist/{validation-VD2YQX2W.js → validation-XUGIWBJF.js} +5 -5
  76. package/dist/version.js +1 -1
  77. package/dist/{work-ZWBTGEQP.js → work-G4RLJ634.js} +18 -18
  78. package/dist/worker-R2JEHK67.js +22 -0
  79. package/migrations/0036_complex_rage.sql +32 -0
  80. package/migrations/meta/0036_snapshot.json +3186 -0
  81. package/migrations/meta/_journal.json +8 -1
  82. package/package.json +6 -6
  83. package/dist/chunk-CZYNWPWD.js +0 -930
  84. package/dist/spawn-GSS4EBLR.js +0 -37
  85. package/dist/task-runner-DUGDWF5O.js +0 -32
  86. package/dist/worker-XUWD5WS7.js +0 -22
@@ -5,8 +5,10 @@ import {
5
5
  getConversationEventStore,
6
6
  getDb,
7
7
  getSqlExecutor
8
- } from "./chunk-6TSWXBTQ.js";
8
+ } from "./chunk-AX3UDIMA.js";
9
9
  import {
10
+ juniorCodeChanges,
11
+ juniorCodeRepositories,
10
12
  juniorConversationAnnotations,
11
13
  juniorConversationEvents,
12
14
  juniorIdentities,
@@ -14,7 +16,7 @@ import {
14
16
  juniorUsers,
15
17
  juniorWorkspaceRepos,
16
18
  juniorWorkspaces
17
- } from "./chunk-44BQ3TSK.js";
19
+ } from "./chunk-6UXDTPEN.js";
18
20
  import {
19
21
  SANDBOX_WORKSPACE_ROOT,
20
22
  getVercelSandboxCredentials,
@@ -22,17 +24,17 @@ import {
22
24
  isSandboxMissingError,
23
25
  runNonInteractiveCommand,
24
26
  sleep
25
- } from "./chunk-UKIHNBBD.js";
27
+ } from "./chunk-X52ESOBP.js";
26
28
  import {
27
29
  getStateAdapter
28
- } from "./chunk-Z7ALSQS3.js";
30
+ } from "./chunk-G2B2XZQW.js";
29
31
  import {
30
32
  botConfig,
31
33
  completeObject,
32
34
  defaultModelId,
33
35
  embedTexts,
34
36
  getSlackBotToken
35
- } from "./chunk-LHQK5XCU.js";
37
+ } from "./chunk-LMNMMESF.js";
36
38
  import {
37
39
  isActorUserId,
38
40
  parseActorUserId,
@@ -48,7 +50,7 @@ import {
48
50
  setSpanAttributes,
49
51
  setSpanStatus,
50
52
  withSpan
51
- } from "./chunk-UQP54CXZ.js";
53
+ } from "./chunk-LZBPGX5A.js";
52
54
 
53
55
  // src/chat/plugins/agent-hooks.ts
54
56
  import {
@@ -1218,6 +1220,42 @@ async function cancelSubscriptions(input) {
1218
1220
  });
1219
1221
  }
1220
1222
  }
1223
+ async function collectResourceEventMatchKeys(input) {
1224
+ const state = input.state ?? getStateAdapter();
1225
+ await state.connect();
1226
+ const nowMs = input.nowMs ?? Date.now();
1227
+ const eventTypes = new Set(
1228
+ input.eventTypes.map((eventType) => eventType.trim()).filter(Boolean)
1229
+ );
1230
+ if (eventTypes.size === 0) return [];
1231
+ const keys = /* @__PURE__ */ new Set();
1232
+ const identifiers = new Set(
1233
+ input.identifiers.map((value) => value.trim()).filter(Boolean)
1234
+ );
1235
+ for (const identifier of identifiers) {
1236
+ const ids = await readSubscriptionIdIndex(
1237
+ state,
1238
+ resourceIndexKey(input.teamId, input.namespace, identifier)
1239
+ );
1240
+ const records = await Promise.all(
1241
+ ids.map(
1242
+ async (id) => parseSubscription(await state.get(subscriptionKey(id)))
1243
+ )
1244
+ );
1245
+ for (const record of records) {
1246
+ if (!record) continue;
1247
+ if (record.namespace !== input.namespace) continue;
1248
+ if (record.identifier !== identifier) continue;
1249
+ if (subscriptionTeamId(record.destination) !== input.teamId) continue;
1250
+ if (!activeAt(record, nowMs)) continue;
1251
+ if (!record.events.some((eventType) => eventTypes.has(eventType))) continue;
1252
+ for (const key of Object.keys(record.match ?? {})) {
1253
+ keys.add(key);
1254
+ }
1255
+ }
1256
+ }
1257
+ return [...keys].sort();
1258
+ }
1221
1259
  async function findMatchingResourceEventSubscriptions(input) {
1222
1260
  const state = input.state ?? getStateAdapter();
1223
1261
  await state.connect();
@@ -2178,6 +2216,113 @@ async function deleteWorkspace(id) {
2178
2216
  return result.deleted;
2179
2217
  }
2180
2218
 
2219
+ // src/chat/code/store.ts
2220
+ import { randomUUID as randomUUID3 } from "crypto";
2221
+ import { and as and6, eq as eq6, lte, sql as sql3 } from "drizzle-orm";
2222
+ import {
2223
+ codeChangeInputSchema
2224
+ } from "@sentry/junior-plugin-api";
2225
+ async function recordCodeChange(db, provider, input) {
2226
+ const change = codeChangeInputSchema.parse(input);
2227
+ const repositories = await db.insert(juniorCodeRepositories).values({
2228
+ id: randomUUID3(),
2229
+ name: change.repository.name,
2230
+ provider,
2231
+ providerId: change.repository.providerId,
2232
+ url: change.repository.url,
2233
+ updatedAt: change.updatedAt
2234
+ }).onConflictDoUpdate({
2235
+ target: [
2236
+ juniorCodeRepositories.provider,
2237
+ juniorCodeRepositories.providerId
2238
+ ],
2239
+ set: {
2240
+ name: change.repository.name,
2241
+ ...change.repository.url ? { url: change.repository.url } : void 0,
2242
+ updatedAt: change.updatedAt
2243
+ },
2244
+ where: lte(juniorCodeRepositories.updatedAt, change.updatedAt)
2245
+ }).returning({ id: juniorCodeRepositories.id });
2246
+ const existingRepositories = repositories[0] ? [] : await db.select({ id: juniorCodeRepositories.id }).from(juniorCodeRepositories).where(
2247
+ and6(
2248
+ eq6(juniorCodeRepositories.provider, provider),
2249
+ eq6(juniorCodeRepositories.providerId, change.repository.providerId)
2250
+ )
2251
+ ).limit(1);
2252
+ const repositoryId = repositories[0]?.id ?? existingRepositories[0]?.id;
2253
+ if (!repositoryId) {
2254
+ throw new Error("Code repository upsert returned no row");
2255
+ }
2256
+ const conversationIds = sql3.join(
2257
+ change.conversationIds.map((conversationId) => sql3`${conversationId}`),
2258
+ sql3`, `
2259
+ );
2260
+ const values = {
2261
+ closedAt: change.closedAt ?? null,
2262
+ conversationIds: change.conversationIds.length > 0 ? sql3`ARRAY(
2263
+ SELECT DISTINCT value
2264
+ FROM unnest(
2265
+ ${juniorCodeChanges.conversationIds}
2266
+ || ARRAY[${conversationIds}]::text[]
2267
+ ) AS value
2268
+ ORDER BY value
2269
+ )` : juniorCodeChanges.conversationIds,
2270
+ mergedAt: change.mergedAt ?? null,
2271
+ number: change.number,
2272
+ openedAt: change.openedAt,
2273
+ repositoryId,
2274
+ state: change.state,
2275
+ ...change.title ? { title: change.title } : void 0,
2276
+ updatedAt: change.updatedAt,
2277
+ url: change.url ?? null
2278
+ };
2279
+ await db.insert(juniorCodeChanges).values({
2280
+ ...values,
2281
+ conversationIds: change.conversationIds,
2282
+ id: randomUUID3(),
2283
+ provider,
2284
+ providerId: change.providerId
2285
+ }).onConflictDoUpdate({
2286
+ target: [juniorCodeChanges.provider, juniorCodeChanges.providerId],
2287
+ set: values,
2288
+ where: lte(juniorCodeChanges.updatedAt, change.updatedAt)
2289
+ });
2290
+ }
2291
+ async function associateCodeChangeConversations(db, provider, input) {
2292
+ if (input.conversationIds.length === 0) return;
2293
+ const conversationIds = sql3.join(
2294
+ input.conversationIds.map((conversationId) => sql3`${conversationId}`),
2295
+ sql3`, `
2296
+ );
2297
+ await db.update(juniorCodeChanges).set({
2298
+ conversationIds: sql3`ARRAY(
2299
+ SELECT DISTINCT value
2300
+ FROM unnest(
2301
+ ${juniorCodeChanges.conversationIds}
2302
+ || ARRAY[${conversationIds}]::text[]
2303
+ ) AS value
2304
+ ORDER BY value
2305
+ )`
2306
+ }).where(
2307
+ and6(
2308
+ eq6(juniorCodeChanges.provider, provider),
2309
+ eq6(juniorCodeChanges.providerId, input.providerId)
2310
+ )
2311
+ );
2312
+ }
2313
+
2314
+ // src/chat/code/publisher.ts
2315
+ function createCodeChangePublisher(provider) {
2316
+ return {
2317
+ async associateConversations(input) {
2318
+ await associateCodeChangeConversations(getDb(), provider, input);
2319
+ },
2320
+ async record(input) {
2321
+ await recordCodeChange(getDb(), provider, input);
2322
+ }
2323
+ };
2324
+ }
2325
+
2181
2326
  // src/chat/plugins/agent-hooks.ts
2182
2327
  var PluginHookDeniedError = class extends Error {
2183
2328
  constructor(message) {
@@ -2790,7 +2935,29 @@ function getPluginRoutes(options) {
2790
2935
  plugin: pluginName
2791
2936
  })
2792
2937
  },
2938
+ codeChanges: createCodeChangePublisher(pluginName),
2793
2939
  resourceEvents: {
2940
+ async neededMatchKeys(input) {
2941
+ if (!options.resourceEvents.neededMatchKeys) return [];
2942
+ const identifiers = [
2943
+ ...new Set(
2944
+ input.identifiers.map(
2945
+ (identifier) => normalizeResourceEventIdentifier(
2946
+ plugin.resourceEvents,
2947
+ identifier
2948
+ )
2949
+ ).filter(Boolean)
2950
+ )
2951
+ ];
2952
+ if (identifiers.length === 0 || input.eventTypes.length === 0) {
2953
+ return [];
2954
+ }
2955
+ return await options.resourceEvents.neededMatchKeys({
2956
+ eventTypes: input.eventTypes,
2957
+ identifiers,
2958
+ namespace: pluginName
2959
+ });
2960
+ },
2794
2961
  async publish(event) {
2795
2962
  const parsed = resourceEventInputSchema.parse(event);
2796
2963
  requirePublishedResourceEvent(plugin, parsed.eventType);
@@ -3438,6 +3605,7 @@ export {
3438
3605
  listResourceEventSubscriptions,
3439
3606
  cancelResourceEventSubscription,
3440
3607
  cancelSubscriptions,
3608
+ collectResourceEventMatchKeys,
3441
3609
  findMatchingResourceEventSubscriptions,
3442
3610
  deliverResourceEventSubscription,
3443
3611
  RESOURCE_SUBSCRIPTION_DEFAULT_TTL_MS,
@@ -8,7 +8,7 @@ import {
8
8
  juniorConversations,
9
9
  juniorIdentities,
10
10
  juniorUsers
11
- } from "./chunk-44BQ3TSK.js";
11
+ } from "./chunk-6UXDTPEN.js";
12
12
  import {
13
13
  juniorDestinations
14
14
  } from "./chunk-VFUK3X5B.js";
@@ -16,7 +16,7 @@ import {
16
16
  TURN_REASONING_LEVELS,
17
17
  getChatConfig,
18
18
  modelProfileSchema
19
- } from "./chunk-LHQK5XCU.js";
19
+ } from "./chunk-LMNMMESF.js";
20
20
  import {
21
21
  parseActorUserId,
22
22
  parseSlackChannelReferenceId,
@@ -24,7 +24,7 @@ import {
24
24
  } from "./chunk-N7TMSOZH.js";
25
25
  import {
26
26
  normalizeIdentityEmail
27
- } from "./chunk-UQP54CXZ.js";
27
+ } from "./chunk-LZBPGX5A.js";
28
28
 
29
29
  // src/chat/conversations/sql/store.ts
30
30
  import { randomUUID as randomUUID2 } from "crypto";
@@ -1,17 +1,17 @@
1
1
  import {
2
2
  createWebAuthorization,
3
3
  deleteWebAuthorization
4
- } from "./chunk-CVBIM4Z3.js";
4
+ } from "./chunk-4WGFWHWP.js";
5
5
  import {
6
6
  buildDeliveredTurnStatePatch,
7
7
  completeAuthPauseTurn,
8
8
  finalizeFailedTurnReplyWithEvent,
9
9
  getTurnUserMessage
10
- } from "./chunk-D6OHGAIO.js";
10
+ } from "./chunk-WOKJRLM2.js";
11
11
  import {
12
12
  processPluginTask,
13
13
  scheduleSessionCompletedPluginTasks
14
- } from "./chunk-QHALFHZA.js";
14
+ } from "./chunk-W5JMPEBO.js";
15
15
  import {
16
16
  ConversationTurnLifecycleService
17
17
  } from "./chunk-M3QYTBQ6.js";
@@ -20,17 +20,17 @@ import {
20
20
  getPersistedSandboxState,
21
21
  getPersistedThreadState,
22
22
  persistThreadStateById
23
- } from "./chunk-PQES5LB5.js";
23
+ } from "./chunk-PLZT45VC.js";
24
24
  import {
25
25
  healthReportSchema
26
26
  } from "./chunk-UTL3MHPC.js";
27
27
  import {
28
28
  parseSlackThreadId
29
- } from "./chunk-MJISSOWB.js";
29
+ } from "./chunk-SQHFVIMZ.js";
30
30
  import {
31
31
  appendAndEnqueueExclusiveInboundMessage,
32
32
  appendAndEnqueueInboundMessage
33
- } from "./chunk-TEFNHMO2.js";
33
+ } from "./chunk-HUK5XIZL.js";
34
34
  import {
35
35
  TurnInputCommitLostError,
36
36
  buildDeterministicTurnId,
@@ -41,7 +41,7 @@ import {
41
41
  markTurnClosed,
42
42
  markTurnFailed,
43
43
  startActiveTurn
44
- } from "./chunk-YHL2L2ZZ.js";
44
+ } from "./chunk-56XONJPF.js";
45
45
  import {
46
46
  abandonTurnRecord,
47
47
  buildConversationContext,
@@ -56,27 +56,27 @@ import {
56
56
  recordDeliveredAssistantMessage,
57
57
  saveTurnCheckpoint,
58
58
  upsertConversationMessage
59
- } from "./chunk-SXOZIG5X.js";
59
+ } from "./chunk-24OJZ5OU.js";
60
60
  import {
61
61
  normalizeSlackConversationId
62
- } from "./chunk-2CEOXDG2.js";
62
+ } from "./chunk-AHMWPFIW.js";
63
63
  import {
64
64
  getConversationEventStore,
65
65
  getConversationStore,
66
66
  getDb
67
- } from "./chunk-6TSWXBTQ.js";
67
+ } from "./chunk-AX3UDIMA.js";
68
68
  import {
69
69
  juniorConversationParticipants,
70
70
  juniorConversations,
71
71
  juniorIdentities,
72
72
  juniorUsers
73
- } from "./chunk-44BQ3TSK.js";
73
+ } from "./chunk-6UXDTPEN.js";
74
74
  import {
75
75
  juniorDestinations
76
76
  } from "./chunk-VFUK3X5B.js";
77
77
  import {
78
78
  canExposeConversationPayload
79
- } from "./chunk-SVFSYQMT.js";
79
+ } from "./chunk-2ADFGSUS.js";
80
80
  import {
81
81
  credentialContextForActor
82
82
  } from "./chunk-CEMMLV5L.js";
@@ -84,7 +84,7 @@ import {
84
84
  logException,
85
85
  setTags,
86
86
  withLogContext
87
- } from "./chunk-UQP54CXZ.js";
87
+ } from "./chunk-LZBPGX5A.js";
88
88
 
89
89
  // src/handlers/health.ts
90
90
  function readHealthReport() {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  createPluginCatalogRuntime
3
- } from "./chunk-4DZ62L36.js";
3
+ } from "./chunk-EENQGEIP.js";
4
4
 
5
5
  // src/chat/plugins/catalog-runtime.ts
6
6
  var pluginCatalogRuntime = createPluginCatalogRuntime();
@@ -12,7 +12,7 @@ import {
12
12
  logInfo,
13
13
  logWarn,
14
14
  setSpanAttributes
15
- } from "./chunk-UQP54CXZ.js";
15
+ } from "./chunk-LZBPGX5A.js";
16
16
 
17
17
  // src/chat/plugins/manifest.ts
18
18
  import { z } from "zod";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  FUNCTION_TIMEOUT_BUFFER_SECONDS,
3
3
  getChatConfig
4
- } from "./chunk-LHQK5XCU.js";
4
+ } from "./chunk-LMNMMESF.js";
5
5
 
6
6
  // src/chat/runtime/request-deadline.ts
7
7
  import { AsyncLocalStorage } from "async_hooks";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  getChatConfig
3
- } from "./chunk-LHQK5XCU.js";
3
+ } from "./chunk-LMNMMESF.js";
4
4
 
5
5
  // src/chat/state/adapter.ts
6
6
  import { createMemoryState } from "@chat-adapter/state-memory";
@@ -8,14 +8,14 @@ import {
8
8
  getConversationStore,
9
9
  parseDestination,
10
10
  sameDestination
11
- } from "./chunk-6TSWXBTQ.js";
11
+ } from "./chunk-AX3UDIMA.js";
12
12
  import {
13
13
  getDefaultRedisStateAdapterFor,
14
14
  getStateAdapter
15
- } from "./chunk-Z7ALSQS3.js";
15
+ } from "./chunk-G2B2XZQW.js";
16
16
  import {
17
17
  getChatConfig
18
- } from "./chunk-LHQK5XCU.js";
18
+ } from "./chunk-LMNMMESF.js";
19
19
  import {
20
20
  parseStoredSlackActor
21
21
  } from "./chunk-N7TMSOZH.js";
@@ -23,7 +23,7 @@ import {
23
23
  isRecord,
24
24
  toOptionalNumber,
25
25
  toOptionalString
26
- } from "./chunk-UQP54CXZ.js";
26
+ } from "./chunk-LZBPGX5A.js";
27
27
 
28
28
  // src/chat/task-execution/state.ts
29
29
  import { randomUUID } from "crypto";