@telora/daemon 0.23.48 → 0.23.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 (370) hide show
  1. package/build-info.json +2 -2
  2. package/dist/completion/review-exit/review-census-record.d.ts.map +1 -1
  3. package/dist/completion/review-exit/review-census-record.js +4 -0
  4. package/dist/completion/review-exit/review-census-record.js.map +1 -1
  5. package/dist/completion/review-exit/review-exit-deps.js +1 -1
  6. package/dist/completion/review-exit/review-exit-phase.js +1 -1
  7. package/dist/completion/state-cascade/failed-verdict-stranded-filing.d.ts +35 -0
  8. package/dist/completion/state-cascade/failed-verdict-stranded-filing.d.ts.map +1 -0
  9. package/dist/completion/state-cascade/failed-verdict-stranded-filing.js +93 -0
  10. package/dist/completion/state-cascade/failed-verdict-stranded-filing.js.map +1 -0
  11. package/dist/completion/state-cascade/review-approved-head-gate.d.ts.map +1 -1
  12. package/dist/completion/state-cascade/review-approved-head-gate.js +3 -0
  13. package/dist/completion/state-cascade/review-approved-head-gate.js.map +1 -1
  14. package/dist/completion/state-cascade/review-next-step.d.ts +19 -6
  15. package/dist/completion/state-cascade/review-next-step.d.ts.map +1 -1
  16. package/dist/completion/state-cascade/review-next-step.js +6 -2
  17. package/dist/completion/state-cascade/review-next-step.js.map +1 -1
  18. package/dist/completion/state-cascade/review-request-gate.d.ts +5 -0
  19. package/dist/completion/state-cascade/review-request-gate.d.ts.map +1 -1
  20. package/dist/completion/state-cascade/review-request-gate.js +7 -1
  21. package/dist/completion/state-cascade/review-request-gate.js.map +1 -1
  22. package/dist/completion/state-cascade/review-verify-judgment-gate.d.ts +137 -0
  23. package/dist/completion/state-cascade/review-verify-judgment-gate.d.ts.map +1 -0
  24. package/dist/completion/state-cascade/review-verify-judgment-gate.js +98 -0
  25. package/dist/completion/state-cascade/review-verify-judgment-gate.js.map +1 -0
  26. package/dist/completion/state-cascade/standing-approval-convergence.d.ts +18 -8
  27. package/dist/completion/state-cascade/standing-approval-convergence.d.ts.map +1 -1
  28. package/dist/completion/state-cascade/standing-approval-convergence.js +81 -16
  29. package/dist/completion/state-cascade/standing-approval-convergence.js.map +1 -1
  30. package/dist/completion/state-cascade/standing-approval-failed-verdict.d.ts +107 -0
  31. package/dist/completion/state-cascade/standing-approval-failed-verdict.d.ts.map +1 -0
  32. package/dist/completion/state-cascade/standing-approval-failed-verdict.js +121 -0
  33. package/dist/completion/state-cascade/standing-approval-failed-verdict.js.map +1 -0
  34. package/dist/completion/state-cascade/standing-approval-stranded.d.ts +29 -3
  35. package/dist/completion/state-cascade/standing-approval-stranded.d.ts.map +1 -1
  36. package/dist/completion/state-cascade/standing-approval-stranded.js +121 -7
  37. package/dist/completion/state-cascade/standing-approval-stranded.js.map +1 -1
  38. package/dist/completion/state-cascade/state-cascade.d.ts +14 -0
  39. package/dist/completion/state-cascade/state-cascade.d.ts.map +1 -1
  40. package/dist/completion/state-cascade/state-cascade.js +15 -6
  41. package/dist/completion/state-cascade/state-cascade.js.map +1 -1
  42. package/dist/completion/team-exit/status-advance-phase.d.ts +7 -0
  43. package/dist/completion/team-exit/status-advance-phase.d.ts.map +1 -1
  44. package/dist/completion/team-exit/status-advance-phase.js +26 -17
  45. package/dist/completion/team-exit/status-advance-phase.js.map +1 -1
  46. package/dist/composition/advance-precheck-context.d.ts.map +1 -1
  47. package/dist/composition/advance-precheck-context.js +3 -0
  48. package/dist/composition/advance-precheck-context.js.map +1 -1
  49. package/dist/composition/execution-merge-context.d.ts.map +1 -1
  50. package/dist/composition/execution-merge-context.js +1 -0
  51. package/dist/composition/execution-merge-context.js.map +1 -1
  52. package/dist/composition/execution-migrations-context.d.ts.map +1 -1
  53. package/dist/composition/execution-migrations-context.js +1 -20
  54. package/dist/composition/execution-migrations-context.js.map +1 -1
  55. package/dist/composition/runtime-delivery-advance-context.d.ts +12 -3
  56. package/dist/composition/runtime-delivery-advance-context.d.ts.map +1 -1
  57. package/dist/composition/runtime-delivery-advance-context.js +36 -4
  58. package/dist/composition/runtime-delivery-advance-context.js.map +1 -1
  59. package/dist/composition/standing-approval-context.d.ts.map +1 -1
  60. package/dist/composition/standing-approval-context.js +4 -0
  61. package/dist/composition/standing-approval-context.js.map +1 -1
  62. package/dist/composition/state-cascade-context.d.ts +9 -0
  63. package/dist/composition/state-cascade-context.d.ts.map +1 -1
  64. package/dist/composition/state-cascade-context.js +21 -1
  65. package/dist/composition/state-cascade-context.js.map +1 -1
  66. package/dist/composition/tower-pass-context.d.ts.map +1 -1
  67. package/dist/composition/tower-pass-context.js +2 -1
  68. package/dist/composition/tower-pass-context.js.map +1 -1
  69. package/dist/composition/verification-context.js +1 -1
  70. package/dist/composition/verify-feedback-context.d.ts +5 -1
  71. package/dist/composition/verify-feedback-context.d.ts.map +1 -1
  72. package/dist/composition/verify-feedback-context.js +8 -3
  73. package/dist/composition/verify-feedback-context.js.map +1 -1
  74. package/dist/config/live-daemon-config.js +1 -1
  75. package/dist/delivery/delivery-lifecycle.d.ts.map +1 -1
  76. package/dist/delivery/delivery-lifecycle.js +3 -0
  77. package/dist/delivery/delivery-lifecycle.js.map +1 -1
  78. package/dist/delivery/operator-hold.d.ts.map +1 -1
  79. package/dist/delivery/operator-hold.js +2 -0
  80. package/dist/delivery/operator-hold.js.map +1 -1
  81. package/dist/delivery/paused-revival.d.ts.map +1 -1
  82. package/dist/delivery/paused-revival.js +2 -1
  83. package/dist/delivery/paused-revival.js.map +1 -1
  84. package/dist/delivery/recorded-concerns.d.ts +5 -2
  85. package/dist/delivery/recorded-concerns.d.ts.map +1 -1
  86. package/dist/delivery/recorded-concerns.js +8 -4
  87. package/dist/delivery/recorded-concerns.js.map +1 -1
  88. package/dist/directive/directive-queue.js +1 -1
  89. package/dist/focus/focus-poller-auto-advance.d.ts +15 -0
  90. package/dist/focus/focus-poller-auto-advance.d.ts.map +1 -1
  91. package/dist/focus/focus-poller-auto-advance.js +23 -15
  92. package/dist/focus/focus-poller-auto-advance.js.map +1 -1
  93. package/dist/focus/focus-poller-spawn.js +1 -1
  94. package/dist/focus/focus-poller-state.js +1 -1
  95. package/dist/focus/pending-review-approved-head.d.ts.map +1 -1
  96. package/dist/focus/pending-review-approved-head.js +7 -3
  97. package/dist/focus/pending-review-approved-head.js.map +1 -1
  98. package/dist/focus/pending-spawn-review-next-step.d.ts.map +1 -1
  99. package/dist/focus/pending-spawn-review-next-step.js +11 -9
  100. package/dist/focus/pending-spawn-review-next-step.js.map +1 -1
  101. package/dist/focus/ready-focus-team-work.d.ts.map +1 -1
  102. package/dist/focus/ready-focus-team-work.js +2 -1
  103. package/dist/focus/ready-focus-team-work.js.map +1 -1
  104. package/dist/git/focus-branch-containment.js +2 -2
  105. package/dist/git/focus-branch-containment.js.map +1 -1
  106. package/dist/git/index.d.ts.map +1 -1
  107. package/dist/git/index.js +1 -0
  108. package/dist/git/index.js.map +1 -1
  109. package/dist/merge/approval-gate-state.d.ts.map +1 -1
  110. package/dist/merge/approval-gate-state.js +1 -0
  111. package/dist/merge/approval-gate-state.js.map +1 -1
  112. package/dist/merge/completion-merge-driver.d.ts.map +1 -1
  113. package/dist/merge/completion-merge-driver.js +1 -0
  114. package/dist/merge/completion-merge-driver.js.map +1 -1
  115. package/dist/merge/completion-merge-gate.d.ts.map +1 -1
  116. package/dist/merge/completion-merge-gate.js +1 -0
  117. package/dist/merge/completion-merge-gate.js.map +1 -1
  118. package/dist/merge/merge-back-loop.d.ts.map +1 -1
  119. package/dist/merge/merge-back-loop.js +1 -0
  120. package/dist/merge/merge-back-loop.js.map +1 -1
  121. package/dist/prd/index.d.ts.map +1 -1
  122. package/dist/prd/index.js +2 -1
  123. package/dist/prd/index.js.map +1 -1
  124. package/dist/prompt-sections/execution-sections.d.ts +5 -0
  125. package/dist/prompt-sections/execution-sections.d.ts.map +1 -1
  126. package/dist/prompt-sections/execution-sections.js +12 -2
  127. package/dist/prompt-sections/execution-sections.js.map +1 -1
  128. package/dist/prompt-sections/gate-verdict-section.d.ts.map +1 -1
  129. package/dist/prompt-sections/gate-verdict-section.js +3 -1
  130. package/dist/prompt-sections/gate-verdict-section.js.map +1 -1
  131. package/dist/prompt-sections/persona-sections.d.ts +10 -0
  132. package/dist/prompt-sections/persona-sections.d.ts.map +1 -1
  133. package/dist/prompt-sections/persona-sections.js +21 -6
  134. package/dist/prompt-sections/persona-sections.js.map +1 -1
  135. package/dist/prompt-sections/prompt-listing.d.ts +33 -0
  136. package/dist/prompt-sections/prompt-listing.d.ts.map +1 -1
  137. package/dist/prompt-sections/prompt-listing.js +67 -13
  138. package/dist/prompt-sections/prompt-listing.js.map +1 -1
  139. package/dist/prompt-sections/routing-decider-sections.d.ts.map +1 -1
  140. package/dist/prompt-sections/routing-decider-sections.js +6 -2
  141. package/dist/prompt-sections/routing-decider-sections.js.map +1 -1
  142. package/dist/prompt-sections/shared.js +1 -1
  143. package/dist/prompt-sections/shortfall-gap-lines.d.ts +32 -0
  144. package/dist/prompt-sections/shortfall-gap-lines.d.ts.map +1 -0
  145. package/dist/prompt-sections/shortfall-gap-lines.js +58 -0
  146. package/dist/prompt-sections/shortfall-gap-lines.js.map +1 -0
  147. package/dist/prompt-sections/shortfall-park-section.d.ts +7 -1
  148. package/dist/prompt-sections/shortfall-park-section.d.ts.map +1 -1
  149. package/dist/prompt-sections/shortfall-park-section.js +27 -0
  150. package/dist/prompt-sections/shortfall-park-section.js.map +1 -1
  151. package/dist/queries/api-client/shared.js +1 -1
  152. package/dist/queries/delivery-gate-state/delivery-gate-state.d.ts +43 -16
  153. package/dist/queries/delivery-gate-state/delivery-gate-state.d.ts.map +1 -1
  154. package/dist/queries/delivery-gate-state/delivery-gate-state.js +43 -11
  155. package/dist/queries/delivery-gate-state/delivery-gate-state.js.map +1 -1
  156. package/dist/queries/delivery-gate-state/shortfall-judgment-record.d.ts +56 -0
  157. package/dist/queries/delivery-gate-state/shortfall-judgment-record.d.ts.map +1 -0
  158. package/dist/queries/delivery-gate-state/shortfall-judgment-record.js +123 -0
  159. package/dist/queries/delivery-gate-state/shortfall-judgment-record.js.map +1 -0
  160. package/dist/queries/delivery-gate-state/verify-own-holds.d.ts.map +1 -1
  161. package/dist/queries/delivery-gate-state/verify-own-holds.js +2 -1
  162. package/dist/queries/delivery-gate-state/verify-own-holds.js.map +1 -1
  163. package/dist/queries/escalations/cause-key.d.ts +9 -1
  164. package/dist/queries/escalations/cause-key.d.ts.map +1 -1
  165. package/dist/queries/escalations/cause-key.js +16 -2
  166. package/dist/queries/escalations/cause-key.js.map +1 -1
  167. package/dist/queries/escalations/filing-observation.d.ts.map +1 -1
  168. package/dist/queries/escalations/filing-observation.js +3 -0
  169. package/dist/queries/escalations/filing-observation.js.map +1 -1
  170. package/dist/queries/focus-review/focus-review-approval.d.ts.map +1 -1
  171. package/dist/queries/focus-review/focus-review-approval.js +3 -0
  172. package/dist/queries/focus-review/focus-review-approval.js.map +1 -1
  173. package/dist/queries/prd/prd.d.ts.map +1 -1
  174. package/dist/queries/prd/prd.js +2 -1
  175. package/dist/queries/prd/prd.js.map +1 -1
  176. package/dist/queries/verification/shortfall-rulings.d.ts.map +1 -1
  177. package/dist/queries/verification/shortfall-rulings.js +3 -1
  178. package/dist/queries/verification/shortfall-rulings.js.map +1 -1
  179. package/dist/queries/verification/verification.js +1 -1
  180. package/dist/session/session-lineage.d.ts.map +1 -1
  181. package/dist/session/session-lineage.js +1 -0
  182. package/dist/session/session-lineage.js.map +1 -1
  183. package/dist/spawn/prompt-assembly.d.ts.map +1 -1
  184. package/dist/spawn/prompt-assembly.js +13 -1
  185. package/dist/spawn/prompt-assembly.js.map +1 -1
  186. package/dist/spawn/review-hold-park.d.ts.map +1 -1
  187. package/dist/spawn/review-hold-park.js +1 -0
  188. package/dist/spawn/review-hold-park.js.map +1 -1
  189. package/dist/supervision/agent-resolvable-promotion.d.ts +3 -2
  190. package/dist/supervision/agent-resolvable-promotion.d.ts.map +1 -1
  191. package/dist/supervision/agent-resolvable-promotion.js +3 -2
  192. package/dist/supervision/agent-resolvable-promotion.js.map +1 -1
  193. package/dist/supervision/escalation-clearing.d.ts +14 -1
  194. package/dist/supervision/escalation-clearing.d.ts.map +1 -1
  195. package/dist/supervision/escalation-clearing.js +28 -1
  196. package/dist/supervision/escalation-clearing.js.map +1 -1
  197. package/dist/supervision/escalation-suppression.js +1 -1
  198. package/dist/supervision/focus-delivery-aggregate-phase.d.ts.map +1 -1
  199. package/dist/supervision/focus-delivery-aggregate-phase.js +2 -0
  200. package/dist/supervision/focus-delivery-aggregate-phase.js.map +1 -1
  201. package/dist/supervision/holds.d.ts.map +1 -1
  202. package/dist/supervision/holds.js +1 -0
  203. package/dist/supervision/holds.js.map +1 -1
  204. package/dist/supervision/null-role-spawn.d.ts.map +1 -1
  205. package/dist/supervision/null-role-spawn.js +1 -0
  206. package/dist/supervision/null-role-spawn.js.map +1 -1
  207. package/dist/supervision/stop-registry.d.ts +1 -0
  208. package/dist/supervision/stop-registry.d.ts.map +1 -1
  209. package/dist/supervision/stop-rows-delivery.d.ts +8 -0
  210. package/dist/supervision/stop-rows-delivery.d.ts.map +1 -1
  211. package/dist/supervision/stop-rows-delivery.js +31 -4
  212. package/dist/supervision/stop-rows-delivery.js.map +1 -1
  213. package/dist/supervision/team-work.d.ts.map +1 -1
  214. package/dist/supervision/team-work.js +1 -0
  215. package/dist/supervision/team-work.js.map +1 -1
  216. package/dist/supervision/verify-gate-stall.d.ts.map +1 -1
  217. package/dist/supervision/verify-gate-stall.js +1 -0
  218. package/dist/supervision/verify-gate-stall.js.map +1 -1
  219. package/dist/testing/fixtures/api-client.js +1 -1
  220. package/dist/testing/fixtures/completion-judge-stubs.d.ts.map +1 -1
  221. package/dist/testing/fixtures/completion-judge-stubs.js +1 -0
  222. package/dist/testing/fixtures/completion-judge-stubs.js.map +1 -1
  223. package/dist/testing/fixtures/escalation-store.d.ts +35 -0
  224. package/dist/testing/fixtures/escalation-store.d.ts.map +1 -0
  225. package/dist/testing/fixtures/escalation-store.js +86 -0
  226. package/dist/testing/fixtures/escalation-store.js.map +1 -0
  227. package/dist/testing/fixtures/index.js +1 -1
  228. package/dist/testing/fixtures/merge-log-capture.d.ts.map +1 -1
  229. package/dist/testing/fixtures/merge-log-capture.js +1 -0
  230. package/dist/testing/fixtures/merge-log-capture.js.map +1 -1
  231. package/dist/testing/fixtures/pending-spawn-world.d.ts.map +1 -1
  232. package/dist/testing/fixtures/pending-spawn-world.js +1 -0
  233. package/dist/testing/fixtures/pending-spawn-world.js.map +1 -1
  234. package/dist/testing/fixtures/recording-api-client.js +1 -1
  235. package/dist/testing/fixtures/review-exit-deps.js +1 -1
  236. package/dist/testing/fixtures/shortfall-rework-hold-deps.d.ts +22 -0
  237. package/dist/testing/fixtures/shortfall-rework-hold-deps.d.ts.map +1 -0
  238. package/dist/testing/fixtures/shortfall-rework-hold-deps.js +44 -0
  239. package/dist/testing/fixtures/shortfall-rework-hold-deps.js.map +1 -0
  240. package/dist/testing/fixtures/verification-feedback-deps.d.ts +7 -2
  241. package/dist/testing/fixtures/verification-feedback-deps.d.ts.map +1 -1
  242. package/dist/testing/fixtures/verification-feedback-deps.js +15 -19
  243. package/dist/testing/fixtures/verification-feedback-deps.js.map +1 -1
  244. package/dist/types/index.js +1 -1
  245. package/dist/types/issue-description-budget.d.ts.map +1 -1
  246. package/dist/types/issue-description-budget.js +1 -0
  247. package/dist/types/issue-description-budget.js.map +1 -1
  248. package/dist/types/issue-status.d.ts +17 -0
  249. package/dist/types/issue-status.d.ts.map +1 -1
  250. package/dist/types/issue-status.js +23 -1
  251. package/dist/types/issue-status.js.map +1 -1
  252. package/dist/verify/effect-reconciliation/pending-injection-stamp.d.ts.map +1 -1
  253. package/dist/verify/effect-reconciliation/pending-injection-stamp.js +1 -0
  254. package/dist/verify/effect-reconciliation/pending-injection-stamp.js.map +1 -1
  255. package/dist/verify/effect-reconciliation/verify-reconciliation.d.ts +18 -3
  256. package/dist/verify/effect-reconciliation/verify-reconciliation.d.ts.map +1 -1
  257. package/dist/verify/effect-reconciliation/verify-reconciliation.js +26 -6
  258. package/dist/verify/effect-reconciliation/verify-reconciliation.js.map +1 -1
  259. package/dist/verify/effect-reconciliation/verify-restatement.d.ts +8 -0
  260. package/dist/verify/effect-reconciliation/verify-restatement.d.ts.map +1 -1
  261. package/dist/verify/effect-reconciliation/verify-restatement.js +5 -2
  262. package/dist/verify/effect-reconciliation/verify-restatement.js.map +1 -1
  263. package/dist/verify/engine/verification-commit-sharing.d.ts +6 -0
  264. package/dist/verify/engine/verification-commit-sharing.d.ts.map +1 -1
  265. package/dist/verify/engine/verification-commit-sharing.js +34 -1
  266. package/dist/verify/engine/verification-commit-sharing.js.map +1 -1
  267. package/dist/verify/engine/verification-deps.js +1 -1
  268. package/dist/verify/engine/verification-engine.d.ts.map +1 -1
  269. package/dist/verify/engine/verification-engine.js +12 -3
  270. package/dist/verify/engine/verification-engine.js.map +1 -1
  271. package/dist/verify/gate-config/verification-config.js +1 -1
  272. package/dist/verify/gate-verdicts/commit-verdict-record.js +1 -1
  273. package/dist/verify/gate-verdicts/explicit-gate-outcome.d.ts.map +1 -1
  274. package/dist/verify/gate-verdicts/explicit-gate-outcome.js +2 -0
  275. package/dist/verify/gate-verdicts/explicit-gate-outcome.js.map +1 -1
  276. package/dist/verify/gate-verdicts/gate-run-registry.js +1 -1
  277. package/dist/verify/gate-verdicts/own-gate-verdict.d.ts +10 -0
  278. package/dist/verify/gate-verdicts/own-gate-verdict.d.ts.map +1 -1
  279. package/dist/verify/gate-verdicts/own-gate-verdict.js +3 -2
  280. package/dist/verify/gate-verdicts/own-gate-verdict.js.map +1 -1
  281. package/dist/verify/outcome-routing/shortfall-rework-issue.d.ts +101 -0
  282. package/dist/verify/outcome-routing/shortfall-rework-issue.d.ts.map +1 -0
  283. package/dist/verify/outcome-routing/shortfall-rework-issue.js +250 -0
  284. package/dist/verify/outcome-routing/shortfall-rework-issue.js.map +1 -0
  285. package/dist/verify/outcome-routing/verification-evidence-unavailable-feedback.d.ts.map +1 -1
  286. package/dist/verify/outcome-routing/verification-evidence-unavailable-feedback.js +4 -1
  287. package/dist/verify/outcome-routing/verification-evidence-unavailable-feedback.js.map +1 -1
  288. package/dist/verify/outcome-routing/verification-feedback.d.ts +38 -7
  289. package/dist/verify/outcome-routing/verification-feedback.d.ts.map +1 -1
  290. package/dist/verify/outcome-routing/verification-feedback.js +45 -46
  291. package/dist/verify/outcome-routing/verification-feedback.js.map +1 -1
  292. package/dist/verify/outcome-routing/verification-history-reset.d.ts +2 -1
  293. package/dist/verify/outcome-routing/verification-history-reset.d.ts.map +1 -1
  294. package/dist/verify/outcome-routing/verification-history-reset.js +5 -2
  295. package/dist/verify/outcome-routing/verification-history-reset.js.map +1 -1
  296. package/dist/verify/outcome-routing/verification-model-unavailable-hold.d.ts +2 -1
  297. package/dist/verify/outcome-routing/verification-model-unavailable-hold.d.ts.map +1 -1
  298. package/dist/verify/outcome-routing/verification-model-unavailable-hold.js +5 -1
  299. package/dist/verify/outcome-routing/verification-model-unavailable-hold.js.map +1 -1
  300. package/dist/verify/outcome-routing/verification-rework-issue.d.ts.map +1 -1
  301. package/dist/verify/outcome-routing/verification-rework-issue.js +4 -1
  302. package/dist/verify/outcome-routing/verification-rework-issue.js.map +1 -1
  303. package/dist/verify/outcome-routing/verification-rework-messages.d.ts +8 -2
  304. package/dist/verify/outcome-routing/verification-rework-messages.d.ts.map +1 -1
  305. package/dist/verify/outcome-routing/verification-rework-messages.js +18 -7
  306. package/dist/verify/outcome-routing/verification-rework-messages.js.map +1 -1
  307. package/dist/verify/run-selection/default-on-guards.d.ts +15 -0
  308. package/dist/verify/run-selection/default-on-guards.d.ts.map +1 -1
  309. package/dist/verify/run-selection/default-on-guards.js +18 -1
  310. package/dist/verify/run-selection/default-on-guards.js.map +1 -1
  311. package/dist/verify/run-selection/explicit-rearm.d.ts.map +1 -1
  312. package/dist/verify/run-selection/explicit-rearm.js +1 -0
  313. package/dist/verify/run-selection/explicit-rearm.js.map +1 -1
  314. package/dist/verify/run-selection/pre-review-gate-dispatch.d.ts.map +1 -1
  315. package/dist/verify/run-selection/pre-review-gate-dispatch.js +15 -6
  316. package/dist/verify/run-selection/pre-review-gate-dispatch.js.map +1 -1
  317. package/dist/verify/run-selection/reselection-log-line.d.ts +1 -1
  318. package/dist/verify/run-selection/reselection-log-line.d.ts.map +1 -1
  319. package/dist/verify/run-selection/reselection-log-line.js +6 -2
  320. package/dist/verify/run-selection/reselection-log-line.js.map +1 -1
  321. package/dist/verify/run-selection/unanswered-dispatch.d.ts +20 -0
  322. package/dist/verify/run-selection/unanswered-dispatch.d.ts.map +1 -0
  323. package/dist/verify/run-selection/unanswered-dispatch.js +85 -0
  324. package/dist/verify/run-selection/unanswered-dispatch.js.map +1 -0
  325. package/dist/verify/run-selection/verification-default-on.d.ts.map +1 -1
  326. package/dist/verify/run-selection/verification-default-on.js +2 -1
  327. package/dist/verify/run-selection/verification-default-on.js.map +1 -1
  328. package/dist/verify/shortfalls/delivery-commit-set.d.ts.map +1 -1
  329. package/dist/verify/shortfalls/delivery-commit-set.js +2 -1
  330. package/dist/verify/shortfalls/delivery-commit-set.js.map +1 -1
  331. package/dist/verify/shortfalls/latest-shortfall-judgment.d.ts +24 -0
  332. package/dist/verify/shortfalls/latest-shortfall-judgment.d.ts.map +1 -0
  333. package/dist/verify/shortfalls/latest-shortfall-judgment.js +94 -0
  334. package/dist/verify/shortfalls/latest-shortfall-judgment.js.map +1 -0
  335. package/dist/verify/shortfalls/parked-shortfall-reuse.d.ts.map +1 -1
  336. package/dist/verify/shortfalls/parked-shortfall-reuse.js +20 -6
  337. package/dist/verify/shortfalls/parked-shortfall-reuse.js.map +1 -1
  338. package/dist/verify/shortfalls/shortfall-judgment-log.d.ts +12 -0
  339. package/dist/verify/shortfalls/shortfall-judgment-log.d.ts.map +1 -0
  340. package/dist/verify/shortfalls/shortfall-judgment-log.js +56 -0
  341. package/dist/verify/shortfalls/shortfall-judgment-log.js.map +1 -0
  342. package/dist/verify/shortfalls/shortfall-park-escalation.d.ts.map +1 -1
  343. package/dist/verify/shortfalls/shortfall-park-escalation.js +6 -2
  344. package/dist/verify/shortfalls/shortfall-park-escalation.js.map +1 -1
  345. package/dist/verify/shortfalls/shortfall-park.d.ts +9 -0
  346. package/dist/verify/shortfalls/shortfall-park.d.ts.map +1 -1
  347. package/dist/verify/shortfalls/shortfall-park.js +23 -19
  348. package/dist/verify/shortfalls/shortfall-park.js.map +1 -1
  349. package/dist/verify/shortfalls/shortfall-repeat.d.ts +14 -0
  350. package/dist/verify/shortfalls/shortfall-repeat.d.ts.map +1 -1
  351. package/dist/verify/shortfalls/shortfall-repeat.js +15 -1
  352. package/dist/verify/shortfalls/shortfall-repeat.js.map +1 -1
  353. package/dist/verify/shortfalls/shortfall-rework-hold.d.ts +66 -0
  354. package/dist/verify/shortfalls/shortfall-rework-hold.d.ts.map +1 -0
  355. package/dist/verify/shortfalls/shortfall-rework-hold.js +230 -0
  356. package/dist/verify/shortfalls/shortfall-rework-hold.js.map +1 -0
  357. package/dist/verify/shortfalls/shortfall-rulings.d.ts +40 -10
  358. package/dist/verify/shortfalls/shortfall-rulings.d.ts.map +1 -1
  359. package/dist/verify/shortfalls/shortfall-rulings.js +59 -15
  360. package/dist/verify/shortfalls/shortfall-rulings.js.map +1 -1
  361. package/dist/worktree/focus-worktree-state.d.ts.map +1 -1
  362. package/dist/worktree/focus-worktree-state.js +1 -0
  363. package/dist/worktree/focus-worktree-state.js.map +1 -1
  364. package/dist/worktree/provision.d.ts.map +1 -1
  365. package/dist/worktree/provision.js +1 -0
  366. package/dist/worktree/provision.js.map +1 -1
  367. package/dist/worktree/safety.d.ts.map +1 -1
  368. package/dist/worktree/safety.js +1 -0
  369. package/dist/worktree/safety.js.map +1 -1
  370. package/package.json +1 -1
