@sentry/junior 0.126.1 → 0.128.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 (124) hide show
  1. package/dist/{agent-hooks-U5YGLX6Y.js → agent-hooks-F75ANGBV.js} +9 -9
  2. package/dist/api/people/spend.d.ts +4 -0
  3. package/dist/api/people/spend.query.d.ts +3 -0
  4. package/dist/api/schema/person.d.ts +9 -0
  5. package/dist/api/schema.d.ts +2 -2
  6. package/dist/api/schema.js +3 -1
  7. package/dist/api.js +141 -40
  8. package/dist/app.js +289 -146
  9. package/dist/{catalog-runtime-OUPLWD7F.js → catalog-runtime-ZPSA5QM2.js} +6 -6
  10. package/dist/chat/agent-dispatch/context.d.ts +17 -0
  11. package/dist/chat/agent-dispatch/store.d.ts +1 -1
  12. package/dist/chat/agent-dispatch/work.d.ts +1 -1
  13. package/dist/chat/credentials/context.d.ts +27 -0
  14. package/dist/chat/credentials/subject.d.ts +15 -0
  15. package/dist/chat/event-tasks/ingest.d.ts +9 -0
  16. package/dist/chat/event-tasks/store.d.ts +15 -0
  17. package/dist/chat/event-tasks/tool-support.d.ts +140 -0
  18. package/dist/chat/event-tasks/types.d.ts +44 -0
  19. package/dist/chat/plugins/agent-hooks.d.ts +4 -2
  20. package/dist/chat/plugins/viewer.d.ts +16 -0
  21. package/dist/chat/resource-events/catalog.d.ts +21 -0
  22. package/dist/chat/resource-events/ingest.d.ts +2 -1
  23. package/dist/chat/resource-events/notification.d.ts +2 -2
  24. package/dist/chat/resource-events/store.d.ts +11 -9
  25. package/dist/chat/resource-events/tool-support.d.ts +10 -0
  26. package/dist/chat/resource-events/workspace.d.ts +4 -0
  27. package/dist/chat/sandbox/command-result.d.ts +3 -22
  28. package/dist/chat/sandbox/egress/schemas.d.ts +11 -0
  29. package/dist/chat/services/guardian-action-policy.d.ts +1 -1
  30. package/dist/chat/slack/dispatch-turn.d.ts +1 -1
  31. package/dist/chat/slack/tools/canvas/create.d.ts +0 -16
  32. package/dist/chat/slack/tools/canvas/edit.d.ts +0 -16
  33. package/dist/chat/slack/tools/canvas/read.d.ts +0 -16
  34. package/dist/chat/slack/tools/canvas/write.d.ts +0 -16
  35. package/dist/chat/slack/tools/channel-list-messages.d.ts +0 -16
  36. package/dist/chat/slack/tools/conversation-search.d.ts +0 -16
  37. package/dist/chat/slack/tools/list/add-items.d.ts +0 -16
  38. package/dist/chat/slack/tools/list/create.d.ts +0 -16
  39. package/dist/chat/slack/tools/list/get-items.d.ts +0 -16
  40. package/dist/chat/slack/tools/list/update-item.d.ts +0 -16
  41. package/dist/chat/slack/tools/message-add-reaction.d.ts +0 -16
  42. package/dist/chat/slack/tools/public-search.d.ts +0 -16
  43. package/dist/chat/slack/tools/send-files.d.ts +10 -28
  44. package/dist/chat/slack/tools/thread-read.d.ts +0 -16
  45. package/dist/chat/slack/tools/user-lookup.d.ts +0 -16
  46. package/dist/chat/task-execution/slack-work.d.ts +4 -4
  47. package/dist/chat/tool-support/action-review.d.ts +1 -1
  48. package/dist/chat/tool-support/structured-result.d.ts +17 -46
  49. package/dist/chat/tool-support/text-range-result.d.ts +8 -32
  50. package/dist/chat/tool-support/zod-tool.d.ts +6 -7
  51. package/dist/chat/tools/create-event-task.d.ts +65 -0
  52. package/dist/chat/tools/definition.d.ts +4 -0
  53. package/dist/chat/tools/delete-event-task.d.ts +57 -0
  54. package/dist/chat/tools/event-tasks.d.ts +5 -0
  55. package/dist/chat/tools/handoff/tool.d.ts +0 -16
  56. package/dist/chat/tools/list-event-tasks.d.ts +55 -0
  57. package/dist/chat/tools/list-resource-event-subscriptions.d.ts +42 -0
  58. package/dist/chat/tools/query-conversation-events.d.ts +0 -16
  59. package/dist/chat/tools/resource-events.d.ts +2 -1
  60. package/dist/chat/tools/runtime/report-progress.d.ts +0 -16
  61. package/dist/chat/tools/sandbox/edit-file.d.ts +0 -23
  62. package/dist/chat/tools/sandbox/file-utils.d.ts +2 -17
  63. package/dist/chat/tools/sandbox/find-files.d.ts +5 -8
  64. package/dist/chat/tools/sandbox/grep.d.ts +1 -4
  65. package/dist/chat/tools/sandbox/list-dir.d.ts +1 -4
  66. package/dist/chat/tools/search-resource-event-types.d.ts +44 -0
  67. package/dist/chat/tools/search-tools.d.ts +0 -16
  68. package/dist/chat/tools/skill/load-skill.d.ts +0 -20
  69. package/dist/chat/tools/skill/search-mcp-tools.d.ts +0 -16
  70. package/dist/chat/tools/stop-watching-resources.d.ts +28 -0
  71. package/dist/chat/tools/system-time.d.ts +0 -16
  72. package/dist/chat/tools/types.d.ts +8 -4
  73. package/dist/chat/tools/update-event-task.d.ts +66 -0
  74. package/dist/chat/tools/watch-resource-events.d.ts +59 -0
  75. package/dist/chat/tools/web/fetch-content.d.ts +0 -2
  76. package/dist/chat/tools/web/fetch-tool.d.ts +0 -16
  77. package/dist/chat/tools/web/image-generate.d.ts +0 -16
  78. package/dist/chat/tools/web/search.d.ts +0 -16
  79. package/dist/{chunk-QVSYR5CV.js → chunk-2HTHX6XV.js} +4 -4
  80. package/dist/{chunk-Y2QRKPI7.js → chunk-3PKF6YNU.js} +1 -1
  81. package/dist/{chunk-GLNB2R42.js → chunk-5KKIBIIP.js} +12 -12
  82. package/dist/{chunk-W3U3YQYI.js → chunk-77VDLF3Z.js} +18 -1
  83. package/dist/{chunk-YZHA2L7P.js → chunk-A76LKS5W.js} +230 -102
  84. package/dist/{chunk-6ZBSTNYN.js → chunk-AFJF3RGU.js} +9 -0
  85. package/dist/{chunk-PD6J33TO.js → chunk-B6E3YA2H.js} +1 -1
  86. package/dist/{chunk-S4LM6UB7.js → chunk-B7FPRGUJ.js} +3 -3
  87. package/dist/{chunk-R3GXQJEE.js → chunk-BY43CEXN.js} +2 -2
  88. package/dist/{chunk-HDSDCEPK.js → chunk-EPBBYMNE.js} +1 -1
  89. package/dist/{chunk-YFE6VNHU.js → chunk-FJEIX3AH.js} +2 -2
  90. package/dist/{chunk-F2ARYRKC.js → chunk-G6XQODHM.js} +1 -1
  91. package/dist/{chunk-KBW6J5GA.js → chunk-HBFQLSGV.js} +4 -4
  92. package/dist/{chunk-YUPNY2HZ.js → chunk-JDCPDJ54.js} +2 -2
  93. package/dist/{chunk-WIIPHGJY.js → chunk-K5ZB3WWH.js} +2 -2
  94. package/dist/{chunk-OG6E44DH.js → chunk-KNRODVH2.js} +6 -6
  95. package/dist/{chunk-W3JHZHAN.js → chunk-KTGJAWRO.js} +1 -1
  96. package/dist/{chunk-7VF3JAVF.js → chunk-NHWE6Y7G.js} +7 -7
  97. package/dist/{chunk-HXWOZ4HG.js → chunk-OLGB5Y7R.js} +2 -2
  98. package/dist/{chunk-QMK2VF6K.js → chunk-PBWUUVVG.js} +1 -1
  99. package/dist/{chunk-7ZMY4GCG.js → chunk-RYWMDDWK.js} +1 -1
  100. package/dist/{chunk-S4PUICSB.js → chunk-SHMHHXD5.js} +34 -5
  101. package/dist/{chunk-JKV244BI.js → chunk-WZ365SQC.js} +1 -1
  102. package/dist/{chunk-SD2VFSN6.js → chunk-YY6CVET7.js} +1428 -1116
  103. package/dist/{chunk-U36WL4OL.js → chunk-Z4KTQMWW.js} +1 -1
  104. package/dist/cli/chat.js +27 -27
  105. package/dist/cli/check.js +7 -7
  106. package/dist/cli/plugins.js +13 -13
  107. package/dist/cli/snapshot-create.js +10 -10
  108. package/dist/cli/upgrade.js +8 -8
  109. package/dist/db/schema/event-tasks.d.ts +161 -0
  110. package/dist/db/schema.d.ts +163 -1
  111. package/dist/{db-FQID26JW.js → db-FYJYPAKG.js} +7 -7
  112. package/dist/instrumentation.js +4 -4
  113. package/dist/nitro.js +2 -2
  114. package/dist/{oauth-callback-server-Z5MHHKFD.js → oauth-callback-server-W3PPIHCS.js} +18 -18
  115. package/dist/{runner-PGPGKYSF.js → runner-5NOFUYKR.js} +11 -11
  116. package/dist/{sandbox-egress-signals-CDFAP67O.js → sandbox-egress-signals-A5HWIQH4.js} +2 -2
  117. package/dist/{skills-BCQHR636.js → skills-ENIBKF5V.js} +7 -7
  118. package/dist/{validation-QP3FYBLZ.js → validation-BHLBOO6K.js} +7 -7
  119. package/dist/version.js +1 -1
  120. package/migrations/0015_magical_ezekiel_stane.sql +11 -0
  121. package/migrations/meta/0015_snapshot.json +1360 -0
  122. package/migrations/meta/_journal.json +7 -0
  123. package/package.json +5 -5
  124. package/dist/chat/plugins/viewer-actors.d.ts +0 -6
