nexus-agents 8.21.0 → 8.22.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 (129) hide show
  1. package/dist/{ast-rule-runner-U6QJUMBQ.js → ast-rule-runner-SDQOIQRZ.js} +3 -3
  2. package/dist/{child-mcp-config-UEDU27VQ.js → child-mcp-config-ODRZEYO4.js} +2 -2
  3. package/dist/{chunk-SKBDJDRW.js → chunk-3F2WBIAE.js} +2 -2
  4. package/dist/{chunk-VJLTHKKA.js → chunk-3R6IOJLN.js} +2 -2
  5. package/dist/{chunk-V7L3KXDY.js → chunk-4BTSZ5FM.js} +2 -2
  6. package/dist/{chunk-OEEUFDGL.js → chunk-52ZXFIYU.js} +2 -2
  7. package/dist/{chunk-MZLBC4C2.js → chunk-5KDANU4X.js} +2 -2
  8. package/dist/{chunk-D6NQ7D4K.js → chunk-5MJQCHS4.js} +27 -35
  9. package/dist/{chunk-D6NQ7D4K.js.map → chunk-5MJQCHS4.js.map} +1 -1
  10. package/dist/{chunk-5RRAFT4P.js → chunk-6NG32SWL.js} +2 -2
  11. package/dist/{chunk-KRN4MWKC.js → chunk-7MBHNIUH.js} +2 -2
  12. package/dist/{chunk-AL44KHC6.js → chunk-AITXIX5S.js} +3 -3
  13. package/dist/{chunk-V4JTGJIU.js → chunk-CWFBUAHM.js} +4 -4
  14. package/dist/chunk-D7M6FUWK.js +7 -0
  15. package/dist/{chunk-4WTKAKGB.js → chunk-F2XSEDQB.js} +9 -9
  16. package/dist/{chunk-A5KXHX36.js → chunk-FUA3WSZN.js} +55 -26
  17. package/dist/chunk-FUA3WSZN.js.map +1 -0
  18. package/dist/{chunk-JIMMV2IH.js → chunk-H72S6PWN.js} +2 -2
  19. package/dist/{chunk-HXK7DROF.js → chunk-IXJS3GMI.js} +7 -7
  20. package/dist/{chunk-QKIWUNKO.js → chunk-JO4RQSXK.js} +2 -2
  21. package/dist/{chunk-TPV5G24V.js → chunk-LJFVNMYK.js} +2 -2
  22. package/dist/{chunk-YJF57CQG.js → chunk-N3HWX2H2.js} +2 -2
  23. package/dist/{chunk-6GLQNTZB.js → chunk-O23TG6DE.js} +3 -3
  24. package/dist/{chunk-JVG47M5L.js → chunk-OAIW2IPL.js} +4 -4
  25. package/dist/{chunk-JKKZUDSX.js → chunk-PWFFWOJX.js} +3 -3
  26. package/dist/{chunk-6PSXNWLW.js → chunk-QQGP237B.js} +4 -4
  27. package/dist/{chunk-SW2XJWWV.js → chunk-R2H7VBEK.js} +5 -5
  28. package/dist/{chunk-YW6RUGTL.js → chunk-RO7MFYM3.js} +36 -36
  29. package/dist/{chunk-SWQILV5C.js → chunk-SE2EXART.js} +10 -3
  30. package/dist/chunk-SE2EXART.js.map +1 -0
  31. package/dist/{chunk-M2OKIPZL.js → chunk-SRRDYVWU.js} +7 -7
  32. package/dist/{chunk-L42MPQIR.js → chunk-T4KYQXJ4.js} +8 -8
  33. package/dist/{chunk-2KZKQ6HN.js → chunk-U6HN2FGG.js} +3 -3
  34. package/dist/{chunk-CBKFZKQ2.js → chunk-WDOTLCWV.js} +2 -2
  35. package/dist/{chunk-HGDDJZLF.js → chunk-WDTSF5AA.js} +2 -2
  36. package/dist/{chunk-WXZHMWYI.js → chunk-WVKDOQ6P.js} +2 -2
  37. package/dist/{chunk-7WTTZRV2.js → chunk-ZGN5NO47.js} +2 -2
  38. package/dist/{chunk-JO6BMW4F.js → chunk-ZPAGB2SE.js} +4 -4
  39. package/dist/{chunk-LCNVY2EA.js → chunk-ZQXTKEUT.js} +2 -2
  40. package/dist/{cli-circuit-breaker-CYAVLPLM.js → cli-circuit-breaker-DE7PUEDU.js} +3 -3
  41. package/dist/cli.js +43 -43
  42. package/dist/{composite-router-7BO2452B.js → composite-router-2G6ZEV2S.js} +2 -2
  43. package/dist/{consensus-vote-4PBL7DNL.js → consensus-vote-ERH33XQO.js} +17 -17
  44. package/dist/{context-retriever-IUAAZQQU.js → context-retriever-HHWBMQWP.js} +8 -8
  45. package/dist/{doctor-deep-IYLTNU3U.js → doctor-deep-4NURQLSS.js} +3 -3
  46. package/dist/{doctor-live-QYZWBRME.js → doctor-live-FU25BNDK.js} +9 -9
  47. package/dist/{expert-bridge-NFL3YP63.js → expert-bridge-LX7FVP5Z.js} +4 -4
  48. package/dist/{factory-EH5B5OMO.js → factory-LI4KSRMW.js} +9 -9
  49. package/dist/{factory-JXI73XL4.js → factory-TWM3UZLN.js} +5 -5
  50. package/dist/{improvement-review-LWPQE2IT.js → improvement-review-P6BTA2MR.js} +6 -6
  51. package/dist/index.d.ts +2 -0
  52. package/dist/index.js +31 -31
  53. package/dist/{init-opencode-C4X6XCAR.js → init-opencode-TPQK7EEF.js} +6 -6
  54. package/dist/issue-triage-NT2DHAPW.js +17 -0
  55. package/dist/{pr-reviewer-helpers-JZDP4CS2.js → pr-reviewer-helpers-7HQZWV76.js} +4 -4
  56. package/dist/{registry-command-P54N2CVL.js → registry-command-VN52ABY3.js} +2 -2
  57. package/dist/{repo-security-plan-NMXWMIY6.js → repo-security-plan-S5273JAG.js} +3 -3
  58. package/dist/{research-helpers-synthesize-JOEPQBRU.js → research-helpers-synthesize-ZW5JWFRL.js} +4 -4
  59. package/dist/{routing-memory-XFKOAHIR.js → routing-memory-V4GY3BPK.js} +2 -2
  60. package/dist/{session-memory-FOD5Q3D7.js → session-memory-T2JMN6XL.js} +3 -3
  61. package/dist/{setup-config-FW7EFH3V.js → setup-config-AV7BBT3L.js} +3 -3
  62. package/dist/{setup-custom-api-CX4RXIZZ.js → setup-custom-api-K2JKBSLE.js} +4 -4
  63. package/dist/setup-data-dir-PNV2NA4Z.js +29 -0
  64. package/dist/{tool-memory-IIG2UAFD.js → tool-memory-PZH2ETBS.js} +5 -5
  65. package/dist/{unified-registry-6XWPGIAI.js → unified-registry-EPMTT6JO.js} +10 -10
  66. package/dist/{weather-report-WK2KMP7B.js → weather-report-XJINXQKZ.js} +2 -2
  67. package/package.json +1 -1
  68. package/dist/chunk-A5KXHX36.js.map +0 -1
  69. package/dist/chunk-SWQILV5C.js.map +0 -1
  70. package/dist/chunk-ZTLVF472.js +0 -7
  71. package/dist/issue-triage-SKXZT5EL.js +0 -17
  72. package/dist/setup-data-dir-WWBYZZAF.js +0 -29
  73. /package/dist/{ast-rule-runner-U6QJUMBQ.js.map → ast-rule-runner-SDQOIQRZ.js.map} +0 -0
  74. /package/dist/{child-mcp-config-UEDU27VQ.js.map → child-mcp-config-ODRZEYO4.js.map} +0 -0
  75. /package/dist/{chunk-SKBDJDRW.js.map → chunk-3F2WBIAE.js.map} +0 -0
  76. /package/dist/{chunk-VJLTHKKA.js.map → chunk-3R6IOJLN.js.map} +0 -0
  77. /package/dist/{chunk-V7L3KXDY.js.map → chunk-4BTSZ5FM.js.map} +0 -0
  78. /package/dist/{chunk-OEEUFDGL.js.map → chunk-52ZXFIYU.js.map} +0 -0
  79. /package/dist/{chunk-MZLBC4C2.js.map → chunk-5KDANU4X.js.map} +0 -0
  80. /package/dist/{chunk-5RRAFT4P.js.map → chunk-6NG32SWL.js.map} +0 -0
  81. /package/dist/{chunk-KRN4MWKC.js.map → chunk-7MBHNIUH.js.map} +0 -0
  82. /package/dist/{chunk-AL44KHC6.js.map → chunk-AITXIX5S.js.map} +0 -0
  83. /package/dist/{chunk-V4JTGJIU.js.map → chunk-CWFBUAHM.js.map} +0 -0
  84. /package/dist/{chunk-ZTLVF472.js.map → chunk-D7M6FUWK.js.map} +0 -0
  85. /package/dist/{chunk-4WTKAKGB.js.map → chunk-F2XSEDQB.js.map} +0 -0
  86. /package/dist/{chunk-JIMMV2IH.js.map → chunk-H72S6PWN.js.map} +0 -0
  87. /package/dist/{chunk-HXK7DROF.js.map → chunk-IXJS3GMI.js.map} +0 -0
  88. /package/dist/{chunk-QKIWUNKO.js.map → chunk-JO4RQSXK.js.map} +0 -0
  89. /package/dist/{chunk-TPV5G24V.js.map → chunk-LJFVNMYK.js.map} +0 -0
  90. /package/dist/{chunk-YJF57CQG.js.map → chunk-N3HWX2H2.js.map} +0 -0
  91. /package/dist/{chunk-6GLQNTZB.js.map → chunk-O23TG6DE.js.map} +0 -0
  92. /package/dist/{chunk-JVG47M5L.js.map → chunk-OAIW2IPL.js.map} +0 -0
  93. /package/dist/{chunk-JKKZUDSX.js.map → chunk-PWFFWOJX.js.map} +0 -0
  94. /package/dist/{chunk-6PSXNWLW.js.map → chunk-QQGP237B.js.map} +0 -0
  95. /package/dist/{chunk-SW2XJWWV.js.map → chunk-R2H7VBEK.js.map} +0 -0
  96. /package/dist/{chunk-YW6RUGTL.js.map → chunk-RO7MFYM3.js.map} +0 -0
  97. /package/dist/{chunk-M2OKIPZL.js.map → chunk-SRRDYVWU.js.map} +0 -0
  98. /package/dist/{chunk-L42MPQIR.js.map → chunk-T4KYQXJ4.js.map} +0 -0
  99. /package/dist/{chunk-2KZKQ6HN.js.map → chunk-U6HN2FGG.js.map} +0 -0
  100. /package/dist/{chunk-CBKFZKQ2.js.map → chunk-WDOTLCWV.js.map} +0 -0
  101. /package/dist/{chunk-HGDDJZLF.js.map → chunk-WDTSF5AA.js.map} +0 -0
  102. /package/dist/{chunk-WXZHMWYI.js.map → chunk-WVKDOQ6P.js.map} +0 -0
  103. /package/dist/{chunk-7WTTZRV2.js.map → chunk-ZGN5NO47.js.map} +0 -0
  104. /package/dist/{chunk-JO6BMW4F.js.map → chunk-ZPAGB2SE.js.map} +0 -0
  105. /package/dist/{chunk-LCNVY2EA.js.map → chunk-ZQXTKEUT.js.map} +0 -0
  106. /package/dist/{cli-circuit-breaker-CYAVLPLM.js.map → cli-circuit-breaker-DE7PUEDU.js.map} +0 -0
  107. /package/dist/{composite-router-7BO2452B.js.map → composite-router-2G6ZEV2S.js.map} +0 -0
  108. /package/dist/{consensus-vote-4PBL7DNL.js.map → consensus-vote-ERH33XQO.js.map} +0 -0
  109. /package/dist/{context-retriever-IUAAZQQU.js.map → context-retriever-HHWBMQWP.js.map} +0 -0
  110. /package/dist/{doctor-deep-IYLTNU3U.js.map → doctor-deep-4NURQLSS.js.map} +0 -0
  111. /package/dist/{doctor-live-QYZWBRME.js.map → doctor-live-FU25BNDK.js.map} +0 -0
  112. /package/dist/{expert-bridge-NFL3YP63.js.map → expert-bridge-LX7FVP5Z.js.map} +0 -0
  113. /package/dist/{factory-EH5B5OMO.js.map → factory-LI4KSRMW.js.map} +0 -0
  114. /package/dist/{factory-JXI73XL4.js.map → factory-TWM3UZLN.js.map} +0 -0
  115. /package/dist/{improvement-review-LWPQE2IT.js.map → improvement-review-P6BTA2MR.js.map} +0 -0
  116. /package/dist/{init-opencode-C4X6XCAR.js.map → init-opencode-TPQK7EEF.js.map} +0 -0
  117. /package/dist/{issue-triage-SKXZT5EL.js.map → issue-triage-NT2DHAPW.js.map} +0 -0
  118. /package/dist/{pr-reviewer-helpers-JZDP4CS2.js.map → pr-reviewer-helpers-7HQZWV76.js.map} +0 -0
  119. /package/dist/{registry-command-P54N2CVL.js.map → registry-command-VN52ABY3.js.map} +0 -0
  120. /package/dist/{repo-security-plan-NMXWMIY6.js.map → repo-security-plan-S5273JAG.js.map} +0 -0
  121. /package/dist/{research-helpers-synthesize-JOEPQBRU.js.map → research-helpers-synthesize-ZW5JWFRL.js.map} +0 -0
  122. /package/dist/{routing-memory-XFKOAHIR.js.map → routing-memory-V4GY3BPK.js.map} +0 -0
  123. /package/dist/{session-memory-FOD5Q3D7.js.map → session-memory-T2JMN6XL.js.map} +0 -0
  124. /package/dist/{setup-config-FW7EFH3V.js.map → setup-config-AV7BBT3L.js.map} +0 -0
  125. /package/dist/{setup-custom-api-CX4RXIZZ.js.map → setup-custom-api-K2JKBSLE.js.map} +0 -0
  126. /package/dist/{setup-data-dir-WWBYZZAF.js.map → setup-data-dir-PNV2NA4Z.js.map} +0 -0
  127. /package/dist/{tool-memory-IIG2UAFD.js.map → tool-memory-PZH2ETBS.js.map} +0 -0
  128. /package/dist/{unified-registry-6XWPGIAI.js.map → unified-registry-EPMTT6JO.js.map} +0 -0
  129. /package/dist/{weather-report-WK2KMP7B.js.map → weather-report-XJINXQKZ.js.map} +0 -0
