@sentry/junior 0.182.0 → 0.184.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 (98) hide show
  1. package/dist/{agent-hooks-3S25UIHO.js → agent-hooks-XTZVALGQ.js} +11 -11
  2. package/dist/api/acp/auth.d.ts +46 -0
  3. package/dist/api/acp/authorization-page.d.ts +11 -0
  4. package/dist/api/acp/conversations.d.ts +70 -0
  5. package/dist/api/acp/errors.d.ts +6 -0
  6. package/dist/api/acp/route.d.ts +16 -0
  7. package/dist/api/acp/schema.d.ts +97 -0
  8. package/dist/api/acp/sleep.d.ts +2 -0
  9. package/dist/api/acp/state.d.ts +22 -0
  10. package/dist/api/acp/transport.d.ts +113 -0
  11. package/dist/api/code/overview.d.ts +35 -0
  12. package/dist/api/code/routes.d.ts +4 -0
  13. package/dist/api/schema/code.d.ts +75 -0
  14. package/dist/api/schema.d.ts +2 -0
  15. package/dist/api/schema.js +9 -1
  16. package/dist/api.js +258 -134
  17. package/dist/app.d.ts +0 -4
  18. package/dist/app.js +2171 -220
  19. package/dist/{catalog-runtime-ESLMBQBV.js → catalog-runtime-5357XR4F.js} +4 -4
  20. package/dist/chat/agent-invocations/store.d.ts +4 -2
  21. package/dist/chat/agent-invocations/work.d.ts +1 -3
  22. package/dist/chat/app/factory.d.ts +3 -3
  23. package/dist/chat/app/services.d.ts +3 -3
  24. package/dist/chat/code/publisher.d.ts +3 -0
  25. package/dist/chat/code/store.d.ts +9 -0
  26. package/dist/chat/event-tasks/store.d.ts +10 -0
  27. package/dist/chat/ingress/slack-webhook.d.ts +1 -1
  28. package/dist/chat/plugins/agent-hooks.d.ts +5 -0
  29. package/dist/chat/{runtime/slack-runtime.d.ts → providers/slack/runtime.d.ts} +2 -2
  30. package/dist/chat/{runtime/reply-executor.d.ts → providers/slack/turn.d.ts} +10 -9
  31. package/dist/chat/resource-events/store.d.ts +12 -0
  32. package/dist/chat/runtime/turn-execution.d.ts +30 -0
  33. package/dist/chat/slack/dispatch-turn.d.ts +12 -14
  34. package/dist/chat/task-execution/slack-work.d.ts +1 -1
  35. package/dist/{chunk-SXOZIG5X.js → chunk-2ZQPVX7C.js} +6 -6
  36. package/dist/{chunk-UQP54CXZ.js → chunk-3S7ULUWW.js} +1 -1
  37. package/dist/{chunk-2CEOXDG2.js → chunk-4CNDGK25.js} +174 -6
  38. package/dist/{chunk-3THPTNN6.js → chunk-4RONS3WR.js} +4 -4
  39. package/dist/{chunk-LHQK5XCU.js → chunk-6UDPINOX.js} +2 -2
  40. package/dist/{chunk-BZD4ADQH.js → chunk-6VOYP4M6.js} +2 -3
  41. package/dist/{chunk-QHALFHZA.js → chunk-6WGC3SO4.js} +9 -9
  42. package/dist/{chunk-BDDWVY32.js → chunk-ACPDVEJO.js} +22 -20
  43. package/dist/{chunk-44BQ3TSK.js → chunk-BCHYQS4B.js} +233 -173
  44. package/dist/{chunk-SVFSYQMT.js → chunk-BHYRYYLY.js} +1 -1
  45. package/dist/{chunk-LT4QYGKM.js → chunk-BT53RIGJ.js} +160 -97
  46. package/dist/{chunk-Z7ALSQS3.js → chunk-DUKIDPF6.js} +1 -1
  47. package/dist/{chunk-PQES5LB5.js → chunk-E57WPXWY.js} +5 -5
  48. package/dist/{chunk-GGYA5NPN.js → chunk-FKEZZMXS.js} +8 -8
  49. package/dist/{chunk-LB4FWMCV.js → chunk-HIPUIPJM.js} +183 -155
  50. package/dist/{chunk-3NFHI2NA.js → chunk-HUXFMDBZ.js} +1 -1
  51. package/dist/{chunk-6TSWXBTQ.js → chunk-IZDYYYGP.js} +3 -3
  52. package/dist/{chunk-YHL2L2ZZ.js → chunk-JA43DV4Y.js} +1 -1
  53. package/dist/{chunk-V5UZCCNW.js → chunk-JM2COLGC.js} +6 -6
  54. package/dist/{chunk-A7THOQ6N.js → chunk-JNO2GUDS.js} +21 -21
  55. package/dist/{chunk-KGMHUDVF.js → chunk-K7VDC2QW.js} +6 -6
  56. package/dist/{chunk-CVBIM4Z3.js → chunk-LCP4EDKR.js} +1 -1
  57. package/dist/{chunk-4DZ62L36.js → chunk-LHXIZLFF.js} +1 -1
  58. package/dist/{chunk-D6OHGAIO.js → chunk-M5YWNMTE.js} +5 -5
  59. package/dist/{chunk-3ENUMZNG.js → chunk-MAPJFUMV.js} +3 -3
  60. package/dist/{chunk-UUMBHORH.js → chunk-MLSQX2EX.js} +1 -1
  61. package/dist/{chunk-WOIALVN2.js → chunk-PJPRXO2T.js} +1 -1
  62. package/dist/{chunk-VHMAFMHB.js → chunk-QABCY33S.js} +1 -1
  63. package/dist/{chunk-UKIHNBBD.js → chunk-SHJK75Z2.js} +3 -3
  64. package/dist/{chunk-S35OZMSL.js → chunk-UBOIHNTH.js} +13 -13
  65. package/dist/{chunk-DZR3L74W.js → chunk-UF6BUA5W.js} +3 -3
  66. package/dist/{chunk-JIOKUIAS.js → chunk-WQFEWULF.js} +2 -2
  67. package/dist/chunk-WVIA7V3M.js +975 -0
  68. package/dist/{chunk-MJISSOWB.js → chunk-YKX6MTLU.js} +1 -1
  69. package/dist/{chunk-TEFNHMO2.js → chunk-Z3QAXJR7.js} +4 -4
  70. package/dist/cli/chat.js +33 -35
  71. package/dist/cli/check.js +5 -5
  72. package/dist/cli/plugins.js +12 -12
  73. package/dist/cli/snapshot-create.js +9 -9
  74. package/dist/cli/upgrade.js +6 -6
  75. package/dist/db/schema/code.d.ts +367 -0
  76. package/dist/db/schema.d.ts +367 -1
  77. package/dist/{db-NYIWZ4L5.js → db-MA52H62H.js} +6 -6
  78. package/dist/instrumentation.js +3 -3
  79. package/dist/nitro.js +6 -6
  80. package/dist/{oauth-callback-server-A2YTPVVX.js → oauth-callback-server-DXGHKN6S.js} +25 -25
  81. package/dist/{runner-VKAEU52J.js → runner-4IXUAQNK.js} +18 -18
  82. package/dist/{skills-52GMXUTY.js → skills-X3DY7AXO.js} +5 -5
  83. package/dist/spawn-43WGS6CH.js +37 -0
  84. package/dist/task-runner-VDRKITPV.js +32 -0
  85. package/dist/{validation-VD2YQX2W.js → validation-Z6JXSTJS.js} +5 -5
  86. package/dist/version.js +1 -1
  87. package/dist/{work-ZWBTGEQP.js → work-OKWRFBDW.js} +18 -18
  88. package/dist/worker-B236AE72.js +22 -0
  89. package/migrations/0036_complex_rage.sql +32 -0
  90. package/migrations/meta/0036_snapshot.json +3186 -0
  91. package/migrations/meta/_journal.json +8 -1
  92. package/package.json +6 -7
  93. package/dist/app-adapter.d.ts +0 -85
  94. package/dist/chat/api-turns/adapter-conversations.d.ts +0 -15
  95. package/dist/chunk-CZYNWPWD.js +0 -930
  96. package/dist/spawn-GSS4EBLR.js +0 -37
  97. package/dist/task-runner-DUGDWF5O.js +0 -32
  98. package/dist/worker-XUWD5WS7.js +0 -22
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  logWarn
3
- } from "./chunk-UQP54CXZ.js";
3
+ } from "./chunk-3S7ULUWW.js";
4
4
 
