nexus-agents 2.159.0 → 2.160.0

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.
Files changed (122) hide show
  1. package/dist/{child-mcp-config-72S4OMRK.js → child-mcp-config-XEXFG3LA.js} +2 -2
  2. package/dist/{chunk-JEUWM2VZ.js → chunk-3QIXGEY7.js} +2 -2
  3. package/dist/{chunk-VOTYZUEG.js → chunk-4AXOISAP.js} +3 -3
  4. package/dist/{chunk-I3ROKMFF.js → chunk-5NVU25BA.js} +4 -4
  5. package/dist/{chunk-VCX3QMZE.js → chunk-7XISTLQP.js} +8 -8
  6. package/dist/{chunk-7WKSZZAX.js → chunk-AMY4S4VD.js} +2 -2
  7. package/dist/{chunk-24PRWXLQ.js → chunk-B23GFISN.js} +3 -3
  8. package/dist/{chunk-FENIEDNW.js → chunk-E7LG7L4O.js} +102 -4
  9. package/dist/chunk-E7LG7L4O.js.map +1 -0
  10. package/dist/{chunk-P3FNNFAW.js → chunk-ED6B55WK.js} +3 -3
  11. package/dist/{chunk-Y7637JDT.js → chunk-FYQSTNG6.js} +5 -5
  12. package/dist/{chunk-NTVJNSJC.js → chunk-HBLVOFLL.js} +2 -2
  13. package/dist/{chunk-VQ3ZVDSQ.js → chunk-HT3B6ZWV.js} +2 -2
  14. package/dist/{chunk-SLQJ746K.js → chunk-I2DK3KSH.js} +2 -2
  15. package/dist/{chunk-MWTAZEHK.js → chunk-I6NTUVGW.js} +2 -2
  16. package/dist/{chunk-I4SDEK6H.js → chunk-ICYEG7T4.js} +7 -7
  17. package/dist/{chunk-ZHGCHS2D.js → chunk-IG2SIC2E.js} +2 -2
  18. package/dist/{chunk-TMBVOQPL.js → chunk-JYV5MZC6.js} +4 -4
  19. package/dist/{chunk-GY4XQU2V.js → chunk-MXNIOTDY.js} +3 -3
  20. package/dist/{chunk-YNKEHMKX.js → chunk-O27ZG7BL.js} +3 -3
  21. package/dist/{chunk-ZQMTD74M.js → chunk-OQUELE4L.js} +54 -40
  22. package/dist/{chunk-ZQMTD74M.js.map → chunk-OQUELE4L.js.map} +1 -1
  23. package/dist/{chunk-AS6TNXKV.js → chunk-Q6EGZKLE.js} +2 -2
  24. package/dist/{chunk-XPPDWKZI.js → chunk-QD653D5O.js} +7 -7
  25. package/dist/{chunk-RZDIYKVH.js → chunk-QVIQAIOK.js} +2 -2
  26. package/dist/{chunk-3YGTLWNA.js → chunk-RNCBSF6I.js} +2 -2
  27. package/dist/{chunk-BK2IRU3L.js → chunk-RU336IEH.js} +2 -2
  28. package/dist/{chunk-6IXIKOLR.js → chunk-SHFCJJTY.js} +2 -2
  29. package/dist/{chunk-TB7GQCIH.js → chunk-SN4Q7TZT.js} +2 -2
  30. package/dist/{chunk-IYSD4VFM.js → chunk-SNKSSSAR.js} +4 -4
  31. package/dist/{chunk-DOTCPOLE.js → chunk-VKUP2PG5.js} +7 -7
  32. package/dist/{chunk-SHKRC6Z7.js → chunk-VWX75FKD.js} +5 -5
  33. package/dist/{chunk-TOJFRIVM.js → chunk-WP6UBBNJ.js} +4 -4
  34. package/dist/{chunk-VCFKTNCM.js → chunk-WRISLYLK.js} +2 -2
  35. package/dist/{chunk-P7SRGOLU.js → chunk-XLEZBTQG.js} +2 -2
  36. package/dist/{chunk-WTCREQRS.js → chunk-ZBEJITR6.js} +5 -5
  37. package/dist/{chunk-CY3QSLDQ.js → chunk-ZO54JW4V.js} +3 -3
  38. package/dist/{cli-circuit-breaker-BWZXZBNW.js → cli-circuit-breaker-SAHRY3BI.js} +4 -4
  39. package/dist/cli.js +41 -41
  40. package/dist/{composite-router-NPSNBLX7.js → composite-router-MFJNLR3O.js} +2 -2
  41. package/dist/{consensus-vote-ZX6NLTI4.js → consensus-vote-Z55357CP.js} +15 -15
  42. package/dist/{context-retriever-3QKHEA5U.js → context-retriever-Z474PNZ4.js} +8 -8
  43. package/dist/{doctor-deep-Y2PQCE6G.js → doctor-deep-IESAJDVW.js} +3 -3
  44. package/dist/{expert-bridge-NXG4Z7U7.js → expert-bridge-JW4DJPH3.js} +4 -4
  45. package/dist/{factory-JJ4N6YPR.js → factory-6JIXPGRH.js} +8 -8
  46. package/dist/{factory-YK2QA3TU.js → factory-Z7GGTUK2.js} +5 -5
  47. package/dist/{improvement-review-6LSV4QFA.js → improvement-review-5DRIOL5K.js} +5 -5
  48. package/dist/index.d.ts +72 -0
  49. package/dist/index.js +30 -30
  50. package/dist/index.js.map +1 -1
  51. package/dist/{init-opencode-AO2PEKXB.js → init-opencode-T2F5WSLT.js} +6 -6
  52. package/dist/{issue-triage-ZRRXCDAM.js → issue-triage-RC5VVUAV.js} +6 -6
  53. package/dist/{pr-reviewer-helpers-NEJJKQ7D.js → pr-reviewer-helpers-G35TGA7R.js} +4 -4
  54. package/dist/{registry-command-DKNGS752.js → registry-command-47UO65SV.js} +2 -2
  55. package/dist/{repo-security-plan-DEYYRMTB.js → repo-security-plan-CGXT5CIP.js} +3 -3
  56. package/dist/{research-helpers-synthesize-54UEJ24R.js → research-helpers-synthesize-37WHCE5I.js} +4 -4
  57. package/dist/{routing-memory-QFEXYF6G.js → routing-memory-YWPM45FH.js} +2 -2
  58. package/dist/{session-memory-DYU7XMQO.js → session-memory-ENUULCNK.js} +3 -3
  59. package/dist/{setup-command-PSYJ4M7Q.js → setup-command-T6I5TRFR.js} +11 -11
  60. package/dist/{setup-config-CBV4OUOE.js → setup-config-AMGGWQHX.js} +3 -3
  61. package/dist/{setup-custom-api-IJWYWAHX.js → setup-custom-api-UNAPYLEX.js} +3 -3
  62. package/dist/{tool-memory-2DI34M5Z.js → tool-memory-QH3DN2SU.js} +5 -5
  63. package/dist/{unified-registry-VQPPIL6M.js → unified-registry-YXQGTU3P.js} +9 -9
  64. package/dist/{weather-report-RETBQ4VD.js → weather-report-BUKQ7YPV.js} +6 -2
  65. package/package.json +1 -1
  66. package/dist/chunk-FENIEDNW.js.map +0 -1
  67. /package/dist/{child-mcp-config-72S4OMRK.js.map → child-mcp-config-XEXFG3LA.js.map} +0 -0
  68. /package/dist/{chunk-JEUWM2VZ.js.map → chunk-3QIXGEY7.js.map} +0 -0
  69. /package/dist/{chunk-VOTYZUEG.js.map → chunk-4AXOISAP.js.map} +0 -0
  70. /package/dist/{chunk-I3ROKMFF.js.map → chunk-5NVU25BA.js.map} +0 -0
  71. /package/dist/{chunk-VCX3QMZE.js.map → chunk-7XISTLQP.js.map} +0 -0
  72. /package/dist/{chunk-7WKSZZAX.js.map → chunk-AMY4S4VD.js.map} +0 -0
  73. /package/dist/{chunk-24PRWXLQ.js.map → chunk-B23GFISN.js.map} +0 -0
  74. /package/dist/{chunk-P3FNNFAW.js.map → chunk-ED6B55WK.js.map} +0 -0
  75. /package/dist/{chunk-Y7637JDT.js.map → chunk-FYQSTNG6.js.map} +0 -0
  76. /package/dist/{chunk-NTVJNSJC.js.map → chunk-HBLVOFLL.js.map} +0 -0
  77. /package/dist/{chunk-VQ3ZVDSQ.js.map → chunk-HT3B6ZWV.js.map} +0 -0
  78. /package/dist/{chunk-SLQJ746K.js.map → chunk-I2DK3KSH.js.map} +0 -0
  79. /package/dist/{chunk-MWTAZEHK.js.map → chunk-I6NTUVGW.js.map} +0 -0
  80. /package/dist/{chunk-I4SDEK6H.js.map → chunk-ICYEG7T4.js.map} +0 -0
  81. /package/dist/{chunk-ZHGCHS2D.js.map → chunk-IG2SIC2E.js.map} +0 -0
  82. /package/dist/{chunk-TMBVOQPL.js.map → chunk-JYV5MZC6.js.map} +0 -0
  83. /package/dist/{chunk-GY4XQU2V.js.map → chunk-MXNIOTDY.js.map} +0 -0
  84. /package/dist/{chunk-YNKEHMKX.js.map → chunk-O27ZG7BL.js.map} +0 -0
  85. /package/dist/{chunk-AS6TNXKV.js.map → chunk-Q6EGZKLE.js.map} +0 -0
  86. /package/dist/{chunk-XPPDWKZI.js.map → chunk-QD653D5O.js.map} +0 -0
  87. /package/dist/{chunk-RZDIYKVH.js.map → chunk-QVIQAIOK.js.map} +0 -0
  88. /package/dist/{chunk-3YGTLWNA.js.map → chunk-RNCBSF6I.js.map} +0 -0
  89. /package/dist/{chunk-BK2IRU3L.js.map → chunk-RU336IEH.js.map} +0 -0
  90. /package/dist/{chunk-6IXIKOLR.js.map → chunk-SHFCJJTY.js.map} +0 -0
  91. /package/dist/{chunk-TB7GQCIH.js.map → chunk-SN4Q7TZT.js.map} +0 -0
  92. /package/dist/{chunk-IYSD4VFM.js.map → chunk-SNKSSSAR.js.map} +0 -0
  93. /package/dist/{chunk-DOTCPOLE.js.map → chunk-VKUP2PG5.js.map} +0 -0
  94. /package/dist/{chunk-SHKRC6Z7.js.map → chunk-VWX75FKD.js.map} +0 -0
  95. /package/dist/{chunk-TOJFRIVM.js.map → chunk-WP6UBBNJ.js.map} +0 -0
  96. /package/dist/{chunk-VCFKTNCM.js.map → chunk-WRISLYLK.js.map} +0 -0
  97. /package/dist/{chunk-P7SRGOLU.js.map → chunk-XLEZBTQG.js.map} +0 -0
  98. /package/dist/{chunk-WTCREQRS.js.map → chunk-ZBEJITR6.js.map} +0 -0
  99. /package/dist/{chunk-CY3QSLDQ.js.map → chunk-ZO54JW4V.js.map} +0 -0
  100. /package/dist/{cli-circuit-breaker-BWZXZBNW.js.map → cli-circuit-breaker-SAHRY3BI.js.map} +0 -0
  101. /package/dist/{composite-router-NPSNBLX7.js.map → composite-router-MFJNLR3O.js.map} +0 -0
  102. /package/dist/{consensus-vote-ZX6NLTI4.js.map → consensus-vote-Z55357CP.js.map} +0 -0
  103. /package/dist/{context-retriever-3QKHEA5U.js.map → context-retriever-Z474PNZ4.js.map} +0 -0
  104. /package/dist/{doctor-deep-Y2PQCE6G.js.map → doctor-deep-IESAJDVW.js.map} +0 -0
  105. /package/dist/{expert-bridge-NXG4Z7U7.js.map → expert-bridge-JW4DJPH3.js.map} +0 -0
  106. /package/dist/{factory-JJ4N6YPR.js.map → factory-6JIXPGRH.js.map} +0 -0
  107. /package/dist/{factory-YK2QA3TU.js.map → factory-Z7GGTUK2.js.map} +0 -0
  108. /package/dist/{improvement-review-6LSV4QFA.js.map → improvement-review-5DRIOL5K.js.map} +0 -0
  109. /package/dist/{init-opencode-AO2PEKXB.js.map → init-opencode-T2F5WSLT.js.map} +0 -0
  110. /package/dist/{issue-triage-ZRRXCDAM.js.map → issue-triage-RC5VVUAV.js.map} +0 -0
  111. /package/dist/{pr-reviewer-helpers-NEJJKQ7D.js.map → pr-reviewer-helpers-G35TGA7R.js.map} +0 -0
  112. /package/dist/{registry-command-DKNGS752.js.map → registry-command-47UO65SV.js.map} +0 -0
  113. /package/dist/{repo-security-plan-DEYYRMTB.js.map → repo-security-plan-CGXT5CIP.js.map} +0 -0
  114. /package/dist/{research-helpers-synthesize-54UEJ24R.js.map → research-helpers-synthesize-37WHCE5I.js.map} +0 -0
  115. /package/dist/{routing-memory-QFEXYF6G.js.map → routing-memory-YWPM45FH.js.map} +0 -0
  116. /package/dist/{session-memory-DYU7XMQO.js.map → session-memory-ENUULCNK.js.map} +0 -0
  117. /package/dist/{setup-command-PSYJ4M7Q.js.map → setup-command-T6I5TRFR.js.map} +0 -0
  118. /package/dist/{setup-config-CBV4OUOE.js.map → setup-config-AMGGWQHX.js.map} +0 -0
  119. /package/dist/{setup-custom-api-IJWYWAHX.js.map → setup-custom-api-UNAPYLEX.js.map} +0 -0
  120. /package/dist/{tool-memory-2DI34M5Z.js.map → tool-memory-QH3DN2SU.js.map} +0 -0
  121. /package/dist/{unified-registry-VQPPIL6M.js.map → unified-registry-YXQGTU3P.js.map} +0 -0
  122. /package/dist/{weather-report-RETBQ4VD.js.map → weather-report-BUKQ7YPV.js.map} +0 -0
