nexus-agents 3.4.7 → 3.5.1

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 (125) hide show
  1. package/dist/{child-mcp-config-RPGCCPR7.js → child-mcp-config-VVTPONKP.js} +2 -2
  2. package/dist/{chunk-2KOTMA3Y.js → chunk-3FSBTAEC.js} +2 -2
  3. package/dist/{chunk-ZFLZL6JL.js → chunk-45IB3F6G.js} +71 -10
  4. package/dist/chunk-45IB3F6G.js.map +1 -0
  5. package/dist/{chunk-F4SOZWM5.js → chunk-4ZVNCOZH.js} +2 -2
  6. package/dist/{chunk-UAPIH3ZX.js → chunk-5MRYWJVK.js} +2 -2
  7. package/dist/{chunk-QITBS6CA.js → chunk-6DIGIJIY.js} +8 -8
  8. package/dist/{chunk-SLLUTZHU.js → chunk-6H5AM5SG.js} +55 -46
  9. package/dist/{chunk-SLLUTZHU.js.map → chunk-6H5AM5SG.js.map} +1 -1
  10. package/dist/{chunk-J34IF7WA.js → chunk-6ZOZYECZ.js} +8 -8
  11. package/dist/{chunk-PHEB64A5.js → chunk-7GFMCMLF.js} +2 -2
  12. package/dist/{chunk-YF35FKKD.js → chunk-BQTMMLQQ.js} +15 -7
  13. package/dist/chunk-BQTMMLQQ.js.map +1 -0
  14. package/dist/{chunk-GMJGQ2XO.js → chunk-C25JA3SI.js} +4 -4
  15. package/dist/{chunk-WEQNCK5F.js → chunk-CQ4Y7ULT.js} +5 -5
  16. package/dist/{chunk-7BBHGO7A.js → chunk-D3KHLA3D.js} +2 -2
  17. package/dist/{chunk-RGAC3SAM.js → chunk-EKASN4MV.js} +5 -5
  18. package/dist/{chunk-JHIKOTSP.js → chunk-GVLDWGSK.js} +7 -7
  19. package/dist/{chunk-5542NZXG.js → chunk-GWLBIDS6.js} +3 -3
  20. package/dist/{chunk-UOG5ANHL.js → chunk-HKX7HKDV.js} +3 -3
  21. package/dist/{chunk-TU25EPBM.js → chunk-HPAYIX7E.js} +2 -2
  22. package/dist/{chunk-OR2CJF3R.js → chunk-IK45M7J3.js} +5 -5
  23. package/dist/{chunk-Z53SVS5A.js → chunk-KBVU2GGV.js} +2 -2
  24. package/dist/{chunk-W4GN7VPG.js → chunk-L4J7AXP3.js} +2 -2
  25. package/dist/{chunk-SC7OLO76.js → chunk-LMGXSMC6.js} +2 -2
  26. package/dist/{chunk-YO2OXOPU.js → chunk-QDH2SQKE.js} +2 -2
  27. package/dist/{chunk-FTH6XZFA.js → chunk-QDUZSOOU.js} +2 -2
  28. package/dist/{chunk-RSUQCA2E.js → chunk-ROIGF7ZF.js} +4 -4
  29. package/dist/{chunk-6DDKUQFD.js → chunk-TPKK4ANS.js} +2 -2
  30. package/dist/{chunk-KJ2M2L6J.js → chunk-U76AVHIW.js} +2 -2
  31. package/dist/{chunk-H5BWZMLU.js → chunk-UFJDYK22.js} +4 -4
  32. package/dist/{chunk-SC522IDR.js → chunk-UKIFG26L.js} +3 -3
  33. package/dist/{chunk-XND2FD6I.js → chunk-UOA23X5A.js} +2 -2
  34. package/dist/{chunk-WGBVREBV.js → chunk-XKAUANYB.js} +2 -2
  35. package/dist/{chunk-YHSWBCZJ.js → chunk-XKGEKKKQ.js} +3 -3
  36. package/dist/{chunk-CG5TS6GJ.js → chunk-XOWOOBY7.js} +5 -5
  37. package/dist/{chunk-FBTBH65X.js → chunk-YFY64CCU.js} +5 -4
  38. package/dist/chunk-YFY64CCU.js.map +1 -0
  39. package/dist/{chunk-DXORNOYR.js → chunk-Z5HKO4TN.js} +2 -2
  40. package/dist/{cli-circuit-breaker-PETQMWAX.js → cli-circuit-breaker-BKCDXF7A.js} +3 -3
  41. package/dist/cli.js +41 -41
  42. package/dist/{codebase-search-LUF5YJLQ.js → codebase-search-AATGEN2H.js} +2 -2
  43. package/dist/{composite-router-D36RXDEN.js → composite-router-7ZQW5X6M.js} +2 -2
  44. package/dist/{consensus-vote-CVXD54KV.js → consensus-vote-JAQXK6NR.js} +16 -16
  45. package/dist/{context-retriever-TCS3ZCHM.js → context-retriever-4BWVW6Z3.js} +8 -8
  46. package/dist/{doctor-deep-KCBA7PRP.js → doctor-deep-XEIFQH2B.js} +3 -3
  47. package/dist/{expert-bridge-4N5Q5T6J.js → expert-bridge-KXXOPEZF.js} +4 -4
  48. package/dist/{factory-KDJP6PLO.js → factory-DFOM4HM5.js} +5 -5
  49. package/dist/{factory-ASP7H2N6.js → factory-L74ZN3ZO.js} +9 -9
  50. package/dist/{improvement-review-5SWVO5KR.js → improvement-review-P5OTBXCR.js} +5 -5
  51. package/dist/index.d.ts +75 -1
  52. package/dist/index.js +31 -31
  53. package/dist/{init-opencode-Q6YEYFJK.js → init-opencode-ZYRLCXUF.js} +6 -6
  54. package/dist/{issue-triage-AOTQZ7RB.js → issue-triage-R543HBHK.js} +6 -6
  55. package/dist/{pr-reviewer-helpers-GAXKDXOB.js → pr-reviewer-helpers-T33G7ACC.js} +4 -4
  56. package/dist/{registry-command-AUHXXQMZ.js → registry-command-PW7PXQDH.js} +2 -2
  57. package/dist/{repo-security-plan-EGRREARY.js → repo-security-plan-RVKAJD7N.js} +3 -3
  58. package/dist/{research-helpers-synthesize-HBR26XOL.js → research-helpers-synthesize-FPBPUTJJ.js} +4 -4
  59. package/dist/{routing-memory-UJ6EC6HP.js → routing-memory-X5KJULU7.js} +2 -2
  60. package/dist/{session-memory-J47B6D5W.js → session-memory-UX5SU2ZG.js} +3 -3
  61. package/dist/{setup-command-OZLCZC5Q.js → setup-command-VWOUSXWP.js} +14 -14
  62. package/dist/{setup-config-FTSQUTS7.js → setup-config-IEH3CVR5.js} +3 -3
  63. package/dist/{setup-custom-api-7FACD7AZ.js → setup-custom-api-V4K6SQQN.js} +4 -4
  64. package/dist/{tool-memory-HDV46HBY.js → tool-memory-IALII4YE.js} +5 -5
  65. package/dist/{unified-registry-OOS6RFJT.js → unified-registry-RUA3EHP4.js} +10 -10
  66. package/dist/{weather-report-SMQFSLI4.js → weather-report-PBVXX2HU.js} +2 -2
  67. package/package.json +1 -1
  68. package/dist/chunk-FBTBH65X.js.map +0 -1
  69. package/dist/chunk-YF35FKKD.js.map +0 -1
  70. package/dist/chunk-ZFLZL6JL.js.map +0 -1
  71. /package/dist/{child-mcp-config-RPGCCPR7.js.map → child-mcp-config-VVTPONKP.js.map} +0 -0
  72. /package/dist/{chunk-2KOTMA3Y.js.map → chunk-3FSBTAEC.js.map} +0 -0
  73. /package/dist/{chunk-F4SOZWM5.js.map → chunk-4ZVNCOZH.js.map} +0 -0
  74. /package/dist/{chunk-UAPIH3ZX.js.map → chunk-5MRYWJVK.js.map} +0 -0
  75. /package/dist/{chunk-QITBS6CA.js.map → chunk-6DIGIJIY.js.map} +0 -0
  76. /package/dist/{chunk-J34IF7WA.js.map → chunk-6ZOZYECZ.js.map} +0 -0
  77. /package/dist/{chunk-PHEB64A5.js.map → chunk-7GFMCMLF.js.map} +0 -0
  78. /package/dist/{chunk-GMJGQ2XO.js.map → chunk-C25JA3SI.js.map} +0 -0
  79. /package/dist/{chunk-WEQNCK5F.js.map → chunk-CQ4Y7ULT.js.map} +0 -0
  80. /package/dist/{chunk-7BBHGO7A.js.map → chunk-D3KHLA3D.js.map} +0 -0
  81. /package/dist/{chunk-RGAC3SAM.js.map → chunk-EKASN4MV.js.map} +0 -0
  82. /package/dist/{chunk-JHIKOTSP.js.map → chunk-GVLDWGSK.js.map} +0 -0
  83. /package/dist/{chunk-5542NZXG.js.map → chunk-GWLBIDS6.js.map} +0 -0
  84. /package/dist/{chunk-UOG5ANHL.js.map → chunk-HKX7HKDV.js.map} +0 -0
  85. /package/dist/{chunk-TU25EPBM.js.map → chunk-HPAYIX7E.js.map} +0 -0
  86. /package/dist/{chunk-OR2CJF3R.js.map → chunk-IK45M7J3.js.map} +0 -0
  87. /package/dist/{chunk-Z53SVS5A.js.map → chunk-KBVU2GGV.js.map} +0 -0
  88. /package/dist/{chunk-W4GN7VPG.js.map → chunk-L4J7AXP3.js.map} +0 -0
  89. /package/dist/{chunk-SC7OLO76.js.map → chunk-LMGXSMC6.js.map} +0 -0
  90. /package/dist/{chunk-YO2OXOPU.js.map → chunk-QDH2SQKE.js.map} +0 -0
  91. /package/dist/{chunk-FTH6XZFA.js.map → chunk-QDUZSOOU.js.map} +0 -0
  92. /package/dist/{chunk-RSUQCA2E.js.map → chunk-ROIGF7ZF.js.map} +0 -0
  93. /package/dist/{chunk-6DDKUQFD.js.map → chunk-TPKK4ANS.js.map} +0 -0
  94. /package/dist/{chunk-KJ2M2L6J.js.map → chunk-U76AVHIW.js.map} +0 -0
  95. /package/dist/{chunk-H5BWZMLU.js.map → chunk-UFJDYK22.js.map} +0 -0
  96. /package/dist/{chunk-SC522IDR.js.map → chunk-UKIFG26L.js.map} +0 -0
  97. /package/dist/{chunk-XND2FD6I.js.map → chunk-UOA23X5A.js.map} +0 -0
  98. /package/dist/{chunk-WGBVREBV.js.map → chunk-XKAUANYB.js.map} +0 -0
  99. /package/dist/{chunk-YHSWBCZJ.js.map → chunk-XKGEKKKQ.js.map} +0 -0
  100. /package/dist/{chunk-CG5TS6GJ.js.map → chunk-XOWOOBY7.js.map} +0 -0
  101. /package/dist/{chunk-DXORNOYR.js.map → chunk-Z5HKO4TN.js.map} +0 -0
  102. /package/dist/{cli-circuit-breaker-PETQMWAX.js.map → cli-circuit-breaker-BKCDXF7A.js.map} +0 -0
  103. /package/dist/{codebase-search-LUF5YJLQ.js.map → codebase-search-AATGEN2H.js.map} +0 -0
  104. /package/dist/{composite-router-D36RXDEN.js.map → composite-router-7ZQW5X6M.js.map} +0 -0
  105. /package/dist/{consensus-vote-CVXD54KV.js.map → consensus-vote-JAQXK6NR.js.map} +0 -0
  106. /package/dist/{context-retriever-TCS3ZCHM.js.map → context-retriever-4BWVW6Z3.js.map} +0 -0
  107. /package/dist/{doctor-deep-KCBA7PRP.js.map → doctor-deep-XEIFQH2B.js.map} +0 -0
  108. /package/dist/{expert-bridge-4N5Q5T6J.js.map → expert-bridge-KXXOPEZF.js.map} +0 -0
  109. /package/dist/{factory-ASP7H2N6.js.map → factory-DFOM4HM5.js.map} +0 -0
  110. /package/dist/{factory-KDJP6PLO.js.map → factory-L74ZN3ZO.js.map} +0 -0
  111. /package/dist/{improvement-review-5SWVO5KR.js.map → improvement-review-P5OTBXCR.js.map} +0 -0
  112. /package/dist/{init-opencode-Q6YEYFJK.js.map → init-opencode-ZYRLCXUF.js.map} +0 -0
  113. /package/dist/{issue-triage-AOTQZ7RB.js.map → issue-triage-R543HBHK.js.map} +0 -0
  114. /package/dist/{pr-reviewer-helpers-GAXKDXOB.js.map → pr-reviewer-helpers-T33G7ACC.js.map} +0 -0
  115. /package/dist/{registry-command-AUHXXQMZ.js.map → registry-command-PW7PXQDH.js.map} +0 -0
  116. /package/dist/{repo-security-plan-EGRREARY.js.map → repo-security-plan-RVKAJD7N.js.map} +0 -0
  117. /package/dist/{research-helpers-synthesize-HBR26XOL.js.map → research-helpers-synthesize-FPBPUTJJ.js.map} +0 -0
  118. /package/dist/{routing-memory-UJ6EC6HP.js.map → routing-memory-X5KJULU7.js.map} +0 -0
  119. /package/dist/{session-memory-J47B6D5W.js.map → session-memory-UX5SU2ZG.js.map} +0 -0
  120. /package/dist/{setup-command-OZLCZC5Q.js.map → setup-command-VWOUSXWP.js.map} +0 -0
  121. /package/dist/{setup-config-FTSQUTS7.js.map → setup-config-IEH3CVR5.js.map} +0 -0
  122. /package/dist/{setup-custom-api-7FACD7AZ.js.map → setup-custom-api-V4K6SQQN.js.map} +0 -0
  123. /package/dist/{tool-memory-HDV46HBY.js.map → tool-memory-IALII4YE.js.map} +0 -0
  124. /package/dist/{unified-registry-OOS6RFJT.js.map → unified-registry-RUA3EHP4.js.map} +0 -0
  125. /package/dist/{weather-report-SMQFSLI4.js.map → weather-report-PBVXX2HU.js.map} +0 -0
