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

Function dcrClientSlug

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

Source from the content-addressed store, hash-verified

322};
323
324const dcrClientSlug = (
325 issuer: string | null,
326 resource: string | null,
327 fallback: OAuthClientSlug,
328): OAuthClientSlug => {
329 if (issuer === null) return fallback;
330 const issuerHost = hostOfUrl(issuer);
331 if (issuerHost === null) return fallback;
332 const base = `dcr-${slugifyOAuthKey(issuerHost) || "authorization-server"}`;
333 if (resource === null) return OAuthClientSlug.make(base);
334 const resourceUrl = parseUrl(resource);
335 const resourceSource =
336 resourceUrl === null ? resource : `${resourceUrl.host}${resourceUrl.pathname}`;
337 const resourcePart = slugifyOAuthKey(resourceSource).slice(0, 60) || "resource";
338 return OAuthClientSlug.make(`${base}-${resourcePart}-${shortStableHash(resource)}`.slice(0, 240));
339};
340
341/** Dedupe a freshly-minted DCR slug against slugs already held by an owner's
342 * 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