@@ -9,11 +9,11 @@ import {
9
9
  gateWithReputation,
10
10
  resolveReputationGatingMode,
11
11
  sanitizeInput
12
- } from "./chunk-NTVJNSJC.js";
12
+ } from "./chunk-HBLVOFLL.js";
13
13
  import {
14
14
  createLogger,
15
15
  getTimeProvider
16
- } from "./chunk-FENIEDNW.js";
16
+ } from "./chunk-E7LG7L4O.js";
17
17
 
18
18
  // src/dogfooding/pr-reviewer-helpers.ts
19
19
  import { randomUUID } from "crypto";
@@ -288,4 +288,4 @@ export {
288
288
  formatReviewComment,
289
289
  createFailedReview
290
290
  };
291
- //# sourceMappingURL=chunk-P3FNNFAW.js.map
291
+ //# sourceMappingURL=chunk-ED6B55WK.js.map
@@ -1,19 +1,19 @@
1
1
  import {
2
2
  resolveToken
3
- } from "./chunk-AS6TNXKV.js";
3
+ } from "./chunk-Q6EGZKLE.js";
4
4
  import {
5
5
  REGISTRY_PATH,
6
6
  getProjectRoot,
7
7
  loadPapersRegistry,
8
8
  loadTechniquesRegistry,
9
9
  savePapersRegistry
10
- } from "./chunk-3YGTLWNA.js";
10
+ } from "./chunk-RNCBSF6I.js";
11
11
  import {
12
12
  resolveInsideRoot
13
13
  } from "./chunk-NUBSJGQZ.js";
