@agenticprimitives/connect-client 1.0.0-alpha.1 → 1.0.0-alpha.10

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.
@@ -0,0 +1,18 @@
1
+ export type DeploymentEpochVerdict = 'ok' | 'stale' | 'unstamped' | 'unknown';
2
+ /**
3
+ * Compare a stored session's epoch to the current deployment epoch.
4
+ *
5
+ * - `current` undefined ⇒ `'unknown'`: the running build carries no epoch
6
+ * (e.g. an older deployments artifact), so we CANNOT know staleness and must
7
+ * NOT gate — fail-open only when knowledge is absent (never a silent
8
+ * fallback to a weaker check; there simply is no check to run).
9
+ * - `stored` undefined ⇒ `'unstamped'`: a session written before the guard
10
+ * existed. Since the guard's whole purpose is post-reset recovery, callers
11
+ * SHOULD treat this like `'stale'` and force a reconnect.
12
+ * - otherwise: string equality → `'ok'` | `'stale'`.
13
+ */
14
+ export declare function checkDeploymentEpoch(current: string | undefined, stored: string | undefined): DeploymentEpochVerdict;
15
+ /** Convenience: does this verdict require dropping the session + reconnecting?
16
+ * `unstamped` and `stale` both do; `ok` and `unknown` do not. */
17
+ export declare function requiresReconnect(verdict: DeploymentEpochVerdict): boolean;
18
+ //# sourceMappingURL=deployment-epoch.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deployment-epoch.d.ts","sourceRoot":"","sources":["../src/deployment-epoch.ts"],"names":[],"mappings":"AAeA,MAAM,MAAM,sBAAsB,GAC9B,IAAI,GACJ,OAAO,GACP,WAAW,GACX,SAAS,CAAC;AAEd;;;;;;;;;;;GAWG;AACH,wBAAgB,oBAAoB,CAClC,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,MAAM,EAAE,MAAM,GAAG,SAAS,GACzB,sBAAsB,CAIxB;AAED;kEACkE;AAClE,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,sBAAsB,GAAG,OAAO,CAE1E"}
@@ -0,0 +1,39 @@
1
+ // Spec 311 — the deployment-epoch guard for relying-app sessions.
2
+ //
3
+ // A relying app stamps each stored session with the authority deployment epoch
4
+ // it was minted against (`CONTRACTS.deploymentEpoch`, emitted by the contracts
5
+ // deployments artifact). On load, it compares the stored epoch to the CURRENT
6
+ // one; a mismatch means a full-reset redeploy happened (new factory / new
7
+ // DelegationManager / new signature validator), so the stored grant + session
8
+ // delegation are signed against a now-dead EIP-712 domain and will fail
9
+ // on-chain verification — the confusing "Signed in, but every vault call
10
+ // 401s" state. Detecting it lets the app force a reconnect instead.
11
+ //
12
+ // Pure + storage-agnostic: the app owns where the epoch is stored (its session
13
+ // blob) and what it does with the verdict (clear + route to reconnect). This
14
+ // module only decides.
15
+ /**
16
+ * Compare a stored session's epoch to the current deployment epoch.
17
+ *
18
+ * - `current` undefined ⇒ `'unknown'`: the running build carries no epoch
19
+ * (e.g. an older deployments artifact), so we CANNOT know staleness and must
20
+ * NOT gate — fail-open only when knowledge is absent (never a silent
21
+ * fallback to a weaker check; there simply is no check to run).
22
+ * - `stored` undefined ⇒ `'unstamped'`: a session written before the guard
23
+ * existed. Since the guard's whole purpose is post-reset recovery, callers
24
+ * SHOULD treat this like `'stale'` and force a reconnect.
25
+ * - otherwise: string equality → `'ok'` | `'stale'`.
26
+ */
27
+ export function checkDeploymentEpoch(current, stored) {
28
+ if (!current)
29
+ return 'unknown';
30
+ if (!stored)
31
+ return 'unstamped';
32
+ return stored === current ? 'ok' : 'stale';
33
+ }
34
+ /** Convenience: does this verdict require dropping the session + reconnecting?
35
+ * `unstamped` and `stale` both do; `ok` and `unknown` do not. */
36
+ export function requiresReconnect(verdict) {
37
+ return verdict === 'stale' || verdict === 'unstamped';
38
+ }
39
+ //# sourceMappingURL=deployment-epoch.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deployment-epoch.js","sourceRoot":"","sources":["../src/deployment-epoch.ts"],"names":[],"mappings":"AAAA,kEAAkE;AAClE,EAAE;AACF,+EAA+E;AAC/E,+EAA+E;AAC/E,8EAA8E;AAC9E,0EAA0E;AAC1E,8EAA8E;AAC9E,wEAAwE;AACxE,yEAAyE;AACzE,oEAAoE;AACpE,EAAE;AACF,+EAA+E;AAC/E,6EAA6E;AAC7E,uBAAuB;AAQvB;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,oBAAoB,CAClC,OAA2B,EAC3B,MAA0B;IAE1B,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAC/B,IAAI,CAAC,MAAM;QAAE,OAAO,WAAW,CAAC;IAChC,OAAO,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC;AAC7C,CAAC;AAED;kEACkE;AAClE,MAAM,UAAU,iBAAiB,CAAC,OAA+B;IAC/D,OAAO,OAAO,KAAK,OAAO,IAAI,OAAO,KAAK,WAAW,CAAC;AACxD,CAAC"}
package/dist/index.d.ts CHANGED
@@ -3,4 +3,6 @@ export declare const SPEC_REF = "specs/295-relying-connect-client.md";
3
3
  export { createConnectClient, generatePkce, randomB64url, type ConnectClient, type ConnectClientConfig, type AuthorizeTemplate, type IdTokenClaims, type TokenResult, type EnrollmentStart, type WireDelegation, } from './oidc.js';
