nexus-agents 4.8.0 → 4.10.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 (121) hide show
  1. package/dist/{child-mcp-config-7EMSHBAR.js → child-mcp-config-TXGCJ52M.js} +2 -2
  2. package/dist/{chunk-BZAE4CSC.js → chunk-2A664K4J.js} +2 -2
  3. package/dist/{chunk-2HHQTXNM.js → chunk-2DOULPPA.js} +4 -4
  4. package/dist/{chunk-RQDAZHIO.js → chunk-4576IZUB.js} +4 -4
  5. package/dist/{chunk-DP7MSK65.js → chunk-46EQSU7N.js} +2 -2
  6. package/dist/{chunk-QJ7DCRNA.js → chunk-4A47PQKV.js} +3 -3
  7. package/dist/{chunk-5WNGNIEI.js → chunk-5AYHIDVQ.js} +3 -3
  8. package/dist/{chunk-KNSXXGQO.js → chunk-7ZYXZWAM.js} +5 -5
  9. package/dist/{chunk-7ZTPA3DA.js → chunk-A2FENIHB.js} +8 -8
  10. package/dist/{chunk-BE256P4K.js → chunk-BQWXGMZP.js} +6 -6
  11. package/dist/{chunk-E55HKUGD.js → chunk-D62GTDJR.js} +34 -23
  12. package/dist/chunk-D62GTDJR.js.map +1 -0
  13. package/dist/{chunk-6AG3OYAZ.js → chunk-DG6P3UC5.js} +7 -7
  14. package/dist/{chunk-IS4LVP6J.js → chunk-G72SRBER.js} +35 -35
  15. package/dist/{chunk-WD4PYSXP.js → chunk-GRIOFYSO.js} +4 -4
  16. package/dist/{chunk-2IEKHIBA.js → chunk-H7C3YEVA.js} +2 -2
  17. package/dist/{chunk-RAIVRA2P.js → chunk-HYE3V7VA.js} +3 -3
  18. package/dist/{chunk-EP3DR54Z.js → chunk-IW3G6WVW.js} +2 -2
  19. package/dist/{chunk-YWDM4NSG.js → chunk-JRRUY4BL.js} +2 -2
  20. package/dist/{chunk-JRIXLD4P.js → chunk-LUL3Q5BT.js} +2 -2
  21. package/dist/{chunk-PBTWTF24.js → chunk-MN34HTJP.js} +2 -2
  22. package/dist/{chunk-5MSYZOYQ.js → chunk-NBKJ7L2S.js} +2 -2
  23. package/dist/{chunk-IM7N3F3Q.js → chunk-OIMKKI76.js} +8 -8
  24. package/dist/{chunk-HSXKPBIL.js → chunk-RSNG6RDI.js} +2 -2
  25. package/dist/{chunk-IQ5HSF5T.js → chunk-SFKJXZMV.js} +2 -2
  26. package/dist/{chunk-LZQNX52I.js → chunk-TSEVXDKU.js} +2 -2
  27. package/dist/{chunk-3WCKPSX5.js → chunk-TWWWWWSG.js} +2 -2
  28. package/dist/{chunk-HC6PAAX6.js → chunk-UMCITLCL.js} +5 -5
  29. package/dist/{chunk-KQ57UMTL.js → chunk-US3LB5AL.js} +2 -2
  30. package/dist/{chunk-6JFY6VEF.js → chunk-W64J4UNG.js} +2 -2
  31. package/dist/{chunk-KFXGTYVY.js → chunk-XOTWDMK3.js} +5 -5
  32. package/dist/{chunk-IORRDBLS.js → chunk-YQAHWAVA.js} +2 -2
  33. package/dist/{chunk-DQ3M2FOT.js → chunk-YSBADPHN.js} +3 -3
  34. package/dist/{chunk-6MTWEBXE.js → chunk-ZLSHDEFS.js} +2 -2
  35. package/dist/{chunk-WSYJJRUG.js → chunk-ZRXRK4CE.js} +8 -8
  36. package/dist/{chunk-WSYJJRUG.js.map → chunk-ZRXRK4CE.js.map} +1 -1
  37. package/dist/{cli-circuit-breaker-FTBP6VL7.js → cli-circuit-breaker-462DQCFX.js} +3 -3
  38. package/dist/cli.js +41 -41
  39. package/dist/{composite-router-M4HWHAH2.js → composite-router-5PY2BSX6.js} +2 -2
  40. package/dist/{consensus-vote-FNKU6MOA.js → consensus-vote-4W5A6X7A.js} +16 -16
  41. package/dist/{context-retriever-RZ6ES6UT.js → context-retriever-P4WJDXNR.js} +8 -8
  42. package/dist/{doctor-deep-T6SANBEH.js → doctor-deep-B5KM6DDQ.js} +3 -3
  43. package/dist/{doctor-live-7GJFIAZ3.js → doctor-live-2WD3BRLP.js} +9 -9
  44. package/dist/{expert-bridge-KXTXS4WO.js → expert-bridge-UP75M6M7.js} +4 -4
  45. package/dist/{factory-RPJYETAX.js → factory-6W6FGGOC.js} +9 -9
  46. package/dist/{factory-ARF7IPRR.js → factory-QD4SDWNF.js} +5 -5
  47. package/dist/{improvement-review-VXPGIWDO.js → improvement-review-GU6I62HS.js} +5 -5
  48. package/dist/index.js +30 -30
  49. package/dist/{init-opencode-YEEJEZ6X.js → init-opencode-RYCLBR3L.js} +6 -6
  50. package/dist/issue-triage-CMR6TQ6V.js +17 -0
  51. package/dist/{pr-reviewer-helpers-UKY5W27A.js → pr-reviewer-helpers-D6JW3343.js} +4 -4
  52. package/dist/{registry-command-36ODRNON.js → registry-command-634EYXX6.js} +2 -2
  53. package/dist/{repo-security-plan-4GYJGZNI.js → repo-security-plan-AMRKVESS.js} +3 -3
  54. package/dist/{research-helpers-synthesize-EOL5JFU5.js → research-helpers-synthesize-HQVI46LI.js} +4 -4
  55. package/dist/{routing-memory-6CGLV4VC.js → routing-memory-CF6UFICB.js} +2 -2
  56. package/dist/{session-memory-RW2IVSPA.js → session-memory-ZEM6EBBA.js} +3 -3
  57. package/dist/{setup-command-4WEZL6SC.js → setup-command-TW3SE5SS.js} +14 -14
  58. package/dist/{setup-config-BVH2PQJI.js → setup-config-K5DG3KPR.js} +3 -3
  59. package/dist/{setup-custom-api-2KPTNTPJ.js → setup-custom-api-WCQTHVAW.js} +4 -4
  60. package/dist/{tool-memory-IX552UIJ.js → tool-memory-TZE5ND7A.js} +5 -5
  61. package/dist/{unified-registry-U25O2HBT.js → unified-registry-KXI3EMFF.js} +10 -10
  62. package/dist/{weather-report-GTMO64Y6.js → weather-report-OBNLOQQX.js} +2 -2
  63. package/package.json +1 -1
  64. package/dist/chunk-E55HKUGD.js.map +0 -1
  65. package/dist/issue-triage-JL6OR4GW.js +0 -17
  66. /package/dist/{child-mcp-config-7EMSHBAR.js.map → child-mcp-config-TXGCJ52M.js.map} +0 -0
  67. /package/dist/{chunk-BZAE4CSC.js.map → chunk-2A664K4J.js.map} +0 -0
  68. /package/dist/{chunk-2HHQTXNM.js.map → chunk-2DOULPPA.js.map} +0 -0
  69. /package/dist/{chunk-RQDAZHIO.js.map → chunk-4576IZUB.js.map} +0 -0
  70. /package/dist/{chunk-DP7MSK65.js.map → chunk-46EQSU7N.js.map} +0 -0
  71. /package/dist/{chunk-QJ7DCRNA.js.map → chunk-4A47PQKV.js.map} +0 -0
  72. /package/dist/{chunk-5WNGNIEI.js.map → chunk-5AYHIDVQ.js.map} +0 -0
  73. /package/dist/{chunk-KNSXXGQO.js.map → chunk-7ZYXZWAM.js.map} +0 -0
  74. /package/dist/{chunk-7ZTPA3DA.js.map → chunk-A2FENIHB.js.map} +0 -0
  75. /package/dist/{chunk-BE256P4K.js.map → chunk-BQWXGMZP.js.map} +0 -0
  76. /package/dist/{chunk-6AG3OYAZ.js.map → chunk-DG6P3UC5.js.map} +0 -0
  77. /package/dist/{chunk-IS4LVP6J.js.map → chunk-G72SRBER.js.map} +0 -0
  78. /package/dist/{chunk-WD4PYSXP.js.map → chunk-GRIOFYSO.js.map} +0 -0
  79. /package/dist/{chunk-2IEKHIBA.js.map → chunk-H7C3YEVA.js.map} +0 -0
  80. /package/dist/{chunk-RAIVRA2P.js.map → chunk-HYE3V7VA.js.map} +0 -0
  81. /package/dist/{chunk-EP3DR54Z.js.map → chunk-IW3G6WVW.js.map} +0 -0
  82. /package/dist/{chunk-YWDM4NSG.js.map → chunk-JRRUY4BL.js.map} +0 -0
  83. /package/dist/{chunk-JRIXLD4P.js.map → chunk-LUL3Q5BT.js.map} +0 -0
  84. /package/dist/{chunk-PBTWTF24.js.map → chunk-MN34HTJP.js.map} +0 -0
  85. /package/dist/{chunk-5MSYZOYQ.js.map → chunk-NBKJ7L2S.js.map} +0 -0
  86. /package/dist/{chunk-IM7N3F3Q.js.map → chunk-OIMKKI76.js.map} +0 -0
  87. /package/dist/{chunk-HSXKPBIL.js.map → chunk-RSNG6RDI.js.map} +0 -0
  88. /package/dist/{chunk-IQ5HSF5T.js.map → chunk-SFKJXZMV.js.map} +0 -0
  89. /package/dist/{chunk-LZQNX52I.js.map → chunk-TSEVXDKU.js.map} +0 -0
  90. /package/dist/{chunk-3WCKPSX5.js.map → chunk-TWWWWWSG.js.map} +0 -0
  91. /package/dist/{chunk-HC6PAAX6.js.map → chunk-UMCITLCL.js.map} +0 -0
  92. /package/dist/{chunk-KQ57UMTL.js.map → chunk-US3LB5AL.js.map} +0 -0
  93. /package/dist/{chunk-6JFY6VEF.js.map → chunk-W64J4UNG.js.map} +0 -0
  94. /package/dist/{chunk-KFXGTYVY.js.map → chunk-XOTWDMK3.js.map} +0 -0
  95. /package/dist/{chunk-IORRDBLS.js.map → chunk-YQAHWAVA.js.map} +0 -0
  96. /package/dist/{chunk-DQ3M2FOT.js.map → chunk-YSBADPHN.js.map} +0 -0
  97. /package/dist/{chunk-6MTWEBXE.js.map → chunk-ZLSHDEFS.js.map} +0 -0
  98. /package/dist/{cli-circuit-breaker-FTBP6VL7.js.map → cli-circuit-breaker-462DQCFX.js.map} +0 -0
  99. /package/dist/{composite-router-M4HWHAH2.js.map → composite-router-5PY2BSX6.js.map} +0 -0
  100. /package/dist/{consensus-vote-FNKU6MOA.js.map → consensus-vote-4W5A6X7A.js.map} +0 -0
  101. /package/dist/{context-retriever-RZ6ES6UT.js.map → context-retriever-P4WJDXNR.js.map} +0 -0
  102. /package/dist/{doctor-deep-T6SANBEH.js.map → doctor-deep-B5KM6DDQ.js.map} +0 -0
  103. /package/dist/{doctor-live-7GJFIAZ3.js.map → doctor-live-2WD3BRLP.js.map} +0 -0
  104. /package/dist/{expert-bridge-KXTXS4WO.js.map → expert-bridge-UP75M6M7.js.map} +0 -0
  105. /package/dist/{factory-ARF7IPRR.js.map → factory-6W6FGGOC.js.map} +0 -0
  106. /package/dist/{factory-RPJYETAX.js.map → factory-QD4SDWNF.js.map} +0 -0
  107. /package/dist/{improvement-review-VXPGIWDO.js.map → improvement-review-GU6I62HS.js.map} +0 -0
  108. /package/dist/{init-opencode-YEEJEZ6X.js.map → init-opencode-RYCLBR3L.js.map} +0 -0
  109. /package/dist/{issue-triage-JL6OR4GW.js.map → issue-triage-CMR6TQ6V.js.map} +0 -0
  110. /package/dist/{pr-reviewer-helpers-UKY5W27A.js.map → pr-reviewer-helpers-D6JW3343.js.map} +0 -0
  111. /package/dist/{registry-command-36ODRNON.js.map → registry-command-634EYXX6.js.map} +0 -0
  112. /package/dist/{repo-security-plan-4GYJGZNI.js.map → repo-security-plan-AMRKVESS.js.map} +0 -0
  113. /package/dist/{research-helpers-synthesize-EOL5JFU5.js.map → research-helpers-synthesize-HQVI46LI.js.map} +0 -0
  114. /package/dist/{routing-memory-6CGLV4VC.js.map → routing-memory-CF6UFICB.js.map} +0 -0
  115. /package/dist/{session-memory-RW2IVSPA.js.map → session-memory-ZEM6EBBA.js.map} +0 -0
  116. /package/dist/{setup-command-4WEZL6SC.js.map → setup-command-TW3SE5SS.js.map} +0 -0
  117. /package/dist/{setup-config-BVH2PQJI.js.map → setup-config-K5DG3KPR.js.map} +0 -0
  118. /package/dist/{setup-custom-api-2KPTNTPJ.js.map → setup-custom-api-WCQTHVAW.js.map} +0 -0
  119. /package/dist/{tool-memory-IX552UIJ.js.map → tool-memory-TZE5ND7A.js.map} +0 -0
  120. /package/dist/{unified-registry-U25O2HBT.js.map → unified-registry-KXI3EMFF.js.map} +0 -0
  121. /package/dist/{weather-report-GTMO64Y6.js.map → weather-report-OBNLOQQX.js.map} +0 -0
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-SNJNRDKZ.js";
4
4
  import {
5
5
  createLogger
6
- } from "./chunk-E55HKUGD.js";
6
+ } from "./chunk-D62GTDJR.js";
7
7
  import "./chunk-2HUC6NZN.js";
