nexus-agents 8.46.1 → 8.46.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 (145) hide show
  1. package/dist/{ast-rule-runner-367HC4UY.js → ast-rule-runner-ODGZ3JZY.js} +5 -5
  2. package/dist/{child-mcp-config-2IJ3TXG5.js → child-mcp-config-L73W5MCX.js} +5 -5
  3. package/dist/{chunk-7BHQKEC2.js → chunk-3NAZYISV.js} +2 -2
  4. package/dist/{chunk-USD7DWRG.js → chunk-4H27PBKV.js} +2 -2
  5. package/dist/{chunk-CB75PV3Y.js → chunk-5H7SPGK7.js} +4 -4
  6. package/dist/{chunk-63BQ4CVP.js → chunk-732JANNS.js} +2 -2
  7. package/dist/{chunk-GEUZK7QR.js → chunk-A5MQ5FF4.js} +7 -7
  8. package/dist/{chunk-MBAREN43.js → chunk-BTYRPZON.js} +2 -2
  9. package/dist/{chunk-MBAREN43.js.map → chunk-BTYRPZON.js.map} +1 -1
  10. package/dist/{chunk-AWZKJQHK.js → chunk-DUF6QPTO.js} +3 -3
  11. package/dist/{chunk-SECO5QH5.js → chunk-FBBVRDK4.js} +2 -2
  12. package/dist/{chunk-PUKFCRHE.js → chunk-FIG75K2B.js} +3 -3
  13. package/dist/{chunk-TTLQO25X.js → chunk-FTLZG37P.js} +2 -2
  14. package/dist/{chunk-HI7VU3WE.js → chunk-GPWTORER.js} +6 -6
  15. package/dist/{chunk-NAC62SMO.js → chunk-H2BNQMYK.js} +2 -2
  16. package/dist/{chunk-A2CMDQFD.js → chunk-HP4HIBBD.js} +2 -2
  17. package/dist/{chunk-T6KMATAB.js → chunk-HXQ3VKUO.js} +10 -10
  18. package/dist/{chunk-CI45MILR.js → chunk-II7NLF4Q.js} +3 -3
  19. package/dist/{chunk-SMYK36R3.js → chunk-INPRQQQK.js} +8 -8
  20. package/dist/{chunk-SMYK36R3.js.map → chunk-INPRQQQK.js.map} +1 -1
  21. package/dist/{chunk-BLXOJN3P.js → chunk-L6NP4YNS.js} +2 -2
  22. package/dist/{chunk-O335AIP4.js → chunk-LFL2I5R7.js} +6 -6
  23. package/dist/{chunk-YOCOC4DG.js → chunk-M4Y2KBKB.js} +2 -2
  24. package/dist/{chunk-URM6RDIR.js → chunk-MSMKCCAD.js} +2 -2
  25. package/dist/{chunk-S72HKOOH.js → chunk-MTYJPPIG.js} +5 -4
  26. package/dist/chunk-MTYJPPIG.js.map +1 -0
  27. package/dist/{chunk-45V73GBS.js → chunk-P7BPGBJM.js} +7 -7
  28. package/dist/{chunk-6U3KJJRM.js → chunk-RHLWNHKX.js} +48 -48
  29. package/dist/chunk-RHLWNHKX.js.map +1 -0
  30. package/dist/{chunk-VWW2POE3.js → chunk-SBLNWD5V.js} +4 -4
  31. package/dist/{chunk-A5TSTHXJ.js → chunk-T2ONDETH.js} +4 -4
  32. package/dist/{chunk-WLKZ6PNC.js → chunk-T46RV7Y7.js} +2 -2
  33. package/dist/{chunk-DFNBVXOU.js → chunk-V4RF47LZ.js} +2 -2
  34. package/dist/{chunk-SIQELTIX.js → chunk-VL2IFI47.js} +2 -2
  35. package/dist/{chunk-H6JJL3PK.js → chunk-VW3NK2DE.js} +2 -2
  36. package/dist/{chunk-FQHRDJZH.js → chunk-W7AXQJNR.js} +3 -3
  37. package/dist/{chunk-LEKS5OZR.js → chunk-WEXA77OT.js} +2 -2
  38. package/dist/{chunk-UCIAHROV.js → chunk-WTVA7SRV.js} +5 -5
  39. package/dist/{chunk-ZR43ZS2W.js → chunk-X5S2JXR3.js} +10 -10
  40. package/dist/{chunk-HRJ4TWXZ.js → chunk-X7ETIOZG.js} +3 -3
  41. package/dist/{chunk-GL5OYJSN.js → chunk-Y4DMSLJM.js} +5 -5
  42. package/dist/{chunk-KZVKTHYT.js → chunk-Y6J2KOQ6.js} +11 -11
  43. package/dist/{chunk-NX4QAUSU.js → chunk-ZII57VK4.js} +2 -2
  44. package/dist/{chunk-5NQPBDRX.js → chunk-ZOU55MYG.js} +2 -2
  45. package/dist/{cli-circuit-breaker-ROZJLYNB.js → cli-circuit-breaker-BACT7C5F.js} +5 -5
  46. package/dist/cli.js +47 -47
  47. package/dist/{composite-router-2TDAOPFD.js → composite-router-HYLUXT7U.js} +4 -4
  48. package/dist/{consensus-vote-4YDC3H2C.js → consensus-vote-2TBA6XSI.js} +21 -21
  49. package/dist/{context-retriever-E2Q7RLL5.js → context-retriever-UOSFEX4E.js} +11 -11
  50. package/dist/doctor-deep-SQQ4H2OV.js +13 -0
  51. package/dist/{doctor-live-KIXE3UGI.js → doctor-live-DXYZSIPM.js} +12 -12
  52. package/dist/{expert-bridge-ULRWQKFB.js → expert-bridge-T2K3ZHIL.js} +6 -6
  53. package/dist/factory-I5BUOCTX.js +25 -0
  54. package/dist/factory-MI6JZRQL.js +15 -0
  55. package/dist/{improvement-review-FDRCRCWD.js → improvement-review-PGMJETQS.js} +8 -8
  56. package/dist/index.js +35 -35
  57. package/dist/{init-opencode-YIRTOTBD.js → init-opencode-VF4BC2HK.js} +8 -8
  58. package/dist/issue-triage-P532TIKZ.js +17 -0
  59. package/dist/{learning-persistence-P4WE4M27.js → learning-persistence-TQJVPLDN.js} +3 -3
  60. package/dist/{pr-reviewer-helpers-Q6XF2YBR.js → pr-reviewer-helpers-IQIXZKXH.js} +6 -6
  61. package/dist/{registry-command-EZVZ52OP.js → registry-command-PLFFH6YS.js} +4 -4
  62. package/dist/{repo-security-plan-54YQQ7BM.js → repo-security-plan-DZIBNTDL.js} +5 -5
  63. package/dist/research-helpers-synthesize-WWHRP2T3.js +14 -0
  64. package/dist/{routing-memory-ZES5DGQA.js → routing-memory-CCCVR5UQ.js} +4 -4
  65. package/dist/{session-memory-ZDI6VNTB.js → session-memory-6E5RCMYV.js} +5 -5
  66. package/dist/setup-config-ZIEZCZQS.js +11 -0
  67. package/dist/{setup-custom-api-5ZIZUPJO.js → setup-custom-api-X5UQWWW6.js} +6 -6
  68. package/dist/setup-data-dir-U7HU54SU.js +29 -0
  69. package/dist/{tool-memory-WZKIW5HV.js → tool-memory-DC2NWW44.js} +8 -8
  70. package/dist/{tool-memory-registry-adapters-GZGXUBEN.js → tool-memory-registry-adapters-OUOO7OLE.js} +3 -3
  71. package/dist/unified-registry-ZURARKTX.js +26 -0
  72. package/dist/{weather-report-BBEUSTYU.js → weather-report-QWH6RRAX.js} +4 -4
  73. package/package.json +1 -1
  74. package/dist/chunk-6U3KJJRM.js.map +0 -1
  75. package/dist/chunk-S72HKOOH.js.map +0 -1
  76. package/dist/doctor-deep-EN2IAJ6Q.js +0 -13
  77. package/dist/factory-GUD4XQK6.js +0 -25
  78. package/dist/factory-N3RPD7NP.js +0 -15
  79. package/dist/issue-triage-SUTFBOAF.js +0 -17
  80. package/dist/research-helpers-synthesize-SWBJP7GK.js +0 -14
  81. package/dist/setup-config-6ZAUJKVT.js +0 -11
  82. package/dist/setup-data-dir-N5OHQ5L7.js +0 -29
  83. package/dist/unified-registry-PN2VQQJK.js +0 -26
  84. /package/dist/{ast-rule-runner-367HC4UY.js.map → ast-rule-runner-ODGZ3JZY.js.map} +0 -0
  85. /package/dist/{child-mcp-config-2IJ3TXG5.js.map → child-mcp-config-L73W5MCX.js.map} +0 -0
  86. /package/dist/{chunk-7BHQKEC2.js.map → chunk-3NAZYISV.js.map} +0 -0
  87. /package/dist/{chunk-USD7DWRG.js.map → chunk-4H27PBKV.js.map} +0 -0
  88. /package/dist/{chunk-CB75PV3Y.js.map → chunk-5H7SPGK7.js.map} +0 -0
  89. /package/dist/{chunk-63BQ4CVP.js.map → chunk-732JANNS.js.map} +0 -0
  90. /package/dist/{chunk-GEUZK7QR.js.map → chunk-A5MQ5FF4.js.map} +0 -0
  91. /package/dist/{chunk-AWZKJQHK.js.map → chunk-DUF6QPTO.js.map} +0 -0
  92. /package/dist/{chunk-SECO5QH5.js.map → chunk-FBBVRDK4.js.map} +0 -0
  93. /package/dist/{chunk-PUKFCRHE.js.map → chunk-FIG75K2B.js.map} +0 -0
  94. /package/dist/{chunk-TTLQO25X.js.map → chunk-FTLZG37P.js.map} +0 -0
  95. /package/dist/{chunk-HI7VU3WE.js.map → chunk-GPWTORER.js.map} +0 -0
  96. /package/dist/{chunk-NAC62SMO.js.map → chunk-H2BNQMYK.js.map} +0 -0
  97. /package/dist/{chunk-A2CMDQFD.js.map → chunk-HP4HIBBD.js.map} +0 -0
  98. /package/dist/{chunk-T6KMATAB.js.map → chunk-HXQ3VKUO.js.map} +0 -0
  99. /package/dist/{chunk-CI45MILR.js.map → chunk-II7NLF4Q.js.map} +0 -0
  100. /package/dist/{chunk-BLXOJN3P.js.map → chunk-L6NP4YNS.js.map} +0 -0
  101. /package/dist/{chunk-O335AIP4.js.map → chunk-LFL2I5R7.js.map} +0 -0
  102. /package/dist/{chunk-YOCOC4DG.js.map → chunk-M4Y2KBKB.js.map} +0 -0
  103. /package/dist/{chunk-URM6RDIR.js.map → chunk-MSMKCCAD.js.map} +0 -0
  104. /package/dist/{chunk-45V73GBS.js.map → chunk-P7BPGBJM.js.map} +0 -0
  105. /package/dist/{chunk-VWW2POE3.js.map → chunk-SBLNWD5V.js.map} +0 -0
  106. /package/dist/{chunk-A5TSTHXJ.js.map → chunk-T2ONDETH.js.map} +0 -0
  107. /package/dist/{chunk-WLKZ6PNC.js.map → chunk-T46RV7Y7.js.map} +0 -0
  108. /package/dist/{chunk-DFNBVXOU.js.map → chunk-V4RF47LZ.js.map} +0 -0
  109. /package/dist/{chunk-SIQELTIX.js.map → chunk-VL2IFI47.js.map} +0 -0
  110. /package/dist/{chunk-H6JJL3PK.js.map → chunk-VW3NK2DE.js.map} +0 -0
  111. /package/dist/{chunk-FQHRDJZH.js.map → chunk-W7AXQJNR.js.map} +0 -0
  112. /package/dist/{chunk-LEKS5OZR.js.map → chunk-WEXA77OT.js.map} +0 -0
  113. /package/dist/{chunk-UCIAHROV.js.map → chunk-WTVA7SRV.js.map} +0 -0
  114. /package/dist/{chunk-ZR43ZS2W.js.map → chunk-X5S2JXR3.js.map} +0 -0
  115. /package/dist/{chunk-HRJ4TWXZ.js.map → chunk-X7ETIOZG.js.map} +0 -0
  116. /package/dist/{chunk-GL5OYJSN.js.map → chunk-Y4DMSLJM.js.map} +0 -0
  117. /package/dist/{chunk-KZVKTHYT.js.map → chunk-Y6J2KOQ6.js.map} +0 -0
  118. /package/dist/{chunk-NX4QAUSU.js.map → chunk-ZII57VK4.js.map} +0 -0
  119. /package/dist/{chunk-5NQPBDRX.js.map → chunk-ZOU55MYG.js.map} +0 -0
  120. /package/dist/{cli-circuit-breaker-ROZJLYNB.js.map → cli-circuit-breaker-BACT7C5F.js.map} +0 -0
  121. /package/dist/{composite-router-2TDAOPFD.js.map → composite-router-HYLUXT7U.js.map} +0 -0
  122. /package/dist/{consensus-vote-4YDC3H2C.js.map → consensus-vote-2TBA6XSI.js.map} +0 -0
  123. /package/dist/{context-retriever-E2Q7RLL5.js.map → context-retriever-UOSFEX4E.js.map} +0 -0
  124. /package/dist/{doctor-deep-EN2IAJ6Q.js.map → doctor-deep-SQQ4H2OV.js.map} +0 -0
  125. /package/dist/{doctor-live-KIXE3UGI.js.map → doctor-live-DXYZSIPM.js.map} +0 -0
  126. /package/dist/{expert-bridge-ULRWQKFB.js.map → expert-bridge-T2K3ZHIL.js.map} +0 -0
  127. /package/dist/{factory-GUD4XQK6.js.map → factory-I5BUOCTX.js.map} +0 -0
  128. /package/dist/{factory-N3RPD7NP.js.map → factory-MI6JZRQL.js.map} +0 -0
  129. /package/dist/{improvement-review-FDRCRCWD.js.map → improvement-review-PGMJETQS.js.map} +0 -0
  130. /package/dist/{init-opencode-YIRTOTBD.js.map → init-opencode-VF4BC2HK.js.map} +0 -0
  131. /package/dist/{issue-triage-SUTFBOAF.js.map → issue-triage-P532TIKZ.js.map} +0 -0
  132. /package/dist/{learning-persistence-P4WE4M27.js.map → learning-persistence-TQJVPLDN.js.map} +0 -0
  133. /package/dist/{pr-reviewer-helpers-Q6XF2YBR.js.map → pr-reviewer-helpers-IQIXZKXH.js.map} +0 -0
  134. /package/dist/{registry-command-EZVZ52OP.js.map → registry-command-PLFFH6YS.js.map} +0 -0
  135. /package/dist/{repo-security-plan-54YQQ7BM.js.map → repo-security-plan-DZIBNTDL.js.map} +0 -0
  136. /package/dist/{research-helpers-synthesize-SWBJP7GK.js.map → research-helpers-synthesize-WWHRP2T3.js.map} +0 -0
  137. /package/dist/{routing-memory-ZES5DGQA.js.map → routing-memory-CCCVR5UQ.js.map} +0 -0
  138. /package/dist/{session-memory-ZDI6VNTB.js.map → session-memory-6E5RCMYV.js.map} +0 -0
  139. /package/dist/{setup-config-6ZAUJKVT.js.map → setup-config-ZIEZCZQS.js.map} +0 -0
  140. /package/dist/{setup-custom-api-5ZIZUPJO.js.map → setup-custom-api-X5UQWWW6.js.map} +0 -0
  141. /package/dist/{setup-data-dir-N5OHQ5L7.js.map → setup-data-dir-U7HU54SU.js.map} +0 -0
  142. /package/dist/{tool-memory-WZKIW5HV.js.map → tool-memory-DC2NWW44.js.map} +0 -0
  143. /package/dist/{tool-memory-registry-adapters-GZGXUBEN.js.map → tool-memory-registry-adapters-OUOO7OLE.js.map} +0 -0
  144. /package/dist/{unified-registry-PN2VQQJK.js.map → unified-registry-ZURARKTX.js.map} +0 -0
  145. /package/dist/{weather-report-BBEUSTYU.js.map → weather-report-QWH6RRAX.js.map} +0 -0
