nexus-agents 8.88.0 → 8.88.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/{chunk-GMAA62YN.js → chunk-3XHPLLZO.js} +7 -7
- package/dist/{chunk-UU2GS25J.js → chunk-AHB3TVNL.js} +3 -3
- package/dist/{chunk-3HRKK3TB.js → chunk-K2FIPT4Z.js} +2 -2
- package/dist/{chunk-67OZBQA6.js → chunk-KK3PY5SO.js} +2 -2
- package/dist/{chunk-TUGETJYE.js → chunk-SIDFUTGU.js} +2 -2
- package/dist/{chunk-C3ZXAGKS.js → chunk-YADX2T3Y.js} +3 -3
- package/dist/cli.js +96 -31
- package/dist/cli.js.map +1 -1
- package/dist/{consensus-vote-NQ7EXVJX.js → consensus-vote-BP6EMIHB.js} +4 -4
- package/dist/{improvement-review-2KWRZHI3.js → improvement-review-UAXOYQLC.js} +4 -4
- package/dist/index.js +6 -6
- package/dist/{setup-data-dir-5N43EHFC.js → setup-data-dir-TT6LWQNJ.js} +3 -3
- package/package.json +1 -1
- /package/dist/{chunk-GMAA62YN.js.map → chunk-3XHPLLZO.js.map} +0 -0
- /package/dist/{chunk-UU2GS25J.js.map → chunk-AHB3TVNL.js.map} +0 -0
- /package/dist/{chunk-3HRKK3TB.js.map → chunk-K2FIPT4Z.js.map} +0 -0
- /package/dist/{chunk-67OZBQA6.js.map → chunk-KK3PY5SO.js.map} +0 -0
- /package/dist/{chunk-TUGETJYE.js.map → chunk-SIDFUTGU.js.map} +0 -0
- /package/dist/{chunk-C3ZXAGKS.js.map → chunk-YADX2T3Y.js.map} +0 -0
- /package/dist/{consensus-vote-NQ7EXVJX.js.map → consensus-vote-BP6EMIHB.js.map} +0 -0
- /package/dist/{improvement-review-2KWRZHI3.js.map → improvement-review-UAXOYQLC.js.map} +0 -0
- /package/dist/{setup-data-dir-5N43EHFC.js.map → setup-data-dir-TT6LWQNJ.js.map} +0 -0
|
@@ -21,7 +21,7 @@ import {
|
|
|
21
21
|
import {
|
|
22
22
|
DEFAULT_TASK_TTL_MS,
|
|
23
23
|
clampTaskTtl
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-YADX2T3Y.js";
|
|
25
25
|
import {
|
|
26
26
|
executeExpert
|
|
27
27
|
} from "./chunk-CII3XR4K.js";
|
|
@@ -72,7 +72,7 @@ import {
|
|
|
72
72
|
updateStage,
|
|
73
73
|
withWarnings,
|
|
74
74
|
writeJobCancelled
|
|
75
|
-
} from "./chunk-
|
|
75
|
+
} from "./chunk-AHB3TVNL.js";
|
|
76
76
|
import {
|
|
77
77
|
allOf,
|
|
78
78
|
anyOf
|
|
@@ -95,7 +95,7 @@ import {
|
|
|
95
95
|
} from "./chunk-PEPOVKYR.js";
|
|
96
96
|
import {
|
|
97
97
|
withPrerequisite
|
|
98
|
-
} from "./chunk-
|
|
98
|
+
} from "./chunk-SIDFUTGU.js";
|
|
99
99
|
import {
|
|
100
100
|
NOOP_NOTIFIER,
|
|
101
101
|
RateLimiter,
|
|
@@ -120,7 +120,7 @@ import {
|
|
|
120
120
|
toolSuccessStructured,
|
|
121
121
|
withProgressHeartbeat,
|
|
122
122
|
wrapToolWithTimeout
|
|
123
|
-
} from "./chunk-
|
|
123
|
+
} from "./chunk-KK3PY5SO.js";
|
|
124
124
|
import {
|
|
125
125
|
EventTopics,
|
|
126
126
|
UNRESOLVED_MODEL_ID,
|
|
@@ -46153,7 +46153,7 @@ function buildVotingInput(plan, config) {
|
|
|
46153
46153
|
}
|
|
46154
46154
|
async function executeSingleVote(plan, config, log) {
|
|
46155
46155
|
try {
|
|
46156
|
-
const { executeVoting } = await import("./consensus-vote-
|
|
46156
|
+
const { executeVoting } = await import("./consensus-vote-BP6EMIHB.js");
|
|
46157
46157
|
const input = buildVotingInput(plan, config);
|
|
46158
46158
|
const result = await executeVoting(input, log);
|
|
46159
46159
|
return parseVotingResult(result);
|
|
@@ -47096,7 +47096,7 @@ function createVoteStage({ config, startStage }) {
|
|
|
47096
47096
|
const strategy = config.votingStrategy ?? "higher_order";
|
|
47097
47097
|
await postProgress(config, "Vote", `Running consensus with ${strategy} strategy...`);
|
|
47098
47098
|
try {
|
|
47099
|
-
const { executeVoting } = await import("./consensus-vote-
|
|
47099
|
+
const { executeVoting } = await import("./consensus-vote-BP6EMIHB.js");
|
|
47100
47100
|
const votingResult = await executeVoting(
|
|
47101
47101
|
{
|
|
47102
47102
|
proposal: buildVoteProposal(plan, research),
|
|
@@ -56546,4 +56546,4 @@ export {
|
|
|
56546
56546
|
startPipelineEventBridge,
|
|
56547
56547
|
shutdownPipelineEventBridge
|
|
56548
56548
|
};
|
|
56549
|
-
//# sourceMappingURL=chunk-
|
|
56549
|
+
//# sourceMappingURL=chunk-3XHPLLZO.js.map
|
|
@@ -25,10 +25,10 @@ import {
|
|
|
25
25
|
toolSuccessStructured,
|
|
26
26
|
withProgressHeartbeat,
|
|
27
27
|
wrapToolWithTimeout
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-KK3PY5SO.js";
|
|
29
29
|
import {
|
|
30
30
|
VERSION
|
|
31
|
-
} from "./chunk-
|
|
31
|
+
} from "./chunk-K2FIPT4Z.js";
|
|
32
32
|
import {
|
|
33
33
|
UNRESOLVED_MODEL_ID,
|
|
34
34
|
assessPanelIndependence,
|
|
@@ -9544,4 +9544,4 @@ export {
|
|
|
9544
9544
|
CONSENSUS_VOTE_TOOL_SCHEMA,
|
|
9545
9545
|
registerConsensusVoteTool
|
|
9546
9546
|
};
|
|
9547
|
-
//# sourceMappingURL=chunk-
|
|
9547
|
+
//# sourceMappingURL=chunk-AHB3TVNL.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
// src/version.ts
|
|
2
2
|
import semver from "semver";
|
|
3
|
-
var VERSION = true ? "8.88.
|
|
3
|
+
var VERSION = true ? "8.88.1" : "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-K2FIPT4Z.js.map
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
VERSION
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-K2FIPT4Z.js";
|
|
4
4
|
import {
|
|
5
5
|
sanitizeErrorDetails
|
|
6
6
|
} from "./chunk-2NDA4DHW.js";
|
|
@@ -2342,4 +2342,4 @@ export {
|
|
|
2342
2342
|
DEFAULT_CONSENSUS_CONFIG,
|
|
2343
2343
|
ConsensusMetricsSchema
|
|
2344
2344
|
};
|
|
2345
|
-
//# sourceMappingURL=chunk-
|
|
2345
|
+
//# sourceMappingURL=chunk-KK3PY5SO.js.map
|
|
@@ -7,7 +7,7 @@ import {
|
|
|
7
7
|
toolStructuredError,
|
|
8
8
|
toolSuccessStructured,
|
|
9
9
|
wrapToolWithTimeout
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-KK3PY5SO.js";
|
|
11
11
|
import {
|
|
12
12
|
JsonlStore,
|
|
13
13
|
SECURITY_KEYWORDS,
|
|
@@ -2282,4 +2282,4 @@ export {
|
|
|
2282
2282
|
runImprovementReview,
|
|
2283
2283
|
registerImprovementReviewTool
|
|
2284
2284
|
};
|
|
2285
|
-
//# sourceMappingURL=chunk-
|
|
2285
|
+
//# sourceMappingURL=chunk-SIDFUTGU.js.map
|
|
@@ -12,7 +12,7 @@ import {
|
|
|
12
12
|
NODE_ENGINE_RANGE,
|
|
13
13
|
VERSION,
|
|
14
14
|
isNodeVersionSupported
|
|
15
|
-
} from "./chunk-
|
|
15
|
+
} from "./chunk-K2FIPT4Z.js";
|
|
16
16
|
import {
|
|
17
17
|
claimGlobalRegistry
|
|
18
18
|
} from "./chunk-TMM6ZN2H.js";
|
|
@@ -1401,7 +1401,7 @@ async function runDoctorFix(result) {
|
|
|
1401
1401
|
writeLine2("\u2500".repeat(40));
|
|
1402
1402
|
let fixCount = 0;
|
|
1403
1403
|
if (!result.dataDirectory.rootExists || result.dataDirectory.subdirectories.some((d) => !d.exists || !d.writable)) {
|
|
1404
|
-
const { initDataDirectories: initDataDirectories2, describeDataDirFix: describeDataDirFix2 } = await import("./setup-data-dir-
|
|
1404
|
+
const { initDataDirectories: initDataDirectories2, describeDataDirFix: describeDataDirFix2 } = await import("./setup-data-dir-TT6LWQNJ.js");
|
|
1405
1405
|
const outcome = describeDataDirFix2(initDataDirectories2());
|
|
1406
1406
|
writeLine2(outcome.line);
|
|
1407
1407
|
if (outcome.counted) fixCount++;
|
|
@@ -1503,4 +1503,4 @@ export {
|
|
|
1503
1503
|
startStdioServer,
|
|
1504
1504
|
closeServer
|
|
1505
1505
|
};
|
|
1506
|
-
//# sourceMappingURL=chunk-
|
|
1506
|
+
//# sourceMappingURL=chunk-YADX2T3Y.js.map
|
package/dist/cli.js
CHANGED
|
@@ -155,7 +155,7 @@ import {
|
|
|
155
155
|
validateNexusEnv,
|
|
156
156
|
validateWorkflow,
|
|
157
157
|
wrapInMarkdownFence
|
|
158
|
-
} from "./chunk-
|
|
158
|
+
} from "./chunk-3XHPLLZO.js";
|
|
159
159
|
import "./chunk-FDPKOY5E.js";
|
|
160
160
|
import "./chunk-4GDMHCKX.js";
|
|
161
161
|
import "./chunk-7ETWTSTB.js";
|
|
@@ -175,7 +175,7 @@ import {
|
|
|
175
175
|
doctorCommand,
|
|
176
176
|
initDataDirectories,
|
|
177
177
|
runDoctor
|
|
178
|
-
} from "./chunk-
|
|
178
|
+
} from "./chunk-YADX2T3Y.js";
|
|
179
179
|
import "./chunk-CKZQOPTD.js";
|
|
180
180
|
import {
|
|
181
181
|
shutdownExpertBridge
|
|
@@ -197,7 +197,7 @@ import {
|
|
|
197
197
|
registerConsensusVoteTool,
|
|
198
198
|
seatFallbacks,
|
|
199
199
|
toRecordDecision
|
|
200
|
-
} from "./chunk-
|
|
200
|
+
} from "./chunk-AHB3TVNL.js";
|
|
201
201
|
import {
|
|
202
202
|
buildOpenAICompatAdapters,
|
|
203
203
|
readOpenAICompatEndpoint,
|
|
@@ -239,7 +239,7 @@ import {
|
|
|
239
239
|
registerImprovementReviewTool,
|
|
240
240
|
runImprovementReview,
|
|
241
241
|
scanForSecrets
|
|
242
|
-
} from "./chunk-
|
|
242
|
+
} from "./chunk-SIDFUTGU.js";
|
|
243
243
|
import {
|
|
244
244
|
createDefaultPolicyFirewall,
|
|
245
245
|
formatPolicyRolloutMode,
|
|
@@ -249,12 +249,12 @@ import {
|
|
|
249
249
|
setGlobalPolicyFirewall,
|
|
250
250
|
setSecureHandlerAuditLogger,
|
|
251
251
|
stagePolicyFirewallForRollout
|
|
252
|
-
} from "./chunk-
|
|
252
|
+
} from "./chunk-KK3PY5SO.js";
|
|
253
253
|
import {
|
|
254
254
|
NODE_ENGINE_RANGE,
|
|
255
255
|
VERSION,
|
|
256
256
|
isNodeVersionSupported
|
|
257
|
-
} from "./chunk-
|
|
257
|
+
} from "./chunk-K2FIPT4Z.js";
|
|
258
258
|
import {
|
|
259
259
|
claimGlobalRegistry,
|
|
260
260
|
createUnifiedRegistry,
|
|
@@ -355,6 +355,7 @@ import {
|
|
|
355
355
|
CLI_SUBPROCESS_TIMEOUTS,
|
|
356
356
|
ConfigError,
|
|
357
357
|
DEFAULT_CLI,
|
|
358
|
+
DEFAULT_MODEL_PER_CLI,
|
|
358
359
|
DEFAULT_MODEL_PROFILES,
|
|
359
360
|
ErrorCode,
|
|
360
361
|
INPUT_MODALITIES,
|
|
@@ -12385,38 +12386,76 @@ function unmeasured(reason) {
|
|
|
12385
12386
|
return { status: "unmeasured", served: [], missing: [], retiring: [], reason };
|
|
12386
12387
|
}
|
|
12387
12388
|
var CHECK_NAME = "Codex Models";
|
|
12388
|
-
function
|
|
12389
|
-
const
|
|
12390
|
-
|
|
12391
|
-
|
|
12392
|
-
|
|
12393
|
-
|
|
12394
|
-
const
|
|
12395
|
-
|
|
12396
|
-
|
|
12397
|
-
|
|
12389
|
+
function evaluateRetirements(retiring, options) {
|
|
12390
|
+
const warns = [];
|
|
12391
|
+
const infoNotes = [];
|
|
12392
|
+
const upgradeTargets = [];
|
|
12393
|
+
const defaultModelName = options?.defaultModel ?? DEFAULT_MODEL_PER_CLI.codex;
|
|
12394
|
+
for (const r of retiring) {
|
|
12395
|
+
const date = r.retirementAt.slice(0, 10);
|
|
12396
|
+
const isPast = r.daysLeft < 0;
|
|
12397
|
+
const isPinned = options?.userPinnedSlug !== void 0 && options.userPinnedSlug === r.cliModelName;
|
|
12398
|
+
if (isPast) {
|
|
12399
|
+
warns.push(`${r.id} \u2192 ${r.cliModelName} retired ${date} (${String(-r.daysLeft)} day(s) ago)`);
|
|
12400
|
+
if (r.upgradeModel !== null) upgradeTargets.push(r.upgradeModel);
|
|
12401
|
+
} else if (isPinned) {
|
|
12402
|
+
warns.push(`user config pins retiring slug ${r.cliModelName} (retires ${date})`);
|
|
12403
|
+
if (r.upgradeModel !== null) upgradeTargets.push(r.upgradeModel);
|
|
12404
|
+
} else {
|
|
12405
|
+
infoNotes.push(
|
|
12406
|
+
`${r.cliModelName} retires ${date}; nexus-agents default is ${defaultModelName}`
|
|
12398
12407
|
);
|
|
12399
12408
|
}
|
|
12400
|
-
|
|
12401
|
-
|
|
12402
|
-
|
|
12403
|
-
|
|
12409
|
+
}
|
|
12410
|
+
return { warns, infoNotes, upgradeTargets };
|
|
12411
|
+
}
|
|
12412
|
+
function buildVerifyFixes(missingCount, upgradeTargets) {
|
|
12413
|
+
const fixes = [];
|
|
12414
|
+
if (missingCount > 0) {
|
|
12415
|
+
fixes.push("Update nexus-agents, or configure a supported model in nexus-agents.yaml");
|
|
12416
|
+
}
|
|
12417
|
+
if (upgradeTargets.length > 0) {
|
|
12418
|
+
const target = upgradeTargets[0];
|
|
12419
|
+
if (target !== void 0) {
|
|
12420
|
+
fixes.push(`Update nexus-agents, or set your model to ${target} in nexus-agents.yaml`);
|
|
12421
|
+
} else {
|
|
12422
|
+
fixes.push("Update nexus-agents, or configure a supported model in nexus-agents.yaml");
|
|
12404
12423
|
}
|
|
12424
|
+
}
|
|
12425
|
+
return fixes.join("; ");
|
|
12426
|
+
}
|
|
12427
|
+
function codexModelsVerifyCheck(result, options) {
|
|
12428
|
+
if (options?.isCodexInstalled === false) {
|
|
12429
|
+
return { name: CHECK_NAME, passed: true, message: "skipped: codex not installed" };
|
|
12430
|
+
}
|
|
12431
|
+
if (result.status === "unmeasured") {
|
|
12405
12432
|
return {
|
|
12406
12433
|
name: CHECK_NAME,
|
|
12407
12434
|
passed: false,
|
|
12408
12435
|
severity: "warn",
|
|
12409
|
-
message:
|
|
12410
|
-
fix:
|
|
12436
|
+
message: `unmeasured: ${result.reason ?? "codex model list unavailable"}`,
|
|
12437
|
+
fix: "Run codex once so ~/.codex/models_cache.json exists, then re-run verify"
|
|
12411
12438
|
};
|
|
12412
12439
|
}
|
|
12413
|
-
|
|
12414
|
-
|
|
12415
|
-
|
|
12416
|
-
|
|
12417
|
-
|
|
12418
|
-
|
|
12419
|
-
};
|
|
12440
|
+
const servedList = `${String(result.served.length)} codex registry slug(s) served: ${result.served.map((r) => r.cliModelName).join(", ")}`;
|
|
12441
|
+
const missingReasons = [];
|
|
12442
|
+
if (result.missing.length > 0) {
|
|
12443
|
+
const named = result.missing.map((m) => `${m.id} \u2192 ${m.cliModelName}`).join(", ");
|
|
12444
|
+
missingReasons.push(`not served by the installed codex: ${named}`);
|
|
12445
|
+
}
|
|
12446
|
+
const { warns, infoNotes, upgradeTargets } = evaluateRetirements(result.retiring, options);
|
|
12447
|
+
const allWarnings = [...missingReasons, ...warns];
|
|
12448
|
+
if (allWarnings.length > 0) {
|
|
12449
|
+
return {
|
|
12450
|
+
name: CHECK_NAME,
|
|
12451
|
+
passed: false,
|
|
12452
|
+
severity: "warn",
|
|
12453
|
+
message: `${allWarnings.join("; ")}; ${servedList}`,
|
|
12454
|
+
fix: buildVerifyFixes(result.missing.length, upgradeTargets)
|
|
12455
|
+
};
|
|
12456
|
+
}
|
|
12457
|
+
const message = infoNotes.length > 0 ? `${servedList} (${infoNotes.join("; ")})` : servedList;
|
|
12458
|
+
return { name: CHECK_NAME, passed: true, message };
|
|
12420
12459
|
}
|
|
12421
12460
|
|
|
12422
12461
|
// src/cli/verify-command.ts
|
|
@@ -12540,8 +12579,34 @@ async function checkGrammarAvailability() {
|
|
|
12540
12579
|
fix: "Reinstall without blocking scripts, or verify @ast-grep/lang-{python,go} shipped their prebuilds/ directory"
|
|
12541
12580
|
};
|
|
12542
12581
|
}
|
|
12582
|
+
function getUserPinnedCodexSlug() {
|
|
12583
|
+
try {
|
|
12584
|
+
const result = loadConfig();
|
|
12585
|
+
if (result.ok && result.value.configPath !== void 0) {
|
|
12586
|
+
const modelDefault = result.value.config.models.default;
|
|
12587
|
+
if (typeof modelDefault === "string" && modelDefault.length > 0) {
|
|
12588
|
+
return modelDefault;
|
|
12589
|
+
}
|
|
12590
|
+
}
|
|
12591
|
+
} catch {
|
|
12592
|
+
}
|
|
12593
|
+
return void 0;
|
|
12594
|
+
}
|
|
12543
12595
|
function checkCodexModelSlugs() {
|
|
12544
|
-
|
|
12596
|
+
const isInstalled = detectCliBinary("codex").installed;
|
|
12597
|
+
if (!isInstalled) {
|
|
12598
|
+
return codexModelsVerifyCheck(
|
|
12599
|
+
{ status: "pass", served: [], missing: [], retiring: [], reason: null },
|
|
12600
|
+
{ isCodexInstalled: false }
|
|
12601
|
+
);
|
|
12602
|
+
}
|
|
12603
|
+
const userPinnedSlug = getUserPinnedCodexSlug();
|
|
12604
|
+
const verifyOptions = {
|
|
12605
|
+
isCodexInstalled: true,
|
|
12606
|
+
...userPinnedSlug !== void 0 ? { userPinnedSlug } : {},
|
|
12607
|
+
defaultModel: DEFAULT_MODEL_PER_CLI.codex
|
|
12608
|
+
};
|
|
12609
|
+
return codexModelsVerifyCheck(checkCodexModels(), verifyOptions);
|
|
12545
12610
|
}
|
|
12546
12611
|
function checkDataDirs() {
|
|
12547
12612
|
const result = checkDataDirectory();
|
|
@@ -19756,7 +19821,7 @@ function startImprovementReviewScheduler(options) {
|
|
|
19756
19821
|
let running = false;
|
|
19757
19822
|
const runOnce = async () => {
|
|
19758
19823
|
try {
|
|
19759
|
-
const { runImprovementReview: runImprovementReview2, ImprovementReviewInputSchema: ImprovementReviewInputSchema2 } = await import("./improvement-review-
|
|
19824
|
+
const { runImprovementReview: runImprovementReview2, ImprovementReviewInputSchema: ImprovementReviewInputSchema2 } = await import("./improvement-review-UAXOYQLC.js");
|
|
19760
19825
|
const input = ImprovementReviewInputSchema2.parse({ fileIssues });
|
|
19761
19826
|
const result = await runImprovementReview2(input, { logger: logger22 });
|
|
19762
19827
|
logger22.info("Scheduled improvement_review complete", {
|