@sentry/junior 0.252.0 → 0.253.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 (56) hide show
  1. package/dist/{admin-C_-XEdym.js → admin-CZnlnlg9.js} +1 -1
  2. package/dist/{agent-hooks-DcoKnnxn.js → agent-hooks-CvcbAtJH.js} +8 -8
  3. package/dist/{agent-runner-B-7S_DCS.js → agent-runner-B4FMVbCs.js} +20 -20
  4. package/dist/api.js +21 -21
  5. package/dist/app.js +111 -82
  6. package/dist/{assistant-reply-DbPLvsnL.js → assistant-reply-BU05IECs.js} +1 -1
  7. package/dist/{briefs-D4SMqc-r.js → briefs-DyspoG90.js} +2 -2
  8. package/dist/{catalog-runtime-BQQiwwA7.js → catalog-runtime-Br8s-TYx.js} +1 -1
  9. package/dist/cli/chat.js +15 -15
  10. package/dist/cli/check.js +3 -3
  11. package/dist/cli/main.js +2 -2
  12. package/dist/cli/plugins.js +4 -4
  13. package/dist/cli/snapshot-create.js +3 -3
  14. package/dist/cli/upgrade.js +3 -3
  15. package/dist/{client-ROZeVjq0.js → client-CRVXpEWi.js} +2 -2
  16. package/dist/{config-DNNkxfGS.js → config-B7joRWt7.js} +2 -2
  17. package/dist/{connections-DJV6mLrH.js → connections-CGPYNw2B.js} +9 -9
  18. package/dist/{conversation-privacy-B19umzIL.js → conversation-privacy-0JuTT_OJ.js} +1 -1
  19. package/dist/{credential-sync-CEd2F5PS.js → credential-sync-C-k3fnY5.js} +14 -14
  20. package/dist/{executor-_4bdoCxe.js → executor-YL577nNt.js} +32 -4
  21. package/dist/{images-BAN7DHuO.js → images-DopOctPc.js} +2 -2
  22. package/dist/instrumentation.js +2 -2
  23. package/dist/{job-queue-DSQx1qFY.js → job-queue-CIhKXUE3.js} +1 -1
  24. package/dist/{logging-COUsTFIL.js → logging-B0QxCh3D.js} +1 -1
  25. package/dist/{message-CtDDEwwV.js → message-DQvor8lM.js} +3 -3
  26. package/dist/nitro.js +3 -3
  27. package/dist/{oauth-callback-server-CCiKrS0s.js → oauth-callback-server-BT7cSxBm.js} +2 -2
  28. package/dist/{pending-auth-DDx3EU4M.js → pending-auth-CwA1uLA9.js} +2 -2
  29. package/dist/{profile-DP4LKL6V.js → profile-p1oiViVs.js} +4 -4
  30. package/dist/{registry-CeEpPna6.js → registry-BO2LM2oW.js} +1 -1
  31. package/dist/{resolve-B5ma3igH.js → resolve-CtWKGuKE.js} +2 -2
  32. package/dist/{result-Da0RVuWG.js → result-DR5JTBcb.js} +6 -6
  33. package/dist/{runner-se1W_jGZ.js → runner-BIxTJF9a.js} +9 -9
  34. package/dist/{sandbox-egress-signals-CS959-wm.js → sandbox-egress-signals-DF3Pu813.js} +1 -1
  35. package/dist/{session-stop-DlRDisF5.js → session-stop-BRq8Vxrr.js} +10 -10
  36. package/dist/{skills-CSzgs0EC.js → skills-DitcC3Vw.js} +2 -2
  37. package/dist/{spawn-DT9fMjtd.js → spawn-CHQ42PAo.js} +2 -2
  38. package/dist/{store-Dx1U69mm.js → store-DIFp9K52.js} +6 -6
  39. package/dist/{task-queue-BX9YrIsw.js → task-queue-UAeJGLYM.js} +3 -3
  40. package/dist/{task-runner-CO55Olal.js → task-runner-DwD-i2ta.js} +144 -126
  41. package/dist/{tasks-DwGlFX9i.js → tasks-DThIG7F-.js} +15 -26
  42. package/dist/{thread-state-Ces6tXmB.js → thread-state-BQxkL7Xm.js} +6 -6
  43. package/dist/{turn-failure-response-B4VCvEQf.js → turn-failure-response-OAIxgzNh.js} +7 -7
  44. package/dist/{turn-lifecycle-B1VV58Yo.js → turn-lifecycle-BAEJpjDI.js} +1 -1
  45. package/dist/{turn-session-routing-Dw2Kamg9.js → turn-session-routing-F5s728f0.js} +1 -1
  46. package/dist/{validation-yJF9LKOv.js → validation-DFM4-vDr.js} +1 -1
  47. package/dist/{version-CZYqvIFh.js → version-B80CD9sN.js} +1 -1
  48. package/dist/version.js +1 -1
  49. package/dist/{viewer-D96vo_42.js → viewer-CPxNfHWa.js} +3 -3
  50. package/dist/{web-input-5mls-41-.js → web-input-DIO177R0.js} +43 -51
  51. package/dist/{work-D2M2-zCO.js → work-Dl5KPKjW.js} +9 -9
  52. package/dist/{worker-BwCpf8tB.js → worker-CJkE86Co.js} +5 -5
  53. package/migrations/0056_automation_runs.sql +69 -0
  54. package/migrations/meta/0056_snapshot.json +4280 -0
  55. package/migrations/meta/_journal.json +8 -1
  56. package/package.json +4 -4
package/dist/cli/chat.js CHANGED
@@ -1,4 +1,4 @@
1
- import { n as executeAgentRun, t as createAgentRunner } from "../agent-runner-B-7S_DCS.js";
1
+ import { n as executeAgentRun, t as createAgentRunner } from "../agent-runner-B4FMVbCs.js";
2
2
  import { t as loadAppPluginSet } from "../plugin-module-CVvEUSMH.js";
3
3
  import path from "node:path";
4
4
  import { createHash, randomUUID } from "node:crypto";
