managed-deepagents 0.0.3-dev.41 → 0.0.3-dev.43
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/connectors/langsmith.d.ts +3 -2
- package/dist/connectors/langsmith.d.ts.map +1 -1
- package/dist/connectors/langsmith.js +10 -4
- package/dist/connectors/langsmith.js.map +1 -1
- package/dist/identity.d.ts +42 -23
- package/dist/identity.d.ts.map +1 -1
- package/dist/identity.js +74 -10
- package/dist/identity.js.map +1 -1
- package/dist/runtime/auth.d.ts +5 -3
- package/dist/runtime/auth.d.ts.map +1 -1
- package/dist/runtime/auth.js +22 -9
- package/dist/runtime/auth.js.map +1 -1
- package/dist/runtime/credentials.d.ts +14 -6
- package/dist/runtime/credentials.d.ts.map +1 -1
- package/dist/runtime/credentials.js +32 -9
- package/dist/runtime/credentials.js.map +1 -1
- package/dist/runtime/identity-http.js +10 -1
- package/dist/runtime/identity-http.js.map +1 -1
- package/dist/runtime/identity-runtime.d.ts +4 -4
- package/dist/runtime/identity-runtime.js +6 -6
- package/dist/runtime/identity-runtime.js.map +1 -1
- package/dist/runtime/langsmith-connector.d.ts +20 -5
- package/dist/runtime/langsmith-connector.d.ts.map +1 -1
- package/dist/runtime/langsmith-connector.js +236 -23
- package/dist/runtime/langsmith-connector.js.map +1 -1
- package/dist/runtime/managed-tools.d.ts +5 -5
- package/dist/runtime/managed-tools.d.ts.map +1 -1
- package/dist/runtime/managed-tools.js +7 -7
- package/dist/runtime/managed-tools.js.map +1 -1
- package/dist/runtime/validated-token.d.ts +14 -3
- package/dist/runtime/validated-token.d.ts.map +1 -1
- package/dist/runtime/validated-token.js +113 -13
- package/dist/runtime/validated-token.js.map +1 -1
- package/dist/types.d.ts +1 -1
- package/package.json +7 -7
|
@@ -8,12 +8,11 @@
|
|
|
8
8
|
*
|
|
9
9
|
* with a JSON body naming the `action` and its parameters. Per request the
|
|
10
10
|
* engine resolves identity (resolve-or-401), checks the caller surface, checks
|
|
11
|
-
* the action,
|
|
12
|
-
* server-side with the workspace
|
|
11
|
+
* the action, proves capability ownership from `runtime.identity`, validates typed
|
|
12
|
+
* constraints, performs the LangSmith operation server-side with the workspace
|
|
13
|
+
* key, and returns an allowlisted response.
|
|
13
14
|
*
|
|
14
|
-
* v0
|
|
15
|
-
* capability, matching the app being replaced), and has no rate limiting, audit,
|
|
16
|
-
* or multi-workspace fan-out.
|
|
15
|
+
* v0 has no rate limiting, audit, or multi-workspace fan-out.
|
|
17
16
|
*/
|
|
18
17
|
import { Client } from "langsmith";
|
|
19
18
|
/** An error carrying an HTTP status the engine surfaces to the caller. */
|
|
@@ -92,7 +91,8 @@ export async function handleCapabilityRequest(request, identity, deps) {
|
|
|
92
91
|
if (!capability.actions.includes(action)) {
|
|
93
92
|
throw new EnforcementError(403, `action "${action}" is not allowed for capability "${capability.id}"`);
|
|
94
93
|
}
|
|
95
|
-
|
|
94
|
+
await assertCapabilityScope(capability, identity, body, deps.client);
|
|
95
|
+
const raw = toRecord(await performLangSmithCall(capability, action, body, deps, identity));
|
|
96
96
|
const shaped = shapeResponse(raw, capability);
|
|
97
97
|
return jsonResponse(200, { data: shaped });
|
|
98
98
|
}
|
|
@@ -118,15 +118,129 @@ export function callerSurface(identity, identityConfig) {
|
|
|
118
118
|
? "trusted_backend"
|
|
119
119
|
: "browser";
|
|
120
120
|
}
|
|
121
|
+
// --- Ownership + constraints -----------------------------------------------
|
|
122
|
+
/** Thread id on the frozen identity envelope (`source.threadId`). */
|
|
123
|
+
function identityThreadId(identity) {
|
|
124
|
+
const threadId = identity.source.threadId;
|
|
125
|
+
return typeof threadId === "string" && threadId.length > 0
|
|
126
|
+
? threadId
|
|
127
|
+
: undefined;
|
|
128
|
+
}
|
|
129
|
+
/**
|
|
130
|
+
* Prove the capability's ownership scope from `runtime.identity` before the
|
|
131
|
+
* LangSmith call.
|
|
132
|
+
*/
|
|
133
|
+
export async function assertCapabilityScope(capability, identity, body, client) {
|
|
134
|
+
switch (capability.scope) {
|
|
135
|
+
case "agent":
|
|
136
|
+
return;
|
|
137
|
+
case "actor": {
|
|
138
|
+
const actorId = identity.actor?.id;
|
|
139
|
+
if (typeof actorId !== "string" || actorId.length === 0) {
|
|
140
|
+
throw new EnforcementError(403, "actor scope requires identity.actor.id");
|
|
141
|
+
}
|
|
142
|
+
return;
|
|
143
|
+
}
|
|
144
|
+
case "tenant": {
|
|
145
|
+
const tenantId = identity.tenant?.id;
|
|
146
|
+
if (typeof tenantId !== "string" || tenantId.length === 0) {
|
|
147
|
+
throw new EnforcementError(403, "tenant scope requires identity.tenant.id");
|
|
148
|
+
}
|
|
149
|
+
return;
|
|
150
|
+
}
|
|
151
|
+
case "thread": {
|
|
152
|
+
const threadId = identityThreadId(identity);
|
|
153
|
+
if (!threadId) {
|
|
154
|
+
throw new EnforcementError(403, "thread scope requires identity thread id");
|
|
155
|
+
}
|
|
156
|
+
const bodyThread = optionalBodyString(body, "threadId", "thread_id");
|
|
157
|
+
if (bodyThread !== undefined && bodyThread !== threadId) {
|
|
158
|
+
throw new EnforcementError(403, "body thread id does not match identity thread");
|
|
159
|
+
}
|
|
160
|
+
return;
|
|
161
|
+
}
|
|
162
|
+
case "run": {
|
|
163
|
+
const threadId = identityThreadId(identity);
|
|
164
|
+
if (!threadId) {
|
|
165
|
+
throw new EnforcementError(403, "run scope requires identity thread id");
|
|
166
|
+
}
|
|
167
|
+
const runId = bodyString(body, "runId", "run_id");
|
|
168
|
+
const run = toRecord(await client.readRun({ runId }));
|
|
169
|
+
const runThread = runThreadId(run);
|
|
170
|
+
if (!runThread || runThread !== threadId) {
|
|
171
|
+
throw new EnforcementError(403, "run does not belong to identity thread");
|
|
172
|
+
}
|
|
173
|
+
return;
|
|
174
|
+
}
|
|
175
|
+
default:
|
|
176
|
+
throw new EnforcementError(400, `unknown capability scope "${String(capability.scope)}"`);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
/** Resolve a run's thread/session id from known LangSmith field locations. */
|
|
180
|
+
function runThreadId(run) {
|
|
181
|
+
const keys = ["session_id", "sessionId", "thread_id", "threadId"];
|
|
182
|
+
for (const key of keys) {
|
|
183
|
+
const value = run[key];
|
|
184
|
+
if (typeof value === "string" && value.length > 0) {
|
|
185
|
+
return value;
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
const extra = run.extra;
|
|
189
|
+
if (extra && typeof extra === "object" && !Array.isArray(extra)) {
|
|
190
|
+
const extraRecord = extra;
|
|
191
|
+
const metadata = extraRecord.metadata &&
|
|
192
|
+
typeof extraRecord.metadata === "object" &&
|
|
193
|
+
!Array.isArray(extraRecord.metadata)
|
|
194
|
+
? extraRecord.metadata
|
|
195
|
+
: extraRecord;
|
|
196
|
+
for (const key of keys) {
|
|
197
|
+
const value = metadata[key];
|
|
198
|
+
if (typeof value === "string" && value.length > 0) {
|
|
199
|
+
return value;
|
|
200
|
+
}
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
return undefined;
|
|
204
|
+
}
|
|
205
|
+
function feedbackActorId(feedback) {
|
|
206
|
+
const direct = feedback.metadata;
|
|
207
|
+
if (direct && typeof direct === "object" && !Array.isArray(direct)) {
|
|
208
|
+
const actorId = direct.mda_actor_id;
|
|
209
|
+
if (typeof actorId === "string" && actorId.length > 0) {
|
|
210
|
+
return actorId;
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
const source = feedback.feedback_source;
|
|
214
|
+
if (source && typeof source === "object" && !Array.isArray(source)) {
|
|
215
|
+
const metadata = source.metadata;
|
|
216
|
+
if (metadata && typeof metadata === "object" && !Array.isArray(metadata)) {
|
|
217
|
+
const actorId = metadata.mda_actor_id;
|
|
218
|
+
if (typeof actorId === "string" && actorId.length > 0) {
|
|
219
|
+
return actorId;
|
|
220
|
+
}
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
return undefined;
|
|
224
|
+
}
|
|
225
|
+
function exampleThreadId(example) {
|
|
226
|
+
const metadata = example.metadata;
|
|
227
|
+
if (metadata && typeof metadata === "object" && !Array.isArray(metadata)) {
|
|
228
|
+
const threadId = metadata.mda_thread_id;
|
|
229
|
+
if (typeof threadId === "string" && threadId.length > 0) {
|
|
230
|
+
return threadId;
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
return undefined;
|
|
234
|
+
}
|
|
121
235
|
// --- Call mapping ----------------------------------------------------------
|
|
122
|
-
async function performLangSmithCall(capability, action, body, deps) {
|
|
236
|
+
async function performLangSmithCall(capability, action, body, deps, identity) {
|
|
123
237
|
switch (capability.resource) {
|
|
124
238
|
case "feedback":
|
|
125
|
-
return feedbackCall(capability, action, body, deps.client);
|
|
239
|
+
return feedbackCall(capability, action, body, deps.client, identity);
|
|
126
240
|
case "runs":
|
|
127
241
|
return runsCall(action, body, deps.client);
|
|
128
242
|
case "examples":
|
|
129
|
-
return examplesCall(capability, body, deps.client);
|
|
243
|
+
return examplesCall(capability, body, deps.client, identity);
|
|
130
244
|
case "annotation_queues":
|
|
131
245
|
return annotationQueueCall(capability, body, deps.client);
|
|
132
246
|
case "prompts":
|
|
@@ -137,7 +251,7 @@ async function performLangSmithCall(capability, action, body, deps) {
|
|
|
137
251
|
throw new EnforcementError(400, `resource "${capability.resource}" is not supported in v0`);
|
|
138
252
|
}
|
|
139
253
|
}
|
|
140
|
-
async function feedbackCall(capability, action, body, client) {
|
|
254
|
+
async function feedbackCall(capability, action, body, client, identity) {
|
|
141
255
|
const c = capability.constraints ?? {};
|
|
142
256
|
if (action === "create") {
|
|
143
257
|
const key = requireString(body, "key");
|
|
@@ -149,34 +263,50 @@ async function feedbackCall(capability, action, body, client) {
|
|
|
149
263
|
assertAllowed(c.scores, String(score), "score");
|
|
150
264
|
}
|
|
151
265
|
const comment = optionalComment(body, c.maxCommentChars);
|
|
266
|
+
const runId = bodyString(body, "runId", "run_id");
|
|
267
|
+
const actorId = identity.actor?.id;
|
|
268
|
+
if (c.onePerActor === true) {
|
|
269
|
+
if (typeof actorId !== "string" || actorId.length === 0) {
|
|
270
|
+
throw new EnforcementError(403, "onePerActor requires identity.actor.id");
|
|
271
|
+
}
|
|
272
|
+
const existing = await client.listFeedbackForRun({ runId });
|
|
273
|
+
for (const feedback of existing) {
|
|
274
|
+
if (feedbackActorId(toRecord(feedback)) === actorId) {
|
|
275
|
+
throw new EnforcementError(409, "actor already submitted feedback for this run");
|
|
276
|
+
}
|
|
277
|
+
}
|
|
278
|
+
}
|
|
279
|
+
const metadata = typeof actorId === "string" && actorId.length > 0
|
|
280
|
+
? { mda_actor_id: actorId }
|
|
281
|
+
: undefined;
|
|
282
|
+
const feedbackId = optionalBodyString(body, "feedbackId", "feedback_id");
|
|
152
283
|
return client.createFeedback({
|
|
153
|
-
runId
|
|
284
|
+
runId,
|
|
154
285
|
key,
|
|
155
286
|
...(score !== undefined ? { score } : {}),
|
|
156
287
|
...(comment !== undefined ? { comment } : {}),
|
|
157
|
-
...(
|
|
158
|
-
|
|
159
|
-
: {}),
|
|
288
|
+
...(feedbackId !== undefined ? { feedbackId } : {}),
|
|
289
|
+
...(metadata ? { metadata } : {}),
|
|
160
290
|
});
|
|
161
291
|
}
|
|
162
292
|
if (action === "update") {
|
|
163
293
|
const comment = optionalComment(body, c.maxCommentChars);
|
|
164
294
|
const score = body.score;
|
|
165
295
|
return client.updateFeedback({
|
|
166
|
-
feedbackId:
|
|
296
|
+
feedbackId: bodyString(body, "feedbackId", "feedback_id"),
|
|
167
297
|
...(score !== undefined ? { score } : {}),
|
|
168
298
|
...(comment !== undefined ? { comment } : {}),
|
|
169
299
|
});
|
|
170
300
|
}
|
|
171
301
|
if (action === "delete") {
|
|
172
302
|
return client.deleteFeedback({
|
|
173
|
-
feedbackId:
|
|
303
|
+
feedbackId: bodyString(body, "feedbackId", "feedback_id"),
|
|
174
304
|
});
|
|
175
305
|
}
|
|
176
306
|
throw new EnforcementError(400, `unknown feedback action "${action}"`);
|
|
177
307
|
}
|
|
178
308
|
async function runsCall(action, body, client) {
|
|
179
|
-
const runId =
|
|
309
|
+
const runId = bodyString(body, "runId", "run_id");
|
|
180
310
|
if (action === "read") {
|
|
181
311
|
return client.readRun({ runId });
|
|
182
312
|
}
|
|
@@ -185,7 +315,7 @@ async function runsCall(action, body, client) {
|
|
|
185
315
|
}
|
|
186
316
|
throw new EnforcementError(400, `unknown runs action "${action}"`);
|
|
187
317
|
}
|
|
188
|
-
async function examplesCall(capability, body, client) {
|
|
318
|
+
async function examplesCall(capability, body, client, identity) {
|
|
189
319
|
const c = capability.constraints ?? {};
|
|
190
320
|
const dataset = c.dataset;
|
|
191
321
|
if (!dataset) {
|
|
@@ -203,10 +333,34 @@ async function examplesCall(capability, body, client) {
|
|
|
203
333
|
const outputs = body.outputs && typeof body.outputs === "object"
|
|
204
334
|
? body.outputs
|
|
205
335
|
: undefined;
|
|
336
|
+
const maxExamples = c.maxExamplesPerThread;
|
|
337
|
+
const threadId = identityThreadId(identity);
|
|
338
|
+
if (typeof maxExamples === "number") {
|
|
339
|
+
if (!threadId) {
|
|
340
|
+
throw new EnforcementError(403, "maxExamplesPerThread requires identity thread id");
|
|
341
|
+
}
|
|
342
|
+
const existing = await client.listExamples({
|
|
343
|
+
dataset,
|
|
344
|
+
metadata: { mda_thread_id: threadId },
|
|
345
|
+
});
|
|
346
|
+
const count = existing.filter((example) => exampleThreadId(toRecord(example)) === threadId).length;
|
|
347
|
+
if (count >= maxExamples) {
|
|
348
|
+
throw new EnforcementError(409, `thread already has ${maxExamples} examples in this dataset`);
|
|
349
|
+
}
|
|
350
|
+
}
|
|
351
|
+
const metadata = {};
|
|
352
|
+
if (threadId) {
|
|
353
|
+
metadata.mda_thread_id = threadId;
|
|
354
|
+
}
|
|
355
|
+
const actorId = identity.actor?.id;
|
|
356
|
+
if (typeof actorId === "string" && actorId.length > 0) {
|
|
357
|
+
metadata.mda_actor_id = actorId;
|
|
358
|
+
}
|
|
206
359
|
return client.createExample({
|
|
207
360
|
dataset,
|
|
208
361
|
inputs,
|
|
209
362
|
...(outputs ? { outputs } : {}),
|
|
363
|
+
...(Object.keys(metadata).length > 0 ? { metadata } : {}),
|
|
210
364
|
});
|
|
211
365
|
}
|
|
212
366
|
async function annotationQueueCall(capability, body, client) {
|
|
@@ -222,13 +376,13 @@ async function annotationQueueCall(capability, body, client) {
|
|
|
222
376
|
const note = optionalComment(body, c.maxNoteChars, "note");
|
|
223
377
|
return client.enqueueRun({
|
|
224
378
|
queue,
|
|
225
|
-
runId:
|
|
379
|
+
runId: bodyString(body, "runId", "run_id"),
|
|
226
380
|
...(typeof priority === "string" ? { priority } : {}),
|
|
227
381
|
...(note !== undefined ? { note } : {}),
|
|
228
382
|
});
|
|
229
383
|
}
|
|
230
384
|
async function threadsCall(capability, action, body, client) {
|
|
231
|
-
const threadId =
|
|
385
|
+
const threadId = bodyString(body, "threadId", "thread_id");
|
|
232
386
|
if (action === "read") {
|
|
233
387
|
return client.readThread({ threadId });
|
|
234
388
|
}
|
|
@@ -319,6 +473,25 @@ function requireString(body, key) {
|
|
|
319
473
|
}
|
|
320
474
|
return value;
|
|
321
475
|
}
|
|
476
|
+
/** Read a required string from the body, accepting either camelCase or snake_case. */
|
|
477
|
+
export function bodyString(body, camel, snake) {
|
|
478
|
+
const value = optionalBodyString(body, camel, snake);
|
|
479
|
+
if (value === undefined) {
|
|
480
|
+
throw new EnforcementError(400, `missing or invalid "${camel}"`);
|
|
481
|
+
}
|
|
482
|
+
return value;
|
|
483
|
+
}
|
|
484
|
+
function optionalBodyString(body, camel, snake) {
|
|
485
|
+
const camelValue = body[camel];
|
|
486
|
+
if (typeof camelValue === "string" && camelValue.length > 0) {
|
|
487
|
+
return camelValue;
|
|
488
|
+
}
|
|
489
|
+
const snakeValue = body[snake];
|
|
490
|
+
if (typeof snakeValue === "string" && snakeValue.length > 0) {
|
|
491
|
+
return snakeValue;
|
|
492
|
+
}
|
|
493
|
+
return undefined;
|
|
494
|
+
}
|
|
322
495
|
function requireObject(body, key) {
|
|
323
496
|
const value = body[key];
|
|
324
497
|
if (!value || typeof value !== "object" || Array.isArray(value)) {
|
|
@@ -345,11 +518,28 @@ function optionalComment(body, maxChars, field = "comment") {
|
|
|
345
518
|
return value;
|
|
346
519
|
}
|
|
347
520
|
function jsonResponse(status, body) {
|
|
348
|
-
return new Response(JSON.stringify(body), {
|
|
521
|
+
return new Response(JSON.stringify(jsonSafe(body)), {
|
|
349
522
|
status,
|
|
350
523
|
headers: { "content-type": "application/json" },
|
|
351
524
|
});
|
|
352
525
|
}
|
|
526
|
+
/** Coerce values LangSmith may return (Date, etc.) into JSON-serializable form. */
|
|
527
|
+
function jsonSafe(value) {
|
|
528
|
+
if (value === null || typeof value !== "object") {
|
|
529
|
+
return value;
|
|
530
|
+
}
|
|
531
|
+
if (value instanceof Date) {
|
|
532
|
+
return value.toISOString();
|
|
533
|
+
}
|
|
534
|
+
if (Array.isArray(value)) {
|
|
535
|
+
return value.map(jsonSafe);
|
|
536
|
+
}
|
|
537
|
+
const out = {};
|
|
538
|
+
for (const [key, nested] of Object.entries(value)) {
|
|
539
|
+
out[key] = jsonSafe(nested);
|
|
540
|
+
}
|
|
541
|
+
return out;
|
|
542
|
+
}
|
|
353
543
|
function statusFromUnknownError(error) {
|
|
354
544
|
const status = error?.status;
|
|
355
545
|
if (typeof status === "number" && status >= 400 && status <= 599) {
|
|
@@ -392,16 +582,39 @@ export function defaultClient() {
|
|
|
392
582
|
return value === undefined ? {} : { value };
|
|
393
583
|
};
|
|
394
584
|
return {
|
|
395
|
-
createFeedback: ({ runId, key, score, comment, feedbackId }) => sdk().createFeedback(runId, key, {
|
|
585
|
+
createFeedback: ({ runId, key, score, comment, feedbackId, metadata }) => sdk().createFeedback(runId, key, {
|
|
396
586
|
...scoreOrValue(score),
|
|
397
587
|
comment,
|
|
398
588
|
feedbackId,
|
|
589
|
+
...(metadata ? { sourceInfo: metadata } : {}),
|
|
399
590
|
}),
|
|
400
591
|
updateFeedback: ({ feedbackId, score, comment }) => sdk().updateFeedback(feedbackId, { ...scoreOrValue(score), comment }),
|
|
401
592
|
deleteFeedback: ({ feedbackId }) => sdk().deleteFeedback(feedbackId),
|
|
593
|
+
listFeedbackForRun: async ({ runId }) => {
|
|
594
|
+
const out = [];
|
|
595
|
+
for await (const feedback of sdk().listFeedback({ runIds: [runId] })) {
|
|
596
|
+
out.push(feedback);
|
|
597
|
+
}
|
|
598
|
+
return out;
|
|
599
|
+
},
|
|
402
600
|
readRun: ({ runId }) => sdk().readRun(runId),
|
|
403
601
|
shareRun: async ({ runId }) => ({ url: await sdk().shareRun(runId) }),
|
|
404
|
-
createExample: ({ dataset, inputs, outputs }) => sdk().createExample({
|
|
602
|
+
createExample: ({ dataset, inputs, outputs, metadata }) => sdk().createExample({
|
|
603
|
+
inputs,
|
|
604
|
+
outputs,
|
|
605
|
+
dataset_name: dataset,
|
|
606
|
+
...(metadata ? { metadata } : {}),
|
|
607
|
+
}),
|
|
608
|
+
listExamples: async ({ dataset, metadata }) => {
|
|
609
|
+
const out = [];
|
|
610
|
+
for await (const example of sdk().listExamples({
|
|
611
|
+
datasetName: dataset,
|
|
612
|
+
...(metadata ? { metadata } : {}),
|
|
613
|
+
})) {
|
|
614
|
+
out.push(example);
|
|
615
|
+
}
|
|
616
|
+
return out;
|
|
617
|
+
},
|
|
405
618
|
enqueueRun: ({ queue, runId }) => sdk().addRunsToAnnotationQueue(queue, [runId]),
|
|
406
619
|
readPrompt: ({ name }) => sdk().getPrompt(name),
|
|
407
620
|
readThread: ({ threadId }) => sdk().readRun(threadId),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"langsmith-connector.js","sourceRoot":"","sources":["../../src/runtime/langsmith-connector.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"langsmith-connector.js","sourceRoot":"","sources":["../../src/runtime/langsmith-connector.ts"],"names":[],"mappings":"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"}
|
|
@@ -39,7 +39,7 @@ export declare function managedRuntimeExtras(runtime: RuntimeConfigLike | undefi
|
|
|
39
39
|
/**
|
|
40
40
|
* The fields MDA overlays onto the runtime a tool/middleware hook receives:
|
|
41
41
|
* the frozen `identity` (when an actor resolved) and a `configurable` with the
|
|
42
|
-
* reserved identity keys stripped
|
|
42
|
+
* reserved identity keys stripped so downstream code can't read a
|
|
43
43
|
* client-spoofed `actor_id`/`tenant_id`. Returns an empty object when there is
|
|
44
44
|
* nothing to change, so the original runtime passes through untouched.
|
|
45
45
|
*/
|
|
@@ -50,10 +50,10 @@ export declare function managedRuntimeOverrides(runtime: RuntimeConfigLike | und
|
|
|
50
50
|
* Wrap a tool so its runtime carries the managed primitives (`runtime.identity`,
|
|
51
51
|
* …) without changing its name, schema, or class.
|
|
52
52
|
*
|
|
53
|
-
* Augments `invoke` (for LangGraph's `ToolNode`) and patches
|
|
54
|
-
* `func`/`coroutine` so identity reaches the authored handler even when
|
|
55
|
-
* rewrites the runtime into a RunnableConfig before calling the tool
|
|
56
|
-
*
|
|
53
|
+
* Augments `invoke` (for LangGraph's `ToolNode`) and patches a shallow copy's
|
|
54
|
+
* internal `func`/`coroutine` so identity reaches the authored handler even when
|
|
55
|
+
* LangChain rewrites the runtime into a RunnableConfig before calling the tool
|
|
56
|
+
* function. The original tool instance is left untouched.
|
|
57
57
|
*/
|
|
58
58
|
export declare function withManagedRuntime<T extends InvokableTool>(managedTool: T, cfg?: IdentityConfig): T;
|
|
59
59
|
/** Wrap every tool in a list with {@link withManagedRuntime}. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"managed-tools.d.ts","sourceRoot":"","sources":["../../src/runtime/managed-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,kBAAkB,CAAC;AAM1B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,YAAY,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC;CAC9D;AAED,+DAA+D;AAC/D,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B;;;;OAIG;IACH,WAAW,CAAC,EAAE,mBAAmB,CAAC;CACnC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,uBAAuB,CAAC,MAAM,GAAG,OAAO,EAAE,QAAQ,GAAG,OAAO,CAC3E,SAAQ,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,oBAAoB;CAAG;AAEhE;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,iBAAiB,GAAG,SAAS,EACtC,GAAG,CAAC,EAAE,cAAc,GACnB,oBAAoB,CAatB;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,iBAAiB,GAAG,SAAS,EACtC,GAAG,CAAC,EAAE,cAAc,GACnB,oBAAoB,GAAG;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CA8BnE;AA0BD;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,aAAa,EACxD,WAAW,EAAE,CAAC,EACd,GAAG,CAAC,EAAE,cAAc,GACnB,CAAC,
|
|
1
|
+
{"version":3,"file":"managed-tools.d.ts","sourceRoot":"","sources":["../../src/runtime/managed-tools.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAEzD,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,kBAAkB,CAAC;AAM1B,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,YAAY,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAE/D;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC5B,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAAC;CAC9D;AAED,+DAA+D;AAC/D,MAAM,WAAW,oBAAoB;IACnC,QAAQ,CAAC,EAAE,eAAe,CAAC;IAC3B;;;;OAIG;IACH,WAAW,CAAC,EAAE,mBAAmB,CAAC;CACnC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,uBAAuB,CAAC,MAAM,GAAG,OAAO,EAAE,QAAQ,GAAG,OAAO,CAC3E,SAAQ,WAAW,CAAC,MAAM,EAAE,QAAQ,CAAC,EAAE,oBAAoB;CAAG;AAEhE;;;;GAIG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,iBAAiB,GAAG,SAAS,EACtC,GAAG,CAAC,EAAE,cAAc,GACnB,oBAAoB,CAatB;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,OAAO,EAAE,iBAAiB,GAAG,SAAS,EACtC,GAAG,CAAC,EAAE,cAAc,GACnB,oBAAoB,GAAG;IAAE,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;CAAE,CA8BnE;AA0BD;;;;;;;;GAQG;AACH,wBAAgB,kBAAkB,CAAC,CAAC,SAAS,aAAa,EACxD,WAAW,EAAE,CAAC,EACd,GAAG,CAAC,EAAE,cAAc,GACnB,CAAC,CAuCH;AAED,iEAAiE;AACjE,wBAAgB,2BAA2B,CAAC,CAAC,SAAS,aAAa,EACjE,KAAK,EAAE,SAAS,CAAC,EAAE,EACnB,GAAG,CAAC,EAAE,cAAc,GACnB,CAAC,EAAE,CAEL"}
|
|
@@ -22,7 +22,7 @@ export function managedRuntimeExtras(runtime, cfg) {
|
|
|
22
22
|
/**
|
|
23
23
|
* The fields MDA overlays onto the runtime a tool/middleware hook receives:
|
|
24
24
|
* the frozen `identity` (when an actor resolved) and a `configurable` with the
|
|
25
|
-
* reserved identity keys stripped
|
|
25
|
+
* reserved identity keys stripped so downstream code can't read a
|
|
26
26
|
* client-spoofed `actor_id`/`tenant_id`. Returns an empty object when there is
|
|
27
27
|
* nothing to change, so the original runtime passes through untouched.
|
|
28
28
|
*/
|
|
@@ -68,20 +68,20 @@ function wrapToolCallable(original, cfg, receiver) {
|
|
|
68
68
|
* Wrap a tool so its runtime carries the managed primitives (`runtime.identity`,
|
|
69
69
|
* …) without changing its name, schema, or class.
|
|
70
70
|
*
|
|
71
|
-
* Augments `invoke` (for LangGraph's `ToolNode`) and patches
|
|
72
|
-
* `func`/`coroutine` so identity reaches the authored handler even when
|
|
73
|
-
* rewrites the runtime into a RunnableConfig before calling the tool
|
|
74
|
-
*
|
|
71
|
+
* Augments `invoke` (for LangGraph's `ToolNode`) and patches a shallow copy's
|
|
72
|
+
* internal `func`/`coroutine` so identity reaches the authored handler even when
|
|
73
|
+
* LangChain rewrites the runtime into a RunnableConfig before calling the tool
|
|
74
|
+
* function. The original tool instance is left untouched.
|
|
75
75
|
*/
|
|
76
76
|
export function withManagedRuntime(managedTool, cfg) {
|
|
77
|
-
const patchable = managedTool;
|
|
77
|
+
const patchable = Object.assign(Object.create(Object.getPrototypeOf(managedTool)), managedTool);
|
|
78
78
|
if (typeof patchable.func === "function") {
|
|
79
79
|
patchable.func = wrapToolCallable(patchable.func.bind(managedTool), cfg, managedTool);
|
|
80
80
|
}
|
|
81
81
|
if (typeof patchable.coroutine === "function") {
|
|
82
82
|
patchable.coroutine = wrapToolCallable(patchable.coroutine.bind(managedTool), cfg, managedTool);
|
|
83
83
|
}
|
|
84
|
-
return new Proxy(
|
|
84
|
+
return new Proxy(patchable, {
|
|
85
85
|
get(target, property, receiver) {
|
|
86
86
|
if (property === "invoke") {
|
|
87
87
|
return (input, runtime) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"managed-tools.js","sourceRoot":"","sources":["../../src/runtime/managed-tools.ts"],"names":[],"mappings":"AAGA,OAAO,EAEL,yBAAyB,GAC1B,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EACL,oBAAoB,EACpB,0BAA0B,EAC1B,oBAAoB,GACrB,MAAM,uBAAuB,CAAC;AAmC/B;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAClC,OAAsC,EACtC,GAAoB;IAEpB,MAAM,QAAQ,GAAG,oBAAoB,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC,CAAC;IAC3E,MAAM,MAAM,GAAyB,EAAE,CAAC;IACxC,IAAI,QAAQ,EAAE,CAAC;QACb,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;IACD,IAAI,GAAG,EAAE,CAAC;QACR,MAAM,WAAW,GAAG,yBAAyB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC7D,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,CAAC,WAAW,GAAG,WAAW,CAAC;QACnC,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CACrC,OAAsC,EACtC,GAAoB;IAEpB,MAAM,SAAS,GAGX,EAAE,CAAC;IACP,MAAM,YAAY,GAAG,0BAA0B,CAAC,OAAO,CAAC,CAAC;IACzD,MAAM,QAAQ,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAAC;IACpD,IAAI,QAAQ,EAAE,CAAC;QACb,SAAS,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAChC,CAAC;IACD,IAAI,GAAG,EAAE,CAAC;QACR,MAAM,WAAW,GAAG,yBAAyB,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC7D,IAAI,WAAW,EAAE,CAAC;YAChB,SAAS,CAAC,WAAW,GAAG,WAAW,CAAC;QACtC,CAAC;IACH,CAAC;IACD,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,SAAS,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAAC;QACrD,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,MAAM,EAAE,CAAC;YACvE,IAAI,OAAO,EAAE,YAAY,KAAK,SAAS,EAAE,CAAC;gBACxC,SAAS,CAAC,YAAY,GAAG,SAAS,CAAC;YACrC,CAAC;iBAAM,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC;gBAC3B,SAAS,CAAC,MAAM,GAAG;oBACjB,GAAG,OAAO,CAAC,MAAM;oBACjB,YAAY,EAAE,SAAS;iBACxB,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC;AAED,SAAS,iBAAiB,CACxB,MAAqC,EACrC,GAAoB;IAEpB,MAAM,SAAS,GAAG,uBAAuB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACvD,OAAO,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,MAAM,GAAG,CAAC;QACtC,CAAC,CAAC,EAAE,GAAG,MAAM,EAAE,GAAG,SAAS,EAAE;QAC7B,CAAC,CAAC,MAAM,CAAC;AACb,CAAC;AAED,SAAS,gBAAgB,CACvB,QAAyC,EACzC,GAA+B,EAC/B,QAAiB;IAEjB,OAAO,CAAC,KAAc,EAAE,UAAmB,EAAE,MAAe,EAAE,EAAE,CAC9D,QAAQ,CAAC,IAAI,CACX,QAAQ,EACR,KAAK,EACL,UAAU,EACV,iBAAiB,CAAC,MAAuC,EAAE,GAAG,CAAC,CAChE,CAAC;AACN,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,kBAAkB,CAChC,WAAc,EACd,GAAoB;IAEpB,MAAM,SAAS,GAAG,
|
|
1
|
+
{"version":3,"file":"managed-tools.js","sourceRoot":"","sources":["../../src/runtime/managed-tools.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,17 +2,23 @@ import { type JWTPayload } from "jose";
|
|
|
2
2
|
import type { IdentityConfig, ValidatedTokenIngress, ValidatedTokenProvider } from "../identity.js";
|
|
3
3
|
import type { ManagedUser } from "./auth.js";
|
|
4
4
|
/**
|
|
5
|
-
* Resolve the caller identity for the `validated_token` ingress mode
|
|
5
|
+
* Resolve the caller identity for the `validated_token` ingress mode: pick
|
|
6
6
|
* the provider by token issuer, verify the token (JWKS / introspection / guest),
|
|
7
7
|
* then map its claims into the identity envelope. Fail-closed (401) throughout.
|
|
8
8
|
*/
|
|
9
9
|
export declare function resolveValidatedTokenUser(cfg: IdentityConfig, ingress: ValidatedTokenIngress, request: Request): Promise<ManagedUser>;
|
|
10
|
+
/**
|
|
11
|
+
* Resolve `discoveryUrl` providers to concrete `issuer` + `jwks` before
|
|
12
|
+
* selection. Custom Supabase domains are not the JWT `iss`.
|
|
13
|
+
*/
|
|
14
|
+
export declare function materializeProviders(providers: ValidatedTokenProvider[]): Promise<ValidatedTokenProvider[]>;
|
|
10
15
|
/** Extract the bearer token from the `Authorization` header, or 401. */
|
|
11
16
|
export declare function bearerToken(request: Request): string;
|
|
12
17
|
/**
|
|
13
18
|
* Select the provider that should verify `token`. A single-provider deployment
|
|
14
|
-
* always uses its one entry
|
|
15
|
-
*
|
|
19
|
+
* always uses its one entry. Otherwise: JWT tokens route by `iss` (guest tokens
|
|
20
|
+
* carry MDA's own issuer); opaque tokens route to the sole `introspect`
|
|
21
|
+
* provider. Fail-closed when selection is ambiguous (401).
|
|
16
22
|
*/
|
|
17
23
|
export declare function selectProvider(providers: ValidatedTokenProvider[], token: string): ValidatedTokenProvider;
|
|
18
24
|
/** Map verified token claims into the managed user envelope, per `provider.claims`. */
|
|
@@ -22,4 +28,9 @@ export declare function claimsToUser(provider: ValidatedTokenProvider, claims: J
|
|
|
22
28
|
* issue/reissue route; the same deployment key verifies it on later calls.
|
|
23
29
|
*/
|
|
24
30
|
export declare function issueGuestToken(provider: ValidatedTokenProvider, subject?: string): Promise<string>;
|
|
31
|
+
/**
|
|
32
|
+
* Expand `${ENV_VAR}` references. Missing variables fail closed (500) so auth
|
|
33
|
+
* misconfiguration is not mistaken for a bad caller token.
|
|
34
|
+
*/
|
|
35
|
+
export declare function expandEnv(value: string): string;
|
|
25
36
|
//# sourceMappingURL=validated-token.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"validated-token.d.ts","sourceRoot":"","sources":["../../src/runtime/validated-token.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,UAAU,EAGhB,MAAM,MAAM,CAAC;AAEd,OAAO,KAAK,EACV,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"validated-token.d.ts","sourceRoot":"","sources":["../../src/runtime/validated-token.ts"],"names":[],"mappings":"AACA,OAAO,EAGL,KAAK,UAAU,EAGhB,MAAM,MAAM,CAAC;AAEd,OAAO,KAAK,EACV,cAAc,EACd,qBAAqB,EACrB,sBAAsB,EACvB,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAgB7C;;;;GAIG;AACH,wBAAsB,yBAAyB,CAC7C,GAAG,EAAE,cAAc,EACnB,OAAO,EAAE,qBAAqB,EAC9B,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,WAAW,CAAC,CAYtB;AAED;;;GAGG;AACH,wBAAsB,oBAAoB,CACxC,SAAS,EAAE,sBAAsB,EAAE,GAClC,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAInC;AAuDD,wEAAwE;AACxE,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAQpD;AA0BD;;;;;GAKG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,sBAAsB,EAAE,EACnC,KAAK,EAAE,MAAM,GACZ,sBAAsB,CAmCxB;AAED,uFAAuF;AACvF,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,sBAAsB,EAChC,MAAM,EAAE,UAAU,GACjB,WAAW,CA0Bb;AAkKD;;;GAGG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,sBAAsB,EAChC,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAejB;AAYD;;;GAGG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAU/C"}
|