@humanbased/crosscheck 1.2.0 → 1.3.0-beta.81

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 (314) hide show
  1. package/LICENSE +1 -1
  2. package/README.md +182 -375
  3. package/README.zh.md +1 -1
  4. package/assets/icon-256.png +0 -0
  5. package/assets/linear-comment.svg +18 -0
  6. package/assets/linear-onboard.svg +30 -0
  7. package/assets/linear-status.svg +23 -0
  8. package/assets/linear-test.svg +34 -0
  9. package/assets/skills/code-review/.crosscheck-skill.json +9 -0
  10. package/assets/skills/code-review/LICENSE +21 -0
  11. package/assets/skills/code-review/SKILL.md +89 -0
  12. package/assets/skills/code-review/agents/openai.yaml +3 -0
  13. package/assets/skills/code-review-skill/.crosscheck-skill.json +9 -0
  14. package/assets/skills/code-review-skill/LICENSE +21 -0
  15. package/assets/skills/code-review-skill/SKILL.md +231 -0
  16. package/assets/skills/code-review-skill/assets/pr-review-template.md +137 -0
  17. package/assets/skills/code-review-skill/assets/review-checklist.md +123 -0
  18. package/assets/skills/code-review-skill/reference/angular.md +768 -0
  19. package/assets/skills/code-review-skill/reference/architecture-review-guide.md +472 -0
  20. package/assets/skills/code-review-skill/reference/c.md +890 -0
  21. package/assets/skills/code-review-skill/reference/code-quality-universal.md +488 -0
  22. package/assets/skills/code-review-skill/reference/code-review-best-practices.md +136 -0
  23. package/assets/skills/code-review-skill/reference/common-bugs-checklist.md +286 -0
  24. package/assets/skills/code-review-skill/reference/cpp.md +893 -0
  25. package/assets/skills/code-review-skill/reference/cross-cutting/async-concurrency-patterns.md +515 -0
  26. package/assets/skills/code-review-skill/reference/cross-cutting/error-handling-principles.md +492 -0
  27. package/assets/skills/code-review-skill/reference/cross-cutting/n-plus-one-queries.md +309 -0
  28. package/assets/skills/code-review-skill/reference/cross-cutting/sql-injection-prevention.md +308 -0
  29. package/assets/skills/code-review-skill/reference/cross-cutting/xss-prevention.md +264 -0
  30. package/assets/skills/code-review-skill/reference/csharp.md +525 -0
  31. package/assets/skills/code-review-skill/reference/css-less-sass.md +661 -0
  32. package/assets/skills/code-review-skill/reference/django.md +985 -0
  33. package/assets/skills/code-review-skill/reference/fastapi.md +580 -0
  34. package/assets/skills/code-review-skill/reference/go.md +993 -0
  35. package/assets/skills/code-review-skill/reference/java.md +409 -0
  36. package/assets/skills/code-review-skill/reference/java8.md +586 -0
  37. package/assets/skills/code-review-skill/reference/kotlin.md +1018 -0
  38. package/assets/skills/code-review-skill/reference/nestjs.md +593 -0
  39. package/assets/skills/code-review-skill/reference/performance-review-guide.md +816 -0
  40. package/assets/skills/code-review-skill/reference/php.md +684 -0
  41. package/assets/skills/code-review-skill/reference/python.md +1073 -0
  42. package/assets/skills/code-review-skill/reference/qt.md +757 -0
  43. package/assets/skills/code-review-skill/reference/react.md +871 -0
  44. package/assets/skills/code-review-skill/reference/ruby.md +964 -0
  45. package/assets/skills/code-review-skill/reference/rust.md +846 -0
  46. package/assets/skills/code-review-skill/reference/security-review-guide.md +494 -0
  47. package/assets/skills/code-review-skill/reference/svelte.md +1064 -0
  48. package/assets/skills/code-review-skill/reference/swift.md +936 -0
  49. package/assets/skills/code-review-skill/reference/typescript.md +1016 -0
  50. package/assets/skills/code-review-skill/reference/vue.md +924 -0
  51. package/assets/skills/code-review-skill/reference/zig.md +440 -0
  52. package/assets/skills/code-review-skill/scripts/pr-analyzer.py +435 -0
  53. package/assets/skills/code-review-skill/scripts/test_pr_analyzer.py +380 -0
  54. package/assets/skills/codebase-design/.crosscheck-skill.json +9 -0
  55. package/assets/skills/codebase-design/DEEPENING.md +37 -0
  56. package/assets/skills/codebase-design/DESIGN-IT-TWICE.md +44 -0
  57. package/assets/skills/codebase-design/LICENSE +21 -0
  58. package/assets/skills/codebase-design/SKILL.md +114 -0
  59. package/assets/skills/codebase-design/agents/openai.yaml +3 -0
  60. package/assets/skills/diagnosing-bugs/.crosscheck-skill.json +9 -0
  61. package/assets/skills/diagnosing-bugs/LICENSE +21 -0
  62. package/assets/skills/diagnosing-bugs/SKILL.md +134 -0
  63. package/assets/skills/diagnosing-bugs/agents/openai.yaml +3 -0
  64. package/assets/skills/diagnosing-bugs/scripts/hitl-loop.template.sh +41 -0
  65. package/crosscheck.config.example.yml +101 -9
  66. package/dist/__tests__/board.test.js +11 -0
  67. package/dist/__tests__/board.test.js.map +1 -1
  68. package/dist/__tests__/can-write-verdict.test.d.ts +2 -0
  69. package/dist/__tests__/can-write-verdict.test.d.ts.map +1 -0
  70. package/dist/__tests__/can-write-verdict.test.js +31 -0
  71. package/dist/__tests__/can-write-verdict.test.js.map +1 -0
  72. package/dist/__tests__/codex.test.js +14 -27
  73. package/dist/__tests__/codex.test.js.map +1 -1
  74. package/dist/__tests__/comment-bodies.test.js +49 -1
  75. package/dist/__tests__/comment-bodies.test.js.map +1 -1
  76. package/dist/__tests__/conflict-resolve.test.js +44 -1
  77. package/dist/__tests__/conflict-resolve.test.js.map +1 -1
  78. package/dist/__tests__/fix.test.js +33 -0
  79. package/dist/__tests__/fix.test.js.map +1 -1
  80. package/dist/__tests__/linear-branding.test.d.ts +2 -0
  81. package/dist/__tests__/linear-branding.test.d.ts.map +1 -0
  82. package/dist/__tests__/linear-branding.test.js +156 -0
  83. package/dist/__tests__/linear-branding.test.js.map +1 -0
  84. package/dist/__tests__/linear-client.test.d.ts +2 -0
  85. package/dist/__tests__/linear-client.test.d.ts.map +1 -0
  86. package/dist/__tests__/linear-client.test.js +120 -0
  87. package/dist/__tests__/linear-client.test.js.map +1 -0
  88. package/dist/__tests__/linear-comment.test.d.ts +2 -0
  89. package/dist/__tests__/linear-comment.test.d.ts.map +1 -0
  90. package/dist/__tests__/linear-comment.test.js +151 -0
  91. package/dist/__tests__/linear-comment.test.js.map +1 -0
  92. package/dist/__tests__/linear-identity.test.d.ts +2 -0
  93. package/dist/__tests__/linear-identity.test.d.ts.map +1 -0
  94. package/dist/__tests__/linear-identity.test.js +253 -0
  95. package/dist/__tests__/linear-identity.test.js.map +1 -0
  96. package/dist/__tests__/linear-notify.test.d.ts +2 -0
  97. package/dist/__tests__/linear-notify.test.d.ts.map +1 -0
  98. package/dist/__tests__/linear-notify.test.js +144 -0
  99. package/dist/__tests__/linear-notify.test.js.map +1 -0
  100. package/dist/__tests__/linear-ref.test.d.ts +2 -0
  101. package/dist/__tests__/linear-ref.test.d.ts.map +1 -0
  102. package/dist/__tests__/linear-ref.test.js +261 -0
  103. package/dist/__tests__/linear-ref.test.js.map +1 -0
  104. package/dist/__tests__/linear-test-ref.test.d.ts +2 -0
  105. package/dist/__tests__/linear-test-ref.test.d.ts.map +1 -0
  106. package/dist/__tests__/linear-test-ref.test.js +81 -0
  107. package/dist/__tests__/linear-test-ref.test.js.map +1 -0
  108. package/dist/__tests__/linear-verify.test.d.ts +2 -0
  109. package/dist/__tests__/linear-verify.test.d.ts.map +1 -0
  110. package/dist/__tests__/linear-verify.test.js +132 -0
  111. package/dist/__tests__/linear-verify.test.js.map +1 -0
  112. package/dist/__tests__/linear-worker.test.d.ts +2 -0
  113. package/dist/__tests__/linear-worker.test.d.ts.map +1 -0
  114. package/dist/__tests__/linear-worker.test.js +83 -0
  115. package/dist/__tests__/linear-worker.test.js.map +1 -0
  116. package/dist/__tests__/linear-write-possible.test.d.ts +2 -0
  117. package/dist/__tests__/linear-write-possible.test.d.ts.map +1 -0
  118. package/dist/__tests__/linear-write-possible.test.js +30 -0
  119. package/dist/__tests__/linear-write-possible.test.js.map +1 -0
  120. package/dist/__tests__/onboard-preservation.test.js +59 -3
  121. package/dist/__tests__/onboard-preservation.test.js.map +1 -1
  122. package/dist/__tests__/optimize.test.js +2 -0
  123. package/dist/__tests__/optimize.test.js.map +1 -1
  124. package/dist/__tests__/repo-picker.test.js +7 -1
  125. package/dist/__tests__/repo-picker.test.js.map +1 -1
  126. package/dist/__tests__/repository-guidance.test.d.ts +2 -0
  127. package/dist/__tests__/repository-guidance.test.d.ts.map +1 -0
  128. package/dist/__tests__/repository-guidance.test.js +107 -0
  129. package/dist/__tests__/repository-guidance.test.js.map +1 -0
  130. package/dist/__tests__/review-comment-body.test.js +35 -0
  131. package/dist/__tests__/review-comment-body.test.js.map +1 -1
  132. package/dist/__tests__/review-models.test.js +19 -3
  133. package/dist/__tests__/review-models.test.js.map +1 -1
  134. package/dist/__tests__/review-strategy.test.d.ts +2 -0
  135. package/dist/__tests__/review-strategy.test.d.ts.map +1 -0
  136. package/dist/__tests__/review-strategy.test.js +397 -0
  137. package/dist/__tests__/review-strategy.test.js.map +1 -0
  138. package/dist/__tests__/runner.test.js +29 -1
  139. package/dist/__tests__/runner.test.js.map +1 -1
  140. package/dist/__tests__/skill-attribution.test.d.ts +2 -0
  141. package/dist/__tests__/skill-attribution.test.d.ts.map +1 -0
  142. package/dist/__tests__/skill-attribution.test.js +53 -0
  143. package/dist/__tests__/skill-attribution.test.js.map +1 -0
  144. package/dist/__tests__/skill-broker.test.d.ts +2 -0
  145. package/dist/__tests__/skill-broker.test.d.ts.map +1 -0
  146. package/dist/__tests__/skill-broker.test.js +144 -0
  147. package/dist/__tests__/skill-broker.test.js.map +1 -0
  148. package/dist/__tests__/skill-catalog.test.d.ts +2 -0
  149. package/dist/__tests__/skill-catalog.test.d.ts.map +1 -0
  150. package/dist/__tests__/skill-catalog.test.js +40 -0
  151. package/dist/__tests__/skill-catalog.test.js.map +1 -0
  152. package/dist/__tests__/skill-installer.test.d.ts +2 -0
  153. package/dist/__tests__/skill-installer.test.d.ts.map +1 -0
  154. package/dist/__tests__/skill-installer.test.js +96 -0
  155. package/dist/__tests__/skill-installer.test.js.map +1 -0
  156. package/dist/__tests__/skills-config.test.d.ts +2 -0
  157. package/dist/__tests__/skills-config.test.d.ts.map +1 -0
  158. package/dist/__tests__/skills-config.test.js +12 -0
  159. package/dist/__tests__/skills-config.test.js.map +1 -0
  160. package/dist/cli.js +29 -0
  161. package/dist/cli.js.map +1 -1
  162. package/dist/commands/linear-test.d.ts +18 -0
  163. package/dist/commands/linear-test.d.ts.map +1 -0
  164. package/dist/commands/linear-test.js +130 -0
  165. package/dist/commands/linear-test.js.map +1 -0
  166. package/dist/commands/onboard.d.ts +36 -3
  167. package/dist/commands/onboard.d.ts.map +1 -1
  168. package/dist/commands/onboard.js +233 -42
  169. package/dist/commands/onboard.js.map +1 -1
  170. package/dist/commands/review.d.ts.map +1 -1
  171. package/dist/commands/review.js +65 -6
  172. package/dist/commands/review.js.map +1 -1
  173. package/dist/commands/run.d.ts.map +1 -1
  174. package/dist/commands/run.js +45 -7
  175. package/dist/commands/run.js.map +1 -1
  176. package/dist/commands/skill.d.ts +2 -0
  177. package/dist/commands/skill.d.ts.map +1 -0
  178. package/dist/commands/skill.js +16 -0
  179. package/dist/commands/skill.js.map +1 -0
  180. package/dist/commands/status.d.ts.map +1 -1
  181. package/dist/commands/status.js +53 -1
  182. package/dist/commands/status.js.map +1 -1
  183. package/dist/commands/watch.d.ts.map +1 -1
  184. package/dist/commands/watch.js +90 -12
  185. package/dist/commands/watch.js.map +1 -1
  186. package/dist/config/loader.d.ts +3 -1
  187. package/dist/config/loader.d.ts.map +1 -1
  188. package/dist/config/loader.js +13 -0
  189. package/dist/config/loader.js.map +1 -1
  190. package/dist/config/review-model-tiers.json +3 -3
  191. package/dist/config/review-strategy.json +204 -0
  192. package/dist/config/schema.d.ts +261 -15
  193. package/dist/config/schema.d.ts.map +1 -1
  194. package/dist/config/schema.js +90 -8
  195. package/dist/config/schema.js.map +1 -1
  196. package/dist/github/client.d.ts +21 -1
  197. package/dist/github/client.d.ts.map +1 -1
  198. package/dist/github/client.js +46 -7
  199. package/dist/github/client.js.map +1 -1
  200. package/dist/github/webhook.d.ts +4 -0
  201. package/dist/github/webhook.d.ts.map +1 -1
  202. package/dist/github/webhook.js.map +1 -1
  203. package/dist/issues/ticket-ref.d.ts.map +1 -1
  204. package/dist/issues/ticket-ref.js +6 -5
  205. package/dist/issues/ticket-ref.js.map +1 -1
  206. package/dist/lib/annotation.d.ts +7 -0
  207. package/dist/lib/annotation.d.ts.map +1 -1
  208. package/dist/lib/annotation.js +11 -1
  209. package/dist/lib/annotation.js.map +1 -1
  210. package/dist/lib/board.d.ts +3 -0
  211. package/dist/lib/board.d.ts.map +1 -1
  212. package/dist/lib/board.js +4 -2
  213. package/dist/lib/board.js.map +1 -1
  214. package/dist/lib/clone.d.ts +1 -0
  215. package/dist/lib/clone.d.ts.map +1 -1
  216. package/dist/lib/clone.js +32 -10
  217. package/dist/lib/clone.js.map +1 -1
  218. package/dist/lib/comment-bodies.d.ts +37 -0
  219. package/dist/lib/comment-bodies.d.ts.map +1 -1
  220. package/dist/lib/comment-bodies.js +47 -9
  221. package/dist/lib/comment-bodies.js.map +1 -1
  222. package/dist/lib/repo-picker.d.ts +3 -0
  223. package/dist/lib/repo-picker.d.ts.map +1 -1
  224. package/dist/lib/repo-picker.js +45 -9
  225. package/dist/lib/repo-picker.js.map +1 -1
  226. package/dist/lib/repository-guidance.d.ts +2 -0
  227. package/dist/lib/repository-guidance.d.ts.map +1 -0
  228. package/dist/lib/repository-guidance.js +55 -0
  229. package/dist/lib/repository-guidance.js.map +1 -0
  230. package/dist/lib/review-models.d.ts +15 -2
  231. package/dist/lib/review-models.d.ts.map +1 -1
  232. package/dist/lib/review-models.js +26 -6
  233. package/dist/lib/review-models.js.map +1 -1
  234. package/dist/lib/review-strategy.d.ts +92 -0
  235. package/dist/lib/review-strategy.d.ts.map +1 -0
  236. package/dist/lib/review-strategy.js +282 -0
  237. package/dist/lib/review-strategy.js.map +1 -0
  238. package/dist/lib/runner.d.ts +92 -0
  239. package/dist/lib/runner.d.ts.map +1 -1
  240. package/dist/lib/runner.js +470 -54
  241. package/dist/lib/runner.js.map +1 -1
  242. package/dist/lib/workflow.d.ts +9 -0
  243. package/dist/lib/workflow.d.ts.map +1 -1
  244. package/dist/lib/workflow.js +20 -0
  245. package/dist/lib/workflow.js.map +1 -1
  246. package/dist/linear/client.d.ts +18 -0
  247. package/dist/linear/client.d.ts.map +1 -0
  248. package/dist/linear/client.js +67 -0
  249. package/dist/linear/client.js.map +1 -0
  250. package/dist/linear/comment.d.ts +20 -0
  251. package/dist/linear/comment.d.ts.map +1 -0
  252. package/dist/linear/comment.js +57 -0
  253. package/dist/linear/comment.js.map +1 -0
  254. package/dist/linear/identity.d.ts +59 -0
  255. package/dist/linear/identity.d.ts.map +1 -0
  256. package/dist/linear/identity.js +187 -0
  257. package/dist/linear/identity.js.map +1 -0
  258. package/dist/linear/notify.d.ts +35 -0
  259. package/dist/linear/notify.d.ts.map +1 -0
  260. package/dist/linear/notify.js +76 -0
  261. package/dist/linear/notify.js.map +1 -0
  262. package/dist/linear/ref.d.ts +13 -0
  263. package/dist/linear/ref.d.ts.map +1 -0
  264. package/dist/linear/ref.js +90 -0
  265. package/dist/linear/ref.js.map +1 -0
  266. package/dist/linear/verify.d.ts +26 -0
  267. package/dist/linear/verify.d.ts.map +1 -0
  268. package/dist/linear/verify.js +67 -0
  269. package/dist/linear/verify.js.map +1 -0
  270. package/dist/reviewers/claude.d.ts +4 -1
  271. package/dist/reviewers/claude.d.ts.map +1 -1
  272. package/dist/reviewers/claude.js +39 -7
  273. package/dist/reviewers/claude.js.map +1 -1
  274. package/dist/reviewers/codex.d.ts +3 -1
  275. package/dist/reviewers/codex.d.ts.map +1 -1
  276. package/dist/reviewers/codex.js +76 -70
  277. package/dist/reviewers/codex.js.map +1 -1
  278. package/dist/reviewers/conflict-resolve.d.ts +3 -1
  279. package/dist/reviewers/conflict-resolve.d.ts.map +1 -1
  280. package/dist/reviewers/conflict-resolve.js +21 -6
  281. package/dist/reviewers/conflict-resolve.js.map +1 -1
  282. package/dist/reviewers/fix.d.ts +5 -2
  283. package/dist/reviewers/fix.d.ts.map +1 -1
  284. package/dist/reviewers/fix.js +26 -10
  285. package/dist/reviewers/fix.js.map +1 -1
  286. package/dist/skills/attribution.d.ts +4 -0
  287. package/dist/skills/attribution.d.ts.map +1 -0
  288. package/dist/skills/attribution.js +14 -0
  289. package/dist/skills/attribution.js.map +1 -0
  290. package/dist/skills/broker-server.d.ts +2 -0
  291. package/dist/skills/broker-server.d.ts.map +1 -0
  292. package/dist/skills/broker-server.js +17 -0
  293. package/dist/skills/broker-server.js.map +1 -0
  294. package/dist/skills/broker.d.ts +42 -0
  295. package/dist/skills/broker.d.ts.map +1 -0
  296. package/dist/skills/broker.js +285 -0
  297. package/dist/skills/broker.js.map +1 -0
  298. package/dist/skills/catalog.d.ts +28 -0
  299. package/dist/skills/catalog.d.ts.map +1 -0
  300. package/dist/skills/catalog.js +104 -0
  301. package/dist/skills/catalog.js.map +1 -0
  302. package/dist/skills/installer.d.ts +10 -0
  303. package/dist/skills/installer.d.ts.map +1 -0
  304. package/dist/skills/installer.js +138 -0
  305. package/dist/skills/installer.js.map +1 -0
  306. package/dist/skills/integrity.d.ts +4 -0
  307. package/dist/skills/integrity.d.ts.map +1 -0
  308. package/dist/skills/integrity.js +36 -0
  309. package/dist/skills/integrity.js.map +1 -0
  310. package/docs/dynamic-thoroughness.md +738 -0
  311. package/docs/linear-identity-contract.md +139 -0
  312. package/docs/linear-identity.md +293 -0
  313. package/get-started.md +207 -11
  314. package/package.json +4 -3
