nexus-agents 2.41.0 → 2.45.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (81) hide show
  1. package/dist/{adaptive-memory-VPXQL3EC.js → adaptive-memory-KY4NLMYE.js} +3 -3
  2. package/dist/{chunk-7KQOZERX.js → chunk-2TV2R2V4.js} +2 -2
  3. package/dist/{chunk-XZ4UAABD.js → chunk-364SPDIG.js} +3 -3
  4. package/dist/{chunk-CNQ5WLHD.js → chunk-4H72SYYW.js} +6 -6
  5. package/dist/{chunk-MBMXVGUJ.js → chunk-5XX5ROV6.js} +2 -2
  6. package/dist/{chunk-UH3RCHXZ.js → chunk-6ETRQCTX.js} +2 -2
  7. package/dist/{chunk-7FZV43MB.js → chunk-BMDTDKJK.js} +4 -4
  8. package/dist/{chunk-66QFTVYA.js → chunk-E24JT23A.js} +3 -3
  9. package/dist/{chunk-SYS7LUWC.js → chunk-KC3NUWZT.js} +6 -6
  10. package/dist/{chunk-ZU7CZWMO.js → chunk-MWLAUEG5.js} +2 -2
  11. package/dist/{chunk-BFRD2E7X.js → chunk-MWX2G6ZJ.js} +5 -1
  12. package/dist/{chunk-BFRD2E7X.js.map → chunk-MWX2G6ZJ.js.map} +1 -1
  13. package/dist/{chunk-EWWFRAJI.js → chunk-QFDXRHNX.js} +2 -2
  14. package/dist/{chunk-NQSX4YMA.js → chunk-SOXQTSV6.js} +2 -2
  15. package/dist/{chunk-B422NMVP.js → chunk-ULDKSIS7.js} +2 -2
  16. package/dist/{chunk-65MWGQ7R.js → chunk-WFYCKG4J.js} +99 -26
  17. package/dist/chunk-WFYCKG4J.js.map +1 -0
  18. package/dist/{chunk-WPO7E2G3.js → chunk-XHQMMRW5.js} +4 -4
  19. package/dist/{chunk-IXG4WPEZ.js → chunk-XXHVHW4K.js} +3 -3
  20. package/dist/{chunk-6VLI37KP.js → chunk-YDCRFMFQ.js} +2 -2
  21. package/dist/{chunk-ZLLHK26B.js → chunk-YR73KTXC.js} +6 -6
  22. package/dist/{chunk-FEONLEBT.js → chunk-YRPOXUXI.js} +2 -2
  23. package/dist/{chunk-5DSQLHVJ.js → chunk-YT52YZGW.js} +2 -2
  24. package/dist/{cli-circuit-breaker-ECO3WMZ5.js → cli-circuit-breaker-OX4HUAVY.js} +4 -4
  25. package/dist/cli.js +20 -20
  26. package/dist/{composite-router-K47YCABM.js → composite-router-UZZLC7PL.js} +2 -2
  27. package/dist/{consensus-vote-TG3XFULT.js → consensus-vote-N5RRFYER.js} +7 -7
  28. package/dist/{doctor-deep-33EDFINE.js → doctor-deep-POD6ZFJO.js} +3 -3
  29. package/dist/{expert-bridge-VDNOTL7I.js → expert-bridge-F4WTPCTH.js} +3 -3
  30. package/dist/{factory-WH7M7GDL.js → factory-GIUXH64S.js} +5 -5
  31. package/dist/{factory-RYP7KRFT.js → factory-L6MS5P3G.js} +4 -4
  32. package/dist/index.js +18 -18
  33. package/dist/{issue-triage-B2X5TTIW.js → issue-triage-VLP2PXR6.js} +4 -4
  34. package/dist/{mcp-config-HU4CKV2F.js → mcp-config-HPDTPYEW.js} +3 -3
  35. package/dist/{mobimem-3CY36FRY.js → mobimem-3K22YOIL.js} +2 -2
  36. package/dist/{repo-security-plan-PIAV5MVL.js → repo-security-plan-B7R2VJVG.js} +3 -3
  37. package/dist/research-helpers-synthesize-PHXJELYZ.js +10 -0
  38. package/dist/{routing-memory-767SNGSY.js → routing-memory-FWHM4VEK.js} +2 -2
  39. package/dist/{session-memory-PXCHCJJP.js → session-memory-7FJYLKYG.js} +3 -3
  40. package/dist/{setup-command-BJEGQZ33.js → setup-command-GX4Y4B5U.js} +7 -7
  41. package/dist/{setup-config-QYB5ULQ2.js → setup-config-HEPDA5LF.js} +3 -3
  42. package/dist/{weather-report-DLCBVZK7.js → weather-report-76ECJETR.js} +2 -2
  43. package/package.json +1 -1
  44. package/dist/chunk-65MWGQ7R.js.map +0 -1
  45. package/dist/research-helpers-synthesize-DARFXHKG.js +0 -10
  46. /package/dist/{adaptive-memory-VPXQL3EC.js.map → adaptive-memory-KY4NLMYE.js.map} +0 -0
  47. /package/dist/{chunk-7KQOZERX.js.map → chunk-2TV2R2V4.js.map} +0 -0
  48. /package/dist/{chunk-XZ4UAABD.js.map → chunk-364SPDIG.js.map} +0 -0
  49. /package/dist/{chunk-CNQ5WLHD.js.map → chunk-4H72SYYW.js.map} +0 -0
  50. /package/dist/{chunk-MBMXVGUJ.js.map → chunk-5XX5ROV6.js.map} +0 -0
  51. /package/dist/{chunk-UH3RCHXZ.js.map → chunk-6ETRQCTX.js.map} +0 -0
  52. /package/dist/{chunk-7FZV43MB.js.map → chunk-BMDTDKJK.js.map} +0 -0
  53. /package/dist/{chunk-66QFTVYA.js.map → chunk-E24JT23A.js.map} +0 -0
  54. /package/dist/{chunk-SYS7LUWC.js.map → chunk-KC3NUWZT.js.map} +0 -0
  55. /package/dist/{chunk-ZU7CZWMO.js.map → chunk-MWLAUEG5.js.map} +0 -0
  56. /package/dist/{chunk-EWWFRAJI.js.map → chunk-QFDXRHNX.js.map} +0 -0
  57. /package/dist/{chunk-NQSX4YMA.js.map → chunk-SOXQTSV6.js.map} +0 -0
  58. /package/dist/{chunk-B422NMVP.js.map → chunk-ULDKSIS7.js.map} +0 -0
  59. /package/dist/{chunk-WPO7E2G3.js.map → chunk-XHQMMRW5.js.map} +0 -0
  60. /package/dist/{chunk-IXG4WPEZ.js.map → chunk-XXHVHW4K.js.map} +0 -0
  61. /package/dist/{chunk-6VLI37KP.js.map → chunk-YDCRFMFQ.js.map} +0 -0
  62. /package/dist/{chunk-ZLLHK26B.js.map → chunk-YR73KTXC.js.map} +0 -0
  63. /package/dist/{chunk-FEONLEBT.js.map → chunk-YRPOXUXI.js.map} +0 -0
  64. /package/dist/{chunk-5DSQLHVJ.js.map → chunk-YT52YZGW.js.map} +0 -0
  65. /package/dist/{cli-circuit-breaker-ECO3WMZ5.js.map → cli-circuit-breaker-OX4HUAVY.js.map} +0 -0
  66. /package/dist/{composite-router-K47YCABM.js.map → composite-router-UZZLC7PL.js.map} +0 -0
  67. /package/dist/{consensus-vote-TG3XFULT.js.map → consensus-vote-N5RRFYER.js.map} +0 -0
  68. /package/dist/{doctor-deep-33EDFINE.js.map → doctor-deep-POD6ZFJO.js.map} +0 -0
  69. /package/dist/{expert-bridge-VDNOTL7I.js.map → expert-bridge-F4WTPCTH.js.map} +0 -0
  70. /package/dist/{factory-RYP7KRFT.js.map → factory-GIUXH64S.js.map} +0 -0
  71. /package/dist/{factory-WH7M7GDL.js.map → factory-L6MS5P3G.js.map} +0 -0
  72. /package/dist/{issue-triage-B2X5TTIW.js.map → issue-triage-VLP2PXR6.js.map} +0 -0
  73. /package/dist/{mcp-config-HU4CKV2F.js.map → mcp-config-HPDTPYEW.js.map} +0 -0
  74. /package/dist/{mobimem-3CY36FRY.js.map → mobimem-3K22YOIL.js.map} +0 -0
  75. /package/dist/{repo-security-plan-PIAV5MVL.js.map → repo-security-plan-B7R2VJVG.js.map} +0 -0
  76. /package/dist/{research-helpers-synthesize-DARFXHKG.js.map → research-helpers-synthesize-PHXJELYZ.js.map} +0 -0
  77. /package/dist/{routing-memory-767SNGSY.js.map → routing-memory-FWHM4VEK.js.map} +0 -0
  78. /package/dist/{session-memory-PXCHCJJP.js.map → session-memory-7FJYLKYG.js.map} +0 -0
  79. /package/dist/{setup-command-BJEGQZ33.js.map → setup-command-GX4Y4B5U.js.map} +0 -0
  80. /package/dist/{setup-config-QYB5ULQ2.js.map → setup-config-HEPDA5LF.js.map} +0 -0
  81. /package/dist/{weather-report-DLCBVZK7.js.map → weather-report-76ECJETR.js.map} +0 -0
