@open-mercato/cezar 0.16.0 → 0.16.1-pr1583.3433
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/contract/agent-profiles.d.ts +2 -2
- package/dist/contract/index.js +3 -0
- package/dist/contract/projects.d.ts +4 -0
- package/dist/core/backend-detect.js +10 -0
- package/dist/core/backend-detect.js.map +1 -1
- package/dist/core/codex-app-server-runner.d.ts +3 -0
- package/dist/core/codex-app-server-runner.js +46 -4
- package/dist/core/codex-app-server-runner.js.map +1 -1
- package/dist/core/cursor-bin.d.ts +7 -0
- package/dist/core/cursor-bin.js +11 -0
- package/dist/core/cursor-bin.js.map +1 -1
- package/dist/core/opencode-server-runner.d.ts +2 -0
- package/dist/core/opencode-server-runner.js +28 -2
- package/dist/core/opencode-server-runner.js.map +1 -1
- package/dist/core/provider-auth.d.ts +25 -7
- package/dist/core/provider-auth.js +141 -17
- package/dist/core/provider-auth.js.map +1 -1
- package/dist/core/usage-limit.js +51 -6
- package/dist/core/usage-limit.js.map +1 -1
- package/dist/runs/agent-error-telemetry.d.ts +3 -2
- package/dist/runs/agent-error-telemetry.js +24 -3
- package/dist/runs/agent-error-telemetry.js.map +1 -1
- package/dist/self-update/checkouts.js +8 -4
- package/dist/self-update/checkouts.js.map +1 -1
- package/dist/server/provider-auth-runtime.js +6 -3
- package/dist/server/provider-auth-runtime.js.map +1 -1
- package/dist/server/server.d.ts +10 -0
- package/dist/server/server.js +12 -3
- package/dist/server/server.js.map +1 -1
- package/dist/server/terminal/detected-urls.js +6 -1
- package/dist/server/terminal/detected-urls.js.map +1 -1
- package/dist/workspace/projects.d.ts +2 -0
- package/dist/workspace/projects.js.map +1 -1
- package/package.json +3 -3
- package/web/dist/assets/{agent-task-pickers-DXaIqpJo.js → agent-task-pickers-DEW3Vgdv.js} +1 -1
- package/web/dist/assets/{alert-dialog-BRafiUQO.js → alert-dialog-DvPnvVvK.js} +1 -1
- package/web/dist/assets/arrow-left-BELOeFyX.js +1 -0
- package/web/dist/assets/{automation-format-DeGsIrRc.js → automation-format-BL4n19a2.js} +1 -1
- package/web/dist/assets/{automations-route-CwLG2JNr.js → automations-route-Cx7mzYhD.js} +1 -1
- package/web/dist/assets/{button-ZPJ84lSe.js → button-Clwd6u4_.js} +1 -1
- package/web/dist/assets/{centered-state-DPvWqO6I.js → centered-state-nM7v9xtl.js} +1 -1
- package/web/dist/assets/check-Dt8U0Zvm.js +1 -0
- package/web/dist/assets/chevron-left-Df5IsPem.js +1 -0
- package/web/dist/assets/chevron-right-VbYrJ_st.js +1 -0
- package/web/dist/assets/circle-check-DnEaQ9Rj.js +1 -0
- package/web/dist/assets/{collapsible-D5nsq_lY.js → collapsible-Bdyuw-he.js} +1 -1
- package/web/dist/assets/{commit-list-Cj_rtptn.js → commit-list-xMdmPYbz.js} +1 -1
- package/web/dist/assets/{compare-variants-DI8e5hXy.js → compare-variants-B6ja1M4D.js} +1 -1
- package/web/dist/assets/{dashboard-Bq8Zgcct.js → dashboard-ClEGBFFq.js} +1 -1
- package/web/dist/assets/{diff-Dzk_1Vj_.js → diff-CJKocK17.js} +2 -2
- package/web/dist/assets/{diff-stat-CG6Qr4ac.js → diff-stat-CiWUpWY0.js} +1 -1
- package/web/dist/assets/{diff-view-CnRMn9fw.js → diff-view-DqWj0yYe.js} +1 -1
- package/web/dist/assets/{download-CAIBRPES.js → download-DOJ8Dqfh.js} +1 -1
- package/web/dist/assets/{file-BuJHbBa7.js → file-1a6_DhLG.js} +1 -1
- package/web/dist/assets/{file-preview-Dy3TYcU4.js → file-preview-iucr8WDo.js} +1 -1
- package/web/dist/assets/{file-text-DYR0Kxgo.js → file-text-DmMQx3hx.js} +1 -1
- package/web/dist/assets/{git-pull-request-draft-tzNd17hB.js → git-pull-request-draft-Cn24ayXz.js} +1 -1
- package/web/dist/assets/git-tab-loading-BfC2ir8N.js +1 -0
- package/web/dist/assets/{git-toolbar-Dc6kAzPv.js → git-toolbar-DU5Ca6RI.js} +1 -1
- package/web/dist/assets/{github-k0H4K2Xv.js → github-CELdSmld.js} +1 -1
- package/web/dist/assets/{host-usage-BmL2kzAM.js → host-usage-DjDYDU0A.js} +1 -1
- package/web/dist/assets/{icon-tooltip-BEOrU9g6.js → icon-tooltip-YXzUubMO.js} +1 -1
- package/web/dist/assets/{index-B7LeGGi2.js → index-BBND6Sg3.js} +4 -4
- package/web/dist/assets/{input-NF_gJ6fV.js → input-DIWTlsx6.js} +1 -1
- package/web/dist/assets/{layout-cards-Cx4pRGy3.js → layout-cards-Sur4EWtx.js} +1 -1
- package/web/dist/assets/loader-circle-D-ter0qP.js +1 -0
- package/web/dist/assets/{markdown-D27e_KDW.js → markdown-BzqT8I8y.js} +1 -1
- package/web/dist/assets/{markdown-DUNEzJJg.js → markdown-Rbaca31B.js} +1 -1
- package/web/dist/assets/{message-square-DHEW7I0Y.js → message-square-EWpWB_Gr.js} +1 -1
- package/web/dist/assets/plus-CBVm02wz.js +1 -0
- package/web/dist/assets/{project-router-CIOAbq2D.js → project-router-DZsR9P9C.js} +1 -1
- package/web/dist/assets/{queries-B--Cyn_0.js → queries-CI0EmEcH.js} +1 -1
- package/web/dist/assets/{reference-chip-C0KB59wJ.js → reference-chip-DnemrSPW.js} +1 -1
- package/web/dist/assets/{repo-git-BlEiXMbR.js → repo-git-Bj0PBOjX.js} +1 -1
- package/web/dist/assets/{run-diff-C_AD_Pms.js → run-diff-BPZ85gAE.js} +1 -1
- package/web/dist/assets/{save-Ct323V7q.js → save-B8DEQI2V.js} +1 -1
- package/web/dist/assets/{scroll-within-DVYNEANz.js → scroll-within-Cm6fjjNd.js} +1 -1
- package/web/dist/assets/{search-x-7tkSEIRx.js → search-x-CuinYQnl.js} +1 -1
- package/web/dist/assets/{settings-2-CmkgM6rX.js → settings-2-COky68xN.js} +1 -1
- package/web/dist/assets/{skills-DKqFJCnx.js → skills-BgCN1gTp.js} +1 -1
- package/web/dist/assets/{square-Du4NO0cr.js → square-8OFxLPoA.js} +1 -1
- package/web/dist/assets/{tabs-BhcbXPq1.js → tabs-BUk8rSoE.js} +1 -1
- package/web/dist/assets/{tag-DczwHOyX.js → tag-yruQH0i-.js} +1 -1
- package/web/dist/assets/{task-commits-DtSkB1UU.js → task-commits-W1ZZiEt4.js} +1 -1
- package/web/dist/assets/{task-graph-DalcExDj.js → task-graph-DI2fn5M8.js} +1 -1
- package/web/dist/assets/{task-notes-BHYduZ1z.js → task-notes-lmvd1UM7.js} +1 -1
- package/web/dist/assets/{task-workspace-LhAGqT6q.js → task-workspace-B8Fpho3e.js} +3 -3
- package/web/dist/assets/{terminal-tordSBUt.js → terminal-F3ZJ5fI8.js} +1 -1
- package/web/dist/assets/{terminal-drawer-Cvbqz2QG.js → terminal-drawer-DAkquqSe.js} +2 -2
- package/web/dist/assets/{textarea-Dy9f469S.js → textarea-ewNKsXDa.js} +1 -1
- package/web/dist/assets/{token-metrics-edH1Iifj.js → token-metrics-Dk2ZNHb_.js} +1 -1
- package/web/dist/assets/{tooltip-tycRJnh-.js → tooltip-B628Gs7C.js} +1 -1
- package/web/dist/assets/{tracker-BNqQ5hFE.js → tracker-Cqdpt9RN.js} +1 -1
- package/web/dist/assets/{triangle-alert-BDB8QKSV.js → triangle-alert-BqI_9MkV.js} +1 -1
- package/web/dist/assets/{upload-H7_s70Ro.js → upload-J0hBTVF7.js} +1 -1
- package/web/dist/assets/{use-automations-7Eect_3d.js → use-automations-v77gHYDG.js} +1 -1
- package/web/dist/assets/{use-now-DUGH_55J.js → use-now-pBdvhv13.js} +1 -1
- package/web/dist/assets/{use-submit-shortcut-D4G7Y1CV.js → use-submit-shortcut-hAaAH4HY.js} +1 -1
- package/web/dist/assets/{workflow-graph-4GB6HfLn.js → workflow-graph-l7O50dsV.js} +1 -1
- package/web/dist/assets/worktree-lifecycle-operation-DOTiqQFx.js +18 -0
- package/web/dist/assets/x-DMIsmLBt.js +1 -0
- package/web/dist/index.html +37 -37
- package/dist/telemetry-service.json +0 -1
- package/web/dist/assets/arrow-left-BfLRAgF_.js +0 -1
- package/web/dist/assets/check-Blje0ysd.js +0 -1
- package/web/dist/assets/chevron-left-CwNUPSrV.js +0 -1
- package/web/dist/assets/chevron-right-dAzuginM.js +0 -1
- package/web/dist/assets/circle-check-B_-oU6Lf.js +0 -1
- package/web/dist/assets/git-tab-loading-BL6wGQi_.js +0 -1
- package/web/dist/assets/loader-circle-i7B5PoZa.js +0 -1
- package/web/dist/assets/plus-CUeDPNAL.js +0 -1
- package/web/dist/assets/worktree-lifecycle-operation-C6S6Hgiq.js +0 -18
- package/web/dist/assets/x-PavsP4k3.js +0 -1
|
@@ -29,10 +29,16 @@ export type RunProviderCommand = (executable: string, args: readonly string[], t
|
|
|
29
29
|
* 2026-07-29-agent-profiles). Optional so every existing caller and the test kit keep their
|
|
30
30
|
* three-argument signature; absent means the default profile, which needs nothing. */
|
|
31
31
|
env?: Record<string, string>,
|
|
32
|
-
/** Written to the probe's stdin
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
stdin?:
|
|
32
|
+
/** Written to the probe's stdin. Only Copilot needs it: the CLI ships no non-interactive
|
|
33
|
+
* auth-status command, so its state is read by driving its ACP server. Optional so every
|
|
34
|
+
* existing caller and the test kit keep their shorter signature. */
|
|
35
|
+
stdin?: ProviderStdin) => Promise<ProviderCommandResult>;
|
|
36
|
+
export interface ProviderStdin {
|
|
37
|
+
payload: string;
|
|
38
|
+
/** Keep stdin open until stdout satisfies this; absent closes it right after the payload. A
|
|
39
|
+
* server that exits on EOF drops requests still in flight (telemetry 298c2e1f). */
|
|
40
|
+
closeWhen?: (stdout: string) => boolean;
|
|
41
|
+
}
|
|
36
42
|
/**
|
|
37
43
|
* The explicit environment lock delegates model and credential configuration
|
|
38
44
|
* to each native coding agent. In that mode Cezar must not second-guess the
|
|
@@ -43,6 +49,10 @@ stdin?: string) => Promise<ProviderCommandResult>;
|
|
|
43
49
|
*/
|
|
44
50
|
export declare function providerAuthChecksDisabled(env?: NodeJS.ProcessEnv): boolean;
|
|
45
51
|
export declare function isRuntimeProviderAuthFailure(message: string): boolean;
|
|
52
|
+
export declare function isDefinitiveProviderAuthFailure(message: string): boolean;
|
|
53
|
+
/** The `session/new` response (id 1) has arrived, as a result or an error. */
|
|
54
|
+
export declare function copilotAcpAnswered(stdout: string): boolean;
|
|
55
|
+
export declare function defaultRunProviderCommand(executable: string, args: readonly string[], timeoutMs: number, env?: Record<string, string>, stdin?: ProviderStdin): Promise<ProviderCommandResult>;
|
|
46
56
|
/** One authoritative runtime authentication incident. The identifier is opaque
|
|
47
57
|
* and stable until the user explicitly acknowledges that exact incident. */
|
|
48
58
|
export interface RuntimeAuthFailureReport {
|
|
@@ -150,15 +160,23 @@ export declare class ProviderAuthService {
|
|
|
150
160
|
status(options?: {
|
|
151
161
|
refresh?: boolean;
|
|
152
162
|
}): Promise<ProviderStatusResponse>;
|
|
153
|
-
reportRuntimeAuthFailure(provider: ProviderId
|
|
163
|
+
reportRuntimeAuthFailure(provider: ProviderId, options?: {
|
|
164
|
+
definitive?: boolean;
|
|
165
|
+
}): RuntimeAuthFailureReport | null;
|
|
154
166
|
/**
|
|
155
167
|
* A runtime rejection on a NAMED agent account (telemetry 9e4a95db): latched on that account only.
|
|
156
168
|
* Raising the provider-wide latch instead blamed the default login, which was still signed in.
|
|
157
169
|
* Lifts when a probe of this account that started after the rejection answers connected — the
|
|
158
|
-
* pane's Check again, Connect's watch, or the action gate's verify-before-refuse.
|
|
170
|
+
* pane's Check again, Connect's watch, or the action gate's verify-before-refuse. A definitive
|
|
171
|
+
* one lifts only after the user's own Check again ({@link recheckProfileAuthFailure}).
|
|
159
172
|
*/
|
|
160
|
-
reportProfileAuthFailure(provider: ProviderId, profileId: string
|
|
173
|
+
reportProfileAuthFailure(provider: ProviderId, profileId: string, options?: {
|
|
174
|
+
definitive?: boolean;
|
|
175
|
+
}): RuntimeAuthFailureReport | null;
|
|
161
176
|
private withProfileFailure;
|
|
177
|
+
/** The user pressed Check again on this account: a probe started from now on may lift even a
|
|
178
|
+
* definitive incident. Their click, not cezar's own probing, is the evidence of a fresh login. */
|
|
179
|
+
recheckProfileAuthFailure(provider: ProviderId, profileId: string): void;
|
|
162
180
|
/** Clear only the incident the caller actually observed. A stale retry must
|
|
163
181
|
* never erase a rejection that arrived after the user began recovery. */
|
|
164
182
|
clearRuntimeAuthFailure(provider: ProviderId, authFailureId: string): boolean;
|
|
@@ -6,11 +6,14 @@ import { AGENT_MODELS_LOCKED_ENV } from './agent-model-policy.js';
|
|
|
6
6
|
import { profileEnv } from './agent-profiles.js';
|
|
7
7
|
import { isSignalTerminationExit } from './agent-runner.js';
|
|
8
8
|
import { resolveClaudeBin } from './claude-bin.js';
|
|
9
|
-
import { resolveCursorAgentBin } from './cursor-bin.js';
|
|
9
|
+
import { isForeignCursorAgent, resolveCursorAgentBin } from './cursor-bin.js';
|
|
10
10
|
import { quoteExecutable, withEnvPrefix } from './shell-env.js';
|
|
11
11
|
import { probeJunieAuthentication } from './junie-auth-probe.js';
|
|
12
12
|
import { spawnableCommand } from './windows-shim.js';
|
|
13
13
|
export const PROVIDER_IDS = ['claude', 'codex', 'opencode', 'cursor', 'pi', 'junie', 'copilot'];
|
|
14
|
+
/** How long before its timeout a held-open stdin is closed anyway, so the CLI exits on EOF and
|
|
15
|
+
* its answer is read as an answer rather than discarded as a hang. */
|
|
16
|
+
const STDIN_CLOSE_MARGIN_MS = 2_000;
|
|
14
17
|
/**
|
|
15
18
|
* The explicit environment lock delegates model and credential configuration
|
|
16
19
|
* to each native coding agent. In that mode Cezar must not second-guess the
|
|
@@ -113,6 +116,17 @@ export function isRuntimeProviderAuthFailure(message) {
|
|
|
113
116
|
return [...RUNTIME_AUTH_FAILURE_PATTERNS, ...RUNTIME_API_KEY_FAILURE_PATTERNS]
|
|
114
117
|
.some((pattern) => pattern.test(message));
|
|
115
118
|
}
|
|
119
|
+
/** Claude Code's own verdict after its token refresh was refused (`OAuthRefreshDeadError`), while
|
|
120
|
+
* `claude auth status` keeps answering `loggedIn: true` from the token still on disk — so the
|
|
121
|
+
* self-check cleared the latch and the next run failed the same way (telemetry 9e4a95db). The
|
|
122
|
+
* "another process is refreshing" variant is transient and deliberately not matched. */
|
|
123
|
+
const DEFINITIVE_AUTH_FAILURE_PATTERNS = [
|
|
124
|
+
/\boauth session expired and could not be refreshed\b/i,
|
|
125
|
+
/\brefresh token is no longer valid\b/i,
|
|
126
|
+
];
|
|
127
|
+
export function isDefinitiveProviderAuthFailure(message) {
|
|
128
|
+
return DEFINITIVE_AUTH_FAILURE_PATTERNS.some((pattern) => pattern.test(message));
|
|
129
|
+
}
|
|
116
130
|
function normalizedOutput(stdout) {
|
|
117
131
|
return stdout.replace(ANSI_SEQUENCE, '').trim().toLowerCase();
|
|
118
132
|
}
|
|
@@ -160,22 +174,43 @@ function parseCodexStatus(result) {
|
|
|
160
174
|
return 'disconnected';
|
|
161
175
|
return null;
|
|
162
176
|
}
|
|
177
|
+
/** OpenCode 2.x `auth list --format json`: the integrations that have at least one connection. */
|
|
178
|
+
function parseOpenCodeJson(stdout) {
|
|
179
|
+
let value;
|
|
180
|
+
try {
|
|
181
|
+
value = JSON.parse(stdout);
|
|
182
|
+
}
|
|
183
|
+
catch {
|
|
184
|
+
return null;
|
|
185
|
+
}
|
|
186
|
+
if (!Array.isArray(value))
|
|
187
|
+
return null;
|
|
188
|
+
const wellFormed = value.every((entry) => typeof entry === 'object' && entry !== null
|
|
189
|
+
&& Array.isArray(entry.connections)
|
|
190
|
+
&& entry.connections.length > 0);
|
|
191
|
+
if (!wellFormed)
|
|
192
|
+
return null;
|
|
193
|
+
return value.length > 0 ? 'connected' : 'disconnected';
|
|
194
|
+
}
|
|
163
195
|
function parseOpenCodeStatus(result) {
|
|
164
196
|
if (result.exitCode !== 0)
|
|
165
197
|
return null;
|
|
198
|
+
if (/^\s*\[/.test(result.stdout))
|
|
199
|
+
return parseOpenCodeJson(result.stdout);
|
|
166
200
|
const lines = normalizedLines(result.stdout);
|
|
167
201
|
const storedSummaries = lines
|
|
168
202
|
.map((line) => line.match(/^[^a-z0-9]*(\d+)\s+credentials?$/)?.[1])
|
|
169
203
|
.filter((count) => count !== undefined);
|
|
170
|
-
// OpenCode 2.x replaced the summary with one row per
|
|
171
|
-
// `
|
|
172
|
-
//
|
|
204
|
+
// OpenCode 2.x replaced the summary with one row per connection, with its `stored` or
|
|
205
|
+
// `environment` type in the final column, and prints `No authenticated integrations` (2.0.28;
|
|
206
|
+
// an empty answer before that) when there is none. Any other output without either the 1.x
|
|
173
207
|
// summary or 2.x rows remains inconclusive rather than being guessed as disconnected.
|
|
174
208
|
if (storedSummaries.length === 0) {
|
|
175
|
-
if (lines.length === 0)
|
|
209
|
+
if (lines.length === 0 || (lines.length === 1 && lines[0] === 'no authenticated integrations')) {
|
|
176
210
|
return 'disconnected';
|
|
177
|
-
|
|
178
|
-
|
|
211
|
+
}
|
|
212
|
+
const rows = lines.filter((line) => /^.+\s{2,}.+\s+(?:stored|environment)$/.test(line));
|
|
213
|
+
return rows.length === lines.length && rows.length > 0 ? 'connected' : null;
|
|
179
214
|
}
|
|
180
215
|
if (storedSummaries.length !== 1)
|
|
181
216
|
return null;
|
|
@@ -231,6 +266,8 @@ function parsePiStatus(result) {
|
|
|
231
266
|
* server that answers the question definitively and cheaply: `session/new` returns a `sessionId`
|
|
232
267
|
* for an entitled credential and the JSON-RPC error `-32000 "Authentication required"` without
|
|
233
268
|
* one. Nothing is prompted, so no AI credits are spent, and the server exits when stdin closes.
|
|
269
|
+
* It exits on EOF without answering what is still in flight, so stdin stays open until
|
|
270
|
+
* `session/new` is answered (telemetry 298c2e1f: a slow `session/new` came back unanswered).
|
|
234
271
|
*/
|
|
235
272
|
function copilotAcpProbeStdin() {
|
|
236
273
|
const initialize = {
|
|
@@ -241,7 +278,15 @@ function copilotAcpProbeStdin() {
|
|
|
241
278
|
};
|
|
242
279
|
// A throwaway cwd: the probe must not touch the user's repo, and `session/new` requires one.
|
|
243
280
|
const newSession = { jsonrpc: '2.0', id: 1, method: 'session/new', params: { cwd: tmpdir(), mcpServers: [] } };
|
|
244
|
-
return
|
|
281
|
+
return {
|
|
282
|
+
payload: `${JSON.stringify(initialize)}\n${JSON.stringify(newSession)}\n`,
|
|
283
|
+
closeWhen: copilotAcpAnswered,
|
|
284
|
+
};
|
|
285
|
+
}
|
|
286
|
+
/** The `session/new` response (id 1) has arrived, as a result or an error. */
|
|
287
|
+
export function copilotAcpAnswered(stdout) {
|
|
288
|
+
return /"id"\s*:\s*1\s*,\s*"(?:result|error)"\s*:/.test(stdout)
|
|
289
|
+
|| /"Authentication required"/i.test(stdout);
|
|
245
290
|
}
|
|
246
291
|
function parseCopilotStatus(result) {
|
|
247
292
|
const output = `${result.stdout}\n${result.stderr}`;
|
|
@@ -287,6 +332,7 @@ const DESCRIPTORS = [
|
|
|
287
332
|
overrideEnv: 'CEZ_OPENCODE_BIN',
|
|
288
333
|
executable: () => process.env.CEZ_OPENCODE_BIN ?? 'opencode',
|
|
289
334
|
statusArgs: ['auth', 'list'],
|
|
335
|
+
fallbackArgs: openCodeFallbackArgs,
|
|
290
336
|
loginArgs: ['auth', 'login'],
|
|
291
337
|
updateArgs: ['upgrade'],
|
|
292
338
|
installHint: 'Install OpenCode, then run `opencode auth login`.',
|
|
@@ -299,6 +345,7 @@ const DESCRIPTORS = [
|
|
|
299
345
|
statusArgs: ['status', '--format', 'json'],
|
|
300
346
|
fallbackArgs: cursorFallbackArgs,
|
|
301
347
|
unrecognizedHint: cursorUnrecognizedHint,
|
|
348
|
+
foreign: (executable, version) => isForeignCursorAgent(executable, version.exitCode === 0 ? cliVersionFrom(version.stdout) : null),
|
|
302
349
|
loginArgs: ['login'],
|
|
303
350
|
updateArgs: ['update'],
|
|
304
351
|
installHint: 'Install the Cursor CLI (`curl https://cursor.com/install -fsS | bash`), then run `agent login` (or set CURSOR_API_KEY).',
|
|
@@ -314,6 +361,9 @@ const DESCRIPTORS = [
|
|
|
314
361
|
loginArgs: ['/login'],
|
|
315
362
|
installHint: 'Install pi, then run `pi /login`.',
|
|
316
363
|
parse: parsePiStatus,
|
|
364
|
+
// Real pi answers `--version` with exit 0, like detection requires; a `pi` that can't is a shim
|
|
365
|
+
// or another tool whose wording no pattern list keeps up with (telemetry f67df9d2, after #1504).
|
|
366
|
+
foreign: (_executable, version) => !process.env.CEZ_PI_BIN && version.exitCode !== 0,
|
|
317
367
|
},
|
|
318
368
|
{
|
|
319
369
|
id: 'junie',
|
|
@@ -335,6 +385,8 @@ const DESCRIPTORS = [
|
|
|
335
385
|
installHint: 'Install GitHub Copilot CLI (`npm i -g @github/copilot`), then run `copilot login`.',
|
|
336
386
|
parse: parseCopilotStatus,
|
|
337
387
|
stdin: copilotAcpProbeStdin,
|
|
388
|
+
// The version of the binary the probe ran, not a cached newer package.
|
|
389
|
+
versionArgs: ['--no-auto-update', '--version'],
|
|
338
390
|
unrecognizedHint: copilotUnrecognizedHint,
|
|
339
391
|
},
|
|
340
392
|
];
|
|
@@ -380,6 +432,20 @@ function cursorFallbackArgs(result) {
|
|
|
380
432
|
return undefined;
|
|
381
433
|
return REJECTED_FORMAT_FLAG.test(`${result.stderr}\n${result.stdout}`) ? ['status'] : undefined;
|
|
382
434
|
}
|
|
435
|
+
/**
|
|
436
|
+
* OpenCode 2.x answers `auth list` through its background service, so a service that cannot start
|
|
437
|
+
* (port taken, crashed) fails the probe with exit 1 and a one-line stderr (telemetry 107e44a9).
|
|
438
|
+
* Ask once more with a private server and the JSON format (both since 2.0.0). Not for OpenCode 1.x,
|
|
439
|
+
* whose `Credentials <path>` header shows it answered and which rejects both flags.
|
|
440
|
+
*/
|
|
441
|
+
function openCodeFallbackArgs(result) {
|
|
442
|
+
// Only a CLI that answered: not installed, a spawn error, a hang or a signal is not a failed service.
|
|
443
|
+
if (result.errorCode || result.timedOut || result.exitCode === null)
|
|
444
|
+
return undefined;
|
|
445
|
+
if (normalizedLines(result.stdout).some((line) => /^[^a-z0-9]*credentials\s/.test(line)))
|
|
446
|
+
return undefined;
|
|
447
|
+
return ['auth', 'list', '--standalone', '--format', 'json'];
|
|
448
|
+
}
|
|
383
449
|
/** Telemetry 8d304c50: an `agent` that answers neither shape is likely another program of that name. */
|
|
384
450
|
function cursorUnrecognizedHint(result) {
|
|
385
451
|
if (result.stdout.trim())
|
|
@@ -387,10 +453,11 @@ function cursorUnrecognizedHint(result) {
|
|
|
387
453
|
return 'The Cursor CLI did not answer its status check. Update it with `cursor-agent update`, or point '
|
|
388
454
|
+ 'CEZ_CURSOR_AGENT_BIN at Cursor\'s `cursor-agent` if another program named `agent` comes first on PATH.';
|
|
389
455
|
}
|
|
390
|
-
function defaultRunProviderCommand(executable, args, timeoutMs, env, stdin) {
|
|
456
|
+
export function defaultRunProviderCommand(executable, args, timeoutMs, env, stdin) {
|
|
391
457
|
// A Windows `.cmd` shim runs as `node <script>`: execFile throws EINVAL on the shim (a330744e).
|
|
392
458
|
const [file, argv] = spawnableCommand(executable, args);
|
|
393
459
|
return new Promise((resolve) => {
|
|
460
|
+
let closeTimer;
|
|
394
461
|
const child = execFile(file, argv, {
|
|
395
462
|
timeout: timeoutMs,
|
|
396
463
|
windowsHide: true,
|
|
@@ -400,6 +467,7 @@ function defaultRunProviderCommand(executable, args, timeoutMs, env, stdin) {
|
|
|
400
467
|
// host's PATH and HOME to run at all. `env` is only ever a profile's config-dir variable.
|
|
401
468
|
...(env && Object.keys(env).length > 0 ? { env: { ...process.env, ...env } } : {}),
|
|
402
469
|
}, (error, stdout, stderr) => {
|
|
470
|
+
clearTimeout(closeTimer);
|
|
403
471
|
const commandError = error;
|
|
404
472
|
const code = commandError?.code;
|
|
405
473
|
const timedOut = commandError?.code === 'ETIMEDOUT'
|
|
@@ -413,9 +481,30 @@ function defaultRunProviderCommand(executable, args, timeoutMs, env, stdin) {
|
|
|
413
481
|
...(!timedOut && commandError?.signal ? { signal: commandError.signal } : {}),
|
|
414
482
|
});
|
|
415
483
|
});
|
|
484
|
+
// A CLI that exits before reading its payload must not crash cezar with an unhandled EPIPE.
|
|
485
|
+
child.stdin?.on('error', () => { });
|
|
416
486
|
// Closing stdin is what makes a stdin-driven probe terminate at all: the Copilot ACP server
|
|
417
487
|
// reads until EOF. A probe with no payload closes it immediately, exactly as before.
|
|
418
|
-
|
|
488
|
+
const closeWhen = stdin?.closeWhen;
|
|
489
|
+
if (!closeWhen || !child.stdin || !child.stdout) {
|
|
490
|
+
child.stdin?.end(stdin?.payload ?? '');
|
|
491
|
+
return;
|
|
492
|
+
}
|
|
493
|
+
const { stdin: input, stdout: output } = child;
|
|
494
|
+
let seen = '';
|
|
495
|
+
const close = () => {
|
|
496
|
+
clearTimeout(closeTimer);
|
|
497
|
+
output.off('data', onData);
|
|
498
|
+
input.end();
|
|
499
|
+
};
|
|
500
|
+
const onData = (chunk) => {
|
|
501
|
+
seen += String(chunk);
|
|
502
|
+
if (closeWhen(seen))
|
|
503
|
+
close();
|
|
504
|
+
};
|
|
505
|
+
output.on('data', onData);
|
|
506
|
+
closeTimer = setTimeout(close, Math.max(0, timeoutMs - STDIN_CLOSE_MARGIN_MS));
|
|
507
|
+
input.write(stdin.payload);
|
|
419
508
|
});
|
|
420
509
|
}
|
|
421
510
|
/** The per-account cache key. ONE definition: a probe that wrote under a different spelling than
|
|
@@ -429,6 +518,12 @@ function descriptorFor(provider) {
|
|
|
429
518
|
throw new Error(`Unknown provider: ${provider}`);
|
|
430
519
|
return descriptor;
|
|
431
520
|
}
|
|
521
|
+
/** Whether a connected probe that started at `startedAt` is evidence against `failure`. */
|
|
522
|
+
function probeLifts(failure, startedAt) {
|
|
523
|
+
if (failure.generation > startedAt)
|
|
524
|
+
return false;
|
|
525
|
+
return !failure.definitive || (failure.recheckedAt !== undefined && failure.recheckedAt <= startedAt);
|
|
526
|
+
}
|
|
432
527
|
const BIN_EXTENSIONS = new Set(['.exe', '.cmd', '.bat', '.com', '.ps1', '.js', '.mjs', '.cjs', '.sh']);
|
|
433
528
|
const VERSION_TIMEOUT_MS = 5_000;
|
|
434
529
|
function binExtension(executable) {
|
|
@@ -565,13 +660,14 @@ export class ProviderAuthService {
|
|
|
565
660
|
return this.inFlight.visible;
|
|
566
661
|
return this.startFreshProbe().visible;
|
|
567
662
|
}
|
|
568
|
-
reportRuntimeAuthFailure(provider) {
|
|
663
|
+
reportRuntimeAuthFailure(provider, options) {
|
|
569
664
|
if (process.env.CEZ_DRY_RUN === '1' || providerAuthChecksDisabled())
|
|
570
665
|
return null;
|
|
571
666
|
const current = this.runtimeFailures.get(provider);
|
|
572
667
|
const failure = {
|
|
573
668
|
generation: ++this.nextRuntimeFailureGeneration,
|
|
574
669
|
authFailureId: current?.authFailureId ?? this.createAuthFailureId(),
|
|
670
|
+
...(options?.definitive || current?.definitive ? { definitive: true } : {}),
|
|
575
671
|
};
|
|
576
672
|
this.runtimeFailures.set(provider, failure);
|
|
577
673
|
this.lastConnected.delete(provider);
|
|
@@ -589,9 +685,10 @@ export class ProviderAuthService {
|
|
|
589
685
|
* A runtime rejection on a NAMED agent account (telemetry 9e4a95db): latched on that account only.
|
|
590
686
|
* Raising the provider-wide latch instead blamed the default login, which was still signed in.
|
|
591
687
|
* Lifts when a probe of this account that started after the rejection answers connected — the
|
|
592
|
-
* pane's Check again, Connect's watch, or the action gate's verify-before-refuse.
|
|
688
|
+
* pane's Check again, Connect's watch, or the action gate's verify-before-refuse. A definitive
|
|
689
|
+
* one lifts only after the user's own Check again ({@link recheckProfileAuthFailure}).
|
|
593
690
|
*/
|
|
594
|
-
reportProfileAuthFailure(provider, profileId) {
|
|
691
|
+
reportProfileAuthFailure(provider, profileId, options) {
|
|
595
692
|
if (process.env.CEZ_DRY_RUN === '1' || providerAuthChecksDisabled())
|
|
596
693
|
return null;
|
|
597
694
|
const key = profileCacheKey(provider, profileId);
|
|
@@ -599,6 +696,7 @@ export class ProviderAuthService {
|
|
|
599
696
|
const failure = {
|
|
600
697
|
generation: ++this.nextRuntimeFailureGeneration,
|
|
601
698
|
authFailureId: current?.authFailureId ?? this.createAuthFailureId(),
|
|
699
|
+
...(options?.definitive || current?.definitive ? { definitive: true } : {}),
|
|
602
700
|
};
|
|
603
701
|
this.profileRuntimeFailures.set(key, failure);
|
|
604
702
|
this.lastConnected.delete(key);
|
|
@@ -619,6 +717,13 @@ export class ProviderAuthService {
|
|
|
619
717
|
? { provider: status.provider, status: 'disconnected', hint: RUNTIME_AUTH_HINT, authFailureId: failure.authFailureId, profileId }
|
|
620
718
|
: status;
|
|
621
719
|
}
|
|
720
|
+
/** The user pressed Check again on this account: a probe started from now on may lift even a
|
|
721
|
+
* definitive incident. Their click, not cezar's own probing, is the evidence of a fresh login. */
|
|
722
|
+
recheckProfileAuthFailure(provider, profileId) {
|
|
723
|
+
const failure = this.profileRuntimeFailures.get(profileCacheKey(provider, profileId));
|
|
724
|
+
if (failure)
|
|
725
|
+
failure.recheckedAt = ++this.nextRuntimeFailureGeneration;
|
|
726
|
+
}
|
|
622
727
|
/** Clear only the incident the caller actually observed. A stale retry must
|
|
623
728
|
* never erase a rejection that arrived after the user began recovery. */
|
|
624
729
|
clearRuntimeAuthFailure(provider, authFailureId) {
|
|
@@ -657,7 +762,8 @@ export class ProviderAuthService {
|
|
|
657
762
|
if (process.env.CEZ_DRY_RUN === '1' || providerAuthChecksDisabled())
|
|
658
763
|
return null;
|
|
659
764
|
const failure = this.runtimeFailures.get(provider);
|
|
660
|
-
|
|
765
|
+
// The CLI's status reads the same dead login and would answer connected (telemetry 9e4a95db).
|
|
766
|
+
if (!failure || failure.definitive)
|
|
661
767
|
return null;
|
|
662
768
|
if (this.verifyingRuntimeFailures.has(provider))
|
|
663
769
|
return null;
|
|
@@ -798,7 +904,7 @@ export class ProviderAuthService {
|
|
|
798
904
|
this.completedProfiles.set(key, { status: stamped, timestamp: this.now() });
|
|
799
905
|
const failure = this.profileRuntimeFailures.get(key);
|
|
800
906
|
// The FRESH answer only: a bridged hang is not evidence that the rejection was transient.
|
|
801
|
-
if (failure && failure
|
|
907
|
+
if (failure && probeLifts(failure, startedAt) && status.status === 'connected') {
|
|
802
908
|
this.profileRuntimeFailures.delete(key);
|
|
803
909
|
}
|
|
804
910
|
return this.withProfileFailure(stamped, profile.id);
|
|
@@ -993,6 +1099,23 @@ export class ProviderAuthService {
|
|
|
993
1099
|
// Still interrupted: unknown, but unreported — there is no CLI defect to group on.
|
|
994
1100
|
if (wasInterrupted(result))
|
|
995
1101
|
return { provider: descriptor.id, status: 'unknown', hint: INTERRUPTED_HINT };
|
|
1102
|
+
if (descriptor.foreign) {
|
|
1103
|
+
const version = await (env === undefined
|
|
1104
|
+
? this.runCommand(executable, ['--version'], VERSION_TIMEOUT_MS)
|
|
1105
|
+
: this.runCommand(executable, ['--version'], VERSION_TIMEOUT_MS, env))
|
|
1106
|
+
.catch(() => null);
|
|
1107
|
+
// Only a clean answer decides; a spawn error, hang or signal says nothing about the binary.
|
|
1108
|
+
const decisive = version !== null && !version.errorCode && !version.timedOut
|
|
1109
|
+
&& version.exitCode !== null && !wasInterrupted(version);
|
|
1110
|
+
if (decisive && descriptor.foreign(executable, version)) {
|
|
1111
|
+
return {
|
|
1112
|
+
provider: descriptor.id,
|
|
1113
|
+
status: 'not-installed',
|
|
1114
|
+
hint: `\`${executable}\` on PATH is not a working ${descriptor.id} CLI. `
|
|
1115
|
+
+ `${descriptor.installHint} Or point ${descriptor.overrideEnv} at it.`,
|
|
1116
|
+
};
|
|
1117
|
+
}
|
|
1118
|
+
}
|
|
996
1119
|
const hint = descriptor.unrecognizedHint?.(result) ?? UNKNOWN_HINT;
|
|
997
1120
|
// Exit 0 and 1 are the codes vendors answer status with; anything else is the CLI failing.
|
|
998
1121
|
if (result.exitCode === 0 || result.exitCode === 1)
|
|
@@ -1021,9 +1144,10 @@ export class ProviderAuthService {
|
|
|
1021
1144
|
stdoutJson: result ? parsesAsJson(result.stdout) : false,
|
|
1022
1145
|
stderrBytes: result?.stderr.length ?? 0,
|
|
1023
1146
|
cliVersion: async () => {
|
|
1147
|
+
const versionArgs = descriptor.versionArgs ?? ['--version'];
|
|
1024
1148
|
const answer = await (env === undefined
|
|
1025
|
-
? this.runCommand(executable,
|
|
1026
|
-
: this.runCommand(executable,
|
|
1149
|
+
? this.runCommand(executable, versionArgs, VERSION_TIMEOUT_MS)
|
|
1150
|
+
: this.runCommand(executable, versionArgs, VERSION_TIMEOUT_MS, env));
|
|
1027
1151
|
return cliVersionFrom(answer.stdout) ?? cliVersionFrom(answer.stderr);
|
|
1028
1152
|
},
|
|
1029
1153
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider-auth.js","sourceRoot":"","sources":["../../src/core/provider-auth.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"provider-auth.js","sourceRoot":"","sources":["../../src/core/provider-auth.ts"],"names":[],"mappings":"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"}
|
package/dist/core/usage-limit.js
CHANGED
|
@@ -39,6 +39,10 @@ const LIMIT_PHRASE_RE = /\b(?:usage|rate|session|weekly|hourly)[\s-]?limit\b|\br
|
|
|
39
39
|
const RESET_AT_RE = /(?:resets?|reset[s]?\s+at|try\s+again|retry|available\s+again|unlocks?)\b[^\n]{0,24}?\b(\d{4}-\d{2}-\d{2}(?:[T ]\d{2}:\d{2}(?::\d{2})?(?:\.\d+)?(?:Z|[+-]\d{2}:?\d{2})?)?)/i;
|
|
40
40
|
/** `...resets 8:10pm (Europe/Warsaw)`, `...try again at 20:10`. */
|
|
41
41
|
const RESET_CLOCK_RE = /(?:resets?|reset[s]?\s+at|try\s+again|retry|available\s+again|unlocks?)\b[^\n]{0,24}?\b(?:at\s*)?(\d{1,2})(?:(?::(\d{2}))\s*([ap]\.?m\.?)?|\s*([ap]\.?m\.?))(?:\s*\(([^)]+)\))?/i;
|
|
42
|
+
/** `…resets Oct 24, 9am (Europe/Warsaw)` — Claude Code's weekly window names its day. Read before
|
|
43
|
+
* the clock-only form, which would otherwise skip the date and resume at the NEXT 9am. */
|
|
44
|
+
const RESET_DATE_CLOCK_RE = /(?:resets?|reset[s]?\s+at|try\s+again|retry|available\s+again|unlocks?)\b[^\n]{0,12}?\b(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)[a-z]*\.?\s+(\d{1,2})(?:st|nd|rd|th)?,?\s+(?:at\s+)?(\d{1,2})(?:(?::(\d{2}))\s*([ap]\.?m\.?)?|\s*([ap]\.?m\.?))(?:\s*\(([^)]+)\))?/i;
|
|
45
|
+
const MONTHS = ['jan', 'feb', 'mar', 'apr', 'may', 'jun', 'jul', 'aug', 'sep', 'oct', 'nov', 'dec'];
|
|
42
46
|
/** `…try again in 42 minutes`, `…retry after 3600 seconds`, `retry-after: 3600`. */
|
|
43
47
|
const RESET_IN_RE = /(?:try\s+again|retry|resets?|available\s+again)\b[^\n]{0,16}?\b(?:in|after)\s+(\d{1,7})\s*(seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h)\b/i;
|
|
44
48
|
const RETRY_AFTER_HEADER_RE = /\bretry[-_\s]?after\b\s*[:=]?\s*(\d{1,7})\b/i;
|
|
@@ -82,6 +86,12 @@ export function parseUsageLimit(message, now = Date.now()) {
|
|
|
82
86
|
if (Number.isFinite(parsed))
|
|
83
87
|
return settle(parsed, now, 'timestamp');
|
|
84
88
|
}
|
|
89
|
+
const dated = RESET_DATE_CLOCK_RE.exec(message);
|
|
90
|
+
if (dated) {
|
|
91
|
+
// A named day the parser cannot place is not a reason to guess the next clock instead.
|
|
92
|
+
const parsed = parseDatedReset(dated, now);
|
|
93
|
+
return parsed === null ? null : settle(parsed, now, 'clock');
|
|
94
|
+
}
|
|
85
95
|
const clock = RESET_CLOCK_RE.exec(message);
|
|
86
96
|
if (clock) {
|
|
87
97
|
const parsed = parseClockReset(clock, now);
|
|
@@ -99,10 +109,11 @@ export function parseUsageLimit(message, now = Date.now()) {
|
|
|
99
109
|
return settle(now + Number(header[1]) * 1_000, now, 'delay');
|
|
100
110
|
return null;
|
|
101
111
|
}
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
const
|
|
105
|
-
const
|
|
112
|
+
/** A 12- or 24-hour clock as `{ hour, minute }`, or `null` when it is not a real time of day. */
|
|
113
|
+
function readClock(hourText, minuteText, meridiemText) {
|
|
114
|
+
const hourRaw = Number(hourText);
|
|
115
|
+
const minute = minuteText === undefined ? 0 : Number(minuteText);
|
|
116
|
+
const meridiem = meridiemText?.toLowerCase().replaceAll('.', '');
|
|
106
117
|
if (!Number.isInteger(hourRaw) || !Number.isInteger(minute) || minute < 0 || minute > 59) {
|
|
107
118
|
return null;
|
|
108
119
|
}
|
|
@@ -120,10 +131,44 @@ function parseClockReset(match, now) {
|
|
|
120
131
|
else if (hour < 0 || hour > 23) {
|
|
121
132
|
return null;
|
|
122
133
|
}
|
|
134
|
+
return { hour, minute };
|
|
135
|
+
}
|
|
136
|
+
function parseClockReset(match, now) {
|
|
137
|
+
const clock = readClock(match[1], match[2], match[3] ?? match[4]);
|
|
138
|
+
if (!clock)
|
|
139
|
+
return null;
|
|
123
140
|
const timeZone = match[5]?.trim();
|
|
124
141
|
if (isValidTimeZone(timeZone))
|
|
125
|
-
return nextClockInTimeZone(hour, minute, timeZone, now);
|
|
126
|
-
return nextLocalClock(hour, minute, now);
|
|
142
|
+
return nextClockInTimeZone(clock.hour, clock.minute, timeZone, now);
|
|
143
|
+
return nextLocalClock(clock.hour, clock.minute, now);
|
|
144
|
+
}
|
|
145
|
+
/** `Oct 24, 9am (TZ)`: this year's date in that zone (the host's without one), next year's when it
|
|
146
|
+
* already passed — a week-long window opened in late December resets in January. */
|
|
147
|
+
function parseDatedReset(match, now) {
|
|
148
|
+
const month = MONTHS.indexOf(match[1].slice(0, 3).toLowerCase()) + 1;
|
|
149
|
+
const day = Number(match[2]);
|
|
150
|
+
const clock = readClock(match[3], match[4], match[5] ?? match[6]);
|
|
151
|
+
if (month < 1 || !clock || day < 1 || day > 31)
|
|
152
|
+
return null;
|
|
153
|
+
const timeZone = match[7]?.trim();
|
|
154
|
+
const zoned = isValidTimeZone(timeZone);
|
|
155
|
+
const at = (year) => {
|
|
156
|
+
// `Date` rolls Feb 31 into March; a day the month does not have is not a reset instant.
|
|
157
|
+
if (new Date(Date.UTC(year, month - 1, day)).getUTCDate() !== day)
|
|
158
|
+
return null;
|
|
159
|
+
if (zoned)
|
|
160
|
+
return zonedWallTimeToUtc(year, month, day, clock.hour, clock.minute, timeZone);
|
|
161
|
+
return new Date(year, month - 1, day, clock.hour, clock.minute, 0, 0).getTime();
|
|
162
|
+
};
|
|
163
|
+
const year = zoned ? zonedParts(now, timeZone)?.year : new Date(now).getFullYear();
|
|
164
|
+
if (year === undefined)
|
|
165
|
+
return null;
|
|
166
|
+
const candidate = at(year);
|
|
167
|
+
if (candidate === null)
|
|
168
|
+
return null;
|
|
169
|
+
// A day ago or more is last year's date read as this year's; minutes ago is a limit that lifted.
|
|
170
|
+
// A stale date rolled a year ahead fails `settle`'s one-week cap and reads as unparsed.
|
|
171
|
+
return now - candidate > 24 * 60 * 60_000 ? at(year + 1) : candidate;
|
|
127
172
|
}
|
|
128
173
|
function nextLocalClock(hour, minute, now) {
|
|
129
174
|
const candidate = new Date(now);
|