@@ -9,8 +9,8 @@ import {
9
9
  getBuiltInAstRulesPath,
10
10
  loadRules,
11
11
  runAstQaRules
12
- } from "./chunk-7WTTZRV2.js";
13
- import "./chunk-AL44KHC6.js";
12
+ } from "./chunk-ZGN5NO47.js";
13
+ import "./chunk-AITXIX5S.js";
14
14
  import "./chunk-7WJGV5DN.js";
15
15
  import "./chunk-J7QCZRVK.js";
16
16
  import "./chunk-ZPWHCABL.js";
@@ -26,4 +26,4 @@ export {
26
26
  loadRules,
27
27
  runAstQaRules
28
28
  };
29
- //# sourceMappingURL=ast-rule-runner-U6QJUMBQ.js.map
29
+ //# sourceMappingURL=ast-rule-runner-SDQOIQRZ.js.map
@@ -3,7 +3,7 @@ import {
3
3
  } from "./chunk-DKHBIJO4.js";
4
4
  import {
5
5
  createLogger
6
- } from "./chunk-AL44KHC6.js";
6
+ } from "./chunk-AITXIX5S.js";
7
7
  import "./chunk-7WJGV5DN.js";
8
8
  import "./chunk-J7QCZRVK.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-UEDU27VQ.js.map
