nexus-agents 2.63.0 → 2.63.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (104) hide show
  1. package/dist/{adaptive-memory-TSZEJUJC.js → adaptive-memory-2UIPH67R.js} +5 -4
  2. package/dist/{chunk-JKDHWOQL.js → chunk-46S665SD.js} +6 -6
  3. package/dist/{chunk-FMFQJLMR.js → chunk-C3FCZKNW.js} +19 -20
  4. package/dist/chunk-C3FCZKNW.js.map +1 -0
  5. package/dist/{chunk-PTGBJFSD.js → chunk-CDWQP3UC.js} +3 -3
  6. package/dist/{chunk-QGZBCD2A.js → chunk-EBFXDM3P.js} +2 -2
  7. package/dist/{chunk-GMOGKX4E.js → chunk-ETZULQ7Z.js} +2 -2
  8. package/dist/{chunk-R2Y57PM3.js → chunk-FAUHVWYZ.js} +2 -2
  9. package/dist/{chunk-H43PABG4.js → chunk-FHFNOMNK.js} +2 -2
  10. package/dist/{chunk-EDGG3RQE.js → chunk-FTWGBV7S.js} +2 -2
  11. package/dist/{chunk-7Y36JLES.js → chunk-I37IQ26H.js} +2 -2
  12. package/dist/{chunk-XEMRMZUN.js → chunk-KLZHA5KA.js} +4 -4
  13. package/dist/{chunk-TFEFN37P.js → chunk-KVZNQWWI.js} +2 -2
  14. package/dist/chunk-LJT65EA7.js +32 -0
  15. package/dist/chunk-LJT65EA7.js.map +1 -0
  16. package/dist/{chunk-6QU4DJYW.js → chunk-MSFUOGN4.js} +2 -2
  17. package/dist/{chunk-YU4NABXM.js → chunk-NF5KOUKM.js} +2 -2
  18. package/dist/{chunk-TC46TRLR.js → chunk-PB2EXTSV.js} +2 -2
  19. package/dist/{chunk-V5CGWMYL.js → chunk-QAOI6EIU.js} +2 -2
  20. package/dist/{chunk-AFSIP6JH.js → chunk-RCQZMJBZ.js} +3 -3
  21. package/dist/{chunk-FEWWXGFE.js → chunk-RIMON2SA.js} +29 -28
  22. package/dist/{chunk-FEWWXGFE.js.map → chunk-RIMON2SA.js.map} +1 -1
  23. package/dist/{chunk-4G7MSCIK.js → chunk-SWF3WIP4.js} +176 -179
  24. package/dist/{chunk-4G7MSCIK.js.map → chunk-SWF3WIP4.js.map} +1 -1
  25. package/dist/{chunk-EZXOJZYE.js → chunk-UCQTXKTS.js} +2 -2
  26. package/dist/{chunk-K7EA5OV4.js → chunk-UDKYZ7CS.js} +2 -2
  27. package/dist/{chunk-7C32M23X.js → chunk-UDP5MKHK.js} +4 -4
  28. package/dist/{chunk-YQAOMDR2.js → chunk-ZC4KHPRL.js} +3 -3
  29. package/dist/cli-circuit-breaker-5E6OWOMI.js +14 -0
  30. package/dist/cli.js +32 -32
  31. package/dist/{composite-router-A7URDW4X.js → composite-router-FC3H7NKN.js} +4 -3
  32. package/dist/{consensus-vote-PRLGGUNY.js → consensus-vote-2ZCR7P3T.js} +11 -11
  33. package/dist/doctor-deep-X3YCUM4Q.js +13 -0
  34. package/dist/expert-bridge-R6FQWUHB.js +11 -0
  35. package/dist/factory-7DJA2CIL.js +15 -0
  36. package/dist/{factory-6MT5VKI3.js → factory-BOXBN4ZS.js} +6 -5
  37. package/dist/index.js +43 -45
  38. package/dist/index.js.map +1 -1
  39. package/dist/issue-triage-DGDKQQTD.js +16 -0
  40. package/dist/learning-persistence-FILWP3IR.js +17 -0
  41. package/dist/mcp-config-CHS2ZC42.js +13 -0
  42. package/dist/{mobimem-QDBP37H7.js → mobimem-NO7I2Y4O.js} +4 -3
  43. package/dist/{registry-command-TTXAUCOK.js → registry-command-ZO75YQJG.js} +9 -11
  44. package/dist/{registry-command-TTXAUCOK.js.map → registry-command-ZO75YQJG.js.map} +1 -1
  45. package/dist/{repo-security-plan-C3LLE3Z7.js → repo-security-plan-BZ3WOIEZ.js} +5 -4
  46. package/dist/research-helpers-synthesize-SH34FJIE.js +12 -0
  47. package/dist/{routing-memory-W3YWMLJM.js → routing-memory-SALB3DZI.js} +4 -3
  48. package/dist/{session-memory-DWF5Z2LC.js → session-memory-IOXXN6XA.js} +5 -4
  49. package/dist/{setup-command-QKAVRVLV.js → setup-command-WTVF4YEJ.js} +10 -10
  50. package/dist/setup-config-FYRXUWQH.js +11 -0
  51. package/dist/{setup-custom-api-CSB26HWD.js → setup-custom-api-VAFP4X43.js} +6 -5
  52. package/dist/{setup-custom-api-CSB26HWD.js.map → setup-custom-api-VAFP4X43.js.map} +1 -1
  53. package/dist/{weather-report-YQSLX4MS.js → weather-report-SBJRXFTW.js} +4 -3
  54. package/package.json +1 -1
  55. package/dist/chunk-CLYZ7FWP.js +0 -30
  56. package/dist/chunk-CLYZ7FWP.js.map +0 -1
  57. package/dist/chunk-FMFQJLMR.js.map +0 -1
  58. package/dist/cli-circuit-breaker-SL73NWX2.js +0 -13
  59. package/dist/doctor-deep-VN6KMUCG.js +0 -12
  60. package/dist/expert-bridge-BHTUNALT.js +0 -10
  61. package/dist/factory-FA7WDPZW.js +0 -14
  62. package/dist/issue-triage-YYTE6KTC.js +0 -15
  63. package/dist/learning-persistence-WMWZJZ35.js +0 -16
  64. package/dist/mcp-config-34XMRM64.js +0 -12
  65. package/dist/research-helpers-synthesize-NVQIWLQL.js +0 -11
  66. package/dist/setup-config-JA5IX53Q.js +0 -10
  67. /package/dist/{adaptive-memory-TSZEJUJC.js.map → adaptive-memory-2UIPH67R.js.map} +0 -0
  68. /package/dist/{chunk-JKDHWOQL.js.map → chunk-46S665SD.js.map} +0 -0
  69. /package/dist/{chunk-PTGBJFSD.js.map → chunk-CDWQP3UC.js.map} +0 -0
  70. /package/dist/{chunk-QGZBCD2A.js.map → chunk-EBFXDM3P.js.map} +0 -0
  71. /package/dist/{chunk-GMOGKX4E.js.map → chunk-ETZULQ7Z.js.map} +0 -0
  72. /package/dist/{chunk-R2Y57PM3.js.map → chunk-FAUHVWYZ.js.map} +0 -0
  73. /package/dist/{chunk-H43PABG4.js.map → chunk-FHFNOMNK.js.map} +0 -0
  74. /package/dist/{chunk-EDGG3RQE.js.map → chunk-FTWGBV7S.js.map} +0 -0
  75. /package/dist/{chunk-7Y36JLES.js.map → chunk-I37IQ26H.js.map} +0 -0
  76. /package/dist/{chunk-XEMRMZUN.js.map → chunk-KLZHA5KA.js.map} +0 -0
  77. /package/dist/{chunk-TFEFN37P.js.map → chunk-KVZNQWWI.js.map} +0 -0
  78. /package/dist/{chunk-6QU4DJYW.js.map → chunk-MSFUOGN4.js.map} +0 -0
  79. /package/dist/{chunk-YU4NABXM.js.map → chunk-NF5KOUKM.js.map} +0 -0
  80. /package/dist/{chunk-TC46TRLR.js.map → chunk-PB2EXTSV.js.map} +0 -0
  81. /package/dist/{chunk-V5CGWMYL.js.map → chunk-QAOI6EIU.js.map} +0 -0
  82. /package/dist/{chunk-AFSIP6JH.js.map → chunk-RCQZMJBZ.js.map} +0 -0
  83. /package/dist/{chunk-EZXOJZYE.js.map → chunk-UCQTXKTS.js.map} +0 -0
  84. /package/dist/{chunk-K7EA5OV4.js.map → chunk-UDKYZ7CS.js.map} +0 -0
  85. /package/dist/{chunk-7C32M23X.js.map → chunk-UDP5MKHK.js.map} +0 -0
  86. /package/dist/{chunk-YQAOMDR2.js.map → chunk-ZC4KHPRL.js.map} +0 -0
  87. /package/dist/{cli-circuit-breaker-SL73NWX2.js.map → cli-circuit-breaker-5E6OWOMI.js.map} +0 -0
  88. /package/dist/{composite-router-A7URDW4X.js.map → composite-router-FC3H7NKN.js.map} +0 -0
  89. /package/dist/{consensus-vote-PRLGGUNY.js.map → consensus-vote-2ZCR7P3T.js.map} +0 -0
  90. /package/dist/{doctor-deep-VN6KMUCG.js.map → doctor-deep-X3YCUM4Q.js.map} +0 -0
  91. /package/dist/{expert-bridge-BHTUNALT.js.map → expert-bridge-R6FQWUHB.js.map} +0 -0
  92. /package/dist/{factory-6MT5VKI3.js.map → factory-7DJA2CIL.js.map} +0 -0
  93. /package/dist/{factory-FA7WDPZW.js.map → factory-BOXBN4ZS.js.map} +0 -0
  94. /package/dist/{issue-triage-YYTE6KTC.js.map → issue-triage-DGDKQQTD.js.map} +0 -0
  95. /package/dist/{learning-persistence-WMWZJZ35.js.map → learning-persistence-FILWP3IR.js.map} +0 -0
  96. /package/dist/{mcp-config-34XMRM64.js.map → mcp-config-CHS2ZC42.js.map} +0 -0
  97. /package/dist/{mobimem-QDBP37H7.js.map → mobimem-NO7I2Y4O.js.map} +0 -0
  98. /package/dist/{repo-security-plan-C3LLE3Z7.js.map → repo-security-plan-BZ3WOIEZ.js.map} +0 -0
  99. /package/dist/{research-helpers-synthesize-NVQIWLQL.js.map → research-helpers-synthesize-SH34FJIE.js.map} +0 -0
  100. /package/dist/{routing-memory-W3YWMLJM.js.map → routing-memory-SALB3DZI.js.map} +0 -0
  101. /package/dist/{session-memory-DWF5Z2LC.js.map → session-memory-IOXXN6XA.js.map} +0 -0
  102. /package/dist/{setup-command-QKAVRVLV.js.map → setup-command-WTVF4YEJ.js.map} +0 -0
  103. /package/dist/{setup-config-JA5IX53Q.js.map → setup-config-FYRXUWQH.js.map} +0 -0
  104. /package/dist/{weather-report-YQSLX4MS.js.map → weather-report-SBJRXFTW.js.map} +0 -0
