nexus-agents 2.92.3 → 2.92.5

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 (112) hide show
  1. package/dist/{child-mcp-config-WUHKXBWX.js → child-mcp-config-PIDVHWJ7.js} +2 -2
  2. package/dist/{chunk-57HMLBYN.js → chunk-2QJJYCPD.js} +2 -2
  3. package/dist/{chunk-VYNNVUY6.js → chunk-3TU3RJNK.js} +3 -3
  4. package/dist/{chunk-V3XWWLIS.js → chunk-3XC5LFWH.js} +5 -5
  5. package/dist/{chunk-C6PEYEPU.js → chunk-BG4WK4UP.js} +170 -6
  6. package/dist/chunk-BG4WK4UP.js.map +1 -0
  7. package/dist/{chunk-X5BQF6HM.js → chunk-DNSBKQ7I.js} +4 -4
  8. package/dist/{chunk-EAT4GTMT.js → chunk-DQEREDUW.js} +2 -2
  9. package/dist/{chunk-3FVSYMHK.js → chunk-DSERRMPX.js} +2 -2
  10. package/dist/{chunk-3LKW4IEW.js → chunk-EI2E43HI.js} +3 -3
  11. package/dist/{chunk-7QXEK3O6.js → chunk-FL3AXIUL.js} +4 -4
  12. package/dist/{chunk-S6FXRXYE.js → chunk-G55LVPNH.js} +7 -7
  13. package/dist/{chunk-52ACUN6T.js → chunk-GKFFRRS4.js} +4 -4
  14. package/dist/{chunk-7UPXKDF2.js → chunk-KTJUMU2A.js} +40 -191
  15. package/dist/chunk-KTJUMU2A.js.map +1 -0
  16. package/dist/{chunk-W5I6L4UT.js → chunk-L5BXCSMP.js} +10 -3
  17. package/dist/{chunk-W5I6L4UT.js.map → chunk-L5BXCSMP.js.map} +1 -1
  18. package/dist/{chunk-JYIKPBXW.js → chunk-MBK6P4VV.js} +2 -2
  19. package/dist/{chunk-UYOHV3EG.js → chunk-NYWZI46K.js} +53 -32
  20. package/dist/chunk-NYWZI46K.js.map +1 -0
  21. package/dist/{chunk-YEQE7WLP.js → chunk-OXLXVSN3.js} +2 -2
  22. package/dist/{chunk-CGSVTROC.js → chunk-P646QQYW.js} +2 -2
  23. package/dist/{chunk-3HTUYAKS.js → chunk-PIDABDFE.js} +2 -2
  24. package/dist/{chunk-AQTHLUCP.js → chunk-QADQ4LN4.js} +2 -2
  25. package/dist/{chunk-TWAH7VM2.js → chunk-QQMYKFG7.js} +3 -3
  26. package/dist/{chunk-BFYOPX2E.js → chunk-QXGLZETS.js} +7 -7
  27. package/dist/{chunk-Y7E5ZWRQ.js → chunk-SIICMKBA.js} +2 -2
  28. package/dist/{chunk-E6W4Z6GN.js → chunk-TOQJ3UN5.js} +3 -3
  29. package/dist/{chunk-6Q33PBXC.js → chunk-U4RLBLNO.js} +2 -2
  30. package/dist/{chunk-27CNQPQ4.js → chunk-VBIAMMZZ.js} +2 -2
  31. package/dist/{chunk-4GOT42ZA.js → chunk-VU54VB6K.js} +3 -3
  32. package/dist/{chunk-2SMTCNXP.js → chunk-WXEMTPML.js} +2 -2
  33. package/dist/{chunk-SFZESA5O.js → chunk-YJUHVQSG.js} +2 -2
  34. package/dist/{chunk-EFHZHCF2.js → chunk-YQAS2EGR.js} +2 -2
  35. package/dist/{chunk-PRGNJRID.js → chunk-ZYYU26YH.js} +2 -2
  36. package/dist/{cli-circuit-breaker-4SWB6DEB.js → cli-circuit-breaker-HFSOBCPK.js} +4 -4
  37. package/dist/cli.js +36 -36
  38. package/dist/{composite-router-NLVKSTA2.js → composite-router-T2XYCQOU.js} +2 -2
  39. package/dist/{consensus-vote-VSRNSZ5J.js → consensus-vote-IDHQVKX2.js} +12 -12
  40. package/dist/{context-retriever-C4CNVKR5.js → context-retriever-5BJYPAX7.js} +6 -6
  41. package/dist/{doctor-deep-QSVGAHAO.js → doctor-deep-OVGRBG3Z.js} +3 -3
  42. package/dist/{expert-bridge-VIWFPPGZ.js → expert-bridge-JPTHFWPW.js} +4 -4
  43. package/dist/{factory-T3SEZUGW.js → factory-734UWF4C.js} +5 -5
  44. package/dist/{factory-NNSXCD25.js → factory-NE7SNW7V.js} +5 -5
  45. package/dist/index.d.ts +173 -157
  46. package/dist/index.js +74 -57
  47. package/dist/index.js.map +1 -1
  48. package/dist/{init-opencode-WEKHD7YE.js → init-opencode-2ZBDJILW.js} +5 -5
  49. package/dist/{issue-triage-DTCO26WG.js → issue-triage-AGGTH767.js} +5 -5
  50. package/dist/{pr-reviewer-helpers-CI72F4XM.js → pr-reviewer-helpers-WGPLUXPU.js} +4 -4
  51. package/dist/{registry-command-VNFULRTL.js → registry-command-CZZM5SF2.js} +2 -2
  52. package/dist/{repo-security-plan-5MFY7GGQ.js → repo-security-plan-X42KXHT2.js} +3 -3
  53. package/dist/{research-helpers-synthesize-CNZ4C3FN.js → research-helpers-synthesize-C7YGRQI6.js} +3 -3
  54. package/dist/{routing-memory-PYO46COZ.js → routing-memory-2FYZDQUC.js} +2 -2
  55. package/dist/{session-memory-HGCDSZ5R.js → session-memory-53NZRZB6.js} +3 -3
  56. package/dist/{setup-command-JQVGMAO5.js → setup-command-ZV6VZLP4.js} +11 -11
  57. package/dist/{setup-config-QPS4K5QU.js → setup-config-CYRK4UFF.js} +3 -3
  58. package/dist/{setup-custom-api-SP2ZAVGC.js → setup-custom-api-GXHPYLDR.js} +4 -4
  59. package/dist/{tool-memory-SDPIAV2S.js → tool-memory-AX5G67J6.js} +5 -5
  60. package/dist/{weather-report-RWAMQHBL.js → weather-report-AUMNGHYZ.js} +2 -2
  61. package/package.json +1 -1
  62. package/dist/chunk-7UPXKDF2.js.map +0 -1
  63. package/dist/chunk-C6PEYEPU.js.map +0 -1
  64. package/dist/chunk-UYOHV3EG.js.map +0 -1
  65. /package/dist/{child-mcp-config-WUHKXBWX.js.map → child-mcp-config-PIDVHWJ7.js.map} +0 -0
  66. /package/dist/{chunk-57HMLBYN.js.map → chunk-2QJJYCPD.js.map} +0 -0
  67. /package/dist/{chunk-VYNNVUY6.js.map → chunk-3TU3RJNK.js.map} +0 -0
  68. /package/dist/{chunk-V3XWWLIS.js.map → chunk-3XC5LFWH.js.map} +0 -0
  69. /package/dist/{chunk-X5BQF6HM.js.map → chunk-DNSBKQ7I.js.map} +0 -0
  70. /package/dist/{chunk-EAT4GTMT.js.map → chunk-DQEREDUW.js.map} +0 -0
  71. /package/dist/{chunk-3FVSYMHK.js.map → chunk-DSERRMPX.js.map} +0 -0
  72. /package/dist/{chunk-3LKW4IEW.js.map → chunk-EI2E43HI.js.map} +0 -0
  73. /package/dist/{chunk-7QXEK3O6.js.map → chunk-FL3AXIUL.js.map} +0 -0
  74. /package/dist/{chunk-S6FXRXYE.js.map → chunk-G55LVPNH.js.map} +0 -0
  75. /package/dist/{chunk-52ACUN6T.js.map → chunk-GKFFRRS4.js.map} +0 -0
  76. /package/dist/{chunk-JYIKPBXW.js.map → chunk-MBK6P4VV.js.map} +0 -0
  77. /package/dist/{chunk-YEQE7WLP.js.map → chunk-OXLXVSN3.js.map} +0 -0
  78. /package/dist/{chunk-CGSVTROC.js.map → chunk-P646QQYW.js.map} +0 -0
  79. /package/dist/{chunk-3HTUYAKS.js.map → chunk-PIDABDFE.js.map} +0 -0
  80. /package/dist/{chunk-AQTHLUCP.js.map → chunk-QADQ4LN4.js.map} +0 -0
  81. /package/dist/{chunk-TWAH7VM2.js.map → chunk-QQMYKFG7.js.map} +0 -0
  82. /package/dist/{chunk-BFYOPX2E.js.map → chunk-QXGLZETS.js.map} +0 -0
  83. /package/dist/{chunk-Y7E5ZWRQ.js.map → chunk-SIICMKBA.js.map} +0 -0
  84. /package/dist/{chunk-E6W4Z6GN.js.map → chunk-TOQJ3UN5.js.map} +0 -0
  85. /package/dist/{chunk-6Q33PBXC.js.map → chunk-U4RLBLNO.js.map} +0 -0
  86. /package/dist/{chunk-27CNQPQ4.js.map → chunk-VBIAMMZZ.js.map} +0 -0
  87. /package/dist/{chunk-4GOT42ZA.js.map → chunk-VU54VB6K.js.map} +0 -0
  88. /package/dist/{chunk-2SMTCNXP.js.map → chunk-WXEMTPML.js.map} +0 -0
  89. /package/dist/{chunk-SFZESA5O.js.map → chunk-YJUHVQSG.js.map} +0 -0
  90. /package/dist/{chunk-EFHZHCF2.js.map → chunk-YQAS2EGR.js.map} +0 -0
  91. /package/dist/{chunk-PRGNJRID.js.map → chunk-ZYYU26YH.js.map} +0 -0
  92. /package/dist/{cli-circuit-breaker-4SWB6DEB.js.map → cli-circuit-breaker-HFSOBCPK.js.map} +0 -0
  93. /package/dist/{composite-router-NLVKSTA2.js.map → composite-router-T2XYCQOU.js.map} +0 -0
  94. /package/dist/{consensus-vote-VSRNSZ5J.js.map → consensus-vote-IDHQVKX2.js.map} +0 -0
  95. /package/dist/{context-retriever-C4CNVKR5.js.map → context-retriever-5BJYPAX7.js.map} +0 -0
  96. /package/dist/{doctor-deep-QSVGAHAO.js.map → doctor-deep-OVGRBG3Z.js.map} +0 -0
  97. /package/dist/{expert-bridge-VIWFPPGZ.js.map → expert-bridge-JPTHFWPW.js.map} +0 -0
  98. /package/dist/{factory-NNSXCD25.js.map → factory-734UWF4C.js.map} +0 -0
  99. /package/dist/{factory-T3SEZUGW.js.map → factory-NE7SNW7V.js.map} +0 -0
  100. /package/dist/{init-opencode-WEKHD7YE.js.map → init-opencode-2ZBDJILW.js.map} +0 -0
  101. /package/dist/{issue-triage-DTCO26WG.js.map → issue-triage-AGGTH767.js.map} +0 -0
  102. /package/dist/{pr-reviewer-helpers-CI72F4XM.js.map → pr-reviewer-helpers-WGPLUXPU.js.map} +0 -0
  103. /package/dist/{registry-command-VNFULRTL.js.map → registry-command-CZZM5SF2.js.map} +0 -0
  104. /package/dist/{repo-security-plan-5MFY7GGQ.js.map → repo-security-plan-X42KXHT2.js.map} +0 -0
  105. /package/dist/{research-helpers-synthesize-CNZ4C3FN.js.map → research-helpers-synthesize-C7YGRQI6.js.map} +0 -0
  106. /package/dist/{routing-memory-PYO46COZ.js.map → routing-memory-2FYZDQUC.js.map} +0 -0
  107. /package/dist/{session-memory-HGCDSZ5R.js.map → session-memory-53NZRZB6.js.map} +0 -0
  108. /package/dist/{setup-command-JQVGMAO5.js.map → setup-command-ZV6VZLP4.js.map} +0 -0
  109. /package/dist/{setup-config-QPS4K5QU.js.map → setup-config-CYRK4UFF.js.map} +0 -0
  110. /package/dist/{setup-custom-api-SP2ZAVGC.js.map → setup-custom-api-GXHPYLDR.js.map} +0 -0
  111. /package/dist/{tool-memory-SDPIAV2S.js.map → tool-memory-AX5G67J6.js.map} +0 -0
  112. /package/dist/{weather-report-RWAMQHBL.js.map → weather-report-AUMNGHYZ.js.map} +0 -0
