nexus-agents 4.12.1 → 4.12.3

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 (121) hide show
  1. package/dist/{child-mcp-config-KNFWHR5B.js → child-mcp-config-KCISGMLP.js} +2 -2
  2. package/dist/{chunk-YBR5G3FR.js → chunk-2B2D54DT.js} +2 -2
  3. package/dist/{chunk-MWJLA3SK.js → chunk-3ESVUE6D.js} +3 -3
  4. package/dist/{chunk-XUHVOLBI.js → chunk-3FPT5PZG.js} +3 -3
  5. package/dist/{chunk-VAKHNSKR.js → chunk-3RUGMY4C.js} +3 -3
  6. package/dist/{chunk-Z3XRX5G6.js → chunk-4YPTSBFR.js} +8 -8
  7. package/dist/{chunk-OS6V6AUS.js → chunk-7HIXCOF3.js} +2 -2
  8. package/dist/{chunk-VXSEXHLF.js → chunk-D6D4YNBK.js} +2 -2
  9. package/dist/{chunk-Q6TVHHJS.js → chunk-DHBABM7H.js} +4 -4
  10. package/dist/{chunk-UGXR3FGB.js → chunk-FAOEP2JU.js} +2 -2
  11. package/dist/{chunk-U3ULCRR5.js → chunk-FLJC3H6L.js} +2 -2
  12. package/dist/{chunk-Z46NIT6Y.js → chunk-FWB5HN67.js} +2 -2
  13. package/dist/{chunk-3F7XUEXM.js → chunk-GFZB7SXK.js} +2 -2
  14. package/dist/{chunk-K6DDDK5U.js → chunk-GQGW22FJ.js} +7 -7
  15. package/dist/{chunk-BDJ5H6BY.js → chunk-HL2RMRWZ.js} +2 -2
  16. package/dist/{chunk-D7NQCYON.js → chunk-ITKW25UM.js} +2 -2
  17. package/dist/{chunk-ADKJSLYH.js → chunk-LO6AVP74.js} +2 -2
  18. package/dist/{chunk-RTLSASIG.js → chunk-PFZXV4BF.js} +5 -5
  19. package/dist/{chunk-3JJ3QSJ6.js → chunk-PHEB5LZ4.js} +2 -2
  20. package/dist/{chunk-QWKXEUR3.js → chunk-PJOXJZ7A.js} +2 -2
  21. package/dist/{chunk-AVKA47WQ.js → chunk-QOM2AAOC.js} +35 -35
  22. package/dist/{chunk-JEOQU5YQ.js → chunk-TAHEGPTP.js} +2 -2
  23. package/dist/{chunk-UUHVA3EP.js → chunk-TSV3PKVG.js} +3 -3
  24. package/dist/{chunk-WFZGUWWQ.js → chunk-UJTDBI5A.js} +8 -8
  25. package/dist/{chunk-JYXU7XFQ.js → chunk-ULYAKSKE.js} +5 -5
  26. package/dist/{chunk-AUFZGVPH.js → chunk-UMVUMIYL.js} +2 -2
  27. package/dist/{chunk-WDICVPNC.js → chunk-UOKQ7X43.js} +2 -2
  28. package/dist/{chunk-SIDH6NYX.js → chunk-V2UK3JLW.js} +4 -4
  29. package/dist/{chunk-R5HKFDMX.js → chunk-VZG2R6YA.js} +4 -4
  30. package/dist/{chunk-JDX7FSEE.js → chunk-WF3JUKXF.js} +4 -3
  31. package/dist/{chunk-AZ4C5Z32.js → chunk-WNIPOPQG.js} +8 -8
  32. package/dist/{chunk-7H6AIQFC.js → chunk-XEHAUJ2U.js} +2 -2
  33. package/dist/{chunk-PIOQ22BI.js → chunk-XQQFK6W6.js} +6 -6
  34. package/dist/{chunk-GK4WP7OU.js → chunk-Y4HESICE.js} +5 -5
  35. package/dist/{cli-circuit-breaker-O3SRTC2D.js → cli-circuit-breaker-F3Y7IJ2C.js} +3 -3
  36. package/dist/cli.js +52 -53
  37. package/dist/cli.js.map +1 -1
  38. package/dist/{composite-router-FGCCXTW7.js → composite-router-QZ54YC52.js} +2 -2
  39. package/dist/{consensus-vote-6XPXNECR.js → consensus-vote-N6W43BWV.js} +16 -16
  40. package/dist/{context-retriever-5ZTWDBOB.js → context-retriever-YIJXDVXK.js} +8 -8
  41. package/dist/{doctor-deep-LMVPV2XK.js → doctor-deep-EWG7CL3Z.js} +3 -3
  42. package/dist/{doctor-live-I5EMLG2W.js → doctor-live-UEIWZDS7.js} +9 -9
  43. package/dist/{expert-bridge-XCOFEAAH.js → expert-bridge-D7EGIAZ6.js} +4 -4
  44. package/dist/{factory-RO6WFMAM.js → factory-HZNKXWVD.js} +9 -9
  45. package/dist/{factory-UWBH5S4U.js → factory-U5SRKSIG.js} +5 -5
  46. package/dist/{improvement-review-4WOLRVMB.js → improvement-review-Q5IUKD4L.js} +5 -5
  47. package/dist/index.js +30 -30
  48. package/dist/{init-opencode-HDVB7A2E.js → init-opencode-6TBM2B2N.js} +6 -6
  49. package/dist/issue-triage-AS5XMR5T.js +17 -0
  50. package/dist/{pr-reviewer-helpers-7ER77ZQO.js → pr-reviewer-helpers-LC266S6C.js} +4 -4
  51. package/dist/{registry-command-DKJVYKGI.js → registry-command-NEM25F6F.js} +2 -2
  52. package/dist/{repo-security-plan-KTLCJNJ4.js → repo-security-plan-AL6NHO3L.js} +3 -3
  53. package/dist/{research-helpers-synthesize-D4W5C27B.js → research-helpers-synthesize-UIFSH6FS.js} +4 -4
  54. package/dist/{routing-memory-ZV5EBOKF.js → routing-memory-AE43UXHE.js} +2 -2
  55. package/dist/{session-memory-VOPXMUVU.js → session-memory-QBOHCSHP.js} +3 -3
  56. package/dist/{setup-command-FO5E3RTT.js → setup-command-323RK7XH.js} +14 -14
  57. package/dist/{setup-config-JUJWPZW3.js → setup-config-7QZAT3PM.js} +3 -3
  58. package/dist/{setup-custom-api-WCVFLOCN.js → setup-custom-api-NNXJ3GQZ.js} +4 -4
  59. package/dist/{tool-memory-FSBMC4MW.js → tool-memory-H6ZXL3MH.js} +5 -5
  60. package/dist/{unified-registry-QV2LXC45.js → unified-registry-TEVQXOSC.js} +10 -10
  61. package/dist/{weather-report-J6LIGRJ7.js → weather-report-FKXNWHLU.js} +2 -2
  62. package/package.json +1 -1
  63. package/dist/issue-triage-HJQK7C6D.js +0 -17
  64. /package/dist/{child-mcp-config-KNFWHR5B.js.map → child-mcp-config-KCISGMLP.js.map} +0 -0
  65. /package/dist/{chunk-YBR5G3FR.js.map → chunk-2B2D54DT.js.map} +0 -0
  66. /package/dist/{chunk-MWJLA3SK.js.map → chunk-3ESVUE6D.js.map} +0 -0
  67. /package/dist/{chunk-XUHVOLBI.js.map → chunk-3FPT5PZG.js.map} +0 -0
  68. /package/dist/{chunk-VAKHNSKR.js.map → chunk-3RUGMY4C.js.map} +0 -0
  69. /package/dist/{chunk-Z3XRX5G6.js.map → chunk-4YPTSBFR.js.map} +0 -0
  70. /package/dist/{chunk-OS6V6AUS.js.map → chunk-7HIXCOF3.js.map} +0 -0
  71. /package/dist/{chunk-VXSEXHLF.js.map → chunk-D6D4YNBK.js.map} +0 -0
  72. /package/dist/{chunk-Q6TVHHJS.js.map → chunk-DHBABM7H.js.map} +0 -0
  73. /package/dist/{chunk-UGXR3FGB.js.map → chunk-FAOEP2JU.js.map} +0 -0
  74. /package/dist/{chunk-U3ULCRR5.js.map → chunk-FLJC3H6L.js.map} +0 -0
  75. /package/dist/{chunk-Z46NIT6Y.js.map → chunk-FWB5HN67.js.map} +0 -0
  76. /package/dist/{chunk-3F7XUEXM.js.map → chunk-GFZB7SXK.js.map} +0 -0
  77. /package/dist/{chunk-K6DDDK5U.js.map → chunk-GQGW22FJ.js.map} +0 -0
  78. /package/dist/{chunk-BDJ5H6BY.js.map → chunk-HL2RMRWZ.js.map} +0 -0
  79. /package/dist/{chunk-D7NQCYON.js.map → chunk-ITKW25UM.js.map} +0 -0
  80. /package/dist/{chunk-ADKJSLYH.js.map → chunk-LO6AVP74.js.map} +0 -0
  81. /package/dist/{chunk-RTLSASIG.js.map → chunk-PFZXV4BF.js.map} +0 -0
  82. /package/dist/{chunk-3JJ3QSJ6.js.map → chunk-PHEB5LZ4.js.map} +0 -0
  83. /package/dist/{chunk-QWKXEUR3.js.map → chunk-PJOXJZ7A.js.map} +0 -0
  84. /package/dist/{chunk-AVKA47WQ.js.map → chunk-QOM2AAOC.js.map} +0 -0
  85. /package/dist/{chunk-JEOQU5YQ.js.map → chunk-TAHEGPTP.js.map} +0 -0
  86. /package/dist/{chunk-UUHVA3EP.js.map → chunk-TSV3PKVG.js.map} +0 -0
  87. /package/dist/{chunk-WFZGUWWQ.js.map → chunk-UJTDBI5A.js.map} +0 -0
  88. /package/dist/{chunk-JYXU7XFQ.js.map → chunk-ULYAKSKE.js.map} +0 -0
  89. /package/dist/{chunk-AUFZGVPH.js.map → chunk-UMVUMIYL.js.map} +0 -0
  90. /package/dist/{chunk-WDICVPNC.js.map → chunk-UOKQ7X43.js.map} +0 -0
  91. /package/dist/{chunk-SIDH6NYX.js.map → chunk-V2UK3JLW.js.map} +0 -0
  92. /package/dist/{chunk-R5HKFDMX.js.map → chunk-VZG2R6YA.js.map} +0 -0
  93. /package/dist/{chunk-JDX7FSEE.js.map → chunk-WF3JUKXF.js.map} +0 -0
  94. /package/dist/{chunk-AZ4C5Z32.js.map → chunk-WNIPOPQG.js.map} +0 -0
  95. /package/dist/{chunk-7H6AIQFC.js.map → chunk-XEHAUJ2U.js.map} +0 -0
  96. /package/dist/{chunk-PIOQ22BI.js.map → chunk-XQQFK6W6.js.map} +0 -0
  97. /package/dist/{chunk-GK4WP7OU.js.map → chunk-Y4HESICE.js.map} +0 -0
  98. /package/dist/{cli-circuit-breaker-O3SRTC2D.js.map → cli-circuit-breaker-F3Y7IJ2C.js.map} +0 -0
  99. /package/dist/{composite-router-FGCCXTW7.js.map → composite-router-QZ54YC52.js.map} +0 -0
  100. /package/dist/{consensus-vote-6XPXNECR.js.map → consensus-vote-N6W43BWV.js.map} +0 -0
  101. /package/dist/{context-retriever-5ZTWDBOB.js.map → context-retriever-YIJXDVXK.js.map} +0 -0
  102. /package/dist/{doctor-deep-LMVPV2XK.js.map → doctor-deep-EWG7CL3Z.js.map} +0 -0
  103. /package/dist/{doctor-live-I5EMLG2W.js.map → doctor-live-UEIWZDS7.js.map} +0 -0
  104. /package/dist/{expert-bridge-XCOFEAAH.js.map → expert-bridge-D7EGIAZ6.js.map} +0 -0
  105. /package/dist/{factory-RO6WFMAM.js.map → factory-HZNKXWVD.js.map} +0 -0
  106. /package/dist/{factory-UWBH5S4U.js.map → factory-U5SRKSIG.js.map} +0 -0
  107. /package/dist/{improvement-review-4WOLRVMB.js.map → improvement-review-Q5IUKD4L.js.map} +0 -0
  108. /package/dist/{init-opencode-HDVB7A2E.js.map → init-opencode-6TBM2B2N.js.map} +0 -0
  109. /package/dist/{issue-triage-HJQK7C6D.js.map → issue-triage-AS5XMR5T.js.map} +0 -0
  110. /package/dist/{pr-reviewer-helpers-7ER77ZQO.js.map → pr-reviewer-helpers-LC266S6C.js.map} +0 -0
  111. /package/dist/{registry-command-DKJVYKGI.js.map → registry-command-NEM25F6F.js.map} +0 -0
  112. /package/dist/{repo-security-plan-KTLCJNJ4.js.map → repo-security-plan-AL6NHO3L.js.map} +0 -0
  113. /package/dist/{research-helpers-synthesize-D4W5C27B.js.map → research-helpers-synthesize-UIFSH6FS.js.map} +0 -0
  114. /package/dist/{routing-memory-ZV5EBOKF.js.map → routing-memory-AE43UXHE.js.map} +0 -0
  115. /package/dist/{session-memory-VOPXMUVU.js.map → session-memory-QBOHCSHP.js.map} +0 -0
  116. /package/dist/{setup-command-FO5E3RTT.js.map → setup-command-323RK7XH.js.map} +0 -0
  117. /package/dist/{setup-config-JUJWPZW3.js.map → setup-config-7QZAT3PM.js.map} +0 -0
  118. /package/dist/{setup-custom-api-WCVFLOCN.js.map → setup-custom-api-NNXJ3GQZ.js.map} +0 -0
  119. /package/dist/{tool-memory-FSBMC4MW.js.map → tool-memory-H6ZXL3MH.js.map} +0 -0
  120. /package/dist/{unified-registry-QV2LXC45.js.map → unified-registry-TEVQXOSC.js.map} +0 -0
  121. /package/dist/{weather-report-J6LIGRJ7.js.map → weather-report-FKXNWHLU.js.map} +0 -0