8
8
  import "./chunk-OQLFRJCW.js";
9
9
  import "./chunk-ZPWHCABL.js";
@@ -62,4 +62,4 @@ export {
62
62
  generateMcpConfig,
63
63
  getDefaultAllowedTools
64
64
  };
65
- //# sourceMappingURL=child-mcp-config-7EMSHBAR.js.map
65
+ //# sourceMappingURL=child-mcp-config-TXGCJ52M.js.map
@@ -4,7 +4,7 @@ import {
4
4
  import {
5
5
  createLogger,
6
6
  getTimeProvider
7
- } from "./chunk-E55HKUGD.js";
7
+ } from "./chunk-D62GTDJR.js";
8
8
 
9
9
  // src/mcp/tools/scanner-registry-fetcher.ts
10
10
  import { z } from "zod";
@@ -721,4 +721,4 @@ export {
721
721
  generateSecurityPlan,
722
722
  buildPlanFromAnalysis
723
723
  };
724
- //# sourceMappingURL=chunk-BZAE4CSC.js.map
724
+ //# sourceMappingURL=chunk-2A664K4J.js.map
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  createAutoAdapter
3
- } from "./chunk-IM7N3F3Q.js";
3
+ } from "./chunk-OIMKKI76.js";
4
4
  import {
5
5
  getDefaultCliCircuitBreakerRegistry,
6
6
  mapModelErrorToCategory
7
- } from "./chunk-3WCKPSX5.js";
7
+ } from "./chunk-TWWWWWSG.js";
8
8
  import {
9
9
  CLI_NAMES,
10
10
  CircularBuffer,
@@ -22,7 +22,7 @@ import {
22
22
  ok,
23
23
  recordRateLimitEvent,
24
24
  toRateLimitError
25
- } from "./chunk-E55HKUGD.js";
25
+ } from "./chunk-D62GTDJR.js";
26
26
 