@@ -3,7 +3,7 @@ import {
3
3
  createLogger,
4
4
  err,
5
5
  ok
6
- } from "./chunk-SMYK36R3.js";
6
+ } from "./chunk-INPRQQQK.js";
7
7
 
8
8
  // src/adapters/sdk/types.ts
9
9
  var PROVIDER_ENV_KEYS = {
@@ -260,4 +260,4 @@ export {
260
260
  validateCustomApiBaseUrl,
261
261
  assertCustomApiHostResolvesPublic
262
262
  };
263
- //# sourceMappingURL=chunk-BLXOJN3P.js.map
263
+ //# sourceMappingURL=chunk-L6NP4YNS.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  GitHubProvider,
3
3
  ScmError
4
- } from "./chunk-5NQPBDRX.js";
4
+ } from "./chunk-ZOU55MYG.js";
5
5
  import {
6
6
  ROLE_DEFAULT_TRUST,
7
7
  ReputationCache,
@@ -12,7 +12,7 @@ import {
12
12
  resolveEnvMode,
13
13
  resolveReputationGatingMode,
14
14
  sanitizeInput
15
- } from "./chunk-YOCOC4DG.js";
15
+ } from "./chunk-M4Y2KBKB.js";
16
16
  import {
17
17
  MAX_STRIPPED_ELEMENTS_PER_EVENT,
18
18
  createAuditTrail,
@@ -20,10 +20,10 @@ import {
20
20
  emitReputationEvent,
21
21
  emitSanitizationEvent,
22
22
  emitTrustEvent
23
- } from "./chunk-NAC62SMO.js";
23
+ } from "./chunk-H2BNQMYK.js";
24
24
  import {
25
25
  hasToken
26
- } from "./chunk-NX4QAUSU.js";
26
+ } from "./chunk-ZII57VK4.js";
27
27
  import {
28
28
  CLI_SUBPROCESS_TIMEOUTS,
29
29
  createLogger,
@@ -31,7 +31,7 @@ import {
31
31
  getErrorMessage,
32
32
  getTimeProvider,
33
33
  ok
34
- } from "./chunk-SMYK36R3.js";
34
+ } from "./chunk-INPRQQQK.js";
35
35
 
