managed-deepagents 0.10.0-dev.1 → 0.10.0-dev.10
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/README.md +220 -21
- package/dist/agent-auth.d.ts +13 -0
- package/dist/agent-auth.d.ts.map +1 -1
- package/dist/agent-auth.js +16 -1
- package/dist/agent-auth.js.map +1 -1
- package/dist/channels/github/connections.d.ts.map +1 -1
- package/dist/channels/github/connections.js +2 -2
- package/dist/channels/github/connections.js.map +1 -1
- package/dist/channels/github/index.d.ts +2 -9
- package/dist/channels/github/index.d.ts.map +1 -1
- package/dist/channels/github/index.js +72 -140
- package/dist/channels/github/index.js.map +1 -1
- package/dist/channels/github/schema.d.ts.map +1 -1
- package/dist/channels/github/schema.js +1 -3
- package/dist/channels/github/schema.js.map +1 -1
- package/dist/channels/github/types.d.ts +48 -10
- package/dist/channels/github/types.d.ts.map +1 -1
- package/dist/channels/http/endpoint.d.ts +41 -0
- package/dist/channels/http/endpoint.d.ts.map +1 -0
- package/dist/channels/http/endpoint.js +132 -0
- package/dist/channels/http/endpoint.js.map +1 -0
- package/dist/channels/http/http.d.ts.map +1 -1
- package/dist/channels/http/http.js +233 -66
- package/dist/channels/http/http.js.map +1 -1
- package/dist/channels/http/index.d.ts +1 -1
- package/dist/channels/http/index.d.ts.map +1 -1
- package/dist/channels/http/index.js.map +1 -1
- package/dist/channels/http/ingress.d.ts +34 -3
- package/dist/channels/http/ingress.d.ts.map +1 -1
- package/dist/channels/http/ingress.js +40 -24
- package/dist/channels/http/ingress.js.map +1 -1
- package/dist/channels/http/provider.d.ts +99 -0
- package/dist/channels/http/provider.d.ts.map +1 -0
- package/dist/channels/http/provider.js +188 -0
- package/dist/channels/http/provider.js.map +1 -0
- package/dist/channels/http/reply.d.ts +20 -0
- package/dist/channels/http/reply.d.ts.map +1 -0
- package/dist/channels/http/reply.js +116 -0
- package/dist/channels/http/reply.js.map +1 -0
- package/dist/channels/http/studio.d.ts +17 -0
- package/dist/channels/http/studio.d.ts.map +1 -0
- package/dist/channels/http/studio.js +82 -0
- package/dist/channels/http/studio.js.map +1 -0
- package/dist/channels/http/types.d.ts +77 -6
- package/dist/channels/http/types.d.ts.map +1 -1
- package/dist/channels/linear/connections.d.ts +11 -0
- package/dist/channels/linear/connections.d.ts.map +1 -0
- package/dist/channels/linear/connections.js +14 -0
- package/dist/channels/linear/connections.js.map +1 -0
- package/dist/channels/linear/graphql.d.ts +57 -0
- package/dist/channels/linear/graphql.d.ts.map +1 -0
- package/dist/channels/linear/graphql.js +167 -0
- package/dist/channels/linear/graphql.js.map +1 -0
- package/dist/channels/linear/index.d.ts +9 -0
- package/dist/channels/linear/index.d.ts.map +1 -0
- package/dist/channels/linear/index.js +477 -0
- package/dist/channels/linear/index.js.map +1 -0
- package/dist/channels/linear/schema.d.ts +1064 -0
- package/dist/channels/linear/schema.d.ts.map +1 -0
- package/dist/channels/linear/schema.js +249 -0
- package/dist/channels/linear/schema.js.map +1 -0
- package/dist/channels/linear/types.d.ts +150 -0
- package/dist/channels/linear/types.d.ts.map +1 -0
- package/dist/channels/linear/types.js +2 -0
- package/dist/channels/linear/types.js.map +1 -0
- package/dist/channels/message-schema.d.ts +2 -0
- package/dist/channels/message-schema.d.ts.map +1 -1
- package/dist/channels/message-schema.js +4 -0
- package/dist/channels/message-schema.js.map +1 -1
- package/dist/channels/reserved-connections.d.ts +2 -2
- package/dist/channels/reserved-connections.d.ts.map +1 -1
- package/dist/channels/reserved-connections.js +26 -9
- package/dist/channels/reserved-connections.js.map +1 -1
- package/dist/channels/run-input.d.ts +17 -1
- package/dist/channels/run-input.d.ts.map +1 -1
- package/dist/channels/run-input.js +39 -5
- package/dist/channels/run-input.js.map +1 -1
- package/dist/channels/slack/index.d.ts.map +1 -1
- package/dist/channels/slack/index.js +2 -0
- package/dist/channels/slack/index.js.map +1 -1
- package/dist/channels/slack/message-content.d.ts +25 -0
- package/dist/channels/slack/message-content.d.ts.map +1 -0
- package/dist/channels/slack/message-content.js +237 -0
- package/dist/channels/slack/message-content.js.map +1 -0
- package/dist/channels/source-providers.js +1 -1
- package/dist/channels/source-providers.js.map +1 -1
- package/dist/channels/trigger/client.js +7 -3
- package/dist/channels/trigger/client.js.map +1 -1
- package/dist/channels/trigger/http.d.ts +3 -1
- package/dist/channels/trigger/http.d.ts.map +1 -1
- package/dist/channels/trigger/http.js +7 -4
- package/dist/channels/trigger/http.js.map +1 -1
- package/dist/channels/trigger/tracing-project.d.ts +16 -0
- package/dist/channels/trigger/tracing-project.d.ts.map +1 -0
- package/dist/channels/trigger/tracing-project.js +54 -0
- package/dist/channels/trigger/tracing-project.js.map +1 -0
- package/dist/channels/trigger/types.d.ts +12 -2
- package/dist/channels/trigger/types.d.ts.map +1 -1
- package/dist/channels/trigger/types.js.map +1 -1
- package/dist/connections.d.ts +30 -0
- package/dist/connections.d.ts.map +1 -1
- package/dist/connections.js +80 -7
- package/dist/connections.js.map +1 -1
- package/dist/connectors/mcp/index.d.ts.map +1 -1
- package/dist/connectors/mcp/index.js +52 -2
- package/dist/connectors/mcp/index.js.map +1 -1
- package/dist/connectors/mcp/langsmith-url.js +2 -2
- package/dist/connectors/mcp/langsmith-url.js.map +1 -1
- package/dist/credential-gate.d.ts.map +1 -1
- package/dist/credential-gate.js +24 -3
- package/dist/credential-gate.js.map +1 -1
- package/dist/index.d.ts +5 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/dist/ingress/runs.d.ts +7 -0
- package/dist/ingress/runs.d.ts.map +1 -1
- package/dist/ingress/runs.js +34 -1
- package/dist/ingress/runs.js.map +1 -1
- package/dist/namespaces.d.ts +15 -0
- package/dist/namespaces.d.ts.map +1 -1
- package/dist/namespaces.js +2 -0
- package/dist/namespaces.js.map +1 -1
- package/dist/runtime/auth.d.ts +4 -6
- package/dist/runtime/auth.d.ts.map +1 -1
- package/dist/runtime/auth.js +165 -31
- package/dist/runtime/auth.js.map +1 -1
- package/dist/runtime/channel-icon.d.ts +22 -0
- package/dist/runtime/channel-icon.d.ts.map +1 -0
- package/dist/runtime/channel-icon.js +70 -0
- package/dist/runtime/channel-icon.js.map +1 -0
- package/dist/runtime/channel.d.ts +6 -0
- package/dist/runtime/channel.d.ts.map +1 -1
- package/dist/runtime/channel.js.map +1 -1
- package/dist/runtime/identity-http.d.ts +2 -0
- package/dist/runtime/identity-http.d.ts.map +1 -1
- package/dist/runtime/identity-http.js +35 -0
- package/dist/runtime/identity-http.js.map +1 -1
- package/dist/runtime/identity-runtime.d.ts +15 -0
- package/dist/runtime/identity-runtime.d.ts.map +1 -1
- package/dist/runtime/identity-runtime.js +35 -0
- package/dist/runtime/identity-runtime.js.map +1 -1
- package/dist/runtime/index.d.ts.map +1 -1
- package/dist/runtime/index.js +9 -4
- package/dist/runtime/index.js.map +1 -1
- package/dist/runtime/sandbox-manager.d.ts +11 -0
- package/dist/runtime/sandbox-manager.d.ts.map +1 -1
- package/dist/runtime/sandbox-manager.js +70 -5
- package/dist/runtime/sandbox-manager.js.map +1 -1
- package/dist/runtime/schedule-auth.d.ts +1 -0
- package/dist/runtime/schedule-auth.d.ts.map +1 -1
- package/dist/runtime/schedule-auth.js +68 -2
- package/dist/runtime/schedule-auth.js.map +1 -1
- package/dist/runtime/types.d.ts +5 -0
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/runtime-schedules.d.ts.map +1 -1
- package/dist/runtime-schedules.js +8 -12
- package/dist/runtime-schedules.js.map +1 -1
- package/package.json +7 -7
|
@@ -0,0 +1,132 @@
|
|
|
1
|
+
/** How long the service may take to answer. */
|
|
2
|
+
const TIMEOUT_MS = 60_000;
|
|
3
|
+
/** The largest answer read; run input may carry images. */
|
|
4
|
+
const MAX_RESPONSE_BYTES = 10 * 1024 * 1024;
|
|
5
|
+
const RUN_OPTION_KEYS = new Set([
|
|
6
|
+
"context",
|
|
7
|
+
"metadata",
|
|
8
|
+
"webhook",
|
|
9
|
+
]);
|
|
10
|
+
const ANSWER_SHAPE = "event endpoint answer must be null or { input, context?, metadata?, webhook? }";
|
|
11
|
+
/** Whether an `onEvent` value is an endpoint rather than a handler function. */
|
|
12
|
+
export function isEventEndpoint(value) {
|
|
13
|
+
return (typeof value === "string" ||
|
|
14
|
+
value instanceof URL ||
|
|
15
|
+
value instanceof Request);
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* The handler an endpoint stands for. When the event's thread takes a turn,
|
|
19
|
+
* MDA POSTs `{ event: { key, deliveryId, payload }, thread: { id, channel,
|
|
20
|
+
* interrupted? } }` as JSON to the endpoint's URL, with a `Request`'s headers,
|
|
21
|
+
* and starts the run the service answers with: `{ input, context?, metadata?,
|
|
22
|
+
* webhook? }`.
|
|
23
|
+
* `null` or HTTP 204 starts nothing. Any other answer, a
|
|
24
|
+
* redirect, or no answer within 60 seconds fails the handler, as a handler
|
|
25
|
+
* that throws does. The URL is http(s), without credentials in it.
|
|
26
|
+
*/
|
|
27
|
+
export function endpointHandler(endpoint, label) {
|
|
28
|
+
const template = endpoint instanceof Request ? endpoint : undefined;
|
|
29
|
+
const target = endpointUrl(template ? template.url : String(endpoint), label);
|
|
30
|
+
const headers = new Headers(template?.headers);
|
|
31
|
+
headers.set("content-type", "application/json");
|
|
32
|
+
headers.set("accept", "application/json");
|
|
33
|
+
return async (event, thread) => {
|
|
34
|
+
const response = await fetch(target, {
|
|
35
|
+
method: "POST",
|
|
36
|
+
headers,
|
|
37
|
+
body: JSON.stringify({
|
|
38
|
+
event: {
|
|
39
|
+
key: event.key,
|
|
40
|
+
deliveryId: event.deliveryId,
|
|
41
|
+
payload: event.payload,
|
|
42
|
+
},
|
|
43
|
+
thread: {
|
|
44
|
+
id: thread.id,
|
|
45
|
+
channel: { name: thread.channel.name },
|
|
46
|
+
...(thread.interrupted && { interrupted: true }),
|
|
47
|
+
},
|
|
48
|
+
}),
|
|
49
|
+
redirect: "manual",
|
|
50
|
+
signal: AbortSignal.timeout(TIMEOUT_MS),
|
|
51
|
+
});
|
|
52
|
+
if (response.status === 204) {
|
|
53
|
+
await response.body?.cancel();
|
|
54
|
+
return null;
|
|
55
|
+
}
|
|
56
|
+
if (!response.ok) {
|
|
57
|
+
await response.body?.cancel();
|
|
58
|
+
throw new Error(`event endpoint answered HTTP ${response.status}`);
|
|
59
|
+
}
|
|
60
|
+
return runResult(await boundedJson(response));
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
function endpointUrl(url, label) {
|
|
64
|
+
let parsed;
|
|
65
|
+
try {
|
|
66
|
+
parsed = new URL(url);
|
|
67
|
+
}
|
|
68
|
+
catch {
|
|
69
|
+
parsed = undefined;
|
|
70
|
+
}
|
|
71
|
+
if (!parsed ||
|
|
72
|
+
(parsed.protocol !== "https:" && parsed.protocol !== "http:") ||
|
|
73
|
+
parsed.username ||
|
|
74
|
+
parsed.password)
|
|
75
|
+
throw new TypeError(`${label} must be an absolute http(s) URL, without credentials in it`);
|
|
76
|
+
return parsed.href;
|
|
77
|
+
}
|
|
78
|
+
/** The answer as JSON, read only up to `MAX_RESPONSE_BYTES`. */
|
|
79
|
+
async function boundedJson(response) {
|
|
80
|
+
const declared = Number(response.headers.get("content-length"));
|
|
81
|
+
if (declared > MAX_RESPONSE_BYTES) {
|
|
82
|
+
await response.body?.cancel();
|
|
83
|
+
throw new Error("event endpoint answer is too large");
|
|
84
|
+
}
|
|
85
|
+
const reader = response.body?.getReader();
|
|
86
|
+
const chunks = [];
|
|
87
|
+
let size = 0;
|
|
88
|
+
for (;;) {
|
|
89
|
+
const chunk = await reader?.read();
|
|
90
|
+
if (!chunk || chunk.done)
|
|
91
|
+
break;
|
|
92
|
+
size += chunk.value.byteLength;
|
|
93
|
+
if (size > MAX_RESPONSE_BYTES) {
|
|
94
|
+
await reader?.cancel();
|
|
95
|
+
throw new Error("event endpoint answer is too large");
|
|
96
|
+
}
|
|
97
|
+
chunks.push(chunk.value);
|
|
98
|
+
}
|
|
99
|
+
const text = new TextDecoder().decode(chunks.length === 1 ? chunks[0] : concat(chunks, size));
|
|
100
|
+
try {
|
|
101
|
+
return JSON.parse(text);
|
|
102
|
+
}
|
|
103
|
+
catch {
|
|
104
|
+
throw new Error("event endpoint answer is not JSON");
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
function concat(chunks, size) {
|
|
108
|
+
const joined = new Uint8Array(size);
|
|
109
|
+
let offset = 0;
|
|
110
|
+
for (const chunk of chunks) {
|
|
111
|
+
joined.set(chunk, offset);
|
|
112
|
+
offset += chunk.byteLength;
|
|
113
|
+
}
|
|
114
|
+
return joined;
|
|
115
|
+
}
|
|
116
|
+
/** The run the answer names; the channel checks the input and options as a handler's. */
|
|
117
|
+
function runResult(answer) {
|
|
118
|
+
if (answer === null)
|
|
119
|
+
return null;
|
|
120
|
+
if (typeof answer !== "object" ||
|
|
121
|
+
Array.isArray(answer) ||
|
|
122
|
+
!("input" in answer))
|
|
123
|
+
throw new Error(ANSWER_SHAPE);
|
|
124
|
+
const { input, ...options } = answer;
|
|
125
|
+
for (const key of Object.keys(options))
|
|
126
|
+
if (!RUN_OPTION_KEYS.has(key))
|
|
127
|
+
throw new Error(ANSWER_SHAPE);
|
|
128
|
+
return Object.keys(options).length
|
|
129
|
+
? [input, options]
|
|
130
|
+
: input;
|
|
131
|
+
}
|
|
132
|
+
//# sourceMappingURL=endpoint.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"endpoint.js","sourceRoot":"","sources":["../../../src/channels/http/endpoint.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/channels/http/http.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../../../src/channels/http/http.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EACV,kBAAkB,EAOnB,MAAM,YAAY,CAAC;AAYpB,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,0BAA0B,CAAC;AAwCrE,wBAAsB,iBAAiB,CACrC,GAAG,EAAE,oBAAoB,EACzB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,QAAQ,CAAC,CA2UnB"}
|
|
@@ -2,10 +2,41 @@ import { channelContextSchema } from "../../run-context.js";
|
|
|
2
2
|
import { immutableCopy, validateMessage } from "../runtime.js";
|
|
3
3
|
import { isJsonValue } from "../message-schema.js";
|
|
4
4
|
import { normalizeRunInput } from "../run-input.js";
|
|
5
|
-
import { startHttpIngressAgent, observeHttpIngressAgent, waitForHttpIngressThread, } from "./ingress.js";
|
|
5
|
+
import { cancelHttpIngressRuns, startHttpIngressAgent, observeHttpIngressAgent, waitForHttpIngressThread, } from "./ingress.js";
|
|
6
|
+
import { ChannelError } from "../errors.js";
|
|
6
7
|
import { scheduleIngressWork } from "../../ingress/index.js";
|
|
7
8
|
import { logger } from "../../runtime/log.js";
|
|
8
9
|
const ASSISTANT_ID_ENV = "MDA_ASSISTANT_ID";
|
|
10
|
+
/**
|
|
11
|
+
* Messages in this process that may still wait for their thread, by thread.
|
|
12
|
+
* A message waiting for its busy thread (the default `enqueue` strategy) is
|
|
13
|
+
* no server-side run yet, so the server's cancel can't reach it: a cancel
|
|
14
|
+
* marks the thread's waiters, and they drop themselves. A message joins
|
|
15
|
+
* before its first start and leaves once its fate is settled, so only
|
|
16
|
+
* threads with messages in flight are kept. Messages waiting in another
|
|
17
|
+
* replica aren't reached.
|
|
18
|
+
*
|
|
19
|
+
* This is not durable: a waiting message lives only in this process, so a
|
|
20
|
+
* restart loses it after the provider was already told it arrived. It waits
|
|
21
|
+
* here rather than queueing on the server because a queued run starts as soon
|
|
22
|
+
* as the run before it stops on `interrupt()`, and its new input discards the
|
|
23
|
+
* decision the thread waits on. A server-side queue that holds messages while
|
|
24
|
+
* a thread waits on an interrupt would replace this; see
|
|
25
|
+
* https://github.com/langchain-ai/langgraph/issues/8838.
|
|
26
|
+
*/
|
|
27
|
+
const threadWaiters = new Map();
|
|
28
|
+
function joinThreadWaiters(threadId) {
|
|
29
|
+
const waiter = { cancelled: false };
|
|
30
|
+
const waiters = threadWaiters.get(threadId) ?? new Set();
|
|
31
|
+
threadWaiters.set(threadId, waiters.add(waiter));
|
|
32
|
+
return waiter;
|
|
33
|
+
}
|
|
34
|
+
function leaveThreadWaiters(threadId, waiter) {
|
|
35
|
+
const waiters = threadWaiters.get(threadId);
|
|
36
|
+
waiters?.delete(waiter);
|
|
37
|
+
if (waiters?.size === 0)
|
|
38
|
+
threadWaiters.delete(threadId);
|
|
39
|
+
}
|
|
9
40
|
export async function handleHttpRequest(ctx, adapter) {
|
|
10
41
|
const rawBody = requestBytes(ctx);
|
|
11
42
|
function adapterRequest() {
|
|
@@ -39,6 +70,35 @@ export async function handleHttpRequest(ctx, adapter) {
|
|
|
39
70
|
if (result.type === "ignore") {
|
|
40
71
|
return (result.response ?? Response.json({ status: "ignored" }, { status: 202 }));
|
|
41
72
|
}
|
|
73
|
+
const assistantId = process.env[ASSISTANT_ID_ENV]?.trim();
|
|
74
|
+
if (!assistantId) {
|
|
75
|
+
return jsonError(500, "channel runtime is not configured");
|
|
76
|
+
}
|
|
77
|
+
if (result.type === "cancel") {
|
|
78
|
+
let stop;
|
|
79
|
+
try {
|
|
80
|
+
validateCancelMessage(result.message);
|
|
81
|
+
stop = immutableCopy(result.message);
|
|
82
|
+
}
|
|
83
|
+
catch {
|
|
84
|
+
return jsonError(400, "invalid channel message");
|
|
85
|
+
}
|
|
86
|
+
const threadId = stop.threadId.toLowerCase();
|
|
87
|
+
return cancelThreadRuns(ctx, adapter, {
|
|
88
|
+
userId: stop.userId,
|
|
89
|
+
sourceThreadKey: `http:v1:${JSON.stringify([ctx.name, threadId])}`,
|
|
90
|
+
threadId,
|
|
91
|
+
target: stop.target,
|
|
92
|
+
delivery: {
|
|
93
|
+
threadId,
|
|
94
|
+
assistantId,
|
|
95
|
+
...(result.rawEvent !== undefined && {
|
|
96
|
+
rawEvent: structuredClone(result.rawEvent),
|
|
97
|
+
}),
|
|
98
|
+
},
|
|
99
|
+
...(result.response !== undefined && { response: result.response }),
|
|
100
|
+
});
|
|
101
|
+
}
|
|
42
102
|
let message = result.message;
|
|
43
103
|
try {
|
|
44
104
|
validateInboundMessage(message, adapter.input !== undefined);
|
|
@@ -47,10 +107,6 @@ export async function handleHttpRequest(ctx, adapter) {
|
|
|
47
107
|
catch {
|
|
48
108
|
return jsonError(400, "invalid channel message");
|
|
49
109
|
}
|
|
50
|
-
const assistantId = process.env[ASSISTANT_ID_ENV]?.trim();
|
|
51
|
-
if (!assistantId) {
|
|
52
|
-
return jsonError(500, "channel runtime is not configured");
|
|
53
|
-
}
|
|
54
110
|
const deliveryId = crypto.randomUUID();
|
|
55
111
|
const threadId = message.threadId.toLowerCase();
|
|
56
112
|
const sourceThreadKey = `http:v1:${JSON.stringify([ctx.name, threadId])}`;
|
|
@@ -83,7 +139,7 @@ export async function handleHttpRequest(ctx, adapter) {
|
|
|
83
139
|
assistantId,
|
|
84
140
|
};
|
|
85
141
|
const rawEvent = result.rawEvent;
|
|
86
|
-
const
|
|
142
|
+
const delivery = (assistantId) => ({
|
|
87
143
|
threadId,
|
|
88
144
|
...(assistantId !== undefined && { assistantId }),
|
|
89
145
|
...(result.rawEvent !== undefined && {
|
|
@@ -112,100 +168,154 @@ export async function handleHttpRequest(ctx, adapter) {
|
|
|
112
168
|
multitaskStrategy: adapter.multitaskStrategy,
|
|
113
169
|
}),
|
|
114
170
|
};
|
|
171
|
+
// Every message gets one `onReceived` and, after it, one `onSettled`.
|
|
172
|
+
const onReceived = adapter.onReceived?.bind(adapter);
|
|
173
|
+
const received = new Promise((resolve) => {
|
|
174
|
+
if (!onReceived)
|
|
175
|
+
return resolve();
|
|
176
|
+
scheduleIngressWork(async () => {
|
|
177
|
+
try {
|
|
178
|
+
await onReceived(immutableCopy(message.target), delivery(assistantId));
|
|
179
|
+
}
|
|
180
|
+
catch (error) {
|
|
181
|
+
logger.error(`channel received notice failed (${logger.safeErrorLabel(error)})`);
|
|
182
|
+
}
|
|
183
|
+
finally {
|
|
184
|
+
resolve();
|
|
185
|
+
}
|
|
186
|
+
}, { label: `channel "${ctx.name}" received notice` });
|
|
187
|
+
});
|
|
188
|
+
const onSettled = adapter.onSettled?.bind(adapter);
|
|
189
|
+
async function settle(outcome,
|
|
190
|
+
// The thread's assistant lets a notice link to it in Studio.
|
|
191
|
+
threadAssistantId) {
|
|
192
|
+
if (!onSettled)
|
|
193
|
+
return;
|
|
194
|
+
await received;
|
|
195
|
+
try {
|
|
196
|
+
await onSettled(immutableCopy(message.target), {
|
|
197
|
+
...delivery(threadAssistantId ?? assistantId),
|
|
198
|
+
outcome,
|
|
199
|
+
});
|
|
200
|
+
}
|
|
201
|
+
catch (error) {
|
|
202
|
+
logger.error(`channel settled notice failed (${logger.safeErrorLabel(error)})`);
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
const label = `channel "${ctx.name}" delivery`;
|
|
206
|
+
// Joined before the first start, so a cancel during it reaches the message.
|
|
207
|
+
const waiter = joinThreadWaiters(threadId);
|
|
115
208
|
let outcome;
|
|
116
209
|
try {
|
|
117
210
|
outcome = await startHttpIngressAgent(startInput);
|
|
118
211
|
}
|
|
119
212
|
catch (error) {
|
|
213
|
+
leaveThreadWaiters(threadId, waiter);
|
|
120
214
|
logger.error(`channel run could not be started (${logger.safeErrorLabel(error)})`);
|
|
215
|
+
// The provider may redeliver; this delivery ends here.
|
|
216
|
+
if (onSettled)
|
|
217
|
+
scheduleIngressWork(() => settle({ type: "failed" }), { label });
|
|
121
218
|
return jsonError(500, "channel run could not be started");
|
|
122
219
|
}
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
220
|
+
// Only a message that waits for its busy thread stays.
|
|
221
|
+
if (!("skipped" in outcome && outcome.skipped === "busy"))
|
|
222
|
+
leaveThreadWaiters(threadId, waiter);
|
|
223
|
+
const post = adapter.post?.bind(adapter);
|
|
224
|
+
const onError = adapter.onError?.bind(adapter);
|
|
225
|
+
async function notifyFailed(error) {
|
|
128
226
|
try {
|
|
129
|
-
|
|
130
|
-
|
|
227
|
+
if (onError) {
|
|
228
|
+
await onError(error, immutableCopy(message.target));
|
|
229
|
+
}
|
|
230
|
+
else if (post) {
|
|
231
|
+
await post(immutableCopy({
|
|
232
|
+
type: "content",
|
|
233
|
+
content: "Something went wrong while processing your request.",
|
|
234
|
+
target: message.target,
|
|
235
|
+
}));
|
|
236
|
+
}
|
|
131
237
|
}
|
|
132
|
-
catch (
|
|
133
|
-
|
|
238
|
+
catch (replyError) {
|
|
239
|
+
const action = onError ? "callback" : "reply";
|
|
240
|
+
logger.error(`channel error ${action} failed (${logger.safeErrorLabel(replyError)})`);
|
|
134
241
|
}
|
|
135
242
|
}
|
|
136
|
-
|
|
137
|
-
|
|
243
|
+
// The run posts its own answer (see `./reply.ts`): this reports how it
|
|
244
|
+
// ended, which the run can't say itself.
|
|
138
245
|
async function deliver(started) {
|
|
139
|
-
|
|
140
|
-
|
|
246
|
+
const { runId } = started;
|
|
247
|
+
logger.info(`channel run started ${JSON.stringify({ threadId, runId: logger.logIdentifier(runId) })}`);
|
|
248
|
+
let outcome;
|
|
141
249
|
try {
|
|
142
|
-
|
|
143
|
-
...input,
|
|
144
|
-
...started,
|
|
145
|
-
});
|
|
146
|
-
if (!post || invocation.replyContent === null) {
|
|
147
|
-
return;
|
|
148
|
-
}
|
|
149
|
-
const reply = {
|
|
150
|
-
type: "content",
|
|
151
|
-
content: invocation.replyContent,
|
|
152
|
-
};
|
|
153
|
-
validateMessage(reply);
|
|
154
|
-
replyAttempted = true;
|
|
155
|
-
await post(immutableCopy({ ...reply, target: message.target }));
|
|
250
|
+
outcome = await observeHttpIngressAgent({ ...input, ...started });
|
|
156
251
|
}
|
|
157
252
|
catch (error) {
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
logger.error(`channel error ${action} failed (${logger.safeErrorLabel(replyError)})`);
|
|
174
|
-
}
|
|
253
|
+
// The run may have answered already; only its own failure is reported.
|
|
254
|
+
logger.error(`channel run could not be observed (${logger.safeErrorLabel(error)})`);
|
|
255
|
+
return settle({ type: "unknown", runId });
|
|
256
|
+
}
|
|
257
|
+
switch (outcome.type) {
|
|
258
|
+
case "answered":
|
|
259
|
+
return settle({ type: "completed", runId });
|
|
260
|
+
case "paused":
|
|
261
|
+
return settle({ type: "interrupted", runId }, outcome.assistantId);
|
|
262
|
+
case "failed":
|
|
263
|
+
logger.error(`channel run failed ${JSON.stringify({ threadId })}`);
|
|
264
|
+
await notifyFailed(new ChannelError("channel_run_failed", "channel run failed"));
|
|
265
|
+
return settle({ type: "failed", runId });
|
|
266
|
+
default:
|
|
267
|
+
return settle({ type: outcome.type, runId });
|
|
175
268
|
}
|
|
176
269
|
}
|
|
177
270
|
// The thread's current run may still stop for a decision, so the message
|
|
178
271
|
// waits for that run instead of queueing behind it, then checks again.
|
|
272
|
+
// A cancel while the message waits drops it.
|
|
179
273
|
async function startWhenIdle() {
|
|
180
274
|
let next = { skipped: "busy" };
|
|
181
275
|
try {
|
|
182
276
|
while ("skipped" in next && next.skipped === "busy") {
|
|
183
277
|
await waitForHttpIngressThread(input);
|
|
278
|
+
if (waiter.cancelled) {
|
|
279
|
+
logger.info(`channel run dropped: its thread was cancelled while it waited ${JSON.stringify({ threadId })}`);
|
|
280
|
+
return await settle({ type: "dropped" });
|
|
281
|
+
}
|
|
184
282
|
next = await startHttpIngressAgent(startInput);
|
|
185
283
|
}
|
|
186
284
|
}
|
|
187
285
|
catch (error) {
|
|
188
286
|
logger.error(`channel run could not be started (${logger.safeErrorLabel(error)})`);
|
|
189
|
-
return;
|
|
287
|
+
return await settle({ type: "failed" });
|
|
288
|
+
}
|
|
289
|
+
finally {
|
|
290
|
+
leaveThreadWaiters(threadId, waiter);
|
|
190
291
|
}
|
|
191
292
|
if (!("skipped" in next))
|
|
192
293
|
return deliver(next);
|
|
193
294
|
logger.info(`channel run skipped ${JSON.stringify({ threadId, reason: next.skipped })}`);
|
|
194
|
-
|
|
195
|
-
|
|
295
|
+
await settleSkipped(next);
|
|
296
|
+
}
|
|
297
|
+
/** How a message the thread took no run for ended. */
|
|
298
|
+
function settleSkipped(skipped) {
|
|
299
|
+
switch (skipped.skipped) {
|
|
300
|
+
case "paused":
|
|
301
|
+
return settle({ type: "waiting" }, skipped.assistantId);
|
|
302
|
+
case "ignored":
|
|
303
|
+
return settle({ type: "declined" });
|
|
304
|
+
case "busy":
|
|
305
|
+
throw new Error("a busy thread's message is still waiting");
|
|
306
|
+
default:
|
|
307
|
+
return settle({ type: skipped.skipped });
|
|
308
|
+
}
|
|
196
309
|
}
|
|
197
310
|
if ("skipped" in outcome) {
|
|
198
311
|
logger.info(`channel run skipped ${JSON.stringify({ threadId, reason: outcome.skipped })}`);
|
|
199
|
-
|
|
312
|
+
const skipped = outcome;
|
|
313
|
+
if (skipped.skipped === "busy")
|
|
200
314
|
scheduleIngressWork(startWhenIdle, { label });
|
|
201
|
-
else if (
|
|
202
|
-
|
|
203
|
-
scheduleIngressWork(() => notifyPaused(assistantId), {
|
|
204
|
-
label: `channel "${ctx.name}" paused notice`,
|
|
205
|
-
});
|
|
206
|
-
}
|
|
315
|
+
else if (onSettled)
|
|
316
|
+
scheduleIngressWork(() => settleSkipped(skipped), { label });
|
|
207
317
|
return (result.response ??
|
|
208
|
-
Response.json({ status:
|
|
318
|
+
Response.json({ status: skipped.skipped }, { status: 202 }));
|
|
209
319
|
}
|
|
210
320
|
const started = outcome;
|
|
211
321
|
scheduleIngressWork(() => deliver(started), { label });
|
|
@@ -231,21 +341,78 @@ function validParseResult(value) {
|
|
|
231
341
|
if (result.rawEvent !== undefined && !isJsonValue(result.rawEvent)) {
|
|
232
342
|
return false;
|
|
233
343
|
}
|
|
234
|
-
return result.type === "ignore" ||
|
|
344
|
+
return (result.type === "ignore" ||
|
|
345
|
+
result.type === "message" ||
|
|
346
|
+
result.type === "cancel");
|
|
347
|
+
}
|
|
348
|
+
/**
|
|
349
|
+
* Cancel the thread's runs for a `cancel` result, then settle it in the
|
|
350
|
+
* background. Messages waiting here for the thread are dropped too.
|
|
351
|
+
*/
|
|
352
|
+
async function cancelThreadRuns(ctx, adapter, input) {
|
|
353
|
+
// Before the server's cancel, so waiters it wakes see it.
|
|
354
|
+
for (const waiter of threadWaiters.get(input.threadId) ?? [])
|
|
355
|
+
waiter.cancelled = true;
|
|
356
|
+
let cancelled;
|
|
357
|
+
try {
|
|
358
|
+
cancelled = (await cancelHttpIngressRuns({
|
|
359
|
+
userId: input.userId,
|
|
360
|
+
sourceThreadKey: input.sourceThreadKey,
|
|
361
|
+
sourceProvider: ctx.channel.kind,
|
|
362
|
+
threadId: input.threadId,
|
|
363
|
+
})).length;
|
|
364
|
+
}
|
|
365
|
+
catch (error) {
|
|
366
|
+
logger.error(`channel run could not be cancelled (${logger.safeErrorLabel(error)})`);
|
|
367
|
+
return jsonError(500, "channel run could not be cancelled");
|
|
368
|
+
}
|
|
369
|
+
logger.info(`channel runs cancelled ${JSON.stringify({ threadId: input.threadId, cancelled })}`);
|
|
370
|
+
const onSettled = adapter.onSettled?.bind(adapter);
|
|
371
|
+
if (onSettled)
|
|
372
|
+
scheduleIngressWork(async () => {
|
|
373
|
+
try {
|
|
374
|
+
await onSettled(immutableCopy(input.target), {
|
|
375
|
+
...input.delivery,
|
|
376
|
+
outcome: { type: "stopped", cancelled },
|
|
377
|
+
});
|
|
378
|
+
}
|
|
379
|
+
catch (error) {
|
|
380
|
+
logger.error(`channel settled notice failed (${logger.safeErrorLabel(error)})`);
|
|
381
|
+
}
|
|
382
|
+
}, { label: `channel "${ctx.name}" settled notice` });
|
|
383
|
+
return (input.response ??
|
|
384
|
+
Response.json({ status: "cancelled", cancelled }, { status: 202 }));
|
|
385
|
+
}
|
|
386
|
+
const CANCEL_MESSAGE_KEYS = new Set([
|
|
387
|
+
"userId",
|
|
388
|
+
"threadId",
|
|
389
|
+
"target",
|
|
390
|
+
]);
|
|
391
|
+
/** A cancel names a thread and who to tell; it starts nothing. */
|
|
392
|
+
function validateCancelMessage(message) {
|
|
393
|
+
if (!message || typeof message !== "object")
|
|
394
|
+
throw new Error("channel cancel must be an object");
|
|
395
|
+
for (const key of Object.keys(message))
|
|
396
|
+
if (!CANCEL_MESSAGE_KEYS.has(key))
|
|
397
|
+
throw new Error("channel cancel takes only userId, threadId and target");
|
|
398
|
+
validateAddress(message);
|
|
235
399
|
}
|
|
236
400
|
function validateInboundMessage(message, adapterInput) {
|
|
237
|
-
nonblank(message.userId, "channel userId");
|
|
238
401
|
if (message.deliveryKey !== undefined)
|
|
239
402
|
nonblank(message.deliveryKey, "channel deliveryKey");
|
|
403
|
+
validateAddress(message);
|
|
404
|
+
// The adapter's `input` supplies what a message without content starts.
|
|
405
|
+
if (message.content !== undefined || !adapterInput)
|
|
406
|
+
validateMessageContent(message.content);
|
|
407
|
+
}
|
|
408
|
+
function validateAddress(message) {
|
|
409
|
+
nonblank(message.userId, "channel userId");
|
|
240
410
|
if (typeof message.threadId !== "string" ||
|
|
241
411
|
!/^[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}$/i.test(message.threadId)) {
|
|
242
412
|
throw new Error("channel threadId must be a UUID");
|
|
243
413
|
}
|
|
244
414
|
if (!isJsonValue(message.target))
|
|
245
415
|
throw new Error("channel target must be JSON");
|
|
246
|
-
// The adapter's `input` supplies what a message without content starts.
|
|
247
|
-
if (message.content !== undefined || !adapterInput)
|
|
248
|
-
validateMessageContent(message.content);
|
|
249
416
|
}
|
|
250
417
|
function validateMessageContent(content) {
|
|
251
418
|
validateMessage({ type: "content", content });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/channels/http/http.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAC5D,OAAO,EAAE,aAAa,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAKnD,OAAO,EAAE,iBAAiB,EAA2B,MAAM,iBAAiB,CAAC;AAQ7E,OAAO,EACL,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,GAEzB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAG7D,OAAO,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAE9C,MAAM,gBAAgB,GAAG,kBAAkB,CAAC;AAE5C,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,GAAyB,EACzB,OAA2B;IAE3B,MAAM,OAAO,GAAG,YAAY,CAAC,GAAG,CAAC,CAAC;IAClC,SAAS,cAAc;QACrB,OAAO;YACL,OAAO,EAAE,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,EAAE,IAAI,EAAE,IAAI,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;YACpE,OAAO,EAAE,IAAI,UAAU,CAAC,OAAO,CAAC;SACjC,CAAC;IACJ,CAAC;IACD,IAAI,QAAiB,CAAC;IACtB,IAAI,CAAC;QACH,QAAQ,GAAG,MAAM,OAAO,CAAC,MAAM,CAAC,cAAc,EAAE,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CACV,gCAAgC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAChE,CAAC;QACF,OAAO,SAAS,CAAC,GAAG,EAAE,6BAA6B,CAAC,CAAC;IACvD,CAAC;IACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,SAAS,CAAC,GAAG,EAAE,2BAA2B,CAAC,CAAC;IACrD,CAAC;IAED,IAAI,MAA8B,CAAC;IACnC,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,OAAO,CAAC,KAAK,CAAC,cAAc,EAAE,CAAC,CAAC;IACjD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,IAAI,CAAC,6BAA6B,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1E,OAAO,SAAS,CAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;IACnD,CAAC;IACD,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9B,OAAO,SAAS,CAAC,GAAG,EAAE,8BAA8B,CAAC,CAAC;IACxD,CAAC;IACD,IAAI,MAAM,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC7B,OAAO,CACL,MAAM,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CACzE,CAAC;IACJ,CAAC;IAED,IAAI,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;IAC7B,IAAI,CAAC;QACH,sBAAsB,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC;QAC7D,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC,GAAG,EAAE,yBAAyB,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,CAAC;IAC1D,IAAI,CAAC,WAAW,EAAE,CAAC;QACjB,OAAO,SAAS,CAAC,GAAG,EAAE,mCAAmC,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,UAAU,GAAG,MAAM,CAAC,UAAU,EAAE,CAAC;IACvC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC,WAAW,EAAE,CAAC;IAChD,MAAM,eAAe,GAAG,WAAW,IAAI,CAAC,SAAS,CAAC,CAAC,GAAG,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,EAAE,CAAC;IAC1E,MAAM,OAAO,GAAG,oBAAoB,CAAC,KAAK,CAAC;QACzC,IAAI,EAAE,GAAG,CAAC,IAAI;QACd,QAAQ,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI;QAC1B,eAAe;QACf,KAAK,EAAE;YACL,IAAI,EAAE,SAAS;YACf,QAAQ,EACN,OAAO,CAAC,OAAO,KAAK,SAAS;gBAC3B,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC;oBACE;wBACE,IAAI,EAAE,OAAO;wBACb,OAAO,EAAE,OAAO,CAAC,OAAO;qBACM;iBACjC;SACR;QACD,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE,CAAC;QACvE,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,SAAS,EAAE,QAAQ;QACnB,UAAU;KACX,CAAC,CAAC;IAEH,MAAM,KAAK,GAAG;QACZ,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,QAAQ;QACR,eAAe;QACf,cAAc,EAAE,GAAG,CAAC,OAAO,CAAC,IAAI;QAChC,OAAO;QACP,WAAW;KACZ,CAAC;IACF,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;IACjC,MAAM,OAAO,GAAG,CAAC,WAA+B,EAAsB,EAAE,CAAC,CAAC;QACxE,QAAQ;QACR,GAAG,CAAC,WAAW,KAAK,SAAS,IAAI,EAAE,WAAW,EAAE,CAAC;QACjD,GAAG,CAAC,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI;YACnC,QAAQ,EAAE,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC;SAC3C,CAAC;KACH,CAAC,CAAC;IAEH,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/C,KAAK,UAAU,OAAO;QACpB,IAAI,CAAC;YACH,OAAO,iBAAiB,CACtB,MAAM,SAAS,EAAE,CACf,aAAa,CAAC,OAAO,CAAC,EACtB,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,CAC/D,CACF,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,yBAAyB,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACvE,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED,MAAM,UAAU,GAAG;QACjB,GAAG,KAAK;QACR,GAAG,CAAC,OAAO,CAAC,WAAW,KAAK,SAAS,IAAI;YACvC,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC,CAAC;QACF,GAAG,CAAC,OAAO,CAAC,OAAO,KAAK,SAAS;YAC/B,CAAC,CAAC,EAAE,KAAK,EAAE,OAAO,CAAC,OAAO,EAAE;YAC5B,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC;QAChB,GAAG,CAAC,OAAO,CAAC,iBAAiB,IAAI;YAC/B,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;SAC7C,CAAC;KACH,CAAC;IACF,IAAI,OAAyB,CAAC;IAC9B,IAAI,CAAC;QACH,OAAO,GAAG,MAAM,qBAAqB,CAAC,UAAU,CAAC,CAAC;IACpD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,CAAC,KAAK,CACV,qCAAqC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CACrE,CAAC;QACF,OAAO,SAAS,CAAC,GAAG,EAAE,kCAAkC,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,KAAK,GAAG,YAAY,GAAG,CAAC,IAAI,YAAY,CAAC;IAC/C,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACjD,KAAK,UAAU,YAAY,CAAC,WAAoB;QAC9C,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,IAAI,CAAC;YACH,+DAA+D;YAC/D,MAAM,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC;QACtE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CACV,iCAAiC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CACjE,CAAC;QACJ,CAAC;IACH,CAAC;IAED,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACzC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC/C,KAAK,UAAU,OAAO,CAAC,OAA0B;QAC/C,MAAM,CAAC,IAAI,CACT,uBAAuB,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAClG,CAAC;QACF,IAAI,cAAc,GAAG,KAAK,CAAC;QAC3B,IAAI,CAAC;YACH,MAAM,UAAU,GAAG,MAAM,uBAAuB,CAAC;gBAC/C,GAAG,KAAK;gBACR,GAAG,OAAO;aACX,CAAC,CAAC;YACH,IAAI,CAAC,IAAI,IAAI,UAAU,CAAC,YAAY,KAAK,IAAI,EAAE,CAAC;gBAC9C,OAAO;YACT,CAAC;YACD,MAAM,KAAK,GAAG;gBACZ,IAAI,EAAE,SAAkB;gBACxB,OAAO,EAAE,UAAU,CAAC,YAAY;aACjC,CAAC;YACF,eAAe,CAAC,KAAK,CAAC,CAAC;YACvB,cAAc,GAAG,IAAI,CAAC;YACtB,MAAM,IAAI,CAAC,aAAa,CAAC,EAAE,GAAG,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAClE,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CAAC,4BAA4B,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC1E,IAAI,CAAC;gBACH,IAAI,OAAO,EAAE,CAAC;oBACZ,MAAM,OAAO,CAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;gBACtD,CAAC;qBAAM,IAAI,IAAI,IAAI,CAAC,cAAc,EAAE,CAAC;oBACnC,MAAM,IAAI,CACR,aAAa,CAAC;wBACZ,IAAI,EAAE,SAAS;wBACf,OAAO,EAAE,qDAAqD;wBAC9D,MAAM,EAAE,OAAO,CAAC,MAAM;qBACvB,CAAC,CACH,CAAC;gBACJ,CAAC;YACH,CAAC;YAAC,OAAO,UAAU,EAAE,CAAC;gBACpB,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,OAAO,CAAC;gBAC9C,MAAM,CAAC,KAAK,CACV,iBAAiB,MAAM,YAAY,MAAM,CAAC,cAAc,CAAC,UAAU,CAAC,GAAG,CACxE,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,yEAAyE;IACzE,uEAAuE;IACvE,KAAK,UAAU,aAAa;QAC1B,IAAI,IAAI,GAAqB,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;QACjD,IAAI,CAAC;YACH,OAAO,SAAS,IAAI,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,MAAM,EAAE,CAAC;gBACpD,MAAM,wBAAwB,CAAC,KAAK,CAAC,CAAC;gBACtC,IAAI,GAAG,MAAM,qBAAqB,CAAC,UAAU,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,MAAM,CAAC,KAAK,CACV,qCAAqC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CACrE,CAAC;YACF,OAAO;QACT,CAAC;QACD,IAAI,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC;YAAE,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC;QAC/C,MAAM,CAAC,IAAI,CACT,uBAAuB,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,EAAE,CAC5E,CAAC;QACF,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ;YAAE,MAAM,YAAY,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACtE,CAAC;IAED,IAAI,SAAS,IAAI,OAAO,EAAE,CAAC;QACzB,MAAM,CAAC,IAAI,CACT,uBAAuB,IAAI,CAAC,SAAS,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,CAAC,EAAE,CAC/E,CAAC;QACF,IAAI,OAAO,CAAC,OAAO,KAAK,MAAM;YAC5B,mBAAmB,CAAC,aAAa,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;aAC3C,IAAI,OAAO,CAAC,OAAO,KAAK,QAAQ,IAAI,QAAQ,EAAE,CAAC;YAClD,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO,CAAC;YAChC,mBAAmB,CAAC,GAAG,EAAE,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE;gBACnD,KAAK,EAAE,YAAY,GAAG,CAAC,IAAI,iBAAiB;aAC7C,CAAC,CAAC;QACL,CAAC;QACD,OAAO,CACL,MAAM,CAAC,QAAQ;YACf,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,OAAO,CAAC,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAC5D,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,GAAG,OAAO,CAAC;IACxB,mBAAmB,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IAEvD,OAAO,CACL,MAAM,CAAC,QAAQ;QACf,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CACnE,CAAC;AACJ,CAAC;AAED,SAAS,YAAY,CAAC,GAAyB;IAC7C,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ,EAAE,CAAC;QACpC,OAAO,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAC/C,CAAC;IACD,IAAI,GAAG,CAAC,OAAO,EAAE,CAAC;QAChB,OAAO,GAAG,CAAC,OAAO,CAAC;IACrB,CAAC;IACD,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;AACzE,CAAC;AAED,SAAS,gBAAgB,CAAC,KAAc;IACtC,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IACtD,MAAM,MAAM,GAAG,KAId,CAAC;IACF,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,YAAY,QAAQ,CAAC,EAAE,CAAC;QAC5E,OAAO,KAAK,CAAC;IACf,CAAC;IACD,IAAI,MAAM,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;QACnE,OAAO,KAAK,CAAC;IACf,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,IAAI,KAAK,SAAS,CAAC;AAC/D,CAAC;AAED,SAAS,sBAAsB,CAC7B,OAAkC,EAClC,YAAqB;IAErB,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC3C,IAAI,OAAO,CAAC,WAAW,KAAK,SAAS;QACnC,QAAQ,CAAC,OAAO,CAAC,WAAW,EAAE,qBAAqB,CAAC,CAAC;IACvD,IACE,OAAO,OAAO,CAAC,QAAQ,KAAK,QAAQ;QACpC,CAAC,iEAAiE,CAAC,IAAI,CACrE,OAAO,CAAC,QAAQ,CACjB,EACD,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAC;IACrD,CAAC;IACD,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;QAC9B,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAC;IACjD,wEAAwE;IACxE,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,CAAC,YAAY;QAChD,sBAAsB,CAAC,OAAO,CAAC,OAAyB,CAAC,CAAC;AAC9D,CAAC;AAED,SAAS,sBAAsB,CAAC,OAAuB;IACrD,eAAe,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,CAAC,CAAC;IAC9C,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QAChC,QAAQ,CAAC,OAAO,EAAE,yBAAyB,CAAC,CAAC;QAC7C,OAAO;IACT,CAAC;IACD,IACE,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QACvB,OAAO,CAAC,MAAM,KAAK,CAAC;QACpB,OAAO,CAAC,IAAI,CACV,CAAC,KAAK,EAAE,EAAE,CACR,OAAO,KAAK,KAAK,QAAQ;YACzB,KAAK,KAAK,IAAI;YACd,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ;YAC9B,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CACrB,EACD,CAAC;QACD,MAAM,IAAI,KAAK,CAAC,6CAA6C,CAAC,CAAC;IACjE,CAAC;AACH,CAAC;AAED,SAAS,QAAQ,CAAC,KAAa,EAAE,KAAa;IAC5C,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAChC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,6BAA6B,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,SAAS,CAAC,MAAc,EAAE,OAAe;IAChD,OAAO,QAAQ,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,CAAC;AACvD,CAAC"}
|
|
1
|
+
{"version":3,"file":"http.js","sourceRoot":"","sources":["../../../src/channels/http/http.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { HttpChannelAdapter } from "./types.js";
|
|
2
2
|
import { type Channel } from "../../runtime/channel.js";
|
|
3
|
-
export type { HttpChannelAdapter, HttpChannelInboundMessage, HttpChannelParseResult, HttpChannelRequest,
|
|
3
|
+
export type { HttpChannelAdapter, HttpChannelCancelMessage, HttpChannelInboundMessage, HttpChannelParseResult, HttpChannelRequest, HttpChannelPostInput, HttpDelivery, HttpDeliveryOutcome, HttpPostedMessage, HttpSettledDelivery, } from "./types.js";
|
|
4
4
|
export { channelThreadId } from "./threads.js";
|
|
5
5
|
export type HttpChannel = Channel & {
|
|
6
6
|
readonly kind: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/channels/http/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAEL,KAAK,OAAO,EAEb,MAAM,0BAA0B,CAAC;AAElC,YAAY,EACV,kBAAkB,EAClB,yBAAyB,EACzB,sBAAsB,EACtB,kBAAkB,EAClB,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/channels/http/index.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAEL,KAAK,OAAO,EAEb,MAAM,0BAA0B,CAAC;AAElC,YAAY,EACV,kBAAkB,EAClB,wBAAwB,EACxB,yBAAyB,EACzB,sBAAsB,EACtB,kBAAkB,EAClB,oBAAoB,EACpB,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAE/C,MAAM,MAAM,WAAW,GAAG,OAAO,GAAG;IAAE,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC;AAS9D,wBAAgB,WAAW,CAAC,OAAO,EAAE,kBAAkB,GAAG,WAAW,CAsCpE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/channels/http/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgC,MAAM,eAAe,CAAC;AAE5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9C,OAAO,EACL,aAAa,GAGd,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/channels/http/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAgC,MAAM,eAAe,CAAC;AAE5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAE9C,OAAO,EACL,aAAa,GAGd,MAAM,0BAA0B,CAAC;AAelC,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAI/C,MAAM,oBAAoB,GAAyB,IAAI,GAAG,CAAC;IACzD,SAAS;IACT,WAAW;IACX,UAAU;IACV,QAAQ;CACT,CAAC,CAAC;AAEH,MAAM,UAAU,WAAW,CAAC,OAA2B;IACrD,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,QAAQ,EAAE,wBAAwB,CAAC,CAAC;IACtE,IACE,OAAO,CAAC,iBAAiB,KAAK,SAAS;QACvC,CAAC,oBAAoB,CAAC,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC;QAEpD,MAAM,IAAI,SAAS,CACjB,0EAA0E,CAC3E,CAAC;IACJ,MAAM,OAAO,GAAG,EAAE,IAAI,EAAE,QAAQ,EAAiB,CAAC;IAElD,IAAI,CAAC,OAAO,EAAE,aAAa,EAAE,IAAI,CAAC,CAAC;IACnC,IAAI,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,GAAyB,EAAE,EAAE,CACpD,iBAAiB,CAAC,GAAG,EAAE,OAAO,CAAC,CAChC,CAAC;IACF,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACzC,IAAI,IAAI,EAAE,CAAC;QACT,IAAI,CAAC,OAAO,EAAE,WAAW,EAAE,GAA4B,EAAE,CAAC,CAAC;YACzD,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,EAAE,CACvC,IAAI,CACF,aAAa,CAAC;gBACZ,GAAG,OAAO;gBACV,MAAM;gBACN,GAAG,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC;aAClD,CAAC,CACH;SACJ,CAAC,CAAC,CAAC;IACN,CAAC;IACD,IAAI,CAAC,OAAO,EAAE,cAAc,EAAE,CAAC,IAAY,EAAmB,EAAE,CAAC,CAAC;QAChE,IAAI;QACJ,QAAQ;QACR,UAAU,EAAE,aAAa,IAAI,SAAS;QACtC,SAAS,EAAE,IAAI,KAAK,SAAS;QAC7B,mBAAmB,EAAE,EAAE;QACvB,WAAW,EAAE,EAAE;QACf,cAAc,EAAE,aAAa,CAAC,OAAO,CAAC,cAAc,IAAI,EAAE,CAAC;KAC5D,CAAC,CAAC,CAAC;IACJ,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,SAAS,QAAQ,CAAC,KAAa,EAAE,KAAa;IAC5C,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,EAAE,CAAC;IAChC,IAAI,CAAC,UAAU,EAAE,CAAC;QAChB,MAAM,IAAI,KAAK,CAAC,GAAG,KAAK,6BAA6B,CAAC,CAAC;IACzD,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,SAAS,IAAI,CAAC,MAAc,EAAE,GAAoB,EAAE,KAAc;IAChE,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,GAAG,EAAE,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;AACnE,CAAC"}
|