nexus-agents 8.58.4 → 8.58.6
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/{ast-rule-runner-NIX2R2ER.js → ast-rule-runner-DEO7JRWD.js} +3 -3
- package/dist/{child-mcp-config-LBCDGXVO.js → child-mcp-config-UKY4JZD2.js} +2 -2
- package/dist/{chunk-MH2IGA2C.js → chunk-257NGWEF.js} +2 -2
- package/dist/{chunk-XFUWBS6A.js → chunk-2NN3HKP7.js} +2 -2
- package/dist/{chunk-KMEGWPIU.js → chunk-47L5YCXT.js} +2 -2
- package/dist/{chunk-4FFTWLHX.js → chunk-6WIEJNJE.js} +56 -19
- package/dist/chunk-6WIEJNJE.js.map +1 -0
- package/dist/{chunk-MTKFVOKA.js → chunk-ANTMT6RY.js} +2 -2
- package/dist/{chunk-ARUHRGGB.js → chunk-AXQGIENC.js} +2 -2
- package/dist/{chunk-KFOYGHUC.js → chunk-CLCPHSRI.js} +2 -2
- package/dist/{chunk-SHH7CZOP.js → chunk-DNJIQBAL.js} +2 -2
- package/dist/{chunk-IK5FLVX4.js → chunk-E6ZQEHDR.js} +4 -4
- package/dist/{chunk-CDT2CX3J.js → chunk-EDYTEMHV.js} +7 -7
- package/dist/{chunk-S7Y4BHTF.js → chunk-ENI5XRRF.js} +2 -2
- package/dist/{chunk-GDOEI664.js → chunk-FWW4PXB6.js} +4 -4
- package/dist/{chunk-HILSAACO.js → chunk-GBBI2QFJ.js} +3 -3
- package/dist/{chunk-QV7WOPZY.js → chunk-GV7RPQ7U.js} +3 -3
- package/dist/{chunk-3JJHGGTT.js → chunk-GXCMOXBS.js} +2 -2
- package/dist/{chunk-67AADYKZ.js → chunk-HA4PGGHG.js} +2 -2
- package/dist/{chunk-GESWDHFD.js → chunk-I73M6A6N.js} +2 -2
- package/dist/{chunk-YLBVRBVK.js → chunk-JC7EI7WG.js} +4 -4
- package/dist/{chunk-PCGPMJBA.js → chunk-JJK4QPT4.js} +36 -36
- package/dist/{chunk-AKC7SODA.js → chunk-KSOAZJM7.js} +2 -2
- package/dist/{chunk-J5MWJGDC.js → chunk-LM3FAJ5Y.js} +2 -2
- package/dist/{chunk-HGLRQ4N5.js → chunk-LXWPPPY7.js} +4 -4
- package/dist/{chunk-VUB6RPPH.js → chunk-PW4BOOFF.js} +2 -2
- package/dist/{chunk-AQHLUZ44.js → chunk-QMRMPIMW.js} +2 -2
- package/dist/{chunk-PSRLUHF2.js → chunk-QNC7HJPJ.js} +2 -2
- package/dist/{chunk-KT26CDSA.js → chunk-RQVYN5U2.js} +9 -9
- package/dist/{chunk-3A5BXLPV.js → chunk-SQDFLFMP.js} +63 -34
- package/dist/chunk-SQDFLFMP.js.map +1 -0
- package/dist/{chunk-6DYJTPER.js → chunk-TWL6LR65.js} +3 -3
- package/dist/{chunk-5HAKYKCY.js → chunk-UHS465UI.js} +2 -2
- package/dist/{chunk-TZ6FVGJZ.js → chunk-UKAGJ224.js} +2 -2
- package/dist/{chunk-HRXWESJB.js → chunk-XW4R6JEN.js} +3 -3
- package/dist/{chunk-X7NUFNVJ.js → chunk-XWSLQ5PQ.js} +5 -5
- package/dist/{chunk-5RSH7N6W.js → chunk-YJI3TAJD.js} +2 -2
- package/dist/{chunk-ZTX7DLWE.js → chunk-Z66FYRAW.js} +6 -6
- package/dist/{chunk-YDVOA4I3.js → chunk-ZWT7PLA4.js} +5 -5
- package/dist/{cli-circuit-breaker-G7JVCCHA.js → cli-circuit-breaker-BRL7DAYM.js} +3 -3
- package/dist/cli.js +44 -44
- package/dist/{composite-router-ZBNPUNRE.js → composite-router-MZYI7QXQ.js} +2 -2
- package/dist/{consensus-vote-GEVSVYV6.js → consensus-vote-QSQ66LID.js} +17 -17
- package/dist/{context-retriever-J34XBWSS.js → context-retriever-QUZLDELM.js} +8 -8
- package/dist/{doctor-deep-ITUREQZO.js → doctor-deep-NVOF2ER5.js} +3 -3
- package/dist/{doctor-live-UVODP772.js → doctor-live-R34ELQ57.js} +10 -10
- package/dist/{expert-bridge-QX2UR2BM.js → expert-bridge-FBCMB6OX.js} +4 -4
- package/dist/{factory-WOUE5TFB.js → factory-76EOSZND.js} +9 -9
- package/dist/{factory-EYT7ROYW.js → factory-XOH5OJYR.js} +5 -5
- package/dist/{improvement-review-25ML3PFG.js → improvement-review-MSK5GJZ2.js} +6 -6
- package/dist/index.d.ts +17 -0
- package/dist/index.js +32 -32
- package/dist/{init-opencode-K7SFAFPP.js → init-opencode-45S2XHGX.js} +6 -6
- package/dist/issue-triage-USLZCNEV.js +17 -0
- package/dist/models-dev-snapshot.json +200 -8
- package/dist/{pr-reviewer-helpers-AS7QF6EZ.js → pr-reviewer-helpers-CZUPG3AA.js} +4 -4
- package/dist/{registry-command-TBKBERPQ.js → registry-command-HJF3R4FO.js} +2 -2
- package/dist/{repo-security-plan-IL67SCKX.js → repo-security-plan-T6XER6E5.js} +3 -3
- package/dist/{research-helpers-synthesize-567ZPTCF.js → research-helpers-synthesize-CBBQDWGS.js} +4 -4
- package/dist/{routing-memory-RHDT5HIP.js → routing-memory-TOQKGEWX.js} +2 -2
- package/dist/{session-memory-UPX3KPG6.js → session-memory-I5EJA7MT.js} +3 -3
- package/dist/{setup-config-HKQKKAIB.js → setup-config-QTGVQ7H2.js} +3 -3
- package/dist/{setup-custom-api-OBAFCX4H.js → setup-custom-api-VACESB4N.js} +4 -4
- package/dist/setup-data-dir-N5TCUUH4.js +31 -0
- package/dist/{tool-memory-NFO4G45N.js → tool-memory-IF22RCZB.js} +5 -5
- package/dist/{unified-registry-RQ34NS65.js → unified-registry-A2A3JZGT.js} +10 -10
- package/dist/{weather-report-5UHJLCEZ.js → weather-report-VMA3BJV5.js} +2 -2
- package/package.json +1 -1
- package/dist/chunk-3A5BXLPV.js.map +0 -1
- package/dist/chunk-4FFTWLHX.js.map +0 -1
- package/dist/issue-triage-ULMBQTMC.js +0 -17
- package/dist/setup-data-dir-S2YYGJSS.js +0 -31
- /package/dist/{ast-rule-runner-NIX2R2ER.js.map → ast-rule-runner-DEO7JRWD.js.map} +0 -0
- /package/dist/{child-mcp-config-LBCDGXVO.js.map → child-mcp-config-UKY4JZD2.js.map} +0 -0
- /package/dist/{chunk-MH2IGA2C.js.map → chunk-257NGWEF.js.map} +0 -0
- /package/dist/{chunk-XFUWBS6A.js.map → chunk-2NN3HKP7.js.map} +0 -0
- /package/dist/{chunk-KMEGWPIU.js.map → chunk-47L5YCXT.js.map} +0 -0
- /package/dist/{chunk-MTKFVOKA.js.map → chunk-ANTMT6RY.js.map} +0 -0
- /package/dist/{chunk-ARUHRGGB.js.map → chunk-AXQGIENC.js.map} +0 -0
- /package/dist/{chunk-KFOYGHUC.js.map → chunk-CLCPHSRI.js.map} +0 -0
- /package/dist/{chunk-SHH7CZOP.js.map → chunk-DNJIQBAL.js.map} +0 -0
- /package/dist/{chunk-IK5FLVX4.js.map → chunk-E6ZQEHDR.js.map} +0 -0
- /package/dist/{chunk-CDT2CX3J.js.map → chunk-EDYTEMHV.js.map} +0 -0
- /package/dist/{chunk-S7Y4BHTF.js.map → chunk-ENI5XRRF.js.map} +0 -0
- /package/dist/{chunk-GDOEI664.js.map → chunk-FWW4PXB6.js.map} +0 -0
- /package/dist/{chunk-HILSAACO.js.map → chunk-GBBI2QFJ.js.map} +0 -0
- /package/dist/{chunk-QV7WOPZY.js.map → chunk-GV7RPQ7U.js.map} +0 -0
- /package/dist/{chunk-3JJHGGTT.js.map → chunk-GXCMOXBS.js.map} +0 -0
- /package/dist/{chunk-67AADYKZ.js.map → chunk-HA4PGGHG.js.map} +0 -0
- /package/dist/{chunk-GESWDHFD.js.map → chunk-I73M6A6N.js.map} +0 -0
- /package/dist/{chunk-YLBVRBVK.js.map → chunk-JC7EI7WG.js.map} +0 -0
- /package/dist/{chunk-PCGPMJBA.js.map → chunk-JJK4QPT4.js.map} +0 -0
- /package/dist/{chunk-AKC7SODA.js.map → chunk-KSOAZJM7.js.map} +0 -0
- /package/dist/{chunk-J5MWJGDC.js.map → chunk-LM3FAJ5Y.js.map} +0 -0
- /package/dist/{chunk-HGLRQ4N5.js.map → chunk-LXWPPPY7.js.map} +0 -0
- /package/dist/{chunk-VUB6RPPH.js.map → chunk-PW4BOOFF.js.map} +0 -0
- /package/dist/{chunk-AQHLUZ44.js.map → chunk-QMRMPIMW.js.map} +0 -0
- /package/dist/{chunk-PSRLUHF2.js.map → chunk-QNC7HJPJ.js.map} +0 -0
- /package/dist/{chunk-KT26CDSA.js.map → chunk-RQVYN5U2.js.map} +0 -0
- /package/dist/{chunk-6DYJTPER.js.map → chunk-TWL6LR65.js.map} +0 -0
- /package/dist/{chunk-5HAKYKCY.js.map → chunk-UHS465UI.js.map} +0 -0
- /package/dist/{chunk-TZ6FVGJZ.js.map → chunk-UKAGJ224.js.map} +0 -0
- /package/dist/{chunk-HRXWESJB.js.map → chunk-XW4R6JEN.js.map} +0 -0
- /package/dist/{chunk-X7NUFNVJ.js.map → chunk-XWSLQ5PQ.js.map} +0 -0
- /package/dist/{chunk-5RSH7N6W.js.map → chunk-YJI3TAJD.js.map} +0 -0
- /package/dist/{chunk-ZTX7DLWE.js.map → chunk-Z66FYRAW.js.map} +0 -0
- /package/dist/{chunk-YDVOA4I3.js.map → chunk-ZWT7PLA4.js.map} +0 -0
- /package/dist/{cli-circuit-breaker-G7JVCCHA.js.map → cli-circuit-breaker-BRL7DAYM.js.map} +0 -0
- /package/dist/{composite-router-ZBNPUNRE.js.map → composite-router-MZYI7QXQ.js.map} +0 -0
- /package/dist/{consensus-vote-GEVSVYV6.js.map → consensus-vote-QSQ66LID.js.map} +0 -0
- /package/dist/{context-retriever-J34XBWSS.js.map → context-retriever-QUZLDELM.js.map} +0 -0
- /package/dist/{doctor-deep-ITUREQZO.js.map → doctor-deep-NVOF2ER5.js.map} +0 -0
- /package/dist/{doctor-live-UVODP772.js.map → doctor-live-R34ELQ57.js.map} +0 -0
- /package/dist/{expert-bridge-QX2UR2BM.js.map → expert-bridge-FBCMB6OX.js.map} +0 -0
- /package/dist/{factory-EYT7ROYW.js.map → factory-76EOSZND.js.map} +0 -0
- /package/dist/{factory-WOUE5TFB.js.map → factory-XOH5OJYR.js.map} +0 -0
- /package/dist/{improvement-review-25ML3PFG.js.map → improvement-review-MSK5GJZ2.js.map} +0 -0
- /package/dist/{init-opencode-K7SFAFPP.js.map → init-opencode-45S2XHGX.js.map} +0 -0
- /package/dist/{issue-triage-ULMBQTMC.js.map → issue-triage-USLZCNEV.js.map} +0 -0
- /package/dist/{pr-reviewer-helpers-AS7QF6EZ.js.map → pr-reviewer-helpers-CZUPG3AA.js.map} +0 -0
- /package/dist/{registry-command-TBKBERPQ.js.map → registry-command-HJF3R4FO.js.map} +0 -0
- /package/dist/{repo-security-plan-IL67SCKX.js.map → repo-security-plan-T6XER6E5.js.map} +0 -0
- /package/dist/{research-helpers-synthesize-567ZPTCF.js.map → research-helpers-synthesize-CBBQDWGS.js.map} +0 -0
- /package/dist/{routing-memory-RHDT5HIP.js.map → routing-memory-TOQKGEWX.js.map} +0 -0
- /package/dist/{session-memory-UPX3KPG6.js.map → session-memory-I5EJA7MT.js.map} +0 -0
- /package/dist/{setup-config-HKQKKAIB.js.map → setup-config-QTGVQ7H2.js.map} +0 -0
- /package/dist/{setup-custom-api-OBAFCX4H.js.map → setup-custom-api-VACESB4N.js.map} +0 -0
- /package/dist/{setup-data-dir-S2YYGJSS.js.map → setup-data-dir-N5TCUUH4.js.map} +0 -0
- /package/dist/{tool-memory-NFO4G45N.js.map → tool-memory-IF22RCZB.js.map} +0 -0
- /package/dist/{unified-registry-RQ34NS65.js.map → unified-registry-A2A3JZGT.js.map} +0 -0
- /package/dist/{weather-report-5UHJLCEZ.js.map → weather-report-VMA3BJV5.js.map} +0 -0
|
@@ -9,8 +9,8 @@ import {
|
|
|
9
9
|
getBuiltInAstRulesPath,
|
|
10
10
|
loadRules,
|
|
11
11
|
runAstQaRules
|
|
12
|
-
} from "./chunk-
|
|
13
|
-
import "./chunk-
|
|
12
|
+
} from "./chunk-UKAGJ224.js";
|
|
13
|
+
import "./chunk-TWL6LR65.js";
|
|
14
14
|
import "./chunk-MTYJPPIG.js";
|
|
15
15
|
import "./chunk-BTYRPZON.js";
|
|
16
16
|
import "./chunk-ZPWHCABL.js";
|
|
@@ -26,4 +26,4 @@ export {
|
|
|
26
26
|
loadRules,
|
|
27
27
|
runAstQaRules
|
|
28
28
|
};
|
|
29
|
-
//# sourceMappingURL=ast-rule-runner-
|
|
29
|
+
//# sourceMappingURL=ast-rule-runner-DEO7JRWD.js.map
|
|
@@ -3,7 +3,7 @@ import {
|
|
|
3
3
|
} from "./chunk-T46RV7Y7.js";
|
|
4
4
|
import {
|
|
5
5
|
createLogger
|
|
6
|
-
} from "./chunk-
|
|
6
|
+
} from "./chunk-TWL6LR65.js";
|
|
7
7
|
import "./chunk-MTYJPPIG.js";
|
|
8
8
|
import "./chunk-BTYRPZON.js";
|
|
9
9
|
import "./chunk-ZPWHCABL.js";
|
|
@@ -60,4 +60,4 @@ export {
|
|
|
60
60
|
generateMcpConfig,
|
|
61
61
|
getDefaultAllowedTools
|
|
62
62
|
};
|
|
63
|
-
//# sourceMappingURL=child-mcp-config-
|
|
63
|
+
//# sourceMappingURL=child-mcp-config-UKY4JZD2.js.map
|
|
@@ -5,7 +5,7 @@ import {
|
|
|
5
5
|
MCP_TIMEOUTS,
|
|
6
6
|
TEST_TIMEOUTS,
|
|
7
7
|
WORKFLOW_TIMEOUTS
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-TWL6LR65.js";
|
|
9
9
|
import {
|
|
10
10
|
createGetEnvVarDocumentation,
|
|
11
11
|
createGetTimeout,
|
|
@@ -224,4 +224,4 @@ export {
|
|
|
224
224
|
CUSTOM_API_DEFAULT_MODEL,
|
|
225
225
|
DEFAULTS
|
|
226
226
|
};
|
|
227
|
-
//# sourceMappingURL=chunk-
|
|
227
|
+
//# sourceMappingURL=chunk-257NGWEF.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// src/version.ts
|
|
2
2
|
import semver from "semver";
|
|
3
|
-
var VERSION = true ? "8.58.
|
|
3
|
+
var VERSION = true ? "8.58.6" : "dev";
|
|
4
4
|
var NODE_ENGINE_RANGE = ">=22.5.0";
|
|
5
5
|
function isNodeVersionSupported(version) {
|
|
6
6
|
return semver.satisfies(version, NODE_ENGINE_RANGE);
|
|
@@ -11,4 +11,4 @@ export {
|
|
|
11
11
|
NODE_ENGINE_RANGE,
|
|
12
12
|
isNodeVersionSupported
|
|
13
13
|
};
|
|
14
|
-
//# sourceMappingURL=chunk-
|
|
14
|
+
//# sourceMappingURL=chunk-2NN3HKP7.js.map
|
|
@@ -4,7 +4,7 @@ import {
|
|
|
4
4
|
err,
|
|
5
5
|
getErrorMessage,
|
|
6
6
|
ok
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-TWL6LR65.js";
|
|
8
8
|
|
|
9
9
|
// src/scm/types.ts
|
|
10
10
|
var ScmError = class extends Error {
|
|
@@ -281,4 +281,4 @@ export {
|
|
|
281
281
|
ScmError,
|
|
282
282
|
GitHubProvider
|
|
283
283
|
};
|
|
284
|
-
//# sourceMappingURL=chunk-
|
|
284
|
+
//# sourceMappingURL=chunk-47L5YCXT.js.map
|
|
@@ -5,34 +5,34 @@ import {
|
|
|
5
5
|
planOptionalParams,
|
|
6
6
|
requireApiKey,
|
|
7
7
|
validateApiKeyPresence
|
|
8
|
-
} from "./chunk-
|
|
8
|
+
} from "./chunk-QNC7HJPJ.js";
|
|
9
9
|
import {
|
|
10
10
|
CUSTOM_API_DEFAULT_MODEL
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-257NGWEF.js";
|
|
12
12
|
import {
|
|
13
13
|
CUSTOM_API_BASE_URL_ENV,
|
|
14
14
|
PROVIDER_ENV_KEYS,
|
|
15
15
|
assertCustomApiHostResolvesPublic,
|
|
16
16
|
validateCustomApiBaseUrl
|
|
17
|
-
} from "./chunk-
|
|
17
|
+
} from "./chunk-UHS465UI.js";
|
|
18
18
|
import {
|
|
19
19
|
nexusMkdtempSync
|
|
20
20
|
} from "./chunk-T46RV7Y7.js";
|
|
21
21
|
import {
|
|
22
22
|
getAvailabilityCache
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-PW4BOOFF.js";
|
|
24
24
|
import {
|
|
25
25
|
extractSystemPrompt
|
|
26
26
|
} from "./chunk-QZUG667L.js";
|
|
27
27
|
import {
|
|
28
28
|
generateHyphenId
|
|
29
|
-
} from "./chunk-
|
|
29
|
+
} from "./chunk-I73M6A6N.js";
|
|
30
30
|
import {
|
|
31
31
|
CliCircuitBreaker,
|
|
32
32
|
DEFAULT_CIRCUIT_BREAKER_CONFIG,
|
|
33
33
|
getCliCircuitBreakerSnapshot,
|
|
34
34
|
getDefaultCliCircuitBreakerRegistry
|
|
35
|
-
} from "./chunk-
|
|
35
|
+
} from "./chunk-HA4PGGHG.js";
|
|
36
36
|
import {
|
|
37
37
|
CLI_SUBPROCESS_TIMEOUTS,
|
|
38
38
|
CLI_TIMEOUTS,
|
|
@@ -75,7 +75,7 @@ import {
|
|
|
75
75
|
resolveCliModelName,
|
|
76
76
|
resolveRetryAfterMs,
|
|
77
77
|
retryAfterMsFromContext
|
|
78
|
-
} from "./chunk-
|
|
78
|
+
} from "./chunk-TWL6LR65.js";
|
|
79
79
|
import {
|
|
80
80
|
parseBoolValue
|
|
81
81
|
} from "./chunk-BTYRPZON.js";
|
|
@@ -2438,7 +2438,7 @@ var LOGIN_HINTS = {
|
|
|
2438
2438
|
gemini: "gemini",
|
|
2439
2439
|
opencode: "opencode auth login"
|
|
2440
2440
|
};
|
|
2441
|
-
var
|
|
2441
|
+
var AUTH_FAILURE_PATTERNS = [
|
|
2442
2442
|
/not logged in/i,
|
|
2443
2443
|
/please run \/?login/i,
|
|
2444
2444
|
/authentication (?:required|expired|failed)/i,
|
|
@@ -2460,12 +2460,20 @@ var NOT_AUTH_PATTERNS = [
|
|
|
2460
2460
|
/refresh token .*already used/i,
|
|
2461
2461
|
/could not be refreshed/i,
|
|
2462
2462
|
/log ?out and sign in/i,
|
|
2463
|
-
/sign in again/i
|
|
2463
|
+
/sign in again/i,
|
|
2464
|
+
// #6269: the gemini/agy binary's OAuth-personal tier was discontinued; it
|
|
2465
|
+
// writes "Error authenticating: IneligibleTierError: This client is no
|
|
2466
|
+
// longer supported…" to stderr and may still exit 0 with an EMPTY answer.
|
|
2467
|
+
// Neither word matched any pattern above, so the seat was retried as a
|
|
2468
|
+
// parse failure for the whole panel budget instead of falling over.
|
|
2469
|
+
/error authenticating/i,
|
|
2470
|
+
/ineligible ?tier/i
|
|
2464
2471
|
];
|
|
2472
|
+
function isAuthFailureText(text) {
|
|
2473
|
+
return AUTH_FAILURE_PATTERNS.some((re) => re.test(text));
|
|
2474
|
+
}
|
|
2465
2475
|
function classifyMessage(message) {
|
|
2466
|
-
|
|
2467
|
-
if (re.test(message)) return { code: "NOT_AUTHENTICATED", auth: true };
|
|
2468
|
-
}
|
|
2476
|
+
if (isAuthFailureText(message)) return { code: "NOT_AUTHENTICATED", auth: true };
|
|
2469
2477
|
return { code: "EXECUTION_ERROR", auth: false };
|
|
2470
2478
|
}
|
|
2471
2479
|
function resolveCliName(cliName) {
|
|
@@ -2584,8 +2592,12 @@ function classifyStderrError(stderr) {
|
|
|
2584
2592
|
if (STDERR_CONNECTION_PATTERNS.some((p) => lower.includes(p))) return "CONNECTION_ERROR";
|
|
2585
2593
|
if (isRateLimitText(stderr)) return "RATE_LIMITED";
|
|
2586
2594
|
if (isTimeoutText(stderr)) return "TIMEOUT";
|
|
2595
|
+
if (isAuthFailureText(stderr)) return "NOT_AUTHENTICATED";
|
|
2587
2596
|
return "EXECUTION_ERROR";
|
|
2588
2597
|
}
|
|
2598
|
+
function firstStderrLine(stderr) {
|
|
2599
|
+
return stderr.split("\n").find((line) => line.trim() !== "")?.trim() ?? "";
|
|
2600
|
+
}
|
|
2589
2601
|
var subprocessLogger = createLogger({ component: "subprocess-adapter" });
|
|
2590
2602
|
var MAX_RESPONSE_STDERR_CHARS = 8e3;
|
|
2591
2603
|
function successStderrField(stderr) {
|
|
@@ -2951,14 +2963,12 @@ var SubprocessCliAdapter = class extends BaseCliAdapter {
|
|
|
2951
2963
|
*/
|
|
2952
2964
|
handleSubprocessOutput(stdout, stderr, startTime) {
|
|
2953
2965
|
if (stderr !== "" && stdout === "") {
|
|
2954
|
-
return err(this.createError(
|
|
2966
|
+
return err(this.createError(classifyStderrError(stderr), stderr));
|
|
2955
2967
|
}
|
|
2956
2968
|
const text = this.parser.extractResponse(stdout);
|
|
2957
|
-
if (text === null)
|
|
2958
|
-
|
|
2959
|
-
|
|
2960
|
-
return this.handleUnparseableOutput(stdout, stderr, startTime);
|
|
2961
|
-
}
|
|
2969
|
+
if (text === null) return this.handleNoAnswer(stdout, stderr, startTime);
|
|
2970
|
+
const authFailure = this.classifyEmptyAnswer(text, stderr);
|
|
2971
|
+
if (authFailure !== null) return authFailure;
|
|
2962
2972
|
const usage = this.parser.extractUsage(stdout);
|
|
2963
2973
|
const sessionId = this.parser.extractSessionId(stdout);
|
|
2964
2974
|
const costUsd = this.parser.extractCostUsd?.(stdout) ?? null;
|
|
@@ -2972,6 +2982,31 @@ var SubprocessCliAdapter = class extends BaseCliAdapter {
|
|
|
2972
2982
|
})
|
|
2973
2983
|
);
|
|
2974
2984
|
}
|
|
2985
|
+
/**
|
|
2986
|
+
* The parser found no usable content. An error-only stream (e.g. OpenCode
|
|
2987
|
+
* NDJSON `{"type":"error"}`) surfaced an `errorMessage`: classify it before
|
|
2988
|
+
* the generic PARSE_ERROR path, which would mask the real cause.
|
|
2989
|
+
*/
|
|
2990
|
+
handleNoAnswer(stdout, stderr, startTime) {
|
|
2991
|
+
const errorOnly = this.classifyErrorOnlyStream(stdout);
|
|
2992
|
+
if (errorOnly !== null) return errorOnly;
|
|
2993
|
+
return this.handleUnparseableOutput(stdout, stderr, startTime);
|
|
2994
|
+
}
|
|
2995
|
+
/**
|
|
2996
|
+
* #6269: a well-formed envelope carrying NO answer while stderr names a
|
|
2997
|
+
* credential failure is that failure, not a completion. `agy` exits 0 with
|
|
2998
|
+
* `{"status":"SUCCESS","response":""}` and "Error authenticating: …" on
|
|
2999
|
+
* stderr; handing "" downstream had the vote path parse it (and retry the
|
|
3000
|
+
* parse) for the whole panel budget. Returns `null` — no reclassification —
|
|
3001
|
+
* for a non-empty answer, and for an empty answer with stderr that names no
|
|
3002
|
+
* auth failure: empty stderr is NOT evidence, so that case still flows
|
|
3003
|
+
* through as the empty answer it is.
|
|
3004
|
+
*/
|
|
3005
|
+
classifyEmptyAnswer(text, stderr) {
|
|
3006
|
+
if (text.trim() !== "" || !isAuthFailureText(stderr)) return null;
|
|
3007
|
+
const msg = `${this.name}: ${firstStderrLine(stderr)}`;
|
|
3008
|
+
return err(this.createError("NOT_AUTHENTICATED", msg));
|
|
3009
|
+
}
|
|
2975
3010
|
/**
|
|
2976
3011
|
* Classify an error-only stream — one where the parser surfaced an
|
|
2977
3012
|
* `errorMessage` but no usable content (so `extractResponse` returned null).
|
|
@@ -5176,6 +5211,8 @@ export {
|
|
|
5176
5211
|
BaseCliAdapter,
|
|
5177
5212
|
NEXUS_SUBPROCESS_DEPTH_ENV,
|
|
5178
5213
|
readSubprocessDepth,
|
|
5214
|
+
sanitizeOutput,
|
|
5215
|
+
isAuthFailureText,
|
|
5179
5216
|
authRemediation,
|
|
5180
5217
|
classifyExtractedError,
|
|
5181
5218
|
SubprocessCliAdapter,
|
|
@@ -5211,4 +5248,4 @@ export {
|
|
|
5211
5248
|
SdkAdapter,
|
|
5212
5249
|
createAutoAdapter
|
|
5213
5250
|
};
|
|
5214
|
-
//# sourceMappingURL=chunk-
|
|
5251
|
+
//# sourceMappingURL=chunk-6WIEJNJE.js.map
|