14
14
  import {
15
15
  getToolMemory
16
- } from "./chunk-TOJFRIVM.js";
16
+ } from "./chunk-WP6UBBNJ.js";
17
17
  import {
18
18
  capitalizeWords
19
19
  } from "./chunk-6T3EPABN.js";
@@ -27,7 +27,7 @@ import {
27
27
  getOutcomeStore,
28
28
  getTimeProvider,
29
29
  registerPersistentDistillerFactory
30
- } from "./chunk-FENIEDNW.js";
30
+ } from "./chunk-E7LG7L4O.js";
31
31
  import {
32
32
  ensureLearningDir,
33
33
  getRulesFile
@@ -2686,4 +2686,4 @@ export {
2686
2686
  summarizeContextForPrompt,
2687
2687
  getContextPromptPrefix
2688
2688
  };
2689
- //# sourceMappingURL=chunk-Y7637JDT.js.map
2689
+ //# sourceMappingURL=chunk-FYQSTNG6.js.map
@@ -2,7 +2,7 @@ import {
2
2
  CACHE_TIMEOUTS,
3
3
  createLogger,
4
4
  getTimeProvider
5
- } from "./chunk-FENIEDNW.js";
5
+ } from "./chunk-E7LG7L4O.js";
6
6
 
7
7
  // src/security/trust-types.ts