65
+ //# sourceMappingURL=child-mcp-config-ODRZEYO4.js.map
@@ -3,7 +3,7 @@ import {
3
3
  MODEL_IDS,
4
4
  getTimeProvider,
5
5
  resolveModelIdentitySync
6
- } from "./chunk-AL44KHC6.js";
6
+ } from "./chunk-AITXIX5S.js";
7
7
 
8
8
  // src/config/model-availability.ts
9
9
  var DEFAULT_TTL_MS = 6e4;
@@ -150,4 +150,4 @@ export {
150
150
  resetAvailabilityCache,
151
151
  filterAvailableModels
152
152
  };
153
- //# sourceMappingURL=chunk-SKBDJDRW.js.map
153
+ //# sourceMappingURL=chunk-3F2WBIAE.js.map
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  getTimeProvider
3
- } from "./chunk-AL44KHC6.js";
3
+ } from "./chunk-AITXIX5S.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-VJLTHKKA.js.map
208
+ //# sourceMappingURL=chunk-3R6IOJLN.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  getRandomProvider,
3
3
  getTimeProvider
4
- } from "./chunk-AL44KHC6.js";
4
+ } from "./chunk-AITXIX5S.js";
5
5
 
6
6
  // src/utils/id-utils.ts
7
7
  import { randomUUID } from "node:crypto";
