@telora/daemon 0.24.40 → 0.24.55

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (387) hide show
  1. package/build-info.json +9 -3
  2. package/dist/completion/completion-event/unfinished-work.d.ts +3 -3
  3. package/dist/completion/review-cycle-budget/review-loop-detection.d.ts.map +1 -1
  4. package/dist/completion/review-cycle-budget/review-loop-detection.js +2 -1
  5. package/dist/completion/review-cycle-budget/review-loop-detection.js.map +1 -1
  6. package/dist/completion/review-exit-holds/review-exit-verdict-gate.d.ts +1 -1
  7. package/dist/completion/review-exit-holds/review-exit-verdict-gate.d.ts.map +1 -1
  8. package/dist/completion/review-exit-holds/review-exit-verdict-gate.js +2 -3
  9. package/dist/completion/review-exit-holds/review-exit-verdict-gate.js.map +1 -1
  10. package/dist/completion/state-cascade/focus-next-step-read.d.ts +38 -0
  11. package/dist/completion/state-cascade/focus-next-step-read.d.ts.map +1 -0
  12. package/dist/completion/state-cascade/focus-next-step-read.js +188 -0
  13. package/dist/completion/state-cascade/focus-next-step-read.js.map +1 -0
  14. package/dist/completion/state-cascade/review-request-gate.d.ts.map +1 -1
  15. package/dist/completion/state-cascade/review-request-gate.js +1 -0
  16. package/dist/completion/state-cascade/review-request-gate.js.map +1 -1
  17. package/dist/completion/state-cascade/review-request-next-step.d.ts +56 -0
  18. package/dist/completion/state-cascade/review-request-next-step.d.ts.map +1 -0
  19. package/dist/completion/state-cascade/review-request-next-step.js +47 -0
  20. package/dist/completion/state-cascade/review-request-next-step.js.map +1 -0
  21. package/dist/completion/state-cascade/review-verify-judgment-gate.d.ts +1 -1
  22. package/dist/completion/state-cascade/review-verify-judgment-gate.d.ts.map +1 -1
  23. package/dist/completion/state-cascade/review-verify-judgment-gate.js +1 -0
  24. package/dist/completion/state-cascade/review-verify-judgment-gate.js.map +1 -1
  25. package/dist/completion/state-cascade/state-cascade.d.ts +12 -7
  26. package/dist/completion/state-cascade/state-cascade.d.ts.map +1 -1
  27. package/dist/completion/state-cascade/state-cascade.js +36 -105
  28. package/dist/completion/state-cascade/state-cascade.js.map +1 -1
  29. package/dist/composition/commit-gate-context.d.ts.map +1 -1
  30. package/dist/composition/commit-gate-context.js +1 -0
  31. package/dist/composition/commit-gate-context.js.map +1 -1
  32. package/dist/composition/daemon-contexts.js +1 -1
  33. package/dist/composition/execution-migrations-context.d.ts.map +1 -1
  34. package/dist/composition/execution-migrations-context.js +3 -1
  35. package/dist/composition/execution-migrations-context.js.map +1 -1
  36. package/dist/composition/execution-process-context.js +1 -1
  37. package/dist/composition/execution-recovery-context.d.ts +4 -3
  38. package/dist/composition/execution-recovery-context.d.ts.map +1 -1
  39. package/dist/composition/execution-recovery-context.js +6 -3
  40. package/dist/composition/execution-recovery-context.js.map +1 -1
  41. package/dist/composition/execution-worktree-context.js +1 -1
  42. package/dist/composition/focus-next-step-context.d.ts +19 -0
  43. package/dist/composition/focus-next-step-context.d.ts.map +1 -0
  44. package/dist/composition/focus-next-step-context.js +51 -0
  45. package/dist/composition/focus-next-step-context.js.map +1 -0
  46. package/dist/composition/runtime-contexts.d.ts.map +1 -1
  47. package/dist/composition/runtime-contexts.js +6 -18
  48. package/dist/composition/runtime-contexts.js.map +1 -1
  49. package/dist/composition/runtime-poll-context.d.ts +8 -53
  50. package/dist/composition/runtime-poll-context.d.ts.map +1 -1
  51. package/dist/composition/runtime-poll-context.js +35 -94
  52. package/dist/composition/runtime-poll-context.js.map +1 -1
  53. package/dist/composition/runtime-prd-context.d.ts +8 -0
  54. package/dist/composition/runtime-prd-context.d.ts.map +1 -1
  55. package/dist/composition/runtime-prd-context.js +32 -0
  56. package/dist/composition/runtime-prd-context.js.map +1 -1
  57. package/dist/composition/runtime-spawn-pass-context.d.ts.map +1 -1
  58. package/dist/composition/runtime-spawn-pass-context.js +2 -3
  59. package/dist/composition/runtime-spawn-pass-context.js.map +1 -1
  60. package/dist/composition/state-cascade-context.d.ts +2 -0
  61. package/dist/composition/state-cascade-context.d.ts.map +1 -1
  62. package/dist/composition/state-cascade-context.js +9 -0
  63. package/dist/composition/state-cascade-context.js.map +1 -1
  64. package/dist/composition/tower-pass-context.d.ts +6 -1
  65. package/dist/composition/tower-pass-context.d.ts.map +1 -1
  66. package/dist/composition/tower-pass-context.js +12 -2
  67. package/dist/composition/tower-pass-context.js.map +1 -1
  68. package/dist/composition/verification-context.d.ts.map +1 -1
  69. package/dist/composition/verification-context.js +15 -3
  70. package/dist/composition/verification-context.js.map +1 -1
  71. package/dist/config/live-daemon-config.js +1 -1
  72. package/dist/daemon-state/awaiting-slot.d.ts.map +1 -1
  73. package/dist/daemon-state/awaiting-slot.js +2 -0
  74. package/dist/daemon-state/awaiting-slot.js.map +1 -1
  75. package/dist/daemon-state/branch-removal-record.d.ts +30 -0
  76. package/dist/daemon-state/branch-removal-record.d.ts.map +1 -0
  77. package/dist/daemon-state/branch-removal-record.js +103 -0
  78. package/dist/daemon-state/branch-removal-record.js.map +1 -0
  79. package/dist/daemon-state/focus-team-state.js +1 -1
  80. package/dist/delivery/advance-hold.d.ts +8 -19
  81. package/dist/delivery/advance-hold.d.ts.map +1 -1
  82. package/dist/delivery/advance-hold.js +11 -36
  83. package/dist/delivery/advance-hold.js.map +1 -1
  84. package/dist/delivery/commit-verdict-hold.d.ts +1 -1
  85. package/dist/delivery/commit-verdict-hold.js +1 -1
  86. package/dist/delivery/recorded-concerns.d.ts.map +1 -1
  87. package/dist/delivery/recorded-concerns.js +0 -2
  88. package/dist/delivery/recorded-concerns.js.map +1 -1
  89. package/dist/directive/directive-queue.d.ts +4 -16
  90. package/dist/directive/directive-queue.d.ts.map +1 -1
  91. package/dist/directive/directive-queue.js +4 -12
  92. package/dist/directive/directive-queue.js.map +1 -1
  93. package/dist/directive/phase-sync.d.ts +1 -1
  94. package/dist/directive/phase-sync.js +1 -1
  95. package/dist/focus/crash-recovery.d.ts +10 -32
  96. package/dist/focus/crash-recovery.d.ts.map +1 -1
  97. package/dist/focus/crash-recovery.js +55 -150
  98. package/dist/focus/crash-recovery.js.map +1 -1
  99. package/dist/focus/daemon-contexts-runtime.d.ts +3 -3
  100. package/dist/focus/daemon-contexts-runtime.d.ts.map +1 -1
  101. package/dist/focus/daemon-contexts.js +1 -1
  102. package/dist/focus/directive-executor.d.ts.map +1 -1
  103. package/dist/focus/directive-executor.js +3 -7
  104. package/dist/focus/directive-executor.js.map +1 -1
  105. package/dist/focus/failed-head-rework-start.d.ts +61 -0
  106. package/dist/focus/failed-head-rework-start.d.ts.map +1 -0
  107. package/dist/focus/failed-head-rework-start.js +52 -0
  108. package/dist/focus/failed-head-rework-start.js.map +1 -0
  109. package/dist/focus/focus-activity-record.d.ts +4 -2
  110. package/dist/focus/focus-activity-record.d.ts.map +1 -1
  111. package/dist/focus/focus-activity-record.js +4 -2
  112. package/dist/focus/focus-activity-record.js.map +1 -1
  113. package/dist/focus/focus-liveness-pass.d.ts +62 -0
  114. package/dist/focus/focus-liveness-pass.d.ts.map +1 -0
  115. package/dist/focus/focus-liveness-pass.js +197 -0
  116. package/dist/focus/focus-liveness-pass.js.map +1 -0
  117. package/dist/focus/focus-poller-spawn.js +2 -2
  118. package/dist/focus/focus-poller-spawn.js.map +1 -1
  119. package/dist/focus/focus-poller-state.js +1 -1
  120. package/dist/focus/live-branch-preservation.d.ts +123 -0
  121. package/dist/focus/live-branch-preservation.d.ts.map +1 -0
  122. package/dist/focus/live-branch-preservation.js +192 -0
  123. package/dist/focus/live-branch-preservation.js.map +1 -0
  124. package/dist/focus/migration-claim-pass.d.ts +2 -0
  125. package/dist/focus/migration-claim-pass.d.ts.map +1 -1
  126. package/dist/focus/migration-claim-pass.js +57 -22
  127. package/dist/focus/migration-claim-pass.js.map +1 -1
  128. package/dist/focus/migration-held-set-publish.d.ts +28 -2
  129. package/dist/focus/migration-held-set-publish.d.ts.map +1 -1
  130. package/dist/focus/migration-held-set-publish.js +14 -0
  131. package/dist/focus/migration-held-set-publish.js.map +1 -1
  132. package/dist/focus/pending-spawn-pass-deps.d.ts.map +1 -1
  133. package/dist/focus/pending-spawn-pass-deps.js +2 -0
  134. package/dist/focus/pending-spawn-pass-deps.js.map +1 -1
  135. package/dist/focus/pending-spawn-review-next-step.d.ts +5 -11
  136. package/dist/focus/pending-spawn-review-next-step.d.ts.map +1 -1
  137. package/dist/focus/pending-spawn-review-next-step.js +26 -72
  138. package/dist/focus/pending-spawn-review-next-step.js.map +1 -1
  139. package/dist/focus/ready-focus-spawn-action.d.ts.map +1 -1
  140. package/dist/focus/ready-focus-spawn-action.js +2 -2
  141. package/dist/focus/ready-focus-spawn-action.js.map +1 -1
  142. package/dist/focus/review-refire-gate.d.ts +25 -0
  143. package/dist/focus/review-refire-gate.d.ts.map +1 -0
  144. package/dist/focus/review-refire-gate.js +68 -0
  145. package/dist/focus/review-refire-gate.js.map +1 -0
  146. package/dist/focus/verify-routing-passes.d.ts +8 -11
  147. package/dist/focus/verify-routing-passes.d.ts.map +1 -1
  148. package/dist/focus/verify-routing-passes.js +1 -2
  149. package/dist/focus/verify-routing-passes.js.map +1 -1
  150. package/dist/git/types.js +1 -1
  151. package/dist/prd/arm-refusal-streak.d.ts +102 -0
  152. package/dist/prd/arm-refusal-streak.d.ts.map +1 -0
  153. package/dist/prd/arm-refusal-streak.js +136 -0
  154. package/dist/prd/arm-refusal-streak.js.map +1 -0
  155. package/dist/prd/arm-refusal.d.ts.map +1 -1
  156. package/dist/prd/arm-refusal.js +7 -4
  157. package/dist/prd/arm-refusal.js.map +1 -1
  158. package/dist/prd/controller-shared.d.ts +40 -1
  159. package/dist/prd/controller-shared.d.ts.map +1 -1
  160. package/dist/prd/controller-shared.js +28 -2
  161. package/dist/prd/controller-shared.js.map +1 -1
  162. package/dist/prd/controller.d.ts.map +1 -1
  163. package/dist/prd/controller.js +3 -1
  164. package/dist/prd/controller.js.map +1 -1
  165. package/dist/prd/frontier-arming.d.ts +10 -2
  166. package/dist/prd/frontier-arming.d.ts.map +1 -1
  167. package/dist/prd/frontier-arming.js +91 -7
  168. package/dist/prd/frontier-arming.js.map +1 -1
  169. package/dist/prd/scoping-prompt.d.ts +8 -0
  170. package/dist/prd/scoping-prompt.d.ts.map +1 -1
  171. package/dist/prd/scoping-prompt.js +18 -0
  172. package/dist/prd/scoping-prompt.js.map +1 -1
  173. package/dist/prompt-sections/qa-failure-section.d.ts.map +1 -1
  174. package/dist/prompt-sections/qa-failure-section.js +3 -1
  175. package/dist/prompt-sections/qa-failure-section.js.map +1 -1
  176. package/dist/queries/api-client/shared.js +1 -1
  177. package/dist/queries/deliveries/deliveries.js +1 -1
  178. package/dist/queries/delivery-gate-state/delivery-gate-holds.d.ts +4 -3
  179. package/dist/queries/delivery-gate-state/delivery-gate-holds.d.ts.map +1 -1
  180. package/dist/queries/delivery-gate-state/delivery-gate-state.js +1 -1
  181. package/dist/queries/escalations/escalations.d.ts.map +1 -1
  182. package/dist/queries/escalations/escalations.js +0 -1
  183. package/dist/queries/escalations/escalations.js.map +1 -1
  184. package/dist/queries/escalations/incident-record.d.ts.map +1 -1
  185. package/dist/queries/escalations/incident-record.js +1 -0
  186. package/dist/queries/escalations/incident-record.js.map +1 -1
  187. package/dist/queries/focus-review/review-criterion-verdicts.d.ts.map +1 -1
  188. package/dist/queries/focus-review/review-criterion-verdicts.js +1 -0
  189. package/dist/queries/focus-review/review-criterion-verdicts.js.map +1 -1
  190. package/dist/queries/focuses/focus-discovery.js +1 -1
  191. package/dist/queries/migrations/live-focus-branches.d.ts +23 -0
  192. package/dist/queries/migrations/live-focus-branches.d.ts.map +1 -1
  193. package/dist/queries/migrations/live-focus-branches.js +32 -1
  194. package/dist/queries/migrations/live-focus-branches.js.map +1 -1
  195. package/dist/queries/prd/prd.d.ts.map +1 -1
  196. package/dist/queries/prd/prd.js +1 -16
  197. package/dist/queries/prd/prd.js.map +1 -1
  198. package/dist/queries/qa-packets/focus-qa-failure.d.ts +18 -0
  199. package/dist/queries/qa-packets/focus-qa-failure.d.ts.map +1 -1
  200. package/dist/queries/qa-packets/focus-qa-failure.js +14 -1
  201. package/dist/queries/qa-packets/focus-qa-failure.js.map +1 -1
  202. package/dist/queries/tower-decisions/tower-decisions.d.ts.map +1 -1
  203. package/dist/queries/tower-decisions/tower-decisions.js +1 -0
  204. package/dist/queries/tower-decisions/tower-decisions.js.map +1 -1
  205. package/dist/queries/verification/verification.d.ts +10 -0
  206. package/dist/queries/verification/verification.d.ts.map +1 -1
  207. package/dist/queries/verification/verification.js +1 -1
  208. package/dist/queries/verification/verification.js.map +1 -1
  209. package/dist/spawn/spawn-decision.d.ts.map +1 -1
  210. package/dist/spawn/spawn-decision.js +1 -18
  211. package/dist/spawn/spawn-decision.js.map +1 -1
  212. package/dist/supervision/escalation-suppression.js +1 -1
  213. package/dist/supervision/failed-head-rerun.d.ts +7 -0
  214. package/dist/supervision/failed-head-rerun.d.ts.map +1 -0
  215. package/dist/supervision/failed-head-rerun.js +41 -0
  216. package/dist/supervision/failed-head-rerun.js.map +1 -0
  217. package/dist/supervision/focus-delivery-aggregate-phase.js +1 -1
  218. package/dist/supervision/focus-delivery-aggregate-phase.js.map +1 -1
  219. package/dist/supervision/focus-liveness.d.ts +89 -0
  220. package/dist/supervision/focus-liveness.d.ts.map +1 -0
  221. package/dist/supervision/focus-liveness.js +94 -0
  222. package/dist/supervision/focus-liveness.js.map +1 -0
  223. package/dist/supervision/focus-next-step.d.ts +175 -0
  224. package/dist/supervision/focus-next-step.d.ts.map +1 -0
  225. package/dist/supervision/focus-next-step.js +129 -0
  226. package/dist/supervision/focus-next-step.js.map +1 -0
  227. package/dist/supervision/prd-frontier-rule.d.ts +52 -0
  228. package/dist/supervision/prd-frontier-rule.d.ts.map +1 -0
  229. package/dist/supervision/prd-frontier-rule.js +51 -0
  230. package/dist/supervision/prd-frontier-rule.js.map +1 -0
  231. package/dist/supervision/prt-frontier.d.ts +22 -7
  232. package/dist/supervision/prt-frontier.d.ts.map +1 -1
  233. package/dist/supervision/prt-frontier.js +17 -7
  234. package/dist/supervision/prt-frontier.js.map +1 -1
  235. package/dist/supervision/review-loop-detector.d.ts.map +1 -1
  236. package/dist/supervision/review-loop-detector.js +2 -1
  237. package/dist/supervision/review-loop-detector.js.map +1 -1
  238. package/dist/supervision/spawn-cooldown.js +1 -1
  239. package/dist/supervision/stop-registry.d.ts +1 -0
  240. package/dist/supervision/stop-registry.d.ts.map +1 -1
  241. package/dist/supervision/stop-rows-focus-health.d.ts +14 -0
  242. package/dist/supervision/stop-rows-focus-health.d.ts.map +1 -1
  243. package/dist/supervision/stop-rows-focus-health.js +32 -0
  244. package/dist/supervision/stop-rows-focus-health.js.map +1 -1
  245. package/dist/supervision/stop-rows-spawn.d.ts +3 -2
  246. package/dist/supervision/stop-rows-spawn.d.ts.map +1 -1
  247. package/dist/supervision/stop-rows-spawn.js +9 -6
  248. package/dist/supervision/stop-rows-spawn.js.map +1 -1
  249. package/dist/supervision/team-work.js +1 -1
  250. package/dist/supervision/team-work.js.map +1 -1
  251. package/dist/testing/fixtures/api-client.js +1 -1
  252. package/dist/testing/fixtures/index.js +1 -1
  253. package/dist/testing/fixtures/migration-namespace-repo.d.ts.map +1 -1
  254. package/dist/testing/fixtures/migration-namespace-repo.js +1 -0
  255. package/dist/testing/fixtures/migration-namespace-repo.js.map +1 -1
  256. package/dist/testing/fixtures/pending-spawn-world.d.ts +24 -0
  257. package/dist/testing/fixtures/pending-spawn-world.d.ts.map +1 -1
  258. package/dist/testing/fixtures/pending-spawn-world.js +47 -20
  259. package/dist/testing/fixtures/pending-spawn-world.js.map +1 -1
  260. package/dist/testing/fixtures/recording-api-client.js +1 -1
  261. package/dist/testing/fixtures/review-loop.d.ts.map +1 -1
  262. package/dist/testing/fixtures/review-loop.js +2 -0
  263. package/dist/testing/fixtures/review-loop.js.map +1 -1
  264. package/dist/testing/fixtures/verification-deps.d.ts +27 -0
  265. package/dist/testing/fixtures/verification-deps.d.ts.map +1 -1
  266. package/dist/testing/fixtures/verification-deps.js +77 -1
  267. package/dist/testing/fixtures/verification-deps.js.map +1 -1
  268. package/dist/testing/fixtures/vitest-failure-log.d.ts.map +1 -1
  269. package/dist/testing/fixtures/vitest-failure-log.js +1 -0
  270. package/dist/testing/fixtures/vitest-failure-log.js.map +1 -1
  271. package/dist/tower/tower-admission.d.ts +46 -9
  272. package/dist/tower/tower-admission.d.ts.map +1 -1
  273. package/dist/tower/tower-admission.js +59 -9
  274. package/dist/tower/tower-admission.js.map +1 -1
  275. package/dist/tower/tower-graph.d.ts.map +1 -1
  276. package/dist/tower/tower-graph.js +2 -1
  277. package/dist/tower/tower-graph.js.map +1 -1
  278. package/dist/tower/tower-heartbeat-status.d.ts +1 -1
  279. package/dist/tower/tower-heartbeat-status.d.ts.map +1 -1
  280. package/dist/tower/tower-heartbeat-status.js.map +1 -1
  281. package/dist/tower/tower-pass-standing.d.ts +11 -0
  282. package/dist/tower/tower-pass-standing.d.ts.map +1 -1
  283. package/dist/tower/tower-pass-standing.js +33 -1
  284. package/dist/tower/tower-pass-standing.js.map +1 -1
  285. package/dist/tower/tower-pass.d.ts +28 -4
  286. package/dist/tower/tower-pass.d.ts.map +1 -1
  287. package/dist/tower/tower-pass.js +60 -18
  288. package/dist/tower/tower-pass.js.map +1 -1
  289. package/dist/tower/tower-spawn-intent.d.ts.map +1 -1
  290. package/dist/tower/tower-spawn-intent.js +3 -2
  291. package/dist/tower/tower-spawn-intent.js.map +1 -1
  292. package/dist/tower/tower-supervisor-history.d.ts.map +1 -1
  293. package/dist/tower/tower-supervisor-history.js +2 -1
  294. package/dist/tower/tower-supervisor-history.js.map +1 -1
  295. package/dist/tower/tower-supervisor-prompt.d.ts.map +1 -1
  296. package/dist/tower/tower-supervisor-prompt.js +40 -8
  297. package/dist/tower/tower-supervisor-prompt.js.map +1 -1
  298. package/dist/tower/tower-supervisor-session.d.ts.map +1 -1
  299. package/dist/tower/tower-supervisor-session.js +1 -0
  300. package/dist/tower/tower-supervisor-session.js.map +1 -1
  301. package/dist/types/issue-status.d.ts.map +1 -1
  302. package/dist/types/issue-status.js +6 -1
  303. package/dist/types/issue-status.js.map +1 -1
  304. package/dist/verify/attribution/code-failure-evidence.d.ts +77 -0
  305. package/dist/verify/attribution/code-failure-evidence.d.ts.map +1 -0
  306. package/dist/verify/attribution/code-failure-evidence.js +92 -0
  307. package/dist/verify/attribution/code-failure-evidence.js.map +1 -0
  308. package/dist/verify/attribution/verification-attribution.d.ts +18 -0
  309. package/dist/verify/attribution/verification-attribution.d.ts.map +1 -1
  310. package/dist/verify/attribution/verification-attribution.js +49 -2
  311. package/dist/verify/attribution/verification-attribution.js.map +1 -1
  312. package/dist/verify/attribution/verification-baseline.d.ts.map +1 -1
  313. package/dist/verify/attribution/verification-baseline.js +1 -0
  314. package/dist/verify/attribution/verification-baseline.js.map +1 -1
  315. package/dist/verify/attribution/verification-diagnostics.d.ts +10 -0
  316. package/dist/verify/attribution/verification-diagnostics.d.ts.map +1 -1
  317. package/dist/verify/attribution/verification-diagnostics.js +39 -10
  318. package/dist/verify/attribution/verification-diagnostics.js.map +1 -1
  319. package/dist/verify/deterministic-gate/verification-deterministic.d.ts +19 -0
  320. package/dist/verify/deterministic-gate/verification-deterministic.d.ts.map +1 -1
  321. package/dist/verify/deterministic-gate/verification-deterministic.js +1 -1
  322. package/dist/verify/deterministic-gate/verification-deterministic.js.map +1 -1
  323. package/dist/verify/engine/verification-commit-sharing.d.ts.map +1 -1
  324. package/dist/verify/engine/verification-commit-sharing.js +36 -4
  325. package/dist/verify/engine/verification-commit-sharing.js.map +1 -1
  326. package/dist/verify/engine/verification-deps.d.ts +7 -0
  327. package/dist/verify/engine/verification-deps.d.ts.map +1 -1
  328. package/dist/verify/engine/verification-engine.d.ts.map +1 -1
  329. package/dist/verify/engine/verification-engine.js +6 -3
  330. package/dist/verify/engine/verification-engine.js.map +1 -1
  331. package/dist/verify/escaped-tests/escaped-test-run.d.ts +5 -1
  332. package/dist/verify/escaped-tests/escaped-test-run.d.ts.map +1 -1
  333. package/dist/verify/escaped-tests/escaped-test-run.js +24 -2
  334. package/dist/verify/escaped-tests/escaped-test-run.js.map +1 -1
  335. package/dist/verify/failing-test-rerun/failing-test-retry.d.ts +4 -1
  336. package/dist/verify/failing-test-rerun/failing-test-retry.d.ts.map +1 -1
  337. package/dist/verify/failing-test-rerun/failing-test-retry.js.map +1 -1
  338. package/dist/verify/gate-verdicts/commit-verdict-record.js +1 -1
  339. package/dist/verify/gate-verdicts/commit-verdict-record.js.map +1 -1
  340. package/dist/verify/gate-verdicts/no-verdict-record.d.ts +27 -3
  341. package/dist/verify/gate-verdicts/no-verdict-record.d.ts.map +1 -1
  342. package/dist/verify/gate-verdicts/no-verdict-record.js +36 -6
  343. package/dist/verify/gate-verdicts/no-verdict-record.js.map +1 -1
  344. package/dist/verify/outcome-routing/verification-rework-issue.d.ts.map +1 -1
  345. package/dist/verify/outcome-routing/verification-rework-issue.js +5 -4
  346. package/dist/verify/outcome-routing/verification-rework-issue.js.map +1 -1
  347. package/dist/verify/run-selection/default-on-guards.d.ts +15 -4
  348. package/dist/verify/run-selection/default-on-guards.d.ts.map +1 -1
  349. package/dist/verify/run-selection/default-on-guards.js +14 -4
  350. package/dist/verify/run-selection/default-on-guards.js.map +1 -1
  351. package/dist/verify/run-selection/explicit-next-step-gate.d.ts +39 -0
  352. package/dist/verify/run-selection/explicit-next-step-gate.d.ts.map +1 -0
  353. package/dist/verify/run-selection/explicit-next-step-gate.js +70 -0
  354. package/dist/verify/run-selection/explicit-next-step-gate.js.map +1 -0
  355. package/dist/verify/run-selection/pre-review-gate-dispatch.d.ts +0 -9
  356. package/dist/verify/run-selection/pre-review-gate-dispatch.d.ts.map +1 -1
  357. package/dist/verify/run-selection/pre-review-gate-dispatch.js +21 -62
  358. package/dist/verify/run-selection/pre-review-gate-dispatch.js.map +1 -1
  359. package/dist/verify/run-selection/reselection-log-line.d.ts +1 -1
  360. package/dist/verify/run-selection/reselection-log-line.d.ts.map +1 -1
  361. package/dist/verify/run-selection/reselection-log-line.js +2 -0
  362. package/dist/verify/run-selection/reselection-log-line.js.map +1 -1
  363. package/dist/verify/run-selection/verification-default-on.d.ts +32 -4
  364. package/dist/verify/run-selection/verification-default-on.d.ts.map +1 -1
  365. package/dist/verify/run-selection/verification-default-on.js +83 -19
  366. package/dist/verify/run-selection/verification-default-on.js.map +1 -1
  367. package/dist/verify/shortfalls/shortfall-park.js +1 -1
  368. package/dist/worktree/focus-worktree-state.js +1 -1
  369. package/dist/worktree/focus-worktree-state.js.map +1 -1
  370. package/docs/runbook-tower.md +33 -5
  371. package/package.json +3 -3
  372. package/dist/completion/state-cascade/review-next-step.d.ts +0 -107
  373. package/dist/completion/state-cascade/review-next-step.d.ts.map +0 -1
  374. package/dist/completion/state-cascade/review-next-step.js +0 -90
  375. package/dist/completion/state-cascade/review-next-step.js.map +0 -1
  376. package/dist/focus/failed-head-wedge.d.ts +0 -124
  377. package/dist/focus/failed-head-wedge.d.ts.map +0 -1
  378. package/dist/focus/failed-head-wedge.js +0 -120
  379. package/dist/focus/failed-head-wedge.js.map +0 -1
  380. package/dist/focus/stranded-review-reroute.d.ts +0 -70
  381. package/dist/focus/stranded-review-reroute.d.ts.map +0 -1
  382. package/dist/focus/stranded-review-reroute.js +0 -193
  383. package/dist/focus/stranded-review-reroute.js.map +0 -1
  384. package/dist/focus/uncommitted-work-backstop.d.ts +0 -115
  385. package/dist/focus/uncommitted-work-backstop.d.ts.map +0 -1
  386. package/dist/focus/uncommitted-work-backstop.js +0 -259
  387. package/dist/focus/uncommitted-work-backstop.js.map +0 -1
