nexus-agents 11.4.3 → 11.4.4

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.
@@ -58,7 +58,7 @@ import {
58
58
  updateStage,
59
59
  withFileLock,
60
60
  writeJobCancelled
61
- } from "./chunk-6BT545RE.js";
61
+ } from "./chunk-NNVA7BZX.js";
62
62
  import {
63
63
  normalizeTopicToCanonical,
64
64
  synthesizeResearch
@@ -77,7 +77,7 @@ import {
77
77
  } from "./chunk-773AZVR3.js";
78
78
  import {
79
79
  withPrerequisite
80
- } from "./chunk-PDO4WGCB.js";
80
+ } from "./chunk-VGRTBVWC.js";
81
81
  import {
82
82
  NOOP_NOTIFIER,
83
83
  RateLimiter,
@@ -105,7 +105,7 @@ import {
105
105
  toolSuccess,
106
106
  withProgressHeartbeat,
107
107
  wrapToolWithTimeout
108
- } from "./chunk-VX2YWNOH.js";
108
+ } from "./chunk-YC6QAHC2.js";
109
109
  import {
110
110
  generateSecurityPlan
111
111
  } from "./chunk-6ZTMMN2N.js";
@@ -187,7 +187,7 @@ import {
187
187
  import {
188
188
  DEFAULT_TASK_TTL_MS,
189
189
  clampTaskTtl
190
- } from "./chunk-4X6ALHTU.js";
190
+ } from "./chunk-OUU6EOZE.js";
191
191
  import {
192
192
  allOf,
193
193
  anyOf
@@ -196,7 +196,7 @@ import {
196
196
  VERSION,
197
197
  createRequestContext,
198
198
  measuredTrustTier
199
- } from "./chunk-XF5HANZV.js";
199
+ } from "./chunk-MYWMM23M.js";
200
200
  import {
201
201
  BWRAP_READ_ONLY_ARGS,
202
202
  CliDetectionCache,
@@ -46682,7 +46682,7 @@ function buildVotingInput(plan, config) {
46682
46682
  }
46683
46683
  async function executeSingleVote(plan, config, log) {
46684
46684
  try {
46685
- const { executeVoting } = await import("./consensus-vote-CWQDVRIM.js");
46685
+ const { executeVoting } = await import("./consensus-vote-3AJ54VX3.js");
46686
46686
  const input = buildVotingInput(plan, config);
46687
46687
  const result = await executeVoting(input, log);
46688
46688
  return parseVotingResult(result);
@@ -47628,6 +47628,7 @@ async function withDevPipelineWorkspace(stages, run, install = installDependenci
47628
47628
  const dependencies = await provisionDependencies(scratch.path, install, sandbox.wrapper);
47629
47629
  const bound = stages.withWorkspace({
47630
47630
  directory: join13(scratch.path, relative4(repoRoot, directory)),
47631
+ root: scratch.path,
47631
47632
  baseline: { sha: baseSha, directory: repoRoot },
47632
47633
  dependencies,
47633
47634
  wrapper: sandbox.wrapper
@@ -48525,7 +48526,7 @@ function createVoteStage({ config, startStage }) {
48525
48526
  const strategy = config.votingStrategy ?? "higher_order";
48526
48527
  await postProgress(config, "Vote", `Running consensus with ${strategy} strategy...`);
48527
48528
  try {
48528
- const { executeVoting } = await import("./consensus-vote-CWQDVRIM.js");
48529
+ const { executeVoting } = await import("./consensus-vote-3AJ54VX3.js");
48529
48530
  const proposal = buildVoteProposal(plan, research);
48530
48531
  const votingResult = await executeVoting(
48531
48532
  {
@@ -49012,6 +49013,8 @@ var COMPLETE_SCAN_FLAGS = [
49012
49013
  // Avoid mutable ignore files and hidden-ancestor skips in scratch worktrees.
49013
49014
  // Unsupported scanner versions fail closed on this explicitly pinned flag.
49014
49015
  "--x-ignore-semgrepignore-files",
49016
+ // Must exclude nothing the dev pipeline captures (PATCH_PATHS in
49017
+ // pipeline/dev-pipeline-workspace.ts), or a captured file ships unscanned.
49015
49018
  "--exclude=node_modules",
49016
49019
  "--exclude=.git"
49017
49020
  ];
@@ -49661,7 +49664,13 @@ function checkSecurityScan(targetDir, rulesets = ["p/default"], config = {}) {
49661
49664
  durationMs: Date.now() - start
49662
49665
  };
49663
49666
  }
49664
- const gateResult = await runSecurityPipeline(result, targetDir, config, start, signal);
49667
+ const gateResult = await runSecurityPipeline(
49668
+ result,
49669
+ config.dependencyTarget ?? targetDir,
49670
+ config,
49671
+ start,
49672
+ signal
49673
+ );
49665
49674
  if (gateResult.verdict === "fail") return gateResult;
49666
49675
  if (result.parseDiagnostics !== void 0 && result.parseDiagnostics.length > 0) {
49667
49676
  return {
@@ -49677,7 +49686,7 @@ function checkSecurityScan(targetDir, rulesets = ["p/default"], config = {}) {
49677
49686
  async function runBaselineGate(target, rulesets, config, signal) {
49678
49687
  const start = Date.now();
49679
49688
  const comparison = await compareSecurityBaseline(target, rulesets, config, signal);
49680
- const osv = comparison.complete ? await runOsvCheck(target, config.enableOsv ?? true, signal) : OSV_EMPTY;
49689
+ const osv = comparison.complete ? await runOsvCheck(config.dependencyTarget ?? target, config.enableOsv ?? true, signal) : OSV_EMPTY;
49681
49690
  throwIfAborted(signal, "Security baseline scan aborted");
49682
49691
  const osvFailed = osv.vulnerabilities.some((v) => v.severity === "CRITICAL");
49683
49692
  const details = comparison.complete ? `Base ${String(comparison.baseCount)}, worktree ${String(comparison.worktreeCount)} findings; ${String(comparison.introducedBlockingCount)} introduced blocking; ${buildScanSummary(comparison.worktreeCount ?? 0, comparison.introducedBlockingCount ?? 0, osv.vulnerabilities.length, osv)}` : `Security comparison incomplete: ${comparison.errors.join("; ")}`;
@@ -50402,15 +50411,16 @@ function createQualityGateStage({
50402
50411
  };
50403
50412
  }
50404
50413
  function createSecurityScanStage(deps) {
50405
- const { config, startStage, workspaceDependencies, wrapper } = deps;
50414
+ const { config, startStage, workspaceDependencies, workspaceRoot, wrapper } = deps;
50406
50415
  return async (signal) => {
50407
50416
  startStage("security");
50408
50417
  const start = getTimeProvider().now();
50409
- const target = config.scanTarget ?? process.cwd();
50418
+ const target = workspaceRoot ?? config.scanTarget ?? process.cwd();
50410
50419
  await postProgress(config, "Security", `Scanning ${target}...`);
50411
50420
  const scratchBound = workspaceDependencies !== void 0;
50412
50421
  const check = checkSecurityScan(target, void 0, {
50413
50422
  baseline: config.securityBaseline,
50423
+ dependencyTarget: config.scanTarget,
50414
50424
  env: scratchBound ? hermeticGitEnv() : void 0,
50415
50425
  root: scratchBound ? target : void 0,
50416
50426
  wrapper
@@ -50459,10 +50469,17 @@ function createAgentStages(config = {}) {
50459
50469
  decompose: createDecomposeStage(deps),
50460
50470
  ...createExecutionStages(deps),
50461
50471
  // #6794: execution closures share the same guard and scratch directory.
50462
- withWorkspace: ({ directory, dependencies: workspaceDependencies, wrapper, baseline }) => {
50472
+ withWorkspace: ({
50473
+ directory,
50474
+ root,
50475
+ dependencies: workspaceDependencies,
50476
+ wrapper,
50477
+ baseline
50478
+ }) => {
50463
50479
  const bound = {
50464
50480
  ...deps,
50465
50481
  workspaceDependencies,
50482
+ workspaceRoot: root,
50466
50483
  wrapper,
50467
50484
  config: { ...config, scanTarget: directory, securityBaseline: baseline }
50468
50485
  };
@@ -59168,4 +59185,4 @@ export {
59168
59185
  initializeSandbox,
59169
59186
  getSandboxMode
59170
59187
  };
59171
- //# sourceMappingURL=chunk-7HCHQ4OF.js.map
59188
+ //# sourceMappingURL=chunk-HNGZ5AMV.js.map