36
36
  // src/security/firewall/firewall-policy-mode.ts
37
37
  import { z } from "zod";
@@ -2162,4 +2162,4 @@ export {
2162
2162
  IssueTriage,
2163
2163
  createIssueTriage
2164
2164
  };
2165
- //# sourceMappingURL=chunk-O335AIP4.js.map
2165
+ //# sourceMappingURL=chunk-LFL2I5R7.js.map
@@ -2,7 +2,7 @@ import {
2
2
  CACHE_TIMEOUTS,
3
3
  createLogger,
4
4
  getTimeProvider
5
- } from "./chunk-SMYK36R3.js";
5
+ } from "./chunk-INPRQQQK.js";
6
6
 
7
7
  // src/security/trust-types.ts
8
8
  import { z } from "zod";
@@ -610,4 +610,4 @@ export {
610
610
  resolveReputationGatingMode,
611
611
  gateWithReputation
612
612
  };
613
- //# sourceMappingURL=chunk-YOCOC4DG.js.map
613
+ //# sourceMappingURL=chunk-M4Y2KBKB.js.map
@@ -4,7 +4,7 @@ import {
4
4
  getErrorMessage,
5
5
  getTimeProvider,
6
6
  ok
7
- } from "./chunk-SMYK36R3.js";
7
+ } from "./chunk-INPRQQQK.js";
8
8
 
