@claudexor/harness-claude 3.17.2 → 3.20.1
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/auth-refresh.d.ts +9 -1
- package/dist/auth-refresh.d.ts.map +1 -1
- package/dist/auth-refresh.js +29 -2
- package/dist/auth-refresh.js.map +1 -1
- package/dist/context-signals.d.ts +3 -6
- package/dist/context-signals.d.ts.map +1 -1
- package/dist/context-signals.js +8 -8
- package/dist/context-signals.js.map +1 -1
- package/dist/doctor-remedy.d.ts +5 -0
- package/dist/doctor-remedy.d.ts.map +1 -1
- package/dist/doctor-remedy.js +10 -0
- package/dist/doctor-remedy.js.map +1 -1
- package/dist/doctor.d.ts +6 -0
- package/dist/doctor.d.ts.map +1 -0
- package/dist/doctor.js +219 -0
- package/dist/doctor.js.map +1 -0
- package/dist/effort-probe.d.ts +1 -1
- package/dist/effort-probe.d.ts.map +1 -1
- package/dist/effort-probe.js +4 -2
- package/dist/effort-probe.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +19 -207
- package/dist/index.js.map +1 -1
- package/dist/model-probe.d.ts.map +1 -1
- package/dist/model-probe.js +9 -2
- package/dist/model-probe.js.map +1 -1
- package/dist/quota.d.ts +8 -0
- package/dist/quota.d.ts.map +1 -0
- package/dist/quota.js +82 -0
- package/dist/quota.js.map +1 -0
- package/dist/vendor-failure.d.ts +10 -0
- package/dist/vendor-failure.d.ts.map +1 -0
- package/dist/vendor-failure.js +85 -0
- package/dist/vendor-failure.js.map +1 -0
- package/package.json +6 -6
package/dist/auth-refresh.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { spawnProcess } from "@claudexor/core";
|
|
1
|
+
import { harnessBinaryIdentity, spawnProcess } from "@claudexor/core";
|
|
2
2
|
/** Claude Code refreshes OAuth access tokens inside this five-minute window. */
|
|
3
3
|
export declare const CLAUDE_OAUTH_REFRESH_SKEW_MS: number;
|
|
4
4
|
export declare const CLAUDE_AUTH_REFRESH_TERMINATION_UNCONFIRMED = "claude_oauth_refresh_termination_unconfirmed";
|
|
@@ -11,6 +11,14 @@ export interface ClaudeNativeAuthRefreshDeps {
|
|
|
11
11
|
cwd: string;
|
|
12
12
|
timeoutMs: number;
|
|
13
13
|
pollMs: number;
|
|
14
|
+
diagnostic: (record: {
|
|
15
|
+
binary: ReturnType<typeof harnessBinaryIdentity>;
|
|
16
|
+
expiresAtMs: number | null;
|
|
17
|
+
exitCode: number | null;
|
|
18
|
+
signal: string | null;
|
|
19
|
+
terminationUnconfirmed: boolean;
|
|
20
|
+
childFailed: boolean;
|
|
21
|
+
}) => void;
|
|
14
22
|
}
|
|
15
23
|
/**
|
|
16
24
|
* Wake Claude Code's own OAuth refresher without sending a prompt or making a
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-refresh.d.ts","sourceRoot":"","sources":["../src/auth-refresh.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"auth-refresh.d.ts","sourceRoot":"","sources":["../src/auth-refresh.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,qBAAqB,EAA+B,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAKnG,gFAAgF;AAChF,eAAO,MAAM,4BAA4B,QAAa,CAAC;AAIvD,eAAO,MAAM,2CAA2C,iDACR,CAAC;AAEjD,wBAAgB,6BAA6B,CAC3C,WAAW,EAAE,MAAM,GAAG,IAAI,EAC1B,KAAK,GAAE,MAAmB,GACzB,OAAO,CAMT;AAED,MAAM,WAAW,2BAA2B;IAC1C,KAAK,EAAE,OAAO,YAAY,CAAC;IAC3B,KAAK,EAAE,MAAM,MAAM,CAAC;IACpB,KAAK,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,GAAG,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,CAAC,MAAM,EAAE;QACnB,MAAM,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;QACjD,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;QAC3B,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;QACxB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;QACtB,sBAAsB,EAAE,OAAO,CAAC;QAChC,WAAW,EAAE,OAAO,CAAC;KACtB,KAAK,IAAI,CAAC;CACZ;AAED;;;;;;GAMG;AACH,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,EAC9C,eAAe,EAAE,MAAM,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,EAC7C,SAAS,GAAE,OAAO,CAAC,2BAA2B,CAAM,GACnD,OAAO,CAAC,OAAO,CAAC,CA6FlB"}
|
package/dist/auth-refresh.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { spawnProcess } from "@claudexor/core";
|
|
1
|
+
import { harnessBinaryIdentity, harnessBinaryIdentityOnPath, spawnProcess } from "@claudexor/core";
|
|
2
2
|
import { ensureDir, noProjectRepoRoot } from "@claudexor/util";
|
|
3
3
|
import { setTimeout as sleep } from "node:timers/promises";
|
|
4
4
|
import { BIN } from "./effort-probe.js";
|
|
@@ -33,6 +33,15 @@ export async function refreshClaudeNativeAuth(env, readExpiresAtMs, overrides =
|
|
|
33
33
|
let stdin = null;
|
|
34
34
|
let childExited = false;
|
|
35
35
|
let terminationUnconfirmed = false;
|
|
36
|
+
let exitCode = null;
|
|
37
|
+
let exitSignal = null;
|
|
38
|
+
let childFailed = false;
|
|
39
|
+
let expiresAtMs = null;
|
|
40
|
+
const binary = !overrides.diagnostic
|
|
41
|
+
? null
|
|
42
|
+
: typeof env.PATH === "string"
|
|
43
|
+
? harnessBinaryIdentityOnPath(bin, env.PATH)
|
|
44
|
+
: harnessBinaryIdentity(bin);
|
|
36
45
|
const child = (async () => {
|
|
37
46
|
try {
|
|
38
47
|
for await (const event of spawn(bin, ["--setting-sources", "", "mcp", "serve"], {
|
|
@@ -53,18 +62,23 @@ export async function refreshClaudeNativeAuth(env, readExpiresAtMs, overrides =
|
|
|
53
62
|
})) {
|
|
54
63
|
if (event.type === "termination_unconfirmed")
|
|
55
64
|
terminationUnconfirmed = true;
|
|
65
|
+
if (event.type === "exit") {
|
|
66
|
+
exitCode = event.code;
|
|
67
|
+
exitSignal = event.signal;
|
|
68
|
+
}
|
|
56
69
|
if (event.type === "exit" || event.type === "termination_unconfirmed")
|
|
57
70
|
childExited = true;
|
|
58
71
|
}
|
|
59
72
|
}
|
|
60
73
|
catch {
|
|
61
74
|
childExited = true;
|
|
75
|
+
childFailed = true;
|
|
62
76
|
}
|
|
63
77
|
})();
|
|
64
78
|
try {
|
|
65
79
|
const deadline = nowMs() + timeoutMs;
|
|
66
80
|
for (;;) {
|
|
67
|
-
|
|
81
|
+
expiresAtMs = await readExpiresAtMs();
|
|
68
82
|
if (claudeOauthAccessTokenIsFresh(expiresAtMs, nowMs()))
|
|
69
83
|
return true;
|
|
70
84
|
if (childExited || nowMs() >= deadline)
|
|
@@ -85,6 +99,19 @@ export async function refreshClaudeNativeAuth(env, readExpiresAtMs, overrides =
|
|
|
85
99
|
if (!closedAfterEof && !childExited)
|
|
86
100
|
controller.abort();
|
|
87
101
|
await child;
|
|
102
|
+
try {
|
|
103
|
+
overrides.diagnostic?.({
|
|
104
|
+
binary,
|
|
105
|
+
expiresAtMs,
|
|
106
|
+
exitCode,
|
|
107
|
+
signal: exitSignal,
|
|
108
|
+
terminationUnconfirmed,
|
|
109
|
+
childFailed,
|
|
110
|
+
});
|
|
111
|
+
}
|
|
112
|
+
catch {
|
|
113
|
+
// Diagnostic I/O cannot change the native helper's result or custody.
|
|
114
|
+
}
|
|
88
115
|
if (terminationUnconfirmed) {
|
|
89
116
|
throw Object.assign(new Error("Claude Code OAuth refresh helper termination could not be confirmed"), { code: CLAUDE_AUTH_REFRESH_TERMINATION_UNCONFIRMED });
|
|
90
117
|
}
|
package/dist/auth-refresh.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth-refresh.js","sourceRoot":"","sources":["../src/auth-refresh.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"auth-refresh.js","sourceRoot":"","sources":["../src/auth-refresh.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,12 +14,9 @@ type Json = any;
|
|
|
14
14
|
*/
|
|
15
15
|
export declare function claudeCompactBoundaryEvents(obj: Json, sessionId: string, ts: string): HarnessEvent[];
|
|
16
16
|
/**
|
|
17
|
-
*
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
* either would falsely cool the account after a successful run); only a
|
|
21
|
-
* rejecting status arms the TYPED `rate_limit` signal the budget layer reads.
|
|
22
|
-
* Returns `[]` for a benign/advisory heartbeat.
|
|
17
|
+
* Numeric observations and rejection are independent. Allowed/warning frames
|
|
18
|
+
* may report measured windows without arming a cooldown. A rejecting frame
|
|
19
|
+
* retains its existing typed rate_limit signal alongside any measurements.
|
|
23
20
|
*/
|
|
24
21
|
export declare function claudeRateLimitEvents(obj: Json, sessionId: string, ts: string): HarnessEvent[];
|
|
25
22
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-signals.d.ts","sourceRoot":"","sources":["../src/context-signals.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"context-signals.d.ts","sourceRoot":"","sources":["../src/context-signals.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAItD;;;;;;GAMG;AACH,KAAK,IAAI,GAAG,GAAG,CAAC;AAMhB;;;;GAIG;AACH,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,IAAI,EACT,SAAS,EAAE,MAAM,EACjB,EAAE,EAAE,MAAM,GACT,YAAY,EAAE,CAkBhB;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,YAAY,EAAE,CAoC9F;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CACxC,cAAc,EAAE,OAAO,EACvB,SAAS,EAAE,MAAM,EACjB,EAAE,EAAE,MAAM,GACT,YAAY,GAAG,IAAI,CA8BrB;AAED;;;;;;;GAOG;AACH;;;;;;;;;;;GAWG;AACH,wBAAgB,yBAAyB,CACvC,GAAG,EAAE,IAAI,EACT,aAAa,EAAE,OAAO,EACtB,SAAS,EAAE,MAAM,EACjB,EAAE,EAAE,MAAM,GACT,YAAY,EAAE,CAsEhB;AAED,wBAAgB,oBAAoB,CAAC,gBAAgB,EAAE,OAAO,GAAG,OAAO,CAWvE"}
|
package/dist/context-signals.js
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { claudeQuotaModelAliases } from "./capability-profile.js";
|
|
2
|
+
import { claudeQuotaEvents, claudeQuotaReset } from "./quota.js";
|
|
2
3
|
function numberOrNull(v) {
|
|
3
4
|
return typeof v === "number" ? v : null;
|
|
4
5
|
}
|
|
@@ -26,20 +27,18 @@ export function claudeCompactBoundaryEvents(obj, sessionId, ts) {
|
|
|
26
27
|
];
|
|
27
28
|
}
|
|
28
29
|
/**
|
|
29
|
-
*
|
|
30
|
-
*
|
|
31
|
-
*
|
|
32
|
-
* either would falsely cool the account after a successful run); only a
|
|
33
|
-
* rejecting status arms the TYPED `rate_limit` signal the budget layer reads.
|
|
34
|
-
* Returns `[]` for a benign/advisory heartbeat.
|
|
30
|
+
* Numeric observations and rejection are independent. Allowed/warning frames
|
|
31
|
+
* may report measured windows without arming a cooldown. A rejecting frame
|
|
32
|
+
* retains its existing typed rate_limit signal alongside any measurements.
|
|
35
33
|
*/
|
|
36
34
|
export function claudeRateLimitEvents(obj, sessionId, ts) {
|
|
37
35
|
const info = obj.rate_limit_info && typeof obj.rate_limit_info === "object" ? obj.rate_limit_info : null;
|
|
38
36
|
const status = info ? info.status : undefined;
|
|
37
|
+
const measurements = claudeQuotaEvents(info, sessionId, ts);
|
|
39
38
|
if (status !== "rejected" && status !== "blocked")
|
|
40
|
-
return
|
|
39
|
+
return measurements;
|
|
41
40
|
const resetsRaw = info ? info.resetsAt : undefined;
|
|
42
|
-
const resetsAt =
|
|
41
|
+
const resetsAt = claudeQuotaReset(resetsRaw);
|
|
43
42
|
const rateLimitType = info ? info.rateLimitType : undefined;
|
|
44
43
|
const modelFamily = rateLimitType === "seven_day_opus"
|
|
45
44
|
? "Opus"
|
|
@@ -48,6 +47,7 @@ export function claudeRateLimitEvents(obj, sessionId, ts) {
|
|
|
48
47
|
: null;
|
|
49
48
|
const appliesToModels = modelFamily ? claudeQuotaModelAliases(modelFamily) : null;
|
|
50
49
|
return [
|
|
50
|
+
...measurements,
|
|
51
51
|
{
|
|
52
52
|
type: "status",
|
|
53
53
|
session_id: sessionId,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"context-signals.js","sourceRoot":"","sources":["../src/context-signals.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;
|
|
1
|
+
{"version":3,"file":"context-signals.js","sourceRoot":"","sources":["../src/context-signals.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAWjE,SAAS,YAAY,CAAC,CAAU;IAC9B,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAC1C,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,2BAA2B,CACzC,GAAS,EACT,SAAiB,EACjB,EAAU;IAEV,MAAM,IAAI,GACR,GAAG,CAAC,gBAAgB,IAAI,OAAO,GAAG,CAAC,gBAAgB,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC;IAC/F,MAAM,OAAO,GAAI,IAAa,CAAC,OAAO,CAAC;IACvC,OAAO;QACL;YACE,IAAI,EAAE,SAAS;YACf,UAAU,EAAE,SAAS;YACrB,EAAE;YACF,OAAO,EAAE;gBACP,IAAI,EAAE,sBAAsB;gBAC5B,KAAK,EAAE,SAAS;gBAChB,WAAW,EAAE,IAAI;gBACjB,OAAO,EAAE,OAAO,KAAK,QAAQ,IAAI,OAAO,KAAK,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI;gBACpE,UAAU,EAAE,YAAY,CAAE,IAAa,CAAC,UAAU,CAAC;aACpD;SACF;KACF,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB,CAAC,GAAS,EAAE,SAAiB,EAAE,EAAU;IAC5E,MAAM,IAAI,GACR,GAAG,CAAC,eAAe,IAAI,OAAO,GAAG,CAAC,eAAe,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC;IAC9F,MAAM,MAAM,GAAG,IAAI,CAAC,CAAC,CAAE,IAAa,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;IACxD,MAAM,YAAY,GAAG,iBAAiB,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC;IAC5D,IAAI,MAAM,KAAK,UAAU,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,YAAY,CAAC;IACvE,MAAM,SAAS,GAAG,IAAI,CAAC,CAAC,CAAE,IAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IAC7D,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;IAC7C,MAAM,aAAa,GAAG,IAAI,CAAC,CAAC,CAAE,IAAa,CAAC,aAAa,CAAC,CAAC,CAAC,SAAS,CAAC;IACtE,MAAM,WAAW,GACf,aAAa,KAAK,gBAAgB;QAChC,CAAC,CAAC,MAAM;QACR,CAAC,CAAC,aAAa,KAAK,kBAAkB;YACpC,CAAC,CAAC,QAAQ;YACV,CAAC,CAAC,IAAI,CAAC;IACb,MAAM,eAAe,GAAG,WAAW,CAAC,CAAC,CAAC,uBAAuB,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAClF,OAAO;QACL,GAAG,YAAY;QACf;YACE,IAAI,EAAE,QAAQ;YACd,UAAU,EAAE,SAAS;YACrB,EAAE;YACF,IAAI,EAAE,qBAAqB,MAAM,CAAC,MAAM,CAAC,EAAE;YAC3C,UAAU,EAAE;gBACV,SAAS,EAAE,QAAQ;gBACnB,cAAc,EAAE,IAAI;gBACpB,GAAG,CAAC,WAAW;oBACb,CAAC,CAAC;wBACE,aAAa,EAAE,MAAM,CAAC,aAAa,CAAC;wBACpC,iBAAiB,EAAE,eAAe;qBACnC;oBACH,CAAC,CAAC,EAAE,CAAC;aACR;YACD,OAAO,EAAE,EAAE,gBAAgB,EAAE,IAAI,EAAE;SACpC;KACF,CAAC;AACJ,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,0BAA0B,CACxC,cAAuB,EACvB,SAAiB,EACjB,EAAU;IAEV,IAAI,cAAc,KAAK,iBAAiB,EAAE,CAAC;QACzC,OAAO;YACL,IAAI,EAAE,SAAS;YACf,UAAU,EAAE,SAAS;YACrB,EAAE;YACF,OAAO,EAAE;gBACP,IAAI,EAAE,oBAAoB;gBAC1B,KAAK,EAAE,iBAAiB;gBACxB,WAAW,EAAE,iBAAiB;gBAC9B,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,IAAI;aACjB;SACF,CAAC;IACJ,CAAC;IACD,IAAI,cAAc,KAAK,sBAAsB,EAAE,CAAC;QAC9C,OAAO;YACL,IAAI,EAAE,SAAS;YACf,UAAU,EAAE,SAAS;YACrB,EAAE;YACF,OAAO,EAAE;gBACP,IAAI,EAAE,oBAAoB;gBAC1B,KAAK,EAAE,iBAAiB;gBACxB,WAAW,EAAE,sBAAsB;gBACnC,OAAO,EAAE,IAAI;gBACb,UAAU,EAAE,IAAI;aACjB;SACF,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;GAOG;AACH;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,yBAAyB,CACvC,GAAS,EACT,aAAsB,EACtB,SAAiB,EACjB,EAAU;IAEV,MAAM,EAAE,GAAG,GAAG,CAAC,iBAAiB,CAAC;IACjC,MAAM,cAAc,GAAG,oBAAoB,CAAC,EAAE,CAAC,CAAC;IAChD,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,IAAI,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QACpE,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO;gBACL;oBACE,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE,SAAS;oBACrB,EAAE;oBACF,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;oBACxB,OAAO,EAAE,EAAE,iBAAiB,EAAE,IAAI,EAAE,kBAAkB,EAAE,IAAI,EAAE;iBAC/D;aACF,CAAC;QACJ,CAAC;QACD,OAAO;YACL;gBACE,IAAI,EAAE,SAAS;gBACf,UAAU,EAAE,SAAS;gBACrB,EAAE;gBACF,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;gBACxB,KAAK,EAAE,IAAI;gBACX,OAAO,EAAE;oBACP,iBAAiB,EAAE,IAAI;oBACvB,YAAY,EAAE,mBAAmB;iBAClC;aACF;SACF,CAAC;IACJ,CAAC;IACD,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;QACxD,IAAI,CAAC,aAAa,EAAE,CAAC;YACnB,OAAO;gBACL;oBACE,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE,SAAS;oBACrB,EAAE;oBACF,IAAI,EAAE,GAAG,CAAC,MAAM;oBAChB,OAAO,EAAE;wBACP,kBAAkB,EAAE,IAAI;wBACxB,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;qBACnF;iBACF;aACF,CAAC;QACJ,CAAC;QACD,OAAO;YACL;gBACE,IAAI,EAAE,SAAS;gBACf,UAAU,EAAE,SAAS;gBACrB,EAAE;gBACF,IAAI,EAAE,GAAG,CAAC,MAAM;gBAChB,KAAK,EAAE,IAAI;gBACX,OAAO,EAAE;oBACP,YAAY,EAAE,QAAQ;oBACtB,GAAG,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,qBAAqB,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;iBACnF;aACF;SACF,CAAC;IACJ,CAAC;IACD,IAAI,cAAc,KAAK,SAAS,EAAE,CAAC;QACjC,OAAO;YACL;gBACE,IAAI,EAAE,QAAQ;gBACd,UAAU,EAAE,SAAS;gBACrB,EAAE;gBACF,IAAI,EAAE,8CAA8C;gBACpD,OAAO,EAAE,EAAE,qBAAqB,EAAE,cAAc,EAAE;aACnD;SACF,CAAC;IACJ,CAAC;IACD,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,gBAAyB;IAC5D,IACE,gBAAgB;QAChB,OAAO,gBAAgB,KAAK,QAAQ;QACpC,CAAC,KAAK,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAChC,aAAa,IAAK,gBAAyB;QAC3C,CAAC,CAAC,QAAQ,IAAK,gBAAyB,CAAC,EACzC,CAAC;QACD,OAAQ,gBAAyB,CAAC,WAAW,CAAC;IAChD,CAAC;IACD,OAAO,SAAS,CAAC;AACnB,CAAC"}
|
package/dist/doctor-remedy.d.ts
CHANGED
|
@@ -6,4 +6,9 @@
|
|
|
6
6
|
* infrastructure cause instead of claiming the user is logged out.
|
|
7
7
|
*/
|
|
8
8
|
export declare function claudeNativeLoginRemedy(env: Record<string, string | null | undefined> | undefined): string;
|
|
9
|
+
/** Describe the same entrypoint whose version/help probe uses this PATH. */
|
|
10
|
+
export declare function claudeInstallation(binary: string, patchPath?: string): {
|
|
11
|
+
path: string | null;
|
|
12
|
+
advisory: string | null;
|
|
13
|
+
};
|
|
9
14
|
//# sourceMappingURL=doctor-remedy.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor-remedy.d.ts","sourceRoot":"","sources":["../src/doctor-remedy.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"doctor-remedy.d.ts","sourceRoot":"","sources":["../src/doctor-remedy.ts"],"names":[],"mappings":"AAOA;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,SAAS,GACzD,MAAM,CAKR;AAED,4EAA4E;AAC5E,wBAAgB,kBAAkB,CAChC,MAAM,EAAE,MAAM,EACd,SAAS,CAAC,EAAE,MAAM,GACjB;IAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAQlD"}
|
package/dist/doctor-remedy.js
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { brokenInstallAdvisory, normalizedHarnessPath, resolveHarnessCommandOnPath, } from "@claudexor/core";
|
|
1
2
|
import { CLAUDE_KEYCHAIN_BRIDGE_ENV } from "./native-home.js";
|
|
2
3
|
/**
|
|
3
4
|
* The honest native-login remedy for Claude doctor reasons (INV-067).
|
|
@@ -12,4 +13,13 @@ export function claudeNativeLoginRemedy(env) {
|
|
|
12
13
|
}
|
|
13
14
|
return "open Accounts → Claude → Login (or Settings → Harnesses → Claude → Manage), then complete Native setup; alternatively configure an API key fallback";
|
|
14
15
|
}
|
|
16
|
+
/** Describe the same entrypoint whose version/help probe uses this PATH. */
|
|
17
|
+
export function claudeInstallation(binary, patchPath) {
|
|
18
|
+
const selected = resolveHarnessCommandOnPath(binary, patchPath ?? normalizedHarnessPath());
|
|
19
|
+
return {
|
|
20
|
+
path: selected.command?.entrypoint ?? null,
|
|
21
|
+
advisory: selected.advisory ??
|
|
22
|
+
(patchPath === undefined && !selected.command ? brokenInstallAdvisory(binary) : null),
|
|
23
|
+
};
|
|
24
|
+
}
|
|
15
25
|
//# sourceMappingURL=doctor-remedy.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"doctor-remedy.js","sourceRoot":"","sources":["../src/doctor-remedy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAE9D;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CACrC,GAA0D;IAE1D,IAAI,GAAG,EAAE,CAAC,0BAA0B,CAAC,KAAK,aAAa,EAAE,CAAC;QACxD,OAAO,iJAAiJ,CAAC;IAC3J,CAAC;IACD,OAAO,qJAAqJ,CAAC;AAC/J,CAAC"}
|
|
1
|
+
{"version":3,"file":"doctor-remedy.js","sourceRoot":"","sources":["../src/doctor-remedy.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,qBAAqB,EACrB,2BAA2B,GAC5B,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,0BAA0B,EAAE,MAAM,kBAAkB,CAAC;AAE9D;;;;;;GAMG;AACH,MAAM,UAAU,uBAAuB,CACrC,GAA0D;IAE1D,IAAI,GAAG,EAAE,CAAC,0BAA0B,CAAC,KAAK,aAAa,EAAE,CAAC;QACxD,OAAO,iJAAiJ,CAAC;IAC3J,CAAC;IACD,OAAO,qJAAqJ,CAAC;AAC/J,CAAC;AAED,4EAA4E;AAC5E,MAAM,UAAU,kBAAkB,CAChC,MAAc,EACd,SAAkB;IAElB,MAAM,QAAQ,GAAG,2BAA2B,CAAC,MAAM,EAAE,SAAS,IAAI,qBAAqB,EAAE,CAAC,CAAC;IAC3F,OAAO;QACL,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,UAAU,IAAI,IAAI;QAC1C,QAAQ,EACN,QAAQ,CAAC,QAAQ;YACjB,CAAC,SAAS,KAAK,SAAS,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,qBAAqB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;KACxF,CAAC;AACJ,CAAC"}
|
package/dist/doctor.d.ts
ADDED
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { ConformanceReport } from "@claudexor/schema";
|
|
2
|
+
import { type DoctorSpec } from "@claudexor/core";
|
|
3
|
+
import type { ClaudeRuntimeDeps } from "./index.js";
|
|
4
|
+
/** Installation, native-session and API-key evidence keep independent causes. */
|
|
5
|
+
export declare function claudeDoctor(_spec: DoctorSpec, runtime: ClaudeRuntimeDeps, nativeEnvironment: (env?: Record<string, string | null | undefined>) => Record<string, string | null | undefined>): Promise<ConformanceReport>;
|
|
6
|
+
//# sourceMappingURL=doctor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doctor.d.ts","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAuB,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEhF,OAAO,EAIL,KAAK,UAAU,EAChB,MAAM,iBAAiB,CAAC;AACzB,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAC;AASpD,iFAAiF;AACjF,wBAAsB,YAAY,CAChC,KAAK,EAAE,UAAU,EACjB,OAAO,EAAE,iBAAiB,EAC1B,iBAAiB,EAAE,CACjB,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,KAC5C,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAC7C,OAAO,CAAC,iBAAiB,CAAC,CA+N5B"}
|
package/dist/doctor.js
ADDED
|
@@ -0,0 +1,219 @@
|
|
|
1
|
+
import { ConformanceReport as ConformanceReportSchema } from "@claudexor/schema";
|
|
2
|
+
import { selectedAuthAvailable, selectedAuthReady, shouldVerifyApiKey, } from "@claudexor/core";
|
|
3
|
+
import { claudeAuthSourceReadiness, redactClaudeDoctorDetail, } from "./auth-status.js";
|
|
4
|
+
import { claudeNativeLoginRemedy } from "./doctor-remedy.js";
|
|
5
|
+
import { BIN, claudeRunPatchPath } from "./effort-probe.js";
|
|
6
|
+
/** Installation, native-session and API-key evidence keep independent causes. */
|
|
7
|
+
export async function claudeDoctor(_spec, runtime, nativeEnvironment) {
|
|
8
|
+
const patchPath = claudeRunPatchPath(_spec);
|
|
9
|
+
const version = await runtime.detectVersion(_spec.abortSignal, patchPath);
|
|
10
|
+
const installation = runtime.installation(BIN, patchPath);
|
|
11
|
+
if (version === null) {
|
|
12
|
+
return ConformanceReportSchema.parse({
|
|
13
|
+
harness_id: "claude",
|
|
14
|
+
status: "unavailable",
|
|
15
|
+
checks: [
|
|
16
|
+
{
|
|
17
|
+
id: "installed",
|
|
18
|
+
status: "fail",
|
|
19
|
+
detail: ["claude not found on PATH", installation.advisory].filter(Boolean).join(" — "),
|
|
20
|
+
},
|
|
21
|
+
],
|
|
22
|
+
reasons: [
|
|
23
|
+
"claude CLI not found (install Claude Code or set CLAUDEXOR_CLAUDE_BIN)",
|
|
24
|
+
...(installation.advisory ? [installation.advisory] : []),
|
|
25
|
+
],
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
const readonlyProfile = await runtime.probeReadonlyProfile(_spec.abortSignal, patchPath);
|
|
29
|
+
const requestedSource = _spec.authSource;
|
|
30
|
+
const probeNative = requestedSource === undefined || requestedSource === "native_session";
|
|
31
|
+
const probeOAuth = requestedSource === undefined || requestedSource === "oauth_token_env";
|
|
32
|
+
const probeApi = requestedSource === undefined || requestedSource === "api_key_env";
|
|
33
|
+
const nativeEnv = probeNative ? nativeEnvironment(_spec.env) : _spec.env;
|
|
34
|
+
const login = probeNative
|
|
35
|
+
? await runtime.probeAuthStatus(BIN, {
|
|
36
|
+
env: nativeEnv,
|
|
37
|
+
abortSignal: _spec.abortSignal,
|
|
38
|
+
})
|
|
39
|
+
: { loggedIn: false, authed: false, authMethod: null, probeError: null };
|
|
40
|
+
const nativeCliReady = login.authed && login.stale !== true;
|
|
41
|
+
// Native-session and stored setup-token proofs are separate sources.
|
|
42
|
+
const oauthToken = probeOAuth ? runtime.claudeOAuthToken() : null;
|
|
43
|
+
const oauthTokenAvailable = oauthToken !== null;
|
|
44
|
+
const apiKey = probeApi && runtime.anthropicApiKey() !== null;
|
|
45
|
+
const preference = requestedSource === "native_session" || requestedSource === "oauth_token_env"
|
|
46
|
+
? "subscription"
|
|
47
|
+
: requestedSource === "api_key_env"
|
|
48
|
+
? "api_key"
|
|
49
|
+
: (_spec.authPreference ?? "auto");
|
|
50
|
+
const shouldSmokeOAuth = probeOAuth && oauthToken !== null && !nativeCliReady && preference !== "api_key";
|
|
51
|
+
const oauthSmoke = shouldSmokeOAuth && oauthToken
|
|
52
|
+
? await runtime.smokeIsolatedOAuthToken(oauthToken, _spec.abortSignal)
|
|
53
|
+
: {
|
|
54
|
+
ok: false,
|
|
55
|
+
detail: oauthTokenAvailable
|
|
56
|
+
? "verification not run for the unselected setup-token route"
|
|
57
|
+
: "no Claude setup-token available",
|
|
58
|
+
};
|
|
59
|
+
const nativeAvailable = login.loggedIn || oauthTokenAvailable;
|
|
60
|
+
const subscriptionReady = nativeCliReady || oauthSmoke.ok;
|
|
61
|
+
const shouldSmokeKey = probeApi &&
|
|
62
|
+
shouldVerifyApiKey({ preference, apiKeyAvailable: apiKey, nativeReady: subscriptionReady });
|
|
63
|
+
const apiSmoke = shouldSmokeKey
|
|
64
|
+
? await runtime.smokeIsolatedApiKey(_spec.abortSignal)
|
|
65
|
+
: {
|
|
66
|
+
ok: false,
|
|
67
|
+
detail: apiKey
|
|
68
|
+
? "verification not run for the unselected API-key route"
|
|
69
|
+
: "no API key fallback available",
|
|
70
|
+
};
|
|
71
|
+
const ok = selectedAuthReady({
|
|
72
|
+
preference,
|
|
73
|
+
nativeReady: subscriptionReady,
|
|
74
|
+
apiKeyReady: apiSmoke.ok,
|
|
75
|
+
});
|
|
76
|
+
const selectedAvailable = selectedAuthAvailable({
|
|
77
|
+
preference,
|
|
78
|
+
nativeAvailable,
|
|
79
|
+
apiKeyAvailable: apiKey,
|
|
80
|
+
});
|
|
81
|
+
const probeUnknown = preference !== "api_key" &&
|
|
82
|
+
(login.probeError !== null || login.stale === true) &&
|
|
83
|
+
!oauthTokenAvailable;
|
|
84
|
+
// INV-067: name the real cause + designed remedy (see doctor-remedy.ts).
|
|
85
|
+
const nativeLoginRemedy = claudeNativeLoginRemedy(nativeEnv);
|
|
86
|
+
const allIntents = [
|
|
87
|
+
"plan",
|
|
88
|
+
"spec",
|
|
89
|
+
"implement",
|
|
90
|
+
"repair",
|
|
91
|
+
"create_from_scratch",
|
|
92
|
+
"review",
|
|
93
|
+
"verify",
|
|
94
|
+
"synthesize",
|
|
95
|
+
"explain",
|
|
96
|
+
"audit",
|
|
97
|
+
];
|
|
98
|
+
const binPath = installation.path;
|
|
99
|
+
const producedSources = claudeAuthSourceReadiness({
|
|
100
|
+
native: login,
|
|
101
|
+
oauthAvailable: oauthTokenAvailable,
|
|
102
|
+
oauthVerification: oauthSmoke.ok ? "passed" : shouldSmokeOAuth ? "failed" : "not_run",
|
|
103
|
+
oauthDetail: oauthSmoke.detail,
|
|
104
|
+
apiKeyAvailable: apiKey,
|
|
105
|
+
apiKeyVerification: apiSmoke.ok ? "passed" : shouldSmokeKey ? "failed" : "not_run",
|
|
106
|
+
apiKeyDetail: apiSmoke.detail,
|
|
107
|
+
});
|
|
108
|
+
const authSources = requestedSource === undefined
|
|
109
|
+
? producedSources
|
|
110
|
+
: producedSources.filter((source) => source.source === requestedSource);
|
|
111
|
+
if (requestedSource !== undefined && authSources.length === 0) {
|
|
112
|
+
authSources.push({
|
|
113
|
+
source: requestedSource,
|
|
114
|
+
availability: "unavailable",
|
|
115
|
+
verification: "not_run",
|
|
116
|
+
detail: `Claude does not support ${requestedSource}`,
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
const authReasons = ok
|
|
120
|
+
? []
|
|
121
|
+
: preference === "subscription"
|
|
122
|
+
? [
|
|
123
|
+
login.stale && !oauthTokenAvailable
|
|
124
|
+
? `Claude native-session auth-status probe is stale; using last-known-good session${login.staleAgeMs === undefined ? "" : ` (${login.staleAgeMs}ms old)`}`
|
|
125
|
+
: login.probeError && !oauthTokenAvailable
|
|
126
|
+
? `Claude native-session probe failed: ${redactClaudeDoctorDetail(login.probeError)}`
|
|
127
|
+
: oauthTokenAvailable
|
|
128
|
+
? `Claude setup-token verification failed: ${oauthSmoke.detail}`
|
|
129
|
+
: `Claude subscription route is not ready: ${nativeLoginRemedy}`,
|
|
130
|
+
]
|
|
131
|
+
: preference === "api_key"
|
|
132
|
+
? [
|
|
133
|
+
apiKey
|
|
134
|
+
? `isolated Claude API-key smoke failed: ${apiSmoke.detail}`
|
|
135
|
+
: "Claude API-key route is not configured",
|
|
136
|
+
]
|
|
137
|
+
: login.stale
|
|
138
|
+
? [
|
|
139
|
+
`Claude native-session auth-status probe is stale; using last-known-good session${login.staleAgeMs === undefined ? "" : ` (${login.staleAgeMs}ms old)`}`,
|
|
140
|
+
]
|
|
141
|
+
: apiKey
|
|
142
|
+
? [`isolated Claude API-key smoke failed: ${apiSmoke.detail}`]
|
|
143
|
+
: login.probeError
|
|
144
|
+
? [
|
|
145
|
+
`Claude native-session probe failed: ${redactClaudeDoctorDetail(login.probeError)}`,
|
|
146
|
+
]
|
|
147
|
+
: [`not authenticated: ${nativeLoginRemedy}`];
|
|
148
|
+
return ConformanceReportSchema.parse({
|
|
149
|
+
harness_id: "claude",
|
|
150
|
+
status: ok
|
|
151
|
+
? readonlyProfile.supported
|
|
152
|
+
? "ok"
|
|
153
|
+
: "degraded"
|
|
154
|
+
: selectedAvailable || probeUnknown
|
|
155
|
+
? "degraded"
|
|
156
|
+
: "unavailable",
|
|
157
|
+
checks: [
|
|
158
|
+
{
|
|
159
|
+
id: "installed",
|
|
160
|
+
status: "pass",
|
|
161
|
+
detail: [binPath ? `${version} at ${binPath}` : version, installation.advisory]
|
|
162
|
+
.filter(Boolean)
|
|
163
|
+
.join(" — "),
|
|
164
|
+
},
|
|
165
|
+
{
|
|
166
|
+
id: "readonly_enforcement",
|
|
167
|
+
status: readonlyProfile.supported ? "pass" : "fail",
|
|
168
|
+
detail: readonlyProfile.detail,
|
|
169
|
+
},
|
|
170
|
+
...(probeNative
|
|
171
|
+
? [
|
|
172
|
+
{
|
|
173
|
+
id: "native_session",
|
|
174
|
+
status: nativeCliReady ? "pass" : "fail",
|
|
175
|
+
detail: nativeCliReady
|
|
176
|
+
? "vendor status confirmed authMethod=claude.ai in the exact run environment"
|
|
177
|
+
: login.stale
|
|
178
|
+
? `auth-status probe is stale; using last-known-good native session${login.staleAgeMs === undefined ? "" : ` (${login.staleAgeMs}ms old)`}`
|
|
179
|
+
: login.probeError
|
|
180
|
+
? `auth-status probe failed (NOT an auth verdict): ${redactClaudeDoctorDetail(login.probeError)}`
|
|
181
|
+
: login.loggedIn
|
|
182
|
+
? `logged in via ${login.authMethod ?? "unknown"}, not claude.ai`
|
|
183
|
+
: "not logged in (run `claudexor auth login claude`)",
|
|
184
|
+
},
|
|
185
|
+
]
|
|
186
|
+
: []),
|
|
187
|
+
...(probeOAuth
|
|
188
|
+
? [
|
|
189
|
+
{
|
|
190
|
+
id: "oauth_setup_token",
|
|
191
|
+
status: oauthSmoke.ok ? "pass" : shouldSmokeOAuth ? "fail" : "skip",
|
|
192
|
+
detail: oauthSmoke.detail,
|
|
193
|
+
},
|
|
194
|
+
]
|
|
195
|
+
: []),
|
|
196
|
+
...(probeApi
|
|
197
|
+
? [
|
|
198
|
+
{
|
|
199
|
+
id: "stored_key",
|
|
200
|
+
status: apiKey ? "pass" : "fail",
|
|
201
|
+
detail: apiKey
|
|
202
|
+
? "anthropic secret/env available (API-key fallback)"
|
|
203
|
+
: "no anthropic key fallback",
|
|
204
|
+
},
|
|
205
|
+
{
|
|
206
|
+
id: "isolated_api_smoke",
|
|
207
|
+
status: apiSmoke.ok ? "pass" : shouldSmokeKey ? "fail" : "skip",
|
|
208
|
+
detail: apiSmoke.detail,
|
|
209
|
+
},
|
|
210
|
+
]
|
|
211
|
+
: []),
|
|
212
|
+
],
|
|
213
|
+
auth_sources: authSources,
|
|
214
|
+
enabled_intents: ok ? allIntents : [],
|
|
215
|
+
disabled_intents: ok ? [] : allIntents,
|
|
216
|
+
reasons: [...authReasons, ...(readonlyProfile.supported ? [] : [readonlyProfile.detail])],
|
|
217
|
+
});
|
|
218
|
+
}
|
|
219
|
+
//# sourceMappingURL=doctor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"doctor.js","sourceRoot":"","sources":["../src/doctor.ts"],"names":[],"mappings":"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"}
|
package/dist/effort-probe.d.ts
CHANGED
|
@@ -86,7 +86,7 @@ export declare function claudeRunEffortResolution(spec: Pick<HarnessRunSpec, "se
|
|
|
86
86
|
}>;
|
|
87
87
|
/** The PATH a run's env patch selects the binary on, when it carries one. */
|
|
88
88
|
export declare function claudeRunPatchPath(spec: {
|
|
89
|
-
env?:
|
|
89
|
+
env?: Record<string, string | null | undefined>;
|
|
90
90
|
}): string | undefined;
|
|
91
91
|
/**
|
|
92
92
|
* `claude --version` of the binary a caller will execute — resolved and spawned
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"effort-probe.d.ts","sourceRoot":"","sources":["../src/effort-probe.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACxF,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAc/C,eAAO,MAAM,GAAG,QAA+C,CAAC;AAEhE;;;;GAIG;AACH,eAAO,MAAM,sBAAsB,EAAE,SAAS,UAAU,EAMvD,CAAC;AAEF;6EAC6E;AAC7E,wBAAgB,kBAAkB,CAAC,UAAU,EAAE,SAAS,UAAU,EAAE,GAAG,SAAS,UAAU,EAAE,CAE3F;AAED;;;iEAGiE;AACjE,eAAO,MAAM,uCAAuC,EAAE,MAAkC,CAAC;AAEzF;;;;;;;;;;;;GAYG;AACH,wBAAgB,+BAA+B,CAAC,gBAAgB,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAIxF;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,6BAA6B,CAC3C,OAAO,EAAE;IAAE,MAAM,EAAE,SAAS,UAAU,EAAE,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,EACzD,gBAAgB,EAAE,MAAM,GAAG,IAAI,GAC9B,SAAS,UAAU,EAAE,CAGvB;AAED;;;;;;;;GAQG;AACH,wBAAsB,yBAAyB,CAC7C,IAAI,EAAE,IAAI,CAAC,cAAc,EAAE,YAAY,GAAG,aAAa,CAAC,GAAG;IAAE,GAAG,CAAC,EAAE,cAAc,CAAC,KAAK,CAAC,CAAA;CAAE,EAC1F,IAAI,EAAE;IACJ,iBAAiB,EAAE,OAAO,uBAAuB,CAAC;IAClD,aAAa,EAAE,OAAO,mBAAmB,CAAC;CAC3C,EACD,WAAW,CAAC,EAAE,WAAW,GACxB,OAAO,CAAC;IACT,UAAU,EAAE,SAAS,UAAU,EAAE,CAAC;IAClC,UAAU,EAAE,YAAY,GAAG,IAAI,CAAC;IAChC,UAAU,EAAE,gBAAgB,CAAC;IAC7B,KAAK,EAAE,YAAY,CAAC;CACrB,CAAC,CA2BD;AAED,6EAA6E;AAC7E,wBAAgB,kBAAkB,CAAC,IAAI,EAAE;
|
|
1
|
+
{"version":3,"file":"effort-probe.d.ts","sourceRoot":"","sources":["../src/effort-probe.ts"],"names":[],"mappings":"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"}
|
package/dist/effort-probe.js
CHANGED
|
@@ -240,8 +240,10 @@ function helpProbeIdentity(patchPath) {
|
|
|
240
240
|
? harnessBinaryIdentity(BIN)
|
|
241
241
|
: harnessBinaryIdentityOnPath(BIN, patchPath);
|
|
242
242
|
return {
|
|
243
|
-
key: JSON.stringify(id
|
|
244
|
-
|
|
243
|
+
key: JSON.stringify(id
|
|
244
|
+
? [id.path, id.ino, id.size, id.mtimeMs, id.interpreter]
|
|
245
|
+
: ["unresolved", BIN, patchPath ?? null]),
|
|
246
|
+
spawn: id?.launcher ?? id?.path ?? BIN,
|
|
245
247
|
};
|
|
246
248
|
}
|
|
247
249
|
/** What an abandoned caller reads, without the shared capture ever seeing it. */
|
package/dist/effort-probe.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"effort-probe.js","sourceRoot":"","sources":["../src/effort-probe.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"effort-probe.js","sourceRoot":"","sources":["../src/effort-probe.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -2,6 +2,7 @@ import type { EffortHint, HarnessRunSpec } from "@claudexor/schema";
|
|
|
2
2
|
import type { HarnessAdapter } from "@claudexor/core";
|
|
3
3
|
import { runCapture, runCliHarness, selectStrictAuthRoute } from "@claudexor/core";
|
|
4
4
|
export { CLAUDE_MANAGED_LOGIN, claudeQuotaModelAliases } from "./capability-profile.js";
|
|
5
|
+
import { claudeInstallation } from "./doctor-remedy.js";
|
|
5
6
|
export { claudeAccountIdentity, defaultNativeClaudeConfigDir } from "./native-home.js";
|
|
6
7
|
export { canonicalProfileConfigDir } from "./profile.js";
|
|
7
8
|
import { type ClaudeAuthStatusProbe } from "./auth-status.js";
|
|
@@ -49,8 +50,9 @@ export declare function anthropicApiKey(): string | null;
|
|
|
49
50
|
declare function claudeOAuthToken(): string | null;
|
|
50
51
|
/** The runtime surface the profile module needs (test-stubbable). */
|
|
51
52
|
export type ClaudeProfileRuntimeDeps = Pick<ClaudeRuntimeDeps, "probeAuthStatus" | "resolveProfileSecret">;
|
|
52
|
-
type ClaudeRuntimeDeps = {
|
|
53
|
+
export type ClaudeRuntimeDeps = {
|
|
53
54
|
detectVersion: typeof detectClaudeVersion;
|
|
55
|
+
installation: typeof claudeInstallation;
|
|
54
56
|
probeAuthStatus: typeof probeAuthStatus;
|
|
55
57
|
anthropicApiKey: typeof anthropicApiKey;
|
|
56
58
|
claudeOAuthToken: typeof claudeOAuthToken;
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|