@@ -2,7 +2,7 @@ import {
2
2
  TASK_CATEGORIES,
3
3
  getAdaptiveBonus,
4
4
  getOutcomeStore
5
- } from "./chunk-FBTBH65X.js";
5
+ } from "./chunk-YFY64CCU.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-F4SOZWM5.js.map
109
+ //# sourceMappingURL=chunk-4ZVNCOZH.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  getRandomProvider,
3
3
  getTimeProvider
4
- } from "./chunk-FBTBH65X.js";
4
+ } from "./chunk-YFY64CCU.js";
5
5
 
6
6
  // src/utils/id-utils.ts
7
7
  import { randomUUID } from "crypto";
@@ -24,4 +24,4 @@ export {
24
24
  generateHyphenId,
25
25
  generateUUID
26
26
  };
27
- //# sourceMappingURL=chunk-UAPIH3ZX.js.map
27
+ //# sourceMappingURL=chunk-5MRYWJVK.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  computeCostDetail
3
- } from "./chunk-TU25EPBM.js";
3
+ } from "./chunk-HPAYIX7E.js";
4
4
  import {
5
5
  DEFAULT_CONSENSUS_CONFIG,
6
6
  DEFAULT_INCREMENTAL_QUORUM_CONFIG,
@@ -18,20 +18,20 @@ import {
18
18
  toolSuccess,
19
19
  withProgressHeartbeat,
20
20
  wrapToolWithTimeout
21
- } from "./chunk-UOG5ANHL.js";
21
+ } from "./chunk-HKX7HKDV.js";
22
22
  import {
23
23
  createEvent,
24
24
  getGlobalRegistry
25
- } from "./chunk-H5BWZMLU.js";
25
+ } from "./chunk-UFJDYK22.js";
26
26
  import {
27
27
  getToolMemory
28
- } from "./chunk-RSUQCA2E.js";
28
+ } from "./chunk-ROIGF7ZF.js";
29
29
  import {
30
30
  authRemediation,
31
31
  delay,
32
32
  getAvailableClis,
33
33
  withTimeout
34
- } from "./chunk-ZFLZL6JL.js";
34
+ } from "./chunk-45IB3F6G.js";
35
35
  import {
36
36
  AgentError,
37
37
  CLI_NAMES,
@@ -60,7 +60,7 @@ import {
60
60
  resolveClassGuardMs,
61
61
  resolveModelIdentitySync,
62
62
  resolveVoteTimeout
63
- } from "./chunk-FBTBH65X.js";
63
+ } from "./chunk-YFY64CCU.js";
64
64
  import {
65
65
  ensureLearningDir,
66
66
  getOutcomesFile
@@ -6177,7 +6177,7 @@ async function processVotesWithCascade(engineVotes, opts) {
6177
6177
  var CONTRARIAN_ESCALATION_THRESHOLD = 0.8;
6178
6178
  async function runContrarianCheck(proposal, log) {
6179
6179
  try {
6180
- const { executeExpert } = await import("./expert-bridge-4N5Q5T6J.js");
6180
+ const { executeExpert } = await import("./expert-bridge-KXXOPEZF.js");
6181
6181
  const prompt = [
6182
6182
  "You are a contrarian analyst. Your job is to find reasons this proposal should be REJECTED.",
6183
6183
  "Look for: YAGNI (not needed), MISALIGNED (wrong tech/architecture), SECURITY_RISK, SCOPE_CREEP.",
@@ -6738,4 +6738,4 @@ export {
6738
6738
  CONSENSUS_VOTE_TOOL_SCHEMA,
6739
6739
  registerConsensusVoteTool
6740
6740
  };
6741
- //# sourceMappingURL=chunk-QITBS6CA.js.map
6741
+ //# sourceMappingURL=chunk-6DIGIJIY.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  generateSecurityPlan
3
- } from "./chunk-WGBVREBV.js";
3
+ } from "./chunk-XKAUANYB.js";
4
4
  import {
5
5
  analyzeGitHubRepo
6
6
  } from "./chunk-HFOQKCD2.js";
@@ -8,10 +8,11 @@ import {
8
8
  CodebaseIndex,
9
9
  DEFAULT_INDEX_MAX_DEPTH,
10
10
  MAX_INDEX_MAX_DEPTH,
11
- extractSymbolIndex,
11
+ SUPPORTED_EXTENSIONS,
12
+ extractSymbolIndexResult,
12
13
  extractSymbols,
13
14
  findSourceFiles
14
- } from "./chunk-YF35FKKD.js";
15
+ } from "./chunk-BQTMMLQQ.js";
15
16
  import {
16
17
  FINDING_SEVERITY_LEVELS,
17
18
  SARIF_LEVEL_MAP,
@@ -21,10 +22,10 @@ import {
21
22
  DEFAULT_TASK_TTL_MS,
22
23
  DEFAULT_TOOL_RATE_LIMITS,
23
24
  clampTaskTtl
24
- } from "./chunk-J34IF7WA.js";
25
+ } from "./chunk-6ZOZYECZ.js";
25
26
  import {
26
27
  executeExpert
27
- } from "./chunk-JHIKOTSP.js";
28
+ } from "./chunk-GVLDWGSK.js";
28
29
  import {
29
30
  JobStatusSchema,
30
31
  abortJob,
@@ -45,21 +46,21 @@ import {
45
46
  simulationDeniedResult,
46
47
  toJobSummary,
47
48
  writeJobCancelled
48
- } from "./chunk-QITBS6CA.js";
49
+ } from "./chunk-6DIGIJIY.js";
49
50
  import {
50
51
  normalizeTopicToCanonical,
51
52
  synthesizeResearch
52
- } from "./chunk-YHSWBCZJ.js";
53
+ } from "./chunk-XKGEKKKQ.js";
53
54
  import {
54
55
  IssueTriage
55
- } from "./chunk-OR2CJF3R.js";
56
+ } from "./chunk-IK45M7J3.js";
56
57
  import {
57
58
  resolveEnvMode,
58
59
  sanitizeInput
59
- } from "./chunk-Z53SVS5A.js";
60
+ } from "./chunk-KBVU2GGV.js";
60
61
  import {
61
62
  withPrerequisite
62
- } from "./chunk-SC522IDR.js";
63
+ } from "./chunk-UKIFG26L.js";
63
64
  import {
64
65
  NOOP_NOTIFIER,
65
66
  RateLimiter,
@@ -82,18 +83,18 @@ import {
82
83
  withAuditTrail,
83
84
  withProgressHeartbeat,
84
85
  wrapToolWithTimeout
85
- } from "./chunk-UOG5ANHL.js";
86
+ } from "./chunk-HKX7HKDV.js";
86
87
  import {
87
88
  createAuditTrail,
88
89
  createGraphAuditBridge,
89
90
  emitPipelinePolicyEvent
90
- } from "./chunk-W4GN7VPG.js";
91
+ } from "./chunk-L4J7AXP3.js";
91
92
  import {
92
93
  EventTopics,
93
94
  createEvent,
94
95
  getGlobalEventBus,
95
96
  getGlobalRegistry
96
- } from "./chunk-H5BWZMLU.js";
97
+ } from "./chunk-UFJDYK22.js";
97
98
  import {
98
99
  IDENTIFIER_RE,
99
100
  LANG_VALUES,
@@ -126,15 +127,15 @@ import {
126
127
  parseRegistry,
127
128
  sourceExistsInRegistry,
128
129
  summarizeContextForPrompt
129
- } from "./chunk-RGAC3SAM.js";
130
+ } from "./chunk-EKASN4MV.js";
130
131
  import {
131
132
  getTokenEnvVars,
132
133
  resolveToken
133
- } from "./chunk-6DDKUQFD.js";
134
+ } from "./chunk-TPKK4ANS.js";
134
135
  import {
135
136
  loadPapersRegistry,
136
137
  loadTechniquesRegistry
137
- } from "./chunk-YO2OXOPU.js";
138
+ } from "./chunk-QDH2SQKE.js";
138
139
  import {
139
140
  resolveInsideRoot
140
141
  } from "./chunk-NUBSJGQZ.js";
