@urateam/core 0.1.54 → 0.1.56

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 (225) hide show
  1. package/dist/__tests__/auth-monitor.test.js +119 -20
  2. package/dist/__tests__/auth-monitor.test.js.map +1 -1
  3. package/dist/__tests__/bec-238-repro.test.d.ts +2 -0
  4. package/dist/__tests__/bec-238-repro.test.d.ts.map +1 -0
  5. package/dist/__tests__/bec-238-repro.test.js +116 -0
  6. package/dist/__tests__/bec-238-repro.test.js.map +1 -0
  7. package/dist/__tests__/bec146-repro.test.d.ts +2 -0
  8. package/dist/__tests__/bec146-repro.test.d.ts.map +1 -0
  9. package/dist/__tests__/bec146-repro.test.js +153 -0
  10. package/dist/__tests__/bec146-repro.test.js.map +1 -0
  11. package/dist/__tests__/db-migrations.test.js +7 -3
  12. package/dist/__tests__/db-migrations.test.js.map +1 -1
  13. package/dist/__tests__/decision-artifact-schema.test.d.ts +2 -0
  14. package/dist/__tests__/decision-artifact-schema.test.d.ts.map +1 -0
  15. package/dist/__tests__/decision-artifact-schema.test.js +45 -0
  16. package/dist/__tests__/decision-artifact-schema.test.js.map +1 -0
  17. package/dist/__tests__/decisions-parser.test.d.ts +2 -0
  18. package/dist/__tests__/decisions-parser.test.d.ts.map +1 -0
  19. package/dist/__tests__/decisions-parser.test.js +59 -0
  20. package/dist/__tests__/decisions-parser.test.js.map +1 -0
  21. package/dist/__tests__/decisions-store.test.d.ts +2 -0
  22. package/dist/__tests__/decisions-store.test.d.ts.map +1 -0
  23. package/dist/__tests__/decisions-store.test.js +68 -0
  24. package/dist/__tests__/decisions-store.test.js.map +1 -0
  25. package/dist/__tests__/decisions-table-migration.test.d.ts +2 -0
  26. package/dist/__tests__/decisions-table-migration.test.d.ts.map +1 -0
  27. package/dist/__tests__/decisions-table-migration.test.js +56 -0
  28. package/dist/__tests__/decisions-table-migration.test.js.map +1 -0
  29. package/dist/__tests__/execute-stage-session-opts.test.js +1 -0
  30. package/dist/__tests__/execute-stage-session-opts.test.js.map +1 -1
  31. package/dist/__tests__/executor-issue-id.test.js +1 -0
  32. package/dist/__tests__/executor-issue-id.test.js.map +1 -1
  33. package/dist/__tests__/extract-handoff-decisions.test.d.ts +2 -0
  34. package/dist/__tests__/extract-handoff-decisions.test.d.ts.map +1 -0
  35. package/dist/__tests__/extract-handoff-decisions.test.js +26 -0
  36. package/dist/__tests__/extract-handoff-decisions.test.js.map +1 -0
  37. package/dist/__tests__/force-push-agent-branches.test.js +38 -15
  38. package/dist/__tests__/force-push-agent-branches.test.js.map +1 -1
  39. package/dist/__tests__/github-webhook.test.js +117 -0
  40. package/dist/__tests__/github-webhook.test.js.map +1 -1
  41. package/dist/__tests__/implement-template-decisions.test.d.ts +2 -0
  42. package/dist/__tests__/implement-template-decisions.test.d.ts.map +1 -0
  43. package/dist/__tests__/implement-template-decisions.test.js +41 -0
  44. package/dist/__tests__/implement-template-decisions.test.js.map +1 -0
  45. package/dist/__tests__/migrator.test.js +137 -39
  46. package/dist/__tests__/migrator.test.js.map +1 -1
  47. package/dist/__tests__/pipeline-runner.test.js +118 -0
  48. package/dist/__tests__/pipeline-runner.test.js.map +1 -1
  49. package/dist/__tests__/pm-conflict.test.js +145 -5
  50. package/dist/__tests__/pm-conflict.test.js.map +1 -1
  51. package/dist/__tests__/preflight-claude-auth.test.js +3 -2
  52. package/dist/__tests__/preflight-claude-auth.test.js.map +1 -1
  53. package/dist/__tests__/ralph-review-fix-regression.test.js +1 -0
  54. package/dist/__tests__/ralph-review-fix-regression.test.js.map +1 -1
  55. package/dist/__tests__/ralph.test.js +1 -0
  56. package/dist/__tests__/ralph.test.js.map +1 -1
  57. package/dist/__tests__/release-manager-qarun-query.test.d.ts +2 -0
  58. package/dist/__tests__/release-manager-qarun-query.test.d.ts.map +1 -0
  59. package/dist/__tests__/release-manager-qarun-query.test.js +233 -0
  60. package/dist/__tests__/release-manager-qarun-query.test.js.map +1 -0
  61. package/dist/__tests__/release-manager-scheduler.test.js +62 -0
  62. package/dist/__tests__/release-manager-scheduler.test.js.map +1 -1
  63. package/dist/__tests__/session-lazy-creation.test.js +1 -0
  64. package/dist/__tests__/session-lazy-creation.test.js.map +1 -1
  65. package/dist/__tests__/session-resolver.test.d.ts +13 -0
  66. package/dist/__tests__/session-resolver.test.d.ts.map +1 -0
  67. package/dist/__tests__/session-resolver.test.js +152 -0
  68. package/dist/__tests__/session-resolver.test.js.map +1 -0
  69. package/dist/__tests__/session-resume-fallback.test.js +1 -0
  70. package/dist/__tests__/session-resume-fallback.test.js.map +1 -1
  71. package/dist/__tests__/stage-models.test.js +1 -0
  72. package/dist/__tests__/stage-models.test.js.map +1 -1
  73. package/dist/__tests__/surgical-review-fix-prompt.test.d.ts +2 -0
  74. package/dist/__tests__/surgical-review-fix-prompt.test.d.ts.map +1 -0
  75. package/dist/__tests__/surgical-review-fix-prompt.test.js +71 -0
  76. package/dist/__tests__/surgical-review-fix-prompt.test.js.map +1 -0
  77. package/dist/__tests__/surgical-review-fix-runner.test.d.ts +2 -0
  78. package/dist/__tests__/surgical-review-fix-runner.test.d.ts.map +1 -0
  79. package/dist/__tests__/surgical-review-fix-runner.test.js +171 -0
  80. package/dist/__tests__/surgical-review-fix-runner.test.js.map +1 -0
  81. package/dist/__tests__/validate-run-mode.test.js +1 -0
  82. package/dist/__tests__/validate-run-mode.test.js.map +1 -1
  83. package/dist/__tests__/validate.test.js +1 -0
  84. package/dist/__tests__/validate.test.js.map +1 -1
  85. package/dist/audit/auth-error-messages.d.ts +6 -0
  86. package/dist/audit/auth-error-messages.d.ts.map +1 -0
  87. package/dist/audit/auth-error-messages.js +18 -0
  88. package/dist/audit/auth-error-messages.js.map +1 -0
  89. package/dist/audit/events.d.ts +22 -4
  90. package/dist/audit/events.d.ts.map +1 -1
  91. package/dist/audit/events.js +34 -5
  92. package/dist/audit/events.js.map +1 -1
  93. package/dist/audit/index.d.ts +1 -0
  94. package/dist/audit/index.d.ts.map +1 -1
  95. package/dist/audit/index.js +1 -0
  96. package/dist/audit/index.js.map +1 -1
  97. package/dist/db/client.d.ts.map +1 -1
  98. package/dist/db/client.js +10 -0
  99. package/dist/db/client.js.map +1 -1
  100. package/dist/db/decisions-store.d.ts +25 -0
  101. package/dist/db/decisions-store.d.ts.map +1 -0
  102. package/dist/db/decisions-store.js +56 -0
  103. package/dist/db/decisions-store.js.map +1 -0
  104. package/dist/db/index.d.ts +1 -1
  105. package/dist/db/index.d.ts.map +1 -1
  106. package/dist/db/index.js +1 -1
  107. package/dist/db/index.js.map +1 -1
  108. package/dist/db/migrations/postgres/008_sso.sql +9 -20
  109. package/dist/db/migrations/postgres/009_review_model_runs.sql +9 -18
  110. package/dist/db/migrations/postgres/009_sso.sql +20 -0
  111. package/dist/db/migrations/postgres/010_release_manager.sql +9 -38
  112. package/dist/db/migrations/postgres/010_review_model_runs.sql +18 -0
  113. package/dist/db/migrations/postgres/011_qa_run_columns.sql +9 -8
  114. package/dist/db/migrations/postgres/011_release_manager.sql +38 -0
  115. package/dist/db/migrations/postgres/012_qa_gap_issues.sql +9 -18
  116. package/dist/db/migrations/postgres/012_qa_run_columns.sql +8 -0
  117. package/dist/db/migrations/postgres/013_qa_gap_issues.sql +18 -0
  118. package/dist/db/migrations/postgres/013_stage_runs_cache_tokens.sql +11 -6
  119. package/dist/db/migrations/postgres/014_missing_indexes.sql +9 -28
  120. package/dist/db/migrations/postgres/014_stage_runs_cache_tokens.sql +6 -0
  121. package/dist/db/migrations/postgres/015_missing_indexes.sql +28 -0
  122. package/dist/db/migrations/postgres/015_triage_results.sql +9 -11
  123. package/dist/db/migrations/postgres/016_triage_results.sql +11 -0
  124. package/dist/db/migrations/sqlite/007_sso.sql +9 -20
  125. package/dist/db/migrations/sqlite/008_review_model_runs.sql +9 -18
  126. package/dist/db/migrations/sqlite/008_sso.sql +20 -0
  127. package/dist/db/migrations/sqlite/009_release_manager.sql +9 -43
  128. package/dist/db/migrations/sqlite/009_review_model_runs.sql +18 -0
  129. package/dist/db/migrations/sqlite/010_qa_run_columns.sql +9 -9
  130. package/dist/db/migrations/sqlite/010_release_manager.sql +43 -0
  131. package/dist/db/migrations/sqlite/011_qa_gap_issues.sql +9 -22
  132. package/dist/db/migrations/sqlite/011_qa_run_columns.sql +9 -0
  133. package/dist/db/migrations/sqlite/012_qa_gap_issues.sql +22 -0
  134. package/dist/db/migrations/sqlite/012_stage_runs_cache_tokens.sql +11 -6
  135. package/dist/db/migrations/sqlite/013_missing_indexes.sql +10 -28
  136. package/dist/db/migrations/sqlite/013_stage_runs_cache_tokens.sql +6 -0
  137. package/dist/db/migrations/sqlite/013_triage_results.sql +10 -11
  138. package/dist/db/migrations/sqlite/014_missing_indexes.sql +28 -0
  139. package/dist/db/migrations/sqlite/015_triage_results.sql +11 -0
  140. package/dist/db/migrator.d.ts +45 -2
  141. package/dist/db/migrator.d.ts.map +1 -1
  142. package/dist/db/migrator.js +113 -29
  143. package/dist/db/migrator.js.map +1 -1
  144. package/dist/db/schema.d.ts +125 -0
  145. package/dist/db/schema.d.ts.map +1 -1
  146. package/dist/db/schema.js +13 -0
  147. package/dist/db/schema.js.map +1 -1
  148. package/dist/executor/auth-monitor.d.ts.map +1 -1
  149. package/dist/executor/auth-monitor.js +39 -30
  150. package/dist/executor/auth-monitor.js.map +1 -1
  151. package/dist/executor/deep-review.d.ts.map +1 -1
  152. package/dist/executor/deep-review.js +14 -79
  153. package/dist/executor/deep-review.js.map +1 -1
  154. package/dist/executor/executor.d.ts +21 -0
  155. package/dist/executor/executor.d.ts.map +1 -1
  156. package/dist/executor/executor.js +41 -90
  157. package/dist/executor/executor.js.map +1 -1
  158. package/dist/executor/extract-handoff.d.ts +9 -0
  159. package/dist/executor/extract-handoff.d.ts.map +1 -1
  160. package/dist/executor/extract-handoff.js +48 -0
  161. package/dist/executor/extract-handoff.js.map +1 -1
  162. package/dist/executor/handoff.d.ts +10 -1
  163. package/dist/executor/handoff.d.ts.map +1 -1
  164. package/dist/executor/handoff.js +7 -1
  165. package/dist/executor/handoff.js.map +1 -1
  166. package/dist/executor/index.d.ts +1 -0
  167. package/dist/executor/index.d.ts.map +1 -1
  168. package/dist/executor/index.js +1 -0
  169. package/dist/executor/index.js.map +1 -1
  170. package/dist/executor/prompt/templates.d.ts +12 -1
  171. package/dist/executor/prompt/templates.d.ts.map +1 -1
  172. package/dist/executor/prompt/templates.js +64 -0
  173. package/dist/executor/prompt/templates.js.map +1 -1
  174. package/dist/executor/session-resolver.d.ts +51 -0
  175. package/dist/executor/session-resolver.d.ts.map +1 -0
  176. package/dist/executor/session-resolver.js +83 -0
  177. package/dist/executor/session-resolver.js.map +1 -0
  178. package/dist/index.d.ts +1 -1
  179. package/dist/index.d.ts.map +1 -1
  180. package/dist/index.js +1 -1
  181. package/dist/index.js.map +1 -1
  182. package/dist/notifier/composite.js +1 -1
  183. package/dist/notifier/composite.js.map +1 -1
  184. package/dist/notifier/linear.d.ts +1 -1
  185. package/dist/notifier/linear.d.ts.map +1 -1
  186. package/dist/notifier/linear.js +49 -9
  187. package/dist/notifier/linear.js.map +1 -1
  188. package/dist/pipeline/run-surgical-review-fix.d.ts +29 -0
  189. package/dist/pipeline/run-surgical-review-fix.d.ts.map +1 -0
  190. package/dist/pipeline/run-surgical-review-fix.js +48 -0
  191. package/dist/pipeline/run-surgical-review-fix.js.map +1 -0
  192. package/dist/pipeline/runner.d.ts.map +1 -1
  193. package/dist/pipeline/runner.js +132 -36
  194. package/dist/pipeline/runner.js.map +1 -1
  195. package/dist/pm/conflict.d.ts +2 -0
  196. package/dist/pm/conflict.d.ts.map +1 -1
  197. package/dist/pm/conflict.js +59 -9
  198. package/dist/pm/conflict.js.map +1 -1
  199. package/dist/pm/scheduler.d.ts +2 -0
  200. package/dist/pm/scheduler.d.ts.map +1 -1
  201. package/dist/pm/scheduler.js +51 -43
  202. package/dist/pm/scheduler.js.map +1 -1
  203. package/dist/pm/slack.d.ts +11 -0
  204. package/dist/pm/slack.d.ts.map +1 -1
  205. package/dist/pm/slack.js +48 -5
  206. package/dist/pm/slack.js.map +1 -1
  207. package/dist/release-manager/release-helpers.d.ts +19 -2
  208. package/dist/release-manager/release-helpers.d.ts.map +1 -1
  209. package/dist/release-manager/release-helpers.js +22 -3
  210. package/dist/release-manager/release-helpers.js.map +1 -1
  211. package/dist/release-manager/release-tick.d.ts.map +1 -1
  212. package/dist/release-manager/release-tick.js +20 -8
  213. package/dist/release-manager/release-tick.js.map +1 -1
  214. package/dist/release-manager/state.d.ts.map +1 -1
  215. package/dist/release-manager/state.js +25 -18
  216. package/dist/release-manager/state.js.map +1 -1
  217. package/dist/types.d.ts +232 -13
  218. package/dist/types.d.ts.map +1 -1
  219. package/dist/types.js +52 -0
  220. package/dist/types.js.map +1 -1
  221. package/dist/webhook/github-handler.d.ts +2 -2
  222. package/dist/webhook/github-handler.d.ts.map +1 -1
  223. package/dist/webhook/github-handler.js +18 -6
  224. package/dist/webhook/github-handler.js.map +1 -1
  225. package/package.json +1 -1