27
27
  // src/agents/collaboration/event-bus-helpers.ts
28
28
  import { randomUUID } from "crypto";
@@ -863,4 +863,4 @@ export {
863
863
  getGlobalRegistry,
864
864
  resetGlobalRegistry
865
865
  };
866
- //# sourceMappingURL=chunk-2HHQTXNM.js.map
866
+ //# sourceMappingURL=chunk-2DOULPPA.js.map
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  GitHubProvider,
3
3
  ScmError
4
- } from "./chunk-IORRDBLS.js";
4
+ } from "./chunk-YQAHWAVA.js";
5
5
  import {
6
6
  resolveToken
7
- } from "./chunk-HSXKPBIL.js";
7
+ } from "./chunk-RSNG6RDI.js";
8
8
  import {
9
9
  err,
10
10
  ok
11
- } from "./chunk-E55HKUGD.js";
11
+ } from "./chunk-D62GTDJR.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-RQDAZHIO.js.map
44
+ //# sourceMappingURL=chunk-4576IZUB.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  getTimeProvider
3
- } from "./chunk-E55HKUGD.js";
3
+ } from "./chunk-D62GTDJR.js";
4
4
 
5
5
  // src/security/audit-trail.ts
6
6
  var MAX_EVENTS = 1e4;
@@ -205,4 +205,4 @@ export {
205
205
  createGraphAuditBridge,
206
206
  createAuditTrail
207
207
  };