@@ -143,14 +144,14 @@ import {
143
144
  MemoryImportance,
144
145
  calculateTextJaccardSimilarity,
145
146
  getToolMemory
146
- } from "./chunk-RSUQCA2E.js";
147
+ } from "./chunk-ROIGF7ZF.js";
147
148
  import {
148
149
  STOPWORDS,
149
150
  truncateWithInfo
150
151
  } from "./chunk-6T3EPABN.js";
151
152
  import {
152
153
  createSessionMemory
153
- } from "./chunk-DXORNOYR.js";
154
+ } from "./chunk-Z5HKO4TN.js";
154
155
  import {
155
156
  BUILT_IN_EXPERTS,
156
157
  BuiltInExpertTypeSchema,
@@ -168,25 +169,25 @@ import {
168
169
  getAvailableClis,
169
170
  sleep,
170
171
  withTimeout
171
- } from "./chunk-ZFLZL6JL.js";
172
+ } from "./chunk-45IB3F6G.js";
172
173
  import {
173
174
  BaseAdapter,
174
175
  createStream,
175
176
  requireApiKey,
176
177
  validateApiKeyPresence
177
- } from "./chunk-PHEB64A5.js";
178
+ } from "./chunk-7GFMCMLF.js";
178
179
  import {
179
180
  DEFAULTS
180
- } from "./chunk-2KOTMA3Y.js";
181
+ } from "./chunk-3FSBTAEC.js";
181
182
  import {
182
183
  getAvailabilityCache,
183
184
  getCliForModelId,
184
185
  resolveFallback
185
- } from "./chunk-SC7OLO76.js";
186
+ } from "./chunk-LMGXSMC6.js";
186
187
  import {
187
188
  generateHyphenId,
188
189
  generateUUID
189
- } from "./chunk-UAPIH3ZX.js";
190
+ } from "./chunk-5MRYWJVK.js";
190
191
  import {
191
192
  AGENT_ROUTER_TIMEOUTS,
192
193
  API_TIMEOUTS,
@@ -285,7 +286,7 @@ import {
285
286
  selectStrategyByManifest,
286
287
  toExpertTaskAnalysisResult,
287
288
  withStep
288
- } from "./chunk-FBTBH65X.js";
289
+ } from "./chunk-YFY64CCU.js";
289
290
  import {
290
291
  ensureLearningDir,
291
292
  getMetaOutcomesFile,
@@ -20780,7 +20781,7 @@ import * as fs2 from "fs/promises";
20780
20781
  import * as path2 from "path";
20781
20782
  import * as yaml from "yaml";
20782
20783
  var MAX_FILE_SIZE_BYTES = 1024 * 1024;
20783
- var SUPPORTED_EXTENSIONS = [".yaml", ".yml", ".json"];
20784
+ var SUPPORTED_EXTENSIONS2 = [".yaml", ".yml", ".json"];
20784
20785
  function validatePath(userPath, allowedRoot) {
20785
20786
  const resolved = resolveInsideRoot(userPath, allowedRoot);
20786
20787
  if (resolved === null) {
@@ -20912,10 +20913,10 @@ async function loadWorkflowFile(filePath, allowedRoot = process.cwd()) {
20912
20913
  }
20913
20914
  const validatedPath = pathValidation.value;
20914
20915
  const ext = path2.extname(validatedPath).toLowerCase();
20915
- if (!SUPPORTED_EXTENSIONS.includes(ext)) {
20916
+ if (!SUPPORTED_EXTENSIONS2.includes(ext)) {
20916
20917
  return err(
20917
20918
  new ParseError(
20918
- `Unsupported file extension: ${ext}. Supported: ${SUPPORTED_EXTENSIONS.join(", ")}`
20919
+ `Unsupported file extension: ${ext}. Supported: ${SUPPORTED_EXTENSIONS2.join(", ")}`
20919
20920
  )
20920
20921
  );
20921
20922
  }
@@ -28355,7 +28356,7 @@ function execIdFields(executionId) {
28355
28356
  async function populateUnifiedContextOnState(state, options) {
28356
28357
  const taskCandidate = state["task"];
28357
28358
  if (typeof taskCandidate !== "string" || taskCandidate === "") return;
28358
- const { getContextForTask: getContextForTask2, inferTaskCategory: inferTaskCategory2 } = await import("./context-retriever-TCS3ZCHM.js");
28359
+ const { getContextForTask: getContextForTask2, inferTaskCategory: inferTaskCategory2 } = await import("./context-retriever-4BWVW6Z3.js");
28359
28360
  const category = inferTaskCategory2(taskCandidate);
28360
28361
  const executionId = options?.executionId;
28361
28362
  const execFields = execIdFields(executionId);
@@ -41741,7 +41742,7 @@ function registerSearchCodebaseTool(server, deps) {
41741
41742
  }
41742
41743
 
41743
41744
  // src/mcp/tools/extract-symbols-tool.ts
41744
- import { resolve as resolve8, sep as sep4 } from "path";
41745
+ import { extname as extname3, resolve as resolve8, sep as sep4 } from "path";
41745
41746
  import { z as z81 } from "zod";
41746
41747
  var DEFAULT_EXTRACT_MAX_CHARS = 2e4;
41747
41748
  var DEFAULT_EXTRACT_MAX_SYMBOLS = 200;
@@ -41857,11 +41858,11 @@ async function extractSymbolsHandler(args, ctx) {
41857
41858
  );
41858
41859
  return toolSuccess(output2);
41859
41860
  }
41860
- const index = await extractSymbolIndex(resolvedPath);
41861
- if (index === "") {
41862
- return toolSuccess("No symbols found (file may not be TypeScript/JavaScript)");
41861
+ const result = await extractSymbolIndexResult(resolvedPath);
41862
+ if (result.kind === "empty") {
41863
+ return toolSuccess(emptyIndexMessage(result.reason, resolvedPath));
41863
41864
  }
41864
- return toolSuccess(index);
41865
+ return toolSuccess(result.index);
41865
41866
  } catch (caught) {
41866
41867
  const e = caught instanceof Error ? caught : new Error(String(caught));
41867
41868
  ctx.logger.error("Symbol extraction failed", e);
@@ -41871,6 +41872,14 @@ async function extractSymbolsHandler(args, ctx) {
41871
41872
  });
41872
41873
  }
41873
41874
  }
41875
+ function emptyIndexMessage(reason, filePath) {
41876
+ if (reason === "unsupported") {
41877
+ const ext = extname3(filePath).toLowerCase();
41878
+ const shown = ext === "" ? "(no extension)" : ext;
41879
+ return `Not parsed: extract_symbols cannot read ${shown} files. Supported: ${SUPPORTED_EXTENSIONS.join(", ")}. This says nothing about whether the file contains symbols.`;
41880
+ }
41881
+ return "Parsed successfully; no local declarations found. A re-export barrel (`export { X } from ...`) reports zero symbols because re-exports declare nothing locally.";
41882
+ }
41874
41883
  function registerExtractSymbolsTool(server, deps) {
41875
41884
  const logger58 = deps.logger ?? createLogger({ tool: "extract_symbols" });
41876
41885
  const toolSchema = {
@@ -43886,7 +43895,7 @@ async function tryIssueTriage(task) {
43886
43895
  try {
43887
43896
  const issueMatch = task.match(/github\.com\/([^/]+\/[^/]+)\/issues\/(\d+)/);
43888
43897
  if (issueMatch === null) return null;
43889
- const { createIssueTriage } = await import("./issue-triage-AOTQZ7RB.js");
43898
+ const { createIssueTriage } = await import("./issue-triage-R543HBHK.js");
43890
43899
  const triage = createIssueTriage();
43891
43900
  const owner = issueMatch[1] ?? "";
43892
43901
  const num = issueMatch[2] ?? "";
@@ -43914,7 +43923,7 @@ var VALID_TEMPLATES = /* @__PURE__ */ new Set([
43914
43923
  ]);
43915
43924
  async function classifyWithLLM(task) {
43916
43925
  try {
43917
- const { executeExpert: executeExpert2 } = await import("./expert-bridge-4N5Q5T6J.js");
43926
+ const { executeExpert: executeExpert2 } = await import("./expert-bridge-KXXOPEZF.js");
43918
43927
  const prompt = [
43919
43928
  "Classify this task into exactly one pipeline template.",
43920
43929
  "Templates: dev (implementation/bug fix/refactor), research (investigate/evaluate/compare),",
@@ -45555,7 +45564,7 @@ var memoryInitPromise = null;
45555
45564
  async function initPipelineMemory() {
45556
45565
  if (cachedMemory !== null) return cachedMemory;
45557
45566
  try {
45558
- const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-J47B6D5W.js");
45567
+ const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-UX5SU2ZG.js");
45559
45568
  const { getLearningDir } = await import("./learning-persistence-EGY4VKKO.js");
45560
45569
  const mem = createSessionMemory2(getLearningDir());
45561
45570
  mem.startSession(`pipeline-${String(getTimeProvider().now())}`);
@@ -45617,7 +45626,7 @@ function recordRoutingExperience(category, success, durationMs, tokensUsed = 0,
45617
45626
  callRecord(routingMemoryCache);
45618
45627
  return;
45619
45628
  }
45620
- routingMemoryInitPromise ??= import("./routing-memory-UJ6EC6HP.js").then(({ createRoutingMemory }) => {
45629
+ routingMemoryInitPromise ??= import("./routing-memory-X5KJULU7.js").then(({ createRoutingMemory }) => {
45621
45630
  routingMemoryCache ??= createRoutingMemory();
45622
45631
  return routingMemoryCache;
45623
45632
  }).catch((error) => {
@@ -45651,7 +45660,7 @@ ${text}` : "";
45651
45660
  }
45652
45661
  async function getWeatherContext() {
45653
45662
  try {
45654
- const { generateWeatherReport: generateWeatherReport2 } = await import("./weather-report-SMQFSLI4.js");
45663
+ const { generateWeatherReport: generateWeatherReport2 } = await import("./weather-report-PBVXX2HU.js");
45655
45664
  const report = generateWeatherReport2({ includeAdaptive: true });
45656
45665
  const mappings = "recommendedMappings" in report ? report.recommendedMappings : [];
45657
45666
  if (!Array.isArray(mappings) || mappings.length === 0) return "";
@@ -45669,7 +45678,7 @@ ${lines}
45669
45678
  }
45670
45679
  async function getMemoryContext(task) {
45671
45680
  try {
45672
- const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-J47B6D5W.js");
45681
+ const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-UX5SU2ZG.js");
45673
45682
  const { getLearningDir } = await import("./learning-persistence-EGY4VKKO.js");
45674
45683
  const memory = createSessionMemory2(getLearningDir(), { maxLearningsInContext: 10 });
45675
45684
  const learnings = memory.searchLearnings(task.slice(0, 200));
@@ -45784,7 +45793,7 @@ ${contextBlock}`;
45784
45793
  const strategy = config.votingStrategy ?? "higher_order";
45785
45794
  await postProgress(config, "Vote", `Running consensus with ${strategy} strategy...`);
45786
45795
  try {
45787
- const { executeVoting } = await import("./consensus-vote-CVXD54KV.js");
45796
+ const { executeVoting } = await import("./consensus-vote-JAQXK6NR.js");
45788
45797
  const votingResult = await executeVoting(
45789
45798
  {
45790
45799
  proposal: buildVoteProposal(plan, research),
@@ -46210,7 +46219,7 @@ function createScaffoldStageWrapper() {
46210
46219
  }
46211
46220
  async function searchCodebaseForTask(task) {
46212
46221
  try {
46213
- const { CodebaseIndex: CodebaseIndex2 } = await import("./codebase-search-LUF5YJLQ.js");
46222
+ const { CodebaseIndex: CodebaseIndex2 } = await import("./codebase-search-AATGEN2H.js");
46214
46223
  const index = new CodebaseIndex2(process.cwd());
46215
46224
  const terms = task.toLowerCase().split(/\s+/).filter((w) => w.length > 4).slice(0, 3);
46216
46225
  if (terms.length === 0) return null;
@@ -46225,7 +46234,7 @@ async function searchCodebaseForTask(task) {
46225
46234
  }
46226
46235
  async function queryResearchRegistry(task) {
46227
46236
  try {
46228
- const { synthesizeResearch: synthesizeResearch2 } = await import("./research-helpers-synthesize-HBR26XOL.js");
46237
+ const { synthesizeResearch: synthesizeResearch2 } = await import("./research-helpers-synthesize-FPBPUTJJ.js");
46229
46238
  const topic = task.split(/[.!?\n]/).filter((s) => s.trim().length > 10)[0]?.trim();
46230
46239
  if (topic === void 0) return null;
46231
46240
  const result = await synthesizeResearch2(topic.slice(0, 50));
@@ -46296,7 +46305,7 @@ function createScanStageWrapper() {
46296
46305
  try {
46297
46306
  const slug = ctx.task.match(/([a-zA-Z0-9._-]+\/[a-zA-Z0-9._-]+)/)?.[1];
46298
46307
  if (slug !== void 0) {
46299
- const { generateSecurityPlan: generateSecurityPlan2 } = await import("./repo-security-plan-EGRREARY.js");
46308
+ const { generateSecurityPlan: generateSecurityPlan2 } = await import("./repo-security-plan-RVKAJD7N.js");
46300
46309
  const plan = await generateSecurityPlan2({ repo: slug, maxScanners: 10 });
46301
46310
  const recs = plan.recommendations.slice(0, 5).map((r) => `${r.priority}: ${r.displayName} (${r.category})`).join("; ");
46302
46311
  return output(PIPELINE_STATE_KEYS.FINDINGS, recs, getTimeProvider().now() - start, true);
@@ -49301,7 +49310,7 @@ var GitHubTaskTracker = class {
49301
49310
  cachedProvider = null;
49302
49311
  async getProvider() {
49303
49312
  if (this.cachedProvider !== null) return this.cachedProvider;
49304
- const { createScmProvider } = await import("./factory-KDJP6PLO.js");
49313
+ const { createScmProvider } = await import("./factory-DFOM4HM5.js");
49305
49314
  const result = await createScmProvider({ repo: this.config.repo ?? "" });
49306
49315
  if (!result.ok) throw new Error(`SCM provider error: ${result.error.message}`);
49307
49316
  this.cachedProvider = result.value;
@@ -50143,7 +50152,7 @@ async function probeSource(source, includeModelIds) {
50143
50152
  }
50144
50153
  }
50145
50154
  async function defaultSources(includeOpenRouter) {
50146
- const { createAllAdapters: createAllAdapters2 } = await import("./factory-ASP7H2N6.js");
50155
+ const { createAllAdapters: createAllAdapters2 } = await import("./factory-L74ZN3ZO.js");
50147
50156
  const adapters = createAllAdapters2();
50148
50157
  return buildDefaultModelSources(adapters, { includeOpenRouter });
50149
50158
  }
@@ -54163,4 +54172,4 @@ export {
54163
54172
  shutdownFeedbackSubscriber,
54164
54173
  createEventBusBridge
54165
54174
  };
54166
- //# sourceMappingURL=chunk-SLLUTZHU.js.map
54175
+ //# sourceMappingURL=chunk-6H5AM5SG.js.map