8
8
  import { z } from "zod";
@@ -560,4 +560,4 @@ export {
560
560
  resolveReputationGatingMode,
561
561
  gateWithReputation
562
562
  };
563
- //# sourceMappingURL=chunk-NTVJNSJC.js.map
563
+ //# sourceMappingURL=chunk-HBLVOFLL.js.map
@@ -4,7 +4,7 @@ import {
4
4
  err,
5
5
  getErrorMessage,
6
6
  ok
7
- } from "./chunk-FENIEDNW.js";
7
+ } from "./chunk-E7LG7L4O.js";
8
8
 
9
9
  // src/scm/types.ts
10
10
  var ScmError = class extends Error {
@@ -263,4 +263,4 @@ export {
263
263
  ScmError,
264
264
  GitHubProvider
265
265
  };
266
- //# sourceMappingURL=chunk-VQ3ZVDSQ.js.map
266
+ //# sourceMappingURL=chunk-HT3B6ZWV.js.map
@@ -2,7 +2,7 @@ import {
2
2
  TASK_CATEGORIES,
3
3
  getAdaptiveBonus,
4
4
  getOutcomeStore
5
- } from "./chunk-FENIEDNW.js";
5
+ } from "./chunk-E7LG7L4O.js";
6
6
 
7
7
  // src/cli/doctor-deep.ts
8
8
  var CLI_NAMES = ["claude", "gemini", "codex", "opencode"];
@@ -106,4 +106,4 @@ export {
106
106
  runDeepDiagnostics,
107
107
  formatDeepDiagnostics
108
108
  };
109
- //# sourceMappingURL=chunk-SLQJ746K.js.map
109
+ //# sourceMappingURL=chunk-I2DK3KSH.js.map
@@ -11,7 +11,7 @@ import {
11
11
  isRateLimitLikeError,
12
12
  lookupInTreeCapability,
13
13
  ok
14
- } from "./chunk-FENIEDNW.js";
14
+ } from "./chunk-E7LG7L4O.js";
15
15
 
16
16
  // src/config/model-parameter-support.ts
17
17
  function parseClaudeMajorMinor(bareId) {
@@ -828,4 +828,4 @@ export {
828
828
  DEFAULT_COLLECT_STREAM_MAX_CHUNKS,
829
829
  collectStream
830
830
  };
831
- //# sourceMappingURL=chunk-MWTAZEHK.js.map
831
+ //# sourceMappingURL=chunk-I6NTUVGW.js.map
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  resolveCliSlot
3
- } from "./chunk-BK2IRU3L.js";
3
+ } from "./chunk-RU336IEH.js";
4
4
  import {
5
5
  createLogger,
6
6
  getTimeProvider,
7
7
  isRateLimitText
8
- } from "./chunk-FENIEDNW.js";
8
+ } from "./chunk-E7LG7L4O.js";
9
9
 
10
10
  // src/pipeline/expert-bridge.ts