@@ -24,4 +24,4 @@ export {
24
24
  generateHyphenId,
25
25
  generateUUID
26
26
  };
27
- //# sourceMappingURL=chunk-V7L3KXDY.js.map
27
+ //# sourceMappingURL=chunk-4BTSZ5FM.js.map
@@ -13,7 +13,7 @@ import {
13
13
  lookupInTreeCapability,
14
14
  ok,
15
15
  resolveRetryAfterMs
16
- } from "./chunk-AL44KHC6.js";
16
+ } from "./chunk-AITXIX5S.js";
17
17
 
18
18
  // src/config/model-parameter-support.ts
19
19
  function parseClaudeMajorMinor(bareId) {
@@ -834,4 +834,4 @@ export {
834
834
  DEFAULT_COLLECT_STREAM_MAX_CHUNKS,
835
835
  collectStream
836
836
  };
837
- //# sourceMappingURL=chunk-OEEUFDGL.js.map
837
+ //# sourceMappingURL=chunk-52ZXFIYU.js.map
@@ -8,7 +8,7 @@ import {
8
8
  getTimeProvider,
9
9
  isRateLimitText,
10
10
  ok
11
- } from "./chunk-AL44KHC6.js";
11
+ } from "./chunk-AITXIX5S.js";
12
12
 