@@ -2,7 +2,7 @@ import {
2
2
  createLogger,
3
3
  err,
4
4
  ok
5
- } from "./chunk-W5I6L4UT.js";
5
+ } from "./chunk-L5BXCSMP.js";
6
6
 
7
7
  // src/scm/token-resolver.ts
8
8
  import { execFile } from "child_process";
@@ -87,4 +87,4 @@ export {
87
87
  hasToken,
88
88
  getTokenEnvVars
89
89
  };
90
- //# sourceMappingURL=chunk-EAT4GTMT.js.map
90
+ //# sourceMappingURL=chunk-DQEREDUW.js.map
@@ -10,7 +10,7 @@ import {
10
10
  getTokenEstimator,
11
11
  isRateLimitLikeError,
12
12
  ok
13
- } from "./chunk-W5I6L4UT.js";
13
+ } from "./chunk-L5BXCSMP.js";
14
14
 
15
15
  // src/adapters/base-adapter.ts
16
16
  var AdapterModelError = class extends ModelError {
@@ -707,4 +707,4 @@ export {
707
707
  DEFAULT_COLLECT_STREAM_MAX_CHUNKS,
708
708
  collectStream
709
709
  };
710
- //# sourceMappingURL=chunk-3FVSYMHK.js.map
710
+ //# sourceMappingURL=chunk-DSERRMPX.js.map
@@ -2,14 +2,14 @@ import {
2
2
  CircuitBreakerRegistry,
3
3
  CircuitError,
4
4
  mapCliErrorToCategory
5
- } from "./chunk-JYIKPBXW.js";
5
+ } from "./chunk-MBK6P4VV.js";
6
6
  import {
7
7
  createLogger,
8
8
  err,
9
9
  getFallbackChainForCategory,
10
10
  getTimeProvider,
11
11
  ok
12
- } from "./chunk-W5I6L4UT.js";
12
+ } from "./chunk-L5BXCSMP.js";
13
13
 