11
11
  function resolveCliFromModelString(model) {
@@ -21,7 +21,7 @@ async function getMcpConfigPath() {
21
21
  if (cachedMcpConfigPath !== null) return cachedMcpConfigPath;
22
22
  mcpConfigInitPromise ??= (async () => {
23
23
  try {
24
- const { generateMcpConfig } = await import("./child-mcp-config-72S4OMRK.js");
24
+ const { generateMcpConfig } = await import("./child-mcp-config-XEXFG3LA.js");
25
25
  const config = await generateMcpConfig();
26
26
  cachedMcpConfigPath = config.configPath;
27
27
  cachedMcpConfigCleanup = config.cleanup;
@@ -93,8 +93,8 @@ var routerInitPromise = null;
93
93
  async function getRouter() {
94
94
  if (cachedRouter !== null) return cachedRouter;
95
95
  routerInitPromise ??= (async () => {
96
- const { createAllAdapters } = await import("./factory-JJ4N6YPR.js");
97
- const { createCompositeRouter } = await import("./composite-router-NPSNBLX7.js");
96
+ const { createAllAdapters } = await import("./factory-6JIXPGRH.js");
97
+ const { createCompositeRouter } = await import("./composite-router-MFJNLR3O.js");
98
98
  const adapters = createAllAdapters();
99
99
  if (adapters.size === 0) {
100
100
  routerInitPromise = null;
@@ -102,7 +102,7 @@ async function getRouter() {
102
102
  }
103
103
  cachedRouter = adaptCompositeRouter(createCompositeRouter(adapters));
104
104
  try {
105
- const { createCliCircuitBreakerIntegration } = await import("./cli-circuit-breaker-BWZXZBNW.js");
105
+ const { createCliCircuitBreakerIntegration } = await import("./cli-circuit-breaker-SAHRY3BI.js");
106
106
  cachedCircuitBreaker = createCliCircuitBreakerIntegration([...adapters.values()]);
107
107
  } catch (error) {
108
108
  const msg = error instanceof Error ? error.message : String(error);
@@ -213,4 +213,4 @@ export {
213
213
  tokenSplitFromUsage,
214
214
  executeExpert
215
215
  };
216
- //# sourceMappingURL=chunk-I4SDEK6H.js.map
216
+ //# sourceMappingURL=chunk-ICYEG7T4.js.map
@@ -4,7 +4,7 @@ import {
4
4
  import {
5
5
  createLogger,
6
6
  getTimeProvider
7
- } from "./chunk-FENIEDNW.js";
7
+ } from "./chunk-E7LG7L4O.js";
8
8
 
9
9
  // src/mcp/tools/scanner-registry-fetcher.ts
10
10
  import { z } from "zod";
@@ -721,4 +721,4 @@ export {
721
721
  generateSecurityPlan,
722
722
  buildPlanFromAnalysis
723
723
  };
724
- //# sourceMappingURL=chunk-ZHGCHS2D.js.map
724
+ //# sourceMappingURL=chunk-IG2SIC2E.js.map
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  createAutoAdapter
3
- } from "./chunk-XPPDWKZI.js";
3
+ } from "./chunk-QD653D5O.js";
4
4
  import {
5
5
  mapModelErrorToCategory
6
- } from "./chunk-JEUWM2VZ.js";
6
+ } from "./chunk-3QIXGEY7.js";
7
7
  import {
8
8
  CLI_NAMES,
9
9
  CircularBuffer,
@@ -24,7 +24,7 @@ import {
24
24
  ok,
25
25
  recordRateLimitEvent,
26
26
  toRateLimitError
27
- } from "./chunk-FENIEDNW.js";
27
+ } from "./chunk-E7LG7L4O.js";
28
28
 
29
29
  // src/agents/collaboration/event-bus-helpers.ts
30
30
  import { randomUUID } from "crypto";
@@ -1041,4 +1041,4 @@ export {
1041
1041
  getGlobalRegistry,
1042
1042
  resetGlobalRegistry
1043
1043
  };
1044
- //# sourceMappingURL=chunk-TMBVOQPL.js.map
1044
+ //# sourceMappingURL=chunk-JYV5MZC6.js.map
@@ -7,7 +7,7 @@ import {
7
7
  toolStructuredError,
8
8
  toolSuccessStructured,
9
9
  wrapToolWithTimeout
10
- } from "./chunk-VOTYZUEG.js";
10
+ } from "./chunk-4AXOISAP.js";
11
11
  import {
12
12
  JsonlStore,
13
13
  SECURITY_KEYWORDS,
@@ -19,7 +19,7 @@ import {
19
19
  getPipelineEventBus,
20
20
  getTimeProvider,
21
21
  isDeclaredNeverDeprecate
22
- } from "./chunk-FENIEDNW.js";
22
+ } from "./chunk-E7LG7L4O.js";
23
23
  import {
24
24
  getNexusDataDir,
25
25
  nexusDataPath
@@ -2132,4 +2132,4 @@ export {
2132
2132
  runImprovementReview,
2133
2133
  registerImprovementReviewTool
2134
2134
  };
2135
- //# sourceMappingURL=chunk-GY4XQU2V.js.map
2135
+ //# sourceMappingURL=chunk-MXNIOTDY.js.map
@@ -4,14 +4,14 @@ import {
4
4
  planOptionalParams,
5
5
  requireApiKey,
6
6
  validateApiKeyPresence
7
- } from "./chunk-MWTAZEHK.js";
7
+ } from "./chunk-I6NTUVGW.js";
8
8
  import {
9
9
  ModelCapability,
10
10
  err,
11
11
  getCliModelName,
12
12
  getTokenEstimator,
13
13
  ok
14
- } from "./chunk-FENIEDNW.js";
14
+ } from "./chunk-E7LG7L4O.js";
15
15
 
16
16
  // src/adapters/openai-types.ts
17
17
  var OPENAI_MODELS = {
@@ -609,4 +609,4 @@ export {
609
609
  OpenAIAdapter,
610
610
  createOpenAIAdapter
611
611
  };
612
- //# sourceMappingURL=chunk-YNKEHMKX.js.map
612
+ //# sourceMappingURL=chunk-O27ZG7BL.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  generateSecurityPlan
3
- } from "./chunk-ZHGCHS2D.js";
3
+ } from "./chunk-IG2SIC2E.js";
4
4
  import {
5
5
  analyzeGitHubRepo
6
6
  } from "./chunk-HFOQKCD2.js";
@@ -18,10 +18,10 @@ import {
18
18
  DEFAULT_TASK_TTL_MS,
19
19
  DEFAULT_TOOL_RATE_LIMITS,
20
20
  clampTaskTtl
21
- } from "./chunk-DOTCPOLE.js";
21
+ } from "./chunk-VKUP2PG5.js";
22
22
  import {
23
23
  executeExpert
24
- } from "./chunk-I4SDEK6H.js";
24
+ } from "./chunk-ICYEG7T4.js";
25
25
  import {
26
26
  JobStatusSchema,
27
27
  abortJob,
@@ -42,21 +42,21 @@ import {
42
42
  simulationDeniedResult,
43
43
  toJobSummary,
44
44
  writeJobCancelled
45
- } from "./chunk-VCX3QMZE.js";
45
+ } from "./chunk-7XISTLQP.js";
46
46
  import {
47
47
  normalizeTopicToCanonical,
48
48
  synthesizeResearch
49
- } from "./chunk-24PRWXLQ.js";
49
+ } from "./chunk-B23GFISN.js";
50
50
  import {
51
51
  IssueTriage
52
- } from "./chunk-SHKRC6Z7.js";
52
+ } from "./chunk-VWX75FKD.js";
53
53
  import {
54
54
  resolveEnvMode,
55
55
  sanitizeInput
56
- } from "./chunk-NTVJNSJC.js";
56
+ } from "./chunk-HBLVOFLL.js";
57
57
  import {
58
58
  withPrerequisite
59
- } from "./chunk-GY4XQU2V.js";
59
+ } from "./chunk-MXNIOTDY.js";
60
60
  import {
61
61
  NOOP_NOTIFIER,
62
62
  RateLimiter,
@@ -79,12 +79,12 @@ import {
79
79
  withAuditTrail,
80
80
  withProgressHeartbeat,
81
81
  wrapToolWithTimeout
82
- } from "./chunk-VOTYZUEG.js";
82
+ } from "./chunk-4AXOISAP.js";
83
83
  import {
84
84
  createAuditTrail,
85
85
  createGraphAuditBridge,
86
86
  emitPipelinePolicyEvent
87
- } from "./chunk-RZDIYKVH.js";
87
+ } from "./chunk-QVIQAIOK.js";
88
88
  import {
89
89
  addResearchPaper,
90
90
  addSourceToRegistry,
@@ -112,15 +112,15 @@ import {
112
112
  parseRegistry,
113
113
  sourceExistsInRegistry,
114
114
  summarizeContextForPrompt
115
- } from "./chunk-Y7637JDT.js";
115
+ } from "./chunk-FYQSTNG6.js";
116
116
  import {
117
117
  getTokenEnvVars,
118
118
  resolveToken
119
- } from "./chunk-AS6TNXKV.js";
119
+ } from "./chunk-Q6EGZKLE.js";
120
120
  import {
121
121
  loadPapersRegistry,
122
122
  loadTechniquesRegistry
123
- } from "./chunk-3YGTLWNA.js";
123
+ } from "./chunk-RNCBSF6I.js";
124
124
  import {
125
125
  resolveInsideRoot
126
126
  } from "./chunk-NUBSJGQZ.js";