208
- //# sourceMappingURL=chunk-DP7MSK65.js.map
208
+ //# sourceMappingURL=chunk-46EQSU7N.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  emitClawGuardViolation
3
- } from "./chunk-DP7MSK65.js";
3
+ } from "./chunk-46EQSU7N.js";
4
4
  import {
5
5
  CACHE_TIMEOUTS,
6
6
  MCP_TIMEOUTS,
@@ -16,7 +16,7 @@ import {
16
16
  getTimeProvider,
17
17
  ok,
18
18
  resolveToolClassGuardMs
19
- } from "./chunk-E55HKUGD.js";
19
+ } from "./chunk-D62GTDJR.js";
20
20
  import {
21
21
  getNexusDataDir
22
22
  } from "./chunk-OQLFRJCW.js";
@@ -2042,4 +2042,4 @@ export {
2042
2042
  VOTING_THRESHOLDS,
2043
2043
  ConsensusMetricsSchema
2044
2044
  };
2045
- //# sourceMappingURL=chunk-QJ7DCRNA.js.map
2045
+ //# sourceMappingURL=chunk-4A47PQKV.js.map
@@ -12,11 +12,11 @@ import {
12
12
  gateWithReputation,
13
13
  resolveReputationGatingMode,
14
14
  sanitizeInput
15
- } from "./chunk-KQ57UMTL.js";
15
+ } from "./chunk-US3LB5AL.js";
16
16
  import {
17
17
  createLogger,
18
18
  getTimeProvider
19
- } from "./chunk-E55HKUGD.js";
19
+ } from "./chunk-D62GTDJR.js";
20
20
 