14
14
  // src/cli-adapters/cli-circuit-breaker.ts
15
15
  var CATEGORY_TO_FALLBACK = {
@@ -152,4 +152,4 @@ export {
152
152
  CliCircuitBreakerIntegration,
153
153
  createCliCircuitBreakerIntegration
154
154
  };
155
- //# sourceMappingURL=chunk-3LKW4IEW.js.map
155
+ //# sourceMappingURL=chunk-EI2E43HI.js.map
@@ -5,13 +5,13 @@ import {
5
5
  } from "./chunk-6T3EPABN.js";
6
6
  import {
7
7
  generateId
8
- } from "./chunk-PRGNJRID.js";
8
+ } from "./chunk-ZYYU26YH.js";
9
9
  import {
10
10
  getMemoryRegistry
11
11
  } from "./chunk-PQHVC4BD.js";
12
12
  import {
13
13
  SessionMemory
14
- } from "./chunk-YEQE7WLP.js";
14
+ } from "./chunk-OXLXVSN3.js";
15
15
  import {
16
16
  ErrorCode,
17
17
  NexusError,
@@ -24,7 +24,7 @@ import {
24
24
  getTimeProvider,
25
25
  ok,
26
26
  setSharedMobiMemDbPathResolver
27
- } from "./chunk-W5I6L4UT.js";
27
+ } from "./chunk-L5BXCSMP.js";
28
28
  import {
29
29
  nexusDataPath
30
30
  } from "./chunk-CH7QIDHQ.js";
@@ -5612,4 +5612,4 @@ export {
5612
5612
  reinitializeMemoryBackends,
5613
5613
  ToolMemoryManager
5614
5614
  };