9
9
  // src/context/session-memory.ts
10
10
  import * as fs from "node:fs";
@@ -370,4 +370,4 @@ export {
370
370
  SessionMemory,
371
371
  createSessionMemory
372
372
  };
373
- //# sourceMappingURL=chunk-URM6RDIR.js.map
373
+ //# sourceMappingURL=chunk-MSMKCCAD.js.map
@@ -1,6 +1,7 @@
1
1
  import {
2
- getNexusDataDir
3
- } from "./chunk-MBAREN43.js";
2
+ getNexusDataDir,
3
+ parseBoolEnv
4
+ } from "./chunk-BTYRPZON.js";
4
5
 
5
6
  // src/config/learning-persistence.ts
6
7
  import { mkdirSync } from "node:fs";
@@ -28,7 +29,7 @@ function getModelSelectionShadowFile() {
28
29
  }
29
30
  var DIR_MODE = 448;
30
31
  function isPersistenceEnabled() {
31
- return process.env["NEXUS_PERSIST_LEARNING"] !== "false";
32
+ return parseBoolEnv("NEXUS_PERSIST_LEARNING", true);
32
33
  }
33
34
  function ensureLearningDir(dir) {
34
35
  mkdirSync(dir ?? getLearningDir(), { recursive: true, mode: DIR_MODE });
@@ -45,4 +46,4 @@ export {
45
46
  isPersistenceEnabled,
46
47
  ensureLearningDir
47
48
  };
48
- //# sourceMappingURL=chunk-S72HKOOH.js.map
49
+ //# sourceMappingURL=chunk-MTYJPPIG.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../src/config/learning-persistence.ts"],"sourcesContent":["/**\n * Shared configuration for cross-session learning persistence.\n *\n * Controls where learning data (outcomes, distilled rules) is stored\n * on disk and whether persistence is enabled via feature flag.\n *\n * @module config/learning-persistence\n * (Source: Issue #1009 — Cross-session persistence)\n */\n\nimport { mkdirSync } from 'node:fs';\nimport { join } from 'node:path';\nimport { getNexusDataDir } from './nexus-data-dir.js';\nimport { parseBoolEnv } from './defaults-env.js';\n\n// ============================================================================\n// Path resolution (#2316: must read NEXUS_DATA_DIR at call time, not import)\n// ============================================================================\n\n/**\n * Base directory for learning persistence data. Resolved at call time so\n * `NEXUS_DATA_DIR` overrides take effect — the const-at-import-time\n * pattern this replaces was the bug discovered while dogfooding v2.63.0\n * (#2316). Outcome counts on a fresh portable workspace were leaking\n * the host home directory's outcome history.\n */\nexport function getLearningDir(): string {\n return join(getNexusDataDir(), 'learning');\n}\n\n/** JSONL file for persisted task outcomes. */\nexport function getOutcomesFile(): string {\n return join(getLearningDir(), 'outcomes.jsonl');\n}\n\n/** JSON file for persisted distilled rules. */\nexport function getRulesFile(): string {\n return join(getLearningDir(), 'rules.json');\n}\n\n/**\n * JSONL file for per-voter pr_review eval verdicts (#3848).\n *\n * Stores ONLY rubric-scored per-voter TP/FP/FN tallies vs ground truth — never\n * raw diffs, prompts, or model outputs. Lets per-voter precision/recall accrue\n * across runs so a chronically-noisy-voter demotion (Epic D / ADR-0017) has\n * citable evidence.\n */\nexport function getPrReviewEvalFile(): string {\n return join(getLearningDir(), 'pr-review-eval.jsonl');\n}\n\n/**\n * JSONL file for per-decision cost rollups (#3855).\n *\n * Stores ONLY the per-decision cost summary (per-voter / per-model token + USD\n * totals) for a governed `consensus_vote` / `pr_review` run — never raw\n * proposals, diffs, prompts, or model outputs. Lets \"what did this governed\n * decision cost?\" be answered from recorded data (epic #3854; feeds Epic G's\n * weather_report + manifest cost profiles in #3856).\n */\nexport function getDecisionCostFile(): string {\n return join(getLearningDir(), 'decision-costs.jsonl');\n}\n\n/**\n * JSONL file for the MetaOrchestrator shadow selector's training outcomes\n * (#3593). Stores ONLY numeric/categorical bandit-feature values + a boolean\n * success flag — never raw task text. Lets the shadow selector learn across\n * processes by replaying past outcomes on construction.\n */\nexport function getMetaOutcomesFile(): string {\n return join(getLearningDir(), 'meta-outcomes.jsonl');\n}\n\n/**\n * JSONL file for route-time model-selection shadow comparisons (#4197).\n *\n * Stores ONLY the sanitized comparison — CLI slot, difficulty tier, the model\n * actually used vs the model `resolveModelForTier` WOULD have picked, agreement,\n * outcome success, and (where measured) costUsd — never task content, prompts,\n * or model outputs. A DEDICATED log (mirroring `meta-outcomes.jsonl`, #3593)\n * rather than extra OutcomeStore fields, so the shadow eval never re-reads the\n * OutcomeStore that weather + LinUCB warm-start already replay (the pre-existing\n * double-counting boundary excluded from #4194).\n */\nexport function getModelSelectionShadowFile(): string {\n return join(getLearningDir(), 'model-selection-shadow.jsonl');\n}\n\n// Note: previous LEARNING_DIR / OUTCOMES_FILE / RULES_FILE exports were\n// removed in #2316 — they were evaluated at module import time and ignored\n// `NEXUS_DATA_DIR`. All callers must use the getter functions above.\n\n/** Directory mode: owner-only (rwx------). */\nconst DIR_MODE = 0o700;\n\n// ============================================================================\n// Helpers\n// ============================================================================\n\n/**\n * Check whether learning persistence is enabled via feature flag.\n *\n * Defaults to true — cross-session LinUCB routing data persists to\n * `~/.nexus-agents/learning/` unless explicitly disabled.\n * Only routing metadata is stored (model, success, duration, category).\n * No user prompts, API keys, or model outputs are persisted.\n *\n * Set NEXUS_PERSIST_LEARNING to `false`/`0` to disable — the one accept-set\n * every NEXUS_* boolean shares (#5464, wave 2 of #5155).\n */\nexport function isPersistenceEnabled(): boolean {\n return parseBoolEnv('NEXUS_PERSIST_LEARNING', true);\n}\n\n/** Ensure the learning data directory exists. */\nexport function ensureLearningDir(dir?: string): void {\n mkdirSync(dir ?? getLearningDir(), { recursive: true, mode: DIR_MODE });\n}\n"],"mappings":";;;;;;AAUA,SAAS,iBAAiB;AAC1B,SAAS,YAAY;AAed,SAAS,iBAAyB;AACvC,SAAO,KAAK,gBAAgB,GAAG,UAAU;AAC3C;AAGO,SAAS,kBAA0B;AACxC,SAAO,KAAK,eAAe,GAAG,gBAAgB;AAChD;AAGO,SAAS,eAAuB;AACrC,SAAO,KAAK,eAAe,GAAG,YAAY;AAC5C;AAUO,SAAS,sBAA8B;AAC5C,SAAO,KAAK,eAAe,GAAG,sBAAsB;AACtD;AAWO,SAAS,sBAA8B;AAC5C,SAAO,KAAK,eAAe,GAAG,sBAAsB;AACtD;AAQO,SAAS,sBAA8B;AAC5C,SAAO,KAAK,eAAe,GAAG,qBAAqB;AACrD;AAaO,SAAS,8BAAsC;AACpD,SAAO,KAAK,eAAe,GAAG,8BAA8B;AAC9D;AAOA,IAAM,WAAW;AAiBV,SAAS,uBAAgC;AAC9C,SAAO,aAAa,0BAA0B,IAAI;AACpD;AAGO,SAAS,kBAAkB,KAAoB;AACpD,YAAU,OAAO,eAAe,GAAG,EAAE,WAAW,MAAM,MAAM,SAAS,CAAC;AACxE;","names":[]}
@@ -5,13 +5,13 @@ import {
5
5
  loadTechniquesRegistry,
6
6
  resolveInsideRoot,
7
7
  savePapersRegistry
8
- } from "./chunk-CI45MILR.js";
8
+ } from "./chunk-II7NLF4Q.js";
9
9
  import {
10
10
  resolveToken
11
- } from "./chunk-NX4QAUSU.js";
11
+ } from "./chunk-ZII57VK4.js";
12
12
  import {
13
13
  getToolMemory
14
- } from "./chunk-HI7VU3WE.js";
14
+ } from "./chunk-GPWTORER.js";
15
15
  import {
16
16
  capitalizeWords,
17
17
  tokenizeFiltered,
@@ -40,15 +40,15 @@ import {
40
40
  ok,
41
41
  registerPersistentDistillerFactory,
42
42
  sigmoidConfidence
43
- } from "./chunk-SMYK36R3.js";
43
+ } from "./chunk-INPRQQQK.js";
44
44
  import {
45
45
  ensureLearningDir,
46
46
  getRulesFile
47
- } from "./chunk-S72HKOOH.js";
47
+ } from "./chunk-MTYJPPIG.js";
48
48
  import {
49
49
  nexusDataPath,
50
50
  parseBoolEnv
51
- } from "./chunk-MBAREN43.js";
51
+ } from "./chunk-BTYRPZON.js";
52
52
 