@@ -0,0 +1,250 @@
1
+ // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
+ // Pinned by: packages/daemon/src/composition/runtime-delivery-advance-context.test.ts,
3
+ // packages/daemon/src/integration/advancement-path-parity.test.ts,
4
+ // packages/daemon/src/integration/last-shortfall-judgment-round-trip.test.ts,
5
+ // packages/daemon/src/integration/shortfall-park-incident-regression.test.ts,
6
+ // packages/daemon/src/integration/shortfall-rework-owner-regression.test.ts,
7
+ // packages/daemon/src/integration/verification-history-round-trip.test.ts,
8
+ // packages/daemon/src/verify/outcome-routing/shortfall-rework-issue.test.ts,
9
+ // packages/daemon/src/verify/shortfalls/shortfall-rework-hold.test.ts
10
+ // PINNED-BY-END
11
+ /**
12
+ * A verify SHORTFALL sent back to re-work files the work that closes it.
13
+ *
14
+ * A shortfall is a judgement, not a failing check: the gate passed on the commit
15
+ * and the reconciliation found that the diff does not deliver what the tree
16
+ * declares for a node. The re-work route carries that gap on gate_state -- and
17
+ * gate_state is not work. A delivery whose issues are all Done then has nothing a
18
+ * coding pass owns: no team is spawned for it, every advance path reads it as
19
+ * finished, and it returns to verify with nobody having seen the gap. So the gap
20
+ * itself becomes the issue: ONE Bug on the judged delivery naming every node, what
21
+ * was declared, what was achieved and why it falls short, filed BEFORE the route
22
+ * (verify/outcome-routing/verification-feedback.ts requeueShortfallAsRework), so
23
+ * the re-work re-entry finds open owed work and an armed focus spawns a coding
24
+ * pass holding it.
25
+ *
26
+ * WHOSE: always the judged delivery's. A shortfall is rendered per delivery, on
27
+ * that delivery's own declared targets, so there is no owner to attribute -- unlike
28
+ * a branch-level gate red (verify/outcome-routing/verification-rework-issue.ts).
29
+ *
30
+ * WHICH JUDGEMENT a Bug is for is in its title: the judged commit and a digest of
31
+ * the shortfall's signature (verify/shortfalls/shortfall-repeat.ts: the nodes and
32
+ * their declared claims, never the model-worded reason). That prefix is the Bug's
33
+ * FAMILY. A different commit or a different gap is a different family and files
34
+ * its own first Bug.
35
+ *
36
+ * HOW MANY: a judgement can be rendered again on the same commit set, so the gate
37
+ * rework convention (one Bug per commit, never filed again) does not fit. Within a
38
+ * family: while an attempt is OPEN nothing is filed; once every earlier attempt is
39
+ * closed and the same judgement stands again, the next attempt is filed, numbered.
40
+ * The open one is always the newest, and the count of closed attempts says how
41
+ * often the gap came back unanswered. "Open" is the one owed-work definition
42
+ * (delivery/recorded-concerns.ts splitOpenWork), so a Bug the filing calls open is
43
+ * a Bug the spawn and advance paths call owed.
44
+ *
45
+ * Its title prefix is its own (types/issue-status.ts SHORTFALL_REWORK_TITLE_PREFIX):
46
+ * the gate prefix is keyed on by readers that would take a shortfall Bug for the
47
+ * rework of a red at the same commit. It is never a recorded review concern.
48
+ *
49
+ * The description is built under ISSUE_DESCRIPTION_BUDGET
50
+ * (types/issue-description-budget.ts): the instructions are fixed text written
51
+ * first and never cut, and the gaps are filled into what is left -- every one
52
+ * shown, shown with clipped fields, or counted.
53
+ *
54
+ * Best-effort: a read or create failure is logged and files nothing -- it must
55
+ * never block the route it rides with. The filing is then OWED, and the poll pass
56
+ * retries it and holds the delivery until an owner exists
57
+ * (verify/shortfalls/shortfall-rework-hold.ts).
58
+ *
59
+ * History: docs/daemon/history-verify.md (verify/outcome-routing/shortfall-rework-issue.ts).
60
+ *
61
+ * @module verify/outcome-routing/shortfall-rework-issue
62
+ */
63
+ import { createHash } from 'node:crypto';
64
+ import { parseShortfallRepeat, readShortfallPark, readVerificationHistory, } from '../../queries/delivery-gate-state/delivery-gate-state.js';
65
+ import { CONTEXT_GROUP_TYPE, SHORTFALL_REWORK_TITLE_PREFIX } from '../../types/issue-status.js';
66
+ import { NO_RECORDED_CONCERNS, splitOpenWork } from '../../delivery/recorded-concerns.js';
67
+ import { ISSUE_DESCRIPTION_BUDGET, ISSUE_DESCRIPTION_FIELD_CAP, linesCost, } from '../../types/issue-description-budget.js';
68
+ import { buildGateVerdictLines, gateVerdictFromGateState, HELD_BY_SHORTFALL } from '../../prompt-sections/gate-verdict-section.js';
69
+ import { shortfallReconciliationFromGateState } from '../../prompt-sections/prompt-listing.js';
70
+ import { shortfallGapLines, unjudgedGapNote } from '../../prompt-sections/shortfall-gap-lines.js';
71
+ import { normalizeShortfallSignature, shortfallDetailSignature } from '../shortfalls/shortfall-repeat.js';
72
+ import { createLogger } from '../../log/daemon-log.js';
73
+ const log = createLogger({ module: 'verification' });
74
+ /**
75
+ * The shortfall re-work a delivery's gate_state carries LIVE, or null. Null for a
76
+ * PARK (the unclearable-claim hold, or a standing park record: verify's own
77
+ * terminal state, released by a ruling, never re-worked), for a gate with no
78
+ * shortfall detail, and for one whose only shortfall trace is the repeat a later
79
+ * rejection carries under its history -- that delivery is another gate's.
80
+ * Defensive over the loosely typed JSONB. Pure.
81
+ */
82
+ export function readLiveShortfallRework(gateState) {
83
+ const shortfalls = shortfallReconciliationFromGateState(gateState);
84
+ if (shortfalls === null || readShortfallPark(gateState) !== null)
85
+ return null;
86
+ const detail = gateState.shortfallReconciliation;
87
+ if (detail.unclearableClaim === true)
88
+ return null;
89
+ const repeat = parseShortfallRepeat(detail.repeat);
90
+ return {
91
+ sha: readVerificationHistory(gateState).judgedCommit?.sha ?? null,
92
+ shortfalls,
93
+ gateVerdict: gateVerdictFromGateState(gateState, ['shortfallReconciliation']),
94
+ commitSet: repeat?.commitSet ?? null,
95
+ rulingsFingerprint: repeat?.rulingsFingerprint,
96
+ };
97
+ }
98
+ /** A short, stable digest of the judgement's shortfall signature (its nodes and declared claims). Pure. */
99
+ function gapDigest(shortfalls) {
100
+ const signature = normalizeShortfallSignature(shortfallDetailSignature(shortfalls));
101
+ return createHash('sha256').update(signature).digest('hex').slice(0, 8);
102
+ }
103
+ /**
104
+ * The title prefix every Bug filed for this judgement shares -- its FAMILY (module
105
+ * header): the judged commit and the gap's digest. Pure.
106
+ */
107
+ export function shortfallReworkFamily(judgment) {
108
+ const at = judgment.sha ? judgment.sha.slice(0, 12) : 'an unrecorded commit';
109
+ return `${SHORTFALL_REWORK_TITLE_PREFIX} ${at} [gap ${gapDigest(judgment.shortfalls)}]:`;
110
+ }
111
+ /** The title of a family's first Bug; a later attempt appends its number. Pure. */
112
+ export function shortfallReworkTitle(judgment) {
113
+ const nodes = new Set(judgment.shortfalls.map((s) => s.nodeId)).size;
114
+ return `${shortfallReworkFamily(judgment)} close the declared-vs-achieved gap on ${nodes} node(s)`;
115
+ }
116
+ /** The Bugs a delivery's issues hold for this judgement, and which of them are open. Pure. */
117
+ export function shortfallReworkFamilyState(issues, judgment) {
118
+ const family = shortfallReworkFamily(judgment);
119
+ const filed = issues.filter((i) => i.issueType !== CONTEXT_GROUP_TYPE && i.title.startsWith(family));
120
+ // A shortfall Bug is never a recorded concern, so open IS owed.
121
+ const open = splitOpenWork(filed.map((issue) => ({ id: issue.id ?? '', status: issue.status, issue })), NO_RECORDED_CONCERNS)
122
+ .open.map((entry) => entry.issue);
123
+ return { filed, open };
124
+ }
125
+ /** The least room one of a gap's texts is clipped into; below it the gap is counted, not shown. */
126
+ const MIN_GAP_FIELD = 80;
127
+ /** One gap as the description lists it (a node with no judgment says so), each text clipped to `cap`. Pure. */
128
+ function gapLines(gap, cap) {
129
+ return shortfallGapLines(gap, '', cap);
130
+ }
131
+ /**
132
+ * The gaps rendered into `budget` characters: every gap at the widest field cap
133
+ * that fits, and -- only when even the narrowest readable cap overruns -- as many
134
+ * as fit, with the rest counted and pointed at the delivery's gate_state. Pure.
135
+ */
136
+ function budgetedGapLines(gaps, budget) {
137
+ const more = (n) => `- ... and ${n} more node(s) -- read them on the delivery's gate_state (shortfallReconciliation)`;
138
+ for (let shown = gaps.length; shown > 0; shown--) {
139
+ const omitted = gaps.length - shown;
140
+ for (const cap of [ISSUE_DESCRIPTION_FIELD_CAP, ISSUE_DESCRIPTION_FIELD_CAP / 2, MIN_GAP_FIELD]) {
141
+ const lines = [...gaps.slice(0, shown).flatMap((g) => gapLines(g, cap)), ...(omitted > 0 ? [more(omitted)] : [])];
142
+ if (linesCost(lines) <= budget)
143
+ return { lines, omitted };
144
+ }
145
+ }
146
+ return { lines: [more(gaps.length)], omitted: gaps.length };
147
+ }
148
+ /** `lines` followed by a blank line, or nothing when there are none. Pure. */
149
+ function withBlankAfter(lines) {
150
+ return lines.length > 0 ? [...lines, ''] : [];
151
+ }
152
+ /**
153
+ * The Bug's description, within ISSUE_DESCRIPTION_BUDGET whatever the gaps hold
154
+ * (module header). The instructions come first and are never cut: what the hold
155
+ * is, what closes it, what a team that disputes the judgement does, and -- when
156
+ * some node carries no judgment -- that it is not a gap in the diff. Pure.
157
+ */
158
+ export function shortfallReworkDescription(deliveryId, judgment) {
159
+ const verdict = buildGateVerdictLines(judgment.gateVerdict, { heldBy: HELD_BY_SHORTFALL });
160
+ const head = [
161
+ `Verify held this delivery on a declared-vs-achieved gap${judgment.sha ? ` at commit ${judgment.sha}` : ''}: the diff does not ` +
162
+ 'deliver what the reality tree declares for the node(s) below. This is NOT a failing check -- the gap, not a test, holds ' +
163
+ 'the delivery -- and no open issue carried it, so the daemon filed this one.',
164
+ '',
165
+ ...(verdict.length > 0 ? [...verdict, ''] : []),
166
+ `TO CLOSE IT: close the gap in the diff, commit with the trailer \`Telora-Delivery: ${deliveryId}\`, and move this issue to ` +
167
+ 'Done. The daemon re-judges the delivery on the new commit -- do not replay the gate by hand.',
168
+ '',
169
+ 'IF YOU BELIEVE THE JUDGEMENT IS WRONG: a coding session cannot rule a node met. Move this issue to Done stating why. ' +
170
+ 'Verify then judges the unchanged commits again, and a shortfall that repeats on an unchanged commit set parks the ' +
171
+ 'delivery and asks an operator to rule its nodes.',
172
+ '',
173
+ // A node the judge rendered no judgment for is not a gap in the team's diff: say so before the list.
174
+ ...withBlankAfter(unjudgedGapNote(judgment.shortfalls, '', 'this issue')),
175
+ ];
176
+ const count = (omitted) => `Declared-vs-achieved gap(s): ${judgment.shortfalls.length} total, ${omitted} omitted from this list:`;
177
+ const gaps = budgetedGapLines(judgment.shortfalls, ISSUE_DESCRIPTION_BUDGET - linesCost(head) - count(judgment.shortfalls.length).length - 1);
178
+ return [...head, count(gaps.omitted), ...gaps.lines].join('\n');
179
+ }
180
+ /** The title of the Bug that carries the gap after a filing, or null when none does. Pure. */
181
+ export function shortfallReworkIssueTitleOf(outcome) {
182
+ return outcome.filed || outcome.reason === 'already_open' ? outcome.title : null;
183
+ }
184
+ /**
185
+ * File the judgement's Bug on `deliveryId` unless an attempt of its family is
186
+ * open (module header): the family's first Bug, or -- every earlier attempt
187
+ * closed -- the next numbered one. Never throws.
188
+ */
189
+ export async function fileShortfallReworkIssue(deliveryId, judgment, deps) {
190
+ let issues;
191
+ try {
192
+ issues = await deps.getDeliveryIssues(deliveryId);
193
+ }
194
+ catch (err) {
195
+ log.warn(`[verification] shortfall rework issue: issues read failed for delivery ${deliveryId} (the filing is owed; retried):`, err.message);
196
+ return { filed: false, reason: 'read_failed' };
197
+ }
198
+ const family = shortfallReworkFamilyState(issues, judgment);
199
+ const open = family.open[0];
200
+ if (open)
201
+ return { filed: false, reason: 'already_open', title: open.title };
202
+ const attempt = family.filed.length + 1;
203
+ const base = shortfallReworkTitle(judgment);
204
+ const title = attempt === 1 ? base : `${base} (attempt ${attempt})`;
205
+ try {
206
+ const issueId = await deps.createIssue(deliveryId, title, shortfallReworkDescription(deliveryId, judgment), 'Bug', 'P0');
207
+ log.info(`[verification] filed shortfall rework Bug "${title}" on delivery ${deliveryId} (issue ${issueId})`);
208
+ return { filed: true, issueId, title, attempt };
209
+ }
210
+ catch (err) {
211
+ log.warn(`[verification] shortfall rework issue: create failed for delivery ${deliveryId} (the filing is owed; retried):`, err.message);
212
+ return { filed: false, reason: 'create_failed' };
213
+ }
214
+ }
215
+ /**
216
+ * Whether a delivery carries a live shortfall re-work for which NO Bug was ever
217
+ * filed -- the filing failed, so the gap has no owner and no team was handed it.
218
+ * A family that holds a Bug, open or closed, is owned: a team was given the gap,
219
+ * and what it did with it is verify's to judge. Pure.
220
+ */
221
+ export function shortfallReworkUnowned(gateState, issues) {
222
+ const rework = readLiveShortfallRework(gateState);
223
+ return rework !== null && shortfallReworkFamilyState(issues, rework).filed.length === 0;
224
+ }
225
+ /** deliveryId -> the judgement whose unowned hold was last logged (one line each, not one per exit). */
226
+ const unownedLogged = new Map();
227
+ /**
228
+ * The team-path half of the owner rule: a delivery whose shortfall has no Bug yet
229
+ * (shortfallReworkUnowned) is not returned to verify by a team's exit or a lead's
230
+ * turn end -- the poll pass files the owed Bug first
231
+ * (verify/shortfalls/shortfall-rework-hold.ts). Once a Bug of the judgement
232
+ * exists, open or closed, the team paths return the delivery as before: that is
233
+ * what lets a shortfall no re-work can move repeat up to its park. Logs once per
234
+ * judgement.
235
+ */
236
+ export function holdsUnownedShortfallRework(delivery, issues) {
237
+ const rework = readLiveShortfallRework(delivery.gateState);
238
+ if (rework === null || shortfallReworkFamilyState(issues, rework).filed.length > 0) {
239
+ unownedLogged.delete(delivery.id);
240
+ return false;
241
+ }
242
+ const family = shortfallReworkFamily(rework);
243
+ if (unownedLogged.get(delivery.id) !== family) {
244
+ unownedLogged.set(delivery.id, family);
245
+ log.info(`[verification] delivery "${delivery.name}" (${delivery.id}) is not returned to verify: its verify shortfall has no rework Bug yet `
246
+ + '(the filing is owed), so no team was handed the gap');
247
+ }
248
+ return true;
249
+ }
250
+ //# sourceMappingURL=shortfall-rework-issue.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"shortfall-rework-issue.js","sourceRoot":"","sources":["../../../src/verify/outcome-routing/shortfall-rework-issue.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"verification-evidence-unavailable-feedback.d.ts","sourceRoot":"","sources":["../../../src/verify/outcome-routing/verification-evidence-unavailable-feedback.ts"],"names":[],"mappings":"AA6BA,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,yBAAyB,EAE/B,MAAM,0DAA0D,CAAC;AAElE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AAItF,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAA4C,KAAK,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAExG,OAAO,EAA+B,KAAK,eAAe,EAAE,MAAM,gCAAgC,CAAC;AASnG,4GAA4G;AAC5G,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,yBAAyB,GAAG,iBAAiB,CAOtG;AAED,sGAAsG;AACtG,wBAAgB,qCAAqC,CACnD,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,yBAAyB,GAChC,MAAM,CA8DR;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAsB,kCAAkC,CACtD,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,YAAY,GAAG,cAAc,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC,EACzH,KAAK,EAAE,IAAI,CAAC,yBAAyB,EAAE,QAAQ,CAAC,EAChD,cAAc,EAAE,MAAM,EACtB,CAAC,EAAE,oBAAoB,GAAG,eAAe,EACzC,IAAI,GAAE,iBAAsB,GAC3B,OAAO,CAAC;IAAE,YAAY,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,yBAAyB,CAAA;CAAE,CAAC,CAsE1F"}
1
+ {"version":3,"file":"verification-evidence-unavailable-feedback.d.ts","sourceRoot":"","sources":["../../../src/verify/outcome-routing/verification-evidence-unavailable-feedback.ts"],"names":[],"mappings":"AAgCA,OAAO,EACL,KAAK,iBAAiB,EACtB,KAAK,yBAAyB,EAE/B,MAAM,0DAA0D,CAAC;AAElE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4CAA4C,CAAC;AAItF,OAAO,EAEL,KAAK,oBAAoB,EAC1B,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAA4C,KAAK,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAExG,OAAO,EAA+B,KAAK,eAAe,EAAE,MAAM,gCAAgC,CAAC;AASnG,4GAA4G;AAC5G,wBAAgB,iCAAiC,CAAC,MAAM,EAAE,yBAAyB,GAAG,iBAAiB,CAOtG;AAED,sGAAsG;AACtG,wBAAgB,qCAAqC,CACnD,YAAY,EAAE,MAAM,EACpB,MAAM,EAAE,yBAAyB,GAChC,MAAM,CA8DR;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAsB,kCAAkC,CACtD,CAAC,EAAE,IAAI,CAAC,mBAAmB,EAAE,YAAY,GAAG,cAAc,GAAG,SAAS,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,mBAAmB,EAAE,WAAW,CAAC,CAAC,EACzH,KAAK,EAAE,IAAI,CAAC,yBAAyB,EAAE,QAAQ,CAAC,EAChD,cAAc,EAAE,MAAM,EACtB,CAAC,EAAE,oBAAoB,GAAG,eAAe,EACzC,IAAI,GAAE,iBAAsB,GAC3B,OAAO,CAAC;IAAE,YAAY,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,yBAAyB,CAAA;CAAE,CAAC,CAsE1F"}
@@ -1,9 +1,12 @@
1
1
  // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