@@ -0,0 +1,136 @@
1
+ // PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
2
+ // Pinned by: packages/daemon/src/prd/prd-frontier-arm-refusal-streak.test.ts
3
+ // PINNED-BY-END
4
+ import { DISPOSITION_AGENT_RESOLVABLE } from '../queries/escalations/escalation-dispositions.js';
5
+ import { computeCauseKey } from '../queries/escalations/cause-key.js';
6
+ import { createLogger } from '../log/daemon-log.js';
7
+ import { ARM_CRITERIA_REQUIRED_CODE } from './arm-refusal.js';
8
+ const log = createLogger({ module: 'prd-controller' });
9
+ /** Consecutive refused arms of one code, with no success between, that file the observation. */
10
+ export const ARM_REFUSAL_OBSERVATION_THRESHOLD = 5;
11
+ /** The cause-key kind every frontier arm-refusal observation carries. */
12
+ export const ARM_REFUSAL_CAUSE_KIND = 'prd_frontier_arm_refused';
13
+ /** The code a refusal that carried none is counted under. */
14
+ export const UNCODED_REFUSAL = 'uncoded';
15
+ /** Longest refusal text carried into the observation. */
16
+ const MAX_REFUSAL_DETAIL = 1000;
17
+ /** The refusal code a failure is counted under. */
18
+ export function refusalCodeOf(failure) {
19
+ return failure.code ?? UNCODED_REFUSAL;
20
+ }
21
+ /** Does a streak of this code ever file? The criteria refusal is the scoping agent's to fix. */
22
+ export function refusalCodeFiles(code) {
23
+ return code !== ARM_CRITERIA_REQUIRED_CODE;
24
+ }
25
+ /** The cause key of the observation for one (focus, refusal code). */
26
+ export function armRefusalCauseKey(focusId, code) {
27
+ return computeCauseKey(ARM_REFUSAL_CAUSE_KIND, { focus_id: focusId, refusal_code: code });
28
+ }
29
+ /**
30
+ * Did this filing leave the observation on record? A new row, a correlation
31
+ * onto an open incident row, or an open/dismissed row of the same cause key that
32
+ * suppressed it all do. A filing the server REFUSED did not -- whether or not its
33
+ * refusal record landed -- nor did one that reports nothing at all, so the
34
+ * streak keeps retrying it.
35
+ */
36
+ export function observationRecorded(result) {
37
+ if (result.refused === true)
38
+ return false;
39
+ return result.filed || result.suppressed || result.correlated === true;
40
+ }
41
+ export class ArmRefusalStreakTracker {
42
+ io;
43
+ streaks = new Map();
44
+ /** Cause keys this process recorded per focus, resolved on the focus's next successful arm. */
45
+ filedKeys = new Map();
46
+ constructor(io) {
47
+ this.io = io;
48
+ }
49
+ /** The current streak for a focus (read-only view, for tests and logs). */
50
+ streakOf(focusId) {
51
+ const s = this.streaks.get(focusId);
52
+ return s ? { code: s.code, consecutive: s.consecutive, recorded: s.recorded } : null;
53
+ }
54
+ async recordRefusal(arm) {
55
+ const code = refusalCodeOf(arm.failure);
56
+ let streak = this.streaks.get(arm.focusId);
57
+ if (!streak || streak.code !== code) {
58
+ streak = { code, consecutive: 0, recorded: false, pending: null };
59
+ this.streaks.set(arm.focusId, streak);
60
+ }
61
+ streak.consecutive += 1;
62
+ if (!refusalCodeFiles(code) || streak.recorded || streak.consecutive < this.io.threshold)
63
+ return;
64
+ try {
65
+ const key = armRefusalCauseKey(arm.focusId, code);
66
+ streak.pending ??= buildObservation(arm, code, key, streak.consecutive, this.io.daemonVersion(), await this.io.organizationId());
67
+ const result = await this.io.fileObservation(streak.pending);
68
+ if (!observationRecorded(result)) {
69
+ log.warn(`[prd-controller] the refused-arm observation for focus ${arm.focusId} [${code}] was not recorded ` +
70
+ `(${result.refused === true ? 'the server refused the filing' : 'no row was written'}) -- ` +
71
+ 'retried on the next refusal');
72
+ return;
73
+ }
74
+ streak.recorded = true;
75
+ streak.pending = null;
76
+ const keys = this.filedKeys.get(arm.focusId) ?? new Set();
77
+ keys.add(key);
78
+ this.filedKeys.set(arm.focusId, keys);
79
+ }
80
+ catch (err) {
81
+ log.warn(`[prd-controller] could not file the refused-arm observation for focus ${arm.focusId} ` +
82
+ `[${code}]: ${err.message} -- retried on the next refusal`);
83
+ }
84
+ }
85
+ async recordSuccess(focusId) {
86
+ this.streaks.delete(focusId);
87
+ const keys = this.filedKeys.get(focusId);
88
+ if (!keys || keys.size === 0)
89
+ return;
90
+ try {
91
+ const open = (await this.io.listOpenEscalations()).filter((row) => keys.has(String(row.metadata?.cause_key ?? '')));
92
+ for (const row of open) {
93
+ await this.io.resolveEscalation(row.id, `Auto-resolved by the daemon: the PRD frontier armed focus ${focusId}.`);
94
+ }
95
+ this.filedKeys.delete(focusId);
96
+ }
97
+ catch (err) {
98
+ log.warn(`[prd-controller] could not resolve the refused-arm observation for focus ${focusId}: ` +
99
+ `${err.message} -- retried on the next successful arm`);
100
+ }
101
+ }
102
+ }
103
+ /** The observation for one streak. PURE. */
104
+ export function buildObservation(arm, code, causeKey, consecutive, daemonVersion, organizationId) {
105
+ const detail = arm.failure.detail.slice(0, MAX_REFUSAL_DETAIL);
106
+ return {
107
+ causeKey,
108
+ organizationId,
109
+ issueId: null,
110
+ focusId: arm.focusId,
111
+ ...(arm.productId ? { productId: arm.productId } : {}),
112
+ reasonType: 'error_encountered',
113
+ disposition: DISPOSITION_AGENT_RESOLVABLE,
114
+ description: `The PRD frontier of "${arm.prdTitle}" (${arm.prdId}) has been refused ${consecutive} consecutive times ` +
115
+ `arming focus ${arm.focusId} (overcome ${arm.nodeId}), every time with refusal code ${code}, by daemon ` +
116
+ `${daemonVersion}. A refusal with this code is not one the frontier's scoping agent can fix, so the focus ` +
117
+ `stays materialized and un-armed. Most recent refusal: ${detail}`,
118
+ whatWasTried: 'The frontier recorded each refusal on the focus Debug tab (section arm_refused) and re-attempted the arm ' +
119
+ 'every tick; nothing else acted on it.',
120
+ helpNeeded: `Find why the server refuses this arm (code ${code}) and fix the cause: a host below a refusal's floor ` +
121
+ `(daemon ${daemonVersion} here) is updated, a daemon credential that does not serve the PRD's product is ` +
122
+ 'fixed, a frontier-rule disagreement between the daemon and the product-api is reconciled. This observation ' +
123
+ 'closes itself when the frontier next arms the focus.',
124
+ metadata: {
125
+ focus_id: arm.focusId,
126
+ prd_id: arm.prdId,
127
+ prd_title: arm.prdTitle,
128
+ overcome_node_id: arm.nodeId,
129
+ refusal_code: code,
130
+ daemon_version: daemonVersion,
131
+ consecutive_refusals: consecutive,
132
+ last_refusal: detail,
133
+ },
134
+ };
135
+ }
136
+ //# sourceMappingURL=arm-refusal-streak.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"arm-refusal-streak.js","sourceRoot":"","sources":["../../src/prd/arm-refusal-streak.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"arm-refusal.d.ts","sourceRoot":"","sources":["../../src/prd/arm-refusal.ts"],"names":[],"mappings":"AAsDA,gEAAgE;AAChE,eAAO,MAAM,0BAA0B,0BAA0B,CAAC;AAElE;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,2BAA2B,CAAC;AAErE,8DAA8D;AAC9D,eAAO,MAAM,wBAAwB,gBAAgB,CAAC;AAEtD,wEAAwE;AACxE,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAEtD,gDAAgD;AAChD,MAAM,WAAW,UAAU;IACzB;;;;;OAKG;IACH,IAAI,EAAE,mBAAmB,GAAG,cAAc,CAAC;IAC3C,uEAAuE;IACvE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB;;;;;OAKG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB;AAQD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,UAAU,CAc3D;AAQD,4CAA4C;AAC5C,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,+EAA+E;IAC/E,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,UAAU,CAAC;IACpB,0EAA0E;IAC1E,eAAe,EAAE,MAAM,CAAC;IACxB,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,4EAA4E;AAC5E,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAS5E;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,gBAAgB,EACxB,KAAK,EAAE,MAAM,GACZ,MAAM,CA4BR;AASD;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAS9E;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE;IACJ,OAAO,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,UAAU,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,MAAM,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CACnC,GACA,OAAO,CAAC,IAAI,CAAC,CAsBf;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAWpE"}
1
+ {"version":3,"file":"arm-refusal.d.ts","sourceRoot":"","sources":["../../src/prd/arm-refusal.ts"],"names":[],"mappings":"AAyDA,gEAAgE;AAChE,eAAO,MAAM,0BAA0B,0BAA0B,CAAC;AAElE;;;;;GAKG;AACH,eAAO,MAAM,4BAA4B,2BAA2B,CAAC;AAErE,8DAA8D;AAC9D,eAAO,MAAM,wBAAwB,gBAAgB,CAAC;AAEtD,wEAAwE;AACxE,eAAO,MAAM,oBAAoB,oBAAoB,CAAC;AAEtD,gDAAgD;AAChD,MAAM,WAAW,UAAU;IACzB;;;;;OAKG;IACH,IAAI,EAAE,mBAAmB,GAAG,cAAc,CAAC;IAC3C,uEAAuE;IACvE,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB;;;;;OAKG;IACH,MAAM,EAAE,MAAM,CAAC;CAChB;AAQD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,UAAU,CAc3D;AAQD,4CAA4C;AAC5C,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,+EAA+E;IAC/E,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,UAAU,CAAC;IACpB,0EAA0E;IAC1E,eAAe,EAAE,MAAM,CAAC;IACxB,yCAAyC;IACzC,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,4EAA4E;AAC5E,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,IAAI,CAS5E;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,gBAAgB,EACxB,KAAK,EAAE,MAAM,GACZ,MAAM,CA4BR;AASD;;;;;;;;GAQG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,IAAI,CAAC,CAS9E;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE;IACJ,OAAO,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,UAAU,EAAE,MAAM,CAAC;IACnB,mEAAmE;IACnE,MAAM,EAAE,MAAM,CAAC;IACf,wEAAwE;IACxE,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,CAAC;CACnC,GACA,OAAO,CAAC,IAAI,CAAC,CAsBf;AAED;;;;GAIG;AACH,wBAAsB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAWpE"}
@@ -1,5 +1,6 @@
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/prd/prd-frontier-arm-refused.test.ts
2
+ // Pinned by: packages/daemon/src/prd/prd-frontier-arm-refusal-streak.test.ts,
3
+ // packages/daemon/src/prd/prd-frontier-arm-refused.test.ts
3
4
  // PINNED-BY-END