53
53
  // src/learning/strategy-distiller-persistence.ts
54
54
  import { writeFileSync, readFileSync, renameSync, unlinkSync, existsSync } from "node:fs";
@@ -4238,4 +4238,4 @@ export {
4238
4238
  DEFAULT_CONTEXT_BUDGET_TOKENS,
4239
4239
  getContextPromptPrefix
4240
4240
  };
4241
- //# sourceMappingURL=chunk-45V73GBS.js.map
4241
+ //# sourceMappingURL=chunk-P7BPGBJM.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  generateSecurityPlan
3
- } from "./chunk-DFNBVXOU.js";
3
+ } from "./chunk-V4RF47LZ.js";
4
4
  import {
5
5
  analyzeGitHubRepo
6
6
  } from "./chunk-DGWT7DXX.js";
@@ -21,10 +21,10 @@ import {
21
21
  import {
22
22
  DEFAULT_TASK_TTL_MS,
23
23
  clampTaskTtl
24
- } from "./chunk-ZR43ZS2W.js";
24
+ } from "./chunk-X5S2JXR3.js";
25
25
  import {
26
26
  executeExpert
27
- } from "./chunk-GEUZK7QR.js";
27
+ } from "./chunk-A5MQ5FF4.js";
28
28
  import {
29
29
  JobStatusSchema,
30
30
  VOTER_ROLES,
@@ -55,7 +55,7 @@ import {
55
55
  toJobSummary,
56
56
  updateStage,
57
57
  writeJobCancelled
58
- } from "./chunk-KZVKTHYT.js";
58
+ } from "./chunk-Y6J2KOQ6.js";
59
59
  import {
60
60
  allOf,
61
61
  anyOf
@@ -63,19 +63,19 @@ import {
63
63
  import {
64
64
  normalizeTopicToCanonical,
65
65
  synthesizeResearch
66
- } from "./chunk-AWZKJQHK.js";
66
+ } from "./chunk-DUF6QPTO.js";
67
67
  import {
68
68
  IssueTriage,
69
69
  createDurableAuditSink,
70
70
  createDurableAuditTrail
71
- } from "./chunk-O335AIP4.js";
71
+ } from "./chunk-LFL2I5R7.js";
72
72
  import {
73
73
  resolveEnvMode,
74
74
  sanitizeInput
75
- } from "./chunk-YOCOC4DG.js";
75
+ } from "./chunk-M4Y2KBKB.js";
76
76
  import {
77
77
  withPrerequisite
78
- } from "./chunk-A5TSTHXJ.js";
78
+ } from "./chunk-T2ONDETH.js";
79
79
  import {
80
80
  NOOP_NOTIFIER,
81
81
  RateLimiter,
@@ -100,18 +100,18 @@ import {
100
100
  withAuditTrail,
101
101
  withProgressHeartbeat,
102
102
  wrapToolWithTimeout
103
- } from "./chunk-GL5OYJSN.js";
103
+ } from "./chunk-Y4DMSLJM.js";
104
104
  import {
105
105
  createAuditTrail,
106
106
  createGraphAuditBridge,
107
107
  emitPipelinePolicyEvent
108
- } from "./chunk-NAC62SMO.js";
108
+ } from "./chunk-H2BNQMYK.js";
109
109
  import {
110
110
  EventTopics,
111
111
  createEvent,
112
112
  getGlobalEventBus,
113
113
  getGlobalRegistry
114
- } from "./chunk-VWW2POE3.js";
114
+ } from "./chunk-SBLNWD5V.js";
115
115
  import {
116
116
  IDENTIFIER_RE,
117
117
  LANG_VALUES,
@@ -144,7 +144,7 @@ import {
144
144
  parseRegistry,
145
145
  sourceExistsInRegistry,
146
146
  summarizeContextForPrompt
147
- } from "./chunk-45V73GBS.js";
147
+ } from "./chunk-P7BPGBJM.js";
148
148
  import {
149
149
  REGISTRY_PATH,
150
150
  getProjectRoot,
@@ -152,25 +152,25 @@ import {
152
152
  loadTechniquesRegistry,
153
153
  resolveInsideRoot,
154
154
  resolveRegistryRoot
155
- } from "./chunk-CI45MILR.js";
155
+ } from "./chunk-II7NLF4Q.js";
156
156
  import {
157
157
  getTokenEnvVars,
158
158
  resolveToken
159
- } from "./chunk-NX4QAUSU.js";
159
+ } from "./chunk-ZII57VK4.js";
160
160
  import {
161
161
  DEFAULT_RELEVANCE_CONFIG,
162
162
  MemoryImportance,
163
163
  MemoryType,
164
164
  calculateTextJaccardSimilarity,
165
165
  getToolMemory
166
- } from "./chunk-HI7VU3WE.js";
166
+ } from "./chunk-GPWTORER.js";
167
167
  import {
168
168
  STOPWORDS,
169
169
  truncateWithInfo
170
170
  } from "./chunk-7LP6VJRP.js";