@@ -100,10 +100,10 @@ async function loadLocalPluginSet() {
100
100
  async function configureLocalChatPlugins(pluginSet) {
101
101
  const [pluginsModule, agentHooksModule, catalogRuntimeModule, validationModule, databaseModule] = await Promise.all([
102
102
  import("../plugins-egKWjgue.js").then((n) => n.o),
103
- import("../agent-hooks-DcoKnnxn.js").then((n) => n.t),
104
- import("../catalog-runtime-BQQiwwA7.js").then((n) => n.t),
105
- import("../validation-yJF9LKOv.js").then((n) => n.r),
106
- import("../viewer-D96vo_42.js").then((n) => n.s)
103
+ import("../agent-hooks-CvcbAtJH.js").then((n) => n.t),
104
+ import("../catalog-runtime-Br8s-TYx.js").then((n) => n.t),
105
+ import("../validation-DFM4-vDr.js").then((n) => n.r),
106
+ import("../viewer-CPxNfHWa.js").then((n) => n.s)
107
107
  ]);
108
108
  const resolvedPluginSet = pluginSet === void 0 ? await loadLocalPluginSet() : pluginSet ?? void 0;
109
109
  const plugins = pluginsModule.pluginRuntimeRegistrationsFromPluginSet(resolvedPluginSet);
@@ -155,19 +155,19 @@ async function prepareLocalChatRun(io, pluginSet) {
155
155
  await configureLocalChatPlugins(pluginSet);
156
156
  const { setExperimentalFeatures } = await import("../experimental-Qn9rKLgx.js").then((n) => n.t);
157
157
  setExperimentalFeatures({ subagents: true });
158
- const { setBriefsConfig } = await import("../agent-hooks-DcoKnnxn.js").then((n) => n.m);
158
+ const { setBriefsConfig } = await import("../agent-hooks-CvcbAtJH.js").then((n) => n.m);
159
159
  setBriefsConfig({ enabled: true });
160
- const { runLocalAgentTurn } = await import("../runner-se1W_jGZ.js");
161
- const { startLocalOAuthCallbackServer } = await import("../oauth-callback-server-CCiKrS0s.js");
160
+ const { runLocalAgentTurn } = await import("../runner-BIxTJF9a.js");
161
+ const { startLocalOAuthCallbackServer } = await import("../oauth-callback-server-BT7cSxBm.js");
162
162
  const { createLocalOAuthState } = await import("../oauth-relay-CdCnu80W.js").then((n) => n.t);
163
- const { createLocalSandboxEgressSignalTransport } = await import("../sandbox-egress-signals-CS959-wm.js");
164
- const { bindSpawnAgent } = await import("../spawn-DT9fMjtd.js").then((n) => n.n);
165
- const { bindMessageAgent } = await import("../message-CtDDEwwV.js").then((n) => n.n);
166
- const { createAgentInvocationWorker, routeAgentInvocationWork } = await import("../work-D2M2-zCO.js").then((n) => n.a);
167
- const { startAgentInvocationsForChildInput } = await import("../result-Da0RVuWG.js").then((n) => n.r);
168
- const { skipInputBeforeConversationStop } = await import("../session-stop-DlRDisF5.js").then((n) => n.r);
163
+ const { createLocalSandboxEgressSignalTransport } = await import("../sandbox-egress-signals-DF3Pu813.js");
164
+ const { bindSpawnAgent } = await import("../spawn-CHQ42PAo.js").then((n) => n.n);
165
+ const { bindMessageAgent } = await import("../message-DQvor8lM.js").then((n) => n.n);
166
+ const { createAgentInvocationWorker, routeAgentInvocationWork } = await import("../work-Dl5KPKjW.js").then((n) => n.a);
167
+ const { startAgentInvocationsForChildInput } = await import("../result-DR5JTBcb.js").then((n) => n.r);
168
+ const { skipInputBeforeConversationStop } = await import("../session-stop-BRq8Vxrr.js").then((n) => n.r);
169
169
  const { createLocalConversationWork } = await import("../conversation-work-C6y3T5Hx.js");
170
- const { processConversationWork } = await import("../worker-BwCpf8tB.js").then((n) => n.n);
170
+ const { processConversationWork } = await import("../worker-CJkE86Co.js").then((n) => n.n);
171
171
  let agentRunner;
172
172
  const localConversationWork = createLocalConversationWork(async (message) => {
173
173
  if (!agentRunner) throw new Error("Local agent runner is not ready");
package/dist/cli/check.js CHANGED
@@ -1,6 +1,6 @@
1
- import { D as JUNIOR_HEARTBEAT_ROUTE, M as LEGACY_JUNIOR_CONVERSATION_WORK_FUNCTION, T as JUNIOR_CONVERSATION_WORK_CALLBACK_ROUTE } from "../logging-COUsTFIL.js";
2
- import { _ as parsePluginManifest, g as parseInlinePluginManifest } from "../registry-CeEpPna6.js";
3
- import { i as parseSkillFile } from "../skills-CSzgs0EC.js";
1
+ import { D as JUNIOR_HEARTBEAT_ROUTE, M as LEGACY_JUNIOR_CONVERSATION_WORK_FUNCTION, T as JUNIOR_CONVERSATION_WORK_CALLBACK_ROUTE } from "../logging-B0QxCh3D.js";
2
+ import { _ as parsePluginManifest, g as parseInlinePluginManifest } from "../registry-BO2LM2oW.js";
3
+ import { i as parseSkillFile } from "../skills-DitcC3Vw.js";
4
4
  import path from "node:path";
5
5
  import fs from "node:fs/promises";
6
6
  import { pathToFileURL } from "node:url";
package/dist/cli/main.js CHANGED
@@ -25,10 +25,10 @@ async function runChat(argv, pluginSet) {
25
25
  return await (await import("./chat.js")).runChat(argv, void 0, { pluginSet });
26
26
  }
27
27
  async function runAdmin(argv) {
28
- return await (await import("../admin-C_-XEdym.js")).runAdmin(argv);
28
+ return await (await import("../admin-CZnlnlg9.js")).runAdmin(argv);
29
29
  }
30
30
  async function runBriefs(argv) {
31
- return await (await import("../briefs-D4SMqc-r.js")).runBriefs(argv);
31
+ return await (await import("../briefs-DyspoG90.js")).runBriefs(argv);
32
32
  }
33
33
  function topLevelCommand(argv) {
34
34
  return (argv[0] === "--" ? argv.slice(1) : argv)[0];
@@ -1,7 +1,7 @@
1
- import { d as getDb } from "../viewer-D96vo_42.js";
2
- import { n as pluginCatalogRuntime } from "../catalog-runtime-BQQiwwA7.js";
3
- import { d as setPlugins, f as validatePlugins, ft as createPluginLogger } from "../agent-hooks-DcoKnnxn.js";
4
- import { n as validatePluginRegistrations, t as validatePluginEgressCredentialHooks } from "../validation-yJF9LKOv.js";
1
+ import { d as getDb } from "../viewer-CPxNfHWa.js";
2
+ import { n as pluginCatalogRuntime } from "../catalog-runtime-Br8s-TYx.js";
3
+ import { d as setPlugins, f as validatePlugins, ft as createPluginLogger } from "../agent-hooks-CvcbAtJH.js";
4
+ import { n as validatePluginRegistrations, t as validatePluginEgressCredentialHooks } from "../validation-DFM4-vDr.js";
5
5
  import { a as pluginRuntimeRegistrationsFromPluginSet, i as pluginCliRegistrationsFromPluginSet, r as pluginCatalogConfigFromPluginSet } from "../plugins-egKWjgue.js";
6
6
  import { t as loadAppPluginSet } from "../plugin-module-CVvEUSMH.js";
7
7
  import { stderr, stdout } from "node:process";
@@ -1,6 +1,6 @@
1
- import { n as pluginCatalogRuntime } from "../catalog-runtime-BQQiwwA7.js";
2
- import { S as disconnectStateAdapter, t as create } from "../profile-DP4LKL6V.js";
3
- import { r as resolve } from "../resolve-B5ma3igH.js";
1
+ import { n as pluginCatalogRuntime } from "../catalog-runtime-Br8s-TYx.js";
2
+ import { S as disconnectStateAdapter, t as create } from "../profile-p1oiViVs.js";
3
+ import { r as resolve } from "../resolve-CtWKGuKE.js";
4
4
  //#region src/cli/snapshot-create.ts
5
5
  const DEFAULT_RUNTIME = "node22";
6
6
  const DEFAULT_TIMEOUT_MS = 6e5;
@@ -1,6 +1,6 @@
1
- import { i as getChatConfig } from "../config-DNNkxfGS.js";
2
- import { t as createJuniorSqlExecutor } from "../executor-_4bdoCxe.js";
3
- import { t as createPluginCatalogRuntime } from "../registry-CeEpPna6.js";
1
+ import { i as getChatConfig } from "../config-B7joRWt7.js";
2
+ import { t as createJuniorSqlExecutor } from "../executor-YL577nNt.js";
3
+ import { t as createPluginCatalogRuntime } from "../registry-BO2LM2oW.js";
4
4
  import { n as pluginCatalogConfigFromEnv, r as pluginCatalogConfigFromPluginSet, t as defineJuniorPlugins } from "../plugins-egKWjgue.js";
5
5
  import { t as loadAppPluginSet } from "../plugin-module-CVvEUSMH.js";
6
6
  import { basename, dirname, join, resolve } from "node:path";
@@ -1,5 +1,5 @@
1
- import { d as logException, g as serializeGenAiAttribute, i as extractGenAiUsageAttributes, m as normalizeGenAiFinishReason, p as logWarn, w as withSpan } from "./logging-COUsTFIL.js";
2
- import { a as toCanonicalInputMessage, n as getCurrentConversationPrivacy, o as toCanonicalOutputMessage, s as toGenAiMessagesTraceAttributes } from "./conversation-privacy-B19umzIL.js";
1
+ import { d as logException, g as serializeGenAiAttribute, i as extractGenAiUsageAttributes, m as normalizeGenAiFinishReason, p as logWarn, w as withSpan } from "./logging-B0QxCh3D.js";
2
+ import { a as toCanonicalInputMessage, n as getCurrentConversationPrivacy, o as toCanonicalOutputMessage, s as toGenAiMessagesTraceAttributes } from "./conversation-privacy-0JuTT_OJ.js";
3
3
  import { calculateCost, completeSimple, getEnvApiKey, getModels, registerApiProvider } from "@earendil-works/pi-ai/compat";
4
4
  import { stream as streamAnthropic, streamSimple as streamSimpleAnthropic } from "@earendil-works/pi-ai/api/anthropic-messages";
5
5
  import { createGatewayProvider } from "@ai-sdk/gateway";
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-B4FMCO8f.js";
2
- import { S as toOptionalTrimmed, o as resolveGatewayModel } from "./client-ROZeVjq0.js";
3
- import { p as logWarn } from "./logging-COUsTFIL.js";
2
+ import { S as toOptionalTrimmed, o as resolveGatewayModel } from "./client-CRVXpEWi.js";
3
+ import { p as logWarn } from "./logging-B0QxCh3D.js";
4
4
  import { l as TURN_REASONING_LEVELS, s as modelProfileSchema, t as DEFAULT_MODEL_PROFILES, u as parseTurnReasoningLevel } from "./model-profile-BwU8mqwD.js";
5
5
  //#region src/chat/slack/emoji.ts
6
6
  const SLACK_EMOJI_NAME_RE = /^(?:[a-z0-9_+-]+)(?:::(?:skin-tone-[2-6]))?$/;
@@ -1,12 +1,12 @@
1
- import { It as startOAuthFlow, c as deleteMcpAuthSessionsForUserProvider, l as deleteMcpServerSessionId, u as deleteMcpStoredOAuthCredentials } from "./agent-runner-B-7S_DCS.js";
2
- import { D as deleteProviderIdentityForSlackUser, c as getConversationEventStore, f as getSqlExecutor } from "./viewer-D96vo_42.js";
3
- import { u as hasRequiredOAuthScope } from "./registry-CeEpPna6.js";
4
- import { n as pluginCatalogRuntime } from "./catalog-runtime-BQQiwwA7.js";
5
- import { Q as getTurnRecord, Z as failTurnRecord, q as loadTurnCheckpoint } from "./tasks-DwGlFX9i.js";
6
- import { w as getStateAdapter } from "./profile-DP4LKL6V.js";
7
- import { a as getVercelConversationWorkQueue } from "./job-queue-DSQx1qFY.js";
8
- import { m as ensureConversationWake, w as requestConversationWork } from "./store-Dx1U69mm.js";
9
- import { n as resolveTurnSessionRouting } from "./turn-session-routing-Dw2Kamg9.js";
1
+ import { It as startOAuthFlow, c as deleteMcpAuthSessionsForUserProvider, l as deleteMcpServerSessionId, u as deleteMcpStoredOAuthCredentials } from "./agent-runner-B4FMVbCs.js";
2
+ import { D as deleteProviderIdentityForSlackUser, c as getConversationEventStore, f as getSqlExecutor } from "./viewer-CPxNfHWa.js";
3
+ import { u as hasRequiredOAuthScope } from "./registry-BO2LM2oW.js";
4
+ import { n as pluginCatalogRuntime } from "./catalog-runtime-Br8s-TYx.js";
5
+ import { Q as getTurnRecord, Z as failTurnRecord, q as loadTurnCheckpoint } from "./tasks-DThIG7F-.js";
6
+ import { w as getStateAdapter } from "./profile-p1oiViVs.js";
7
+ import { a as getVercelConversationWorkQueue } from "./job-queue-CIhKXUE3.js";
8
+ import { m as ensureConversationWake, w as requestConversationWork } from "./store-DIFp9K52.js";
9
+ import { n as resolveTurnSessionRouting } from "./turn-session-routing-F5s728f0.js";
10
10
  import { z } from "zod";
11
11
  import { randomBytes, randomUUID } from "node:crypto";
12
12
  //#region src/chat/task-execution/authorized-turn.ts
@@ -1,4 +1,4 @@
1
- import { p as logWarn } from "./logging-COUsTFIL.js";
1
+ import { p as logWarn } from "./logging-B0QxCh3D.js";
2
2
  import { AsyncLocalStorage } from "node:async_hooks";
3
3
  //#region src/chat/conversation-privacy.ts
4
4
  const SAFE_METADATA_KEY_LIMIT = 20;
@@ -1,19 +1,19 @@
1
- import { Ft as resolveBaseUrl, Lt as createUserTokenStore, Nt as formatProviderLabel, Pt as parseOAuthStatePayload, _ as resolvePluginOAuthAccount, d as getMcpAuthSession, f as getMcpStoredOAuthCredentials, o as finalizeMcpAuthorization, p as putMcpStoredOAuthCredentials, s as deleteMcpAuthSession, x as lookupSlackUserProfile, xt as getMcpProviderErrorAttributes } from "./agent-runner-B-7S_DCS.js";
2
- import { f as escapeXml } from "./client-ROZeVjq0.js";
3
- import { d as logException, h as runBestEffort, p as logWarn } from "./logging-COUsTFIL.js";
4
- import { a as getRuntimeMetadata, n as botConfig } from "./config-DNNkxfGS.js";
1
+ import { Ft as resolveBaseUrl, Lt as createUserTokenStore, Nt as formatProviderLabel, Pt as parseOAuthStatePayload, _ as resolvePluginOAuthAccount, d as getMcpAuthSession, f as getMcpStoredOAuthCredentials, o as finalizeMcpAuthorization, p as putMcpStoredOAuthCredentials, s as deleteMcpAuthSession, x as lookupSlackUserProfile, xt as getMcpProviderErrorAttributes } from "./agent-runner-B4FMVbCs.js";
2
+ import { f as escapeXml } from "./client-CRVXpEWi.js";
3
+ import { d as logException, h as runBestEffort, p as logWarn } from "./logging-B0QxCh3D.js";
4
+ import { a as getRuntimeMetadata, n as botConfig } from "./config-B7joRWt7.js";
5
5
  import { f as parseSlackUserId } from "./actor-BTtLaeWy.js";
6
- import { A as upsertIdentity, f as getSqlExecutor, j as upsertLinkedIdentity } from "./viewer-D96vo_42.js";
6
+ import { A as upsertIdentity, f as getSqlExecutor, j as upsertLinkedIdentity } from "./viewer-CPxNfHWa.js";
7
7
  import { i as homeDir } from "./package-discovery-BVvSnQBB.js";
8
- import { n as buildOAuthTokenRequest, r as parseOAuthTokenResponse, u as hasRequiredOAuthScope } from "./registry-CeEpPna6.js";
9
- import { n as pluginCatalogRuntime } from "./catalog-runtime-BQQiwwA7.js";
10
- import { t as discoverSkills } from "./skills-CSzgs0EC.js";
11
- import { It as recordAuthenticationLinked, Lt as recordAuthorizationCompleted, Q as getTurnRecord, V as postSlackMessage } from "./tasks-DwGlFX9i.js";
12
- import { Ht as getSlackClient } from "./agent-hooks-DcoKnnxn.js";
13
- import { E as acquireActiveLock, w as getStateAdapter } from "./profile-DP4LKL6V.js";
14
- import { i as getConversationPendingAuth } from "./pending-auth-DDx3EU4M.js";
15
- import { r as getPersistedThreadState, s as coerceThreadConversationState } from "./thread-state-Ces6tXmB.js";
16
- import { c as deleteWebAuthorization, f as wakeAuthorizedTurn, i as readConnectedOAuthTokens, p as wakePausedTurn } from "./connections-DJV6mLrH.js";
8
+ import { n as buildOAuthTokenRequest, r as parseOAuthTokenResponse, u as hasRequiredOAuthScope } from "./registry-BO2LM2oW.js";
9
+ import { n as pluginCatalogRuntime } from "./catalog-runtime-Br8s-TYx.js";
10
+ import { t as discoverSkills } from "./skills-DitcC3Vw.js";
11
+ import { It as recordAuthenticationLinked, Lt as recordAuthorizationCompleted, Q as getTurnRecord, V as postSlackMessage } from "./tasks-DThIG7F-.js";
12
+ import { Ht as getSlackClient } from "./agent-hooks-CvcbAtJH.js";
13
+ import { E as acquireActiveLock, w as getStateAdapter } from "./profile-p1oiViVs.js";
14
+ import { i as getConversationPendingAuth } from "./pending-auth-CwA1uLA9.js";
15
+ import { r as getPersistedThreadState, s as coerceThreadConversationState } from "./thread-state-BQxkL7Xm.js";
16
+ import { c as deleteWebAuthorization, f as wakeAuthorizedTurn, i as readConnectedOAuthTokens, p as wakePausedTurn } from "./connections-CGPYNw2B.js";
17
17
  import { n as relayLocalOAuthCallback } from "./oauth-relay-CdCnu80W.js";
18
18
  import path from "node:path";
19
19
  import { z } from "zod";
@@ -1,6 +1,6 @@
1
- import { d as logException } from "./logging-COUsTFIL.js";
1
+ import { d as logException } from "./logging-B0QxCh3D.js";
2
2
  import { g as startSpanManual } from "./sentry-CgWZM_kV.js";
3
- import "./config-DNNkxfGS.js";
3
+ import "./config-B7joRWt7.js";
4
4
  import { a as juniorAgentInvocations, c as juniorIdentities, d as juniorDestinations, f as timestamptz, i as juniorAgentBindings, l as juniorUsers, s as juniorConversations } from "./agent-invocations-D_YoNnAn.js";
5
5
  import { AsyncLocalStorage } from "node:async_hooks";
6
6
  import { sql } from "drizzle-orm";
@@ -314,7 +314,6 @@ const juniorStats = pgTable("junior_stats", {
314
314
  })]);
315
315
  //#endregion
316
316
  //#region src/db/schema/automation-executions.ts
317
- /** One terminal automation execution linked to its durable conversation when present. */
318
317
  const juniorAutomationExecutions = pgTable("junior_task_executions", {
319
318
  executionId: text("execution_id").notNull(),
320
319
  kind: text("kind").notNull(),
@@ -383,6 +382,34 @@ const juniorAutomations = pgTable("junior_automations", {
383
382
  index("junior_automations_match_idx").on(table.namespace, table.identifier, table.createdAtMs, table.id).where(sql`${table.status} <> 'deleted'`)
384
383
  ]);
385
384
  //#endregion
385
+ //#region src/db/schema/automation-runs.ts
386
+ /**
387
+ * One dispatch of an Automation, from claim or dispatch to its outcome. A
388
+ * Scheduled automation run id is `<automation id>:<scheduled time>`. An event
389
+ * automation run id is its dispatch id. Automation code sets
390
+ * `conversation_id` when it dispatches the run. A run that was skipped, or
391
+ * that failed before dispatch, has no Conversation.
392
+ */
393
+ const juniorAutomationRuns = pgTable("junior_automation_runs", {
394
+ id: text("id").primaryKey(),
395
+ automationId: text("automation_id").notNull().references(() => juniorAutomations.id, { onDelete: "cascade" }),
396
+ conversationId: text("conversation_id").unique().references(() => juniorConversations.conversationId),
397
+ status: text("status").$type().notNull(),
398
+ scheduledForMs: bigint("scheduled_for_ms", { mode: "number" }),
399
+ attempt: integer("attempt"),
400
+ claimedAtMs: bigint("claimed_at_ms", { mode: "number" }),
401
+ dispatchId: text("dispatch_id"),
402
+ startedAtMs: bigint("started_at_ms", { mode: "number" }),
403
+ completedAtMs: bigint("completed_at_ms", { mode: "number" }),
404
+ errorMessage: text("error_message"),
405
+ resultMessageTs: text("result_message_ts")
406
+ }, (table) => [
407
+ check("junior_automation_runs_status_check", sql`${table.status} in ('pending', 'running', 'completed', 'failed', 'blocked', 'skipped')`),
408
+ index("junior_automation_runs_automation_idx").on(table.automationId, table.completedAtMs),
409
+ index("junior_automation_runs_completed_idx").on(table.completedAtMs),
410
+ index("junior_automation_runs_incomplete_idx").on(table.automationId, table.scheduledForMs).where(sql`${table.status} in ('pending', 'running')`)
411
+ ]);
412
+ //#endregion
386
413
  //#region src/db/schema/automation-versions.ts
387
414
  /** One saved Automation definition. Lifecycle and scheduler state are not versioned. */
388
415
  const juniorAutomationVersions = pgTable("junior_automation_versions", {
@@ -512,6 +539,7 @@ const juniorSqlSchema = {
512
539
  juniorSnapshots,
513
540
  juniorStats,
514
541
  juniorAutomationExecutions,
542
+ juniorAutomationRuns,
515
543
  juniorAutomationVersions,
516
544
  juniorAutomations,
517
545
  juniorSchedulerRuns,
@@ -1058,4 +1086,4 @@ function createJuniorSqlExecutor(args) {
1058
1086
  });
1059
1087
  }
1060
1088
  //#endregion
1061
- export { juniorArtifacts as S, juniorApiTokens as _, juniorSchedulerRuns as a, juniorCodeRepositories as b, juniorAutomationExecutions as c, juniorConversationParticipants as d, juniorConversationBindings as f, juniorConversationEvents as g, juniorConversationMetrics as h, juniorWorkspaces as i, juniorStats as l, CONVERSATION_METRICS as m, juniorSnapshots as n, juniorAutomationVersions as o, juniorConversationBriefs as p, juniorWorkspaceRepos as r, juniorAutomations as s, createJuniorSqlExecutor as t, juniorLocationConfigurations as u, juniorConversationAnnotations as v, juniorAttachments as x, juniorCodeChanges as y };
1089
+ export { juniorConversationAnnotations as _, juniorAutomationVersions as a, juniorAttachments as b, juniorStats as c, juniorConversationBindings as d, juniorConversationBriefs as f, juniorApiTokens as g, juniorConversationEvents as h, juniorWorkspaces as i, juniorLocationConfigurations as l, juniorConversationMetrics as m, juniorSnapshots as n, juniorAutomationRuns as o, CONVERSATION_METRICS as p, juniorWorkspaceRepos as r, juniorAutomations as s, createJuniorSqlExecutor as t, juniorConversationParticipants as u, juniorCodeChanges as v, juniorArtifacts as x, juniorCodeRepositories as y };
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-B4FMCO8f.js";
2
- import { D as storeAttachment, T as readLiveAttachment } from "./agent-runner-B-7S_DCS.js";
3
- import { f as getSqlExecutor } from "./viewer-D96vo_42.js";
2
+ import { D as storeAttachment, T as readLiveAttachment } from "./agent-runner-B4FMVbCs.js";
3
+ import { f as getSqlExecutor } from "./viewer-CPxNfHWa.js";
4
4
  import { L as detectImageMediaType } from "./conversation-T18Xlkx9.js";
5
5
  //#region src/chat/attachments/images.ts
6
6
  var images_exports = /* @__PURE__ */ __exportAll({
@@ -1,6 +1,6 @@
1
- import { N as getDeploymentServiceVersion, P as getDeploymentTelemetryAttributes } from "./logging-COUsTFIL.js";
1
+ import { N as getDeploymentServiceVersion, P as getDeploymentTelemetryAttributes } from "./logging-B0QxCh3D.js";
2
2
  import { _ as vercelAIIntegration, a as getClient, b as withStreamedSpan, c as init, o as getGlobalScope } from "./sentry-CgWZM_kV.js";
3
- import { n as getCurrentConversationPrivacy } from "./conversation-privacy-B19umzIL.js";
3
+ import { n as getCurrentConversationPrivacy } from "./conversation-privacy-0JuTT_OJ.js";
4
4
  import { t as consumePrivateTraceResultMarker } from "./private-trace-result-BLvBjy_e.js";
5
5
  //#region src/chat/sentry-payload-filter.ts
6
6
  const PAYLOAD_ATTRIBUTE_KEYS = /* @__PURE__ */ new Set([
@@ -1,4 +1,4 @@
1
- import { i as getChatConfig } from "./config-DNNkxfGS.js";
1
+ import { i as getChatConfig } from "./config-B7joRWt7.js";
2
2
  import { AsyncLocalStorage } from "node:async_hooks";
3
3
  import { z } from "zod";
4
4
  import { createHash, createHmac, timingSafeEqual } from "node:crypto";
@@ -1,5 +1,5 @@
1
1
  import { d as setTag, f as setUser, h as startSpan, i as getActiveSpan, l as logger, n as captureMessage, p as spanToJSON, s as getTraceData, t as captureException, y as withScope } from "./sentry-CgWZM_kV.js";
2
- import { t as JUNIOR_VERSION } from "./version-CZYqvIFh.js";
2
+ import { t as JUNIOR_VERSION } from "./version-B80CD9sN.js";
3
3
  import path from "node:path";
4
4
  import { styleText } from "node:util";
5
5
  import { ConfigError, configureSync, getConfig, getLogger } from "@logtape/logtape";
@@ -1,7 +1,7 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-B4FMCO8f.js";
2
- import { Ht as toolInvocationDestination, Q as getActiveAgentInvocationForConversation, Vt as actorFromRun, Y as createAgentInvocationForMessage, Z as findChildAgentConversationId, _t as AgentMessageTargetError, vt as PARENT_AGENT_TARGET } from "./agent-runner-B-7S_DCS.js";
3
- import { n as enqueueAgentMessageToParent } from "./result-Da0RVuWG.js";
4
- import { r as enqueueAgentInvocation } from "./work-D2M2-zCO.js";
2
+ import { Ht as toolInvocationDestination, Q as getActiveAgentInvocationForConversation, Vt as actorFromRun, Y as createAgentInvocationForMessage, Z as findChildAgentConversationId, _t as AgentMessageTargetError, vt as PARENT_AGENT_TARGET } from "./agent-runner-B4FMVbCs.js";
3
+ import { n as enqueueAgentMessageToParent } from "./result-DR5JTBcb.js";
4
+ import { r as enqueueAgentInvocation } from "./work-Dl5KPKjW.js";
5
5
  //#region src/chat/agent-invocations/message.ts
6
6
  var message_exports = /* @__PURE__ */ __exportAll({ bindMessageAgent: () => bindMessageAgent });
7
7
  /**
package/dist/nitro.js CHANGED
@@ -1,8 +1,8 @@
1
- import { A as JUNIOR_RETENTION_ROUTE, D as JUNIOR_HEARTBEAT_ROUTE, E as JUNIOR_HEARTBEAT_CRON_SCHEDULE, O as JUNIOR_PLUGIN_TASK_CALLBACK_ROUTE, T as JUNIOR_CONVERSATION_WORK_CALLBACK_ROUTE, j as JUNIOR_WORKSPACE_SNAPSHOT_JOB_CALLBACK_ROUTE, k as JUNIOR_RETENTION_CRON_SCHEDULE } from "./logging-COUsTFIL.js";
1
+ import { A as JUNIOR_RETENTION_ROUTE, D as JUNIOR_HEARTBEAT_ROUTE, E as JUNIOR_HEARTBEAT_CRON_SCHEDULE, O as JUNIOR_PLUGIN_TASK_CALLBACK_ROUTE, T as JUNIOR_CONVERSATION_WORK_CALLBACK_ROUTE, j as JUNIOR_WORKSPACE_SNAPSHOT_JOB_CALLBACK_ROUTE, k as JUNIOR_RETENTION_CRON_SCHEDULE } from "./logging-B0QxCh3D.js";
2
2
  import { d as resolvePackageDir, t as discoverInstalledPluginPackageContent, u as isValidPackageName } from "./package-discovery-BVvSnQBB.js";
3
- import { o as resolveConversationWorkQueueTopic, t as WORKSPACE_SNAPSHOT_JOB_QUEUE_TOPIC } from "./job-queue-DSQx1qFY.js";
3
+ import { o as resolveConversationWorkQueueTopic, t as WORKSPACE_SNAPSHOT_JOB_QUEUE_TOPIC } from "./job-queue-CIhKXUE3.js";
4
4
  import { a as pluginRuntimeRegistrationsFromPluginSet, r as pluginCatalogConfigFromPluginSet } from "./plugins-egKWjgue.js";
5
- import { t as PLUGIN_TASK_QUEUE_TOPIC } from "./task-queue-BX9YrIsw.js";
5
+ import { t as PLUGIN_TASK_QUEUE_TOPIC } from "./task-queue-UAeJGLYM.js";
6
6
  import { n as loadPluginSetFromModule, r as resolvePluginModule } from "./plugin-module-CVvEUSMH.js";
7
7
  import path from "node:path";
8
8
  import { cpSync, existsSync, mkdirSync, readdirSync, statSync } from "node:fs";
@@ -1,5 +1,5 @@
1
- import { Lt as createUserTokenStore } from "./agent-runner-B-7S_DCS.js";
2
- import { a as GET, n as syncLocalOAuthCredential, r as GET$1 } from "./credential-sync-CEd2F5PS.js";
1
+ import { Lt as createUserTokenStore } from "./agent-runner-B4FMVbCs.js";
2
+ import { a as GET, n as syncLocalOAuthCredential, r as GET$1 } from "./credential-sync-C-k3fnY5.js";
3
3
  import { createServer } from "node:http";
4
4
  //#region src/chat/local/oauth-callback-server.ts
5
5
  const LOCAL_OAUTH_TIMEOUT_MS = 6e5;
@@ -1,5 +1,5 @@
1
- import { v as isProviderRetryError } from "./client-ROZeVjq0.js";
2
- import { Y as abandonTurnRecord, un as estimateTextTokens } from "./tasks-DwGlFX9i.js";
1
+ import { v as isProviderRetryError } from "./client-CRVXpEWi.js";
2
+ import { Y as abandonTurnRecord, un as estimateTextTokens } from "./tasks-DThIG7F-.js";
3
3
  import { r as isExperimentalFeatureEnabled } from "./experimental-Qn9rKLgx.js";
4
4
  import { z } from "zod";
5
5
  //#region src/chat/state/turn-id.ts
@@ -1,7 +1,7 @@
1
- import { S as toOptionalTrimmed } from "./client-ROZeVjq0.js";
2
- import { v as setSpanAttributes, y as setSpanStatus } from "./logging-COUsTFIL.js";
3
- import { i as getChatConfig } from "./config-DNNkxfGS.js";
4
- import { n as pluginCatalogRuntime } from "./catalog-runtime-BQQiwwA7.js";
1
+ import { S as toOptionalTrimmed } from "./client-CRVXpEWi.js";
2
+ import { v as setSpanAttributes, y as setSpanStatus } from "./logging-B0QxCh3D.js";
3
+ import { i as getChatConfig } from "./config-B7joRWt7.js";
4
+ import { n as pluginCatalogRuntime } from "./catalog-runtime-Br8s-TYx.js";
5
5
  import { createHash } from "node:crypto";
6
6
  import { createMemoryState } from "@chat-adapter/state-memory";
7
7
  import { createRedisState } from "@chat-adapter/state-redis";
@@ -1,4 +1,4 @@
1
- import { f as logInfo, p as logWarn, v as setSpanAttributes } from "./logging-COUsTFIL.js";
1
+ import { f as logInfo, p as logWarn, v as setSpanAttributes } from "./logging-B0QxCh3D.js";
2
2
  import { o as parseActorUserId } from "./actor-BTtLaeWy.js";
3
3
  import { n as normalizePluginPackageNames, o as pluginRoots, t as discoverInstalledPluginPackageContent } from "./package-discovery-BVvSnQBB.js";
4
4
  import path from "node:path";
@@ -1,5 +1,5 @@
1
- import { v as setSpanAttributes, w as withSpan } from "./logging-COUsTFIL.js";
2
- import { N as SANDBOX_WORKSPACE_ROOT, k as sleep, r as isStale, t as create, u as isSandboxUnavailableError, v as getVercelSandboxCredentials, w as getStateAdapter, x as runNonInteractiveCommand } from "./profile-DP4LKL6V.js";
1
+ import { v as setSpanAttributes, w as withSpan } from "./logging-B0QxCh3D.js";
2
+ import { N as SANDBOX_WORKSPACE_ROOT, k as sleep, r as isStale, t as create, u as isSandboxUnavailableError, v as getVercelSandboxCredentials, w as getStateAdapter, x as runNonInteractiveCommand } from "./profile-p1oiViVs.js";
3
3
  import { z } from "zod";
4
4
  import { FileSystem, Sandbox } from "@vercel/sandbox";
5
5
  //#region src/chat/sandbox/resources.ts
@@ -1,12 +1,12 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-B4FMCO8f.js";
2
- import { $ as getAgentInvocation, X as createAgentInvocationFromLatest, ct as isTerminalAgentInvocation, et as getAgentInvocationIdForEvents, ft as markAgentInvocationParentMailboxAppended, it as getAgentInvocationResultMessageId, nt as getAgentInvocationIdForResult, st as getLatestAgentInvocationForConversation, tt as getAgentInvocationIdForMessage } from "./agent-runner-B-7S_DCS.js";
2
+ import { $ as getAgentInvocation, X as createAgentInvocationFromLatest, ct as isTerminalAgentInvocation, et as getAgentInvocationIdForEvents, ft as markAgentInvocationParentMailboxAppended, it as getAgentInvocationResultMessageId, nt as getAgentInvocationIdForResult, st as getLatestAgentInvocationForConversation, tt as getAgentInvocationIdForMessage } from "./agent-runner-B4FMVbCs.js";
3
3
  import { t as createActor } from "./actor-BTtLaeWy.js";
4
- import { d as credentialContextForActor } from "./registry-CeEpPna6.js";
5
- import { $ as listTurnSummaries, Q as getTurnRecord } from "./tasks-DwGlFX9i.js";
6
- import { a as EVENT_WAIT_MS, c as timerWatchCredentialSubject, s as isEventMailboxMetadata } from "./session-stop-DlRDisF5.js";
4
+ import { d as credentialContextForActor } from "./registry-BO2LM2oW.js";
5
+ import { $ as listTurnSummaries, Q as getTurnRecord } from "./tasks-DThIG7F-.js";
6
+ import { a as EVENT_WAIT_MS, c as timerWatchCredentialSubject, s as isEventMailboxMetadata } from "./session-stop-BRq8Vxrr.js";
7
7
  import { a as EVENT_SYSTEM_ACTOR, i as EVENT_MESSAGE_AUTHOR, o as isEventConversationMessage } from "./prompt-C04mP1hu.js";
8
- import { r as appendAndEnqueueInboundMessage } from "./store-Dx1U69mm.js";
9
- import { r as enqueueAgentInvocation } from "./work-D2M2-zCO.js";
8
+ import { r as appendAndEnqueueInboundMessage } from "./store-DIFp9K52.js";
9
+ import { r as enqueueAgentInvocation } from "./work-Dl5KPKjW.js";
10
10
  import { z } from "zod";
11
11
  import { createEventSource, createLocalSource, createWebSource } from "@sentry/junior-plugin-api";
12
12
  //#region src/chat/task-execution/mailbox-input.ts
@@ -1,14 +1,14 @@
1
- import { C as withLogContext, b as setTags, d as logException } from "./logging-COUsTFIL.js";
2
- import { c as getConversationEventStore, u as getConversationStore } from "./viewer-D96vo_42.js";
3
- import { d as credentialContextForActor } from "./registry-CeEpPna6.js";
4
- import { At as loadProjection, Gt as hydrateConversationMessages, J as saveTurnCheckpoint, Kt as persistConversationMessages, Lt as recordAuthorizationCompleted, Tt as commitAcceptedReply, an as markConversationMessage, en as buildConversationContext, ln as upsertConversationMessage, on as normalizeConversationText, sn as recordDeliveredAssistantMessage, tt as persistWithRetry } from "./tasks-DwGlFX9i.js";
1
+ import { C as withLogContext, b as setTags, d as logException } from "./logging-B0QxCh3D.js";
2
+ import { c as getConversationEventStore, u as getConversationStore } from "./viewer-CPxNfHWa.js";
3
+ import { d as credentialContextForActor } from "./registry-BO2LM2oW.js";
4
+ import { At as loadProjection, Gt as hydrateConversationMessages, J as saveTurnCheckpoint, Kt as persistConversationMessages, Lt as recordAuthorizationCompleted, Tt as commitAcceptedReply, an as markConversationMessage, en as buildConversationContext, ln as upsertConversationMessage, on as normalizeConversationText, sn as recordDeliveredAssistantMessage, tt as persistWithRetry } from "./tasks-DThIG7F-.js";
5
5
  import { K as messageCardText } from "./conversation-T18Xlkx9.js";
6
6
  import { f as markTurnFailed, p as startActiveTurn, t as authorizationId } from "./oauth-authorization-BA4Dt6a7.js";
7
- import { n as getAssistantReplyText } from "./assistant-reply-DbPLvsnL.js";
8
- import { n as scheduleSessionCompletedPluginTasks, t as processPluginTask } from "./task-runner-CO55Olal.js";
9
- import { t as ConversationTurnLifecycleService } from "./turn-lifecycle-B1VV58Yo.js";
10
- import { n as getPersistedSandboxState, o as persistThreadStateById, r as getPersistedThreadState, s as coerceThreadConversationState } from "./thread-state-Ces6tXmB.js";
11
- import { d as loadPendingMessageCards, i as completeAuthPauseTurn, l as buildDeliveredTurnStatePatch, t as finalizeFailedTurnReplyWithEvent } from "./turn-failure-response-B4VCvEQf.js";
7
+ import { n as getAssistantReplyText } from "./assistant-reply-BU05IECs.js";
8
+ import { n as scheduleSessionCompletedPluginTasks, t as processPluginTask } from "./task-runner-DwD-i2ta.js";
9
+ import { t as ConversationTurnLifecycleService } from "./turn-lifecycle-BAEJpjDI.js";
10
+ import { n as getPersistedSandboxState, o as persistThreadStateById, r as getPersistedThreadState, s as coerceThreadConversationState } from "./thread-state-BQxkL7Xm.js";
11
+ import { d as loadPendingMessageCards, i as completeAuthPauseTurn, l as buildDeliveredTurnStatePatch, t as finalizeFailedTurnReplyWithEvent } from "./turn-failure-response-OAIxgzNh.js";
12
12
  import { randomUUID } from "node:crypto";
13
13
  import { createLocalSource, localDestinationSchema } from "@sentry/junior-plugin-api";
14
14
  //#region src/chat/local/runner.ts
@@ -1,4 +1,4 @@
1
- import { Mt as sandboxEgressSignalsResponseSchema } from "./agent-runner-B-7S_DCS.js";
1
+ import { Mt as sandboxEgressSignalsResponseSchema } from "./agent-runner-B4FMVbCs.js";
2
2
  //#region src/chat/local/sandbox-egress-signals.ts
3
3
  const SANDBOX_EGRESS_SIGNALS_PATH = "/api/internal/sandbox-egress/signals";
4
4
  const LOCAL_DEV_SERVER_TIMEOUT_MS = 1e3;
@@ -1,16 +1,16 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-B4FMCO8f.js";
2
- import { d as logException, f as logInfo, p as logWarn } from "./logging-COUsTFIL.js";
3
- import { n as botConfig } from "./config-DNNkxfGS.js";
4
- import { f as getSqlExecutor, u as getConversationStore } from "./viewer-D96vo_42.js";
2
+ import { d as logException, f as logInfo, p as logWarn } from "./logging-B0QxCh3D.js";
3
+ import { n as botConfig } from "./config-B7joRWt7.js";
4
+ import { f as getSqlExecutor, u as getConversationStore } from "./viewer-CPxNfHWa.js";
5
5
  import { s as juniorConversations } from "./agent-invocations-D_YoNnAn.js";
6
- import "./executor-_4bdoCxe.js";
7
- import { p as credentialSubjectSchema } from "./registry-CeEpPna6.js";
8
- import { V as postSlackMessage, _t as isToolResultError, ht as isAssistantMessage, vt as isToolResultMessage, wt as ToolInputError, yt as normalizeToolNameFromResult } from "./tasks-DwGlFX9i.js";
9
- import { it as JUNIOR_THREAD_STATE_TTL_MS, rt as verifyTimerWatchCredentialSubject, u as getPlugins } from "./agent-hooks-DcoKnnxn.js";
10
- import { w as getStateAdapter } from "./profile-DP4LKL6V.js";
11
- import { r as sanitizeAssistantText } from "./assistant-reply-DbPLvsnL.js";
6
+ import "./executor-YL577nNt.js";
7
+ import { p as credentialSubjectSchema } from "./registry-BO2LM2oW.js";
8
+ import { V as postSlackMessage, _t as isToolResultError, ht as isAssistantMessage, vt as isToolResultMessage, wt as ToolInputError, yt as normalizeToolNameFromResult } from "./tasks-DThIG7F-.js";
9
+ import { it as JUNIOR_THREAD_STATE_TTL_MS, rt as verifyTimerWatchCredentialSubject, u as getPlugins } from "./agent-hooks-CvcbAtJH.js";
10
+ import { w as getStateAdapter } from "./profile-p1oiViVs.js";
11
+ import { r as sanitizeAssistantText } from "./assistant-reply-BU05IECs.js";
12
12
  import { r as EVENT_AUTHOR_ID } from "./prompt-C04mP1hu.js";
13
- import { r as appendAndEnqueueInboundMessage } from "./store-Dx1U69mm.js";
13
+ import { r as appendAndEnqueueInboundMessage } from "./store-DIFp9K52.js";
14
14
  import { z } from "zod";
15
15
  import { eq, inArray } from "drizzle-orm";
16
16
  import { eventMatchSchema, normalizeEventIdentifier, objectTypeSchema } from "@sentry/junior-plugin-api";
@@ -1,7 +1,7 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-B4FMCO8f.js";
2
- import { p as logWarn } from "./logging-COUsTFIL.js";
2
+ import { p as logWarn } from "./logging-B0QxCh3D.js";
3
3
  import { s as skillRoots } from "./package-discovery-BVvSnQBB.js";
4
- import { n as pluginCatalogRuntime } from "./catalog-runtime-BQQiwwA7.js";
4
+ import { n as pluginCatalogRuntime } from "./catalog-runtime-Br8s-TYx.js";
5
5
  import path from "node:path";
6
6
  import { z } from "zod";
7
7
  import fs from "node:fs/promises";
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-B4FMCO8f.js";
2
- import { Ht as toolInvocationDestination, Vt as actorFromRun } from "./agent-runner-B-7S_DCS.js";
3
- import { n as createAndEnqueueAgentInvocation } from "./work-D2M2-zCO.js";
2
+ import { Ht as toolInvocationDestination, Vt as actorFromRun } from "./agent-runner-B4FMVbCs.js";
3
+ import { n as createAndEnqueueAgentInvocation } from "./work-Dl5KPKjW.js";
4
4
  //#region src/chat/agent-invocations/spawn.ts
5
5
  var spawn_exports = /* @__PURE__ */ __exportAll({ bindSpawnAgent: () => bindSpawnAgent });
6
6
  /** Bind a Run's Actor and credentials to new Agent invocations. */
@@ -1,10 +1,10 @@
1
- import { I as isRecord, L as toOptionalNumber, R as toOptionalString } from "./logging-COUsTFIL.js";
2
- import { i as getChatConfig } from "./config-DNNkxfGS.js";
1
+ import { I as isRecord, L as toOptionalNumber, R as toOptionalString } from "./logging-B0QxCh3D.js";
2
+ import { i as getChatConfig } from "./config-B7joRWt7.js";
3
3
  import { s as parseStoredSlackActor } from "./actor-BTtLaeWy.js";
4
- import { F as sameDestination, N as parseDestination, u as getConversationStore } from "./viewer-D96vo_42.js";
5
- import { it as JUNIOR_THREAD_STATE_TTL_MS } from "./agent-hooks-DcoKnnxn.js";
6
- import { C as getDefaultRedisStateAdapterFor, w as getStateAdapter } from "./profile-DP4LKL6V.js";
7
- import "./job-queue-DSQx1qFY.js";
4
+ import { F as sameDestination, N as parseDestination, u as getConversationStore } from "./viewer-CPxNfHWa.js";
5
+ import { it as JUNIOR_THREAD_STATE_TTL_MS } from "./agent-hooks-CvcbAtJH.js";
6
+ import { C as getDefaultRedisStateAdapterFor, w as getStateAdapter } from "./profile-p1oiViVs.js";
7
+ import "./job-queue-CIhKXUE3.js";
8
8
  import { z } from "zod";
9
9
  import { randomUUID } from "node:crypto";
10
10
  import { destinationSchema } from "@sentry/junior-plugin-api";
@@ -1,5 +1,5 @@
1
- import { p as logWarn } from "./logging-COUsTFIL.js";
2
- import { c as QUEUE_SIGNATURE_MAX_AGE_MS, d as createVercelQueueClient, l as signQueueMessage, p as runWithTurnRequestDeadline, u as verifyQueueMessage } from "./job-queue-DSQx1qFY.js";
1
+ import { p as logWarn } from "./logging-B0QxCh3D.js";
2
+ import { c as QUEUE_SIGNATURE_MAX_AGE_MS, d as createVercelQueueClient, l as signQueueMessage, p as runWithTurnRequestDeadline, u as verifyQueueMessage } from "./job-queue-CIhKXUE3.js";
3
3
  import { z } from "zod";
4
4
  import { createHash } from "node:crypto";
5
5
  import { handleCallback, registerDevConsumer } from "@vercel/queue";
@@ -115,7 +115,7 @@ function pluginTaskCallback() {
115
115
  maxDeliveries: PLUGIN_TASK_MAX_DELIVERIES,
116
116
  onRejected: logPluginTaskQueueMessageRejected,
117
117
  run: async (message) => {
118
- const { processPluginTask } = await import("./task-runner-CO55Olal.js").then((n) => n.r);
118
+ const { processPluginTask } = await import("./task-runner-DwD-i2ta.js").then((n) => n.r);
119
119
  await processPluginTask(message);
120
120
  },
121
121
  topic: PLUGIN_TASK_QUEUE_TOPIC,