4
4
  export { openCentralAuthPopup, preferRedirect, relayCodeIfPopupReturn, type PopupResult, } from './popup.js';
5
5
  export { connectViaRedirect, connectViaPopup, connectViaFedcm, type ConnectStash, type PopupConnectResult, type FedcmConnectResult, } from './launch.js';
6
+ export { checkDeploymentEpoch, requiresReconnect, type DeploymentEpochVerdict, } from './deployment-epoch.js';
7
+ export { listQuickConnect, connectAsQuickConnect, type QuickConnectIdentity, type QuickConnectSession, type QuickConnectConfig, } from './quick-connect.js';
6
8
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,YAAY,sCAAsC,CAAC;AAChE,eAAO,MAAM,QAAQ,wCAAwC,CAAC;AAE9D,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,YAAY,EACZ,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,cAAc,GACpB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,sBAAsB,EACtB,KAAK,WAAW,GACjB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,GACxB,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAQA,eAAO,MAAM,YAAY,sCAAsC,CAAC;AAChE,eAAO,MAAM,QAAQ,wCAAwC,CAAC;AAE9D,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,YAAY,EACZ,KAAK,aAAa,EAClB,KAAK,mBAAmB,EACxB,KAAK,iBAAiB,EACtB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,eAAe,EACpB,KAAK,cAAc,GACpB,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,sBAAsB,EACtB,KAAK,WAAW,GACjB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,eAAe,EACf,KAAK,YAAY,EACjB,KAAK,kBAAkB,EACvB,KAAK,kBAAkB,GACxB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,oBAAoB,EACpB,iBAAiB,EACjB,KAAK,sBAAsB,GAC5B,MAAM,uBAAuB,CAAC;AAK/B,OAAO,EACL,gBAAgB,EAChB,qBAAqB,EACrB,KAAK,oBAAoB,EACzB,KAAK,mBAAmB,EACxB,KAAK,kBAAkB,GACxB,MAAM,oBAAoB,CAAC"}
package/dist/index.js CHANGED
@@ -10,4 +10,9 @@ export const SPEC_REF = 'specs/295-relying-connect-client.md';
10
10
  export { createConnectClient, generatePkce, randomB64url, } from './oidc.js';