2
  // Pinned by: packages/daemon/src/git/merge-sha-observation-fault.test.ts,
3
+ // packages/daemon/src/integration/last-shortfall-judgment-round-trip.test.ts,
4
+ // packages/daemon/src/integration/shortfall-rework-owner-regression.test.ts,
3
5
  // packages/daemon/src/integration/verification-history-round-trip.test.ts,
4
6
  // packages/daemon/src/verify/attribution/misattributed-hold.test.ts,
5
7
  // packages/daemon/src/verify/outcome-routing/verify-evidence-unavailable.test.ts,
6
- // packages/daemon/src/verify/run-selection/verification-default-on.test.ts
8
+ // packages/daemon/src/verify/run-selection/verification-default-on.test.ts,
9
+ // packages/daemon/src/verify/shortfalls/shortfall-rework-hold.test.ts
7
10
  // PINNED-BY-END
8
11
  /**
9
12
  * Evidence-unavailable instrument-fault feedback: bounded re-work re-entry.
@@ -1 +1 @@
1
- {"version":3,"file":"verification-evidence-unavailable-feedback.js","sourceRoot":"","sources":["../../../src/verify/outcome-routing/verification-evidence-unavailable-feedback.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verification-evidence-unavailable-feedback.js","sourceRoot":"","sources":["../../../src/verify/outcome-routing/verification-evidence-unavailable-feedback.ts"],"names":[],"mappings":"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"}
@@ -13,7 +13,12 @@
13
13
  * 2. injects the failure context into the live team session when one is
14
14
  * running (reusing the same leadStdin channel the directive inject uses),
15
15
  * 3. leaves the failure in gate_state so the requeue/respawn prompt can carry
16
- * it when no team is live (rendered by the wake/resume prompt builders).
16
+ * it when no team is live (rendered by the wake/resume prompt builders),
17
+ * 4. files the failure as OPEN WORK before the route -- a gate red its rework
18
+ * Bug (verification-rework-issue.ts), a shortfall its own
19
+ * (shortfall-rework-issue.ts) -- because gate_state is not work: with every
20
+ * issue Done nothing would spawn a coding pass or keep the delivery from
21
+ * walking back to verify unseen.
17
22
  *
18
23
  * The deterministic-failure, shortfall, and instrument-fault re-queues all cross
19
24
  * verify -> verify_failed through the same resolveReconciledWrite choke point
@@ -30,6 +35,7 @@ import type { resolveReconciledWrite } from '../../delivery/delivery-reconciler-
30
35
  import type { getActiveTeams } from '../../daemon-state/focus-team-state.js';
31
36
  import type { FileEscalationIdempotentParams, FileEscalationIdempotentResult } from '../../supervision/escalation-suppression.js';
32
37
  import { type ReworkIssueDeps } from './verification-rework-issue.js';
38
+ import { type ShortfallReworkIssueDeps, type ShortfallReworkIssueOutcome } from './shortfall-rework-issue.js';
33
39
  import type { StrategyResult } from '../deterministic-gate/verification-deterministic.js';
34
40
  import { type FailureSignatureDeps } from './failure-signature.js';
35
41
  import type { ShortfallRepeat } from '../shortfalls/shortfall-repeat.js';
@@ -123,6 +129,12 @@ export declare function deliverVerificationFailureFeedback(v: Pick<PendingVerifi
123
129
  injected: boolean;
124
130
  detail: VerificationFailureDetail;
125
131
  }>;
132
+ /**
133
+ * The gate_state entries for a judgment's shortfalls: each node's declared /
134
+ * achieved / reason, the diff citation when cited, and `unjudged` when the node
135
+ * was not judged. The one mapping every shortfall writer uses. Pure.
136
+ */
137
+ export declare function shortfallDetailEntries(shortfalls: readonly TargetShortfall[]): ShortfallReconciliationDetail['shortfalls'];
126
138
  /** Build the gate_state for a verify-shortfall reconciliation hold. Pure -- exported for testing. */