package/dist/cli.js CHANGED
@@ -13,14 +13,14 @@ import {
13
13
  generateSummary,
14
14
  parseFindings,
15
15
  sumFindings
16
- } from "./chunk-VAKHNSKR.js";
17
- import "./chunk-VXSEXHLF.js";
16
+ } from "./chunk-3RUGMY4C.js";
17
+ import "./chunk-D6D4YNBK.js";
18
18
  import {
19
19
  setupCommandAsync,
20
20
  verifyCommand
21
- } from "./chunk-GK4WP7OU.js";
21
+ } from "./chunk-Y4HESICE.js";
22
22
  import "./chunk-WPLXWTUK.js";
23
- import "./chunk-OS6V6AUS.js";
23
+ import "./chunk-7HIXCOF3.js";
24
24
  import {
25
25
  AuthHandler,
26
26
  DEFAULT_EXPERTS,
@@ -140,8 +140,8 @@ import {
140
140
  validateCommand,
141
141
  validateWorkflow,
142
142
  wrapInMarkdownFence
143
- } from "./chunk-AVKA47WQ.js";
144
- import "./chunk-Z46NIT6Y.js";
143
+ } from "./chunk-QOM2AAOC.js";
144
+ import "./chunk-FWB5HN67.js";
145
145
  import "./chunk-HFOQKCD2.js";