11
11
  export { openCentralAuthPopup, preferRedirect, relayCodeIfPopupReturn, } from './popup.js';
12
12
  export { connectViaRedirect, connectViaPopup, connectViaFedcm, } from './launch.js';
13
+ export { checkDeploymentEpoch, requiresReconnect, } from './deployment-epoch.js';
14
+ // Quick-connect identities a Home may offer (the client half of its persona registry). Gated by the
15
+ // HOME: `listQuickConnect` returns [] when none are offered, so the affordance disappears everywhere at
16
+ // once without any app shipping a flag.
17
+ export { listQuickConnect, connectAsQuickConnect, } from './quick-connect.js';
13
18
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,2FAA2F;AAC3F,EAAE;AACF,uGAAuG;AACvG,uGAAuG;AACvG,iGAAiG;AACjG,wGAAwG;AACxG,8FAA8F;AAE9F,MAAM,CAAC,MAAM,YAAY,GAAG,mCAAmC,CAAC;AAChE,MAAM,CAAC,MAAM,QAAQ,GAAG,qCAAqC,CAAC;AAE9D,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,YAAY,GAQb,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,sBAAsB,GAEvB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,eAAe,GAIhB,MAAM,aAAa,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,2FAA2F;AAC3F,EAAE;AACF,uGAAuG;AACvG,uGAAuG;AACvG,iGAAiG;AACjG,wGAAwG;AACxG,8FAA8F;AAE9F,MAAM,CAAC,MAAM,YAAY,GAAG,mCAAmC,CAAC;AAChE,MAAM,CAAC,MAAM,QAAQ,GAAG,qCAAqC,CAAC;AAE9D,OAAO,EACL,mBAAmB,EACnB,YAAY,EACZ,YAAY,GAQb,MAAM,WAAW,CAAC;AAEnB,OAAO,EACL,oBAAoB,EACpB,cAAc,EACd,sBAAsB,GAEvB,MAAM,YAAY,CAAC;AAEpB,OAAO,EACL,kBAAkB,EAClB,eAAe,EACf,eAAe,GAIhB,MAAM,aAAa,CAAC;AAErB,OAAO,EACL,oBAAoB,EACpB,iBAAiB,GAElB,MAAM,uBAAuB,CAAC;AAE/B,oGAAoG;AACpG,wGAAwG;AACxG,wCAAwC;AACxC,OAAO,EACL,gBAAgB,EAChB,qBAAqB,GAItB,MAAM,oBAAoB,CAAC"}
package/dist/oidc.d.ts CHANGED
@@ -64,6 +64,8 @@ interface AuthorizeParams {
64
64
  orgBase?: string;
65
65
  purpose?: string;
66
66
  grantOrg?: Address;
67
+ /** org-create: reuse an EXISTING org the person stewards — the Home grants from it instead of deploying. */
68
+ existingOrg?: Address;
67
69
  /** Appended when launching in a popup (the Home posts the result back instead of redirecting). */
68
70
  mode?: 'popup';
69
71
  }