171
171
  import {
172
172
  createSessionMemory
173
- } from "./chunk-URM6RDIR.js";
173
+ } from "./chunk-MSMKCCAD.js";
174
174
  import {
175
175
  BUILT_IN_EXPERTS,
176
176
  BuiltInExpertTypeSchema,
@@ -188,25 +188,25 @@ import {
188
188
  getAvailableClis,
189
189
  sleep,
190
190
  withTimeout
191
- } from "./chunk-T6KMATAB.js";
191
+ } from "./chunk-HXQ3VKUO.js";
192
192
  import {
193
193
  BaseAdapter,
194
194
  createStream,
195
195
  requireApiKey,
196
196
  validateApiKeyPresence
197
- } from "./chunk-A2CMDQFD.js";
197
+ } from "./chunk-HP4HIBBD.js";
198
198
  import {
199
199
  DEFAULTS
200
- } from "./chunk-FQHRDJZH.js";
200
+ } from "./chunk-W7AXQJNR.js";
201
201
  import {
202
202
  getAvailabilityCache,
203
203
  getCliForModelId,
204
204
  resolveFallback
205
- } from "./chunk-SECO5QH5.js";
205
+ } from "./chunk-FBBVRDK4.js";
206
206
  import {
207
207
  generateHyphenId,
208
208
  generateUUID
209
- } from "./chunk-7BHQKEC2.js";
209
+ } from "./chunk-3NAZYISV.js";
210
210
  import {
211
211
  AGENT_ROUTER_TIMEOUTS,
212
212
  API_TIMEOUTS,
@@ -318,19 +318,19 @@ import {
318
318
  selectStrategyByManifest,
319
319
  toExpertTaskAnalysisResult,
320
320
  withStep
321
- } from "./chunk-SMYK36R3.js";
321
+ } from "./chunk-INPRQQQK.js";
322
322
  import {
323
323
  ensureLearningDir,
324
324
  getMetaOutcomesFile,
325
325
  isPersistenceEnabled
326
- } from "./chunk-S72HKOOH.js";
326
+ } from "./chunk-MTYJPPIG.js";
327
327
  import {
328
328
  findRepoRoot,
329
329
  getNexusDataDir,
330
330
  nexusDataPath,
331
331
  nexusDataPathEnsure,
332
332
  parseBoolEnv
333
- } from "./chunk-MBAREN43.js";
333
+ } from "./chunk-BTYRPZON.js";
334
334
 
335
335
  // src/config/schemas-core.ts
336
336
  import { z } from "zod";
