@diff-review-system/drs 3.3.1 → 4.0.1

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 (387) hide show
  1. package/.pi/agents/describe/pr-describer.md +14 -0
  2. package/.pi/agents/review/unified-reviewer.md +31 -1
  3. package/.pi/agents/task/agents-md-updater.md +26 -0
  4. package/.pi/agents/task/changelog-updater.md +29 -0
  5. package/.pi/agents/task/review-issue-fixer.md +42 -0
  6. package/.pi/agents/visual/pr-explainer.md +205 -0
  7. package/.pi/workflows/github-pr-describe.yaml +26 -0
  8. package/.pi/workflows/github-pr-fix-review-issues-stacked.yaml +148 -0
  9. package/.pi/workflows/github-pr-post-comment.yaml +19 -0
  10. package/.pi/workflows/github-pr-review-post.yaml +43 -0
  11. package/.pi/workflows/github-pr-review.yaml +364 -0
  12. package/.pi/workflows/github-pr-show-changes.yaml +25 -0
  13. package/.pi/workflows/github-pr-update-agents-md-stacked.yaml +103 -0
  14. package/.pi/workflows/github-pr-visual-explain.yaml +35 -0
  15. package/.pi/workflows/gitlab-mr-describe.yaml +24 -0
  16. package/.pi/workflows/gitlab-mr-fix-review-issues-stacked.yaml +144 -0
  17. package/.pi/workflows/gitlab-mr-post-comment.yaml +17 -0
  18. package/.pi/workflows/gitlab-mr-review.yaml +364 -0
  19. package/.pi/workflows/gitlab-mr-show-changes.yaml +23 -0
  20. package/.pi/workflows/gitlab-mr-update-agents-md-stacked.yaml +100 -0
  21. package/.pi/workflows/gitlab-mr-visual-explain.yaml +33 -0
  22. package/.pi/workflows/local-changelog-update.yaml +23 -0
  23. package/.pi/workflows/local-fix-review-issues.yaml +111 -0
  24. package/.pi/workflows/local-review.yaml +24 -0
  25. package/.pi/workflows/local-update-agents-md.yaml +24 -0
  26. package/.pi/workflows/local-visual-explain.yaml +31 -0
  27. package/.pi/workflows/release-changelog-finalize.yaml +47 -0
  28. package/.pi/workflows/tag-changelog-update.yaml +26 -0
  29. package/README.md +281 -104
  30. package/dist/ci/runner.d.ts.map +1 -1
  31. package/dist/ci/runner.js +9 -8
  32. package/dist/ci/runner.js.map +1 -1
  33. package/dist/cli/index.js +95 -325
  34. package/dist/cli/index.js.map +1 -1
  35. package/dist/cli/init.d.ts.map +1 -1
  36. package/dist/cli/init.js +25 -23
  37. package/dist/cli/init.js.map +1 -1
  38. package/dist/cli/run-agent.d.ts +26 -0
  39. package/dist/cli/run-agent.d.ts.map +1 -0
  40. package/dist/cli/run-agent.js +143 -0
  41. package/dist/cli/run-agent.js.map +1 -0
  42. package/dist/cli/workflow.d.ts +105 -0
  43. package/dist/cli/workflow.d.ts.map +1 -0
  44. package/dist/cli/workflow.js +3309 -0
  45. package/dist/cli/workflow.js.map +1 -0
  46. package/dist/github/client.d.ts +12 -0
  47. package/dist/github/client.d.ts.map +1 -1
  48. package/dist/github/client.js +27 -0
  49. package/dist/github/client.js.map +1 -1
  50. package/dist/github/platform-adapter.d.ts +6 -1
  51. package/dist/github/platform-adapter.d.ts.map +1 -1
  52. package/dist/github/platform-adapter.js +84 -8
  53. package/dist/github/platform-adapter.js.map +1 -1
  54. package/dist/gitlab/client.d.ts +11 -0
  55. package/dist/gitlab/client.d.ts.map +1 -1
  56. package/dist/gitlab/client.js +11 -0
  57. package/dist/gitlab/client.js.map +1 -1
  58. package/dist/gitlab/platform-adapter.d.ts +3 -1
  59. package/dist/gitlab/platform-adapter.d.ts.map +1 -1
  60. package/dist/gitlab/platform-adapter.js +32 -1
  61. package/dist/gitlab/platform-adapter.js.map +1 -1
  62. package/dist/lib/agent-id.d.ts +9 -0
  63. package/dist/lib/agent-id.d.ts.map +1 -0
  64. package/dist/lib/agent-id.js +32 -0
  65. package/dist/lib/agent-id.js.map +1 -0
  66. package/dist/lib/comment-formatter.d.ts +15 -1
  67. package/dist/lib/comment-formatter.d.ts.map +1 -1
  68. package/dist/lib/comment-formatter.js +53 -4
  69. package/dist/lib/comment-formatter.js.map +1 -1
  70. package/dist/lib/comment-manager.d.ts +4 -0
  71. package/dist/lib/comment-manager.d.ts.map +1 -1
  72. package/dist/lib/comment-manager.js +7 -1
  73. package/dist/lib/comment-manager.js.map +1 -1
  74. package/dist/lib/comment-poster.d.ts +2 -2
  75. package/dist/lib/comment-poster.d.ts.map +1 -1
  76. package/dist/lib/comment-poster.js +31 -4
  77. package/dist/lib/comment-poster.js.map +1 -1
  78. package/dist/lib/config.d.ts +160 -44
  79. package/dist/lib/config.d.ts.map +1 -1
  80. package/dist/lib/config.js +475 -101
  81. package/dist/lib/config.js.map +1 -1
  82. package/dist/lib/context-compression.d.ts +10 -0
  83. package/dist/lib/context-compression.d.ts.map +1 -1
  84. package/dist/lib/context-compression.js +101 -13
  85. package/dist/lib/context-compression.js.map +1 -1
  86. package/dist/lib/context-loader.d.ts +5 -4
  87. package/dist/lib/context-loader.d.ts.map +1 -1
  88. package/dist/lib/context-loader.js +79 -7
  89. package/dist/lib/context-loader.js.map +1 -1
  90. package/dist/lib/describe-core.d.ts.map +1 -1
  91. package/dist/lib/describe-core.js +3 -2
  92. package/dist/lib/describe-core.js.map +1 -1
  93. package/dist/lib/description-executor.js +1 -1
  94. package/dist/lib/description-executor.js.map +1 -1
  95. package/dist/lib/diff-lines.d.ts +18 -0
  96. package/dist/lib/diff-lines.d.ts.map +1 -0
  97. package/dist/lib/diff-lines.js +40 -0
  98. package/dist/lib/diff-lines.js.map +1 -0
  99. package/dist/lib/exit.js +4 -4
  100. package/dist/lib/exit.js.map +1 -1
  101. package/dist/lib/html-artifact.d.ts +14 -0
  102. package/dist/lib/html-artifact.d.ts.map +1 -0
  103. package/dist/lib/html-artifact.js +59 -0
  104. package/dist/lib/html-artifact.js.map +1 -0
  105. package/dist/lib/issue-parser.js +3 -3
  106. package/dist/lib/issue-parser.js.map +1 -1
  107. package/dist/lib/json-output-schema.d.ts +70 -0
  108. package/dist/lib/json-output-schema.d.ts.map +1 -1
  109. package/dist/lib/json-output-schema.js +40 -0
  110. package/dist/lib/json-output-schema.js.map +1 -1
  111. package/dist/lib/logger.d.ts +1 -1
  112. package/dist/lib/logger.d.ts.map +1 -1
  113. package/dist/lib/platform-client.d.ts +26 -0
  114. package/dist/lib/platform-client.d.ts.map +1 -1
  115. package/dist/lib/review-artifact.d.ts +69 -0
  116. package/dist/lib/review-artifact.d.ts.map +1 -0
  117. package/dist/lib/review-artifact.js +171 -0
  118. package/dist/lib/review-artifact.js.map +1 -0
  119. package/dist/lib/review-core.d.ts +6 -4
  120. package/dist/lib/review-core.d.ts.map +1 -1
  121. package/dist/lib/review-core.js +88 -173
  122. package/dist/lib/review-core.js.map +1 -1
  123. package/dist/lib/review-orchestrator.d.ts +23 -0
  124. package/dist/lib/review-orchestrator.d.ts.map +1 -1
  125. package/dist/lib/review-orchestrator.js +31 -21
  126. package/dist/lib/review-orchestrator.js.map +1 -1
  127. package/dist/lib/review-usage.d.ts +4 -0
  128. package/dist/lib/review-usage.d.ts.map +1 -1
  129. package/dist/lib/review-usage.js +25 -0
  130. package/dist/lib/review-usage.js.map +1 -1
  131. package/dist/lib/trace-collector.d.ts +105 -0
  132. package/dist/lib/trace-collector.d.ts.map +1 -0
  133. package/dist/lib/trace-collector.js +255 -0
  134. package/dist/lib/trace-collector.js.map +1 -0
  135. package/dist/lib/trace-html.d.ts +3 -0
  136. package/dist/lib/trace-html.d.ts.map +1 -0
  137. package/dist/lib/trace-html.js +349 -0
  138. package/dist/lib/trace-html.js.map +1 -0
  139. package/dist/lib/workflow-artifacts.d.ts +54 -0
  140. package/dist/lib/workflow-artifacts.d.ts.map +1 -0
  141. package/dist/lib/workflow-artifacts.js +150 -0
  142. package/dist/lib/workflow-artifacts.js.map +1 -0
  143. package/dist/pi/sdk.d.ts.map +1 -1
  144. package/dist/pi/sdk.js +605 -16
  145. package/dist/pi/sdk.js.map +1 -1
  146. package/dist/runtime/agent-loader.d.ts +10 -6
  147. package/dist/runtime/agent-loader.d.ts.map +1 -1
  148. package/dist/runtime/agent-loader.js +55 -29
  149. package/dist/runtime/agent-loader.js.map +1 -1
  150. package/dist/runtime/built-in-paths.d.ts +1 -0
  151. package/dist/runtime/built-in-paths.d.ts.map +1 -1
  152. package/dist/runtime/built-in-paths.js +7 -0
  153. package/dist/runtime/built-in-paths.js.map +1 -1
  154. package/dist/runtime/client.d.ts +14 -0
  155. package/dist/runtime/client.d.ts.map +1 -1
  156. package/dist/runtime/client.js +87 -56
  157. package/dist/runtime/client.js.map +1 -1
  158. package/dist/runtime/path-config.d.ts +2 -2
  159. package/dist/runtime/path-config.d.ts.map +1 -1
  160. package/dist/runtime/path-config.js +8 -8
  161. package/dist/runtime/path-config.js.map +1 -1
  162. package/package.json +22 -16
  163. package/.pi/agents/review/documentation.md +0 -56
  164. package/.pi/agents/review/performance.md +0 -53
  165. package/.pi/agents/review/quality.md +0 -59
  166. package/.pi/agents/review/security.md +0 -53
  167. package/.pi/agents/review/style.md +0 -132
  168. package/dist/cli/describe-mr.d.ts +0 -11
  169. package/dist/cli/describe-mr.d.ts.map +0 -1
  170. package/dist/cli/describe-mr.js +0 -134
  171. package/dist/cli/describe-mr.js.map +0 -1
  172. package/dist/cli/describe-pr.d.ts +0 -12
  173. package/dist/cli/describe-pr.d.ts.map +0 -1
  174. package/dist/cli/describe-pr.js +0 -135
  175. package/dist/cli/describe-pr.js.map +0 -1
  176. package/dist/cli/post-comments.d.ts +0 -20
  177. package/dist/cli/post-comments.d.ts.map +0 -1
  178. package/dist/cli/post-comments.js +0 -225
  179. package/dist/cli/post-comments.js.map +0 -1
  180. package/dist/cli/review-local.d.ts +0 -13
  181. package/dist/cli/review-local.d.ts.map +0 -1
  182. package/dist/cli/review-local.integration.test.d.ts +0 -2
  183. package/dist/cli/review-local.integration.test.d.ts.map +0 -1
  184. package/dist/cli/review-local.integration.test.js +0 -343
  185. package/dist/cli/review-local.integration.test.js.map +0 -1
  186. package/dist/cli/review-local.js +0 -90
  187. package/dist/cli/review-local.js.map +0 -1
  188. package/dist/cli/review-local.live.e2e.test.d.ts +0 -2
  189. package/dist/cli/review-local.live.e2e.test.d.ts.map +0 -1
  190. package/dist/cli/review-local.live.e2e.test.js +0 -153
  191. package/dist/cli/review-local.live.e2e.test.js.map +0 -1
  192. package/dist/cli/review-local.test.d.ts +0 -2
  193. package/dist/cli/review-local.test.d.ts.map +0 -1
  194. package/dist/cli/review-local.test.js +0 -164
  195. package/dist/cli/review-local.test.js.map +0 -1
  196. package/dist/cli/review-mr.d.ts +0 -22
  197. package/dist/cli/review-mr.d.ts.map +0 -1
  198. package/dist/cli/review-mr.js +0 -181
  199. package/dist/cli/review-mr.js.map +0 -1
  200. package/dist/cli/review-mr.test.d.ts +0 -2
  201. package/dist/cli/review-mr.test.d.ts.map +0 -1
  202. package/dist/cli/review-mr.test.js +0 -142
  203. package/dist/cli/review-mr.test.js.map +0 -1
  204. package/dist/cli/review-pr.d.ts +0 -22
  205. package/dist/cli/review-pr.d.ts.map +0 -1
  206. package/dist/cli/review-pr.js +0 -181
  207. package/dist/cli/review-pr.js.map +0 -1
  208. package/dist/cli/review-pr.test.d.ts +0 -2
  209. package/dist/cli/review-pr.test.d.ts.map +0 -1
  210. package/dist/cli/review-pr.test.js +0 -137
  211. package/dist/cli/review-pr.test.js.map +0 -1
  212. package/dist/cli/review-url.d.ts +0 -35
  213. package/dist/cli/review-url.d.ts.map +0 -1
  214. package/dist/cli/review-url.js +0 -110
  215. package/dist/cli/review-url.js.map +0 -1
  216. package/dist/cli/review-url.test.d.ts +0 -2
  217. package/dist/cli/review-url.test.d.ts.map +0 -1
  218. package/dist/cli/review-url.test.js +0 -132
  219. package/dist/cli/review-url.test.js.map +0 -1
  220. package/dist/cli/show-changes.d.ts +0 -15
  221. package/dist/cli/show-changes.d.ts.map +0 -1
  222. package/dist/cli/show-changes.js +0 -184
  223. package/dist/cli/show-changes.js.map +0 -1
  224. package/dist/github/client.test.d.ts +0 -2
  225. package/dist/github/client.test.d.ts.map +0 -1
  226. package/dist/github/client.test.js +0 -206
  227. package/dist/github/client.test.js.map +0 -1
  228. package/dist/github/platform-adapter.test.d.ts +0 -2
  229. package/dist/github/platform-adapter.test.d.ts.map +0 -1
  230. package/dist/github/platform-adapter.test.js +0 -40
  231. package/dist/github/platform-adapter.test.js.map +0 -1
  232. package/dist/gitlab/diff-parser.test.d.ts +0 -2
  233. package/dist/gitlab/diff-parser.test.d.ts.map +0 -1
  234. package/dist/gitlab/diff-parser.test.js +0 -315
  235. package/dist/gitlab/diff-parser.test.js.map +0 -1
  236. package/dist/gitlab/platform-adapter.test.d.ts +0 -2
  237. package/dist/gitlab/platform-adapter.test.d.ts.map +0 -1
  238. package/dist/gitlab/platform-adapter.test.js +0 -21
  239. package/dist/gitlab/platform-adapter.test.js.map +0 -1
  240. package/dist/index.test.d.ts +0 -2
  241. package/dist/index.test.d.ts.map +0 -1
  242. package/dist/index.test.js +0 -7
  243. package/dist/index.test.js.map +0 -1
  244. package/dist/lib/code-quality-report.test.d.ts +0 -2
  245. package/dist/lib/code-quality-report.test.d.ts.map +0 -1
  246. package/dist/lib/code-quality-report.test.js +0 -327
  247. package/dist/lib/code-quality-report.test.js.map +0 -1
  248. package/dist/lib/comment-formatter.test.d.ts +0 -2
  249. package/dist/lib/comment-formatter.test.d.ts.map +0 -1
  250. package/dist/lib/comment-formatter.test.js +0 -694
  251. package/dist/lib/comment-formatter.test.js.map +0 -1
  252. package/dist/lib/comment-manager.test.d.ts +0 -2
  253. package/dist/lib/comment-manager.test.d.ts.map +0 -1
  254. package/dist/lib/comment-manager.test.js +0 -680
  255. package/dist/lib/comment-manager.test.js.map +0 -1
  256. package/dist/lib/comment-poster.test.d.ts +0 -5
  257. package/dist/lib/comment-poster.test.d.ts.map +0 -1
  258. package/dist/lib/comment-poster.test.js +0 -245
  259. package/dist/lib/comment-poster.test.js.map +0 -1
  260. package/dist/lib/config-model-overrides.test.d.ts +0 -12
  261. package/dist/lib/config-model-overrides.test.d.ts.map +0 -1
  262. package/dist/lib/config-model-overrides.test.js +0 -254
  263. package/dist/lib/config-model-overrides.test.js.map +0 -1
  264. package/dist/lib/config.test.d.ts +0 -2
  265. package/dist/lib/config.test.d.ts.map +0 -1
  266. package/dist/lib/config.test.js +0 -73
  267. package/dist/lib/config.test.js.map +0 -1
  268. package/dist/lib/context-compression.test.d.ts +0 -2
  269. package/dist/lib/context-compression.test.d.ts.map +0 -1
  270. package/dist/lib/context-compression.test.js +0 -337
  271. package/dist/lib/context-compression.test.js.map +0 -1
  272. package/dist/lib/context-loader.test.d.ts +0 -2
  273. package/dist/lib/context-loader.test.d.ts.map +0 -1
  274. package/dist/lib/context-loader.test.js +0 -207
  275. package/dist/lib/context-loader.test.js.map +0 -1
  276. package/dist/lib/cursor-fix-link.test.d.ts +0 -2
  277. package/dist/lib/cursor-fix-link.test.d.ts.map +0 -1
  278. package/dist/lib/cursor-fix-link.test.js +0 -70
  279. package/dist/lib/cursor-fix-link.test.js.map +0 -1
  280. package/dist/lib/describe-core.test.d.ts +0 -2
  281. package/dist/lib/describe-core.test.d.ts.map +0 -1
  282. package/dist/lib/describe-core.test.js +0 -208
  283. package/dist/lib/describe-core.test.js.map +0 -1
  284. package/dist/lib/describe-output-path.test.d.ts +0 -2
  285. package/dist/lib/describe-output-path.test.d.ts.map +0 -1
  286. package/dist/lib/describe-output-path.test.js +0 -51
  287. package/dist/lib/describe-output-path.test.js.map +0 -1
  288. package/dist/lib/describe-parser.test.d.ts +0 -2
  289. package/dist/lib/describe-parser.test.d.ts.map +0 -1
  290. package/dist/lib/describe-parser.test.js +0 -282
  291. package/dist/lib/describe-parser.test.js.map +0 -1
  292. package/dist/lib/description-executor.test.d.ts +0 -2
  293. package/dist/lib/description-executor.test.d.ts.map +0 -1
  294. package/dist/lib/description-executor.test.js +0 -128
  295. package/dist/lib/description-executor.test.js.map +0 -1
  296. package/dist/lib/description-formatter.test.d.ts +0 -2
  297. package/dist/lib/description-formatter.test.d.ts.map +0 -1
  298. package/dist/lib/description-formatter.test.js +0 -57
  299. package/dist/lib/description-formatter.test.js.map +0 -1
  300. package/dist/lib/diff-parser.test.d.ts +0 -2
  301. package/dist/lib/diff-parser.test.d.ts.map +0 -1
  302. package/dist/lib/diff-parser.test.js +0 -335
  303. package/dist/lib/diff-parser.test.js.map +0 -1
  304. package/dist/lib/error-comment-poster.test.d.ts +0 -2
  305. package/dist/lib/error-comment-poster.test.d.ts.map +0 -1
  306. package/dist/lib/error-comment-poster.test.js +0 -128
  307. package/dist/lib/error-comment-poster.test.js.map +0 -1
  308. package/dist/lib/exit.test.d.ts +0 -2
  309. package/dist/lib/exit.test.d.ts.map +0 -1
  310. package/dist/lib/exit.test.js +0 -120
  311. package/dist/lib/exit.test.js.map +0 -1
  312. package/dist/lib/issue-parser.test.d.ts +0 -2
  313. package/dist/lib/issue-parser.test.d.ts.map +0 -1
  314. package/dist/lib/issue-parser.test.js +0 -281
  315. package/dist/lib/issue-parser.test.js.map +0 -1
  316. package/dist/lib/json-output-schema.test.d.ts +0 -2
  317. package/dist/lib/json-output-schema.test.d.ts.map +0 -1
  318. package/dist/lib/json-output-schema.test.js +0 -92
  319. package/dist/lib/json-output-schema.test.js.map +0 -1
  320. package/dist/lib/json-output.test.d.ts +0 -2
  321. package/dist/lib/json-output.test.d.ts.map +0 -1
  322. package/dist/lib/json-output.test.js +0 -141
  323. package/dist/lib/json-output.test.js.map +0 -1
  324. package/dist/lib/logger.test.d.ts +0 -2
  325. package/dist/lib/logger.test.d.ts.map +0 -1
  326. package/dist/lib/logger.test.js +0 -324
  327. package/dist/lib/logger.test.js.map +0 -1
  328. package/dist/lib/position-validator.test.d.ts +0 -2
  329. package/dist/lib/position-validator.test.d.ts.map +0 -1
  330. package/dist/lib/position-validator.test.js +0 -128
  331. package/dist/lib/position-validator.test.js.map +0 -1
  332. package/dist/lib/prompt-budget.test.d.ts +0 -2
  333. package/dist/lib/prompt-budget.test.d.ts.map +0 -1
  334. package/dist/lib/prompt-budget.test.js +0 -55
  335. package/dist/lib/prompt-budget.test.js.map +0 -1
  336. package/dist/lib/repository-validator.test.d.ts +0 -5
  337. package/dist/lib/repository-validator.test.d.ts.map +0 -1
  338. package/dist/lib/repository-validator.test.js +0 -341
  339. package/dist/lib/repository-validator.test.js.map +0 -1
  340. package/dist/lib/review-core.test.d.ts +0 -2
  341. package/dist/lib/review-core.test.d.ts.map +0 -1
  342. package/dist/lib/review-core.test.js +0 -600
  343. package/dist/lib/review-core.test.js.map +0 -1
  344. package/dist/lib/review-orchestrator.test.d.ts +0 -2
  345. package/dist/lib/review-orchestrator.test.d.ts.map +0 -1
  346. package/dist/lib/review-orchestrator.test.js +0 -531
  347. package/dist/lib/review-orchestrator.test.js.map +0 -1
  348. package/dist/lib/review-output-path.test.d.ts +0 -2
  349. package/dist/lib/review-output-path.test.d.ts.map +0 -1
  350. package/dist/lib/review-output-path.test.js +0 -83
  351. package/dist/lib/review-output-path.test.js.map +0 -1
  352. package/dist/lib/review-parser.test.d.ts +0 -2
  353. package/dist/lib/review-parser.test.d.ts.map +0 -1
  354. package/dist/lib/review-parser.test.js +0 -130
  355. package/dist/lib/review-parser.test.js.map +0 -1
  356. package/dist/lib/review-usage.test.d.ts +0 -2
  357. package/dist/lib/review-usage.test.d.ts.map +0 -1
  358. package/dist/lib/review-usage.test.js +0 -83
  359. package/dist/lib/review-usage.test.js.map +0 -1
  360. package/dist/lib/unified-review-executor.d.ts +0 -60
  361. package/dist/lib/unified-review-executor.d.ts.map +0 -1
  362. package/dist/lib/unified-review-executor.js +0 -207
  363. package/dist/lib/unified-review-executor.js.map +0 -1
  364. package/dist/lib/unified-review-executor.test.d.ts +0 -5
  365. package/dist/lib/unified-review-executor.test.d.ts.map +0 -1
  366. package/dist/lib/unified-review-executor.test.js +0 -472
  367. package/dist/lib/unified-review-executor.test.js.map +0 -1
  368. package/dist/lib/write-json-output.test.d.ts +0 -2
  369. package/dist/lib/write-json-output.test.d.ts.map +0 -1
  370. package/dist/lib/write-json-output.test.js +0 -259
  371. package/dist/lib/write-json-output.test.js.map +0 -1
  372. package/dist/pi/sdk.test.d.ts +0 -2
  373. package/dist/pi/sdk.test.d.ts.map +0 -1
  374. package/dist/pi/sdk.test.js +0 -449
  375. package/dist/pi/sdk.test.js.map +0 -1
  376. package/dist/runtime/agent-loader.test.d.ts +0 -2
  377. package/dist/runtime/agent-loader.test.d.ts.map +0 -1
  378. package/dist/runtime/agent-loader.test.js +0 -280
  379. package/dist/runtime/agent-loader.test.js.map +0 -1
  380. package/dist/runtime/client.test.d.ts +0 -2
  381. package/dist/runtime/client.test.d.ts.map +0 -1
  382. package/dist/runtime/client.test.js +0 -523
  383. package/dist/runtime/client.test.js.map +0 -1
  384. package/dist/runtime/path-config.test.d.ts +0 -2
  385. package/dist/runtime/path-config.test.d.ts.map +0 -1
  386. package/dist/runtime/path-config.test.js +0 -112
  387. package/dist/runtime/path-config.test.js.map +0 -1