5
5
  // src/chat/conversation-privacy.ts
6
6
  import { AsyncLocalStorage } from "async_hooks";
@@ -5,7 +5,7 @@ import {
5
5
  getPersistedSandboxState,
6
6
  getPersistedThreadState,
7
7
  persistThreadStateById
8
- } from "./chunk-PQES5LB5.js";
8
+ } from "./chunk-E57WPXWY.js";
9
9
  import {
10
10
  AgentInvocationBusyError,
11
11
  AgentInvocationLimitError,
@@ -14,36 +14,78 @@ import {
14
14
  agentBindingSchema,
15
15
  agentInvocationSchema,
16
16
  createAgentInvocationSchema
17
- } from "./chunk-KGMHUDVF.js";
17
+ } from "./chunk-K7VDC2QW.js";
18
18
  import {
19
19
  appendAndEnqueueInboundMessage
20
- } from "./chunk-TEFNHMO2.js";
20
+ } from "./chunk-Z3QAXJR7.js";
21
21
  import {
22
22
  TurnInputCommitLostError,
23
23
  getAssistantReplyText,
24
24
  getConversationTurnBoundaryError,
25
25
  isTurnInputCommitLostError
26
- } from "./chunk-YHL2L2ZZ.js";
26
+ } from "./chunk-JA43DV4Y.js";
27
27
  import {
28
28
  failTurnRecord,
29
29
  getTerminalAssistantMessages,
30
30
  getTurnRecord,
31
31
  openConversationProjection,
32
32
  saveTurnCheckpoint
33
- } from "./chunk-SXOZIG5X.js";
33
+ } from "./chunk-2ZQPVX7C.js";
34
34
  import {
35
35
  getConversationEventStore,
36
36
  getConversationStore,
37
37
  getSqlExecutor
38
- } from "./chunk-6TSWXBTQ.js";
38
+ } from "./chunk-IZDYYYGP.js";
39
39
  import {
40
40
  juniorAgentBindings,
41
41
  juniorAgentInvocations
42
- } from "./chunk-44BQ3TSK.js";
42
+ } from "./chunk-BCHYQS4B.js";
43
43
 