@@ -2,13 +2,13 @@ import {
2
2
  CircuitBreakerRegistry,
3
3
  CircuitError,
4
4
  mapCliErrorToCategory
5
- } from "./chunk-GMOGKX4E.js";
5
+ } from "./chunk-ETZULQ7Z.js";
6
6
  import {
7
7
  createLogger,
8
8
  err,
9
9
  getTimeProvider,
10
10
  ok
11
- } from "./chunk-R2Y57PM3.js";
11
+ } from "./chunk-FAUHVWYZ.js";
12
12
 
13
13
  // src/cli-adapters/fallback-chains.ts
14
14
  import { z } from "zod";
@@ -192,4 +192,4 @@ export {
192
192
  CliCircuitBreakerIntegration,
193
193
  createCliCircuitBreakerIntegration
194
194
  };
195
- //# sourceMappingURL=chunk-PTGBJFSD.js.map
195
+ //# sourceMappingURL=chunk-CDWQP3UC.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  getErrorMessage
3
- } from "./chunk-R2Y57PM3.js";
3
+ } from "./chunk-FAUHVWYZ.js";
4
4
 
5
5
  // src/cli/setup-config.ts
6
6
  import { copyFileSync, existsSync, writeFileSync } from "fs";
@@ -74,4 +74,4 @@ function ensureBackup(outputPath) {
74
74
  export {
75
75
  runConfigInitSync
76
76
  };
77
- //# sourceMappingURL=chunk-QGZBCD2A.js.map
77
+ //# sourceMappingURL=chunk-EBFXDM3P.js.map
@@ -5,7 +5,7 @@ import {
5
5
  getErrorMessage,
6
6
  getTimeProvider,
7
7
  ok
8
- } from "./chunk-R2Y57PM3.js";
8
+ } from "./chunk-FAUHVWYZ.js";
9
9
 
