nexus-agents 4.22.4 → 4.23.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 (141) hide show
  1. package/dist/{child-mcp-config-I3IQVN7P.js → child-mcp-config-FEK2HK5L.js} +5 -5
  2. package/dist/{chunk-RF5N4HME.js → chunk-2FYFHAI4.js} +2 -2
  3. package/dist/{chunk-VDEDTAHZ.js → chunk-2MPJ7UDR.js} +83 -43
  4. package/dist/{chunk-VDEDTAHZ.js.map → chunk-2MPJ7UDR.js.map} +1 -1
  5. package/dist/{chunk-YSOWQJ5S.js → chunk-32IMMUXP.js} +2 -2
  6. package/dist/{chunk-SJPZHT6D.js → chunk-3SMGCYGN.js} +2 -2
  7. package/dist/{chunk-RQV5ZUXT.js → chunk-4OW67KT2.js} +2 -2
  8. package/dist/{chunk-N45MVUY7.js → chunk-5KKJKQVE.js} +2 -2
  9. package/dist/chunk-5KKJKQVE.js.map +1 -0
  10. package/dist/{chunk-IBW6CJ4G.js → chunk-ADC7YEU2.js} +6 -6
  11. package/dist/{chunk-PX7AYAHF.js → chunk-AWMXPIMK.js} +3 -3
  12. package/dist/{chunk-HWPFUVMS.js → chunk-CMZGRDKF.js} +2 -2
  13. package/dist/{chunk-SBWVYOTV.js → chunk-EPZCODRK.js} +9 -9
  14. package/dist/{chunk-6TV765AS.js → chunk-EYQUQ2PZ.js} +2 -2
  15. package/dist/{chunk-HHLCAWAV.js → chunk-GBHJ37V3.js} +2 -2
  16. package/dist/{chunk-AXG2IGOK.js → chunk-GGQOP4VK.js} +5 -5
  17. package/dist/{chunk-DXWF7V74.js → chunk-GVLMTQ46.js} +4 -4
  18. package/dist/{chunk-3PVG7CQS.js → chunk-HPGPOZG4.js} +7 -7
  19. package/dist/{chunk-QS5K3PAY.js → chunk-IC6WLIGJ.js} +4 -4
  20. package/dist/{chunk-KGFFEQTN.js → chunk-JEAKVUWM.js} +2 -2
  21. package/dist/{chunk-RXGHRVL2.js → chunk-K2A24T36.js} +2 -2
  22. package/dist/{chunk-BTAWCQP6.js → chunk-K2DSQJEH.js} +6 -6
  23. package/dist/{chunk-I6YC5PIL.js → chunk-K7RASYIZ.js} +3 -3
  24. package/dist/{chunk-BZGTZKXY.js → chunk-LLGK3NRY.js} +2 -2
  25. package/dist/{chunk-ANVPNLZE.js → chunk-LMENHZQ6.js} +4 -4
  26. package/dist/{chunk-QQS6FVTQ.js → chunk-LMTBX4GZ.js} +2 -2
  27. package/dist/{chunk-PLO6VSSN.js → chunk-LSJ2EPOF.js} +4 -4
  28. package/dist/{chunk-7MBFKJJT.js → chunk-MSHZHT5X.js} +2 -2
  29. package/dist/{chunk-5RC54HVU.js → chunk-NMFXYX7R.js} +2 -2
  30. package/dist/{chunk-NBMWONHE.js → chunk-OGHEKPLD.js} +11 -2
  31. package/dist/{chunk-NBMWONHE.js.map → chunk-OGHEKPLD.js.map} +1 -1
  32. package/dist/{chunk-TBWKMKCX.js → chunk-OYFKB64X.js} +6 -6
  33. package/dist/{chunk-NQ65EKMG.js → chunk-PUGRS4KW.js} +9 -4
  34. package/dist/chunk-PUGRS4KW.js.map +1 -0
  35. package/dist/{chunk-3K3IPRED.js → chunk-R3H46BNY.js} +2 -2
  36. package/dist/{chunk-HLVST3JE.js → chunk-TXCJMTLN.js} +10 -10
  37. package/dist/{chunk-MCCN5UUW.js → chunk-WJGTRYWS.js} +2 -2
  38. package/dist/{chunk-ZRSKNV3E.js → chunk-XQEWXGJ5.js} +10 -10
  39. package/dist/{chunk-VSHQMS37.js → chunk-YFDE4AM3.js} +7 -7
  40. package/dist/{chunk-EPOKODTI.js → chunk-YVW743K3.js} +2 -2
  41. package/dist/{chunk-5YBFBXEB.js → chunk-Z37OVF33.js} +2 -2
  42. package/dist/{cli-circuit-breaker-OKOGXUQY.js → cli-circuit-breaker-VUWP2GRN.js} +5 -5
  43. package/dist/cli.js +46 -45
  44. package/dist/cli.js.map +1 -1
  45. package/dist/{composite-router-UFQSYHJF.js → composite-router-4F3ZVLJV.js} +4 -4
  46. package/dist/{consensus-vote-65UZRQMY.js → consensus-vote-ETJ63JRC.js} +20 -20
  47. package/dist/{context-retriever-BROUADMF.js → context-retriever-L2LTCKV6.js} +11 -11
  48. package/dist/doctor-deep-HPBHFGBZ.js +13 -0
  49. package/dist/{doctor-live-LBH7XDZX.js → doctor-live-NQ35PQ5B.js} +12 -12
  50. package/dist/{expert-bridge-H6ITLZUY.js → expert-bridge-XN5MFZOG.js} +6 -6
  51. package/dist/factory-2TJ44P7L.js +15 -0
  52. package/dist/factory-GVBBWUOE.js +25 -0
  53. package/dist/{improvement-review-LJQ2CXAP.js → improvement-review-7VJYOI2F.js} +7 -7
  54. package/dist/index.d.ts +11 -0
  55. package/dist/index.js +34 -34
  56. package/dist/{init-opencode-NTS5ZWXU.js → init-opencode-TLVVMG54.js} +8 -8
  57. package/dist/issue-triage-YREC36AC.js +17 -0
  58. package/dist/{learning-persistence-SR5F4DSY.js → learning-persistence-7O5QYDM7.js} +3 -3
  59. package/dist/{pr-reviewer-helpers-IAKFHBM6.js → pr-reviewer-helpers-4ERCFSZ7.js} +6 -6
  60. package/dist/{registry-command-6HVXEW23.js → registry-command-GN2REQQP.js} +4 -4
  61. package/dist/{repo-security-plan-MF4E5MG6.js → repo-security-plan-VPAXEENC.js} +5 -5
  62. package/dist/research-helpers-synthesize-OZOOIEFW.js +14 -0
  63. package/dist/{routing-memory-YIKR7EMC.js → routing-memory-OF7J3OE4.js} +4 -4
  64. package/dist/{session-memory-B6TFD55A.js → session-memory-O5M3CLRX.js} +5 -5
  65. package/dist/setup-config-WW5BNLVS.js +11 -0
  66. package/dist/{setup-custom-api-ATC26B2O.js → setup-custom-api-UX4XNOT6.js} +6 -6
  67. package/dist/setup-data-dir-KHLK534F.js +28 -0
  68. package/dist/{tool-memory-XDUJUM2O.js → tool-memory-PIBTMGPH.js} +8 -8
  69. package/dist/{tool-memory-registry-adapters-UMPIJLHS.js → tool-memory-registry-adapters-IMRSOAAV.js} +3 -3
  70. package/dist/unified-registry-MUXCSSG5.js +26 -0
  71. package/dist/{weather-report-YDYML3JW.js → weather-report-JOATSJWU.js} +4 -4
  72. package/package.json +1 -1
  73. package/dist/chunk-N45MVUY7.js.map +0 -1
  74. package/dist/chunk-NQ65EKMG.js.map +0 -1
  75. package/dist/doctor-deep-SBSUG54R.js +0 -13
  76. package/dist/factory-WJ6AV4WU.js +0 -15
  77. package/dist/factory-ZIYR7YJ3.js +0 -25
  78. package/dist/issue-triage-PM67ACC5.js +0 -17
  79. package/dist/research-helpers-synthesize-2XQBWVG6.js +0 -14
  80. package/dist/setup-config-A5DWVRQB.js +0 -11
  81. package/dist/setup-data-dir-DWMKVY6G.js +0 -28
  82. package/dist/unified-registry-H2NNOXB3.js +0 -26
  83. /package/dist/{child-mcp-config-I3IQVN7P.js.map → child-mcp-config-FEK2HK5L.js.map} +0 -0
  84. /package/dist/{chunk-RF5N4HME.js.map → chunk-2FYFHAI4.js.map} +0 -0
  85. /package/dist/{chunk-YSOWQJ5S.js.map → chunk-32IMMUXP.js.map} +0 -0
  86. /package/dist/{chunk-SJPZHT6D.js.map → chunk-3SMGCYGN.js.map} +0 -0
  87. /package/dist/{chunk-RQV5ZUXT.js.map → chunk-4OW67KT2.js.map} +0 -0
  88. /package/dist/{chunk-IBW6CJ4G.js.map → chunk-ADC7YEU2.js.map} +0 -0
  89. /package/dist/{chunk-PX7AYAHF.js.map → chunk-AWMXPIMK.js.map} +0 -0
  90. /package/dist/{chunk-HWPFUVMS.js.map → chunk-CMZGRDKF.js.map} +0 -0
  91. /package/dist/{chunk-SBWVYOTV.js.map → chunk-EPZCODRK.js.map} +0 -0
  92. /package/dist/{chunk-6TV765AS.js.map → chunk-EYQUQ2PZ.js.map} +0 -0
  93. /package/dist/{chunk-HHLCAWAV.js.map → chunk-GBHJ37V3.js.map} +0 -0
  94. /package/dist/{chunk-AXG2IGOK.js.map → chunk-GGQOP4VK.js.map} +0 -0
  95. /package/dist/{chunk-DXWF7V74.js.map → chunk-GVLMTQ46.js.map} +0 -0
  96. /package/dist/{chunk-3PVG7CQS.js.map → chunk-HPGPOZG4.js.map} +0 -0
  97. /package/dist/{chunk-QS5K3PAY.js.map → chunk-IC6WLIGJ.js.map} +0 -0
  98. /package/dist/{chunk-KGFFEQTN.js.map → chunk-JEAKVUWM.js.map} +0 -0
  99. /package/dist/{chunk-RXGHRVL2.js.map → chunk-K2A24T36.js.map} +0 -0
  100. /package/dist/{chunk-BTAWCQP6.js.map → chunk-K2DSQJEH.js.map} +0 -0
  101. /package/dist/{chunk-I6YC5PIL.js.map → chunk-K7RASYIZ.js.map} +0 -0
  102. /package/dist/{chunk-BZGTZKXY.js.map → chunk-LLGK3NRY.js.map} +0 -0
  103. /package/dist/{chunk-ANVPNLZE.js.map → chunk-LMENHZQ6.js.map} +0 -0
  104. /package/dist/{chunk-QQS6FVTQ.js.map → chunk-LMTBX4GZ.js.map} +0 -0
  105. /package/dist/{chunk-PLO6VSSN.js.map → chunk-LSJ2EPOF.js.map} +0 -0
  106. /package/dist/{chunk-7MBFKJJT.js.map → chunk-MSHZHT5X.js.map} +0 -0
  107. /package/dist/{chunk-5RC54HVU.js.map → chunk-NMFXYX7R.js.map} +0 -0
  108. /package/dist/{chunk-TBWKMKCX.js.map → chunk-OYFKB64X.js.map} +0 -0
  109. /package/dist/{chunk-3K3IPRED.js.map → chunk-R3H46BNY.js.map} +0 -0
  110. /package/dist/{chunk-HLVST3JE.js.map → chunk-TXCJMTLN.js.map} +0 -0
  111. /package/dist/{chunk-MCCN5UUW.js.map → chunk-WJGTRYWS.js.map} +0 -0
  112. /package/dist/{chunk-ZRSKNV3E.js.map → chunk-XQEWXGJ5.js.map} +0 -0
  113. /package/dist/{chunk-VSHQMS37.js.map → chunk-YFDE4AM3.js.map} +0 -0
  114. /package/dist/{chunk-EPOKODTI.js.map → chunk-YVW743K3.js.map} +0 -0
  115. /package/dist/{chunk-5YBFBXEB.js.map → chunk-Z37OVF33.js.map} +0 -0
  116. /package/dist/{cli-circuit-breaker-OKOGXUQY.js.map → cli-circuit-breaker-VUWP2GRN.js.map} +0 -0
  117. /package/dist/{composite-router-UFQSYHJF.js.map → composite-router-4F3ZVLJV.js.map} +0 -0
  118. /package/dist/{consensus-vote-65UZRQMY.js.map → consensus-vote-ETJ63JRC.js.map} +0 -0
  119. /package/dist/{context-retriever-BROUADMF.js.map → context-retriever-L2LTCKV6.js.map} +0 -0
  120. /package/dist/{doctor-deep-SBSUG54R.js.map → doctor-deep-HPBHFGBZ.js.map} +0 -0
  121. /package/dist/{doctor-live-LBH7XDZX.js.map → doctor-live-NQ35PQ5B.js.map} +0 -0
  122. /package/dist/{expert-bridge-H6ITLZUY.js.map → expert-bridge-XN5MFZOG.js.map} +0 -0
  123. /package/dist/{factory-WJ6AV4WU.js.map → factory-2TJ44P7L.js.map} +0 -0
  124. /package/dist/{factory-ZIYR7YJ3.js.map → factory-GVBBWUOE.js.map} +0 -0
  125. /package/dist/{improvement-review-LJQ2CXAP.js.map → improvement-review-7VJYOI2F.js.map} +0 -0
  126. /package/dist/{init-opencode-NTS5ZWXU.js.map → init-opencode-TLVVMG54.js.map} +0 -0
  127. /package/dist/{issue-triage-PM67ACC5.js.map → issue-triage-YREC36AC.js.map} +0 -0
  128. /package/dist/{learning-persistence-SR5F4DSY.js.map → learning-persistence-7O5QYDM7.js.map} +0 -0
  129. /package/dist/{pr-reviewer-helpers-IAKFHBM6.js.map → pr-reviewer-helpers-4ERCFSZ7.js.map} +0 -0
  130. /package/dist/{registry-command-6HVXEW23.js.map → registry-command-GN2REQQP.js.map} +0 -0
  131. /package/dist/{repo-security-plan-MF4E5MG6.js.map → repo-security-plan-VPAXEENC.js.map} +0 -0
  132. /package/dist/{research-helpers-synthesize-2XQBWVG6.js.map → research-helpers-synthesize-OZOOIEFW.js.map} +0 -0
  133. /package/dist/{routing-memory-YIKR7EMC.js.map → routing-memory-OF7J3OE4.js.map} +0 -0
  134. /package/dist/{session-memory-B6TFD55A.js.map → session-memory-O5M3CLRX.js.map} +0 -0
  135. /package/dist/{setup-config-A5DWVRQB.js.map → setup-config-WW5BNLVS.js.map} +0 -0
  136. /package/dist/{setup-custom-api-ATC26B2O.js.map → setup-custom-api-UX4XNOT6.js.map} +0 -0
  137. /package/dist/{setup-data-dir-DWMKVY6G.js.map → setup-data-dir-KHLK534F.js.map} +0 -0
  138. /package/dist/{tool-memory-XDUJUM2O.js.map → tool-memory-PIBTMGPH.js.map} +0 -0
  139. /package/dist/{tool-memory-registry-adapters-UMPIJLHS.js.map → tool-memory-registry-adapters-IMRSOAAV.js.map} +0 -0
  140. /package/dist/{unified-registry-H2NNOXB3.js.map → unified-registry-MUXCSSG5.js.map} +0 -0
  141. /package/dist/{weather-report-YDYML3JW.js.map → weather-report-JOATSJWU.js.map} +0 -0
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  nexusMkdtemp
3
- } from "./chunk-RQV5ZUXT.js";
3
+ } from "./chunk-4OW67KT2.js";
4
4
  import {
5
5
  createLogger
6
- } from "./chunk-TBWKMKCX.js";
7
- import "./chunk-HHLCAWAV.js";
8
- import "./chunk-NBMWONHE.js";
6
+ } from "./chunk-OYFKB64X.js";
7
+ import "./chunk-GBHJ37V3.js";
8
+ import "./chunk-OGHEKPLD.js";
9
9
  import "./chunk-ZPWHCABL.js";