@@ -3,12 +3,21 @@ import { DEFAULT_REVIEW_INSTRUCTIONS } from '../lib/workflow.js';
3
3
  import { primaryModelFromUsage, resolveClaudeModel } from '../lib/review-models.js';
4
4
  import { withTimeoutRetry } from '../lib/with-timeout-retry.js';
5
5
  import { tierTimeoutMs } from './tier-timeouts.js';
6
+ import { claudeSkillBrokerArgs, renderSkillBrokerInstructions } from '../skills/broker.js';
7
+ import { loadRepositoryReviewGuidance } from '../lib/repository-guidance.js';
6
8
  const EFFORT_MAP = {
7
9
  low: 'low',
8
10
  medium: 'medium',
9
11
  high: 'high',
10
12
  max: 'max',
11
13
  };
14
+ // Whitelist rather than translation — anything outside the schema's vocabulary
15
+ // falls back to medium instead of reaching the CLI as an arbitrary string.
16
+ // Shared with the fix and conflict-resolve steps so every Claude call in a run
17
+ // uses the same effort, and the comment can report it.
18
+ export function claudeEffort(effort) {
19
+ return (effort && EFFORT_MAP[effort]) ?? 'medium';
20
+ }
12
21
  // Detect transient Claude API errors that should be retried:
13
22
  // - 429 session limit: "You've hit your session limit"
14
23
  // - Socket disconnect: "socket connection was closed unexpectedly"
@@ -26,22 +35,33 @@ export async function runClaudeReview(repoDir, baseBranch, prTitle, quality, ven
26
35
  onRetry,
27
36
  // Linked tracker issue rendered as a prompt block (issues/enrich.ts) — anchors
28
37
  // the review to the stated goal. Omitted when enrichment is off / unresolved.
29
- issueContext) {
38
+ issueContext, skillSession) {
30
39
  const model = resolveClaudeModel(quality, vendor);
31
- const effort = EFFORT_MAP[vendor.effort] ?? 'medium';
40
+ const effort = claudeEffort(vendor.effort);
32
41
  const focusLine = quality.focus.length > 0
33
42
  ? `Focus areas: ${quality.focus.join(', ')}.`
34
43
  : '';
35
44
  const customLine = quality.custom_prompt ?? '';
36
45
  const behaviorInstructions = stepInstructions ?? DEFAULT_REVIEW_INSTRUCTIONS;
46
+ const repositoryGuidance = loadRepositoryReviewGuidance(repoDir, baseBranch);
37
47
  const prompt = [
38
48
  `You are reviewing a pull request titled: "${prTitle}".`,
39
49
  `The branch \`${baseBranch}\` is the base. Review only the changes introduced in this PR.`,
40
50
  issueContext ?? '',
41
51
  focusLine,
42
52
  customLine,
53
+ // Ahead of behaviorInstructions: that block ends with "the very last line of
54
+ // your response MUST be VERDICT: …", and activation has to happen before the
55
+ // review starts, so arriving after that terminal instruction buries it.
56
+ // repositoryGuidance stays where it is — reference material to consult while
57
+ // reviewing, not an action to take first.
58
+ skillSession ? renderSkillBrokerInstructions(skillSession) : '',
43
59
  behaviorInstructions,
44
- ].filter(Boolean).join('\n');
60
+ repositoryGuidance,
61
+ // Blank line between blocks (codex.ts already does this): the skill block
62
+ // ends in a bullet list, which would otherwise run straight into
63
+ // behaviorInstructions' first heading with no separator.
64
+ ].filter(Boolean).join('\n\n');
45
65
  // Omit --max-budget-usd when:
46
66
  // 1. No ANTHROPIC_API_KEY → subscription mode (claude.ai plan, budget limits don't apply)
47
67
  // 2. noBudgetCap → crazy/halfcrazy mode (explicitly uncapped run; NOT set by --no-timeout alone)
@@ -52,7 +72,14 @@ issueContext) {
52
72
  '--model', model,
53
73
  '--effort', effort,
54
74
  ...(applyBudgetCap ? ['--max-budget-usd', String(perReviewBudget)] : []),
55
- '--allowedTools', 'Bash(git diff),Bash(git log)',
75
+ '--allowedTools', [
76
+ 'Bash(git diff)', 'Bash(git log)',
77
+ ...(skillSession ? [
78
+ 'mcp__crosscheck__list_enabled_skills',
79
+ 'mcp__crosscheck__activate_skill',
80
+ 'mcp__crosscheck__read_skill_file',
81
+ ] : []),
82
+ ].join(','),
56
83
  ];
57
84
  onLog?.(` running: claude --print --model ${model} --effort ${effort}`);
58
85
  // timeoutMs: 0 → no cap (crazy/halfcrazy); undefined → tier-based default (300/600/1200s); positive → user-specified
@@ -61,7 +88,12 @@ issueContext) {
61
88
  let lastErr = undefined;
62
89
  for (let attempt = 1; attempt <= MAX_CLAUDE_RETRIES; attempt++) {
63
90
  try {
64
- const { result: { stdout }, retried } = await withTimeoutRetry(resolvedTimeout, (t) => execa('claude', args, { cwd: repoDir, timeout: t, input: prompt, env: { ...process.env } }), {
91
+ const { result: { stdout }, retried } = await withTimeoutRetry(resolvedTimeout, (t) => execa('claude', [...args, ...claudeSkillBrokerArgs(skillSession)], {
92
+ cwd: repoDir,
93
+ timeout: t,
94
+ input: prompt,
95
+ env: { ...process.env, CLAUDE_CODE_DISABLE_CLAUDE_MDS: '1' },
96
+ }), {
65
97
  onRetry: (effectiveMs, delayMs) => (onRetry ?? onLog)?.(` ⏱ claude timed out at ${effectiveMs / 1000}s — waiting ${delayMs / 1000}s and retrying once`),
66
98
  });
67
99
  const raw = stdout.trim();
@@ -75,10 +107,10 @@ issueContext) {
75
107
  // string: `model` may be an alias ("opus") and the CLI resolves or
76
108
  // substitutes it. Fall back to the requested value when absent.
77
109
  const actualModel = primaryModelFromUsage(parsed.modelUsage);
78
- return { review, tokensUsed, inputTokens, outputTokens, model: actualModel ?? model, retried };
110
+ return { review, tokensUsed, inputTokens, outputTokens, model: actualModel ?? model, effort, retried };
79
111
  }
80
112
  catch {
81
- return { review: raw, model, retried };
113
+ return { review: raw, model, effort, retried };
82
114
  }
83
115
  }
84
116
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../src/reviewers/claude.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude.js","sourceRoot":"","sources":["../../src/reviewers/claude.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,10 @@
1
1
  import type { QualityConfig, CodexVendorConfig } from '../config/schema.js';
2
2
  import type { ReviewResult } from './claude.js';
3
+ import { type SkillActivationSession } from '../skills/broker.js';
3
4
  export declare function inferVerdictFromCodexOutput(text: string): string;
4
5
  export declare function stripRepoDirPaths(text: string, repoDir: string): string;
5
- export declare function runCodexReview(repoDir: string, baseBranch: string, prTitle: string, quality: QualityConfig, vendor: CodexVendorConfig, stepInstructions?: string, onLog?: (msg: string) => void, timeoutMs?: number, onRetry?: (msg: string) => void, issueContext?: string): Promise<ReviewResult>;
6
+ export declare function codexReasoningEffort(effort: string): string;
7
+ export declare function runCodexReview(repoDir: string, baseBranch: string, prTitle: string, quality: QualityConfig, vendor: CodexVendorConfig, stepInstructions?: string, onLog?: (msg: string) => void, timeoutMs?: number, onRetry?: (msg: string) => void, issueContext?: string, skillSession?: SkillActivationSession): Promise<ReviewResult>;
6
8
  export declare function checkCodexAuth(): Promise<{
7
9
  ok: boolean;
8
10
  detail: string;
@@ -1 +1 @@
1
- {"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../src/reviewers/codex.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAG3E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAO/C,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIhE;AAMD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAWvE;AA2BD,wBAAsB,cAAc,CAClC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,iBAAiB,EACzB,gBAAgB,CAAC,EAAE,MAAM,EACzB,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,EAC7B,SAAS,CAAC,EAAE,MAAM,EAIlB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,EAG/B,YAAY,CAAC,EAAE,MAAM,GACpB,OAAO,CAAC,YAAY,CAAC,CA2GvB;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAQ/E"}
1
+ {"version":3,"file":"codex.d.ts","sourceRoot":"","sources":["../../src/reviewers/codex.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,aAAa,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAA;AAG3E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAG/C,OAAO,EAAuD,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAMtH,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAIhE;AAMD,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,CAWvE;AAeD,wBAAgB,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAE3D;AA2BD,wBAAsB,cAAc,CAClC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,iBAAiB,EACzB,gBAAgB,CAAC,EAAE,MAAM,EACzB,KAAK,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,EAC7B,SAAS,CAAC,EAAE,MAAM,EAIlB,OAAO,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,EAG/B,YAAY,CAAC,EAAE,MAAM,EACrB,YAAY,CAAC,EAAE,sBAAsB,GACpC,OAAO,CAAC,YAAY,CAAC,CAuGvB;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAQ/E"}
@@ -1,11 +1,14 @@
1
1
  import { execa } from 'execa';
2
- import { mkdtempSync, mkdirSync, writeFileSync, readFileSync, rmSync, realpathSync } from 'fs';
3
- import { tmpdir } from 'os';
2
+ import { mkdirSync, realpathSync, rmSync, writeFileSync } from 'fs';
3
+ import { randomUUID } from 'crypto';
4
+ import { homedir } from 'os';
4
5
  import { join } from 'path';
5
6
  import { DEFAULT_REVIEW_INSTRUCTIONS } from '../lib/workflow.js';
6
7
  import { resolveCodexModel } from '../lib/review-models.js';
7
8
  import { withTimeoutRetry } from '../lib/with-timeout-retry.js';
8
9
  import { tierTimeoutMs } from './tier-timeouts.js';
10
+ import { codexSkillBrokerArgs, renderSkillBrokerInstructions } from '../skills/broker.js';
11
+ import { loadRepositoryReviewGuidance } from '../lib/repository-guidance.js';
9
12
  // Codex review command outputs [P0]/[P1]/[P2]/[P3] priority markers but never a VERDICT line.
10
13
  // Infer the verdict from the highest severity present and append it so parseVerdict() can
11
14
  // extract it. Only called when the output doesn't already contain a VERDICT: token.
@@ -35,6 +38,21 @@ export function stripRepoDirPaths(text, repoDir) {
35
38
  }
36
39
  return out;
37
40
  }
41
+ // vendors.codex.effort matches the codex CLI's model_reasoning_effort values
42
+ // 1:1 (low/medium/high/xhigh/max/ultra), so this is a whitelist rather than a
43
+ // translation — anything outside it falls back to medium instead of reaching
44
+ // the CLI as an arbitrary string.
45
+ const REASONING_EFFORT_MAP = {
46
+ low: 'low',
47
+ medium: 'medium',
48
+ high: 'high',
49
+ xhigh: 'xhigh',
50
+ max: 'max',
51
+ ultra: 'ultra',
52
+ };
53
+ export function codexReasoningEffort(effort) {
54
+ return REASONING_EFFORT_MAP[effort] ?? 'medium';
55
+ }
38
56
  // Detect transient Codex API errors that should be retried (socket disconnects, rate limits)
39
57
  function isRetryableCodexError(message) {
40
58
  return /socket.*closed|429|rate limit|connection.*reset|econnreset/i.test(message);
@@ -63,38 +81,40 @@ export async function runCodexReview(repoDir, baseBranch, prTitle, quality, vend
63
81
  onRetry,
64
82
  // Linked tracker issue rendered as a prompt block (issues/enrich.ts) — anchors
65
83
  // the review to the stated goal. Omitted when enrichment is off / unresolved.
66
- issueContext) {
84
+ issueContext, skillSession) {
67
85
  const model = resolveCodexModel(quality, vendor);
68
- const tmpFile = join(mkdtempSync(join(tmpdir(), 'crosscheck-')), 'review.md');
69
86
  const tierTimeout = tierTimeoutMs(quality.tier);
70
87
  // timeoutMs: 0 → no cap (crazy/halfcrazy); undefined → tier-based default; positive → user-specified
71
88
  const resolvedTimeout = timeoutMs === undefined ? tierTimeout : timeoutMs === 0 ? undefined : timeoutMs;
72
- // --base and [PROMPT] are mutually exclusive in codex review;
73
- // inject focus instructions via a .codex/instructions file instead
89
+ // --base and [PROMPT] are mutually exclusive in codex review, so deliver
90
+ // Crosscheck's trusted guidance through a temporary Codex profile.
74
91
  const focusNote = quality.focus.length > 0
75
92
  ? `Focus areas: ${quality.focus.join(', ')}. `
76
93
  : '';
77
94
  const customNote = quality.custom_prompt ?? '';
78
95
  const behaviorInstructions = stepInstructions ?? DEFAULT_REVIEW_INSTRUCTIONS;
79
- const instructionsNote = [issueContext ?? '', focusNote, customNote, behaviorInstructions].filter(Boolean).join('\n\n');
80
- const instructionsPath = `${repoDir}/.codex/instructions`;
81
- // Save original content so we can restore it after the review prevents the
82
- // fix step's git add -A from committing crosscheck's instructions as a PR change.
83
- let originalInstructions;
84
- try {
85
- originalInstructions = readFileSync(instructionsPath, 'utf8');
86
- }
87
- catch { /* didn't exist */ }
88
- mkdirSync(`${repoDir}/.codex`, { recursive: true });
89
- writeFileSync(instructionsPath, instructionsNote);
90
- try {
91
- // Retry loop for transient Codex API errors (socket disconnects, rate limits)
92
- let lastErr = undefined;
93
- for (let attempt = 1; attempt <= MAX_CODEX_RETRIES; attempt++) {
96
+ const repositoryGuidance = loadRepositoryReviewGuidance(repoDir, baseBranch);
97
+ // Skill block ahead of behaviorInstructions — see the note in claude.ts: the
98
+ // behaviour block ends on the verdict rule, so a trailing skill section reads
99
+ // as boilerplate past the end of the prompt. repositoryGuidance stays after
100
+ // it: reference material read during the review, not a first step.
101
+ const instructionsNote = [issueContext ?? '', focusNote, customNote, skillSession ? renderSkillBrokerInstructions(skillSession) : '', behaviorInstructions, repositoryGuidance].filter(Boolean).join('\n\n');
102
+ const codexHome = process.env.CODEX_HOME ?? join(homedir(), '.codex');
103
+ const profileName = `crosscheck-${randomUUID()}`;
104
+ const profilePath = join(codexHome, `${profileName}.config.toml`);
105
+ mkdirSync(codexHome, { recursive: true });
106
+ // Retry loop for transient Codex API errors (socket disconnects, rate limits)
107
+ let lastErr = undefined;
108
+ for (let attempt = 1; attempt <= MAX_CODEX_RETRIES; attempt++) {
109
+ try {
110
+ const modelArgs = model !== 'default' ? ['-c', `model="${model}"`] : [];
111
+ const skillArgs = codexSkillBrokerArgs(skillSession);
112
+ const reasoningEffort = codexReasoningEffort(vendor.effort);
113
+ const effortArgs = ['-c', `model_reasoning_effort="${reasoningEffort}"`];
114
+ onLog?.(` running: codex review --base ${baseBranch}${model !== 'default' ? ` -c model="${model}"` : ''} -c model_reasoning_effort="${reasoningEffort}"`);
115
+ writeFileSync(profilePath, `developer_instructions = ${JSON.stringify(instructionsNote)}\n`, { mode: 0o600 });
94
116
  try {
95
- const modelArgs = model !== 'default' ? ['-c', `model="${model}"`] : [];
96
- onLog?.(` running: codex review --base ${baseBranch}${model !== 'default' ? ` -c model="${model}"` : ''}`);
97
- const { result, retried } = await withTimeoutRetry(resolvedTimeout, (t) => execa('codex', ['review', '--base', baseBranch, '--title', prTitle, ...modelArgs], {
117
+ const { result, retried } = await withTimeoutRetry(resolvedTimeout, (t) => execa('codex', ['-p', profileName, 'review', '--base', baseBranch, '--title', prTitle, '-c', 'project_doc_max_bytes=0', ...modelArgs, ...effortArgs, ...skillArgs], {
98
118
  cwd: repoDir,
99
119
  timeout: t,
100
120
  env: {
@@ -113,58 +133,44 @@ issueContext) {
113
133
  const review = rawReview.includes('VERDICT:')
114
134
  ? rawReview
115
135
  : `${rawReview}\n\nVERDICT: ${inferVerdictFromCodexOutput(rawReview)}`;
116
- return { review, tokensUsed, model, retried };
136
+ return { review, tokensUsed, model, effort: reasoningEffort, retried };
117
137
  }
118
- catch (err) {
119
- const execa = err;
120
- const rawStderr = execa.stderr ?? '';
121
- const fullMessage = rawStderr || execa.message || '';
122
- // Check if this is a retryable error
123
- if (isRetryableCodexError(fullMessage) && attempt < MAX_CODEX_RETRIES) {
124
- const delay = CODEX_RETRY_DELAY_MS * attempt; // 5s, 10s
125
- onLog?.(` codex: transient error (${fullMessage.slice(0, 80)}), retrying in ${delay / 1000}s (attempt ${attempt}/${MAX_CODEX_RETRIES})...`);
126
- await new Promise(resolve => setTimeout(resolve, delay));
127
- lastErr = err;
128
- continue;
129
- }
130
- // Non-retryable error or final attempt — format and throw
131
- const effectiveMs = execa.effectiveTimeoutMs ?? resolvedTimeout;
132
- const retryNote = execa.retryDelayMs !== undefined ? ' (retried once)' : '';
133
- const summary = execa.timedOut
134
- ? `timed out after ${effectiveMs !== undefined ? effectiveMs / 1000 : '?'}s${retryNote} — PR diff may be too large (tier: ${quality.tier})`
135
- : (extractErrorSummary(rawStderr) ?? execa.message ?? 'unknown error');
136
- const thrown = Object.assign(new Error(`codex: ${summary}`), {
137
- exitCode: execa.exitCode,
138
- timedOut: execa.timedOut,
139
- stderr: rawStderr,
140
- effectiveTimeoutMs: effectiveMs,
141
- retryDelayMs: execa.retryDelayMs,
142
- });
143
- throw thrown;
138
+ finally {
139
+ rmSync(profilePath, { force: true });
144
140
  }
145
141
  }
146
- // Should not reach here, but handle the case where all retries were consumed
147
- if (lastErr)
148
- throw lastErr;
149
- throw new Error('codex: unexpected retry loop exit');
150
- }
151
- finally {
152
- // Restore .codex/instructions to its pre-review state so the fix step's
153
- // git add -A doesn't commit crosscheck's instructions as a PR file change.
154
- try {
155
- if (originalInstructions !== undefined) {
156
- writeFileSync(instructionsPath, originalInstructions);
157
- }
158
- else {
159
- rmSync(instructionsPath, { force: true });
142
+ catch (err) {
143
+ const execa = err;
144
+ const rawStderr = execa.stderr ?? '';
145
+ const fullMessage = rawStderr || execa.message || '';
146
+ // Check if this is a retryable error
147
+ if (isRetryableCodexError(fullMessage) && attempt < MAX_CODEX_RETRIES) {
148
+ const delay = CODEX_RETRY_DELAY_MS * attempt; // 5s, 10s
149
+ onLog?.(` codex: transient error (${fullMessage.slice(0, 80)}), retrying in ${delay / 1000}s (attempt ${attempt}/${MAX_CODEX_RETRIES})...`);
150
+ await new Promise(resolve => setTimeout(resolve, delay));
151
+ lastErr = err;
152
+ continue;
160
153
  }
154
+ // Non-retryable error or final attempt — format and throw
155
+ const effectiveMs = execa.effectiveTimeoutMs ?? resolvedTimeout;
156
+ const retryNote = execa.retryDelayMs !== undefined ? ' (retried once)' : '';
157
+ const summary = execa.timedOut
158
+ ? `timed out after ${effectiveMs !== undefined ? effectiveMs / 1000 : '?'}s${retryNote} — PR diff may be too large (tier: ${quality.tier})`
159
+ : (extractErrorSummary(rawStderr) ?? execa.message ?? 'unknown error');
160
+ const thrown = Object.assign(new Error(`codex: ${summary}`), {
161
+ exitCode: execa.exitCode,
162
+ timedOut: execa.timedOut,
163
+ stderr: rawStderr,
164
+ effectiveTimeoutMs: effectiveMs,
165
+ retryDelayMs: execa.retryDelayMs,
166
+ });
167
+ throw thrown;
161
168
  }
162
- catch { /* ignore */ }
163
- try {
164
- rmSync(tmpFile, { force: true, recursive: true });
165
- }
166
- catch { /* ignore */ }
167
169
  }
170
+ // Should not reach here, but handle the case where all retries were consumed
171
+ if (lastErr)
172
+ throw lastErr;
173
+ throw new Error('codex: unexpected retry loop exit');
168
174
  }
169
175
  export async function checkCodexAuth() {
170
176
  try {
@@ -1 +1 @@
1
- {"version":3,"file":"codex.js","sourceRoot":"","sources":["../../src/reviewers/codex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"codex.js","sourceRoot":"","sources":["../../src/reviewers/codex.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAC7B,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,IAAI,CAAA;AACnE,OAAO,EAAE,UAAU,EAAE,MAAM,QAAQ,CAAA;AACnC,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAA;AAC5B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAA;AAE3B,OAAO,EAAE,2BAA2B,EAAE,MAAM,oBAAoB,CAAA;AAChE,OAAO,EAAE,iBAAiB,EAAE,MAAM,yBAAyB,CAAA;AAE3D,OAAO,EAAE,gBAAgB,EAAE,MAAM,8BAA8B,CAAA;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAE,oBAAoB,EAAE,6BAA6B,EAA+B,MAAM,qBAAqB,CAAA;AACtH,OAAO,EAAE,4BAA4B,EAAE,MAAM,+BAA+B,CAAA;AAE5E,8FAA8F;AAC9F,0FAA0F;AAC1F,oFAAoF;AACpF,MAAM,UAAU,2BAA2B,CAAC,IAAY;IACtD,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,OAAO,CAAA;IAChE,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,YAAY,CAAA;IACrE,OAAO,SAAS,CAAA;AAClB,CAAC;AAED,gFAAgF;AAChF,iFAAiF;AACjF,kFAAkF;AAClF,uFAAuF;AACvF,MAAM,UAAU,iBAAiB,CAAC,IAAY,EAAE,OAAe;IAC7D,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;IACnC,IAAI,CAAC;QAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,CAAA;IAAC,CAAC;IAAC,MAAM,CAAC,CAAC,6BAA6B,CAAC,CAAC;IACnF,IAAI,GAAG,GAAG,IAAI,CAAA;IACd,sEAAsE;IACtE,yEAAyE;IACzE,mCAAmC;IACnC,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC;QACpE,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,GAAG,GAAG,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACrC,CAAC;IACD,OAAO,GAAG,CAAA;AACZ,CAAC;AAED,6EAA6E;AAC7E,8EAA8E;AAC9E,6EAA6E;AAC7E,kCAAkC;AAClC,MAAM,oBAAoB,GAA2B;IACnD,GAAG,EAAE,KAAK;IACV,MAAM,EAAE,QAAQ;IAChB,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,KAAK;IACV,KAAK,EAAE,OAAO;CACf,CAAA;AAED,MAAM,UAAU,oBAAoB,CAAC,MAAc;IACjD,OAAO,oBAAoB,CAAC,MAAM,CAAC,IAAI,QAAQ,CAAA;AACjD,CAAC;AAED,6FAA6F;AAC7F,SAAS,qBAAqB,CAAC,OAAe;IAC5C,OAAO,6DAA6D,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;AACpF,CAAC;AAED,MAAM,iBAAiB,GAAG,CAAC,CAAA;AAC3B,MAAM,oBAAoB,GAAG,IAAI,CAAA;AAEjC,4FAA4F;AAC5F,SAAS,mBAAmB,CAAC,MAAc;IACzC,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACnE,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC3C,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAA;QAClB,IAAI,kBAAkB,CAAC,IAAI,CAAC,CAAC,CAAC;YAAE,OAAO,CAAC,CAAA;IAC1C,CAAC;IACD,mFAAmF;IACnF,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CACtB,CAAC,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC;QACpB,CAAC,qEAAqE,CAAC,IAAI,CAAC,CAAC,CAAC;QAC9E,CAAC,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC;QACzB,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC;QAClB,CAAC,uBAAuB,CAAC,IAAI,CAAC,CAAC,CAAC,CACjC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;AACV,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,OAAe,EACf,UAAkB,EAClB,OAAe,EACf,OAAsB,EACtB,MAAyB,EACzB,gBAAyB,EACzB,KAA6B,EAC7B,SAAkB;AAClB,0EAA0E;AAC1E,uEAAuE;AACvE,sEAAsE;AACtE,OAA+B;AAC/B,+EAA+E;AAC/E,8EAA8E;AAC9E,YAAqB,EACrB,YAAqC;IAErC,MAAM,KAAK,GAAG,iBAAiB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAA;IAChD,MAAM,WAAW,GAAG,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/C,qGAAqG;IACrG,MAAM,eAAe,GAAG,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAA;IAEvG,yEAAyE;IACzE,mEAAmE;IACnE,MAAM,SAAS,GAAG,OAAO,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC;QACxC,CAAC,CAAC,gBAAgB,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI;QAC9C,CAAC,CAAC,EAAE,CAAA;IACN,MAAM,UAAU,GAAG,OAAO,CAAC,aAAa,IAAI,EAAE,CAAA;IAC9C,MAAM,oBAAoB,GAAG,gBAAgB,IAAI,2BAA2B,CAAA;IAC5E,MAAM,kBAAkB,GAAG,4BAA4B,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;IAC5E,6EAA6E;IAC7E,8EAA8E;IAC9E,4EAA4E;IAC5E,mEAAmE;IACnE,MAAM,gBAAgB,GAAG,CAAC,YAAY,IAAI,EAAE,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,6BAA6B,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,oBAAoB,EAAE,kBAAkB,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IAC5M,MAAM,SAAS,GAAG,OAAO,CAAC,GAAG,CAAC,UAAU,IAAI,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAA;IACrE,MAAM,WAAW,GAAG,cAAc,UAAU,EAAE,EAAE,CAAA;IAChD,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,EAAE,GAAG,WAAW,cAAc,CAAC,CAAA;IACjE,SAAS,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAEzC,8EAA8E;IAC9E,IAAI,OAAO,GAAY,SAAS,CAAA;IAChC,KAAK,IAAI,OAAO,GAAG,CAAC,EAAE,OAAO,IAAI,iBAAiB,EAAE,OAAO,EAAE,EAAE,CAAC;QAC9D,IAAI,CAAC;YACH,MAAM,SAAS,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,UAAU,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YACvE,MAAM,SAAS,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAAA;YACpD,MAAM,eAAe,GAAG,oBAAoB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;YAC3D,MAAM,UAAU,GAAG,CAAC,IAAI,EAAE,2BAA2B,eAAe,GAAG,CAAC,CAAA;YACxE,KAAK,EAAE,CAAC,kCAAkC,UAAU,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,cAAc,KAAK,GAAG,CAAC,CAAC,CAAC,EAAE,+BAA+B,eAAe,GAAG,CAAC,CAAA;YAE1J,aAAa,CAAC,WAAW,EAAE,4BAA4B,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAA;YAC7G,IAAI,CAAC;gBACH,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,gBAAgB,CAChD,eAAe,EACf,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CACV,OAAO,EACP,CAAC,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,UAAU,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,yBAAyB,EAAE,GAAG,SAAS,EAAE,GAAG,UAAU,EAAE,GAAG,SAAS,CAAC,EACnJ;oBACE,GAAG,EAAE,OAAO;oBACZ,OAAO,EAAE,CAAC;oBACV,GAAG,EAAE;wBACH,GAAG,OAAO,CAAC,GAAG;wBACd,yEAAyE;wBACzE,IAAI,EAAE,GAAG,OAAO,sBAAsB,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE;qBAC/D;iBACF,CACF,EACD;oBACE,OAAO,EAAE,CAAC,WAAW,EAAE,OAAO,EAAE,EAAE,CAChC,CAAC,OAAO,IAAI,KAAK,CAAC,EAAE,CAAC,0BAA0B,WAAW,GAAG,IAAI,eAAe,OAAO,GAAG,IAAI,qBAAqB,CAAC;iBACvH,CACF,CAAA;gBAED,MAAM,SAAS,GAAG,iBAAiB,CAAC,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,OAAO,CAAC,CAAA;gBAC1F,MAAM,WAAW,GAAG,CAAC,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAA;gBACzE,MAAM,UAAU,GAAG,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;gBAC3F,4EAA4E;gBAC5E,2EAA2E;gBAC3E,MAAM,MAAM,GAAG,SAAS,CAAC,QAAQ,CAAC,UAAU,CAAC;oBAC3C,CAAC,CAAC,SAAS;oBACX,CAAC,CAAC,GAAG,SAAS,gBAAgB,2BAA2B,CAAC,SAAS,CAAC,EAAE,CAAA;gBACxE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,EAAE,CAAA;YACxE,CAAC;oBAAS,CAAC;gBACT,MAAM,CAAC,WAAW,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;YACtC,CAAC;QACH,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,KAAK,GAAG,GAAwJ,CAAA;YACtK,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,IAAI,EAAE,CAAA;YACpC,MAAM,WAAW,GAAG,SAAS,IAAI,KAAK,CAAC,OAAO,IAAI,EAAE,CAAA;YAEpD,qCAAqC;YACrC,IAAI,qBAAqB,CAAC,WAAW,CAAC,IAAI,OAAO,GAAG,iBAAiB,EAAE,CAAC;gBACtE,MAAM,KAAK,GAAG,oBAAoB,GAAG,OAAO,CAAA,CAAC,UAAU;gBACvD,KAAK,EAAE,CAAC,6BAA6B,WAAW,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,kBAAkB,KAAK,GAAG,IAAI,cAAc,OAAO,IAAI,iBAAiB,MAAM,CAAC,CAAA;gBAC5I,MAAM,IAAI,OAAO,CAAO,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC,CAAA;gBAC9D,OAAO,GAAG,GAAG,CAAA;gBACb,SAAQ;YACV,CAAC;YAED,0DAA0D;YAC1D,MAAM,WAAW,GAAG,KAAK,CAAC,kBAAkB,IAAI,eAAe,CAAA;YAC/D,MAAM,SAAS,GAAG,KAAK,CAAC,YAAY,KAAK,SAAS,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,CAAA;YAC3E,MAAM,OAAO,GAAG,KAAK,CAAC,QAAQ;gBAC5B,CAAC,CAAC,mBAAmB,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,WAAW,GAAG,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,SAAS,sCAAsC,OAAO,CAAC,IAAI,GAAG;gBAC3I,CAAC,CAAC,CAAC,mBAAmB,CAAC,SAAS,CAAC,IAAI,KAAK,CAAC,OAAO,IAAI,eAAe,CAAC,CAAA;YACxE,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,UAAU,OAAO,EAAE,CAAC,EAAE;gBAC3D,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,QAAQ,EAAE,KAAK,CAAC,QAAQ;gBACxB,MAAM,EAAE,SAAS;gBACjB,kBAAkB,EAAE,WAAW;gBAC/B,YAAY,EAAE,KAAK,CAAC,YAAY;aACjC,CAAC,CAAA;YACF,MAAM,MAAM,CAAA;QACd,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,IAAI,OAAO;QAAE,MAAM,OAAO,CAAA;IAC1B,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;AACtD,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,cAAc;IAClC,IAAI,CAAC;QACH,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAA;QACjF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,EAAE,EAAE,CAAA;IAC5C,CAAC;IAAC,OAAO,GAAY,EAAE,CAAC;QACtB,MAAM,KAAK,GAAG,GAA4C,CAAA;QAC1D,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,OAAO,IAAI,mBAAmB,EAAE,CAAA;IACpF,CAAC;AACH,CAAC"}
@@ -1,10 +1,12 @@
1
+ import { type SkillActivationSession } from '../skills/broker.js';
1
2
  export declare const PROMPT_TEMPLATE = "This pull request has merge conflicts. Resolve all conflict markers in the files listed below.\n\nPR title: {PR_TITLE}\n\nConflicted files:\n{CONFLICTED_FILES}\n\n{EXTRA_INSTRUCTIONS}\n\nContext: the PR's branch is checked out as HEAD, and the base branch was merged into it. That means the `<<<<<<< HEAD` side is the PR author's intended changes and the `>>>>>>>` side is the base branch. Default to preserving the PR author's intent.\n\nRules for resolving each conflict:\n- Keep ALL meaningful changes from both sides if they are not directly contradictory\n- When both sides modify the same line, prefer the PR author's changes (the `<<<<<<< HEAD` side) over the base branch (the `>>>>>>>` side), unless the PR side clearly breaks existing logic on the base\n- Remove ALL conflict markers: <<<<<<<, =======, >>>>>>>\n\nFor each file, output ONLY the resolved conflict regions using this format:\n\n<edit path=\"relative/path/to/file.ext\">\n<old>\nexact conflict region including all markers (copy verbatim from the file)\n</old>\n<new>\nresolved content with no conflict markers\n</new>\n</edit>\n\nRules for <edit> blocks:\n- <old> must match the file content EXACTLY, including conflict markers and surrounding lines\n- <new> must not contain ANY conflict markers\n- Include 2\u20133 context lines around the conflict region to make the match unambiguous\n- One block per conflict region; multiple blocks per file are fine\n- Output ONLY <edit> blocks. No other text.";
2
3
  export declare function findConflictedFiles(tmpDir: string): string[];
3
4
  export declare function extractConflictWindows(content: string): string;
4
- export declare function runConflictResolveStep(tmpDir: string, prTitle: string, instructions: string, model?: string, timeoutMs?: number): Promise<{
5
+ export declare function runConflictResolveStep(tmpDir: string, prTitle: string, instructions: string, model?: string, timeoutMs?: number, skillSession?: SkillActivationSession, configuredEffort?: string): Promise<{
5
6
  appliedCount: number;
6
7
  resolvedPaths: string[];
7
8
  tokensUsed?: number;
9
+ effort: string;
8
10
  }>;
9
11
  export interface ResolverEdit {
10
12
  filePath: string;
@@ -1 +1 @@
1
- {"version":3,"file":"conflict-resolve.d.ts","sourceRoot":"","sources":["../../src/reviewers/conflict-resolve.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,eAAe,u8CAgCgB,CAAA;AAG5C,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAO5D;AAQD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAuC9D;AAkBD,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,KAAK,SAAY,EACjB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,EAAE,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA0EjF;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;CAChB;AAOD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,CAqB5F"}
1
+ {"version":3,"file":"conflict-resolve.d.ts","sourceRoot":"","sources":["../../src/reviewers/conflict-resolve.ts"],"names":[],"mappings":"AAMA,OAAO,EAAwD,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AAUvH,eAAO,MAAM,eAAe,u8CAgCgB,CAAA;AAG5C,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAO5D;AAQD,wBAAgB,sBAAsB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAuC9D;AAkBD,wBAAsB,sBAAsB,CAC1C,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,YAAY,EAAE,MAAM,EACpB,KAAK,SAAY,EACjB,SAAS,CAAC,EAAE,MAAM,EAClB,YAAY,CAAC,EAAE,sBAAsB,EAIrC,gBAAgB,CAAC,EAAE,MAAM,GACxB,OAAO,CAAC;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,EAAE,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAmFjG;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;CAChB;AAOD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,YAAY,EAAE,CAqB5F"}
@@ -3,6 +3,8 @@ import { readFileSync } from 'fs';
3
3
  import { join } from 'path';
4
4
  import { execa } from 'execa';
5
5
  import { applyEdit } from './fix.js';
6
+ import { claudeEffort } from './claude.js';
7
+ import { claudeSkillBrokerArgs, renderSkillBrokerInstructions } from '../skills/broker.js';
6
8
  // Exported so tests can verify the prompt's side-preference guidance stays in
7
9
  // sync with the merge direction in runner.ts (origin/<base> is merged into HEAD,
8
10
  // so HEAD is the PR side and the `>>>>>>>` side is the base branch).
@@ -114,21 +116,34 @@ function buildConflictedFilesBlock(tmpDir, filePaths) {
114
116
  }
115
117
  }).join('\n\n');
116
118
  }
117
- export async function runConflictResolveStep(tmpDir, prTitle, instructions, model = 'default', timeoutMs) {
119
+ export async function runConflictResolveStep(tmpDir, prTitle, instructions, model = 'default', timeoutMs, skillSession,
120
+ // Reasoning effort from vendors.claude.effort. Was never passed here, so the
121
+ // resolver ran at the CLI default while review and fix honored the config;
122
+ // the posted card now reports this value, so it has to be the real one.
123
+ configuredEffort) {
124
+ const effort = claudeEffort(configuredEffort);
118
125
  const conflictedFiles = findConflictedFiles(tmpDir);
119
126
  if (conflictedFiles.length === 0)
120
- return { appliedCount: 0, resolvedPaths: [] };
127
+ return { appliedCount: 0, resolvedPaths: [], effort };
121
128
  const filesBlock = buildConflictedFilesBlock(tmpDir, conflictedFiles);
122
129
  const prompt = PROMPT_TEMPLATE
123
130
  .replace('{PR_TITLE}', prTitle)
124
131
  .replace('{CONFLICTED_FILES}', filesBlock)
125
- .replace('{EXTRA_INSTRUCTIONS}', instructions ? `Additional instructions: ${instructions}` : '');
132
+ .replace('{EXTRA_INSTRUCTIONS}', [instructions ? `Additional instructions: ${instructions}` : '', skillSession ? renderSkillBrokerInstructions(skillSession) : ''].filter(Boolean).join('\n\n'));
126
133
  let output = '';
127
134
  let tokensUsed;
128
135
  try {
129
136
  const modelArgs = model !== 'default' ? ['--model', model] : [];
130
137
  const resolvedTimeout = timeoutMs === undefined ? 180_000 : timeoutMs === 0 ? undefined : timeoutMs;
131
- const { stdout } = await execa('claude', ['--print', '--output-format', 'json', ...modelArgs], {
138
+ const { stdout } = await execa('claude', [
139
+ '--print', '--output-format', 'json', ...modelArgs, '--effort', effort,
140
+ ...claudeSkillBrokerArgs(skillSession),
141
+ ...(skillSession ? ['--allowedTools', [
142
+ 'mcp__crosscheck__list_enabled_skills',
143
+ 'mcp__crosscheck__activate_skill',
144
+ 'mcp__crosscheck__read_skill_file',
145
+ ].join(',')] : []),
146
+ ], {
132
147
  input: prompt,
133
148
  timeout: resolvedTimeout,
134
149
  env: { ...process.env },
@@ -153,7 +168,7 @@ export async function runConflictResolveStep(tmpDir, prTitle, instructions, mode
153
168
  throw err;
154
169
  }
155
170
  if (!output || output === 'NO_CHANGES')
156
- return { appliedCount: 0, resolvedPaths: [], tokensUsed };
171
+ return { appliedCount: 0, resolvedPaths: [], tokensUsed, effort };
157
172
  const fileEdits = new Map();
158
173
  const fileCache = new Map();
159
174
  for (const { filePath, oldText, newText } of parseResolverEdits(output, conflictedFiles)) {
@@ -187,7 +202,7 @@ export async function runConflictResolveStep(tmpDir, prTitle, instructions, mode
187
202
  }
188
203
  catch { /* skip unwritable paths */ }
189
204
  }
190
- return { appliedCount, resolvedPaths, tokensUsed };
205
+ return { appliedCount, resolvedPaths, tokensUsed, effort };
191
206
  }
192
207
  // Parses <edit path="…"><old>…</old><new>…</new></edit> blocks from resolver output.
193
208
  // Filters out anything that escapes tmpDir (`..`, absolute paths) or targets a file
@@ -1 +1 @@
1
- {"version":3,"file":"conflict-resolve.js","sourceRoot":"","sources":["../../src/reviewers/conflict-resolve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"conflict-resolve.js","sourceRoot":"","sources":["../../src/reviewers/conflict-resolve.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,16 @@
1
1
  import type { Config } from '../config/schema.js';
2
+ import { type SkillActivationSession } from '../skills/broker.js';
2
3
  export declare function applyEdit(fileContent: string, oldText: string, newText: string): string | null;
3
- export declare function runFixStep(tmpDir: string, baseRef: string, prTitle: string, reviewComment: string, instructions: string, config: Config, model?: string, timeoutMs?: number): Promise<{
4
+ export declare function runFixStep(tmpDir: string, baseRef: string, prTitle: string, reviewComment: string, instructions: string, config: Config, model?: string, timeoutMs?: number, skillSession?: SkillActivationSession): Promise<{
4
5
  appliedCount: number;
5
6
  changedFiles: string[];
6
7
  tokensUsed?: number;
8
+ effort: string;
7
9
  }>;
8
- export declare function runCodexFixStep(tmpDir: string, baseRef: string, prTitle: string, reviewComment: string, instructions: string, model?: string, timeoutMs?: number): Promise<{
10
+ export declare function runCodexFixStep(tmpDir: string, baseRef: string, prTitle: string, reviewComment: string, instructions: string, model?: string, timeoutMs?: number, skillSession?: SkillActivationSession, configuredEffort?: string): Promise<{
9
11
  appliedCount: number;
10
12
  changedFiles: string[];
11
13
  tokensUsed?: number;
14
+ effort: string;
12
15
  }>;
13
16
  //# sourceMappingURL=fix.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"fix.d.ts","sourceRoot":"","sources":["../../src/reviewers/fix.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AA6DjD,wBAAgB,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAO9F;AAED,wBAAsB,UAAU,CAC9B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,EACd,KAAK,SAAY,EACjB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAuIhF;AA2BD,wBAAsB,eAAe,CACnC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,EACpB,KAAK,SAAY,EACjB,SAAS,CAAC,EAAE,MAAM,GACjB,OAAO,CAAC;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CA6ChF"}
1
+ {"version":3,"file":"fix.d.ts","sourceRoot":"","sources":["../../src/reviewers/fix.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAA;AAIjD,OAAO,EAA8E,KAAK,sBAAsB,EAAE,MAAM,qBAAqB,CAAA;AA4D7I,wBAAgB,SAAS,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAO9F;AAED,wBAAsB,UAAU,CAC9B,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,MAAM,EACd,KAAK,SAAY,EACjB,SAAS,CAAC,EAAE,MAAM,EAClB,YAAY,CAAC,EAAE,sBAAsB,GACpC,OAAO,CAAC;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CA+IhG;AA2BD,wBAAsB,eAAe,CACnC,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,EACf,aAAa,EAAE,MAAM,EACrB,YAAY,EAAE,MAAM,EACpB,KAAK,SAAY,EACjB,SAAS,CAAC,EAAE,MAAM,EAClB,YAAY,CAAC,EAAE,sBAAsB,EAIrC,gBAAgB,CAAC,EAAE,MAAM,GACxB,OAAO,CAAC;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,EAAE,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CA8ChG"}