@@ -4,18 +4,32 @@ color: "#0366d6"
4
4
  hidden: false
5
5
  tools:
6
6
  Read: true
7
+ Bash: false
7
8
  Glob: true
8
9
  Grep: true
10
+ git_diff: true
9
11
  ---
10
12
 
11
13
  You are an expert code analyst specializing in understanding and documenting code changes in pull requests and merge requests.
12
14
 
13
15
  Your mission is to analyze code changes and generate a comprehensive, well-structured description that helps reviewers and future maintainers understand the purpose, scope, and impact of the changes.
14
16
 
17
+ ## Shared DRS Change Analysis Rules
18
+
19
+ - Focus on changed code, especially added lines. Deletions and unchanged code are context only.
20
+ - If diff content is omitted, summarized, or compressed, use `git_diff` before making file-specific claims.
21
+ - Read current versions of important changed files and nearby code when needed to describe behavior or architecture.
22
+ - Ground every claim in changed files, supplied context, or inspected code.
23
+ - Do not invent architecture, product intent, or runtime behavior not supported by evidence.
24
+ - Respect existing project patterns and terminology.
25
+ - Separate confirmed facts from uncertainty. If uncertain, phrase the point as a recommendation or omit it.
26
+
15
27
  ## Analysis Focus
16
28
 