146
146
  import "./chunk-RSMG2DPB.js";
147
147
  import {
@@ -167,14 +167,14 @@ import {
167
167
  loadConfig,
168
168
  runDoctor,
169
169
  validateNexusEnv
170
- } from "./chunk-AZ4C5Z32.js";
170
+ } from "./chunk-WNIPOPQG.js";
171
171
  import {
172
172
  buildOpenAICompatAdapters,
173
173
  readOpenAICompatEnv
174
- } from "./chunk-JYXU7XFQ.js";
174
+ } from "./chunk-ULYAKSKE.js";
175
175
  import {
176
176
  shutdownExpertBridge
177
- } from "./chunk-K6DDDK5U.js";
177
+ } from "./chunk-GQGW22FJ.js";
178
178
  import {
179
179
  ConsensusVoteInputSchema,
180
180
  DEFAULT_VOTE_TIMEOUT_MS,
@@ -184,29 +184,29 @@ import {
184
184
  executeVoting,
185
185
  mapOutcomeToDecision,
186
186
  registerConsensusVoteTool
187
- } from "./chunk-Z3XRX5G6.js";
187
+ } from "./chunk-4YPTSBFR.js";
188
188
  import {
189
189
  loadUsageEvents,
190
190
  rollupByModel
191
- } from "./chunk-D7NQCYON.js";
191
+ } from "./chunk-ITKW25UM.js";
192
192
  import {
193
193
  allOf,
194
194
  anyOf
195
195
  } from "./chunk-OQB3XC5O.js";