10
10
 
11
11
  // src/cli-adapters/child-mcp-config.ts
@@ -62,4 +62,4 @@ export {
62
62
  generateMcpConfig,
63
63
  getDefaultAllowedTools
64
64
  };
65
- //# sourceMappingURL=child-mcp-config-I3IQVN7P.js.map
65
+ //# sourceMappingURL=child-mcp-config-FEK2HK5L.js.map
@@ -2,7 +2,7 @@ import {
2
2
  TASK_CATEGORIES,
3
3
  getAdaptiveBonus,
4
4
  getOutcomeStore
5
- } from "./chunk-TBWKMKCX.js";
5
+ } from "./chunk-OYFKB64X.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-RF5N4HME.js.map
109
+ //# sourceMappingURL=chunk-2FYFHAI4.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  generateSecurityPlan
3
- } from "./chunk-BZGTZKXY.js";
3
+ } from "./chunk-LLGK3NRY.js";
4
4
  import {
5
5
  analyzeGitHubRepo
6
6
  } from "./chunk-HFOQKCD2.js";
@@ -21,10 +21,10 @@ import {
21
21
  import {
22
22
  DEFAULT_TASK_TTL_MS,
23
23
  clampTaskTtl
24
- } from "./chunk-HLVST3JE.js";
24
+ } from "./chunk-TXCJMTLN.js";
25
25
  import {
26
26
  executeExpert
27
- } from "./chunk-VSHQMS37.js";
27
+ } from "./chunk-YFDE4AM3.js";
28
28
  import {
29
29
  JobStatusSchema,
30
30
  abortJob,
@@ -46,24 +46,24 @@ import {
46
46
  simulationDeniedResult,
47
47
  toJobSummary,
48
48
  writeJobCancelled
49
- } from "./chunk-ZRSKNV3E.js";
49
+ } from "./chunk-XQEWXGJ5.js";
50
50
  import {
51
51
  allOf
52
52
  } from "./chunk-OQB3XC5O.js";