@@ -1,14 +1,11 @@
1
1
  import { type SandboxCommandRunner, type SandboxFileSystem, type SandboxSearchTelemetry, type TextSearchResultDetails, type TextSearchToolResult } from "@/chat/tools/sandbox/file-utils";
2
- import { type JuniorToolResultEnvelope } from "@/chat/tool-support/structured-result";
2
+ import { type JuniorToolOutputEnvelope } from "@/chat/tool-support/structured-result";
3
3
  interface FindFilesSuccessResult {
4
- content: JuniorToolResultEnvelope["content"];
4
+ content: JuniorToolOutputEnvelope["content"];
5
5
  details: TextSearchResultDetails & {
6
- data: {
7
- files: string[];
8
- file_count: number;
9
- path: string;
10
- truncation_reasons?: string[];
11
- };
6
+ files: string[];
7
+ file_count: number;
8
+ truncation_reasons?: string[];
12
9
  result_limit_reached?: number;
13
10
  };
14
11
  }
@@ -14,10 +14,7 @@ interface GrepSuccessResult {
14
14
  type: "text";
15
15
  text: string;
16
16
  }];
17
- details: Extract<TextSearchResultDetails, {
18
- ok: true;
19
- }> & {
20
- data: GrepResultData;
17
+ details: TextSearchResultDetails & GrepResultData & {
21
18
  line_truncated?: boolean;
22
19
  match_limit_reached?: number;
23
20
  };
@@ -11,10 +11,7 @@ interface ListDirSuccessResult {
11
11
  type: "text";
12
12
  text: string;
13
13
  }];
