oc-codex-multi-auth 6.20.0 → 6.22.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/LICENSE +21 -21
- package/README.md +729 -568
- package/assets/icon.svg +7 -7
- package/assets/opencode-logo-ornate-dark.svg +18 -18
- package/assets/readme-hero.svg +31 -31
- package/config/README.md +177 -177
- package/config/minimal-opencode.json +14 -14
- package/config/opencode-legacy.json +1496 -1496
- package/config/opencode-modern.json +555 -555
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +567 -102
- package/dist/index.js.map +1 -1
- package/dist/lib/account-display.d.ts +46 -0
- package/dist/lib/account-display.d.ts.map +1 -1
- package/dist/lib/account-display.js +263 -1
- package/dist/lib/account-display.js.map +1 -1
- package/dist/lib/accounts/persistence.d.ts +3 -1
- package/dist/lib/accounts/persistence.d.ts.map +1 -1
- package/dist/lib/accounts/persistence.js +27 -3
- package/dist/lib/accounts/persistence.js.map +1 -1
- package/dist/lib/accounts/stale-state.d.ts +1 -0
- package/dist/lib/accounts/stale-state.d.ts.map +1 -1
- package/dist/lib/accounts/stale-state.js +30 -0
- package/dist/lib/accounts/stale-state.js.map +1 -1
- package/dist/lib/accounts/warm-recovery.d.ts +8 -0
- package/dist/lib/accounts/warm-recovery.d.ts.map +1 -0
- package/dist/lib/accounts/warm-recovery.js +70 -0
- package/dist/lib/accounts/warm-recovery.js.map +1 -0
- package/dist/lib/accounts/warm-request.d.ts +2 -0
- package/dist/lib/accounts/warm-request.d.ts.map +1 -1
- package/dist/lib/accounts/warm-request.js +4 -2
- package/dist/lib/accounts/warm-request.js.map +1 -1
- package/dist/lib/accounts.d.ts +5 -1
- package/dist/lib/accounts.d.ts.map +1 -1
- package/dist/lib/accounts.js +22 -17
- package/dist/lib/accounts.js.map +1 -1
- package/dist/lib/auth/login-runner.d.ts.map +1 -1
- package/dist/lib/auth/login-runner.js +79 -2
- package/dist/lib/auth/login-runner.js.map +1 -1
- package/dist/lib/auto-update-checker.d.ts +17 -1
- package/dist/lib/auto-update-checker.d.ts.map +1 -1
- package/dist/lib/auto-update-checker.js +49 -3
- package/dist/lib/auto-update-checker.js.map +1 -1
- package/dist/lib/circuit-breaker.d.ts +5 -0
- package/dist/lib/circuit-breaker.d.ts.map +1 -1
- package/dist/lib/circuit-breaker.js +23 -6
- package/dist/lib/circuit-breaker.js.map +1 -1
- package/dist/lib/cli.d.ts +1 -0
- package/dist/lib/cli.d.ts.map +1 -1
- package/dist/lib/cli.js +9 -3
- package/dist/lib/cli.js.map +1 -1
- package/dist/lib/codex-reset.d.ts +7 -1
- package/dist/lib/codex-reset.d.ts.map +1 -1
- package/dist/lib/codex-reset.js +9 -2
- package/dist/lib/codex-reset.js.map +1 -1
- package/dist/lib/codex-usage.d.ts +7 -4
- package/dist/lib/codex-usage.d.ts.map +1 -1
- package/dist/lib/codex-usage.js +48 -13
- package/dist/lib/codex-usage.js.map +1 -1
- package/dist/lib/config.d.ts +77 -1
- package/dist/lib/config.d.ts.map +1 -1
- package/dist/lib/config.js +190 -15
- package/dist/lib/config.js.map +1 -1
- package/dist/lib/context-overflow.js +10 -10
- package/dist/lib/desktop-notifications.js +6 -6
- package/dist/lib/oauth-success.js +202 -202
- package/dist/lib/parallel-probe.d.ts.map +1 -1
- package/dist/lib/parallel-probe.js +2 -1
- package/dist/lib/parallel-probe.js.map +1 -1
- package/dist/lib/plan-allotment.d.ts +72 -0
- package/dist/lib/plan-allotment.d.ts.map +1 -0
- package/dist/lib/plan-allotment.js +142 -0
- package/dist/lib/plan-allotment.js.map +1 -0
- package/dist/lib/plugin-origin.d.ts +77 -0
- package/dist/lib/plugin-origin.d.ts.map +1 -0
- package/dist/lib/plugin-origin.js +301 -0
- package/dist/lib/plugin-origin.js.map +1 -0
- package/dist/lib/prompts/codex-opencode-bridge.js +67 -67
- package/dist/lib/prompts/codex.js +75 -75
- package/dist/lib/quota-display.d.ts +40 -0
- package/dist/lib/quota-display.d.ts.map +1 -0
- package/dist/lib/quota-display.js +45 -0
- package/dist/lib/quota-display.js.map +1 -0
- package/dist/lib/quota-notifications.d.ts +2 -1
- package/dist/lib/quota-notifications.d.ts.map +1 -1
- package/dist/lib/quota-notifications.js +43 -14
- package/dist/lib/quota-notifications.js.map +1 -1
- package/dist/lib/quota-overview.d.ts +253 -0
- package/dist/lib/quota-overview.d.ts.map +1 -0
- package/dist/lib/quota-overview.js +707 -0
- package/dist/lib/quota-overview.js.map +1 -0
- package/dist/lib/request/fetch-helpers.js +22 -18
- package/dist/lib/request/fetch-helpers.js.map +1 -1
- package/dist/lib/request/response-handler.d.ts.map +1 -1
- package/dist/lib/request/response-handler.js +85 -43
- package/dist/lib/request/response-handler.js.map +1 -1
- package/dist/lib/request/retry-budget.d.ts +26 -0
- package/dist/lib/request/retry-budget.d.ts.map +1 -1
- package/dist/lib/request/retry-budget.js +43 -0
- package/dist/lib/request/retry-budget.js.map +1 -1
- package/dist/lib/rotation.d.ts +1 -1
- package/dist/lib/schemas.d.ts +67 -0
- package/dist/lib/schemas.d.ts.map +1 -1
- package/dist/lib/schemas.js +53 -0
- package/dist/lib/schemas.js.map +1 -1
- package/dist/lib/storage/backup.d.ts +33 -0
- package/dist/lib/storage/backup.d.ts.map +1 -1
- package/dist/lib/storage/backup.js +43 -7
- package/dist/lib/storage/backup.js.map +1 -1
- package/dist/lib/storage/credential-snapshots.d.ts +78 -0
- package/dist/lib/storage/credential-snapshots.d.ts.map +1 -0
- package/dist/lib/storage/credential-snapshots.js +302 -0
- package/dist/lib/storage/credential-snapshots.js.map +1 -0
- package/dist/lib/storage/export-import.d.ts.map +1 -1
- package/dist/lib/storage/export-import.js +7 -0
- package/dist/lib/storage/export-import.js.map +1 -1
- package/dist/lib/storage/flagged.d.ts.map +1 -1
- package/dist/lib/storage/flagged.js +23 -1
- package/dist/lib/storage/flagged.js.map +1 -1
- package/dist/lib/storage/load-save.d.ts +5 -0
- package/dist/lib/storage/load-save.d.ts.map +1 -1
- package/dist/lib/storage/load-save.js +61 -0
- package/dist/lib/storage/load-save.js.map +1 -1
- package/dist/lib/storage/normalize.d.ts.map +1 -1
- package/dist/lib/storage/normalize.js +38 -2
- package/dist/lib/storage/normalize.js.map +1 -1
- package/dist/lib/storage/paths.d.ts +1 -0
- package/dist/lib/storage/paths.d.ts.map +1 -1
- package/dist/lib/storage/paths.js +1 -1
- package/dist/lib/storage/paths.js.map +1 -1
- package/dist/lib/storage/state.d.ts +1 -0
- package/dist/lib/storage/state.d.ts.map +1 -1
- package/dist/lib/storage/state.js +12 -0
- package/dist/lib/storage/state.js.map +1 -1
- package/dist/lib/storage/test-home-guard.d.ts +35 -0
- package/dist/lib/storage/test-home-guard.d.ts.map +1 -0
- package/dist/lib/storage/test-home-guard.js +59 -0
- package/dist/lib/storage/test-home-guard.js.map +1 -0
- package/dist/lib/tools/codex-dashboard.d.ts.map +1 -1
- package/dist/lib/tools/codex-dashboard.js +3 -2
- package/dist/lib/tools/codex-dashboard.js.map +1 -1
- package/dist/lib/tools/codex-doctor.d.ts.map +1 -1
- package/dist/lib/tools/codex-doctor.js +16 -0
- package/dist/lib/tools/codex-doctor.js.map +1 -1
- package/dist/lib/tools/codex-health.d.ts.map +1 -1
- package/dist/lib/tools/codex-health.js +10 -2
- package/dist/lib/tools/codex-health.js.map +1 -1
- package/dist/lib/tools/codex-label.d.ts.map +1 -1
- package/dist/lib/tools/codex-label.js +1 -0
- package/dist/lib/tools/codex-label.js.map +1 -1
- package/dist/lib/tools/codex-limits.d.ts.map +1 -1
- package/dist/lib/tools/codex-limits.js +26 -10
- package/dist/lib/tools/codex-limits.js.map +1 -1
- package/dist/lib/tools/codex-list.d.ts.map +1 -1
- package/dist/lib/tools/codex-list.js +28 -3
- package/dist/lib/tools/codex-list.js.map +1 -1
- package/dist/lib/tools/codex-note.d.ts.map +1 -1
- package/dist/lib/tools/codex-note.js +4 -1
- package/dist/lib/tools/codex-note.js.map +1 -1
- package/dist/lib/tools/codex-pool.d.ts.map +1 -1
- package/dist/lib/tools/codex-pool.js +6 -2
- package/dist/lib/tools/codex-pool.js.map +1 -1
- package/dist/lib/tools/codex-refresh.d.ts.map +1 -1
- package/dist/lib/tools/codex-refresh.js +4 -1
- package/dist/lib/tools/codex-refresh.js.map +1 -1
- package/dist/lib/tools/codex-remove.d.ts.map +1 -1
- package/dist/lib/tools/codex-remove.js +1 -0
- package/dist/lib/tools/codex-remove.js.map +1 -1
- package/dist/lib/tools/codex-reset.d.ts.map +1 -1
- package/dist/lib/tools/codex-reset.js +53 -8
- package/dist/lib/tools/codex-reset.js.map +1 -1
- package/dist/lib/tools/codex-status.d.ts.map +1 -1
- package/dist/lib/tools/codex-status.js +25 -2
- package/dist/lib/tools/codex-status.js.map +1 -1
- package/dist/lib/tools/codex-switch.d.ts.map +1 -1
- package/dist/lib/tools/codex-switch.js +1 -0
- package/dist/lib/tools/codex-switch.js.map +1 -1
- package/dist/lib/tools/codex-tag.d.ts.map +1 -1
- package/dist/lib/tools/codex-tag.js +4 -1
- package/dist/lib/tools/codex-tag.js.map +1 -1
- package/dist/lib/tools/codex-warm.d.ts +2 -1
- package/dist/lib/tools/codex-warm.d.ts.map +1 -1
- package/dist/lib/tools/codex-warm.js +49 -5
- package/dist/lib/tools/codex-warm.js.map +1 -1
- package/dist/lib/tools/index.d.ts +10 -1
- package/dist/lib/tools/index.d.ts.map +1 -1
- package/dist/lib/tools/index.js.map +1 -1
- package/dist/lib/tui-quota-cache.d.ts +35 -0
- package/dist/lib/tui-quota-cache.d.ts.map +1 -1
- package/dist/lib/tui-quota-cache.js +79 -12
- package/dist/lib/tui-quota-cache.js.map +1 -1
- package/dist/lib/tui-quota-overview.d.ts +55 -0
- package/dist/lib/tui-quota-overview.d.ts.map +1 -0
- package/dist/lib/tui-quota-overview.js +209 -0
- package/dist/lib/tui-quota-overview.js.map +1 -0
- package/dist/lib/tui-status.d.ts +55 -0
- package/dist/lib/tui-status.d.ts.map +1 -1
- package/dist/lib/tui-status.js +155 -14
- package/dist/lib/tui-status.js.map +1 -1
- package/dist/lib/ui/auth-menu.d.ts +2 -0
- package/dist/lib/ui/auth-menu.d.ts.map +1 -1
- package/dist/lib/ui/auth-menu.js +10 -6
- package/dist/lib/ui/auth-menu.js.map +1 -1
- package/dist/tui.d.ts +59 -1
- package/dist/tui.d.ts.map +1 -1
- package/dist/tui.js +535 -43
- package/dist/tui.js.map +1 -1
- package/package.json +155 -155
- package/scripts/audit-dev-allowlist.js +114 -114
- package/scripts/clean-dist.js +27 -27
- package/scripts/copy-oauth-success.js +47 -47
- package/scripts/install-oc-codex-multi-auth-core.js +2003 -1469
- package/scripts/install-oc-codex-multi-auth.js +37 -37
- package/scripts/test-all-models.sh +260 -260
- package/scripts/validate-model-map.sh +97 -97
|
@@ -94,7 +94,10 @@ export function createCodexTagTool(ctx) {
|
|
|
94
94
|
cachedAccountManagerRef.current = reloadedManager;
|
|
95
95
|
accountManagerPromiseRef.current = Promise.resolve(reloadedManager);
|
|
96
96
|
}
|
|
97
|
-
const accountLabel = formatCommandAccountLabel(persistedAccount, targetIndex, {
|
|
97
|
+
const accountLabel = formatCommandAccountLabel(persistedAccount, targetIndex, {
|
|
98
|
+
maskEmail,
|
|
99
|
+
peerAccounts: storage.accounts,
|
|
100
|
+
});
|
|
98
101
|
const previousText = previousTags.length > 0 ? previousTags.join(", ") : "none";
|
|
99
102
|
const nextText = normalizedTags.length > 0 ? normalizedTags.join(", ") : "none";
|
|
100
103
|
if (ui.v2Enabled) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex-tag.js","sourceRoot":"","sources":["../../../lib/tools/codex-tag.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"codex-tag.js","sourceRoot":"","sources":["../../../lib/tools/codex-tag.ts"],"names":[],"mappings":"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"}
|
|
@@ -22,12 +22,13 @@
|
|
|
22
22
|
*/
|
|
23
23
|
import { type ToolDefinition } from "@opencode-ai/plugin/tool";
|
|
24
24
|
import { type AccountMetadataV3, type AccountStorageV3 } from "../storage.js";
|
|
25
|
+
import { type WarmRecoveryObservation } from "../accounts/warm-recovery.js";
|
|
25
26
|
import { type WarmOutcome } from "../accounts/warm.js";
|
|
26
27
|
import type { ToolContext } from "./index.js";
|
|
27
28
|
/**
|
|
28
29
|
* Build the real per-account warm function. Exported for testing so the
|
|
29
30
|
* adapter can be exercised against injected fakes without a live network.
|
|
30
31
|
*/
|
|
31
|
-
export declare function createWarmOne(storage: AccountStorageV3): (account: AccountMetadataV3) => Promise<WarmOutcome>;
|
|
32
|
+
export declare function createWarmOne(storage: AccountStorageV3, succeeded?: WarmRecoveryObservation[]): (account: AccountMetadataV3) => Promise<WarmOutcome>;
|
|
32
33
|
export declare function createCodexWarmTool(ctx: ToolContext): ToolDefinition;
|
|
33
34
|
//# sourceMappingURL=codex-warm.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex-warm.d.ts","sourceRoot":"","sources":["../../../lib/tools/codex-warm.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAQ,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAgB,KAAK,iBAAiB,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"codex-warm.d.ts","sourceRoot":"","sources":["../../../lib/tools/codex-warm.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAQ,KAAK,cAAc,EAAE,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAgB,KAAK,iBAAiB,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAC;AAC5F,OAAO,EAAwB,KAAK,uBAAuB,EAAE,MAAM,8BAA8B,CAAC;AAMlG,OAAO,EAAgB,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAOrE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C;;;GAGG;AACH,wBAAgB,aAAa,CAC5B,OAAO,EAAE,gBAAgB,EACzB,SAAS,CAAC,EAAE,uBAAuB,EAAE,GACnC,CAAC,OAAO,EAAE,iBAAiB,KAAK,OAAO,CAAC,WAAW,CAAC,CA2BtD;AAED,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,WAAW,GAAG,cAAc,CA4GpE"}
|
|
@@ -22,6 +22,7 @@
|
|
|
22
22
|
*/
|
|
23
23
|
import { tool } from "@opencode-ai/plugin/tool";
|
|
24
24
|
import { loadAccounts } from "../storage.js";
|
|
25
|
+
import { recoverWarmedAccount } from "../accounts/warm-recovery.js";
|
|
25
26
|
import { ensureCodexUsageAccessToken, resolveCodexUsageAccountId, } from "../codex-usage.js";
|
|
26
27
|
import { warmAccountWindow } from "../accounts/warm-request.js";
|
|
27
28
|
import { warmAccounts } from "../accounts/warm.js";
|
|
@@ -31,8 +32,9 @@ import { formatUiHeader, formatUiItem, paintUiText, } from "../ui/format.js";
|
|
|
31
32
|
* Build the real per-account warm function. Exported for testing so the
|
|
32
33
|
* adapter can be exercised against injected fakes without a live network.
|
|
33
34
|
*/
|
|
34
|
-
export function createWarmOne(storage) {
|
|
35
|
+
export function createWarmOne(storage, succeeded) {
|
|
35
36
|
return async (account) => {
|
|
37
|
+
const snapshot = { ...account, rateLimitResetTimes: { ...account.rateLimitResetTimes } };
|
|
36
38
|
const { accessToken } = await ensureCodexUsageAccessToken({ storage, account });
|
|
37
39
|
const accountId = resolveCodexUsageAccountId({ account, accessToken });
|
|
38
40
|
if (!accountId) {
|
|
@@ -52,6 +54,10 @@ export function createWarmOne(storage) {
|
|
|
52
54
|
detail: result.detail ?? "quota/usage limit reached",
|
|
53
55
|
};
|
|
54
56
|
}
|
|
57
|
+
if (!result.rateLimited && result.model)
|
|
58
|
+
succeeded?.push({
|
|
59
|
+
account: { ...snapshot, refreshToken: account.refreshToken }, model: result.model, accessToken,
|
|
60
|
+
});
|
|
55
61
|
return { status: "warmed" };
|
|
56
62
|
};
|
|
57
63
|
}
|
|
@@ -59,12 +65,15 @@ export function createCodexWarmTool(ctx) {
|
|
|
59
65
|
const { resolveUiRuntime, formatCommandAccountLabel, resolveMaskEmail, getStatusMarker, } = ctx;
|
|
60
66
|
return tool({
|
|
61
67
|
description: "Warm up all accounts by sending one lightweight request to each, starting their usage windows so weekly/5h quotas stagger instead of expiring together.",
|
|
62
|
-
args: {},
|
|
63
|
-
async execute() {
|
|
68
|
+
args: { format: tool.schema.enum(["text", "json"]).optional() },
|
|
69
|
+
async execute(args) {
|
|
64
70
|
const ui = resolveUiRuntime();
|
|
65
71
|
const maskEmail = resolveMaskEmail();
|
|
66
72
|
const storage = await loadAccounts();
|
|
67
73
|
if (!storage || storage.accounts.length === 0) {
|
|
74
|
+
if (args.format === "json") {
|
|
75
|
+
return JSON.stringify({ total: 0, warmedCount: 0, failedCount: 0, skippedCount: 0, blocksCleared: 0, results: [] });
|
|
76
|
+
}
|
|
68
77
|
if (ui.v2Enabled) {
|
|
69
78
|
return [
|
|
70
79
|
...formatUiHeader(ui, "Warm accounts"),
|
|
@@ -75,8 +84,40 @@ export function createCodexWarmTool(ctx) {
|
|
|
75
84
|
}
|
|
76
85
|
return "No Codex accounts configured. Run: opencode auth login";
|
|
77
86
|
}
|
|
78
|
-
const
|
|
87
|
+
const succeeded = [];
|
|
88
|
+
const warmOne = createWarmOne(storage, succeeded);
|
|
79
89
|
const summary = await warmAccounts(storage.accounts, warmOne);
|
|
90
|
+
let blocksCleared = 0;
|
|
91
|
+
const clearedSnapshots = [];
|
|
92
|
+
const changedObservations = new Set();
|
|
93
|
+
let blockClearError;
|
|
94
|
+
for (const observation of succeeded) {
|
|
95
|
+
try {
|
|
96
|
+
if (await recoverWarmedAccount(observation, (snapshot) => {
|
|
97
|
+
clearedSnapshots.push(snapshot);
|
|
98
|
+
changedObservations.add(observation);
|
|
99
|
+
}))
|
|
100
|
+
changedObservations.add(observation);
|
|
101
|
+
}
|
|
102
|
+
catch {
|
|
103
|
+
blockClearError = "Failed to clear local blocks; warm results are unchanged.";
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
blocksCleared = changedObservations.size;
|
|
107
|
+
try {
|
|
108
|
+
if (blocksCleared > 0) {
|
|
109
|
+
ctx.invalidateAccountManagerCache(clearedSnapshots);
|
|
110
|
+
await ctx.reloadCachedAccountManager();
|
|
111
|
+
}
|
|
112
|
+
}
|
|
113
|
+
catch {
|
|
114
|
+
blockClearError = "Failed to clear local blocks; warm results are unchanged.";
|
|
115
|
+
}
|
|
116
|
+
if (args.format === "json") {
|
|
117
|
+
return JSON.stringify({ total: summary.total, warmedCount: summary.warmedCount,
|
|
118
|
+
failedCount: summary.failedCount, skippedCount: summary.skippedCount, blocksCleared, blockClearError,
|
|
119
|
+
results: summary.results.map(({ index, status }) => ({ index, status })) });
|
|
120
|
+
}
|
|
80
121
|
const lines = ui.v2Enabled
|
|
81
122
|
? []
|
|
82
123
|
: [`Warming ${summary.total} account(s):`, ""];
|
|
@@ -84,6 +125,7 @@ export function createCodexWarmTool(ctx) {
|
|
|
84
125
|
const account = storage.accounts[result.index];
|
|
85
126
|
const label = formatCommandAccountLabel(account, result.index, {
|
|
86
127
|
maskEmail,
|
|
128
|
+
peerAccounts: storage.accounts,
|
|
87
129
|
});
|
|
88
130
|
if (result.status === "warmed") {
|
|
89
131
|
lines.push(` ${getStatusMarker(ui, "ok")} ${label}: Window started`);
|
|
@@ -104,7 +146,9 @@ export function createCodexWarmTool(ctx) {
|
|
|
104
146
|
});
|
|
105
147
|
}
|
|
106
148
|
lines.push("");
|
|
107
|
-
lines.push(`Summary: ${summary.warmedCount} warmed, ${summary.failedCount} failed, ${summary.skippedCount} skipped`);
|
|
149
|
+
lines.push(`Summary: ${summary.warmedCount} warmed, ${summary.failedCount} failed, ${summary.skippedCount} skipped, ${blocksCleared} blocks cleared`);
|
|
150
|
+
if (blockClearError)
|
|
151
|
+
lines.push(blockClearError);
|
|
108
152
|
if (ui.v2Enabled) {
|
|
109
153
|
return [
|
|
110
154
|
...formatUiHeader(ui, "Warm accounts"),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codex-warm.js","sourceRoot":"","sources":["../../../lib/tools/codex-warm.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,EAAE,IAAI,EAAuB,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,YAAY,EAAiD,MAAM,eAAe,CAAC;AAC5F,OAAO,EACN,2BAA2B,EAC3B,0BAA0B,GAC1B,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAChE,OAAO,EAAE,YAAY,EAAoB,MAAM,qBAAqB,CAAC;AACrE,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AACvC,OAAO,EACN,cAAc,EACd,YAAY,EACZ,WAAW,GACX,MAAM,iBAAiB,CAAC;AAGzB;;;GAGG;AACH,MAAM,UAAU,aAAa,CAC5B,OAAyB;
|
|
1
|
+
{"version":3,"file":"codex-warm.js","sourceRoot":"","sources":["../../../lib/tools/codex-warm.ts"],"names":[],"mappings":"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"}
|
|
@@ -64,11 +64,16 @@ export interface ToolContext {
|
|
|
64
64
|
formatCommandAccountLabel: (account: {
|
|
65
65
|
email?: string;
|
|
66
66
|
accountId?: string;
|
|
67
|
+
accountUserId?: string;
|
|
67
68
|
accountLabel?: string;
|
|
68
69
|
accountTags?: string[];
|
|
69
70
|
accountNote?: string;
|
|
70
71
|
} | undefined, index: number, options?: {
|
|
71
72
|
maskEmail?: boolean;
|
|
73
|
+
peerAccounts?: readonly ({
|
|
74
|
+
accountUserId?: string;
|
|
75
|
+
} | undefined)[];
|
|
76
|
+
omitSeat?: boolean;
|
|
72
77
|
}) => string;
|
|
73
78
|
resolveMaskEmail: () => boolean;
|
|
74
79
|
normalizeAccountTags: (raw: string) => string[];
|
|
@@ -93,11 +98,15 @@ export interface ToolContext {
|
|
|
93
98
|
account?: {
|
|
94
99
|
email?: string;
|
|
95
100
|
accountId?: string;
|
|
101
|
+
accountUserId?: string;
|
|
96
102
|
accountLabel?: string;
|
|
97
103
|
accountTags?: string[];
|
|
98
104
|
accountNote?: string;
|
|
99
105
|
};
|
|
100
106
|
label?: string;
|
|
107
|
+
peerAccounts?: readonly ({
|
|
108
|
+
accountUserId?: string;
|
|
109
|
+
} | undefined)[];
|
|
101
110
|
}) => Record<string, unknown>;
|
|
102
111
|
buildRoutingVisibilitySnapshot: (overrides?: {
|
|
103
112
|
modelFamily?: ModelFamily | null;
|
|
@@ -128,7 +137,7 @@ export interface ToolContext {
|
|
|
128
137
|
}>;
|
|
129
138
|
renderSetupChecklistOutput: (ui: UiRuntimeOptions, state: Awaited<ReturnType<ToolContext["buildSetupChecklistState"]>>) => string;
|
|
130
139
|
runSetupWizard: (ui: UiRuntimeOptions, state: Awaited<ReturnType<ToolContext["buildSetupChecklistState"]>>) => Promise<string>;
|
|
131
|
-
invalidateAccountManagerCache: () => void;
|
|
140
|
+
invalidateAccountManagerCache: (clearedSnapshots?: Readonly<AccountStorageV3["accounts"]>) => void;
|
|
132
141
|
upsertFlaggedAccountRecord: (accounts: FlaggedAccountMetadataV1[], record: FlaggedAccountMetadataV1) => void;
|
|
133
142
|
}
|
|
134
143
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EACX,cAAc,EACd,8BAA8B,EAC9B,MAAM,gBAAgB,CAAC;AACxB,OAAO,KAAK,EACX,gBAAgB,EAChB,wBAAwB,EACxB,MAAM,eAAe,CAAC;AACvB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACzD,OAAO,KAAK,EACX,uBAAuB,EACvB,0BAA0B,EAC1B,uBAAuB,EACvB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,KAAK,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAC/E,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AA2B/D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE9D;;;;;;;GAOG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI;IAAE,OAAO,EAAE,CAAC,CAAA;CAAE,CAAC;AAE3C;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,WAAW;IAE3B,uBAAuB,EAAE,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;IAC3D,wBAAwB,EAAE,UAAU,CAAC,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI,CAAC,CAAC;IACrE,0BAA0B,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAGhD,cAAc,EAAE,cAAc,CAAC;IAC/B,mBAAmB,EAAE;QAAE,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAA;KAAE,CAAC;IAGnD,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;IACzC,eAAe,EAAE,CAChB,EAAE,EAAE,gBAAgB,EACpB,MAAM,EAAE,IAAI,GAAG,SAAS,GAAG,OAAO,KAC9B,MAAM,CAAC;IACZ,yBAAyB,EAAE,CAC1B,OAAO,EACJ;QACA,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;QACvB,WAAW,CAAC,EAAE,MAAM,CAAC;KACpB,GACD,SAAS,EACZ,KAAK,EAAE,MAAM,EACb,OAAO,CAAC,EAAE;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../lib/tools/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/tools/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAoBH,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AACxD,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC1D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAE9D,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,mBAAmB,EAAE,MAAM,iBAAiB,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../lib/tools/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { CompactQuotaLimit } from "./tui-status.js";
|
|
2
2
|
export declare const TUI_QUOTA_CACHE_VERSION = 1;
|
|
3
3
|
export declare const TUI_QUOTA_CACHE_FILE = "oc-codex-multi-auth-tui-quota.json";
|
|
4
|
+
export declare const TUI_QUOTA_OVERVIEW_CACHE_FILE = "oc-codex-multi-auth-tui-quota-overview.json";
|
|
4
5
|
export declare const TUI_QUOTA_SNAPSHOT_FRESH_MS: number;
|
|
5
6
|
export type TuiQuotaSource = "headers" | "usage";
|
|
6
7
|
export type TuiQuotaLimit = CompactQuotaLimit & {
|
|
@@ -25,6 +26,7 @@ export type TuiQuotaSnapshotInput = Omit<TuiQuotaSnapshot, "version" | "fetchedA
|
|
|
25
26
|
fetchedAt?: number;
|
|
26
27
|
};
|
|
27
28
|
export declare function getTuiQuotaCachePath(stateDir?: string): string;
|
|
29
|
+
export declare function getTuiQuotaOverviewCachePath(stateDir?: string): string;
|
|
28
30
|
/**
|
|
29
31
|
* A window OpenAI reports with `window-minutes: 0` is switched off for the
|
|
30
32
|
* plan, not a window of unknown length. Such a window still carries
|
|
@@ -55,4 +57,37 @@ export declare function isFreshTuiQuotaSnapshot(snapshot: Pick<TuiQuotaSnapshot,
|
|
|
55
57
|
export declare function readTuiQuotaSnapshot(cachePath?: string): Promise<TuiQuotaSnapshot | undefined>;
|
|
56
58
|
export declare function writeTuiQuotaSnapshot(snapshot: TuiQuotaSnapshot, cachePath?: string): Promise<void>;
|
|
57
59
|
export declare function clearTuiQuotaSnapshot(cachePath?: string): Promise<void>;
|
|
60
|
+
export type TuiQuotaOverviewAccount = {
|
|
61
|
+
fingerprint: string;
|
|
62
|
+
/** 1-based, matching how `codex-list` and `codex-switch` number accounts. */
|
|
63
|
+
index: number;
|
|
64
|
+
/** ChatGPT email, for the surfaces that name an account rather than number it. */
|
|
65
|
+
email?: string;
|
|
66
|
+
/** `codex-label` label when one is set, else whatever identity storage has. */
|
|
67
|
+
label?: string;
|
|
68
|
+
planType?: string;
|
|
69
|
+
/** Banked rate-limit resets redeemable now. */
|
|
70
|
+
resetCredits?: number;
|
|
71
|
+
limits: TuiQuotaLimit[];
|
|
72
|
+
};
|
|
73
|
+
/**
|
|
74
|
+
* The pool-wide quota snapshot, held apart from the single-account one.
|
|
75
|
+
*
|
|
76
|
+
* The two are written on different schedules by different code paths - the
|
|
77
|
+
* request path pushes one account per response, while the pool is polled - and
|
|
78
|
+
* folding them into one file would make every request rewrite a document
|
|
79
|
+
* describing accounts that request never touched. A separate file also leaves
|
|
80
|
+
* the existing snapshot's shape, validator and tests untouched, so a build
|
|
81
|
+
* that has never heard of the overview reads its own cache unchanged.
|
|
82
|
+
*/
|
|
83
|
+
export type TuiQuotaOverviewSnapshot = {
|
|
84
|
+
version: typeof TUI_QUOTA_CACHE_VERSION;
|
|
85
|
+
fetchedAt: number;
|
|
86
|
+
accounts: TuiQuotaOverviewAccount[];
|
|
87
|
+
};
|
|
88
|
+
export declare function isTuiQuotaOverviewSnapshot(value: unknown): value is TuiQuotaOverviewSnapshot;
|
|
89
|
+
/** Drop disabled windows, for the reasons in {@link sanitizeTuiQuotaSnapshot}. */
|
|
90
|
+
export declare function sanitizeTuiQuotaOverviewSnapshot(snapshot: TuiQuotaOverviewSnapshot): TuiQuotaOverviewSnapshot;
|
|
91
|
+
export declare function readTuiQuotaOverviewSnapshot(cachePath?: string): Promise<TuiQuotaOverviewSnapshot | undefined>;
|
|
92
|
+
export declare function writeTuiQuotaOverviewSnapshot(snapshot: TuiQuotaOverviewSnapshot, cachePath?: string): Promise<void>;
|
|
58
93
|
//# sourceMappingURL=tui-quota-cache.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tui-quota-cache.d.ts","sourceRoot":"","sources":["../../lib/tui-quota-cache.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,eAAO,MAAM,uBAAuB,IAAI,CAAC;AACzC,eAAO,MAAM,oBAAoB,uCAAuC,CAAC;
|
|
1
|
+
{"version":3,"file":"tui-quota-cache.d.ts","sourceRoot":"","sources":["../../lib/tui-quota-cache.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,6 +5,7 @@ import { CODEX_QUOTA_WINDOW_KINDS, hasCodexQuotaHeaders, isQuotaWindowDisabled,
|
|
|
5
5
|
import { renameWithWindowsRetry } from "./storage/atomic-write.js";
|
|
6
6
|
export const TUI_QUOTA_CACHE_VERSION = 1;
|
|
7
7
|
export const TUI_QUOTA_CACHE_FILE = "oc-codex-multi-auth-tui-quota.json";
|
|
8
|
+
export const TUI_QUOTA_OVERVIEW_CACHE_FILE = "oc-codex-multi-auth-tui-quota-overview.json";
|
|
8
9
|
const TUI_QUOTA_CACHE_WRITE_SKIP_MS = 500;
|
|
9
10
|
// A snapshot older than one TUI refresh interval is due for a live re-fetch:
|
|
10
11
|
// the shared cache is only pushed while requests flow, so after an idle gap it
|
|
@@ -14,16 +15,24 @@ const recentTuiQuotaWrites = new Map();
|
|
|
14
15
|
function getDefaultOpenCodeStateDir() {
|
|
15
16
|
return join(homedir(), ".local", "state", "opencode");
|
|
16
17
|
}
|
|
17
|
-
|
|
18
|
+
function resolveStateDir(stateDir) {
|
|
18
19
|
const envStateDir = process.env.OPENCODE_STATE_DIR?.trim();
|
|
19
|
-
return
|
|
20
|
+
return stateDir?.trim() || envStateDir || getDefaultOpenCodeStateDir();
|
|
21
|
+
}
|
|
22
|
+
export function getTuiQuotaCachePath(stateDir) {
|
|
23
|
+
return join(resolveStateDir(stateDir), TUI_QUOTA_CACHE_FILE);
|
|
24
|
+
}
|
|
25
|
+
export function getTuiQuotaOverviewCachePath(stateDir) {
|
|
26
|
+
return join(resolveStateDir(stateDir), TUI_QUOTA_OVERVIEW_CACHE_FILE);
|
|
20
27
|
}
|
|
21
28
|
function parseFiniteIntHeader(headers, name) {
|
|
22
29
|
const raw = headers.get(name);
|
|
23
30
|
if (!raw)
|
|
24
31
|
return undefined;
|
|
25
32
|
const parsed = Number.parseInt(raw, 10);
|
|
26
|
-
|
|
33
|
+
// A negative count is nonsense from a hostile or broken gateway; treat
|
|
34
|
+
// it as absent so the details dialog never renders "Active limit: -5".
|
|
35
|
+
return Number.isFinite(parsed) && parsed >= 0 ? parsed : undefined;
|
|
27
36
|
}
|
|
28
37
|
function formatWindowLabel(windowMinutes) {
|
|
29
38
|
if (!windowMinutes ||
|
|
@@ -188,6 +197,17 @@ export async function readTuiQuotaSnapshot(cachePath) {
|
|
|
188
197
|
return undefined;
|
|
189
198
|
}
|
|
190
199
|
}
|
|
200
|
+
function createTemporaryPath(target, now) {
|
|
201
|
+
return `${target}.${process.pid}.${now}.${Math.random().toString(36).slice(2)}.tmp`;
|
|
202
|
+
}
|
|
203
|
+
async function writeSnapshotFile(target, temporary, snapshot) {
|
|
204
|
+
await fs.mkdir(dirname(target), { recursive: true });
|
|
205
|
+
await fs.writeFile(temporary, `${JSON.stringify(snapshot, null, 2)}\n`, {
|
|
206
|
+
encoding: "utf-8",
|
|
207
|
+
mode: 0o600,
|
|
208
|
+
});
|
|
209
|
+
await renameWithWindowsRetry(temporary, target);
|
|
210
|
+
}
|
|
191
211
|
export async function writeTuiQuotaSnapshot(snapshot, cachePath) {
|
|
192
212
|
const target = cachePath ?? getTuiQuotaCachePath();
|
|
193
213
|
const writeKey = getSnapshotWriteKey(snapshot);
|
|
@@ -198,15 +218,8 @@ export async function writeTuiQuotaSnapshot(snapshot, cachePath) {
|
|
|
198
218
|
await recentWrite.promise;
|
|
199
219
|
return;
|
|
200
220
|
}
|
|
201
|
-
const temporary =
|
|
202
|
-
const writePromise = (
|
|
203
|
-
await fs.mkdir(dirname(target), { recursive: true });
|
|
204
|
-
await fs.writeFile(temporary, `${JSON.stringify(snapshot, null, 2)}\n`, {
|
|
205
|
-
encoding: "utf-8",
|
|
206
|
-
mode: 0o600,
|
|
207
|
-
});
|
|
208
|
-
await renameWithWindowsRetry(temporary, target);
|
|
209
|
-
})();
|
|
221
|
+
const temporary = createTemporaryPath(target, now);
|
|
222
|
+
const writePromise = writeSnapshotFile(target, temporary, snapshot);
|
|
210
223
|
recentTuiQuotaWrites.set(target, {
|
|
211
224
|
key: writeKey,
|
|
212
225
|
at: now,
|
|
@@ -239,4 +252,58 @@ export async function clearTuiQuotaSnapshot(cachePath) {
|
|
|
239
252
|
throw error;
|
|
240
253
|
}
|
|
241
254
|
}
|
|
255
|
+
function isTuiQuotaOverviewAccount(value) {
|
|
256
|
+
return (isRecord(value) &&
|
|
257
|
+
typeof value.fingerprint === "string" &&
|
|
258
|
+
value.fingerprint.trim().length > 0 &&
|
|
259
|
+
typeof value.index === "number" &&
|
|
260
|
+
Number.isFinite(value.index) &&
|
|
261
|
+
(value.email === undefined || typeof value.email === "string") &&
|
|
262
|
+
(value.label === undefined || typeof value.label === "string") &&
|
|
263
|
+
(value.planType === undefined || typeof value.planType === "string") &&
|
|
264
|
+
isOptionalFiniteNumber(value.resetCredits) &&
|
|
265
|
+
Array.isArray(value.limits) &&
|
|
266
|
+
value.limits.every(isTuiQuotaLimit));
|
|
267
|
+
}
|
|
268
|
+
export function isTuiQuotaOverviewSnapshot(value) {
|
|
269
|
+
return (isRecord(value) &&
|
|
270
|
+
value.version === TUI_QUOTA_CACHE_VERSION &&
|
|
271
|
+
typeof value.fetchedAt === "number" &&
|
|
272
|
+
Number.isFinite(value.fetchedAt) &&
|
|
273
|
+
Array.isArray(value.accounts) &&
|
|
274
|
+
value.accounts.every(isTuiQuotaOverviewAccount));
|
|
275
|
+
}
|
|
276
|
+
/** Drop disabled windows, for the reasons in {@link sanitizeTuiQuotaSnapshot}. */
|
|
277
|
+
export function sanitizeTuiQuotaOverviewSnapshot(snapshot) {
|
|
278
|
+
return {
|
|
279
|
+
...snapshot,
|
|
280
|
+
accounts: snapshot.accounts.map((account) => ({
|
|
281
|
+
...account,
|
|
282
|
+
limits: account.limits.filter((limit) => !isDisabledQuotaLimit(limit)),
|
|
283
|
+
})),
|
|
284
|
+
};
|
|
285
|
+
}
|
|
286
|
+
export async function readTuiQuotaOverviewSnapshot(cachePath) {
|
|
287
|
+
try {
|
|
288
|
+
const raw = await fs.readFile(cachePath ?? getTuiQuotaOverviewCachePath(), "utf-8");
|
|
289
|
+
const parsed = JSON.parse(raw);
|
|
290
|
+
return isTuiQuotaOverviewSnapshot(parsed)
|
|
291
|
+
? sanitizeTuiQuotaOverviewSnapshot(parsed)
|
|
292
|
+
: undefined;
|
|
293
|
+
}
|
|
294
|
+
catch {
|
|
295
|
+
return undefined;
|
|
296
|
+
}
|
|
297
|
+
}
|
|
298
|
+
export async function writeTuiQuotaOverviewSnapshot(snapshot, cachePath) {
|
|
299
|
+
const target = cachePath ?? getTuiQuotaOverviewCachePath();
|
|
300
|
+
const temporary = createTemporaryPath(target, Date.now());
|
|
301
|
+
try {
|
|
302
|
+
await writeSnapshotFile(target, temporary, snapshot);
|
|
303
|
+
}
|
|
304
|
+
catch (error) {
|
|
305
|
+
await fs.unlink(temporary).catch(() => undefined);
|
|
306
|
+
throw error;
|
|
307
|
+
}
|
|
308
|
+
}
|
|
242
309
|
//# sourceMappingURL=tui-quota-cache.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tui-quota-cache.js","sourceRoot":"","sources":["../../lib/tui-quota-cache.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"tui-quota-cache.js","sourceRoot":"","sources":["../../lib/tui-quota-cache.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,EAAE,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAE1C,OAAO,EACN,wBAAwB,EACxB,oBAAoB,EACpB,qBAAqB,EACrB,qBAAqB,GAErB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAGnE,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC;AACzC,MAAM,CAAC,MAAM,oBAAoB,GAAG,oCAAoC,CAAC;AACzE,MAAM,CAAC,MAAM,6BAA6B,GACzC,6CAA6C,CAAC;AAC/C,MAAM,6BAA6B,GAAG,GAAG,CAAC;AAC1C,6EAA6E;AAC7E,+EAA+E;AAC/E,oEAAoE;AACpE,MAAM,CAAC,MAAM,2BAA2B,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAqCzD,MAAM,oBAAoB,GAAG,IAAI,GAAG,EAA+B,CAAC;AAEpE,SAAS,0BAA0B;IAClC,OAAO,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAC,CAAC;AACvD,CAAC;AAED,SAAS,eAAe,CAAC,QAAiB;IACzC,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,kBAAkB,EAAE,IAAI,EAAE,CAAC;IAC3D,OAAO,QAAQ,EAAE,IAAI,EAAE,IAAI,WAAW,IAAI,0BAA0B,EAAE,CAAC;AACxE,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,QAAiB;IACrD,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,oBAAoB,CAAC,CAAC;AAC9D,CAAC;AAED,MAAM,UAAU,4BAA4B,CAAC,QAAiB;IAC7D,OAAO,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,6BAA6B,CAAC,CAAC;AACvE,CAAC;AAED,SAAS,oBAAoB,CAC5B,OAAgB,EAChB,IAAY;IAEZ,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;IAC9B,IAAI,CAAC,GAAG;QAAE,OAAO,SAAS,CAAC;IAC3B,MAAM,MAAM,GAAG,MAAM,CAAC,QAAQ,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;IACxC,uEAAuE;IACvE,uEAAuE;IACvE,OAAO,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;AACpE,CAAC;AAED,SAAS,iBAAiB,CAAC,aAAiC;IAC3D,IACC,CAAC,aAAa;QACd,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC;QAC/B,aAAa,IAAI,CAAC,EACjB,CAAC;QACF,OAAO,OAAO,CAAC;IAChB,CAAC;IACD,IAAI,aAAa,GAAG,IAAI,KAAK,CAAC;QAAE,OAAO,GAAG,aAAa,GAAG,IAAI,GAAG,CAAC;IAClE,IAAI,aAAa,GAAG,EAAE,KAAK,CAAC;QAAE,OAAO,GAAG,aAAa,GAAG,EAAE,GAAG,CAAC;IAC9D,OAAO,GAAG,aAAa,GAAG,CAAC;AAC5B,CAAC;AAED,SAAS,cAAc,CAAC,WAA+B;IACtD,OAAO,OAAO,WAAW,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC;QACrE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,WAAW,CAAC,CAAC,CAAC;QAC3D,CAAC,CAAC,IAAI,CAAC;AACT,CAAC;AAED,SAAS,UAAU,CAClB,OAAgB,EAChB,IAA0B;IAE1B,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,SAAS,EAAE,GAAG,qBAAqB,CACtE,OAAO,EACP,IAAI,CACJ,CAAC;IACF,OAAO;QACN,KAAK,EAAE,iBAAiB,CAAC,aAAa,CAAC;QACvC,WAAW,EAAE,cAAc,CAAC,WAAW,CAAC;QACxC,WAAW;QACX,aAAa;QACb,SAAS;KACT,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAAC,KAAoB;IACxD,OAAO,qBAAqB,CAAC,KAAK,CAAC,CAAC;AACrC,CAAC;AAED,SAAS,cAAc,CAAC,KAAoB;IAC3C,IAAI,oBAAoB,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9C,OAAO,OAAO,CACb,KAAK,CAAC,aAAa;QAClB,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ;QACrC,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,CACpC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,sBAAsB,CACrC,KAA4B;IAE5B,OAAO;QACN,OAAO,EAAE,uBAAuB;QAChC,GAAG,KAAK;QACR,SAAS,EAAE,KAAK,CAAC,SAAS,IAAI,IAAI,CAAC,GAAG,EAAE;KACxC,CAAC;AACH,CAAC;AAED,SAAS,mBAAmB,CAAC,QAA0B;IACtD,OAAO,IAAI,CAAC,SAAS,CAAC;QACrB,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,YAAY,EAAE,QAAQ,CAAC,YAAY;QACnC,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,WAAW,EAAE,QAAQ,CAAC,WAAW;QACjC,MAAM,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;YACvC,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,aAAa,EAAE,KAAK,CAAC,aAAa;YAClC,SAAS,EAAE,KAAK,CAAC,SAAS;SAC1B,CAAC,CAAC;KACH,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,gCAAgC,CAC/C,OAAgB,EAChB,KAAuD;IAEvD,IAAI,CAAC,oBAAoB,CAAC,OAAO,CAAC;QAAE,OAAO,SAAS,CAAC;IACrD,MAAM,MAAM,GAAG,wBAAwB,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CACpD,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CACzB,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IACzB,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,SAAS,CAAC;IAE1C,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACrD,MAAM,QAAQ,GAAG,WAAW,EAAE,IAAI,EAAE,IAAI,SAAS,CAAC;IAClD,MAAM,WAAW,GAAG,oBAAoB,CAAC,OAAO,EAAE,sBAAsB,CAAC,CAAC;IAE1E,OAAO,sBAAsB,CAAC;QAC7B,GAAG,KAAK;QACR,MAAM,EAAE,SAAS;QACjB,QAAQ;QACR,WAAW;QACX,MAAM;KACN,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC/B,OAAO,KAAK,KAAK,IAAI,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC7E,CAAC;AAED,SAAS,sBAAsB,CAAC,KAAc;IAC7C,OAAO,KAAK,KAAK,SAAS,IAAI,CAAC,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC;AACrF,CAAC;AAED,SAAS,iBAAiB,CAAC,KAAc;IACxC,OAAO,CACN,KAAK,KAAK,IAAI;QACd,CAAC,OAAO,KAAK,KAAK,QAAQ;YACzB,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;YACtB,KAAK,IAAI,CAAC;YACV,KAAK,IAAI,GAAG,CAAC,CACd,CAAC;AACH,CAAC;AAED,SAAS,eAAe,CAAC,KAAc;IACtC,OAAO,CACN,QAAQ,CAAC,KAAK,CAAC;QACf,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ;QAC/B,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QAC7B,iBAAiB,CAAC,KAAK,CAAC,WAAW,CAAC;QACpC,sBAAsB,CAAC,KAAK,CAAC,WAAW,CAAC;QACzC,sBAAsB,CAAC,KAAK,CAAC,aAAa,CAAC;QAC3C,sBAAsB,CAAC,KAAK,CAAC,SAAS,CAAC,CACvC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,KAAc;IAChD,OAAO,CACN,QAAQ,CAAC,KAAK,CAAC;QACf,KAAK,CAAC,OAAO,KAAK,uBAAuB;QACzC,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ;QACrC,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QACnC,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;QACnC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC;QAChC,CAAC,KAAK,CAAC,MAAM,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,OAAO,CAAC;QACxD,sBAAsB,CAAC,KAAK,CAAC,YAAY,CAAC;QAC1C,sBAAsB,CAAC,KAAK,CAAC,YAAY,CAAC;QAC1C,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS;YAChC,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ,CAAC;QACxC,CAAC,KAAK,CAAC,YAAY,KAAK,SAAS;YAChC,OAAO,KAAK,CAAC,YAAY,KAAK,QAAQ,CAAC;QACxC,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC;QACpE,sBAAsB,CAAC,KAAK,CAAC,WAAW,CAAC;QACzC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;QAC3B,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CACnC,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,wBAAwB,CACvC,QAA0B;IAE1B,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CACpC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC,CACvC,CAAC;IACF,OAAO,MAAM,CAAC,MAAM,KAAK,QAAQ,CAAC,MAAM,CAAC,MAAM;QAC9C,CAAC,CAAC,QAAQ;QACV,CAAC,CAAC,EAAE,GAAG,QAAQ,EAAE,MAAM,EAAE,CAAC;AAC5B,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CACtC,QAA6C,EAC7C,MAAc,IAAI,CAAC,GAAG,EAAE;IAExB,OAAO,GAAG,GAAG,QAAQ,CAAC,SAAS,GAAG,2BAA2B,CAAC;AAC/D,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,oBAAoB,CACzC,SAAkB;IAElB,IAAI,CAAC;QACJ,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,IAAI,oBAAoB,EAAE,EAAE,OAAO,CAAC,CAAC;QAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAY,CAAC;QAC1C,OAAO,kBAAkB,CAAC,MAAM,CAAC;YAChC,CAAC,CAAC,wBAAwB,CAAC,MAAM,CAAC;YAClC,CAAC,CAAC,SAAS,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,SAAS,CAAC;IAClB,CAAC;AACF,CAAC;AAED,SAAS,mBAAmB,CAAC,MAAc,EAAE,GAAW;IACvD,OAAO,GAAG,MAAM,IAAI,OAAO,CAAC,GAAG,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;AACrF,CAAC;AAED,KAAK,UAAU,iBAAiB,CAC/B,MAAc,EACd,SAAiB,EACjB,QAAiB;IAEjB,MAAM,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IACrD,MAAM,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,GAAG,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE;QACvE,QAAQ,EAAE,OAAO;QACjB,IAAI,EAAE,KAAK;KACX,CAAC,CAAC;IACH,MAAM,sBAAsB,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;AACjD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAC1C,QAA0B,EAC1B,SAAkB;IAElB,MAAM,MAAM,GAAG,SAAS,IAAI,oBAAoB,EAAE,CAAC;IACnD,MAAM,QAAQ,GAAG,mBAAmB,CAAC,QAAQ,CAAC,CAAC;IAC/C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,WAAW,GAAG,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IACrD,IACC,WAAW,EAAE,GAAG,KAAK,QAAQ;QAC7B,GAAG,GAAG,WAAW,CAAC,EAAE,GAAG,6BAA6B,EACnD,CAAC;QACF,MAAM,WAAW,CAAC,OAAO,CAAC;QAC1B,OAAO;IACR,CAAC;IAED,MAAM,SAAS,GAAG,mBAAmB,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACnD,MAAM,YAAY,GAAG,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IACpE,oBAAoB,CAAC,GAAG,CAAC,MAAM,EAAE;QAChC,GAAG,EAAE,QAAQ;QACb,EAAE,EAAE,GAAG;QACP,OAAO,EAAE,YAAY;KACrB,CAAC,CAAC;IACH,IAAI,CAAC;QACJ,MAAM,YAAY,CAAC;QACnB,oBAAoB,CAAC,GAAG,CAAC,MAAM,EAAE;YAChC,GAAG,EAAE,QAAQ;YACb,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE;SACd,CAAC,CAAC;IACJ,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAClD,IAAI,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,OAAO,KAAK,YAAY,EAAE,CAAC;YAChE,oBAAoB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACrC,CAAC;QACD,MAAM,KAAK,CAAC;IACb,CAAC;AACF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,SAAkB;IAC7D,MAAM,MAAM,GAAG,SAAS,IAAI,oBAAoB,EAAE,CAAC;IACnD,oBAAoB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACpC,IAAI,CAAC;QACJ,MAAM,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IACzB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,IAAK,KAA+B,EAAE,IAAI,KAAK,QAAQ;YAAE,OAAO;QAChE,MAAM,KAAK,CAAC;IACb,CAAC;AACF,CAAC;AAgCD,SAAS,yBAAyB,CACjC,KAAc;IAEd,OAAO,CACN,QAAQ,CAAC,KAAK,CAAC;QACf,OAAO,KAAK,CAAC,WAAW,KAAK,QAAQ;QACrC,KAAK,CAAC,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC;QACnC,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ;QAC/B,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC;QAC5B,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC;QAC9D,CAAC,KAAK,CAAC,KAAK,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,KAAK,KAAK,QAAQ,CAAC;QAC9D,CAAC,KAAK,CAAC,QAAQ,KAAK,SAAS,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ,CAAC;QACpE,sBAAsB,CAAC,KAAK,CAAC,YAAY,CAAC;QAC1C,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC;QAC3B,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,eAAe,CAAC,CACnC,CAAC;AACH,CAAC;AAED,MAAM,UAAU,0BAA0B,CACzC,KAAc;IAEd,OAAO,CACN,QAAQ,CAAC,KAAK,CAAC;QACf,KAAK,CAAC,OAAO,KAAK,uBAAuB;QACzC,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ;QACnC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC;QAChC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC;QAC7B,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAC/C,CAAC;AACH,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,gCAAgC,CAC/C,QAAkC;IAElC,OAAO;QACN,GAAG,QAAQ;QACX,QAAQ,EAAE,QAAQ,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;YAC7C,GAAG,OAAO;YACV,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,oBAAoB,CAAC,KAAK,CAAC,CAAC;SACtE,CAAC,CAAC;KACH,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,4BAA4B,CACjD,SAAkB;IAElB,IAAI,CAAC;QACJ,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,QAAQ,CAC5B,SAAS,IAAI,4BAA4B,EAAE,EAC3C,OAAO,CACP,CAAC;QACF,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAY,CAAC;QAC1C,OAAO,0BAA0B,CAAC,MAAM,CAAC;YACxC,CAAC,CAAC,gCAAgC,CAAC,MAAM,CAAC;YAC1C,CAAC,CAAC,SAAS,CAAC;IACd,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,SAAS,CAAC;IAClB,CAAC;AACF,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,6BAA6B,CAClD,QAAkC,EAClC,SAAkB;IAElB,MAAM,MAAM,GAAG,SAAS,IAAI,4BAA4B,EAAE,CAAC;IAC3D,MAAM,SAAS,GAAG,mBAAmB,CAAC,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;IAC1D,IAAI,CAAC;QACJ,MAAM,iBAAiB,CAAC,MAAM,EAAE,SAAS,EAAE,QAAQ,CAAC,CAAC;IACtD,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QAChB,MAAM,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAClD,MAAM,KAAK,CAAC;IACb,CAAC;AACF,CAAC"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Gather every account's quota for the pool-wide status line.
|
|
3
|
+
*
|
|
4
|
+
* The single-account status the request path maintains cannot answer "where
|
|
5
|
+
* does the pool stand" - it only ever describes the account that served the
|
|
6
|
+
* last response. This reads `/wham/usage` for each distinct account instead,
|
|
7
|
+
* on a bounded interval, and caches the result where every OpenCode window on
|
|
8
|
+
* the machine can share it.
|
|
9
|
+
*
|
|
10
|
+
* The cache is what keeps this cheap. A reader takes a snapshot that is still
|
|
11
|
+
* fresh rather than issuing its own requests, so N terminals open on the same
|
|
12
|
+
* pool cost one round of requests between them rather than N, and a terminal
|
|
13
|
+
* that has just started renders immediately instead of showing nothing while
|
|
14
|
+
* seven accounts are queried one after another.
|
|
15
|
+
*/
|
|
16
|
+
import { type CodexUsageSummary } from "./codex-usage.js";
|
|
17
|
+
import type { QuotaOverviewAccount } from "./quota-overview.js";
|
|
18
|
+
import { type AccountStorageV3 } from "./storage.js";
|
|
19
|
+
import { type TuiQuotaOverviewAccount, type TuiQuotaOverviewSnapshot, type TuiQuotaSnapshot } from "./tui-quota-cache.js";
|
|
20
|
+
/**
|
|
21
|
+
* Reduce one account's usage document to what the status line needs.
|
|
22
|
+
*
|
|
23
|
+
* Only the primary and secondary windows are kept. Code-review and the other
|
|
24
|
+
* additional quotas do not govern ordinary model requests, so counting them
|
|
25
|
+
* would let a spent code-review allowance report an account as unusable for
|
|
26
|
+
* work it can still do.
|
|
27
|
+
*/
|
|
28
|
+
export declare function toOverviewAccount(params: {
|
|
29
|
+
fingerprint: string;
|
|
30
|
+
index: number;
|
|
31
|
+
usage: CodexUsageSummary;
|
|
32
|
+
email?: string;
|
|
33
|
+
label?: string;
|
|
34
|
+
}): TuiQuotaOverviewAccount;
|
|
35
|
+
export declare function fetchTuiQuotaOverview(params: {
|
|
36
|
+
cachePath?: string;
|
|
37
|
+
now?: number;
|
|
38
|
+
loadStorage?: () => Promise<AccountStorageV3 | null>;
|
|
39
|
+
}): Promise<TuiQuotaOverviewSnapshot | undefined>;
|
|
40
|
+
/**
|
|
41
|
+
* Fold the request path's live reading of one account into the polled pool.
|
|
42
|
+
*
|
|
43
|
+
* The pool is re-read on an interval, but the account currently serving
|
|
44
|
+
* requests has its quota pushed from response headers after every single
|
|
45
|
+
* response. Without this the line would show that account's numbers as they
|
|
46
|
+
* were up to five minutes ago while the user watches their own requests spend
|
|
47
|
+
* it - the one account whose figure a reader can check against their own
|
|
48
|
+
* activity would be the one that looks wrong.
|
|
49
|
+
*
|
|
50
|
+
* Only a snapshot NEWER than the poll is merged, so a header reading left over
|
|
51
|
+
* from before the poll cannot overwrite it with older numbers.
|
|
52
|
+
*/
|
|
53
|
+
export declare function mergeOverviewWithLatestAccount(snapshot: TuiQuotaOverviewSnapshot, latest: TuiQuotaSnapshot | undefined): TuiQuotaOverviewSnapshot;
|
|
54
|
+
export declare function toQuotaOverviewAccounts(snapshot: TuiQuotaOverviewSnapshot): QuotaOverviewAccount[];
|
|
55
|
+
//# sourceMappingURL=tui-quota-overview.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tui-quota-overview.d.ts","sourceRoot":"","sources":["../../lib/tui-quota-overview.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EASN,KAAK,iBAAiB,EAEtB,MAAM,kBAAkB,CAAC;AAE1B,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAChE,OAAO,EAAgB,KAAK,gBAAgB,EAAE,MAAM,cAAc,CAAC;AACnE,OAAO,EAKN,KAAK,uBAAuB,EAC5B,KAAK,wBAAwB,EAC7B,KAAK,gBAAgB,EACrB,MAAM,sBAAsB,CAAC;AAmB9B;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE;IACzC,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,iBAAiB,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;CACf,GAAG,uBAAuB,CAyB1B;AAsCD,wBAAsB,qBAAqB,CAAC,MAAM,EAAE;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,OAAO,CAAC,gBAAgB,GAAG,IAAI,CAAC,CAAC;CACrD,GAAG,OAAO,CAAC,wBAAwB,GAAG,SAAS,CAAC,CAyEhD;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,8BAA8B,CAC7C,QAAQ,EAAE,wBAAwB,EAClC,MAAM,EAAE,gBAAgB,GAAG,SAAS,GAClC,wBAAwB,CAe1B;AAED,wBAAgB,uBAAuB,CACtC,QAAQ,EAAE,wBAAwB,GAChC,oBAAoB,EAAE,CAYxB"}
|