@eddyskywalker/dsh-chatgpt-subscription 0.10.6 → 0.10.8
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/CHANGELOG.md +22 -0
- package/README.md +2 -1
- package/lib/client.js +36 -24
- package/lib/client.js.map +1 -1
- package/lib/index.js +730 -62
- package/lib/types/client/minimax-code/MinimaxCodeSection.d.ts.map +1 -1
- package/lib/types/client/minimax-code/locales.d.ts +8 -2
- package/lib/types/client/minimax-code/locales.d.ts.map +1 -1
- package/lib/types/host/common/account-pool.d.ts +20 -0
- package/lib/types/host/common/account-pool.d.ts.map +1 -1
- package/lib/types/host/minimax-code/account-pool.d.ts +59 -0
- package/lib/types/host/minimax-code/account-pool.d.ts.map +1 -1
- package/lib/types/host/minimax-code/checkin.d.ts.map +1 -1
- package/lib/types/host/minimax-code/client.d.ts +27 -1
- package/lib/types/host/minimax-code/client.d.ts.map +1 -1
- package/lib/types/host/minimax-code/oauth.d.ts +23 -7
- package/lib/types/host/minimax-code/oauth.d.ts.map +1 -1
- package/lib/types/host/minimax-code/routes.d.ts.map +1 -1
- package/lib/types/host/minimax-code/token-store.d.ts +75 -0
- package/lib/types/host/minimax-code/token-store.d.ts.map +1 -1
- package/lib/types/host/minimax-code/types.d.ts +37 -6
- package/lib/types/host/minimax-code/types.d.ts.map +1 -1
- package/lib/types/host/reasoning-collapse-guard/index.d.ts +130 -0
- package/lib/types/host/reasoning-collapse-guard/index.d.ts.map +1 -0
- package/lib/types/index.d.ts +8 -0
- package/lib/types/index.d.ts.map +1 -1
- package/lib/types/shared/minimax-code-contracts.d.ts +6 -1
- package/lib/types/shared/minimax-code-contracts.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MinimaxCodeSection.d.ts","sourceRoot":"","sources":["../../../../src/client/minimax-code/MinimaxCodeSection.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAA;AACvE,OAAO,EAIL,KAAK,4BAA4B,EAGlC,MAAM,wCAAwC,CAAA;AAa/C,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAA;AAiDjC;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOlE;AAED,uEAAuE;AACvE,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIpD;AA0CD;;;;;;;GAOG;AACH,UAAU,KAAK;IACb,aAAa,CAAC,EAAE,MAAM,IAAI,CAAA;CAC3B;AAED;;;;;;;;;;GAUG;AACH,KAAK,SAAS,GAAG,CAAC,GAAG,EAAE,MAAM,OAAO,EAAE,KAAK,MAAM,CAAA;AAKjD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAK7E;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,4BAA4B,GAAG,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,MAAM,CAOpG;AAWD,wBAAgB,kBAAkB,CAAC,EAAE,aAAa,EAAE,EAAE,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,
|
|
1
|
+
{"version":3,"file":"MinimaxCodeSection.d.ts","sourceRoot":"","sources":["../../../../src/client/minimax-code/MinimaxCodeSection.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAA;AACvE,OAAO,EAIL,KAAK,4BAA4B,EAGlC,MAAM,wCAAwC,CAAA;AAa/C,OAAO,EAAE,EAAE,EAAE,MAAM,cAAc,CAAA;AAiDjC;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAOlE;AAED,uEAAuE;AACvE,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAIpD;AA0CD;;;;;;;GAOG;AACH,UAAU,KAAK;IACb,aAAa,CAAC,EAAE,MAAM,IAAI,CAAA;CAC3B;AAED;;;;;;;;;;GAUG;AACH,KAAK,SAAS,GAAG,CAAC,GAAG,EAAE,MAAM,OAAO,EAAE,KAAK,MAAM,CAAA;AAKjD;;;;;;GAMG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAK7E;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,4BAA4B,GAAG,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,MAAM,CAOpG;AAWD,wBAAgB,kBAAkB,CAAC,EAAE,aAAa,EAAE,EAAE,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CA23B9E"}
|
|
@@ -68,6 +68,8 @@ export declare const zh: {
|
|
|
68
68
|
readonly quotaUnavailable: "暂时没有用量数据。";
|
|
69
69
|
readonly quotaNeedsApiKey: "上游拒绝了这个登录态读取用量(官方客户端的用量端点要求带官方客户端标识头,本插件默认不伪造)。请在 MiniMax 控制台的用量条里查看 Token Plan 用量;如果你接受该取舍,可设 DSH_MINIMAX_CODE_QUOTA_ATTRIBUTION=1 后重试。";
|
|
70
70
|
readonly quotaUnreachable: "暂时读不到用量(用量端点未应答),稍后会自动重试。";
|
|
71
|
+
readonly quotaTokenExpired: "读取用量时令牌刚好过期,正在自动续期——账号仍然是登录状态,无需重新登录。";
|
|
72
|
+
readonly quotaStale: "下面是上一次成功读取到的用量(本次刷新未成功),稍后会自动重试。";
|
|
71
73
|
readonly quotaUsed: "已用 {percent}%";
|
|
72
74
|
readonly quotaRemaining: "剩余 {percent}%";
|
|
73
75
|
readonly quotaReset: "重置:{time}";
|
|
@@ -193,6 +195,8 @@ export declare const dictionaries: {
|
|
|
193
195
|
readonly quotaUnavailable: "暂时没有用量数据。";
|
|
194
196
|
readonly quotaNeedsApiKey: "上游拒绝了这个登录态读取用量(官方客户端的用量端点要求带官方客户端标识头,本插件默认不伪造)。请在 MiniMax 控制台的用量条里查看 Token Plan 用量;如果你接受该取舍,可设 DSH_MINIMAX_CODE_QUOTA_ATTRIBUTION=1 后重试。";
|
|
195
197
|
readonly quotaUnreachable: "暂时读不到用量(用量端点未应答),稍后会自动重试。";
|
|
198
|
+
readonly quotaTokenExpired: "读取用量时令牌刚好过期,正在自动续期——账号仍然是登录状态,无需重新登录。";
|
|
199
|
+
readonly quotaStale: "下面是上一次成功读取到的用量(本次刷新未成功),稍后会自动重试。";
|
|
196
200
|
readonly quotaUsed: "已用 {percent}%";
|
|
197
201
|
readonly quotaRemaining: "剩余 {percent}%";
|
|
198
202
|
readonly quotaReset: "重置:{time}";
|
|
@@ -316,6 +320,8 @@ export declare const dictionaries: {
|
|
|
316
320
|
readonly quotaUnavailable: "暂时没有用量数据。";
|
|
317
321
|
readonly quotaNeedsApiKey: "上游拒绝了这个登录态读取用量(官方客户端的用量端点要求带官方客户端标识头,本插件默认不伪造)。请在 MiniMax 控制台的用量条里查看 Token Plan 用量;如果你接受该取舍,可设 DSH_MINIMAX_CODE_QUOTA_ATTRIBUTION=1 后重试。";
|
|
318
322
|
readonly quotaUnreachable: "暂时读不到用量(用量端点未应答),稍后会自动重试。";
|
|
323
|
+
readonly quotaTokenExpired: "读取用量时令牌刚好过期,正在自动续期——账号仍然是登录状态,无需重新登录。";
|
|
324
|
+
readonly quotaStale: "下面是上一次成功读取到的用量(本次刷新未成功),稍后会自动重试。";
|
|
319
325
|
readonly quotaUsed: "已用 {percent}%";
|
|
320
326
|
readonly quotaRemaining: "剩余 {percent}%";
|
|
321
327
|
readonly quotaReset: "重置:{time}";
|
|
@@ -370,8 +376,8 @@ export declare const dictionaries: {
|
|
|
370
376
|
readonly expires: string;
|
|
371
377
|
readonly lastUsed: string;
|
|
372
378
|
};
|
|
373
|
-
en: Record<"
|
|
374
|
-
'en-US': Record<"
|
|
379
|
+
en: Record<"tokens" | "title" | "pageDesc" | "account" | "signedIn" | "signedOut" | "accountLabel" | "accountId" | "email" | "region" | "regionCn" | "regionGlobal" | "storage" | "storageNative" | "storageDpapi" | "storageFile" | "storagePath" | "expiresAt" | "expiresRemaining" | "expiresExpired" | "expiresHint" | "signIn" | "signingIn" | "signOut" | "cancelSignIn" | "deviceCodeSection" | "deviceCodeHint" | "userCode" | "copyCode" | "copied" | "openSignInPage" | "codeExpires" | "codeMinutes" | "waitingAuthorization" | "loginFailed" | "loginExpired" | "loginDenied" | "logoutOwnedByApp" | "connection" | "provider" | "connectionState" | "connected" | "untested" | "routeOwned" | "routeConflict" | "testConnection" | "testingConnection" | "testSuccess" | "testSuccessModel" | "testFailed" | "modelsSection" | "modelsHint" | "modelsUnavailable" | "quotaSection" | "dailyCheckin" | "checkinHint" | "checkinAuto" | "checkinToday" | "checkinSkipped" | "checkinFailed" | "checkinStreak" | "checkinClaimed" | "checkinLastRun" | "checkinNever" | "checkinNow" | "checkinRunning" | "quotaUnavailable" | "quotaNeedsApiKey" | "quotaUnreachable" | "quotaTokenExpired" | "quotaStale" | "quotaUsed" | "quotaRemaining" | "quotaReset" | "quotaRefresh" | "quotaRefreshing" | "quotaWindowInterval" | "quotaWindowWeekly" | "quotaUnlimited" | "quotaCounts" | "composerLabel" | "enableProvider" | "selectAll" | "unselectAll" | "enhanced" | "defaultReasoningEffort" | "defaultReasoningEffortHint" | "defaultEffortAuto" | "contextWindowSection" | "contextWindowHint" | "contextWindowNoneEnabled" | "contextWindowReset" | "contextWindowResetAll" | "save" | "saving" | "invalidCapacity" | "thinkingAlwaysOn" | "thinkingToggle" | "thinkingForced" | "capText" | "capImage" | "loading" | "unknown" | "accountPool" | "addAccount" | "accountCount" | "primaryAccount" | "activeAccount" | "setPrimary" | "deleteAccount" | "cooling" | "cooldownLeft" | "clearCooldown" | "needsRelogin" | "relogin" | "rotationStrategy" | "strategySequential" | "strategyRoundRobin" | "strategySticky" | "noAccounts" | "storageNotice" | "expires" | "lastUsed", string>;
|
|
380
|
+
'en-US': Record<"tokens" | "title" | "pageDesc" | "account" | "signedIn" | "signedOut" | "accountLabel" | "accountId" | "email" | "region" | "regionCn" | "regionGlobal" | "storage" | "storageNative" | "storageDpapi" | "storageFile" | "storagePath" | "expiresAt" | "expiresRemaining" | "expiresExpired" | "expiresHint" | "signIn" | "signingIn" | "signOut" | "cancelSignIn" | "deviceCodeSection" | "deviceCodeHint" | "userCode" | "copyCode" | "copied" | "openSignInPage" | "codeExpires" | "codeMinutes" | "waitingAuthorization" | "loginFailed" | "loginExpired" | "loginDenied" | "logoutOwnedByApp" | "connection" | "provider" | "connectionState" | "connected" | "untested" | "routeOwned" | "routeConflict" | "testConnection" | "testingConnection" | "testSuccess" | "testSuccessModel" | "testFailed" | "modelsSection" | "modelsHint" | "modelsUnavailable" | "quotaSection" | "dailyCheckin" | "checkinHint" | "checkinAuto" | "checkinToday" | "checkinSkipped" | "checkinFailed" | "checkinStreak" | "checkinClaimed" | "checkinLastRun" | "checkinNever" | "checkinNow" | "checkinRunning" | "quotaUnavailable" | "quotaNeedsApiKey" | "quotaUnreachable" | "quotaTokenExpired" | "quotaStale" | "quotaUsed" | "quotaRemaining" | "quotaReset" | "quotaRefresh" | "quotaRefreshing" | "quotaWindowInterval" | "quotaWindowWeekly" | "quotaUnlimited" | "quotaCounts" | "composerLabel" | "enableProvider" | "selectAll" | "unselectAll" | "enhanced" | "defaultReasoningEffort" | "defaultReasoningEffortHint" | "defaultEffortAuto" | "contextWindowSection" | "contextWindowHint" | "contextWindowNoneEnabled" | "contextWindowReset" | "contextWindowResetAll" | "save" | "saving" | "invalidCapacity" | "thinkingAlwaysOn" | "thinkingToggle" | "thinkingForced" | "capText" | "capImage" | "loading" | "unknown" | "accountPool" | "addAccount" | "accountCount" | "primaryAccount" | "activeAccount" | "setPrimary" | "deleteAccount" | "cooling" | "cooldownLeft" | "clearCooldown" | "needsRelogin" | "relogin" | "rotationStrategy" | "strategySequential" | "strategyRoundRobin" | "strategySticky" | "noAccounts" | "storageNotice" | "expires" | "lastUsed", string>;
|
|
375
381
|
};
|
|
376
382
|
export type MinimaxCodeLocaleKey = keyof typeof zh;
|
|
377
383
|
//# sourceMappingURL=locales.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"locales.d.ts","sourceRoot":"","sources":["../../../../src/client/minimax-code/locales.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,qBAAqB,CAAA;AAEjD,eAAO,MAAM,EAAE
|
|
1
|
+
{"version":3,"file":"locales.d.ts","sourceRoot":"","sources":["../../../../src/client/minimax-code/locales.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,eAAe,qBAAqB,CAAA;AAEjD,eAAO,MAAM,EAAE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4GL,CAAA;AAEV,eAAO,MAAM,EAAE,EAAE,MAAM,CAAC,MAAM,OAAO,EAAE,EAAE,MAAM,CAyG9C,CAAA;AAED,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAKxB,CAAA;AAED,MAAM,MAAM,oBAAoB,GAAG,MAAM,OAAO,EAAE,CAAA"}
|
|
@@ -91,6 +91,26 @@ export interface AccountPoolHooks<TCredentials, TAccount extends PoolAccountShap
|
|
|
91
91
|
* refresh token, for instance). Reported purely: nothing is written here.
|
|
92
92
|
*/
|
|
93
93
|
authRejectedReason?(credentials: TCredentials): string | undefined;
|
|
94
|
+
/**
|
|
95
|
+
* Best-effort repair for an account the pool no longer owns.
|
|
96
|
+
*
|
|
97
|
+
* The pool holds a COPY of an account's credential when one was adopted from
|
|
98
|
+
* another application, and a copy can go stale: the moment either side rotates,
|
|
99
|
+
* the refresh token the pool holds is spent. Recovery is not a refresh (that
|
|
100
|
+
* would spend the dead token again) but a re-read of the authority, keeping the
|
|
101
|
+
* authoritative copy only when it still describes the same account.
|
|
102
|
+
*
|
|
103
|
+
* Returning null means "no newer authority"; the pool then leaves the row alone.
|
|
104
|
+
* Absent means the provider keeps no external authority at all.
|
|
105
|
+
*
|
|
106
|
+
* The "has it moved on" test belongs to the provider, which knows what identity
|
|
107
|
+
* means for its credential: the core only asks for the authority and lets the
|
|
108
|
+
* provider decide whether it is a newer state of the same account.
|
|
109
|
+
*/
|
|
110
|
+
liveCredentialsFor?(account: TAccount): Promise<{
|
|
111
|
+
credentials: TCredentials;
|
|
112
|
+
advanced: boolean;
|
|
113
|
+
} | null>;
|
|
94
114
|
/** Pre-pool single credential, projected as the primary account on read. */
|
|
95
115
|
legacyAccount?(): Promise<TAccount | null>;
|
|
96
116
|
/** Mirror the primary account into the single-credential store; `null` clears it. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account-pool.d.ts","sourceRoot":"","sources":["../../../../src/host/common/account-pool.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"account-pool.d.ts","sourceRoot":"","sources":["../../../../src/host/common/account-pool.ts"],"names":[],"mappings":"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"}
|
|
@@ -128,6 +128,50 @@ export interface MinimaxCodeAccountPoolOptions {
|
|
|
128
128
|
export declare class MinimaxCodeAccountPool extends AccountPoolCore<MinimaxCodeCredentials, MinimaxCodePoolAccount, MinimaxCodeAccountSummaryDto> {
|
|
129
129
|
private readonly store;
|
|
130
130
|
constructor(options?: MinimaxCodeAccountPoolOptions);
|
|
131
|
+
/**
|
|
132
|
+
* Account summaries, with a false auth failure cleared.
|
|
133
|
+
*
|
|
134
|
+
* A row can carry an `authStatus` of expired for a rotation that actually
|
|
135
|
+
* succeeded — the second of two concurrent rotations of one session gets a final
|
|
136
|
+
* verdict for a token the first already spent. Nobody comes back to clear that
|
|
137
|
+
* marker, so the account stays out of rotation until the user presses 重新登录.
|
|
138
|
+
*
|
|
139
|
+
* The verdict is re-checked against the token in force instead: a row whose
|
|
140
|
+
* credential has moved on since the failure is routable again, and the marker is
|
|
141
|
+
* removed. A row still holding the refused token keeps its marker, because that
|
|
142
|
+
* one really does need a sign-in.
|
|
143
|
+
*/
|
|
144
|
+
listAccounts(): Promise<MinimaxCodeAccountSummaryDto[]>;
|
|
145
|
+
/**
|
|
146
|
+
* Pick an account, healing a stale auth failure first.
|
|
147
|
+
*
|
|
148
|
+
* The healing matters here, not only on the card: an account marked expired is
|
|
149
|
+
* excluded by the core's eligibility rule, so until the marker is gone the line
|
|
150
|
+
* answers a single-account pool with "all accounts need a new sign-in" — for a
|
|
151
|
+
* rotation that succeeded. Doing it on the request path means the very next
|
|
152
|
+
* request after a false refusal routes normally instead of waiting for the card's
|
|
153
|
+
* next poll.
|
|
154
|
+
*/
|
|
155
|
+
getEffectiveAccount(excludeIds?: ReadonlySet<string>, fetchFn?: typeof fetch): Promise<{
|
|
156
|
+
account: MinimaxCodePoolAccount;
|
|
157
|
+
credentials: MinimaxCodeCredentials;
|
|
158
|
+
}>;
|
|
159
|
+
/**
|
|
160
|
+
* Drop an `authStatus` that describes a credential this machine no longer holds.
|
|
161
|
+
*
|
|
162
|
+
* A row can be marked expired by a rotation that actually SUCCEEDED: the refresh
|
|
163
|
+
* token is single-use, so when two callers of one session rotate at the same time
|
|
164
|
+
* the loser is told `invalid_grant` for a token the winner already spent. That is
|
|
165
|
+
* a verdict about a spent generation, not about the sign-in — and nothing else in
|
|
166
|
+
* the system ever revisits it, which is why the account stayed parked at
|
|
167
|
+
* "需要重新登录" until the user pressed a button.
|
|
168
|
+
*
|
|
169
|
+
* The verdict is re-checked against the credential in force: if the stored
|
|
170
|
+
* credential for the same session has moved on, the marker was about the old
|
|
171
|
+
* token and is removed. A row still holding the refused token keeps its marker,
|
|
172
|
+
* because that one genuinely needs a sign-in.
|
|
173
|
+
*/
|
|
174
|
+
private healStaleAuthFailures;
|
|
131
175
|
/**
|
|
132
176
|
* Pick the account for the next request.
|
|
133
177
|
*
|
|
@@ -151,6 +195,21 @@ export declare class MinimaxCodeAccountPool extends AccountPoolCore<MinimaxCodeC
|
|
|
151
195
|
* pair back, and reading the pre-refresh file would undo it.
|
|
152
196
|
*/
|
|
153
197
|
private liveNativeCredential;
|
|
198
|
+
/**
|
|
199
|
+
* The desktop app's own copy of one native account's session, and whether it has
|
|
200
|
+
* moved on from the row's copy.
|
|
201
|
+
*
|
|
202
|
+
* The app rotates its token on its own schedule, so the copy the pool adopted can
|
|
203
|
+
* be older than what is on disk. Only the same record slot counts: a different
|
|
204
|
+
* record key or region is a different account, and substituting it would present
|
|
205
|
+
* one account's token as another's.
|
|
206
|
+
*
|
|
207
|
+
* `advanced` is the whole reason this does not simply return the file: an
|
|
208
|
+
* EXPIRED file is not newer authority (that is the app's session having lapsed),
|
|
209
|
+
* while one that has moved on from the row is. The row's refresh token was spent
|
|
210
|
+
* by whichever side rotated last, and only the file can say what replaced it.
|
|
211
|
+
*/
|
|
212
|
+
private nativeAuthority;
|
|
154
213
|
/**
|
|
155
214
|
* Adopt the sign-in the desktop app currently holds into the pool.
|
|
156
215
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"account-pool.d.ts","sourceRoot":"","sources":["../../../../src/host/minimax-code/account-pool.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAGH,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,MAAM,WAAW,CAAA;AAEhE,OAAO,EACL,eAAe,EAGf,KAAK,gBAAgB,EACrB,KAAK,QAAQ,EACd,MAAM,2BAA2B,CAAA;AAElC,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACxD,OAAO,EACL,0BAA0B,
|
|
1
|
+
{"version":3,"file":"account-pool.d.ts","sourceRoot":"","sources":["../../../../src/host/minimax-code/account-pool.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"checkin.d.ts","sourceRoot":"","sources":["../../../../src/host/minimax-code/checkin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAMH,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAA;AACvF,OAAO,KAAK,EAAE,sBAAsB,EAAgC,MAAM,mBAAmB,CAAA;AAY7F;;;;GAIG;AACH,eAAO,MAAM,eAAe,QAAiB,CAAA;AAC7C,kEAAkE;AAClE,eAAO,MAAM,mBAAmB,IAAI,CAAA;AACpC;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,QAAiB,CAAA;AAEzD,yEAAyE;AACzE,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAED,+EAA+E;AAC/E,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKrD;AAwDD,wDAAwD;AACxD,MAAM,MAAM,sBAAsB,GAAG,IAAI,CACvC,sBAAsB,EACtB,cAAc,GAAG,oBAAoB,GAAG,iBAAiB,CAC1D,CAAA;AAED,MAAM,WAAW,gCAAgC;IAC/C,OAAO,CAAC,EAAE,OAAO,KAAK,CAAA;IACtB,wFAAwF;IACxF,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,4EAA4E;IAC5E,QAAQ,EAAE,MAAM;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAA;IACpC;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3B,iCAAiC;IACjC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;IAClB,oFAAoF;IACpF,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,MAAM,CAAC,EAAE;QACP,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;QAC3B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;KAC5B,CAAA;CACF;AAED;;;GAGG;AACH,qBAAa,yBAAyB;IAmBlC,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAnB1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;IAClC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4C;IACnE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAC/C,OAAO,CAAC,KAAK,CAA0C;IACvD,OAAO,CAAC,UAAU,CAA2C;IAC7D,OAAO,CAAC,MAAM,CAAQ;IACtB,mEAAmE;IACnE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgB;IACtC,0DAA0D;IAC1D,OAAO,CAAC,QAAQ,CAA6B;IAE7C,OAAO,CAAC,SAAS,CAAsB;IACvC,iFAAiF;IACjF,OAAO,CAAC,SAAS,CAA6B;gBAG3B,IAAI,EAAE,sBAAsB,EAC5B,OAAO,EAAE,gCAAgC;IAS5D;;;;;;;;OAQG;IACG,IAAI,CAAC,MAAM,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAUzC,OAAO,CAAC,KAAK;YAQC,QAAQ;YAoBR,GAAG;IAmCjB,yDAAyD;YAC3C,KAAK;IAOnB;;;;;;;OAOG;YACW,WAAW;IAgBzB,wEAAwE;YAC1D,UAAU;
|
|
1
|
+
{"version":3,"file":"checkin.d.ts","sourceRoot":"","sources":["../../../../src/host/minimax-code/checkin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAMH,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,wCAAwC,CAAA;AACvF,OAAO,KAAK,EAAE,sBAAsB,EAAgC,MAAM,mBAAmB,CAAA;AAY7F;;;;GAIG;AACH,eAAO,MAAM,eAAe,QAAiB,CAAA;AAC7C,kEAAkE;AAClE,eAAO,MAAM,mBAAmB,IAAI,CAAA;AACpC;;;;GAIG;AACH,eAAO,MAAM,2BAA2B,QAAiB,CAAA;AAEzD,yEAAyE;AACzE,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC;AAED,+EAA+E;AAC/E,wBAAgB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAKrD;AAwDD,wDAAwD;AACxD,MAAM,MAAM,sBAAsB,GAAG,IAAI,CACvC,sBAAsB,EACtB,cAAc,GAAG,oBAAoB,GAAG,iBAAiB,CAC1D,CAAA;AAED,MAAM,WAAW,gCAAgC;IAC/C,OAAO,CAAC,EAAE,OAAO,KAAK,CAAA;IACtB,wFAAwF;IACxF,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,4EAA4E;IAC5E,QAAQ,EAAE,MAAM;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,CAAA;IACpC;;;;OAIG;IACH,KAAK,CAAC,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC3B,iCAAiC;IACjC,GAAG,CAAC,EAAE,MAAM,MAAM,CAAA;IAClB,oFAAoF;IACpF,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,MAAM,CAAC,EAAE;QACP,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;QAC3B,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;KAC5B,CAAA;CACF;AAED;;;GAGG;AACH,qBAAa,yBAAyB;IAmBlC,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAnB1B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAc;IACtC,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAQ;IAClC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAc;IAClC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAA4C;IACnE,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAoB;IAC/C,OAAO,CAAC,KAAK,CAA0C;IACvD,OAAO,CAAC,UAAU,CAA2C;IAC7D,OAAO,CAAC,MAAM,CAAQ;IACtB,mEAAmE;IACnE,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAgB;IACtC,0DAA0D;IAC1D,OAAO,CAAC,QAAQ,CAA6B;IAE7C,OAAO,CAAC,SAAS,CAAsB;IACvC,iFAAiF;IACjF,OAAO,CAAC,SAAS,CAA6B;gBAG3B,IAAI,EAAE,sBAAsB,EAC5B,OAAO,EAAE,gCAAgC;IAS5D;;;;;;;;OAQG;IACG,IAAI,CAAC,MAAM,UAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAUzC,OAAO,CAAC,KAAK;YAQC,QAAQ;YAoBR,GAAG;IAmCjB,yDAAyD;YAC3C,KAAK;IAOnB;;;;;;;OAOG;YACW,WAAW;IAgBzB,wEAAwE;YAC1D,UAAU;IAmCxB;;;;OAIG;YACW,WAAW;IAgBzB,uDAAuD;YACzC,KAAK;IAWnB,sDAAsD;YACxC,KAAK;IAWnB;;;;;;OAMG;IACH,OAAO,CAAC,kBAAkB;IAsB1B,8EAA8E;IAC9E,OAAO,CAAC,YAAY;IAQpB;;;OAGG;IACG,OAAO,IAAI,OAAO,CAAC,yBAAyB,CAAC;YAwCrC,IAAI;YA+BJ,IAAI;CAYnB"}
|
|
@@ -117,8 +117,17 @@ export declare function quotaRequestHeaders(accessToken: string, pathWithSearch:
|
|
|
117
117
|
* host answers HTTP 200 with `base_resp.status_code: 1004` for an
|
|
118
118
|
* `mcode-public` (MiniMax Code) token, under every auth shape tried.
|
|
119
119
|
* - `unreachable` — no candidate host produced a usable answer at all.
|
|
120
|
+
* - `token-expired` — every candidate refused the bearer with 401/403, and the
|
|
121
|
+
* one refresh that follows also failed.
|
|
122
|
+
*
|
|
123
|
+
* `token-expired` exists because a refusal and an outage are different facts for
|
|
124
|
+
* the person looking at the card: an outage means "try again in a minute", while a
|
|
125
|
+
* refused bearer means the access token aged out. Collapsing the two into
|
|
126
|
+
* `unreachable` is what made a perfectly healthy account read as signed-out.
|
|
127
|
+
* - `stale` - the newest read failed, but the card is still being served the last
|
|
128
|
+
* numbers that parsed. The value is real; only its age is not.
|
|
120
129
|
*/
|
|
121
|
-
export type MinimaxCodeQuotaUnavailable = 'credential-not-accepted' | 'unreachable';
|
|
130
|
+
export type MinimaxCodeQuotaUnavailable = 'credential-not-accepted' | 'unreachable' | 'token-expired' | 'stale';
|
|
122
131
|
/** Forget the cached usage snapshot (a sign-out, a sign-in, a test). */
|
|
123
132
|
export declare function clearCachedQuota(): void;
|
|
124
133
|
/** The last usage snapshot without touching the network. */
|
|
@@ -161,6 +170,23 @@ export declare function fetchTokenPlanQuota(credentials: MinimaxCodeCredentials,
|
|
|
161
170
|
fetchFn?: typeof fetch;
|
|
162
171
|
signal?: AbortSignal;
|
|
163
172
|
force?: boolean;
|
|
173
|
+
/**
|
|
174
|
+
* Renew the credential and hand back the pair to retry with.
|
|
175
|
+
*
|
|
176
|
+
* Injected by the route, which owns the store: this module reads credentials,
|
|
177
|
+
* it does not write them. Returns null when the credential cannot be renewed,
|
|
178
|
+
* and callers treat that as "still expired" rather than "signed out".
|
|
179
|
+
*/
|
|
180
|
+
renewCredential?: () => Promise<MinimaxCodeCredentials | null>;
|
|
181
|
+
/**
|
|
182
|
+
* Whether the credential this read presented has already been replaced.
|
|
183
|
+
*
|
|
184
|
+
* Set by the caller, which can see the credential in force. A 401 that arrives
|
|
185
|
+
* for a token that is no longer current is not a verdict on the account, and
|
|
186
|
+
* reporting it as `token-expired` would put "sign in again" on a card whose
|
|
187
|
+
* sign-in is in perfect health.
|
|
188
|
+
*/
|
|
189
|
+
isCredentialStale?: () => Promise<boolean>;
|
|
164
190
|
}): Promise<MinimaxCodeQuota | null>;
|
|
165
191
|
/**
|
|
166
192
|
* Every model id the hardcoded directory offers.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/host/minimax-code/client.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAGH,OAAO,EAEL,+BAA+B,EAC/B,aAAa,EACb,YAAY,EAMZ,sBAAsB,EAEtB,WAAW,EACZ,MAAM,YAAY,CAAA;AACnB,OAAO,EACL,0BAA0B,EAC1B,KAAK,sBAAsB,EAC5B,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAA6C,4BAA4B,EAAE,MAAM,YAAY,CAAA;AAEpG,OAAO,KAAK,EACV,kBAAkB,EAClB,gBAAgB,EAEhB,iBAAiB,EAClB,MAAM,wCAAwC,CAAA;AAU/C;;;;;;;;;GASG;AACH,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAS/E;AAED,oDAAoD;AACpD,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAE/E;AAED,2CAA2C;AAC3C,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,eAAe,EAAE,MAAM,CAAA;IACvB,gBAAgB,EAAE,MAAM,CAAA;CACzB;AAYD,kEAAkE;AAClE,wBAAgB,mBAAmB,CAAC,OAAO,EAAE,OAAO,GAAG,YAAY,GAAG,IAAI,CASzE;AAED,yEAAyE;AACzE,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAiBxD;AAED,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,OAAO,CAAA;IACX,yDAAyD;IACzD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,gDAAgD;IAChD,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,CAAC,EAAE,kBAAkB,GAAG,IAAI,CAAA;IACnC,KAAK,CAAC,EAAE,YAAY,CAAA;CACrB;AAED;;;;;;GAMG;AACH,eAAO,MAAM,WAAW,eAAe,CAAA;AAEvC;;;;;;;;GAQG;AACH,wBAAsB,cAAc,CAClC,KAAK,EAAE,0BAA0B,EACjC,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAO,GAC7D,OAAO,CAAC,kBAAkB,CAAC,CAsD7B;AAED;;;;;;GAMG;AACH,wBAAsB,aAAa,CACjC,KAAK,EAAE,0BAA0B,EACjC,OAAO,EAAE;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,EAC7D,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAO,GAC7D,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAAC,CAyChG;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,WAAW,GAAE,MAAmB,GAC/B,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAoBxB;AA2BD;;;;;GAKG;AACH
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../../../../src/host/minimax-code/client.ts"],"names":[],"mappings":"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"}
|
|
@@ -150,6 +150,8 @@ export { accountHost };
|
|
|
150
150
|
export declare function isRefreshTokenRejected(refreshToken: string): boolean;
|
|
151
151
|
/** Test seam: forget every remembered rejection. */
|
|
152
152
|
export declare function resetRefreshRejections(): void;
|
|
153
|
+
/** Test seam: forget every in-flight rotation. */
|
|
154
|
+
export declare function resetInFlightRefreshes(): void;
|
|
153
155
|
export interface EnsureTokenOptions {
|
|
154
156
|
fetchFn?: typeof fetch;
|
|
155
157
|
signal?: AbortSignal;
|
|
@@ -161,14 +163,28 @@ export interface EnsureTokenOptions {
|
|
|
161
163
|
*
|
|
162
164
|
* This is the whole of the contention discipline in one function:
|
|
163
165
|
*
|
|
164
|
-
* 1. read the stored credential and use it as-is while it is valid —
|
|
165
|
-
* common case, and the one that never touches the file or the network;
|
|
166
|
-
* 2.
|
|
167
|
-
* already
|
|
168
|
-
*
|
|
169
|
-
*
|
|
166
|
+
* 1. read the stored credential and use it as-is while it is comfortably valid —
|
|
167
|
+
* the common case, and the one that never touches the file or the network;
|
|
168
|
+
* 2. renew EARLY (PRE_EXPIRY_REFRESH_MS before expiry) rather than at the boundary
|
|
169
|
+
* the service refuses at, or when `force` reports a 401 the service has already
|
|
170
|
+
* issued;
|
|
171
|
+
* 3. share one rotation between concurrent callers of the SAME credential, and go
|
|
172
|
+
* through the store's rotation registry so a rotation the desktop app is doing
|
|
173
|
+
* to the same file is waited for rather than raced;
|
|
170
174
|
* 4. write the result back through the store's atomic replacement, and remember a
|
|
171
|
-
*
|
|
175
|
+
* rejection only when the credential on disk is still the rejected one.
|
|
176
|
+
*
|
|
177
|
+
* Step 4 is the one the every-hour sign-out hung on. `invalid_grant` used to be
|
|
178
|
+
* recorded unconditionally, but that verdict has two possible meanings and only
|
|
179
|
+
* one of them is "this sign-in is dead":
|
|
180
|
+
*
|
|
181
|
+
* - the token really is revoked (`invalid_grant` / `invalid_client`), which is a
|
|
182
|
+
* sign-in problem;
|
|
183
|
+
* - another holder of the very same session rotated first, so the token this call
|
|
184
|
+
* presented was already spent. The service cannot tell the two apart, and the
|
|
185
|
+
* plugin must not either — so it looks at the file. A credential newer than the
|
|
186
|
+
* one it presented means somebody else rotated successfully, and that credential
|
|
187
|
+
* is adopted instead of being buried under a tombstone.
|
|
172
188
|
*/
|
|
173
189
|
export declare function ensureAccessToken(store: MinimaxCodeCredentialStore, options?: EnsureTokenOptions): Promise<MinimaxCodeCredentials>;
|
|
174
190
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../../../../src/host/minimax-code/oauth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAIH,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAA;AACxH,OAAO,EAgBL,WAAW,EAIZ,MAAM,YAAY,CAAA;AACnB,OAAO,
|
|
1
|
+
{"version":3,"file":"oauth.d.ts","sourceRoot":"","sources":["../../../../src/host/minimax-code/oauth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAIH,OAAO,KAAK,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,mBAAmB,EAAE,MAAM,wCAAwC,CAAA;AACxH,OAAO,EAgBL,WAAW,EAIZ,MAAM,YAAY,CAAA;AACnB,OAAO,EAGL,KAAK,0BAA0B,EAC/B,KAAK,sBAAsB,EAC5B,MAAM,kBAAkB,CAAA;AAEzB,oFAAoF;AACpF,qBAAa,4BAA6B,SAAQ,KAAK;gBACzC,OAAO,EAAE,MAAM;CAI5B;AAED,iEAAiE;AACjE,qBAAa,yBAA0B,SAAQ,KAAK;gBAGtC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,OAAO;CAI7C;AAED,oEAAoE;AACpE,qBAAa,4BAA6B,SAAQ,KAAK;gBACzC,OAAO,EAAE,MAAM;CAI5B;AAuDD;;;;;;GAMG;AACH,wBAAgB,cAAc,IAAI;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAIxE;AAMD,4CAA4C;AAC5C,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAA;IAChB,UAAU,EAAE,MAAM,CAAA;IAClB,eAAe,EAAE,MAAM,CAAA;IACvB,uBAAuB,EAAE,MAAM,CAAA;IAC/B,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,CAAA;IAChB,oDAAoD;IACpD,YAAY,EAAE,MAAM,CAAA;IACpB,2EAA2E;IAC3E,MAAM,EAAE,iBAAiB,CAAA;CAC1B;AAED;;;;;GAKG;AACH,wBAAsB,0BAA0B,CAAC,OAAO,GAAE;IACxD,OAAO,CAAC,EAAE,OAAO,KAAK,CAAA;IACtB,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,MAAM,CAAC,EAAE,iBAAiB,CAAA;CACtB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CA6CpC;AAMD,2DAA2D;AAC3D,MAAM,WAAW,YAAY;IAC3B,WAAW,EAAE,MAAM,CAAA;IACnB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,YAAY,EAAE,MAAM,CAAA;IACpB,WAAW,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,MAAM,CAAA;CACd;AA0BD,wCAAwC;AACxC,MAAM,MAAM,iBAAiB,GACzB;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,YAAY,CAAA;CAAE,GACxC;IAAE,IAAI,EAAE,SAAS,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,GACtC;IAAE,IAAI,EAAE,SAAS,CAAA;CAAE,CAAA;AAEvB;;;;;;;GAOG;AACH,wBAAsB,eAAe,CACnC,aAAa,EAAE,IAAI,CAAC,mBAAmB,EAAE,YAAY,GAAG,cAAc,GAAG,QAAQ,CAAC,EAClF,OAAO,GAAE;IAAE,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAA;CAAO,GAC7D,OAAO,CAAC,iBAAiB,CAAC,CA+B5B;AAoBD;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CACtC,YAAY,EAAE,MAAM,EACpB,OAAO,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,iBAAiB,CAAA;CAAE,GACnF,OAAO,CAAC,YAAY,CAAC,CAiDvB;AAED;;;;;GAKG;AACH,wBAAsB,WAAW,CAC/B,KAAK,EAAE,MAAM,EACb,OAAO,EAAE;IAAE,OAAO,CAAC,EAAE,OAAO,KAAK,CAAC;IAAC,MAAM,CAAC,EAAE,WAAW,CAAC;IAAC,MAAM,EAAE,iBAAiB,CAAA;CAAE,GACnF,OAAO,CAAC,OAAO,CAAC,CAiBlB;AAmCD,0EAA0E;AAC1E,wBAAsB,aAAa,CAAC,OAAO,GAAE;IAC3C,OAAO,CAAC,EAAE,OAAO,KAAK,CAAA;IACtB,MAAM,CAAC,EAAE,iBAAiB,CAAA;IAC1B,MAAM,CAAC,EAAE,WAAW,CAAA;CAChB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAoBpC;AAED,uEAAuE;AACvE,wBAAgB,WAAW,CAAC,OAAO,EAAE,MAAM,GAAG,mBAAmB,GAAG,IAAI,CASvE;AAED,iFAAiF;AACjF,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAEvD;AAED,0EAA0E;AAC1E,wBAAgB,cAAc,IAAI,IAAI,CAErC;AAED,0DAA0D;AAC1D,wBAAgB,sBAAsB,CACpC,WAAW,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,iBAAiB,CAAA;CAAE,GACtG,kBAAkB,CAQpB;AAGD,OAAO,EAAE,WAAW,EAAE,CAAA;AAsBtB,6DAA6D;AAC7D,wBAAgB,sBAAsB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAQpE;AAED,oDAAoD;AACpD,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C;AAoCD,kDAAkD;AAClD,wBAAgB,sBAAsB,IAAI,IAAI,CAE7C;AAED,MAAM,WAAW,kBAAkB;IACjC,OAAO,CAAC,EAAE,OAAO,KAAK,CAAA;IACtB,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,gFAAgF;IAChF,KAAK,CAAC,EAAE,OAAO,CAAA;CAChB;AAOD;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,iBAAiB,CACrC,KAAK,EAAE,0BAA0B,EACjC,OAAO,GAAE,kBAAuB,GAC/B,OAAO,CAAC,sBAAsB,CAAC,CAqEjC;AAED;;;;;;;GAOG;AACH,wBAAsB,YAAY,CAChC,KAAK,EAAE,0BAA0B,EACjC,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;IACP,OAAO,CAAC,EAAE,OAAO,KAAK,CAAA;IACtB,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB;;;;;;;;;;;;;OAaG;IACH,MAAM,CAAC,EAAE,CAAC,WAAW,EAAE,sBAAsB,KAAK,OAAO,CAAC,IAAI,CAAC,CAAA;CAC3D,GACL,OAAO,CAAC;IAAE,MAAM,EAAE,SAAS,GAAG,eAAe,GAAG,SAAS,GAAG,QAAQ,CAAC;IAAC,OAAO,CAAC,EAAE,kBAAkB,CAAA;CAAE,CAAC,CA6DvG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../../src/host/minimax-code/routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAGlD,OAAO,EACL,wBAAwB,EAMxB,KAAK,oBAAoB,EAC1B,MAAM,wCAAwC,CAAA;AAG/C,OAAO,EAGL,KAAK,sBAAsB,EAC5B,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EACL,0BAA0B,EAC1B,6BAA6B,EAE7B,KAAK,wBAAwB,EAC7B,KAAK,0BAA0B,EAC/B,KAAK,wBAAwB,EAC9B,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAIL,iBAAiB,EACjB,WAAW,EAKZ,MAAM,YAAY,CAAA;AAQnB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA;AA+C7D,6EAA6E;AAC7E,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAMpD;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,yBAAyB;IACxC,iFAAiF;IACjF,MAAM,IAAI,OAAO,CAAC,wBAAwB,CAAC,GAAG,wBAAwB,CAAA;IACtE,MAAM,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAA;CAC3E;AAuBD,MAAM,WAAW,wBAAwB;IACvC,OAAO,CAAC,EAAE,OAAO,KAAK,CAAA;IACtB,sFAAsF;IACtF,OAAO,CAAC,EAAE,OAAO,GAAG,CAAC,MAAM,OAAO,CAAC,CAAA;IACnC,uFAAuF;IACvF,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,MAAM,GAAG,IAAI,CAAC,CAAA;IAChD;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,yBAAyB,CAAA;IACpC;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,sBAAsB,CAAA;IACpC,6EAA6E;IAC7E,OAAO,CAAC,EAAE,IAAI,CAAC,yBAAyB,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;CAC9D;AAOD,4CAA4C;AAC5C,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,0BAA0B,EACjC,OAAO,GAAE,wBAA6B,EACtC,cAAc,CAAC,EAAE,yBAAyB,GACzC,OAAO,CAAC,oBAAoB,CAAC,CAoE/B;AAED,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,OAAO,EACZ,KAAK,GAAE,0BAA6D,EACpE,OAAO,GAAE,wBAA6B,EACtC,aAAa,GAAE,6BAAmE,EAClF,WAAW,CAAC,EAAE,0BAA0B,GACvC,MAAM,IAAI,
|
|
1
|
+
{"version":3,"file":"routes.d.ts","sourceRoot":"","sources":["../../../../src/host/minimax-code/routes.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,qBAAqB,CAAA;AAGlD,OAAO,EACL,wBAAwB,EAMxB,KAAK,oBAAoB,EAC1B,MAAM,wCAAwC,CAAA;AAG/C,OAAO,EAGL,KAAK,sBAAsB,EAC5B,MAAM,mBAAmB,CAAA;AAE1B,OAAO,EACL,0BAA0B,EAC1B,6BAA6B,EAE7B,KAAK,wBAAwB,EAC7B,KAAK,0BAA0B,EAC/B,KAAK,wBAAwB,EAC9B,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAIL,iBAAiB,EACjB,WAAW,EAKZ,MAAM,YAAY,CAAA;AAQnB,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,cAAc,CAAA;AA+C7D,6EAA6E;AAC7E,wBAAgB,SAAS,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAMpD;AAED;;;;;;;;GAQG;AACH,MAAM,WAAW,yBAAyB;IACxC,iFAAiF;IACjF,MAAM,IAAI,OAAO,CAAC,wBAAwB,CAAC,GAAG,wBAAwB,CAAA;IACtE,MAAM,CAAC,KAAK,EAAE,wBAAwB,GAAG,OAAO,CAAC,wBAAwB,CAAC,CAAA;CAC3E;AAuBD,MAAM,WAAW,wBAAwB;IACvC,OAAO,CAAC,EAAE,OAAO,KAAK,CAAA;IACtB,sFAAsF;IACtF,OAAO,CAAC,EAAE,OAAO,GAAG,CAAC,MAAM,OAAO,CAAC,CAAA;IACnC,uFAAuF;IACvF,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,GAAG,CAAC,MAAM,MAAM,GAAG,IAAI,CAAC,CAAA;IAChD;;;;;;;OAOG;IACH,QAAQ,CAAC,EAAE,yBAAyB,CAAA;IACpC;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,sBAAsB,CAAA;IACpC,6EAA6E;IAC7E,OAAO,CAAC,EAAE,IAAI,CAAC,yBAAyB,EAAE,MAAM,GAAG,SAAS,CAAC,CAAA;CAC9D;AAOD,4CAA4C;AAC5C,wBAAsB,uBAAuB,CAC3C,KAAK,EAAE,0BAA0B,EACjC,OAAO,GAAE,wBAA6B,EACtC,cAAc,CAAC,EAAE,yBAAyB,GACzC,OAAO,CAAC,oBAAoB,CAAC,CAoE/B;AAED,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,OAAO,EACZ,KAAK,GAAE,0BAA6D,EACpE,OAAO,GAAE,wBAA6B,EACtC,aAAa,GAAE,6BAAmE,EAClF,WAAW,CAAC,EAAE,0BAA0B,GACvC,MAAM,IAAI,CAqTZ;AAED,gEAAgE;AAChE,wBAAgB,gBAAgB,IAAI,IAAI,CAEvC;AAED,OAAO,EAAE,wBAAwB,EAAE,WAAW,EAAE,iBAAiB,EAAE,CAAA"}
|
|
@@ -95,6 +95,61 @@ export declare function parseMinimaxCodeCredentials(value: unknown, fallback: {
|
|
|
95
95
|
}): MinimaxCodeCredentials;
|
|
96
96
|
/** Whether a credential is valid for long enough to use as-is. */
|
|
97
97
|
export declare function credentialIsFresh(credentials: MinimaxCodeCredentials, now?: number): boolean;
|
|
98
|
+
/**
|
|
99
|
+
* Whether a credential should be renewed BEFORE it can be refused.
|
|
100
|
+
*
|
|
101
|
+
* {@link credentialIsFresh} answers "can this token be presented right now"; this
|
|
102
|
+
* answers "is it worth rotating on this plugin's own schedule instead of waiting
|
|
103
|
+
* for the service to say no". The two questions need different answers: the whole
|
|
104
|
+
* one-hour sign-out was the second question being answered with the first, so the
|
|
105
|
+
* line only ever rotated inside the last sixty seconds of a sixty-minute token —
|
|
106
|
+
* exactly the window in which concurrent callers spend the same rotating refresh
|
|
107
|
+
* token, and exactly the window in which a request can already be refused.
|
|
108
|
+
*
|
|
109
|
+
* The desktop app reads the same file and remains the first authority for it: this
|
|
110
|
+
* plugin renews a few minutes early, writes the rotation back atomically, and
|
|
111
|
+
* never touches the app's own `auth.lock`.
|
|
112
|
+
*/
|
|
113
|
+
export declare function credentialNeedsRefresh(credentials: MinimaxCodeCredentials, now?: number): boolean;
|
|
114
|
+
/** Test seam: forget the snapshot, so one case cannot observe another's read. */
|
|
115
|
+
export declare function resetMinimaxCodeCredentialReads(): void;
|
|
116
|
+
/**
|
|
117
|
+
* Whether two credentials are two generations of ONE session.
|
|
118
|
+
*
|
|
119
|
+
* The file this line reads holds a single record, but the plugin's own file is a
|
|
120
|
+
* mirror that the pool writes for whichever account is primary — so a credential
|
|
121
|
+
* read from storage may belong to a completely different account than the one a
|
|
122
|
+
* caller is working on. Adopting a stranger's token would present one account's
|
|
123
|
+
* session as another's, which is the one mistake this whole line must never make.
|
|
124
|
+
*
|
|
125
|
+
* The identity is therefore the same one {@link rotationKey} uses: a native record
|
|
126
|
+
* slot, or the sign-in that produced a plugin-owned credential.
|
|
127
|
+
*/
|
|
128
|
+
export declare function minimaxCodeSameCredentialSession(a: MinimaxCodeCredentials | null, b: MinimaxCodeCredentials | null): boolean;
|
|
129
|
+
/**
|
|
130
|
+
* Whether one credential is a LATER state of another.
|
|
131
|
+
*
|
|
132
|
+
* The generation is the desktop app's own rotation counter and the expiry moves
|
|
133
|
+
* forward with every rotation, so either being greater means the candidate is the
|
|
134
|
+
* result of a rotation the baseline predates. This is also what stops a stale copy
|
|
135
|
+
* from rolling a newer state back: a pool row the mirror could not write must never
|
|
136
|
+
* overwrite a fresh file.
|
|
137
|
+
*/
|
|
138
|
+
export declare function minimaxCodeCredentialAdvancedPast(candidate: MinimaxCodeCredentials | null, baseline: MinimaxCodeCredentials): boolean;
|
|
139
|
+
/**
|
|
140
|
+
* Rotate one credential, or adopt the rotation somebody else is doing.
|
|
141
|
+
*
|
|
142
|
+
* The distinction matters: a caller that ADOPTED a result must use the credential
|
|
143
|
+
* that comes back, because the winner replaced the whole record.
|
|
144
|
+
*/
|
|
145
|
+
export declare function rotateMinimaxCodeCredential(store: MinimaxCodeCredentialStore, credentials: MinimaxCodeCredentials, perform: () => Promise<MinimaxCodeCredentials>, options?: {
|
|
146
|
+
signal?: AbortSignal;
|
|
147
|
+
}): Promise<{
|
|
148
|
+
credentials: MinimaxCodeCredentials;
|
|
149
|
+
adopted: boolean;
|
|
150
|
+
}>;
|
|
151
|
+
/** Test seam: forget every rotation, so one test cannot leak into the next. */
|
|
152
|
+
export declare function resetMinimaxCodeRotations(): void;
|
|
98
153
|
/**
|
|
99
154
|
* The credential store for this line.
|
|
100
155
|
*
|
|
@@ -111,6 +166,18 @@ export declare class MinimaxCodeCredentialStore {
|
|
|
111
166
|
private readNative;
|
|
112
167
|
private readPluginFile;
|
|
113
168
|
read(): Promise<MinimaxCodeCredentials | null>;
|
|
169
|
+
/** Resolve once every operation already queued for this store's file settled. */
|
|
170
|
+
private drain;
|
|
171
|
+
/**
|
|
172
|
+
* Read storage, ignoring the snapshot.
|
|
173
|
+
*
|
|
174
|
+
* Used by the rotation path, where the whole question is whether somebody else
|
|
175
|
+
* has already replaced the credential: a cached answer would report the very
|
|
176
|
+
* state the caller is trying to move past. This is also what makes a rotation
|
|
177
|
+
* observable at all - the desktop app's write is only visible by reading the
|
|
178
|
+
* file again.
|
|
179
|
+
*/
|
|
180
|
+
readFresh(): Promise<MinimaxCodeCredentials | null>;
|
|
114
181
|
/**
|
|
115
182
|
* The credential in force plus where it came from, in one pass.
|
|
116
183
|
*
|
|
@@ -134,6 +201,14 @@ export declare class MinimaxCodeCredentialStore {
|
|
|
134
201
|
* written to the plugin's own file. Either way the write is atomic.
|
|
135
202
|
*/
|
|
136
203
|
write(credentials: MinimaxCodeCredentials): Promise<void>;
|
|
204
|
+
/**
|
|
205
|
+
* One write, to whichever file the credential came from.
|
|
206
|
+
*
|
|
207
|
+
* Called with the destination already held by {@link write}'s `serialize`; it
|
|
208
|
+
* must NOT claim the same chain again, or the outer frame would be waiting on the
|
|
209
|
+
* inner one while the inner one waits on the outer.
|
|
210
|
+
*/
|
|
211
|
+
private writeOnce;
|
|
137
212
|
/**
|
|
138
213
|
* Forget the credential this plugin owns.
|
|
139
214
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"token-store.d.ts","sourceRoot":"","sources":["../../../../src/host/minimax-code/token-store.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;
|
|
1
|
+
{"version":3,"file":"token-store.d.ts","sourceRoot":"","sources":["../../../../src/host/minimax-code/token-store.ts"],"names":[],"mappings":"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"}
|
|
@@ -154,14 +154,45 @@ export declare const USER_AGENT = "dsh-chatgpt-subscription (+https://github.com
|
|
|
154
154
|
/**
|
|
155
155
|
* How long before expiry a token is replaced.
|
|
156
156
|
*
|
|
157
|
-
* The access token lives
|
|
158
|
-
*
|
|
159
|
-
*
|
|
160
|
-
*
|
|
161
|
-
*
|
|
162
|
-
* desktop app for a rotation it does
|
|
157
|
+
* The measured MiniMax Code access token lives ONE HOUR, not the day an earlier
|
|
158
|
+
* note assumed, and the desktop app refreshes the same file this plugin reads, so
|
|
159
|
+
* the policy is "read-only first": a token that is still comfortably valid is used
|
|
160
|
+
* exactly as stored. The margin exists only so a request cannot start with a token
|
|
161
|
+
* that expires while it is in flight — it is deliberately far below the token's
|
|
162
|
+
* own lifetime so the plugin does not race the desktop app for a rotation it does
|
|
163
|
+
* not need.
|
|
163
164
|
*/
|
|
164
165
|
export declare const REFRESH_MARGIN_MS = 60000;
|
|
166
|
+
/**
|
|
167
|
+
* How long before expiry this plugin renews the credential ON ITS OWN schedule.
|
|
168
|
+
*
|
|
169
|
+
* This is the constant that removes the every-hour sign-out. The access token
|
|
170
|
+
* lives one hour, so a reader that only acts once the token is already inside
|
|
171
|
+
* {@link REFRESH_MARGIN_MS} of expiry presents a bearer the service has already
|
|
172
|
+
* stopped accepting: every hour the line dips through 401 → refresh → retry, and
|
|
173
|
+
* a burst of tool calls at that boundary has two callers spend the same rotating
|
|
174
|
+
* refresh token. Renewing a few minutes early moves the rotation off the boundary
|
|
175
|
+
* and onto a schedule this plugin controls.
|
|
176
|
+
*
|
|
177
|
+
* It must stay far away from the token's lifetime for the opposite reason: a
|
|
178
|
+
* margin near the lifetime would rotate on every single read and race the desktop
|
|
179
|
+
* app for a rotation neither side needs. Five minutes of a sixty-minute token is
|
|
180
|
+
* the balance — the rotation happens once, well before the token can be refused.
|
|
181
|
+
*/
|
|
182
|
+
export declare const PRE_EXPIRY_REFRESH_MS: number;
|
|
183
|
+
/** Failures cheap enough to retry under {@link PRE_EXPIRY_REFRESH_MS}. */
|
|
184
|
+
export declare const PRE_EXPIRY_REFRESH_MAX_ATTEMPTS = 2;
|
|
185
|
+
/**
|
|
186
|
+
* How long a rotation stays "recent" for other readers of the same credential.
|
|
187
|
+
*
|
|
188
|
+
* A refresh token rotates: the moment one holder spends it, every other holder is
|
|
189
|
+
* left with a token the service has already invalidated. This window is the answer
|
|
190
|
+
* — a caller that observes the credential rotating right now waits for the winner
|
|
191
|
+
* to write its result back and adopts that result instead of spending a token that
|
|
192
|
+
* is already gone. It is a local patience bound, not a lock: no file is created,
|
|
193
|
+
* and the desktop app's own `auth.lock` is never touched.
|
|
194
|
+
*/
|
|
195
|
+
export declare const CREDENTIAL_ROTATION_WAIT_MS = 15000;
|
|
165
196
|
/** Attempts one refresh gets before the stored credential is called dead. */
|
|
166
197
|
export declare const REFRESH_MAX_RETRIES = 3;
|
|
167
198
|
/** Exponential backoff base for a retryable refresh failure. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/host/minimax-code/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAGH,OAAO,KAAK,EAAE,0BAA0B,EAAE,iBAAiB,EAAE,MAAM,wCAAwC,CAAA;AAG3G,eAAO,MAAM,WAAW,iBAA2B,CAAA;AACnD,eAAO,MAAM,aAAa,qDAA6B,CAAA;AAEvD;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,iBAAiB,CAAA;AAEpD,kDAAkD;AAClD,eAAO,MAAM,kBAAkB,kBAAkB,CAAA;AACjD,qDAAqD;AACrD,eAAO,MAAM,qBAAqB,kBAAkB,CAAA;AAEpD;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,SAAS,CAAA;AAE5C,yFAAyF;AACzF,eAAO,MAAM,YAAY,EAAE,MAAM,CAAC,iBAAiB,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAStF,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,eAAO,MAAM,uBAAuB,6CAA6C,CAAA;AAEjF;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,iBAAiB,EAAE,SAAS,MAAM,EAAE,CAG9E,CAAA;AAED;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,wBAAwB,QAAQ,CAAA;AAE7C,kFAAkF;AAClF,wBAAgB,uBAAuB,IAAI,OAAO,CAEjD;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,EAAE,CAIvE;AAED,8CAA8C;AAC9C,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAExD;AAED,4DAA4D;AAC5D,eAAO,MAAM,gBAAgB,wBAAwB,CAAA;AACrD,6EAA6E;AAC7E,eAAO,MAAM,gBAAgB,kBAAkB,CAAA;AAC/C,2BAA2B;AAC3B,eAAO,MAAM,iBAAiB,mBAAmB,CAAA;AAEjD,2DAA2D;AAC3D,eAAO,MAAM,sBAAsB,iDAAiD,CAAA;AACpF,qDAAqD;AACrD,eAAO,MAAM,qBAAqB,SAAS,CAAA;AAE3C;;;;;;GAMG;AACH,eAAO,MAAM,gBAAgB,yBAAyB,CAAA;AACtD,sDAAsD;AACtD,eAAO,MAAM,aAAa,cAAc,CAAA;AACxC,0DAA0D;AAC1D,eAAO,MAAM,iBAAiB,eAAe,CAAA;AAE7C;;;;;;;GAOG;AACH,eAAO,MAAM,UAAU,qFAC6D,CAAA;AAEpF
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/host/minimax-code/types.ts"],"names":[],"mappings":"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"}
|