nexus-agents 2.159.0 → 2.160.2

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 (123) hide show
  1. package/dist/{child-mcp-config-72S4OMRK.js → child-mcp-config-JHX6JCF5.js} +2 -2
  2. package/dist/{chunk-NTVJNSJC.js → chunk-24ALAT2O.js} +2 -2
  3. package/dist/{chunk-7WKSZZAX.js → chunk-2CGJSTYK.js} +2 -2
  4. package/dist/{chunk-SLQJ746K.js → chunk-2QDZ2L2C.js} +2 -2
  5. package/dist/{chunk-CY3QSLDQ.js → chunk-32ZVVATK.js} +3 -3
  6. package/dist/{chunk-ZQMTD74M.js → chunk-3CPGLNSD.js} +58 -41
  7. package/dist/{chunk-ZQMTD74M.js.map → chunk-3CPGLNSD.js.map} +1 -1
  8. package/dist/{chunk-SHKRC6Z7.js → chunk-3QHURPW4.js} +5 -5
  9. package/dist/{chunk-BK2IRU3L.js → chunk-3XMAIPFB.js} +2 -2
  10. package/dist/{chunk-I3ROKMFF.js → chunk-3Y44T42S.js} +4 -4
  11. package/dist/{chunk-XPPDWKZI.js → chunk-4JKJEEMP.js} +7 -7
  12. package/dist/{chunk-MWTAZEHK.js → chunk-4KRO6NTX.js} +2 -2
  13. package/dist/{chunk-I4SDEK6H.js → chunk-4TLU7JJA.js} +7 -7
  14. package/dist/{chunk-6IXIKOLR.js → chunk-6DJ7WISU.js} +6 -6
  15. package/dist/{chunk-6IXIKOLR.js.map → chunk-6DJ7WISU.js.map} +1 -1
  16. package/dist/{chunk-3YGTLWNA.js → chunk-6EUEK2T5.js} +2 -2
  17. package/dist/{chunk-FENIEDNW.js → chunk-7NOWAN4D.js} +106 -6
  18. package/dist/chunk-7NOWAN4D.js.map +1 -0
  19. package/dist/{chunk-YNKEHMKX.js → chunk-AL3PRVJG.js} +3 -3
  20. package/dist/{chunk-DOTCPOLE.js → chunk-AMU753KU.js} +14 -10
  21. package/dist/chunk-AMU753KU.js.map +1 -0
  22. package/dist/{chunk-IYSD4VFM.js → chunk-BKPBAXWH.js} +4 -4
  23. package/dist/{chunk-WTCREQRS.js → chunk-CDJJ3CL2.js} +5 -5
  24. package/dist/{chunk-P7SRGOLU.js → chunk-DDAYKDEB.js} +2 -2
  25. package/dist/{chunk-P3FNNFAW.js → chunk-H2HAB3EW.js} +3 -3
  26. package/dist/{chunk-VCFKTNCM.js → chunk-INQLVBAM.js} +2 -2
  27. package/dist/{chunk-TMBVOQPL.js → chunk-J2SLPVMA.js} +4 -4
  28. package/dist/{chunk-TOJFRIVM.js → chunk-JRQSJ2L7.js} +4 -4
  29. package/dist/{chunk-VCX3QMZE.js → chunk-LB5AD6JX.js} +8 -8
  30. package/dist/{chunk-Y7637JDT.js → chunk-LPFOSO5W.js} +5 -5
  31. package/dist/{chunk-VOTYZUEG.js → chunk-NSPJHKKJ.js} +3 -3
  32. package/dist/{chunk-RZDIYKVH.js → chunk-PRERQSR2.js} +2 -2
  33. package/dist/{chunk-GY4XQU2V.js → chunk-PXIGNQWU.js} +3 -3
  34. package/dist/{chunk-ZHGCHS2D.js → chunk-RHY46PYV.js} +2 -2
  35. package/dist/{chunk-24PRWXLQ.js → chunk-TID366GJ.js} +3 -3
  36. package/dist/{chunk-VQ3ZVDSQ.js → chunk-URIRSUQQ.js} +2 -2
  37. package/dist/{chunk-AS6TNXKV.js → chunk-W75MNLLK.js} +2 -2
  38. package/dist/{chunk-TB7GQCIH.js → chunk-WFGGF6RQ.js} +2 -2
  39. package/dist/{chunk-JEUWM2VZ.js → chunk-WZJK5ZK3.js} +2 -2
  40. package/dist/{cli-circuit-breaker-BWZXZBNW.js → cli-circuit-breaker-3MA2YHO4.js} +4 -4
  41. package/dist/cli.js +41 -41
  42. package/dist/{composite-router-NPSNBLX7.js → composite-router-XNE5Q3YF.js} +2 -2
  43. package/dist/{consensus-vote-ZX6NLTI4.js → consensus-vote-4CU3EY7H.js} +15 -15
  44. package/dist/{context-retriever-3QKHEA5U.js → context-retriever-VOPNSCRI.js} +8 -8
  45. package/dist/{doctor-deep-Y2PQCE6G.js → doctor-deep-LPZ7X4MY.js} +3 -3
  46. package/dist/{expert-bridge-NXG4Z7U7.js → expert-bridge-WDVNKIO3.js} +4 -4
  47. package/dist/{factory-YK2QA3TU.js → factory-3KFIWW2N.js} +5 -5
  48. package/dist/{factory-JJ4N6YPR.js → factory-Q4FUNYFK.js} +8 -8
  49. package/dist/{improvement-review-6LSV4QFA.js → improvement-review-SUVEFV7C.js} +5 -5
  50. package/dist/index.d.ts +79 -0
  51. package/dist/index.js +30 -30
  52. package/dist/index.js.map +1 -1
  53. package/dist/{init-opencode-AO2PEKXB.js → init-opencode-IU3SEIHV.js} +6 -6
  54. package/dist/{issue-triage-ZRRXCDAM.js → issue-triage-PF2WKXHL.js} +6 -6
  55. package/dist/{pr-reviewer-helpers-NEJJKQ7D.js → pr-reviewer-helpers-UR7WCAGK.js} +4 -4
  56. package/dist/{registry-command-DKNGS752.js → registry-command-IHDL7SMW.js} +2 -2
  57. package/dist/{repo-security-plan-DEYYRMTB.js → repo-security-plan-YNCJQ2YC.js} +3 -3
  58. package/dist/{research-helpers-synthesize-54UEJ24R.js → research-helpers-synthesize-FUY4WVHY.js} +4 -4
  59. package/dist/{routing-memory-QFEXYF6G.js → routing-memory-CRRV6C4D.js} +2 -2
  60. package/dist/{session-memory-DYU7XMQO.js → session-memory-JLWKMKZI.js} +3 -3
  61. package/dist/{setup-command-PSYJ4M7Q.js → setup-command-Q23UB7WS.js} +11 -11
  62. package/dist/{setup-config-CBV4OUOE.js → setup-config-DXN6CAOG.js} +3 -3
  63. package/dist/{setup-custom-api-IJWYWAHX.js → setup-custom-api-NKK2CNLH.js} +3 -3
  64. package/dist/{tool-memory-2DI34M5Z.js → tool-memory-JUZW6R3I.js} +5 -5
  65. package/dist/{unified-registry-VQPPIL6M.js → unified-registry-3ROGZFAX.js} +9 -9
  66. package/dist/{weather-report-RETBQ4VD.js → weather-report-5MYASHFK.js} +6 -2
  67. package/package.json +1 -1
  68. package/dist/chunk-DOTCPOLE.js.map +0 -1
  69. package/dist/chunk-FENIEDNW.js.map +0 -1
  70. /package/dist/{child-mcp-config-72S4OMRK.js.map → child-mcp-config-JHX6JCF5.js.map} +0 -0
  71. /package/dist/{chunk-NTVJNSJC.js.map → chunk-24ALAT2O.js.map} +0 -0
  72. /package/dist/{chunk-7WKSZZAX.js.map → chunk-2CGJSTYK.js.map} +0 -0
  73. /package/dist/{chunk-SLQJ746K.js.map → chunk-2QDZ2L2C.js.map} +0 -0
  74. /package/dist/{chunk-CY3QSLDQ.js.map → chunk-32ZVVATK.js.map} +0 -0
  75. /package/dist/{chunk-SHKRC6Z7.js.map → chunk-3QHURPW4.js.map} +0 -0
  76. /package/dist/{chunk-BK2IRU3L.js.map → chunk-3XMAIPFB.js.map} +0 -0
  77. /package/dist/{chunk-I3ROKMFF.js.map → chunk-3Y44T42S.js.map} +0 -0
  78. /package/dist/{chunk-XPPDWKZI.js.map → chunk-4JKJEEMP.js.map} +0 -0
  79. /package/dist/{chunk-MWTAZEHK.js.map → chunk-4KRO6NTX.js.map} +0 -0
  80. /package/dist/{chunk-I4SDEK6H.js.map → chunk-4TLU7JJA.js.map} +0 -0
  81. /package/dist/{chunk-3YGTLWNA.js.map → chunk-6EUEK2T5.js.map} +0 -0
  82. /package/dist/{chunk-YNKEHMKX.js.map → chunk-AL3PRVJG.js.map} +0 -0
  83. /package/dist/{chunk-IYSD4VFM.js.map → chunk-BKPBAXWH.js.map} +0 -0
  84. /package/dist/{chunk-WTCREQRS.js.map → chunk-CDJJ3CL2.js.map} +0 -0
  85. /package/dist/{chunk-P7SRGOLU.js.map → chunk-DDAYKDEB.js.map} +0 -0
  86. /package/dist/{chunk-P3FNNFAW.js.map → chunk-H2HAB3EW.js.map} +0 -0
  87. /package/dist/{chunk-VCFKTNCM.js.map → chunk-INQLVBAM.js.map} +0 -0
  88. /package/dist/{chunk-TMBVOQPL.js.map → chunk-J2SLPVMA.js.map} +0 -0
  89. /package/dist/{chunk-TOJFRIVM.js.map → chunk-JRQSJ2L7.js.map} +0 -0
  90. /package/dist/{chunk-VCX3QMZE.js.map → chunk-LB5AD6JX.js.map} +0 -0
  91. /package/dist/{chunk-Y7637JDT.js.map → chunk-LPFOSO5W.js.map} +0 -0
  92. /package/dist/{chunk-VOTYZUEG.js.map → chunk-NSPJHKKJ.js.map} +0 -0
  93. /package/dist/{chunk-RZDIYKVH.js.map → chunk-PRERQSR2.js.map} +0 -0
  94. /package/dist/{chunk-GY4XQU2V.js.map → chunk-PXIGNQWU.js.map} +0 -0
  95. /package/dist/{chunk-ZHGCHS2D.js.map → chunk-RHY46PYV.js.map} +0 -0
  96. /package/dist/{chunk-24PRWXLQ.js.map → chunk-TID366GJ.js.map} +0 -0
  97. /package/dist/{chunk-VQ3ZVDSQ.js.map → chunk-URIRSUQQ.js.map} +0 -0
  98. /package/dist/{chunk-AS6TNXKV.js.map → chunk-W75MNLLK.js.map} +0 -0
  99. /package/dist/{chunk-TB7GQCIH.js.map → chunk-WFGGF6RQ.js.map} +0 -0
  100. /package/dist/{chunk-JEUWM2VZ.js.map → chunk-WZJK5ZK3.js.map} +0 -0
  101. /package/dist/{cli-circuit-breaker-BWZXZBNW.js.map → cli-circuit-breaker-3MA2YHO4.js.map} +0 -0
  102. /package/dist/{composite-router-NPSNBLX7.js.map → composite-router-XNE5Q3YF.js.map} +0 -0
  103. /package/dist/{consensus-vote-ZX6NLTI4.js.map → consensus-vote-4CU3EY7H.js.map} +0 -0
  104. /package/dist/{context-retriever-3QKHEA5U.js.map → context-retriever-VOPNSCRI.js.map} +0 -0
  105. /package/dist/{doctor-deep-Y2PQCE6G.js.map → doctor-deep-LPZ7X4MY.js.map} +0 -0
  106. /package/dist/{expert-bridge-NXG4Z7U7.js.map → expert-bridge-WDVNKIO3.js.map} +0 -0
  107. /package/dist/{factory-JJ4N6YPR.js.map → factory-3KFIWW2N.js.map} +0 -0
  108. /package/dist/{factory-YK2QA3TU.js.map → factory-Q4FUNYFK.js.map} +0 -0
  109. /package/dist/{improvement-review-6LSV4QFA.js.map → improvement-review-SUVEFV7C.js.map} +0 -0
  110. /package/dist/{init-opencode-AO2PEKXB.js.map → init-opencode-IU3SEIHV.js.map} +0 -0
  111. /package/dist/{issue-triage-ZRRXCDAM.js.map → issue-triage-PF2WKXHL.js.map} +0 -0
  112. /package/dist/{pr-reviewer-helpers-NEJJKQ7D.js.map → pr-reviewer-helpers-UR7WCAGK.js.map} +0 -0
  113. /package/dist/{registry-command-DKNGS752.js.map → registry-command-IHDL7SMW.js.map} +0 -0
  114. /package/dist/{repo-security-plan-DEYYRMTB.js.map → repo-security-plan-YNCJQ2YC.js.map} +0 -0
  115. /package/dist/{research-helpers-synthesize-54UEJ24R.js.map → research-helpers-synthesize-FUY4WVHY.js.map} +0 -0
  116. /package/dist/{routing-memory-QFEXYF6G.js.map → routing-memory-CRRV6C4D.js.map} +0 -0
  117. /package/dist/{session-memory-DYU7XMQO.js.map → session-memory-JLWKMKZI.js.map} +0 -0
  118. /package/dist/{setup-command-PSYJ4M7Q.js.map → setup-command-Q23UB7WS.js.map} +0 -0
  119. /package/dist/{setup-config-CBV4OUOE.js.map → setup-config-DXN6CAOG.js.map} +0 -0
  120. /package/dist/{setup-custom-api-IJWYWAHX.js.map → setup-custom-api-NKK2CNLH.js.map} +0 -0
  121. /package/dist/{tool-memory-2DI34M5Z.js.map → tool-memory-JUZW6R3I.js.map} +0 -0
  122. /package/dist/{unified-registry-VQPPIL6M.js.map → unified-registry-3ROGZFAX.js.map} +0 -0
  123. /package/dist/{weather-report-RETBQ4VD.js.map → weather-report-5MYASHFK.js.map} +0 -0
