nexus-agents 2.82.0 → 2.83.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 (125) hide show
  1. package/dist/{child-mcp-config-BMSYR7VV.js → child-mcp-config-XVPIO5HV.js} +2 -2
  2. package/dist/{chunk-OYDJ3C4N.js → chunk-2W4QJ27D.js} +3 -3
  3. package/dist/{chunk-BQ4YXGGQ.js → chunk-3ACDP4E6.js} +124 -2
  4. package/dist/chunk-3ACDP4E6.js.map +1 -0
  5. package/dist/{chunk-C7P2HLJX.js → chunk-3ASED5PR.js} +4 -4
  6. package/dist/{chunk-TXIUCEFT.js → chunk-3GJAAENS.js} +3 -3
  7. package/dist/{chunk-GNG7URCR.js → chunk-3WUVWZUC.js} +2 -2
  8. package/dist/{chunk-FTT2IYYX.js → chunk-4BXQ2OZY.js} +34 -16
  9. package/dist/chunk-4BXQ2OZY.js.map +1 -0
  10. package/dist/{chunk-SBZVRH4S.js → chunk-54UXPJVM.js} +2 -2
  11. package/dist/{chunk-QHL4KGNB.js → chunk-5T6SYCH2.js} +2 -2
  12. package/dist/{chunk-BL5IBHEY.js → chunk-6WDJ3IE4.js} +3 -3
  13. package/dist/{chunk-2R5UUBGA.js → chunk-AFPHR72D.js} +2 -2
  14. package/dist/{chunk-S36LIUV2.js → chunk-AINOJRZX.js} +7 -7
  15. package/dist/{chunk-HJUHDPXJ.js → chunk-BZUEUD4G.js} +3 -3
  16. package/dist/{chunk-2SQXJQTA.js → chunk-FHGDJKCZ.js} +16 -13
  17. package/dist/{chunk-2SQXJQTA.js.map → chunk-FHGDJKCZ.js.map} +1 -1
  18. package/dist/{chunk-XGUDCUMB.js → chunk-FI77TGBY.js} +2 -2
  19. package/dist/{chunk-7J7PNOJQ.js → chunk-HFOQKCD2.js} +22 -5
  20. package/dist/chunk-HFOQKCD2.js.map +1 -0
  21. package/dist/{chunk-PZESEBD3.js → chunk-L362KRSU.js} +2 -2
  22. package/dist/{chunk-HMXQKDUV.js → chunk-NLPMYBIV.js} +23 -7
  23. package/dist/chunk-NLPMYBIV.js.map +1 -0
  24. package/dist/{chunk-4XNVJS5A.js → chunk-PMLVZXAE.js} +763 -728
  25. package/dist/chunk-PMLVZXAE.js.map +1 -0
  26. package/dist/{chunk-JM3R267Z.js → chunk-PPBZQKRP.js} +5 -5
  27. package/dist/{chunk-WUUEKFKG.js → chunk-Q6PZMGLU.js} +2 -2
  28. package/dist/{chunk-W2AIGD35.js → chunk-RVRXKNND.js} +3 -3
  29. package/dist/{chunk-7VNVDFD5.js → chunk-RXVH52UI.js} +44 -18
  30. package/dist/{chunk-7VNVDFD5.js.map → chunk-RXVH52UI.js.map} +1 -1
  31. package/dist/{chunk-HVZ52LOL.js → chunk-U6LDVJS7.js} +2 -2
  32. package/dist/{chunk-X3JR3GMT.js → chunk-WGSRH5EQ.js} +3 -3
  33. package/dist/{chunk-SXL744NF.js → chunk-WJFUTRHX.js} +2 -2
  34. package/dist/{chunk-U7JXQSEM.js → chunk-YO27YAEX.js} +3 -3
  35. package/dist/{chunk-G2DZBEMU.js → chunk-Z64MSLEK.js} +2 -2
  36. package/dist/{chunk-NTLJ3INA.js → chunk-ZIWEEVMI.js} +2 -2
  37. package/dist/{chunk-SHWGK7X6.js → chunk-ZM5JKJHI.js} +2 -2
  38. package/dist/{cli-circuit-breaker-BIJUQRQI.js → cli-circuit-breaker-Y26NPPNO.js} +4 -4
  39. package/dist/cli.js +366 -344
  40. package/dist/cli.js.map +1 -1
  41. package/dist/codebase-search-ZFJUVMVR.js +8 -0
  42. package/dist/{composite-router-FB7P22L5.js → composite-router-X2ZYIEHH.js} +2 -2
  43. package/dist/{consensus-vote-KKAIFULI.js → consensus-vote-KZ6UURUI.js} +11 -11
  44. package/dist/{context-retriever-4JCGMWH7.js → context-retriever-QY4FNTDZ.js} +5 -5
  45. package/dist/{doctor-deep-7YK4BZIJ.js → doctor-deep-2E2GBMYR.js} +3 -3
  46. package/dist/expert-bridge-FHPWDFJX.js +13 -0
  47. package/dist/{factory-PK4EZL7K.js → factory-STNVY3Y3.js} +4 -4
  48. package/dist/{factory-DOWBGVAL.js → factory-W6KROBFN.js} +5 -5
  49. package/dist/index.d.ts +104 -60
  50. package/dist/index.js +100 -105
  51. package/dist/index.js.map +1 -1
  52. package/dist/{init-opencode-QP5CAMWN.js → init-opencode-6LVZ4CAQ.js} +5 -5
  53. package/dist/{issue-triage-T3SKNBH5.js → issue-triage-Y77JI7WF.js} +4 -4
  54. package/dist/{registry-command-TH7U6UMC.js → registry-command-P5VIAEOL.js} +2 -2
  55. package/dist/{repo-analyze-D2OY2QSR.js → repo-analyze-JZEMBE6R.js} +2 -2
  56. package/dist/{repo-security-plan-V257RYTW.js → repo-security-plan-RHSLO7H6.js} +4 -4
  57. package/dist/{research-helpers-synthesize-Y3O76PY4.js → research-helpers-synthesize-PVP6JRZV.js} +3 -3
  58. package/dist/{routing-memory-AAH7NIHD.js → routing-memory-QRIJPRVD.js} +2 -2
  59. package/dist/{session-memory-MY6YS2VX.js → session-memory-WARRGYY7.js} +3 -3
  60. package/dist/{setup-command-B6EC3OJA.js → setup-command-GMP5FI7F.js} +10 -10
  61. package/dist/{setup-config-HVO6ZSLW.js → setup-config-G3KKZM7O.js} +3 -3
  62. package/dist/{setup-custom-api-UOIKUQL4.js → setup-custom-api-B63X7ISD.js} +4 -4
  63. package/dist/{tool-memory-T7ZYIUJ2.js → tool-memory-E7JW4YLT.js} +4 -4
  64. package/dist/{weather-report-O3Z3BBAX.js → weather-report-RACZWJQL.js} +2 -2
  65. package/package.json +1 -1
  66. package/dist/chunk-4XNVJS5A.js.map +0 -1
  67. package/dist/chunk-7J7PNOJQ.js.map +0 -1
  68. package/dist/chunk-AP2FD37C.js +0 -127
  69. package/dist/chunk-AP2FD37C.js.map +0 -1
  70. package/dist/chunk-BQ4YXGGQ.js.map +0 -1
  71. package/dist/chunk-ED6VQWNG.js +0 -63
  72. package/dist/chunk-ED6VQWNG.js.map +0 -1
  73. package/dist/chunk-FTT2IYYX.js.map +0 -1
  74. package/dist/chunk-HMXQKDUV.js.map +0 -1
  75. package/dist/codebase-search-PIBRTGBE.js +0 -9
  76. package/dist/expert-bridge-DJM5GAWZ.js +0 -11
  77. package/dist/shared-memory-CM6T2MYE.js +0 -8
  78. package/dist/symbol-extractor-WYXPJH65.js +0 -10
  79. package/dist/tool-memory-T7ZYIUJ2.js.map +0 -1
  80. package/dist/weather-report-O3Z3BBAX.js.map +0 -1
  81. /package/dist/{child-mcp-config-BMSYR7VV.js.map → child-mcp-config-XVPIO5HV.js.map} +0 -0
  82. /package/dist/{chunk-OYDJ3C4N.js.map → chunk-2W4QJ27D.js.map} +0 -0
  83. /package/dist/{chunk-C7P2HLJX.js.map → chunk-3ASED5PR.js.map} +0 -0
  84. /package/dist/{chunk-TXIUCEFT.js.map → chunk-3GJAAENS.js.map} +0 -0
  85. /package/dist/{chunk-GNG7URCR.js.map → chunk-3WUVWZUC.js.map} +0 -0
  86. /package/dist/{chunk-SBZVRH4S.js.map → chunk-54UXPJVM.js.map} +0 -0
  87. /package/dist/{chunk-QHL4KGNB.js.map → chunk-5T6SYCH2.js.map} +0 -0
  88. /package/dist/{chunk-BL5IBHEY.js.map → chunk-6WDJ3IE4.js.map} +0 -0
  89. /package/dist/{chunk-2R5UUBGA.js.map → chunk-AFPHR72D.js.map} +0 -0
  90. /package/dist/{chunk-S36LIUV2.js.map → chunk-AINOJRZX.js.map} +0 -0
  91. /package/dist/{chunk-HJUHDPXJ.js.map → chunk-BZUEUD4G.js.map} +0 -0
  92. /package/dist/{chunk-XGUDCUMB.js.map → chunk-FI77TGBY.js.map} +0 -0
  93. /package/dist/{chunk-PZESEBD3.js.map → chunk-L362KRSU.js.map} +0 -0
  94. /package/dist/{chunk-JM3R267Z.js.map → chunk-PPBZQKRP.js.map} +0 -0
  95. /package/dist/{chunk-WUUEKFKG.js.map → chunk-Q6PZMGLU.js.map} +0 -0
  96. /package/dist/{chunk-W2AIGD35.js.map → chunk-RVRXKNND.js.map} +0 -0
  97. /package/dist/{chunk-HVZ52LOL.js.map → chunk-U6LDVJS7.js.map} +0 -0
  98. /package/dist/{chunk-X3JR3GMT.js.map → chunk-WGSRH5EQ.js.map} +0 -0
  99. /package/dist/{chunk-SXL744NF.js.map → chunk-WJFUTRHX.js.map} +0 -0
  100. /package/dist/{chunk-U7JXQSEM.js.map → chunk-YO27YAEX.js.map} +0 -0
  101. /package/dist/{chunk-G2DZBEMU.js.map → chunk-Z64MSLEK.js.map} +0 -0
  102. /package/dist/{chunk-NTLJ3INA.js.map → chunk-ZIWEEVMI.js.map} +0 -0
  103. /package/dist/{chunk-SHWGK7X6.js.map → chunk-ZM5JKJHI.js.map} +0 -0
  104. /package/dist/{cli-circuit-breaker-BIJUQRQI.js.map → cli-circuit-breaker-Y26NPPNO.js.map} +0 -0
  105. /package/dist/{codebase-search-PIBRTGBE.js.map → codebase-search-ZFJUVMVR.js.map} +0 -0
  106. /package/dist/{composite-router-FB7P22L5.js.map → composite-router-X2ZYIEHH.js.map} +0 -0
  107. /package/dist/{consensus-vote-KKAIFULI.js.map → consensus-vote-KZ6UURUI.js.map} +0 -0
  108. /package/dist/{context-retriever-4JCGMWH7.js.map → context-retriever-QY4FNTDZ.js.map} +0 -0
  109. /package/dist/{doctor-deep-7YK4BZIJ.js.map → doctor-deep-2E2GBMYR.js.map} +0 -0
  110. /package/dist/{expert-bridge-DJM5GAWZ.js.map → expert-bridge-FHPWDFJX.js.map} +0 -0
  111. /package/dist/{factory-DOWBGVAL.js.map → factory-STNVY3Y3.js.map} +0 -0
  112. /package/dist/{factory-PK4EZL7K.js.map → factory-W6KROBFN.js.map} +0 -0
  113. /package/dist/{init-opencode-QP5CAMWN.js.map → init-opencode-6LVZ4CAQ.js.map} +0 -0
  114. /package/dist/{issue-triage-T3SKNBH5.js.map → issue-triage-Y77JI7WF.js.map} +0 -0
  115. /package/dist/{registry-command-TH7U6UMC.js.map → registry-command-P5VIAEOL.js.map} +0 -0
  116. /package/dist/{repo-analyze-D2OY2QSR.js.map → repo-analyze-JZEMBE6R.js.map} +0 -0
  117. /package/dist/{repo-security-plan-V257RYTW.js.map → repo-security-plan-RHSLO7H6.js.map} +0 -0
  118. /package/dist/{research-helpers-synthesize-Y3O76PY4.js.map → research-helpers-synthesize-PVP6JRZV.js.map} +0 -0
  119. /package/dist/{routing-memory-AAH7NIHD.js.map → routing-memory-QRIJPRVD.js.map} +0 -0
  120. /package/dist/{session-memory-MY6YS2VX.js.map → session-memory-WARRGYY7.js.map} +0 -0
  121. /package/dist/{setup-command-B6EC3OJA.js.map → setup-command-GMP5FI7F.js.map} +0 -0
  122. /package/dist/{setup-config-HVO6ZSLW.js.map → setup-config-G3KKZM7O.js.map} +0 -0
  123. /package/dist/{setup-custom-api-UOIKUQL4.js.map → setup-custom-api-B63X7ISD.js.map} +0 -0
  124. /package/dist/{shared-memory-CM6T2MYE.js.map → tool-memory-E7JW4YLT.js.map} +0 -0
  125. /package/dist/{symbol-extractor-WYXPJH65.js.map → weather-report-RACZWJQL.js.map} +0 -0