10
10
  // src/cli-adapters/circuit-breaker-types.ts
11
11
  var CircuitErrorCode = {
@@ -353,4 +353,4 @@ export {
353
353
  CircuitBreakerRegistry,
354
354
  mapCliErrorToCategory
355
355
  };
356
- //# sourceMappingURL=chunk-GMOGKX4E.js.map
356
+ //# sourceMappingURL=chunk-ETZULQ7Z.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  isPersistenceEnabled
3
- } from "./chunk-CLYZ7FWP.js";
3
+ } from "./chunk-LJT65EA7.js";
4
4
  import {
5
5
  __require
6
6
  } from "./chunk-UP2VWCW5.js";
@@ -11127,4 +11127,4 @@ export {
11127
11127
  ParseError,
11128
11128
  OrchestratorError
11129
11129
  };
11130
- //# sourceMappingURL=chunk-R2Y57PM3.js.map
11130
+ //# sourceMappingURL=chunk-FAUHVWYZ.js.map
@@ -5,7 +5,7 @@ import {
5
5
  MCP_TIMEOUTS,
6
6
  TEST_TIMEOUTS,
7
7
  WORKFLOW_TIMEOUTS
8
- } from "./chunk-R2Y57PM3.js";
8
+ } from "./chunk-FAUHVWYZ.js";
9
9
 