package/dist/cli.js CHANGED
@@ -2,7 +2,7 @@
2
2
  import {
3
3
  buildOpenAICompatAdapters,
4
4
  readOpenAICompatEnv
5
- } from "./chunk-IYSD4VFM.js";
5
+ } from "./chunk-BKPBAXWH.js";
6
6
  import {
7
7
  calculateConsensus,
8
8
  countByCategory,
@@ -17,13 +17,13 @@ import {
17
17
  generateSummary,
18
18
  parseFindings,
19
19
  sumFindings
20
- } from "./chunk-P3FNNFAW.js";
21
- import "./chunk-SLQJ746K.js";
20
+ } from "./chunk-H2HAB3EW.js";
21
+ import "./chunk-2QDZ2L2C.js";
22
22
  import {
23
23
  setupCommandAsync,
24
24
  verifyCommand
25
- } from "./chunk-WTCREQRS.js";
26
- import "./chunk-7WKSZZAX.js";
25
+ } from "./chunk-CDJJ3CL2.js";
26
+ import "./chunk-2CGJSTYK.js";
27
27
  import {
28
28
  AuthHandler,
29
29
  DEFAULT_EXPERTS,
@@ -142,9 +142,9 @@ import {
142
142
  validateCommand,
143
143
  validateWorkflow,
144
144
  wrapInMarkdownFence
145
- } from "./chunk-ZQMTD74M.js";
146
- import "./chunk-YNKEHMKX.js";
147
- import "./chunk-ZHGCHS2D.js";
145
+ } from "./chunk-3CPGLNSD.js";
146
+ import "./chunk-AL3PRVJG.js";
147
+ import "./chunk-RHY46PYV.js";
148
148
  import "./chunk-HFOQKCD2.js";