196
196
  import {
197
197
  synthesizeResearch
198
- } from "./chunk-UUHVA3EP.js";
198
+ } from "./chunk-TSV3PKVG.js";
199
199
  import {
200
200
  classifyTrust,
201
201
  createFullGitHubProvider,
202
202
  evaluatePolicy,
203
203
  parsePRUrl
204
- } from "./chunk-PIOQ22BI.js";
205
- import "./chunk-U3ULCRR5.js";
204
+ } from "./chunk-XQQFK6W6.js";
205
+ import "./chunk-FLJC3H6L.js";
206
206
  import {
207
207
  ReputationCache,
208
208
  sanitizeInput
209
- } from "./chunk-3JJ3QSJ6.js";
209
+ } from "./chunk-PHEB5LZ4.js";
210
210
  import {
211
211
  ImprovementReviewInputSchema,
212
212
  calculateFitnessScore,
@@ -220,15 +220,15 @@ import {
220
220
  registerImprovementReviewTool,
221
221
  runImprovementReview,
222
222
  scanForSecrets
223
- } from "./chunk-XUHVOLBI.js";
223
+ } from "./chunk-3FPT5PZG.js";
224
224
  import {
225
225
  createDefaultPolicyFirewall
226
- } from "./chunk-MWJLA3SK.js";
227
- import "./chunk-7H6AIQFC.js";
226
+ } from "./chunk-3ESVUE6D.js";
227
+ import "./chunk-XEHAUJ2U.js";
228
228
  import {
229
229
  createUnifiedRegistry,
230
230
  getGlobalRegistry
231
- } from "./chunk-SIDH6NYX.js";
231
+ } from "./chunk-V2UK3JLW.js";
232
232
  import {
233
233
  CodebaseIndexSchema,
234
234
  PaperStatusSchema,
@@ -254,25 +254,25 @@ import {
254
254
  loadSourcesRegistry,
255
255
  rankDiscoveredItems,
256
256
  saveSourcesRegistry
257
- } from "./chunk-RTLSASIG.js";
257
+ } from "./chunk-PFZXV4BF.js";
258
258
  import {
259
259
  loadPapersRegistry,
260
260
  loadTechniquesRegistry,
261
261
  savePapersRegistry
262
- } from "./chunk-QWKXEUR3.js";
262
+ } from "./chunk-PJOXJZ7A.js";
263
263
  import "./chunk-NUBSJGQZ.js";