14
- details: Extract<TextSearchResultDetails, {
15
- ok: true;
16
- }> & {
17
- data: ListDirResultData;
14
+ details: TextSearchResultDetails & ListDirResultData & {
18
15
  entry_limit_reached?: number;
19
16
  };
20
17
  }
@@ -0,0 +1,44 @@
1
+ import { type ResourceEventCatalog } from "@/chat/resource-events/catalog";
2
+ /** Create the read-only tool that searches enabled resource event types. */
3
+ export declare function createSearchResourceEventTypesTool(catalog: ResourceEventCatalog): Omit<import("./definition").AnyToolDefinition, "inputSchema" | "outputSchema" | "prepareArguments" | "execute"> & {
4
+ inputSchema: import("./definition").JsonSchemaObject;
5
+ outputSchema: import("./definition").JsonSchemaObject;
6
+ prepareArguments(args: unknown): {
7
+ query?: string | null | undefined;
8
+ namespace?: string | null | undefined;
9
+ maxResults?: number | null | undefined;
10
+ };
11
+ execute?: ((input: unknown, options: import("./definition").ToolExecuteOptions) => {
12
+ query: string | null;
13
+ namespace: string | null;
14
+ totalMatches: number;
15
+ resourceTypes: {
16
+ namespace: string;
17
+ type: string;
18
+ supportedEvents: string[];
19
+ suggestedEvents?: string[] | undefined;
20
+ }[];
21
+ target?: string | undefined;
22
+ truncated?: boolean | undefined;
23
+ continuation?: {
24
+ arguments: Record<string, unknown>;
25
+ reason?: string | undefined;
26
+ } | undefined;
27
+ } | Promise<{
28
+ query: string | null;
29
+ namespace: string | null;
30
+ totalMatches: number;
31
+ resourceTypes: {
32
+ namespace: string;
33
+ type: string;
34
+ supportedEvents: string[];
35
+ suggestedEvents?: string[] | undefined;
36
+ }[];
37
+ target?: string | undefined;
38
+ truncated?: boolean | undefined;
39
+ continuation?: {
40
+ arguments: Record<string, unknown>;
41
+ reason?: string | undefined;
42
+ } | undefined;
43
+ }>) | undefined;
44
+ };
@@ -12,8 +12,6 @@ export declare function createSearchToolsTool(catalogTools: Record<string, AnyTo
12
12
  max_results?: number | null | undefined;
13
13
  };
