@oxy.so/contracts 2.2.0 → 4.0.0

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.
Files changed (41) hide show
  1. package/dist/cjs/.tsbuildinfo +1 -1
  2. package/dist/cjs/accountEmail.js +21 -25
  3. package/dist/cjs/deviceBoot.js +2 -2
  4. package/dist/cjs/deviceSession.js +73 -16
  5. package/dist/cjs/externalIdentity.js +9 -3
  6. package/dist/cjs/identity.js +1 -3
  7. package/dist/cjs/identityLink.js +22 -19
  8. package/dist/cjs/identityProof.js +2 -2
  9. package/dist/cjs/index.js +59 -28
  10. package/dist/cjs/reputation.js +10 -55
  11. package/dist/cjs/signIn.js +304 -0
  12. package/dist/esm/.tsbuildinfo +1 -1
  13. package/dist/esm/accountEmail.js +21 -25
  14. package/dist/esm/deviceBoot.js +2 -2
  15. package/dist/esm/deviceSession.js +72 -15
  16. package/dist/esm/externalIdentity.js +8 -2
  17. package/dist/esm/identity.js +1 -3
  18. package/dist/esm/identityLink.js +21 -18
  19. package/dist/esm/identityProof.js +2 -2
  20. package/dist/esm/index.js +11 -11
  21. package/dist/esm/reputation.js +9 -54
  22. package/dist/esm/signIn.js +299 -0
  23. package/dist/types/.tsbuildinfo +1 -1
  24. package/dist/types/accountEmail.d.ts +20 -28
  25. package/dist/types/accountGraph.d.ts +4 -4
  26. package/dist/types/deviceBoot.d.ts +2 -2
  27. package/dist/types/deviceSession.d.ts +127 -15
  28. package/dist/types/externalIdentity.d.ts +53 -46
  29. package/dist/types/identity.d.ts +4 -8
  30. package/dist/types/identityLink.d.ts +54 -118
  31. package/dist/types/identityProof.d.ts +3 -3
  32. package/dist/types/index.d.ts +8 -8
  33. package/dist/types/inference/entitlement.d.ts +2 -2
  34. package/dist/types/oauth.d.ts +16 -16
  35. package/dist/types/reputation.d.ts +32 -127
  36. package/dist/types/signIn.d.ts +717 -0
  37. package/dist/types/userResponse.d.ts +2 -2
  38. package/package.json +1 -1
  39. package/dist/cjs/webauthn.js +0 -114
  40. package/dist/esm/webauthn.js +0 -111
  41. package/dist/types/webauthn.d.ts +0 -173
@@ -2,24 +2,28 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.EMAIL_VERIFICATION_ERROR_CODES = exports.emailVerificationConfirmResponseSchema = exports.emailVerificationConfirmRequestSchema = exports.emailVerificationStartResponseSchema = exports.emailVerificationStartRequestSchema = exports.emailTicketSchema = exports.emailAddressSchema = exports.EMAIL_TICKET_TTL_MS = exports.EMAIL_CODE_MAX_ATTEMPTS = exports.EMAIL_CODE_TTL_MS = exports.EMAIL_CODE_LENGTH = exports.EMAIL_VERIFICATION_PURPOSES = void 0;
4
4
  /**
5
- * Recovery email contracts (ADR 0029 D3).
5
+ * Email codes and tickets (ADR 0030).
6
6
  *
7
- * A web account is a username, a passkey and a recovery email. The email is
8
- * proven by a 6-digit code sent to it, and the proof is a short-lived one-use
9
- * ticket the next step spends:
7
+ * A web account is a username and an email; a password and an authenticator
8
+ * app are optional and added later. The email is proven by a 6-digit code sent
9
+ * to it, and the proof is a short-lived one-use ticket the next step spends:
10
10
  *
11
- * - `signup`: the ticket lets `POST /webauthn/register/verify` create the
12
- * account with that email;
13
- * - `recovery`: the person names their username or email, the code goes to the
14
- * account's recovery email, and the ticket lets them register a new passkey
15
- * for that account.
11
+ * - `signup`: the ticket lets `POST /auth/signup` create the account with that
12
+ * email. `start` answers the same whether or not the address already has an
13
+ * account, so it never tells anyone which emails have an Oxy account.
16
14
  *
17
- * `start` answers the same whether or not an account exists, so neither purpose
18
- * tells anyone which emails or usernames have an Oxy account. An account with a
19
- * Commons key has no recovery email: it recovers in Commons.
15
+ * Signing in by email (`signin`) and re-verifying before a sensitive change
16
+ * (`reauth`) use the same code, through their own routes (`signIn.ts`).
20
17
  */
21
18
  const zod_1 = require("zod");
22
- exports.EMAIL_VERIFICATION_PURPOSES = ['signup', 'recovery'];
19
+ /**
20
+ * - `signup`: above.
21
+ * - `signin`: the code (and link) of an email sign-in (`POST /auth/signin/email/start`).
22
+ * - `reauth`: a signed-in person proving it is them before a sensitive step
23
+ * (`POST /users/me/reauth/email`): a password, an authenticator, deleting the
24
+ * account, linking Commons.
25
+ */
26
+ exports.EMAIL_VERIFICATION_PURPOSES = ['signup', 'signin', 'reauth'];
23
27
  /** Digits in a code. */
24
28
  exports.EMAIL_CODE_LENGTH = 6;
25
29
  /** How long a code can be confirmed. */
@@ -36,16 +40,9 @@ exports.emailTicketSchema = zod_1.z
36
40
  .trim()
37
41
  .regex(/^[A-Za-z0-9_-]{43}$/, 'ticket must be 32 bytes of base64url');
38
42
  /** `POST /auth/email/verify/start` */
