nexus-agents 8.3.1 → 8.3.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/{chunk-AQF22T74.js → chunk-3OU7XMEP.js} +2 -2
- package/dist/{chunk-LW6FPSPN.js → chunk-3RMLDTUF.js} +3 -3
- package/dist/{chunk-6SPKOLVU.js → chunk-44I4XVRU.js} +2 -2
- package/dist/chunk-LZBARHPR.js +7 -0
- package/dist/{chunk-OFUJNXH3.js → chunk-ONSYYUB4.js} +104 -90
- package/dist/chunk-ONSYYUB4.js.map +1 -0
- package/dist/{chunk-TSZWXRF7.js → chunk-VULYVX6X.js} +24 -9
- package/dist/chunk-VULYVX6X.js.map +1 -0
- package/dist/cli.js +7 -7
- package/dist/{consensus-vote-44WT45UN.js → consensus-vote-H67IAMI2.js} +4 -4
- package/dist/{improvement-review-P7JBYDL6.js → improvement-review-UECHDBER.js} +4 -4
- package/dist/index.d.ts +41 -21
- package/dist/index.js +7 -7
- package/dist/{setup-data-dir-Y4F4R2BJ.js → setup-data-dir-HJCC6U4N.js} +3 -3
- package/package.json +2 -2
- package/dist/chunk-2OS7HTUM.js +0 -7
- package/dist/chunk-OFUJNXH3.js.map +0 -1
- package/dist/chunk-TSZWXRF7.js.map +0 -1
- /package/dist/{chunk-AQF22T74.js.map → chunk-3OU7XMEP.js.map} +0 -0
- /package/dist/{chunk-LW6FPSPN.js.map → chunk-3RMLDTUF.js.map} +0 -0
- /package/dist/{chunk-6SPKOLVU.js.map → chunk-44I4XVRU.js.map} +0 -0
- /package/dist/{chunk-2OS7HTUM.js.map → chunk-LZBARHPR.js.map} +0 -0
- /package/dist/{consensus-vote-44WT45UN.js.map → consensus-vote-H67IAMI2.js.map} +0 -0
- /package/dist/{improvement-review-P7JBYDL6.js.map → improvement-review-UECHDBER.js.map} +0 -0
- /package/dist/{setup-data-dir-Y4F4R2BJ.js.map → setup-data-dir-HJCC6U4N.js.map} +0 -0
package/dist/cli.js
CHANGED
|
@@ -153,7 +153,7 @@ import {
|
|
|
153
153
|
validateNexusEnv,
|
|
154
154
|
validateWorkflow,
|
|
155
155
|
wrapInMarkdownFence
|
|
156
|
-
} from "./chunk-
|
|
156
|
+
} from "./chunk-ONSYYUB4.js";
|
|
157
157
|
import "./chunk-ZYPEHPRM.js";
|
|
158
158
|
import "./chunk-DGWT7DXX.js";
|
|
159
159
|
import "./chunk-64GMIUM5.js";
|
|
@@ -172,7 +172,7 @@ import {
|
|
|
172
172
|
doctorCommand,
|
|
173
173
|
initDataDirectories,
|
|
174
174
|
runDoctor
|
|
175
|
-
} from "./chunk-
|
|
175
|
+
} from "./chunk-3RMLDTUF.js";
|
|
176
176
|
import {
|
|
177
177
|
buildOpenAICompatAdapters,
|
|
178
178
|
readOpenAICompatEnv
|
|
@@ -191,7 +191,7 @@ import {
|
|
|
191
191
|
recordAuthenticVote,
|
|
192
192
|
registerConsensusVoteTool,
|
|
193
193
|
toRecordDecision
|
|
194
|
-
} from "./chunk-
|
|
194
|
+
} from "./chunk-44I4XVRU.js";
|
|
195
195
|
import {
|
|
196
196
|
loadUsageEvents,
|
|
197
197
|
rollupByModel
|
|
@@ -227,15 +227,15 @@ import {
|
|
|
227
227
|
registerImprovementReviewTool,
|
|
228
228
|
runImprovementReview,
|
|
229
229
|
scanForSecrets
|
|
230
|
-
} from "./chunk-
|
|
230
|
+
} from "./chunk-3OU7XMEP.js";
|
|
231
231
|
import {
|
|
232
232
|
createDefaultPolicyFirewall,
|
|
233
233
|
setGlobalPolicyFirewall,
|
|
234
234
|
stagePolicyFirewallForRollout
|
|
235
|
-
} from "./chunk-
|
|
235
|
+
} from "./chunk-VULYVX6X.js";
|
|
236
236
|
import {
|
|
237
237
|
VERSION
|
|
238
|
-
} from "./chunk-
|
|
238
|
+
} from "./chunk-LZBARHPR.js";
|
|
239
239
|
import "./chunk-U5YJKJK2.js";
|
|
240
240
|
import {
|
|
241
241
|
createUnifiedRegistry,
|
|
@@ -19586,7 +19586,7 @@ function startImprovementReviewScheduler(options) {
|
|
|
19586
19586
|
let running = false;
|
|
19587
19587
|
const runOnce = async () => {
|
|
19588
19588
|
try {
|
|
19589
|
-
const { runImprovementReview: runImprovementReview2, ImprovementReviewInputSchema: ImprovementReviewInputSchema2 } = await import("./improvement-review-
|
|
19589
|
+
const { runImprovementReview: runImprovementReview2, ImprovementReviewInputSchema: ImprovementReviewInputSchema2 } = await import("./improvement-review-UECHDBER.js");
|
|
19590
19590
|
const input = ImprovementReviewInputSchema2.parse({ fileIssues });
|
|
19591
19591
|
const result = await runImprovementReview2(input, { logger: logger22 });
|
|
19592
19592
|
logger22.info("Scheduled improvement_review complete", {
|
|
@@ -11,11 +11,11 @@ import {
|
|
|
11
11
|
resetCorrelationTracker,
|
|
12
12
|
runConsensusForGoal,
|
|
13
13
|
unwrapVoteOrThrow
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-44I4XVRU.js";
|
|
15
15
|
import "./chunk-6LDUEA4I.js";
|
|
16
16
|
import "./chunk-OQB3XC5O.js";
|
|
17
|
-
import "./chunk-
|
|
18
|
-
import "./chunk-
|
|
17
|
+
import "./chunk-VULYVX6X.js";
|
|
18
|
+
import "./chunk-LZBARHPR.js";
|
|
19
19
|
import "./chunk-U5YJKJK2.js";
|
|
20
20
|
import "./chunk-F4AT3BCP.js";
|
|
21
21
|
import "./chunk-4U62WRPL.js";
|
|
@@ -50,4 +50,4 @@ export {
|
|
|
50
50
|
runConsensusForGoal,
|
|
51
51
|
unwrapVoteOrThrow
|
|
52
52
|
};
|
|
53
|
-
//# sourceMappingURL=consensus-vote-
|
|
53
|
+
//# sourceMappingURL=consensus-vote-H67IAMI2.js.map
|
|
@@ -11,9 +11,9 @@ import {
|
|
|
11
11
|
loadSelfEvalSignals,
|
|
12
12
|
registerImprovementReviewTool,
|
|
13
13
|
runImprovementReview
|
|
14
|
-
} from "./chunk-
|
|
15
|
-
import "./chunk-
|
|
16
|
-
import "./chunk-
|
|
14
|
+
} from "./chunk-3OU7XMEP.js";
|
|
15
|
+
import "./chunk-VULYVX6X.js";
|
|
16
|
+
import "./chunk-LZBARHPR.js";
|
|
17
17
|
import "./chunk-U5YJKJK2.js";
|
|
18
18
|
import "./chunk-3MBGQAO2.js";
|
|
19
19
|
import "./chunk-ITCKXMOH.js";
|
|
@@ -33,4 +33,4 @@ export {
|
|
|
33
33
|
registerImprovementReviewTool,
|
|
34
34
|
runImprovementReview
|
|
35
35
|
};
|
|
36
|
-
//# sourceMappingURL=improvement-review-
|
|
36
|
+
//# sourceMappingURL=improvement-review-UECHDBER.js.map
|
package/dist/index.d.ts
CHANGED
|
@@ -27268,6 +27268,46 @@ interface PrReviewCoverage {
|
|
|
27268
27268
|
readonly strategy: 'budget';
|
|
27269
27269
|
}
|
|
27270
27270
|
|
|
27271
|
+
/**
|
|
27272
|
+
* Proposal construction for `pr_review`.
|
|
27273
|
+
*
|
|
27274
|
+
* Extracted from `pr-review-tool.ts` (#5385), which sat at 398 of its 400-line
|
|
27275
|
+
* budget — threading the sanitization disclosure through pushed it over, and
|
|
27276
|
+
* this is the cohesive piece to move, because the builder IS the sanitization
|
|
27277
|
+
* concern. A pure move apart from the `removedBeforeThisCall` parameter that
|
|
27278
|
+
* issue adds.
|
|
27279
|
+
*
|
|
27280
|
+
* `pr-review-tool.ts` re-exports the symbol, so both barrels
|
|
27281
|
+
* (`mcp/index.ts`, `mcp/tools/index.ts`), the published `exports/mcp.ts`, and
|
|
27282
|
+
* `scripts/pr-review-local.ts` / `scripts/pr-review-eval-run.ts` keep importing
|
|
27283
|
+
* it unchanged. The `PrReviewInput` import is type-only and therefore erased,
|
|
27284
|
+
* so the re-export creates no runtime cycle.
|
|
27285
|
+
*
|
|
27286
|
+
* @module mcp/tools/pr-review-proposal
|
|
27287
|
+
*/
|
|
27288
|
+
|
|
27289
|
+
/** Builds the proposal text passed to voters. The voters are designed for
|
|
27290
|
+
* yes/no proposals — by framing the diff as "should this PR be merged?" we
|
|
27291
|
+
* get usable output without needing new system prompts (Child 3 will add
|
|
27292
|
+
* those).
|
|
27293
|
+
*
|
|
27294
|
+
* **Sanitization lives HERE, not at the tool boundary (#5258 item B).** The
|
|
27295
|
+
* `securityTier: 'external'` declared on the registered tool only protects the
|
|
27296
|
+
* MCP path, because the middleware is constructed inside `registerPrReviewTool`.
|
|
27297
|
+
* Three other callers reach the voters without it — `.github/workflows/
|
|
27298
|
+
* pr-review.yml`, `scripts/pr-review-local.ts` (the documented default path)
|
|
27299
|
+
* and `scripts/pr-review-eval-run.ts` — each importing this builder directly
|
|
27300
|
+
* from `dist/index.js`. On those paths a hostile PR body reached five voters
|
|
27301
|
+
* unfenced, next to the words "should it be merged as-is?".
|
|
27302
|
+
*
|
|
27303
|
+
* This function is the one chokepoint all four callers pass through, so the
|
|
27304
|
+
* protection is attached to the data rather than to one entry point. The MCP
|
|
27305
|
+
* tier check still runs earlier and still refuses; this is the floor beneath
|
|
27306
|
+
* it, and it strips rather than refuses so the script paths degrade instead of
|
|
27307
|
+
* failing shut. Double-sanitizing on the MCP path is idempotent and harmless.
|
|
27308
|
+
*/
|
|
27309
|
+
declare function buildPrReviewProposal(input: Pick<PrReviewInput, 'prTitle' | 'prDescription' | 'prDiff' | 'repoContext' | 'baseRef' | 'headRef'>, removedBeforeThisCall?: number): string;
|
|
27310
|
+
|
|
27271
27311
|
/**
|
|
27272
27312
|
* nexus-agents/mcp - PR Review Tool (#2233 Child 1)
|
|
27273
27313
|
*
|
|
@@ -27418,27 +27458,7 @@ declare function mapVoteDecisionToPrDecision(voteDecision: 'approve' | 'reject'
|
|
|
27418
27458
|
* the baseline behavior.
|
|
27419
27459
|
*/
|
|
27420
27460
|
declare function aggregatePrDecisions(reviews: readonly PrReviewVote[], errorPolicy?: 'standard' | 'absolute_quorum'): PrReviewAggregate;
|
|
27421
|
-
|
|
27422
|
-
* yes/no proposals — by framing the diff as "should this PR be merged?" we
|
|
27423
|
-
* get usable output without needing new system prompts (Child 3 will add
|
|
27424
|
-
* those).
|
|
27425
|
-
*
|
|
27426
|
-
* **Sanitization lives HERE, not at the tool boundary (#5258 item B).** The
|
|
27427
|
-
* `securityTier: 'external'` declared on the registered tool only protects the
|
|
27428
|
-
* MCP path, because the middleware is constructed inside `registerPrReviewTool`.
|
|
27429
|
-
* Three other callers reach the voters without it — `.github/workflows/
|
|
27430
|
-
* pr-review.yml`, `scripts/pr-review-local.ts` (the documented default path)
|
|
27431
|
-
* and `scripts/pr-review-eval-run.ts` — each importing this builder directly
|
|
27432
|
-
* from `dist/index.js`. On those paths a hostile PR body reached five voters
|
|
27433
|
-
* unfenced, next to the words "should it be merged as-is?".
|
|
27434
|
-
*
|
|
27435
|
-
* This function is the one chokepoint all four callers pass through, so the
|
|
27436
|
-
* protection is attached to the data rather than to one entry point. The MCP
|
|
27437
|
-
* tier check still runs earlier and still refuses; this is the floor beneath
|
|
27438
|
-
* it, and it strips rather than refuses so the script paths degrade instead of
|
|
27439
|
-
* failing shut. Double-sanitizing on the MCP path is idempotent and harmless.
|
|
27440
|
-
*/
|
|
27441
|
-
declare function buildPrReviewProposal(input: Pick<PrReviewInput, 'prTitle' | 'prDescription' | 'prDiff' | 'repoContext' | 'baseRef' | 'headRef'>): string;
|
|
27461
|
+
|
|
27442
27462
|
/** @category MCP */
|
|
27443
27463
|
declare function registerPrReviewTool(server: McpServer, deps: PrReviewDeps): void;
|
|
27444
27464
|
|
package/dist/index.js
CHANGED
|
@@ -553,7 +553,7 @@ import {
|
|
|
553
553
|
withLogging,
|
|
554
554
|
withRetry,
|
|
555
555
|
withRetryWrapper
|
|
556
|
-
} from "./chunk-
|
|
556
|
+
} from "./chunk-ONSYYUB4.js";
|
|
557
557
|
import {
|
|
558
558
|
FALLBACK_SCANNER_DATA,
|
|
559
559
|
buildPlanFromAnalysis,
|
|
@@ -574,7 +574,7 @@ import {
|
|
|
574
574
|
connectTransport,
|
|
575
575
|
createServer,
|
|
576
576
|
startStdioServer
|
|
577
|
-
} from "./chunk-
|
|
577
|
+
} from "./chunk-3RMLDTUF.js";
|
|
578
578
|
import {
|
|
579
579
|
OPENAI_MODELS,
|
|
580
580
|
OPENAI_MODEL_ALIASES,
|
|
@@ -632,7 +632,7 @@ import {
|
|
|
632
632
|
generateProposalId,
|
|
633
633
|
parseAgentPairKey,
|
|
634
634
|
registerConsensusVoteTool
|
|
635
|
-
} from "./chunk-
|
|
635
|
+
} from "./chunk-44I4XVRU.js";
|
|
636
636
|
import "./chunk-6LDUEA4I.js";
|
|
637
637
|
import {
|
|
638
638
|
allOf
|
|
@@ -685,7 +685,7 @@ import {
|
|
|
685
685
|
import {
|
|
686
686
|
ImprovementReviewInputSchema,
|
|
687
687
|
registerImprovementReviewTool
|
|
688
|
-
} from "./chunk-
|
|
688
|
+
} from "./chunk-3OU7XMEP.js";
|
|
689
689
|
import {
|
|
690
690
|
AgentPerformanceSchema,
|
|
691
691
|
ConsensusAlgorithmSchema,
|
|
@@ -721,10 +721,10 @@ import {
|
|
|
721
721
|
toolSuccess,
|
|
722
722
|
toolSuccessStructured,
|
|
723
723
|
validateToolInput
|
|
724
|
-
} from "./chunk-
|
|
724
|
+
} from "./chunk-VULYVX6X.js";
|
|
725
725
|
import {
|
|
726
726
|
VERSION
|
|
727
|
-
} from "./chunk-
|
|
727
|
+
} from "./chunk-LZBARHPR.js";
|
|
728
728
|
import {
|
|
729
729
|
AuditTrail,
|
|
730
730
|
MAX_STRIPPED_ELEMENTS_PER_EVENT,
|
|
@@ -4890,7 +4890,7 @@ function buildVotingInput(plan, config) {
|
|
|
4890
4890
|
}
|
|
4891
4891
|
async function executeSingleVote(plan, config, log) {
|
|
4892
4892
|
try {
|
|
4893
|
-
const { executeVoting } = await import("./consensus-vote-
|
|
4893
|
+
const { executeVoting } = await import("./consensus-vote-H67IAMI2.js");
|
|
4894
4894
|
const input = buildVotingInput(plan, config);
|
|
4895
4895
|
const result = await executeVoting(input, log);
|
|
4896
4896
|
return parseVotingResult(result);
|
|
@@ -2,11 +2,11 @@ import {
|
|
|
2
2
|
NEXUS_DATA_DIR,
|
|
3
3
|
describeDataDirFix,
|
|
4
4
|
initDataDirectories
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-3RMLDTUF.js";
|
|
6
6
|
import "./chunk-T7XKLZPC.js";
|
|
7
7
|
import "./chunk-6LDUEA4I.js";
|
|
8
8
|
import "./chunk-OQB3XC5O.js";
|
|
9
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-LZBARHPR.js";
|
|
10
10
|
import "./chunk-6T3EPABN.js";
|
|
11
11
|
import "./chunk-UZULX2DZ.js";
|
|
12
12
|
import "./chunk-FFZNRJ5Q.js";
|
|
@@ -26,4 +26,4 @@ export {
|
|
|
26
26
|
describeDataDirFix,
|
|
27
27
|
initDataDirectories
|
|
28
28
|
};
|
|
29
|
-
//# sourceMappingURL=setup-data-dir-
|
|
29
|
+
//# sourceMappingURL=setup-data-dir-HJCC6U4N.js.map
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nexus-agents",
|
|
3
|
-
"version": "8.3.
|
|
3
|
+
"version": "8.3.2",
|
|
4
4
|
"description": "Governance substrate for AI coding agents — adversarial PR review, drift-detected rules, tamper-evident audit, and closed-loop outcome routing for Claude, Codex, Gemini, and OpenCode",
|
|
5
5
|
"mcpName": "io.github.nexus-substrate/nexus-agents",
|
|
6
6
|
"license": "MIT",
|
|
@@ -114,7 +114,7 @@
|
|
|
114
114
|
}
|
|
115
115
|
},
|
|
116
116
|
"scripts": {
|
|
117
|
-
"build": "tsup &&
|
|
117
|
+
"build": "tsup && pnpm exec tsx ../../scripts/check-dist-assets.ts",
|
|
118
118
|
"dev": "tsup --watch",
|
|
119
119
|
"test": "vitest run",
|
|
120
120
|
"test:e2e": "vitest run --config vitest.config.e2e.ts",
|