21
21
  // src/dogfooding/pr-reviewer-helpers.ts
22
22
  import { randomUUID } from "crypto";
@@ -291,4 +291,4 @@ export {
291
291
  formatReviewComment,
292
292
  createFailedReview
293
293
  };
294
- //# sourceMappingURL=chunk-5WNGNIEI.js.map
294
+ //# sourceMappingURL=chunk-5AYHIDVQ.js.map
@@ -4,16 +4,16 @@ import {
4
4
  loadPapersRegistry,
5
5
  loadTechniquesRegistry,
6
6
  savePapersRegistry
7
- } from "./chunk-5MSYZOYQ.js";
7
+ } from "./chunk-NBKJ7L2S.js";
8
8
  import {
9
9
  resolveInsideRoot
10
10
  } from "./chunk-NUBSJGQZ.js";
11
11
  import {
12
12
  resolveToken
13
- } from "./chunk-HSXKPBIL.js";
13
+ } from "./chunk-RSNG6RDI.js";
14
14
  import {
15
15
  getToolMemory
16
- } from "./chunk-WD4PYSXP.js";
16
+ } from "./chunk-GRIOFYSO.js";
17
17
  import {
18
18
  capitalizeWords,
19
19
  tokenizeFiltered,
@@ -39,7 +39,7 @@ import {
39
39
  getTimeProvider,
40
40
  ok,
41
41
  registerPersistentDistillerFactory
42
- } from "./chunk-E55HKUGD.js";
42
+ } from "./chunk-D62GTDJR.js";
43
43
  import {
44
44
  ensureLearningDir,
45
45
  getRulesFile
@@ -4107,4 +4107,4 @@ export {
4107
4107
  DEFAULT_CONTEXT_BUDGET_TOKENS,
4108
4108
  getContextPromptPrefix
4109
4109
  };
4110
- //# sourceMappingURL=chunk-KNSXXGQO.js.map
4110
+ //# sourceMappingURL=chunk-7ZYXZWAM.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  computeCostDetail,
3
3
  priceBasisOf
4
- } from "./chunk-IQ5HSF5T.js";
4
+ } from "./chunk-SFKJXZMV.js";
5
5
  import {
6
6
  allOf
7
7
  } from "./chunk-OQB3XC5O.js";