13
13
  // src/cli-adapters/circuit-breaker-types.ts
14
14
  var CircuitErrorCode = {
@@ -541,4 +541,4 @@ export {
541
541
  CliCircuitBreakerIntegration,
542
542
  createCliCircuitBreakerIntegration
543
543
  };
544
- //# sourceMappingURL=chunk-MZLBC4C2.js.map
544
+ //# sourceMappingURL=chunk-5KDANU4X.js.map
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  GitHubProvider,
3
3
  ScmError
4
- } from "./chunk-SWQILV5C.js";
4
+ } from "./chunk-SE2EXART.js";
5
5
  import {
6
6
  ROLE_DEFAULT_TRUST,
7
7
  ReputationCache,
@@ -12,7 +12,7 @@ import {
12
12
  resolveEnvMode,
13
13
  resolveReputationGatingMode,
14
14
  sanitizeInput
15
- } from "./chunk-QKIWUNKO.js";
15
+ } from "./chunk-JO4RQSXK.js";
16
16
  import {
17
17
  MAX_STRIPPED_ELEMENTS_PER_EVENT,
18
18
  createAuditTrail,
@@ -20,10 +20,10 @@ import {
20
20
  emitReputationEvent,
21
21
  emitSanitizationEvent,
22
22
  emitTrustEvent
23
- } from "./chunk-VJLTHKKA.js";
23
+ } from "./chunk-3R6IOJLN.js";
24
24
  import {
25
25
  hasToken
26
- } from "./chunk-HGDDJZLF.js";
26
+ } from "./chunk-WDTSF5AA.js";
27
27
  import {
28
28
  CLI_SUBPROCESS_TIMEOUTS,
29
29
  createLogger,
@@ -31,7 +31,7 @@ import {
31
31
  getErrorMessage,
32
32
  getTimeProvider,
33
33
  ok
34
- } from "./chunk-AL44KHC6.js";
34
+ } from "./chunk-AITXIX5S.js";
35
35
 
36
36
  // src/security/firewall/firewall-policy-mode.ts
37
37
  import { z } from "zod";