53
53
  import {
54
54
  normalizeTopicToCanonical,
55
55
  synthesizeResearch
56
- } from "./chunk-NQ65EKMG.js";
56
+ } from "./chunk-PUGRS4KW.js";
57
57
  import {
58
58
  IssueTriage
59
- } from "./chunk-BTAWCQP6.js";
59
+ } from "./chunk-K2DSQJEH.js";
60
60
  import {
61
61
  resolveEnvMode,
62
62
  sanitizeInput
63
- } from "./chunk-7MBFKJJT.js";
63
+ } from "./chunk-MSHZHT5X.js";
64
64
  import {
65
65
  withPrerequisite
66
- } from "./chunk-DXWF7V74.js";
66
+ } from "./chunk-GVLMTQ46.js";
67
67
  import {
68
68
  NOOP_NOTIFIER,
69
69
  RateLimiter,
@@ -87,18 +87,18 @@ import {
87
87
  withAuditTrail,
88
88
  withProgressHeartbeat,
89
89
  wrapToolWithTimeout
90
- } from "./chunk-PLO6VSSN.js";
90
+ } from "./chunk-LSJ2EPOF.js";
91
91
  import {
92
92
  createAuditTrail,
93
93
  createGraphAuditBridge,
94
94
  emitPipelinePolicyEvent
95
- } from "./chunk-YSOWQJ5S.js";
95
+ } from "./chunk-32IMMUXP.js";
96
96
  import {
97
97
  EventTopics,
98
98
  createEvent,
99
99
  getGlobalEventBus,
100
100
  getGlobalRegistry
101
- } from "./chunk-QS5K3PAY.js";
101
+ } from "./chunk-IC6WLIGJ.js";
102
102
  import {
103
103
  IDENTIFIER_RE,
104
104
  LANG_VALUES,
@@ -131,29 +131,29 @@ import {
131
131
  parseRegistry,
132
132
  sourceExistsInRegistry,
133
133
  summarizeContextForPrompt
134
- } from "./chunk-3PVG7CQS.js";
134
+ } from "./chunk-HPGPOZG4.js";
135
135
  import {
136
136
  loadPapersRegistry,
137
137
  loadTechniquesRegistry,
138
138
  resolveInsideRoot
139
- } from "./chunk-EPOKODTI.js";
139
+ } from "./chunk-YVW743K3.js";
140
140
  import {
141
141
  getTokenEnvVars,
142
142
  resolveToken
143
- } from "./chunk-5YBFBXEB.js";
143
+ } from "./chunk-Z37OVF33.js";
144
144
  import {
145
145
  DEFAULT_RELEVANCE_CONFIG,
146
146
  MemoryImportance,
147
147
  calculateTextJaccardSimilarity,
148
148
  getToolMemory
149
- } from "./chunk-IBW6CJ4G.js";
149
+ } from "./chunk-ADC7YEU2.js";
150
150
  import {
151
151
  STOPWORDS,
152
152
  truncateWithInfo
153
153
  } from "./chunk-6T3EPABN.js";