44
44
  // src/chat/agent-invocations/work.ts
45
45
  import { z } from "zod";
46
46
 
47
+ // src/chat/runtime/turn-execution.ts
48
+ var AgentRunError = class extends Error {
49
+ constructor(cause) {
50
+ super(cause instanceof Error ? cause.message : "Agent Run failed", {
51
+ cause
52
+ });
53
+ this.name = "AgentRunError";
54
+ }
55
+ };
56
+ async function executeTurn(agentRunner, run, saveResult) {
57
+ let outcome;
58
+ try {
59
+ outcome = await agentRunner.run(run);
60
+ } catch (error) {
61
+ throw new AgentRunError(error);
62
+ }
63
+ if (outcome.status !== "completed") {
64
+ return outcome;
65
+ }
66
+ const saved = await saveResult(outcome.result);
67
+ const lifecycle = new ConversationTurnLifecycleService(
68
+ getConversationEventStore()
69
+ );
70
+ const common = {
71
+ conversationId: run.conversationId,
72
+ createdAtMs: saved.finishedAtMs ?? Date.now(),
73
+ turnId: run.turnId
74
+ };
75
+ if (saved.outcome === "failed") {
76
+ await lifecycle.fail({
77
+ ...common,
78
+ failureCode: saved.failureCode
79
+ });
80
+ } else {
81
+ await lifecycle.complete({
82
+ ...common,
83
+ outcome: saved.outcome
84
+ });
85
+ }
86
+ return { status: "completed" };
87
+ }
88
+
47
89
  // src/chat/agent-invocations/store.ts
48
90
  import { createHash } from "crypto";
49
91
  import { and, asc, count, eq, inArray } from "drizzle-orm";
@@ -441,7 +483,54 @@ function isInvocationInputCommitLost(error) {
441
483
  const cause = getConversationTurnBoundaryError(error)?.cause ?? error;
442
484
  return isTurnInputCommitLostError(cause);
443
485
  }