package/dist/index.js CHANGED
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  createGitHubProvider,
3
3
  createScmProvider
4
- } from "./chunk-C7P2HLJX.js";
4
+ } from "./chunk-3ASED5PR.js";
5
5
  import {
6
6
  ALLOWED_COMMANDS,
7
7
  ARTIFACT_TYPES,
@@ -329,6 +329,7 @@ import {
329
329
  createExecutionContext,
330
330
  createExecutionPlan,
331
331
  createFeedbackIntegration,
332
+ createFeedbackSubscriber,
332
333
  createGraphAuditBridge,
333
334
  createInitializedWorkflowEngine,
334
335
  createInteractionGraph,
@@ -518,30 +519,26 @@ import {
518
519
  validateWorkflow,
519
520
  validateWorkflowDependencies,
520
521
  withLogging
521
- } from "./chunk-4XNVJS5A.js";
522
- import "./chunk-AP2FD37C.js";
523
- import {
524
- SharedMemoryStore
525
- } from "./chunk-ED6VQWNG.js";
522
+ } from "./chunk-PMLVZXAE.js";
526
523
  import {
527
524
  getTokenEnvVars,
528
525
  hasToken,
529
526
  resolveToken
530
- } from "./chunk-G2DZBEMU.js";
527
+ } from "./chunk-Z64MSLEK.js";
531
528
  import "./chunk-X2M7OF27.js";