14
14
  execute?: ((input: unknown, options: import("@/chat/tools/definition").ToolExecuteOptions) => {
15
- ok: boolean;
16
- status: "error" | "success";
17
15
  query: string | null;
18
16
  source: string | null;
19
17
  sources: {
@@ -35,20 +33,12 @@ export declare function createSearchToolsTool(catalogTools: Record<string, AnyTo
35
33
  source?: string | undefined;
36
34
  }[];
37
35
  target?: string | undefined;
38
- data?: unknown;
39
36
  truncated?: boolean | undefined;
40
37
  continuation?: {
41
38
  arguments: Record<string, unknown>;
42
39
  reason?: string | undefined;
43
40
  } | undefined;
44
- error?: string | {
45
- kind: string;
46
- message: string;
47
- retryable?: boolean | undefined;
48
- } | undefined;
49
41
  } | Promise<{
50
- ok: boolean;
51
- status: "error" | "success";
52
42
  query: string | null;
53
43
  source: string | null;
54
44
  sources: {
@@ -70,16 +60,10 @@ export declare function createSearchToolsTool(catalogTools: Record<string, AnyTo
70
60
  source?: string | undefined;
71
61
  }[];
72
62
  target?: string | undefined;
73
- data?: unknown;
74
63
  truncated?: boolean | undefined;
75
64
  continuation?: {
76
65
  arguments: Record<string, unknown>;
77
66
  reason?: string | undefined;
78
67
  } | undefined;
79
- error?: string | {
80
- kind: string;
81
- message: string;
82
- retryable?: boolean | undefined;
83
- } | undefined;
84
68
  }>) | undefined;
85
69
  };
@@ -1,9 +1,5 @@
1
1
  import { type Skill, type SkillMetadata } from "@/chat/skills";
2
2
  export type LoadSkillResult = {
3
- ok: boolean;
4
- status: "error" | "success";
5
- error?: string;
6
- available_skills?: string[];
7
3
  skill_name?: string;
8
4
  description?: string;
9
5
  skill_dir?: string;
@@ -26,35 +22,19 @@ export declare function createLoadSkillTool(availableSkills: SkillMetadata[], op
26
22
  };
27
23
  execute?: ((input: unknown, options: import("../definition").ToolExecuteOptions) => {
28
24
  [x: string]: unknown;
29
- ok: boolean;
30
- status: "error" | "success";
31
25
  target?: string | undefined;
32
- data?: unknown;
33
26
  truncated?: boolean | undefined;
34
27
  continuation?: {
35
28
  arguments: Record<string, unknown>;
36
29
  reason?: string | undefined;
37
30
  } | undefined;
38
- error?: string | {
39
- kind: string;
40
- message: string;
41
- retryable?: boolean | undefined;
42
- } | undefined;
43
31
  } | Promise<{
44
32
  [x: string]: unknown;
45
- ok: boolean;
46
- status: "error" | "success";
47
33
  target?: string | undefined;
48
- data?: unknown;
49
34
  truncated?: boolean | undefined;
50
35
  continuation?: {
51
36
  arguments: Record<string, unknown>;
52
37
  reason?: string | undefined;
53
38
  } | undefined;
54
- error?: string | {
55
- kind: string;
56
- message: string;
57
- retryable?: boolean | undefined;
58
- } | undefined;
59
39
  }>) | undefined;
60
40
  };
@@ -21,8 +21,6 @@ export declare function createSearchMcpToolsTool(mcpToolManager: SearchMcpToolMa
21
21
  max_results?: number | undefined;
22
22
  };
23
23
  execute?: ((input: unknown, options: import("../definition").ToolExecuteOptions) => {
24
- ok: boolean;
25
- status: "error" | "success";
26
24
  query: string | null;
27
25
  provider: string | null;
28
26
  total_active_tools: number;
@@ -44,20 +42,12 @@ export declare function createSearchMcpToolsTool(mcpToolManager: SearchMcpToolMa
44
42
  annotations?: Record<string, unknown> | undefined;
45
43
  }[];
46
44
  target?: string | undefined;
47
- data?: unknown;
48
45
  truncated?: boolean | undefined;
49
46
  continuation?: {
50
47
  arguments: Record<string, unknown>;
51
48
  reason?: string | undefined;
52
49
  } | undefined;
53
- error?: string | {
54
- kind: string;
55
- message: string;
56
- retryable?: boolean | undefined;
57
- } | undefined;
58
50
  } | Promise<{
59
- ok: boolean;
60
- status: "error" | "success";
61
51
  query: string | null;
62
52
  provider: string | null;
63
53
  total_active_tools: number;
@@ -79,17 +69,11 @@ export declare function createSearchMcpToolsTool(mcpToolManager: SearchMcpToolMa
79
69
  annotations?: Record<string, unknown> | undefined;
80
70
  }[];
81
71
  target?: string | undefined;
82
- data?: unknown;
83
72
  truncated?: boolean | undefined;
84
73
  continuation?: {
85
74
  arguments: Record<string, unknown>;
86
75
  reason?: string | undefined;
87
76
  } | undefined;
88
- error?: string | {
89
- kind: string;
90
- message: string;
91
- retryable?: boolean | undefined;
92
- } | undefined;
93
77
  }>) | undefined;
94
78
  };