264
264
  import {
265
265
  resolveToken
266
- } from "./chunk-3F7XUEXM.js";
266
+ } from "./chunk-GFZB7SXK.js";
267
267
  import {
268
268
  MemoryError,
269
269
  shutdownToolMemory
270
- } from "./chunk-Q6TVHHJS.js";
270
+ } from "./chunk-DHBABM7H.js";
271
271
  import {
272
272
  capitalize,
273
273
  capitalizeKebab
274
274
  } from "./chunk-6T3EPABN.js";
275
- import "./chunk-WDICVPNC.js";
275
+ import "./chunk-UOKQ7X43.js";
276
276
  import "./chunk-YPNQPT2F.js";
277
277
  import "./chunk-XIIUIBSX.js";
278
278
  import "./chunk-KSQSWEFH.js";
@@ -283,19 +283,19 @@ import {
283
283
  isRecord,
284
284
  probeAllClis,
285
285
  readSubprocessDepth
286
- } from "./chunk-WFZGUWWQ.js";
287
- import "./chunk-AUFZGVPH.js";
286
+ } from "./chunk-UJTDBI5A.js";
287
+ import "./chunk-UMVUMIYL.js";
288
288
  import {
289
289
  DEFAULTS
290
- } from "./chunk-JEOQU5YQ.js";
291
- import "./chunk-YBR5G3FR.js";
290
+ } from "./chunk-TAHEGPTP.js";
291
+ import "./chunk-2B2D54DT.js";
292
292
  import {
293
293
  nexusMkdtempSync
294
294
  } from "./chunk-SNJNRDKZ.js";