5615
- //# sourceMappingURL=chunk-7QXEK3O6.js.map
5615
+ //# sourceMappingURL=chunk-FL3AXIUL.js.map
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  getCliForModelId
3
- } from "./chunk-SFZESA5O.js";
3
+ } from "./chunk-YJUHVQSG.js";
4
4
  import {
5
5
  MODEL_IDS,
6
6
  createLogger,
7
7
  getTimeProvider,
8
8
  isRateLimitText
9
- } from "./chunk-W5I6L4UT.js";
9
+ } from "./chunk-L5BXCSMP.js";
10
10
 
11
11
  // src/pipeline/expert-bridge.ts
12
12
  function resolveCliFromModelString(model) {
@@ -24,7 +24,7 @@ async function getMcpConfigPath() {
24
24
  if (cachedMcpConfigPath !== null) return cachedMcpConfigPath;
25
25
  mcpConfigInitPromise ??= (async () => {
26
26
  try {
27
- const { generateMcpConfig } = await import("./child-mcp-config-WUHKXBWX.js");
27
+ const { generateMcpConfig } = await import("./child-mcp-config-PIDVHWJ7.js");
28
28
  const config = await generateMcpConfig();
29
29
  cachedMcpConfigPath = config.configPath;
30
30
  cachedMcpConfigCleanup = config.cleanup;
@@ -74,8 +74,8 @@ var routerInitPromise = null;
74
74
  async function getRouter() {
75
75
  if (cachedRouter !== null) return cachedRouter;
76
76
  routerInitPromise ??= (async () => {
77
- const { createAllAdapters } = await import("./factory-T3SEZUGW.js");
78
- const { createCompositeRouter } = await import("./composite-router-NLVKSTA2.js");
77
+ const { createAllAdapters } = await import("./factory-734UWF4C.js");
78
+ const { createCompositeRouter } = await import("./composite-router-T2XYCQOU.js");
79
79
  const adapters = createAllAdapters();
80
80
  if (adapters.size === 0) {
81
81
  routerInitPromise = null;
@@ -83,7 +83,7 @@ async function getRouter() {
83
83
  }
84
84
  cachedRouter = adaptCompositeRouter(createCompositeRouter(adapters));
85
85
  try {
86
- const { createCliCircuitBreakerIntegration } = await import("./cli-circuit-breaker-4SWB6DEB.js");
86
+ const { createCliCircuitBreakerIntegration } = await import("./cli-circuit-breaker-HFSOBCPK.js");
87
87
  cachedCircuitBreaker = createCliCircuitBreakerIntegration([...adapters.values()]);
88
88
  } catch (error) {
89
89
  const msg = error instanceof Error ? error.message : String(error);
@@ -188,4 +188,4 @@ export {
188
188
  shutdownExpertBridge,
189
189
  executeExpert
190
190
  };
191
- //# sourceMappingURL=chunk-S6FXRXYE.js.map
191
+ //# sourceMappingURL=chunk-G55LVPNH.js.map
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  resolveToken
3
- } from "./chunk-EAT4GTMT.js";
3
+ } from "./chunk-DQEREDUW.js";
4
4
  import {
5
5
  GitHubProvider,
6
6
  ScmError
7
- } from "./chunk-EFHZHCF2.js";
7
+ } from "./chunk-YQAS2EGR.js";
8
8
  import {
9
9
  err,
10
10
  ok
11
- } from "./chunk-W5I6L4UT.js";
11
+ } from "./chunk-L5BXCSMP.js";
12
12
 
13
13
  // src/scm/factory.ts
14
14
  async function createScmProvider(config) {
@@ -41,4 +41,4 @@ export {
41
41
  createScmProvider,
42
42
  createGitHubProvider
43
43
  };
44
- //# sourceMappingURL=chunk-52ACUN6T.js.map
44
+ //# sourceMappingURL=chunk-GKFFRRS4.js.map
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  getTokenEnvVars,
3
3
  resolveToken
4
- } from "./chunk-EAT4GTMT.js";
4
+ } from "./chunk-DQEREDUW.js";
5
5
  import {
6
6
  executeExpert
7
- } from "./chunk-S6FXRXYE.js";
7
+ } from "./chunk-G55LVPNH.js";
8
8
  import {
9
9
  EventTopics,
10
10
  JobStatusSchema,
@@ -42,7 +42,7 @@ import {
42
42
  writeJobComplete,
43
43
  writeJobFailed,
44
44
  writeJobPending
45
- } from "./chunk-UYOHV3EG.js";
45
+ } from "./chunk-NYWZI46K.js";
46
46
  import {
47
47
  REGISTRY_PATH,
48
48
  getProjectRoot,
@@ -51,17 +51,19 @@ import {
51
51
  normalizeTopicToCanonical,
52
52
  savePapersRegistry,
53
53
  synthesizeResearch
54
- } from "./chunk-CGSVTROC.js";
54
+ } from "./chunk-P646QQYW.js";
55
55
  import {
56
- IssueTriage
57
- } from "./chunk-C6PEYEPU.js";
56
+ IssueTriage,
57
+ createAuditTrail,
58
+ createGraphAuditBridge
59
+ } from "./chunk-BG4WK4UP.js";
58
60
  import {
59
61
  resolveEnvMode,
60
62
  sanitizeInput
61
- } from "./chunk-27CNQPQ4.js";
63
+ } from "./chunk-VBIAMMZZ.js";
62
64
  import {
63
65
  generateSecurityPlan
64
- } from "./chunk-57HMLBYN.js";
66
+ } from "./chunk-2QJJYCPD.js";
65
67
  import {
66
68
  analyzeGitHubRepo
67
69
  } from "./chunk-HFOQKCD2.js";
@@ -74,25 +76,25 @@ import {
74
76
  getContextForTask,
75
77
  inferTaskCategory,
76
78
  summarizeContextForPrompt
77
- } from "./chunk-4GOT42ZA.js";
79
+ } from "./chunk-VU54VB6K.js";
78
80
  import {
79
81
  DEFAULT_RELEVANCE_CONFIG,
80
82
  MemoryImportance,
81
83
  calculateTextJaccardSimilarity,
82
84
  getToolMemory
83
- } from "./chunk-7QXEK3O6.js";
85
+ } from "./chunk-FL3AXIUL.js";
84
86
  import {
85
87
  DEFAULT_TASK_TTL_MS,
86
88
  DEFAULT_TOOL_RATE_LIMITS,
87
89
  clampTaskTtl
88
- } from "./chunk-BFYOPX2E.js";
90
+ } from "./chunk-QXGLZETS.js";
89
91
  import {
90
92
  getAvailabilityCache,
91
93
  resolveFallback
92
- } from "./chunk-SFZESA5O.js";
94
+ } from "./chunk-YJUHVQSG.js";
93
95
  import {
94
96
  DEFAULTS
95
- } from "./chunk-3HTUYAKS.js";
97
+ } from "./chunk-PIDABDFE.js";
96
98
  import {
97
99
  resolveInsideRoot
98
100
  } from "./chunk-NUBSJGQZ.js";
