@cortexkit/antigravity-auth-core 2.2.1 → 3.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.
- package/README.md +24 -2
- package/dist/abort-forwarding.d.ts +3 -0
- package/dist/abort-forwarding.d.ts.map +1 -0
- package/dist/abort-forwarding.js +19 -0
- package/dist/abort-forwarding.js.map +1 -0
- package/dist/account-identity.d.ts +52 -0
- package/dist/account-identity.d.ts.map +1 -0
- package/dist/account-identity.js +66 -0
- package/dist/account-identity.js.map +1 -0
- package/dist/account-manager.d.ts +228 -43
- package/dist/account-manager.d.ts.map +1 -1
- package/dist/account-manager.js +942 -903
- package/dist/account-manager.js.map +1 -1
- package/dist/account-migration.d.ts +309 -0
- package/dist/account-migration.d.ts.map +1 -0
- package/dist/account-migration.js +2282 -0
- package/dist/account-migration.js.map +1 -0
- package/dist/account-repository-codecs.d.ts +82 -0
- package/dist/account-repository-codecs.d.ts.map +1 -0
- package/dist/account-repository-codecs.js +609 -0
- package/dist/account-repository-codecs.js.map +1 -0
- package/dist/account-repository-types.d.ts +831 -0
- package/dist/account-repository-types.d.ts.map +1 -0
- package/dist/account-repository-types.js +137 -0
- package/dist/account-repository-types.js.map +1 -0
- package/dist/account-repository.d.ts +442 -0
- package/dist/account-repository.d.ts.map +1 -0
- package/dist/account-repository.js +2253 -0
- package/dist/account-repository.js.map +1 -0
- package/dist/account-selector.d.ts +470 -0
- package/dist/account-selector.d.ts.map +1 -0
- package/dist/account-selector.js +1383 -0
- package/dist/account-selector.js.map +1 -0
- package/dist/account-storage.d.ts.map +1 -1
- package/dist/account-storage.js +5 -0
- package/dist/account-storage.js.map +1 -1
- package/dist/agy-transport.d.ts.map +1 -1
- package/dist/agy-transport.js +21 -35
- package/dist/agy-transport.js.map +1 -1
- package/dist/antigravity-command-menu.d.ts +171 -0
- package/dist/antigravity-command-menu.d.ts.map +1 -0
- package/dist/antigravity-command-menu.js +523 -0
- package/dist/antigravity-command-menu.js.map +1 -0
- package/dist/atomic-write.d.ts +18 -1
- package/dist/atomic-write.d.ts.map +1 -1
- package/dist/atomic-write.js +15 -3
- package/dist/atomic-write.js.map +1 -1
- package/dist/common-auth-embedded/NOTICE.txt +21 -0
- package/dist/common-auth-embedded/auth-menu/accounts.d.ts +97 -0
- package/dist/common-auth-embedded/auth-menu/accounts.js +387 -0
- package/dist/common-auth-embedded/auth-menu/ansi.d.ts +26 -0
- package/dist/common-auth-embedded/auth-menu/ansi.js +98 -0
- package/dist/common-auth-embedded/auth-menu/confirm.d.ts +7 -0
- package/dist/common-auth-embedded/auth-menu/confirm.js +21 -0
- package/dist/common-auth-embedded/auth-menu/doctor.d.ts +52 -0
- package/dist/common-auth-embedded/auth-menu/doctor.js +81 -0
- package/dist/common-auth-embedded/auth-menu/index.d.ts +17 -0
- package/dist/common-auth-embedded/auth-menu/index.js +12 -0
- package/dist/common-auth-embedded/auth-menu/login.d.ts +55 -0
- package/dist/common-auth-embedded/auth-menu/login.js +83 -0
- package/dist/common-auth-embedded/auth-menu/menu.d.ts +59 -0
- package/dist/common-auth-embedded/auth-menu/menu.js +73 -0
- package/dist/common-auth-embedded/auth-menu/opencode-v1.d.ts +49 -0
- package/dist/common-auth-embedded/auth-menu/opencode-v1.js +47 -0
- package/dist/common-auth-embedded/auth-menu/select.d.ts +21 -0
- package/dist/common-auth-embedded/auth-menu/select.js +159 -0
- package/dist/common-auth-embedded/auth-menu/terminal.d.ts +43 -0
- package/dist/common-auth-embedded/auth-menu/terminal.js +19 -0
- package/dist/common-auth-embedded/claustrum/consumer.d.ts +102 -0
- package/dist/common-auth-embedded/claustrum/consumer.js +298 -0
- package/dist/common-auth-embedded/claustrum/custody.d.ts +175 -0
- package/dist/common-auth-embedded/claustrum/custody.js +354 -0
- package/dist/common-auth-embedded/claustrum/enrollment.d.ts +158 -0
- package/dist/common-auth-embedded/claustrum/enrollment.js +759 -0
- package/dist/common-auth-embedded/claustrum/errors.d.ts +16 -0
- package/dist/common-auth-embedded/claustrum/errors.js +8 -0
- package/dist/common-auth-embedded/claustrum/host-slot.d.ts +39 -0
- package/dist/common-auth-embedded/claustrum/host-slot.js +72 -0
- package/dist/common-auth-embedded/claustrum/index.d.ts +18 -0
- package/dist/common-auth-embedded/claustrum/index.js +22 -0
- package/dist/common-auth-embedded/claustrum/interlock.d.ts +27 -0
- package/dist/common-auth-embedded/claustrum/interlock.js +29 -0
- package/dist/common-auth-embedded/claustrum/roster.d.ts +208 -0
- package/dist/common-auth-embedded/claustrum/roster.js +536 -0
- package/dist/common-auth-embedded/commands/builtins.d.ts +71 -0
- package/dist/common-auth-embedded/commands/builtins.js +534 -0
- package/dist/common-auth-embedded/commands/index.d.ts +10 -0
- package/dist/common-auth-embedded/commands/index.js +5 -0
- package/dist/common-auth-embedded/commands/menu.d.ts +61 -0
- package/dist/common-auth-embedded/commands/menu.js +300 -0
- package/dist/common-auth-embedded/commands/model.d.ts +238 -0
- package/dist/common-auth-embedded/commands/model.js +16 -0
- package/dist/common-auth-embedded/commands/pi.d.ts +23 -0
- package/dist/common-auth-embedded/commands/pi.js +206 -0
- package/dist/common-auth-embedded/commands/seam.d.ts +72 -0
- package/dist/common-auth-embedded/commands/seam.js +301 -0
- package/dist/common-auth-embedded/fs/atomic-write.d.ts +20 -0
- package/dist/common-auth-embedded/fs/atomic-write.js +80 -0
- package/dist/common-auth-embedded/fs/index.d.ts +7 -0
- package/dist/common-auth-embedded/fs/index.js +6 -0
- package/dist/common-auth-embedded/fs/lock-constants.d.ts +14 -0
- package/dist/common-auth-embedded/fs/lock-constants.js +14 -0
- package/dist/common-auth-embedded/fs/refresh-file-lock.d.ts +33 -0
- package/dist/common-auth-embedded/fs/refresh-file-lock.js +501 -0
- package/dist/common-auth-embedded/fs/with-lock.d.ts +33 -0
- package/dist/common-auth-embedded/fs/with-lock.js +48 -0
- package/dist/common-auth-embedded/logger/capture-sink.d.ts +14 -0
- package/dist/common-auth-embedded/logger/capture-sink.js +13 -0
- package/dist/common-auth-embedded/logger/engine.d.ts +100 -0
- package/dist/common-auth-embedded/logger/engine.js +246 -0
- package/dist/common-auth-embedded/logger/index.d.ts +6 -0
- package/dist/common-auth-embedded/logger/index.js +3 -0
- package/dist/common-auth-embedded/logger/redact.d.ts +11 -0
- package/dist/common-auth-embedded/logger/redact.js +83 -0
- package/dist/common-auth-embedded/pi-slot/index.d.ts +3 -0
- package/dist/common-auth-embedded/pi-slot/index.js +2 -0
- package/dist/common-auth-embedded/pi-slot/lock.js +212 -0
- package/dist/common-auth-embedded/pi-slot/slot.d.ts +49 -0
- package/dist/common-auth-embedded/pi-slot/slot.js +383 -0
- package/dist/common-auth-embedded/quota/codec.d.ts +11 -0
- package/dist/common-auth-embedded/quota/codec.js +12 -0
- package/dist/common-auth-embedded/quota/format.d.ts +46 -0
- package/dist/common-auth-embedded/quota/format.js +138 -0
- package/dist/common-auth-embedded/quota/index.d.ts +10 -0
- package/dist/common-auth-embedded/quota/index.js +5 -0
- package/dist/common-auth-embedded/quota/map.d.ts +63 -0
- package/dist/common-auth-embedded/quota/map.js +105 -0
- package/dist/common-auth-embedded/quota/merge.d.ts +48 -0
- package/dist/common-auth-embedded/quota/merge.js +162 -0
- package/dist/common-auth-embedded/quota/projection.d.ts +64 -0
- package/dist/common-auth-embedded/quota/projection.js +134 -0
- package/dist/common-auth-embedded/routing/admission.d.ts +93 -0
- package/dist/common-auth-embedded/routing/admission.js +142 -0
- package/dist/common-auth-embedded/routing/index.d.ts +8 -0
- package/dist/common-auth-embedded/routing/index.js +4 -0
- package/dist/common-auth-embedded/routing/ordered.d.ts +47 -0
- package/dist/common-auth-embedded/routing/ordered.js +58 -0
- package/dist/common-auth-embedded/routing/pins.d.ts +22 -0
- package/dist/common-auth-embedded/routing/pins.js +34 -0
- package/dist/common-auth-embedded/routing/sticky.d.ts +158 -0
- package/dist/common-auth-embedded/routing/sticky.js +339 -0
- package/dist/common-auth-embedded/source-output.json +1090 -0
- package/dist/common-auth-embedded/store/attribution.d.ts +28 -0
- package/dist/common-auth-embedded/store/attribution.js +60 -0
- package/dist/common-auth-embedded/store/errors.d.ts +55 -0
- package/dist/common-auth-embedded/store/errors.js +38 -0
- package/dist/common-auth-embedded/store/hooks.d.ts +12 -0
- package/dist/common-auth-embedded/store/hooks.js +34 -0
- package/dist/common-auth-embedded/store/identity.d.ts +39 -0
- package/dist/common-auth-embedded/store/identity.js +79 -0
- package/dist/common-auth-embedded/store/index.d.ts +21 -0
- package/dist/common-auth-embedded/store/index.js +7 -0
- package/dist/common-auth-embedded/store/mutate.d.ts +189 -0
- package/dist/common-auth-embedded/store/mutate.js +500 -0
- package/dist/common-auth-embedded/store/pool.d.ts +196 -0
- package/dist/common-auth-embedded/store/pool.js +120 -0
- package/dist/common-auth-embedded/store/provider-state.d.ts +131 -0
- package/dist/common-auth-embedded/store/provider-state.js +226 -0
- package/dist/common-auth-embedded/store/publication.d.ts +47 -0
- package/dist/common-auth-embedded/store/publication.js +304 -0
- package/dist/common-auth-embedded/store/pull.d.ts +36 -0
- package/dist/common-auth-embedded/store/pull.js +143 -0
- package/dist/common-auth-embedded/store/refresh-lock.d.ts +63 -0
- package/dist/common-auth-embedded/store/refresh-lock.js +136 -0
- package/dist/common-auth-embedded/store/refresh.d.ts +72 -0
- package/dist/common-auth-embedded/store/refresh.js +225 -0
- package/dist/common-auth-embedded/store/reserved.js +13 -0
- package/dist/common-auth-embedded/store/rows.d.ts +313 -0
- package/dist/common-auth-embedded/store/rows.js +1258 -0
- package/dist/common-auth-embedded/store/runtime.d.ts +36 -0
- package/dist/common-auth-embedded/store/runtime.js +68 -0
- package/dist/common-auth-embedded/store/schema.d.ts +443 -0
- package/dist/common-auth-embedded/store/schema.js +754 -0
- package/dist/common-auth-embedded/store/settings.d.ts +63 -0
- package/dist/common-auth-embedded/store/settings.js +120 -0
- package/dist/common-auth-embedded/store/torn.d.ts +78 -0
- package/dist/common-auth-embedded/store/torn.js +294 -0
- package/dist/common-auth-embedded/util/any-signal.js +42 -0
- package/dist/common-auth-runtime.d.ts +73 -0
- package/dist/common-auth-runtime.d.ts.map +1 -0
- package/dist/common-auth-runtime.js +65 -0
- package/dist/common-auth-runtime.js.map +1 -0
- package/dist/credential-redaction.d.ts +13 -0
- package/dist/credential-redaction.d.ts.map +1 -0
- package/dist/credential-redaction.js +230 -0
- package/dist/credential-redaction.js.map +1 -0
- package/dist/fetch-timeout.d.ts +4 -2
- package/dist/fetch-timeout.d.ts.map +1 -1
- package/dist/fetch-timeout.js +121 -14
- package/dist/fetch-timeout.js.map +1 -1
- package/dist/index.d.ts +16 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +15 -0
- package/dist/index.js.map +1 -1
- package/dist/quota-manager.d.ts.map +1 -1
- package/dist/quota-manager.js +35 -10
- package/dist/quota-manager.js.map +1 -1
- package/dist/quota-presentation.d.ts +10 -0
- package/dist/quota-presentation.d.ts.map +1 -0
- package/dist/quota-presentation.js +60 -0
- package/dist/quota-presentation.js.map +1 -0
- package/dist/quota-types.d.ts +2 -0
- package/dist/quota-types.d.ts.map +1 -1
- package/dist/rotation.d.ts +8 -0
- package/dist/rotation.d.ts.map +1 -1
- package/dist/rotation.js +24 -0
- package/dist/rotation.js.map +1 -1
- package/dist/transform/claude.d.ts +7 -3
- package/dist/transform/claude.d.ts.map +1 -1
- package/dist/transform/claude.js +6 -2
- package/dist/transform/claude.js.map +1 -1
- package/dist/transform/types.d.ts +1 -1
- package/dist/transform/types.d.ts.map +1 -1
- package/dist/vault-account-source.d.ts +183 -0
- package/dist/vault-account-source.d.ts.map +1 -0
- package/dist/vault-account-source.js +296 -0
- package/dist/vault-account-source.js.map +1 -0
- package/dist/vault-enrollment-authority.d.ts +16 -0
- package/dist/vault-enrollment-authority.d.ts.map +1 -0
- package/dist/vault-enrollment-authority.js +19 -0
- package/dist/vault-enrollment-authority.js.map +1 -0
- package/dist/vault-family.d.ts +11 -0
- package/dist/vault-family.d.ts.map +1 -0
- package/dist/vault-family.js +24 -0
- package/dist/vault-family.js.map +1 -0
- package/dist/vault-provider-state.d.ts +162 -0
- package/dist/vault-provider-state.d.ts.map +1 -0
- package/dist/vault-provider-state.js +422 -0
- package/dist/vault-provider-state.js.map +1 -0
- package/package.json +39 -2
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account-repository-types.d.ts","sourceRoot":"","sources":["../src/account-repository-types.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Contract of the Antigravity account repository. The foundation uses the
|
|
3
|
+
* public lease-backed pool store of @cortexkit/common-auth (its `./store`
|
|
4
|
+
* entry). Atomic credential replacement additionally requires a store that
|
|
5
|
+
* exposes the credential-write attribution API described at
|
|
6
|
+
* `AccountRepository.replaceCredential`.
|
|
7
|
+
*
|
|
8
|
+
* The repository replaces whole-file snapshots of `antigravity-accounts.json`
|
|
9
|
+
* with typed operations on individual rows. A row is addressed by a `RowRef`
|
|
10
|
+
* rather than by its position, because positions move under reorder and
|
|
11
|
+
* removal while a ref names one credential of one row: work started for a
|
|
12
|
+
* credential that has since been replaced or removed is refused instead of
|
|
13
|
+
* landing on its successor.
|
|
14
|
+
*
|
|
15
|
+
* Persisted data has four owners:
|
|
16
|
+
* - the store's own roster and credential entries: the bare refresh token,
|
|
17
|
+
* the effective enabled flag and the row order;
|
|
18
|
+
* - provider metadata (`ProviderStateEnvelope`), kept beside the credential
|
|
19
|
+
* in the store's state file. The part of it that describes the signed-in
|
|
20
|
+
* account (see `CREDENTIAL_BOUND_METADATA_FIELDS`) is covered by the
|
|
21
|
+
* store's credential stamp, so a writer that edits it without knowing the
|
|
22
|
+
* stamp makes the value disappear from reads instead of attaching it to
|
|
23
|
+
* the wrong account;
|
|
24
|
+
* - the latest quota reading (`QuotaState`), kept in the row's entry in the
|
|
25
|
+
* store's config file;
|
|
26
|
+
* - account selection (`RoutingSettings`), kept as a plugin settings key in
|
|
27
|
+
* the store's config file.
|
|
28
|
+
*
|
|
29
|
+
* Every shape below that carries `extensions` keeps JSON it does not
|
|
30
|
+
* recognise there, so a file written by a newer build survives a read and
|
|
31
|
+
* rewrite by this one. Optional fields distinguish absent (key missing) from
|
|
32
|
+
* `null`; the codecs never collapse one into the other. Readers treat an
|
|
33
|
+
* optional `null` like absent when they project the data for routing.
|
|
34
|
+
*
|
|
35
|
+
* Credential epochs and identities. The store gives every credential a row
|
|
36
|
+
* holds an epoch number (common-auth `dist/store/attribution.d.ts`,
|
|
37
|
+
* `Attribution`): `add` and `replace` start a new epoch, while refresh and
|
|
38
|
+
* `rotate` keep it. An id that is removed and added again starts past every
|
|
39
|
+
* epoch it held before, in any process. A row without a per-row entry counts
|
|
40
|
+
* as epoch 1. The recorded identity is the account id the provider reported
|
|
41
|
+
* for the credential. Within one epoch it can only go from absent to one
|
|
42
|
+
* value: `recordIdentity`, `rotate`, a re-`add` of the same secret and a
|
|
43
|
+
* refresh all refuse a different identity (`identity-mismatch`, or
|
|
44
|
+
* `identity-contradicted` for a refresh) rather than overwrite it
|
|
45
|
+
* (`dist/store/rows.js` `recordRowIdentity`, `rotateRow`, `addRow`;
|
|
46
|
+
* `dist/store/refresh.d.ts`).
|
|
47
|
+
*
|
|
48
|
+
* Locks. The store takes, in this order and releases in reverse: the row
|
|
49
|
+
* lock `row-<encodeURIComponent(identity ?? id)>` at the state path
|
|
50
|
+
* (`dist/store/runtime.js` `rowLockSpec`), the provider lock (by default
|
|
51
|
+
* `provider-antigravity` at the state path, `dist/store/pool.js`), any extra
|
|
52
|
+
* locks the caller passes, then the `save` locks at the config path and then
|
|
53
|
+
* the state path. A refresh holds the store's `save` locks only while it
|
|
54
|
+
* reads and while it commits, never across the token exchange
|
|
55
|
+
* (`dist/store/refresh.d.ts` `refreshRow`).
|
|
56
|
+
*/
|
|
57
|
+
// ---------------------------------------------------------------------------
|
|
58
|
+
// Store constants
|
|
59
|
+
// ---------------------------------------------------------------------------
|
|
60
|
+
/** Provider name the pool store is opened with; keys its provider-wide lock. */
|
|
61
|
+
export const ACCOUNT_STORE_PROVIDER = 'antigravity';
|
|
62
|
+
/** Schema version written inside `ProviderStateEnvelope`. */
|
|
63
|
+
export const PROVIDER_STATE_SCHEMA_VERSION = 1;
|
|
64
|
+
/** Schema version written inside `QuotaState`. */
|
|
65
|
+
export const QUOTA_STATE_SCHEMA_VERSION = 1;
|
|
66
|
+
/** Schema version written inside `RoutingSettings`. */
|
|
67
|
+
export const ROUTING_SETTINGS_SCHEMA_VERSION = 1;
|
|
68
|
+
/** Settings key holding `RoutingSettings`. */
|
|
69
|
+
export const ROUTING_SETTINGS_KEY = 'antigravityRouting';
|
|
70
|
+
/**
|
|
71
|
+
* Settings key holding the `ManagementRecord` of a migration or a multi-row
|
|
72
|
+
* destructive operation. Ordinary row operations never write it.
|
|
73
|
+
*/
|
|
74
|
+
export const MANAGEMENT_SETTINGS_KEY = 'antigravityManagement';
|
|
75
|
+
/** Lock name, at the config path, guarding `MANAGEMENT_SETTINGS_KEY`. */
|
|
76
|
+
export const MANAGEMENT_LOCK_NAME = 'antigravity-management';
|
|
77
|
+
/**
|
|
78
|
+
* Prefix of the per-account lock passed as a refresh's `providerLock`, in
|
|
79
|
+
* place of the store-wide `provider-antigravity` lock. It must differ from the
|
|
80
|
+
* store's `row-` prefix: the same refresh already holds the row lock, and a
|
|
81
|
+
* provider lock with the same name and path would wait on itself.
|
|
82
|
+
*/
|
|
83
|
+
export const REFRESH_PROVIDER_LOCK_PREFIX = 'agy-refresh-';
|
|
84
|
+
/** Lock name the pre-store writers hold on `antigravity-accounts.json`. */
|
|
85
|
+
export const LEGACY_ACCOUNTS_LOCK_NAME = 'accounts';
|
|
86
|
+
/** Lease of that lock while the migration holds it. */
|
|
87
|
+
export const LEGACY_ACCOUNTS_LOCK_TTL_MS = 10_000;
|
|
88
|
+
/**
|
|
89
|
+
* The per-account lock a refresh of `row` passes as its `providerLock` and
|
|
90
|
+
* holds across the token exchange, so refreshes of different accounts run
|
|
91
|
+
* concurrently while two refreshes of one account stay one at a time. It is
|
|
92
|
+
* keyed like the store's row lock (recorded identity, else local id) and
|
|
93
|
+
* URI-encoded so any identity is a safe lock-file name.
|
|
94
|
+
*/
|
|
95
|
+
export function refreshProviderLock(statePath, row) {
|
|
96
|
+
return {
|
|
97
|
+
path: statePath,
|
|
98
|
+
name: REFRESH_PROVIDER_LOCK_PREFIX + encodeURIComponent(row.identity ?? row.id),
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* The lock the pre-store writers hold on `antigravity-accounts.json`, taken
|
|
103
|
+
* while the migration reads or retires that file. It is released before any
|
|
104
|
+
* store call, so it never sits inside the store's lock order.
|
|
105
|
+
*/
|
|
106
|
+
export function legacyAccountsLock(legacyPath) {
|
|
107
|
+
return {
|
|
108
|
+
path: legacyPath,
|
|
109
|
+
name: LEGACY_ACCOUNTS_LOCK_NAME,
|
|
110
|
+
ttlMs: LEGACY_ACCOUNTS_LOCK_TTL_MS,
|
|
111
|
+
renew: true,
|
|
112
|
+
};
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* The `ProviderMetadata` fields that describe the signed-in account rather
|
|
116
|
+
* than this plugin's use of it. The credential stamp covers exactly these.
|
|
117
|
+
*/
|
|
118
|
+
export const CREDENTIAL_BOUND_METADATA_FIELDS = [
|
|
119
|
+
'email',
|
|
120
|
+
'projectId',
|
|
121
|
+
'managedProjectId',
|
|
122
|
+
'fingerprint',
|
|
123
|
+
'fingerprintHistory',
|
|
124
|
+
'verificationRequired',
|
|
125
|
+
'verificationRequiredAt',
|
|
126
|
+
'verificationRequiredReason',
|
|
127
|
+
'verificationUrl',
|
|
128
|
+
'accountIneligible',
|
|
129
|
+
'accountIneligibleAt',
|
|
130
|
+
'accountIneligibleReason',
|
|
131
|
+
'eligibilityStateUpdatedAt',
|
|
132
|
+
'capturedTierId',
|
|
133
|
+
'capturedPaidTierId',
|
|
134
|
+
'capturedTierAt',
|
|
135
|
+
'capturedTierSchemaVersion',
|
|
136
|
+
];
|
|
137
|
+
//# sourceMappingURL=account-repository-types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account-repository-types.js","sourceRoot":"","sources":["../src/account-repository-types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuDG;AAcH,8EAA8E;AAC9E,kBAAkB;AAClB,8EAA8E;AAE9E,gFAAgF;AAChF,MAAM,CAAC,MAAM,sBAAsB,GAAG,aAAa,CAAA;AAEnD,6DAA6D;AAC7D,MAAM,CAAC,MAAM,6BAA6B,GAAG,CAAC,CAAA;AAC9C,kDAAkD;AAClD,MAAM,CAAC,MAAM,0BAA0B,GAAG,CAAC,CAAA;AAC3C,uDAAuD;AACvD,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,CAAA;AAEhD,8CAA8C;AAC9C,MAAM,CAAC,MAAM,oBAAoB,GAAG,oBAAoB,CAAA;AACxD;;;GAGG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,uBAAuB,CAAA;AAC9D,yEAAyE;AACzE,MAAM,CAAC,MAAM,oBAAoB,GAAG,wBAAwB,CAAA;AAC5D;;;;;GAKG;AACH,MAAM,CAAC,MAAM,4BAA4B,GAAG,cAAc,CAAA;AAC1D,2EAA2E;AAC3E,MAAM,CAAC,MAAM,yBAAyB,GAAG,UAAU,CAAA;AACnD,uDAAuD;AACvD,MAAM,CAAC,MAAM,2BAA2B,GAAG,MAAM,CAAA;AAkCjD;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CACjC,SAAiB,EACjB,GAAoC;IAEpC,OAAO;QACL,IAAI,EAAE,SAAS;QACf,IAAI,EACF,4BAA4B,GAAG,kBAAkB,CAAC,GAAG,CAAC,QAAQ,IAAI,GAAG,CAAC,EAAE,CAAC;KAC5E,CAAA;AACH,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,kBAAkB,CAAC,UAAkB;IACnD,OAAO;QACL,IAAI,EAAE,UAAU;QAChB,IAAI,EAAE,yBAAyB;QAC/B,KAAK,EAAE,2BAA2B;QAClC,KAAK,EAAE,IAAI;KACZ,CAAA;AACH,CAAC;AAyGD;;;GAGG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAAG;IAC9C,OAAO;IACP,WAAW;IACX,kBAAkB;IAClB,aAAa;IACb,oBAAoB;IACpB,sBAAsB;IACtB,wBAAwB;IACxB,4BAA4B;IAC5B,iBAAiB;IACjB,mBAAmB;IACnB,qBAAqB;IACrB,yBAAyB;IACzB,2BAA2B;IAC3B,gBAAgB;IAChB,oBAAoB;IACpB,gBAAgB;IAChB,2BAA2B;CAC2B,CAAA"}
|
|
@@ -0,0 +1,442 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The Antigravity account repository: typed, attributed operations on the
|
|
3
|
+
* account pool, persisted by common-auth's public lease-backed pool store
|
|
4
|
+
* (its `./store` entry).
|
|
5
|
+
*
|
|
6
|
+
* This module owns everything Antigravity-specific about the pool: how
|
|
7
|
+
* provider metadata is combined when two values meet (`ACCOUNT_STATE_POLICY`),
|
|
8
|
+
* how each observation (project, fingerprint, tier, cooldown, rate limits,
|
|
9
|
+
* usage, access verdicts) changes it, which credential a write is fenced on,
|
|
10
|
+
* the per-account refresh lock, the topology lease that orders changes to
|
|
11
|
+
* the set of rows, the management journal for multi-row destructive
|
|
12
|
+
* operations, and the bookkeeping that lets `flush` and `dispose` drain and
|
|
13
|
+
* report every write.
|
|
14
|
+
*
|
|
15
|
+
* The store and its lease helper are handed in
|
|
16
|
+
* (`createAccountRepositoryFactory`) rather than imported, because the core
|
|
17
|
+
* package does not ship a copy of them; the composition root passes the
|
|
18
|
+
* genuine public `./store` and `./fs` modules, which it has verified.
|
|
19
|
+
* `AccountStoreModule` and `AccountLockModule` declare only the public
|
|
20
|
+
* capabilities this file calls, with the shapes of the public declarations;
|
|
21
|
+
* as structural types they describe what is required, not which module
|
|
22
|
+
* supplies it.
|
|
23
|
+
*
|
|
24
|
+
* Every write about an existing credential is fenced by the store, under the
|
|
25
|
+
* row lock and the store locks, before anything is written: the repository
|
|
26
|
+
* hands the store the caller's `RowRef` as the store's attribution argument,
|
|
27
|
+
* or (for a refresh and a removal) checks the locked row the store shows its
|
|
28
|
+
* `refuse`/`protect` callback. Nothing here checks a ref only before calling
|
|
29
|
+
* the store.
|
|
30
|
+
*/
|
|
31
|
+
import { type AccessVerdict, type AccountCredentialStamp, type AccountLockSpec, type AccountLoginInput, type AccountRepositoryFailure, type AccountRepositoryFailureKind, type AccountRow, type ConfiguredProviderStateCodec, type CooldownObservation, type CreateAccountRepository, type FingerprintObservation, type LastSwitchReason, type ManagementRecord, type ProjectObservation, type ProviderMetadata, type ProviderStatePolicy, type QuotaCodecContract, type StoredRateLimitResetTimes, type TierObservation, type UsageObservation } from './account-repository-types.ts';
|
|
32
|
+
/** A credential as the store loads it (common-auth `StoredCredential`). */
|
|
33
|
+
export type StoreCredential = {
|
|
34
|
+
type: 'oauth';
|
|
35
|
+
access?: string;
|
|
36
|
+
refresh: string;
|
|
37
|
+
expires?: number;
|
|
38
|
+
lastRefreshedAt?: number;
|
|
39
|
+
} | {
|
|
40
|
+
type: 'api';
|
|
41
|
+
apiKey: string;
|
|
42
|
+
baseURL: string;
|
|
43
|
+
authHeader?: 'authorization-bearer' | 'x-api-key';
|
|
44
|
+
};
|
|
45
|
+
/** The fields of a loaded store row this repository reads (`PoolRow`). */
|
|
46
|
+
export interface StorePoolRow {
|
|
47
|
+
id: string;
|
|
48
|
+
type: 'oauth' | 'api';
|
|
49
|
+
enabled: boolean;
|
|
50
|
+
addedAt?: number;
|
|
51
|
+
identity?: string;
|
|
52
|
+
credential?: StoreCredential;
|
|
53
|
+
credentialEpoch?: number;
|
|
54
|
+
disabledReason?: string;
|
|
55
|
+
quota?: unknown;
|
|
56
|
+
providerState?: unknown;
|
|
57
|
+
providerStateDropped?: 'uncovered' | 'invalid';
|
|
58
|
+
candidate: boolean;
|
|
59
|
+
invalid?: 'roster' | 'entry';
|
|
60
|
+
torn?: true;
|
|
61
|
+
stamp?: AccountCredentialStamp;
|
|
62
|
+
unbound?: true;
|
|
63
|
+
staged?: {
|
|
64
|
+
reservation: string;
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
export type StorePoolLoad = {
|
|
68
|
+
status: 'ready';
|
|
69
|
+
rows: StorePoolRow[];
|
|
70
|
+
} | {
|
|
71
|
+
status: 'pending-migration';
|
|
72
|
+
} | {
|
|
73
|
+
status: 'error';
|
|
74
|
+
file: 'config' | 'state';
|
|
75
|
+
reason: string;
|
|
76
|
+
};
|
|
77
|
+
export type StoreSettingsRead = {
|
|
78
|
+
status: 'ready' | 'pending-migration';
|
|
79
|
+
settings: Record<string, unknown>;
|
|
80
|
+
} | {
|
|
81
|
+
status: 'error';
|
|
82
|
+
file: 'config' | 'state';
|
|
83
|
+
reason: string;
|
|
84
|
+
};
|
|
85
|
+
/** The credential fence of attributed store writes (`Attribution`). */
|
|
86
|
+
export interface StoreAttribution {
|
|
87
|
+
credentialEpoch: number;
|
|
88
|
+
identity?: string;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* A provider-state mutator. Returning undefined clears the state; an
|
|
92
|
+
* attributed `enable`/`disable` mutator may also return the store's
|
|
93
|
+
* decline value.
|
|
94
|
+
*/
|
|
95
|
+
export type StoreStateMutator = (current: unknown, row: StorePoolRow) => unknown | Promise<unknown>;
|
|
96
|
+
export interface StoreTransitionOptions {
|
|
97
|
+
attribution: StoreAttribution;
|
|
98
|
+
providerState?: StoreStateMutator;
|
|
99
|
+
}
|
|
100
|
+
export interface StoreTransitionResult {
|
|
101
|
+
id: string;
|
|
102
|
+
declined?: true;
|
|
103
|
+
providerStateOutcome?: 'updated' | 'cleared' | 'unchanged';
|
|
104
|
+
providerState?: unknown;
|
|
105
|
+
}
|
|
106
|
+
export interface StoreRefreshResult {
|
|
107
|
+
access: string;
|
|
108
|
+
refresh: string;
|
|
109
|
+
expires: number;
|
|
110
|
+
identity?: string;
|
|
111
|
+
providerState?: unknown;
|
|
112
|
+
}
|
|
113
|
+
export type StoreRefreshOutcome = {
|
|
114
|
+
status: 'rotated';
|
|
115
|
+
rowId: string;
|
|
116
|
+
credential: StoreCredential;
|
|
117
|
+
identity?: string;
|
|
118
|
+
} | {
|
|
119
|
+
status: 'identity-contradicted';
|
|
120
|
+
rowId: string;
|
|
121
|
+
expectedIdentity: string;
|
|
122
|
+
returnedIdentity: string;
|
|
123
|
+
} | {
|
|
124
|
+
status: 'refused';
|
|
125
|
+
rowId: string;
|
|
126
|
+
reason: string;
|
|
127
|
+
};
|
|
128
|
+
export interface StoreRemoveView {
|
|
129
|
+
row: StorePoolRow | undefined;
|
|
130
|
+
config: Readonly<Record<string, unknown>>;
|
|
131
|
+
}
|
|
132
|
+
export type StoreSettingsMutator = (settings: Record<string, unknown>) => Record<string, unknown> | undefined;
|
|
133
|
+
/**
|
|
134
|
+
* The pool-store methods this repository calls, with the parameter and
|
|
135
|
+
* result shapes of common-auth's public `PoolStore` (`dist/store/pool.d.ts`).
|
|
136
|
+
* Written as function-typed properties so the compiler checks parameters
|
|
137
|
+
* strictly when the genuine store is assigned to it.
|
|
138
|
+
*/
|
|
139
|
+
export interface StorePublicationPlan {
|
|
140
|
+
operationId: string;
|
|
141
|
+
remove: {
|
|
142
|
+
id: string;
|
|
143
|
+
attribution: StoreAttribution;
|
|
144
|
+
fingerprint?: string;
|
|
145
|
+
}[];
|
|
146
|
+
finalize: {
|
|
147
|
+
id: string;
|
|
148
|
+
attribution: StoreAttribution;
|
|
149
|
+
reservation: string;
|
|
150
|
+
enabled: boolean;
|
|
151
|
+
disabledReason?: string;
|
|
152
|
+
}[];
|
|
153
|
+
order: string[];
|
|
154
|
+
}
|
|
155
|
+
export interface StorePublicationReceipt {
|
|
156
|
+
operationId: string;
|
|
157
|
+
planDigest: string;
|
|
158
|
+
phase: 'committed' | 'cleaned';
|
|
159
|
+
removed: {
|
|
160
|
+
id: string;
|
|
161
|
+
credentialEpoch: number;
|
|
162
|
+
}[];
|
|
163
|
+
finalized: {
|
|
164
|
+
id: string;
|
|
165
|
+
credentialEpoch: number;
|
|
166
|
+
reservation: string;
|
|
167
|
+
enabled: boolean;
|
|
168
|
+
}[];
|
|
169
|
+
}
|
|
170
|
+
export interface AccountPoolStore {
|
|
171
|
+
read: () => Promise<StorePoolLoad>;
|
|
172
|
+
add: (input: {
|
|
173
|
+
id: string;
|
|
174
|
+
credential: {
|
|
175
|
+
type: 'oauth';
|
|
176
|
+
refresh: string;
|
|
177
|
+
};
|
|
178
|
+
identity?: string;
|
|
179
|
+
providerState?: unknown;
|
|
180
|
+
disabled?: {
|
|
181
|
+
reason: string;
|
|
182
|
+
};
|
|
183
|
+
stage?: {
|
|
184
|
+
reservation: string;
|
|
185
|
+
};
|
|
186
|
+
}, options?: {
|
|
187
|
+
extraLocks?: readonly AccountLockSpec[];
|
|
188
|
+
onExisting?: 'stage-duplicate';
|
|
189
|
+
protect?: (view: {
|
|
190
|
+
config: Readonly<Record<string, unknown>>;
|
|
191
|
+
}) => Promise<string | undefined>;
|
|
192
|
+
}) => Promise<{
|
|
193
|
+
id: string;
|
|
194
|
+
outcome: 'added' | 'added-disabled' | 'completed' | 'rotated' | 'exists';
|
|
195
|
+
credentialEpoch?: number;
|
|
196
|
+
}>;
|
|
197
|
+
publishRoster?: (plan: StorePublicationPlan, options?: {
|
|
198
|
+
protect?: (view: {
|
|
199
|
+
config: Readonly<Record<string, unknown>>;
|
|
200
|
+
}) => Promise<string | undefined>;
|
|
201
|
+
}) => Promise<{
|
|
202
|
+
outcome: 'published' | 'cleaned' | 'already-cleaned';
|
|
203
|
+
receipt: StorePublicationReceipt;
|
|
204
|
+
}>;
|
|
205
|
+
publication?: (operationId: string) => Promise<StorePublicationReceipt | undefined>;
|
|
206
|
+
replace: (id: string, credential: {
|
|
207
|
+
type: 'oauth';
|
|
208
|
+
refresh: string;
|
|
209
|
+
}, input: {
|
|
210
|
+
identity?: string;
|
|
211
|
+
providerState?: unknown;
|
|
212
|
+
}, options: {
|
|
213
|
+
attribution: StoreAttribution;
|
|
214
|
+
}) => Promise<{
|
|
215
|
+
id: string;
|
|
216
|
+
credentialEpoch: number;
|
|
217
|
+
}>;
|
|
218
|
+
updateProviderState: (id: string, fence: StoreAttribution, mutator: StoreStateMutator) => Promise<{
|
|
219
|
+
id: string;
|
|
220
|
+
providerState?: unknown;
|
|
221
|
+
outcome: 'updated' | 'cleared' | 'unchanged';
|
|
222
|
+
}>;
|
|
223
|
+
disable: (id: string, reason: string, options: StoreTransitionOptions) => Promise<StoreTransitionResult>;
|
|
224
|
+
enable: (id: string, options: StoreTransitionOptions) => Promise<StoreTransitionResult>;
|
|
225
|
+
remove: (id: string, options: {
|
|
226
|
+
extraLocks?: readonly AccountLockSpec[];
|
|
227
|
+
protect: (id: string, view: StoreRemoveView) => string | undefined;
|
|
228
|
+
}) => Promise<{
|
|
229
|
+
id: string;
|
|
230
|
+
outcome: 'removed' | 'completed';
|
|
231
|
+
}>;
|
|
232
|
+
reorder: (ids: readonly string[]) => Promise<{
|
|
233
|
+
ids: string[];
|
|
234
|
+
}>;
|
|
235
|
+
readSettings: () => Promise<StoreSettingsRead>;
|
|
236
|
+
updateSettings: (mutator: StoreSettingsMutator, options: {
|
|
237
|
+
extraLocks?: readonly AccountLockSpec[];
|
|
238
|
+
}) => Promise<{
|
|
239
|
+
settings: Record<string, unknown>;
|
|
240
|
+
}>;
|
|
241
|
+
recordIdentity: (id: string, identity: string, attribution: {
|
|
242
|
+
credentialEpoch: number;
|
|
243
|
+
}) => Promise<{
|
|
244
|
+
id: string;
|
|
245
|
+
disabled: string[];
|
|
246
|
+
}>;
|
|
247
|
+
refresh: (id: string, provider: (credential: {
|
|
248
|
+
type: 'oauth';
|
|
249
|
+
refresh: string;
|
|
250
|
+
access?: string;
|
|
251
|
+
expires?: number;
|
|
252
|
+
lastRefreshedAt?: number;
|
|
253
|
+
}, row: StorePoolRow) => Promise<StoreRefreshResult>, options: {
|
|
254
|
+
providerLock: AccountLockSpec;
|
|
255
|
+
refuse: (row: StorePoolRow) => Promise<string | undefined>;
|
|
256
|
+
}) => Promise<StoreRefreshOutcome>;
|
|
257
|
+
recordQuota: (id: string, attribution: StoreAttribution, observation: unknown) => Promise<void>;
|
|
258
|
+
pullsSettled: () => Promise<void>;
|
|
259
|
+
}
|
|
260
|
+
/**
|
|
261
|
+
* A lock the store took, found held by another holder, or released (the
|
|
262
|
+
* store's public `LockEvent`). `name` and `path` name the lock file.
|
|
263
|
+
*/
|
|
264
|
+
export interface AccountLockEvent {
|
|
265
|
+
type: 'acquired' | 'released' | 'contended';
|
|
266
|
+
name: string;
|
|
267
|
+
path: string;
|
|
268
|
+
}
|
|
269
|
+
/** What this repository opens the store with (`OpenPoolStoreOptions`). */
|
|
270
|
+
export interface AccountStoreOpenOptions {
|
|
271
|
+
provider: string;
|
|
272
|
+
configPath: string;
|
|
273
|
+
statePath: string;
|
|
274
|
+
quota: QuotaCodecContract;
|
|
275
|
+
providerState: ConfiguredProviderStateCodec;
|
|
276
|
+
requireCredentialStamps: true;
|
|
277
|
+
requireRemovedFingerprint?: boolean;
|
|
278
|
+
now: () => number;
|
|
279
|
+
onLockEvent?: (event: AccountLockEvent) => void;
|
|
280
|
+
}
|
|
281
|
+
/** Options of the repositories a factory creates, beside the frozen ones. */
|
|
282
|
+
export interface AccountRepositoryFactoryOptions {
|
|
283
|
+
/**
|
|
284
|
+
* Observes every lock the store takes, waits for and releases, through
|
|
285
|
+
* the store's own `onLockEvent`; for diagnostics, such as reporting which
|
|
286
|
+
* account's refresh is waiting on another process. The store ignores an
|
|
287
|
+
* observer that throws.
|
|
288
|
+
*/
|
|
289
|
+
onLockEvent?: (event: AccountLockEvent) => void;
|
|
290
|
+
}
|
|
291
|
+
/**
|
|
292
|
+
* The fields of the store's failure value (`PoolOperationError`) that the
|
|
293
|
+
* repository reads to turn it into an `AccountRepositoryFailure`.
|
|
294
|
+
*/
|
|
295
|
+
export interface StoreOperationFailure extends Error {
|
|
296
|
+
readonly rowId: string | undefined;
|
|
297
|
+
readonly phase: 'before-first-write' | 'after-first-write' | 'pull';
|
|
298
|
+
readonly retryable: boolean;
|
|
299
|
+
readonly kind: AccountRepositoryFailureKind;
|
|
300
|
+
}
|
|
301
|
+
/**
|
|
302
|
+
* The parts of common-auth's public `./store` module the repository needs:
|
|
303
|
+
* the store opener, the value an attributed transition mutator returns to
|
|
304
|
+
* decline, and the store's failure class.
|
|
305
|
+
*/
|
|
306
|
+
export interface AccountStoreModule {
|
|
307
|
+
readonly fingerprintOf?: (credential: StoreCredential) => string;
|
|
308
|
+
readonly openPoolStore: (options: AccountStoreOpenOptions) => AccountPoolStore;
|
|
309
|
+
readonly DECLINE_TRANSITION: symbol;
|
|
310
|
+
readonly PoolOperationError: abstract new (...args: never[]) => StoreOperationFailure;
|
|
311
|
+
}
|
|
312
|
+
/** What `withLock` hands its callback: a check that the lease is still held. */
|
|
313
|
+
export interface AccountLease {
|
|
314
|
+
assertOwned(): Promise<void>;
|
|
315
|
+
}
|
|
316
|
+
/**
|
|
317
|
+
* The parts of common-auth's public `./fs` module the repository needs
|
|
318
|
+
* (`dist/fs/with-lock.d.ts`): `withLock`, which holds a file lease for the
|
|
319
|
+
* duration of a callback and releases it afterwards, and its two failure
|
|
320
|
+
* classes, thrown when the lease cannot be taken in time and when an
|
|
321
|
+
* `assertOwned` finds it lost.
|
|
322
|
+
*/
|
|
323
|
+
export interface AccountLockModule {
|
|
324
|
+
readonly withLock: <T>(target: string, options: {
|
|
325
|
+
name: string;
|
|
326
|
+
ttlMs: number;
|
|
327
|
+
timeoutMs: number;
|
|
328
|
+
renew?: boolean;
|
|
329
|
+
}, fn: (lock: AccountLease) => Promise<T>) => Promise<T>;
|
|
330
|
+
readonly LockContentionError: abstract new (...args: never[]) => Error;
|
|
331
|
+
readonly LockOwnershipError: abstract new (...args: never[]) => Error;
|
|
332
|
+
}
|
|
333
|
+
/** The genuine public common-auth modules a repository is built on. */
|
|
334
|
+
export interface AccountStoreModules {
|
|
335
|
+
/** The package's `./store` entry. */
|
|
336
|
+
store: AccountStoreModule;
|
|
337
|
+
/** The package's `./fs` entry, from the same package. */
|
|
338
|
+
fs: AccountLockModule;
|
|
339
|
+
}
|
|
340
|
+
/**
|
|
341
|
+
* Thrown by every repository operation that fails. `failure` says how; the
|
|
342
|
+
* message never contains a credential, an email or an identity.
|
|
343
|
+
*/
|
|
344
|
+
export declare class AccountRepositoryError extends Error {
|
|
345
|
+
readonly failure: AccountRepositoryFailure;
|
|
346
|
+
constructor(failure: AccountRepositoryFailure, options?: {
|
|
347
|
+
cause?: unknown;
|
|
348
|
+
});
|
|
349
|
+
}
|
|
350
|
+
/** The UTC day `at` falls on, as `dailyRequestCounts.date` records it. */
|
|
351
|
+
export declare function utcDay(at: number): string;
|
|
352
|
+
/**
|
|
353
|
+
* Combines two rate-limit maps key by key, keeping the later reset time of
|
|
354
|
+
* each key. A `null` (written by an older build) never replaces a time.
|
|
355
|
+
*/
|
|
356
|
+
export declare function mergeRateLimitResets(stored: StoredRateLimitResetTimes | null | undefined, incoming: Readonly<StoredRateLimitResetTimes> | null): StoredRateLimitResetTimes | null;
|
|
357
|
+
/**
|
|
358
|
+
* The latest of `verificationRequiredAt`, `accountIneligibleAt` and
|
|
359
|
+
* `eligibilityStateUpdatedAt`: when the newest access evidence was observed.
|
|
360
|
+
*/
|
|
361
|
+
export declare function accessEvidenceAt(metadata: ProviderMetadata): number | undefined;
|
|
362
|
+
/**
|
|
363
|
+
* The repository's rules for combining provider metadata. The public store
|
|
364
|
+
* applies them, under its locks, through the codec `createProviderStateCodec`
|
|
365
|
+
* builds from them: `merge` when a same-credential write brings metadata,
|
|
366
|
+
* `onReplace` when `replace` gives a row a new credential.
|
|
367
|
+
*/
|
|
368
|
+
export declare const ACCOUNT_STATE_POLICY: ProviderStatePolicy;
|
|
369
|
+
export declare function applyProjectObservation(metadata: ProviderMetadata, observation: ProjectObservation): ProviderMetadata;
|
|
370
|
+
/** History is stored exactly as given: in its order and untruncated. */
|
|
371
|
+
export declare function applyFingerprintObservation(metadata: ProviderMetadata, observation: FingerprintObservation): ProviderMetadata;
|
|
372
|
+
/** A tier reading older than the stored one leaves it as it is. */
|
|
373
|
+
export declare function applyTierObservation(metadata: ProviderMetadata, observation: TierObservation): ProviderMetadata;
|
|
374
|
+
/** `null` ends the cooldown: both fields are removed. */
|
|
375
|
+
export declare function applyCooldownObservation(metadata: ProviderMetadata, observation: CooldownObservation): ProviderMetadata;
|
|
376
|
+
export declare function applyRateLimitObservation(metadata: ProviderMetadata, resets: Readonly<StoredRateLimitResetTimes>): ProviderMetadata;
|
|
377
|
+
export declare function applySwitch(metadata: ProviderMetadata, reason: LastSwitchReason): ProviderMetadata;
|
|
378
|
+
/**
|
|
379
|
+
* Counts one request for the family on the UTC day of `now`, starting the
|
|
380
|
+
* day from zero when the stored counts belong to another day, and keeps the
|
|
381
|
+
* later `lastUsed`. Unknown keys of the stored counts stay when the day is
|
|
382
|
+
* the same.
|
|
383
|
+
*/
|
|
384
|
+
export declare function applyUsage(metadata: ProviderMetadata, observation: UsageObservation, now: number): ProviderMetadata;
|
|
385
|
+
/** What an access verdict does to a row's enabled flag. */
|
|
386
|
+
export type AccessTransition = 'disable' | 'enable' | 'keep';
|
|
387
|
+
/**
|
|
388
|
+
* Applies access evidence. A verdict observed before the newest stored
|
|
389
|
+
* evidence returns `undefined`: it must not undo what a later observation
|
|
390
|
+
* established.
|
|
391
|
+
*/
|
|
392
|
+
export declare function applyAccessVerdict(metadata: ProviderMetadata, verdict: AccessVerdict): {
|
|
393
|
+
metadata: ProviderMetadata;
|
|
394
|
+
transition: AccessTransition;
|
|
395
|
+
} | undefined;
|
|
396
|
+
export declare function toAccountRow(row: StorePoolRow, index: number): AccountRow;
|
|
397
|
+
/**
|
|
398
|
+
* A management record as this repository stores it. A `replace-pool`
|
|
399
|
+
* record also keeps `inputDigest`, the `replacementInputDigest` of the
|
|
400
|
+
* inputs it was started with, so a resume is accepted only for those exact
|
|
401
|
+
* inputs, even once the transfer file is gone. Readers of the pool are
|
|
402
|
+
* shown the record without it (`publicManagementRecord`).
|
|
403
|
+
*/
|
|
404
|
+
export interface StoredManagementRecord extends ManagementRecord {
|
|
405
|
+
inputDigest?: string;
|
|
406
|
+
publication?: StorePublicationPlan;
|
|
407
|
+
}
|
|
408
|
+
/**
|
|
409
|
+
* SHA-256 of the inputs' encoding as key-sorted JSON (`canonicalJson`), in
|
|
410
|
+
* their order: ids, refresh tokens, identities and metadata values all
|
|
411
|
+
* count, as do array order and an explicit `null`, while the order in which
|
|
412
|
+
* an object's keys were built does not. It identifies a replacement without
|
|
413
|
+
* the journal holding any credential.
|
|
414
|
+
*/
|
|
415
|
+
export declare function replacementInputDigest(inputs: readonly AccountLoginInput[]): string;
|
|
416
|
+
/**
|
|
417
|
+
* Reads the record of a pending multi-row operation (`clear` or
|
|
418
|
+
* `replacePool`) kept under `MANAGEMENT_SETTINGS_KEY` in the store's
|
|
419
|
+
* settings; while it exists, ordinary operations are refused. Throws
|
|
420
|
+
* `AccountCodecError` when the record is malformed: an id that is not a
|
|
421
|
+
* UUID, a step its kind does not have, a repeated or empty id, or, while
|
|
422
|
+
* rows are being removed, a completed id that is not a target, and an
|
|
423
|
+
* `inputDigest` that is missing or malformed on a `replace-pool` record or
|
|
424
|
+
* present on any other. In the `add` and `verified` steps of `replace-pool`
|
|
425
|
+
* the completed ids are replacement input ids, which `replacePool` checks
|
|
426
|
+
* against the ids of the inputs.
|
|
427
|
+
*/
|
|
428
|
+
export declare function decodeManagementRecord(raw: unknown): StoredManagementRecord;
|
|
429
|
+
/**
|
|
430
|
+
* Reads a transfer file written for the management record `managementId`.
|
|
431
|
+
* Throws `AccountCodecError` for a file of another record or version, and
|
|
432
|
+
* for inputs `replacePool` would itself refuse: a repeated or empty id, or
|
|
433
|
+
* an empty refresh token.
|
|
434
|
+
*/
|
|
435
|
+
export declare function decodeTransferFile(raw: unknown, managementId: string): AccountLoginInput[];
|
|
436
|
+
/**
|
|
437
|
+
* Binds the repository to the genuine public `./store` and `./fs` modules
|
|
438
|
+
* of one common-auth package. The returned function is the frozen
|
|
439
|
+
* `CreateAccountRepository`.
|
|
440
|
+
*/
|
|
441
|
+
export declare function createAccountRepositoryFactory(modules: AccountStoreModules, factoryOptions?: AccountRepositoryFactoryOptions): CreateAccountRepository;
|
|
442
|
+
//# sourceMappingURL=account-repository.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"account-repository.d.ts","sourceRoot":"","sources":["../src/account-repository.ts"],"names":[],"mappings":"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"}
|