@sourcey/catalog-verifier 1.2.2 → 1.2.5

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.
@@ -90,6 +90,9 @@ declare const agentReadinessCredentialDeclarationSchema: z.ZodObject<{
90
90
  }, z.core.$strict>, z.ZodObject<{
91
91
  scheme: z.ZodLiteral<"form">;
92
92
  field: z.ZodString;
93
+ }, z.core.$strict>, z.ZodObject<{
94
+ scheme: z.ZodLiteral<"query">;
95
+ parameter: z.ZodString;
93
96
  }, z.core.$strict>]>;
94
97
  endpoint_ids: z.ZodArray<z.ZodString>;
95
98
  methods: z.ZodArray<z.ZodEnum<{
@@ -117,6 +120,9 @@ declare const agentReadinessKeptCredentialSchema: z.ZodObject<{
117
120
  }, z.core.$strict>, z.ZodObject<{
118
121
  scheme: z.ZodLiteral<"form">;
119
122
  field: z.ZodString;
123
+ }, z.core.$strict>, z.ZodObject<{
124
+ scheme: z.ZodLiteral<"query">;
125
+ parameter: z.ZodString;
120
126
  }, z.core.$strict>]>;
121
127
  endpoint_ids: z.ZodArray<z.ZodString>;
122
128
  methods: z.ZodArray<z.ZodEnum<{
@@ -131,6 +137,175 @@ declare const agentReadinessKeptCredentialSchema: z.ZodObject<{
131
137
  expires_in_pointer: z.ZodOptional<z.ZodString>;
132
138
  }, z.core.$strict>;
133
139
  export type AgentReadinessKeptCredential = z.infer<typeof agentReadinessKeptCredentialSchema>;
140
+ /**
141
+ * How the job's authority is obtained on the account holder's runner (north
142
+ * star §7.4). Consent never happens inside a run: an OAuth grant starts from
143
+ * what the account holder already holds.
144
+ */
145
+ declare const agentReadinessDelegationSchema: z.ZodDiscriminatedUnion<[z.ZodObject<{
146
+ kind: z.ZodLiteral<"none">;
147
+ }, z.core.$strict>, z.ZodObject<{
148
+ kind: z.ZodLiteral<"entered">;
149
+ credentials: z.ZodArray<z.ZodObject<{
150
+ role: z.ZodString;
151
+ placement: z.ZodUnion<readonly [z.ZodObject<{
152
+ scheme: z.ZodEnum<{
153
+ basic: "basic";
154
+ bearer: "bearer";
155
+ }>;
156
+ header_name: z.ZodLiteral<"authorization">;
157
+ }, z.core.$strict>, z.ZodObject<{
158
+ scheme: z.ZodLiteral<"header">;
159
+ header_name: z.ZodString;
160
+ }, z.core.$strict>, z.ZodObject<{
161
+ scheme: z.ZodLiteral<"form">;
162
+ field: z.ZodString;
163
+ }, z.core.$strict>, z.ZodObject<{
164
+ scheme: z.ZodLiteral<"query">;
165
+ parameter: z.ZodString;
166
+ }, z.core.$strict>]>;
167
+ endpoint_ids: z.ZodArray<z.ZodString>;
168
+ methods: z.ZodArray<z.ZodEnum<{
169
+ DELETE: "DELETE";
170
+ GET: "GET";
171
+ HEAD: "HEAD";
172
+ PATCH: "PATCH";
173
+ POST: "POST";
174
+ PUT: "PUT";
175
+ }>>;
176
+ }, z.core.$strict>>;
177
+ }, z.core.$strict>, z.ZodObject<{
178
+ call: z.ZodObject<{
179
+ kind: z.ZodLiteral<"http">;
180
+ call_id: z.ZodString;
181
+ endpoint_id: z.ZodString;
182
+ method: z.ZodEnum<{
183
+ DELETE: "DELETE";
184
+ GET: "GET";
185
+ HEAD: "HEAD";
186
+ PATCH: "PATCH";
187
+ POST: "POST";
188
+ PUT: "PUT";
189
+ }>;
190
+ url: z.ZodString;
191
+ headers: z.ZodArray<z.ZodObject<{
192
+ name: z.ZodString;
193
+ value: z.ZodString;
194
+ }, z.core.$strict>>;
195
+ body: z.ZodNullable<z.ZodDiscriminatedUnion<[z.ZodObject<{
196
+ media_type: z.ZodLiteral<"application/json">;
197
+ json: z.ZodJSONSchema;
198
+ }, z.core.$strict>, z.ZodObject<{
199
+ media_type: z.ZodLiteral<"application/x-www-form-urlencoded">;
200
+ form: z.ZodArray<z.ZodObject<{
201
+ name: z.ZodString;
202
+ value: z.ZodString;
203
+ }, z.core.$strict>>;
204
+ }, z.core.$strict>], "media_type">>;
205
+ credentials: z.ZodArray<z.ZodString>;
206
+ }, z.core.$strict>;
207
+ keep: z.ZodArray<z.ZodObject<{
208
+ role: z.ZodString;
209
+ placement: z.ZodUnion<readonly [z.ZodObject<{
210
+ scheme: z.ZodEnum<{
211
+ basic: "basic";
212
+ bearer: "bearer";
213
+ }>;
214
+ header_name: z.ZodLiteral<"authorization">;
215
+ }, z.core.$strict>, z.ZodObject<{
216
+ scheme: z.ZodLiteral<"header">;
217
+ header_name: z.ZodString;
218
+ }, z.core.$strict>, z.ZodObject<{
219
+ scheme: z.ZodLiteral<"form">;
220
+ field: z.ZodString;
221
+ }, z.core.$strict>, z.ZodObject<{
222
+ scheme: z.ZodLiteral<"query">;
223
+ parameter: z.ZodString;
224
+ }, z.core.$strict>]>;
225
+ endpoint_ids: z.ZodArray<z.ZodString>;
226
+ methods: z.ZodArray<z.ZodEnum<{
227
+ DELETE: "DELETE";
228
+ GET: "GET";
229
+ HEAD: "HEAD";
230
+ PATCH: "PATCH";
231
+ POST: "POST";
232
+ PUT: "PUT";
233
+ }>>;
234
+ pointer: z.ZodString;
235
+ expires_in_pointer: z.ZodOptional<z.ZodString>;
236
+ }, z.core.$strict>>;
237
+ kind: z.ZodLiteral<"minted">;
238
+ from: z.ZodObject<{
239
+ role: z.ZodString;
240
+ placement: z.ZodUnion<readonly [z.ZodObject<{
241
+ scheme: z.ZodEnum<{
242
+ basic: "basic";
243
+ bearer: "bearer";
244
+ }>;
245
+ header_name: z.ZodLiteral<"authorization">;
246
+ }, z.core.$strict>, z.ZodObject<{
247
+ scheme: z.ZodLiteral<"header">;
248
+ header_name: z.ZodString;
249
+ }, z.core.$strict>, z.ZodObject<{
250
+ scheme: z.ZodLiteral<"form">;
251
+ field: z.ZodString;
252
+ }, z.core.$strict>, z.ZodObject<{
253
+ scheme: z.ZodLiteral<"query">;
254
+ parameter: z.ZodString;
255
+ }, z.core.$strict>]>;
256
+ endpoint_ids: z.ZodArray<z.ZodString>;
257
+ methods: z.ZodArray<z.ZodEnum<{
258
+ DELETE: "DELETE";
259
+ GET: "GET";
260
+ HEAD: "HEAD";
261
+ PATCH: "PATCH";
262
+ POST: "POST";
263
+ PUT: "PUT";
264
+ }>>;
265
+ }, z.core.$strict>;
266
+ }, z.core.$strict>, z.ZodObject<{
267
+ token_endpoint_id: z.ZodString;
268
+ scopes: z.ZodArray<z.ZodString>;
269
+ access: z.ZodObject<{
270
+ role: z.ZodString;
271
+ endpoint_ids: z.ZodArray<z.ZodString>;
272
+ methods: z.ZodArray<z.ZodEnum<{
273
+ DELETE: "DELETE";
274
+ GET: "GET";
275
+ HEAD: "HEAD";
276
+ PATCH: "PATCH";
277
+ POST: "POST";
278
+ PUT: "PUT";
279
+ }>>;
280
+ }, z.core.$strict>;
281
+ kind: z.ZodLiteral<"oauth_client_credentials">;
282
+ client_authentication: z.ZodEnum<{
283
+ client_secret_basic: "client_secret_basic";
284
+ client_secret_post: "client_secret_post";
285
+ }>;
286
+ }, z.core.$strict>, z.ZodObject<{
287
+ token_endpoint_id: z.ZodString;
288
+ scopes: z.ZodArray<z.ZodString>;
289
+ access: z.ZodObject<{
290
+ role: z.ZodString;
291
+ endpoint_ids: z.ZodArray<z.ZodString>;
292
+ methods: z.ZodArray<z.ZodEnum<{
293
+ DELETE: "DELETE";
294
+ GET: "GET";
295
+ HEAD: "HEAD";
296
+ PATCH: "PATCH";
297
+ POST: "POST";
298
+ PUT: "PUT";
299
+ }>>;
300
+ }, z.core.$strict>;
301
+ kind: z.ZodLiteral<"oauth_refresh_token">;
302
+ client_authentication: z.ZodEnum<{
303
+ client_secret_basic: "client_secret_basic";
304
+ client_secret_post: "client_secret_post";
305
+ none: "none";
306
+ }>;
307
+ }, z.core.$strict>], "kind">;
308
+ export type AgentReadinessDelegation = z.infer<typeof agentReadinessDelegationSchema>;
134
309
  export declare const agentReadinessJobBindingSchema: z.ZodObject<{
135
310
  binding_id: z.ZodString;
136
311
  interface_id: z.ZodString;
@@ -201,41 +376,9 @@ export declare const agentReadinessJobBindingSchema: z.ZodObject<{
201
376
  }, z.core.$strict>, z.ZodObject<{
202
377
  scheme: z.ZodLiteral<"form">;
203
378
  field: z.ZodString;
204
- }, z.core.$strict>]>;
205
- endpoint_ids: z.ZodArray<z.ZodString>;
206
- methods: z.ZodArray<z.ZodEnum<{
207
- DELETE: "DELETE";
208
- GET: "GET";
209
- HEAD: "HEAD";
210
- PATCH: "PATCH";
211
- POST: "POST";
212
- PUT: "PUT";
213
- }>>;
214
- }, z.core.$strict>>;
215
- }, z.core.$strict>, z.ZodObject<{
216
- kind: z.ZodLiteral<"oauth">;
217
- authorization_endpoint_id: z.ZodString;
218
- token_endpoint_id: z.ZodString;
219
- client: z.ZodEnum<{
220
- client_id_metadata_document: "client_id_metadata_document";
221
- dynamic_registration: "dynamic_registration";
222
- preregistered: "preregistered";
223
- }>;
224
- scopes: z.ZodArray<z.ZodString>;
225
- keep: z.ZodArray<z.ZodObject<{
226
- role: z.ZodString;
227
- placement: z.ZodUnion<readonly [z.ZodObject<{
228
- scheme: z.ZodEnum<{
229
- basic: "basic";
230
- bearer: "bearer";
231
- }>;
232
- header_name: z.ZodLiteral<"authorization">;
233
379
  }, z.core.$strict>, z.ZodObject<{
234
- scheme: z.ZodLiteral<"header">;
235
- header_name: z.ZodString;
236
- }, z.core.$strict>, z.ZodObject<{
237
- scheme: z.ZodLiteral<"form">;
238
- field: z.ZodString;
380
+ scheme: z.ZodLiteral<"query">;
381
+ parameter: z.ZodString;
239
382
  }, z.core.$strict>]>;
240
383
  endpoint_ids: z.ZodArray<z.ZodString>;
241
384
  methods: z.ZodArray<z.ZodEnum<{
@@ -246,8 +389,6 @@ export declare const agentReadinessJobBindingSchema: z.ZodObject<{
246
389
  POST: "POST";
247
390
  PUT: "PUT";
248
391
  }>>;
249
- pointer: z.ZodString;
250
- expires_in_pointer: z.ZodOptional<z.ZodString>;
251
392
  }, z.core.$strict>>;
252
393
  }, z.core.$strict>, z.ZodObject<{
253
394
  call: z.ZodObject<{
@@ -293,6 +434,9 @@ export declare const agentReadinessJobBindingSchema: z.ZodObject<{
293
434
  }, z.core.$strict>, z.ZodObject<{
294
435
  scheme: z.ZodLiteral<"form">;
295
436
  field: z.ZodString;
437
+ }, z.core.$strict>, z.ZodObject<{
438
+ scheme: z.ZodLiteral<"query">;
439
+ parameter: z.ZodString;
296
440
  }, z.core.$strict>]>;
297
441
  endpoint_ids: z.ZodArray<z.ZodString>;
298
442
  methods: z.ZodArray<z.ZodEnum<{
@@ -321,6 +465,9 @@ export declare const agentReadinessJobBindingSchema: z.ZodObject<{
321
465
  }, z.core.$strict>, z.ZodObject<{
322
466
  scheme: z.ZodLiteral<"form">;
323
467
  field: z.ZodString;
468
+ }, z.core.$strict>, z.ZodObject<{
469
+ scheme: z.ZodLiteral<"query">;
470
+ parameter: z.ZodString;
324
471
  }, z.core.$strict>]>;
325
472
  endpoint_ids: z.ZodArray<z.ZodString>;
326
473
  methods: z.ZodArray<z.ZodEnum<{
@@ -332,6 +479,47 @@ export declare const agentReadinessJobBindingSchema: z.ZodObject<{
332
479
  PUT: "PUT";
333
480
  }>>;
334
481
  }, z.core.$strict>;
482
+ }, z.core.$strict>, z.ZodObject<{
483
+ token_endpoint_id: z.ZodString;
484
+ scopes: z.ZodArray<z.ZodString>;
485
+ access: z.ZodObject<{
486
+ role: z.ZodString;
487
+ endpoint_ids: z.ZodArray<z.ZodString>;
488
+ methods: z.ZodArray<z.ZodEnum<{
489
+ DELETE: "DELETE";
490
+ GET: "GET";
491
+ HEAD: "HEAD";
492
+ PATCH: "PATCH";
493
+ POST: "POST";
494
+ PUT: "PUT";
495
+ }>>;
496
+ }, z.core.$strict>;
497
+ kind: z.ZodLiteral<"oauth_client_credentials">;
498
+ client_authentication: z.ZodEnum<{
499
+ client_secret_basic: "client_secret_basic";
500
+ client_secret_post: "client_secret_post";
501
+ }>;
502
+ }, z.core.$strict>, z.ZodObject<{
503
+ token_endpoint_id: z.ZodString;
504
+ scopes: z.ZodArray<z.ZodString>;
505
+ access: z.ZodObject<{
506
+ role: z.ZodString;
507
+ endpoint_ids: z.ZodArray<z.ZodString>;
508
+ methods: z.ZodArray<z.ZodEnum<{
509
+ DELETE: "DELETE";
510
+ GET: "GET";
511
+ HEAD: "HEAD";
512
+ PATCH: "PATCH";
513
+ POST: "POST";
514
+ PUT: "PUT";
515
+ }>>;
516
+ }, z.core.$strict>;
517
+ kind: z.ZodLiteral<"oauth_refresh_token">;
518
+ client_authentication: z.ZodEnum<{
519
+ client_secret_basic: "client_secret_basic";
520
+ client_secret_post: "client_secret_post";
521
+ none: "none";
522
+ }>;
335
523
  }, z.core.$strict>], "kind">;