@@ -22,20 +22,20 @@ import {
22
22
  toolSuccess,
23
23
  withProgressHeartbeat,
24
24
  wrapToolWithTimeout
25
- } from "./chunk-QJ7DCRNA.js";
25
+ } from "./chunk-4A47PQKV.js";
26
26
  import {
27
27
  createEvent,
28
28
  getGlobalRegistry
29
- } from "./chunk-2HHQTXNM.js";
29
+ } from "./chunk-2DOULPPA.js";
30
30
  import {
31
31
  getToolMemory
32
- } from "./chunk-WD4PYSXP.js";
32
+ } from "./chunk-GRIOFYSO.js";
33
33
  import {
34
34
  authRemediation,
35
35
  delay,
36
36
  getAvailableClis,
37
37
  withTimeout
38
- } from "./chunk-IM7N3F3Q.js";
38
+ } from "./chunk-OIMKKI76.js";
39
39
  import {
40
40
  AgentError,
41
41
  CLI_NAMES,
@@ -64,7 +64,7 @@ import {
64
64
  resolveClassGuardMs,
65
65
  resolveModelIdentitySync,
66
66
  resolveVoteTimeout
67
- } from "./chunk-E55HKUGD.js";
67
+ } from "./chunk-D62GTDJR.js";
68
68
  import {
69
69
  ensureLearningDir,
70
70
  getOutcomesFile
@@ -6162,7 +6162,7 @@ async function processVotesWithCascade(engineVotes, opts) {
6162
6162
  var CONTRARIAN_ESCALATION_THRESHOLD = 0.8;
6163
6163
  async function runContrarianCheck(proposal, log) {
6164
6164
  try {
6165
- const { executeExpert } = await import("./expert-bridge-KXTXS4WO.js");
6165
+ const { executeExpert } = await import("./expert-bridge-UP75M6M7.js");
6166
6166
  const prompt = [
6167
6167
  "You are a contrarian analyst. Your job is to find reasons this proposal should be REJECTED.",
6168
6168
  "Look for: YAGNI (not needed), MISALIGNED (wrong tech/architecture), SECURITY_RISK, SCOPE_CREEP.",
@@ -6728,4 +6728,4 @@ export {
6728
6728
  CONSENSUS_VOTE_TOOL_SCHEMA,
6729
6729
  registerConsensusVoteTool
6730
6730
  };
6731
- //# sourceMappingURL=chunk-7ZTPA3DA.js.map
6731
+ //# sourceMappingURL=chunk-A2FENIHB.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  GitHubProvider,
3
3
  ScmError
4
- } from "./chunk-IORRDBLS.js";
4
+ } from "./chunk-YQAHWAVA.js";
5
5
  import {
6
6
  ROLE_DEFAULT_TRUST,
7
7
  ReputationCache,
@@ -11,20 +11,20 @@ import {
11
11
  gateWithReputation,
12
12
  resolveReputationGatingMode,
13
13
  sanitizeInput
14
- } from "./chunk-KQ57UMTL.js";
14
+ } from "./chunk-US3LB5AL.js";
15
15
  import {
16
16
  emitPolicyEvent
17
- } from "./chunk-DP7MSK65.js";
17
+ } from "./chunk-46EQSU7N.js";
18
18
  import {
19
19
  hasToken
20
- } from "./chunk-HSXKPBIL.js";
20
+ } from "./chunk-RSNG6RDI.js";
21
21
  import {
22
22
  CLI_SUBPROCESS_TIMEOUTS,
23
23
  createLogger,
24
24
  err,
25
25
  getTimeProvider,
26
26
  ok
27
- } from "./chunk-E55HKUGD.js";
27
+ } from "./chunk-D62GTDJR.js";
28
28
 
29
29
  // src/security/trust-classifier.ts