295
- import "./chunk-BDJ5H6BY.js";
295
+ import "./chunk-HL2RMRWZ.js";
296
296
  import "./chunk-QZUG667L.js";
297
- import "./chunk-ADKJSLYH.js";
298
- import "./chunk-UGXR3FGB.js";
297
+ import "./chunk-LO6AVP74.js";
298
+ import "./chunk-FAOEP2JU.js";
299
299
  import {
300
300
  API_TIMEOUTS,
301
301
  AgentCapability,
@@ -365,11 +365,12 @@ import {
365
365
  summarizeTaskProfile,
366
366
  symbols,
367
367
  taskAnalysisResultToTaskProfile,
368
+ taskProfileToBanditContext,
368
369
  toError,
369
370
  validateTimeout,
370
371
  writeEmptyLine,
371
372
  writeLine
372
- } from "./chunk-JDX7FSEE.js";
373
+ } from "./chunk-WF3JUKXF.js";
373
374
  import "./chunk-2HUC6NZN.js";
374
375
  import {
375
376
  applyPortableMode,
@@ -4127,7 +4128,7 @@ ${file.patch}
4127
4128
  violations: policyResult.violations
4128
4129
  });
4129
4130
  }
4130
- const { formatReviewComment: formatReviewComment2 } = await import("./pr-reviewer-helpers-7ER77ZQO.js");
4131
+ const { formatReviewComment: formatReviewComment2 } = await import("./pr-reviewer-helpers-LC266S6C.js");
4131
4132
  const body = formatReviewComment2(result);
4132
4133
  const postResult = await provider.createReview(pr.prNumber, body, result.decision);