127
139
  export declare function buildShortfallGateState(detail: ShortfallReconciliationDetail): DeliveryGateState;
128
140
  /**
@@ -162,6 +174,8 @@ export interface ShortfallRequeueDeps extends VerificationFeedbackDeps {
162
174
  */
163
175
  readGateVerdict: (target: JudgedCommitTarget) => GateVerdictSummary | null;
164
176
  }
177
+ /** The shortfall re-work re-entry's deps: the shared re-entry machinery plus the filing of the gap as a Bug. */
178
+ export type ShortfallReworkDeps = ShortfallRequeueDeps & ShortfallReworkIssueDeps;
165
179
  /**
166
180
  * Read the prior gate_state; null (logged) when the read fails. A read we could
167
181
  * not perform must not crash the tick or mislabel a repeat. It degrades to "no
@@ -190,17 +204,29 @@ export declare function readPriorGateStateBestEffort(d: Pick<ShortfallRequeueDep
190
204
  * blocking open work; that is why it reached verify).
191
205
  *
192
206
  * The declared/achieved/reason detail rides in gate_state (shortfall guard) so
193
- * the re-queued team's resume/wake prompt carries the specific gap; when a
194
- * coding team is still live we also inject it immediately (best-effort fast
195
- * path). Best-effort throughout -- a feedback failure must never crash the tick.
207
+ * the re-queued team's spawn, resume and wake prompts carry the specific gap; when
208
+ * a coding team is still live we also inject it immediately (best-effort fast
209
+ * path).
210
+ *
211
+ * THE GAP IS FILED AS A BUG BEFORE THE ROUTE (shortfall-rework-issue.ts), on the
212
+ * judged delivery, whether or not a team is live: gate_state is not work, and a
213
+ * delivery whose issues are all Done would otherwise re-enter with nothing a
214
+ * coding pass owns -- no team spawned for it, and the gap unseen. The reconciler
215
+ * input below still says `issues: []`: the decision is verify's (gaps_found), and
216
+ * the Bug is what the re-work finds once it lands.
217
+ *
218
+ * Best-effort throughout -- a feedback failure must never crash the tick. A
219
+ * filing that fails is owed and retried by the poll pass, which holds the
220
+ * delivery until it lands (verify/shortfalls/shortfall-rework-hold.ts).
196
221
  */
