@trigger.dev/sdk 4.7.3 → 4.8.0-webhooks.20261015065339
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.
- package/dist/commonjs/v3/ai.d.ts +560 -8
- package/dist/commonjs/v3/ai.js +2263 -178
- package/dist/commonjs/v3/ai.js.map +1 -1
- package/dist/commonjs/v3/chat.d.ts +23 -0
- package/dist/commonjs/v3/chat.js.map +1 -1
- package/dist/commonjs/v3/concurrencyLimits.d.ts +37 -7
- package/dist/commonjs/v3/concurrencyLimits.js +38 -70
- package/dist/commonjs/v3/concurrencyLimits.js.map +1 -1
- package/dist/commonjs/v3/index.d.ts +3 -1
- package/dist/commonjs/v3/index.js +23 -17
- package/dist/commonjs/v3/index.js.map +1 -1
- package/dist/commonjs/v3/modelFileDownload.d.ts +10 -0
- package/dist/commonjs/v3/modelFileDownload.js +164 -0
- package/dist/commonjs/v3/modelFileDownload.js.map +1 -0
- package/dist/commonjs/v3/runs.d.ts +22 -1
- package/dist/commonjs/v3/runs.js +6 -3
- package/dist/commonjs/v3/runs.js.map +1 -1
- package/dist/commonjs/v3/test/index.d.ts +2 -1
- package/dist/commonjs/v3/test/index.js +4 -1
- package/dist/commonjs/v3/test/index.js.map +1 -1
- package/dist/commonjs/v3/test/mock-channel-connector.d.ts +172 -0
- package/dist/commonjs/v3/test/mock-channel-connector.js +173 -0
- package/dist/commonjs/v3/test/mock-channel-connector.js.map +1 -0
- package/dist/commonjs/v3/test/mock-chat-agent.d.ts +81 -1
- package/dist/commonjs/v3/test/mock-chat-agent.js +137 -10
- package/dist/commonjs/v3/test/mock-chat-agent.js.map +1 -1
- package/dist/commonjs/v3/transcriptStorage.d.ts +44 -1
- package/dist/commonjs/v3/transcriptStorage.js +24 -0
- package/dist/commonjs/v3/transcriptStorage.js.map +1 -1
- package/dist/commonjs/v3/webhookWaiters.d.ts +80 -0
- package/dist/commonjs/v3/webhookWaiters.js +156 -0
- package/dist/commonjs/v3/webhookWaiters.js.map +1 -0
- package/dist/commonjs/v3/webhooks.d.ts +178 -2
- package/dist/commonjs/v3/webhooks.js +322 -1
- package/dist/commonjs/v3/webhooks.js.map +1 -1
- package/dist/commonjs/version.js +1 -1
- package/dist/esm/v3/ai.d.ts +560 -8
- package/dist/esm/v3/ai.js +2257 -178
- package/dist/esm/v3/ai.js.map +1 -1
- package/dist/esm/v3/chat.d.ts +23 -0
- package/dist/esm/v3/chat.js.map +1 -1
- package/dist/esm/v3/concurrencyLimits.d.ts +37 -7
- package/dist/esm/v3/concurrencyLimits.js +38 -70
- package/dist/esm/v3/concurrencyLimits.js.map +1 -1
- package/dist/esm/v3/index.d.ts +3 -1
- package/dist/esm/v3/index.js +1 -0
- package/dist/esm/v3/index.js.map +1 -1
- package/dist/esm/v3/modelFileDownload.d.ts +10 -0
- package/dist/esm/v3/modelFileDownload.js +161 -0
- package/dist/esm/v3/modelFileDownload.js.map +1 -0
- package/dist/esm/v3/runs.d.ts +22 -1
- package/dist/esm/v3/runs.js +6 -3
- package/dist/esm/v3/runs.js.map +1 -1
- package/dist/esm/v3/test/index.d.ts +2 -1
- package/dist/esm/v3/test/index.js +2 -1
- package/dist/esm/v3/test/index.js.map +1 -1
- package/dist/esm/v3/test/mock-channel-connector.d.ts +172 -0
- package/dist/esm/v3/test/mock-channel-connector.js +170 -0
- package/dist/esm/v3/test/mock-channel-connector.js.map +1 -0
- package/dist/esm/v3/test/mock-chat-agent.d.ts +81 -1
- package/dist/esm/v3/test/mock-chat-agent.js +137 -11
- package/dist/esm/v3/test/mock-chat-agent.js.map +1 -1
- package/dist/esm/v3/transcriptStorage.d.ts +44 -1
- package/dist/esm/v3/transcriptStorage.js +24 -0
- package/dist/esm/v3/transcriptStorage.js.map +1 -1
- package/dist/esm/v3/webhookWaiters.d.ts +80 -0
- package/dist/esm/v3/webhookWaiters.js +149 -0
- package/dist/esm/v3/webhookWaiters.js.map +1 -0
- package/dist/esm/v3/webhooks.d.ts +178 -2
- package/dist/esm/v3/webhooks.js +318 -1
- package/dist/esm/v3/webhooks.js.map +1 -1
- package/dist/esm/version.js +1 -1
- package/docs/ai-chat/actions.mdx +6 -1
- package/docs/ai-chat/backend.mdx +34 -0
- package/docs/ai-chat/patterns/sub-agents.mdx +33 -0
- package/docs/ai-chat/pending-messages.mdx +2 -0
- package/docs/ai-chat/reference.mdx +50 -2
- package/docs/apikeys.mdx +3 -3
- package/docs/billing-limits.mdx +1 -1
- package/docs/cli-env-commands.mdx +5 -4
- package/docs/cli-init-commands.mdx +27 -1
- package/docs/cli-login-commands.mdx +20 -0
- package/docs/cli-projects-commands.mdx +13 -1
- package/docs/cli-runs-commands.mdx +3 -2
- package/docs/cli-update-commands.mdx +9 -3
- package/docs/cli-whoami-commands.mdx +12 -0
- package/docs/concurrency.mdx +32 -0
- package/docs/config/extensions/audioWaveform.mdx +4 -1
- package/docs/config/extensions/overview.mdx +2 -0
- package/docs/config/extensions/prismaExtension.mdx +2 -3
- package/docs/config/extensions/puppeteer.mdx +3 -5
- package/docs/config/extensions/pythonExtension.mdx +9 -1
- package/docs/config/extensions/syncEnvVars.mdx +6 -0
- package/docs/deploy-environment-variables.mdx +1 -1
- package/docs/deployment/atomic-deployment.mdx +2 -0
- package/docs/deployment/dev-branches.mdx +5 -5
- package/docs/deployment/overview.mdx +8 -7
- package/docs/deployment/preview-branches.mdx +6 -3
- package/docs/errors-retrying.mdx +4 -4
- package/docs/how-it-works.mdx +5 -5
- package/docs/introduction.mdx +6 -0
- package/docs/limits.mdx +26 -8
- package/docs/logging.mdx +1 -1
- package/docs/machines.mdx +1 -1
- package/docs/mcp-introduction.mdx +8 -7
- package/docs/mcp-tools.mdx +91 -1
- package/docs/migrating-from-v3.mdx +1 -1
- package/docs/observability/dashboards.mdx +2 -0
- package/docs/observability/query.mdx +6 -2
- package/docs/private-networking/aws-console-setup.mdx +1 -1
- package/docs/private-networking/overview.mdx +1 -1
- package/docs/quick-start.mdx +3 -40
- package/docs/realtime/auth.mdx +1 -1
- package/docs/realtime/backend/input-streams.mdx +159 -0
- package/docs/realtime/backend/streams.mdx +25 -10
- package/docs/realtime/how-it-works.mdx +1 -1
- package/docs/realtime/react-hooks/overview.mdx +1 -1
- package/docs/realtime/react-hooks/streams.mdx +2 -2
- package/docs/realtime/react-hooks/subscribe.mdx +19 -3
- package/docs/realtime/react-hooks/triggering.mdx +2 -2
- package/docs/realtime/react-hooks/use-wait-token.mdx +1 -1
- package/docs/realtime/run-object.mdx +47 -24
- package/docs/replaying.mdx +26 -1
- package/docs/reports.mdx +4 -2
- package/docs/run-tests.mdx +2 -2
- package/docs/run-usage.mdx +3 -3
- package/docs/runs/heartbeats.mdx +2 -2
- package/docs/runs/list-best-practices.mdx +234 -0
- package/docs/runs/metadata.mdx +7 -10
- package/docs/runs.mdx +18 -8
- package/docs/self-hosting/env/supervisor.mdx +2 -0
- package/docs/self-hosting/env/webapp.mdx +5 -0
- package/docs/self-hosting/overview.mdx +26 -0
- package/docs/tags.mdx +6 -0
- package/docs/tasks/scheduled.mdx +11 -5
- package/docs/triggering.mdx +8 -0
- package/docs/troubleshooting-alerts.mdx +102 -3
- package/docs/troubleshooting.mdx +1 -1
- package/docs/upgrading-packages.mdx +3 -3
- package/docs/vercel-integration.mdx +13 -3
- package/docs/versioning.mdx +1 -1
- package/docs/wait-for-token.mdx +3 -3
- package/docs/webhooks/channels.mdx +128 -0
- package/docs/webhooks/connect.mdx +80 -0
- package/docs/webhooks/deliveries.mdx +92 -0
- package/docs/webhooks/filters.mdx +109 -0
- package/docs/webhooks/human-in-the-loop.mdx +149 -0
- package/docs/webhooks/linear.mdx +185 -0
- package/docs/webhooks/overview.mdx +99 -0
- package/docs/webhooks/session-routing.mdx +132 -0
- package/docs/webhooks/slack.mdx +360 -0
- package/docs/webhooks/sources.mdx +217 -0
- package/docs/webhooks/waiters.mdx +170 -0
- package/package.json +3 -2
|
@@ -0,0 +1,173 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.recordingChannelConnector = recordingChannelConnector;
|
|
4
|
+
const ai_js_1 = require("../ai.js");
|
|
5
|
+
const mock_chat_agent_js_1 = require("./mock-chat-agent.js");
|
|
6
|
+
const DEFAULT_TEST_ENDPOINT_ID = "test-channel";
|
|
7
|
+
/**
|
|
8
|
+
* Create a {@link RecordingChannelConnector} for driving a `chat.agent`
|
|
9
|
+
* channel turn offline. Pair it with `mockChatAgent(...).sendChannelEvent(...)`:
|
|
10
|
+
* list the connector on the agent's `channels`, deliver an event, then assert
|
|
11
|
+
* against `connector.sent` / `.acks` / `.edits` / `.finalText()`.
|
|
12
|
+
*
|
|
13
|
+
* @example
|
|
14
|
+
* ```ts
|
|
15
|
+
* const channel = recordingChannelConnector();
|
|
16
|
+
* const agent = chat.agent({ id: "support", channels: [channel], run: ... });
|
|
17
|
+
* const harness = mockChatAgent(agent);
|
|
18
|
+
* await harness.sendChannelEvent({ event: { text: "hi", threadId: "t1" } });
|
|
19
|
+
* expect(channel.finalText()).toBe("hello");
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
function recordingChannelConnector(options = {}) {
|
|
23
|
+
const sent = [];
|
|
24
|
+
const reactionsApplied = [];
|
|
25
|
+
const finalized = [];
|
|
26
|
+
const seeded = [];
|
|
27
|
+
const progressed = [];
|
|
28
|
+
const lifecycles = [];
|
|
29
|
+
const streams = [];
|
|
30
|
+
const cancelled = [];
|
|
31
|
+
const interrupted = [];
|
|
32
|
+
let refCounter = 0;
|
|
33
|
+
let lastRef;
|
|
34
|
+
const inbound = options.inbound ??
|
|
35
|
+
((event) => {
|
|
36
|
+
const e = event;
|
|
37
|
+
return { message: e?.text ?? "", externalUserId: e?.userId };
|
|
38
|
+
});
|
|
39
|
+
const bind = options.bind === null
|
|
40
|
+
? undefined
|
|
41
|
+
: (options.bind ??
|
|
42
|
+
((event) => {
|
|
43
|
+
const threadId = event?.threadId;
|
|
44
|
+
return threadId ? { threadId } : null;
|
|
45
|
+
}));
|
|
46
|
+
const ackFn = options.ack === undefined
|
|
47
|
+
? () => ({ text: "..." })
|
|
48
|
+
: typeof options.ack === "function"
|
|
49
|
+
? options.ack
|
|
50
|
+
: () => options.ack;
|
|
51
|
+
const send = async (message, ctx) => {
|
|
52
|
+
const ref = ctx.previousRef ?? `ref_${++refCounter}`;
|
|
53
|
+
sent.push({ message, ctx, ref });
|
|
54
|
+
lastRef = ref;
|
|
55
|
+
return { ref };
|
|
56
|
+
};
|
|
57
|
+
const react = async (reaction, ctx) => {
|
|
58
|
+
reactionsApplied.push({ reaction, event: ctx.event });
|
|
59
|
+
};
|
|
60
|
+
const finalizeInteraction = async (event, resolution) => {
|
|
61
|
+
finalized.push({ event, resolution });
|
|
62
|
+
};
|
|
63
|
+
const connector = ai_js_1.chat.channels.custom({
|
|
64
|
+
id: options.id ?? mock_chat_agent_js_1.DEFAULT_TEST_CONNECTOR_ID,
|
|
65
|
+
endpoint: {
|
|
66
|
+
id: options.endpointId ?? DEFAULT_TEST_ENDPOINT_ID,
|
|
67
|
+
source: "custom",
|
|
68
|
+
},
|
|
69
|
+
key: (options.key ?? "{event.threadId}"),
|
|
70
|
+
inbound: inbound,
|
|
71
|
+
...(bind ? { bind: bind } : {}),
|
|
72
|
+
...(options.seed
|
|
73
|
+
? {
|
|
74
|
+
seed: (async (event) => {
|
|
75
|
+
seeded.push(event);
|
|
76
|
+
return options.seed(event);
|
|
77
|
+
}),
|
|
78
|
+
}
|
|
79
|
+
: {}),
|
|
80
|
+
ack: ackFn,
|
|
81
|
+
...(options.outbound ? { outbound: options.outbound } : {}),
|
|
82
|
+
send: send,
|
|
83
|
+
react: react,
|
|
84
|
+
finalizeInteraction: finalizeInteraction,
|
|
85
|
+
...(options.onInteraction ? { onInteraction: options.onInteraction } : {}),
|
|
86
|
+
...(options.download ? { download: options.download } : {}),
|
|
87
|
+
...(options.toAction ? { toAction: options.toAction } : {}),
|
|
88
|
+
...(options.received ? { received: options.received } : {}),
|
|
89
|
+
...(options.renderInteraction ? { renderInteraction: options.renderInteraction } : {}),
|
|
90
|
+
...(options.reactions ? { reactions: options.reactions } : {}),
|
|
91
|
+
...(options.progress
|
|
92
|
+
? {
|
|
93
|
+
progress: ((event, ctx) => {
|
|
94
|
+
progressed.push({ event, ctx });
|
|
95
|
+
}),
|
|
96
|
+
}
|
|
97
|
+
: {}),
|
|
98
|
+
...(options.surface ? { surface: options.surface } : {}),
|
|
99
|
+
...(options.onControl ? { onControl: options.onControl } : {}),
|
|
100
|
+
...(options.lifecycle
|
|
101
|
+
? {
|
|
102
|
+
lifecycle: ((state, ctx) => {
|
|
103
|
+
lifecycles.push({ state, ctx });
|
|
104
|
+
}),
|
|
105
|
+
}
|
|
106
|
+
: {}),
|
|
107
|
+
...(options.stream
|
|
108
|
+
? {
|
|
109
|
+
stream: ((ctx) => {
|
|
110
|
+
const recorded = {
|
|
111
|
+
ctx,
|
|
112
|
+
deltas: [],
|
|
113
|
+
progress: [],
|
|
114
|
+
endCalls: 0,
|
|
115
|
+
};
|
|
116
|
+
streams.push(recorded);
|
|
117
|
+
return {
|
|
118
|
+
text: (delta) => {
|
|
119
|
+
if (recorded.deltas.length === 0)
|
|
120
|
+
ctx.opened(`stream_${streams.length}`);
|
|
121
|
+
recorded.deltas.push(delta);
|
|
122
|
+
},
|
|
123
|
+
progress: (event) => {
|
|
124
|
+
recorded.progress.push(event);
|
|
125
|
+
},
|
|
126
|
+
end: async (outcome) => {
|
|
127
|
+
recorded.endCalls += 1;
|
|
128
|
+
recorded.ended = outcome;
|
|
129
|
+
const undelivered = typeof options.stream === "object" && options.stream.delivered === false;
|
|
130
|
+
return { delivered: !undelivered && recorded.deltas.join("").length > 0 };
|
|
131
|
+
},
|
|
132
|
+
};
|
|
133
|
+
}),
|
|
134
|
+
}
|
|
135
|
+
: {}),
|
|
136
|
+
endInterruptedStream: ((ref, ctx) => {
|
|
137
|
+
interrupted.push({ ref, ctx });
|
|
138
|
+
}),
|
|
139
|
+
cancelInteraction: ((cancelledCalls, ctx) => {
|
|
140
|
+
cancelled.push({ cancelled: cancelledCalls, ctx });
|
|
141
|
+
}),
|
|
142
|
+
delivery: options.delivery ?? (options.stream ? "stream" : "final"),
|
|
143
|
+
});
|
|
144
|
+
Object.defineProperties(connector, {
|
|
145
|
+
sent: { get: () => sent, enumerable: true },
|
|
146
|
+
reactionsApplied: { get: () => reactionsApplied, enumerable: true },
|
|
147
|
+
finalized: { get: () => finalized, enumerable: true },
|
|
148
|
+
seeded: { get: () => seeded, enumerable: true },
|
|
149
|
+
progressed: { get: () => progressed, enumerable: true },
|
|
150
|
+
lifecycles: { get: () => lifecycles, enumerable: true },
|
|
151
|
+
streams: { get: () => streams, enumerable: true },
|
|
152
|
+
cancelled: { get: () => cancelled, enumerable: true },
|
|
153
|
+
interrupted: { get: () => interrupted, enumerable: true },
|
|
154
|
+
lastRef: { get: () => lastRef, enumerable: true },
|
|
155
|
+
acks: {
|
|
156
|
+
get: () => sent.filter((s) => s.ctx.final === false && s.ctx.previousRef === undefined),
|
|
157
|
+
enumerable: true,
|
|
158
|
+
},
|
|
159
|
+
edits: {
|
|
160
|
+
get: () => sent.filter((s) => s.ctx.mode === "stream" && s.ctx.final === false && s.ctx.previousRef !== undefined),
|
|
161
|
+
enumerable: true,
|
|
162
|
+
},
|
|
163
|
+
});
|
|
164
|
+
connector.finalText = () => {
|
|
165
|
+
for (let i = sent.length - 1; i >= 0; i--) {
|
|
166
|
+
if (sent[i].ctx.final)
|
|
167
|
+
return sent[i].message.text;
|
|
168
|
+
}
|
|
169
|
+
return undefined;
|
|
170
|
+
};
|
|
171
|
+
return connector;
|
|
172
|
+
}
|
|
173
|
+
//# sourceMappingURL=mock-channel-connector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mock-channel-connector.js","sourceRoot":"","sources":["../../../../src/v3/test/mock-channel-connector.ts"],"names":[],"mappings":"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"}
|
|
@@ -13,6 +13,19 @@ type ChatAgentHandle = {
|
|
|
13
13
|
/**
|
|
14
14
|
* Options for `mockChatAgent`.
|
|
15
15
|
*/
|
|
16
|
+
/**
|
|
17
|
+
* A channel delivery to seed on the `session.in` tail for the next boot's replay, alongside browser
|
|
18
|
+
* messages, so a test can check that recovery dispatches both kinds in the order they arrived.
|
|
19
|
+
*/
|
|
20
|
+
export type SeededChannelDelivery = {
|
|
21
|
+
channelEvent: {
|
|
22
|
+
event: unknown;
|
|
23
|
+
connectorId?: string;
|
|
24
|
+
source?: string;
|
|
25
|
+
headers?: Record<string, string>;
|
|
26
|
+
deliveryId?: string;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
16
29
|
export type MockChatAgentOptions = {
|
|
17
30
|
/** The chat session id passed into every wire payload. Defaults to `"test-chat"`. */
|
|
18
31
|
chatId?: string;
|
|
@@ -147,6 +160,20 @@ export type MockChatAgentHarness = {
|
|
|
147
160
|
}): Promise<MockChatAgentTurn>;
|
|
148
161
|
/** Send a custom action and wait for the next turn-complete. */
|
|
149
162
|
sendAction(action: unknown): Promise<MockChatAgentTurn>;
|
|
163
|
+
/**
|
|
164
|
+
* Deliver a `chat.event` webhook action: the `{ type, event, source, headers, deliveryId, externalDeliveryId }`
|
|
165
|
+
* envelope the hosted ingress appends to `session.in` with `actionSource: "webhook"`, so it
|
|
166
|
+
* bypasses `actionSchema` and reaches `onAction` typed by the listed events. Waits for the
|
|
167
|
+
* turn-complete the action (or the turn it becomes via `chat.turn()`) writes.
|
|
168
|
+
*/
|
|
169
|
+
sendWebhookAction(args: {
|
|
170
|
+
type: string;
|
|
171
|
+
event: unknown;
|
|
172
|
+
source?: string;
|
|
173
|
+
headers?: Record<string, string>;
|
|
174
|
+
deliveryId?: string;
|
|
175
|
+
externalDeliveryId?: string;
|
|
176
|
+
}): Promise<MockChatAgentTurn>;
|
|
150
177
|
/**
|
|
151
178
|
* Deliver a message mid-turn without waiting for it, the way the browser's
|
|
152
179
|
* steering path does. With a `pendingMessages` config the agent routes it into
|
|
@@ -157,6 +184,52 @@ export type MockChatAgentHarness = {
|
|
|
157
184
|
* call this. Awaiting the turn first leaves nothing to steer.
|
|
158
185
|
*/
|
|
159
186
|
sendPendingMessage(message: UIMessage): Promise<void>;
|
|
187
|
+
/**
|
|
188
|
+
* Deliver a channel event mid-turn without waiting for it, the way a Slack message lands while
|
|
189
|
+
* the agent is answering. With a `pendingMessages` config it can be steered into the running
|
|
190
|
+
* turn; otherwise, or when `shouldInject` declines, it runs as the next turn.
|
|
191
|
+
*/
|
|
192
|
+
sendPendingChannelEvent(args: {
|
|
193
|
+
event: unknown;
|
|
194
|
+
connectorId?: string;
|
|
195
|
+
source?: string;
|
|
196
|
+
deliveryId?: string;
|
|
197
|
+
}): Promise<void>;
|
|
198
|
+
/**
|
|
199
|
+
* Deliver a verified channel event (Slack or any `chat.channels.*`
|
|
200
|
+
* connector) and wait for the next turn-complete. Mirrors what the hosted
|
|
201
|
+
* webhook ingress appends to `session.in`: a `submit-message` wire payload
|
|
202
|
+
* carrying `channelEvent` instead of `message`. The run resolves the
|
|
203
|
+
* connector by `connectorId`, maps the event with its `inbound()`, runs the
|
|
204
|
+
* turn, and posts the reply back through the connector's `send()`.
|
|
205
|
+
*
|
|
206
|
+
* `connectorId` defaults to `DEFAULT_TEST_CONNECTOR_ID`, which is also the id
|
|
207
|
+
* `recordingChannelConnector()` uses when you don't set one, so the common
|
|
208
|
+
* single-connector case lines up. Pass it explicitly for a connector with a
|
|
209
|
+
* custom id or for multi-connector agents.
|
|
210
|
+
*/
|
|
211
|
+
sendChannelEvent(args: {
|
|
212
|
+
event: unknown;
|
|
213
|
+
connectorId?: string;
|
|
214
|
+
source?: string;
|
|
215
|
+
headers?: Record<string, string>;
|
|
216
|
+
deliveryId?: string;
|
|
217
|
+
externalDeliveryId?: string;
|
|
218
|
+
}): Promise<MockChatAgentTurn>;
|
|
219
|
+
/**
|
|
220
|
+
* Deliver a channel event without waiting for a turn. Mirrors an event that
|
|
221
|
+
* the run may not turn into a turn: a filtered or deduped delivery, or a
|
|
222
|
+
* stale interaction callback that is dropped (matches no pending tool call).
|
|
223
|
+
* Resolves once the run has had a chance to process and possibly drop it.
|
|
224
|
+
*/
|
|
225
|
+
deliverChannelEvent(args: {
|
|
226
|
+
event: unknown;
|
|
227
|
+
connectorId?: string;
|
|
228
|
+
source?: string;
|
|
229
|
+
headers?: Record<string, string>;
|
|
230
|
+
deliveryId?: string;
|
|
231
|
+
externalDeliveryId?: string;
|
|
232
|
+
}): Promise<void>;
|
|
160
233
|
/** Fire a stop signal. Does not wait for the turn — the task keeps running. */
|
|
161
234
|
sendStop(message?: string): Promise<void>;
|
|
162
235
|
/**
|
|
@@ -219,7 +292,7 @@ export type MockChatAgentHarness = {
|
|
|
219
292
|
*
|
|
220
293
|
* Effective on the next run boot only.
|
|
221
294
|
*/
|
|
222
|
-
seedSessionInTail(
|
|
295
|
+
seedSessionInTail(entries: Array<UIMessage | SeededChannelDelivery>): void;
|
|
223
296
|
/**
|
|
224
297
|
* Append a `trigger: "close"` record to `session.in` — what the server does
|
|
225
298
|
* when a session is closed from outside (dashboard, `sessions.close()`, MCP).
|
|
@@ -270,6 +343,13 @@ export type MockChatAgentHarness = {
|
|
|
270
343
|
/** Every raw chunk (including control chunks) emitted since the harness was created. */
|
|
271
344
|
readonly allRawChunks: unknown[];
|
|
272
345
|
};
|
|
346
|
+
/**
|
|
347
|
+
* Default `connectorId` used by {@link MockChatAgentHarness.sendChannelEvent}
|
|
348
|
+
* when the caller omits it. Matches the default `id` of
|
|
349
|
+
* {@link recordingChannelConnector}, so a single-connector agent needs no
|
|
350
|
+
* explicit id on either side.
|
|
351
|
+
*/
|
|
352
|
+
export declare const DEFAULT_TEST_CONNECTOR_ID = "test-channel";
|
|
273
353
|
/**
|
|
274
354
|
* Create an offline test harness for a `chat.agent` task.
|
|
275
355
|
*
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.DEFAULT_TEST_CONNECTOR_ID = void 0;
|
|
3
4
|
exports.mockChatAgent = mockChatAgent;
|
|
4
5
|
const v3_1 = require("@trigger.dev/core/v3");
|
|
5
6
|
const test_1 = require("@trigger.dev/core/v3/test");
|
|
@@ -7,6 +8,34 @@ const sessions_js_1 = require("../sessions.js");
|
|
|
7
8
|
const ai_js_1 = require("../ai.js");
|
|
8
9
|
const test_session_handle_js_1 = require("./test-session-handle.js");
|
|
9
10
|
const uiMessageChunks_js_1 = require("../uiMessageChunks.js");
|
|
11
|
+
/**
|
|
12
|
+
* Default `connectorId` used by {@link MockChatAgentHarness.sendChannelEvent}
|
|
13
|
+
* when the caller omits it. Matches the default `id` of
|
|
14
|
+
* {@link recordingChannelConnector}, so a single-connector agent needs no
|
|
15
|
+
* explicit id on either side.
|
|
16
|
+
*/
|
|
17
|
+
exports.DEFAULT_TEST_CONNECTOR_ID = "test-channel";
|
|
18
|
+
/**
|
|
19
|
+
* Wait for a channel turn's post-completion egress to land. The run loop
|
|
20
|
+
* writes the `trigger:turn-complete` chunk (which unblocks the harness's
|
|
21
|
+
* turn-complete latch) BEFORE it awaits the connector's final `send()` and
|
|
22
|
+
* its done/error reactions, and settles a per-chat latch once those have
|
|
23
|
+
* finished. Awaiting that latch, rather than draining timers, makes the
|
|
24
|
+
* connector's recorded sends and reactions deterministic for any connector
|
|
25
|
+
* latency. A latch that never settles is a runtime bug, so it fails loudly.
|
|
26
|
+
*/
|
|
27
|
+
async function settlePostTurnChannelEgress(chatId) {
|
|
28
|
+
let timer;
|
|
29
|
+
const timeout = new Promise((_, reject) => {
|
|
30
|
+
timer = setTimeout(() => reject(new Error(`channel egress for ${chatId} did not settle within 10s`)), 10_000);
|
|
31
|
+
});
|
|
32
|
+
try {
|
|
33
|
+
await Promise.race([(0, ai_js_1.__waitForChannelEgressForTests)(chatId), timeout]);
|
|
34
|
+
}
|
|
35
|
+
finally {
|
|
36
|
+
clearTimeout(timer);
|
|
37
|
+
}
|
|
38
|
+
}
|
|
10
39
|
const CONTROL_CHUNK_TYPES = new Set(["trigger:turn-complete", "trigger:upgrade-required"]);
|
|
11
40
|
function isControlChunk(chunk) {
|
|
12
41
|
if (typeof chunk !== "object" || chunk === null)
|
|
@@ -91,6 +120,7 @@ function mockChatAgent(agent, options = {}) {
|
|
|
91
120
|
let sendSessionInput;
|
|
92
121
|
let closeSessionInput;
|
|
93
122
|
let runSignal;
|
|
123
|
+
let channelDeliveryCounter = 0;
|
|
94
124
|
// A latch that resolves every time `trigger:turn-complete` appears on the chat stream.
|
|
95
125
|
// We use a shared pending promise and replace it after each completion.
|
|
96
126
|
let turnCompleteResolvers = [];
|
|
@@ -112,7 +142,7 @@ function mockChatAgent(agent, options = {}) {
|
|
|
112
142
|
let lastWrittenSnapshot;
|
|
113
143
|
let seededReplayChunks = [];
|
|
114
144
|
let seededReplayPartial;
|
|
115
|
-
let
|
|
145
|
+
let seededSessionInTail = [];
|
|
116
146
|
const closeCalls = [];
|
|
117
147
|
let failCloseCalls = 0;
|
|
118
148
|
(0, ai_js_1.__resetChatInputRouterForTests)();
|
|
@@ -140,11 +170,27 @@ function mockChatAgent(agent, options = {}) {
|
|
|
140
170
|
};
|
|
141
171
|
});
|
|
142
172
|
(0, ai_js_1.__setReplaySessionInTailImplForTests)(async () => {
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
173
|
+
const messages = [];
|
|
174
|
+
const channelEvents = [];
|
|
175
|
+
seededSessionInTail.forEach((entry, i) => {
|
|
176
|
+
if ("channelEvent" in entry) {
|
|
177
|
+
channelEvents.push({
|
|
178
|
+
channelEvent: {
|
|
179
|
+
connectorId: entry.channelEvent.connectorId ?? exports.DEFAULT_TEST_CONNECTOR_ID,
|
|
180
|
+
event: entry.channelEvent.event,
|
|
181
|
+
source: entry.channelEvent.source ?? "custom",
|
|
182
|
+
headers: entry.channelEvent.headers ?? {},
|
|
183
|
+
deliveryId: entry.channelEvent.deliveryId ?? `dlv_seeded_${i + 1}`,
|
|
184
|
+
},
|
|
185
|
+
metadata: clientData,
|
|
186
|
+
seqNum: i + 1,
|
|
187
|
+
});
|
|
188
|
+
}
|
|
189
|
+
else {
|
|
190
|
+
messages.push({ message: entry, metadata: clientData, seqNum: i + 1 });
|
|
191
|
+
}
|
|
192
|
+
});
|
|
193
|
+
return { messages, channelEvents };
|
|
148
194
|
});
|
|
149
195
|
// Install the session open override so `sessions.open(id)` returns a
|
|
150
196
|
// SessionHandle with an in-memory `.out` that captures writes. The
|
|
@@ -347,6 +393,52 @@ function mockChatAgent(agent, options = {}) {
|
|
|
347
393
|
metadata: clientData,
|
|
348
394
|
});
|
|
349
395
|
},
|
|
396
|
+
async sendWebhookAction(args) {
|
|
397
|
+
const deliveryId = args.deliveryId ?? `dlv_${++channelDeliveryCounter}`;
|
|
398
|
+
const turn = await sendPayloadAndWait({
|
|
399
|
+
chatId,
|
|
400
|
+
trigger: "action",
|
|
401
|
+
actionSource: "webhook",
|
|
402
|
+
action: {
|
|
403
|
+
type: args.type,
|
|
404
|
+
event: args.event,
|
|
405
|
+
source: args.source ?? "custom",
|
|
406
|
+
headers: args.headers ?? {},
|
|
407
|
+
deliveryId,
|
|
408
|
+
...(args.externalDeliveryId ? { externalDeliveryId: args.externalDeliveryId } : {}),
|
|
409
|
+
},
|
|
410
|
+
metadata: clientData,
|
|
411
|
+
});
|
|
412
|
+
await settlePostTurnChannelEgress(chatId);
|
|
413
|
+
return turn;
|
|
414
|
+
},
|
|
415
|
+
async sendPendingChannelEvent(args) {
|
|
416
|
+
await harnessReady;
|
|
417
|
+
const seqBefore = v3_1.sessionStreams.lastSeqNum(chatId, "in") ?? -1;
|
|
418
|
+
const deliveryId = args.deliveryId ?? `dlv_${++channelDeliveryCounter}`;
|
|
419
|
+
await sendSessionInput(sessionId, {
|
|
420
|
+
kind: "message",
|
|
421
|
+
payload: {
|
|
422
|
+
chatId,
|
|
423
|
+
trigger: "submit-message",
|
|
424
|
+
channelEvent: {
|
|
425
|
+
connectorId: args.connectorId ?? exports.DEFAULT_TEST_CONNECTOR_ID,
|
|
426
|
+
event: args.event,
|
|
427
|
+
source: args.source ?? "custom",
|
|
428
|
+
headers: {},
|
|
429
|
+
deliveryId,
|
|
430
|
+
},
|
|
431
|
+
metadata: clientData,
|
|
432
|
+
},
|
|
433
|
+
});
|
|
434
|
+
const deadline = Date.now() + 5_000;
|
|
435
|
+
while ((v3_1.sessionStreams.lastSeqNum(chatId, "in") ?? -1) <= seqBefore) {
|
|
436
|
+
if (Date.now() > deadline) {
|
|
437
|
+
throw new Error(`sendPendingChannelEvent: ${deliveryId} never landed on session.in`);
|
|
438
|
+
}
|
|
439
|
+
await new Promise((resolve) => setTimeout(resolve, 5));
|
|
440
|
+
}
|
|
441
|
+
},
|
|
350
442
|
async sendPendingMessage(message) {
|
|
351
443
|
await harnessReady;
|
|
352
444
|
const seqBefore = v3_1.sessionStreams.lastSeqNum(chatId, "in") ?? -1;
|
|
@@ -374,6 +466,41 @@ function mockChatAgent(agent, options = {}) {
|
|
|
374
466
|
await new Promise((resolve) => setTimeout(resolve, 5));
|
|
375
467
|
}
|
|
376
468
|
},
|
|
469
|
+
async sendChannelEvent(args) {
|
|
470
|
+
const deliveryId = args.deliveryId ?? `dlv_${++channelDeliveryCounter}`;
|
|
471
|
+
const turn = await sendPayloadAndWait({
|
|
472
|
+
chatId,
|
|
473
|
+
trigger: "submit-message",
|
|
474
|
+
channelEvent: {
|
|
475
|
+
connectorId: args.connectorId ?? exports.DEFAULT_TEST_CONNECTOR_ID,
|
|
476
|
+
event: args.event,
|
|
477
|
+
source: args.source ?? "custom",
|
|
478
|
+
headers: args.headers ?? {},
|
|
479
|
+
deliveryId,
|
|
480
|
+
...(args.externalDeliveryId ? { externalDeliveryId: args.externalDeliveryId } : {}),
|
|
481
|
+
},
|
|
482
|
+
metadata: clientData,
|
|
483
|
+
});
|
|
484
|
+
await settlePostTurnChannelEgress(chatId);
|
|
485
|
+
return turn;
|
|
486
|
+
},
|
|
487
|
+
async deliverChannelEvent(args) {
|
|
488
|
+
const deliveryId = args.deliveryId ?? `dlv_${++channelDeliveryCounter}`;
|
|
489
|
+
await sendPayloadAndWait({
|
|
490
|
+
chatId,
|
|
491
|
+
trigger: "submit-message",
|
|
492
|
+
channelEvent: {
|
|
493
|
+
connectorId: args.connectorId ?? exports.DEFAULT_TEST_CONNECTOR_ID,
|
|
494
|
+
event: args.event,
|
|
495
|
+
source: args.source ?? "custom",
|
|
496
|
+
headers: args.headers ?? {},
|
|
497
|
+
deliveryId,
|
|
498
|
+
...(args.externalDeliveryId ? { externalDeliveryId: args.externalDeliveryId } : {}),
|
|
499
|
+
},
|
|
500
|
+
metadata: clientData,
|
|
501
|
+
});
|
|
502
|
+
await settlePostTurnChannelEgress(chatId);
|
|
503
|
+
},
|
|
377
504
|
async sendStop(message) {
|
|
378
505
|
await harnessReady;
|
|
379
506
|
await sendSessionInput(sessionId, { kind: "stop", message });
|
|
@@ -445,12 +572,12 @@ function mockChatAgent(agent, options = {}) {
|
|
|
445
572
|
seedSessionOutPartial(partial) {
|
|
446
573
|
seededReplayPartial = partial;
|
|
447
574
|
},
|
|
448
|
-
seedSessionInTail(
|
|
449
|
-
|
|
575
|
+
seedSessionInTail(entries) {
|
|
576
|
+
seededSessionInTail = entries;
|
|
450
577
|
// The seeded tail occupies seqNums 1..n of the channel, so anything sent
|
|
451
578
|
// live afterwards has to continue above it.
|
|
452
|
-
if (
|
|
453
|
-
v3_1.sessionStreams.setLastSeqNum(sessionId, "in",
|
|
579
|
+
if (entries.length > 0) {
|
|
580
|
+
v3_1.sessionStreams.setLastSeqNum(sessionId, "in", entries.length);
|
|
454
581
|
}
|
|
455
582
|
},
|
|
456
583
|
async deliverSessionInAtSeq(message, seqNum) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mock-chat-agent.js","sourceRoot":"","sources":["../../../../src/v3/test/mock-chat-agent.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mock-chat-agent.js","sourceRoot":"","sources":["../../../../src/v3/test/mock-chat-agent.ts"],"names":[],"mappings":"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"}
|
|
@@ -55,7 +55,19 @@ export type TranscriptScope<TClientData = unknown> = {
|
|
|
55
55
|
/** The run context of a write. Supplied by the runtime; always in-run. */
|
|
56
56
|
export type TranscriptStorageContext<TClientData = unknown> = TranscriptScope<TClientData> & {
|
|
57
57
|
turn: number;
|
|
58
|
-
|
|
58
|
+
/**
|
|
59
|
+
* What produced this write. `action-turn` is a turn that `onAction` asked for by returning
|
|
60
|
+
* `chat.turn()`: the edit itself saves as `action`, the turn that follows as `action-turn`.
|
|
61
|
+
*/
|
|
62
|
+
trigger: "submit-message" | "regenerate-message" | "action" | "action-turn";
|
|
63
|
+
/**
|
|
64
|
+
* Which surface drove the turn or action: a chat client (`client`), a channel connector such
|
|
65
|
+
* as Slack (`channel`), or a `chat.event` webhook delivery (`webhook`). Always set by the
|
|
66
|
+
* runtime; optional so a hand-built context (tests, tooling) stays valid.
|
|
67
|
+
*/
|
|
68
|
+
source?: "client" | "channel" | "webhook";
|
|
69
|
+
/** The channel connector id when `source` is `channel`, or when a bound session answers into one. */
|
|
70
|
+
connectorId?: string;
|
|
59
71
|
runId: string;
|
|
60
72
|
ctx: TaskRunContext;
|
|
61
73
|
};
|
|
@@ -202,6 +214,35 @@ type ModelLaneInjection = {
|
|
|
202
214
|
* `injections` are conversational messages `chat.inject` added, anchored
|
|
203
215
|
* after the transcript message they followed.
|
|
204
216
|
*/
|
|
217
|
+
/**
|
|
218
|
+
* The channel a session is bound to: the connector that last delivered a turn and the
|
|
219
|
+
* connector-owned handle it needs to post without an inbound event (for Slack, the team,
|
|
220
|
+
* channel and thread). Written by the runtime on a channel turn; read on every later turn so
|
|
221
|
+
* an action turn or a browser-started turn can answer into the same thread.
|
|
222
|
+
*/
|
|
223
|
+
export type TranscriptChannelBinding<THandle = unknown> = {
|
|
224
|
+
connectorId: string;
|
|
225
|
+
handle: THandle;
|
|
226
|
+
/** ISO timestamp of the delivery that set the binding. */
|
|
227
|
+
boundAt: string;
|
|
228
|
+
deliveryId: string;
|
|
229
|
+
/**
|
|
230
|
+
* The message ref of the approval controls posted for each still-pending tool call, by tool call
|
|
231
|
+
* id, so a stop can update them after the worker that posted them is gone.
|
|
232
|
+
*/
|
|
233
|
+
controls?: Record<string, string>;
|
|
234
|
+
/**
|
|
235
|
+
* The ref of the native reply stream open for the turn in flight. Cleared when the turn ends, so a
|
|
236
|
+
* continuation that boots with it set knows its predecessor died mid-stream.
|
|
237
|
+
*/
|
|
238
|
+
stream?: string;
|
|
239
|
+
/**
|
|
240
|
+
* True while a turn that reported `working` to the connector's `lifecycle()` is running. Saved with
|
|
241
|
+
* the turn-start write and cleared when the turn ends, so a worker that boots with it set knows the
|
|
242
|
+
* surface still shows the agent working.
|
|
243
|
+
*/
|
|
244
|
+
working?: boolean;
|
|
245
|
+
};
|
|
205
246
|
export type TranscriptRuntimeState = {
|
|
206
247
|
v: 1;
|
|
207
248
|
compaction?: {
|
|
@@ -213,6 +254,8 @@ export type TranscriptRuntimeState = {
|
|
|
213
254
|
steering?: SteeringInjection[];
|
|
214
255
|
/** `chat.inject` messages queued but not yet drained into a turn when the save happened. */
|
|
215
256
|
queued?: ModelMessage[];
|
|
257
|
+
/** The channel this session answers into. See {@link TranscriptChannelBinding}. */
|
|
258
|
+
channelBinding?: TranscriptChannelBinding;
|
|
216
259
|
};
|
|
217
260
|
/**
|
|
218
261
|
* The slice of a transcript worth storing, which is the last `keep` messages
|