30
30
  function mapAuthorAssociation(association) {
@@ -1247,4 +1247,4 @@ export {
1247
1247
  IssueTriage,
1248
1248
  createIssueTriage
1249
1249
  };
1250
- //# sourceMappingURL=chunk-BE256P4K.js.map
1250
+ //# sourceMappingURL=chunk-BQWXGMZP.js.map
@@ -2623,7 +2623,7 @@ function setDefaultRegistry(registry) {
2623
2623
  }
2624
2624
  async function reloadDefaultRegistry() {
2625
2625
  globalRegistry = buildDefaultRegistry();
2626
- const { resetGlobalRegistry } = await import("./unified-registry-U25O2HBT.js");
2626
+ const { resetGlobalRegistry } = await import("./unified-registry-KXI3EMFF.js");
2627
2627
  resetGlobalRegistry();
2628
2628
  return globalRegistry;
2629
2629
  }
@@ -8994,8 +8994,11 @@ var DistilledRuleStage = class {
8994
8994
  const updated2 = addTrace(ctx, this.name, elapsed2, "skip", "no active rules");
8995
8995
  return ok({ context: updated2, continuesPipeline: true });
8996
8996
  }
8997
- const category = this.extractCategory(ctx);
8997
+ const category = readTaskCategory(ctx);
8998
8998
  let updated = ctx;
8999
+ if (category === void 0) {
9000
+ updated = { ...updated, signals: [...updated.signals, "distilled-rule:category-unknown"] };
9001
+ }
8999
9002
  let applied = 0;
9000
9003
  for (const cli of candidates) {
9001
9004
  const matchingRules = this.findMatchingRules(activeRules, cli, category);
@@ -9030,18 +9033,11 @@ var DistilledRuleStage = class {
9030
9033
  const baseDelta = rule.action === "penalize" ? this.config.penaltyDelta : rule.action === "boost" ? this.config.boostDelta : this.config.avoidDelta;
9031
9034
  return baseDelta * rule.confidence;
9032
9035
  }
9033
- extractCategory(ctx) {
9034
- for (const signal of ctx.signals) {
9035
- if (signal.startsWith("task-category:")) {
9036
- return signal.slice("task-category:".length);
9037
- }
9038
- if (signal.startsWith("capability:type=")) {
9039
- return signal.slice("capability:type=".length);
9040
- }
9041
- }
9042
- return void 0;
9043
- }
9044
9036
  };
9037
+ function readTaskCategory(ctx) {
9038
+ const parsed = TaskCategorySchema.safeParse(ctx.metadata?.["taskCategory"]);
9039
+ return parsed.success ? parsed.data : void 0;
9040
+ }
9045
9041
 
9046
9042
  // src/cli-adapters/routing/stages/knn-routing-stage.ts
9047
9043
  var DEFAULT_K = 5;
@@ -10585,13 +10581,14 @@ function adjustProfileForTask(profile, taskProfile) {
10585
10581
  }
10586
10582
  return profile;
10587
10583
  }
10588
- function taskProfileToBanditContext(profile) {
10584
+ var NEUTRAL_FEATURE = 0.5;
10585
+ function taskProfileToBanditContext(profile, budgetUtilization) {
10589
10586
  return {
10590
10587
  taskComplexity: profile.reasoningComplexity / 10,
10591
10588
  contextLengthNormalized: Math.min(profile.contextRequired / 1e5, 1),
10592
10589
  isCodeTask: profile.codeGeneration ? 1 : 0,
10593
10590
  isReasoningTask: profile.taskType === "architecture" || profile.reasoningComplexity > 5 ? 1 : 0,
10594
- budgetUtilization: 0.5,
10591
+ budgetUtilization: budgetUtilization ?? NEUTRAL_FEATURE,
10595
10592
  timePressure: 0.3
10596
10593
  };
10597
10594
  }
@@ -13801,11 +13798,15 @@ async function runResourceStrategyStage(task, candidates, stagesExecuted, deps,
13801
13798
  tierMeasured
13802
13799
  };
13803
13800
  }