@@ -108,11 +110,11 @@ import {
108
110
  getAvailableClis,
109
111
  sleep,
110
112
  withTimeout
111
- } from "./chunk-X5BQF6HM.js";
113
+ } from "./chunk-DNSBKQ7I.js";
112
114
  import {
113
115
  generateHyphenId,
114
116
  generateUUID
115
- } from "./chunk-PRGNJRID.js";
117
+ } from "./chunk-ZYYU26YH.js";
116
118
  import {
117
119
  BUILT_IN_EXPERTS,
118
120
  BuiltInExpertTypeSchema,
@@ -124,7 +126,7 @@ import {
124
126
  } from "./chunk-PQHVC4BD.js";
125
127
  import {
126
128
  createSessionMemory
127
- } from "./chunk-YEQE7WLP.js";
129
+ } from "./chunk-OXLXVSN3.js";
128
130
  import {
129
131
  AGENT_ROUTER_TIMEOUTS,
130
132
  API_TIMEOUTS,
@@ -195,7 +197,7 @@ import {
195
197
  resolveModelIdentitySync,
196
198
  toExpertTaskAnalysisResult,
197
199
  withStep
198
- } from "./chunk-W5I6L4UT.js";
200
+ } from "./chunk-L5BXCSMP.js";
199
201
  import {
200
202
  getNexusDataDir,
201
203
  nexusDataPath,
@@ -26889,7 +26891,7 @@ async function populateUnifiedContextOnState(state) {
26889
26891
  try {
26890
26892
  const taskCandidate = state["task"];
26891
26893
  if (typeof taskCandidate !== "string" || taskCandidate === "") return;
26892
- const { getContextForTask: getContextForTask2, inferTaskCategory: inferTaskCategory2 } = await import("./context-retriever-C4CNVKR5.js");
26894
+ const { getContextForTask: getContextForTask2, inferTaskCategory: inferTaskCategory2 } = await import("./context-retriever-5BJYPAX7.js");
26893
26895
  const ctx = await getContextForTask2({
26894
26896
  task: taskCandidate,
26895
26897
  category: inferTaskCategory2(taskCandidate),
@@ -39234,149 +39236,6 @@ function recordTriageOutcome(success, durationMs, errorMsg) {
39234
39236
  }
39235
39237
  }
39236
39238
 
39237
- // src/security/audit-trail.ts
39238
- var MAX_EVENTS = 1e4;
39239
- var MAX_STRIPPED_ELEMENTS_PER_EVENT = 20;
39240
- var AuditTrail = class {
39241
- events = [];
39242
- nextId = 1;
39243
- /** Appends an event to the trail. Returns the assigned event ID. */
39244
- append(event) {
39245
- const id = `audit-${String(this.nextId++)}`;
39246
- const fullEvent = {
39247
- ...event,
39248
- id,
39249
- timestamp: getTimeProvider().nowIso()
39250
- };
39251
- this.events.push(fullEvent);
39252
- this.enforceLimit();
39253
- return id;
39254
- }
39255
- /** Queries events matching the given filter. */
39256
- query(filter = {}) {
39257
- let results = this.events;
39258
- if (filter.type !== void 0) {
39259
- results = results.filter((e) => e.type === filter.type);
39260
- }
39261
- if (filter.since !== void 0) {
39262
- results = filterSince(results, filter.since);
39263
- }
39264
- if (filter.until !== void 0) {
39265
- results = filterUntil(results, filter.until);
39266
- }
39267
- if (filter.trustTier !== void 0) {
39268
- results = filterByTrustTier(results, filter.trustTier);
39269
- }
39270
- const limit = filter.limit ?? results.length;
39271
- return results.slice(-limit);
39272
- }
39273
- /** Returns the total number of events. */
39274
- get size() {
39275
- return this.events.length;
39276
- }
39277
- /** Clears all events. */
39278
- clear() {
39279
- this.events = [];
39280
- }
39281
- /** Enforces MAX_EVENTS bound. */
39282
- enforceLimit() {
39283
- if (this.events.length > MAX_EVENTS) {
39284
- this.events = this.events.slice(-MAX_EVENTS);
39285
- }
39286
- }
39287
- };
39288
- function filterSince(events, since) {
39289
- const sinceTime = new Date(since).getTime();
39290
- return events.filter((e) => new Date(e.timestamp).getTime() >= sinceTime);
39291
- }
39292
- function filterUntil(events, until) {
39293
- const untilTime = new Date(until).getTime();
39294
- return events.filter((e) => new Date(e.timestamp).getTime() <= untilTime);
39295
- }
39296
- function filterByTrustTier(events, tier) {
39297
- return events.filter((e) => {
39298
- if (e.type === "trust_classification") return e.assignedTier === tier;
39299
- if (e.type === "policy_gate") return e.inputTrustTier === tier;
39300
- if (e.type === "reputation") return e.effectiveTier === tier;
39301
- return true;
39302
- });
39303
- }
39304
- function emitTrustEvent(trail, data) {
39305
- return trail.append({
39306
- type: "trust_classification",
39307
- component: "trust-classifier",
39308
- ...data
39309
- });
39310
- }
39311
- function emitPolicyEvent(trail, data) {
39312
- return trail.append({
39313
- type: "policy_gate",
39314
- component: "policy-gate",
39315
- ...data
39316
- });
39317
- }
39318
- function emitCorroborationEvent(trail, data) {
39319
- return trail.append({
39320
- type: "corroboration",
39321
- component: "corroboration-validator",
39322
- ...data
39323
- });
39324
- }
39325
- function emitReputationEvent(trail, data) {
39326
- return trail.append({
39327
- type: "reputation",
39328
- component: "reputation-model",
39329
- ...data
39330
- });
39331
- }
39332
- function emitSanitizationEvent(trail, data) {
39333
- return trail.append({
39334
- type: "sanitization",
39335
- component: "input-sanitizer",
39336
- ...data
39337
- });
39338
- }
39339
- function emitGraphExecutionEvent(trail, data) {
39340
- return trail.append({
39341
- type: "graph_execution",
39342
- component: "graph-executor",
39343
- ...data
39344
- });
39345
- }
39346
- function createGraphAuditBridge(trail) {
39347
- return (event) => {
39348
- const nodeId = typeof event["nodeId"] === "string" ? event["nodeId"] : void 0;
39349
- const stepNumber = typeof event["stepNumber"] === "number" ? event["stepNumber"] : 0;
39350
- emitGraphExecutionEvent(trail, {
39351
- graphEvent: event.type,
39352
- ...nodeId !== void 0 ? { nodeId } : {},
39353
- stepNumber,
39354
- detail: formatGraphEventDetail(event)
39355
- });
39356
- };
39357
- }
39358
- function formatGraphEventDetail(event) {
39359
- switch (event.type) {
39360
- case "node_started":
39361
- return `Node ${String(event["nodeId"])} starting`;
39362
- case "node_completed":
39363
- return `Node ${String(event["nodeId"])} completed in ${String(event["durationMs"])}ms`;
39364
- case "node_error":
39365
- return `Node ${String(event["nodeId"])} failed: ${String(event["error"])}`;
39366
- case "state_updated":
39367
- return `State updated: ${String(event["updatedKeys"])}`;
39368
- case "step_completed":
39369
- return `Step ${String(event["stepNumber"])}: ${String(event["nodesExecuted"])} nodes`;
39370
- case "execution_complete":
39371
- return `Complete: ${String(event["totalSteps"])} steps, ${String(event["durationMs"])}ms`;
39372
- default:
39373
- return event.type;
39374
- }
39375
- }
39376
- function createAuditTrail() {
39377
- return new AuditTrail();
39378
- }
39379
-
39380
39239
  // src/mcp/tools/run-graph-workflow.ts
39381
39240
  import { z as z70 } from "zod";
39382
39241
  var RunGraphWorkflowInputSchema = z70.object({
@@ -42526,7 +42385,7 @@ async function tryIssueTriage(task) {
42526
42385
  try {
42527
42386
  const issueMatch = task.match(/github\.com\/([^/]+\/[^/]+)\/issues\/(\d+)/);
42528
42387
  if (issueMatch === null) return null;
42529
- const { createIssueTriage } = await import("./issue-triage-DTCO26WG.js");
42388
+ const { createIssueTriage } = await import("./issue-triage-AGGTH767.js");
42530
42389
  const triage = createIssueTriage();
42531
42390
  const owner = issueMatch[1] ?? "";
42532
42391
  const num = issueMatch[2] ?? "";
@@ -42554,7 +42413,7 @@ var VALID_TEMPLATES = /* @__PURE__ */ new Set([
42554
42413
  ]);
42555
42414
  async function classifyWithLLM(task) {
42556
42415
  try {
42557
- const { executeExpert: executeExpert2 } = await import("./expert-bridge-VIWFPPGZ.js");
42416
+ const { executeExpert: executeExpert2 } = await import("./expert-bridge-JPTHFWPW.js");
42558
42417
  const prompt = [
42559
42418
  "Classify this task into exactly one pipeline template.",
42560
42419
  "Templates: dev (implementation/bug fix/refactor), research (investigate/evaluate/compare),",
@@ -43336,7 +43195,7 @@ var memoryInitPromise = null;
43336
43195
  async function initPipelineMemory() {
43337
43196
  if (cachedMemory !== null) return cachedMemory;
43338
43197
  try {
43339
- const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-HGCDSZ5R.js");
43198
+ const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-53NZRZB6.js");
43340
43199
  const { getLearningDir } = await import("./learning-persistence-UKPO7RYK.js");
43341
43200
  const mem = createSessionMemory2(getLearningDir());
43342
43201
  mem.startSession(`pipeline-${String(getTimeProvider().now())}`);
@@ -43393,7 +43252,7 @@ function recordRoutingExperience(category, success, durationMs) {
43393
43252
  callRecord(routingMemoryCache);
43394
43253
  return;
43395
43254
  }
43396
- routingMemoryInitPromise ??= import("./routing-memory-PYO46COZ.js").then(({ createRoutingMemory }) => {
43255
+ routingMemoryInitPromise ??= import("./routing-memory-2FYZDQUC.js").then(({ createRoutingMemory }) => {
43397
43256
  routingMemoryCache ??= createRoutingMemory();
43398
43257
  return routingMemoryCache;
43399
43258
  }).catch((error) => {
@@ -43427,7 +43286,7 @@ ${text}` : "";
43427
43286
  }
43428
43287
  async function getWeatherContext() {
43429
43288
  try {
43430
- const { generateWeatherReport: generateWeatherReport2 } = await import("./weather-report-RWAMQHBL.js");
43289
+ const { generateWeatherReport: generateWeatherReport2 } = await import("./weather-report-AUMNGHYZ.js");
43431
43290
  const report = generateWeatherReport2({ includeAdaptive: true });
43432
43291
  const mappings = "recommendedMappings" in report ? report.recommendedMappings : [];
43433
43292
  if (!Array.isArray(mappings) || mappings.length === 0) return "";
@@ -43445,7 +43304,7 @@ ${lines}
43445
43304
  }
43446
43305
  async function getMemoryContext(task) {
43447
43306
  try {
43448
- const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-HGCDSZ5R.js");
43307
+ const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-53NZRZB6.js");
43449
43308
  const { getLearningDir } = await import("./learning-persistence-UKPO7RYK.js");
43450
43309
  const memory = createSessionMemory2(getLearningDir(), { maxLearningsInContext: 10 });
43451
43310
  const learnings = memory.searchLearnings(task.slice(0, 200));
@@ -43551,7 +43410,7 @@ ${contextBlock}`;
43551
43410
  const strategy = config.votingStrategy ?? "higher_order";
43552
43411
  await postProgress(config, "Vote", `Running consensus with ${strategy} strategy...`);
43553
43412
  try {
43554
- const { executeVoting } = await import("./consensus-vote-VSRNSZ5J.js");
43413
+ const { executeVoting } = await import("./consensus-vote-IDHQVKX2.js");
43555
43414
  const votingResult = await executeVoting(
43556
43415
  {
43557
43416
  proposal: plan.slice(0, 4e3),
@@ -44327,7 +44186,7 @@ ${codeContext}`;
44327
44186
  const result = await stages.research(enrichedTask);
44328
44187
  return output(PIPELINE_STATE_KEYS.RESEARCH, result, getTimeProvider().now() - start, true);
44329
44188
  } catch (e) {
44330
- return failOutput(PIPELINE_STATE_KEYS.RESEARCH, String(e), getTimeProvider().now() - start);
44189
+ return failOutput(PIPELINE_STATE_KEYS.RESEARCH, getErrorMessage(e), getTimeProvider().now() - start);
44331
44190
  }
44332
44191
  }
44333
44192
  };
@@ -44349,7 +44208,7 @@ ${priorArt}` : research;
44349
44208
  const result = await stages.plan(ctx.task, enrichedResearch, feedback);
44350
44209
  return output(PIPELINE_STATE_KEYS.PLAN, result, getTimeProvider().now() - start, true);
44351
44210
  } catch (e) {
44352
- return failOutput(PIPELINE_STATE_KEYS.PLAN, String(e), getTimeProvider().now() - start);
44211
+ return failOutput(PIPELINE_STATE_KEYS.PLAN, getErrorMessage(e), getTimeProvider().now() - start);
44353
44212
  }
44354
44213
  }
44355
44214
  };
@@ -44372,7 +44231,7 @@ function createVoteStageWrapper(stages) {
44372
44231
  success: isApproved(vote)
44373
44232
  };
44374
44233
  } catch (e) {
44375
- return failOutput(PIPELINE_STATE_KEYS.VOTE_RESULT, String(e), getTimeProvider().now() - start);
44234
+ return failOutput(PIPELINE_STATE_KEYS.VOTE_RESULT, getErrorMessage(e), getTimeProvider().now() - start);
44376
44235
  }
44377
44236
  }
44378
44237
  };
@@ -44388,7 +44247,7 @@ function createDecomposeStageWrapper(stages) {
44388
44247
  const tasks = await stages.decompose(plan);
44389
44248
  return output(PIPELINE_STATE_KEYS.TASKS, tasks, getTimeProvider().now() - start, true);
44390
44249
  } catch (e) {
44391
- return failOutput(PIPELINE_STATE_KEYS.TASKS, String(e), getTimeProvider().now() - start);
44250
+ return failOutput(PIPELINE_STATE_KEYS.TASKS, getErrorMessage(e), getTimeProvider().now() - start);
44392
44251
  }
44393
44252
  }
44394
44253
  };
@@ -44404,7 +44263,7 @@ function createImplementStageWrapper(stages) {
44404
44263
  const results = await Promise.all(tasks.map((t) => stages.implement(t)));
44405
44264
  return output(PIPELINE_STATE_KEYS.IMPLEMENTATIONS, results, getTimeProvider().now() - start, true);
44406
44265
  } catch (e) {
44407
- return failOutput(PIPELINE_STATE_KEYS.IMPLEMENTATIONS, String(e), getTimeProvider().now() - start);
44266
+ return failOutput(PIPELINE_STATE_KEYS.IMPLEMENTATIONS, getErrorMessage(e), getTimeProvider().now() - start);
44408
44267
  }
44409
44268
  }
44410
44269
  };
@@ -44422,7 +44281,7 @@ function createQaStageWrapper(stages) {
44422
44281
  const allPass = reviews.every((r) => r.verdict === "pass");
44423
44282
  return output(PIPELINE_STATE_KEYS.QA_ITERATIONS, reviews, getTimeProvider().now() - start, allPass);
44424
44283
  } catch (e) {
44425
- return failOutput(PIPELINE_STATE_KEYS.QA_ITERATIONS, String(e), getTimeProvider().now() - start);
44284
+ return failOutput(PIPELINE_STATE_KEYS.QA_ITERATIONS, getErrorMessage(e), getTimeProvider().now() - start);
44426
44285
  }
44427
44286
  }
44428
44287
  };
@@ -44442,7 +44301,7 @@ function createSecurityStageWrapper(stages) {
44442
44301
  result.passed
44443
44302
  );
44444
44303
  } catch (e) {
44445
- return failOutput(PIPELINE_STATE_KEYS.SECURITY_PASSED, String(e), getTimeProvider().now() - start);
44304
+ return failOutput(PIPELINE_STATE_KEYS.SECURITY_PASSED, getErrorMessage(e), getTimeProvider().now() - start);
44446
44305
  }
44447
44306
  }
44448
44307
  };
@@ -44478,7 +44337,7 @@ async function searchCodebaseForTask(task) {
44478
44337
  }
44479
44338
  async function queryResearchRegistry(task) {
44480
44339
  try {
44481
- const { synthesizeResearch: synthesizeResearch2 } = await import("./research-helpers-synthesize-CNZ4C3FN.js");
44340
+ const { synthesizeResearch: synthesizeResearch2 } = await import("./research-helpers-synthesize-C7YGRQI6.js");
44482
44341
  const topic = task.split(/[.!?\n]/).filter((s) => s.trim().length > 10)[0]?.trim();
44483
44342
  if (topic === void 0) return null;
44484
44343
  const result = await synthesizeResearch2(topic.slice(0, 50));
@@ -44535,7 +44394,7 @@ function createAnalyzeStageWrapper() {
44535
44394
  const summary = `Language: ${String(analysis.language)}, Framework: ${String(analysis.framework)}, CI: ${String(analysis.ciProvider)}, Security: ${analysis.securityTooling.join(", ") || "none"}`;
44536
44395
  return output(PIPELINE_STATE_KEYS.RESEARCH, summary, getTimeProvider().now() - start, true);
44537
44396
  } catch (e) {
44538
- return failOutput(PIPELINE_STATE_KEYS.RESEARCH, String(e), getTimeProvider().now() - start);
44397
+ return failOutput(PIPELINE_STATE_KEYS.RESEARCH, getErrorMessage(e), getTimeProvider().now() - start);
44539
44398
  }
44540
44399
  }
44541
44400
  };
@@ -44549,14 +44408,14 @@ function createScanStageWrapper() {
44549
44408
  try {
44550
44409
  const slug = ctx.task.match(/([a-zA-Z0-9._-]+\/[a-zA-Z0-9._-]+)/)?.[1];
44551
44410
  if (slug !== void 0) {
44552
- const { generateSecurityPlan: generateSecurityPlan2 } = await import("./repo-security-plan-5MFY7GGQ.js");
44411
+ const { generateSecurityPlan: generateSecurityPlan2 } = await import("./repo-security-plan-X42KXHT2.js");
44553
44412
  const plan = await generateSecurityPlan2({ repo: slug, maxScanners: 10 });
44554
44413
  const recs = plan.recommendations.slice(0, 5).map((r) => `${r.priority}: ${r.displayName} (${r.category})`).join("; ");
44555
44414
  return output(PIPELINE_STATE_KEYS.FINDINGS, recs, getTimeProvider().now() - start, true);
44556
44415
  }
44557
44416
  return output(PIPELINE_STATE_KEYS.FINDINGS, "No repository to scan", getTimeProvider().now() - start, true);
44558
44417
  } catch (e) {
44559
- return failOutput(PIPELINE_STATE_KEYS.FINDINGS, String(e), getTimeProvider().now() - start);
44418
+ return failOutput(PIPELINE_STATE_KEYS.FINDINGS, getErrorMessage(e), getTimeProvider().now() - start);
44560
44419
  }
44561
44420
  }
44562
44421
  };
@@ -51165,7 +51024,7 @@ var GitHubTaskTracker = class {
51165
51024
  cachedProvider = null;
51166
51025
  async getProvider() {
51167
51026
  if (this.cachedProvider !== null) return this.cachedProvider;
51168
- const { createScmProvider } = await import("./factory-NNSXCD25.js");
51027
+ const { createScmProvider } = await import("./factory-NE7SNW7V.js");
51169
51028
  const result = await createScmProvider({ repo: this.config.repo ?? "" });
51170
51029
  if (!result.ok) throw new Error(`SCM provider error: ${result.error.message}`);
51171
51030
  this.cachedProvider = result.value;
@@ -51746,16 +51605,6 @@ export {
51746
51605
  registerResearchSynthesizeTool,
51747
51606
  IssueTriageInputSchema,
51748
51607
  registerIssueTriageTool,
51749
- MAX_STRIPPED_ELEMENTS_PER_EVENT,
51750
- AuditTrail,
51751
- emitTrustEvent,
51752
- emitPolicyEvent,
51753
- emitCorroborationEvent,
51754
- emitReputationEvent,
51755
- emitSanitizationEvent,
51756
- emitGraphExecutionEvent,
51757
- createGraphAuditBridge,
51758
- createAuditTrail,
51759
51608
  RunGraphWorkflowInputSchema,
51760
51609
  registerRunGraphWorkflowTool,
51761
51610
  parseSpec,
@@ -51879,4 +51728,4 @@ export {
51879
51728
  detectBackend,
51880
51729
  createTaskTracker
51881
51730
  };
51882
- //# sourceMappingURL=chunk-7UPXKDF2.js.map
51731
+ //# sourceMappingURL=chunk-KTJUMU2A.js.map