95
79
  export {};
@@ -0,0 +1,28 @@
1
+ import type { ToolRuntimeContext } from "@/chat/tools/types";
2
+ /** Create the tool that stops resource watches for this conversation. */
3
+ export declare function createStopWatchingResourcesTool(context: ToolRuntimeContext): Omit<import("./definition").AnyToolDefinition, "inputSchema" | "outputSchema" | "prepareArguments" | "execute"> & {
4
+ inputSchema: import("./definition").JsonSchemaObject;
5
+ outputSchema: import("./definition").JsonSchemaObject;
6
+ prepareArguments(args: unknown): {
7
+ id?: string | null | undefined;
8
+ };
9
+ execute?: ((input: unknown, options: import("./definition").ToolExecuteOptions) => {
10
+ watching_status: "stopped";
11
+ stoppedIds: string[];
12
+ target?: string | undefined;
13
+ truncated?: boolean | undefined;
14
+ continuation?: {
15
+ arguments: Record<string, unknown>;
16
+ reason?: string | undefined;
17
+ } | undefined;
18
+ } | Promise<{
19
+ watching_status: "stopped";
20
+ stoppedIds: string[];
21
+ target?: string | undefined;
22
+ truncated?: boolean | undefined;
23
+ continuation?: {
24
+ arguments: Record<string, unknown>;
25
+ reason?: string | undefined;
26
+ } | undefined;
27
+ }>) | undefined;
28
+ };
@@ -4,43 +4,27 @@ export declare function createSystemTimeTool(): Omit<import("./definition").AnyT
4
4
  prepareArguments(args: unknown): Record<string, never>;
5
5
  execute?: ((input: unknown, options: import("./definition").ToolExecuteOptions) => {
6
6
  [x: string]: unknown;
7
- ok: boolean;
8
- status: "error" | "success";
9
7
  unix_ms: number;
10
8
  iso_utc: string;
11
9
  iso_local: string;
12
10
  timezone_offset_minutes: number;
13
11
  target?: string | undefined;
14
- data?: unknown;
15
12
  truncated?: boolean | undefined;
16
13
  continuation?: {
17
14
  arguments: Record<string, unknown>;
18
15
  reason?: string | undefined;
19
16
  } | undefined;
20
- error?: string | {
21
- kind: string;
22
- message: string;
23
- retryable?: boolean | undefined;
24
- } | undefined;
25
17
  } | Promise<{
26
18
  [x: string]: unknown;
27
- ok: boolean;
28
- status: "error" | "success";
29
19
  unix_ms: number;
30
20
  iso_utc: string;
31
21
  iso_local: string;
32
22
  timezone_offset_minutes: number;
33
23
  target?: string | undefined;
34
- data?: unknown;
35
24
  truncated?: boolean | undefined;
36
25
  continuation?: {
37
26
  arguments: Record<string, unknown>;
38
27
  reason?: string | undefined;
39
28
  } | undefined;
40
- error?: string | {
41
- kind: string;
42
- message: string;
43
- retryable?: boolean | undefined;
44
- } | undefined;
45
29
  }>) | undefined;