10
10
  // src/config/defaults-env.ts
11
11
  function parseIntEnv(envKey, fallback) {
@@ -399,4 +399,4 @@ export {
399
399
  CUSTOM_API_DEFAULT_MODEL,
400
400
  DEFAULTS
401
401
  };
402
- //# sourceMappingURL=chunk-H43PABG4.js.map
402
+ //# sourceMappingURL=chunk-FHFNOMNK.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  createLogger
3
- } from "./chunk-R2Y57PM3.js";
3
+ } from "./chunk-FAUHVWYZ.js";
4
4
 
5
5
  // src/swe-bench/mcp-config.ts
6
6
  import { writeFile, mkdtemp, rm } from "fs/promises";
@@ -58,4 +58,4 @@ export {
58
58
  generateMcpConfig,
59
59
  getDefaultAllowedTools
60
60
  };
61
- //# sourceMappingURL=chunk-EDGG3RQE.js.map
61
+ //# sourceMappingURL=chunk-FTWGBV7S.js.map
@@ -4,7 +4,7 @@ import {
4
4
  getErrorMessage,
5
5
  getTimeProvider,
6
6
  ok
7
- } from "./chunk-R2Y57PM3.js";
7
+ } from "./chunk-FAUHVWYZ.js";
8
8
 
9
9
  // src/context/session-memory.ts
