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.
Files changed (35) hide show
  1. package/dist/connectors/langsmith.d.ts +3 -2
  2. package/dist/connectors/langsmith.d.ts.map +1 -1
  3. package/dist/connectors/langsmith.js +10 -4
  4. package/dist/connectors/langsmith.js.map +1 -1
  5. package/dist/identity.d.ts +42 -23
  6. package/dist/identity.d.ts.map +1 -1
  7. package/dist/identity.js +74 -10
  8. package/dist/identity.js.map +1 -1
  9. package/dist/runtime/auth.d.ts +5 -3
  10. package/dist/runtime/auth.d.ts.map +1 -1
  11. package/dist/runtime/auth.js +22 -9
  12. package/dist/runtime/auth.js.map +1 -1
  13. package/dist/runtime/credentials.d.ts +14 -6
  14. package/dist/runtime/credentials.d.ts.map +1 -1
  15. package/dist/runtime/credentials.js +32 -9
  16. package/dist/runtime/credentials.js.map +1 -1
  17. package/dist/runtime/identity-http.js +10 -1
  18. package/dist/runtime/identity-http.js.map +1 -1
  19. package/dist/runtime/identity-runtime.d.ts +4 -4
  20. package/dist/runtime/identity-runtime.js +6 -6
  21. package/dist/runtime/identity-runtime.js.map +1 -1
  22. package/dist/runtime/langsmith-connector.d.ts +20 -5
  23. package/dist/runtime/langsmith-connector.d.ts.map +1 -1
  24. package/dist/runtime/langsmith-connector.js +236 -23
  25. package/dist/runtime/langsmith-connector.js.map +1 -1
  26. package/dist/runtime/managed-tools.d.ts +5 -5
  27. package/dist/runtime/managed-tools.d.ts.map +1 -1
  28. package/dist/runtime/managed-tools.js +7 -7
  29. package/dist/runtime/managed-tools.js.map +1 -1
  30. package/dist/runtime/validated-token.d.ts +14 -3
  31. package/dist/runtime/validated-token.d.ts.map +1 -1
  32. package/dist/runtime/validated-token.js +113 -13
  33. package/dist/runtime/validated-token.js.map +1 -1
  34. package/dist/types.d.ts +1 -1
  35. 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, validates typed constraints, performs the LangSmith operation
12
- * server-side with the workspace key, and returns an allowlisted response.
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 does NOT prove object ownership (`runId` is treated as an unguessable
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
- const raw = toRecord(await performLangSmithCall(capability, action, body, deps));
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: requireString(body, "runId"),
284
+ runId,
154
285
  key,
155
286
  ...(score !== undefined ? { score } : {}),
156
287
  ...(comment !== undefined ? { comment } : {}),
157
- ...(typeof body.feedbackId === "string"
158
- ? { feedbackId: body.feedbackId }
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: requireString(body, "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: requireString(body, "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 = requireString(body, "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: requireString(body, "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 = requireString(body, "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({ inputs, outputs, dataset_name: dataset }),
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 (§8) so downstream code can't read a
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 the tool's internal
54
- * `func`/`coroutine` so identity reaches the authored handler even when LangChain
55
- * rewrites the runtime into a RunnableConfig before calling the tool function.
56
- * Every other property/method passes through untouched.
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,CAoCH;AAED,iEAAiE;AACjE,wBAAgB,2BAA2B,CAAC,CAAC,SAAS,aAAa,EACjE,KAAK,EAAE,SAAS,CAAC,EAAE,EACnB,GAAG,CAAC,EAAE,cAAc,GACnB,CAAC,EAAE,CAEL"}
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 (§8) so downstream code can't read a
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 the tool's internal
72
- * `func`/`coroutine` so identity reaches the authored handler even when LangChain
73
- * rewrites the runtime into a RunnableConfig before calling the tool function.
74
- * Every other property/method passes through untouched.
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(managedTool, {
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":"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"}
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 (§6.2): pick
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; otherwise selection is by the token's `iss` claim
15
- * (guest tokens carry MDA's own issuer). Fail-closed on no match (401).
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;AAc7C;;;;GAIG;AACH,wBAAsB,yBAAyB,CAC7C,GAAG,EAAE,cAAc,EACnB,OAAO,EAAE,qBAAqB,EAC9B,OAAO,EAAE,OAAO,GACf,OAAO,CAAC,WAAW,CAAC,CAWtB;AAED,wEAAwE;AACxE,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAQpD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,CAC5B,SAAS,EAAE,sBAAsB,EAAE,EACnC,KAAK,EAAE,MAAM,GACZ,sBAAsB,CAsBxB;AAED,uFAAuF;AACvF,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,sBAAsB,EAChC,MAAM,EAAE,UAAU,GACjB,WAAW,CA0Bb;AA0JD;;;GAGG;AACH,wBAAsB,eAAe,CACnC,QAAQ,EAAE,sBAAsB,EAChC,OAAO,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC,CAejB"}
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"}