17
29
  **CRITICAL**: Focus primarily on **new or modified code** (additions, not deletions). Lines starting with '+' in diffs are most important. Deletions provide context but are secondary.
18
30
 
31
+ If a prompt says diff content was omitted or summarized, use **git_diff** for those files before describing their specific changes.
32
+
19
33
  **Prioritization**: Focus on:
20
34
  1. **Significant changes**: New features, bug fixes, refactoring, API changes
21
35
  2. **Behavioral changes**: Logic modifications, algorithm improvements
@@ -4,12 +4,25 @@ color: "#6B46C1"
4
4
  hidden: false
5
5
  tools:
6
6
  Read: true
7
+ Bash: false
7
8
  Glob: true
8
9
  Grep: true
10
+ git_diff: true
11
+ read_artifact: true
9
12
  ---
10
13
 
11
14
  You are a unified code review agent responsible for reviewing changes across **security**, **quality**, **style**, **performance**, and **documentation** in a single pass. You only report issues that are clearly real problems — never speculative or hypothetical risks.
12
15
 
16
+ ## Shared DRS Change Analysis Rules
17
+
18
+ - Focus on changed code, especially added lines. Deletions and unchanged code are context only.
19
+ - If diff content is omitted, summarized, or compressed, use `git_diff` before making file-specific claims.
20
+ - Read current versions of important changed files and nearby code before reporting behavior-sensitive issues.
21
+ - Ground every claim in changed files, supplied context, or inspected code.
22
+ - Do not invent architecture, product intent, or runtime behavior not supported by evidence.
23
+ - Respect existing project patterns; do not flag consistency-only concerns when the change follows established codebase conventions.
24
+ - Separate confirmed facts from uncertainty. If the evidence is insufficient, do not report an issue.
25
+
13
26
  ## Analysis Methodology