@@ -2,7 +2,7 @@ import {
2
2
  createLogger,
3
3
  err,
4
4
  ok
5
- } from "./chunk-BFRD2E7X.js";
5
+ } from "./chunk-MWX2G6ZJ.js";
6
6
 
7
7
  // src/scm/token-resolver.ts
8
8
  import { execFile } from "child_process";
@@ -87,4 +87,4 @@ export {
87
87
  hasToken,
88
88
  getTokenEnvVars
89
89
  };
90
- //# sourceMappingURL=chunk-EWWFRAJI.js.map
90
+ //# sourceMappingURL=chunk-QFDXRHNX.js.map
@@ -3,7 +3,7 @@ import {
3
3
  err,
4
4
  getErrorMessage,
5
5
  ok
6
- } from "./chunk-BFRD2E7X.js";
6
+ } from "./chunk-MWX2G6ZJ.js";
7
7
 
8
8
  // src/scm/types.ts
9
9
  var ScmError = class extends Error {
@@ -243,4 +243,4 @@ export {
243
243
  ScmError,
244
244
  GitHubProvider
245
245
  };
246
- //# sourceMappingURL=chunk-NQSX4YMA.js.map
246
+ //# sourceMappingURL=chunk-SOXQTSV6.js.map
@@ -4,7 +4,7 @@ import {
4
4
  getErrorMessage,
5
5
  getTimeProvider,
6
6
  ok
7
- } from "./chunk-BFRD2E7X.js";
7
+ } from "./chunk-MWX2G6ZJ.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-B422NMVP.js.map
354
+ //# sourceMappingURL=chunk-ULDKSIS7.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  getTokenEnvVars,
3
3
  resolveToken