46
30
  };
@@ -1,12 +1,12 @@
1
1
  import type { FileUpload } from "chat";
2
- import type { Destination, LocalDestination, LocalSource, PluginEgress, SlackDestination, SlackSource, Source } from "@sentry/junior-plugin-api";
2
+ import type { Destination, Identity, LocalDestination, LocalSource, PluginEgress, SlackDestination, SlackSource, Source, User } from "@sentry/junior-plugin-api";
3
3
  import type { McpToolManager } from "@/chat/mcp/tool-manager";
4
4
  import type { SandboxWorkspace } from "@/chat/sandbox/workspace";
5
5
  import type { AgentTurnSurface } from "@/chat/state/turn-session";
6
6
  import type { ThreadArtifactsState } from "@/chat/state/artifacts";
7
7
  import type { Skill } from "@/chat/skills";
8
8
  import type { LoadSkillMetadata } from "@/chat/tools/skill/load-skill";
9
- import type { JuniorToolResult } from "@/chat/tool-support/structured-result";
9
+ import type { JuniorToolOutput } from "@/chat/tool-support/structured-result";
10
10
  import type { LocalActor, Actor, SlackActor } from "@/chat/actor";
11
11
  import type { SlackActionToken } from "@/chat/slack/action-token";
12
12
  import type { ModelProfile } from "@/chat/model-profile";
@@ -26,13 +26,13 @@ export interface WebFetchToolDeps {
26
26
  execute?: (input: {
27
27
  url: string;
28
28
  max_chars?: number;
29
- }) => Promise<JuniorToolResult> | JuniorToolResult;
29
+ }) => Promise<JuniorToolOutput> | JuniorToolOutput;
30
30
  }
31
31
  export interface WebSearchToolDeps {
32
32
  execute?: (input: {
33
33
  query: string;
34
34
  max_results?: number;
35
- }) => Promise<JuniorToolResult> | JuniorToolResult;
35
+ }) => Promise<JuniorToolOutput> | JuniorToolOutput;
36
36
  }
37
37
  /** Optional host image reader for deterministic tool execution without sandbox I/O. */
