@shepai/cli 1.127.0-pr406.05077bf → 1.127.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (161) hide show
  1. package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.d.ts +2 -5
  2. package/dist/packages/core/src/application/ports/output/services/git-pr-service.interface.d.ts.map +1 -1
  3. package/dist/packages/core/src/application/use-cases/agents/approve-agent-run.use-case.d.ts.map +1 -1
  4. package/dist/packages/core/src/application/use-cases/agents/approve-agent-run.use-case.js +2 -7
  5. package/dist/packages/core/src/application/use-cases/agents/reject-agent-run.use-case.d.ts.map +1 -1
  6. package/dist/packages/core/src/application/use-cases/agents/reject-agent-run.use-case.js +2 -7
  7. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/merge/merge.node.d.ts.map +1 -1
  8. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/merge/merge.node.js +0 -1
  9. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/merge-prompts.d.ts.map +1 -1
  10. package/dist/packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/merge-prompts.js +2 -3
  11. package/dist/packages/core/src/infrastructure/services/git/git-pr.service.js +1 -1
  12. package/dist/src/presentation/web/app/(dashboard)/get-graph-data.d.ts.map +1 -1
  13. package/dist/src/presentation/web/app/(dashboard)/get-graph-data.js +32 -37
  14. package/dist/src/presentation/web/app/actions/approve-feature.d.ts.map +1 -1
  15. package/dist/src/presentation/web/app/actions/approve-feature.js +9 -4
  16. package/dist/src/presentation/web/app/actions/reject-feature.d.ts.map +1 -1
  17. package/dist/src/presentation/web/app/actions/reject-feature.js +9 -4
  18. package/dist/tsconfig.build.tsbuildinfo +1 -1
  19. package/package.json +1 -1
  20. package/web/.next/BUILD_ID +1 -1
  21. package/web/.next/build-manifest.json +2 -2
  22. package/web/.next/fallback-build-manifest.json +2 -2
  23. package/web/.next/prerender-manifest.json +3 -3
  24. package/web/.next/required-server-files.js +3 -3
  25. package/web/.next/required-server-files.json +3 -3
  26. package/web/.next/server/app/(dashboard)/@drawer/adopt/page/server-reference-manifest.json +22 -22
  27. package/web/.next/server/app/(dashboard)/@drawer/adopt/page.js.nft.json +1 -1
  28. package/web/.next/server/app/(dashboard)/@drawer/adopt/page_client-reference-manifest.js +1 -1
  29. package/web/.next/server/app/(dashboard)/@drawer/create/page/server-reference-manifest.json +22 -22
  30. package/web/.next/server/app/(dashboard)/@drawer/create/page.js.nft.json +1 -1
  31. package/web/.next/server/app/(dashboard)/@drawer/create/page_client-reference-manifest.js +1 -1
  32. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page/server-reference-manifest.json +28 -28
  33. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  34. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  35. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page/server-reference-manifest.json +28 -28
  36. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page.js.nft.json +1 -1
  37. package/web/.next/server/app/(dashboard)/@drawer/feature/[featureId]/page_client-reference-manifest.js +1 -1
  38. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page/server-reference-manifest.json +20 -20
  39. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page.js.nft.json +1 -1
  40. package/web/.next/server/app/(dashboard)/@drawer/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  41. package/web/.next/server/app/(dashboard)/create/page/server-reference-manifest.json +22 -22
  42. package/web/.next/server/app/(dashboard)/create/page.js.nft.json +1 -1
  43. package/web/.next/server/app/(dashboard)/create/page_client-reference-manifest.js +1 -1
  44. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page/server-reference-manifest.json +28 -28
  45. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page.js.nft.json +1 -1
  46. package/web/.next/server/app/(dashboard)/feature/[featureId]/[tab]/page_client-reference-manifest.js +1 -1
  47. package/web/.next/server/app/(dashboard)/feature/[featureId]/page/server-reference-manifest.json +28 -28
  48. package/web/.next/server/app/(dashboard)/feature/[featureId]/page.js.nft.json +1 -1
  49. package/web/.next/server/app/(dashboard)/feature/[featureId]/page_client-reference-manifest.js +1 -1
  50. package/web/.next/server/app/(dashboard)/page/server-reference-manifest.json +20 -20
  51. package/web/.next/server/app/(dashboard)/page.js.nft.json +1 -1
  52. package/web/.next/server/app/(dashboard)/page_client-reference-manifest.js +1 -1
  53. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page/server-reference-manifest.json +20 -20
  54. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page.js.nft.json +1 -1
  55. package/web/.next/server/app/(dashboard)/repository/[repositoryId]/page_client-reference-manifest.js +1 -1
  56. package/web/.next/server/app/_global-error.html +2 -2
  57. package/web/.next/server/app/_global-error.rsc +1 -1
  58. package/web/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  59. package/web/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  60. package/web/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  61. package/web/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  62. package/web/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  63. package/web/.next/server/app/_not-found/page/server-reference-manifest.json +1 -1
  64. package/web/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  65. package/web/.next/server/app/settings/page/server-reference-manifest.json +6 -6
  66. package/web/.next/server/app/settings/page.js.nft.json +1 -1
  67. package/web/.next/server/app/settings/page_client-reference-manifest.js +1 -1
  68. package/web/.next/server/app/skills/page/server-reference-manifest.json +6 -6
  69. package/web/.next/server/app/skills/page_client-reference-manifest.js +1 -1
  70. package/web/.next/server/app/tools/page/server-reference-manifest.json +6 -6
  71. package/web/.next/server/app/tools/page_client-reference-manifest.js +1 -1
  72. package/web/.next/server/app/version/page/server-reference-manifest.json +1 -1
  73. package/web/.next/server/app/version/page_client-reference-manifest.js +1 -1
  74. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js +1 -1
  75. package/web/.next/server/chunks/403f9_next_dist_esm_build_templates_app-route_370c43b1.js.map +1 -1
  76. package/web/.next/server/chunks/[root-of-the-server]__a402b567._.js +1 -1
  77. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_fbb88113.js +1 -1
  78. package/web/.next/server/chunks/ssr/744ca_web__next-internal_server_app_(dashboard)_@drawer_adopt_page_actions_fbb88113.js.map +1 -1
  79. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js +1 -1
  80. package/web/.next/server/chunks/ssr/744ca_web_components_common_control-center-drawer_create-drawer-client_tsx_5e26fc0a._.js.map +1 -1
  81. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_fdfbf5cc.js +1 -1
  82. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_@drawer_repository_[repositoryId]_page_actions_fdfbf5cc.js.map +1 -1
  83. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_d8fa0b5f.js +1 -1
  84. package/web/.next/server/chunks/ssr/8ba4b_server_app_(dashboard)_repository_[repositoryId]_page_actions_d8fa0b5f.js.map +1 -1
  85. package/web/.next/server/chunks/ssr/[root-of-the-server]__02c84e6b._.js +1 -1
  86. package/web/.next/server/chunks/ssr/[root-of-the-server]__02c84e6b._.js.map +1 -1
  87. package/web/.next/server/chunks/ssr/[root-of-the-server]__06fef644._.js +1 -1
  88. package/web/.next/server/chunks/ssr/[root-of-the-server]__23b5ca2c._.js +1 -1
  89. package/web/.next/server/chunks/ssr/[root-of-the-server]__248b9fc3._.js +1 -1
  90. package/web/.next/server/chunks/ssr/[root-of-the-server]__248b9fc3._.js.map +1 -1
  91. package/web/.next/server/chunks/ssr/[root-of-the-server]__357de47c._.js +2 -2
  92. package/web/.next/server/chunks/ssr/[root-of-the-server]__357de47c._.js.map +1 -1
  93. package/web/.next/server/chunks/ssr/[root-of-the-server]__5edfc56b._.js +1 -1
  94. package/web/.next/server/chunks/ssr/[root-of-the-server]__67fe07fe._.js +1 -1
  95. package/web/.next/server/chunks/ssr/[root-of-the-server]__6b17a22d._.js +1 -1
  96. package/web/.next/server/chunks/ssr/[root-of-the-server]__6b17a22d._.js.map +1 -1
  97. package/web/.next/server/chunks/ssr/[root-of-the-server]__6bb00d90._.js +2 -2
  98. package/web/.next/server/chunks/ssr/[root-of-the-server]__6bb00d90._.js.map +1 -1
  99. package/web/.next/server/chunks/ssr/[root-of-the-server]__804c006d._.js +1 -1
  100. package/web/.next/server/chunks/ssr/[root-of-the-server]__804c006d._.js.map +1 -1
  101. package/web/.next/server/chunks/ssr/[root-of-the-server]__8c553503._.js +2 -2
  102. package/web/.next/server/chunks/ssr/[root-of-the-server]__a50a7e39._.js +2 -2
  103. package/web/.next/server/chunks/ssr/[root-of-the-server]__a50a7e39._.js.map +1 -1
  104. package/web/.next/server/chunks/ssr/[root-of-the-server]__dfc367f2._.js +1 -1
  105. package/web/.next/server/chunks/ssr/[root-of-the-server]__dfc367f2._.js.map +1 -1
  106. package/web/.next/server/chunks/ssr/[root-of-the-server]__e7f61cc6._.js +1 -1
  107. package/web/.next/server/chunks/ssr/[root-of-the-server]__e7f61cc6._.js.map +1 -1
  108. package/web/.next/server/chunks/ssr/[root-of-the-server]__fe48d2dc._.js +1 -1
  109. package/web/.next/server/chunks/ssr/[root-of-the-server]__fe48d2dc._.js.map +1 -1
  110. package/web/.next/server/chunks/ssr/{_1f0cbda2._.js → _1c816466._.js} +2 -2
  111. package/web/.next/server/chunks/ssr/{_1f0cbda2._.js.map → _1c816466._.js.map} +1 -1
  112. package/web/.next/server/chunks/ssr/_2f6f48b8._.js +1 -1
  113. package/web/.next/server/chunks/ssr/_2f6f48b8._.js.map +1 -1
  114. package/web/.next/server/chunks/ssr/_7dca1882._.js +1 -1
  115. package/web/.next/server/chunks/ssr/_7dca1882._.js.map +1 -1
  116. package/web/.next/server/chunks/ssr/{_794c45e6._.js → _9148536c._.js} +2 -2
  117. package/web/.next/server/chunks/ssr/{_794c45e6._.js.map → _9148536c._.js.map} +1 -1
  118. package/web/.next/server/chunks/ssr/_a187fd7e._.js +1 -1
  119. package/web/.next/server/chunks/ssr/_a187fd7e._.js.map +1 -1
  120. package/web/.next/server/chunks/ssr/_a9f57758._.js +1 -1
  121. package/web/.next/server/chunks/ssr/_a9f57758._.js.map +1 -1
  122. package/web/.next/server/chunks/ssr/_ed11dcd6._.js +1 -1
  123. package/web/.next/server/chunks/ssr/_f39a1adb._.js +1 -1
  124. package/web/.next/server/chunks/ssr/_f39a1adb._.js.map +1 -1
  125. package/web/.next/server/chunks/ssr/_f4d222d6._.js +1 -1
  126. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js +1 -1
  127. package/web/.next/server/chunks/ssr/b1a17_presentation_web_components_features_settings_settings-page-client_tsx_6ed9d5f8._.js.map +1 -1
  128. package/web/.next/server/chunks/ssr/src_presentation_web_7a3207ce._.js +3 -0
  129. package/web/.next/server/chunks/ssr/{src_presentation_web_1dac2051._.js.map → src_presentation_web_7a3207ce._.js.map} +1 -1
  130. package/web/.next/server/chunks/ssr/src_presentation_web_9db47db7._.js +2 -2
  131. package/web/.next/server/chunks/ssr/src_presentation_web_9db47db7._.js.map +1 -1
  132. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_f66cd328.js +1 -1
  133. package/web/.next/server/chunks/ssr/src_presentation_web__next-internal_server_app_(dashboard)_page_actions_f66cd328.js.map +1 -1
  134. package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js +1 -1
  135. package/web/.next/server/chunks/ssr/src_presentation_web_ca99d62d._.js.map +1 -1
  136. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js +1 -1
  137. package/web/.next/server/chunks/ssr/src_presentation_web_components_features_control-center_7ac3562e._.js.map +1 -1
  138. package/web/.next/server/chunks/ssr/src_presentation_web_ede4a227._.js +2 -2
  139. package/web/.next/server/chunks/ssr/src_presentation_web_ede4a227._.js.map +1 -1
  140. package/web/.next/server/pages/500.html +2 -2
  141. package/web/.next/server/server-reference-manifest.js +1 -1
  142. package/web/.next/server/server-reference-manifest.json +36 -36
  143. package/web/.next/static/chunks/{4cfbbf947d205588.js → 04fcd20604189431.js} +1 -1
  144. package/web/.next/static/chunks/{eb9841ec4d80af01.js → 178c96f1eb413acd.js} +1 -1
  145. package/web/.next/static/chunks/{1214f13d8edee410.js → 26684bff93405ba4.js} +1 -1
  146. package/web/.next/static/chunks/{05e9c71e5e4cf531.js → 665e1059fc1b9f86.js} +1 -1
  147. package/web/.next/static/chunks/{82f7582061933bd7.js → 88ba194498b7988e.js} +1 -1
  148. package/web/.next/static/chunks/{6300c246e812fd4a.js → 901bff9ddbf20ff7.js} +1 -1
  149. package/web/.next/static/chunks/{a668451a590d746f.js → 9993f7d644ea073a.js} +1 -1
  150. package/web/.next/static/chunks/{18370eb43da93775.js → 9f75c8a96628123c.js} +1 -1
  151. package/web/.next/static/chunks/a77d5b98ed2915a4.js +2 -0
  152. package/web/.next/static/chunks/{cd45aed9c46e1bf5.js → bfb2bd331b1a54cb.js} +1 -1
  153. package/web/.next/static/chunks/{b4c03f76a4c23504.js → c44e1cb45b6a9415.js} +1 -1
  154. package/web/.next/static/chunks/{d2d01dc183a6d94e.js → d3ae5ebc19ba26d5.js} +2 -2
  155. package/web/.next/static/chunks/{1040108af0ee2e3c.js → e175cd5aa9f39b0b.js} +1 -1
  156. package/web/.next/static/chunks/{4e10357c1c01f8a7.js → e5843241f10b1066.js} +1 -1
  157. package/web/.next/server/chunks/ssr/src_presentation_web_1dac2051._.js +0 -3
  158. package/web/.next/static/chunks/facfb85307fb64ca.js +0 -2
  159. /package/web/.next/static/{QmKY2sB2k_AgVUOVaOm0n → lNMAtn4LPKZbECcjiCzBZ}/_buildManifest.js +0 -0
  160. /package/web/.next/static/{QmKY2sB2k_AgVUOVaOm0n → lNMAtn4LPKZbECcjiCzBZ}/_clientMiddlewareManifest.json +0 -0
  161. /package/web/.next/static/{QmKY2sB2k_AgVUOVaOm0n → lNMAtn4LPKZbECcjiCzBZ}/_ssgManifest.js +0 -0