39
- exports.emailVerificationStartRequestSchema = zod_1.z.discriminatedUnion('purpose', [
40
- zod_1.z.object({ purpose: zod_1.z.literal('signup'), email: exports.emailAddressSchema }).strict(),
41
- zod_1.z
42
- .object({
43
- purpose: zod_1.z.literal('recovery'),
44
- /** The account's username, or its recovery email. */
45
- identifier: zod_1.z.string().trim().min(1).max(254),
46
- })
47
- .strict(),
48
- ]);
43
+ exports.emailVerificationStartRequestSchema = zod_1.z
44
+ .object({ purpose: zod_1.z.literal('signup'), email: exports.emailAddressSchema })
45
+ .strict();
49
46
  exports.emailVerificationStartResponseSchema = zod_1.z.object({
50
47
  verificationId: zod_1.z.string().min(1).max(64),
51
48
  expiresAt: zod_1.z.number().int().positive(),
@@ -63,7 +60,6 @@ exports.emailVerificationConfirmRequestSchema = zod_1.z
63
60
  exports.emailVerificationConfirmResponseSchema = zod_1.z.object({
64
61
  ticket: exports.emailTicketSchema,
65
62
  expiresAt: zod_1.z.number().int().positive(),
66
- username: zod_1.z.string().nullable(),
67
63
  });
68
64
  /**
69
65
  * Stable error codes (`error.code` in the API error body). Clients map these
@@ -76,7 +72,7 @@ exports.EMAIL_VERIFICATION_ERROR_CODES = {
76
72
  tooManyAttempts: 'EMAIL_CODE_TOO_MANY_ATTEMPTS',
77
73
  /** The ticket is unknown, expired, spent, or for another email or purpose. */
78
74
  ticketInvalid: 'EMAIL_TICKET_INVALID',
79
- /** A sign-up without a confirmed recovery email. */
75
+ /** A sign-up without a confirmed email. */
80
76
  ticketRequired: 'EMAIL_TICKET_REQUIRED',
81
77
  /** This server cannot send mail. */
82
78
  unavailable: 'EMAIL_UNAVAILABLE',
@@ -5,8 +5,8 @@
5
5
  * SINGLE SOURCE OF TRUTH for the first-party login result (the session arm). The
6
6
  * API validates its OUTPUT against this schema; every consumer (`@oxy.so/core`'s
7
7
  * auth mixin) validates its INPUT against the same definition, so producer and
8
- * consumers cannot drift. Sign-in is passkey (WebAuthn) or Commons handoff —
9
- * password and 2FA were removed, so the only outcome is a completed session.
8
+ * consumers cannot drift. This is the session arm every sign-in
9
+ * ends in (email code or link, password, authenticator, Commons handoff).
10
10
  *
11
11
  * The device transport is `deviceId` + `deviceSecret` + `POST /session/device/token`
12
12
  * (see `deviceSession.ts`). The legacy cookie/bootstrap/refresh-family lanes were
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.deviceBackgroundTokenResponseSchema = exports.deviceBackgroundTokenRequestSchema = exports.deviceBackgroundCredentialResponseSchema = exports.sessionAccountsChangedEventSchema = exports.sessionAccountsChangedReasonSchema = exports.SESSION_ACCOUNTS_CHANGED_EVENT = exports.deviceTokenMintResponseSchema = exports.deviceTokenMintRequestSchema = exports.deviceSessionSyncSchema = exports.activeTokenSchema = exports.deviceSessionStateSchema = exports.sessionAccountSchema = void 0;
3
+ exports.deviceJoinResponseSchema = exports.deviceJoinRequestSchema = exports.deviceJoinCodeResponseSchema = exports.deviceJoinCodeRequestSchema = exports.deviceRegisterResponseSchema = exports.deviceProofSchema = exports.deviceBackgroundTokenResponseSchema = exports.deviceBackgroundTokenRequestSchema = exports.deviceBackgroundCredentialResponseSchema = exports.sessionAccountsChangedEventSchema = exports.sessionAccountsChangedReasonSchema = exports.SESSION_ACCOUNTS_CHANGED_EVENT = exports.deviceTokenMintResponseSchema = exports.deviceTokenMintRequestSchema = exports.deviceSessionSyncSchema = exports.activeTokenSchema = exports.deviceSessionStateSchema = exports.sessionAccountSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  exports.sessionAccountSchema = zod_1.z.object({
6
6
  accountId: zod_1.z.string(),
@@ -29,9 +29,10 @@ exports.deviceSessionSyncSchema = zod_1.z.object({
29
29
  /**
30
30
  * Request body for `POST /session/device/token` — the client presents the
31
31
  * `deviceId` it stored first-party plus the opaque `deviceSecret`. NO bearer:
32
- * possession of the secret IS the proof of device ownership. The server matches
33
- * `sha256(deviceSecret)` against the device's stored `secretHash` (constant-time)
34
- * and mints a short access token for the device's active account.
32
+ * possession of the secret IS the proof of device ownership. The server looks
33
+ * `sha256(deviceSecret)` up among the device's holder credentials (one per app
34
+ * or origin that joined the shared DeviceSession) and mints a short access
35
+ * token for the device's active account.
35
36
  *
36
37
  * `accountId` pins the mint to ONE account of that device instead of whichever
37
38
  * account is currently active. It exists for identity-bound clients (Commons),
@@ -51,8 +52,8 @@ exports.deviceTokenMintRequestSchema = zod_1.z.object({
51
52
  * short access token for the active account, its expiry, the device secret the
52
53
  * client must persist (`nextDeviceSecret` — on mint this echoes the presented
53
54
  * secret unchanged so concurrent refreshes from multiple origins do not race),
54
- * and the projected device-session state. Sign-in rotates the secret via
55
- * `issueDeviceSecret`; mint does not.
55
+ * and the projected device-session state. Nothing rotates: each sign-in issues
56
+ * a NEW holder credential and leaves the others valid.
56
57
  */
57
58
  exports.deviceTokenMintResponseSchema = zod_1.z.object({
58
59
  accessToken: zod_1.z.string(),
@@ -110,12 +111,11 @@ exports.sessionAccountsChangedEventSchema = zod_1.z.object({
110
111
  * derived server-side from it) and consumed afterwards only by native
111
112
  * background code, which has no JS runtime to mint a token for itself.
112
113
  *
113
- * Deliberately a SEPARATE credential from the rotating `deviceSecret`: that one
114
- * rotates on every mint, so background code presenting it would become a second
115
- * writer of a value the JS runtime depends on, and background code killed
116
- * mid-rotation would silently sign the user out on the next cold start. Against
117
- * this credential background code is the sole writer, and it can never rotate
118
- * anything JS reads.
114
+ * Deliberately a SEPARATE credential from the holder `deviceSecret`: that one
115
+ * is device-wide and mints for whichever account is active, while this one is
116
+ * bound to ONE account and expires, so a widget worker never holds a
117
+ * credential that reaches every account on the device. Background code is its
118
+ * sole writer and never touches anything JS reads.
119
119
  *
120
120
  * The raw `secret` is returned exactly once, at provision time — never stored
121
121
  * retrievably, never logged, never re-read. A caller that loses it provisions
@@ -138,10 +138,10 @@ exports.deviceBackgroundCredentialResponseSchema = zod_1.z.object({
138
138
  * native background code with NO bearer and NO cookies: possession of the
139
139
  * background `secret` IS the proof, as it is for the device-secret mint.
140
140
  *
141
- * Unlike that mint this one NEVER rotates the presented secret (hence no
142
- * `next…` field to persist in the response), so background code interrupted
143
- * anywhere between request and response leaves the credential intact and
144
- * usable on its next run.
141
+ * Like that mint this one NEVER rotates the presented secret, and it carries
142
+ * no `next…` field at all, so background code interrupted anywhere between
143
+ * request and response leaves the credential intact and usable on its next
144
+ * run.
145
145
  */
146
146
  exports.deviceBackgroundTokenRequestSchema = zod_1.z.object({
147
147
  deviceId: zod_1.z.string().min(1),
@@ -162,3 +162,60 @@ exports.deviceBackgroundTokenResponseSchema = zod_1.z.object({
162
162
  expiresAt: zod_1.z.string(),
163
163
  accountId: zod_1.z.string().min(1),
164
164
  });
165
+ /* -------------------------------------------------------------------------- */
166
+ /* The browser bridge — joining the browser's DeviceSession (ADR 0029 D2) */
167
+ /* -------------------------------------------------------------------------- */
168
+ /**
169
+ * Proof that the caller holds a device: the `deviceId` it stored first-party and
170
+ * one of that device's holder secrets. Sent with `POST /session/device/join-code`
171
+ * and, optionally, with a sign-in (`POST /auth/session/claim`, the email,
172
+ * password and second-factor sign-ins, `POST /auth/signup`), where
173
+ * a valid proof puts the new session on THAT device so every app holding it sees
174
+ * the account. An invalid proof on a sign-in is ignored, never an error.
175
+ */
176
+ exports.deviceProofSchema = zod_1.z.object({
177
+ deviceId: zod_1.z.string().min(1).max(128),
178
+ deviceSecret: zod_1.z.string().min(1).max(256),
179
+ });
180
+ /**
181
+ * `POST /session/device/register` — auth.oxy.so only. No body. A new, empty
182
+ * DeviceSession with a server-chosen `deviceId` and ONE holder credential for
183
+ * auth.oxy.so. The raw secret is returned exactly once.
184
+ */
185
+ exports.deviceRegisterResponseSchema = zod_1.z.object({
186
+ deviceId: zod_1.z.string().min(1),
187
+ deviceSecret: zod_1.z.string().min(1),
188
+ });
189
+ /** PKCE S256 challenge: base64url of a SHA-256 digest (43 characters). */
190
+ const pkceS256ChallengeSchema = zod_1.z.string().regex(/^[A-Za-z0-9_-]{43}$/);
191
+ /**
192
+ * `POST /session/device/join-code` — auth.oxy.so only (the bridge window). Proves
193
+ * auth.oxy.so's device and asks for a one-use code an official app redeems to
194
+ * join it. The code is bound to the application (`clientId`), its exact
195
+ * registered `redirectUri` and the app's PKCE challenge, and lives about a
196
+ * minute.
197
+ */
198
+ exports.deviceJoinCodeRequestSchema = exports.deviceProofSchema.extend({
199
+ clientId: zod_1.z.string().min(1).max(256),
200
+ redirectUri: zod_1.z.string().url().max(2048),
201
+ codeChallenge: pkceS256ChallengeSchema,
202
+ codeChallengeMethod: zod_1.z.literal('S256'),
203
+ });
204
+ exports.deviceJoinCodeResponseSchema = zod_1.z.object({
205
+ code: zod_1.z.string().min(1),
206
+ /** Seconds until the code expires. */
207
+ expiresIn: zod_1.z.number().int().positive(),
208
+ });
209
+ /**
210
+ * `POST /session/device/join` — called by the app's own origin with the code the
211
+ * bridge window posted to it and the PKCE verifier only the app holds. Returns a
212
+ * NEW holder credential for the browser's device; the app then mints through the
213
+ * ordinary `POST /session/device/token`.
214
+ */
215
+ exports.deviceJoinRequestSchema = zod_1.z.object({
216
+ code: zod_1.z.string().min(1).max(256),
217
+ codeVerifier: zod_1.z.string().min(43).max(128).regex(/^[A-Za-z0-9._~-]+$/),
218
+ clientId: zod_1.z.string().min(1).max(256),
219
+ redirectUri: zod_1.z.string().url().max(2048),
220
+ });
221
+ exports.deviceJoinResponseSchema = exports.deviceRegisterResponseSchema;
@@ -1,12 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.lookupExternalIdentitiesResponseSchema = exports.lookupExternalIdentitiesRequestSchema = exports.resolveExternalIdentityResponseSchema = exports.resolveExternalIdentityRequestSchema = exports.externalIdentityReferenceSchema = void 0;
3
+ exports.lookupExternalIdentitiesResponseSchema = exports.lookupExternalIdentitiesRequestSchema = exports.resolveExternalIdentityResponseSchema = exports.resolveExternalIdentityRequestSchema = exports.externalIdentityReferenceSchema = exports.externalIdentityProtocolSchema = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const userResponse_1 = require("./userResponse");
6
+ /**
7
+ * How Oxy observed an external account. `instagram-graph` is Meta's Graph API
8
+ * Business Discovery, a fallback transport for Business/Creator Instagram
9
+ * accounts when the ActivityPub bridge is unavailable.
10
+ */
11
+ exports.externalIdentityProtocolSchema = zod_1.z.enum(['activitypub', 'atproto', 'instagram-graph']);
6
12
  exports.externalIdentityReferenceSchema = zod_1.z.object({
7
13
  canonicalAcct: zod_1.z.string().min(1),
8
14
  network: zod_1.z.string().min(1),
9
- protocol: zod_1.z.enum(['activitypub', 'atproto']),
15
+ protocol: exports.externalIdentityProtocolSchema,
10
16
  actorUri: zod_1.z.string().min(1),
11
17
  transportAcct: zod_1.z.string().min(1),
12
18
  sourceUserId: zod_1.z.string().min(1),
@@ -15,7 +21,7 @@ exports.resolveExternalIdentityRequestSchema = zod_1.z.object({
15
21
  actorUri: zod_1.z.string().min(1).max(2048).optional(),
16
22
  handle: zod_1.z.string().min(1).max(2048).optional(),
17
23
  transportAcct: zod_1.z.string().max(320).optional(),
18
- protocol: zod_1.z.enum(['activitypub', 'atproto']).optional(),
24
+ protocol: exports.externalIdentityProtocolSchema.optional(),
19
25
  }).refine(value => Boolean(value.actorUri) !== Boolean(value.handle), 'Exactly one actorUri or handle is required');
20
26
  exports.resolveExternalIdentityResponseSchema = zod_1.z.object({
21
27
  user: userResponse_1.userResponseSchema.extend({
@@ -210,11 +210,9 @@ exports.domainVerificationInstructionsSchema = zod_1.z.object({
210
210
  }),
211
211
  });
212
212
  exports.authMethodEntrySchema = zod_1.z.object({
213
- type: zod_1.z.enum(['identity', 'webauthn']),
213
+ type: zod_1.z.literal('identity'),
214
214
  linkedAt: zod_1.z.union([zod_1.z.string(), zod_1.z.date()]),
215
215
  verificationMethodId: zod_1.z.string().optional(),
216
- credentialId: zod_1.z.string().optional(),
217
- name: zod_1.z.string().optional(),
218
216
  });
219
217
  exports.authMethodsResponseSchema = zod_1.z.object({
220
218
  did: zod_1.z.string(),
@@ -1,33 +1,36 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.identityLinkCompleteRequestSchema = exports.identityLinkOptionsRequestSchema = exports.identityLinkProofRequestSchema = exports.identityLinkStateSchema = exports.identityLinkCreateResponseSchema = exports.identityLinkIdSchema = exports.IDENTITY_LINK_QR_PREFIX = exports.IDENTITY_LINK_STATUSES = void 0;
3
+ exports.identityLinkCompleteRequestSchema = exports.identityLinkProofRequestSchema = exports.identityLinkStateSchema = exports.identityLinkCreateResponseSchema = exports.identityLinkIdSchema = exports.IDENTITY_LINK_QR_PREFIX = exports.IDENTITY_LINK_STATUSES = void 0;
4
4
  exports.buildIdentityLinkQrPayload = buildIdentityLinkQrPayload;
5
5
  exports.parseIdentityLinkQrPayload = parseIdentityLinkQrPayload;
6
6
  /**
7
- * Linking Commons to a passkey account (ADR 0029 D3) — the two-device relay.
7
+ * Linking Commons to an account without a key (ADR 0029 D3) — the two-device
8
+ * relay.
8
9
  *
9
- * A passkey account links a Commons root once, and becomes self-custodied: its
10
- * recovery email is deleted and its phrase in Commons is how it gets back in.
11
- * The authority is the same as `POST /auth/link` (ADR 0024 D8): a root proof
12
- * (`link_identity`) by the key Commons holds, and a fresh assertion by one of
13
- * the account's passkeys over the SAME one-use challenge. Only the transport is
14
- * new, because the two factors live on two devices:
10
+ * An account without a key links a Commons root once, and becomes
11
+ * self-custodied: its email is deleted and its phrase in Commons is how it gets
12
+ * back in. The authority is the same as `POST /auth/link` (ADR 0024 D8): a root
13
+ * proof (`link_identity`) by the key Commons holds over a one-use challenge,
14
+ * and the account's own confirmation — a code just sent to its email (plus its
15
+ * authenticator code when it has one). Only the transport is new, because the
16
+ * two factors live on two devices:
15
17
  *
16
- * 1. auth.oxy.so (signed in) opens a link request → `{ linkId, challenge }`,
17
- * shown as a QR (`oxycommons://link?id=…&c=…`).
18
+ * 1. The signed-in account (the "Link Commons" panel of `@oxy.so/services`)
19
+ * opens a link request → `{ linkId, challenge }`, shown as a QR
20
+ * (`oxycommons://link?id=…&c=…`).
18
21
  * 2. Commons scans it, reads the request (the account's id and username),
19
22
  * signs the root proof over the challenge and posts it with its key.
20
23
  * 3. Both screens show the same 6-digit code, derived from the link id and
21
24
  * that key (`deriveIdentityLinkCode` in `@oxy.so/core`); the person checks
22
25
  * they match, so a photographed QR cannot slip another key in.
23
- * 4. auth.oxy.so asserts the passkey over the challenge and completes: the
24
- * account gains the root, loses the email, and Commons signs in with it.
26
+ * 4. The panel completes with the email code: the account gains the root,
27
+ * loses the email, and Commons signs in with it.
25
28
  *
26
29
  * The server stores only the challenge's hash; the challenge travels in the QR.
27
30
  */
28
31
  const zod_1 = require("zod");
29
32
  const identityProof_1 = require("./identityProof");
30
- const webauthn_1 = require("./webauthn");
33
+ const signIn_1 = require("./signIn");
31
34
  exports.IDENTITY_LINK_STATUSES = ['pending', 'signed', 'completed', 'cancelled'];
32
35
  /** The scheme and host Commons routes a link QR to. */
33
36
  exports.IDENTITY_LINK_QR_PREFIX = 'oxycommons://link';
@@ -81,9 +84,9 @@ exports.identityLinkProofRequestSchema = zod_1.z
81
84
  proof: identityProof_1.identityProofSchema,
82
85
  })
83
86
  .strict();
84
- /** `POST /identity/link/:linkId/options` — WebAuthn request options over the challenge. */
85
- exports.identityLinkOptionsRequestSchema = zod_1.z
86
- .object({ challenge: zod_1.z.string().trim().regex(CHALLENGE, 'challenge must be 64 lowercase hex characters') })
87
- .strict();
88
- /** `POST /identity/link/:linkId/complete` — the passkey assertion over the challenge. */
89
- exports.identityLinkCompleteRequestSchema = zod_1.z.object({ assertion: webauthn_1.webauthnAssertionResponseSchema }).strict();
87
+ /**
88
+ * `POST /identity/link/:linkId/complete` — the account's own confirmation: a
89
+ * code just sent to its email for this link (`reauth`, plus its authenticator
90
+ * code when it has one).
91
+ */
92
+ exports.identityLinkCompleteRequestSchema = zod_1.z.object({ reauth: signIn_1.emailReauthProofSchema }).strict();
@@ -33,8 +33,8 @@ exports.IDENTITY_PROOF_CHALLENGE_TTL_MS = 5 * 60 * 1000;
33
33
  */
34
34
  exports.IDENTITY_PROOF_ACTIONS = {
35
35
  /**
36
- * Link Commons' root to a passkey account that has none (`POST /auth/link`).
37
- * The account becomes self-custodied and its recovery email is deleted
36
+ * Link Commons' root to an account that has none (`POST /auth/link`).
37
+ * The account becomes self-custodied and its email is deleted
38
38
  * (ADR 0029 D3).
39
39
  */
40
40
  link: 'link_identity',
package/dist/cjs/index.js CHANGED
@@ -27,15 +27,15 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
27
27
  Object.defineProperty(exports, "__esModule", { value: true });
28
28
  exports.OXY_USER_INVALIDATION_CHANNEL = exports.inboxEmailPushDataSchema = exports.INBOX_EMAIL_PUSH_TYPE = exports.INBOX_EMAIL_PUSH_CHANNEL = exports.IDENTITY_APPROVAL_PUSH_CHANNEL = exports.commonsDenyReasonSchema = exports.COMMONS_DENY_REASONS = exports.sessionStatusSchema = exports.publicApplicationSchema = exports.applicationTypeSchema = exports.safeParseContract = exports.resolveUserId = exports.deviceLinkedSessionsResponseSchema = exports.deviceLinkedSessionSchema = exports.currentUserResponseSchema = exports.userProfileUpdateSchema = exports.userResponseSchema = exports.dateOfBirthSchema = exports.themePreferenceSchema = exports.userRelationshipSchema = exports.userNameSchema = exports.NUMERIC_USERNAME_MESSAGE = exports.RESERVED_USERNAME_MESSAGE = exports.BOT_USERNAME_INVALID_MESSAGE = exports.USERNAME_INVALID_MESSAGE = exports.USERNAME_MAX_LENGTH = exports.USERNAME_MIN_LENGTH = exports.applyBotUsernameSuffix = exports.stripDisallowedUsernameCharacters = exports.isValidUsername = exports.usernameSchemaForAccountKind = exports.usernameSchema = exports.createAccountRequestSchema = exports.SELECTABLE_ACCOUNT_CATEGORY_IDS = exports.RETIRED_ACCOUNT_CATEGORY_IDS = exports.newlyAddedRetiredCategories = exports.MAX_ACCOUNT_CATEGORIES = exports.kindAcceptsAccountCategories = exports.isSelectableAccountCategoryId = exports.accountCategoryIdSchema = exports.accountCategoriesSchema = exports.ACCOUNT_CATEGORY_KINDS = exports.ACCOUNT_CATEGORY_IDS = exports.isOperatorSwitchTargetKind = exports.isDelegatedActAsEligibleKind = exports.isAccountKind = exports.childAccountKindSchema = exports.CHILD_ACCOUNT_KINDS = exports.accountKindSchema = exports.ACCOUNT_KINDS = void 0;
29
29
  exports.vouchResultSchema = exports.personhoodStatusResultSchema = exports.personhoodBreakdownSchema = exports.personhoodVouchRecordSchema = exports.validationVoteResultSchema = exports.validationRequestSummarySchema = exports.validationOpenResultSchema = exports.validationOpenRequestSchema = exports.validationVerdictRecordSchema = exports.realLifeAttestationResultSchema = exports.realLifeAttestationRecordSchema = exports.signedPublicCardSchema = exports.publicCardSchema = exports.logPageResponseSchema = exports.chainHeadResponseSchema = exports.oxySignedRecordTypeSchema = exports.exportBundleSchema = exports.exportFinancialSectionSchema = exports.exportUsageReservationSchema = exports.exportLedgerEntrySchema = exports.exportUsageReceiptSchema = exports.exportAttestationSchema = exports.authMethodsResponseSchema = exports.authMethodEntrySchema = exports.domainVerificationInstructionsSchema = exports.resourceDomainOwnershipResponseSchema = exports.resourceDomainOwnershipRequestSchema = exports.domainVerificationRequestSchema = exports.verifiedDomainSchema = exports.signedRecordEnvelopeSchema = exports.didDocumentSchema = exports.didServiceSchema = exports.verificationMethodSchema = exports.appAffinityEventsIngestSchema = exports.appAffinityEventSchema = exports.appAffinityEventTypeSchema = exports.appUserSignalIngestSchema = exports.appInterestInputSchema = exports.appEndorsementInputSchema = exports.recommendationResponseSchema = exports.recommendationItemSchema = exports.recommendationCountSchema = exports.recommendationRequestSchema = exports.recommendationSignalWeightsSchema = exports.recommendationBoostSchema = exports.recommendationExcludeTypeSchema = exports.oxyUserInvalidationEventSchema = exports.isPublishedOxyUserChangeReason = exports.OXY_PUBLISHED_USER_CHANGE_REASONS = exports.OXY_USER_CHANGE_REASONS = void 0;
30
- exports.moderationSeveritySchema = exports.APPLICATION_MODERATION_STANDINGS = exports.IDENTITY_BINDING_STATUSES = exports.IDENTITY_BINDING_TYPES = exports.PERSONHOOD_STATUSES = exports.CONTRIBUTION_TIERS = exports.CONDUCT_STANDINGS = exports.CONDUCT_STRIKE_STATUSES = exports.MODERATION_EFFECT_SKIP_REASONS = exports.MODERATION_EFFECT_STATUSES = exports.MODERATION_EFFECT_TYPES = exports.MODERATION_DECISION_STATUSES = exports.MODERATION_ATTRIBUTIONS = exports.MODERATION_FINDING_SCOPES = exports.MODERATION_SEVERITIES = exports.isFullReputationBalance = exports.reverseReputationTransactionSchema = exports.upsertReputationRuleSchema = exports.resolveReputationDisputeSchema = exports.createReputationDisputeSchema = exports.awardReputationSchema = exports.reverseReputationTransactionResultSchema = exports.reputationInfluenceResultSchema = exports.reputationLeaderboardEntrySchema = exports.reputationLeaderboardUserSchema = exports.reputationRuleSchema = exports.reputationDisputeSchema = exports.reputationBalanceSchema = exports.reputationBalanceSummarySchema = exports.reputationReliabilitySchema = exports.reputationInfluenceSchema = exports.reputationBalanceBreakdownSchema = exports.reputationTransactionSchema = exports.reputationInfluenceContextSchema = exports.reputationDisputeStatusSchema = exports.reputationTargetEntityTypeSchema = exports.trustTierSchema = exports.reputationTransactionStatusSchema = exports.reputationCategorySchema = exports.REPUTATION_INFLUENCE_CONTEXTS = exports.REPUTATION_DISPUTE_STATUSES = exports.REPUTATION_TARGET_ENTITY_TYPES = exports.TRUST_TIERS = exports.REPUTATION_TRANSACTION_STATUSES = exports.REPUTATION_CATEGORIES = exports.credentialVerifyResultSchema = exports.credentialListResultSchema = exports.credentialIssueResultSchema = exports.verifiableCredentialResponseSchema = exports.credentialRecordSchema = void 0;
31
- exports.deviceActivateResponseSchema = exports.deviceActivateRequestSchema = exports.deviceDirectorySchema = exports.devicePrincipalSchema = exports.deviceAccountContextSchema = exports.deviceDirectoryProfileSchema = exports.deviceContextRelationshipSchema = exports.sessionAccountsChangedEventSchema = exports.sessionAccountsChangedReasonSchema = exports.SESSION_ACCOUNTS_CHANGED_EVENT = exports.deviceBackgroundTokenResponseSchema = exports.deviceBackgroundTokenRequestSchema = exports.deviceBackgroundCredentialResponseSchema = exports.deviceTokenMintResponseSchema = exports.deviceTokenMintRequestSchema = exports.deviceSessionSyncSchema = exports.activeTokenSchema = exports.deviceSessionStateSchema = exports.sessionAccountSchema = exports.applicationModerationTrustSchema = exports.reputationContextualInfluenceSchema = exports.reputationReviewingSchema = exports.reputationReportingSchema = exports.reputationConductSchema = exports.reputationContributionSchema = exports.reputationPersonhoodSchema = exports.identityBindingSchema = exports.registerIdentityBindingSchema = exports.reverseModerationEffectResultSchema = exports.applyModerationDecisionResultSchema = exports.moderationEffectSchema = exports.reverseModerationEffectSchema = exports.finalizeModerationDecisionSchema = exports.moderationDecisionEventSchema = exports.moderationPolicyVersionsSchema = exports.moderationDecisionEventSubjectSchema = exports.moderationFindingSchema = exports.applicationModerationStandingSchema = exports.identityBindingStatusSchema = exports.identityBindingTypeSchema = exports.personhoodStatusSchema = exports.contributionTierSchema = exports.conductStandingSchema = exports.conductStrikeStatusSchema = exports.moderationEffectSkipReasonSchema = exports.moderationEffectStatusSchema = exports.moderationEffectTypeSchema = exports.moderationDecisionStatusSchema = exports.moderationAttributionSchema = exports.moderationFindingScopeSchema = void 0;
32
- exports.channelListResponseSchema = exports.channelSchema = exports.rollbackToEmbeddedEntrySchema = exports.createUpdateResponseSchema = exports.updateSchema = exports.createUpdateRequestSchema = exports.updateAssetRefSchema = exports.assetCompleteResponseSchema = exports.assetCompleteResultItemSchema = exports.assetCompleteRequestSchema = exports.assetInitResponseSchema = exports.assetUploadTicketSchema = exports.assetInitRequestSchema = exports.assetInitItemSchema = exports.rolloutPercentSchema = exports.runtimeVersionSchema = exports.channelNameSchema = exports.sha256HexSchema = exports.updateAssetStatusSchema = exports.updateStatusSchema = exports.updatePlatformSchema = exports.identityRootStatusSchema = exports.identityProofChallengeResponseSchema = exports.identityProofChallengeRequestSchema = exports.identityProofSchema = exports.buildIdentityProofMessage = exports.canonicalJson = exports.IDENTITY_ERROR_CODES = exports.IDENTITY_PROOF_ACTION_VALUES = exports.IDENTITY_PROOF_ACTIONS = exports.IDENTITY_PROOF_CHALLENGE_TTL_MS = exports.IDENTITY_PROOF_AUDIENCE = exports.IDENTITY_PROOF_DOMAIN = exports.IDENTITY_PROOF_VERSION = exports.backupStatusResponseSchema = exports.backupUploadRequestSchema = exports.encryptedBackupEnvelopeSchema = exports.backupLookupIdSchema = exports.rotateKeyCompleteResponseSchema = exports.rotateKeyCompleteRequestSchema = exports.rotateKeyChallengeResponseSchema = exports.loginResultSchema = exports.mcpOAuthConsentResponseSchema = exports.mcpOAuthClientInfoResponseSchema = exports.mcpOAuthConsentContextSchema = exports.mcpOAuthWriteActionSchema = exports.mcpOAuthClientApplicationSchema = exports.oauthAuthorizeCodeResponseSchema = exports.oauthConsentDecisionSchema = exports.deviceDirectorySyncSchema = void 0;
33
- exports.inferenceHttpsUrlSchema = exports.inferenceDateSchema = exports.inferenceTimestampSchema = exports.inferenceEnvironmentSchema = exports.idempotencyKeySchema = exports.generationIdSchema = exports.requestIdSchema = exports.oxyCredentialIdSchema = exports.oxyApplicationIdSchema = exports.delegatedUserIdSchema = exports.oxyAccountIdSchema = exports.INFERENCE_CONTRACT_VERSION = exports.transparencyCheckpointListSchema = exports.transparencyInclusionProofSchema = exports.transparencyCheckpointSchema = exports.transparencyAnchorSchema = exports.transparencyCheckpointSignatureSchema = exports.identityLinkCompleteRequestSchema = exports.identityLinkOptionsRequestSchema = exports.identityLinkProofRequestSchema = exports.identityLinkStateSchema = exports.identityLinkCreateResponseSchema = exports.parseIdentityLinkQrPayload = exports.buildIdentityLinkQrPayload = exports.identityLinkIdSchema = exports.IDENTITY_LINK_QR_PREFIX = exports.IDENTITY_LINK_STATUSES = exports.emailVerificationConfirmResponseSchema = exports.emailVerificationConfirmRequestSchema = exports.emailVerificationStartResponseSchema = exports.emailVerificationStartRequestSchema = exports.emailTicketSchema = exports.emailAddressSchema = exports.EMAIL_VERIFICATION_ERROR_CODES = exports.EMAIL_TICKET_TTL_MS = exports.EMAIL_CODE_MAX_ATTEMPTS = exports.EMAIL_CODE_TTL_MS = exports.EMAIL_CODE_LENGTH = exports.EMAIL_VERIFICATION_PURPOSES = exports.webauthnAssertionResponseSchema = exports.webauthnCredentialIdSchema = exports.webauthnLoginVerifyRequestSchema = exports.webauthnRegisterVerifyRequestSchema = exports.webauthnLoginOptionsRequestSchema = exports.webauthnRegisterOptionsRequestSchema = exports.updateRolloutPatchSchema = exports.promoteRequestSchema = exports.rollbackToEmbeddedRequestSchema = exports.rollbackRequestSchema = exports.updateListResponseSchema = void 0;
34
- exports.commercialPermissionSchema = exports.availabilityScopeSchema = exports.inferenceDataPolicySchema = exports.modelProvenanceSchema = exports.modelLicenseSchema = exports.modelCapabilitiesSchema = exports.reasoningEffortSchema = exports.inferenceModalitySchema = exports.priceSnapshotSchema = exports.priceVersionSchema = exports.priceVersionStatusSchema = exports.embeddingResponseSchema = exports.embeddingFailureSchema = exports.embeddingSuccessSchema = exports.embeddingUsageSchema = exports.embeddingVectorSchema = exports.inferenceErrorSchema = exports.providerErrorPassthroughSchema = exports.safeErrorTextSchema = exports.upstreamErrorCategorySchema = exports.inferenceErrorCodeSchema = exports.NON_RETRYABLE_INFERENCE_ERROR_CODES = exports.INFERENCE_ERROR_CODES = exports.inferenceAttributionSchema = exports.authenticatedPrincipalSchema = exports.billingPrincipalSchema = exports.inferenceScopeSchema = exports.INFERENCE_SCOPES = exports.unitPriceSchema = exports.usageQuantitySchema = exports.usageSourceSchema = exports.USAGE_SOURCES = exports.usageUnitSchema = exports.USAGE_UNITS = exports.moneySchema = exports.exactDecimalSchema = exports.INFERENCE_MONEY_SCALE = exports.currencyCodeSchema = exports.RESERVED_ALIA_PUBLISHER = exports.inferenceRegionSchema = exports.deploymentIdSchema = exports.inferenceProviderSlugSchema = exports.routingProfileSlugSchema = exports.routingProfileIdSchema = exports.modelReferenceSchema = exports.modelRevisionLabelSchema = exports.modelIdSchema = exports.modelSlugSchema = exports.publisherSlugSchema = exports.sha256DigestSchema = void 0;
35
- exports.MAX_INFERENCE_AUDIO_BYTES = exports.inferenceAudioMediaTypeSchema = exports.inferenceStreamDeltaEventSchema = exports.inferenceStreamStartEventSchema = exports.inferenceSpeechParametersSchema = exports.inferenceRequestSchema = exports.clientRequestMetadataSchema = exports.responseFormatSchema = exports.toolChoiceSchema = exports.toolDefinitionSchema = exports.inferenceReasoningSchema = exports.samplingParametersSchema = exports.inferenceInputSchema = exports.inferenceMessageSchema = exports.inferenceMessageRoleSchema = exports.inferenceToolCallSchema = exports.inferenceContentPartSchema = exports.inferenceContentSourceSchema = exports.modelDocumentationSchema = exports.modelReleaseIngestionResultSchema = exports.modelReleaseIngestionRequestSchema = exports.modelLineDeclarationSchema = exports.modelGpaiDocumentationSchema = exports.modelDownstreamDocumentationSchema = exports.SYSTEMIC_RISK_COMPUTE_THRESHOLD_FLOPS = exports.trainingComputeFlopsSchema = exports.modelSystemicRiskTierSchema = exports.modelDistributionMethodSchema = exports.aliaModelReleaseManifestSchema = exports.aliaReleaseSignatureSchema = exports.aliaReleaseArtifactSchema = exports.authorizedRouteSchema = exports.routingPolicyReferenceSchema = exports.routingPolicySchema = exports.routingFallbackPolicySchema = exports.routingPolicyScopeSchema = exports.routingTargetSchema = exports.modelCatalogueEntrySchema = exports.catalogueServingProviderSummarySchema = exports.cataloguePublisherSummarySchema = exports.routingProfileSchema = exports.routingProfileCandidateSchema = exports.modelDeploymentSchema = exports.inferenceProviderSchema = exports.modelRevisionSchema = exports.catalogueModelSchema = exports.modelPublisherSchema = exports.modelSafetyMetadataSchema = exports.modelEvaluationResultSchema = exports.modelDeprecationSchema = void 0;
36
- exports.autoRechargeSchema = exports.billingProfileStatusSchema = exports.BILLING_PROFILE_STATUSES = exports.billingModeSchema = exports.BILLING_MODES = exports.providerConnectionSchema = exports.providerConnectionStatusSchema = exports.providerConnectionValidationSchema = exports.providerCredentialCustodyStateSchema = exports.providerCredentialValidationDeploymentSchema = exports.providerCredentialValidationOperationSchema = exports.kaanaCredentialValidationOutcomeSchema = exports.kaanaCredentialValidationFailureCodeSchema = exports.kaanaCredentialValidationOutcomeStateSchema = exports.kaanaCredentialValidationTaskSchema = exports.kaanaCredentialOutcomeSchema = exports.kaanaCredentialConflictOutcomeSchema = exports.kaanaCredentialAppliedOutcomeSchema = exports.kaanaCredentialOutcomeRequestSchema = exports.kaanaCredentialRevokeOutcomeRequestSchema = exports.kaanaCredentialRotateOutcomeRequestSchema = exports.kaanaCredentialCreateOutcomeRequestSchema = exports.kaanaCredentialMutationSchema = exports.kaanaCredentialRevokeMutationSchema = exports.kaanaCredentialRotateMutationSchema = exports.kaanaCredentialCreateMutationSchema = exports.kaanaCredentialIdentitySchema = exports.kaanaCredentialOperationActionSchema = exports.kaanaCredentialOperationIdSchema = exports.kaanaCredentialHandleSchema = exports.providerConnectionScopeSchema = exports.usageRefundSchema = exports.usageRefundReasonSchema = exports.usageRefundSubjectSchema = exports.usageReceiptSchema = exports.normalizedUsageReportSchema = exports.inferenceRequestOutcomeSchema = exports.usageReservationSchema = exports.usageReservationStatusSchema = exports.usageReservationRequestSchema = exports.inferenceStreamEventSchema = exports.inferenceStreamDoneEventSchema = exports.inferenceFinishReasonSchema = exports.inferenceStreamErrorEventSchema = exports.inferenceStreamRouteSwitchEventSchema = exports.inferenceRouteSwitchReasonSchema = exports.inferenceRouteSwitchDetailSchema = exports.inferenceStreamUsageEventSchema = exports.inferenceStreamToolCallEventSchema = exports.inferenceStreamAudioEventSchema = void 0;
37
- exports.auditResultSchema = exports.policyDecisionSchema = exports.capabilityTicketClaimsSchema = exports.automationDefinitionSchema = exports.automationDataFlowSchema = exports.automationActorSelectionSchema = exports.automationTriggerSchema = exports.delegationGrantSchema = exports.capabilityCoordinatorSchema = exports.executionAuthorizationRefSchema = exports.capabilityCatalogBindingSchema = exports.grantLimitSchema = exports.toolGrantOverrideSchema = exports.resourceRefSchema = exports.actorRefSchema = exports.capabilityPackageSchema = exports.autonomyLevelSchema = exports.CAPABILITY_PACKAGES = exports.AUTONOMY_LEVELS = exports.productEntitlementSchema = exports.costCenterSpendSchema = exports.costCenterSchema = exports.costCenterStatusSchema = exports.COST_CENTER_STATUSES = exports.payAsYouGoEntitlementSchema = exports.productPlanSchema = exports.planAllowanceSchema = exports.LIVE_PRODUCT_PLAN_STATUSES = exports.productPlanStatusSchema = exports.PRODUCT_PLAN_STATUSES = exports.reconciliationReportSchema = exports.reconciliationRunSchema = exports.reconciliationDiscrepancySchema = exports.reconciliationRunStatusSchema = exports.RECONCILIATION_RUN_STATUSES = exports.reconciliationDiscrepancyKindSchema = exports.RECONCILIATION_DISCREPANCY_KINDS = exports.autoRechargeAttemptSchema = exports.autoRechargeStatusSchema = exports.AUTO_RECHARGE_STATUSES = exports.externalPaymentSchema = exports.externalPaymentKindSchema = exports.EXTERNAL_PAYMENT_KINDS = exports.externalPaymentProviderSchema = exports.EXTERNAL_PAYMENT_PROVIDERS = exports.billingInvoiceSchema = exports.billingInvoiceStatusSchema = exports.BILLING_INVOICE_STATUSES = exports.accountBillingStateSchema = exports.billingProfileSchema = void 0;
38
- exports.inboxInferenceStreamEventSchema = exports.inboxThreadSummaryResponseSchema = exports.inboxSmartRepliesResponseSchema = exports.inboxNaturalSearchResponseSchema = exports.inboxInferenceTextResponseSchema = exports.inboxMessageInferenceParamsSchema = exports.inboxNaturalSearchRequestSchema = exports.inboxDailyBriefRequestSchema = exports.inboxComposeRequestSchema = exports.emailAgentContextSchema = exports.emailContextMessageSchema = exports.emailContextMailboxSchema = exports.emailContextAddressSchema = exports.normalizedAppEventSchema = exports.catalogRegistrationSchema = exports.appCapabilityCatalogSchema = exports.catalogEventSchema = exports.catalogToolSchema = exports.auditEventSchema = void 0;
30
+ exports.conductStrikeStatusSchema = exports.moderationEffectSkipReasonSchema = exports.moderationEffectStatusSchema = exports.moderationEffectTypeSchema = exports.moderationDecisionStatusSchema = exports.moderationAttributionSchema = exports.moderationFindingScopeSchema = exports.moderationSeveritySchema = exports.APPLICATION_MODERATION_STANDINGS = exports.IDENTITY_BINDING_STATUSES = exports.IDENTITY_BINDING_TYPES = exports.PERSONHOOD_STATUSES = exports.CONTRIBUTION_TIERS = exports.CONDUCT_STANDINGS = exports.CONDUCT_STRIKE_STATUSES = exports.MODERATION_EFFECT_SKIP_REASONS = exports.MODERATION_EFFECT_STATUSES = exports.MODERATION_EFFECT_TYPES = exports.MODERATION_DECISION_STATUSES = exports.MODERATION_ATTRIBUTIONS = exports.MODERATION_FINDING_SCOPES = exports.MODERATION_SEVERITIES = exports.isFullReputationBalance = exports.awardReputationSchema = exports.reputationInfluenceResultSchema = exports.reputationLeaderboardEntrySchema = exports.reputationLeaderboardUserSchema = exports.reputationRulesResponseSchema = exports.reputationRuleSchema = exports.reputationBalanceSchema = exports.reputationBalanceSummarySchema = exports.reputationReliabilitySchema = exports.reputationInfluenceSchema = exports.reputationBalanceBreakdownSchema = exports.reputationTransactionSchema = exports.reputationInfluenceContextSchema = exports.reputationTargetEntityTypeSchema = exports.trustTierSchema = exports.reputationTransactionStatusSchema = exports.reputationCategorySchema = exports.REPUTATION_INFLUENCE_CONTEXTS = exports.REPUTATION_TARGET_ENTITY_TYPES = exports.TRUST_TIERS = exports.REPUTATION_TRANSACTION_STATUSES = exports.REPUTATION_CATEGORIES = exports.credentialVerifyResultSchema = exports.credentialListResultSchema = exports.credentialIssueResultSchema = exports.verifiableCredentialResponseSchema = exports.credentialRecordSchema = void 0;
31
+ exports.deviceDirectorySyncSchema = exports.deviceActivateResponseSchema = exports.deviceActivateRequestSchema = exports.deviceDirectorySchema = exports.devicePrincipalSchema = exports.deviceAccountContextSchema = exports.deviceDirectoryProfileSchema = exports.deviceContextRelationshipSchema = exports.sessionAccountsChangedEventSchema = exports.sessionAccountsChangedReasonSchema = exports.SESSION_ACCOUNTS_CHANGED_EVENT = exports.deviceJoinResponseSchema = exports.deviceJoinRequestSchema = exports.deviceJoinCodeResponseSchema = exports.deviceJoinCodeRequestSchema = exports.deviceRegisterResponseSchema = exports.deviceProofSchema = exports.deviceBackgroundTokenResponseSchema = exports.deviceBackgroundTokenRequestSchema = exports.deviceBackgroundCredentialResponseSchema = exports.deviceTokenMintResponseSchema = exports.deviceTokenMintRequestSchema = exports.deviceSessionSyncSchema = exports.activeTokenSchema = exports.deviceSessionStateSchema = exports.sessionAccountSchema = exports.applicationModerationTrustSchema = exports.reputationContextualInfluenceSchema = exports.reputationReviewingSchema = exports.reputationReportingSchema = exports.reputationConductSchema = exports.reputationContributionSchema = exports.reputationPersonhoodSchema = exports.identityBindingSchema = exports.registerIdentityBindingSchema = exports.reverseModerationEffectResultSchema = exports.applyModerationDecisionResultSchema = exports.moderationEffectSchema = exports.reverseModerationEffectSchema = exports.finalizeModerationDecisionSchema = exports.moderationDecisionEventSchema = exports.moderationPolicyVersionsSchema = exports.moderationDecisionEventSubjectSchema = exports.moderationFindingSchema = exports.applicationModerationStandingSchema = exports.identityBindingStatusSchema = exports.identityBindingTypeSchema = exports.personhoodStatusSchema = exports.contributionTierSchema = exports.conductStandingSchema = void 0;
32
+ exports.updateListResponseSchema = exports.channelListResponseSchema = exports.channelSchema = exports.rollbackToEmbeddedEntrySchema = exports.createUpdateResponseSchema = exports.updateSchema = exports.createUpdateRequestSchema = exports.updateAssetRefSchema = exports.assetCompleteResponseSchema = exports.assetCompleteResultItemSchema = exports.assetCompleteRequestSchema = exports.assetInitResponseSchema = exports.assetUploadTicketSchema = exports.assetInitRequestSchema = exports.assetInitItemSchema = exports.rolloutPercentSchema = exports.runtimeVersionSchema = exports.channelNameSchema = exports.sha256HexSchema = exports.updateAssetStatusSchema = exports.updateStatusSchema = exports.updatePlatformSchema = exports.identityRootStatusSchema = exports.identityProofChallengeResponseSchema = exports.identityProofChallengeRequestSchema = exports.identityProofSchema = exports.buildIdentityProofMessage = exports.canonicalJson = exports.IDENTITY_ERROR_CODES = exports.IDENTITY_PROOF_ACTION_VALUES = exports.IDENTITY_PROOF_ACTIONS = exports.IDENTITY_PROOF_CHALLENGE_TTL_MS = exports.IDENTITY_PROOF_AUDIENCE = exports.IDENTITY_PROOF_DOMAIN = exports.IDENTITY_PROOF_VERSION = exports.backupStatusResponseSchema = exports.backupUploadRequestSchema = exports.encryptedBackupEnvelopeSchema = exports.backupLookupIdSchema = exports.rotateKeyCompleteResponseSchema = exports.rotateKeyCompleteRequestSchema = exports.rotateKeyChallengeResponseSchema = exports.loginResultSchema = exports.mcpOAuthConsentResponseSchema = exports.mcpOAuthClientInfoResponseSchema = exports.mcpOAuthConsentContextSchema = exports.mcpOAuthWriteActionSchema = exports.mcpOAuthClientApplicationSchema = exports.oauthAuthorizeCodeResponseSchema = exports.oauthConsentDecisionSchema = void 0;
33
+ exports.passwordSetRequestSchema = exports.reauthEmailStartRequestSchema = exports.REAUTH_ACTIONS = exports.emailReauthProofSchema = exports.reauthProofSchema = exports.isSecondFactorRequired = exports.signUpRequestSchema = exports.secondFactorRequiredSchema = exports.secondFactorSignInRequestSchema = exports.passwordSignInRequestSchema = exports.emailSignInPendingSchema = exports.emailSignInLinkResponseSchema = exports.emailSignInLinkRequestSchema = exports.emailSignInCollectRequestSchema = exports.EMAIL_SIGNIN_LONG_CODE_LENGTH = exports.EMAIL_SIGNIN_LONG_CODE_ALPHABET = exports.normalizeEmailSignInCode = exports.emailSignInCodeSchema = exports.emailSignInConfirmRequestSchema = exports.emailSignInStartResponseSchema = exports.emailSignInStartRequestSchema = exports.secondFactorCodeSchema = exports.newPasswordSchema = exports.passwordInputSchema = exports.signInIdentifierSchema = exports.SIGN_IN_ERROR_CODES = exports.TOTP_BACKUP_CODE_COUNT = exports.TOTP_PERIOD_SECONDS = exports.TOTP_DIGITS = exports.PASSWORD_MAX_LENGTH = exports.PASSWORD_MIN_LENGTH = exports.SIGNIN_SECOND_FACTOR_MAX_ATTEMPTS = exports.SIGNIN_SECOND_FACTOR_TTL_MS = exports.EMAIL_SIGNIN_LINK_TTL_MS = exports.emailVerificationConfirmResponseSchema = exports.emailVerificationConfirmRequestSchema = exports.emailVerificationStartResponseSchema = exports.emailVerificationStartRequestSchema = exports.emailTicketSchema = exports.emailAddressSchema = exports.EMAIL_VERIFICATION_ERROR_CODES = exports.EMAIL_TICKET_TTL_MS = exports.EMAIL_CODE_MAX_ATTEMPTS = exports.EMAIL_CODE_TTL_MS = exports.EMAIL_CODE_LENGTH = exports.EMAIL_VERIFICATION_PURPOSES = exports.updateRolloutPatchSchema = exports.promoteRequestSchema = exports.rollbackToEmbeddedRequestSchema = exports.rollbackRequestSchema = void 0;
34
+ exports.USAGE_SOURCES = exports.usageUnitSchema = exports.USAGE_UNITS = exports.moneySchema = exports.exactDecimalSchema = exports.INFERENCE_MONEY_SCALE = exports.currencyCodeSchema = exports.RESERVED_ALIA_PUBLISHER = exports.inferenceRegionSchema = exports.deploymentIdSchema = exports.inferenceProviderSlugSchema = exports.routingProfileSlugSchema = exports.routingProfileIdSchema = exports.modelReferenceSchema = exports.modelRevisionLabelSchema = exports.modelIdSchema = exports.modelSlugSchema = exports.publisherSlugSchema = exports.sha256DigestSchema = exports.inferenceHttpsUrlSchema = exports.inferenceDateSchema = exports.inferenceTimestampSchema = exports.inferenceEnvironmentSchema = exports.idempotencyKeySchema = exports.generationIdSchema = exports.requestIdSchema = exports.oxyCredentialIdSchema = exports.oxyApplicationIdSchema = exports.delegatedUserIdSchema = exports.oxyAccountIdSchema = exports.INFERENCE_CONTRACT_VERSION = exports.transparencyCheckpointListSchema = exports.transparencyInclusionProofSchema = exports.transparencyCheckpointSchema = exports.transparencyAnchorSchema = exports.transparencyCheckpointSignatureSchema = exports.identityLinkCompleteRequestSchema = exports.identityLinkProofRequestSchema = exports.identityLinkStateSchema = exports.identityLinkCreateResponseSchema = exports.parseIdentityLinkQrPayload = exports.buildIdentityLinkQrPayload = exports.identityLinkIdSchema = exports.IDENTITY_LINK_QR_PREFIX = exports.IDENTITY_LINK_STATUSES = exports.totpBackupCodesResponseSchema = exports.totpReauthRequestSchema = exports.totpConfirmRequestSchema = exports.totpEnrollResponseSchema = exports.signInMethodsSchema = void 0;
35
+ exports.authorizedRouteSchema = exports.routingPolicyReferenceSchema = exports.routingPolicySchema = exports.routingFallbackPolicySchema = exports.routingPolicyScopeSchema = exports.routingTargetSchema = exports.modelCatalogueEntrySchema = exports.catalogueServingProviderSummarySchema = exports.cataloguePublisherSummarySchema = exports.routingProfileSchema = exports.routingProfileCandidateSchema = exports.modelDeploymentSchema = exports.inferenceProviderSchema = exports.modelRevisionSchema = exports.catalogueModelSchema = exports.modelPublisherSchema = exports.modelSafetyMetadataSchema = exports.modelEvaluationResultSchema = exports.modelDeprecationSchema = exports.commercialPermissionSchema = exports.availabilityScopeSchema = exports.inferenceDataPolicySchema = exports.modelProvenanceSchema = exports.modelLicenseSchema = exports.modelCapabilitiesSchema = exports.reasoningEffortSchema = exports.inferenceModalitySchema = exports.priceSnapshotSchema = exports.priceVersionSchema = exports.priceVersionStatusSchema = exports.embeddingResponseSchema = exports.embeddingFailureSchema = exports.embeddingSuccessSchema = exports.embeddingUsageSchema = exports.embeddingVectorSchema = exports.inferenceErrorSchema = exports.providerErrorPassthroughSchema = exports.safeErrorTextSchema = exports.upstreamErrorCategorySchema = exports.inferenceErrorCodeSchema = exports.NON_RETRYABLE_INFERENCE_ERROR_CODES = exports.INFERENCE_ERROR_CODES = exports.inferenceAttributionSchema = exports.authenticatedPrincipalSchema = exports.billingPrincipalSchema = exports.inferenceScopeSchema = exports.INFERENCE_SCOPES = exports.unitPriceSchema = exports.usageQuantitySchema = exports.usageSourceSchema = void 0;
36
+ exports.usageRefundSchema = exports.usageRefundReasonSchema = exports.usageRefundSubjectSchema = exports.usageReceiptSchema = exports.normalizedUsageReportSchema = exports.inferenceRequestOutcomeSchema = exports.usageReservationSchema = exports.usageReservationStatusSchema = exports.usageReservationRequestSchema = exports.inferenceStreamEventSchema = exports.inferenceStreamDoneEventSchema = exports.inferenceFinishReasonSchema = exports.inferenceStreamErrorEventSchema = exports.inferenceStreamRouteSwitchEventSchema = exports.inferenceRouteSwitchReasonSchema = exports.inferenceRouteSwitchDetailSchema = exports.inferenceStreamUsageEventSchema = exports.inferenceStreamToolCallEventSchema = exports.inferenceStreamAudioEventSchema = exports.MAX_INFERENCE_AUDIO_BYTES = exports.inferenceAudioMediaTypeSchema = exports.inferenceStreamDeltaEventSchema = exports.inferenceStreamStartEventSchema = exports.inferenceSpeechParametersSchema = exports.inferenceRequestSchema = exports.clientRequestMetadataSchema = exports.responseFormatSchema = exports.toolChoiceSchema = exports.toolDefinitionSchema = exports.inferenceReasoningSchema = exports.samplingParametersSchema = exports.inferenceInputSchema = exports.inferenceMessageSchema = exports.inferenceMessageRoleSchema = exports.inferenceToolCallSchema = exports.inferenceContentPartSchema = exports.inferenceContentSourceSchema = exports.modelDocumentationSchema = exports.modelReleaseIngestionResultSchema = exports.modelReleaseIngestionRequestSchema = exports.modelLineDeclarationSchema = exports.modelGpaiDocumentationSchema = exports.modelDownstreamDocumentationSchema = exports.SYSTEMIC_RISK_COMPUTE_THRESHOLD_FLOPS = exports.trainingComputeFlopsSchema = exports.modelSystemicRiskTierSchema = exports.modelDistributionMethodSchema = exports.aliaModelReleaseManifestSchema = exports.aliaReleaseSignatureSchema = exports.aliaReleaseArtifactSchema = void 0;
37
+ exports.reconciliationRunSchema = exports.reconciliationDiscrepancySchema = exports.reconciliationRunStatusSchema = exports.RECONCILIATION_RUN_STATUSES = exports.reconciliationDiscrepancyKindSchema = exports.RECONCILIATION_DISCREPANCY_KINDS = exports.autoRechargeAttemptSchema = exports.autoRechargeStatusSchema = exports.AUTO_RECHARGE_STATUSES = exports.externalPaymentSchema = exports.externalPaymentKindSchema = exports.EXTERNAL_PAYMENT_KINDS = exports.externalPaymentProviderSchema = exports.EXTERNAL_PAYMENT_PROVIDERS = exports.billingInvoiceSchema = exports.billingInvoiceStatusSchema = exports.BILLING_INVOICE_STATUSES = exports.accountBillingStateSchema = exports.billingProfileSchema = exports.autoRechargeSchema = exports.billingProfileStatusSchema = exports.BILLING_PROFILE_STATUSES = exports.billingModeSchema = exports.BILLING_MODES = exports.providerConnectionSchema = exports.providerConnectionStatusSchema = exports.providerConnectionValidationSchema = exports.providerCredentialCustodyStateSchema = exports.providerCredentialValidationDeploymentSchema = exports.providerCredentialValidationOperationSchema = exports.kaanaCredentialValidationOutcomeSchema = exports.kaanaCredentialValidationFailureCodeSchema = exports.kaanaCredentialValidationOutcomeStateSchema = exports.kaanaCredentialValidationTaskSchema = exports.kaanaCredentialOutcomeSchema = exports.kaanaCredentialConflictOutcomeSchema = exports.kaanaCredentialAppliedOutcomeSchema = exports.kaanaCredentialOutcomeRequestSchema = exports.kaanaCredentialRevokeOutcomeRequestSchema = exports.kaanaCredentialRotateOutcomeRequestSchema = exports.kaanaCredentialCreateOutcomeRequestSchema = exports.kaanaCredentialMutationSchema = exports.kaanaCredentialRevokeMutationSchema = exports.kaanaCredentialRotateMutationSchema = exports.kaanaCredentialCreateMutationSchema = exports.kaanaCredentialIdentitySchema = exports.kaanaCredentialOperationActionSchema = exports.kaanaCredentialOperationIdSchema = exports.kaanaCredentialHandleSchema = exports.providerConnectionScopeSchema = void 0;
38
+ exports.inboxInferenceStreamEventSchema = exports.inboxThreadSummaryResponseSchema = exports.inboxSmartRepliesResponseSchema = exports.inboxNaturalSearchResponseSchema = exports.inboxInferenceTextResponseSchema = exports.inboxMessageInferenceParamsSchema = exports.inboxNaturalSearchRequestSchema = exports.inboxDailyBriefRequestSchema = exports.inboxComposeRequestSchema = exports.emailAgentContextSchema = exports.emailContextMessageSchema = exports.emailContextMailboxSchema = exports.emailContextAddressSchema = exports.normalizedAppEventSchema = exports.catalogRegistrationSchema = exports.appCapabilityCatalogSchema = exports.catalogEventSchema = exports.catalogToolSchema = exports.auditEventSchema = exports.auditResultSchema = exports.policyDecisionSchema = exports.capabilityTicketClaimsSchema = exports.automationDefinitionSchema = exports.automationDataFlowSchema = exports.automationActorSelectionSchema = exports.automationTriggerSchema = exports.delegationGrantSchema = exports.capabilityCoordinatorSchema = exports.executionAuthorizationRefSchema = exports.capabilityCatalogBindingSchema = exports.grantLimitSchema = exports.toolGrantOverrideSchema = exports.resourceRefSchema = exports.actorRefSchema = exports.capabilityPackageSchema = exports.autonomyLevelSchema = exports.CAPABILITY_PACKAGES = exports.AUTONOMY_LEVELS = exports.productEntitlementSchema = exports.costCenterSpendSchema = exports.costCenterSchema = exports.costCenterStatusSchema = exports.COST_CENTER_STATUSES = exports.payAsYouGoEntitlementSchema = exports.productPlanSchema = exports.planAllowanceSchema = exports.LIVE_PRODUCT_PLAN_STATUSES = exports.productPlanStatusSchema = exports.PRODUCT_PLAN_STATUSES = exports.reconciliationReportSchema = void 0;
39
39
  var accountGraph_1 = require("./accountGraph");
40
40
  Object.defineProperty(exports, "ACCOUNT_KINDS", { enumerable: true, get: function () { return accountGraph_1.ACCOUNT_KINDS; } });
41
41
  Object.defineProperty(exports, "accountKindSchema", { enumerable: true, get: function () { return accountGraph_1.accountKindSchema; } });
@@ -173,14 +173,12 @@ Object.defineProperty(exports, "REPUTATION_CATEGORIES", { enumerable: true, get:
173
173
  Object.defineProperty(exports, "REPUTATION_TRANSACTION_STATUSES", { enumerable: true, get: function () { return reputation_1.REPUTATION_TRANSACTION_STATUSES; } });
174
174
  Object.defineProperty(exports, "TRUST_TIERS", { enumerable: true, get: function () { return reputation_1.TRUST_TIERS; } });
175
175
  Object.defineProperty(exports, "REPUTATION_TARGET_ENTITY_TYPES", { enumerable: true, get: function () { return reputation_1.REPUTATION_TARGET_ENTITY_TYPES; } });
176
- Object.defineProperty(exports, "REPUTATION_DISPUTE_STATUSES", { enumerable: true, get: function () { return reputation_1.REPUTATION_DISPUTE_STATUSES; } });
177
176
  Object.defineProperty(exports, "REPUTATION_INFLUENCE_CONTEXTS", { enumerable: true, get: function () { return reputation_1.REPUTATION_INFLUENCE_CONTEXTS; } });
178
177
  // Schemas — closed value sets
179
178
  Object.defineProperty(exports, "reputationCategorySchema", { enumerable: true, get: function () { return reputation_1.reputationCategorySchema; } });
180
179
  Object.defineProperty(exports, "reputationTransactionStatusSchema", { enumerable: true, get: function () { return reputation_1.reputationTransactionStatusSchema; } });
181
180
  Object.defineProperty(exports, "trustTierSchema", { enumerable: true, get: function () { return reputation_1.trustTierSchema; } });
182
181
  Object.defineProperty(exports, "reputationTargetEntityTypeSchema", { enumerable: true, get: function () { return reputation_1.reputationTargetEntityTypeSchema; } });
183
- Object.defineProperty(exports, "reputationDisputeStatusSchema", { enumerable: true, get: function () { return reputation_1.reputationDisputeStatusSchema; } });
184
182
  Object.defineProperty(exports, "reputationInfluenceContextSchema", { enumerable: true, get: function () { return reputation_1.reputationInfluenceContextSchema; } });
185
183
  // Schemas — responses
186
184
  Object.defineProperty(exports, "reputationTransactionSchema", { enumerable: true, get: function () { return reputation_1.reputationTransactionSchema; } });
@@ -189,18 +187,13 @@ Object.defineProperty(exports, "reputationInfluenceSchema", { enumerable: true,
189
187
  Object.defineProperty(exports, "reputationReliabilitySchema", { enumerable: true, get: function () { return reputation_1.reputationReliabilitySchema; } });
190
188
  Object.defineProperty(exports, "reputationBalanceSummarySchema", { enumerable: true, get: function () { return reputation_1.reputationBalanceSummarySchema; } });
191
189
  Object.defineProperty(exports, "reputationBalanceSchema", { enumerable: true, get: function () { return reputation_1.reputationBalanceSchema; } });
192
- Object.defineProperty(exports, "reputationDisputeSchema", { enumerable: true, get: function () { return reputation_1.reputationDisputeSchema; } });
193
190
  Object.defineProperty(exports, "reputationRuleSchema", { enumerable: true, get: function () { return reputation_1.reputationRuleSchema; } });
191
+ Object.defineProperty(exports, "reputationRulesResponseSchema", { enumerable: true, get: function () { return reputation_1.reputationRulesResponseSchema; } });
194
192
  Object.defineProperty(exports, "reputationLeaderboardUserSchema", { enumerable: true, get: function () { return reputation_1.reputationLeaderboardUserSchema; } });
195
193
  Object.defineProperty(exports, "reputationLeaderboardEntrySchema", { enumerable: true, get: function () { return reputation_1.reputationLeaderboardEntrySchema; } });
196
194
  Object.defineProperty(exports, "reputationInfluenceResultSchema", { enumerable: true, get: function () { return reputation_1.reputationInfluenceResultSchema; } });
197
- Object.defineProperty(exports, "reverseReputationTransactionResultSchema", { enumerable: true, get: function () { return reputation_1.reverseReputationTransactionResultSchema; } });
198
195
  // Schemas — request bodies
199
196
  Object.defineProperty(exports, "awardReputationSchema", { enumerable: true, get: function () { return reputation_1.awardReputationSchema; } });
200
- Object.defineProperty(exports, "createReputationDisputeSchema", { enumerable: true, get: function () { return reputation_1.createReputationDisputeSchema; } });
201
- Object.defineProperty(exports, "resolveReputationDisputeSchema", { enumerable: true, get: function () { return reputation_1.resolveReputationDisputeSchema; } });
202
- Object.defineProperty(exports, "upsertReputationRuleSchema", { enumerable: true, get: function () { return reputation_1.upsertReputationRuleSchema; } });
203
- Object.defineProperty(exports, "reverseReputationTransactionSchema", { enumerable: true, get: function () { return reputation_1.reverseReputationTransactionSchema; } });
204
197
  // Narrows the two balance views apart at runtime.
205
198
  Object.defineProperty(exports, "isFullReputationBalance", { enumerable: true, get: function () { return reputation_1.isFullReputationBalance; } });
206
199
  var moderationReputation_1 = require("./moderationReputation");
@@ -265,6 +258,12 @@ Object.defineProperty(exports, "deviceTokenMintResponseSchema", { enumerable: tr
265
258
  Object.defineProperty(exports, "deviceBackgroundCredentialResponseSchema", { enumerable: true, get: function () { return deviceSession_1.deviceBackgroundCredentialResponseSchema; } });
266
259
  Object.defineProperty(exports, "deviceBackgroundTokenRequestSchema", { enumerable: true, get: function () { return deviceSession_1.deviceBackgroundTokenRequestSchema; } });
267
260
  Object.defineProperty(exports, "deviceBackgroundTokenResponseSchema", { enumerable: true, get: function () { return deviceSession_1.deviceBackgroundTokenResponseSchema; } });
261
+ Object.defineProperty(exports, "deviceProofSchema", { enumerable: true, get: function () { return deviceSession_1.deviceProofSchema; } });
262
+ Object.defineProperty(exports, "deviceRegisterResponseSchema", { enumerable: true, get: function () { return deviceSession_1.deviceRegisterResponseSchema; } });
263
+ Object.defineProperty(exports, "deviceJoinCodeRequestSchema", { enumerable: true, get: function () { return deviceSession_1.deviceJoinCodeRequestSchema; } });
264
+ Object.defineProperty(exports, "deviceJoinCodeResponseSchema", { enumerable: true, get: function () { return deviceSession_1.deviceJoinCodeResponseSchema; } });
265
+ Object.defineProperty(exports, "deviceJoinRequestSchema", { enumerable: true, get: function () { return deviceSession_1.deviceJoinRequestSchema; } });
266
+ Object.defineProperty(exports, "deviceJoinResponseSchema", { enumerable: true, get: function () { return deviceSession_1.deviceJoinResponseSchema; } });
268
267
  Object.defineProperty(exports, "SESSION_ACCOUNTS_CHANGED_EVENT", { enumerable: true, get: function () { return deviceSession_1.SESSION_ACCOUNTS_CHANGED_EVENT; } });
269
268
  Object.defineProperty(exports, "sessionAccountsChangedReasonSchema", { enumerable: true, get: function () { return deviceSession_1.sessionAccountsChangedReasonSchema; } });
270
269
  Object.defineProperty(exports, "sessionAccountsChangedEventSchema", { enumerable: true, get: function () { return deviceSession_1.sessionAccountsChangedEventSchema; } });
@@ -346,16 +345,8 @@ Object.defineProperty(exports, "rollbackRequestSchema", { enumerable: true, get:
346
345
  Object.defineProperty(exports, "rollbackToEmbeddedRequestSchema", { enumerable: true, get: function () { return updates_1.rollbackToEmbeddedRequestSchema; } });
347
346
  Object.defineProperty(exports, "promoteRequestSchema", { enumerable: true, get: function () { return updates_1.promoteRequestSchema; } });
348
347
  Object.defineProperty(exports, "updateRolloutPatchSchema", { enumerable: true, get: function () { return updates_1.updateRolloutPatchSchema; } });
349
- var webauthn_1 = require("./webauthn");
350
- // Schemas
351
- Object.defineProperty(exports, "webauthnRegisterOptionsRequestSchema", { enumerable: true, get: function () { return webauthn_1.webauthnRegisterOptionsRequestSchema; } });
352
- Object.defineProperty(exports, "webauthnLoginOptionsRequestSchema", { enumerable: true, get: function () { return webauthn_1.webauthnLoginOptionsRequestSchema; } });
353
- Object.defineProperty(exports, "webauthnRegisterVerifyRequestSchema", { enumerable: true, get: function () { return webauthn_1.webauthnRegisterVerifyRequestSchema; } });
354
- Object.defineProperty(exports, "webauthnLoginVerifyRequestSchema", { enumerable: true, get: function () { return webauthn_1.webauthnLoginVerifyRequestSchema; } });
355
- Object.defineProperty(exports, "webauthnCredentialIdSchema", { enumerable: true, get: function () { return webauthn_1.webauthnCredentialIdSchema; } });
356
- Object.defineProperty(exports, "webauthnAssertionResponseSchema", { enumerable: true, get: function () { return webauthn_1.webauthnAssertionResponseSchema; } });
357
348
  var accountEmail_1 = require("./accountEmail");
358
- // Recovery email of a passkey account (ADR 0029 D3)
349
+ // Email codes and tickets for sign-up and re-verification
359
350
  Object.defineProperty(exports, "EMAIL_VERIFICATION_PURPOSES", { enumerable: true, get: function () { return accountEmail_1.EMAIL_VERIFICATION_PURPOSES; } });
360
351
  Object.defineProperty(exports, "EMAIL_CODE_LENGTH", { enumerable: true, get: function () { return accountEmail_1.EMAIL_CODE_LENGTH; } });
361
352
  Object.defineProperty(exports, "EMAIL_CODE_TTL_MS", { enumerable: true, get: function () { return accountEmail_1.EMAIL_CODE_TTL_MS; } });
@@ -368,8 +359,49 @@ Object.defineProperty(exports, "emailVerificationStartRequestSchema", { enumerab
368
359
  Object.defineProperty(exports, "emailVerificationStartResponseSchema", { enumerable: true, get: function () { return accountEmail_1.emailVerificationStartResponseSchema; } });
369
360
  Object.defineProperty(exports, "emailVerificationConfirmRequestSchema", { enumerable: true, get: function () { return accountEmail_1.emailVerificationConfirmRequestSchema; } });
370
361
  Object.defineProperty(exports, "emailVerificationConfirmResponseSchema", { enumerable: true, get: function () { return accountEmail_1.emailVerificationConfirmResponseSchema; } });
362
+ var signIn_1 = require("./signIn");
363
+ // Email code/link, password and authenticator sign-in
364
+ Object.defineProperty(exports, "EMAIL_SIGNIN_LINK_TTL_MS", { enumerable: true, get: function () { return signIn_1.EMAIL_SIGNIN_LINK_TTL_MS; } });
365
+ Object.defineProperty(exports, "SIGNIN_SECOND_FACTOR_TTL_MS", { enumerable: true, get: function () { return signIn_1.SIGNIN_SECOND_FACTOR_TTL_MS; } });
366
+ Object.defineProperty(exports, "SIGNIN_SECOND_FACTOR_MAX_ATTEMPTS", { enumerable: true, get: function () { return signIn_1.SIGNIN_SECOND_FACTOR_MAX_ATTEMPTS; } });
367
+ Object.defineProperty(exports, "PASSWORD_MIN_LENGTH", { enumerable: true, get: function () { return signIn_1.PASSWORD_MIN_LENGTH; } });
368
+ Object.defineProperty(exports, "PASSWORD_MAX_LENGTH", { enumerable: true, get: function () { return signIn_1.PASSWORD_MAX_LENGTH; } });
369
+ Object.defineProperty(exports, "TOTP_DIGITS", { enumerable: true, get: function () { return signIn_1.TOTP_DIGITS; } });
370
+ Object.defineProperty(exports, "TOTP_PERIOD_SECONDS", { enumerable: true, get: function () { return signIn_1.TOTP_PERIOD_SECONDS; } });
371
+ Object.defineProperty(exports, "TOTP_BACKUP_CODE_COUNT", { enumerable: true, get: function () { return signIn_1.TOTP_BACKUP_CODE_COUNT; } });
372
+ Object.defineProperty(exports, "SIGN_IN_ERROR_CODES", { enumerable: true, get: function () { return signIn_1.SIGN_IN_ERROR_CODES; } });
373
+ Object.defineProperty(exports, "signInIdentifierSchema", { enumerable: true, get: function () { return signIn_1.signInIdentifierSchema; } });
374
+ Object.defineProperty(exports, "passwordInputSchema", { enumerable: true, get: function () { return signIn_1.passwordInputSchema; } });
375
+ Object.defineProperty(exports, "newPasswordSchema", { enumerable: true, get: function () { return signIn_1.newPasswordSchema; } });
376
+ Object.defineProperty(exports, "secondFactorCodeSchema", { enumerable: true, get: function () { return signIn_1.secondFactorCodeSchema; } });
377
+ Object.defineProperty(exports, "emailSignInStartRequestSchema", { enumerable: true, get: function () { return signIn_1.emailSignInStartRequestSchema; } });
378
+ Object.defineProperty(exports, "emailSignInStartResponseSchema", { enumerable: true, get: function () { return signIn_1.emailSignInStartResponseSchema; } });
379
+ Object.defineProperty(exports, "emailSignInConfirmRequestSchema", { enumerable: true, get: function () { return signIn_1.emailSignInConfirmRequestSchema; } });
380
+ Object.defineProperty(exports, "emailSignInCodeSchema", { enumerable: true, get: function () { return signIn_1.emailSignInCodeSchema; } });
381
+ Object.defineProperty(exports, "normalizeEmailSignInCode", { enumerable: true, get: function () { return signIn_1.normalizeEmailSignInCode; } });
382
+ Object.defineProperty(exports, "EMAIL_SIGNIN_LONG_CODE_ALPHABET", { enumerable: true, get: function () { return signIn_1.EMAIL_SIGNIN_LONG_CODE_ALPHABET; } });
383
+ Object.defineProperty(exports, "EMAIL_SIGNIN_LONG_CODE_LENGTH", { enumerable: true, get: function () { return signIn_1.EMAIL_SIGNIN_LONG_CODE_LENGTH; } });
384
+ Object.defineProperty(exports, "emailSignInCollectRequestSchema", { enumerable: true, get: function () { return signIn_1.emailSignInCollectRequestSchema; } });
385
+ Object.defineProperty(exports, "emailSignInLinkRequestSchema", { enumerable: true, get: function () { return signIn_1.emailSignInLinkRequestSchema; } });
386
+ Object.defineProperty(exports, "emailSignInLinkResponseSchema", { enumerable: true, get: function () { return signIn_1.emailSignInLinkResponseSchema; } });
387
+ Object.defineProperty(exports, "emailSignInPendingSchema", { enumerable: true, get: function () { return signIn_1.emailSignInPendingSchema; } });
388
+ Object.defineProperty(exports, "passwordSignInRequestSchema", { enumerable: true, get: function () { return signIn_1.passwordSignInRequestSchema; } });
389
+ Object.defineProperty(exports, "secondFactorSignInRequestSchema", { enumerable: true, get: function () { return signIn_1.secondFactorSignInRequestSchema; } });
390
+ Object.defineProperty(exports, "secondFactorRequiredSchema", { enumerable: true, get: function () { return signIn_1.secondFactorRequiredSchema; } });
391
+ Object.defineProperty(exports, "signUpRequestSchema", { enumerable: true, get: function () { return signIn_1.signUpRequestSchema; } });
392
+ Object.defineProperty(exports, "isSecondFactorRequired", { enumerable: true, get: function () { return signIn_1.isSecondFactorRequired; } });
393
+ Object.defineProperty(exports, "reauthProofSchema", { enumerable: true, get: function () { return signIn_1.reauthProofSchema; } });
394
+ Object.defineProperty(exports, "emailReauthProofSchema", { enumerable: true, get: function () { return signIn_1.emailReauthProofSchema; } });
395
+ Object.defineProperty(exports, "REAUTH_ACTIONS", { enumerable: true, get: function () { return signIn_1.REAUTH_ACTIONS; } });
396
+ Object.defineProperty(exports, "reauthEmailStartRequestSchema", { enumerable: true, get: function () { return signIn_1.reauthEmailStartRequestSchema; } });
397
+ Object.defineProperty(exports, "passwordSetRequestSchema", { enumerable: true, get: function () { return signIn_1.passwordSetRequestSchema; } });
398
+ Object.defineProperty(exports, "signInMethodsSchema", { enumerable: true, get: function () { return signIn_1.signInMethodsSchema; } });
399
+ Object.defineProperty(exports, "totpEnrollResponseSchema", { enumerable: true, get: function () { return signIn_1.totpEnrollResponseSchema; } });
400
+ Object.defineProperty(exports, "totpConfirmRequestSchema", { enumerable: true, get: function () { return signIn_1.totpConfirmRequestSchema; } });
401
+ Object.defineProperty(exports, "totpReauthRequestSchema", { enumerable: true, get: function () { return signIn_1.totpReauthRequestSchema; } });
402
+ Object.defineProperty(exports, "totpBackupCodesResponseSchema", { enumerable: true, get: function () { return signIn_1.totpBackupCodesResponseSchema; } });
371
403
  var identityLink_1 = require("./identityLink");
372
- // Linking Commons to a passkey account (ADR 0029 D3)
404
+ // Linking Commons to an account without a key (ADR 0029 D3)
373
405
  Object.defineProperty(exports, "IDENTITY_LINK_STATUSES", { enumerable: true, get: function () { return identityLink_1.IDENTITY_LINK_STATUSES; } });
374
406
  Object.defineProperty(exports, "IDENTITY_LINK_QR_PREFIX", { enumerable: true, get: function () { return identityLink_1.IDENTITY_LINK_QR_PREFIX; } });
375
407
  Object.defineProperty(exports, "identityLinkIdSchema", { enumerable: true, get: function () { return identityLink_1.identityLinkIdSchema; } });
@@ -378,7 +410,6 @@ Object.defineProperty(exports, "parseIdentityLinkQrPayload", { enumerable: true,
378
410
  Object.defineProperty(exports, "identityLinkCreateResponseSchema", { enumerable: true, get: function () { return identityLink_1.identityLinkCreateResponseSchema; } });
379
411
  Object.defineProperty(exports, "identityLinkStateSchema", { enumerable: true, get: function () { return identityLink_1.identityLinkStateSchema; } });
380
412
  Object.defineProperty(exports, "identityLinkProofRequestSchema", { enumerable: true, get: function () { return identityLink_1.identityLinkProofRequestSchema; } });
381
- Object.defineProperty(exports, "identityLinkOptionsRequestSchema", { enumerable: true, get: function () { return identityLink_1.identityLinkOptionsRequestSchema; } });
382
413
  Object.defineProperty(exports, "identityLinkCompleteRequestSchema", { enumerable: true, get: function () { return identityLink_1.identityLinkCompleteRequestSchema; } });
383
414
  var transparency_1 = require("./transparency");
384
415
  // Schemas — transparency log (checkpoints + inclusion proofs)