4
- } from "./chunk-EWWFRAJI.js";
4
+ } from "./chunk-QFDXRHNX.js";
5
5
  import {
6
6
  ClaudeAdapter,
7
7
  DEFAULT_RELEVANCE_CONFIG,
@@ -26,7 +26,7 @@ import {
26
26
  withAccessPolicy,
27
27
  withProgressHeartbeat,
28
28
  wrapToolWithTimeout
29
- } from "./chunk-SYS7LUWC.js";
29
+ } from "./chunk-KC3NUWZT.js";
30
30
  import {
31
31
  REGISTRY_PATH,
32
32
  getProjectRoot,
@@ -36,14 +36,14 @@ import {
36
36
  resolveInsideRoot,
37
37
  savePapersRegistry,
38
38
  synthesizeResearch
39
- } from "./chunk-7KQOZERX.js";
39
+ } from "./chunk-2TV2R2V4.js";
40
40
  import {
41
41
  IssueTriage,
42
42
  sanitizeInput
43
- } from "./chunk-66QFTVYA.js";
43
+ } from "./chunk-E24JT23A.js";
44
44
  import {
45
45
  generateSecurityPlan
46
- } from "./chunk-FEONLEBT.js";
46
+ } from "./chunk-YRPOXUXI.js";
47
47
  import {
48
48
  analyzeGitHubRepo
49
49
  } from "./chunk-BC3M4VLP.js";