@@ -1775,7 +1775,7 @@ var IssueTriage = class {
1775
1775
  const { owner, repo, issueNumber } = parseResult.value;
1776
1776
  const fetchResult = await this.fetchIssueData(owner, repo, issueNumber);
1777
1777
  if (!fetchResult.ok) return fetchResult;
1778
- const { issue: issueResult } = fetchResult.value;
1778
+ const { issue: issueResult, existingLabels } = fetchResult.value;
1779
1779
  const safeTitle = this.sanitizeContent(issueResult.title, issueResult.author);
1780
1780
  const safeBody = this.sanitizeContent(issueResult.body, issueResult.author);
1781
1781
  const reputation = this.assessAuthorReputation(fetchResult.value);
@@ -1797,7 +1797,7 @@ var IssueTriage = class {
1797
1797
  }
1798
1798
  const actions = this.generateActions(safeTitle, safeBody, issueResult, trustResult);
1799
1799
  const withEscalation = applySafetyActions(actions, gateDecision, reputation, issueResult);
1800
- const validatedActions = this.validateActions(withEscalation, gateDecision);
1800
+ const validatedActions = this.validateActions(withEscalation, gateDecision, existingLabels);
1801
1801
  const result = this.buildResult({
1802
1802
  issue: issueResult,
1803
1803
  actions: validatedActions,
@@ -1934,14 +1934,15 @@ var IssueTriage = class {
1934
1934
  * This completes the #828 wiring by integrating corroboration-validator.
1935
1935
  * (Source: Issue #828 — policy-gate + corroboration-validator wiring)
1936
1936
  */
1937
- validateActions(actions, gateDecision) {
1937
+ validateActions(actions, gateDecision, existingLabels) {
1938
1938
  const context = {
1939
1939
  inputTrustTier: gateDecision.enforcedTier,
1940
- ...this.accessContext()
1940
+ ...this.accessContext(),
1941
+ ...existingLabels !== void 0 ? { existingLabels } : {}
1941
1942
  };
1942
1943
  return actions.map((action) => {
1943
1944
  const policyDecision = evaluatePolicy(action, context);
1944
- const corrobResult = this.validateActionCorroboration(action);
1945
+ const corrobResult = validateCorroboration(action);
1945
1946
  return {
1946
1947
  type: action.type,
1947
1948
  description: describeAction(action),
@@ -1951,14 +1952,6 @@ var IssueTriage = class {
1951
1952
  };
1952
1953
  });
1953
1954
  }
1954
- /**
1955
- * Validates corroboration for a single action.
1956
- * This is the second NEW security module wiring completing #828.
1957
- * (Source: Issue #828 — corroboration-validator wiring)
1958
- */
1959
- validateActionCorroboration(action) {
1960
- return validateCorroboration(action);
1961
- }
1962
1955
  /**
1963
1956
  * Builds the final triage result.
1964
1957
  */
@@ -2023,19 +2016,7 @@ var IssueTriage = class {
2023
2016
  const detailResult = await provider.getIssueDetail(issueNumber);
2024
2017
  if (!detailResult.ok) return err(detailResult.error);
2025
2018
  const detail = detailResult.value;
2026
- const issue = {
2027
- number: detail.number,
2028
- title: detail.title,
2029
- body: detail.body,
2030
- author: detail.author,
2031
- authorAssociation: detail.authorAssociation,
2032
- owner,
2033
- repo,
2034
- url: detail.url,
2035
- state: detail.state,
2036
- labels: [...detail.labels],
2037
- createdAt: detail.createdAt
2038
- };
2019
+ const issue = { ...detail, owner, repo };
2039
2020
  const commentsResult = await provider.listCommentDetails(issueNumber);
2040
2021
  if (!commentsResult.ok) {
2041
2022
  logger5.warn("Failed to fetch issue comments; activity reputation is unmeasured", {
@@ -2045,10 +2026,21 @@ var IssueTriage = class {
2045
2026
  }
2046
2027
  const comments = commentsResult.ok ? mapIssueComments(commentsResult.value) : [];
2047
2028
  const commentsAvailable = commentsResult.ok;
2029
+ const labelsResult = await provider.listRepositoryLabels();
2030
+ if (!labelsResult.ok) {
2031
+ logger5.warn("Failed to fetch repository labels; label validity is unmeasured", {
2032
+ issueNumber,
2033
+ error: labelsResult.error.message
2034
+ });
2035
+ }
2048
2036
  const accountAgeDays = await this.fetchAccountAgeDays(provider, detail.author);
2049
- return ok(
2050
- accountAgeDays !== void 0 ? { issue, comments, commentsAvailable, accountAgeDays } : { issue, comments, commentsAvailable }
2051
- );
2037
+ return ok({
2038
+ issue,
2039
+ comments,
2040
+ commentsAvailable,
2041
+ ...accountAgeDays !== void 0 ? { accountAgeDays } : {},
2042
+ ...labelsResult.ok ? { existingLabels: new Set(labelsResult.value) } : {}
2043
+ });
2052
2044
  }
2053
2045
  /**
2054
2046
  * Best-effort lookup of a GitHub user's account age in days. Returns
@@ -2118,4 +2110,4 @@ export {
2118
2110
  IssueTriage,
2119
2111
  createIssueTriage
2120
2112
  };
2121
- //# sourceMappingURL=chunk-D6NQ7D4K.js.map
2113
+ //# sourceMappingURL=chunk-5MJQCHS4.js.map