154
154
  import {
155
155
  createSessionMemory
156
- } from "./chunk-3K3IPRED.js";
156
+ } from "./chunk-R3H46BNY.js";
157
157
  import {
158
158
  BUILT_IN_EXPERTS,
159
159
  BuiltInExpertTypeSchema,
@@ -171,25 +171,25 @@ import {
171
171
  getAvailableClis,
172
172
  sleep,
173
173
  withTimeout
174
- } from "./chunk-SBWVYOTV.js";
174
+ } from "./chunk-EPZCODRK.js";
175
175
  import {
176
176
  BaseAdapter,
177
177
  createStream,
178
178
  requireApiKey,
179
179
  validateApiKeyPresence
180
- } from "./chunk-MCCN5UUW.js";
180
+ } from "./chunk-WJGTRYWS.js";
181
181
  import {
182
182
  DEFAULTS
183
- } from "./chunk-RXGHRVL2.js";
183
+ } from "./chunk-K2A24T36.js";
184
184
  import {
185
185
  getAvailabilityCache,
186
186
  getCliForModelId,
187
187
  resolveFallback
188
- } from "./chunk-HWPFUVMS.js";
188
+ } from "./chunk-CMZGRDKF.js";
189
189
  import {
190
190
  generateHyphenId,
191
191
  generateUUID
192
- } from "./chunk-QQS6FVTQ.js";
192
+ } from "./chunk-LMTBX4GZ.js";
193
193
  import {
194
194
  AGENT_ROUTER_TIMEOUTS,
195
195
  API_TIMEOUTS,
@@ -293,18 +293,18 @@ import {
293
293
  selectStrategyByManifest,
294
294
  toExpertTaskAnalysisResult,
295
295
  withStep
296
- } from "./chunk-TBWKMKCX.js";
296
+ } from "./chunk-OYFKB64X.js";
297
297
  import {
298
298
  ensureLearningDir,
299
299
  getMetaOutcomesFile,
300
300
  isPersistenceEnabled
301
- } from "./chunk-HHLCAWAV.js";
301
+ } from "./chunk-GBHJ37V3.js";
302
302
  import {
303
303
  findRepoRoot,
304
304
  getNexusDataDir,
305
305
  nexusDataPath,
306
306
  nexusDataPathEnsure
307
- } from "./chunk-NBMWONHE.js";
307
+ } from "./chunk-OGHEKPLD.js";
308
308
 