4
5
  /**
5
6
  * A refused arm, SURVIVED: classify it, and record it where an operator reads it.
@@ -39,9 +40,11 @@
39
40
  * record degrades to.
40
41
  *
41
42
  * NOTHING HERE ESCALATES. A refused arm is a recoverable state the machine
42
- * re-tries, not a question for a human queue: the fix is a restatement on a
43
- * tree node, and the scoping agent the frontier re-spawns is the actor that
44
- * writes it.
43
+ * re-tries. For `arm_criteria_required` the fix is a restatement on a tree node,
44
+ * and the scoping agent the frontier re-spawns is the actor that writes it. For
45
+ * every other code no agent the frontier spawns can fix it, so the refusal
46
+ * streak (./arm-refusal-streak.ts) -- beside this record, not instead of it --
47
+ * files one agent_resolvable observation once such a refusal outlasts its bound.
45
48
  *
46
49
  * History: docs/daemon/history-platform.md (prd/arm-refusal.ts).
47
50
  */
@@ -1 +1 @@
1
- {"version":3,"file":"arm-refusal.js","sourceRoot":"","sources":["../../src/prd/arm-refusal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"arm-refusal.js","sourceRoot":"","sources":["../../src/prd/arm-refusal.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,9 @@ import type { Prd, PrtNode, PrtEdge, Pathway } from '../queries/prd/prd.js';
3
3
  import type { FileEscalationInput } from '../nexus/file-escalation.js';
4
4
  import type { StewardJudgmentInput, StewardDecision } from './steward.js';
5
5
  import type { FocusArmReadiness } from './arm-readiness.js';
6
+ import type { FocusQaStandingRead } from '../queries/qa-packets/focus-qa-failure.js';
6
7
  import type { ArmRefusalRecord } from './arm-refusal.js';
8
+ import type { ArmRefusalStreakReporter } from './arm-refusal-streak.js';
7
9
  /**
8
10
  * Steward cadence: the minimum interval between proactive steward monitoring
9
11
  * runs for a Played PRD -- the "runs on a cadence" path of the AC. 15 minutes
@@ -53,12 +55,31 @@ export declare function computeCompletedFocusIds(deliveries: Array<{
53
55
  focusId: string;
54
56
  executionStatus: string;
55
57
  }>, containment: ReadonlyMap<string, FocusBranchContainment>): Set<string>;
58
+ /**
59
+ * Whether a QA read holds a focus OUT of the landed set: its QA state is
60
+ * failed, or could not be read (fail closed -- a failed verdict must never be
61
+ * overwritten on an unproven read). PURE.
62
+ *
63
+ * WHY QA-FAILED IS NOT LANDED. A person's failed verdict leaves every delivery
64
+ * done and the branch merged -- exactly the landed facts -- so without this the
65
+ * completion bridge would re-clear the overcome the verdict reopened, and the
66
+ * limbo self-heal would finalize the focus straight back to complete over it.
67
+ * qa_state stays failed until the team armed AFTER the fail finishes (the
68
+ * enter_focus_qa_on_team_finish trigger moves it to awaiting), so "work
69
+ * finished after the failed verdict" is precisely qa_state leaving failed; from
70
+ * then on the focus lands, clears and finalizes like any other.
71
+ * QA still gates nothing on the pass side: awaiting, passed and never-QA'd foci
72
+ * land on their delivery and branch facts alone (docs/DECISIONS.md 2026-10-26).
73
+ */
74
+ export declare function qaHoldsFocusUnlanded(read: FocusQaStandingRead): boolean;
56
75
  /**
57
76
  * Load the deliveries and branch containment of each focus and return those
58
77
  * that have LANDED (computeCompletedFocusIds). Containment is read only for a
59
78
  * focus whose deliveries could have landed, so a running focus costs no git.
79
+ * A focus a person failed at QA is not landed (qaHoldsFocusUnlanded); its QA is
80
+ * read only once its deliveries could have landed.
60
81
  */
61
- export declare function loadLandedFocusIds(focusIds: readonly string[], deps: Pick<PrdControllerDeps, 'loadFocusDeliveries' | 'readFocusBranchContainment'>): Promise<Set<string>>;
82
+ export declare function loadLandedFocusIds(focusIds: readonly string[], deps: Pick<PrdControllerDeps, 'loadFocusDeliveries' | 'readFocusBranchContainment' | 'loadFocusQa'>): Promise<Set<string>>;
62
83
  /**
63
84
  * One PRD scoping run, as the controller's process-lifetime ledger holds it.
64
85
  *
@@ -188,6 +209,15 @@ export interface PrdControllerDeps {
188
209
  * frontier re-tries, and `fileEscalation` is deliberately not reached here.
189
210
  */
190
211
  recordArmRefusal: (record: ArmRefusalRecord) => Promise<void>;
212
+ /**
213
+ * Counts consecutive refused arms per focus and refusal code and, past its
214
+ * bound, files ONE agent_resolvable observation for any code but
215
+ * arm_criteria_required (`prd/arm-refusal-streak.ts`); told of every
216
+ * successful arm so the streak ends. Bound at the composition root to one
217
+ * process-lifetime tracker shared by every product. Never throws. Absent in a
218
+ * harness that does not exercise it: then nothing is counted.
219
+ */
220
+ armRefusalStreak?: ArmRefusalStreakReporter;
191
221
  /**
192
222
  * Clear that record once an arm lands. Bound at the composition root to the
193
223
  * live `clearArmRefusal`. Unconditional on a successful arm, exactly as a
@@ -246,6 +276,15 @@ export interface PrdControllerDeps {
246
276
  * When ABSENT no stop is known -- the binding is what makes it real.
247
277
  */
248
278
  loadFocusOperatorStop?: (focusId: string) => Promise<string | null>;
279
+ /**
280
+ * The focus's human QA standing (product-api focus_qa_get); never throws.
281
+ * A QA-failed focus is not landed (qaHoldsFocusUnlanded), is armed by the
282
+ * frontier only once work has been scoped since the failed verdict, and its
283
+ * scoping run is handed the cases the person did not pass
284
+ * (prd/frontier-arming.ts). Optional; bound at the composition root. When
285
+ * ABSENT no QA is known and every focus is judged on its delivery facts.
286
+ */
287
+ loadFocusQa?: (focusId: string) => Promise<FocusQaStandingRead>;
249
288
  /**
250
289
  * Spawn the ONE-SHOT PRD scoping agent for a materialized frontier focus
251
290
  * (fire-and-forget: resolves on spawn, reports the exit via `onExit`).
@@ -1 +1 @@
1
- {"version":3,"file":"controller-shared.d.ts","sourceRoot":"","sources":["../../src/prd/controller-shared.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controller-shared.d.ts","sourceRoot":"","sources":["../../src/prd/controller-shared.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,7 @@
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/prd/prd-frontier-arm-covers-stated-effects.test.ts,
2
+ // Pinned by: packages/daemon/src/prd/prd-controller-qa-failed.test.ts,
3
+ // packages/daemon/src/prd/prd-frontier-arm-covers-stated-effects.test.ts,
4
+ // packages/daemon/src/prd/prd-frontier-arm-refusal-streak.test.ts,
3
5
  // packages/daemon/src/prd/prd-frontier-arm-refused.test.ts,
4
6
  // packages/daemon/src/prd/prd-frontier-arming.test.ts, packages/daemon/src/tower/tower-prd-arm.test.ts
5
7
  // PINNED-BY-END
@@ -15,6 +17,7 @@
15
17
  * History: docs/daemon/history-platform.md (prd/controller-shared.ts).
16
18
  */
17
19
  import { judgeFocusLanded } from '../tower/focus-landed.js';
20
+ import { QA_STATE } from '@telora/daemon-core';
18
21
  /**
19
22
  * Steward cadence: the minimum interval between proactive steward monitoring
20
23
  * runs for a Played PRD -- the "runs on a cadence" path of the AC. 15 minutes
@@ -80,20 +83,43 @@ export function computeCompletedFocusIds(deliveries, containment) {
80
83
  }
81
84
  return complete;
82
85
  }
86
+ /**
87
+ * Whether a QA read holds a focus OUT of the landed set: its QA state is
88
+ * failed, or could not be read (fail closed -- a failed verdict must never be
89
+ * overwritten on an unproven read). PURE.
90
+ *
91
+ * WHY QA-FAILED IS NOT LANDED. A person's failed verdict leaves every delivery
92
+ * done and the branch merged -- exactly the landed facts -- so without this the
93
+ * completion bridge would re-clear the overcome the verdict reopened, and the
94
+ * limbo self-heal would finalize the focus straight back to complete over it.
95
+ * qa_state stays failed until the team armed AFTER the fail finishes (the
96
+ * enter_focus_qa_on_team_finish trigger moves it to awaiting), so "work
97
+ * finished after the failed verdict" is precisely qa_state leaving failed; from
98
+ * then on the focus lands, clears and finalizes like any other.
99
+ * QA still gates nothing on the pass side: awaiting, passed and never-QA'd foci
100
+ * land on their delivery and branch facts alone (docs/DECISIONS.md 2026-10-26).
101
+ */
102
+ export function qaHoldsFocusUnlanded(read) {
103
+ return read.kind === 'unreadable' || read.state === QA_STATE.FAILED;
104
+ }
83
105
  /**
84
106
  * Load the deliveries and branch containment of each focus and return those
85
107
  * that have LANDED (computeCompletedFocusIds). Containment is read only for a
86
108
  * focus whose deliveries could have landed, so a running focus costs no git.
109
+ * A focus a person failed at QA is not landed (qaHoldsFocusUnlanded); its QA is
110
+ * read only once its deliveries could have landed.
87
111
  */
88
112
  export async function loadLandedFocusIds(focusIds, deps) {
89
113
  const focusDeliveries = [];
90
114
  const containment = new Map();
91
115
  for (const fid of focusIds) {
92
116
  const ds = await deps.loadFocusDeliveries(fid);
93
- focusDeliveries.push(...ds);
94
117
  if (judgeFocusLanded(ds.map((d) => d.executionStatus), 'contained') === 'landed') {
118
+ if (deps.loadFocusQa && qaHoldsFocusUnlanded(await deps.loadFocusQa(fid)))
119
+ continue;
95
120
  containment.set(fid, await deps.readFocusBranchContainment(fid));
96
121
  }
122
+ focusDeliveries.push(...ds);
97
123
  }
98
124
  return computeCompletedFocusIds(focusDeliveries, containment);
99
125
  }
@@ -1 +1 @@
1
- {"version":3,"file":"controller-shared.js","sourceRoot":"","sources":["../../src/prd/controller-shared.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,qFAAqF;AACrF,8DAA8D;AAC9D,yGAAyG;AACzG,gBAAgB;AAEhB;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAQ5D;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AAEjD;;;;;GAKG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAG,0BAA0B,CAAC;AAEnE;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,CAAC;AAEzC;;;;;;;;GAQG;AACH,MAAM,UAAU,uBAAuB,CAAC,GAAQ;IAC9C,OAAO,GAAG,CAAC,mBAAmB,IAAI,IAAI,CAAC;AACzC,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,wBAAwB,CACtC,UAA+D,EAC/D,WAAwD;IAExD,MAAM,OAAO,GAAG,IAAI,GAAG,EAAoB,CAAC;IAC5C,KAAK,MAAM,CAAC,IAAI,UAAU,EAAE,CAAC;QAC3B,IAAI,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;YACf,SAAS;QACX,CAAC;QACD,MAAM,QAAQ,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;QAC9C,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;QACjC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IACnC,CAAC;IACD,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,KAAK,MAAM,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAI,OAAO,EAAE,CAAC;QAC1C,IAAI,gBAAgB,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,SAAS,CAAC,KAAK,QAAQ,EAAE,CAAC;YACnF,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC;IACH,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,QAA2B,EAC3B,IAAmF;IAEnF,MAAM,eAAe,GAAwD,EAAE,CAAC;IAChF,MAAM,WAAW,GAAG,IAAI,GAAG,EAAkC,CAAC;IAC9D,KAAK,MAAM,GAAG,IAAI,QAAQ,EAAE,CAAC;QAC3B,MAAM,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC;QAC/C,eAAe,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;QAC5B,IAAI,gBAAgB,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC,EAAE,WAAW,CAAC,KAAK,QAAQ,EAAE,CAAC;YACjF,WAAW,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,IAAI,CAAC,0BAA0B,CAAC,GAAG,CAAC,CAAC,CAAC;QACnE,CAAC;IACH,CAAC;IACD,OAAO,wBAAwB,CAAC,eAAe,EAAE,WAAW,CAAC,CAAC;AAChE,CAAC"}
1
+ {"version":3,"file":"controller-shared.js","sourceRoot":"","sources":["../../src/prd/controller-shared.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../src/prd/controller.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAWjD,OAAO,EAKL,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,0BAA0B,EAChC,MAAM,wBAAwB,CAAC;AAgBhC,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,uBAAuB,CAAC,CAwUlC;AAED;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,YAAY,EACpB,cAAc,EAAE,CAAC,aAAa,EAAE,YAAY,KAAK,iBAAiB,GACjE,OAAO,CAAC,0BAA0B,CAAC,CAkIrC"}
1
+ {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../src/prd/controller.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtD,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAWjD,OAAO,EAKL,KAAK,iBAAiB,EACtB,KAAK,uBAAuB,EAC5B,KAAK,0BAA0B,EAChC,MAAM,wBAAwB,CAAC;AAgBhC,wBAAsB,oBAAoB,CACxC,GAAG,EAAE,GAAG,EACR,IAAI,EAAE,iBAAiB,GACtB,OAAO,CAAC,uBAAuB,CAAC,CAwUlC;AAED;;;;;GAKG;AACH,wBAAsB,uBAAuB,CAC3C,MAAM,EAAE,YAAY,EACpB,cAAc,EAAE,CAAC,aAAa,EAAE,YAAY,KAAK,iBAAiB,GACjE,OAAO,CAAC,0BAA0B,CAAC,CAkIrC"}
@@ -1,5 +1,7 @@
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/prd/prd-frontier-arm-covers-stated-effects.test.ts,
2
+ // Pinned by: packages/daemon/src/prd/prd-controller-qa-failed.test.ts,
3
+ // packages/daemon/src/prd/prd-frontier-arm-covers-stated-effects.test.ts,
4
+ // packages/daemon/src/prd/prd-frontier-arm-refusal-streak.test.ts,
3
5
  // packages/daemon/src/prd/prd-frontier-arm-refused.test.ts,
4
6
  // packages/daemon/src/prd/prd-frontier-arming.test.ts, packages/daemon/src/tower/tower-prd-arm.test.ts
5
7
  // PINNED-BY-END
@@ -1 +1 @@
1
- {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../src/prd/controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../src/prd/controller.ts"],"names":[],"mappings":"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"}
@@ -64,7 +64,7 @@ export declare const PRD_SCOPING_STALE_MS: number;
64
64
  */
65
65
  export declare const PRD_SCOPING_MAX_ATTEMPTS = 3;
66
66
  /** What the controller does with one materialized frontier focus this tick. */
67
- export type PrdFrontierAction = 'arm' | 'spawn_scoping' | 'await_scoping' | 'hold_unscoped' | 'hold_operator_stopped';
67
+ export type PrdFrontierAction = 'arm' | 'spawn_scoping' | 'await_scoping' | 'hold_unscoped' | 'hold_operator_stopped' | 'hold_qa_unreadable';
68
68
  /**
69
69
  * The decision, PURE.
70
70
  *
@@ -121,6 +121,14 @@ export declare function readPrdGoal(nodes: PrtNode[]): string | null;
121
121
  * Advance ONE materialized frontier focus by one act. Never throws for an
122
122
  * ordinary not-yet-scoped focus, nor for an arm the write refuses; never files
123
123
  * an escalation.
124
+ *
125
+ * A focus a person FAILED at QA is back on the frontier (the verdict reopened
126
+ * its overcome, docs/DECISIONS.md 2026-10-26). A scoping run started before the
127
+ * verdict scoped the work that failed, so it neither owns the focus nor spends
128
+ * its attempt budget: the ledger entry is dropped. The focus arms once the fix
129
+ * is scoped (qaFixNotScoped). An UNREADABLE QA state holds the focus this tick
130
+ * -- neither armed nor scoped -- rather than arming over a failed verdict it
131
+ * could not rule out.
124
132
  */
125
133
  export declare function advancePrdFrontierFocus(args: {
126
134
  node: PrtNode;
@@ -139,7 +147,7 @@ export interface FrontierArmingPassResult {
139
147
  heldUnscoped: number;
140
148
  /** Frontier foci left un-armed because an operator stopped them. */
141
149
  heldOperatorStopped: number;
142
- /** Arms this pass ATTEMPTED that the write refused (recorded, never filed). */
150
+ /** Arms this pass ATTEMPTED that the write refused (recorded; filed only by the refusal streak). */
143
151
  armRefused: number;
144
152
  }
145
153
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"frontier-arming.d.ts","sourceRoot":"","sources":["../../src/prd/frontier-arming.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EACV,iBAAiB,EACjB,aAAa,EACd,MAAM,wBAAwB,CAAC;AAShC;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,oBAAoB,QAAiB,CAAC;AAEnD;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAU1C,+EAA+E;AAC/E,MAAM,MAAM,iBAAiB,GACzB,KAAK,GACL,eAAe,GACf,eAAe,GACf,eAAe,GACf,uBAAuB,CAAC;AAE5B;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAC7C,KAAK,EAAE,OAAO,CAAC;IACf,GAAG,EAAE,aAAa,GAAG,SAAS,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,0EAA0E;IAC1E,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,GAAG,iBAAiB,CAgBpB;AAED,8CAA8C;AAC9C,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,iBAAiB,CAAC;IAC1B,KAAK,EAAE,OAAO,CAAC;IACf,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,yEAAyE;IACzE,mBAAmB,EAAE,OAAO,CAAC;IAC7B;;;;;;OAMG;IACH,UAAU,EAAE,OAAO,CAAC;CACrB;AAyBD,6DAA6D;AAC7D,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,GAAG,IAAI,CAM3D;AAgOD;;;;GAIG;AACH,wBAAsB,uBAAuB,CAAC,IAAI,EAAE;IAClD,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,GAAG,CAAC;IACT,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,iBAAiB,CAAC;CACzB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAoElC;AAED,kDAAkD;AAClD,MAAM,WAAW,wBAAwB;IACvC,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,mBAAmB,EAAE,MAAM,CAAC;IAC5B,+EAA+E;IAC/E,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE;IAChD,GAAG,EAAE,GAAG,CAAC;IACT,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,gBAAgB,EAAE,OAAO,EAAE,CAAC;IAC5B,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,EAAE,iBAAiB,CAAC;CACzB,GAAG,OAAO,CAAC,wBAAwB,CAAC,CA0CpC"}
1
+ {"version":3,"file":"frontier-arming.d.ts","sourceRoot":"","sources":["../../src/prd/frontier-arming.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAyCG;AAEH,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EACV,iBAAiB,EACjB,aAAa,EACd,MAAM,wBAAwB,CAAC;AAWhC;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,oBAAoB,QAAiB,CAAC;AAEnD;;;;;;GAMG;AACH,eAAO,MAAM,wBAAwB,IAAI,CAAC;AAU1C,+EAA+E;AAC/E,MAAM,MAAM,iBAAiB,GACzB,KAAK,GACL,eAAe,GACf,eAAe,GACf,eAAe,GACf,uBAAuB,GACvB,oBAAoB,CAAC;AAEzB;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,uBAAuB,CAAC,KAAK,EAAE;IAC7C,KAAK,EAAE,OAAO,CAAC;IACf,GAAG,EAAE,aAAa,GAAG,SAAS,CAAC;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,0EAA0E;IAC1E,eAAe,CAAC,EAAE,OAAO,CAAC;CAC3B,GAAG,iBAAiB,CAgBpB;AAED,8CAA8C;AAC9C,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,iBAAiB,CAAC;IAC1B,KAAK,EAAE,OAAO,CAAC;IACf,cAAc,EAAE,OAAO,CAAC;IACxB,YAAY,EAAE,OAAO,CAAC;IACtB,yEAAyE;IACzE,mBAAmB,EAAE,OAAO,CAAC;IAC7B;;;;;;OAMG;IACH,UAAU,EAAE,OAAO,CAAC;CACrB;AAyBD,6DAA6D;AAC7D,wBAAgB,WAAW,CAAC,KAAK,EAAE,OAAO,EAAE,GAAG,MAAM,GAAG,IAAI,CAM3D;AAoSD;;;;;;;;;;;;GAYG;AACH,wBAAsB,uBAAuB,CAAC,IAAI,EAAE;IAClD,IAAI,EAAE,OAAO,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,GAAG,EAAE,GAAG,CAAC;IACT,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,iBAAiB,CAAC;CACzB,GAAG,OAAO,CAAC,sBAAsB,CAAC,CAmFlC;AAED,kDAAkD;AAClD,MAAM,WAAW,wBAAwB;IACvC,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,YAAY,EAAE,MAAM,CAAC;IACrB,oEAAoE;IACpE,mBAAmB,EAAE,MAAM,CAAC;IAC5B,oGAAoG;IACpG,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CAAC,IAAI,EAAE;IAChD,GAAG,EAAE,GAAG,CAAC;IACT,KAAK,EAAE,OAAO,EAAE,CAAC;IACjB,gBAAgB,EAAE,OAAO,EAAE,CAAC;IAC5B,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,IAAI,EAAE,iBAAiB,CAAC;CACzB,GAAG,OAAO,CAAC,wBAAwB,CAAC,CA0CpC"}