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

Function parseOAuthClientOrigin

packages/core/sdk/src/oauth-service.ts:305–333  ·  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

303};
304
305const parseOAuthClientOrigin = (row: {
306 readonly slug?: unknown;
307 readonly grant?: unknown;
308 readonly resource?: unknown;
309 readonly origin_kind?: unknown;
310 readonly origin_integration?: unknown;
311}): OAuthClientOrigin => {
312 // Shared DCR classification (explicit origin_kind OR the legacy MCP-shaped
313 // heuristic) lives in `oauth-gc` so the runtime and the GC/backfill
314 // migrations agree exactly on what counts as a DCR row.
315 if (!isDcrClassifiedRow(row)) {
316 return {
317 kind: "manual",
318 integration:
319 row.origin_integration == null
320 ? null
321 : IntegrationSlug.make(String(row.origin_integration)),
322 };
323 }
324 // An explicit-origin DCR row carries its requesting integration; a
325 // heuristic-classified legacy row (null origin_kind) has none.
326 return {
327 kind: "dynamic_client_registration",
328 integration:
329 row.origin_kind === "dynamic_client_registration" && row.origin_integration != null
330 ? IntegrationSlug.make(String(row.origin_integration))
331 : null,
332 };
333};
334
335interface LoadedOAuthClient {
336 readonly slug: string;

Callers 2

dcrCandidatesForIssuerFunction · 0.85
listClientsFunction · 0.85

Calls 1

isDcrClassifiedRowFunction · 0.90

Tested by

no test coverage detected