nexus-agents 2.29.0 → 2.29.2
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/adaptive-memory-5VP5WWTE.js +15 -0
- package/dist/chunk-5COIDGQJ.js +1585 -0
- package/dist/chunk-5COIDGQJ.js.map +1 -0
- package/dist/{chunk-HWDBNDUX.js → chunk-63AJLNKU.js} +2 -2
- package/dist/chunk-66NNHMVB.js +195 -0
- package/dist/chunk-66NNHMVB.js.map +1 -0
- package/dist/chunk-AP2FD37C.js +127 -0
- package/dist/chunk-AP2FD37C.js.map +1 -0
- package/dist/chunk-BC3M4VLP.js +359 -0
- package/dist/chunk-BC3M4VLP.js.map +1 -0
- package/dist/chunk-BQ4YXGGQ.js +127 -0
- package/dist/chunk-BQ4YXGGQ.js.map +1 -0
- package/dist/{chunk-ZBZJHXRT.js → chunk-CW2Z773T.js} +19 -347
- package/dist/chunk-CW2Z773T.js.map +1 -0
- package/dist/chunk-DDQGAVQA.js +944 -0
- package/dist/chunk-DDQGAVQA.js.map +1 -0
- package/dist/chunk-ED6VQWNG.js +63 -0
- package/dist/chunk-ED6VQWNG.js.map +1 -0
- package/dist/{chunk-7F6HYUIY.js → chunk-EPMBGZQX.js} +16 -97
- package/dist/chunk-EPMBGZQX.js.map +1 -0
- package/dist/chunk-GX436VRU.js +931 -0
- package/dist/chunk-GX436VRU.js.map +1 -0
- package/dist/{chunk-IMWYKX4H.js → chunk-HSOPD265.js} +444 -399
- package/dist/chunk-HSOPD265.js.map +1 -0
- package/dist/{chunk-S3BKWNST.js → chunk-J245RJGW.js} +680 -1436
- package/dist/chunk-J245RJGW.js.map +1 -0
- package/dist/{chunk-I6YDS23R.js → chunk-KQIDTE52.js} +2 -2
- package/dist/{chunk-POBO4G2P.js → chunk-LDIN2PLV.js} +250 -110
- package/dist/chunk-LDIN2PLV.js.map +1 -0
- package/dist/{chunk-KGDG6PWZ.js → chunk-LKDHAJJB.js} +2 -2
- package/dist/{chunk-T7PU3NPQ.js → chunk-NKGTEJYU.js} +7 -5
- package/dist/{chunk-T7PU3NPQ.js.map → chunk-NKGTEJYU.js.map} +1 -1
- package/dist/chunk-QGODFK36.js +122 -0
- package/dist/chunk-QGODFK36.js.map +1 -0
- package/dist/{chunk-DAMRMAM2.js → chunk-QSNAFOE6.js} +12369 -14499
- package/dist/chunk-QSNAFOE6.js.map +1 -0
- package/dist/chunk-TL2GJMJ5.js +700 -0
- package/dist/chunk-TL2GJMJ5.js.map +1 -0
- package/dist/{chunk-WSK4VSXP.js → chunk-V6MSPUQF.js} +2 -2
- package/dist/chunk-VZ2YOQWU.js +90 -0
- package/dist/chunk-VZ2YOQWU.js.map +1 -0
- package/dist/{chunk-5VZLXMO7.js → chunk-WSYJN7BI.js} +7 -6
- package/dist/chunk-WSYJN7BI.js.map +1 -0
- package/dist/chunk-Y477EGI4.js +356 -0
- package/dist/chunk-Y477EGI4.js.map +1 -0
- package/dist/{chunk-HH5LVGEE.js → chunk-Z4OZ25VS.js} +4 -4
- package/dist/cli-circuit-breaker-6EJO3PPU.js +13 -0
- package/dist/cli.js +123 -68
- package/dist/cli.js.map +1 -1
- package/dist/codebase-search-CZUA37RU.js +9 -0
- package/dist/{composite-router-YPRWVTRB.js → composite-router-JD7URTC2.js} +2 -2
- package/dist/{consensus-vote-DBE6RNZG.js → consensus-vote-COW34Q2Y.js} +7 -5
- package/dist/{dist-7PQR2BQB.js → dist-CV74KUT7.js} +1302 -805
- package/dist/dist-CV74KUT7.js.map +1 -0
- package/dist/{doctor-deep-AWE7SRU6.js → doctor-deep-4A4X5X6U.js} +3 -3
- package/dist/expert-bridge-J36C7VES.js +10 -0
- package/dist/{expert-config-FHNBQRX2.js → expert-config-MQ5OJE3U.js} +2 -2
- package/dist/{factory-O5C7ZBZO.js → factory-4Z4RSUYE.js} +5 -4
- package/dist/{factory-PCHGQ3ZG.js → factory-NHORX63J.js} +4 -3
- package/dist/index.d.ts +507 -42
- package/dist/index.js +331 -78
- package/dist/index.js.map +1 -1
- package/dist/issue-triage-TIG3RKXF.js +15 -0
- package/dist/{mcp-config-AUZQPUBY.js → mcp-config-ETY7GFGW.js} +3 -3
- package/dist/mobimem-5PAAMVFR.js +13 -0
- package/dist/mobimem-5PAAMVFR.js.map +1 -0
- package/dist/repo-analyze-HWMXSK5C.js +24 -0
- package/dist/repo-analyze-HWMXSK5C.js.map +1 -0
- package/dist/repo-security-plan-KQB3ZJTE.js +17 -0
- package/dist/repo-security-plan-KQB3ZJTE.js.map +1 -0
- package/dist/research-helpers-synthesize-ZMERZZ5B.js +10 -0
- package/dist/research-helpers-synthesize-ZMERZZ5B.js.map +1 -0
- package/dist/{routing-memory-QY3XMU2R.js → routing-memory-3ES3OHLM.js} +2 -2
- package/dist/routing-memory-3ES3OHLM.js.map +1 -0
- package/dist/{session-memory-3MBCE5KS.js → session-memory-E2OE2CYR.js} +3 -3
- package/dist/session-memory-E2OE2CYR.js.map +1 -0
- package/dist/{setup-command-IQ4MD3FT.js → setup-command-CMCQRBJF.js} +7 -6
- package/dist/setup-command-CMCQRBJF.js.map +1 -0
- package/dist/{setup-config-5YUPLDXF.js → setup-config-KITOPV7V.js} +3 -3
- package/dist/setup-config-KITOPV7V.js.map +1 -0
- package/dist/shared-memory-AEO2HJLC.js +8 -0
- package/dist/shared-memory-AEO2HJLC.js.map +1 -0
- package/dist/symbol-extractor-UEBANFSN.js +10 -0
- package/dist/symbol-extractor-UEBANFSN.js.map +1 -0
- package/dist/{weather-report-CC2C4KAX.js → weather-report-KUSVNXDZ.js} +2 -2
- package/dist/weather-report-KUSVNXDZ.js.map +1 -0
- package/package.json +14 -13
- package/dist/chunk-5VZLXMO7.js.map +0 -1
- package/dist/chunk-7F6HYUIY.js.map +0 -1
- package/dist/chunk-DAMRMAM2.js.map +0 -1
- package/dist/chunk-IMWYKX4H.js.map +0 -1
- package/dist/chunk-POBO4G2P.js.map +0 -1
- package/dist/chunk-S3BKWNST.js.map +0 -1
- package/dist/chunk-ZBZJHXRT.js.map +0 -1
- package/dist/dist-7PQR2BQB.js.map +0 -1
- /package/dist/{composite-router-YPRWVTRB.js.map → adaptive-memory-5VP5WWTE.js.map} +0 -0
- /package/dist/{chunk-HWDBNDUX.js.map → chunk-63AJLNKU.js.map} +0 -0
- /package/dist/{chunk-I6YDS23R.js.map → chunk-KQIDTE52.js.map} +0 -0
- /package/dist/{chunk-KGDG6PWZ.js.map → chunk-LKDHAJJB.js.map} +0 -0
- /package/dist/{chunk-WSK4VSXP.js.map → chunk-V6MSPUQF.js.map} +0 -0
- /package/dist/{chunk-HH5LVGEE.js.map → chunk-Z4OZ25VS.js.map} +0 -0
- /package/dist/{consensus-vote-DBE6RNZG.js.map → cli-circuit-breaker-6EJO3PPU.js.map} +0 -0
- /package/dist/{doctor-deep-AWE7SRU6.js.map → codebase-search-CZUA37RU.js.map} +0 -0
- /package/dist/{expert-config-FHNBQRX2.js.map → composite-router-JD7URTC2.js.map} +0 -0
- /package/dist/{factory-O5C7ZBZO.js.map → consensus-vote-COW34Q2Y.js.map} +0 -0
- /package/dist/{factory-PCHGQ3ZG.js.map → doctor-deep-4A4X5X6U.js.map} +0 -0
- /package/dist/{mcp-config-AUZQPUBY.js.map → expert-bridge-J36C7VES.js.map} +0 -0
- /package/dist/{routing-memory-QY3XMU2R.js.map → expert-config-MQ5OJE3U.js.map} +0 -0
- /package/dist/{session-memory-3MBCE5KS.js.map → factory-4Z4RSUYE.js.map} +0 -0
- /package/dist/{setup-command-IQ4MD3FT.js.map → factory-NHORX63J.js.map} +0 -0
- /package/dist/{setup-config-5YUPLDXF.js.map → issue-triage-TIG3RKXF.js.map} +0 -0
- /package/dist/{weather-report-CC2C4KAX.js.map → mcp-config-ETY7GFGW.js.map} +0 -0
package/dist/cli.js
CHANGED
|
@@ -1,9 +1,4 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import "./chunk-HWDBNDUX.js";
|
|
3
|
-
import {
|
|
4
|
-
setupCommandAsync
|
|
5
|
-
} from "./chunk-HH5LVGEE.js";
|
|
6
|
-
import "./chunk-WSK4VSXP.js";
|
|
7
2
|
import {
|
|
8
3
|
calculateConsensus,
|
|
9
4
|
countByCategory,
|
|
@@ -17,6 +12,11 @@ import {
|
|
|
17
12
|
parseFindings,
|
|
18
13
|
sumFindings
|
|
19
14
|
} from "./chunk-6E3NMMEY.js";
|
|
15
|
+
import "./chunk-63AJLNKU.js";
|
|
16
|
+
import {
|
|
17
|
+
setupCommandAsync
|
|
18
|
+
} from "./chunk-Z4OZ25VS.js";
|
|
19
|
+
import "./chunk-V6MSPUQF.js";
|
|
20
20
|
import {
|
|
21
21
|
AuthHandler,
|
|
22
22
|
CustomExpertDefinitionSchema,
|
|
@@ -38,7 +38,6 @@ import {
|
|
|
38
38
|
adaptRoutingConfig,
|
|
39
39
|
addResearchPaper,
|
|
40
40
|
analyzeTools,
|
|
41
|
-
classifyTrust,
|
|
42
41
|
createAgentStages,
|
|
43
42
|
createAnnotationsProxy,
|
|
44
43
|
createAuditLogger,
|
|
@@ -48,7 +47,6 @@ import {
|
|
|
48
47
|
createEventBusBridge,
|
|
49
48
|
createExecutor,
|
|
50
49
|
createFeedbackIntegration,
|
|
51
|
-
createFullGitHubProvider,
|
|
52
50
|
createGatewayServerProxy,
|
|
53
51
|
createHarnessExecutor,
|
|
54
52
|
createLearnablePolicy,
|
|
@@ -73,7 +71,6 @@ import {
|
|
|
73
71
|
discoverOpenAlex,
|
|
74
72
|
discoverPapersWithCode,
|
|
75
73
|
discoverSemanticScholar,
|
|
76
|
-
evaluatePolicy2 as evaluatePolicy,
|
|
77
74
|
findOverlaps,
|
|
78
75
|
flushPipelineMemory,
|
|
79
76
|
formatOverlapResult,
|
|
@@ -108,11 +105,8 @@ import {
|
|
|
108
105
|
loadAllExternalPacks,
|
|
109
106
|
loadConfig,
|
|
110
107
|
loadDataset,
|
|
111
|
-
loadPapersRegistry,
|
|
112
108
|
loadSourcesRegistry,
|
|
113
|
-
loadTechniquesRegistry,
|
|
114
109
|
loadWorkflowFile,
|
|
115
|
-
parsePRUrl,
|
|
116
110
|
rankDiscoveredItems,
|
|
117
111
|
readStoredToken,
|
|
118
112
|
registerCreateExpertTool,
|
|
@@ -127,6 +121,7 @@ import {
|
|
|
127
121
|
registerMemoryStatsTool,
|
|
128
122
|
registerMemoryWriteTool,
|
|
129
123
|
registerOrchestrateTool,
|
|
124
|
+
registerPipelineTool,
|
|
130
125
|
registerPrompts,
|
|
131
126
|
registerQueryTraceTool,
|
|
132
127
|
registerRegistryImportTool,
|
|
@@ -148,29 +143,23 @@ import {
|
|
|
148
143
|
resolveV2Config,
|
|
149
144
|
runBenchmarkInstances,
|
|
150
145
|
runDevPipeline,
|
|
151
|
-
sanitizeInput,
|
|
152
|
-
savePapersRegistry,
|
|
153
146
|
saveSourcesRegistry,
|
|
154
147
|
setGlobalToolRateLimiterFactory,
|
|
155
|
-
synthesizeResearch,
|
|
156
148
|
validateArgs,
|
|
157
149
|
validateCommand,
|
|
158
150
|
validateNexusEnv,
|
|
159
151
|
validateWorkflow,
|
|
160
152
|
wrapInMarkdownFence
|
|
161
|
-
} from "./chunk-
|
|
153
|
+
} from "./chunk-QSNAFOE6.js";
|
|
162
154
|
import {
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
runDoctor
|
|
170
|
-
} from "./chunk-5VZLXMO7.js";
|
|
155
|
+
resolveToken
|
|
156
|
+
} from "./chunk-VZ2YOQWU.js";
|
|
157
|
+
import {
|
|
158
|
+
CATEGORY_DISPLAY_NAMES,
|
|
159
|
+
DEFAULT_PR_REVIEW_CONFIG
|
|
160
|
+
} from "./chunk-X2M7OF27.js";
|
|
171
161
|
import {
|
|
172
162
|
DEFAULT_VOTE_TIMEOUT_MS,
|
|
173
|
-
MemoryError,
|
|
174
163
|
THRESHOLD_MAP,
|
|
175
164
|
VOTER_ROLES,
|
|
176
165
|
collectRealVotes,
|
|
@@ -180,26 +169,56 @@ import {
|
|
|
180
169
|
registerConsensusVoteTool,
|
|
181
170
|
shutdownToolMemory,
|
|
182
171
|
validateTimeout
|
|
183
|
-
} from "./chunk-
|
|
172
|
+
} from "./chunk-J245RJGW.js";
|
|
173
|
+
import {
|
|
174
|
+
loadPapersRegistry,
|
|
175
|
+
loadTechniquesRegistry,
|
|
176
|
+
savePapersRegistry,
|
|
177
|
+
synthesizeResearch
|
|
178
|
+
} from "./chunk-GX436VRU.js";
|
|
179
|
+
import {
|
|
180
|
+
classifyTrust,
|
|
181
|
+
createFullGitHubProvider,
|
|
182
|
+
evaluatePolicy,
|
|
183
|
+
parsePRUrl,
|
|
184
|
+
sanitizeInput
|
|
185
|
+
} from "./chunk-5COIDGQJ.js";
|
|
186
|
+
import "./chunk-EPMBGZQX.js";
|
|
187
|
+
import "./chunk-TL2GJMJ5.js";
|
|
188
|
+
import "./chunk-BC3M4VLP.js";
|
|
189
|
+
import "./chunk-AP2FD37C.js";
|
|
190
|
+
import "./chunk-BQ4YXGGQ.js";
|
|
191
|
+
import "./chunk-ED6VQWNG.js";
|
|
192
|
+
import {
|
|
193
|
+
BUILT_IN_EXPERTS
|
|
194
|
+
} from "./chunk-LDIN2PLV.js";
|
|
195
|
+
import {
|
|
196
|
+
VERSION,
|
|
197
|
+
closeServer,
|
|
198
|
+
connectTransport,
|
|
199
|
+
createServer,
|
|
200
|
+
doctorCommand,
|
|
201
|
+
initDataDirectories,
|
|
202
|
+
runDoctor
|
|
203
|
+
} from "./chunk-WSYJN7BI.js";
|
|
204
|
+
import "./chunk-KQIDTE52.js";
|
|
205
|
+
import {
|
|
206
|
+
MemoryError
|
|
207
|
+
} from "./chunk-DDQGAVQA.js";
|
|
184
208
|
import {
|
|
185
209
|
capitalize,
|
|
186
210
|
capitalizeKebab,
|
|
187
211
|
truncateSentence
|
|
188
212
|
} from "./chunk-633WH2ML.js";
|
|
189
|
-
import "./chunk-
|
|
190
|
-
import "./chunk-
|
|
191
|
-
import
|
|
192
|
-
resolveToken
|
|
193
|
-
} from "./chunk-7F6HYUIY.js";
|
|
194
|
-
import {
|
|
195
|
-
CATEGORY_DISPLAY_NAMES,
|
|
196
|
-
DEFAULT_PR_REVIEW_CONFIG
|
|
197
|
-
} from "./chunk-X2M7OF27.js";
|
|
213
|
+
import "./chunk-LKDHAJJB.js";
|
|
214
|
+
import "./chunk-66NNHMVB.js";
|
|
215
|
+
import "./chunk-QGODFK36.js";
|
|
198
216
|
import {
|
|
199
217
|
createAllAdapters,
|
|
200
218
|
getAvailableClis,
|
|
201
219
|
isRecord
|
|
202
|
-
} from "./chunk-
|
|
220
|
+
} from "./chunk-CW2Z773T.js";
|
|
221
|
+
import "./chunk-Y477EGI4.js";
|
|
203
222
|
import {
|
|
204
223
|
API_TIMEOUTS,
|
|
205
224
|
AgentCapability,
|
|
@@ -260,11 +279,8 @@ import {
|
|
|
260
279
|
toError,
|
|
261
280
|
writeEmptyLine,
|
|
262
281
|
writeLine
|
|
263
|
-
} from "./chunk-
|
|
282
|
+
} from "./chunk-HSOPD265.js";
|
|
264
283
|
import "./chunk-CLYZ7FWP.js";
|
|
265
|
-
import {
|
|
266
|
-
BUILT_IN_EXPERTS
|
|
267
|
-
} from "./chunk-POBO4G2P.js";
|
|
268
284
|
import "./chunk-UP2VWCW5.js";
|
|
269
285
|
|
|
270
286
|
// src/cli.ts
|
|
@@ -437,7 +453,9 @@ logging:
|
|
|
437
453
|
format: json
|
|
438
454
|
|
|
439
455
|
# Destination: stdout, stderr, file
|
|
440
|
-
|
|
456
|
+
# NOTE: stdout is unsafe when running as an MCP stdio server (corrupts
|
|
457
|
+
# JSON-RPC frames). Keep stderr unless you have a specific need.
|
|
458
|
+
destination: stderr
|
|
441
459
|
|
|
442
460
|
# Log file path (required if destination is 'file')
|
|
443
461
|
# filePath: ./logs/nexus-agents.log
|
|
@@ -14137,10 +14155,10 @@ var CATEGORY_ORDER = [
|
|
|
14137
14155
|
];
|
|
14138
14156
|
|
|
14139
14157
|
// src/cli/release-notes-helpers.ts
|
|
14140
|
-
import {
|
|
14158
|
+
import { execFileSync } from "child_process";
|
|
14141
14159
|
function getLatestTag() {
|
|
14142
14160
|
try {
|
|
14143
|
-
const result =
|
|
14161
|
+
const result = execFileSync("git", ["describe", "--tags", "--abbrev=0"], {
|
|
14144
14162
|
encoding: "utf-8",
|
|
14145
14163
|
stdio: ["pipe", "pipe", "pipe"],
|
|
14146
14164
|
timeout: CLI_SUBPROCESS_TIMEOUTS.ghCommandMs
|
|
@@ -14151,8 +14169,12 @@ function getLatestTag() {
|
|
|
14151
14169
|
}
|
|
14152
14170
|
}
|
|
14153
14171
|
function getCommitsBetween(from, to = "HEAD") {
|
|
14172
|
+
const SAFE_REF = /^[a-zA-Z0-9._\-/~^]+$/;
|
|
14173
|
+
if (!SAFE_REF.test(from) || !SAFE_REF.test(to)) {
|
|
14174
|
+
return [];
|
|
14175
|
+
}
|
|
14154
14176
|
try {
|
|
14155
|
-
const result =
|
|
14177
|
+
const result = execFileSync("git", ["log", `${from}..${to}`, "--oneline", "--format=%h %s"], {
|
|
14156
14178
|
encoding: "utf-8",
|
|
14157
14179
|
stdio: ["pipe", "pipe", "pipe"],
|
|
14158
14180
|
timeout: CLI_SUBPROCESS_TIMEOUTS.ghCommandMs
|
|
@@ -14402,13 +14424,13 @@ async function releaseNotesCommand(args) {
|
|
|
14402
14424
|
import { readFileSync as readFileSync8 } from "fs";
|
|
14403
14425
|
|
|
14404
14426
|
// src/cli/release-validate-helpers.ts
|
|
14405
|
-
import { execSync as
|
|
14427
|
+
import { execSync as execSync2 } from "child_process";
|
|
14406
14428
|
import { existsSync as existsSync13, readFileSync as readFileSync7 } from "fs";
|
|
14407
14429
|
async function validateSecurity(options) {
|
|
14408
14430
|
const startTime = Date.now();
|
|
14409
14431
|
const findings = [];
|
|
14410
14432
|
try {
|
|
14411
|
-
|
|
14433
|
+
execSync2("npm audit --audit-level=high 2>/dev/null", {
|
|
14412
14434
|
encoding: "utf-8",
|
|
14413
14435
|
stdio: ["pipe", "pipe", "pipe"],
|
|
14414
14436
|
timeout: CLI_SUBPROCESS_TIMEOUTS.ghCommandMs
|
|
@@ -14432,7 +14454,7 @@ async function validateSecurity(options) {
|
|
|
14432
14454
|
});
|
|
14433
14455
|
}
|
|
14434
14456
|
try {
|
|
14435
|
-
const result =
|
|
14457
|
+
const result = execSync2(
|
|
14436
14458
|
'git diff HEAD~10..HEAD -- "*.ts" "*.js" | grep -iE "(api[_-]?key|secret|password|token)" | head -5',
|
|
14437
14459
|
{
|
|
14438
14460
|
encoding: "utf-8",
|
|
@@ -14463,7 +14485,7 @@ async function validateArchitecture2(options) {
|
|
|
14463
14485
|
const startTime = Date.now();
|
|
14464
14486
|
const findings = [];
|
|
14465
14487
|
try {
|
|
14466
|
-
const result =
|
|
14488
|
+
const result = execSync2("npx nexus-agents fitness-audit --format=json 2>/dev/null", {
|
|
14467
14489
|
encoding: "utf-8",
|
|
14468
14490
|
stdio: ["pipe", "pipe", "pipe"],
|
|
14469
14491
|
timeout: CLI_SUBPROCESS_TIMEOUTS.releaseValidateMs
|
|
@@ -14584,7 +14606,7 @@ async function validateDevOps(options) {
|
|
|
14584
14606
|
const startTime = Date.now();
|
|
14585
14607
|
const findings = [];
|
|
14586
14608
|
try {
|
|
14587
|
-
|
|
14609
|
+
execSync2("pnpm build 2>/dev/null", {
|
|
14588
14610
|
encoding: "utf-8",
|
|
14589
14611
|
stdio: ["pipe", "pipe", "pipe"],
|
|
14590
14612
|
timeout: CLI_SUBPROCESS_TIMEOUTS.releaseValidateMs
|
|
@@ -14605,7 +14627,7 @@ async function validateDevOps(options) {
|
|
|
14605
14627
|
});
|
|
14606
14628
|
}
|
|
14607
14629
|
try {
|
|
14608
|
-
|
|
14630
|
+
execSync2("pnpm lint 2>/dev/null", {
|
|
14609
14631
|
encoding: "utf-8",
|
|
14610
14632
|
stdio: ["pipe", "pipe", "pipe"],
|
|
14611
14633
|
timeout: CLI_SUBPROCESS_TIMEOUTS.releaseBuildMs
|
|
@@ -14626,7 +14648,7 @@ async function validateDevOps(options) {
|
|
|
14626
14648
|
});
|
|
14627
14649
|
}
|
|
14628
14650
|
try {
|
|
14629
|
-
|
|
14651
|
+
execSync2("pnpm typecheck 2>/dev/null", {
|
|
14630
14652
|
encoding: "utf-8",
|
|
14631
14653
|
stdio: ["pipe", "pipe", "pipe"],
|
|
14632
14654
|
timeout: CLI_SUBPROCESS_TIMEOUTS.releaseValidateMs
|
|
@@ -14802,7 +14824,7 @@ function getBlueskyConfig() {
|
|
|
14802
14824
|
}
|
|
14803
14825
|
async function loadAtproto() {
|
|
14804
14826
|
try {
|
|
14805
|
-
const mod = await import("./dist-
|
|
14827
|
+
const mod = await import("./dist-CV74KUT7.js");
|
|
14806
14828
|
return { AtpAgent: mod.AtpAgent, RichText: mod.RichText };
|
|
14807
14829
|
} catch {
|
|
14808
14830
|
return void 0;
|
|
@@ -15558,8 +15580,18 @@ var LATENCY_RANGES = {
|
|
|
15558
15580
|
secondary: { min: 3e3, max: 8e3 },
|
|
15559
15581
|
other: { min: 5e3, max: 15e3 }
|
|
15560
15582
|
};
|
|
15561
|
-
function
|
|
15562
|
-
|
|
15583
|
+
function createRng(seed) {
|
|
15584
|
+
if (seed === void 0) return Math.random;
|
|
15585
|
+
let s = seed | 0;
|
|
15586
|
+
return () => {
|
|
15587
|
+
s = s + 1831565813 | 0;
|
|
15588
|
+
let t = Math.imul(s ^ s >>> 15, 1 | s);
|
|
15589
|
+
t = t + Math.imul(t ^ t >>> 7, 61 | t) ^ t;
|
|
15590
|
+
return ((t ^ t >>> 14) >>> 0) / 4294967296;
|
|
15591
|
+
};
|
|
15592
|
+
}
|
|
15593
|
+
function pickCategory(rng) {
|
|
15594
|
+
const roll = rng();
|
|
15563
15595
|
let cumulative = 0;
|
|
15564
15596
|
for (const [category, weight] of DEFAULT_TASK_DISTRIBUTION) {
|
|
15565
15597
|
cumulative += weight;
|
|
@@ -15567,12 +15599,12 @@ function pickCategory() {
|
|
|
15567
15599
|
}
|
|
15568
15600
|
return "code_generation";
|
|
15569
15601
|
}
|
|
15570
|
-
function pickCli(category) {
|
|
15602
|
+
function pickCli(category, rng) {
|
|
15571
15603
|
const primary = PRIMARY_CLI.get(category) ?? "claude";
|
|
15572
|
-
const roll =
|
|
15604
|
+
const roll = rng();
|
|
15573
15605
|
if (roll < 0.5) return primary;
|
|
15574
15606
|
if (roll < 0.75) return CLI_NAMES3.find((c) => c !== primary) ?? "gemini";
|
|
15575
|
-
return CLI_NAMES3[Math.floor(
|
|
15607
|
+
return CLI_NAMES3[Math.floor(rng() * CLI_NAMES3.length)] ?? "claude";
|
|
15576
15608
|
}
|
|
15577
15609
|
function getCliRole(cli, category) {
|
|
15578
15610
|
const primary = PRIMARY_CLI.get(category);
|
|
@@ -15591,12 +15623,12 @@ function getCliRole(cli, category) {
|
|
|
15591
15623
|
]);
|
|
15592
15624
|
return cli === secondaryMap.get(category) ? "secondary" : "other";
|
|
15593
15625
|
}
|
|
15594
|
-
function simulateTask(taskIndex, category, cli) {
|
|
15626
|
+
function simulateTask(taskIndex, category, cli, rng) {
|
|
15595
15627
|
const role = getCliRole(cli, category);
|
|
15596
15628
|
const successRate = SUCCESS_RATES[role];
|
|
15597
15629
|
const latency = LATENCY_RANGES[role];
|
|
15598
|
-
const success =
|
|
15599
|
-
const durationMs = latency.min +
|
|
15630
|
+
const success = rng() < successRate;
|
|
15631
|
+
const durationMs = latency.min + rng() * (latency.max - latency.min);
|
|
15600
15632
|
return {
|
|
15601
15633
|
id: `e2e-${String(taskIndex)}-${cli}-${category}`,
|
|
15602
15634
|
cli,
|
|
@@ -15609,7 +15641,7 @@ function simulateTask(taskIndex, category, cli) {
|
|
|
15609
15641
|
source: "manual"
|
|
15610
15642
|
};
|
|
15611
15643
|
}
|
|
15612
|
-
function generateOutcomes(taskCount) {
|
|
15644
|
+
function generateOutcomes(taskCount, rng) {
|
|
15613
15645
|
const store = getOutcomeStore();
|
|
15614
15646
|
const success = /* @__PURE__ */ new Map();
|
|
15615
15647
|
const total = /* @__PURE__ */ new Map();
|
|
@@ -15618,9 +15650,9 @@ function generateOutcomes(taskCount) {
|
|
|
15618
15650
|
total.set(cli, 0);
|
|
15619
15651
|
}
|
|
15620
15652
|
for (let i = 0; i < taskCount; i++) {
|
|
15621
|
-
const category = pickCategory();
|
|
15622
|
-
const cli = pickCli(category);
|
|
15623
|
-
const outcome = simulateTask(i, category, cli);
|
|
15653
|
+
const category = pickCategory(rng);
|
|
15654
|
+
const cli = pickCli(category, rng);
|
|
15655
|
+
const outcome = simulateTask(i, category, cli, rng);
|
|
15624
15656
|
store.append(outcome);
|
|
15625
15657
|
total.set(cli, (total.get(cli) ?? 0) + 1);
|
|
15626
15658
|
if (outcome.success) success.set(cli, (success.get(cli) ?? 0) + 1);
|
|
@@ -15671,7 +15703,8 @@ function runE2EEval(config, logger17) {
|
|
|
15671
15703
|
resetOutcomeStore();
|
|
15672
15704
|
setOutcomeStore(new OutcomeStore());
|
|
15673
15705
|
}
|
|
15674
|
-
const
|
|
15706
|
+
const rng = createRng(config?.seed);
|
|
15707
|
+
const counts = generateOutcomes(taskCount, rng);
|
|
15675
15708
|
log.info("E2E eval: outcomes recorded", { taskCount });
|
|
15676
15709
|
const { bonuses, nonZeroCount } = checkAdaptiveBonuses();
|
|
15677
15710
|
const convergenceScore = computeConvergence(counts, nonZeroCount);
|
|
@@ -16935,6 +16968,19 @@ var DevPipelineInputSchema = z7.object({
|
|
|
16935
16968
|
sessionId: z7.string().max(128).regex(/^[a-zA-Z0-9_-]+$/).optional().describe("Session ID for checkpoint/resume (crash recovery)"),
|
|
16936
16969
|
/** When true, use simulated votes instead of real CLI consensus (for testing). */
|
|
16937
16970
|
simulateVotes: z7.boolean().default(false).describe("Use simulated votes (for testing without real CLIs)"),
|
|
16971
|
+
/** Voting strategy for consensus stages. */
|
|
16972
|
+
votingStrategy: z7.enum([
|
|
16973
|
+
"simple_majority",
|
|
16974
|
+
"supermajority",
|
|
16975
|
+
"unanimous",
|
|
16976
|
+
"higher_order",
|
|
16977
|
+
"proof_of_learning",
|
|
16978
|
+
"opinion_wise"
|
|
16979
|
+
]).optional().describe("Voting strategy for plan approval (default: higher_order)"),
|
|
16980
|
+
/** Use 3 agents instead of 6 for faster voting. */
|
|
16981
|
+
quickMode: z7.boolean().default(false).describe("Use 3 agents instead of 6 for faster consensus voting"),
|
|
16982
|
+
/** Maximum execution time per stage in milliseconds (min 30s, max 600s). */
|
|
16983
|
+
timeoutMs: z7.number().int().min(3e4).max(6e5).optional().describe("Max time per stage in ms (30000-600000). Default: varies by stage complexity"),
|
|
16938
16984
|
/** Pipeline execution mode. */
|
|
16939
16985
|
mode: z7.enum(["autonomous", "harness"]).default("autonomous").describe(
|
|
16940
16986
|
"'autonomous': full pipeline. 'harness': stops after decompose, returns tasks for caller to implement."
|
|
@@ -16946,6 +16992,10 @@ function resolveTaskInput(input) {
|
|
|
16946
16992
|
}
|
|
16947
16993
|
if (input.planFile !== void 0) {
|
|
16948
16994
|
const resolved = path21.resolve(input.planFile);
|
|
16995
|
+
const cwdRoot = path21.resolve(".");
|
|
16996
|
+
if (!resolved.startsWith(cwdRoot)) {
|
|
16997
|
+
throw new Error(`Path traversal denied: planFile must be within ${cwdRoot}`);
|
|
16998
|
+
}
|
|
16949
16999
|
if (!fs17.existsSync(resolved)) {
|
|
16950
17000
|
throw new Error(`Plan file not found: ${resolved}`);
|
|
16951
17001
|
}
|
|
@@ -16960,6 +17010,8 @@ async function createStages(input) {
|
|
|
16960
17010
|
return createAgentStages({
|
|
16961
17011
|
scanTarget: input.workingDir,
|
|
16962
17012
|
simulateVotes: input.simulateVotes,
|
|
17013
|
+
votingStrategy: input.votingStrategy,
|
|
17014
|
+
quickMode: input.quickMode,
|
|
16963
17015
|
issueNumber: input.issueNumber,
|
|
16964
17016
|
repo: input.repo,
|
|
16965
17017
|
tracker
|
|
@@ -17681,7 +17733,8 @@ var STANDALONE_TOOLS = [
|
|
|
17681
17733
|
{ name: "query_trace", register: registerQueryTraceTool },
|
|
17682
17734
|
{ name: "extract_symbols", register: registerExtractSymbolsTool },
|
|
17683
17735
|
{ name: "search_codebase", register: registerSearchCodebaseTool },
|
|
17684
|
-
{ name: "run_dev_pipeline", register: registerDevPipelineTool }
|
|
17736
|
+
{ name: "run_dev_pipeline", register: registerDevPipelineTool },
|
|
17737
|
+
{ name: "run_pipeline", register: registerPipelineTool }
|
|
17685
17738
|
];
|
|
17686
17739
|
function registerToolCategories(ctx) {
|
|
17687
17740
|
const allowlist = ctx.toolAllowlist;
|
|
@@ -19275,6 +19328,8 @@ async function initializeAndLogSandbox(logger17, sandboxConfig) {
|
|
|
19275
19328
|
});
|
|
19276
19329
|
}
|
|
19277
19330
|
async function connectToStdioTransport(server, logger17, serverLogger) {
|
|
19331
|
+
logger17.setDestination?.("stderr");
|
|
19332
|
+
serverLogger.setDestination?.("stderr");
|
|
19278
19333
|
logger17.info("Connecting to stdio transport");
|
|
19279
19334
|
const transport = new StdioServerTransport();
|
|
19280
19335
|
const connectResult = await connectTransport(server, transport, serverLogger);
|
|
@@ -19797,7 +19852,7 @@ async function handleVerifyCommand(args) {
|
|
|
19797
19852
|
async function handleDoctorCommand(args) {
|
|
19798
19853
|
const exitCode = await doctorCommand({ fix: args.options.fix });
|
|
19799
19854
|
if (args.options.deep) {
|
|
19800
|
-
const { runDeepDiagnostics: runDeepDiagnostics2, formatDeepDiagnostics: formatDeepDiagnostics2 } = await import("./doctor-deep-
|
|
19855
|
+
const { runDeepDiagnostics: runDeepDiagnostics2, formatDeepDiagnostics: formatDeepDiagnostics2 } = await import("./doctor-deep-4A4X5X6U.js");
|
|
19801
19856
|
const diag = runDeepDiagnostics2();
|
|
19802
19857
|
process.stdout.write(formatDeepDiagnostics2(diag) + "\n");
|
|
19803
19858
|
}
|
|
@@ -21144,7 +21199,7 @@ async function handleMemoryBenchmarkCommand(args) {
|
|
|
21144
21199
|
}
|
|
21145
21200
|
|
|
21146
21201
|
// src/cli/status-command.ts
|
|
21147
|
-
import { execFileSync } from "child_process";
|
|
21202
|
+
import { execFileSync as execFileSync2 } from "child_process";
|
|
21148
21203
|
var FITNESS_TARGET = 90;
|
|
21149
21204
|
var API_ADAPTER_CHECKS = [
|
|
21150
21205
|
{ name: "Claude", envVar: "ANTHROPIC_API_KEY" },
|
|
@@ -21166,7 +21221,7 @@ function checkApiAdapters() {
|
|
|
21166
21221
|
function detectCliTools() {
|
|
21167
21222
|
return CLI_TOOL_CHECKS.map((check) => {
|
|
21168
21223
|
try {
|
|
21169
|
-
const version =
|
|
21224
|
+
const version = execFileSync2(check.binary, ["--version"], {
|
|
21170
21225
|
timeout: CLI_SUBPROCESS_TIMEOUTS.statusProbeMs,
|
|
21171
21226
|
stdio: ["ignore", "pipe", "ignore"],
|
|
21172
21227
|
encoding: "utf-8"
|