13804
- async function runDistilledRuleStage(task, candidates, stagesExecuted, deps) {
13801
+ async function runDistilledRuleStage(task, candidates, stagesExecuted, deps, taskCategory) {
13805
13802
  if (!deps.config.enableStrategyDistillation || deps.distilledRuleStage === void 0) {
13806
13803
  return { scores: /* @__PURE__ */ new Map(), rulesApplied: 0 };
13807
13804
  }
13808
- const ctx = createRoutingContext(task.content, armsToSlots(candidates));
13805
+ const ctx = createRoutingContext(
13806
+ task.content,
13807
+ armsToSlots(candidates),
13808
+ taskCategory === void 0 ? void 0 : { taskCategory }
13809
+ );
13809
13810
  const result = await deps.distilledRuleStage.route(ctx);
13810
13811
  stagesExecuted.push("distilled-rule");
13811
13812
  if (!result.ok) {
@@ -13881,11 +13882,11 @@ function runTopsisStage(taskProfile, candidates, stagesExecuted, deps, options)
13881
13882
  stagesExecuted.push("topsis-ranking");
13882
13883
  return { ranking: result.ranking, score: result.topScore };
13883
13884
  }
13884
- function runLinUCBStage(taskProfile, topsisRanking, stagesExecuted, deps) {
13885
+ function runLinUCBStage(taskProfile, topsisRanking, stagesExecuted, deps, budgetUtilization) {
13885
13886
  if (!deps.config.enableLinUCBSelection || deps.linucbBandit === void 0) {
13886
13887
  return { selectedCli: topsisRanking[0], ucbScore: void 0 };
13887
13888
  }
13888
- const banditContext = taskProfileToBanditContext(taskProfile);
13889
+ const banditContext = taskProfileToBanditContext(taskProfile, budgetUtilization);
13889
13890
  const selection = deps.linucbBandit.select(banditContext);
13890
13891
  stagesExecuted.push("linucb-selection");
13891
13892
  const picked = selection.armName;
@@ -13985,6 +13986,9 @@ function mergeScoreMaps(...maps) {
13985
13986
  }
13986
13987
  return merged;
13987
13988
  }
13989
+ function detectedCategory(task) {
13990
+ return detectTaskCategory(task.content)?.category;
13991
+ }
13988
13992
  async function runScoringStages(task, candidates, stagesExecuted, deps, budgetUtilization) {
13989
13993
  const cascadeResult = await runConfidenceCascadeStage(task, candidates, stagesExecuted, deps);
13990
13994
  const memoryResult = runRoutingMemoryStage(task, candidates, stagesExecuted, deps);
@@ -13992,7 +13996,8 @@ async function runScoringStages(task, candidates, stagesExecuted, deps, budgetUt
13992
13996
  const knnResult = await runKnnRoutingStage(task, candidates, stagesExecuted, deps);
13993
13997
  const zeroResult = runZeroRouterStage(task, candidates, stagesExecuted, deps);
13994
13998
  let filtered = zeroResult.filteredCandidates;
13995
- const distilledResult = await runDistilledRuleStage(task, filtered, stagesExecuted, deps);
13999
+ const cat = detectedCategory(task);
14000
+ const distilledResult = await runDistilledRuleStage(task, filtered, stagesExecuted, deps, cat);
13996
14001
  const prefResult = runPreferenceStage(task, filtered, stagesExecuted, deps);
13997
14002
  filtered = prefResult.preferredCandidates;
13998
14003
  const resourceResult = await runResourceStrategyStage(
@@ -14132,7 +14137,13 @@ async function runPipeline(task, taskProfile, stagesExecuted, cliNames, deps) {
14132
14137
  };
14133
14138
  if (stageScores.size > 0) topsisOpts.stageScores = stageScores;
14134
14139
  const topsisResult = runTopsisStage(taskProfile, candidates, stagesExecuted, deps, topsisOpts);
14135
- const linucbResult = runLinUCBStage(taskProfile, topsisResult.ranking, stagesExecuted, deps);
14140
+ const linucbResult = runLinUCBStage(
14141
+ taskProfile,
14142
+ topsisResult.ranking,
14143
+ stagesExecuted,
14144
+ deps,
14145
+ budgetResult.value.budgetUtilization
14146
+ );
14136
14147
  if (linucbResult.selectedCli === void 0) {
14137
14148
  return err(new CompositeRoutingError("No candidates available", "selection"));
14138
14149
  }
@@ -15068,7 +15079,7 @@ var CompositeRouter = class _CompositeRouter {
15068
15079
  */
15069
15080
  async consultUnifiedContext(task) {
15070
15081
  try {
15071
- const { getContextForTask, inferTaskCategory } = await import("./context-retriever-RZ6ES6UT.js");
15082
+ const { getContextForTask, inferTaskCategory } = await import("./context-retriever-P4WJDXNR.js");
15072
15083
  const ctx = await getContextForTask({
15073
15084
  task: task.content,
15074
15085
  category: inferTaskCategory(task.content),
@@ -16658,4 +16669,4 @@ export {
16658
16669
  AgentCapability,
16659
16670
  OrchestratorError
16660
16671
  };
16661
- //# sourceMappingURL=chunk-E55HKUGD.js.map
16672
+ //# sourceMappingURL=chunk-D62GTDJR.js.map