@@ -75,10 +77,13 @@ export interface ConnectClient {
75
77
  startEnrollment(name: string, opts?: {
76
78
  mode?: 'popup';
77
79
  }): Promise<EnrollmentStart>;
78
- /** Build an `org-create` authorize request (deploy + custody an org SA at the Home). */
79
- startOrgCreation(personName: string, orgBase: string, opts?: {
80
+ /** Build an `org-create` authorize request (deploy + custody an org SA at the Home). Omit `orgBase`
81
+ * (and `existingOrg`) to run CHOOSER MODE: the Home asks the member to pick an org they already
82
+ * steward — granting from it, no deploy — or to name a new one there. */
83
+ startOrgCreation(personName: string, orgBase?: string, opts?: {
80
84
  purpose?: string;
81
85
  grantOrg?: Address;
86
+ existingOrg?: Address;
82
87
  mode?: 'popup';
83
88
  }): Promise<EnrollmentStart>;
84
89
  /** Exchange the authorization `code` at the Home's `/token` (PKCE) → `{ idToken, delegation, org? }`. */
@@ -1 +1 @@
1
- {"version":3,"file":"oidc.d.ts","sourceRoot":"","sources":["../src/oidc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oidc.d.ts","sourceRoot":"","sources":["../src/oidc.ts"],"names":[],"mappings":"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"}
package/dist/oidc.js CHANGED
@@ -57,6 +57,8 @@ export function createConnectClient(config) {
57
57
  u.searchParams.set('org_purpose', p.purpose);
58
58
  if (p.grantOrg)
59
59
  u.searchParams.set('grant_org', p.grantOrg);
60
+ if (p.existingOrg)
61
+ u.searchParams.set('existing_org', p.existingOrg);
60
62
  if (p.mode)
61
63
  u.searchParams.set('mode', p.mode);
62
64
  return u.toString();
@@ -73,7 +75,7 @@ export function createConnectClient(config) {
73
75
  return {
74
76
  buildAuthorizeUrl,
75
77
  startEnrollment: (name, opts) => begin(name, 'site-login', { mode: opts?.mode }),
76
- startOrgCreation: (personName, orgBase, opts) => begin(personName, 'org-create', { orgBase, purpose: opts?.purpose, grantOrg: opts?.grantOrg, mode: opts?.mode }),
78
+ startOrgCreation: (personName, orgBase, opts) => begin(personName, 'org-create', { orgBase, purpose: opts?.purpose, grantOrg: opts?.grantOrg, existingOrg: opts?.existingOrg, mode: opts?.mode }),
77
79
  async exchangeCode(authOrigin, code, codeVerifier) {
78
80
  const r = await fetch(new URL('/token', authOrigin).toString(), {
79
81
  method: 'POST',
package/dist/oidc.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"oidc.js","sourceRoot":"","sources":["../src/oidc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"oidc.js","sourceRoot":"","sources":["../src/oidc.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,58 @@
1
+ /** One identity a Home offers for quick connect. */
2
+ export interface QuickConnectIdentity {
3
+ /** Short stable id used to request a session. */
4
+ handle: string;
5
+ /** The canonical Smart Agent address — the identity itself (ADR-0010). */
6
+ sa: string;
7
+ /** Display name. */
8
+ name: string;
9
+ /** One-line description of who they are in the demo world. */
10
+ blurb: string;
11
+ /** The custodian address holding their key at the Home, when disclosed. */
12
+ custodian?: string;
13
+ /** Agents this identity custodies (orgs, services) — what makes them useful for testing. */
14
+ custodies?: {
15
+ sa: string;
16
+ name?: string;
17
+ kind?: string;
18
+ }[];
19
+ }
20
+ /** What a Home returns when an app connects as one of them — an ordinary sign-in result. */
21
+ export interface QuickConnectSession {
22
+ /** Canonical subject (CAIP-10 or SA address, per the Home). */
23
+ sub: string;
24
+ agentName: string | null;
25
+ /** OIDC id_token — what Home-run surfaces (inbox, invites) authenticate with. */
26
+ idToken: string;
27
+ /** The site-login delegation — the AUTHORITY half. A token authenticates; this authorizes. */
28
+ delegation: unknown;
29
+ /** The same person's Home session, so an app can hand off into their portal already signed in. */
30
+ homeSession?: string;
31
+ homeSessionExpiresIn?: number;
32
+ }
33
+ export interface QuickConnectConfig {
34
+ /** The Home origin, injected by the app's own domain module. */
35
+ homeOrigin: string;
36
+ /** This app's registered OIDC client id — the Home resolves the delegate from its OWN registry, so a
37
+ * wrong value yields no session rather than a session scoped to somebody else. */
38
+ clientId: string;
39
+ fetchImpl?: typeof fetch;
40
+ }
41
+ /**
42
+ * List the identities this Home offers.
43
+ *
44
+ * Returns `[]` for every non-success — a Home that does not offer the feature, an origin that is not a
45
+ * Home, a network failure. That is deliberate: the ONLY use of this list is deciding whether to show an
46
+ * affordance, and "show nothing" is the correct outcome in all of those cases. It never throws, so a
47
+ * Home being unreachable cannot break an app's header.
48
+ */
49
+ export declare function listQuickConnect(config: QuickConnectConfig): Promise<QuickConnectIdentity[]>;
50
+ /**
51
+ * Connect as one of them.
52
+ *
53
+ * THROWS on failure, unlike the list above, and the asymmetry is intentional: listing decides whether to
54
+ * offer a choice, where silence is a fine answer; connecting is a user action, where silence would leave
55
+ * someone looking at a button that did nothing. A failed connect must say so.
56
+ */
57
+ export declare function connectAsQuickConnect(config: QuickConnectConfig, handleOrSa: string): Promise<QuickConnectSession>;
58
+ //# sourceMappingURL=quick-connect.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quick-connect.d.ts","sourceRoot":"","sources":["../src/quick-connect.ts"],"names":[],"mappings":"AAoBA,oDAAoD;AACpD,MAAM,WAAW,oBAAoB;IACnC,iDAAiD;IACjD,MAAM,EAAE,MAAM,CAAC;IACf,0EAA0E;IAC1E,EAAE,EAAE,MAAM,CAAC;IACX,oBAAoB;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,8DAA8D;IAC9D,KAAK,EAAE,MAAM,CAAC;IACd,2EAA2E;IAC3E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,4FAA4F;IAC5F,SAAS,CAAC,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;CAC5D;AAED,4FAA4F;AAC5F,MAAM,WAAW,mBAAmB;IAClC,+DAA+D;IAC/D,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,iFAAiF;IACjF,OAAO,EAAE,MAAM,CAAC;IAChB,8FAA8F;IAC9F,UAAU,EAAE,OAAO,CAAC;IACpB,kGAAkG;IAClG,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,oBAAoB,CAAC,EAAE,MAAM,CAAC;CAC/B;AAED,MAAM,WAAW,kBAAkB;IACjC,gEAAgE;IAChE,UAAU,EAAE,MAAM,CAAC;IACnB;uFACmF;IACnF,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,OAAO,KAAK,CAAC;CAC1B;AAID;;;;;;;GAOG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,kBAAkB,GAAG,OAAO,CAAC,oBAAoB,EAAE,CAAC,CAalG;AAED;;;;;;GAMG;AACH,wBAAsB,qBAAqB,CACzC,MAAM,EAAE,kBAAkB,EAC1B,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,mBAAmB,CAAC,CA2B9B"}
@@ -0,0 +1,79 @@
1
+ // Quick-connect identities offered by a Home (spec 295; the client half of the Home's persona registry).
2
+ //
3
+ // WHAT THIS IS FOR. A Home MAY offer a small set of pre-custodied identities a relying app can connect
4
+ // as without running a credential ceremony — the same person, same Smart Agent, same vault and org
5
+ // memberships, in every app that asks. It exists so a demo or a test can exercise a real authority
6
+ // chain instead of a mock: the identity is an actual on-chain SA whose custodian the Home holds, so
7
+ // every downstream signature, delegation and vault read is genuine.
8
+ //
9
+ // GATED BY THE HOME, NOT BY THE APP. `listQuickConnect` returns `[]` when the Home offers none, and an
10
+ // app is expected to render nothing in that case. That is the whole configuration story: a Home without
11
+ // the feature enabled reports an empty list, so the affordance disappears everywhere at once without
12
+ // any app shipping a flag. An app that hard-coded its own list would defeat that.
13
+ //
14
+ // THIS IS NOT A CREDENTIAL PATH. The app never holds a key. It asks the Home for a session and receives
15
+ // exactly what an ordinary OIDC sign-in returns — an `id_token` and the site delegation. Anyone who can
16
+ // reach an enabled Home can connect as these identities; that is what "connect as this account" means,
17
+ // and it is why a Home only enables it for accounts that exist to be shared.
18
+ //
19
+ // NO HOSTNAMES (ADR-0021): the caller supplies its Home origin, as with everything else in this package.
20
+ const trimOrigin = (o) => o.replace(/\/$/, '');
21
+ /**
22
+ * List the identities this Home offers.
23
+ *
24
+ * Returns `[]` for every non-success — a Home that does not offer the feature, an origin that is not a
25
+ * Home, a network failure. That is deliberate: the ONLY use of this list is deciding whether to show an
26
+ * affordance, and "show nothing" is the correct outcome in all of those cases. It never throws, so a
27
+ * Home being unreachable cannot break an app's header.
28
+ */
29
+ export async function listQuickConnect(config) {
30
+ const doFetch = config.fetchImpl ?? fetch;
31
+ try {
32
+ const res = await doFetch(`${trimOrigin(config.homeOrigin)}/connect/demo-personas`, {
33
+ method: 'GET',
34
+ headers: { accept: 'application/json' },
35
+ });
36
+ if (!res.ok)
37
+ return [];
38
+ const body = (await res.json());
39
+ return Array.isArray(body.personas) ? body.personas : [];
40
+ }
41
+ catch {
42
+ return [];
43
+ }
44
+ }
45
+ /**
46
+ * Connect as one of them.
47
+ *
48
+ * THROWS on failure, unlike the list above, and the asymmetry is intentional: listing decides whether to
49
+ * offer a choice, where silence is a fine answer; connecting is a user action, where silence would leave
50
+ * someone looking at a button that did nothing. A failed connect must say so.
51
+ */
52
+ export async function connectAsQuickConnect(config, handleOrSa) {
53
+ const doFetch = config.fetchImpl ?? fetch;
54
+ const isSa = /^0x[0-9a-fA-F]{40}$/.test(handleOrSa);
55
+ const res = await doFetch(`${trimOrigin(config.homeOrigin)}/connect/demo-signin`, {
56
+ method: 'POST',
57
+ headers: { 'content-type': 'application/json' },
58
+ body: JSON.stringify({ ...(isSa ? { sa: handleOrSa } : { handle: handleOrSa }), client_id: config.clientId }),
59
+ });
60
+ const body = (await res.json().catch(() => ({})));
61
+ if (!res.ok) {
62
+ throw new Error(body.error ?? `quick connect failed (${res.status})`);
63
+ }
64
+ if (typeof body.id_token !== 'string' || !body.delegation) {
65
+ // A session without BOTH halves is not a session. The token authenticates and the delegation
66
+ // authorizes; an app that accepted one without the other would be authenticated and unable to act,
67
+ // or acting without having authenticated — and would discover it much later (ADR-0041).
68
+ throw new Error('quick connect returned an incomplete session (missing id_token or delegation)');
69
+ }
70
+ return {
71
+ sub: String(body.sub ?? ''),
72
+ agentName: body.agent_name ?? null,
73
+ idToken: body.id_token,
74
+ delegation: body.delegation,
75
+ homeSession: typeof body.homeSession === 'string' ? body.homeSession : undefined,
76
+ homeSessionExpiresIn: typeof body.homeSessionExpiresIn === 'number' ? body.homeSessionExpiresIn : undefined,
77
+ };
78
+ }
79
+ //# sourceMappingURL=quick-connect.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"quick-connect.js","sourceRoot":"","sources":["../src/quick-connect.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@agenticprimitives/connect-client",
3
- "version": "1.0.0-alpha.1",
3
+ "version": "1.0.0-alpha.10",
4
4
  "description": "Generic relying-party connect client: hand off to the central-auth Home (FedCM-first → OIDC redirect/popup), exchange the code for an SA-signed scoped delegation. The relying half of spec 230/259; no credential ever originates in the relying app.",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -32,7 +32,7 @@
32
32
  },
33
33
  "dependencies": {
34
34
  "@agenticprimitives/fedcm-rp": "1.0.0-alpha.6",
35
- "@agenticprimitives/types": "1.0.0-alpha.13"
35
+ "@agenticprimitives/types": "1.0.0-alpha.21"
36
36
  },
37
37
  "devDependencies": {
38
38
  "@types/node": "^22.7.0",