10
10
  import * as fs from "fs";
@@ -351,4 +351,4 @@ export {
351
351
  SessionMemory,
352
352
  createSessionMemory
353
353
  };
354
- //# sourceMappingURL=chunk-7Y36JLES.js.map
354
+ //# sourceMappingURL=chunk-I37IQ26H.js.map
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  resolveToken
3
- } from "./chunk-EZXOJZYE.js";
3
+ } from "./chunk-UCQTXKTS.js";
4
4
  import {
5
5
  GitHubProvider,
6
6
  ScmError
7
- } from "./chunk-K7EA5OV4.js";
7
+ } from "./chunk-UDKYZ7CS.js";
8
8
  import {
9
9
  err,
10
10
  ok
11
- } from "./chunk-R2Y57PM3.js";
11
+ } from "./chunk-FAUHVWYZ.js";
12
12
 
13
13
  // src/scm/factory.ts
14
14
  async function createScmProvider(config) {
@@ -41,4 +41,4 @@ export {
41
41
  createScmProvider,
42
42
  createGitHubProvider
43
43
  };
44
- //# sourceMappingURL=chunk-XEMRMZUN.js.map
44
+ //# sourceMappingURL=chunk-KLZHA5KA.js.map
@@ -11,7 +11,7 @@ import {
11
11
  formatZodError,
12
12
  getTimeProvider,
13
13
  ok
14
- } from "./chunk-R2Y57PM3.js";
14
+ } from "./chunk-FAUHVWYZ.js";
15
15
 
16
16
  // src/context/memory-backend-types.ts
17
17
  import { z } from "zod";
@@ -941,4 +941,4 @@ export {
941
941
  AdaptiveMemoryBackend,
942
942
  createAdaptiveMemory
943
943
  };
944
- //# sourceMappingURL=chunk-TFEFN37P.js.map
944
+ //# sourceMappingURL=chunk-KVZNQWWI.js.map
@@ -0,0 +1,32 @@
1
+ import {
2
+ getNexusDataDir
3
+ } from "./chunk-FDNWRZNJ.js";
4
+
5
+ // src/config/learning-persistence.ts
6
+ import { mkdirSync } from "fs";
7
+ import { join } from "path";
8
+ function getLearningDir() {
9
+ return join(getNexusDataDir(), "learning");
10
+ }
11
+ function getOutcomesFile() {
12
+ return join(getLearningDir(), "outcomes.jsonl");
13
+ }
14
+ function getRulesFile() {
15
+ return join(getLearningDir(), "rules.json");
16
+ }
17
+ var DIR_MODE = 448;
18
+ function isPersistenceEnabled() {
19
+ return process.env["NEXUS_PERSIST_LEARNING"] !== "false";
20
+ }
21
+ function ensureLearningDir(dir) {
22
+ mkdirSync(dir ?? getLearningDir(), { recursive: true, mode: DIR_MODE });
23
+ }
24
+
25
+ export {
26
+ getLearningDir,
27
+ getOutcomesFile,
28
+ getRulesFile,
29
+ isPersistenceEnabled,
30
+ ensureLearningDir
31
+ };
32
+ //# sourceMappingURL=chunk-LJT65EA7.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';\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// 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=false to disable.\n */\nexport function isPersistenceEnabled(): boolean {\n return process.env['NEXUS_PERSIST_LEARNING'] !== 'false';\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;AAcd,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;AAOA,IAAM,WAAW;AAgBV,SAAS,uBAAgC;AAC9C,SAAO,QAAQ,IAAI,wBAAwB,MAAM;AACnD;AAGO,SAAS,kBAAkB,KAAoB;AACpD,YAAU,OAAO,eAAe,GAAG,EAAE,WAAW,MAAM,MAAM,SAAS,CAAC;AACxE;","names":[]}
@@ -2,7 +2,7 @@ import {
2
2
  TASK_CATEGORIES,
3
3
  getAdaptiveBonus,
4
4
  getOutcomeStore
5
- } from "./chunk-R2Y57PM3.js";
5
+ } from "./chunk-FAUHVWYZ.js";
6
6
 