@@ -996,7 +996,7 @@ var NexusEnvSchema = z11.object({
996
996
  // --- Logging ---
997
997
  NEXUS_LOG_LEVEL: z11.enum(["trace", "debug", "info", "warn", "error", "fatal", "silent"]).optional(),
998
998
  // --- Features ---
999
- NEXUS_PERSIST_LEARNING: boolStr.optional(),
999
+ NEXUS_PERSIST_LEARNING: boolLooseStr.optional(),
1000
1000
  NEXUS_REFLECTIVE_MEMORY: z11.enum(["true", "false", "shadow"]).optional(),
1001
1001
  NEXUS_EVENTBUS_ENABLED: boolStr.optional(),
1002
1002
  // NEXUS_EVENTBUS_MAX_HISTORY removed in #2977 — silent no-op (no production reader).
@@ -1008,7 +1008,7 @@ var NexusEnvSchema = z11.object({
1008
1008
  // report it as an UNKNOWN NEXUS_* var, typo suggestion and all.
1009
1009
  NEXUS_DATA_DIR: z11.string().optional(),
1010
1010
  // `0` opts out of the per-repo data dir (epic #2872; default ON).
1011
- NEXUS_REPO_PREFERRED: z11.enum(["0", "1"]).optional(),
1011
+ NEXUS_REPO_PREFERRED: boolLooseStr.optional(),
1012
1012
  // Scratch root for short-lived working files (#4412, getNexusTmpDir). Unset
1013
1013
  // resolves to `<dataDir>/tmp`; set it to relocate scratch off the repo.
1014
1014
  NEXUS_TMPDIR: z11.string().optional(),
@@ -1048,16 +1048,16 @@ var NexusEnvSchema = z11.object({
1048
1048
  // evidence (#4677). Off by default: fixing the confidence floor made the
1049
1049
  // enrichment gate reachable for the first time, and measurement put that at
1050
1050
  // ~60% of realistic goals — one LLM call each. Opt in deliberately.
1051
- NEXUS_LLM_CLASSIFICATION: z11.enum(["0", "1"]).optional(),
1051
+ NEXUS_LLM_CLASSIFICATION: boolLooseStr.optional(),
1052
1052
  // Feed live dispatch outcomes into the MetaOrchestrator shadow selector + persist them (#3593); off by default.
1053
- NEXUS_META_SHADOW_TRAIN: z11.enum(["0", "1"]).optional(),
1053
+ NEXUS_META_SHADOW_TRAIN: boolLooseStr.optional(),
1054
1054
  // Resolve a concrete model from the difficulty tier at route time (#3394,
1055
1055
  // isRouteModelSelectionEnabled); off by default. Registered here in #4197 —
1056
1056
  // the reader predates this schema entry.
1057
- NEXUS_ROUTE_MODEL_SELECTION: boolStr.optional(),
1057
+ NEXUS_ROUTE_MODEL_SELECTION: boolLooseStr.optional(),
1058
1058
  // Record would-be tier model selections (shadow) + join them with outcomes for
1059
1059
  // the offline flip eval (#4197, isRouteModelShadowEnabled); off by default.
1060
- NEXUS_ROUTE_MODEL_SHADOW: z11.enum(["0", "1"]).optional(),
1060
+ NEXUS_ROUTE_MODEL_SHADOW: boolLooseStr.optional(),
1061
1061
  // Async job-result reader source (#3090/#3693): `task_state` prefers/unions the
1062
1062
  // Stage-2 task-state log; default (unset) is sidecar-only. Reader half of the
1063
1063
  // sidecar→Stage-2 migration (epic #2631).
@@ -29991,7 +29991,7 @@ function execIdFields(executionId) {
29991
29991
  async function populateUnifiedContextOnState(state, options) {
29992
29992
  const taskCandidate = state["task"];
29993
29993
  if (typeof taskCandidate !== "string" || taskCandidate === "") return;
29994
- const { getContextForTask: getContextForTask2, inferTaskCategory: inferTaskCategory2 } = await import("./context-retriever-E2Q7RLL5.js");
29994
+ const { getContextForTask: getContextForTask2, inferTaskCategory: inferTaskCategory2 } = await import("./context-retriever-UOSFEX4E.js");
29995
29995
  const category = inferTaskCategory2(taskCandidate);
29996
29996
  const executionId = options?.executionId;
29997
29997
  const execFields = execIdFields(executionId);
@@ -45590,13 +45590,13 @@ var TRIAGE_CATEGORY_MAP = {
45590
45590
  research: "research"
45591
45591
  };
45592
45592
  function llmClassificationEnabled() {
45593
- return process.env["NEXUS_LLM_CLASSIFICATION"] === "1";
45593
+ return parseBoolEnv("NEXUS_LLM_CLASSIFICATION", false);
45594
45594
  }
45595
45595
  async function tryIssueTriage(task) {
45596
45596
  try {
45597
45597
  const issueMatch = task.match(/github\.com\/([^/]+\/[^/]+)\/issues\/(\d+)/);
45598
45598
  if (issueMatch === null) return null;
45599
- const { createIssueTriage } = await import("./issue-triage-SUTFBOAF.js");
45599
+ const { createIssueTriage } = await import("./issue-triage-P532TIKZ.js");
45600
45600
  const triage = createIssueTriage();
45601
45601
  const owner = issueMatch[1] ?? "";
45602
45602
  const num = issueMatch[2] ?? "";
@@ -45624,7 +45624,7 @@ var VALID_TEMPLATES = /* @__PURE__ */ new Set([
45624
45624
  ]);
45625
45625
  async function classifyWithLLM(task) {
45626
45626
  try {
45627
- const { executeExpert: executeExpert2 } = await import("./expert-bridge-ULRWQKFB.js");
45627
+ const { executeExpert: executeExpert2 } = await import("./expert-bridge-T2K3ZHIL.js");
45628
45628
  const prompt = [
45629
45629
  "Classify this task into exactly one pipeline template.",
45630
45630
  "Templates: dev (implementation/bug fix/refactor), research (investigate/evaluate/compare),",
@@ -45998,7 +45998,7 @@ function buildVotingInput(plan, config) {
45998
45998
  }
45999
45999
  async function executeSingleVote(plan, config, log) {
46000
46000
  try {
46001
- const { executeVoting } = await import("./consensus-vote-4YDC3H2C.js");
46001
+ const { executeVoting } = await import("./consensus-vote-2TBA6XSI.js");
46002
46002
  const input = buildVotingInput(plan, config);
46003
46003
  const result = await executeVoting(input, log);
46004
46004
  return parseVotingResult(result);
@@ -47560,8 +47560,8 @@ var memoryInitPromise = null;
47560
47560
  async function initPipelineMemory() {
47561
47561
  if (cachedMemory !== null) return cachedMemory;
47562
47562
  try {
47563
- const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-ZDI6VNTB.js");
47564
- const { getLearningDir } = await import("./learning-persistence-P4WE4M27.js");
47563
+ const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-6E5RCMYV.js");
47564
+ const { getLearningDir } = await import("./learning-persistence-TQJVPLDN.js");
47565
47565
  const mem = createSessionMemory2(getLearningDir());
47566
47566
  mem.startSession(`pipeline-${String(getTimeProvider().now())}`);
47567
47567
  cachedMemory = {
@@ -47622,7 +47622,7 @@ function recordRoutingExperience(category, success, durationMs, tokensUsed = 0,
47622
47622
  callRecord(routingMemoryCache);
47623
47623
  return;
47624
47624
  }
47625
- routingMemoryInitPromise ??= import("./routing-memory-ZES5DGQA.js").then(({ createRoutingMemory }) => {
47625
+ routingMemoryInitPromise ??= import("./routing-memory-CCCVR5UQ.js").then(({ createRoutingMemory }) => {
47626
47626
  routingMemoryCache ??= createRoutingMemory();
47627
47627
  return routingMemoryCache;
47628
47628
  }).catch((error) => {
@@ -47656,7 +47656,7 @@ ${text}` : "";
47656
47656
  }
47657
47657
  async function getWeatherContext() {
47658
47658
  try {
47659
- const { generateWeatherReport: generateWeatherReport2 } = await import("./weather-report-BBEUSTYU.js");
47659
+ const { generateWeatherReport: generateWeatherReport2 } = await import("./weather-report-QWH6RRAX.js");
47660
47660
  const report = generateWeatherReport2({ includeAdaptive: true });
47661
47661
  const mappings = "recommendedMappings" in report ? report.recommendedMappings : [];
47662
47662
  if (!Array.isArray(mappings) || mappings.length === 0) return "";
@@ -47674,8 +47674,8 @@ ${lines}
47674
47674
  }
47675
47675
  async function getMemoryContext(task) {
47676
47676
  try {
47677
- const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-ZDI6VNTB.js");
47678
- const { getLearningDir } = await import("./learning-persistence-P4WE4M27.js");
47677
+ const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-6E5RCMYV.js");
47678
+ const { getLearningDir } = await import("./learning-persistence-TQJVPLDN.js");
47679
47679
  const memory = createSessionMemory2(getLearningDir(), { maxLearningsInContext: 10 });
47680
47680
  const learnings = memory.searchLearnings(task.slice(0, 200));
47681
47681
  if (learnings.length === 0) return "";
@@ -47793,7 +47793,7 @@ ${contextBlock}`;
47793
47793
  const strategy = config.votingStrategy ?? "higher_order";
47794
47794
  await postProgress(config, "Vote", `Running consensus with ${strategy} strategy...`);
47795
47795
  try {
47796
- const { executeVoting } = await import("./consensus-vote-4YDC3H2C.js");
47796
+ const { executeVoting } = await import("./consensus-vote-2TBA6XSI.js");
47797
47797
  const votingResult = await executeVoting(
47798
47798
  {
47799
47799
  proposal: buildVoteProposal(plan, research),
@@ -48224,7 +48224,7 @@ async function searchCodebaseForTask(task) {
48224
48224
  }
48225
48225
  async function queryResearchRegistry(task) {
48226
48226
  try {
48227
- const { synthesizeResearch: synthesizeResearch2 } = await import("./research-helpers-synthesize-SWBJP7GK.js");
48227
+ const { synthesizeResearch: synthesizeResearch2 } = await import("./research-helpers-synthesize-WWHRP2T3.js");
48228
48228
  const topic = task.split(/[.!?\n]/).filter((s) => s.trim().length > 10)[0]?.trim();
48229
48229
  if (topic === void 0) return null;
48230
48230
  const result = await synthesizeResearch2(topic.slice(0, 50));
@@ -48295,7 +48295,7 @@ function createScanStageWrapper() {
48295
48295
  try {
48296
48296
  const slug = ctx.task.match(/([a-zA-Z0-9._-]+\/[a-zA-Z0-9._-]+)/)?.[1];
48297
48297
  if (slug !== void 0) {
48298
- const { generateSecurityPlan: generateSecurityPlan2 } = await import("./repo-security-plan-54YQQ7BM.js");
48298
+ const { generateSecurityPlan: generateSecurityPlan2 } = await import("./repo-security-plan-DZIBNTDL.js");
48299
48299
  const plan = await generateSecurityPlan2({ repo: slug, maxScanners: 10 });
48300
48300
  const recs = plan.recommendations.slice(0, 5).map((r) => `${r.priority}: ${r.displayName} (${r.category})`).join("; ");
48301
48301
  return output(PIPELINE_STATE_KEYS.FINDINGS, recs, getTimeProvider().now() - start, true);
@@ -51535,7 +51535,7 @@ var GitHubTaskTracker = class {
51535
51535
  cachedProvider = null;
51536
51536
  async getProvider() {
51537
51537
  if (this.cachedProvider !== null) return this.cachedProvider;
51538
- const { createScmProvider } = await import("./factory-N3RPD7NP.js");
51538
+ const { createScmProvider } = await import("./factory-MI6JZRQL.js");
51539
51539
  const result = await createScmProvider({ repo: this.config.repo ?? "" });
51540
51540
  if (!result.ok) throw new Error(`SCM provider error: ${result.error.message}`);
51541
51541
  this.cachedProvider = result.value;
@@ -52284,7 +52284,7 @@ function buildDefaultExecutors(trustTier, gatewayAdapters, dryRun) {
52284
52284
  };
52285
52285
  }
52286
52286
  function isShadowTrainEnabled() {
52287
- return process.env["NEXUS_META_SHADOW_TRAIN"] === "1" && isPersistenceEnabled();
52287
+ return parseBoolEnv("NEXUS_META_SHADOW_TRAIN", false) && isPersistenceEnabled();
52288
52288
  }
52289
52289
  function buildShadowTrainObserver(logger55) {
52290
52290
  if (!isShadowTrainEnabled()) return void 0;
@@ -52466,7 +52466,7 @@ async function probeSource(source, includeModelIds) {
52466
52466
  }
52467
52467
  }
52468
52468
  async function defaultSources(includeOpenRouter) {
52469
- const { createAllAdapters: createAllAdapters2 } = await import("./factory-GUD4XQK6.js");
52469
+ const { createAllAdapters: createAllAdapters2 } = await import("./factory-I5BUOCTX.js");
52470
52470
  const adapters = createAllAdapters2();
52471
52471
  return buildDefaultModelSources(adapters, { includeOpenRouter });
52472
52472
  }
@@ -56519,4 +56519,4 @@ export {
56519
56519
  startPipelineEventBridge,
56520
56520
  shutdownPipelineEventBridge
56521
56521
  };
56522
- //# sourceMappingURL=chunk-6U3KJJRM.js.map
56522
+ //# sourceMappingURL=chunk-RHLWNHKX.js.map