149
149
  import "./chunk-3ACDP4E6.js";
150
150
  import {
@@ -170,11 +170,11 @@ import {
170
170
  loadConfig,
171
171
  runDoctor,
172
172
  validateNexusEnv
173
- } from "./chunk-DOTCPOLE.js";
174
- import "./chunk-CY3QSLDQ.js";
173
+ } from "./chunk-AMU753KU.js";
174
+ import "./chunk-32ZVVATK.js";
175
175
  import {
176
176
  shutdownExpertBridge
177
- } from "./chunk-I4SDEK6H.js";
177
+ } from "./chunk-4TLU7JJA.js";
178
178
  import {
179
179
  ConsensusVoteInputSchema,
180
180
  DEFAULT_VOTE_TIMEOUT_MS,
@@ -184,25 +184,25 @@ import {
184
184
  executeVoting,
185
185
  mapOutcomeToDecision,
186
186
  registerConsensusVoteTool
187
- } from "./chunk-VCX3QMZE.js";
187
+ } from "./chunk-LB5AD6JX.js";
188
188
  import {
189
189
  loadUsageEvents,
190
190
  rollupByModel
191
- } from "./chunk-TB7GQCIH.js";
191
+ } from "./chunk-WFGGF6RQ.js";
192
192
  import {
193
193
  synthesizeResearch
194
- } from "./chunk-24PRWXLQ.js";
194
+ } from "./chunk-TID366GJ.js";
195
195
  import {
196
196
  classifyTrust,
197
197
  createFullGitHubProvider,
198
198
  evaluatePolicy,
199
199
  parsePRUrl
200
- } from "./chunk-SHKRC6Z7.js";
201
- import "./chunk-VQ3ZVDSQ.js";
200
+ } from "./chunk-3QHURPW4.js";
201
+ import "./chunk-URIRSUQQ.js";
202
202
  import {
203
203
  ReputationCache,
204
204
  sanitizeInput
205
- } from "./chunk-NTVJNSJC.js";
205
+ } from "./chunk-24ALAT2O.js";
206
206
  import {
207
207
  ImprovementReviewInputSchema,
208
208
  calculateFitnessScore,
@@ -216,11 +216,11 @@ import {
216
216
  registerImprovementReviewTool,
217
217
  runImprovementReview,
218
218
  scanForSecrets
219
- } from "./chunk-GY4XQU2V.js";
219
+ } from "./chunk-PXIGNQWU.js";
220
220
  import {
221
221
  createDefaultPolicyFirewall
222
- } from "./chunk-VOTYZUEG.js";
223
- import "./chunk-RZDIYKVH.js";
222
+ } from "./chunk-NSPJHKKJ.js";
223
+ import "./chunk-PRERQSR2.js";
224
224
  import {
225
225
  PaperStatusSchema,
226
226
  createResearchIssue,
@@ -243,32 +243,32 @@ import {
243
243
  loadSourcesRegistry,
244
244
  rankDiscoveredItems,
245
245
  saveSourcesRegistry
246
- } from "./chunk-Y7637JDT.js";
246
+ } from "./chunk-LPFOSO5W.js";
247
247
  import {
248
248
  resolveToken
249
- } from "./chunk-AS6TNXKV.js";
249
+ } from "./chunk-W75MNLLK.js";
250
250
  import {
251
251
  loadPapersRegistry,
252
252
  loadTechniquesRegistry,
253
253
  savePapersRegistry
254
- } from "./chunk-3YGTLWNA.js";
254
+ } from "./chunk-6EUEK2T5.js";
255
255
  import "./chunk-NUBSJGQZ.js";