7
7
  // src/cli/doctor-deep.ts
8
8
  var CLI_NAMES = ["claude", "gemini", "codex", "opencode"];
@@ -106,4 +106,4 @@ export {
106
106
  runDeepDiagnostics,
107
107
  formatDeepDiagnostics
108
108
  };
109
- //# sourceMappingURL=chunk-6QU4DJYW.js.map
109
+ //# sourceMappingURL=chunk-MSFUOGN4.js.map
@@ -2,7 +2,7 @@ import {
2
2
  ConfigError,
3
3
  err,
4
4
  ok
5
- } from "./chunk-R2Y57PM3.js";
5
+ } from "./chunk-FAUHVWYZ.js";
6
6
 
7
7
  // src/adapters/sdk/types.ts
8
8
  var PROVIDER_ENV_KEYS = {
@@ -117,4 +117,4 @@ export {
117
117
  CUSTOM_API_ALLOW_PRIVATE_ENV,
118
118
  validateCustomApiBaseUrl
119
119
  };
120
- //# sourceMappingURL=chunk-YU4NABXM.js.map
120
+ //# sourceMappingURL=chunk-NF5KOUKM.js.map
@@ -5,7 +5,7 @@ import {
5
5
  ParseError,
6
6
  SecurityError,
7
7
  getErrorMessage
8
- } from "./chunk-R2Y57PM3.js";
8
+ } from "./chunk-FAUHVWYZ.js";
9
9
 
10
10
  // src/cli/research-helpers-io.ts
11
11
  import * as fs from "fs/promises";
@@ -918,4 +918,4 @@ export {
918
918
  normalizeTopicToCanonical,
919
919
  synthesizeResearch
920
920
  };
921
- //# sourceMappingURL=chunk-TC46TRLR.js.map
921
+ //# sourceMappingURL=chunk-PB2EXTSV.js.map
@@ -4,7 +4,7 @@ import {
4
4
  import {
5
5
  createLogger,
6
6
  getTimeProvider
7
- } from "./chunk-R2Y57PM3.js";
7
+ } from "./chunk-FAUHVWYZ.js";
8
8
 
9
9
  // src/mcp/tools/scanner-registry-fetcher.ts
10
10
  import { z } from "zod";
@@ -698,4 +698,4 @@ export {
698
698
  generateSecurityPlan,
699
699
  buildPlanFromAnalysis
700
700
  };
701
- //# sourceMappingURL=chunk-V5CGWMYL.js.map
701
+ //# sourceMappingURL=chunk-QAOI6EIU.js.map
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  GitHubProvider,
3
3
  ScmError
4
- } from "./chunk-K7EA5OV4.js";
4
+ } from "./chunk-UDKYZ7CS.js";
5
5
  import {
6
6
  CACHE_TIMEOUTS,
7
7
  createLogger,
8
8
  err,
9
9
  getTimeProvider,
10
10
  ok
11
- } from "./chunk-R2Y57PM3.js";
11
+ } from "./chunk-FAUHVWYZ.js";
12
12
 
13
13
  // src/security/trust-types.ts
14
14
  import { z } from "zod";
@@ -1658,4 +1658,4 @@ export {
1658
1658
  IssueTriage,
1659
1659
  createIssueTriage
1660
1660
  };