309
309
  // src/config/schemas-core.ts
310
310
  import { z } from "zod";
@@ -29544,7 +29544,7 @@ function execIdFields(executionId) {
29544
29544
  async function populateUnifiedContextOnState(state, options) {
29545
29545
  const taskCandidate = state["task"];
29546
29546
  if (typeof taskCandidate !== "string" || taskCandidate === "") return;
29547
- const { getContextForTask: getContextForTask2, inferTaskCategory: inferTaskCategory2 } = await import("./context-retriever-BROUADMF.js");
29547
+ const { getContextForTask: getContextForTask2, inferTaskCategory: inferTaskCategory2 } = await import("./context-retriever-L2LTCKV6.js");
29548
29548
  const category = inferTaskCategory2(taskCandidate);
29549
29549
  const executionId = options?.executionId;
29550
29550
  const execFields = execIdFields(executionId);
@@ -40464,7 +40464,13 @@ function recordDiscoveryOutcome(success, durationMs, errorMsg) {
40464
40464
  const store = getOutcomeStore();
40465
40465
  store.append({
40466
40466
  id: `research-discover-${String(getTimeProvider().now())}-${getRandomProvider().random().toString(36).slice(2, 8)}`,
40467
- cli: DEFAULT_CLI,
40467
+ // #5034: NOT `DEFAULT_CLI`. This tool does not know which CLI served the
40468
+ // work — `model` below is a synthetic label — and hardcoding 'claude'
40469
+ // credited or debited claude in the routing learner on every run.
40470
+ // `'unknown'` is the schema's own unattributed value, which the bandit's
40471
+ // warm-start partitions out instead of replaying (#4935). #5020 fixed
40472
+ // two of these four writers; this is the remainder.
40473
+ cli: "unknown",
40468
40474
  category: "research",
40469
40475
  model: "research-discover",
40470
40476
  success,
@@ -41202,7 +41208,13 @@ function recordTriageOutcome(success, durationMs, errorMsg) {
41202
41208
  const store = getOutcomeStore();
41203
41209
  store.append({
41204
41210
  id: `triage-${String(getTimeProvider().now())}-${getRandomProvider().random().toString(36).slice(2, 8)}`,
41205
- cli: DEFAULT_CLI,
41211
+ // #5034: NOT `DEFAULT_CLI`. This tool does not know which CLI served the
41212
+ // work — `model` below is a synthetic label — and hardcoding 'claude'
41213
+ // credited or debited claude in the routing learner on every run.
41214
+ // `'unknown'` is the schema's own unattributed value, which the bandit's
41215
+ // warm-start partitions out instead of replaying (#4935). #5020 fixed
41216
+ // two of these four writers; this is the remainder.
41217
+ cli: "unknown",
41206
41218
  category: "planning",
41207
41219
  model: "issue-triage",
41208
41220
  success,
@@ -42135,6 +42147,24 @@ var MemoryQueryInputSchema = z80.object({
42135
42147
  limit: z80.number().int().min(1).max(50).optional().default(10).describe("Maximum results to return (default: 10, max: 50)"),
42136
42148
  source: z80.enum(["session", "belief", "agentic", "typed", "adaptive", "all"]).optional().default("all").describe("Filter by memory source (default: all)")
42137
42149
  });
42150
+ function describeBackendCoverage(memory, source) {
42151
+ const optional = [
42152
+ ["agentic", memory.isAgenticMemoryAvailable()],
42153
+ ["adaptive", memory.isAdaptiveMemoryAvailable()],
42154
+ ["typed", memory.isTypedMemoryAvailable()]
42155
+ ];
42156
+ const inScope = (name) => source === "all" || source === name;
42157
+ const searched = [];
42158
+ const unavailable = [];
42159
+ for (const name of ["session", "belief"]) {
42160
+ if (inScope(name)) searched.push(name);
42161
+ }
42162
+ for (const [name, available] of optional) {
42163
+ if (!inScope(name)) continue;
42164
+ (available ? searched : unavailable).push(name);
42165
+ }
42166
+ return { searched, unavailable };
42167
+ }
42138
42168
  var reflectionCache;
42139
42169
  var reflectionAdapter;
42140
42170
  function getReflectiveRetriever(logger59) {
@@ -42186,12 +42216,15 @@ async function executeMemoryQuery(input, logger59) {
42186
42216
  reflectionSource: reflection?.source,
42187
42217
  reflectionDurationMs: reflection?.durationMs
42188
42218
  });
42219
+ const coverage = describeBackendCoverage(toolMemory, input.source);
42189
42220
  return {
42190
42221
  query: input.query,
42191
42222
  ...expandedQuery !== void 0 ? { expandedQuery } : {},
42192
42223
  results,
42193
42224
  count: results.length,
42194
- source: input.source
42225
+ source: input.source,
42226
+ searched: coverage.searched,
42227
+ unavailable: coverage.unavailable
42195
42228
  };
42196
42229
  }
42197
42230
  async function memoryQueryHandler(args, ctx) {
@@ -42227,7 +42260,14 @@ function registerMemoryQueryTool(server, deps) {
42227
42260
  expandedQuery: z80.string().optional(),
42228
42261
  results: z80.array(z80.unknown()),
42229
42262
  count: z80.number(),
42230
- source: z80.string()
42263
+ source: z80.string(),
42264
+ // #4999: the SDK validates structured content against this schema with
42265
+ // `additionalProperties: false`, so a field added to the response and not
42266
+ // declared here makes EVERY call fail with -32602 rather than merely going
42267
+ // unreported. The integration test caught that; the unit tests could not,
42268
+ // because they call the handler directly and never cross the protocol.
42269
+ searched: z80.array(z80.string()),
42270
+ unavailable: z80.array(z80.string())
42231
42271
  };
42232
42272
  server.registerTool(
42233
42273
  "memory_query",
@@ -45284,7 +45324,7 @@ async function tryIssueTriage(task) {
45284
45324
  try {
45285
45325
  const issueMatch = task.match(/github\.com\/([^/]+\/[^/]+)\/issues\/(\d+)/);
45286
45326
  if (issueMatch === null) return null;
45287
- const { createIssueTriage } = await import("./issue-triage-PM67ACC5.js");
45327
+ const { createIssueTriage } = await import("./issue-triage-YREC36AC.js");
45288
45328
  const triage = createIssueTriage();
45289
45329
  const owner = issueMatch[1] ?? "";
45290
45330
  const num = issueMatch[2] ?? "";
@@ -45312,7 +45352,7 @@ var VALID_TEMPLATES = /* @__PURE__ */ new Set([
45312
45352
  ]);
45313
45353
  async function classifyWithLLM(task) {
45314
45354
  try {
45315
- const { executeExpert: executeExpert2 } = await import("./expert-bridge-H6ITLZUY.js");
45355
+ const { executeExpert: executeExpert2 } = await import("./expert-bridge-XN5MFZOG.js");
45316
45356
  const prompt = [
45317
45357
  "Classify this task into exactly one pipeline template.",
45318
45358
  "Templates: dev (implementation/bug fix/refactor), research (investigate/evaluate/compare),",
@@ -47093,8 +47133,8 @@ var memoryInitPromise = null;
47093
47133
  async function initPipelineMemory() {
47094
47134
  if (cachedMemory !== null) return cachedMemory;
47095
47135
  try {
47096
- const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-B6TFD55A.js");
47097
- const { getLearningDir } = await import("./learning-persistence-SR5F4DSY.js");
47136
+ const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-O5M3CLRX.js");
47137
+ const { getLearningDir } = await import("./learning-persistence-7O5QYDM7.js");
47098
47138
  const mem = createSessionMemory2(getLearningDir());
47099
47139
  mem.startSession(`pipeline-${String(getTimeProvider().now())}`);
47100
47140
  cachedMemory = {
@@ -47155,7 +47195,7 @@ function recordRoutingExperience(category, success, durationMs, tokensUsed = 0,
47155
47195
  callRecord(routingMemoryCache);
47156
47196
  return;
47157
47197
  }
47158
- routingMemoryInitPromise ??= import("./routing-memory-YIKR7EMC.js").then(({ createRoutingMemory }) => {
47198
+ routingMemoryInitPromise ??= import("./routing-memory-OF7J3OE4.js").then(({ createRoutingMemory }) => {
47159
47199
  routingMemoryCache ??= createRoutingMemory();
47160
47200
  return routingMemoryCache;
47161
47201
  }).catch((error) => {
@@ -47189,7 +47229,7 @@ ${text}` : "";
47189
47229
  }
47190
47230
  async function getWeatherContext() {
47191
47231
  try {
47192
- const { generateWeatherReport: generateWeatherReport2 } = await import("./weather-report-YDYML3JW.js");
47232
+ const { generateWeatherReport: generateWeatherReport2 } = await import("./weather-report-JOATSJWU.js");
47193
47233
  const report = generateWeatherReport2({ includeAdaptive: true });
47194
47234
  const mappings = "recommendedMappings" in report ? report.recommendedMappings : [];
47195
47235
  if (!Array.isArray(mappings) || mappings.length === 0) return "";
@@ -47207,8 +47247,8 @@ ${lines}
47207
47247
  }
47208
47248
  async function getMemoryContext(task) {
47209
47249
  try {
47210
- const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-B6TFD55A.js");
47211
- const { getLearningDir } = await import("./learning-persistence-SR5F4DSY.js");
47250
+ const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-O5M3CLRX.js");
47251
+ const { getLearningDir } = await import("./learning-persistence-7O5QYDM7.js");
47212
47252
  const memory = createSessionMemory2(getLearningDir(), { maxLearningsInContext: 10 });
47213
47253
  const learnings = memory.searchLearnings(task.slice(0, 200));
47214
47254
  if (learnings.length === 0) return "";
@@ -47326,7 +47366,7 @@ ${contextBlock}`;
47326
47366
  const strategy = config.votingStrategy ?? "higher_order";
47327
47367
  await postProgress(config, "Vote", `Running consensus with ${strategy} strategy...`);
47328
47368
  try {
47329
- const { executeVoting } = await import("./consensus-vote-65UZRQMY.js");
47369
+ const { executeVoting } = await import("./consensus-vote-ETJ63JRC.js");
47330
47370
  const votingResult = await executeVoting(
47331
47371
  {
47332
47372
  proposal: buildVoteProposal(plan, research),
@@ -47765,7 +47805,7 @@ async function searchCodebaseForTask(task) {
47765
47805
  }
47766
47806
  async function queryResearchRegistry(task) {
47767
47807
  try {
47768
- const { synthesizeResearch: synthesizeResearch2 } = await import("./research-helpers-synthesize-2XQBWVG6.js");
47808
+ const { synthesizeResearch: synthesizeResearch2 } = await import("./research-helpers-synthesize-OZOOIEFW.js");
47769
47809
  const topic = task.split(/[.!?\n]/).filter((s) => s.trim().length > 10)[0]?.trim();
47770
47810
  if (topic === void 0) return null;
47771
47811
  const result = await synthesizeResearch2(topic.slice(0, 50));
@@ -47836,7 +47876,7 @@ function createScanStageWrapper() {
47836
47876
  try {
47837
47877
  const slug = ctx.task.match(/([a-zA-Z0-9._-]+\/[a-zA-Z0-9._-]+)/)?.[1];
47838
47878
  if (slug !== void 0) {
47839
- const { generateSecurityPlan: generateSecurityPlan2 } = await import("./repo-security-plan-MF4E5MG6.js");
47879
+ const { generateSecurityPlan: generateSecurityPlan2 } = await import("./repo-security-plan-VPAXEENC.js");
47840
47880
  const plan = await generateSecurityPlan2({ repo: slug, maxScanners: 10 });
47841
47881
  const recs = plan.recommendations.slice(0, 5).map((r) => `${r.priority}: ${r.displayName} (${r.category})`).join("; ");
47842
47882
  return output(PIPELINE_STATE_KEYS.FINDINGS, recs, getTimeProvider().now() - start, true);
@@ -50961,7 +51001,7 @@ var GitHubTaskTracker = class {
50961
51001
  cachedProvider = null;
50962
51002
  async getProvider() {
50963
51003
  if (this.cachedProvider !== null) return this.cachedProvider;
50964
- const { createScmProvider } = await import("./factory-WJ6AV4WU.js");
51004
+ const { createScmProvider } = await import("./factory-2TJ44P7L.js");
50965
51005
  const result = await createScmProvider({ repo: this.config.repo ?? "" });
50966
51006
  if (!result.ok) throw new Error(`SCM provider error: ${result.error.message}`);
50967
51007
  this.cachedProvider = result.value;
@@ -51874,7 +51914,7 @@ async function probeSource(source, includeModelIds) {
51874
51914
  }
51875
51915
  }
51876
51916
  async function defaultSources(includeOpenRouter) {
51877
- const { createAllAdapters: createAllAdapters2 } = await import("./factory-ZIYR7YJ3.js");
51917
+ const { createAllAdapters: createAllAdapters2 } = await import("./factory-GVBBWUOE.js");
51878
51918
  const adapters = createAllAdapters2();
51879
51919
  return buildDefaultModelSources(adapters, { includeOpenRouter });
51880
51920
  }
@@ -55938,4 +55978,4 @@ export {
55938
55978
  shutdownFeedbackSubscriber,
55939
55979
  createEventBusBridge
55940
55980
  };
55941
- //# sourceMappingURL=chunk-VDEDTAHZ.js.map
55981
+ //# sourceMappingURL=chunk-2MPJ7UDR.js.map