38
38
  export interface ViewImageToolDeps {
@@ -65,6 +65,10 @@ interface BaseToolRuntimeContext {
65
65
  /** Runtime-owned default outbound destination for this invocation. */
66
66
  destination: Destination;
67
67
  actor?: Actor;
68
+ resolveActorIdentity?: () => Promise<{
69
+ identity: Identity;
70
+ user?: User;
71
+ } | undefined>;
68
72
  /** Runtime-owned source where this invocation came from. */
69
73
  source: Source;
70
74
  /** Runtime surface that owns final delivery semantics for this turn. */
@@ -0,0 +1,66 @@
1
+ import { type ResourceEventCatalog } from "@/chat/resource-events/catalog";
2
+ import type { ToolRuntimeContext } from "@/chat/tools/types";
3
+ /** Create the core tool that updates an event task in this destination. */
4
+ export declare function createUpdateEventTaskTool(context: ToolRuntimeContext, catalog: ResourceEventCatalog): Omit<import("./definition").AnyToolDefinition, "inputSchema" | "outputSchema" | "prepareArguments" | "execute"> & {
5
+ inputSchema: import("./definition").JsonSchemaObject;
6
+ outputSchema: import("./definition").JsonSchemaObject;
7
+ prepareArguments(args: unknown): {
8
+ taskId: string;
9
+ task?: string | null | undefined;
10
+ trigger?: {
11
+ namespace: string;
12
+ identifier: string;
13
+ resourceType: string;
14
+ label: string;
15
+ events: string[];
16
+ } | null | undefined;
17
+ credentialMode?: "system" | "creator" | null | undefined;
18
+ };
19
+ execute?: ((input: unknown, options: import("./definition").ToolExecuteOptions) => {
20
+ task: {
21
+ id: string;
22
+ task: string;
23
+ namespace: string;
24
+ identifier: string;
25
+ resourceType: string;
26
+ label: string;
27
+ events: string[];
28
+ credentialMode: "system" | "creator";
29
+ createdBy: {
30
+ slackUserId: string;
31
+ fullName?: string | undefined;
32
+ userName?: string | undefined;
33
+ };
34
+ triggerAvailable: boolean;
35
+ };
36
+ target?: string | undefined;
37
+ truncated?: boolean | undefined;
38
+ continuation?: {
39
+ arguments: Record<string, unknown>;
40
+ reason?: string | undefined;
41
+ } | undefined;
42
+ } | Promise<{
43
+ task: {
44
+ id: string;
45
+ task: string;
46
+ namespace: string;
47
+ identifier: string;
48
+ resourceType: string;
49
+ label: string;
50
+ events: string[];
51
+ credentialMode: "system" | "creator";
52
+ createdBy: {
53
+ slackUserId: string;
54
+ fullName?: string | undefined;
55
+ userName?: string | undefined;
56
+ };
57
+ triggerAvailable: boolean;
58
+ };
59
+ target?: string | undefined;
60
+ truncated?: boolean | undefined;
61
+ continuation?: {
62
+ arguments: Record<string, unknown>;
63
+ reason?: string | undefined;
64
+ } | undefined;
65
+ }>) | undefined;
66
+ };
@@ -0,0 +1,59 @@
1
+ import { type ResourceEventCatalog } from "@/chat/resource-events/catalog";
2
+ import type { ToolRuntimeContext } from "@/chat/tools/types";
3
+ /** Create the tool that temporarily watches resource events in one conversation. */
4
+ export declare function createWatchResourceEventsTool(context: ToolRuntimeContext, catalog: ResourceEventCatalog): Omit<import("./definition").AnyToolDefinition, "inputSchema" | "outputSchema" | "prepareArguments" | "execute"> & {
5
+ inputSchema: import("./definition").JsonSchemaObject;
6
+ outputSchema: import("./definition").JsonSchemaObject;
7
+ prepareArguments(args: unknown): {
8
+ identifier: string;
9
+ namespace: string;
10
+ resourceType: string;
11
+ label: string;
12
+ events: string[];
13
+ intent: string;
14
+ ttlMs?: number | undefined;
15
+ };
16
+ execute?: ((input: unknown, options: import("./definition").ToolExecuteOptions) => {
17
+ id: string;
18
+ subscription_status: "cancelled" | "completed" | "active";
19
+ identifier: string;
20
+ events: string[];
21
+ expiresAtMs: number;
22
+ stop_watching: {
23
+ execution_tool: "executeTool";
24
+ execution_example: {
25
+ tool_name: "stopWatchingResources";
26
+ arguments: {
27
+ id: string;
28
+ };
29
+ };
30
+ };
31
+ target?: string | undefined;
32
+ truncated?: boolean | undefined;
33
+ continuation?: {
34
+ arguments: Record<string, unknown>;
35
+ reason?: string | undefined;
36
+ } | undefined;
37
+ } | Promise<{
38
+ id: string;
39
+ subscription_status: "cancelled" | "completed" | "active";
40
+ identifier: string;
41
+ events: string[];
42
+ expiresAtMs: number;
43
+ stop_watching: {
44
+ execution_tool: "executeTool";
45
+ execution_example: {
46
+ tool_name: "stopWatchingResources";
47
+ arguments: {
48
+ id: string;
49
+ };
50
+ };
51
+ };
52
+ target?: string | undefined;
53
+ truncated?: boolean | undefined;
54
+ continuation?: {
55
+ arguments: Record<string, unknown>;
56
+ reason?: string | undefined;
57
+ } | undefined;
58
+ }>) | undefined;
59
+ };
@@ -7,8 +7,6 @@ export interface WebFetchResponseContent {
7
7
  extractedChars: number;
8
8
  }
9
9
  export type WebFetchResponse = {
10
- ok: true;
11
- status: "success";
12
10
  url: string;
13
11
  content: string;
14
12
  title?: string;
@@ -11,35 +11,19 @@ export declare function createWebFetchTool(hooks: ToolHooks, options?: {
11
11
  };
12
12
  execute?: ((input: unknown, options: import("../definition").ToolExecuteOptions) => {
13
13
  [x: string]: unknown;
14
- ok: boolean;
15
- status: "error" | "success";
16
14
  target?: string | undefined;
17
- data?: unknown;
18
15
  truncated?: boolean | undefined;
19
16
  continuation?: {
20
17
  arguments: Record<string, unknown>;
21
18
  reason?: string | undefined;
22
19
  } | undefined;
23
- error?: string | {
24
- kind: string;
25
- message: string;
26
- retryable?: boolean | undefined;
27
- } | undefined;
28
20
  } | Promise<{
29
21
  [x: string]: unknown;
30
- ok: boolean;
31
- status: "error" | "success";
32
22
  target?: string | undefined;
33
- data?: unknown;
34
23
  truncated?: boolean | undefined;
35
24
  continuation?: {
36
25
  arguments: Record<string, unknown>;
37
26
  reason?: string | undefined;
38
27
  } | undefined;
39
- error?: string | {
40
- kind: string;
41
- message: string;
42
- retryable?: boolean | undefined;
43
- } | undefined;
44
28
  }>) | undefined;
45
29
  };
@@ -10,8 +10,6 @@ export declare function createImageGenerateTool(hooks: Required<Pick<ToolHooks,
10
10
  prompt: string;
11
11
  };
12
12
  execute?: ((input: unknown, options: import("../definition").ToolExecuteOptions) => {
13
- ok: boolean;
14
- status: "error" | "success";
15
13
  model: string;
16
14
  prompt: string;
17
15
  enrichedPrompt: string;
@@ -24,20 +22,12 @@ export declare function createImageGenerateTool(hooks: Required<Pick<ToolHooks,
24
22
  }[];
25
23
  delivery: string;
26
24
  target?: string | undefined;
27
- data?: unknown;
28
25
  truncated?: boolean | undefined;
29
26
  continuation?: {
30
27
  arguments: Record<string, unknown>;
31
28
  reason?: string | undefined;
32
29
  } | undefined;
33
- error?: string | {
34
- kind: string;
35
- message: string;
36
- retryable?: boolean | undefined;
37
- } | undefined;
38
30
  } | Promise<{
39
- ok: boolean;
40
- status: "error" | "success";
41
31
  model: string;
42
32
  prompt: string;
43
33
  enrichedPrompt: string;
@@ -50,16 +40,10 @@ export declare function createImageGenerateTool(hooks: Required<Pick<ToolHooks,
50
40
  }[];
51
41
  delivery: string;
52
42
  target?: string | undefined;
53
- data?: unknown;
54
43
  truncated?: boolean | undefined;
55
44
  continuation?: {
56
45
  arguments: Record<string, unknown>;
57
46
  reason?: string | undefined;
58
47
  } | undefined;
59
- error?: string | {
60
- kind: string;
61
- message: string;
62
- retryable?: boolean | undefined;
63
- } | undefined;
64
48
  }>) | undefined;
65
49
  };
@@ -8,35 +8,19 @@ export declare function createWebSearchTool(modelId: string, override?: WebSearc
8
8
  };
9
9
  execute?: ((input: unknown, options: import("../definition").ToolExecuteOptions) => {
10
10
  [x: string]: unknown;
11
- ok: boolean;
12
- status: "error" | "success";
13
11
  target?: string | undefined;
14
- data?: unknown;
15
12
  truncated?: boolean | undefined;
16
13
  continuation?: {
17
14
  arguments: Record<string, unknown>;
18
15
  reason?: string | undefined;
19
16
  } | undefined;
20
- error?: string | {
21
- kind: string;
22
- message: string;
23
- retryable?: boolean | undefined;
24
- } | undefined;
25
17
  } | Promise<{
26
18
  [x: string]: unknown;
27
- ok: boolean;
28
- status: "error" | "success";
29
19
  target?: string | undefined;
30
- data?: unknown;
31
20
  truncated?: boolean | undefined;
32
21
  continuation?: {
33
22
  arguments: Record<string, unknown>;
34
23
  reason?: string | undefined;
35
24
  } | undefined;
36
- error?: string | {
37
- kind: string;
38
- message: string;
39
- retryable?: boolean | undefined;
40
- } | undefined;
41
25
  }>) | undefined;
42
26
  };
@@ -2,18 +2,18 @@ import {
2
2
  SANDBOX_WORKSPACE_ROOT,
3
3
  getStateAdapter,
4
4
  sleep
5
- } from "./chunk-F2ARYRKC.js";
5
+ } from "./chunk-G6XQODHM.js";
6
6
  import {
7
7
  toOptionalTrimmed
8
- } from "./chunk-WIIPHGJY.js";
8
+ } from "./chunk-K5ZB3WWH.js";
9
9
  import {
10
10
  pluginCatalogRuntime
11
- } from "./chunk-JKV244BI.js";
11
+ } from "./chunk-WZ365SQC.js";
12
12
  import {
13
13
  setSpanAttributes,
14
14
  setSpanStatus,
15
15
  withSpan
16
- } from "./chunk-PD6J33TO.js";
16
+ } from "./chunk-B6E3YA2H.js";
17
17
 
18
18
  // src/chat/sandbox/snapshot/profile.ts
19
19
  import { createHash } from "crypto";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  pluginCatalogRuntime
3
- } from "./chunk-JKV244BI.js";
3
+ } from "./chunk-WZ365SQC.js";
4
4
 
5
5
  // src/chat/plugins/validation.ts
6
6
  import { isDeepStrictEqual } from "util";