1661
- //# sourceMappingURL=chunk-AFSIP6JH.js.map
1661
+ //# sourceMappingURL=chunk-RCQZMJBZ.js.map
@@ -2,16 +2,21 @@ import {
2
2
  CUSTOM_API_BASE_URL_ENV,
3
3
  PROVIDER_ENV_KEYS,
4
4
  validateCustomApiBaseUrl
5
- } from "./chunk-YU4NABXM.js";
5
+ } from "./chunk-NF5KOUKM.js";
6
6
  import {
7
7
  CUSTOM_API_DEFAULT_MODEL
8
- } from "./chunk-H43PABG4.js";
8
+ } from "./chunk-FHFNOMNK.js";
9
9
  import {
10
- nexusDataPath
11
- } from "./chunk-FDNWRZNJ.js";
10
+ createCliAdapter,
11
+ createCliDetectionCache,
12
+ delay,
13
+ getAvailableClis,
14
+ isCliAvailable,
15
+ withTimeout
16
+ } from "./chunk-ZC4KHPRL.js";
12
17
  import {
13
18
  SessionMemory
14
- } from "./chunk-7Y36JLES.js";
19
+ } from "./chunk-I37IQ26H.js";
15
20
  import {
16
21
  AdaptiveMemoryBackend,
17
22
  HybridMemoryBackend,
@@ -20,19 +25,11 @@ import {
20
25
  getMemoryEntry,
21
26
  memoryExists,
22
27
  memoryRowToEntry
23
- } from "./chunk-TFEFN37P.js";
28
+ } from "./chunk-KVZNQWWI.js";
24
29
  import {
25
30
  stringifyValue,
26
31
  tokenizeFiltered
27
32
  } from "./chunk-633WH2ML.js";
28
- import {
29
- createCliAdapter,
30
- createCliDetectionCache,
31
- delay,
32
- getAvailableClis,
33
- isCliAvailable,
34
- withTimeout
35
- } from "./chunk-YQAOMDR2.js";
36
33
  import {
37
34
  AgentError,
38
35
  CACHE_TIMEOUTS,
@@ -79,11 +76,14 @@ import {
79
76
  resolveVoteTimeout,
80
77
  toRateLimitError,
81
78
  validateTimeout
82
- } from "./chunk-R2Y57PM3.js";
79
+ } from "./chunk-FAUHVWYZ.js";
83
80
  import {
84
- OUTCOMES_FILE,
85
- ensureLearningDir
86
- } from "./chunk-CLYZ7FWP.js";
81
+ ensureLearningDir,
82
+ getOutcomesFile
83
+ } from "./chunk-LJT65EA7.js";
84
+ import {
85
+ nexusDataPath
86
+ } from "./chunk-FDNWRZNJ.js";
87
87
 
88
88
  // src/mcp/tools/consensus-vote.ts
89
89
  import { z as z19 } from "zod";