197
- export declare function requeueShortfallAsRework(v: Pick<PendingVerification, 'deliveryId' | 'deliveryName' | 'focusId'> & Partial<Pick<PendingVerification, 'productId'>>, shortfalls: readonly TargetShortfall[], organizationId: string, d: ShortfallRequeueDeps, opts?: ReworkRunJudgment & MisattributedOpt & {
222
+ export declare function requeueShortfallAsRework(v: Pick<PendingVerification, 'deliveryId' | 'deliveryName' | 'focusId'> & Partial<Pick<PendingVerification, 'productId'>>, shortfalls: readonly TargetShortfall[], organizationId: string, d: ShortfallReworkDeps, opts?: ReworkRunJudgment & MisattributedOpt & {
198
223
  repeat?: ShortfallRepeat;
199
224
  priorGateState?: DeliveryGateState | null;
200
225
  }): Promise<{
201
226
  transitioned: boolean;
202
227
  injected: boolean;
203
228
  detail: ShortfallReconciliationDetail;
229
+ filing: ShortfallReworkIssueOutcome;
204
230
  }>;
205
231
  /** Injected IO for the unclearable-shortfall escalation path. */
206
232
  export interface UnclearableShortfallDeps extends VerificationFeedbackDeps {
@@ -236,8 +262,13 @@ export declare function escalateUnclearableShortfall(v: Pick<PendingVerification
236
262
  injected: boolean;
237
263
  detail: ShortfallReconciliationDetail;
238
264
  }>;
239
- /** Injected IO for shortfall routing; unions the re-work + escalation deps (the prior-state read comes with the re-work deps). */
240
- export interface ShortfallRouteDeps extends ShortfallRequeueDeps, UnclearableShortfallDeps {
265
+ /**
266
+ * Injected IO for shortfall routing; unions the re-work + escalation deps (the
267
+ * prior-state read comes with the re-work deps) and the filing of a re-worked gap
268
+ * as a Bug. The PARK branch files nothing: a park is released by a ruling, not
269
+ * worked by a team.
270
+ */
271
+ export interface ShortfallRouteDeps extends ShortfallRequeueDeps, UnclearableShortfallDeps, ShortfallReworkIssueDeps {
241
272
  /** Override the park limit for tests; defaults to SHORTFALL_PARK_REPEAT_LIMIT. */
242
273
  threshold?: number;
243
274
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"verification-feedback.d.ts","sourceRoot":"","sources":["../../../src/verify/outcome-routing/verification-feedback.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"verification-feedback.d.ts","sourceRoot":"","sources":["../../../src/verify/outcome-routing/verification-feedback.ts"],"names":[],"mappings":"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"}
@@ -1,23 +1,5 @@
1
1
  // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
- // Pinned by: packages/daemon/src/integration/delivery-gate-write-interleaving.test.ts,
3
- // packages/daemon/src/integration/explicit-verdict-reuse.test.ts,
4
- // packages/daemon/src/integration/focus-commit-verdict-scenario.test.ts,
5
- // packages/daemon/src/integration/review-verdict-ruling-release.test.ts,
6
- // packages/daemon/src/integration/shortfall-park-incident-regression.test.ts,
7
- // packages/daemon/src/integration/shortfall-ruling-disposes-proposals-regression.test.ts,
8
- // packages/daemon/src/integration/shortfall-ruling-release.test.ts,
9
- // packages/daemon/src/integration/verification-history-round-trip.test.ts,
10
- // packages/daemon/src/integration/verification-rework-resume-verdict.test.ts,
11
- // packages/daemon/src/integration/verify-failure-rework-route.test.ts,
12
- // packages/daemon/src/supervision/stall-detectors.test.ts,
13
- // packages/daemon/src/verify/attribution/misattributed-hold.test.ts,
14
- // packages/daemon/src/verify/engine/verification-commit-sharing.test.ts,
15
- // packages/daemon/src/verify/outcome-routing/verification-feedback.test.ts,
16
- // packages/daemon/src/verify/outcome-routing/verify-evidence-unavailable.test.ts,
17
- // packages/daemon/src/verify/run-selection/verification-default-on.test.ts,
18
- // packages/daemon/src/verify/shortfalls/parked-shortfall-reuse.test.ts,
19
- // packages/daemon/src/verify/shortfalls/shortfall-park-escalation.test.ts,
20
- // packages/daemon/src/verify/shortfalls/shortfall-routing.test.ts
2
+ // Pinned by: 26 tests -- run: npm run gen:pinned-by -- --list packages/daemon/src/verify/outcome-routing/verification-feedback.ts
21
3
  // PINNED-BY-END
22
4
  /**
23
5
  * Verification-failure feedback loop.
@@ -34,7 +16,12 @@
34
16
  * 2. injects the failure context into the live team session when one is
35
17
  * running (reusing the same leadStdin channel the directive inject uses),
36
18
  * 3. leaves the failure in gate_state so the requeue/respawn prompt can carry
37
- * it when no team is live (rendered by the wake/resume prompt builders).
19
+ * it when no team is live (rendered by the wake/resume prompt builders),
20
+ * 4. files the failure as OPEN WORK before the route -- a gate red its rework
21
+ * Bug (verification-rework-issue.ts), a shortfall its own
22
+ * (shortfall-rework-issue.ts) -- because gate_state is not work: with every
23
+ * issue Done nothing would spawn a coding pass or keep the delivery from
24
+ * walking back to verify unseen.
38
25
  *
39
26
  * The deterministic-failure, shortfall, and instrument-fault re-queues all cross
40
27
  * verify -> verify_failed through the same resolveReconciledWrite choke point
@@ -51,6 +38,7 @@ import { carryVerificationHistory, judgedFailedSha, } from '../../queries/delive
51
38
  import { DETERMINISTIC_VERIFICATION_GUARD, SHORTFALL_RECONCILIATION_GUARD, UNCLEARABLE_SHORTFALL_GUARD, } from '../../queries/delivery-gate-state/verify-own-holds.js';
52
39
  import { describeParseFailure, parseFailingTests } from '../deterministic-gate/verification-failure-parser.js';
53
40
  import { fileVerificationReworkIssue } from './verification-rework-issue.js';
41
+ import { fileShortfallReworkIssue, shortfallReworkIssueTitleOf, } from './shortfall-rework-issue.js';
54
42
  import { failedRunVerdictPath } from '../gate-verdicts/commit-verdict-record.js';
55
43
  import { computeFailureSignatureRecord, } from './failure-signature.js';
56
44
  import { classifyShortfallPark, commitSetFingerprint, withShortfallPark } from '../shortfalls/shortfall-park.js';
@@ -210,6 +198,21 @@ export async function deliverVerificationFailureFeedback(v, result, organization
210
198
  // ---------------------------------------------------------------------------
211
199
  // Shortfall-reconciliation gate hold (distinct origin from a deterministic run)
212
200
  // ---------------------------------------------------------------------------
201
+ /**
202
+ * The gate_state entries for a judgment's shortfalls: each node's declared /
203
+ * achieved / reason, the diff citation when cited, and `unjudged` when the node
204
+ * was not judged. The one mapping every shortfall writer uses. Pure.
205
+ */
206
+ export function shortfallDetailEntries(shortfalls) {
207
+ return shortfalls.map((s) => ({
208
+ nodeId: s.nodeId,
209
+ declared: s.declaredStatement,
210
+ achieved: s.achievedStatement,
211
+ reason: s.reason,
212
+ ...(s.diffCitation ? { diffCitation: s.diffCitation } : {}),
213
+ ...(s.unjudged ? { unjudged: s.unjudged } : {}),
214
+ }));
215
+ }
213
216
  /** Build the gate_state for a verify-shortfall reconciliation hold. Pure -- exported for testing. */
214
217
  export function buildShortfallGateState(detail) {
215
218
  return {
@@ -229,13 +232,7 @@ export function buildShortfallGateState(detail) {
229
232
  export async function deliverShortfallFailureFeedback(v, shortfalls, organizationId, d) {
230
233
  const detail = {
231
234
  heldAt: d.now(),
232
- shortfalls: shortfalls.map((s) => ({
233
- nodeId: s.nodeId,
234
- declared: s.declaredStatement,
235
- achieved: s.achievedStatement,
236
- reason: s.reason,
237
- ...(s.diffCitation ? { diffCitation: s.diffCitation } : {}),
238
- })),
235
+ shortfalls: shortfallDetailEntries(shortfalls),
239
236
  };
240
237
  const gateState = buildShortfallGateState(detail);
241
238
  let gateWritten = false;
@@ -298,9 +295,20 @@ export async function readPriorGateStateBestEffort(d, deliveryId) {
298
295
  * blocking open work; that is why it reached verify).
299
296
  *
300
297
  * The declared/achieved/reason detail rides in gate_state (shortfall guard) so
301
- * the re-queued team's resume/wake prompt carries the specific gap; when a
302
- * coding team is still live we also inject it immediately (best-effort fast
303
- * path). Best-effort throughout -- a feedback failure must never crash the tick.
298
+ * the re-queued team's spawn, resume and wake prompts carry the specific gap; when
299
+ * a coding team is still live we also inject it immediately (best-effort fast
300
+ * path).
301
+ *
302
+ * THE GAP IS FILED AS A BUG BEFORE THE ROUTE (shortfall-rework-issue.ts), on the
303
+ * judged delivery, whether or not a team is live: gate_state is not work, and a
304
+ * delivery whose issues are all Done would otherwise re-enter with nothing a
305
+ * coding pass owns -- no team spawned for it, and the gap unseen. The reconciler
306
+ * input below still says `issues: []`: the decision is verify's (gaps_found), and
307
+ * the Bug is what the re-work finds once it lands.
308
+ *
309
+ * Best-effort throughout -- a feedback failure must never crash the tick. A
310
+ * filing that fails is owed and retried by the poll pass, which holds the
311
+ * delivery until it lands (verify/shortfalls/shortfall-rework-hold.ts).
304
312
  */
305
313
  export async function requeueShortfallAsRework(v, shortfalls, organizationId, d, opts = {}) {
306
314
  // Usually a pass: a shortfall is judged only after the gate passed. Carried so
@@ -310,13 +318,7 @@ export async function requeueShortfallAsRework(v, shortfalls, organizationId, d,
310
318
  const detail = {
311
319
  ...(gateVerdict ? { gateVerdict } : {}),
312
320
  heldAt: d.now(),
313
- shortfalls: shortfalls.map((s) => ({
314
- nodeId: s.nodeId,
315
- declared: s.declaredStatement,
316
- achieved: s.achievedStatement,
317
- reason: s.reason,
318
- ...(s.diffCitation ? { diffCitation: s.diffCitation } : {}),
319
- })),
321
+ shortfalls: shortfallDetailEntries(shortfalls),
320
322
  // Persist the cross-iteration repeat state so the NEXT verify iteration can
321
323
  // compare against it and tell a changing (genuine) shortfall from an
322
324
  // identical (unclearable) one.
@@ -327,6 +329,9 @@ export async function requeueShortfallAsRework(v, shortfalls, organizationId, d,
327
329
  // its own repeat); the judged commit is replaced by this run's, with its verdict.
328
330
  // A shortfall sent back to re-work is not parked: any standing park is dropped.
329
331
  const gateState = withShortfallPark(stampReworkJudgment(carryVerificationHistory(opts.priorGateState ?? null, buildShortfallGateState(detail)), opts, detail.heldAt), null);
332
+ // The gap becomes open work BEFORE the route, so the re-work re-entry finds an
333
+ // issue a coding pass owns and an armed focus spawns one for it.
334
+ const filing = await fileShortfallReworkIssue(v.deliveryId, { sha: opts.judgedSha ?? null, shortfalls: detail.shortfalls, gateVerdict }, d);
330
335
  const decision = d.resolveReconciledWrite({
331
336
  input: {
332
337
  currentStatus: DELIVERY_STATUS.VERIFY,
@@ -359,7 +364,7 @@ export async function requeueShortfallAsRework(v, shortfalls, organizationId, d,
359
364
  // Do not retask a live review team (parity with directive inject guard).
360
365
  if (team && team.leadStdin && team.sessionType !== 'review') {
361
366
  try {
362
- d.sendMessage(team.leadStdin, buildShortfallInjectMessage(v.deliveryName, detail));
367
+ d.sendMessage(team.leadStdin, buildShortfallInjectMessage(v.deliveryName, detail, shortfallReworkIssueTitleOf(filing)));
363
368
  injected = true;
364
369
  }
365
370
  catch (err) {
@@ -367,7 +372,7 @@ export async function requeueShortfallAsRework(v, shortfalls, organizationId, d,
367
372
  }
368
373
  }
369
374
  }
370
- return { transitioned, injected, detail };
375
+ return { transitioned, injected, detail, filing };
371
376
  }
372
377
  /** Build the terminal-hold gate_state for an unclearable-claim shortfall. Pure -- exported for testing. */
373
378
  export function buildUnclearableShortfallGateState(detail) {
@@ -398,13 +403,7 @@ export function buildUnclearableShortfallGateState(detail) {
398
403
  export async function escalateUnclearableShortfall(v, shortfalls, repeat, organizationId, d, opts = {}) {
399
404
  const detail = {
400
405
  heldAt: d.now(),
401
- shortfalls: shortfalls.map((s) => ({
402
- nodeId: s.nodeId,
403
- declared: s.declaredStatement,
404
- achieved: s.achievedStatement,
405
- reason: s.reason,
406
- ...(s.diffCitation ? { diffCitation: s.diffCitation } : {}),
407
- })),
406
+ shortfalls: shortfallDetailEntries(shortfalls),
408
407
  repeat,
409
408
  unclearableClaim: true,
410
409
  ...misattributedField(opts.misattributed),