@@ -129,14 +129,14 @@ import {
129
129
  MemoryImportance,
130
130
  calculateTextJaccardSimilarity,
131
131
  getToolMemory
132
- } from "./chunk-TOJFRIVM.js";
132
+ } from "./chunk-WP6UBBNJ.js";
133
133
  import {
134
134
  STOPWORDS,
135
135
  truncateWithInfo
136
136
  } from "./chunk-6T3EPABN.js";
137
137
  import {
138
138
  createSessionMemory
139
- } from "./chunk-P7SRGOLU.js";
139
+ } from "./chunk-XLEZBTQG.js";
140
140
  import {
141
141
  BUILT_IN_EXPERTS,
142
142
  BuiltInExpertTypeSchema,
@@ -151,7 +151,7 @@ import {
151
151
  createEvent,
152
152
  getGlobalEventBus,
153
153
  getGlobalRegistry
154
- } from "./chunk-TMBVOQPL.js";
154
+ } from "./chunk-JYV5MZC6.js";
155
155
  import {
156
156
  CliDetectionCache,
157
157
  asRecord,
@@ -159,19 +159,19 @@ import {
159
159
  getAvailableClis,
160
160
  sleep,
161
161
  withTimeout
162
- } from "./chunk-XPPDWKZI.js";
162
+ } from "./chunk-QD653D5O.js";
163
163
  import {
164
164
  DEFAULTS
165
- } from "./chunk-6IXIKOLR.js";
165
+ } from "./chunk-SHFCJJTY.js";
166
166
  import {
167
167
  getAvailabilityCache,
168
168
  getCliForModelId,
169
169
  resolveFallback
170
- } from "./chunk-BK2IRU3L.js";
170
+ } from "./chunk-RU336IEH.js";
171
171
  import {
172
172
  generateHyphenId,
173
173
  generateUUID
174
- } from "./chunk-VCFKTNCM.js";
174
+ } from "./chunk-WRISLYLK.js";
175
175
  import {
176
176
  AGENT_ROUTER_TIMEOUTS,
177
177
  API_TIMEOUTS,
@@ -263,7 +263,7 @@ import {
263
263
  selectStrategyByManifest,
264
264
  toExpertTaskAnalysisResult,
265
265
  withStep
266
- } from "./chunk-FENIEDNW.js";
266
+ } from "./chunk-E7LG7L4O.js";
267
267
  import {
268
268
  ensureLearningDir,
269
269
  getMetaOutcomesFile,
@@ -26298,7 +26298,7 @@ function execIdFields(executionId) {
26298
26298
  async function populateUnifiedContextOnState(state, options) {
26299
26299
  const taskCandidate = state["task"];
26300
26300
  if (typeof taskCandidate !== "string" || taskCandidate === "") return;
26301
- const { getContextForTask: getContextForTask2, inferTaskCategory: inferTaskCategory2 } = await import("./context-retriever-3QKHEA5U.js");
26301
+ const { getContextForTask: getContextForTask2, inferTaskCategory: inferTaskCategory2 } = await import("./context-retriever-Z474PNZ4.js");
26302
26302
  const category = inferTaskCategory2(taskCandidate);
26303
26303
  const executionId = options?.executionId;
26304
26304
  const execFields = execIdFields(executionId);
@@ -27681,7 +27681,8 @@ function emitStageFailed(options) {
27681
27681
  timestamp: Date.now(),
27682
27682
  executionId: options.executionId,
27683
27683
  stageId: options.stageId,
27684
- error: options.error
27684
+ error: options.error,
27685
+ ...options.model !== void 0 && { model: options.model }
27685
27686
  });
27686
27687
  }
27687
27688
  function emitModelCalled(options) {
@@ -27711,10 +27712,14 @@ function emitPipelineStageEvent(prefix, stage, status, details) {
27711
27712
  durationMs: details?.["durationMs"] || 0
27712
27713
  });
27713
27714
  } else {
27715
+ const model = details?.["model"];
27714
27716
  emitStageFailed({
27715
27717
  executionId,
27716
27718
  stageId: stage,
27717
- error: details?.["error"] || "Unknown"
27719
+ error: details?.["error"] || "Unknown",
27720
+ // Real model attribution when the caller knows it (#4194) — string only,
27721
+ // so junk detail values never masquerade as a model id.
27722
+ ...typeof model === "string" && model.length > 0 ? { model } : {}
27718
27723
  });
27719
27724
  }