@@ -10345,7 +10345,6 @@ var AgenticMemoryBackend = class {
10345
10345
 
10346
10346
  // src/context/belief-memory-persistence.ts
10347
10347
  import * as fs2 from "fs";
10348
- import * as os from "os";
10349
10348
  import * as path from "path";
10350
10349
 
10351
10350
  // src/context/belief-persistence-types.ts
@@ -10424,7 +10423,9 @@ var BeliefSnapshotSchema = z16.object({
10424
10423
  });
10425
10424
 
10426
10425
  // src/context/belief-memory-persistence.ts
10427
- var BELIEFS_DIR = path.join(os.homedir(), ".nexus-agents", "memory", "beliefs");
10426
+ function getBeliefsDir() {
10427
+ return nexusDataPath("memory", "beliefs");
10428
+ }
10428
10429
  var MAX_SNAPSHOT_FILES = 10;
10429
10430
  var SNAPSHOT_VERSION = 1;
10430
10431
  function optProp(key, value) {
@@ -10602,11 +10603,11 @@ function hydrateSnapshot(snapshot) {
10602
10603
  };
10603
10604
  }
10604
10605
  function ensureBeliefsDir() {
10605
- if (!fs2.existsSync(BELIEFS_DIR)) fs2.mkdirSync(BELIEFS_DIR, { recursive: true });
10606
+ if (!fs2.existsSync(getBeliefsDir())) fs2.mkdirSync(getBeliefsDir(), { recursive: true });
10606
10607
  }
10607
10608
  function getSnapshotFiles() {
10608
10609
  try {
10609
- return fs2.readdirSync(BELIEFS_DIR).filter((f) => f.startsWith("beliefs-") && f.endsWith(".json")).sort().reverse();
10610
+ return fs2.readdirSync(getBeliefsDir()).filter((f) => f.startsWith("beliefs-") && f.endsWith(".json")).sort().reverse();
10610
10611
  } catch {
10611
10612
  return [];
10612
10613
  }
@@ -10616,7 +10617,7 @@ function enforceRetention(logger11) {
10616
10617
  const files = getSnapshotFiles();
10617
10618
  if (files.length <= MAX_SNAPSHOT_FILES) return;
10618
10619
  const toDelete = files.slice(MAX_SNAPSHOT_FILES);
10619
- for (const file of toDelete) fs2.unlinkSync(path.join(BELIEFS_DIR, file));
10620
+ for (const file of toDelete) fs2.unlinkSync(path.join(getBeliefsDir(), file));
10620
10621
  logger11.debug("Belief snapshot retention enforced", {
10621
10622
  kept: MAX_SNAPSHOT_FILES,
10622
10623
  deleted: toDelete.length
@@ -10633,7 +10634,7 @@ function saveBeliefSnapshot(data, logger11) {
10633
10634
  const snapshot = createSnapshot(data);
10634
10635
  const timestamp = (/* @__PURE__ */ new Date()).toISOString().replace(/[:.]/g, "-");
10635
10636
  const filename = `beliefs-${timestamp}.json`;
10636
- const filepath = path.join(BELIEFS_DIR, filename);
10637
+ const filepath = path.join(getBeliefsDir(), filename);
10637
10638
  fs2.writeFileSync(filepath, JSON.stringify(snapshot, null, 2), "utf-8");
10638
10639
  logger11.info("Belief memory snapshot saved", { filename, beliefs: snapshot.beliefs.length });
10639
10640
  enforceRetention(logger11);
@@ -10653,7 +10654,7 @@ function loadBeliefSnapshot(logger11) {
10653
10654
  }
10654
10655
  for (const file of files.slice(0, 3)) {
10655
10656
  try {
10656
- const filepath = path.join(BELIEFS_DIR, file);
10657
+ const filepath = path.join(getBeliefsDir(), file);
10657
10658
  const raw = JSON.parse(fs2.readFileSync(filepath, "utf-8"));
10658
10659
  const validation = BeliefSnapshotSchema.safeParse(raw);
10659
10660
  if (!validation.success) {
@@ -12493,7 +12494,7 @@ var PersistentOutcomeStore = class extends OutcomeStore {
12493
12494
  logger;
12494
12495
  constructor(config, logger11) {
12495
12496
  super(config);
12496
- this.filePath = config?.filePath ?? OUTCOMES_FILE;
12497
+ this.filePath = config?.filePath ?? getOutcomesFile();
12497
12498
  this.logger = logger11 ?? createLogger({ component: "PersistentOutcomeStore" });
12498
12499
  const dataDir = config?.dataDir;
12499
12500
  ensureLearningDir(dataDir);
@@ -12855,7 +12856,7 @@ async function processVotesWithCascade(votes, opts) {
12855
12856
  var CONTRARIAN_ESCALATION_THRESHOLD = 0.8;
12856
12857
  async function runContrarianCheck(proposal, log) {
12857
12858
  try {
12858
- const { executeExpert } = await import("./expert-bridge-BHTUNALT.js");
12859
+ const { executeExpert } = await import("./expert-bridge-R6FQWUHB.js");
12859
12860
  const prompt = [
12860
12861
  "You are a contrarian analyst. Your job is to find reasons this proposal should be REJECTED.",
12861
12862
  "Look for: YAGNI (not needed), MISALIGNED (wrong tech/architecture), SECURITY_RISK, SCOPE_CREEP.",
@@ -13228,4 +13229,4 @@ export {
13228
13229
  CONSENSUS_VOTE_OUTPUT_SCHEMA,
13229
13230
  registerConsensusVoteTool
13230
13231
  };
13231
- //# sourceMappingURL=chunk-FEWWXGFE.js.map
13232
+ //# sourceMappingURL=chunk-RIMON2SA.js.map