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

Function dcrClientSlug

packages/core/sdk/src/oauth-service.ts:337–352  ·  view source on GitHub ↗
(
  issuer: string | null,
  resource: string | null,
  fallback: OAuthClientSlug,
)

Source from the content-addressed store, hash-verified

335};
336
337const dcrClientSlug = (
338 issuer: string | null,
339 resource: string | null,
340 fallback: OAuthClientSlug,
341): OAuthClientSlug => {
342 if (issuer === null) return fallback;
343 const issuerHost = hostOfUrl(issuer);
344 if (issuerHost === null) return fallback;
345 const base = `dcr-${slugifyOAuthKey(issuerHost) || "authorization-server"}`;
346 if (resource === null) return OAuthClientSlug.make(base);
347 const resourceUrl = parseUrl(resource);
348 const resourceSource =
349 resourceUrl === null ? resource : `${resourceUrl.host}${resourceUrl.pathname}`;
350 const resourcePart = slugifyOAuthKey(resourceSource).slice(0, 60) || "resource";
351 return OAuthClientSlug.make(`${base}-${resourcePart}-${shortStableHash(resource)}`.slice(0, 240));
352};
353
354/** Dedupe a freshly-minted DCR slug against slugs already held by an owner's
355 * DCR candidates, appending `-2`, `-3`, … so a new client never collides with

Callers 1

decideDcrClientReuseFunction · 0.85

Calls 4

hostOfUrlFunction · 0.90
parseUrlFunction · 0.90
slugifyOAuthKeyFunction · 0.85
shortStableHashFunction · 0.85

Tested by

no test coverage detected