532
529
  import {
533
530
  OPENAI_MODELS,
534
531
  OPENAI_MODEL_ALIASES,
535
532
  OpenAIAdapter,
536
533
  createOpenAIAdapter
537
- } from "./chunk-X3JR3GMT.js";
534
+ } from "./chunk-WGSRH5EQ.js";
538
535
  import {
539
536
  CliCircuitBreakerIntegration,
540
537
  createCliCircuitBreakerIntegration
541
- } from "./chunk-OYDJ3C4N.js";
538
+ } from "./chunk-2W4QJ27D.js";
542
539
  import {
543
540
  executeExpert
544
- } from "./chunk-HMXQKDUV.js";
541
+ } from "./chunk-NLPMYBIV.js";
545
542
  import {
546
543
  AgentFindingSchema,
547
544
  AgentPerformanceSchema,
@@ -637,10 +634,7 @@ import {
637
634
  validateToolInput,
638
635
  withModelNotFoundFallback,
639
636
  wrapResilientWithFallback
640
- } from "./chunk-FTT2IYYX.js";
641
- import {
642
- PROVIDER_ENV_KEYS
643
- } from "./chunk-NTLJ3INA.js";
637
+ } from "./chunk-4BXQ2OZY.js";
644
638
  import {
645
639
  AdapterModelError,
646
640
  BaseAdapter,
@@ -664,8 +658,11 @@ import {
664
658
  transformStream,
665
659
  validateApiKeyPresence,
666
660
  withTimeout
667
- } from "./chunk-SBZVRH4S.js";
668
- import "./chunk-2R5UUBGA.js";
661
+ } from "./chunk-54UXPJVM.js";
662
+ import {
663
+ PROVIDER_ENV_KEYS
664
+ } from "./chunk-ZIWEEVMI.js";
665
+ import "./chunk-AFPHR72D.js";
669
666
  import {
670
667
  AgentActionSchema,
671
668
  GitHubReviewer,
@@ -698,11 +695,11 @@ import {
698
695
  sanitizeInput,
699
696
  validateAgentAction,
700
697
  validateCorroboration
701
- } from "./chunk-HJUHDPXJ.js";
698
+ } from "./chunk-BZUEUD4G.js";
702
699
  import {
703
700
  GitHubProvider,
704
701
  ScmError
705
- } from "./chunk-PZESEBD3.js";
702
+ } from "./chunk-L362KRSU.js";
706
703
  import {
707
704
  FALLBACK_SCANNER_DATA,
708
705
  buildPlanFromAnalysis,
@@ -710,20 +707,20 @@ import {
710
707
  generateSecurityPlan,
711
708
  getRegistryManifest,
712
709
  resolveScannerData
713
- } from "./chunk-W2AIGD35.js";
710
+ } from "./chunk-RVRXKNND.js";
714
711
  import {
715
712
  analyzeGitHubRepo,
716
713
  analyzeRepo,
717
714
  normalizeRepoId
718
- } from "./chunk-7J7PNOJQ.js";
719
- import "./chunk-BQ4YXGGQ.js";
715
+ } from "./chunk-HFOQKCD2.js";
716
+ import "./chunk-3ACDP4E6.js";
720
717
  import {
721
718
  PersistentStrategyDistiller,
722
719
  RulesSnapshotSchema
723
- } from "./chunk-TXIUCEFT.js";
720
+ } from "./chunk-3GJAAENS.js";
724
721
  import {
725
722
  MemoryError
726
- } from "./chunk-U7JXQSEM.js";
723
+ } from "./chunk-YO27YAEX.js";
727
724
  import {
728
725
  AppConfigSchema,
729
726
  ExpertConfigSchema,
@@ -742,7 +739,7 @@ import {
742
739
  getKnownNexusVarNames,
743
740
  startStdioServer,
744
741
  validateNexusEnv
745
- } from "./chunk-S36LIUV2.js";
742
+ } from "./chunk-AINOJRZX.js";
746
743
  import {
747
744
  AvailabilityCache,
748
745
  filterAvailableModels,
@@ -751,15 +748,15 @@ import {
751
748
  getFallbackChain,
752
749
  resetAvailabilityCache,
753
750
  resolveFallback
754
- } from "./chunk-GNG7URCR.js";
751
+ } from "./chunk-3WUVWZUC.js";
755
752
  import {
756
753
  AvailableModelsCache,
757
754
  getDefaultAvailableModelsCache,
758
755
  setDefaultAvailableModelsCache
759
- } from "./chunk-WUUEKFKG.js";
756
+ } from "./chunk-Q6PZMGLU.js";
760
757
  import {
761
758
  DEFAULTS
762
- } from "./chunk-SHWGK7X6.js";
759
+ } from "./chunk-ZM5JKJHI.js";
763
760
  import "./chunk-NUBSJGQZ.js";