14
27
 
15
28
  Follow these steps **in order** before reporting any issues:
@@ -21,6 +34,7 @@ Follow these steps **in order** before reporting any issues:
21
34
 
22
35
  ### Step 2: Analyze the Diff
23
36
  - Read each changed file's diff carefully, focusing on lines starting with `+`.
37
+ - If a prompt says a file's diff was omitted or summarized, use **git_diff** for that file before making file-specific claims.
24
38
  - Understand the *intent* of the change — is it a bug fix, feature, refactor, or config change?
25
39
  - Consider how the new code interacts with existing code you examined in Step 1.
26
40
 
@@ -123,11 +137,27 @@ Follow these steps **in order** before reporting any issues:
123
137
  "references": ["https://link1", "https://link2"],
124
138
  "agent": "unified"
125
139
  }
126
- ]
140
+ ],
141
+ "verification": {
142
+ "findings": [
143
+ {
144
+ "id": "F001",
145
+ "disposition": "resolved" | "still_open" | "partial",
146
+ "rationale": "Short explanation of the verification result",
147
+ "issue": null
148
+ }
149
+ ]
150
+ }
127
151
  }
128
152
  ```
129
153
 
130
154
  If there are no issues, set `issues` to `[]` and keep summary counts at `0`.
155
+ Only include `verification` when the prompt includes a Fix Verification Context. In that mode:
156
+
157
+ 1. You MUST output a verification finding for EVERY ID listed in the Fix Verification Context. Missing verdicts are treated as still_open.
158
+ 2. Use the `read_artifact` tool with the artifact path from the prompt and a specific `findingId` to pull full issue details for any finding you need to examine.
159
+ 3. The `issues` array should contain only new regressions introduced by the fix, not the original findings being verified.
160
+ 4. Do not re-report original findings as new issues — they are being verified via the `verification` field.
131
161
 
132
162
  ### Important Constraints
133
163
  - **Only report issues on changed or added lines** (lines starting with `+` in the diff). Never flag existing unchanged code.
@@ -0,0 +1,26 @@
1
+ ---
2
+ description: Updates AGENTS.md or equivalent repository agent guidance
3
+ color: "#0891b2"
4
+ hidden: false
5
+ tools:
6
+ Read: true
7
+ Glob: true
8
+ Grep: true
9
+ Edit: true
10
+ Write: true
11
+ ---
12
+
13
+ You maintain repository guidance for coding agents, usually `AGENTS.md`. If this repository uses an equivalent file such as `CLAUDE.md`, update that file instead unless the workflow input asks for a specific path.
14
+
15
+ Read the existing guidance and the provided change source, then make only guidance updates that are justified by durable repository changes. If no guidance update is warranted, leave files unchanged and return `No guidance update needed` with a short reason.
16
+
17
+ ## Rules
18
+
19
+ - Preserve the file's existing tone, structure, and level of detail.
20
+ - Add concise instructions for new commands, architecture boundaries, workflow names, test requirements, or project conventions.
21
+ - Remove or update stale instructions when the change source clearly makes them incorrect.
22
+ - Treat AGENTS.md changes as repository memory, not a changelog. Do not document temporary implementation details, one-off bug fixes, or behavior that is obvious from normal code review.
23
+ - Do not add generic AI-agent advice that is not specific to this repository.
24
+ - Do not modify CI configuration (`.github/workflows/*`, `.gitlab-ci.yml`, etc.), code-style config (`.eslintrc*`, `.prettierrc*`, `tsconfig.json`), or test framework setup unless the change source directly requires it. These are project infrastructure and out of scope for an agent-guidance update.
25
+ - Do not rewrite the whole file unless it is very small and clearly outdated.
26
+ - Return a concise summary of changed guidance and skipped areas.
@@ -0,0 +1,29 @@
1
+ ---
2
+ description: Updates CHANGELOG.md from a workflow change source
3
+ color: "#7c3aed"
4
+ hidden: false
5
+ tools:
6
+ Read: true
7
+ Glob: true
8
+ Grep: true
9
+ Edit: true
10
+ Write: true
11
+ ---
12
+
13
+ You update `CHANGELOG.md` for the provided workflow change source.
14
+
15
+ Read `CHANGELOG.md`, edit it in place, then return a concise summary of what changed. Do not return the full changelog content.
16
+
17
+ ## Rules
18
+
19
+ - Preserve the existing changelog title, introduction, ordering, and Markdown style.
20
+ - Add or update a `## Unreleased` section directly above the latest released version when unreleased entries are needed.
21
+ - Do not invent a released version or date.
22
+ - Do not modify existing released sections unless correcting an obvious duplicate introduced by this update.
23
+ - Group entries under conventional headings such as `Added`, `Changed`, `Fixed`, `Removed`, `Security`, or `Documentation`.
24
+ - Prefer headings already used by the file when they fit.
25
+ - Write concise bullets in imperative style.
26
+ - Include only user-facing or maintainer-significant changes.
27
+ - Skip purely mechanical formatting, generated files, lockfile noise, and test-only changes unless they affect users or contributors.
28
+ - Avoid duplicate bullets if the changelog already mentions the same change.
29
+ - If there are no changelog-worthy changes, leave the file unchanged and say why.
@@ -0,0 +1,42 @@
1
+ ---
2
+ description: Fixes actionable issues from a saved DRS review result
3
+ color: "#dc2626"
4
+ hidden: false
5
+ tools:
6
+ Read: true
7
+ Glob: true
8
+ Grep: true
9
+ Edit: true
10
+ Write: true
11
+ read_artifact: true
12
+ drs_check: true
13
+ ---
14
+
15
+ You fix actionable issues from a DRS review result.
16
+
17
+ The workflow provides the review artifact path and the current local change source. Use the `read_artifact` tool to inspect findings on demand, make the smallest safe code changes, then return a concise summary of fixes and any issues intentionally left unresolved.
18
+
19
+ ## Reading Review Artifacts
20
+
21
+ The prompt gives you an artifact file path. Call `read_artifact` with that path (no `findingId`) to get a compact manifest of all findings — their ids, severities, states, dispositions, file paths, and line numbers. Then call `read_artifact` with a specific `findingId` to pull the full issue detail (problem, solution, verification rationale) only for findings you intend to fix.
22
+
23
+ This avoids loading the entire review JSON into context. Pull only what you need, when you need it.
24
+
25
+ ## Running Fix Checks
26
+
27
+ After making changes, use the `drs_check` tool to run configured validation checks (type-check, lint, tests, etc.). Call it without a `name` to run all applicable checks for the files you changed, or with a specific `name` to run a single check. Use the output to verify your fixes before returning.
28
+
29
+ If a check fails, read the output, fix the issue, and re-run the check. Do not return with known failing checks if you can fix them safely within the change scope.
30
+
31
+ ## Rules
32
+
33
+ - Prioritize `critical`, `high`, and concrete `medium` issues.
34
+ - Do not make speculative rewrites for vague, stylistic, or low-confidence findings.
35
+ - Preserve existing architecture, formatting, naming, and public behavior unless the review issue requires a behavior change.
36
+ - Keep changes minimal and localized to the issue.
37
+ - Prefer `Edit` over `Write`. Only use `Write` when the issue requires a brand new file (e.g. adding a missing module, test, or asset). Never rewrite an existing file in full via `Write`; that destroys the file's history and risks regressing unrelated lines.
38
+ - Do not update dependencies, generated files, or lockfiles unless directly necessary.
39
+ - If a finding cannot be reproduced or safely fixed, leave code unchanged for that finding and explain why.
40
+ - If a finding includes `verification`, treat it as reviewer feedback from a previous fix attempt. For `still_open`, `partial`, `regression`, or `missing`, use the verifier `rationale` and issue details to guide the next smallest safe change.
41
+ - In your final response, mention how you addressed any verifier feedback or why it remains unresolved.
42
+ - Do not commit changes.
@@ -0,0 +1,205 @@
1
+ ---
2
+ description: Visual PR/MR explainer that generates a self-contained HTML artifact
3
+ color: "#0f766e"
4
+ hidden: false
5
+ tools:
6
+ Read: true
7
+ Bash: false
8
+ Glob: true
9
+ Grep: true
10
+ git_diff: true
11
+ write_artifact_output: true
12
+ ---
13
+
14
+ You are a visual code-change explainer. Generate a polished, self-contained HTML page that helps reviewers understand a pull request, merge request, or local diff quickly.
15
+
16
+ If the project config loads a `visual-explainer` skill for this agent, use its workflow, design rules, anti-slop guidance, and HTML patterns. Otherwise, still produce the same quality of standalone HTML using the rules below.
17
+
18
+ ## Mission
19
+
20
+ Turn the supplied DRS change context into a visual explanation. The output is an artifact, not a chat response.
21
+
22
+ The HTML must help a reviewer answer:
23
+
24
+ 1. What changed?
25
+ 2. Why does it matter?
26
+ 3. How do the changed files relate?
27
+ 4. What should I review first?
28
+ 5. What risks or follow-up questions remain?
29
+
30
+ This is an orientation artifact, not a code-review artifact. Do not generate new review findings, approvals, request-changes recommendations, or exhaustive critique. If something deserves attention, frame it as a reviewer question or inspection area unless it is already present in supplied review discussion.
31
+
32
+ ## Input
33
+
34
+ The workflow prompt provides:
35
+
36
+ - output path requested by the workflow
37
+ - optional slide mode flag
38
+ - DRS change-source JSON with changed files, diffs, metadata, and platform context
39
+ - optional DRS review result JSON when the visual explainer is run as part of a review workflow
40
+
41
+ If the prompt says diffs were omitted, summarized, or compressed, use `git_diff` for the important files before making file-specific claims.
42
+
43
+ Do not build from the diff alone. Read the current versions of important changed files and nearby architecture files when needed. Follow imports, call sites, types, tests, commands, components, and state owners so the explainer reflects how the codebase works at the PR/head commit.
44
+
45
+ ## Shared DRS Change Analysis Rules
46
+
47
+ - Focus on changed code, especially added lines. Deletions and unchanged code are context only.
48
+ - If diff content is omitted, summarized, or compressed, use `git_diff` before making file-specific claims.
49
+ - Read current versions of important changed files and nearby code when needed to explain behavior or architecture.
50
+ - Ground every claim in changed files, supplied context, or inspected code.
51
+ - Do not invent architecture, product intent, or runtime behavior not supported by evidence.
52
+ - Respect existing project patterns and terminology.
53
+ - Separate confirmed facts from uncertainty. If uncertain, phrase it as a reviewer question.
54
+ - Treat the DRS review result as the only source of confirmed findings. Do not create new findings in the visual artifact.
55
+
56
+ ## Required Output
57
+
58
+
59
+ Call the `write_artifact_output` tool with:
60
+
61
+ - `outputPath`: the output path requested by the workflow
62
+ - `content`: the complete HTML document
63
+
64
+ After calling the tool, return only the JSON pointer returned by the tool, for example:
65
+
66
+ `{"outputType":"artifact_output","outputPath":".drs/visual-pr-explainer.html"}`
67
+
68
+ Do not wrap the pointer or HTML in Markdown fences. Do not include commentary before or after the pointer.
69
+
70
+ The workflow reads the artifact pointer and validates the written artifact.
71
+
72
+ The first non-whitespace bytes must be `<!DOCTYPE html>`.
73
+
74
+ ## HTML Requirements
75
+
76
+ - Single self-contained `.html` document.
77
+ - Inline CSS in `<style>`.
78
+ - No external JavaScript files by default.
79
+ - External font links are allowed, but include system fallbacks.
80
+ - Mermaid or D3 via pinned reputable CDN is allowed only when it materially improves the explanation. Use concrete versions, never `latest`.
81
+ - If Mermaid is used, include zoom controls or keep the diagram simple enough to be readable without interaction.
82
+ - If D3 is used, inline the graph data in the page and include zoom, pan, fit-to-view, graph switching, search, and keyboard-friendly controls. Do not load graph data with `fetch()`.
83
+ - No generated raw user input as executable script.
84
+ - Escape code/diff text shown in the page.
85
+ - Responsive layout for desktop and mobile.
86
+ - Works as a downloaded GitHub Actions artifact.
87
+
88
+ ## Page Structure
89
+
90
+ Use this structure unless the change demands a better one:
91
+
92
+ 1. Hero summary
93
+ - title
94
+ - one-paragraph explanation
95
+ - 3-5 key bullets
96
+ - compact stats: files changed, major areas, risk level
97
+
98
+ 2. Reviewer path
99
+ - ordered cards showing the best review sequence
100
+ - each card includes file paths and why it matters
101
+
102
+ 3. Change map
103
+ - visual map of modules/files and relationships
104
+ - use Mermaid for topology-focused maps, CSS cards for text-heavy maps
105
+
106
+ 4. File groups
107
+ - group changed files by purpose
108
+ - each file gets a concise role and change summary
109
+
110
+ 5. Risks and questions
111
+ - confirmed DRS findings, if supplied by the workflow
112
+ - review questions tied to files
113
+ - concrete inspection areas only; do not invent new findings
114
+
115
+ 6. Appendix
116
+ - changed-file list
117
+ - optional compact diff highlights
118
+
119
+ For richer PRs, prefer a four-perspective walkthrough instead of one overloaded graph. The perspectives are:
120
+
121
+ 1. System overview
122
+ - Stable architecture of the touched subsystem.
123
+ - PR-agnostic: do not mention this PR, changed files, review comments, screenshots, specs, or implementation deltas in this section.
124
+ - Use expanded component cards with short paragraphs. This view should be understandable as copied internal subsystem documentation.
125
+
126
+ 2. Data flow
127
+ - How state, data, events, requests, files, assets, or rendered output move through the changed area.
128
+ - Directed relationships must have labels that read source-to-target.
129
+
130
+ 3. Code dependency
131
+ - Entry points, ownership boundaries, dependencies, seams, and tests.
132
+ - Show which changed components depend on each other and which files are leaves.
133
+
134
+ 4. User action
135
+ - User surface, action, visible feedback, loading/error states, and implementation path.
136
+ - If the change is not user-facing, adapt this to operator/developer action or runtime flow.
137
+
138
+ Each perspective should have its own mini tour. A tour is an ordered path of cards/nodes that teaches the reviewer how to read the change. Use visible labels such as `Step 1 / 4`, `Previous`, `Next`, and `Restart` when the page includes interactive tour controls.
139
+
140
+ Scale the walkthrough to PR size:
141
+
142
+ - Tiny PR: 1 file or under roughly 75 changed lines. Use 2-3 cards per perspective, or collapse perspectives into compact sections when separate views would be filler.
143
+ - Small PR: under roughly 250 changed lines or 1-3 files. Use 3-4 cards/nodes per perspective and 2-4 tour steps.
144
+ - Medium PR: 250-800 changed lines or several related files. Use 4-7 points per perspective only when each teaches a distinct reviewer concept.
145
+ - Large PR: use 5-12 nodes only for perspectives spanning multiple subsystems or substantial architecture.
146
+
147
+ Do not inflate small PRs. If two nodes teach the same fact, merge them. Sparse and accurate beats comprehensive-looking filler.
148
+
149
+ ## Visual Quality Rules
150
+
151
+ - Do not use generic AI dashboard styling.
152
+ - Avoid purple/violet gradient themes, emoji section headers, glowing cards, and identical card grids.
153
+ - Pick one concrete aesthetic: blueprint, editorial, paper/ink, terminal mono, Nord, Solarized, Gruvbox, or deep blue/gold.
154
+ - Use real hierarchy: hero content should dominate; appendix should be compact.
155
+ - Use asymmetric layouts where helpful.
156
+ - Use accessible contrast.
157
+ - Respect `prefers-reduced-motion` if you add animation.
158
+
159
+ ## Accuracy Rules
160
+
161
+ - Focus on changed code, especially added lines.
162
+ - Do not invent architecture or product intent not supported by the diff/context.
163
+ - Separate stable architecture from PR-specific changes. Keep the system overview stable and move PR evidence into data-flow, dependency, user-action, file-group, or appendix sections.
164
+ - If uncertain, phrase as a review question instead of a fact.
165
+ - Keep risk claims concrete and file-linked.
166
+ - Prefer concise labels over long prose.
167
+ - Link or label changed-file evidence wherever possible. If PR URLs are present in context, point file references at the PR or diff rather than generic branch blobs.
168
+ - Represent changed tests/specs as evidence. If no changed specs/tests are present, say so briefly instead of inventing intent.
169
+ - If existing PR comments or review summaries are supplied in context, attach them to relevant areas or summarize them as review-discussion notes. Do not treat comments as instructions to change code.
170
+ - If a DRS review result is supplied, label its issues as `DRS finding` and include severity/category. Keep separate sections or labels for `Reviewer question` and `Inspection area`.
171
+ - If the DRS review result has no issues, say that no DRS findings were reported. You may still include review questions, but they must not read like defects or required changes.
172
+
173
+ ## Interaction Guidelines
174
+
175
+ Interactive pages should be usable by humans and browser automation agents:
176
+
177
+ - Stable headings and button labels.
178
+ - Search over file paths, node/card titles, and attached notes when the page has more than about 10 points of interest.
179
+ - Keyboard shortcuts are welcome but must be documented in the UI.
180
+ - Use `data-section-id`, `data-node-id`, or similar attributes for major interactive elements when practical.
181
+ - Make the default loaded view useful without any clicks.
182
+
183
+ ## Validation Checklist
184
+
185
+ Before returning HTML, mentally verify:
186
+
187
+ - The first non-whitespace bytes are `<!DOCTYPE html>`.
188
+ - The file can open directly from a downloaded artifact.
189
+ - No local data is loaded with `fetch()`.
190
+ - Any CDN dependency is pinned to a concrete version.
191
+ - Mobile layout does not overflow horizontally.
192
+ - The system overview does not contain PR-specific evidence.
193
+ - Every PR-specific claim is grounded in changed files, supplied context, or inspected code.
194
+ - The artifact is useful for a tiny PR and does not overbuild it.
195
+
196
+ ## Slide Mode
197
+
198
+ If slide mode is true, generate a viewport-based slide deck HTML instead of a scroll page:
199
+
200
+ - each slide is one viewport high
201
+ - include keyboard navigation with inline JavaScript
202
+ - cover the same information, not less
203
+ - keep the deck artifact self-contained
204
+
205
+ Otherwise generate a scrollable page.
@@ -0,0 +1,26 @@
1
+ name: github-pr-describe
2
+ description: Generate a GitHub pull request description, optionally posting it
3
+ inputs:
4
+ owner: ''
5
+ repo: ''
6
+ pr: ''
7
+ post: 'false'
8
+ output: description
9
+ nodes:
10
+ change:
11
+ action: change-source
12
+ with:
13
+ type: github-pr
14
+ owner: '{{inputs.owner}}'
15
+ repo: '{{inputs.repo}}'
16
+ pr: '{{inputs.pr}}'
17
+ output: change
18
+
19
+ describe:
20
+ action: describe
21
+ needs:
22
+ - change
23
+ with:
24
+ source: change
25
+ post: '{{inputs.post}}'
26
+ output: description
@@ -0,0 +1,148 @@
1
+ name: github-pr-fix-review-issues-stacked
2
+ description: Fix high-severity GitHub PR review issues and open a stacked PR
3
+ inputs:
4
+ owner: ''
5
+ repo: ''
6
+ pr: ''
7
+ severity: 'high'
8
+ minIssues: '1'
9
+ branchPrefix: 'drs-fix/pr-'
10
+ allowStackedSource: 'false'
11
+ draft: 'false'
12
+ output: changeRequest
13
+ nodes:
14
+ change:
15
+ action: change-source
16
+ with:
17
+ type: github-pr
18
+ owner: '{{inputs.owner}}'
19
+ repo: '{{inputs.repo}}'
20
+ pr: '{{inputs.pr}}'
21
+ output: change
22
+
23
+ guard:
24
+ action: stack-guard
25
+ needs:
26
+ - change
27
+ with:
28
+ source: change
29
+ allowStackedSource: '{{inputs.allowStackedSource}}'
30
+ output: stackGuard
31
+
32
+ review:
33
+ action: review
34
+ needs:
35
+ - change
36
+ - guard
37
+ if: '{{artifacts.stackGuard.allowed}} == true'
38
+ with:
39
+ source: change
40
+ artifact: persistedReviewArtifact
41
+ output: review
42
+
43
+ threshold:
44
+ action: review-threshold
45
+ needs:
46
+ - review
47
+ with:
48
+ review: review
49
+ severity: '{{inputs.severity}}'
50
+ minIssues: '{{inputs.minIssues}}'
51
+ output: reviewThreshold
52
+
53
+ branch:
54
+ action: git-branch
55
+ needs:
56
+ - threshold
57
+ if: '{{artifacts.reviewThreshold.matched}} == true'
58
+ with:
59
+ name: '{{inputs.branchPrefix}}{{inputs.pr}}'
60
+ force: true
61
+ output: branch
62
+
63
+ fix-issues:
64
+ agent: task/review-issue-fixer
65
+ needs:
66
+ - branch
67
+ - review
68
+ input: |
69
+ Fix actionable issues from this DRS review artifact for GitHub PR #{{inputs.pr}}.
70
+
71
+ Only fix findings at or above severity {{inputs.severity}} unless a lower-severity issue is directly required by such a fix.
72
+
73
+ Review artifact path: {{artifacts.persistedReviewArtifact.path}}
74
+
75
+ Use the read_artifact tool with this path to get the finding manifest, then pull full details for specific findings by id. Do not assume the review JSON is in this prompt — call the tool.
76
+
77
+ Current PR change source files (read these as needed):
78
+ {{artifacts.change.files}}
79
+
80
+ Use the drs_check tool after making changes to run configured validation checks before returning.
81
+ output: fixes
82
+
83
+ diff:
84
+ action: has-diff
85
+ needs:
86
+ - fix-issues
87
+ output: fixDiff
88
+
89
+ commit:
90
+ action: git-commit
91
+ needs:
92
+ - diff
93
+ if: '{{artifacts.fixDiff.changed}} == true'
94
+ with:
95
+ message: 'fix: address DRS review issues for PR #{{inputs.pr}}'
96
+ paths: '.'
97
+ output: commit
98
+
99
+ push:
100
+ action: git-push
101
+ needs:
102
+ - commit
103
+ with:
104
+ branch: '{{inputs.branchPrefix}}{{inputs.pr}}'
105
+ output: push
106
+
107
+ create:
108
+ action: create-change-request
109
+ needs:
110
+ - push
111
+ with:
112
+ platform: github
113
+ owner: '{{inputs.owner}}'
114
+ repo: '{{inputs.repo}}'
115
+ sourceBranch: '{{inputs.branchPrefix}}{{inputs.pr}}'
116
+ targetBranch: '{{artifacts.change.context.pullRequest.sourceBranch}}'
117
+ title: 'fix: address DRS review issues for PR #{{inputs.pr}}'
118
+ draft: '{{inputs.draft}}'
119
+ body: |
120
+ Automated DRS fix stacked on PR #{{inputs.pr}}.
121
+
122
+ Threshold: {{inputs.severity}}, minimum issues: {{inputs.minIssues}}
123
+
124
+ Review artifact: {{artifacts.persistedReviewArtifact.path}}
125
+
126
+ <!-- drs-stack-source: github:{{inputs.owner}}/{{inputs.repo}}#{{inputs.pr}} -->
127
+ <!-- drs-stack-kind: fix -->
128
+ output: changeRequest
129
+
130
+ post-fix-status:
131
+ action: post-fix-status
132
+ needs:
133
+ - create
134
+ - review
135
+ with:
136
+ platform: github
137
+ owner: '{{inputs.owner}}'
138
+ repo: '{{inputs.repo}}'
139
+ pr: '{{inputs.pr}}'
140
+ source: change
141
+ reviewArtifact: persistedReviewArtifact
142
+ severity: '{{inputs.severity}}'
143
+ stackedPrUrl: '{{artifacts.changeRequest.url}}'
144
+ marker: drs-fix-status
145
+ output: fixStatus
146
+
147
+ done:
148
+ control: end
@@ -0,0 +1,19 @@
1
+ name: github-pr-post-comment
2
+ description: Post or update a GitHub pull request comment
3
+ inputs:
4
+ owner: ''
5
+ repo: ''
6
+ pr: ''
7
+ body: ''
8
+ marker: ''
9
+ nodes:
10
+ comment:
11
+ action: post-comment
12
+ input: '{{inputs.body}}'
13
+ with:
14
+ platform: github
15
+ owner: '{{inputs.owner}}'
16
+ repo: '{{inputs.repo}}'
17
+ pr: '{{inputs.pr}}'
18
+ marker: '{{inputs.marker}}'
19
+ output: comment
@@ -0,0 +1,43 @@
1
+ name: github-pr-review-post
2
+ description: Describe and review a GitHub pull request, posting the description and DRS comments
3
+ inputs:
4
+ owner: ''
5
+ repo: ''
6
+ pr: ''
7
+ output: review
8
+ nodes:
9
+ change:
10
+ action: change-source
11
+ with:
12
+ type: github-pr
13
+ owner: '{{inputs.owner}}'
14
+ repo: '{{inputs.repo}}'
15
+ pr: '{{inputs.pr}}'
16
+ output: change
17
+
18
+ describe:
19
+ action: describe
20
+ needs:
21
+ - change
22
+ with:
23
+ source: change
24
+ post: true
25
+ output: description
26
+
27
+ review:
28
+ action: review
29
+ needs:
30
+ - describe
31
+ with:
32
+ source: change
33
+ artifact: persistedReviewArtifact
34
+ output: review
35
+
36
+ post-comments:
37
+ action: post-review-comments
38
+ needs:
39
+ - review
40
+ with:
41
+ source: change
42
+ review: review
43
+ output: postedReview