@@ -66,14 +66,14 @@ import {
66
66
  import {
67
67
  DEFAULT_TASK_TTL_MS,
68
68
  clampTaskTtl
69
- } from "./chunk-CNQ5WLHD.js";
69
+ } from "./chunk-4H72SYYW.js";
70
70
  import {
71
71
  createSessionMemory
72
- } from "./chunk-B422NMVP.js";
72
+ } from "./chunk-ULDKSIS7.js";
73
73
  import {
74
74
  MemoryImportance,
75
75
  calculateTextJaccardSimilarity
76
- } from "./chunk-5DSQLHVJ.js";
76
+ } from "./chunk-YT52YZGW.js";
77
77
  import {
78
78
  STOPWORDS,
79
79
  capitalize,
@@ -82,13 +82,13 @@ import {
82
82
  } from "./chunk-633WH2ML.js";
83
83
  import {
84
84
  generateMcpConfig
85
- } from "./chunk-UH3RCHXZ.js";
85
+ } from "./chunk-6ETRQCTX.js";
86
86
  import {
87
87
  getFallbackChainForCategory
88
- } from "./chunk-XZ4UAABD.js";
88
+ } from "./chunk-364SPDIG.js";
89
89
  import {
90
90
  executeExpert
91
- } from "./chunk-ZLLHK26B.js";
91
+ } from "./chunk-YR73KTXC.js";
92
92
  import {
93
93
  ClaudeCliAdapter,
94
94
  CliDetectionCache,
@@ -97,7 +97,7 @@ import {
97
97
  getAvailableClis,
98
98
  sleep,
99
99
  withTimeout
100
- } from "./chunk-IXG4WPEZ.js";
100
+ } from "./chunk-XXHVHW4K.js";
101
101
  import {
102
102
  AGENT_ROUTER_TIMEOUTS,
103
103
  API_TIMEOUTS,
@@ -156,6 +156,7 @@ import {
156
156
  getExpertTaskTimeout,
157
157
  getHeartbeatMonitor,
158
158
  getModelCapabilities,
159
+ getModelContextWindow,
159
160
  getOutcomeStore,
160
161
  getOutcomeSummaryText,
161
162
  getPipelineEventBus,
@@ -168,7 +169,7 @@ import {
168
169
  ok,
169
170
  toExpertTaskAnalysisResult,
170
171
  withStep
171
- } from "./chunk-BFRD2E7X.js";
172
+ } from "./chunk-MWX2G6ZJ.js";
172
173
  import {
173
174
  isPersistenceEnabled
174
175
  } from "./chunk-CLYZ7FWP.js";
@@ -36240,6 +36241,64 @@ function handleExpertSuccess(task, expert, durationMs) {
36240
36241
  });
36241
36242
  }
36242
36243
 
