@cortexkit/antigravity-auth-core 3.0.10 → 3.0.12
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/dist/agy-transport.d.ts.map +1 -1
- package/dist/agy-transport.js +4 -0
- package/dist/agy-transport.js.map +1 -1
- package/dist/common-auth-embedded/claustrum/consumer.d.ts +7 -1
- package/dist/common-auth-embedded/claustrum/consumer.js +17 -2
- package/dist/common-auth-embedded/claustrum/enrollment.d.ts +5 -0
- package/dist/common-auth-embedded/claustrum/enrollment.js +27 -0
- package/dist/common-auth-embedded/claustrum/errors.d.ts +1 -1
- package/dist/common-auth-embedded/claustrum/index.d.ts +1 -1
- package/dist/common-auth-embedded/claustrum/index.js +1 -1
- package/dist/common-auth-embedded/claustrum/quota-writer.js +4 -54
- package/dist/common-auth-embedded/claustrum/roster.d.ts +31 -0
- package/dist/common-auth-embedded/claustrum/roster.js +72 -0
- package/dist/common-auth-embedded/commands/builtins.d.ts +37 -0
- package/dist/common-auth-embedded/commands/builtins.js +95 -13
- package/dist/common-auth-embedded/commands/index.d.ts +1 -1
- package/dist/common-auth-embedded/fs/private-files.d.ts +2 -0
- package/dist/common-auth-embedded/fs/private-files.js +49 -3
- package/dist/common-auth-embedded/quota/pending.js +48 -0
- package/dist/common-auth-embedded/source-output.json +86 -70
- package/dist/common-auth-embedded/store/attribution.d.ts +5 -0
- package/dist/common-auth-embedded/store/attribution.js +39 -25
- package/dist/common-auth-embedded/store/pool.d.ts +17 -0
- package/dist/common-auth-embedded/store/pool.js +18 -3
- package/dist/common-auth-embedded/store/pull.js +3 -1
- package/dist/common-auth-embedded/store/quota-writer.js +298 -0
- package/dist/common-auth-embedded/store/runtime.d.ts +2 -0
- package/dist/pre-response-deadline.d.ts.map +1 -1
- package/dist/pre-response-deadline.js +6 -5
- package/dist/pre-response-deadline.js.map +1 -1
- package/dist/quota-manager.d.ts +3 -3
- package/dist/quota-manager.d.ts.map +1 -1
- package/dist/quota-manager.js +59 -36
- package/dist/quota-manager.js.map +1 -1
- package/dist/transform/gemini.d.ts.map +1 -1
- package/dist/transform/gemini.js +12 -0
- package/dist/transform/gemini.js.map +1 -1
- package/dist/vault-enrollment-authority.d.ts +2 -0
- package/dist/vault-enrollment-authority.d.ts.map +1 -1
- package/dist/vault-enrollment-authority.js +2 -0
- package/dist/vault-enrollment-authority.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agy-transport.d.ts","sourceRoot":"","sources":["../src/agy-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAyB,SAAS,EAAE,MAAM,aAAa,CAAA;
|
|
1
|
+
{"version":3,"file":"agy-transport.d.ts","sourceRoot":"","sources":["../src/agy-transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAA;AAEpC,OAAO,EAAyB,SAAS,EAAE,MAAM,aAAa,CAAA;AAa9D,eAAO,MAAM,sCAAsC,SAAU,CAAA;AAI7D,eAAO,MAAM,2BAA2B,SAAU,CAAA;AAElD,MAAM,MAAM,mBAAmB,GAAG;IAChC;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,MAAM,CAAC,EAAE,WAAW,GAAG,IAAI,CAAA;IAC3B,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAA;CACpC,CAAA;AAED,KAAK,UAAU,GAAG,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;AAyC3C,wBAAgB,sBAAsB,CACpC,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,WAAgB,GACrB,UAAU,EAAE,CAgCd;AAySD,qBAAa,mBAAoB,SAAQ,SAAS;IAChD,OAAO,CAAC,SAAS,CAAQ;gBAEb,aAAa,EAAE,MAAM;IAKxB,UAAU,CACjB,KAAK,EAAE,MAAM,EACb,SAAS,EAAE,cAAc,EACzB,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,GAAG,IAAI,KAAK,IAAI,GACvC,IAAI;CAmBR;AAqID,wBAAsB,wBAAwB,CAC5C,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,WAAgB,EACtB,OAAO,GAAE,mBAAwB,GAChC,OAAO,CAAC,QAAQ,CAAC,CAkEnB"}
|
package/dist/agy-transport.js
CHANGED
|
@@ -6,6 +6,10 @@ import { createGunzip } from 'node:zlib';
|
|
|
6
6
|
import { buildAntigravityHarnessUserAgent } from "./fingerprint.js";
|
|
7
7
|
const DEFAULT_HTTPS_PORT = 443;
|
|
8
8
|
const DEFAULT_PROXY_PORT = 8080;
|
|
9
|
+
// Per attempt. Measured response headers arrive within single-digit seconds for
|
|
10
|
+
// both Claude (1.4-3.1 s) and Gemini (about 3.7 s even before a 50-66 s think,
|
|
11
|
+
// agy 1.4.5), because thinking streams after the headers. So this only catches
|
|
12
|
+
// an attempt that never starts answering.
|
|
9
13
|
export const DEFAULT_AGY_RESPONSE_HEADER_TIMEOUT_MS = 180_000;
|
|
10
14
|
// Max time the response body may stall (no bytes received) before the socket is
|
|
11
15
|
// destroyed. Streaming responses emit data far more frequently than this; a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agy-transport.js","sourceRoot":"","sources":["../src/agy-transport.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"agy-transport.js","sourceRoot":"","sources":["../src/agy-transport.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,7 @@ import type { RoutingRow } from '../routing/index.js';
|
|
|
4
4
|
import { type ClaustrumFamily, type ClaustrumScopedAttempt, type ClaustrumScopedClient, type IdentityParser, type KeptReceiptState, type VaultGrantReach } from './custody.js';
|
|
5
5
|
import { type ClaustrumLogger } from './errors.js';
|
|
6
6
|
import { type InsulaQuotaOptions, type InsulaQuotaResult } from './insula.js';
|
|
7
|
-
import { type AccountMapper, type QuotaReceipt, type VaultRosterFile } from './roster.js';
|
|
7
|
+
import { type AccountMapper, type QuotaReceipt, type ReorderVaultRosterResult, type VaultRosterFile } from './roster.js';
|
|
8
8
|
import { type WatchMode } from './watch.js';
|
|
9
9
|
export interface ClaustrumConsumerOptions<Q = QuotaObservation> {
|
|
10
10
|
/**
|
|
@@ -157,6 +157,12 @@ export declare class ClaustrumConsumer<Q = QuotaObservation> {
|
|
|
157
157
|
/** Decline a vault account: it stays listed and never routes until accepted. */
|
|
158
158
|
decline(routeId: string): Promise<void>;
|
|
159
159
|
accept(routeId: string): Promise<void>;
|
|
160
|
+
/**
|
|
161
|
+
* Set the order vault accounts are tried in (`reorderVaultRoster`), then
|
|
162
|
+
* re-read the roster, so the next routing decision in this process uses
|
|
163
|
+
* the new order without waiting for a discovery. Never contacts the vault.
|
|
164
|
+
*/
|
|
165
|
+
reorder(routeIds: readonly string[]): Promise<ReorderVaultRosterResult>;
|
|
160
166
|
/**
|
|
161
167
|
* Store a quota or profile observation for a vault route. The receipt the
|
|
162
168
|
* reading was taken with is required: the observation lands only while the
|
|
@@ -5,7 +5,7 @@ import { readClaustrumEnrollmentToken } from './enrollment.js';
|
|
|
5
5
|
import { ClaustrumConsumerError } from './errors.js';
|
|
6
6
|
import { acquireInsulaQuotaSource, } from './insula.js';
|
|
7
7
|
import { pendingVaultQuota, retainVaultQuotaWriter } from './quota-writer.js';
|
|
8
|
-
import { acceptVaultRoute, applyVaultQuota, declineVaultRoute, forgetPendingVaultDiscovery, readVaultRoster, recordVaultAccountQuota, recordVaultQuota, refreshVaultRoster, vaultRoutingRows, } from './roster.js';
|
|
8
|
+
import { acceptVaultRoute, applyVaultQuota, declineVaultRoute, forgetPendingVaultDiscovery, readVaultRoster, recordVaultAccountQuota, recordVaultQuota, refreshVaultRoster, reorderVaultRoster, vaultRoutingRows, } from './roster.js';
|
|
9
9
|
import { SAFETY_POLL_MS } from './watch.js';
|
|
10
10
|
/**
|
|
11
11
|
* One plugin host's view of its vault accounts. It turns vault credentials
|
|
@@ -485,8 +485,12 @@ export class ClaustrumConsumer {
|
|
|
485
485
|
let current;
|
|
486
486
|
try {
|
|
487
487
|
current = await this.authorize(routeId, signal);
|
|
488
|
+
// Cancellation can land after authorize settles, before this continuation.
|
|
489
|
+
signal?.throwIfAborted();
|
|
488
490
|
}
|
|
489
|
-
catch {
|
|
491
|
+
catch (error) {
|
|
492
|
+
if (signal?.aborted)
|
|
493
|
+
throw error;
|
|
490
494
|
// Re-authorization failed: keep this 401 and report it against the
|
|
491
495
|
// receipt (served record version) this request was sent with.
|
|
492
496
|
}
|
|
@@ -522,6 +526,17 @@ export class ClaustrumConsumer {
|
|
|
522
526
|
await acceptVaultRoute(this.#options.rosterPath, routeId);
|
|
523
527
|
this.#roster = pendingVaultQuota(this.#options.rosterPath, await readVaultRoster(this.#options.rosterPath));
|
|
524
528
|
}
|
|
529
|
+
/**
|
|
530
|
+
* Set the order vault accounts are tried in (`reorderVaultRoster`), then
|
|
531
|
+
* re-read the roster, so the next routing decision in this process uses
|
|
532
|
+
* the new order without waiting for a discovery. Never contacts the vault.
|
|
533
|
+
*/
|
|
534
|
+
async reorder(routeIds) {
|
|
535
|
+
this.#assertOpen();
|
|
536
|
+
const result = await reorderVaultRoster(this.#options.rosterPath, routeIds);
|
|
537
|
+
this.#roster = pendingVaultQuota(this.#options.rosterPath, await readVaultRoster(this.#options.rosterPath));
|
|
538
|
+
return result;
|
|
539
|
+
}
|
|
525
540
|
/**
|
|
526
541
|
* Store a quota or profile observation for a vault route. The receipt the
|
|
527
542
|
* reading was taken with is required: the observation lands only while the
|
|
@@ -1,4 +1,9 @@
|
|
|
1
1
|
import { type ClaustrumClientOptions as ClaustrumEnrollmentClientOptions, type EnrollmentPollOutcome, type EnrollmentTokenFile, writeEnrollmentTokenFile } from '@cortexkit/claustrum-client';
|
|
2
|
+
/**
|
|
3
|
+
* The code a vault without the enrollment ceremony answers a proposal with.
|
|
4
|
+
* Setup reports it as "this vault cannot connect plugins" instead of waiting.
|
|
5
|
+
*/
|
|
6
|
+
export declare const UNSUPPORTED_ENROLLMENT_CODE = "unknown_method";
|
|
2
7
|
/**
|
|
3
8
|
* Codes the vault's closed enrollment-refusal vocabulary marks permanent. The
|
|
4
9
|
* client labels some module error frames transient/retry regardless, so the
|
|
@@ -10,12 +10,22 @@ const ENROLLMENT_SCHEMA = 1;
|
|
|
10
10
|
const ENROLLMENT_FILE_MAX_BYTES = 16 * 1024;
|
|
11
11
|
const ENROLLMENT_LOCK_TTL_MS = 30_000;
|
|
12
12
|
const TOKEN_RE = /^[0-9a-f]{64}$/;
|
|
13
|
+
/**
|
|
14
|
+
* The code a vault without the enrollment ceremony answers a proposal with.
|
|
15
|
+
* Setup reports it as "this vault cannot connect plugins" instead of waiting.
|
|
16
|
+
*/
|
|
17
|
+
export const UNSUPPORTED_ENROLLMENT_CODE = 'unknown_method';
|
|
13
18
|
/**
|
|
14
19
|
* Codes the vault's closed enrollment-refusal vocabulary marks permanent. The
|
|
15
20
|
* client labels some module error frames transient/retry regardless, so the
|
|
16
21
|
* producer's code takes precedence over the client's action for these.
|
|
17
22
|
*/
|
|
18
23
|
export const TERMINAL_ENROLLMENT_CODES = new Set([
|
|
24
|
+
// The daemon's answer to an operation it does not implement: a vault built
|
|
25
|
+
// before the enrollment ceremony. It arrives as a transport Error frame with
|
|
26
|
+
// no class, which claustrum-client before 0.13.0 labels transient/retry, but
|
|
27
|
+
// asking again can never succeed.
|
|
28
|
+
UNSUPPORTED_ENROLLMENT_CODE,
|
|
19
29
|
'invalid_params',
|
|
20
30
|
'pending_exists',
|
|
21
31
|
'not_found',
|
|
@@ -638,6 +648,23 @@ export class ClaustrumEnrollmentManager {
|
|
|
638
648
|
retryCode: refusal.code,
|
|
639
649
|
};
|
|
640
650
|
}
|
|
651
|
+
// A vault without the ceremony cannot hold a request for this
|
|
652
|
+
// proposal, now or from an earlier run (the state has no request
|
|
653
|
+
// id). So nothing is blocked and nothing is in progress: remove the
|
|
654
|
+
// pending state, still under the ceremony lock, so status reads as
|
|
655
|
+
// "not enrolled" and a reset or a later run starts afresh.
|
|
656
|
+
if (refusal.code === UNSUPPORTED_ENROLLMENT_CODE) {
|
|
657
|
+
await lock.assertOwned();
|
|
658
|
+
await unlink(this.#paths.statePath).catch((cause) => {
|
|
659
|
+
if (cause.code !== 'ENOENT')
|
|
660
|
+
throw cause;
|
|
661
|
+
});
|
|
662
|
+
return {
|
|
663
|
+
state: 'unavailable',
|
|
664
|
+
proposedName: state.proposedName,
|
|
665
|
+
code: refusal.code,
|
|
666
|
+
};
|
|
667
|
+
}
|
|
641
668
|
return this.#block(state, refusal.code);
|
|
642
669
|
}
|
|
643
670
|
}
|
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
* `code`, a `class` and an `action`), so callers can tell the vault's verdict
|
|
5
5
|
* apart from a check made on this side.
|
|
6
6
|
*/
|
|
7
|
-
export type ClaustrumConsumerFailureKind = 'closed' | 'not-enrolled' | 'invalid-token' | 'unavailable' | 'identity-changed' | 'identity-unasserted' | 'insufficient-validity' | 'invalid-material' | 'not-active' | 'route-unavailable' | 'route-declined' | 'no-receipt' | 'unsafe-file' | 'invalid-state' | 'wrong-consumer' | 'roster-busy' | 'host-slot-login' | 'host-slot-placeholder' | 'placeholder-refresh';
|
|
7
|
+
export type ClaustrumConsumerFailureKind = 'closed' | 'not-enrolled' | 'invalid-token' | 'unavailable' | 'identity-changed' | 'identity-unasserted' | 'insufficient-validity' | 'invalid-material' | 'not-active' | 'route-unavailable' | 'route-declined' | 'no-receipt' | 'unsafe-file' | 'invalid-state' | 'wrong-consumer' | 'roster-busy' | 'host-slot-login' | 'host-slot-placeholder' | 'placeholder-refresh' | 'invalid-order';
|
|
8
8
|
export declare class ClaustrumConsumerError extends Error {
|
|
9
9
|
readonly kind: ClaustrumConsumerFailureKind;
|
|
10
10
|
constructor(kind: ClaustrumConsumerFailureKind, message: string);
|
|
@@ -10,7 +10,7 @@ export { assertHostSlotMatchesMode, assertNotCustodyPlaceholder, CUSTODY_PLACEHO
|
|
|
10
10
|
export { acquireInsulaQuotaSource, type InsulaQuotaContext, type InsulaQuotaLookup, type InsulaQuotaMiss, type InsulaQuotaOptions, type InsulaQuotaReading, type InsulaQuotaResult, type InsulaQuotaSource, type InsulaUsageEntry, type InsulaUsageTransport, type InsulaUsageWatch, type InsulaUsageWindow, type InsulaWatchOptions, } from './insula.js';
|
|
11
11
|
export { acceptAccount, type DeclinedAccount, declineAccount, isDeclined, } from './interlock.js';
|
|
12
12
|
export { drainVaultQuota } from './quota-writer.js';
|
|
13
|
-
export { type AccountMapper, acceptVaultRoute, DEFAULT_ROUTE_PREFIX, declineVaultRoute, type MutateVaultRosterOptions, mutateVaultRoster, type ProjectionOptions, projectVaultRoster, type QuotaReceipt, readVaultRoster, recordVaultAccountQuota, recordVaultQuota, refreshVaultRoster, resolveVaultPrimary, type VaultPrimary, type VaultPrimaryBinding, type VaultPrimaryUnavailableReason, type VaultRosterFile, type VaultRosterLockContext, type VaultRosterRow, vaultRoutingRows, } from './roster.js';
|
|
13
|
+
export { type AccountMapper, acceptVaultRoute, DEFAULT_ROUTE_PREFIX, declineVaultRoute, type MutateVaultRosterOptions, mutateVaultRoster, type ProjectionOptions, projectVaultRoster, type QuotaReceipt, type ReorderVaultRosterOptions, type ReorderVaultRosterResult, readVaultRoster, recordVaultAccountQuota, recordVaultQuota, refreshVaultRoster, reorderVaultRoster, resolveVaultPrimary, type VaultPrimary, type VaultPrimaryBinding, type VaultPrimaryUnavailableReason, type VaultRosterFile, type VaultRosterLockContext, type VaultRosterRow, vaultRoutingRows, } from './roster.js';
|
|
14
14
|
export { type ChangeNotice, ChangeNoticeReader, RESUBSCRIBE_BACKOFF_MS, SAFETY_POLL_MS, ScopedRosterWatch, type ScopedRosterWatchOptions, type ScopedWatchEnd, type ScopedWatchHandle, type ScopedWatchNoticeShape, type ScopedWatchSource, WATCH_RETRY_MS, type WatchMode, } from './watch.js';
|
|
15
15
|
/**
|
|
16
16
|
* Connect the client that lists and fetches this consumer's vault credentials
|
|
@@ -15,7 +15,7 @@ export { assertHostSlotMatchesMode, assertNotCustodyPlaceholder, CUSTODY_PLACEHO
|
|
|
15
15
|
export { acquireInsulaQuotaSource, } from './insula.js';
|
|
16
16
|
export { acceptAccount, declineAccount, isDeclined, } from './interlock.js';
|
|
17
17
|
export { drainVaultQuota } from './quota-writer.js';
|
|
18
|
-
export { acceptVaultRoute, DEFAULT_ROUTE_PREFIX, declineVaultRoute, mutateVaultRoster, projectVaultRoster, readVaultRoster, recordVaultAccountQuota, recordVaultQuota, refreshVaultRoster, resolveVaultPrimary, vaultRoutingRows, } from './roster.js';
|
|
18
|
+
export { acceptVaultRoute, DEFAULT_ROUTE_PREFIX, declineVaultRoute, mutateVaultRoster, projectVaultRoster, readVaultRoster, recordVaultAccountQuota, recordVaultQuota, refreshVaultRoster, reorderVaultRoster, resolveVaultPrimary, vaultRoutingRows, } from './roster.js';
|
|
19
19
|
export { ChangeNoticeReader, RESUBSCRIBE_BACKOFF_MS, SAFETY_POLL_MS, ScopedRosterWatch, WATCH_RETRY_MS, } from './watch.js';
|
|
20
20
|
/**
|
|
21
21
|
* Connect the client that lists and fetches this consumer's vault credentials
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { resolve } from 'node:path';
|
|
2
2
|
import { createLogger } from '../logger/index.js';
|
|
3
3
|
import { isQuotaObservation } from '../quota/index.js';
|
|
4
|
+
import { quotaFields } from '../quota/pending.js';
|
|
4
5
|
import { applyVaultQuota, mutateVaultRoster, } from './roster.js';
|
|
5
6
|
// Every consumer of the same file shares one mailbox and one lock waiter.
|
|
6
7
|
const writers = new Map();
|
|
@@ -34,65 +35,14 @@ export function retainVaultQuotaWriter(path, listener) {
|
|
|
34
35
|
return writer.listeners.size ? Promise.resolve() : drainVaultQuota(path);
|
|
35
36
|
})());
|
|
36
37
|
}
|
|
37
|
-
//
|
|
38
|
-
// window (scope and label), each covered-but-unread window, the budget, each
|
|
39
|
-
// counter and the credits record. The mailbox keeps the newest of each part on
|
|
40
|
-
// its own, so a later observation that carries only some parts can't erase an
|
|
41
|
-
// older but still newest reading of another part, which is how
|
|
42
|
-
// mergeQuotaObservation treats them on disk. Each key also carries the
|
|
43
|
-
// receipt's identity, so the identity fence still applies to every part.
|
|
38
|
+
// Each field retains the receipt fence as well as its independent timestamp.
|
|
44
39
|
function fields(publication) {
|
|
45
|
-
|
|
46
|
-
const { observation } = publication;
|
|
47
|
-
const witness = JSON.stringify([
|
|
40
|
+
return quotaFields(publication, JSON.stringify([
|
|
48
41
|
publication.routeId,
|
|
49
42
|
publication.receipt?.credentialId,
|
|
50
43
|
publication.receipt?.accountIdentitySource,
|
|
51
44
|
publication.receipt?.expectedAccountIdentity,
|
|
52
|
-
]);
|
|
53
|
-
const add = (key, at, part) => result.set(`${witness}:${key}`, {
|
|
54
|
-
at,
|
|
55
|
-
order: 0,
|
|
56
|
-
publication: { ...publication, observation: part },
|
|
57
|
-
});
|
|
58
|
-
const keyFor = (scope, label) => JSON.stringify([scope ?? 'all', label]);
|
|
59
|
-
const read = new Set();
|
|
60
|
-
for (const reading of observation.readings ?? []) {
|
|
61
|
-
const key = keyFor(reading.scope, reading.label);
|
|
62
|
-
read.add(key);
|
|
63
|
-
add(key, observation.checkedAt, {
|
|
64
|
-
checkedAt: observation.checkedAt,
|
|
65
|
-
readings: [{ ...reading }],
|
|
66
|
-
});
|
|
67
|
-
}
|
|
68
|
-
for (const pair of observation.coverage ?? []) {
|
|
69
|
-
const key = keyFor(pair.scope, pair.label);
|
|
70
|
-
if (!read.has(key))
|
|
71
|
-
add(key, observation.checkedAt, {
|
|
72
|
-
checkedAt: observation.checkedAt,
|
|
73
|
-
coverage: [{ ...pair }],
|
|
74
|
-
});
|
|
75
|
-
}
|
|
76
|
-
if (observation.budget)
|
|
77
|
-
add('budget', observation.checkedAt, {
|
|
78
|
-
checkedAt: observation.checkedAt,
|
|
79
|
-
budget: { ...observation.budget },
|
|
80
|
-
});
|
|
81
|
-
for (const [name, counter] of Object.entries(observation.counters ?? {})) {
|
|
82
|
-
add(`counter:${name}`, counter.checkedAt, {
|
|
83
|
-
checkedAt: observation.checkedAt,
|
|
84
|
-
counters: { [name]: { ...counter } },
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
if (observation.credits)
|
|
88
|
-
add('credits', observation.credits.checkedAt, {
|
|
89
|
-
checkedAt: observation.checkedAt,
|
|
90
|
-
credits: { ...observation.credits },
|
|
91
|
-
});
|
|
92
|
-
// Even an empty observation can bind an account proved by its receipt.
|
|
93
|
-
if (!result.size)
|
|
94
|
-
add('empty', observation.checkedAt, { checkedAt: observation.checkedAt });
|
|
95
|
-
return result;
|
|
45
|
+
]));
|
|
96
46
|
}
|
|
97
47
|
/** Enqueue without filesystem work; each quota field retains its own receipt fence. */
|
|
98
48
|
export function enqueueVaultQuota(path, publication) {
|
|
@@ -119,6 +119,37 @@ export declare function mutateVaultRoster<T>(path: string, change: (current: Vau
|
|
|
119
119
|
export declare function declineVaultRoute(path: string, routeId: string): Promise<undefined>;
|
|
120
120
|
/** Lift the user's decline for a vault account and every alias of it. */
|
|
121
121
|
export declare function acceptVaultRoute(path: string, routeId: string): Promise<undefined>;
|
|
122
|
+
/** Options of `reorderVaultRoster`. */
|
|
123
|
+
export interface ReorderVaultRosterOptions {
|
|
124
|
+
/** Aborts the wait for the roster's write lock. */
|
|
125
|
+
signal?: AbortSignal;
|
|
126
|
+
}
|
|
127
|
+
export interface ReorderVaultRosterResult {
|
|
128
|
+
/** The route id order now on disk. */
|
|
129
|
+
ids: string[];
|
|
130
|
+
/** `unchanged` when the roster was already in this order; nothing was written. */
|
|
131
|
+
outcome: 'reordered' | 'unchanged';
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Set the order vault accounts are tried in. Routing reads that order from
|
|
135
|
+
* the roster's row order (`vaultRoutingRows`), and a later discovery keeps
|
|
136
|
+
* each account at its position, so the order lasts until the next reorder.
|
|
137
|
+
* The order is this host's routing preference: the vault has no order of its
|
|
138
|
+
* own, and this never contacts it.
|
|
139
|
+
*
|
|
140
|
+
* `routeIds` must name every roster route id exactly once; anything else
|
|
141
|
+
* (an unknown, missing or repeated id) refuses with `invalid-order` and
|
|
142
|
+
* writes nothing. It runs under the roster's write lock, like every other
|
|
143
|
+
* roster write, so a quota reading or decline committed meanwhile is kept.
|
|
144
|
+
* Each row is kept as the same object, so only the positions change: every
|
|
145
|
+
* row's fields and the rest of the file stay as they were. An order equal to
|
|
146
|
+
* the current one writes nothing. A host with no roster file yet has no
|
|
147
|
+
* routes, so only the empty order is accepted.
|
|
148
|
+
*
|
|
149
|
+
* A `ClaustrumConsumer` in the same process does not see the new order until
|
|
150
|
+
* it re-reads the file: call `consumer.reorder` instead to update both.
|
|
151
|
+
*/
|
|
152
|
+
export declare function reorderVaultRoster(path: string, routeIds: readonly string[], options?: ReorderVaultRosterOptions): Promise<ReorderVaultRosterResult>;
|
|
122
153
|
/**
|
|
123
154
|
* The receipt fields a quota or profile observation must carry to say which
|
|
124
155
|
* send (credential and account) it came from. Pass the
|
|
@@ -378,6 +378,78 @@ export function acceptVaultRoute(path, routeId) {
|
|
|
378
378
|
};
|
|
379
379
|
});
|
|
380
380
|
}
|
|
381
|
+
function invalidOrder(message) {
|
|
382
|
+
return new ClaustrumConsumerError('invalid-order', message);
|
|
383
|
+
}
|
|
384
|
+
/**
|
|
385
|
+
* Why `routeIds` is not an order of these rows: it must name every distinct
|
|
386
|
+
* route id exactly once and nothing else. The message quotes only ids the
|
|
387
|
+
* caller supplied; route ids it left out are counted, not named.
|
|
388
|
+
*/
|
|
389
|
+
function vaultOrderProblem(rows, routeIds) {
|
|
390
|
+
if (!Array.isArray(routeIds))
|
|
391
|
+
return 'route ids must be an array of route ids';
|
|
392
|
+
const rosterIds = new Set(rows.map((row) => row.routeId));
|
|
393
|
+
const given = new Set();
|
|
394
|
+
for (const id of routeIds) {
|
|
395
|
+
if (typeof id !== 'string')
|
|
396
|
+
return 'route ids must be an array of route ids';
|
|
397
|
+
if (given.has(id))
|
|
398
|
+
return `route id ${id} appears more than once`;
|
|
399
|
+
if (!rosterIds.has(id))
|
|
400
|
+
return `route id ${id} is not in the roster`;
|
|
401
|
+
given.add(id);
|
|
402
|
+
}
|
|
403
|
+
const missing = [...rosterIds].filter((id) => !given.has(id)).length;
|
|
404
|
+
if (missing > 0)
|
|
405
|
+
return `the order leaves out ${missing} roster route id${missing === 1 ? '' : 's'}`;
|
|
406
|
+
return undefined;
|
|
407
|
+
}
|
|
408
|
+
/**
|
|
409
|
+
* Set the order vault accounts are tried in. Routing reads that order from
|
|
410
|
+
* the roster's row order (`vaultRoutingRows`), and a later discovery keeps
|
|
411
|
+
* each account at its position, so the order lasts until the next reorder.
|
|
412
|
+
* The order is this host's routing preference: the vault has no order of its
|
|
413
|
+
* own, and this never contacts it.
|
|
414
|
+
*
|
|
415
|
+
* `routeIds` must name every roster route id exactly once; anything else
|
|
416
|
+
* (an unknown, missing or repeated id) refuses with `invalid-order` and
|
|
417
|
+
* writes nothing. It runs under the roster's write lock, like every other
|
|
418
|
+
* roster write, so a quota reading or decline committed meanwhile is kept.
|
|
419
|
+
* Each row is kept as the same object, so only the positions change: every
|
|
420
|
+
* row's fields and the rest of the file stay as they were. An order equal to
|
|
421
|
+
* the current one writes nothing. A host with no roster file yet has no
|
|
422
|
+
* routes, so only the empty order is accepted.
|
|
423
|
+
*
|
|
424
|
+
* A `ClaustrumConsumer` in the same process does not see the new order until
|
|
425
|
+
* it re-reads the file: call `consumer.reorder` instead to update both.
|
|
426
|
+
*/
|
|
427
|
+
export function reorderVaultRoster(path, routeIds, options = {}) {
|
|
428
|
+
return mutateVaultRoster(path, (current) => {
|
|
429
|
+
const rows = current?.rows ?? [];
|
|
430
|
+
const problem = vaultOrderProblem(rows, routeIds);
|
|
431
|
+
if (problem)
|
|
432
|
+
throw invalidOrder(problem);
|
|
433
|
+
// Group by route id so a hand-edited file that repeats one keeps every
|
|
434
|
+
// copy: the later copies travel right after the first.
|
|
435
|
+
const byId = new Map();
|
|
436
|
+
for (const row of rows) {
|
|
437
|
+
const group = byId.get(row.routeId);
|
|
438
|
+
if (group)
|
|
439
|
+
group.push(row);
|
|
440
|
+
else
|
|
441
|
+
byId.set(row.routeId, [row]);
|
|
442
|
+
}
|
|
443
|
+
const ids = [...routeIds];
|
|
444
|
+
const next = ids.flatMap((id) => byId.get(id) ?? []);
|
|
445
|
+
if (!current || next.every((row, index) => row === rows[index]))
|
|
446
|
+
return { result: { ids, outcome: 'unchanged' } };
|
|
447
|
+
return {
|
|
448
|
+
next: { ...current, rows: next },
|
|
449
|
+
result: { ids, outcome: 'reordered' },
|
|
450
|
+
};
|
|
451
|
+
}, { ...(options.signal && { signal: options.signal }) });
|
|
452
|
+
}
|
|
381
453
|
/**
|
|
382
454
|
* What a receipt may do to a row's quota: `hold` (the row holds the receipt's
|
|
383
455
|
* credential and account), `bind` (the row has never had a known account and
|
|
@@ -48,6 +48,43 @@ export interface RoutingSectionOptions {
|
|
|
48
48
|
*/
|
|
49
49
|
orderedVariants?: MenuChoice[];
|
|
50
50
|
formerMainId?: string;
|
|
51
|
+
/**
|
|
52
|
+
* The vault accounts' routing order, for a plugin that can run in vault
|
|
53
|
+
* mode. Called on each build; return the order while the plugin routes
|
|
54
|
+
* through vault accounts and undefined otherwise. While it returns one, the
|
|
55
|
+
* section shows and sets the vault accounts' order (by the name the menu
|
|
56
|
+
* shows for each account) instead of the pool roster's. Wire it to
|
|
57
|
+
* `ClaustrumConsumer.snapshot()` and `ClaustrumConsumer.reorder`, or to
|
|
58
|
+
* `readVaultRoster` and `reorderVaultRoster` for a plugin without a
|
|
59
|
+
* consumer.
|
|
60
|
+
*/
|
|
61
|
+
vaultOrder?: () => VaultRoutingOrder | undefined | Promise<VaultRoutingOrder | undefined>;
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* The order vault accounts are tried in, as the Routing section reads and
|
|
65
|
+
* sets it in vault mode. Shaped after `/claustrum`'s roster, without
|
|
66
|
+
* importing it, so the menu does not need the vault client.
|
|
67
|
+
*/
|
|
68
|
+
export interface VaultRoutingOrder {
|
|
69
|
+
/**
|
|
70
|
+
* Every vault roster row, in roster (routing) order: its route id and the
|
|
71
|
+
* name the plugin shows for that account (the roster row's `label`, or its
|
|
72
|
+
* email). Route ids are long and opaque, so the section shows and accepts
|
|
73
|
+
* labels; a route id is still accepted wherever a label is.
|
|
74
|
+
*/
|
|
75
|
+
rows: readonly {
|
|
76
|
+
id: string;
|
|
77
|
+
label: string;
|
|
78
|
+
}[];
|
|
79
|
+
/**
|
|
80
|
+
* Sets the order. `ids` are route ids, every one exactly once. Wire it to
|
|
81
|
+
* `ClaustrumConsumer.reorder` or `reorderVaultRoster`, which refuse any
|
|
82
|
+
* other list without writing.
|
|
83
|
+
*/
|
|
84
|
+
reorder(ids: readonly string[]): Promise<{
|
|
85
|
+
ids: readonly string[];
|
|
86
|
+
outcome: 'reordered' | 'unchanged';
|
|
87
|
+
}>;
|
|
51
88
|
}
|
|
52
89
|
export interface LimitsSectionOptions {
|
|
53
90
|
/**
|