444
- function createAgentInvocationWorker(options) {
486
+ async function saveAgentInvocationResult(args) {
487
+ const failed = args.result.diagnostics.outcome !== "success";
488
+ await persistThreadStateById(args.invocation.childConversationId, {
489
+ sandboxRef: args.result.sandboxRef ?? args.sandboxRef
490
+ });
491
+ if (args.result.piMessages?.length) {
492
+ await saveTurnCheckpoint({
493
+ mode: "completed",
494
+ conversationId: args.invocation.childConversationId,
495
+ turnId: args.turnId,
496
+ durationMs: args.result.diagnostics.durationMs,
497
+ usage: args.result.diagnostics.usage,
498
+ destination: args.invocation.destination,
499
+ destinationVisibility: args.invocation.destinationVisibility,
500
+ ...failed ? {
501
+ errorMessage: args.result.diagnostics.errorMessage ?? "Agent invocation failed"
502
+ } : void 0,
503
+ messages: args.result.piMessages,
504
+ actor: args.invocation.actor,
505
+ source: args.invocation.source,
506
+ surface: "internal"
507
+ });
508
+ }
509
+ const terminal = await completeAgentInvocation({
510
+ invocationId: args.invocation.invocationId,
511
+ ...failed ? {
512
+ errorMessage: args.result.diagnostics.errorMessage ?? "Agent invocation failed",
513
+ status: "failed"
514
+ } : {
515
+ result: args.result.text,
516
+ status: "completed"
517
+ }
518
+ });
519
+ if (!terminal || !isTerminalAgentInvocation(terminal)) {
520
+ throw new Error(
521
+ `Agent invocation did not finish for ${args.invocation.invocationId}`
522
+ );
523
+ }
524
+ return terminal.status === "completed" ? {
525
+ finishedAtMs: terminal.terminalAtMs,
526
+ outcome: terminal.result.trim() ? "success" : "no_reply"
527
+ } : {
528
+ finishedAtMs: terminal.terminalAtMs,
529
+ failureCode: "model_execution_failed",
530
+ outcome: "failed"
531
+ };
532
+ }
533
+ function createAgentInvocationWorker(agentRunner) {
445
534
  return async (context, invocationId) => {
446
535
  let invocation = await getAgentInvocation(invocationId);
447
536
  if (!invocation) {
@@ -512,81 +601,94 @@ function createAgentInvocationWorker(options) {
512
601
  if (!context.attempt.isFinalAttempt) {
513
602
  throw error;
514
603
  }
515
- const terminal2 = await completeAgentInvocation({
604
+ const terminal = await completeAgentInvocation({
516
605
  invocationId: invocation.invocationId,
517
606
  errorMessage: error instanceof Error ? error.message : "Agent invocation failed",
518
607
  status: "failed"
519
608
  });
520
- if (terminal2) {
521
- await persistTerminalLifecycle(terminal2);
609
+ if (terminal) {
610
+ await persistTerminalLifecycle(terminal);
522
611
  }
523
612
  await acknowledge();
524
613
  return { status: "completed" };
525
614
  }
526
615
  let outcome;
527
616
  try {
528
- outcome = await options.agentRunner.run({
529
- conversationId: invocation.childConversationId,
530
- turnId,
531
- runId: invocation.invocationId,
532
- instruction: {
533
- text: invocation.input
534
- },
535
- history,
536
- actor: invocation.actor,
537
- credentialContext: invocation.credentialContext,
538
- destination: invocation.destination,
539
- destinationVisibility: invocation.destinationVisibility,
540
- publishExternally: context.publishExternally,
541
- source: invocation.source,
542
- surface: "internal",
543
- // TODO(#881, #883): Child runs may still need a path to force
544
- // interactive auth when a delegated tool requires credentials the
545
- // parent already has authority to request. Today background children
546
- // hard-fail instead of pausing for an OAuth link.
547
- disabledFeatures: ["handoff", "interactive-auth", "subagents"],
548
- reasoning: invocation.reasoningLevel,
549
- state: {
550
- sandboxRef
551
- },
552
- durability: {
553
- onInputCommitted: acknowledge,
554
- shouldYield: context.shouldYield,
555
- onSandboxRefChanged: async (nextSandboxRef) => {
556
- sandboxRef = nextSandboxRef;
557
- await persistThreadStateById(invocation.childConversationId, {
558
- sandboxRef
559
- });
617
+ outcome = await executeTurn(
618
+ agentRunner,
619
+ {
620
+ conversationId: invocation.childConversationId,
621
+ turnId,
622
+ runId: invocation.invocationId,
623
+ instruction: {
624
+ text: invocation.input
625
+ },
626
+ history,
627
+ actor: invocation.actor,
628
+ credentialContext: invocation.credentialContext,
629
+ destination: invocation.destination,
630
+ destinationVisibility: invocation.destinationVisibility,
631
+ publishExternally: context.publishExternally,
632
+ source: invocation.source,
633
+ surface: "internal",
634
+ // TODO(#881, #883): Child runs may still need a path to force
635
+ // interactive auth when a delegated tool requires credentials the
636
+ // parent already has authority to request. Today background children
637
+ // hard-fail instead of pausing for an OAuth link.
638
+ disabledFeatures: ["handoff", "interactive-auth", "subagents"],
639
+ reasoning: invocation.reasoningLevel,
640
+ state: {
641
+ sandboxRef
642
+ },
643
+ durability: {
644
+ onInputCommitted: acknowledge,
645
+ shouldYield: context.shouldYield,
646
+ onSandboxRefChanged: async (nextSandboxRef) => {
647
+ sandboxRef = nextSandboxRef;
648
+ await persistThreadStateById(invocation.childConversationId, {
649
+ sandboxRef
650
+ });
651
+ }
560
652
  }
561
- }
562
- });
653
+ },
654
+ async (result) => await saveAgentInvocationResult({
655
+ invocation,
656
+ result,
657
+ sandboxRef,
658
+ turnId
659
+ })
660
+ );
563
661
  } catch (error) {
564
- if (isInvocationInputCommitLost(error)) {
662
+ if (!(error instanceof AgentRunError)) {
663
+ throw error;
664
+ }
665
+ const runError = error.cause;
666
+ if (isInvocationInputCommitLost(runError)) {
565
667
  return { status: "lost_lease" };
566
668
  }
567
- const blocking = blockingInvocationError(error);
669
+ const blocking = blockingInvocationError(runError);
568
670
  if (blocking) {
569
- const terminal3 = await completeAgentInvocation({
671
+ const terminal2 = await completeAgentInvocation({
570
672
  invocationId: invocation.invocationId,
571
673
  errorMessage: blocking.message,
572
674
  status: "blocked"
573
675
  });
574
- if (terminal3) {
575
- await persistTerminalLifecycle(terminal3);
676
+ if (terminal2) {
677
+ await persistTerminalLifecycle(terminal2);
576
678
  }
577
679
  await acknowledge();
578
680
  return { status: "completed" };
579
681
  }
580
682
  if (!context.attempt.isFinalAttempt) {
581
- throw error;
683
+ throw runError;
582
684
  }
583
- const terminal2 = await completeAgentInvocation({
685
+ const terminal = await completeAgentInvocation({
584
686
  invocationId: invocation.invocationId,
585
- errorMessage: error instanceof Error ? error.message : "Agent invocation failed",
687
+ errorMessage: runError instanceof Error ? runError.message : "Agent invocation failed",
586
688
  status: "failed"
587
689
  });
588
- if (terminal2) {
589
- await persistTerminalLifecycle(terminal2);
690
+ if (terminal) {
691
+ await persistTerminalLifecycle(terminal);
590
692
  }
591
693
  await acknowledge();
592
694
  return { status: "completed" };
@@ -596,56 +698,17 @@ function createAgentInvocationWorker(options) {
596
698
  return { status: "yielded" };
597
699
  }
598
700
  if (outcome.status === "awaiting_auth") {
599
- const terminal2 = await completeAgentInvocation({
701
+ const terminal = await completeAgentInvocation({
600
702
  invocationId: invocation.invocationId,
601
703
  errorMessage: `Agent invocation requires ${outcome.providerDisplayName} authorization`,
602
704
  status: "blocked"
603
705
  });
604
- if (terminal2) {
605
- await persistTerminalLifecycle(terminal2);
706
+ if (terminal) {
707
+ await persistTerminalLifecycle(terminal);
606
708
  }
607
709
  await acknowledge();
608
710
  return { status: "completed" };
609
711
  }
610
- const result = outcome.result;
611
- const failed = result.diagnostics.outcome !== "success";
612
- await persistThreadStateById(invocation.childConversationId, {
613
- sandboxRef: result.sandboxRef ?? sandboxRef
614
- });
615
- if (result.piMessages?.length) {
616
- await saveTurnCheckpoint({
617
- mode: "completed",
618
- conversationId: invocation.childConversationId,
619
- turnId,
620
- durationMs: result.diagnostics.durationMs,
621
- usage: result.diagnostics.usage,
622
- destination: invocation.destination,
623
- destinationVisibility: invocation.destinationVisibility,
624
- ...failed ? {
625
- errorMessage: result.diagnostics.errorMessage ?? "Agent invocation failed"
626
- } : void 0,
627
- messages: result.piMessages,
628
- actor: invocation.actor,
629
- source: invocation.source,
630
- surface: "internal"
631
- });
632
- }
633
- const terminal = await completeAgentInvocation({
634
- invocationId: invocation.invocationId,
635
- ...failed ? {
636
- errorMessage: result.diagnostics.errorMessage ?? "Agent invocation failed",
637
- status: "failed"
638
- } : {
639
- result: result.text,
640
- status: "completed"
641
- }
642
- });
643
- if (!terminal) {
644
- throw new Error(
645
- `Agent invocation disappeared during completion for ${invocation.invocationId}`
646
- );
647
- }
648
- await persistTerminalLifecycle(terminal);
649
712
  await acknowledge();
650
713
  return { status: "completed" };
651
714
  };
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  getChatConfig
3
- } from "./chunk-LHQK5XCU.js";
3
+ } from "./chunk-6UDPINOX.js";
4
4
 
5
5
  // src/chat/state/adapter.ts
6
6
  import { createMemoryState } from "@chat-adapter/state-memory";
@@ -1,18 +1,18 @@
1
1
  import {
2
2
  persistConversationMessages
3
- } from "./chunk-SXOZIG5X.js";
3
+ } from "./chunk-2ZQPVX7C.js";
4
4
  import {
5
5
  JUNIOR_THREAD_STATE_TTL_MS
6
6
  } from "./chunk-3Y47VMHV.js";
7
7
  import {
8
8
  getDb
9
- } from "./chunk-6TSWXBTQ.js";
9
+ } from "./chunk-IZDYYYGP.js";
10
10
  import {
11
11
  juniorLocationConfigurations
12
- } from "./chunk-44BQ3TSK.js";
12
+ } from "./chunk-BCHYQS4B.js";
13
13
  import {
14
14
  getStateAdapter
15
- } from "./chunk-Z7ALSQS3.js";
15
+ } from "./chunk-DUKIDPF6.js";
16
16
  import {
17
17
  juniorDestinations
18
18
  } from "./chunk-VFUK3X5B.js";
@@ -20,7 +20,7 @@ import {
20
20
  isRecord,
21
21
  toOptionalNumber,
22
22
  toOptionalString
23
- } from "./chunk-UQP54CXZ.js";
23
+ } from "./chunk-3S7ULUWW.js";
24
24
 
25
25
  // src/chat/state/conversation.ts
26
26
  function defaultConversationState() {
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-RF6J3DIO.js";
4
4
  import {
5
5
  resolveBaseUrl
6
- } from "./chunk-V5UZCCNW.js";
6
+ } from "./chunk-JM2COLGC.js";
7
7
  import {
8
8
  isExperimentalFeatureEnabled
9
9
  } from "./chunk-2LYHWMR4.js";
@@ -12,27 +12,27 @@ import {
12
12
  getPlugins,
13
13
  getSlackClient,
14
14
  withSlackRetries
15
- } from "./chunk-2CEOXDG2.js";
15
+ } from "./chunk-4CNDGK25.js";
16
16
  import {
17
17
  getDb,
18
18
  parseDestination
19
- } from "./chunk-6TSWXBTQ.js";
19
+ } from "./chunk-IZDYYYGP.js";
20
20
  import {
21
21
  sleep
22
- } from "./chunk-UKIHNBBD.js";
22
+ } from "./chunk-SHJK75Z2.js";
23
23
  import {
24
24
  acquireActiveLock,
25
25
  getStateAdapter
26
- } from "./chunk-Z7ALSQS3.js";
26
+ } from "./chunk-DUKIDPF6.js";
27
27
  import {
28
28
  pluginCatalogRuntime
29
- } from "./chunk-WOIALVN2.js";
29
+ } from "./chunk-PJPRXO2T.js";
30
30
  import {
31
31
  fetchWithBoundedOAuthErrorBodies
32
- } from "./chunk-4DZ62L36.js";
32
+ } from "./chunk-LHXIZLFF.js";
33
33
  import {
34
34
  isRecord
35
- } from "./chunk-UQP54CXZ.js";
35
+ } from "./chunk-3S7ULUWW.js";
36
36
 
37
37
  // src/chat/capabilities/router.ts
38
38
  var ProviderCredentialRouter = class {