36244
+ // src/mcp/tools/expert-context-observer.ts
36245
+ var DEFAULT_CONTEXT_WARN_THRESHOLD = 0.85;
36246
+ var CONTEXT_WARN_THRESHOLD_ENV = "NEXUS_CONTEXT_WARN_THRESHOLD";
36247
+ function resolveContextWarnThreshold(env = process.env) {
36248
+ const raw = env[CONTEXT_WARN_THRESHOLD_ENV];
36249
+ if (typeof raw !== "string" || raw.length === 0) return DEFAULT_CONTEXT_WARN_THRESHOLD;
36250
+ const parsed = Number.parseFloat(raw);
36251
+ if (Number.isFinite(parsed) && parsed > 0 && parsed <= 1) return parsed;
36252
+ return DEFAULT_CONTEXT_WARN_THRESHOLD;
36253
+ }
36254
+ function computeExpertContextUtilization(observation, threshold = DEFAULT_CONTEXT_WARN_THRESHOLD) {
36255
+ const contextWindow = observation.modelId !== void 0 ? getModelContextWindow(observation.modelId) : 2e5;
36256
+ const utilization = contextWindow > 0 ? observation.tokensUsed / contextWindow : 0;
36257
+ return {
36258
+ tokensUsed: observation.tokensUsed,
36259
+ contextWindow,
36260
+ utilization,
36261
+ warned: utilization >= threshold,
36262
+ threshold
36263
+ };
36264
+ }
36265
+ function observeExpertContext(observation, logger53, threshold = resolveContextWarnThreshold()) {
36266
+ try {
36267
+ const util = computeExpertContextUtilization(observation, threshold);
36268
+ if (util.warned) {
36269
+ logger53?.warn("context_warning", {
36270
+ event: "context_warning",
36271
+ expertId: observation.expertId,
36272
+ role: observation.role,
36273
+ modelId: observation.modelId,
36274
+ tokensUsed: util.tokensUsed,
36275
+ contextWindow: util.contextWindow,
36276
+ utilizationPercent: Math.round(util.utilization * 100),
36277
+ thresholdPercent: Math.round(threshold * 100),
36278
+ durationMs: observation.durationMs,
36279
+ taskLength: observation.taskDescription.length
36280
+ });
36281
+ } else {
36282
+ logger53?.debug("context_utilization", {
36283
+ event: "context_utilization",
36284
+ expertId: observation.expertId,
36285
+ role: observation.role,
36286
+ modelId: observation.modelId,
36287
+ utilizationPercent: Math.round(util.utilization * 100)
36288
+ });
36289
+ }
36290
+ return util;
36291
+ } catch {
36292
+ return {
36293
+ tokensUsed: observation.tokensUsed,
36294
+ contextWindow: 0,
36295
+ utilization: 0,
36296
+ warned: false,
36297
+ threshold
36298
+ };
36299
+ }
36300
+ }
36301
+
36243
36302
  // src/mcp/tools/execute-expert.ts
36244
36303
  var EXPERT_TIMEOUT_FLOOR_MS = 12e4;