@@ -196,15 +196,12 @@ export interface IGitPrService {
196
196
  */
197
197
  createPr(cwd: string, prYamlPath: string): Promise<PrCreateResult>;
198
198
  /**
199
- * Merge a pull request immediately.
200
- *
201
- * The PR must be in a mergeable state (all required checks passed, reviews
202
- * approved). If not, this throws GitPrError with MERGE_FAILED code.
199
+ * Merge a pull request.
203
200
  *
204
201
  * @param cwd - Working directory path
205
202
  * @param prNumber - PR number to merge
206
203
  * @param strategy - Merge strategy (squash, merge, rebase)
207
- * @throws GitPrError with MERGE_FAILED code if the PR cannot be merged
204
+ * @throws GitPrError with MERGE_FAILED code
208
205
  */
209
206
  mergePr(cwd: string, prNumber: number, strategy?: MergeStrategy): Promise<void>;
210
207
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"git-pr-service.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/services/git-pr-service.interface.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"git-pr-service.interface.d.ts","sourceRoot":"","sources":["../../../../../../../../packages/core/src/application/ports/output/services/git-pr-service.interface.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"approve-agent-run.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/application/use-cases/agents/approve-agent-run.use-case.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6DAA6D,CAAC;AACvG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAC;AAChH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gEAAgE,CAAC;AAC7G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iEAAiE,CAAC;AAE1G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAI9E,qBACa,sBAAsB;IAG/B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IAEnC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAElC,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBANrB,kBAAkB,EAAE,mBAAmB,EAEvC,cAAc,EAAE,2BAA2B,EAE3C,iBAAiB,EAAE,kBAAkB,EAErC,qBAAqB,EAAE,sBAAsB;IAG1D,OAAO,CACX,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CAqGlD"}
1
+ {"version":3,"file":"approve-agent-run.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/application/use-cases/agents/approve-agent-run.use-case.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6DAA6D,CAAC;AACvG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAC;AAChH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gEAAgE,CAAC;AAC7G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iEAAiE,CAAC;AAE1G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AAI9E,qBACa,sBAAsB;IAG/B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IAEnC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAElC,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBANrB,kBAAkB,EAAE,mBAAmB,EAEvC,cAAc,EAAE,2BAA2B,EAE3C,iBAAiB,EAAE,kBAAkB,EAErC,qBAAqB,EAAE,sBAAsB;IAG1D,OAAO,CACX,EAAE,EAAE,MAAM,EACV,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC;QAAE,QAAQ,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC;CAgGlD"}
@@ -41,15 +41,10 @@ let ApproveAgentRunUseCase = class ApproveAgentRunUseCase {
41
41
  if (!run) {
42
42
  return { approved: false, reason: 'Agent run not found' };
43
43
  }
44
- const APPROVABLE_STATUSES = new Set([
45
- AgentRunStatus.waitingApproval,
46
- AgentRunStatus.failed,
47
- AgentRunStatus.interrupted,
48
- ]);
49
- if (!APPROVABLE_STATUSES.has(run.status)) {
44
+ if (run.status !== AgentRunStatus.waitingApproval) {
50
45
  return {
51
46
  approved: false,
52
- reason: `Agent run is not in an approvable state (status: ${run.status})`,
47
+ reason: `Agent run is not waiting for approval (status: ${run.status})`,
53
48
  };
54
49
  }
55
50
  // Look up the feature to get specPath
@@ -1 +1 @@
1
- {"version":3,"file":"reject-agent-run.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/application/use-cases/agents/reject-agent-run.use-case.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6DAA6D,CAAC;AACvG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAC;AAChH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gEAAgE,CAAC;AAC7G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iEAAiE,CAAC;AAU1G,qBACa,qBAAqB;IAG9B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IAEnC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAElC,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBANrB,kBAAkB,EAAE,mBAAmB,EAEvC,cAAc,EAAE,2BAA2B,EAE3C,iBAAiB,EAAE,kBAAkB,EAErC,qBAAqB,EAAE,sBAAsB;IAG1D,OAAO,CACX,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,EAAE,GACrB,OAAO,CAAC;QACT,QAAQ,EAAE,OAAO,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC5B,CAAC;CA2HH"}
1
+ {"version":3,"file":"reject-agent-run.use-case.d.ts","sourceRoot":"","sources":["../../../../../../../packages/core/src/application/use-cases/agents/reject-agent-run.use-case.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAMH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,6DAA6D,CAAC;AACvG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,8DAA8D,CAAC;AAChH,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,gEAAgE,CAAC;AAC7G,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iEAAiE,CAAC;AAU1G,qBACa,qBAAqB;IAG9B,OAAO,CAAC,QAAQ,CAAC,kBAAkB;IAEnC,OAAO,CAAC,QAAQ,CAAC,cAAc;IAE/B,OAAO,CAAC,QAAQ,CAAC,iBAAiB;IAElC,OAAO,CAAC,QAAQ,CAAC,qBAAqB;gBANrB,kBAAkB,EAAE,mBAAmB,EAEvC,cAAc,EAAE,2BAA2B,EAE3C,iBAAiB,EAAE,kBAAkB,EAErC,qBAAqB,EAAE,sBAAsB;IAG1D,OAAO,CACX,EAAE,EAAE,MAAM,EACV,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,EAAE,GACrB,OAAO,CAAC;QACT,QAAQ,EAAE,OAAO,CAAC;QAClB,MAAM,EAAE,MAAM,CAAC;QACf,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;KAC5B,CAAC;CAsHH"}
@@ -41,15 +41,10 @@ let RejectAgentRunUseCase = class RejectAgentRunUseCase {
41
41
  if (!run) {
42
42
  return { rejected: false, reason: 'Agent run not found' };
43
43
  }
44
- const REJECTABLE_STATUSES = new Set([
45
- AgentRunStatus.waitingApproval,
46
- AgentRunStatus.failed,
47
- AgentRunStatus.interrupted,
48
- ]);
49
- if (!REJECTABLE_STATUSES.has(run.status)) {
44
+ if (run.status !== AgentRunStatus.waitingApproval) {
50
45
  return {
51
46
  rejected: false,
52
- reason: `Agent run is not in a rejectable state (status: ${run.status})`,
47
+ reason: `Agent run is not waiting for approval (status: ${run.status})`,
53
48
  };
54
49
  }
55
50
  // Validate non-empty feedback
@@ -1 +1 @@
1
- {"version":3,"file":"merge.node.d.ts","sourceRoot":"","sources":["../../../../../../../../../../packages/core/src/infrastructure/services/agents/feature-agent/nodes/merge/merge.node.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+DAA+D,CAAC;AACpG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yEAAyE,CAAC;AAClH,OAAO,KAAK,EACV,WAAW,EACX,aAAa,EACd,MAAM,iEAAiE,CAAC;AAmBzE,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,uEAAuE,CAAC;AAE3H,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,cAAc,CAAC;IACzB,cAAc,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IAC1E,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7C,gBAAgB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACnD,iBAAiB,EAAE,IAAI,CAAC,kBAAkB,EAAE,UAAU,GAAG,QAAQ,CAAC,CAAC;IACnE;;OAEG;IACH,gBAAgB,EAAE,CAChB,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,SAAS,CAAC,EAAE,OAAO,KAChB,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB;;;OAGG;IACH,WAAW,EAAE,CACX,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,eAAe,CAAC,EAAE,MAAM,KACrB,OAAO,CAAC,OAAO,CAAC,CAAC;IACtB;;OAEG;IACH,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACxD,YAAY,EAAE,aAAa,CAAC;IAC5B,6BAA6B,EAAE,IAAI,CAAC,6BAA6B,EAAE,SAAS,CAAC,CAAC;CAC/E;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,aAAa,IAGnC,OAAO,iBAAiB,KAAG,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAgU7E"}
1
+ {"version":3,"file":"merge.node.d.ts","sourceRoot":"","sources":["../../../../../../../../../../packages/core/src/infrastructure/services/agents/feature-agent/nodes/merge/merge.node.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAGH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+DAA+D,CAAC;AACpG,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACxD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yEAAyE,CAAC;AAClH,OAAO,KAAK,EACV,WAAW,EACX,aAAa,EACd,MAAM,iEAAiE,CAAC;AAmBzE,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,uEAAuE,CAAC;AAE3H,MAAM,WAAW,aAAa;IAC5B,QAAQ,EAAE,cAAc,CAAC;IACzB,cAAc,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,WAAW,CAAC,CAAC;IAC1E,SAAS,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IAC7C,gBAAgB,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACnD,iBAAiB,EAAE,IAAI,CAAC,kBAAkB,EAAE,UAAU,GAAG,QAAQ,CAAC,CAAC;IACnE;;OAEG;IACH,gBAAgB,EAAE,CAChB,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,EACrB,SAAS,CAAC,EAAE,OAAO,KAChB,OAAO,CAAC,IAAI,CAAC,CAAC;IACnB;;;OAGG;IACH,WAAW,EAAE,CACX,GAAG,EAAE,MAAM,EACX,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,eAAe,CAAC,EAAE,MAAM,KACrB,OAAO,CAAC,OAAO,CAAC,CAAC;IACtB;;OAEG;IACH,QAAQ,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACxD,YAAY,EAAE,aAAa,CAAC;IAC5B,6BAA6B,EAAE,IAAI,CAAC,6BAA6B,EAAE,SAAS,CAAC,CAAC;CAC/E;AAED;;;;;GAKG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,aAAa,IAGnC,OAAO,iBAAiB,KAAG,OAAO,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CA+T7E"}
@@ -228,7 +228,6 @@ export function createMergeNode(deps) {
228
228
  if (state.approvalGates?.allowMerge || userApprovedMerge) {
229
229
  if (prUrl && prNumber) {
230
230
  // PR exists: merge via GitHub API directly — no agent or local merge needed.
231
- // This will fail if the PR is not in a mergeable state (checks pending, reviews needed).
232
231
  log.info(`Merging PR #${prNumber} via GitHub API (squash)`);
233
232
  await deps.gitPrService.mergePr(cwd, prNumber, 'squash');
234
233
  messages.push(`[merge] PR #${prNumber} merged via squash`);
@@ -1 +1 @@
1
- {"version":3,"file":"merge-prompts.d.ts","sourceRoot":"","sources":["../../../../../../../../../../packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/merge-prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAgB,KAAK,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAE3E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAwCxD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAU9F;AAuCD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,QAAQ,EAAE,EACpB,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,GACf,MAAM,CAUR;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,MAAM,GACf,MAAM,CAqER;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GACb,MAAM,CA0BR"}
1
+ {"version":3,"file":"merge-prompts.d.ts","sourceRoot":"","sources":["../../../../../../../../../../packages/core/src/infrastructure/services/agents/feature-agent/nodes/prompts/merge-prompts.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAgB,KAAK,QAAQ,EAAE,MAAM,8BAA8B,CAAC;AAE3E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AAwCxD;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,SAAS,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAU9F;AAuCD;;;;;GAKG;AACH,wBAAgB,qBAAqB,CACnC,QAAQ,EAAE,QAAQ,EAAE,EACpB,MAAM,CAAC,EAAE,MAAM,EACf,OAAO,CAAC,EAAE,MAAM,GACf,MAAM,CAUR;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,KAAK,EAAE,iBAAiB,EACxB,MAAM,EAAE,MAAM,EACd,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,MAAM,GACf,MAAM,CAmER;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,qBAAqB,CACnC,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,GACb,MAAM,CA0BR"}
@@ -10,7 +10,7 @@
10
10
  */
11
11
  import yaml from 'js-yaml';
12
12
  import { EvidenceType } from '../../../../../../domain/generated/output.js';
13
- import { readSpecFile, buildResumeContext } from '../node-helpers.js';
13
+ import { readSpecFile } from '../node-helpers.js';
14
14
  /**
15
15
  * Extract merge-phase rejection feedback from spec.yaml.
16
16
  */
@@ -151,8 +151,7 @@ export function buildCommitPushPrPrompt(state, branch, baseBranch, repoUrl) {
151
151
  - Write a descriptive PR title using conventional commit format
152
152
  - Write a rich PR body that summarizes the changes using the spec context below`);
153
153
  }
154
- const resumeContext = buildResumeContext(state.resumeReason);
155
- return `${resumeContext}You are performing git operations in a feature worktree.
154
+ return `You are performing git operations in a feature worktree.
156
155
  ${rejectionSection}
157
156
  ## Feature Specification Context
158
157
 
@@ -186,7 +186,7 @@ let GitPrService = class GitPrService {
186
186
  }
187
187
  async mergePr(cwd, prNumber, strategy = 'squash') {
188
188
  try {
189
- await this.execFile('gh', ['pr', 'merge', String(prNumber), `--${strategy}`], {
189
+ await this.execFile('gh', ['pr', 'merge', String(prNumber), `--${strategy}`, '--auto'], {
190
190
  cwd,
191
191
  });
192
192
  }
@@ -1 +1 @@
1
- {"version":3,"file":"get-graph-data.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/web/app/(dashboard)/get-graph-data.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAE5E,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAI1C,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAqED,wBAAsB,YAAY,IAAI,OAAO,CAAC;IAAE,KAAK,EAAE,cAAc,EAAE,CAAC;IAAC,KAAK,EAAE,IAAI,EAAE,CAAA;CAAE,CAAC,CAyDxF"}
1
+ {"version":3,"file":"get-graph-data.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/web/app/(dashboard)/get-graph-data.ts"],"names":[],"mappings":"AAWA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uCAAuC,CAAC;AAE5E,OAAO,KAAK,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAI1C,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAoDD,wBAAsB,YAAY,IAAI,OAAO,CAAC;IAAE,KAAK,EAAE,cAAc,EAAE,CAAC;IAAC,KAAK,EAAE,IAAI,EAAE,CAAA;CAAE,CAAC,CAyDxF"}
@@ -5,57 +5,52 @@ import { getSettings } from '../../../../../packages/core/src/infrastructure/ser
5
5
  import { layoutWithDagre, CANVAS_LAYOUT_DEFAULTS } from '../../lib/layout-with-dagre.js';
6
6
  import { buildGraphNodes } from '../build-graph-nodes.js';
7
7
  const execFileAsync = promisify(execFileCb);
8
- // Cache git info per repo path — git state rarely changes between polls
9
- const gitInfoCache = new Map();
10
- const GIT_INFO_TTL_MS = 30_000; // 30 seconds
11
- /**
12
- * Fetch branch, last commit info, and behind-count in a single git process.
13
- *
14
- * Results are cached for 5s so repeated polls don't spawn child processes.
15
- */
8
+ async function gitCommand(cwd, args) {
9
+ try {
10
+ const { stdout } = await execFileAsync('git', args, { cwd });
11
+ return stdout.trim();
12
+ }
13
+ catch {
14
+ return null;
15
+ }
16
+ }
16
17
  async function fetchRepoGitInfo(repo) {
17
- const cached = gitInfoCache.get(repo.path);
18
- if (cached && Date.now() < cached.expiresAt)
19
- return cached.info;
20
- const FIELD_SEP = '\x1f'; // ASCII unit separator — won't appear in commit messages
21
18
  try {
22
- // Single spawn: branch + commit subject + author
23
- const { stdout } = await execFileAsync('git', ['-c', 'log.showSignature=false', 'log', '-1', `--format=%D${FIELD_SEP}%s${FIELD_SEP}%an`], { cwd: repo.path });
24
- const [refsRaw, commitMessage, committer] = stdout.trim().split(FIELD_SEP);
25
- // Extract current branch from decoration string (e.g. "HEAD -> main, origin/main")
26
- const branchMatch = refsRaw?.match(/HEAD -> ([^,]+)/);
27
- const currentBranch = branchMatch?.[1]?.trim() ?? null;
19
+ const [currentBranch, commitMessage, committer] = await Promise.all([
20
+ gitCommand(repo.path, ['symbolic-ref', '--short', 'HEAD']),
21
+ gitCommand(repo.path, ['log', '-1', '--format=%s']),
22
+ gitCommand(repo.path, ['log', '-1', '--format=%an']),
23
+ ]);
28
24
  if (!currentBranch)
29
25
  return null;
30
- // Determine behind-count with one more spawn only when needed
26
+ // Try to determine the default branch to compute behind count
31
27
  let behindCount = null;
32
- try {
33
- const { stdout: defaultRef } = await execFileAsync('git', ['symbolic-ref', '--short', 'refs/remotes/origin/HEAD'], { cwd: repo.path });
34
- const defaultBranch = defaultRef.trim().replace('origin/', '');
35
- if (currentBranch === defaultBranch) {
36
- behindCount = 0;
37
- }
38
- else {
39
- const { stdout: countOut } = await execFileAsync('git', ['rev-list', '--count', `${currentBranch}..origin/${defaultBranch}`], { cwd: repo.path });
40
- behindCount = parseInt(countOut.trim(), 10);
41
- if (isNaN(behindCount))
42
- behindCount = null;
43
- }
28
+ const defaultBranch = await gitCommand(repo.path, [
29
+ 'symbolic-ref',
30
+ '--short',
31
+ 'refs/remotes/origin/HEAD',
32
+ ]).then((ref) => ref?.replace('origin/', '') ?? null);
33
+ if (defaultBranch && currentBranch !== defaultBranch) {
34
+ const behind = await gitCommand(repo.path, [
35
+ 'rev-list',
36
+ '--count',
37
+ `${currentBranch}..origin/${defaultBranch}`,
38
+ ]);
39
+ behindCount = behind !== null ? parseInt(behind, 10) : null;
40
+ if (isNaN(behindCount))
41
+ behindCount = null;
44
42
  }
45
- catch {
46
- // No remote HEAD or rev-list failed — leave as null
43
+ else if (!defaultBranch || currentBranch === defaultBranch) {
44
+ behindCount = 0;
47
45
  }
48
- const info = {
46
+ return {
49
47
  branch: currentBranch,
50
48
  commitMessage: commitMessage ?? 'unknown',
51
49
  committer: committer ?? 'unknown',
52
50
  behindCount,
53
51
  };
54
- gitInfoCache.set(repo.path, { info, expiresAt: Date.now() + GIT_INFO_TTL_MS });
55
- return info;
56
52
  }
57
53
  catch {
58
- gitInfoCache.set(repo.path, { info: null, expiresAt: Date.now() + GIT_INFO_TTL_MS });
59
54
  return null;
60
55
  }
61
56
  }
@@ -1 +1 @@
1
- {"version":3,"file":"approve-feature.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/web/app/actions/approve-feature.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAE/E,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAiChD"}
1
+ {"version":3,"file":"approve-feature.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/web/app/actions/approve-feature.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,sCAAsC,CAAC;AAK/E,wBAAsB,cAAc,CAClC,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,OAAO,CAAC;IAAE,QAAQ,EAAE,OAAO,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC,CAsChD"}
@@ -1,5 +1,7 @@
1
1
  'use server';
2
2
  import { resolve } from '../../lib/server-container.js';
3
+ import { AgentRunStatus } from '../../../../../packages/core/src/domain/generated/output.js';
4
+ const ERROR_STATUSES = new Set([AgentRunStatus.failed, AgentRunStatus.interrupted]);
3
5
  export async function approveFeature(featureId, payload) {
4
6
  if (!featureId.trim()) {
5
7
  return { approved: false, error: 'Feature id is required' };
@@ -13,10 +15,13 @@ export async function approveFeature(featureId, payload) {
13
15
  if (!feature.agentRunId) {
14
16
  return { approved: false, error: 'Feature has no agent run' };
15
17
  }
16
- // Always use ApproveAgentRunUseCase — it handles waitingApproval, failed,
17
- // and interrupted statuses. This ensures approval is propagated via
18
- // Command({update: {_approvalAction: 'approved'}}) so the graph node
19
- // receives it on resume.
18
+ const runRepo = resolve('IAgentRunRepository');
19
+ const run = await runRepo.findById(feature.agentRunId);
20
+ if (run && ERROR_STATUSES.has(run.status)) {
21
+ const resumeUseCase = resolve('ResumeFeatureUseCase');
22
+ await resumeUseCase.execute(featureId, { promptPrefix: 'User approved. Please continue.' });
23
+ return { approved: true };
24
+ }
20
25
  const approveUseCase = resolve('ApproveAgentRunUseCase');
21
26
  const result = await approveUseCase.execute(feature.agentRunId, payload);
22
27
  if (!result.approved) {
@@ -1 +1 @@
1
- {"version":3,"file":"reject-feature.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/web/app/actions/reject-feature.ts"],"names":[],"mappings":"AAMA,wBAAsB,aAAa,CACjC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,EAAE,GACrB,OAAO,CAAC;IACT,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC,CAyCD"}
1
+ {"version":3,"file":"reject-feature.d.ts","sourceRoot":"","sources":["../../../../../../src/presentation/web/app/actions/reject-feature.ts"],"names":[],"mappings":"AAWA,wBAAsB,aAAa,CACjC,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,WAAW,CAAC,EAAE,MAAM,EAAE,GACrB,OAAO,CAAC;IACT,QAAQ,EAAE,OAAO,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC,CA8CD"}
@@ -1,5 +1,7 @@
1
1
  'use server';
2
2
  import { resolve } from '../../lib/server-container.js';
3
+ import { AgentRunStatus } from '../../../../../packages/core/src/domain/generated/output.js';
4
+ const ERROR_STATUSES = new Set([AgentRunStatus.failed, AgentRunStatus.interrupted]);
3
5
  export async function rejectFeature(featureId, feedback, attachments) {
4
6
  if (!featureId.trim()) {
5
7
  return { rejected: false, error: 'Feature id is required' };
@@ -16,10 +18,13 @@ export async function rejectFeature(featureId, feedback, attachments) {
16
18
  if (!feature.agentRunId) {
17
19
  return { rejected: false, error: 'Feature has no agent run' };
18
20
  }
19
- // Always use RejectAgentRunUseCase — it handles waitingApproval, failed,
20
- // and interrupted statuses. This ensures rejection feedback is propagated
21
- // via Command({update: {_approvalAction, _rejectionFeedback}}) so the
22
- // graph node receives the feedback on resume.
21
+ const runRepo = resolve('IAgentRunRepository');
22
+ const run = await runRepo.findById(feature.agentRunId);
23
+ if (run && ERROR_STATUSES.has(run.status)) {
24
+ const resumeUseCase = resolve('ResumeFeatureUseCase');
25
+ await resumeUseCase.execute(featureId, { promptPrefix: feedback });
26
+ return { rejected: true, iteration: 1 };
27
+ }
23
28
  const rejectUseCase = resolve('RejectAgentRunUseCase');
24
29
  const result = await rejectUseCase.execute(feature.agentRunId, feedback, attachments);
25
30
  if (!result.rejected) {