27720
27725
  }
@@ -41572,7 +41577,7 @@ async function tryIssueTriage(task) {
41572
41577
  try {
41573
41578
  const issueMatch = task.match(/github\.com\/([^/]+\/[^/]+)\/issues\/(\d+)/);
41574
41579
  if (issueMatch === null) return null;
41575
- const { createIssueTriage } = await import("./issue-triage-ZRRXCDAM.js");
41580
+ const { createIssueTriage } = await import("./issue-triage-RC5VVUAV.js");
41576
41581
  const triage = createIssueTriage();
41577
41582
  const owner = issueMatch[1] ?? "";
41578
41583
  const num = issueMatch[2] ?? "";
@@ -41600,7 +41605,7 @@ var VALID_TEMPLATES = /* @__PURE__ */ new Set([
41600
41605
  ]);
41601
41606
  async function classifyWithLLM(task) {
41602
41607
  try {
41603
- const { executeExpert: executeExpert2 } = await import("./expert-bridge-NXG4Z7U7.js");
41608
+ const { executeExpert: executeExpert2 } = await import("./expert-bridge-JW4DJPH3.js");
41604
41609
  const prompt = [
41605
41610
  "Classify this task into exactly one pipeline template.",
41606
41611
  "Templates: dev (implementation/bug fix/refactor), research (investigate/evaluate/compare),",
@@ -43241,7 +43246,7 @@ var memoryInitPromise = null;
43241
43246
  async function initPipelineMemory() {
43242
43247
  if (cachedMemory !== null) return cachedMemory;
43243
43248
  try {
43244
- const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-DYU7XMQO.js");
43249
+ const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-ENUULCNK.js");
43245
43250
  const { getLearningDir } = await import("./learning-persistence-M3OTCCNI.js");
43246
43251
  const mem = createSessionMemory2(getLearningDir());
43247
43252
  mem.startSession(`pipeline-${String(getTimeProvider().now())}`);
@@ -43303,7 +43308,7 @@ function recordRoutingExperience(category, success, durationMs, tokensUsed = 0,
43303
43308
  callRecord(routingMemoryCache);
43304
43309
  return;
43305
43310
  }
43306
- routingMemoryInitPromise ??= import("./routing-memory-QFEXYF6G.js").then(({ createRoutingMemory }) => {
43311
+ routingMemoryInitPromise ??= import("./routing-memory-YWPM45FH.js").then(({ createRoutingMemory }) => {
43307
43312
  routingMemoryCache ??= createRoutingMemory();
43308
43313
  return routingMemoryCache;
43309
43314
  }).catch((error) => {
@@ -43337,7 +43342,7 @@ ${text}` : "";
43337
43342
  }
43338
43343
  async function getWeatherContext() {
43339
43344
  try {
43340
- const { generateWeatherReport: generateWeatherReport2 } = await import("./weather-report-RETBQ4VD.js");
43345
+ const { generateWeatherReport: generateWeatherReport2 } = await import("./weather-report-BUKQ7YPV.js");
43341
43346
  const report = generateWeatherReport2({ includeAdaptive: true });
43342
43347
  const mappings = "recommendedMappings" in report ? report.recommendedMappings : [];
43343
43348
  if (!Array.isArray(mappings) || mappings.length === 0) return "";
@@ -43355,7 +43360,7 @@ ${lines}
43355
43360
  }
43356
43361
  async function getMemoryContext(task) {
43357
43362
  try {
43358
- const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-DYU7XMQO.js");
43363
+ const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-ENUULCNK.js");
43359
43364
  const { getLearningDir } = await import("./learning-persistence-M3OTCCNI.js");
43360
43365
  const memory = createSessionMemory2(getLearningDir(), { maxLearningsInContext: 10 });
43361
43366
  const learnings = memory.searchLearnings(task.slice(0, 200));
@@ -43450,7 +43455,10 @@ ${task}
43450
43455
  ${contextBlock}`;
43451
43456
  await postProgress(config, "Plan", feedback !== void 0 ? "Revising..." : "Planning...");
43452
43457
  const r = await runExpert(guard, "architecture", prompt, "plan");
43453
- emitStageEvent2("plan", r.success ? "completed" : "failed", { durationMs: r.durationMs });
43458
+ emitStageEvent2("plan", r.success ? "completed" : "failed", {
43459
+ durationMs: r.durationMs,
43460
+ model: r.model
43461
+ });
43454
43462
  recordOutcome({
43455
43463
  taskId: "plan",
43456
43464
  category: "architecture",
@@ -43467,7 +43475,7 @@ ${contextBlock}`;
43467
43475
  const strategy = config.votingStrategy ?? "higher_order";
43468
43476
  await postProgress(config, "Vote", `Running consensus with ${strategy} strategy...`);
43469
43477
  try {
43470
- const { executeVoting } = await import("./consensus-vote-ZX6NLTI4.js");
43478
+ const { executeVoting } = await import("./consensus-vote-Z55357CP.js");
43471
43479
  const votingResult = await executeVoting(
43472
43480
  {
43473
43481
  proposal: buildVoteProposal(plan, research),
@@ -43555,7 +43563,9 @@ ${task.description}${fb}`,
43555
43563
  task.id
43556
43564
  );
43557
43565
  emitStageEvent2(`impl-${task.id}`, r.success ? "completed" : "failed", {
43558
- durationMs: r.durationMs
43566
+ durationMs: r.durationMs,
43567
+ // model: real per-model failure attribution for the feedback bridge (#4194)
43568
+ model: r.model
43559
43569
  });
43560
43570
  recordOutcome({
43561
43571
  taskId: task.id,
@@ -43592,7 +43602,9 @@ Verdict: PASS/NEEDS_WORK/REJECT`,
43592
43602
  );
43593
43603
  const review = parseQaFromResponse(r.text);
43594
43604
  emitStageEvent2(`qa-${task.id}`, review.verdict === "pass" ? "completed" : "failed", {
43595
- durationMs: r.durationMs
43605
+ durationMs: r.durationMs,
43606
+ // model: real per-model failure attribution for the feedback bridge (#4194)
43607
+ model: r.model
43596
43608
  });
43597
43609
  recordOutcome({
43598
43610
  taskId: task.id,
@@ -43904,7 +43916,7 @@ async function searchCodebaseForTask(task) {
43904
43916
  }
43905
43917
  async function queryResearchRegistry(task) {
43906
43918
  try {
43907
- const { synthesizeResearch: synthesizeResearch2 } = await import("./research-helpers-synthesize-54UEJ24R.js");
43919
+ const { synthesizeResearch: synthesizeResearch2 } = await import("./research-helpers-synthesize-37WHCE5I.js");
43908
43920
  const topic = task.split(/[.!?\n]/).filter((s) => s.trim().length > 10)[0]?.trim();
43909
43921
  if (topic === void 0) return null;
43910
43922
  const result = await synthesizeResearch2(topic.slice(0, 50));
@@ -43975,7 +43987,7 @@ function createScanStageWrapper() {
43975
43987
  try {
43976
43988
  const slug = ctx.task.match(/([a-zA-Z0-9._-]+\/[a-zA-Z0-9._-]+)/)?.[1];
43977
43989
  if (slug !== void 0) {
43978
- const { generateSecurityPlan: generateSecurityPlan2 } = await import("./repo-security-plan-DEYYRMTB.js");
43990
+ const { generateSecurityPlan: generateSecurityPlan2 } = await import("./repo-security-plan-CGXT5CIP.js");
43979
43991
  const plan = await generateSecurityPlan2({ repo: slug, maxScanners: 10 });
43980
43992
  const recs = plan.recommendations.slice(0, 5).map((r) => `${r.priority}: ${r.displayName} (${r.category})`).join("; ");
43981
43993
  return output(PIPELINE_STATE_KEYS.FINDINGS, recs, getTimeProvider().now() - start, true);
@@ -46935,7 +46947,7 @@ var GitHubTaskTracker = class {
46935
46947
  cachedProvider = null;
46936
46948
  async getProvider() {
46937
46949
  if (this.cachedProvider !== null) return this.cachedProvider;
46938
- const { createScmProvider } = await import("./factory-YK2QA3TU.js");
46950
+ const { createScmProvider } = await import("./factory-Z7GGTUK2.js");
46939
46951
  const result = await createScmProvider({ repo: this.config.repo ?? "" });
46940
46952
  if (!result.ok) throw new Error(`SCM provider error: ${result.error.message}`);
46941
46953
  this.cachedProvider = result.value;
@@ -47742,7 +47754,7 @@ async function probeSource(source, includeModelIds) {
47742
47754
  }
47743
47755
  }
47744
47756
  async function defaultSources(includeOpenRouter) {
47745
- const { createAllAdapters: createAllAdapters2 } = await import("./factory-JJ4N6YPR.js");
47757
+ const { createAllAdapters: createAllAdapters2 } = await import("./factory-6JIXPGRH.js");
47746
47758
  const adapters = createAllAdapters2();
47747
47759
  return buildDefaultModelSources(adapters, { includeOpenRouter });
47748
47760
  }
@@ -51113,7 +51125,9 @@ function recordStageFailed(event, store) {
51113
51125
  cli: DEFAULT_CLI,
51114
51126
  // Stage failures don't carry CLI info; default to canonical fallback
51115
51127
  category: "code_generation",
51116
- model: "unknown",
51128
+ // Real model id when the emitter attributed one (#4194); 'unknown' is
51129
+ // reserved for stages that genuinely have no single model — never a guess.
51130
+ model: event.model ?? "unknown",
51117
51131
  success: false,
51118
51132
  durationMs: 0,
51119
51133
  timestamp: new Date(event.timestamp).toISOString(),
@@ -51809,4 +51823,4 @@ export {
51809
51823
  shutdownFeedbackSubscriber,
51810
51824
  createEventBusBridge
51811
51825
  };
51812
- //# sourceMappingURL=chunk-ZQMTD74M.js.map
51826
+ //# sourceMappingURL=chunk-OQUELE4L.js.map