256
256
  import {
257
257
  MemoryError,
258
258
  shutdownToolMemory
259
- } from "./chunk-TOJFRIVM.js";
259
+ } from "./chunk-JRQSJ2L7.js";
260
260
  import {
261
261
  capitalize,
262
262
  capitalizeKebab,
263
263
  truncateSentence
264
264
  } from "./chunk-6T3EPABN.js";
265
- import "./chunk-P7SRGOLU.js";
265
+ import "./chunk-DDAYKDEB.js";
266
266
  import "./chunk-ZM4O442V.js";
267
267
  import "./chunk-PINS44XA.js";
268
268
  import "./chunk-KSQSWEFH.js";
269
269
  import {
270
270
  createUnifiedRegistry
271
- } from "./chunk-TMBVOQPL.js";
271
+ } from "./chunk-J2SLPVMA.js";
272
272
  import {
273
273
  NEXUS_SUBPROCESS_DEPTH_ENV,
274
274
  createAllAdapters,
@@ -276,14 +276,14 @@ import {
276
276
  isRecord,
277
277
  probeAllClis,
278
278
  readSubprocessDepth
279
- } from "./chunk-XPPDWKZI.js";
280
- import "./chunk-MWTAZEHK.js";
279
+ } from "./chunk-4JKJEEMP.js";
280
+ import "./chunk-4KRO6NTX.js";
281
281
  import {
282
282
  DEFAULTS
283
- } from "./chunk-6IXIKOLR.js";
284
- import "./chunk-JEUWM2VZ.js";
285
- import "./chunk-BK2IRU3L.js";
286
- import "./chunk-VCFKTNCM.js";
283
+ } from "./chunk-6DJ7WISU.js";
284
+ import "./chunk-WZJK5ZK3.js";
285
+ import "./chunk-3XMAIPFB.js";
286
+ import "./chunk-INQLVBAM.js";
287
287
  import {
288
288
  API_TIMEOUTS,
289
289
  AgentCapability,
@@ -357,7 +357,7 @@ import {
357
357
  validateTimeout,
358
358
  writeEmptyLine,
359
359
  writeLine
360
- } from "./chunk-FENIEDNW.js";
360
+ } from "./chunk-7NOWAN4D.js";
361
361
  import "./chunk-NL7SZQPW.js";
362
362
  import {
363
363
  applyPortableMode,
@@ -4035,7 +4035,7 @@ ${file.patch}
4035
4035
  violations: policyResult.violations
4036
4036
  });
4037
4037
  }
4038
- const { formatReviewComment: formatReviewComment2 } = await import("./pr-reviewer-helpers-NEJJKQ7D.js");
4038
+ const { formatReviewComment: formatReviewComment2 } = await import("./pr-reviewer-helpers-UR7WCAGK.js");
4039
4039
  const body = formatReviewComment2(result);
