MCPcopy Create free account
hub / github.com/UsefulSoftwareCo/executor / parseOAuthClientOrigin

Function parseOAuthClientOrigin

packages/core/sdk/src/oauth-service.ts:352–380  ·  view source on GitHub ↗
(row: {
  readonly slug?: unknown;
  readonly grant?: unknown;
  readonly resource?: unknown;
  readonly origin_kind?: unknown;
  readonly origin_integration?: unknown;
})

Source from the content-addressed store, hash-verified

350};
351
352const parseOAuthClientOrigin = (row: {
353 readonly slug?: unknown;
354 readonly grant?: unknown;
355 readonly resource?: unknown;
356 readonly origin_kind?: unknown;
357 readonly origin_integration?: unknown;
358}): OAuthClientOrigin => {
359 // Shared DCR classification (explicit origin_kind OR the legacy MCP-shaped
360 // heuristic) lives in `oauth-gc` so the runtime and the GC/backfill
361 // migrations agree exactly on what counts as a DCR row.
362 if (!isDcrClassifiedRow(row)) {
363 return {
364 kind: "manual",
365 integration:
366 row.origin_integration == null
367 ? null
368 : IntegrationSlug.make(String(row.origin_integration)),
369 };
370 }
371 // An explicit-origin DCR row carries its requesting integration; a
372 // heuristic-classified legacy row (null origin_kind) has none.
373 return {
374 kind: "dynamic_client_registration",
375 integration:
376 row.origin_kind === "dynamic_client_registration" && row.origin_integration != null
377 ? IntegrationSlug.make(String(row.origin_integration))
378 : null,
379 };
380};
381
382interface LoadedOAuthClient {
383 readonly slug: string;

Callers 2

dcrCandidatesForIssuerFunction · 0.85
listClientsFunction · 0.85

Calls 1

isDcrClassifiedRowFunction · 0.90

Tested by

no test coverage detected