@@ -24,7 +24,7 @@ import { bumpFromConfigAndCommits } from "./versioning.js";
24
24
  import { createTagAndRelease, parseRepoFromUrl } from "./github.js";
25
25
  import { triggerWorkflow, pollWorkflowRun, workflowFileExists } from "../qa/github.js";
26
26
  import { markGapResolved } from "../qa/gap.js";
27
- import { maybePostSlack, persistDecision, consumeApprovalRow, getMaxAttemptCountForReason, tryFileQaGapIssue, MAX_QA_RETRY_ATTEMPTS, } from "./release-helpers.js";
27
+ import { maybePostSlack, persistDecision, consumeApprovalRow, getMaxAttemptCountForReason, tryFileQaGapIssue, clearFailureRowsForSha, MAX_QA_RETRY_ATTEMPTS, } from "./release-helpers.js";
28
28
  const log = createLogger({ component: "ReleaseManager:scheduler" });
29
29
  /**
30
30
  * Maximum number of completed QA run IDs to track in the dedup set before
@@ -175,9 +175,11 @@ export async function tick(ctx) {
175
175
  let qaRunSha;
176
176
  let finalReason = result.reason;
177
177
  if (result.qaActionNeeded?.reason === "qa_needs_trigger") {
178
- // Look up the highest attempt count across all qa_needs_trigger rows for this
179
- // (branch, sha) pair. Using MAX instead of ORDER BY + LIMIT 1 to be stable
180
- // when multiple rows share the same decidedAt timestamp.
178
+ // BEC-146: read the most-recent row's attemptCount (ORDER BY decidedAt DESC LIMIT 1)
179
+ // rather than MAX(attemptCount) across all rows for this (branch, sha) pair.
180
+ // Using MAX caused false permanent skips: after a successful dispatch reset
181
+ // attemptCount to 0, the MAX query still returned the old high-water mark
182
+ // from earlier failure rows, causing the next failure to immediately escalate.
181
183
  attemptCount = await getMaxAttemptCountForReason(db, repoUrl, branch, "qa_needs_trigger", state.headSha);
182
184
  const { owner, repo } = parseRepoFromUrl(repoUrl);
183
185
  const dispatch = await triggerWorkflow({
@@ -187,6 +189,10 @@ export async function tick(ctx) {
187
189
  inputs: config.triggers.qaCheck.workflowInputs,
188
190
  });
189
191
  if (dispatch.kind === "ok") {
192
+ // BEC-146: clear prior failure rows for this SHA so MAX(attemptCount)
193
+ // naturally returns 0 if the run subsequently fails and we re-enter
194
+ // the dispatch path on a later tick.
195
+ await clearFailureRowsForSha(db, repoUrl, branch, "qa_needs_trigger", state.headSha);
190
196
  attemptCount = 0; // reset on successful dispatch
191
197
  qaRunId = dispatch.runId;
192
198
  qaRunSha = state.headSha;
@@ -212,11 +218,17 @@ export async function tick(ctx) {
212
218
  attemptCount = 99; // permanent skip — workflow misconfigured, retrying won't help
213
219
  }
214
220
  else if (dispatch.kind === "dispatch_pending") {
215
- // GitHub eventual-consistency window. Don't count against retry budget; next tick
216
- // will re-evaluate and the run should be findable by then.
217
- // Tag with qaRunSha so the per-SHA retry counter query can find these rows.
221
+ // GitHub eventual-consistency window. The HTTP dispatch DID succeed (204 OK), so
222
+ // reset the retry counter to 0 a successful dispatch is not a failure.
223
+ // BEC-146: clear prior failure rows for this SHA so MAX(attemptCount) returns 0
224
+ // for subsequent ticks. Without this, old dispatch_error rows (attemptCount=1,2)
225
+ // would cause MAX to keep returning their high-water mark and the next failure
226
+ // would immediately escalate to qa_dispatch_error, bypassing the retry budget.
227
+ await clearFailureRowsForSha(db, repoUrl, branch, "qa_needs_trigger", state.headSha);
228
+ attemptCount = 0;
229
+ // Tag with qaRunSha so the per-SHA retry counter query can find this row.
218
230
  qaRunSha = state.headSha;
219
- // attemptCount stays as-is; finalReason stays as "qa_needs_trigger" for next tick to retry.
231
+ // finalReason stays as "qa_needs_trigger" for next tick to retry.
220
232
  }
221
233
  else {
222
234
  // dispatch_error — increment attempt counter.
@@ -1 +1 @@
1
- {"version":3,"file":"release-tick.js","sourceRoot":"","sources":["../../src/release-manager/release-tick.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"release-tick.js","sourceRoot":"","sources":["../../src/release-manager/release-tick.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAIzC,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EACL,iBAAiB,EACjB,mBAAmB,EACnB,uBAAuB,EACvB,mBAAmB,EACnB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,wBAAwB,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpE,OAAO,EAAE,eAAe,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,iBAAiB,CAAC;AACvF,OAAO,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAC/C,OAAO,EACL,cAAc,EACd,eAAe,EACf,kBAAkB,EAClB,2BAA2B,EAC3B,iBAAiB,EACjB,sBAAsB,EACtB,qBAAqB,GACtB,MAAM,sBAAsB,CAAC;AAG9B,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,SAAS,EAAE,0BAA0B,EAAE,CAAC,CAAC;AAEpE;;;;;;GAMG;AACH,MAAM,mBAAmB,GAAG,MAAM,CAAC;AAgFnC,oFAAoF;AACpF,SAAS,aAAa,CAAC,MAA4B;IACjD,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC;IACjD,IAAI,KAAK,IAAI,KAAK,GAAG,CAAC;QAAE,OAAO,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC;IACnD,OAAO,EAAE,GAAG,IAAI,GAAG,IAAI,CAAC;AAC1B,CAAC;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,IAAI,CAAC,GAAgB;IACzC,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,YAAY,EAAE,GAAG,GAAG,CAAC;IAC9F,MAAM,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;IAEzC,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;QAClB,IAAI,CAAC,YAAY,CAAC,iBAAiB,EAAE,CAAC;YACpC,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,6CAA6C,CAAC,CAAC;YAC7E,YAAY,CAAC,iBAAiB,GAAG,IAAI,CAAC;QACxC,CAAC;QACD,OAAO;IACT,CAAC;IACD,IAAI,IAAI,CAAC,GAAG,EAAE,GAAG,YAAY,CAAC,aAAa,EAAE,CAAC;QAC5C,GAAG,CAAC,IAAI,CAAC,EAAE,aAAa,EAAE,YAAY,CAAC,aAAa,EAAE,EAAE,sDAAsD,CAAC,CAAC;QAChH,OAAO;IACT,CAAC;IAED,IAAI,KAAK,CAAC;IACV,IAAI,CAAC;QACH,KAAK,GAAG,MAAM,YAAY,CAAC;YACzB,OAAO,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,aAAa,CAAC,MAAM,CAAC;SACnE,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,qCAAqC,CAAC,CAAC;QAC3E,OAAO;IACT,CAAC;IAED,MAAM,gBAAgB,GAAG,IAAI,CAAC,SAAS,CAAC;QACtC,yBAAyB,EAAE,KAAK,CAAC,yBAAyB;QAC1D,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,WAAW,EAAE,IAAI,IAAI;QACjD,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,gBAAgB,EAAE,KAAK,CAAC,gBAAgB;KACzC,CAAC,CAAC;IAEH,kDAAkD;IAClD,IAAI,KAAK,CAAC,iBAAiB,EAAE,CAAC;QAC5B,MAAM,EAAE,GAAG,MAAM,UAAU,EAAE,EAAE,CAAC;QAChC,MAAM,eAAe,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;YACzC,EAAE;YACF,QAAQ,EAAE,MAAM;YAChB,MAAM,EAAE,qBAAqB;YAC7B,gBAAgB;SACjB,CAAC,CAAC;QACH,KAAK,sBAAsB,CAAC,EAAE,EAAE,mBAAmB,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAC,CAAC,CAAC;QACzG,GAAG,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,qCAAqC,CAAC,CAAC;QACrE,OAAO;IACT,CAAC;IAED,2DAA2D;IAC3D,IAAI,OAAkF,CAAC;IACvF,IAAI,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;QAC5B,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,QAAQ,GAAG,KAAK,CAAC;QACrB,IAAI,CAAC;YACH,QAAQ,GAAG,MAAM,kBAAkB,CAAC;gBAClC,OAAO,EAAE,KAAK,EAAE,IAAI;gBACpB,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ;gBACtC,GAAG,EAAE,KAAK,CAAC,OAAO;aACnB,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,yDAAyD,CAAC,CAAC;YAC7E,QAAQ,GAAG,IAAI,CAAC,CAAC,6CAA6C;QAChE,CAAC;QACD,IAAI,QAAQ,EAAE,CAAC;YACb,6EAA6E;YAC7E,8EAA8E;YAC9E,MAAM,eAAe,CAAC;gBACpB,EAAE;gBACF,OAAO;gBACP,MAAM;gBACN,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,QAAQ;aAC/C,CAAC,CAAC;QACL,CAAC;QACD,IAAI,aAAa,GAAkB,IAAI,CAAC;QACxC,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,KAAK,KAAK,CAAC,OAAO,EAAE,CAAC;YACxD,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;gBACzF,IAAI,MAAM,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBAChC,aAAa,GAAG,MAAM,CAAC,UAAU,CAAC;oBAClC,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;wBAChE,iEAAiE;wBACjE,8DAA8D;wBAC9D,+DAA+D;wBAC/D,2DAA2D;wBAC3D,gEAAgE;wBAChE,iEAAiE;wBACjE,yCAAyC;wBACzC,IAAI,YAAY,CAAC,sBAAsB,CAAC,IAAI,IAAI,mBAAmB,EAAE,CAAC;4BACpE,YAAY,CAAC,sBAAsB,CAAC,KAAK,EAAE,CAAC;wBAC9C,CAAC;wBACD,YAAY,CAAC,sBAAsB,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;wBAC3D,kEAAkE;wBAClE,KAAK,sBAAsB,CACzB,EAAE,EACF,mBAAmB,CAAC;4BAClB,OAAO,EAAE,MAAM;4BACf,KAAK,EAAE,KAAK,CAAC,KAAK,CAAC,KAAK;4BACxB,UAAU,EAAE,MAAM,CAAC,UAAiB;4BACpC,UAAU,EAAE,MAAM,CAAC,UAAU;yBAC9B,CAAC,CACH,CAAC;oBACJ,CAAC;oBACD,4EAA4E;gBAC9E,CAAC;YACH,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,IAAI,CAAC,EAAE,GAAG,EAAE,EAAE,uDAAuD,CAAC,CAAC;YAC7E,CAAC;QACH,CAAC;QACD,OAAO,GAAG,EAAE,kBAAkB,EAAE,QAAQ,EAAE,aAAa,EAAE,CAAC;IAC5D,CAAC;IAED,eAAe;IACf,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAClE,MAAM,eAAe,GAAG,wBAAwB,CAC9C,KAAK,CAAC,OAAO,EACb,KAAK,CAAC,mBAAmB,EACzB,MAAM,CAAC,WAAW,CACnB,CAAC;IAEF,IAAI,MAAM,CAAC,IAAI,KAAK,MAAM,EAAE,CAAC;QAC3B,MAAM,EAAE,GAAG,MAAM,UAAU,EAAE,EAAE,CAAC;QAEhC,sEAAsE;QACtE,IAAI,YAAY,GAAG,CAAC,CAAC;QACrB,IAAI,OAA2B,CAAC;QAChC,IAAI,QAA4B,CAAC;QACjC,IAAI,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;QAEhC,IAAI,MAAM,CAAC,cAAc,EAAE,MAAM,KAAK,kBAAkB,EAAE,CAAC;YACzD,qFAAqF;YACrF,6EAA6E;YAC7E,4EAA4E;YAC5E,0EAA0E;YAC1E,+EAA+E;YAC/E,YAAY,GAAG,MAAM,2BAA2B,CAC9C,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,KAAK,CAAC,OAAO,CACvD,CAAC;YAEF,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;YAClD,MAAM,QAAQ,GAAG,MAAM,eAAe,CAAC;gBACrC,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM;gBACzC,QAAQ,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAQ,CAAC,QAAQ;gBAC3C,GAAG,EAAE,KAAK,CAAC,OAAO;gBAClB,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAQ,CAAC,cAAc;aAChD,CAAC,CAAC;YACH,IAAI,QAAQ,CAAC,IAAI,KAAK,IAAI,EAAE,CAAC;gBAC3B,sEAAsE;gBACtE,oEAAoE;gBACpE,qCAAqC;gBACrC,MAAM,sBAAsB,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;gBACrF,YAAY,GAAG,CAAC,CAAC,CAAC,+BAA+B;gBACjD,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC;gBACzB,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;YAC3B,CAAC;iBAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;gBAC5C,oFAAoF;gBACpF,WAAW,GAAG,gBAAgB,CAAC;gBAC/B,IAAI,MAAM,EAAE,CAAC;oBACX,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC;wBACxC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;wBAC3B,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAQ,CAAC,QAAQ;wBAC/C,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAQ,CAAC,YAAY;qBACpD,CAAC,CAAC;oBACH,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC;oBACpC,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC;gBACxC,CAAC;qBAAM,CAAC;oBACN,GAAG,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,8EAA8E,CAAC,CAAC;gBACjH,CAAC;YACH,CAAC;iBAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,cAAc,EAAE,CAAC;gBAC5C,WAAW,GAAG,mBAAmB,CAAC;gBAClC,YAAY,GAAG,EAAE,CAAC,CAAC,+DAA+D;YACpF,CAAC;iBAAM,IAAI,QAAQ,CAAC,IAAI,KAAK,kBAAkB,EAAE,CAAC;gBAChD,iFAAiF;gBACjF,yEAAyE;gBACzE,gFAAgF;gBAChF,iFAAiF;gBACjF,+EAA+E;gBAC/E,+EAA+E;gBAC/E,MAAM,sBAAsB,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,kBAAkB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;gBACrF,YAAY,GAAG,CAAC,CAAC;gBACjB,0EAA0E;gBAC1E,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;gBACzB,kEAAkE;YACpE,CAAC;iBAAM,CAAC;gBACN,8CAA8C;gBAC9C,4EAA4E;gBAC5E,QAAQ,GAAG,KAAK,CAAC,OAAO,CAAC;gBACzB,YAAY,IAAI,CAAC,CAAC;gBAClB,IAAI,YAAY,IAAI,qBAAqB,EAAE,CAAC;oBAC1C,WAAW,GAAG,mBAAmB,CAAC;gBACpC,CAAC;YACH,CAAC;QACH,CAAC;aAAM,IAAI,MAAM,CAAC,cAAc,EAAE,MAAM,KAAK,gBAAgB,EAAE,CAAC;YAC9D,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,SAAS,GAAG,MAAM,iBAAiB,CAAC;oBACxC,EAAE,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM;oBAC3B,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAQ,CAAC,QAAQ;oBAC/C,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,OAAQ,CAAC,YAAY;iBACpD,CAAC,CAAC;gBACH,WAAW,GAAG,SAAS,CAAC,WAAW,CAAC;gBACpC,YAAY,GAAG,SAAS,CAAC,YAAY,CAAC;YACxC,CAAC;iBAAM,CAAC;gBACN,GAAG,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,8EAA8E,CAAC,CAAC;YACjH,CAAC;QACH,CAAC;QAED,IAAI,MAAM,CAAC,cAAc,EAAE,MAAM,KAAK,cAAc,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC;YACnG,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,KAAK,CAAC,KAAK,CAAC,WAAW,CAAC,OAAO,EAAE,CAAC;YACjE,KAAK,sBAAsB,CACzB,EAAE,EACF,mBAAmB,CAAC;gBAClB,OAAO;gBACP,MAAM;gBACN,KAAK,EAAE,MAAM,CAAC,cAAc,CAAC,KAAK;gBAClC,UAAU,EAAE,WAAW;gBACvB,UAAU,EAAE,SAAS;gBACrB,SAAS,EAAE,IAAI;aAChB,CAAC,CACH,CAAC;QACJ,CAAC;QAED,MAAM,eAAe,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;YACzC,EAAE;YACF,QAAQ,EAAE,MAAM;YAChB,MAAM,EAAE,WAAW;YACnB,gBAAgB;YAChB,eAAe;YACf,OAAO;YACP,QAAQ;YACR,YAAY;SACb,CAAC,CAAC;QACH,KAAK,sBAAsB,CAAC,EAAE,EAAE,mBAAmB,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC,CAAC;QAC/F,kEAAkE;QAClE,oEAAoE;QACpE,GAAG,CAAC,IAAI,CACN,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,yBAAyB,EAAE,KAAK,CAAC,yBAAyB,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,eAAe,EAAE,EAC7I,WAAW,CACZ,CAAC;QACF,gCAAgC;QAChC,MAAM,cAAc,CAClB,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,CAAC,UAAU,EAChD,8CAA8C,OAAO,MAAM,MAAM,MAAM,WAAW,EAAE,EACpF,WAAW,CACZ,CAAC;QACF,OAAO;IACT,CAAC;IAED,IAAI,MAAM,CAAC,IAAI,KAAK,mBAAmB,EAAE,CAAC;QACxC,MAAM,EAAE,GAAG,MAAM,UAAU,EAAE,EAAE,CAAC;QAChC,MAAM,eAAe,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;YACzC,EAAE;YACF,QAAQ,EAAE,mBAAmB;YAC7B,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,gBAAgB;YAChB,eAAe;SAChB,CAAC,CAAC;QACH,KAAK,sBAAsB,CAAC,EAAE,EAAE,mBAAmB,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,EAAE,CAAC,CAAC,CAAC;QACvG,kEAAkE;QAClE,GAAG,CAAC,IAAI,CACN,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,EAAE,eAAe,EAAE,EACjE,WAAW,CACZ,CAAC;QACF,uEAAuE;QACvE,kEAAkE;QAClE,YAAY,CAAC,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC;QAC9C,MAAM,cAAc,CAClB,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,CAAC,UAAU,EAChD,+CAA+C,OAAO,MAAM,MAAM,cAAc,eAAe,KAAK,KAAK,CAAC,yBAAyB,6DAA6D,EAChM,IAAI,CACL,CAAC;QACF,OAAO;IACT,CAAC;IAED,+BAA+B;IAC/B,MAAM,EAAE,GAAG,MAAM,UAAU,EAAE,EAAE,CAAC;IAChC,MAAM,YAAY,GAAG,MAAM,mBAAmB,CAAC;QAC7C,OAAO;QACP,GAAG,gBAAgB,CAAC,OAAO,CAAC;QAC5B,GAAG,EAAE,eAAe;QACpB,GAAG,EAAE,KAAK,CAAC,OAAO;KACnB,CAAC,CAAC;IAEH,IAAI,YAAY,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QACvC,MAAM,eAAe,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;YACzC,EAAE;YACF,QAAQ,EAAE,MAAM;YAChB,MAAM,EAAE,YAAY;YACpB,gBAAgB;YAChB,eAAe;SAChB,CAAC,CAAC;QACH,KAAK,sBAAsB,CAAC,EAAE,EAAE,uBAAuB,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,eAAe,EAAE,CAAC,CAAC,CAAC;QACpG,2DAA2D;QAC3D,GAAG,CAAC,IAAI,CACN,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,eAAe,EAAE,EAC1D,WAAW,CACZ,CAAC;QACF,OAAO;IACT,CAAC;IAED,IAAI,YAAY,CAAC,IAAI,KAAK,uBAAuB,EAAE,CAAC;QAClD,6EAA6E;QAC7E,6EAA6E;QAC7E,yEAAyE;QACzE,yEAAyE;QACzE,2EAA2E;QAC3E,2EAA2E;QAC3E,8BAA8B;QAC9B,MAAM,eAAe,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;YACzC,EAAE;YACF,QAAQ,EAAE,MAAM;YAChB,MAAM,EAAE,uBAAuB;YAC/B,gBAAgB;YAChB,eAAe;YACf,QAAQ,EAAE,eAAe;YACzB,QAAQ,EAAE,KAAK,CAAC,OAAO;SACxB,CAAC,CAAC;QACH,KAAK,sBAAsB,CACzB,EAAE,EACF,mBAAmB,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,eAAe,EAAE,YAAY,EAAE,CAAC,EAAE,CAAC,CAChF,CAAC;QACF,GAAG,CAAC,KAAK,CACP,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,YAAY,CAAC,OAAO,EAAE,EACpE,oGAAoG,CACrG,CAAC;QACF,OAAO;IACT,CAAC;IAED,IAAI,YAAY,CAAC,IAAI,KAAK,aAAa,EAAE,CAAC;QACxC,MAAM,eAAe,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;YACzC,EAAE;YACF,QAAQ,EAAE,MAAM;YAChB,MAAM,EAAE,kBAAkB;YAC1B,gBAAgB;YAChB,eAAe;SAChB,CAAC,CAAC;QACH,KAAK,sBAAsB,CAAC,EAAE,EAAE,mBAAmB,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,kBAAkB,EAAE,CAAC,CAAC,CAAC;QACtG,GAAG,CAAC,KAAK,CAAC,EAAE,GAAG,EAAE,YAAY,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,oDAAoD,CAAC,CAAC;QAChH,OAAO;IACT,CAAC;IAED,uBAAuB;IACvB,MAAM,eAAe,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;QACzC,EAAE;QACF,QAAQ,EAAE,MAAM;QAChB,MAAM,EAAE,qBAAqB;QAC7B,gBAAgB;QAChB,eAAe;QACf,QAAQ,EAAE,eAAe;QACzB,QAAQ,EAAE,KAAK,CAAC,OAAO;KACxB,CAAC,CAAC;IACH,IAAI,KAAK,CAAC,gBAAgB,EAAE,CAAC;QAC3B,MAAM,kBAAkB,CAAC,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;IACpD,CAAC;IACD,KAAK,sBAAsB,CACzB,EAAE,EACF,iBAAiB,CAAC;QAChB,OAAO;QACP,MAAM;QACN,GAAG,EAAE,eAAe;QACpB,GAAG,EAAE,KAAK,CAAC,OAAO;QAClB,aAAa,EAAE,KAAK,CAAC,yBAAyB;KAC/C,CAAC,CACH,CAAC;IACF,0EAA0E;IAC1E,0EAA0E;IAC1E,uEAAuE;IACvE,GAAG,CAAC,IAAI,CACN,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,eAAe,EAAE,GAAG,EAAE,KAAK,CAAC,OAAO,EAAE,aAAa,EAAE,KAAK,CAAC,yBAAyB,EAAE,UAAU,EAAE,YAAY,CAAC,UAAU,EAAE,EAClJ,WAAW,CACZ,CAAC;IACF,MAAM,cAAc,CAClB,KAAK,EAAE,YAAY,EAAE,EAAE,EAAE,YAAY,CAAC,UAAU,EAChD,sBAAsB,eAAe,SAAS,OAAO,KAAK,MAAM,MAAM,YAAY,CAAC,UAAU,EAAE,EAC/F,IAAI,CACL,CAAC;IACF,+CAA+C;IAC/C,YAAY,CAAC,UAAU,CAAC,cAAc,GAAG,IAAI,CAAC;AAChD,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/release-manager/state.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAI7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAIjD,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,EAAE,EAAE,KAAK,CAAC;IACV,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,gGAAgG;IAChG,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC,CAoKpF"}
1
+ {"version":3,"file":"state.d.ts","sourceRoot":"","sources":["../../src/release-manager/state.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAI7C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AA2BjD,MAAM,WAAW,iBAAiB;IAChC,OAAO,EAAE,OAAO,CAAC;IACjB,EAAE,EAAE,KAAK,CAAC;IACV,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,gGAAgG;IAChG,aAAa,EAAE,MAAM,CAAC;CACvB;AAED;;;;GAIG;AACH,wBAAsB,YAAY,CAAC,KAAK,EAAE,iBAAiB,GAAG,OAAO,CAAC,cAAc,CAAC,CA6JpF"}
@@ -1,8 +1,23 @@
1
- import { and, eq, isNull, desc, gte } from "drizzle-orm";
1
+ import { and, eq, isNull, desc, gte, isNotNull } from "drizzle-orm";
2
2
  import { releaseApprovals, releaseDecisions } from "../db/schema.js";
3
3
  import { createLogger } from "../logger.js";
4
4
  import { parseRepoFromUrl } from "./github.js";
5
5
  const log = createLogger({ component: "ReleaseManager:state" });
6
+ /** Matches semantic version tags with an optional leading "v" (e.g. "v1.2.3" or "1.2.3"). */
7
+ const VERSION_TAG_PATTERN = /^v?\d+\.\d+\.\d+$/;
8
+ /**
9
+ * Shared helper: fetch the latest single row from `releaseDecisions` filtered by
10
+ * repo/branch plus an additional predicate, ordered by `decidedAt DESC`.
11
+ * Both the `lastFired` and `latestQaRun` queries share this structure.
12
+ */
13
+ async function queryLatestReleaseDecision(db, repoUrl, branch, additionalCondition, selectFields) {
14
+ return db
15
+ .select(selectFields)
16
+ .from(releaseDecisions)
17
+ .where(and(eq(releaseDecisions.repoUrl, repoUrl), eq(releaseDecisions.branch, branch), additionalCondition))
18
+ .orderBy(desc(releaseDecisions.decidedAt))
19
+ .limit(1);
20
+ }
6
21
  /**
7
22
  * Single GitHub call surface for one tick. Wrapped in try/catch by the
8
23
  * scheduler — failures here surface as "ci_check_unavailable" or are
@@ -20,13 +35,14 @@ export async function collectState(input) {
20
35
  let lastTagAt = null;
21
36
  try {
22
37
  const tagsRes = await octokit.repos.listTags({ owner, repo, per_page: 30 });
23
- const candidate = tagsRes.data.find((t) => /^v?\d+\.\d+\.\d+$/.test(t.name));
38
+ const candidate = tagsRes.data.find((t) => VERSION_TAG_PATTERN.test(t.name));
24
39
  if (candidate) {
25
40
  lastTag = candidate.name.startsWith("v") ? candidate.name : `v${candidate.name}`;
26
41
  lastTagSha = candidate.commit.sha;
27
42
  // Tag commit timestamp — use the commit's committer date for a wall-clock anchor.
28
43
  const commit = await octokit.repos.getCommit({ owner, repo, ref: lastTagSha });
29
- const dateStr = commit.data?.commit?.committer?.date ?? commit.data?.commit?.author?.date;
44
+ const commitData = commit.data?.commit;
45
+ const dateStr = commitData?.committer?.date ?? commitData?.author?.date;
30
46
  lastTagAt = dateStr ? new Date(dateStr) : null;
31
47
  }
32
48
  }
@@ -35,12 +51,7 @@ export async function collectState(input) {
35
51
  }
36
52
  // 3. Manual-tag detection: did any release_decisions with kind="fire" record
37
53
  // a fired_tag, and does the current latest tag differ from it?
38
- const lastFired = await db
39
- .select({ firedTag: releaseDecisions.firedTag })
40
- .from(releaseDecisions)
41
- .where(and(eq(releaseDecisions.repoUrl, repoUrl), eq(releaseDecisions.branch, branch), eq(releaseDecisions.decision, "fire")))
42
- .orderBy(desc(releaseDecisions.decidedAt))
43
- .limit(1);
54
+ const lastFired = await queryLatestReleaseDecision(db, repoUrl, branch, eq(releaseDecisions.decision, "fire"), { firedTag: releaseDecisions.firedTag });
44
55
  const lastFiredTag = lastFired?.[0]?.firedTag ?? null;
45
56
  const manualTagDetected = lastTag !== null && lastFiredTag !== null && lastTag !== lastFiredTag;
46
57
  // 4. Commits between lastTagSha and headSha (proxy for "merged PRs since last tag").
@@ -117,18 +128,14 @@ export async function collectState(input) {
117
128
  const hasFreshApproval = (freshRows?.length ?? 0) > 0;
118
129
  const freshApprovalApprover = hasFreshApproval ? freshRows[0].approvedBy : null;
119
130
  // 7. BEC-136: most-recent in-flight QA run snapshot.
120
- const qaRunRows = await db
121
- .select({
131
+ // Uses the partial index idx_release_decisions_qa_run_id (WHERE qa_run_id IS NOT NULL)
132
+ // created in migrations 010_qa_run_columns.sql (SQLite) / 011_qa_run_columns.sql (Postgres).
133
+ const latestQaRows = await queryLatestReleaseDecision(db, repoUrl, branch, isNotNull(releaseDecisions.qaRunId), {
122
134
  qaRunId: releaseDecisions.qaRunId,
123
135
  qaRunSha: releaseDecisions.qaRunSha,
124
136
  decidedAt: releaseDecisions.decidedAt,
125
- })
126
- .from(releaseDecisions)
127
- .where(and(eq(releaseDecisions.repoUrl, repoUrl), eq(releaseDecisions.branch, branch)))
128
- .orderBy(desc(releaseDecisions.decidedAt))
129
- .limit(20);
130
- // Take the most recent row that actually has a qa_run_id.
131
- const latestQaRow = qaRunRows.find((r) => r.qaRunId !== null && r.qaRunId !== undefined);
137
+ });
138
+ const latestQaRow = latestQaRows[0] ?? null;
132
139
  const qaRun = latestQaRow
133
140
  ? {
134
141
  runId: latestQaRow.qaRunId,
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/release-manager/state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../src/release-manager/state.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -288,6 +288,26 @@ export declare const HandoffArtifactSchema: z.ZodObject<{
288
288
  }, z.core.$strip>;
289
289
  }, z.core.$strip>;
290
290
  export type HandoffArtifact = z.infer<typeof HandoffArtifactSchema>;
291
+ /**
292
+ * BEC-227 Phase 4 / Track D. The implement agent emits this as a
293
+ * `<decisions>{ JSON }</decisions>` XML block at the end of its turn.
294
+ * Used by the review-fix loop's surgical prompt and by future Track F
295
+ * cross-run inheritance. Every field is optional — malformed or missing
296
+ * blocks degrade silently to an empty artifact.
297
+ */
298
+ export declare const DecisionArtifactSchema: z.ZodObject<{
299
+ decisions: z.ZodDefault<z.ZodArray<z.ZodObject<{
300
+ choice: z.ZodString;
301
+ reason: z.ZodString;
302
+ alternativesConsidered: z.ZodDefault<z.ZodArray<z.ZodString>>;
303
+ }, z.core.$strip>>>;
304
+ leftUnhandled: z.ZodDefault<z.ZodArray<z.ZodObject<{
305
+ case: z.ZodString;
306
+ reason: z.ZodString;
307
+ }, z.core.$strip>>>;
308
+ keyFiles: z.ZodDefault<z.ZodArray<z.ZodString>>;
309
+ }, z.core.$strip>;
310
+ export type DecisionArtifact = z.infer<typeof DecisionArtifactSchema>;
291
311
  export declare const ReviewCommentSchema: z.ZodObject<{
292
312
  author: z.ZodString;
293
313
  body: z.ZodString;
@@ -374,15 +394,211 @@ export type PipelineRunStatus = "queued" | "running" | "completed" | "failed" |
374
394
  | "cancelled";
375
395
  export type StageRunStatus = "running" | "completed" | "failed" | "skipped" | "cancelled";
376
396
  export type AgentLogType = "tool_call" | "tool_result" | "message" | "error" | "cancelled";
377
- export interface SanitizedIssue {
378
- id: string;
379
- slug: string;
380
- title: string;
381
- description: string;
382
- acceptanceCriteria: string[];
383
- labels: string[];
384
- priority: number;
385
- }
397
+ export declare const SanitizedIssueSchema: z.ZodObject<{
398
+ id: z.ZodString;
399
+ slug: z.ZodString;
400
+ title: z.ZodString;
401
+ description: z.ZodString;
402
+ acceptanceCriteria: z.ZodArray<z.ZodString>;
403
+ labels: z.ZodArray<z.ZodString>;
404
+ priority: z.ZodNumber;
405
+ }, z.core.$strip>;
406
+ export type SanitizedIssue = z.infer<typeof SanitizedIssueSchema>;
407
+ export declare const ResumePayloadSchema: z.ZodObject<{
408
+ worktreePath: z.ZodString;
409
+ currentStageIndex: z.ZodNumber;
410
+ handoff: z.ZodNullable<z.ZodObject<{
411
+ runId: z.ZodString;
412
+ issueId: z.ZodString;
413
+ stage: z.ZodString;
414
+ timestamp: z.ZodString;
415
+ summary: z.ZodString;
416
+ filesChanged: z.ZodArray<z.ZodString>;
417
+ approach: z.ZodString;
418
+ context: z.ZodObject<{
419
+ issueIntent: z.ZodString;
420
+ constraints: z.ZodArray<z.ZodString>;
421
+ assumptions: z.ZodArray<z.ZodString>;
422
+ testResults: z.ZodOptional<z.ZodObject<{
423
+ passed: z.ZodNumber;
424
+ failed: z.ZodNumber;
425
+ firstFailure: z.ZodOptional<z.ZodObject<{
426
+ test: z.ZodString;
427
+ error: z.ZodString;
428
+ file: z.ZodString;
429
+ }, z.core.$strip>>;
430
+ }, z.core.$strip>>;
431
+ reviewFindings: z.ZodOptional<z.ZodArray<z.ZodObject<{
432
+ severity: z.ZodEnum<{
433
+ blocking: "blocking";
434
+ warning: "warning";
435
+ suggestion: "suggestion";
436
+ }>;
437
+ file: z.ZodString;
438
+ line: z.ZodNumber;
439
+ category: z.ZodString;
440
+ description: z.ZodString;
441
+ fix: z.ZodString;
442
+ }, z.core.$strip>>>;
443
+ addressedComments: z.ZodOptional<z.ZodArray<z.ZodObject<{
444
+ commentId: z.ZodString;
445
+ response: z.ZodString;
446
+ }, z.core.$strip>>>;
447
+ }, z.core.$strip>;
448
+ tokenBudget: z.ZodObject<{
449
+ contextTokensUsed: z.ZodNumber;
450
+ recommendedMaxTurns: z.ZodNumber;
451
+ }, z.core.$strip>;
452
+ }, z.core.$strip>>;
453
+ pipelineConfig: z.ZodObject<{
454
+ name: z.ZodString;
455
+ stages: z.ZodArray<z.ZodEnum<{
456
+ triage: "triage";
457
+ "await-approval": "await-approval";
458
+ reproduce: "reproduce";
459
+ implement: "implement";
460
+ test: "test";
461
+ review: "review";
462
+ }>>;
463
+ retry: z.ZodObject<{
464
+ maxAttempts: z.ZodNumber;
465
+ strategy: z.ZodEnum<{
466
+ "fix-and-retry": "fix-and-retry";
467
+ escalate: "escalate";
468
+ "fail-fast": "fail-fast";
469
+ }>;
470
+ }, z.core.$strip>;
471
+ review: z.ZodObject<{
472
+ requiredApprovals: z.ZodNumber;
473
+ }, z.core.$strip>;
474
+ prStrategy: z.ZodEnum<{
475
+ draft: "draft";
476
+ ready: "ready";
477
+ }>;
478
+ validateHandoffs: z.ZodOptional<z.ZodBoolean>;
479
+ ralphIterations: z.ZodOptional<z.ZodNumber>;
480
+ reviewFixIterations: z.ZodOptional<z.ZodNumber>;
481
+ deepReviewPasses: z.ZodOptional<z.ZodNumber>;
482
+ maxDeepReviewPasses: z.ZodOptional<z.ZodNumber>;
483
+ autoDeepReviewThresholds: z.ZodOptional<z.ZodObject<{
484
+ changedFiles: z.ZodNumber;
485
+ totalLines: z.ZodNumber;
486
+ newPublicExports: z.ZodNumber;
487
+ }, z.core.$strip>>;
488
+ deepReviewFindingsAreBlocking: z.ZodOptional<z.ZodBoolean>;
489
+ autoMerge: z.ZodOptional<z.ZodBoolean>;
490
+ autoMergeMaxLines: z.ZodOptional<z.ZodNumber>;
491
+ autoMergeExcludePatterns: z.ZodOptional<z.ZodArray<z.ZodString>>;
492
+ autoMergeConfig: z.ZodOptional<z.ZodObject<{
493
+ minimumApprovingReviews: z.ZodOptional<z.ZodNumber>;
494
+ requiredStatusChecks: z.ZodOptional<z.ZodArray<z.ZodString>>;
495
+ requiredLabels: z.ZodOptional<z.ZodArray<z.ZodString>>;
496
+ allowedBranches: z.ZodOptional<z.ZodArray<z.ZodString>>;
497
+ mergeMethod: z.ZodOptional<z.ZodEnum<{
498
+ merge: "merge";
499
+ squash: "squash";
500
+ rebase: "rebase";
501
+ }>>;
502
+ }, z.core.$strip>>;
503
+ maxTokens: z.ZodOptional<z.ZodNumber>;
504
+ stageModels: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
505
+ failOnAutoCommit: z.ZodOptional<z.ZodBoolean>;
506
+ policy: z.ZodOptional<z.ZodLazy<z.ZodObject<{
507
+ pathBlocklist: z.ZodDefault<z.ZodArray<z.ZodString>>;
508
+ maxTokensPerIssue: z.ZodOptional<z.ZodNumber>;
509
+ overrideLabel: z.ZodDefault<z.ZodString>;
510
+ mandatoryReviewers: z.ZodOptional<z.ZodObject<{
511
+ users: z.ZodDefault<z.ZodArray<z.ZodString>>;
512
+ teams: z.ZodDefault<z.ZodArray<z.ZodString>>;
513
+ }, z.core.$strip>>;
514
+ }, z.core.$strip>>>;
515
+ timeSavedPerPr: z.ZodOptional<z.ZodNumber>;
516
+ }, z.core.$strip>;
517
+ repoConfig: z.ZodObject<{
518
+ url: z.ZodString;
519
+ defaultBranch: z.ZodString;
520
+ testCommand: z.ZodString;
521
+ buildCommand: z.ZodString;
522
+ setupCommands: z.ZodOptional<z.ZodArray<z.ZodArray<z.ZodString>>>;
523
+ workingDirectory: z.ZodOptional<z.ZodString>;
524
+ plugins: z.ZodOptional<z.ZodObject<{
525
+ mcpServers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodObject<{
526
+ command: z.ZodString;
527
+ args: z.ZodOptional<z.ZodArray<z.ZodString>>;
528
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
529
+ }, z.core.$strip>>>;
530
+ excludeMcpServers: z.ZodOptional<z.ZodArray<z.ZodString>>;
531
+ plugins: z.ZodOptional<z.ZodArray<z.ZodObject<{
532
+ type: z.ZodLiteral<"local">;
533
+ path: z.ZodString;
534
+ }, z.core.$strip>>>;
535
+ excludePlugins: z.ZodOptional<z.ZodArray<z.ZodString>>;
536
+ autoDetect: z.ZodOptional<z.ZodBoolean>;
537
+ }, z.core.$strip>>;
538
+ devcontainer: z.ZodOptional<z.ZodObject<{
539
+ mode: z.ZodOptional<z.ZodEnum<{
540
+ never: "never";
541
+ auto: "auto";
542
+ always: "always";
543
+ }>>;
544
+ configPath: z.ZodOptional<z.ZodString>;
545
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
546
+ }, z.core.$strip>>;
547
+ triggerMap: z.ZodOptional<z.ZodObject<{
548
+ start: z.ZodString;
549
+ resume: z.ZodString;
550
+ pause: z.ZodString;
551
+ abort: z.ZodString;
552
+ }, z.core.$strip>>;
553
+ provider: z.ZodOptional<z.ZodEnum<{
554
+ github: "github";
555
+ gitlab: "gitlab";
556
+ bitbucket: "bitbucket";
557
+ }>>;
558
+ githubFeedback: z.ZodOptional<z.ZodObject<{
559
+ allowedReviewers: z.ZodOptional<z.ZodArray<z.ZodString>>;
560
+ botLogins: z.ZodOptional<z.ZodArray<z.ZodString>>;
561
+ triggerKeyword: z.ZodOptional<z.ZodString>;
562
+ autoTrigger: z.ZodOptional<z.ZodBoolean>;
563
+ rerequestReview: z.ZodOptional<z.ZodBoolean>;
564
+ }, z.core.$strip>>;
565
+ releaseManager: z.ZodOptional<z.ZodObject<{
566
+ enabled: z.ZodBoolean;
567
+ schedule: z.ZodDefault<z.ZodString>;
568
+ triggers: z.ZodObject<{
569
+ mergedPRsSince: z.ZodOptional<z.ZodNumber>;
570
+ timeSinceLastHours: z.ZodOptional<z.ZodNumber>;
571
+ ciGreenForMinutes: z.ZodOptional<z.ZodNumber>;
572
+ requireSlackApproval: z.ZodDefault<z.ZodBoolean>;
573
+ qaCheck: z.ZodOptional<z.ZodObject<{
574
+ workflow: z.ZodString;
575
+ timeoutMinutes: z.ZodDefault<z.ZodNumber>;
576
+ linearTeamId: z.ZodString;
577
+ workflowInputs: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
578
+ }, z.core.$strip>>;
579
+ }, z.core.$strip>;
580
+ versionBump: z.ZodDefault<z.ZodEnum<{
581
+ patch: "patch";
582
+ minor: "minor";
583
+ "conventional-commits": "conventional-commits";
584
+ }>>;
585
+ slackChannel: z.ZodOptional<z.ZodString>;
586
+ branch: z.ZodDefault<z.ZodString>;
587
+ paths: z.ZodOptional<z.ZodArray<z.ZodString>>;
588
+ }, z.core.$strip>>;
589
+ labelPattern: z.ZodOptional<z.ZodString>;
590
+ }, z.core.$strip>;
591
+ sanitizedIssue: z.ZodObject<{
592
+ id: z.ZodString;
593
+ slug: z.ZodString;
594
+ title: z.ZodString;
595
+ description: z.ZodString;
596
+ acceptanceCriteria: z.ZodArray<z.ZodString>;
597
+ labels: z.ZodArray<z.ZodString>;
598
+ priority: z.ZodNumber;
599
+ }, z.core.$strip>;
600
+ }, z.core.$strip>;
601
+ export type ResumePayload = z.infer<typeof ResumePayloadSchema>;
386
602
  export interface StageResult {
387
603
  status: "completed" | "failed" | "cancelled";
388
604
  handoffArtifact?: HandoffArtifact;
@@ -470,10 +686,11 @@ export interface Notifier {
470
686
  /** Called by sendDailyTokenSummary() with aggregated usage for a given date. */
471
687
  onDailyTokenSummary?(summary: DailyTokenSummary): Promise<void>;
472
688
  /**
473
- * BEC-186: called when a PR is merged externally — either by a human via
474
- * the GitHub UI or by GitHub's "auto-merge when ready" feature after
475
- * the pipeline has already completed. Implementations should transition
476
- * the Linear issue to Done.
689
+ * BEC-186: called when a GitHub pull_request.closed webhook arrives with
690
+ * merged=true either from a human merge via the GitHub UI or from
691
+ * GitHub's "auto-merge when ready" feature — after the pipeline has already
692
+ * completed. Transitions the Linear issue to Done and posts a "PR merged"
693
+ * comment.
477
694
  */
478
695
  onPRMerged?(run: PipelineRun): Promise<void>;
479
696
  }
@@ -540,6 +757,7 @@ export declare const AuditEventTypeSchema: z.ZodEnum<{
540
757
  "pipeline.agent_session_resumed": "pipeline.agent_session_resumed";
541
758
  "pipeline.agent_session_missing_fallback": "pipeline.agent_session_missing_fallback";
542
759
  "system.session_volume_warning": "system.session_volume_warning";
760
+ "pipeline.surgical_review_fix": "pipeline.surgical_review_fix";
543
761
  }>;
544
762
  export type AuditEventType = z.infer<typeof AuditEventTypeSchema>;
545
763
  export declare const AuditActorTypeSchema: z.ZodEnum<{
@@ -612,6 +830,7 @@ export declare const AuditEventSchema: z.ZodObject<{
612
830
  "pipeline.agent_session_resumed": "pipeline.agent_session_resumed";
613
831
  "pipeline.agent_session_missing_fallback": "pipeline.agent_session_missing_fallback";
614
832
  "system.session_volume_warning": "system.session_volume_warning";
833
+ "pipeline.surgical_review_fix": "pipeline.surgical_review_fix";
615
834
  }>;
616
835
  actor: z.ZodString;
617
836
  actorType: z.ZodEnum<{
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,QAAA,MAAM,eAAe;;;;;;;EAEnB,CAAC;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,YAAY,EAAE,SAAS,EAEnC,CAAC;AAGF,QAAA,MAAM,mBAAmB;;;;EAAqD,CAAC;AAC/E,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,QAAA,MAAM,iBAAiB;;;;;;;iBAGrB,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D,eAAO,MAAM,kBAAkB;;iBAE7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAmF/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAGlE,eAAO,MAAM,YAAY;;;;;;;;iBAQvB,CAAC;AACH,MAAM,MAAM,MAAM,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAGlD,eAAO,MAAM,gBAAgB;;;;;iBAK3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,mBAAmB,EAAE,UAKjC,CAAC;AAKF,QAAA,MAAM,kBAAkB,yBAA6B,CAAC;AACtD,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAa9D,eAAO,MAAM,kBAAkB;;;;;;;;;;;;;iBAW7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,QAAA,MAAM,wBAAwB;;;;;;;;iBAO5B,CAAC;AACH,MAAM,MAAM,kBAAkB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,wBAAwB,CAAC,CAAC;AAE1E,QAAA,MAAM,0BAA0B;;;;;;iBA0B9B,CAAC;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA6B3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAG1D,QAAA,MAAM,gBAAgB;;;;;;;;iBAQpB,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAE1D,eAAO,MAAM,mBAAmB;;;;;;;;;;;iBAO9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA2BhC,CAAC;AACH,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AAGpE,eAAO,MAAM,mBAAmB;;;;;;;iBAO9B,CAAC;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEhE,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAWtC,CAAC;AACH,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAQhF,QAAA,MAAM,0BAA0B;;iBAG9B,CAAC;AACH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAG9E,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,WAAW;IAC1B,cAAc,EAAE,MAAM,CAAC;IACvB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAGD,MAAM,MAAM,iBAAiB,GACzB,QAAQ,GACR,SAAS,GACT,WAAW,GACX,QAAQ,GACR,SAAS,GACT,QAAQ;AACV;qEACqE;GACnE,WAAW,CAAC;AAChB,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,SAAS,GAAG,WAAW,CAAC;AAC1F,MAAM,MAAM,YAAY,GAAG,WAAW,GAAG,aAAa,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,CAAC;AAG3F,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,kBAAkB,EAAE,MAAM,EAAE,CAAC;IAC7B,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB;AAGD,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,WAAW,GAAG,QAAQ,GAAG,WAAW,CAAC;IAC7C,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC;uGACmG;IACnG,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;8EAE0E;IAC1E,UAAU,EAAE,MAAM,CAAC;CACpB;AAGD,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,EAAE,iBAAiB,CAAC;IAC1B,SAAS,EAAE,IAAI,CAAC;IAChB,WAAW,CAAC,EAAE,IAAI,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,kEAAkE;IAClE,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,2FAA2F;IAC3F,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,qGAAqG;IACrG,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB;;;;;;;OAOG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACtC;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACjC;AAGD,MAAM,WAAW,cAAc;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,gBAAgB,EAAE,OAAO,CAAC;CAC3B;AAGD,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,UAAU,EAAE,MAAM,CAAC;CACpB;AAGD,MAAM,WAAW,QAAQ;IACvB,eAAe,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACjD,eAAe,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrF,kBAAkB,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5E,gBAAgB,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxE,6DAA6D;IAC7D,mBAAmB,CAAC,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACrF,6DAA6D;IAC7D,kBAAkB,CAAC,CAAC,GAAG,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5F,gFAAgF;IAChF,mBAAmB,CAAC,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAChE;;;;;OAKG;IACH,UAAU,CAAC,CAAC,GAAG,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9C;AAGD,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,EAAE,CAAC;IACzB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,SAAS,EAAE,MAAM,EAAE,CAAC;CACrB;AAGD,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAqG/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,eAAO,MAAM,oBAAoB;;;;;;;;EAK/B,CAAC;AACH,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAY3B,CAAC;AACH,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAG1D,eAAO,MAAM,kBAAkB;;;iBAG7B,CAAC;AACH,MAAM,MAAM,YAAY,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAE9D,eAAO,MAAM,iBAAiB;;;;;;;iBAQ5B,CAAC;AACH,MAAM,MAAM,WAAW,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,iBAAiB,CAAC,CAAC;AAE5D;;;;GAIG;AACH,eAAO,MAAM,eAAe;;;;;;;;;;iBAU1B,CAAC;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC;AAExD,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;iBAO1B,CAAC;AACH,MAAM,MAAM,SAAS,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,eAAe,CAAC,CAAC"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
package/dist/types.js CHANGED
@@ -257,6 +257,25 @@ export const HandoffArtifactSchema = z.object({
257
257
  recommendedMaxTurns: z.number().int().min(0),
258
258
  }),
259
259
  });
260
+ /**
261
+ * BEC-227 Phase 4 / Track D. The implement agent emits this as a
262
+ * `<decisions>{ JSON }</decisions>` XML block at the end of its turn.
263
+ * Used by the review-fix loop's surgical prompt and by future Track F
264
+ * cross-run inheritance. Every field is optional — malformed or missing
265
+ * blocks degrade silently to an empty artifact.
266
+ */
267
+ export const DecisionArtifactSchema = z.object({
268
+ decisions: z.array(z.object({
269
+ choice: z.string(),
270
+ reason: z.string(),
271
+ alternativesConsidered: z.array(z.string()).default([]),
272
+ })).default([]),
273
+ leftUnhandled: z.array(z.object({
274
+ case: z.string(),
275
+ reason: z.string(),
276
+ })).default([]),
277
+ keyFiles: z.array(z.string()).default([]),
278
+ });
260
279
  // --- Review Feedback Context ---
261
280
  export const ReviewCommentSchema = z.object({
262
281
  author: z.string(),
@@ -288,6 +307,30 @@ const MergeConflictContextSchema = z.object({
288
307
  /** The base branch name being rebased onto (e.g. "main"). */
289
308
  defaultBranch: z.string(),
290
309
  });
310
+ // --- Sanitized Issue ---
311
+ export const SanitizedIssueSchema = z.object({
312
+ id: z.string(),
313
+ slug: z.string(),
314
+ title: z.string(),
315
+ description: z.string(),
316
+ acceptanceCriteria: z.array(z.string()),
317
+ labels: z.array(z.string()),
318
+ priority: z.number(),
319
+ });
320
+ // --- Resume Payload ---
321
+ // Snapshot of all context needed to restart a paused or retriable pipeline run.
322
+ // Stored as JSON in pipeline_runs.resume_payload; validated with safeParse on
323
+ // resume so schema mismatches from older DB rows fail gracefully (run → failed).
324
+ // Note: currentStageIndex may be -1 for transient-failure retries (stage 0 failed;
325
+ // slice(-1+1) = slice(0) re-runs the full stage list from the start).
326
+ export const ResumePayloadSchema = z.object({
327
+ worktreePath: z.string(),
328
+ currentStageIndex: z.number().int(),
329
+ handoff: HandoffArtifactSchema.nullable(),
330
+ pipelineConfig: PipelineConfigSchema,
331
+ repoConfig: RepoConfigSchema,
332
+ sanitizedIssue: SanitizedIssueSchema,
333
+ });
291
334
  // --- Audit Log ---
292
335
  export const AuditEventTypeSchema = z.enum([
293
336
  "run.started", "run.completed", "run.failed",
@@ -390,6 +433,15 @@ export const AuditEventTypeSchema = z.enum([
390
433
  * survive container restarts. Payload carries the projectsDir path and
391
434
  * the failure reason so operators can fix their mount config. */
392
435
  "system.session_volume_warning",
436
+ /** BEC-227 Phase 4 / Track B — the review-fix loop took the surgical path:
437
+ * it resumed the per-run Agent SDK session and prompted the agent with
438
+ * just the blocking review findings (plus the previously-persisted
439
+ * decision artifact when available), instead of re-running the full
440
+ * implement template. Payload: `runId`, `issueId`, `path` ("surgical" |
441
+ * "legacy"), `findingsCount`, `decisionPayloadBytes` (0 when no
442
+ * artifact was found). The `legacy` path is logged too so operators
443
+ * can audit fallback rates. */
444
+ "pipeline.surgical_review_fix",
393
445
  ]);
394
446
  export const AuditActorTypeSchema = z.enum([
395
447
  "system", "pm-agent", "webhook", "dashboard-user", "cli",