nexus-agents 8.42.8 → 8.42.9

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.
@@ -21,7 +21,7 @@ import {
21
21
  import {
22
22
  DEFAULT_TASK_TTL_MS,
23
23
  clampTaskTtl
24
- } from "./chunk-MM3RHIOQ.js";
24
+ } from "./chunk-KJDCFQ6X.js";
25
25
  import {
26
26
  executeExpert
27
27
  } from "./chunk-HTSKUXUY.js";
@@ -55,7 +55,7 @@ import {
55
55
  toJobSummary,
56
56
  updateStage,
57
57
  writeJobCancelled
58
- } from "./chunk-IYQ4CN2Y.js";
58
+ } from "./chunk-QYB34SJZ.js";
59
59
  import {
60
60
  allOf,
61
61
  anyOf
@@ -75,7 +75,7 @@ import {
75
75
  } from "./chunk-NQXISQVW.js";
76
76
  import {
77
77
  withPrerequisite
78
- } from "./chunk-TWU6UP7D.js";
78
+ } from "./chunk-YSWFDYTA.js";
79
79
  import {
80
80
  NOOP_NOTIFIER,
81
81
  RateLimiter,
@@ -100,7 +100,7 @@ import {
100
100
  withAuditTrail,
101
101
  withProgressHeartbeat,
102
102
  wrapToolWithTimeout
103
- } from "./chunk-YKQ4NWHP.js";
103
+ } from "./chunk-JPE77J4Q.js";
104
104
  import {
105
105
  createAuditTrail,
106
106
  createGraphAuditBridge,
@@ -45957,7 +45957,7 @@ function buildVotingInput(plan, config) {
45957
45957
  }
45958
45958
  async function executeSingleVote(plan, config, log) {
45959
45959
  try {
45960
- const { executeVoting } = await import("./consensus-vote-22R2MMZF.js");
45960
+ const { executeVoting } = await import("./consensus-vote-XNC7NRAJ.js");
45961
45961
  const input = buildVotingInput(plan, config);
45962
45962
  const result = await executeVoting(input, log);
45963
45963
  return parseVotingResult(result);
@@ -46339,6 +46339,9 @@ async function runPlanningPhase(task, stages, prior, options) {
46339
46339
  function buildHarnessResult(planResult, tasks) {
46340
46340
  return {
46341
46341
  completed: false,
46342
+ // Says WHY completion is false: by request, not by fault (#5888) — the
46343
+ // same role `dryRun` plays for the other deliberate stop.
46344
+ harnessMode: true,
46342
46345
  plan: planResult.plan,
46343
46346
  tasks,
46344
46347
  voteIterations: planResult.iterations,
@@ -47749,7 +47752,7 @@ ${contextBlock}`;
47749
47752
  const strategy = config.votingStrategy ?? "higher_order";
47750
47753
  await postProgress(config, "Vote", `Running consensus with ${strategy} strategy...`);
47751
47754
  try {
47752
- const { executeVoting } = await import("./consensus-vote-22R2MMZF.js");
47755
+ const { executeVoting } = await import("./consensus-vote-XNC7NRAJ.js");
47753
47756
  const votingResult = await executeVoting(
47754
47757
  {
47755
47758
  proposal: buildVoteProposal(plan, research),
@@ -51750,6 +51753,7 @@ function buildStructuredOutput(result, simulated) {
51750
51753
  // security rejection from a gate that never ran — which is the whole point
51751
51754
  // of the fields. They were added to DevPipelineResult and then not listed
51752
51755
  // here, so they never reached the MCP surface.
51756
+ ...result.harnessMode !== void 0 ? { harnessMode: result.harnessMode } : {},
51753
51757
  ...result.securityRan !== void 0 ? { securityRan: result.securityRan } : {},
51754
51758
  ...result.planStatus !== void 0 ? { planStatus: result.planStatus } : {},
51755
51759
  ...result.planVoteReason !== void 0 ? { planVoteReason: result.planVoteReason } : {},
@@ -51794,7 +51798,27 @@ function buildPipelineOptions(input, trustTier, auditLogger) {
51794
51798
  async function executeDevPipelineBody(taskText, stages, pipelineOptions, simulated) {
51795
51799
  const result = await runDevPipeline(taskText, stages, pipelineOptions);
51796
51800
  flushPipelineMemory();
51797
- return toolSuccessStructured(buildStructuredOutput(result, simulated));
51801
+ const output2 = buildStructuredOutput(result, simulated);
51802
+ if (!result.completed && result.dryRun !== true && result.harnessMode !== true) {
51803
+ return toolStructuredError({
51804
+ errorCategory: "business",
51805
+ message: describeIncompleteRun(result),
51806
+ detail: output2
51807
+ });
51808
+ }
51809
+ return toolSuccessStructured(output2);
51810
+ }
51811
+ function describeIncompleteRun(result) {
51812
+ if (result.planStatus !== void 0) {
51813
+ return `Pipeline stopped at the planning gate (planStatus: ${result.planStatus})`;
51814
+ }
51815
+ if (result.securityRan === true && !result.securityPassed) {
51816
+ return "Pipeline did not complete: the security gate rejected the change";
51817
+ }
51818
+ if (result.taskStatus !== void 0 && result.taskStatus !== "all_done") {
51819
+ return `Pipeline did not complete: tasks ${result.taskStatus}`;
51820
+ }
51821
+ return "Pipeline did not complete";
51798
51822
  }
51799
51823
  async function runDevPipelineHandler(args, logger55, trustTier, auditLogger) {
51800
51824
  const parsed = DevPipelineInputSchema.safeParse(args);
@@ -56430,4 +56454,4 @@ export {
56430
56454
  startPipelineEventBridge,
56431
56455
  shutdownPipelineEventBridge
56432
56456
  };
56433
- //# sourceMappingURL=chunk-KT5YOGS5.js.map
56457
+ //# sourceMappingURL=chunk-IVAWIOCS.js.map