4133
4134
  if (!postResult.ok) {
@@ -4864,7 +4865,6 @@ function printSuccessMessage(durationMs) {
4864
4865
  var logger5 = createLogger({ component: "routing-audit" });
4865
4866
  var sharedAnalyzer = createSharedTaskAnalyzer();
4866
4867
  var CLI_NAMES2 = ["claude", "gemini", "codex", "opencode"];
4867
- var CONTEXT_NORMALIZATION_TOKENS = 1e5;
4868
4868
  function analyzeTaskString(taskStr) {
4869
4869
  const task = {
4870
4870
  id: "audit-" + String(getTimeProvider().now()),
@@ -4875,14 +4875,7 @@ function analyzeTaskString(taskStr) {
4875
4875
  return taskAnalysisResultToTaskProfile(analysis);
4876
4876
  }
4877
4877
  function taskProfileToBanditContextFromProfile(profile) {
4878
- return {
4879
- taskComplexity: profile.reasoningComplexity / 10,
4880
- contextLengthNormalized: Math.min(profile.contextRequired / CONTEXT_NORMALIZATION_TOKENS, 1),
4881
- isCodeTask: profile.codeGeneration ? 1 : 0,
4882
- isReasoningTask: profile.taskType === "architecture" || profile.reasoningComplexity > 5 ? 1 : 0,
4883
- budgetUtilization: 0.5,
4884
- timePressure: 0.3
4885
- };
4878
+ return taskProfileToBanditContext(profile);
4886
4879
  }
4887
4880
  function simulateBudgetFilter() {
4888
4881
  return CLI_NAMES2.map((cliName) => ({
@@ -5025,7 +5018,9 @@ function formatBudgetFilter(result) {
5025
5018
  const passCount = result.budgetResults.filter((r) => r.withinBudget).length;
5026
5019
  const total = result.budgetResults.length;
5027
5020
  lines.push(
5028
- boxLine(color(` Budget Filter (${String(passCount)}/${String(total)} pass):`, ANSI.bold))
5021
+ boxLine(
5022
+ color(` Budget Filter (${String(passCount)}/${String(total)} pass):`, ANSI.bold) + color(" [simulated \u2014 not evaluated against real cost or config]", ANSI.dim)
5023
+ )
5029
5024
  );
5030
5025
  for (const br of result.budgetResults) {
5031
5026
  const status = br.withinBudget ? color("\u2713", ANSI.green) : color("\u2717", ANSI.red);
@@ -17599,7 +17594,7 @@ function startImprovementReviewScheduler(options) {
17599
17594
  let running = false;
17600
17595
  const runOnce = async () => {
17601
17596
  try {
17602
- const { runImprovementReview: runImprovementReview2, ImprovementReviewInputSchema: ImprovementReviewInputSchema2 } = await import("./improvement-review-4WOLRVMB.js");
17597
+ const { runImprovementReview: runImprovementReview2, ImprovementReviewInputSchema: ImprovementReviewInputSchema2 } = await import("./improvement-review-Q5IUKD4L.js");
17603
17598
  const input = ImprovementReviewInputSchema2.parse({ fileIssues });
17604
17599
  const result = await runImprovementReview2(input, { logger: logger19 });
17605
17600
  logger19.info("Scheduled improvement_review complete", {
@@ -18090,10 +18085,14 @@ function logToolRegistration(logger19, allowlist, info) {
18090
18085
  builtInTemplateCount: info.builtInTemplates.size,
18091
18086
  realWorkflowExecution: info.modelAdapter !== void 0,
18092
18087
  realTechLead: info.modelAdapter !== void 0,
18093
- policyFirewallEnabled: info.policyFirewall !== void 0,
18094
- policyMode: info.policyFirewall?.getMode(),
18095
18088
  executionMode: info.executionMode ?? "read-only"
18096
18089
  });
18090
+ if (info.policyFirewall !== void 0) {
18091
+ logger19.warn(
18092
+ "PolicyFirewall is configured but not wired to any tool \u2014 no policy middleware runs",
18093
+ { configuredMode: info.policyFirewall.getMode() }
18094
+ );
18095
+ }
18097
18096
  }
18098
18097
  function buildStandardDeps(ctx, toolName) {
18099
18098
  return {
@@ -19656,7 +19655,7 @@ function adaptConfigToLibrary(config) {
19656
19655
  }
19657
19656
  function createBeliefPromoter() {
19658
19657
  return async (event) => {
19659
- const { getToolMemory } = await import("./tool-memory-FSBMC4MW.js");
19658
+ const { getToolMemory } = await import("./tool-memory-H6ZXL3MH.js");
19660
19659
  const tm = getToolMemory();
19661
19660
  await tm.recordBelief(
19662
19661
  `skill:${event.name}`,
@@ -20843,7 +20842,7 @@ async function handleResearchCommand(args) {
20843
20842
  }
20844
20843
  }
20845
20844
  async function handleRegistryCommand(args) {
20846
- const { registryCommand, isValidRegistrySubcommand, formatRegistryUsage } = await import("./registry-command-DKJVYKGI.js");
20845
+ const { registryCommand, isValidRegistrySubcommand, formatRegistryUsage } = await import("./registry-command-NEM25F6F.js");
20847
20846
  const subcommand = args.subcommand;
20848
20847
  if (!isValidRegistrySubcommand(subcommand)) {
20849
20848
  process.stdout.write(`${formatRegistryUsage()}
@@ -20891,12 +20890,12 @@ async function handleVerifyCommand(args) {
20891
20890
  async function handleDoctorCommand(args) {
20892
20891
  const exitCode = await doctorCommand({ fix: args.options.fix });
20893
20892
  if (args.options.deep) {
20894
- const { runDeepDiagnostics: runDeepDiagnostics2, formatDeepDiagnostics: formatDeepDiagnostics2 } = await import("./doctor-deep-LMVPV2XK.js");
20893
+ const { runDeepDiagnostics: runDeepDiagnostics2, formatDeepDiagnostics: formatDeepDiagnostics2 } = await import("./doctor-deep-EWG7CL3Z.js");
20895
20894
  const diag = runDeepDiagnostics2();
20896
20895
  process.stdout.write(formatDeepDiagnostics2(diag) + "\n");
20897
20896
  }
20898
20897
  if (args.options.live) {
20899
- const { runLiveReadiness, formatLiveReadiness } = await import("./doctor-live-I5EMLG2W.js");
20898
+ const { runLiveReadiness, formatLiveReadiness } = await import("./doctor-live-UEIWZDS7.js");
20900
20899
  const report = await runLiveReadiness();
20901
20900
  process.stdout.write(formatLiveReadiness(report) + "\n");
20902
20901
  if (report.some((r) => r.levels.serves.status === "failed")) {
@@ -20949,7 +20948,7 @@ async function runInitPortableFlow(args) {
20949
20948
  return cliExit(result.success ? EXIT_CODES.SUCCESS : EXIT_CODES.SERVER_START_FAILED);
20950
20949
  }
20951
20950
  async function runInitOpencodeFlow(args) {
20952
- const { runInitOpencode } = await import("./init-opencode-HDVB7A2E.js");
20951
+ const { runInitOpencode } = await import("./init-opencode-6TBM2B2N.js");
20953
20952
  const opencodePath = args.options.opencode;
20954
20953
  if (opencodePath === void 0 || opencodePath === "") {
20955
20954
  process.stderr.write("Error: --opencode requires a path argument.\n");
@@ -20975,7 +20974,7 @@ async function runInitOpencodeFlow(args) {
20975
20974
  return cliExit(EXIT_CODES.SUCCESS);
20976
20975
  }
20977
20976
  async function renderOpencodeValidate(opencodePath) {
20978
- const { runOpencodeValidate } = await import("./init-opencode-HDVB7A2E.js");
20977
+ const { runOpencodeValidate } = await import("./init-opencode-6TBM2B2N.js");
20979
20978
  const result = await runOpencodeValidate(opencodePath);
20980
20979
  if (!result.ok) {
20981
20980
  process.stderr.write(`init --opencode --validate: ${result.reason ?? "failed"}
@@ -21014,7 +21013,7 @@ async function handleSetupCommandAsync(args) {
21014
21013
  return cliExitFromStatus(exitCode);
21015
21014
  }
21016
21015
  async function runCustomApiSetup(args) {
21017
- const { configureCustomApi } = await import("./setup-custom-api-WCVFLOCN.js");
21016
+ const { configureCustomApi } = await import("./setup-custom-api-NNXJ3GQZ.js");
21018
21017
  const baseUrl = args.options.customApi;
21019
21018
  if (baseUrl === void 0) return EXIT_CODES.SERVER_START_FAILED;
21020
21019
  const input = {