336
524
  payment: z.ZodDiscriminatedUnion<[z.ZodObject<{
337
525
  kind: z.ZodLiteral<"none">;
@@ -387,6 +575,20 @@ export declare function agentReadinessBindingCalls(binding: Pick<AgentReadinessJ
387
575
  readonly call: AgentReadinessCall;
388
576
  readonly mayRead: readonly string[];
389
577
  }[];
578
+ /**
579
+ * The OAuth client and grant credentials a delegation starts from, by the role
580
+ * the account holder names each under. They travel only to the token endpoint,
581
+ * never with a job call.
582
+ */
583
+ export declare const AGENT_READINESS_OAUTH_ROLES: {
584
+ readonly clientId: "client_id";
585
+ readonly clientSecret: "client_secret";
586
+ readonly refreshToken: "refresh_token";
587
+ /** A basic client's one credential: the form-encoded `client_id:client_secret` pair (RFC 6749 §2.3.1). */
588
+ readonly client: "client";
589
+ };
590
+ /** The call id an OAuth delegation's token request is recorded under; no binding call takes it. */
591
+ export declare const AGENT_READINESS_OAUTH_TOKEN_CALL = "oauth-token";
390
592
  /** Every template string a call sends. */
391
593
  export declare function agentReadinessCallTemplates(call: AgentReadinessCall): readonly string[];
392
594
  /** The declared surfaces a job operation or binding resolves against. */
@@ -1 +1 @@
1
- {"version":3,"file":"binding.d.ts","sourceRoot":"","sources":["../../../../contracts/agent-readiness/src/binding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"binding.d.ts","sourceRoot":"","sources":["../../../../contracts/agent-readiness/src/binding.ts"],"names":[],"mappings":"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"}
@@ -215,6 +215,12 @@ const placementSchema = z.union([
215
215
  z
216
216
  .object({ scheme: z.literal("form"), field: z.string().regex(/^[A-Za-z0-9_.-]{1,64}$/u) })
217
217
  .strict(),
218
+ z
219
+ .object({
220
+ scheme: z.literal("query"),
221
+ parameter: z.string().regex(/^[A-Za-z0-9_.-]{1,64}$/u),
222
+ })
223
+ .strict(),
218
224
  ]);
219
225
  /** One credential the binding uses: its role, how it travels, and where it may go. */
220
226
  const agentReadinessCredentialDeclarationSchema = z
@@ -236,6 +242,28 @@ const issuingCall = {
236
242
  call: agentReadinessHttpCallSchema,
237
243
  keep: z.array(agentReadinessKeptCredentialSchema).min(1).max(4),
238
244
  };
245
+ /** Where an access token an OAuth grant issues may go: the binding's calls carry it by its role. */
246
+ const agentReadinessOAuthAccessSchema = z
247
+ .object({
248
+ role: nameSchema,
249
+ endpoint_ids: z.array(agentReadinessScopeKeySchema).min(1).max(8),
250
+ methods: methodsSchema,
251
+ })
252
+ .strict();
253
+ const oauthGrant = {
254
+ /** The declared endpoint whose URI is the authorization server's token endpoint. */
255
+ token_endpoint_id: agentReadinessScopeKeySchema,
256
+ scopes: z
257
+ .array(z.string().regex(/^[\x21\x23-\x5B\x5D-\x7E]{1,128}$/u))
258
+ .max(32)
259
+ .refine((scopes) => new Set(scopes).size === scopes.length, "Scopes are unique."),
260
+ access: agentReadinessOAuthAccessSchema,
261
+ };
262
+ /**
263
+ * How the job's authority is obtained on the account holder's runner (north
264
+ * star §7.4). Consent never happens inside a run: an OAuth grant starts from
265
+ * what the account holder already holds.
266
+ */
239
267
  const agentReadinessDelegationSchema = z.discriminatedUnion("kind", [
240
268
  /** The job needs no authority. */
241
269
  z.object({ kind: z.literal("none") }).strict(),
@@ -249,20 +277,6 @@ const agentReadinessDelegationSchema = z.discriminatedUnion("kind", [
249
277
  credentials: z.array(agentReadinessCredentialDeclarationSchema).min(1).max(4),
250
278
  })
251
279
  .strict(),
252
- /**
253
- * The principal consents through OAuth, MCP authorization included; the
254
- * runner's custody keeps the tokens.
255
- */
256
- z
257
- .object({
258
- kind: z.literal("oauth"),
259
- authorization_endpoint_id: agentReadinessScopeKeySchema,
260
- token_endpoint_id: agentReadinessScopeKeySchema,
261
- client: z.enum(["client_id_metadata_document", "dynamic_registration", "preregistered"]),
262
- scopes: z.array(z.string().regex(/^[\x21\x23-\x5B\x5D-\x7E]{1,128}$/u)).max(32),
263
- keep: z.array(agentReadinessKeptCredentialSchema).min(1).max(4),
264
- })
265
- .strict(),
266
280
  /** A credential the account holder entered mints the job's, through the service's own API. */
267
281
  z
268
282
  .object({
@@ -271,6 +285,26 @@ const agentReadinessDelegationSchema = z.discriminatedUnion("kind", [
271
285
  ...issuingCall,
272
286
  })
273
287
  .strict(),
288
+ /** A client id and secret obtain a fresh access token each run (RFC 6749 §4.4). */
289
+ z
290
+ .object({
291
+ kind: z.literal("oauth_client_credentials"),
292
+ client_authentication: z.enum(["client_secret_basic", "client_secret_post"]),
293
+ ...oauthGrant,
294
+ })
295
+ .strict(),
296
+ /**
297
+ * A refresh token from one consent the account holder gave obtains an access
298
+ * token each run (RFC 6749 §6); a rotated one is kept, for the account holder
299
+ * to write back to their own secret.
300
+ */
301
+ z
302
+ .object({
303
+ kind: z.literal("oauth_refresh_token"),
304
+ client_authentication: z.enum(["client_secret_basic", "client_secret_post", "none"]),
305
+ ...oauthGrant,
306
+ })
307
+ .strict(),
274
308
  ]);
275
309
  const agentReadinessPaymentSchema = z.discriminatedUnion("kind", [
276
310
  /** The job costs nothing at the exercised use. */
@@ -316,21 +350,45 @@ export function agentReadinessBindingCalls(binding) {
316
350
  calls.push({ call, mayRead: jobIds });
317
351
  return calls;
318
352
  }
319
- /** Credential roles the binding obtains, from its delegation. */
353
+ /** Credential roles the binding's calls may carry, from its delegation. */
320
354
  function agentReadinessBindingRoles(binding) {
321
355
  const { delegation } = binding;
322
- const roles = delegation.kind === "none"
323
- ? []
324
- : delegation.kind === "entered"
325
- ? delegation.credentials.map(({ role }) => role)
326
- : delegation.kind === "oauth"
327
- ? delegation.keep.map(({ role }) => role)
328
- : [delegation.from.role, ...delegation.keep.map(({ role }) => role)];
329
- return [...new Set(roles)];
356
+ switch (delegation.kind) {
357
+ case "none":
358
+ return [];
359
+ case "entered":
360
+ return [...new Set(delegation.credentials.map(({ role }) => role))];
361
+ case "minted":
362
+ return [...new Set([delegation.from.role, ...delegation.keep.map(({ role }) => role)])];
363
+ case "oauth_client_credentials":
364
+ case "oauth_refresh_token":
365
+ return [delegation.access.role];
366
+ }
330
367
  }
368
+ /**
369
+ * The OAuth client and grant credentials a delegation starts from, by the role
370
+ * the account holder names each under. They travel only to the token endpoint,
371
+ * never with a job call.
372
+ */
373
+ export const AGENT_READINESS_OAUTH_ROLES = {
374
+ clientId: "client_id",
375
+ clientSecret: "client_secret",
376
+ refreshToken: "refresh_token",
377
+ /** A basic client's one credential: the form-encoded `client_id:client_secret` pair (RFC 6749 §2.3.1). */
378
+ client: "client",
379
+ };
380
+ /** The call id an OAuth delegation's token request is recorded under; no binding call takes it. */
381
+ export const AGENT_READINESS_OAUTH_TOKEN_CALL = "oauth-token";
331
382
  function validateBinding(binding, context) {
332
383
  const calls = agentReadinessBindingCalls(binding);
333
384
  unique(calls.map(({ call }) => call.call_id), context, ["calls"], "Call ids are unique across the binding.");
385
+ if (calls.some(({ call }) => call.call_id === AGENT_READINESS_OAUTH_TOKEN_CALL)) {
386
+ context.addIssue({
387
+ code: "custom",
388
+ path: ["calls"],
389
+ message: `The call id ${AGENT_READINESS_OAUTH_TOKEN_CALL} names an OAuth delegation's token request.`,
390
+ });
391
+ }
334
392
  const roles = new Set(agentReadinessBindingRoles(binding));
335
393
  for (const { call, mayRead } of calls) {
336
394
  for (const role of call.credentials) {
@@ -439,18 +497,21 @@ export function validateDeclaredJobBindings(value, context) {
439
497
  }
440
498
  }
441
499
  const { delegation } = binding;
500
+ const oauth = delegation.kind === "oauth_client_credentials" || delegation.kind === "oauth_refresh_token";
442
501
  const credentialEndpoints = [
443
502
  ...(delegation.kind === "entered" ? delegation.credentials : []),
444
- ...(delegation.kind === "oauth" ? delegation.keep : []),
445
503
  ...(delegation.kind === "minted" ? [delegation.from, ...delegation.keep] : []),
504
+ ...(oauth ? [delegation.access] : []),
446
505
  ].flatMap(({ endpoint_ids }) => endpoint_ids);
447
- if (delegation.kind === "oauth") {
448
- credentialEndpoints.push(delegation.authorization_endpoint_id, delegation.token_endpoint_id);
449
- }
506
+ if (oauth)
507
+ credentialEndpoints.push(delegation.token_endpoint_id);
450
508
  for (const id of new Set(credentialEndpoints)) {
451
509
  if (!endpoints.has(id))
452
510
  issue(`Credentials reach unknown endpoint '${id}'.`);
453
511
  }
512
+ if (oauth && endpoints.get(delegation.token_endpoint_id)?.transport !== "http") {
513
+ issue(`The token endpoint '${delegation.token_endpoint_id}' is an HTTP endpoint.`);
514
+ }
454
515
  }
455
516
  }
456
517
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"binding.js","sourceRoot":"","sources":["../../../../contracts/agent-readiness/src/binding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"binding.js","sourceRoot":"","sources":["../../../../contracts/agent-readiness/src/binding.ts"],"names":[],"mappings":"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"}