4040
4040
  const postResult = await provider.createReview(pr.prNumber, body, result.decision);
4041
4041
  if (!postResult.ok) {
@@ -17859,7 +17859,7 @@ function startImprovementReviewScheduler(options) {
17859
17859
  let running = false;
17860
17860
  const runOnce = async () => {
17861
17861
  try {
17862
- const { runImprovementReview: runImprovementReview2, ImprovementReviewInputSchema: ImprovementReviewInputSchema2 } = await import("./improvement-review-6LSV4QFA.js");
17862
+ const { runImprovementReview: runImprovementReview2, ImprovementReviewInputSchema: ImprovementReviewInputSchema2 } = await import("./improvement-review-SUVEFV7C.js");
17863
17863
  const input = ImprovementReviewInputSchema2.parse({ fileIssues });
17864
17864
  const result = await runImprovementReview2(input, { logger: logger19 });
17865
17865
  logger19.info("Scheduled improvement_review complete", {
@@ -19898,7 +19898,7 @@ function adaptConfigToLibrary(config) {
19898
19898
  }
19899
19899
  function createBeliefPromoter() {
19900
19900
  return async (event) => {
19901
- const { getToolMemory } = await import("./tool-memory-2DI34M5Z.js");
19901
+ const { getToolMemory } = await import("./tool-memory-JUZW6R3I.js");
19902
19902
  const tm = getToolMemory();
19903
19903
  await tm.recordBelief(
19904
19904
  `skill:${event.name}`,
@@ -21010,7 +21010,7 @@ async function handleResearchCommand(args) {
21010
21010
  }
21011
21011
  }
21012
21012
  async function handleRegistryCommand(args) {
21013
- const { registryCommand, isValidRegistrySubcommand, formatRegistryUsage } = await import("./registry-command-DKNGS752.js");
21013
+ const { registryCommand, isValidRegistrySubcommand, formatRegistryUsage } = await import("./registry-command-IHDL7SMW.js");
21014
21014
  const subcommand = args.subcommand;
21015
21015
  if (!isValidRegistrySubcommand(subcommand)) {
21016
21016
  process.stdout.write(`${formatRegistryUsage()}
@@ -21058,7 +21058,7 @@ async function handleVerifyCommand(args) {
21058
21058
  async function handleDoctorCommand(args) {
21059
21059
  const exitCode = await doctorCommand({ fix: args.options.fix });
21060
21060
  if (args.options.deep) {
21061
- const { runDeepDiagnostics: runDeepDiagnostics2, formatDeepDiagnostics: formatDeepDiagnostics2 } = await import("./doctor-deep-Y2PQCE6G.js");
21061
+ const { runDeepDiagnostics: runDeepDiagnostics2, formatDeepDiagnostics: formatDeepDiagnostics2 } = await import("./doctor-deep-LPZ7X4MY.js");
21062
21062
  const diag = runDeepDiagnostics2();
21063
21063
  process.stdout.write(formatDeepDiagnostics2(diag) + "\n");
21064
21064
  }
@@ -21108,7 +21108,7 @@ async function runInitPortableFlow(args) {
21108
21108
  return cliExit(result.success ? EXIT_CODES.SUCCESS : EXIT_CODES.SERVER_START_FAILED);
21109
21109
  }
21110
21110
  async function runInitOpencodeFlow(args) {
21111
- const { runInitOpencode } = await import("./init-opencode-AO2PEKXB.js");
21111
+ const { runInitOpencode } = await import("./init-opencode-IU3SEIHV.js");
21112
21112
  const opencodePath = args.options.opencode;
21113
21113
  if (opencodePath === void 0 || opencodePath === "") {
21114
21114
  process.stderr.write("Error: --opencode requires a path argument.\n");
@@ -21134,7 +21134,7 @@ async function runInitOpencodeFlow(args) {
21134
21134
  return cliExit(EXIT_CODES.SUCCESS);
21135
21135
  }
21136
21136
  async function renderOpencodeValidate(opencodePath) {
21137
- const { runOpencodeValidate } = await import("./init-opencode-AO2PEKXB.js");
21137
+ const { runOpencodeValidate } = await import("./init-opencode-IU3SEIHV.js");
21138
21138
  const result = await runOpencodeValidate(opencodePath);
21139
21139
  if (!result.ok) {
21140
21140
  process.stderr.write(`init --opencode --validate: ${result.reason ?? "failed"}
@@ -21173,7 +21173,7 @@ async function handleSetupCommandAsync(args) {
21173
21173
  return cliExitFromStatus(exitCode);
21174
21174
  }
21175
21175
  async function runCustomApiSetup(args) {
21176
- const { configureCustomApi } = await import("./setup-custom-api-IJWYWAHX.js");
21176
+ const { configureCustomApi } = await import("./setup-custom-api-NKK2CNLH.js");
21177
21177
  const baseUrl = args.options.customApi;
21178
21178
  if (baseUrl === void 0) return EXIT_CODES.SERVER_START_FAILED;
21179
21179
  const input = {
@@ -4,7 +4,7 @@ import {
4
4
  CompositeRoutingError,
5
5
  DEFAULT_COMPOSITE_CONFIG,
6
6
  createCompositeRouter
7
- } from "./chunk-FENIEDNW.js";
7
+ } from "./chunk-7NOWAN4D.js";
8
8
  import "./chunk-NL7SZQPW.js";
9
9
  import "./chunk-DHVMSIT5.js";
10
10
  import "./chunk-ZPWHCABL.js";
@@ -15,4 +15,4 @@ export {
15
15
  DEFAULT_COMPOSITE_CONFIG,
16
16
  createCompositeRouter
17
17
  };
18
- //# sourceMappingURL=composite-router-NPSNBLX7.js.map
18
+ //# sourceMappingURL=composite-router-XNE5Q3YF.js.map
@@ -8,23 +8,23 @@ import {
8
8
  registerConsensusVoteTool,
9
9
  resetCorrelationTracker,
10
10
  runConsensusForGoal
11
- } from "./chunk-VCX3QMZE.js";
12
- import "./chunk-TB7GQCIH.js";
13
- import "./chunk-VOTYZUEG.js";
14
- import "./chunk-RZDIYKVH.js";
15
- import "./chunk-TOJFRIVM.js";
11
+ } from "./chunk-LB5AD6JX.js";
12
+ import "./chunk-WFGGF6RQ.js";
13
+ import "./chunk-NSPJHKKJ.js";
14
+ import "./chunk-PRERQSR2.js";
15
+ import "./chunk-JRQSJ2L7.js";
16
16
  import "./chunk-6T3EPABN.js";
17
- import "./chunk-P7SRGOLU.js";
17
+ import "./chunk-DDAYKDEB.js";
18
18
  import "./chunk-PINS44XA.js";
19
19
  import "./chunk-KSQSWEFH.js";
20
- import "./chunk-TMBVOQPL.js";
21
- import "./chunk-XPPDWKZI.js";
22
- import "./chunk-MWTAZEHK.js";
23
- import "./chunk-6IXIKOLR.js";
24
- import "./chunk-JEUWM2VZ.js";
25
- import "./chunk-BK2IRU3L.js";
26
- import "./chunk-VCFKTNCM.js";
27
- import "./chunk-FENIEDNW.js";
20
+ import "./chunk-J2SLPVMA.js";
21
+ import "./chunk-4JKJEEMP.js";
22
+ import "./chunk-4KRO6NTX.js";
23
+ import "./chunk-6DJ7WISU.js";
24
+ import "./chunk-WZJK5ZK3.js";
25
+ import "./chunk-3XMAIPFB.js";
26
+ import "./chunk-INQLVBAM.js";
27
+ import "./chunk-7NOWAN4D.js";
28
28
  import "./chunk-NL7SZQPW.js";
29
29
  import "./chunk-DHVMSIT5.js";
30
30
  import "./chunk-ZPWHCABL.js";
@@ -39,4 +39,4 @@ export {
39
39
  resetCorrelationTracker,
40
40
  runConsensusForGoal
41
41
  };
42
- //# sourceMappingURL=consensus-vote-ZX6NLTI4.js.map
42
+ //# sourceMappingURL=consensus-vote-4CU3EY7H.js.map
@@ -5,17 +5,17 @@ import {
5
5
  inferTaskCategory,
6
6
  selectRelevantResearch,
7
7
  summarizeContextForPrompt
8
- } from "./chunk-Y7637JDT.js";
9
- import "./chunk-AS6TNXKV.js";
10
- import "./chunk-3YGTLWNA.js";
8
+ } from "./chunk-LPFOSO5W.js";
9
+ import "./chunk-W75MNLLK.js";
10
+ import "./chunk-6EUEK2T5.js";
11
11
  import "./chunk-NUBSJGQZ.js";
12
- import "./chunk-TOJFRIVM.js";
12
+ import "./chunk-JRQSJ2L7.js";
13
13
  import "./chunk-6T3EPABN.js";
14
- import "./chunk-P7SRGOLU.js";
14
+ import "./chunk-DDAYKDEB.js";
15
15
  import "./chunk-PINS44XA.js";
16
16
  import "./chunk-KSQSWEFH.js";
17
- import "./chunk-VCFKTNCM.js";
18
- import "./chunk-FENIEDNW.js";
17
+ import "./chunk-INQLVBAM.js";
18
+ import "./chunk-7NOWAN4D.js";
19
19
  import "./chunk-NL7SZQPW.js";
20
20
  import "./chunk-DHVMSIT5.js";
21
21
  import "./chunk-ZPWHCABL.js";
@@ -27,4 +27,4 @@ export {
27
27
  selectRelevantResearch,
28
28
  summarizeContextForPrompt
29
29
  };
30
- //# sourceMappingURL=context-retriever-3QKHEA5U.js.map
30
+ //# sourceMappingURL=context-retriever-VOPNSCRI.js.map
@@ -1,8 +1,8 @@
1
1
  import {
2
2
  formatDeepDiagnostics,
3
3
  runDeepDiagnostics
4
- } from "./chunk-SLQJ746K.js";
5
- import "./chunk-FENIEDNW.js";
4
+ } from "./chunk-2QDZ2L2C.js";
5
+ import "./chunk-7NOWAN4D.js";
6
6
  import "./chunk-NL7SZQPW.js";
7
7
  import "./chunk-DHVMSIT5.js";
8
8
  import "./chunk-ZPWHCABL.js";
@@ -10,4 +10,4 @@ export {
10
10
  formatDeepDiagnostics,
11
11
  runDeepDiagnostics
12
12
  };
13
- //# sourceMappingURL=doctor-deep-Y2PQCE6G.js.map
13
+ //# sourceMappingURL=doctor-deep-LPZ7X4MY.js.map
@@ -3,9 +3,9 @@ import {
3
3
  shutdownExpertBridge,
4
4
  tokenSplitFromUsage,
5
5
  totalTokensFromUsage
6
- } from "./chunk-I4SDEK6H.js";
7
- import "./chunk-BK2IRU3L.js";
8
- import "./chunk-FENIEDNW.js";
6
+ } from "./chunk-4TLU7JJA.js";
7
+ import "./chunk-3XMAIPFB.js";
8
+ import "./chunk-7NOWAN4D.js";
9
9
  import "./chunk-NL7SZQPW.js";
10
10
  import "./chunk-DHVMSIT5.js";
11
11
  import "./chunk-ZPWHCABL.js";
@@ -15,4 +15,4 @@ export {
15
15
  tokenSplitFromUsage,
16
16
  totalTokensFromUsage
17
17
  };
18
- //# sourceMappingURL=expert-bridge-NXG4Z7U7.js.map
18
+ //# sourceMappingURL=expert-bridge-WDVNKIO3.js.map
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  createGitHubProvider,
3
3
  createScmProvider
4
- } from "./chunk-I3ROKMFF.js";
5
- import "./chunk-VQ3ZVDSQ.js";
6
- import "./chunk-AS6TNXKV.js";
7
- import "./chunk-FENIEDNW.js";
4
+ } from "./chunk-3Y44T42S.js";
5
+ import "./chunk-URIRSUQQ.js";
6
+ import "./chunk-W75MNLLK.js";
7
+ import "./chunk-7NOWAN4D.js";
8
8
  import "./chunk-NL7SZQPW.js";
9
9
  import "./chunk-DHVMSIT5.js";
10
10
  import "./chunk-ZPWHCABL.js";
@@ -12,4 +12,4 @@ export {
12
12
  createGitHubProvider,
13
13
  createScmProvider
14
14
  };
15
- //# sourceMappingURL=factory-YK2QA3TU.js.map
15
+ //# sourceMappingURL=factory-3KFIWW2N.js.map
@@ -3,13 +3,13 @@ import {
3
3
  createCliAdapter,
4
4
  getAvailableClis,
5
5
  isCliAvailable
6
- } from "./chunk-XPPDWKZI.js";
7
- import "./chunk-MWTAZEHK.js";
8
- import "./chunk-6IXIKOLR.js";
9
- import "./chunk-JEUWM2VZ.js";
10
- import "./chunk-BK2IRU3L.js";
11
- import "./chunk-VCFKTNCM.js";
12
- import "./chunk-FENIEDNW.js";
6
+ } from "./chunk-4JKJEEMP.js";
7
+ import "./chunk-4KRO6NTX.js";
8
+ import "./chunk-6DJ7WISU.js";
9
+ import "./chunk-WZJK5ZK3.js";
10
+ import "./chunk-3XMAIPFB.js";
11
+ import "./chunk-INQLVBAM.js";
12
+ import "./chunk-7NOWAN4D.js";
13
13
  import "./chunk-NL7SZQPW.js";
14
14
  import "./chunk-DHVMSIT5.js";
15
15
  import "./chunk-ZPWHCABL.js";
@@ -19,4 +19,4 @@ export {
19
19
  getAvailableClis,
20
20
  isCliAvailable
21
21
  };
22
- //# sourceMappingURL=factory-JJ4N6YPR.js.map
22
+ //# sourceMappingURL=factory-Q4FUNYFK.js.map
@@ -11,10 +11,10 @@ import {
11
11
  loadSelfEvalSignals,
12
12
  registerImprovementReviewTool,
13
13
  runImprovementReview
14
- } from "./chunk-GY4XQU2V.js";
15
- import "./chunk-VOTYZUEG.js";
16
- import "./chunk-RZDIYKVH.js";
17
- import "./chunk-FENIEDNW.js";
14
+ } from "./chunk-PXIGNQWU.js";
15
+ import "./chunk-NSPJHKKJ.js";
16
+ import "./chunk-PRERQSR2.js";
17
+ import "./chunk-7NOWAN4D.js";
18
18
  import "./chunk-NL7SZQPW.js";
19
19
  import "./chunk-DHVMSIT5.js";
20
20
  import "./chunk-ZPWHCABL.js";
@@ -32,4 +32,4 @@ export {
32
32
  registerImprovementReviewTool,
33
33
  runImprovementReview
34
34
  };
35
- //# sourceMappingURL=improvement-review-6LSV4QFA.js.map
35
+ //# sourceMappingURL=improvement-review-SUVEFV7C.js.map
package/dist/index.d.ts CHANGED
@@ -19486,6 +19486,14 @@ interface StageFailedEvent extends BaseEvent {
19486
19486
  readonly error: string;
19487
19487
  /** Error classification: retriable (transient) or fatal (permanent) (Epic #952). */
19488
19488
  readonly errorTaxonomy?: 'retriable' | 'fatal';
19489
+ /**
19490
+ * Concrete model id the failing stage's executor reported, when known
19491
+ * (#4194). Additive and optional: emitters whose stages genuinely have no
19492
+ * single model (local gates, consensus votes, graph nodes) omit it, and
19493
+ * consumers must tolerate its absence. Lets the feedback-subscriber record
19494
+ * real per-model outcome attribution instead of a placeholder.
19495
+ */
19496
+ readonly model?: string;
19489
19497
  }
19490
19498
  interface StageRetryingEvent extends BaseEvent {
19491
19499
  readonly type: 'stage.retrying';
@@ -21377,6 +21385,24 @@ type OutcomeProcessedCallback = (decision: RoutingDecision, outcome: TaskOutcome
21377
21385
  * (Source: Issue #102, arXiv:2401.02987)
21378
21386
  */
21379
21387
 
21388
+ /**
21389
+ * Per-arm × per-model warm-start replay statistic (#4194).
21390
+ *
21391
+ * The bandit's arms stay keyed by CLI slot / routing arm id — this is a
21392
+ * telemetry surface exposing which concrete models the replayed outcomes
21393
+ * came from, so per-model shadow evaluation can read the grouping without
21394
+ * changing arm structure or selection behavior.
21395
+ */
21396
+ interface WarmStartModelStat {
21397
+ /** Arm the outcome was replayed into (outcome.cli). */
21398
+ readonly arm: string;
21399
+ /** Concrete model id the outcome carried (outcome.model). */
21400
+ readonly model: string;
21401
+ /** Number of outcomes replayed for this arm × model. */
21402
+ readonly replayedCount: number;
21403
+ /** Number of those outcomes that were successes. */
21404
+ readonly successCount: number;
21405
+ }
21380
21406
  /**
21381
21407
  * LinUCB bandit for contextual multi-armed bandit problem.
21382
21408
  */
@@ -21384,6 +21410,8 @@ declare class LinUCBBandit {
21384
21410
  private readonly config;
21385
21411
  private readonly arms;
21386
21412
  private readonly armNames;
21413
+ /** Warm-start replay ledger keyed `arm model` (#4194). Telemetry only. */
21414
+ private readonly warmStartModelLedger;
21387
21415
  constructor(armNames: readonly string[], config?: Partial<LinUCBConfig>);
21388
21416
  /**
21389
21417
  * Select an arm given the context.
@@ -21466,6 +21494,15 @@ declare class LinUCBBandit {
21466
21494
  * @returns Number of outcomes successfully replayed
21467
21495
  */
21468
21496
  warmStart(outcomes: readonly TaskOutcome$1[]): number;
21497
+ /** Accumulate the per-arm × per-model warm-start ledger (#4194). */
21498
+ private recordWarmStartModelStat;
21499
+ /**
21500
+ * Per-arm × per-model grouping of the outcomes replayed through
21501
+ * {@link warmStart} (#4194). A telemetry surface for per-model outcome
21502
+ * evaluation — arm structure and selection behavior are unchanged.
21503
+ * Sorted by arm, then model, for stable output.
21504
+ */
21505
+ getWarmStartModelStats(): readonly WarmStartModelStat[];
21469
21506
  /**
21470
21507
  * Reset all arm statistics.
21471
21508
  */
@@ -25295,6 +25332,13 @@ interface WeatherReportOptions {
25295
25332
  readonly cli?: CliNameLiteral;
25296
25333
  readonly category?: string;
25297
25334
  readonly includeAdaptive?: boolean;
25335
+ /**
25336
+ * Opt-in for the per-model telemetry lens (#4194). Default off (#4202):
25337
+ * the lens scans the full store per distinct model, so the hot
25338
+ * routing-bonus path (weather-bonus-stage) must not pay for it; the
25339
+ * weather_report MCP tool always opts in.
25340
+ */
25341
+ readonly includeModelWeather?: boolean;
25298
25342
  }
25299
25343
  /** Adapter attempt stats separating infra failures from model-quality failures (#1982). */
25300
25344
  interface AdapterAttemptStats {
@@ -25328,6 +25372,30 @@ interface AdaptiveBonus {
25328
25372
  readonly sampleCount: number;
25329
25373
  readonly sufficient: boolean;
25330
25374
  }
25375
+ /**
25376
+ * Per-model performance lens entry (#4194). A telemetry surface computed from
25377
+ * the same OutcomeStore records as the CLI×category bonuses, keyed by concrete
25378
+ * model id via the #2548 family-fallback query path. NOT a routing input —
25379
+ * adaptive bonuses stay CLI×category; per-model bonus consumption is
25380
+ * #4196/#4197 scope.
25381
+ */
25382
+ interface ModelWeatherEntry {
25383
+ /** Concrete model id observed in outcome records. */
25384
+ readonly model: string;
25385
+ /** Vendor resolved via the ModelRegistry (#2548). */
25386
+ readonly vendor: string;
25387
+ /** Family resolved via the ModelRegistry (#2548). */
25388
+ readonly family: string;
25389
+ /**
25390
+ * Whether the stats come from literal-id samples or the family-broadened
25391
+ * cold-start fallback (#2548). Family scope means sibling-model outcomes
25392
+ * are included as priors.
25393
+ */
25394
+ readonly scope: 'literal' | 'family';
25395
+ readonly sampleCount: number;
25396
+ readonly successRate: number;
25397
+ readonly avgDurationMs: number;
25398
+ }
25331
25399
  /** Tier recommendation surfaced in the weather report (#895). */
25332
25400
  interface TierRecommendationEntry {
25333
25401
  readonly category: string;
@@ -25478,6 +25546,12 @@ interface WeatherReportResponse {
25478
25546
  readonly triageStats?: TriageStats;
25479
25547
  /** Cost section: per-gate decision-cost aggregates + strategy cost profiles (Epic G, #3856). */
25480
25548
  readonly costSection?: CostSection;
25549
+ /**
25550
+ * Per-model performance lens (#4194) — telemetry only; routing bonuses stay
25551
+ * CLI×category. Present only when at least one model clears the min-sample
25552
+ * threshold.
25553
+ */
25554
+ readonly modelWeather?: readonly ModelWeatherEntry[];
25481
25555
  /** Recent performance within the lookback window (#1401). */
25482
25556
  readonly recentWindow?: {
25483
25557
  readonly windowMs: number;
@@ -33565,6 +33639,11 @@ interface StageFailedOptions {
33565
33639
  readonly executionId: string;
33566
33640
  readonly stageId: string;
33567
33641
  readonly error: string;
33642
+ /**
33643
+ * Concrete model id the failing stage's executor reported, when known
33644
+ * (#4194). Omit for stages with no single model — never guess.
33645
+ */
33646
+ readonly model?: string | undefined;
33568
33647
  }
33569
33648
  /** Emit a stage.started event. */
33570
33649
  declare function emitStageStarted(options: StageStartedOptions): void;