764
761
  import "./chunk-633WH2ML.js";
765
762
  import {
@@ -790,8 +787,8 @@ import {
790
787
  isCliAvailable,
791
788
  isRetryableError,
792
789
  sleep
793
- } from "./chunk-2SQXJQTA.js";
794
- import "./chunk-QHL4KGNB.js";
790
+ } from "./chunk-FHGDJKCZ.js";
791
+ import "./chunk-5T6SYCH2.js";
795
792
  import {
796
793
  BUILT_IN_EXPERTS,
797
794
  BuiltInExpertTypeSchema,
@@ -802,18 +799,16 @@ import {
802
799
  validateExpertConfig
803
800
  } from "./chunk-ZM4O442V.js";
804
801
  import "./chunk-PQHVC4BD.js";
805
- import "./chunk-HVZ52LOL.js";
802
+ import "./chunk-U6LDVJS7.js";
806
803
  import {
807
804
  AgentCapability,
808
805
  AgentError,
809
- CLI_NAMES,
810
806
  CLI_VERSION_REQUIREMENTS,
811
807
  CompositeRouter,
812
808
  CompositeRouterConfigSchema,
813
809
  CompositeRoutingError,
814
810
  ConfigError,
815
811
  DEFAULT_CAPABILITIES,
816
- DEFAULT_CLI,
817
812
  DEFAULT_COMPOSITE_CONFIG,
818
813
  DEFAULT_DISTILLER_CONFIG,
819
814
  DEFAULT_ENTRY,
@@ -879,7 +874,7 @@ import {
879
874
  toError,
880
875
  unwrap,
881
876
  unwrapOr
882
- } from "./chunk-7VNVDFD5.js";
877
+ } from "./chunk-RXVH52UI.js";
883
878
  import "./chunk-I2HMWH4R.js";
884
879
  import "./chunk-PR4QN5HX.js";
885
880
 
@@ -5749,65 +5744,6 @@ function matchesArtifactFilter(artifact, filter) {
5749
5744
  return true;
5750
5745
  }
5751
5746
 
5752
- // src/pipeline/feedback-subscriber.ts
5753
- var logger9 = createLogger({ component: "FeedbackSubscriber" });
5754
- var VALID_CLIS = new Set(CLI_NAMES);
5755
- function createFeedbackSubscriber(bus, store) {
5756
- return bus.subscribe({ type: ["model.called", "stage.failed"] }, (event) => {
5757
- try {
5758
- handleEvent(event, store);
5759
- } catch (error) {
5760
- const msg = getErrorMessage(error);
5761
- logger9.warn("Feedback subscriber error", { error: msg });
5762
- }
5763
- });
5764
- }
5765
- function handleEvent(event, store) {
5766
- if (event.type === "model.called") {
5767
- recordModelCall(event, store);
5768
- } else if (event.type === "stage.failed") {
5769
- recordStageFailed(event, store);
5770
- }
5771
- }
5772
- function recordModelCall(event, store) {
5773
- const cli = normalizeCli(event.cli);
5774
- if (cli === void 0) return;
5775
- const outcome = {
5776
- id: `fb-${event.executionId}-${String(event.timestamp)}`,
5777
- cli,
5778
- category: "code_generation",
5779
- model: event.model,
5780
- success: true,
5781
- durationMs: event.durationMs,
5782
- timestamp: new Date(event.timestamp).toISOString(),
5783
- source: "delegate"
5784
- };
5785
- store.append(outcome);
5786
- }
5787
- function recordStageFailed(event, store) {
5788
- const outcome = {
5789
- id: `fb-fail-${event.executionId}-${String(event.timestamp)}`,
5790
- cli: DEFAULT_CLI,
5791
- // Stage failures don't carry CLI info; default to canonical fallback
5792
- category: "code_generation",
5793
- model: "unknown",
5794
- success: false,
5795
- durationMs: 0,
5796
- timestamp: new Date(event.timestamp).toISOString(),
5797
- source: "delegate",
5798
- failureCategory: categorizeOutcomeErrorMessage(event.error),
5799
- errorMessage: event.error.slice(0, 500)
5800
- };
5801
- store.append(outcome);
5802
- }
5803
- function normalizeCli(cli) {
5804
- if (VALID_CLIS.has(cli)) {
5805
- return cli;
5806
- }
5807
- logger9.warn("Unknown CLI in event", { cli });
5808
- return void 0;
5809
- }
5810
-
5811
5747
  // src/pipeline/trace-schema.ts
5812
5748
  import { z as z15 } from "zod";
5813
5749
  var ExecutionTraceEntrySchema = z15.object({
@@ -5869,10 +5805,10 @@ var GateCheckResultSchema = z16.object({
5869
5805
  });
5870
5806
 
5871
5807
  // src/pipeline/quality-pipeline.ts
5872
- var logger10 = createLogger({ component: "quality-pipeline" });
5808
+ var logger9 = createLogger({ component: "quality-pipeline" });
5873
5809
 
5874
5810
  // src/pipeline/research-trigger.ts
5875
- var logger11 = createLogger({ component: "research-trigger" });
5811
+ var logger10 = createLogger({ component: "research-trigger" });
5876
5812
  var DEFAULT_QUALITY_THRESHOLD = 7;
5877
5813
  var DEFAULT_MAX_TRIGGERS = 3;
5878
5814
  function parseDiscoveries(text) {
@@ -5904,7 +5840,7 @@ async function checkForResearchTriggers(config = {}) {
5904
5840
  `Use research_discover to find recent papers and repos about "${topic}". For each result, include: title, quality score (1-10), and source URL.`
5905
5841
  );
5906
5842
  if (!result.success) {
5907
- logger11.debug("Research trigger: expert unavailable", { error: result.error });
5843
+ logger10.debug("Research trigger: expert unavailable", { error: result.error });
5908
5844
  return [];
5909
5845
  }
5910
5846
  const discoveries = parseDiscoveries(result.text);
@@ -5920,7 +5856,7 @@ Assess this research for applicability to nexus-agents.`,
5920
5856
  status: "pending"
5921
5857
  }));
5922
5858
  if (tasks.length > 0) {
5923
- logger11.info("Research triggers created", {
5859
+ logger10.info("Research triggers created", {
5924
5860
  total: discoveries.length,
5925
5861
  qualified: qualified.length,
5926
5862
  triggered: tasks.length
@@ -5928,13 +5864,13 @@ Assess this research for applicability to nexus-agents.`,
5928
5864
  }
5929
5865
  return tasks;
5930
5866
  } catch (error) {
5931
- logger11.debug("Research trigger failed gracefully", { error: String(error) });
5867
+ logger10.debug("Research trigger failed gracefully", { error: String(error) });
5932
5868
  return [];
5933
5869
  }
5934
5870
  }
5935
5871
 
5936
5872
  // src/pipeline/research-pipeline.ts
5937
- var logger12 = createLogger({ component: "research-pipeline" });
5873
+ var logger11 = createLogger({ component: "research-pipeline" });
5938
5874
 
5939
5875
  // src/pipeline/iterative-consensus.ts
5940
5876
  var defaultLogger = createLogger({ component: "iterative-consensus" });
@@ -6003,7 +5939,7 @@ function buildVotingInput(plan, config) {
6003
5939
  }
6004
5940
  async function executeSingleVote(plan, config, log) {
6005
5941
  try {
6006
- const { executeVoting } = await import("./consensus-vote-KKAIFULI.js");
5942
+ const { executeVoting } = await import("./consensus-vote-KZ6UURUI.js");
6007
5943
  const input = buildVotingInput(plan, config);
6008
5944
  const result = await executeVoting(input, log);
6009
5945
  return parseVotingResult(result);
@@ -6058,8 +5994,67 @@ function filterBySeverity(results, minSeverity) {
6058
5994
  return results.filter((r) => severityOrder[r.severity] >= threshold);
6059
5995
  }
6060
5996
 
5997
+ // src/pipeline/shared-memory.ts
5998
+ var SharedMemoryStore = class {
5999
+ entries = [];
6000
+ maxEntries;
6001
+ constructor(maxEntries = 100) {
6002
+ this.maxEntries = maxEntries;
6003
+ }
6004
+ /** Write a memory entry. */
6005
+ write(sourceStage, tag, content) {
6006
+ if (this.entries.length >= this.maxEntries) {
6007
+ this.entries.shift();
6008
+ }
6009
+ this.entries.push({
6010
+ sourceStage,
6011
+ tag,
6012
+ content,
6013
+ timestamp: Date.now()
6014
+ });
6015
+ }
6016
+ /** Read all entries, optionally filtered by tag. */
6017
+ read(tag) {
6018
+ if (tag === void 0) return [...this.entries];
6019
+ return this.entries.filter((e) => e.tag === tag);
6020
+ }
6021
+ /** Read entries from a specific stage. */
6022
+ readFromStage(sourceStage) {
6023
+ return this.entries.filter((e) => e.sourceStage === sourceStage);
6024
+ }
6025
+ /** Get summary of all entries as context string for LLM consumption. */
6026
+ summarize(maxLength = 2e3) {
6027
+ if (this.entries.length === 0) return "";
6028
+ const lines = this.entries.map(
6029
+ (e) => `[${e.tag}] (from ${e.sourceStage}): ${formatContent(e.content)}`
6030
+ );
6031
+ const joined = lines.join("\n");
6032
+ if (joined.length <= maxLength) return joined;
6033
+ return `${joined.slice(0, maxLength - 3)}...`;
6034
+ }
6035
+ /** Get entry count. */
6036
+ get size() {
6037
+ return this.entries.length;
6038
+ }
6039
+ /** Clear all entries. */
6040
+ clear() {
6041
+ this.entries.length = 0;
6042
+ }
6043
+ };
6044
+ function formatContent(content) {
6045
+ if (typeof content === "string") return content.slice(0, 200);
6046
+ if (typeof content === "object" && content !== null) {
6047
+ try {
6048
+ return JSON.stringify(content).slice(0, 200);
6049
+ } catch {
6050
+ return "[object]";
6051
+ }
6052
+ }
6053
+ return String(content);
6054
+ }
6055
+
6061
6056
  // src/pipeline/dynamic-expert.ts
6062
- var logger13 = createLogger({ component: "dynamic-expert" });
6057
+ var logger12 = createLogger({ component: "dynamic-expert" });
6063
6058
  var MAX_DYNAMIC_EXPERTS = 2;
6064
6059
  var DynamicExpertManager = class {
6065
6060
  experts = [];
@@ -6070,18 +6065,18 @@ var DynamicExpertManager = class {
6070
6065
  /** Create a new dynamic expert. Returns null if limit reached. */
6071
6066
  create(spec) {
6072
6067
  if (this.experts.length >= this.maxExperts) {
6073
- logger13.warn("Dynamic expert limit reached", {
6068
+ logger12.warn("Dynamic expert limit reached", {
6074
6069
  limit: this.maxExperts,
6075
6070
  requested: spec.id
6076
6071
  });
6077
6072
  return null;
6078
6073
  }
6079
6074
  if (spec.id.trim() === "" || spec.name.trim() === "") {
6080
- logger13.warn("Invalid dynamic expert spec", { id: spec.id });
6075
+ logger12.warn("Invalid dynamic expert spec", { id: spec.id });
6081
6076
  return null;
6082
6077
  }
6083
6078
  if (this.experts.some((e) => e.spec.id === spec.id)) {
6084
- logger13.warn("Duplicate dynamic expert ID", { id: spec.id });
6079
+ logger12.warn("Duplicate dynamic expert ID", { id: spec.id });
6085
6080
  return null;
6086
6081
  }
6087
6082
  const expert = {
@@ -6090,7 +6085,7 @@ var DynamicExpertManager = class {
6090
6085
  promoted: false
6091
6086
  };
6092
6087
  this.experts.push(expert);
6093
- logger13.info("Dynamic expert created", {
6088
+ logger12.info("Dynamic expert created", {
6094
6089
  id: spec.id,
6095
6090
  name: spec.name,
6096
6091
  total: this.experts.length,
@@ -6117,7 +6112,7 @@ var DynamicExpertManager = class {
6117
6112
  };
6118
6113
 
6119
6114
  // src/replay/replay-executor.ts
6120
- var logger14 = createLogger({ component: "ReplayExecutor" });
6115
+ var logger13 = createLogger({ component: "ReplayExecutor" });
6121
6116
  export {
6122
6117
  ALLOWED_COMMANDS,
6123
6118
  ARTIFACT_TYPES,