36245
36304
  var ExecuteExpertInputSchema = z69.object({
@@ -36308,6 +36367,19 @@ function buildSuccessResponse(params) {
36308
36367
  }
36309
36368
  return response;
36310
36369
  }
36370
+ function observeExpertContextIfOk(result, expert, task, durationMs, logger53) {
36371
+ if (!result.ok) return;
36372
+ const expertModelId = expert.expertConfig.modelPreference?.modelId;
36373
+ const observation = {
36374
+ expertId: expert.id,
36375
+ role: expert.role,
36376
+ modelId: expertModelId,
36377
+ tokensUsed: result.value.metadata.tokensUsed,
36378
+ taskDescription: task.description,
36379
+ durationMs
36380
+ };
36381
+ observeExpertContext(observation, logger53);
36382
+ }
36311
36383
  async function deriveExpertAccessPolicy(task, logger53) {
36312
36384
  const mode = resolveAccessPolicyMode();
36313
36385
  try {
@@ -36465,6 +36537,7 @@ async function runExpertTask(deps, args, expert) {
36465
36537
  monitor.endSession(sessionId);
36466
36538
  }
36467
36539
  const durationMs = getTimeProvider().now() - startTime;
36540
+ observeExpertContextIfOk(result, expert, task, durationMs, deps.logger);
36468
36541
  const classified = await classifyExpertResult({
36469
36542
  result,
36470
36543
  expert,
@@ -41472,7 +41545,7 @@ async function tryIssueTriage(task) {
41472
41545
  try {
41473
41546
  const issueMatch = task.match(/github\.com\/([^/]+\/[^/]+)\/issues\/(\d+)/);
41474
41547
  if (issueMatch === null) return null;
41475
- const { createIssueTriage } = await import("./issue-triage-B2X5TTIW.js");
41548
+ const { createIssueTriage } = await import("./issue-triage-VLP2PXR6.js");
41476
41549
  const triage = createIssueTriage();
41477
41550
  const owner = issueMatch[1] ?? "";
41478
41551
  const num = issueMatch[2] ?? "";
@@ -41500,7 +41573,7 @@ var VALID_TEMPLATES = /* @__PURE__ */ new Set([
41500
41573
  ]);
41501
41574
  async function classifyWithLLM(task) {
41502
41575
  try {
41503
- const { executeExpert: executeExpert2 } = await import("./expert-bridge-VDNOTL7I.js");
41576
+ const { executeExpert: executeExpert2 } = await import("./expert-bridge-F4WTPCTH.js");
41504
41577
  const prompt = [
41505
41578
  "Classify this task into exactly one pipeline template.",
41506
41579
  "Templates: dev (implementation/bug fix/refactor), research (investigate/evaluate/compare),",
@@ -42294,7 +42367,7 @@ var memoryInitPromise = null;
42294
42367
  async function initPipelineMemory() {
42295
42368
  if (cachedMemory !== null) return cachedMemory;
42296
42369
  try {
42297
- const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-PXCHCJJP.js");
42370
+ const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-7FJYLKYG.js");
42298
42371
  const { LEARNING_DIR } = await import("./learning-persistence-WMWZJZ35.js");
42299
42372
  const mem = createSessionMemory2(LEARNING_DIR);
42300
42373
  mem.startSession(`pipeline-${String(Date.now())}`);
@@ -42347,7 +42420,7 @@ async function persistMobiMemState() {
42347
42420
  if (!isPersistenceEnabled2()) return;
42348
42421
  const os5 = await import("os");
42349
42422
  const path19 = await import("path");
42350
- const { createMobiMem } = await import("./mobimem-3CY36FRY.js");
42423
+ const { createMobiMem } = await import("./mobimem-3K22YOIL.js");
42351
42424
  const mobimem = createMobiMem();
42352
42425
  const savePath = path19.join(os5.homedir(), ".nexus-agents", "memory", "mobimem-state.json");
42353
42426
  await mobimem.save(savePath);
@@ -42364,7 +42437,7 @@ function recordRoutingExperience(category, success, durationMs) {
42364
42437
  callRecord(routingMemoryCache);
42365
42438
  return;
42366
42439
  }
42367
- void import("./routing-memory-767SNGSY.js").then(({ createRoutingMemory }) => {
42440
+ void import("./routing-memory-FWHM4VEK.js").then(({ createRoutingMemory }) => {
42368
42441
  routingMemoryCache = createRoutingMemory();
42369
42442
  callRecord(routingMemoryCache);
42370
42443
  }).catch((error) => {
@@ -42393,7 +42466,7 @@ ${text}` : "";
42393
42466
  }
42394
42467
  async function getWeatherContext() {
42395
42468
  try {
42396
- const { generateWeatherReport: generateWeatherReport2 } = await import("./weather-report-DLCBVZK7.js");
42469
+ const { generateWeatherReport: generateWeatherReport2 } = await import("./weather-report-76ECJETR.js");
42397
42470
  const report = generateWeatherReport2({ includeAdaptive: true });
42398
42471
  const mappings = "recommendedMappings" in report ? report.recommendedMappings : [];
42399
42472
  if (!Array.isArray(mappings) || mappings.length === 0) return "";
@@ -42410,7 +42483,7 @@ ${lines}
42410
42483
  }
42411
42484
  async function getMemoryContext(task) {
42412
42485
  try {
42413
- const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-PXCHCJJP.js");
42486
+ const { createSessionMemory: createSessionMemory2 } = await import("./session-memory-7FJYLKYG.js");
42414
42487
  const { LEARNING_DIR } = await import("./learning-persistence-WMWZJZ35.js");
42415
42488
  const memory = createSessionMemory2(LEARNING_DIR, { maxLearningsInContext: 10 });
42416
42489
  const learnings = memory.searchLearnings(task.slice(0, 200));
@@ -42503,7 +42576,7 @@ ${contextBlock}`;
42503
42576
  const strategy = config.votingStrategy ?? "higher_order";
42504
42577
  await postProgress(config, "Vote", `Running consensus with ${strategy} strategy...`);
42505
42578
  try {
42506
- const { executeVoting } = await import("./consensus-vote-TG3XFULT.js");
42579
+ const { executeVoting } = await import("./consensus-vote-N5RRFYER.js");
42507
42580
  const votingResult = await executeVoting(
42508
42581
  {
42509
42582
  proposal: plan.slice(0, 4e3),
@@ -43372,7 +43445,7 @@ async function extractSymbolsForTask(task) {
43372
43445
  }
43373
43446
  async function retrieveAdaptiveMemory(task) {
43374
43447
  try {
43375
- const { AdaptiveMemoryBackend } = await import("./adaptive-memory-VPXQL3EC.js");
43448
+ const { AdaptiveMemoryBackend } = await import("./adaptive-memory-KY4NLMYE.js");
43376
43449
  const os5 = await import("os");
43377
43450
  const path19 = await import("path");
43378
43451
  const baseDir = path19.join(os5.homedir(), ".nexus-agents", "memory");
@@ -43391,7 +43464,7 @@ async function retrieveAdaptiveMemory(task) {
43391
43464
  }
43392
43465
  async function queryResearchRegistry(task) {
43393
43466
  try {
43394
- const { synthesizeResearch: synthesizeResearch2 } = await import("./research-helpers-synthesize-DARFXHKG.js");
43467
+ const { synthesizeResearch: synthesizeResearch2 } = await import("./research-helpers-synthesize-PHXJELYZ.js");
43395
43468
  const topic = task.split(/[.!?\n]/).filter((s) => s.trim().length > 10)[0]?.trim();
43396
43469
  if (topic === void 0) return null;
43397
43470
  const result = await synthesizeResearch2(topic.slice(0, 50));
@@ -43476,7 +43549,7 @@ function createScanStageWrapper() {
43476
43549
  try {
43477
43550
  const slug = ctx.task.match(/([a-zA-Z0-9._-]+\/[a-zA-Z0-9._-]+)/)?.[1];
43478
43551
  if (slug !== void 0) {
43479
- const { generateSecurityPlan: generateSecurityPlan2 } = await import("./repo-security-plan-PIAV5MVL.js");
43552
+ const { generateSecurityPlan: generateSecurityPlan2 } = await import("./repo-security-plan-B7R2VJVG.js");
43480
43553
  const plan = await generateSecurityPlan2({ repo: slug, maxScanners: 10 });
43481
43554
  const recs = plan.recommendations.slice(0, 5).map((r) => `${r.priority}: ${r.displayName} (${r.category})`).join("; ");
43482
43555
  ctx.sharedMemory.write("scan", "decision", { recommendations: recs });
@@ -52895,7 +52968,7 @@ var GitHubTaskTracker = class {
52895
52968
  cachedProvider = null;
52896
52969
  async getProvider() {
52897
52970
  if (this.cachedProvider !== null) return this.cachedProvider;
52898
- const { createScmProvider } = await import("./factory-WH7M7GDL.js");
52971
+ const { createScmProvider } = await import("./factory-GIUXH64S.js");
52899
52972
  const result = await createScmProvider({ repo: this.config.repo ?? "" });
52900
52973
  if (!result.ok) throw new Error(`SCM provider error: ${result.error.message}`);
52901
52974
  this.cachedProvider = result.value;
@@ -53734,4 +53807,4 @@ export {
53734
53807
  detectBackend,
53735
53808
  createTaskTracker
53736
53809
  };
53737
- //# sourceMappingURL=chunk-65MWGQ7R.js.map
53810
+ //# sourceMappingURL=chunk-WFYCKG4J.js.map