@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.
- package/build-info.json +9 -3
- package/dist/completion/completion-event/unfinished-work.d.ts +3 -3
- package/dist/completion/review-cycle-budget/review-loop-detection.d.ts.map +1 -1
- package/dist/completion/review-cycle-budget/review-loop-detection.js +2 -1
- package/dist/completion/review-cycle-budget/review-loop-detection.js.map +1 -1
- package/dist/completion/review-exit-holds/review-exit-verdict-gate.d.ts +1 -1
- package/dist/completion/review-exit-holds/review-exit-verdict-gate.d.ts.map +1 -1
- package/dist/completion/review-exit-holds/review-exit-verdict-gate.js +2 -3
- package/dist/completion/review-exit-holds/review-exit-verdict-gate.js.map +1 -1
- package/dist/completion/state-cascade/focus-next-step-read.d.ts +38 -0
- package/dist/completion/state-cascade/focus-next-step-read.d.ts.map +1 -0
- package/dist/completion/state-cascade/focus-next-step-read.js +188 -0
- package/dist/completion/state-cascade/focus-next-step-read.js.map +1 -0
- package/dist/completion/state-cascade/review-request-gate.d.ts.map +1 -1
- package/dist/completion/state-cascade/review-request-gate.js +1 -0
- package/dist/completion/state-cascade/review-request-gate.js.map +1 -1
- package/dist/completion/state-cascade/review-request-next-step.d.ts +56 -0
- package/dist/completion/state-cascade/review-request-next-step.d.ts.map +1 -0
- package/dist/completion/state-cascade/review-request-next-step.js +47 -0
- package/dist/completion/state-cascade/review-request-next-step.js.map +1 -0
- package/dist/completion/state-cascade/review-verify-judgment-gate.d.ts +1 -1
- package/dist/completion/state-cascade/review-verify-judgment-gate.d.ts.map +1 -1
- package/dist/completion/state-cascade/review-verify-judgment-gate.js +1 -0
- package/dist/completion/state-cascade/review-verify-judgment-gate.js.map +1 -1
- package/dist/completion/state-cascade/state-cascade.d.ts +12 -7
- package/dist/completion/state-cascade/state-cascade.d.ts.map +1 -1
- package/dist/completion/state-cascade/state-cascade.js +36 -105
- package/dist/completion/state-cascade/state-cascade.js.map +1 -1
- package/dist/composition/commit-gate-context.d.ts.map +1 -1
- package/dist/composition/commit-gate-context.js +1 -0
- package/dist/composition/commit-gate-context.js.map +1 -1
- package/dist/composition/daemon-contexts.js +1 -1
- package/dist/composition/execution-migrations-context.d.ts.map +1 -1
- package/dist/composition/execution-migrations-context.js +3 -1
- package/dist/composition/execution-migrations-context.js.map +1 -1
- package/dist/composition/execution-process-context.js +1 -1
- package/dist/composition/execution-recovery-context.d.ts +4 -3
- package/dist/composition/execution-recovery-context.d.ts.map +1 -1
- package/dist/composition/execution-recovery-context.js +6 -3
- package/dist/composition/execution-recovery-context.js.map +1 -1
- package/dist/composition/execution-worktree-context.js +1 -1
- package/dist/composition/focus-next-step-context.d.ts +19 -0
- package/dist/composition/focus-next-step-context.d.ts.map +1 -0
- package/dist/composition/focus-next-step-context.js +51 -0
- package/dist/composition/focus-next-step-context.js.map +1 -0
- package/dist/composition/runtime-contexts.d.ts.map +1 -1
- package/dist/composition/runtime-contexts.js +6 -18
- package/dist/composition/runtime-contexts.js.map +1 -1
- package/dist/composition/runtime-poll-context.d.ts +8 -53
- package/dist/composition/runtime-poll-context.d.ts.map +1 -1
- package/dist/composition/runtime-poll-context.js +35 -94
- package/dist/composition/runtime-poll-context.js.map +1 -1
- package/dist/composition/runtime-prd-context.d.ts +8 -0
- package/dist/composition/runtime-prd-context.d.ts.map +1 -1
- package/dist/composition/runtime-prd-context.js +32 -0
- package/dist/composition/runtime-prd-context.js.map +1 -1
- package/dist/composition/runtime-spawn-pass-context.d.ts.map +1 -1
- package/dist/composition/runtime-spawn-pass-context.js +2 -3
- package/dist/composition/runtime-spawn-pass-context.js.map +1 -1
- package/dist/composition/state-cascade-context.d.ts +2 -0
- package/dist/composition/state-cascade-context.d.ts.map +1 -1
- package/dist/composition/state-cascade-context.js +9 -0
- package/dist/composition/state-cascade-context.js.map +1 -1
- package/dist/composition/tower-pass-context.d.ts +6 -1
- package/dist/composition/tower-pass-context.d.ts.map +1 -1
- package/dist/composition/tower-pass-context.js +12 -2
- package/dist/composition/tower-pass-context.js.map +1 -1
- package/dist/composition/verification-context.d.ts.map +1 -1
- package/dist/composition/verification-context.js +15 -3
- package/dist/composition/verification-context.js.map +1 -1
- package/dist/config/live-daemon-config.js +1 -1
- package/dist/daemon-state/awaiting-slot.d.ts.map +1 -1
- package/dist/daemon-state/awaiting-slot.js +2 -0
- package/dist/daemon-state/awaiting-slot.js.map +1 -1
- package/dist/daemon-state/branch-removal-record.d.ts +30 -0
- package/dist/daemon-state/branch-removal-record.d.ts.map +1 -0
- package/dist/daemon-state/branch-removal-record.js +103 -0
- package/dist/daemon-state/branch-removal-record.js.map +1 -0
- package/dist/daemon-state/focus-team-state.js +1 -1
- package/dist/delivery/advance-hold.d.ts +8 -19
- package/dist/delivery/advance-hold.d.ts.map +1 -1
- package/dist/delivery/advance-hold.js +11 -36
- package/dist/delivery/advance-hold.js.map +1 -1
- package/dist/delivery/commit-verdict-hold.d.ts +1 -1
- package/dist/delivery/commit-verdict-hold.js +1 -1
- package/dist/delivery/recorded-concerns.d.ts.map +1 -1
- package/dist/delivery/recorded-concerns.js +0 -2
- package/dist/delivery/recorded-concerns.js.map +1 -1
- package/dist/directive/directive-queue.d.ts +4 -16
- package/dist/directive/directive-queue.d.ts.map +1 -1
- package/dist/directive/directive-queue.js +4 -12
- package/dist/directive/directive-queue.js.map +1 -1
- package/dist/directive/phase-sync.d.ts +1 -1
- package/dist/directive/phase-sync.js +1 -1
- package/dist/focus/crash-recovery.d.ts +10 -32
- package/dist/focus/crash-recovery.d.ts.map +1 -1
- package/dist/focus/crash-recovery.js +55 -150
- package/dist/focus/crash-recovery.js.map +1 -1
- package/dist/focus/daemon-contexts-runtime.d.ts +3 -3
- package/dist/focus/daemon-contexts-runtime.d.ts.map +1 -1
- package/dist/focus/daemon-contexts.js +1 -1
- package/dist/focus/directive-executor.d.ts.map +1 -1
- package/dist/focus/directive-executor.js +3 -7
- package/dist/focus/directive-executor.js.map +1 -1
- package/dist/focus/failed-head-rework-start.d.ts +61 -0
- package/dist/focus/failed-head-rework-start.d.ts.map +1 -0
- package/dist/focus/failed-head-rework-start.js +52 -0
- package/dist/focus/failed-head-rework-start.js.map +1 -0
- package/dist/focus/focus-activity-record.d.ts +4 -2
- package/dist/focus/focus-activity-record.d.ts.map +1 -1
- package/dist/focus/focus-activity-record.js +4 -2
- package/dist/focus/focus-activity-record.js.map +1 -1
- package/dist/focus/focus-liveness-pass.d.ts +62 -0
- package/dist/focus/focus-liveness-pass.d.ts.map +1 -0
- package/dist/focus/focus-liveness-pass.js +197 -0
- package/dist/focus/focus-liveness-pass.js.map +1 -0
- package/dist/focus/focus-poller-spawn.js +2 -2
- package/dist/focus/focus-poller-spawn.js.map +1 -1
- package/dist/focus/focus-poller-state.js +1 -1
- package/dist/focus/live-branch-preservation.d.ts +123 -0
- package/dist/focus/live-branch-preservation.d.ts.map +1 -0
- package/dist/focus/live-branch-preservation.js +192 -0
- package/dist/focus/live-branch-preservation.js.map +1 -0
- package/dist/focus/migration-claim-pass.d.ts +2 -0
- package/dist/focus/migration-claim-pass.d.ts.map +1 -1
- package/dist/focus/migration-claim-pass.js +57 -22
- package/dist/focus/migration-claim-pass.js.map +1 -1
- package/dist/focus/migration-held-set-publish.d.ts +28 -2
- package/dist/focus/migration-held-set-publish.d.ts.map +1 -1
- package/dist/focus/migration-held-set-publish.js +14 -0
- package/dist/focus/migration-held-set-publish.js.map +1 -1
- package/dist/focus/pending-spawn-pass-deps.d.ts.map +1 -1
- package/dist/focus/pending-spawn-pass-deps.js +2 -0
- package/dist/focus/pending-spawn-pass-deps.js.map +1 -1
- package/dist/focus/pending-spawn-review-next-step.d.ts +5 -11
- package/dist/focus/pending-spawn-review-next-step.d.ts.map +1 -1
- package/dist/focus/pending-spawn-review-next-step.js +26 -72
- package/dist/focus/pending-spawn-review-next-step.js.map +1 -1
- package/dist/focus/ready-focus-spawn-action.d.ts.map +1 -1
- package/dist/focus/ready-focus-spawn-action.js +2 -2
- package/dist/focus/ready-focus-spawn-action.js.map +1 -1
- package/dist/focus/review-refire-gate.d.ts +25 -0
- package/dist/focus/review-refire-gate.d.ts.map +1 -0
- package/dist/focus/review-refire-gate.js +68 -0
- package/dist/focus/review-refire-gate.js.map +1 -0
- package/dist/focus/verify-routing-passes.d.ts +8 -11
- package/dist/focus/verify-routing-passes.d.ts.map +1 -1
- package/dist/focus/verify-routing-passes.js +1 -2
- package/dist/focus/verify-routing-passes.js.map +1 -1
- package/dist/git/types.js +1 -1
- package/dist/prd/arm-refusal-streak.d.ts +102 -0
- package/dist/prd/arm-refusal-streak.d.ts.map +1 -0
- package/dist/prd/arm-refusal-streak.js +136 -0
- package/dist/prd/arm-refusal-streak.js.map +1 -0
- package/dist/prd/arm-refusal.d.ts.map +1 -1
- package/dist/prd/arm-refusal.js +7 -4
- package/dist/prd/arm-refusal.js.map +1 -1
- package/dist/prd/controller-shared.d.ts +40 -1
- package/dist/prd/controller-shared.d.ts.map +1 -1
- package/dist/prd/controller-shared.js +28 -2
- package/dist/prd/controller-shared.js.map +1 -1
- package/dist/prd/controller.d.ts.map +1 -1
- package/dist/prd/controller.js +3 -1
- package/dist/prd/controller.js.map +1 -1
- package/dist/prd/frontier-arming.d.ts +10 -2
- package/dist/prd/frontier-arming.d.ts.map +1 -1
- package/dist/prd/frontier-arming.js +91 -7
- package/dist/prd/frontier-arming.js.map +1 -1
- package/dist/prd/scoping-prompt.d.ts +8 -0
- package/dist/prd/scoping-prompt.d.ts.map +1 -1
- package/dist/prd/scoping-prompt.js +18 -0
- package/dist/prd/scoping-prompt.js.map +1 -1
- package/dist/prompt-sections/qa-failure-section.d.ts.map +1 -1
- package/dist/prompt-sections/qa-failure-section.js +3 -1
- package/dist/prompt-sections/qa-failure-section.js.map +1 -1
- package/dist/queries/api-client/shared.js +1 -1
- package/dist/queries/deliveries/deliveries.js +1 -1
- package/dist/queries/delivery-gate-state/delivery-gate-holds.d.ts +4 -3
- package/dist/queries/delivery-gate-state/delivery-gate-holds.d.ts.map +1 -1
- package/dist/queries/delivery-gate-state/delivery-gate-state.js +1 -1
- package/dist/queries/escalations/escalations.d.ts.map +1 -1
- package/dist/queries/escalations/escalations.js +0 -1
- package/dist/queries/escalations/escalations.js.map +1 -1
- package/dist/queries/escalations/incident-record.d.ts.map +1 -1
- package/dist/queries/escalations/incident-record.js +1 -0
- package/dist/queries/escalations/incident-record.js.map +1 -1
- package/dist/queries/focus-review/review-criterion-verdicts.d.ts.map +1 -1
- package/dist/queries/focus-review/review-criterion-verdicts.js +1 -0
- package/dist/queries/focus-review/review-criterion-verdicts.js.map +1 -1
- package/dist/queries/focuses/focus-discovery.js +1 -1
- package/dist/queries/migrations/live-focus-branches.d.ts +23 -0
- package/dist/queries/migrations/live-focus-branches.d.ts.map +1 -1
- package/dist/queries/migrations/live-focus-branches.js +32 -1
- package/dist/queries/migrations/live-focus-branches.js.map +1 -1
- package/dist/queries/prd/prd.d.ts.map +1 -1
- package/dist/queries/prd/prd.js +1 -16
- package/dist/queries/prd/prd.js.map +1 -1
- package/dist/queries/qa-packets/focus-qa-failure.d.ts +18 -0
- package/dist/queries/qa-packets/focus-qa-failure.d.ts.map +1 -1
- package/dist/queries/qa-packets/focus-qa-failure.js +14 -1
- package/dist/queries/qa-packets/focus-qa-failure.js.map +1 -1
- package/dist/queries/tower-decisions/tower-decisions.d.ts.map +1 -1
- package/dist/queries/tower-decisions/tower-decisions.js +1 -0
- package/dist/queries/tower-decisions/tower-decisions.js.map +1 -1
- package/dist/queries/verification/verification.d.ts +10 -0
- package/dist/queries/verification/verification.d.ts.map +1 -1
- package/dist/queries/verification/verification.js +1 -1
- package/dist/queries/verification/verification.js.map +1 -1
- package/dist/spawn/spawn-decision.d.ts.map +1 -1
- package/dist/spawn/spawn-decision.js +1 -18
- package/dist/spawn/spawn-decision.js.map +1 -1
- package/dist/supervision/escalation-suppression.js +1 -1
- package/dist/supervision/failed-head-rerun.d.ts +7 -0
- package/dist/supervision/failed-head-rerun.d.ts.map +1 -0
- package/dist/supervision/failed-head-rerun.js +41 -0
- package/dist/supervision/failed-head-rerun.js.map +1 -0
- package/dist/supervision/focus-delivery-aggregate-phase.js +1 -1
- package/dist/supervision/focus-delivery-aggregate-phase.js.map +1 -1
- package/dist/supervision/focus-liveness.d.ts +89 -0
- package/dist/supervision/focus-liveness.d.ts.map +1 -0
- package/dist/supervision/focus-liveness.js +94 -0
- package/dist/supervision/focus-liveness.js.map +1 -0
- package/dist/supervision/focus-next-step.d.ts +175 -0
- package/dist/supervision/focus-next-step.d.ts.map +1 -0
- package/dist/supervision/focus-next-step.js +129 -0
- package/dist/supervision/focus-next-step.js.map +1 -0
- package/dist/supervision/prd-frontier-rule.d.ts +52 -0
- package/dist/supervision/prd-frontier-rule.d.ts.map +1 -0
- package/dist/supervision/prd-frontier-rule.js +51 -0
- package/dist/supervision/prd-frontier-rule.js.map +1 -0
- package/dist/supervision/prt-frontier.d.ts +22 -7
- package/dist/supervision/prt-frontier.d.ts.map +1 -1
- package/dist/supervision/prt-frontier.js +17 -7
- package/dist/supervision/prt-frontier.js.map +1 -1
- package/dist/supervision/review-loop-detector.d.ts.map +1 -1
- package/dist/supervision/review-loop-detector.js +2 -1
- package/dist/supervision/review-loop-detector.js.map +1 -1
- package/dist/supervision/spawn-cooldown.js +1 -1
- package/dist/supervision/stop-registry.d.ts +1 -0
- package/dist/supervision/stop-registry.d.ts.map +1 -1
- package/dist/supervision/stop-rows-focus-health.d.ts +14 -0
- package/dist/supervision/stop-rows-focus-health.d.ts.map +1 -1
- package/dist/supervision/stop-rows-focus-health.js +32 -0
- package/dist/supervision/stop-rows-focus-health.js.map +1 -1
- package/dist/supervision/stop-rows-spawn.d.ts +3 -2
- package/dist/supervision/stop-rows-spawn.d.ts.map +1 -1
- package/dist/supervision/stop-rows-spawn.js +9 -6
- package/dist/supervision/stop-rows-spawn.js.map +1 -1
- package/dist/supervision/team-work.js +1 -1
- package/dist/supervision/team-work.js.map +1 -1
- package/dist/testing/fixtures/api-client.js +1 -1
- package/dist/testing/fixtures/index.js +1 -1
- package/dist/testing/fixtures/migration-namespace-repo.d.ts.map +1 -1
- package/dist/testing/fixtures/migration-namespace-repo.js +1 -0
- package/dist/testing/fixtures/migration-namespace-repo.js.map +1 -1
- package/dist/testing/fixtures/pending-spawn-world.d.ts +24 -0
- package/dist/testing/fixtures/pending-spawn-world.d.ts.map +1 -1
- package/dist/testing/fixtures/pending-spawn-world.js +47 -20
- package/dist/testing/fixtures/pending-spawn-world.js.map +1 -1
- package/dist/testing/fixtures/recording-api-client.js +1 -1
- package/dist/testing/fixtures/review-loop.d.ts.map +1 -1
- package/dist/testing/fixtures/review-loop.js +2 -0
- package/dist/testing/fixtures/review-loop.js.map +1 -1
- package/dist/testing/fixtures/verification-deps.d.ts +27 -0
- package/dist/testing/fixtures/verification-deps.d.ts.map +1 -1
- package/dist/testing/fixtures/verification-deps.js +77 -1
- package/dist/testing/fixtures/verification-deps.js.map +1 -1
- package/dist/testing/fixtures/vitest-failure-log.d.ts.map +1 -1
- package/dist/testing/fixtures/vitest-failure-log.js +1 -0
- package/dist/testing/fixtures/vitest-failure-log.js.map +1 -1
- package/dist/tower/tower-admission.d.ts +46 -9
- package/dist/tower/tower-admission.d.ts.map +1 -1
- package/dist/tower/tower-admission.js +59 -9
- package/dist/tower/tower-admission.js.map +1 -1
- package/dist/tower/tower-graph.d.ts.map +1 -1
- package/dist/tower/tower-graph.js +2 -1
- package/dist/tower/tower-graph.js.map +1 -1
- package/dist/tower/tower-heartbeat-status.d.ts +1 -1
- package/dist/tower/tower-heartbeat-status.d.ts.map +1 -1
- package/dist/tower/tower-heartbeat-status.js.map +1 -1
- package/dist/tower/tower-pass-standing.d.ts +11 -0
- package/dist/tower/tower-pass-standing.d.ts.map +1 -1
- package/dist/tower/tower-pass-standing.js +33 -1
- package/dist/tower/tower-pass-standing.js.map +1 -1
- package/dist/tower/tower-pass.d.ts +28 -4
- package/dist/tower/tower-pass.d.ts.map +1 -1
- package/dist/tower/tower-pass.js +60 -18
- package/dist/tower/tower-pass.js.map +1 -1
- package/dist/tower/tower-spawn-intent.d.ts.map +1 -1
- package/dist/tower/tower-spawn-intent.js +3 -2
- package/dist/tower/tower-spawn-intent.js.map +1 -1
- package/dist/tower/tower-supervisor-history.d.ts.map +1 -1
- package/dist/tower/tower-supervisor-history.js +2 -1
- package/dist/tower/tower-supervisor-history.js.map +1 -1
- package/dist/tower/tower-supervisor-prompt.d.ts.map +1 -1
- package/dist/tower/tower-supervisor-prompt.js +40 -8
- package/dist/tower/tower-supervisor-prompt.js.map +1 -1
- package/dist/tower/tower-supervisor-session.d.ts.map +1 -1
- package/dist/tower/tower-supervisor-session.js +1 -0
- package/dist/tower/tower-supervisor-session.js.map +1 -1
- package/dist/types/issue-status.d.ts.map +1 -1
- package/dist/types/issue-status.js +6 -1
- package/dist/types/issue-status.js.map +1 -1
- package/dist/verify/attribution/code-failure-evidence.d.ts +77 -0
- package/dist/verify/attribution/code-failure-evidence.d.ts.map +1 -0
- package/dist/verify/attribution/code-failure-evidence.js +92 -0
- package/dist/verify/attribution/code-failure-evidence.js.map +1 -0
- package/dist/verify/attribution/verification-attribution.d.ts +18 -0
- package/dist/verify/attribution/verification-attribution.d.ts.map +1 -1
- package/dist/verify/attribution/verification-attribution.js +49 -2
- package/dist/verify/attribution/verification-attribution.js.map +1 -1
- package/dist/verify/attribution/verification-baseline.d.ts.map +1 -1
- package/dist/verify/attribution/verification-baseline.js +1 -0
- package/dist/verify/attribution/verification-baseline.js.map +1 -1
- package/dist/verify/attribution/verification-diagnostics.d.ts +10 -0
- package/dist/verify/attribution/verification-diagnostics.d.ts.map +1 -1
- package/dist/verify/attribution/verification-diagnostics.js +39 -10
- package/dist/verify/attribution/verification-diagnostics.js.map +1 -1
- package/dist/verify/deterministic-gate/verification-deterministic.d.ts +19 -0
- package/dist/verify/deterministic-gate/verification-deterministic.d.ts.map +1 -1
- package/dist/verify/deterministic-gate/verification-deterministic.js +1 -1
- package/dist/verify/deterministic-gate/verification-deterministic.js.map +1 -1
- package/dist/verify/engine/verification-commit-sharing.d.ts.map +1 -1
- package/dist/verify/engine/verification-commit-sharing.js +36 -4
- package/dist/verify/engine/verification-commit-sharing.js.map +1 -1
- package/dist/verify/engine/verification-deps.d.ts +7 -0
- package/dist/verify/engine/verification-deps.d.ts.map +1 -1
- package/dist/verify/engine/verification-engine.d.ts.map +1 -1
- package/dist/verify/engine/verification-engine.js +6 -3
- package/dist/verify/engine/verification-engine.js.map +1 -1
- package/dist/verify/escaped-tests/escaped-test-run.d.ts +5 -1
- package/dist/verify/escaped-tests/escaped-test-run.d.ts.map +1 -1
- package/dist/verify/escaped-tests/escaped-test-run.js +24 -2
- package/dist/verify/escaped-tests/escaped-test-run.js.map +1 -1
- package/dist/verify/failing-test-rerun/failing-test-retry.d.ts +4 -1
- package/dist/verify/failing-test-rerun/failing-test-retry.d.ts.map +1 -1
- package/dist/verify/failing-test-rerun/failing-test-retry.js.map +1 -1
- package/dist/verify/gate-verdicts/commit-verdict-record.js +1 -1
- package/dist/verify/gate-verdicts/commit-verdict-record.js.map +1 -1
- package/dist/verify/gate-verdicts/no-verdict-record.d.ts +27 -3
- package/dist/verify/gate-verdicts/no-verdict-record.d.ts.map +1 -1
- package/dist/verify/gate-verdicts/no-verdict-record.js +36 -6
- package/dist/verify/gate-verdicts/no-verdict-record.js.map +1 -1
- package/dist/verify/outcome-routing/verification-rework-issue.d.ts.map +1 -1
- package/dist/verify/outcome-routing/verification-rework-issue.js +5 -4
- package/dist/verify/outcome-routing/verification-rework-issue.js.map +1 -1
- package/dist/verify/run-selection/default-on-guards.d.ts +15 -4
- package/dist/verify/run-selection/default-on-guards.d.ts.map +1 -1
- package/dist/verify/run-selection/default-on-guards.js +14 -4
- package/dist/verify/run-selection/default-on-guards.js.map +1 -1
- package/dist/verify/run-selection/explicit-next-step-gate.d.ts +39 -0
- package/dist/verify/run-selection/explicit-next-step-gate.d.ts.map +1 -0
- package/dist/verify/run-selection/explicit-next-step-gate.js +70 -0
- package/dist/verify/run-selection/explicit-next-step-gate.js.map +1 -0
- package/dist/verify/run-selection/pre-review-gate-dispatch.d.ts +0 -9
- package/dist/verify/run-selection/pre-review-gate-dispatch.d.ts.map +1 -1
- package/dist/verify/run-selection/pre-review-gate-dispatch.js +21 -62
- package/dist/verify/run-selection/pre-review-gate-dispatch.js.map +1 -1
- package/dist/verify/run-selection/reselection-log-line.d.ts +1 -1
- package/dist/verify/run-selection/reselection-log-line.d.ts.map +1 -1
- package/dist/verify/run-selection/reselection-log-line.js +2 -0
- package/dist/verify/run-selection/reselection-log-line.js.map +1 -1
- package/dist/verify/run-selection/verification-default-on.d.ts +32 -4
- package/dist/verify/run-selection/verification-default-on.d.ts.map +1 -1
- package/dist/verify/run-selection/verification-default-on.js +83 -19
- package/dist/verify/run-selection/verification-default-on.js.map +1 -1
- package/dist/verify/shortfalls/shortfall-park.js +1 -1
- package/dist/worktree/focus-worktree-state.js +1 -1
- package/dist/worktree/focus-worktree-state.js.map +1 -1
- package/docs/runbook-tower.md +33 -5
- package/package.json +3 -3
- package/dist/completion/state-cascade/review-next-step.d.ts +0 -107
- package/dist/completion/state-cascade/review-next-step.d.ts.map +0 -1
- package/dist/completion/state-cascade/review-next-step.js +0 -90
- package/dist/completion/state-cascade/review-next-step.js.map +0 -1
- package/dist/focus/failed-head-wedge.d.ts +0 -124
- package/dist/focus/failed-head-wedge.d.ts.map +0 -1
- package/dist/focus/failed-head-wedge.js +0 -120
- package/dist/focus/failed-head-wedge.js.map +0 -1
- package/dist/focus/stranded-review-reroute.d.ts +0 -70
- package/dist/focus/stranded-review-reroute.d.ts.map +0 -1
- package/dist/focus/stranded-review-reroute.js +0 -193
- package/dist/focus/stranded-review-reroute.js.map +0 -1
- package/dist/focus/uncommitted-work-backstop.d.ts +0 -115
- package/dist/focus/uncommitted-work-backstop.d.ts.map +0 -1
- package/dist/focus/uncommitted-work-backstop.js +0 -259
- package/dist/focus/uncommitted-work-backstop.js.map +0 -1
|
@@ -1,7 +1,8 @@
|
|
|
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/focus/crash-recovery-session-scope.test.ts,
|
|
3
3
|
// packages/daemon/src/focus/crash-recovery.test.ts,
|
|
4
|
-
// packages/daemon/src/focus/safety-capture-entry-points.test.ts
|
|
4
|
+
// packages/daemon/src/focus/safety-capture-entry-points.test.ts,
|
|
5
|
+
// packages/daemon/src/integration/finished-merged-active-focus-restart-regression.test.ts
|
|
5
6
|
// PINNED-BY-END
|
|
6
7
|
/**
|
|
7
8
|
* Crash recovery: orphaned worktree cleanup and stale branch pruning.
|
|
@@ -22,6 +23,7 @@ import { ownedSessionScope } from '../queries/sessions/sessions.js';
|
|
|
22
23
|
import { reconcileOwnedSessions } from '../daemon-state/daemon-instance.js';
|
|
23
24
|
import { NO_HUMAN_ACT } from '../queries/escalations/filing-observation.js';
|
|
24
25
|
import { scanAllFocuses } from '../queries/focuses/focuses.js';
|
|
26
|
+
import { extractFocusIdPrefix, extractFocusKeyFromBranch, parseWorktreeList, pruneStaleAgentBranches, readLiveFocusPopulation, populationKeepsWorktree, } from './live-branch-preservation.js';
|
|
25
27
|
import { ESCALATION_REASONS, ESCALATION_DISPOSITIONS } from '@telora/daemon-core';
|
|
26
28
|
import { createLogger } from '../log/daemon-log.js';
|
|
27
29
|
const log = createLogger({ module: 'crash-recovery' });
|
|
@@ -44,85 +46,12 @@ export async function resolveFocusByKeyPrefixFromFocuses(keyPrefix, productId) {
|
|
|
44
46
|
return null;
|
|
45
47
|
}
|
|
46
48
|
}
|
|
47
|
-
// ── Helpers ──────────────────────────────────────────────────────
|
|
48
|
-
/**
|
|
49
|
-
* Extract the focus ID prefix (last 8 hex chars) from a worktree directory name.
|
|
50
|
-
* Focus worktree directories follow: agent-{role}-{name}-{8-char-id}
|
|
51
|
-
*/
|
|
52
|
-
function extractFocusIdPrefix(dirName) {
|
|
53
|
-
const match = dirName.match(/-([0-9a-f]{8})$/);
|
|
54
|
-
return match ? match[1] : null;
|
|
55
|
-
}
|
|
56
|
-
/**
|
|
57
|
-
* Extract the 8-char focus-key suffix from an agent BRANCH name.
|
|
58
|
-
* Branch format: agent/<role>/<slug>-<8hexfocuskey>. The final path segment
|
|
59
|
-
* carries the same -<8hex> suffix that extractFocusIdPrefix parses off the
|
|
60
|
-
* worktree DIRECTORY name, so this is the branch-name analogue used to anchor a
|
|
61
|
-
* residual signal back to the owning focus.
|
|
62
|
-
*/
|
|
63
|
-
function extractFocusKeyFromBranch(branchName) {
|
|
64
|
-
const lastSegment = branchName.split('/').pop() ?? branchName;
|
|
65
|
-
return extractFocusIdPrefix(lastSegment);
|
|
66
|
-
}
|
|
67
49
|
// ── Worktree scanning ────────────────────────────────────────────
|
|
68
|
-
/**
|
|
69
|
-
|
|
70
|
-
* worktree path -> branch name for all registered worktrees.
|
|
71
|
-
*/
|
|
72
|
-
export function parseWorktreeList(repoPath) {
|
|
73
|
-
const result = runGitSync(['worktree', 'list', '--porcelain'], repoPath);
|
|
74
|
-
const map = new Map();
|
|
75
|
-
if (!result.success)
|
|
76
|
-
return map;
|
|
77
|
-
let currentPath = null;
|
|
78
|
-
for (const line of result.output.split('\n')) {
|
|
79
|
-
if (line.startsWith('worktree ')) {
|
|
80
|
-
currentPath = line.slice('worktree '.length);
|
|
81
|
-
}
|
|
82
|
-
else if (line.startsWith('branch refs/heads/') && currentPath) {
|
|
83
|
-
map.set(currentPath, line.slice('branch refs/heads/'.length));
|
|
84
|
-
currentPath = null;
|
|
85
|
-
}
|
|
86
|
-
else if (line === '') {
|
|
87
|
-
currentPath = null;
|
|
88
|
-
}
|
|
89
|
-
}
|
|
90
|
-
return map;
|
|
91
|
-
}
|
|
92
|
-
/**
|
|
93
|
-
* The 8-char focus-id prefixes whose worktrees are persistent, not orphaned:
|
|
94
|
-
* every ACTIVE focus, plus every focus this host holds a pending completion
|
|
95
|
-
* merge for (RecoveryDeps.listPendingCompletionFocusIds) -- its completed work
|
|
96
|
-
* still has to reach integration from that worktree.
|
|
97
|
-
*/
|
|
98
|
-
async function readPreservedFocusIdPrefixes(config, deps) {
|
|
99
|
-
const prefixes = new Set();
|
|
100
|
-
try {
|
|
101
|
-
const activeFocuses = await deps.getActiveFocuses(config.organizationId, config.productId);
|
|
102
|
-
for (const s of activeFocuses) {
|
|
103
|
-
prefixes.add(s.focus_id.slice(0, 8));
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
catch (err) {
|
|
107
|
-
log.warn(`[crash-recovery] Failed to query active focuses: ${err instanceof Error ? err.message : String(err)}. ` +
|
|
108
|
-
`Persistent focus worktrees may be incorrectly classified as orphaned.`);
|
|
109
|
-
}
|
|
110
|
-
for (const focusId of deps.listPendingCompletionFocusIds(config.productId)) {
|
|
111
|
-
prefixes.add(focusId.slice(0, 8));
|
|
112
|
-
}
|
|
113
|
-
return prefixes;
|
|
114
|
-
}
|
|
115
|
-
/**
|
|
116
|
-
* Scan the worktree directory and reconcile against active DB sessions
|
|
117
|
-
* to classify each worktree as active or orphaned.
|
|
118
|
-
*/
|
|
119
|
-
export async function detectOrphanedWorktrees(config, deps) {
|
|
120
|
-
const { worktreeDir, repoPath } = config;
|
|
121
|
-
// 1. Read all subdirectories in worktreeDir
|
|
50
|
+
/** The subdirectories of the worktree dir (none when it does not exist). */
|
|
51
|
+
function listWorktreeSubdirs(worktreeDir) {
|
|
122
52
|
if (!existsSync(worktreeDir))
|
|
123
53
|
return [];
|
|
124
|
-
|
|
125
|
-
const subdirs = entries.filter((entry) => {
|
|
54
|
+
return readdirSync(worktreeDir).filter((entry) => {
|
|
126
55
|
const fullPath = join(worktreeDir, entry);
|
|
127
56
|
try {
|
|
128
57
|
return statSync(fullPath).isDirectory();
|
|
@@ -132,6 +61,17 @@ export async function detectOrphanedWorktrees(config, deps) {
|
|
|
132
61
|
return false;
|
|
133
62
|
}
|
|
134
63
|
});
|
|
64
|
+
}
|
|
65
|
+
/**
|
|
66
|
+
* Scan the worktree directory and reconcile against active DB sessions
|
|
67
|
+
* to classify each worktree as active or orphaned.
|
|
68
|
+
*/
|
|
69
|
+
export async function detectOrphanedWorktrees(config, deps,
|
|
70
|
+
/** What must not be removed (readLiveFocusPopulation): read once by recoverFromCrash and shared with the pruner. */
|
|
71
|
+
population) {
|
|
72
|
+
const { worktreeDir, repoPath } = config;
|
|
73
|
+
// 1. Read all subdirectories in worktreeDir
|
|
74
|
+
const subdirs = listWorktreeSubdirs(worktreeDir);
|
|
135
75
|
if (subdirs.length === 0)
|
|
136
76
|
return [];
|
|
137
77
|
// 2. Parse git worktree list to map paths -> branch names
|
|
@@ -157,8 +97,9 @@ export async function detectOrphanedWorktrees(config, deps) {
|
|
|
157
97
|
for (const session of activeSessions) {
|
|
158
98
|
branchToSession.set(session.branch_name, session);
|
|
159
99
|
}
|
|
160
|
-
// 3b.
|
|
161
|
-
|
|
100
|
+
// 3b. Live focuses (the migration branch population) and pending completion
|
|
101
|
+
// merges keep their persistent worktrees.
|
|
102
|
+
const activeFocusIdPrefixes = population.focusIdPrefixes;
|
|
162
103
|
// 4. Classify each worktree subdirectory
|
|
163
104
|
const orphans = [];
|
|
164
105
|
for (const subdir of subdirs) {
|
|
@@ -187,12 +128,9 @@ export async function detectOrphanedWorktrees(config, deps) {
|
|
|
187
128
|
log.info(`Worktree is active (has DB session): ${fullPath} [${branchName}]`);
|
|
188
129
|
continue;
|
|
189
130
|
}
|
|
190
|
-
//
|
|
191
|
-
|
|
192
|
-
if (idPrefix && activeFocusIdPrefixes.has(idPrefix)) {
|
|
193
|
-
log.info(`Worktree belongs to an active focus or a pending completion merge (persistent): ${fullPath} [${branchName}]`);
|
|
131
|
+
// A live focus's worktree is persistent, merged or not (and an unread population keeps everything).
|
|
132
|
+
if (populationKeepsWorktree(population, subdir, fullPath, branchName))
|
|
194
133
|
continue;
|
|
195
|
-
}
|
|
196
134
|
// No active session and no active focus — orphaned
|
|
197
135
|
const session = branchToSession.get(branchName) ?? null;
|
|
198
136
|
orphans.push({
|
|
@@ -283,6 +221,7 @@ function cleanupSingleOrphan(orphan, config, deps, capture) {
|
|
|
283
221
|
if (deleteResult.success) {
|
|
284
222
|
log.info(`Deleted merged branch: ${branchName}`);
|
|
285
223
|
}
|
|
224
|
+
const branchDeleted = deleteResult.success;
|
|
286
225
|
return {
|
|
287
226
|
worktreePath,
|
|
288
227
|
branchName,
|
|
@@ -291,6 +230,7 @@ function cleanupSingleOrphan(orphan, config, deps, capture) {
|
|
|
291
230
|
focusKey,
|
|
292
231
|
worktreeRemoved: true,
|
|
293
232
|
branchPreserved: false,
|
|
233
|
+
branchDeleted,
|
|
294
234
|
};
|
|
295
235
|
}
|
|
296
236
|
const unmergedCount = countUnmergedCommits(branchName, integrationBranch, repoPath);
|
|
@@ -460,64 +400,35 @@ export async function cleanupOrphanedWorktrees(orphans, config, deps) {
|
|
|
460
400
|
}
|
|
461
401
|
return actions;
|
|
462
402
|
}
|
|
463
|
-
// ── Stale branch pruning ─────────────────────────────────────────
|
|
464
403
|
/**
|
|
465
|
-
*
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
|
|
469
|
-
if (!result.success)
|
|
470
|
-
return [];
|
|
471
|
-
return result.output
|
|
472
|
-
.split('\n')
|
|
473
|
-
.map((line) => line.replace(/^[*+]?\s+/, '').trim())
|
|
474
|
-
.filter(Boolean);
|
|
475
|
-
}
|
|
476
|
-
/**
|
|
477
|
-
* Prune stale agent branches that have no worktree and no unmerged commits.
|
|
478
|
-
*
|
|
479
|
-
* Same housekeeping policy as the orphaned-worktree path: a branch with
|
|
480
|
-
* unmerged commits is PRESERVED and LOGGED (the commits are recoverable from
|
|
481
|
-
* the ref), never escalated. A merged branch with no worktree is safe to delete.
|
|
482
|
-
* No path here files a needs_operator escalation -- branch-only orphans are
|
|
483
|
-
* reality-side housekeeping the daemon owns.
|
|
404
|
+
* Step 3 of recovery: prune stale agent branches (keeping every branch the live
|
|
405
|
+
* population names), then record every branch the pass deleted -- merged orphans
|
|
406
|
+
* and pruned branches -- so a migration claim later refused for a missing branch
|
|
407
|
+
* can name what removed it (daemon-state/branch-removal-record.ts).
|
|
484
408
|
*/
|
|
485
|
-
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
return { pruned, preserved };
|
|
409
|
+
function pruneAndRecordRemovals(config, deps, livePopulation, result) {
|
|
410
|
+
let prunedBranches = [];
|
|
411
|
+
try {
|
|
412
|
+
const { pruned, preserved } = pruneStaleAgentBranches(config, livePopulation);
|
|
413
|
+
prunedBranches = pruned;
|
|
414
|
+
result.branchesPruned = pruned.length;
|
|
415
|
+
result.branchesPreserved = preserved.length;
|
|
493
416
|
}
|
|
494
|
-
|
|
495
|
-
|
|
496
|
-
|
|
497
|
-
|
|
498
|
-
// Skip branches with active worktrees
|
|
499
|
-
if (worktreeBranches.has(branch))
|
|
500
|
-
continue;
|
|
501
|
-
// Check for unmerged commits
|
|
502
|
-
if (branchHasUnmergedCommits(branch, integrationBranch, repoPath)) {
|
|
503
|
-
const focusKey = extractFocusKeyFromBranch(branch);
|
|
504
|
-
log.info(`[crash-recovery] Housekeeping: preserving stale branch with unmerged commits: ${branch}` +
|
|
505
|
-
(focusKey ? ` (focus-key ${focusKey})` : ''));
|
|
506
|
-
preserved.push(branch);
|
|
507
|
-
continue;
|
|
508
|
-
}
|
|
509
|
-
// Safe to delete
|
|
510
|
-
const deleteResult = runGitSync(['branch', '-D', branch], repoPath);
|
|
511
|
-
if (deleteResult.success) {
|
|
512
|
-
log.info(`Pruned stale branch: ${branch}`);
|
|
513
|
-
pruned.push(branch);
|
|
514
|
-
}
|
|
515
|
-
else {
|
|
516
|
-
log.warn(`Failed to prune branch ${branch}: ${deleteResult.error}`);
|
|
517
|
-
}
|
|
417
|
+
catch (err) {
|
|
418
|
+
const msg = `Failed during branch pruning: ${err instanceof Error ? err.message : String(err)}`;
|
|
419
|
+
log.error(`${msg}`);
|
|
420
|
+
result.errors.push(msg);
|
|
518
421
|
}
|
|
519
|
-
|
|
520
|
-
|
|
422
|
+
if (!config.productId)
|
|
423
|
+
return;
|
|
424
|
+
const at = Date.now();
|
|
425
|
+
const removals = [
|
|
426
|
+
...result.actions
|
|
427
|
+
.filter((a) => a.branchDeleted)
|
|
428
|
+
.map((a) => ({ branch: a.branchName, kind: 'merged_orphan', at })),
|
|
429
|
+
...prunedBranches.map((branch) => ({ branch, kind: 'stale_branch', at })),
|
|
430
|
+
];
|
|
431
|
+
deps.recordBranchRemovals(config.productId, removals);
|
|
521
432
|
}
|
|
522
433
|
// ── Main recovery orchestrator ───────────────────────────────────
|
|
523
434
|
/**
|
|
@@ -537,10 +448,13 @@ export async function recoverFromCrash(config, deps) {
|
|
|
537
448
|
actions: [],
|
|
538
449
|
errors: [],
|
|
539
450
|
};
|
|
451
|
+
// Step 0: Read the live focus population ONCE; the worktree classifier and the
|
|
452
|
+
// branch pruner both keep what it names (the migration allocator's rule).
|
|
453
|
+
const livePopulation = await readLiveFocusPopulation(config, deps);
|
|
540
454
|
// Step 1: Detect orphaned worktrees
|
|
541
455
|
let orphans;
|
|
542
456
|
try {
|
|
543
|
-
orphans = await detectOrphanedWorktrees(config, deps);
|
|
457
|
+
orphans = await detectOrphanedWorktrees(config, deps, livePopulation);
|
|
544
458
|
result.orphansDetected = orphans.length;
|
|
545
459
|
}
|
|
546
460
|
catch (err) {
|
|
@@ -576,17 +490,8 @@ export async function recoverFromCrash(config, deps) {
|
|
|
576
490
|
result.errors.push(msg);
|
|
577
491
|
}
|
|
578
492
|
}
|
|
579
|
-
// Step 3: Prune stale agent branches
|
|
580
|
-
|
|
581
|
-
const { pruned, preserved } = pruneStaleAgentBranches(config);
|
|
582
|
-
result.branchesPruned = pruned.length;
|
|
583
|
-
result.branchesPreserved = preserved.length;
|
|
584
|
-
}
|
|
585
|
-
catch (err) {
|
|
586
|
-
const msg = `Failed during branch pruning: ${err instanceof Error ? err.message : String(err)}`;
|
|
587
|
-
log.error(`${msg}`);
|
|
588
|
-
result.errors.push(msg);
|
|
589
|
-
}
|
|
493
|
+
// Step 3: Prune stale agent branches, then record every branch this pass deleted.
|
|
494
|
+
pruneAndRecordRemovals(config, deps, livePopulation, result);
|
|
590
495
|
// Step 4: Mark remaining active sessions failed (DB-driven reconciliation) -- ones left
|
|
591
496
|
// behind with no worktree. Every row this pass writes it stamps failed, so it reads only
|
|
592
497
|
// what we OWN and closes only what is provably STOPPED: see reconcileOwnedSessions.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"crash-recovery.js","sourceRoot":"","sources":["../../src/focus/crash-recovery.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"crash-recovery.js","sourceRoot":"","sources":["../../src/focus/crash-recovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -24,7 +24,7 @@ import type { TickDeadlineDeps } from './tick-deadline.js';
|
|
|
24
24
|
import type { CooperativeStopDeps, ReapDisarmedTeamsDeps } from './control-state.js';
|
|
25
25
|
import type { ReviewSpawnCoverageDeps } from './review-spawn-coverage.js';
|
|
26
26
|
import type { UnchangedReviewedHeadDeps } from './unchanged-reviewed-head.js';
|
|
27
|
-
import type {
|
|
27
|
+
import type { ReviewRefireDeps } from './review-refire-gate.js';
|
|
28
28
|
import type { SpawnPassContext } from './pending-spawn-pass-deps.js';
|
|
29
29
|
import type { RespawnGuardDeps } from './focus-respawn-guard.js';
|
|
30
30
|
import type { CheckVerifyDeliveriesDeps } from './verify-open-issues.js';
|
|
@@ -58,8 +58,8 @@ export interface RuntimeContexts {
|
|
|
58
58
|
readonly reviewSpawnCoverage: ReviewSpawnCoverageDeps;
|
|
59
59
|
/** The unchanged-reviewed-range read (focus/unchanged-reviewed-head.ts). */
|
|
60
60
|
readonly unchangedReviewedHead: UnchangedReviewedHeadDeps;
|
|
61
|
-
/** The stranded-review
|
|
62
|
-
readonly
|
|
61
|
+
/** The stranded-review re-fire gate's reads: the gate-verdict hold and the focus's next step (focus/review-refire-gate.ts). */
|
|
62
|
+
readonly reviewRefire: ReviewRefireDeps;
|
|
63
63
|
/** The two spawn passes' focus reads, team spawn and review-next-step gate (focus/pending-spawn-pass-deps.ts). */
|
|
64
64
|
readonly spawnPass: SpawnPassContext;
|
|
65
65
|
/** The pre-spawn respawn guard's escalation lookups (focus/focus-respawn-guard.ts applyRespawnGuard). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"daemon-contexts-runtime.d.ts","sourceRoot":"","sources":["../../src/focus/daemon-contexts-runtime.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AACtD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAC3D,OAAO,KAAK,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACrF,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4BAA4B,CAAC;AAC1E,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,8BAA8B,CAAC;AAC9E,OAAO,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"daemon-contexts-runtime.d.ts","sourceRoot":"","sources":["../../src/focus/daemon-contexts-runtime.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
// PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
|
|
2
|
-
// Pinned by:
|
|
2
|
+
// Pinned by: 30 tests -- run: npm run gen:pinned-by -- --list packages/daemon/src/focus/daemon-contexts.ts
|
|
3
3
|
// PINNED-BY-END
|
|
4
4
|
let installed = null;
|
|
5
5
|
/** Install the contexts the engine built. Called once, by FocusEngine.init(). */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directive-executor.d.ts","sourceRoot":"","sources":["../../src/focus/directive-executor.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAkB,MAAM,mBAAmB,CAAC;AA4ItE,wBAAsB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"directive-executor.d.ts","sourceRoot":"","sources":["../../src/focus/directive-executor.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAkB,MAAM,mBAAmB,CAAC;AA4ItE,wBAAsB,eAAe,CAAC,MAAM,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC,CAiNzE"}
|
|
@@ -13,7 +13,7 @@ import { computeDirectiveHash, getPendingSpawnDirective, hasPendingSpawnDirectiv
|
|
|
13
13
|
import { fireFocusTransitionTriggers, syncFocusPhase, } from '../directive/phase-sync.js';
|
|
14
14
|
import { executeDirective, resolveDirectiveExecutionMode, isQuietTerminalStage, runDirectiveWithRetry, escalateDirectiveFailure, directiveConsumesStageEntry, } from '../spawn/directive-dispatch.js';
|
|
15
15
|
import { isAgentlessDirective } from '../directive/agentless-directive.js';
|
|
16
|
-
import {
|
|
16
|
+
import { reviewMayRefire } from './review-refire-gate.js';
|
|
17
17
|
import { installedDaemonContexts } from './daemon-contexts.js';
|
|
18
18
|
import { createLogger } from '../log/daemon-log.js';
|
|
19
19
|
const log = createLogger({ module: 'directive-executor' });
|
|
@@ -134,7 +134,7 @@ export async function checkDirectives(config) {
|
|
|
134
134
|
// only proceed if this is genuinely a stranded review stage (re-fire);
|
|
135
135
|
// otherwise leave the edge-trigger skip intact for every other stage.
|
|
136
136
|
if (alreadyProcessed &&
|
|
137
|
-
!await
|
|
137
|
+
!await reviewMayRefire(focus, stage?.name, getActiveTeams().has(focus.focus_id), installedDaemonContexts().reviewRefire)) {
|
|
138
138
|
continue;
|
|
139
139
|
}
|
|
140
140
|
// Bound the re-fire: if an equivalent spawn directive (same
|
|
@@ -162,11 +162,7 @@ export async function checkDirectives(config) {
|
|
|
162
162
|
continue;
|
|
163
163
|
}
|
|
164
164
|
if (alreadyProcessed) {
|
|
165
|
-
// Bounded
|
|
166
|
-
// failure is routed to rework instead of another identical review.
|
|
167
|
-
const bounded = await boundStrandedReviewRefire(focus, { productId: product.id, organizationId: pc.organizationId }, installedDaemonContexts().strandedReviewReroute);
|
|
168
|
-
if (bounded === 'rerouted')
|
|
169
|
-
continue;
|
|
165
|
+
// Bounded by the liveness detector: a review that does not move the focus is reported, not re-fired.
|
|
170
166
|
log.info(`[directive-executor] Re-firing stranded review directive for "${focus.focus_name}" ` +
|
|
171
167
|
`(stuck in review with a pending request and no active team)`);
|
|
172
168
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"directive-executor.js","sourceRoot":"","sources":["../../src/focus/directive-executor.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,2EAA2E;AAC3E,gBAAgB;AAqBhB,OAAO,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,qCAAqC,CAAC;AACzF,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AAEnE,OAAO,EAAE,gBAAgB,EAAE,MAAM,uCAAuC,CAAC;AACzE,OAAO,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,+BAA+B,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,+BAA+B,CAAC;AAE1E,OAAO,EAAE,mBAAmB,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAC7F,OAAO,EACL,oBAAoB,EACpB,wBAAwB,EACxB,wBAAwB,EACxB,mCAAmC,EACnC,0BAA0B,EAC1B,uBAAuB,GACxB,MAAM,iCAAiC,CAAC;AACzC,OAAO,EACL,2BAA2B,EAC3B,cAAc,GACf,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,gBAAgB,EAChB,6BAA6B,EAC7B,oBAAoB,EACpB,qBAAqB,EACrB,wBAAwB,EACxB,2BAA2B,GAG5B,MAAM,gCAAgC,CAAC;AACxC,OAAO,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAC3E,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"directive-executor.js","sourceRoot":"","sources":["../../src/focus/directive-executor.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* What a coding team for a failed HEAD's rework needs before it can start: the
|
|
3
|
+
* HEAD's rework Bug, on a delivery a coding pass routes. The liveness pass
|
|
4
|
+
* (focus/focus-liveness-pass.ts) calls this when the focus's one next step is that
|
|
5
|
+
* coding team and none has started.
|
|
6
|
+
*
|
|
7
|
+
* Every red verdict at the head owes exactly one rework Bug, keyed on the commit
|
|
8
|
+
* (verify/outcome-routing/verification-rework-issue.ts). So:
|
|
9
|
+
* - a Bug for the HEAD sitting OPEN on a done or paused delivery is filed but
|
|
10
|
+
* routed by nothing -- its owed re-open (verify/outcome-routing/gate-rework-reopen.ts)
|
|
11
|
+
* is retried here, and nothing is filed again;
|
|
12
|
+
* - a Bug for the HEAD anywhere else (open on a routable delivery, or closed) is
|
|
13
|
+
* the decision's to answer -- nothing to do here;
|
|
14
|
+
* - no Bug for the HEAD: it is filed through the SAME per-focus filing every
|
|
15
|
+
* failed-verdict path uses (fileReworkForFailedVerdict: deduped per commit,
|
|
16
|
+
* attributed to one owner, a done or paused owner re-opened with it).
|
|
17
|
+
* Unrelated open work never stands in for it: it names nothing about the red.
|
|
18
|
+
*
|
|
19
|
+
* READY OR NOT. The start answers whether the rework is startable now -- the Bug
|
|
20
|
+
* stands on a routable delivery, or nothing is owed -- and what it did, for the
|
|
21
|
+
* log. A filing that did not land WITHOUT throwing (the focus's deliveries or
|
|
22
|
+
* issues unreadable, the create failed) or a re-open the reconciler did not make
|
|
23
|
+
* is NOT ready: the liveness pass queues no coding team on it and asks again next
|
|
24
|
+
* poll, as the retired failed-head wedge retried them. A throw is not ready either.
|
|
25
|
+
*
|
|
26
|
+
* @module focus/failed-head-rework-start
|
|
27
|
+
*/
|
|
28
|
+
import type { CommitVerdict } from '../verify/gate-verdicts/commit-verdict-record.js';
|
|
29
|
+
import { type FailedVerdictReworkResult } from '../verify/outcome-routing/verification-rework-issue.js';
|
|
30
|
+
import { type ReworkDeliveryRow } from '../verify/attribution/rework-attribution.js';
|
|
31
|
+
import type { GateReworkReopen } from '../verify/outcome-routing/gate-rework-reopen.js';
|
|
32
|
+
/** The reads and writes the start takes, every one REQUIRED (composition/runtime-poll-context.ts binds them). */
|
|
33
|
+
export interface FailedHeadReworkStartDeps {
|
|
34
|
+
readCommitVerdict: (productId: string, focusId: string, sha: string) => CommitVerdict | null;
|
|
35
|
+
getFocusDeliveries: (focusId: string) => Promise<ReadonlyArray<{
|
|
36
|
+
id: string;
|
|
37
|
+
executionStatus?: string | null;
|
|
38
|
+
}>>;
|
|
39
|
+
getDeliveryIssues: (deliveryId: string) => Promise<ReadonlyArray<{
|
|
40
|
+
id: string;
|
|
41
|
+
title: string;
|
|
42
|
+
status: string;
|
|
43
|
+
issueType: string;
|
|
44
|
+
}>>;
|
|
45
|
+
/** The per-focus rework filing every failed-verdict path uses (fileReworkForFailedVerdict). */
|
|
46
|
+
fileReworkForFailedVerdict: (focusId: string, verdict: CommitVerdict) => Promise<FailedVerdictReworkResult>;
|
|
47
|
+
/** The re-open a done or paused Bug carrier is owed (gate-rework-reopen.ts reopenForGateRework). */
|
|
48
|
+
reopenForRework: (delivery: ReworkDeliveryRow) => Promise<GateReworkReopen>;
|
|
49
|
+
}
|
|
50
|
+
/** Whether the rework is startable now, and what the start did (module header). */
|
|
51
|
+
export interface FailedHeadReworkStart {
|
|
52
|
+
ready: boolean;
|
|
53
|
+
did: string;
|
|
54
|
+
}
|
|
55
|
+
/** Make the failed HEAD's rework startable (module header). */
|
|
56
|
+
export declare function startFailedHeadRework(target: {
|
|
57
|
+
focusId: string;
|
|
58
|
+
productId: string;
|
|
59
|
+
head: string;
|
|
60
|
+
}, deps: FailedHeadReworkStartDeps): Promise<FailedHeadReworkStart>;
|
|
61
|
+
//# sourceMappingURL=failed-head-rework-start.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"failed-head-rework-start.d.ts","sourceRoot":"","sources":["../../src/focus/failed-head-rework-start.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kDAAkD,CAAC;AACtF,OAAO,EAA+B,KAAK,yBAAyB,EAAE,MAAM,wDAAwD,CAAC;AACrI,OAAO,EAAoB,KAAK,iBAAiB,EAAE,MAAM,6CAA6C,CAAC;AACvG,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iDAAiD,CAAC;AAIxF,iHAAiH;AACjH,MAAM,WAAW,yBAAyB;IACxC,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,KAAK,aAAa,GAAG,IAAI,CAAC;IAC7F,kBAAkB,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,aAAa,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC,CAAC;IACjH,iBAAiB,EAAE,CAAC,UAAU,EAAE,MAAM,KAAK,OAAO,CAAC,aAAa,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;IACpI,+FAA+F;IAC/F,0BAA0B,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,aAAa,KAAK,OAAO,CAAC,yBAAyB,CAAC,CAAC;IAC5G,oGAAoG;IACpG,eAAe,EAAE,CAAC,QAAQ,EAAE,iBAAiB,KAAK,OAAO,CAAC,gBAAgB,CAAC,CAAC;CAC7E;AAmBD,mFAAmF;AACnF,MAAM,WAAW,qBAAqB;IACpC,KAAK,EAAE,OAAO,CAAC;IACf,GAAG,EAAE,MAAM,CAAC;CACb;AASD,+DAA+D;AAC/D,wBAAsB,qBAAqB,CACzC,MAAM,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,EAC5D,IAAI,EAAE,yBAAyB,GAC9B,OAAO,CAAC,qBAAqB,CAAC,CAchC"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
// PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
|
|
2
|
+
// Pinned by: packages/daemon/src/focus/failed-head-rework-start.test.ts,
|
|
3
|
+
// packages/daemon/src/focus/focus-liveness-pass.test.ts,
|
|
4
|
+
// packages/daemon/src/integration/failed-verdict-review-exit-respawn-regression.test.ts,
|
|
5
|
+
// packages/daemon/src/integration/failed-verdict-review-loop-regression.test.ts,
|
|
6
|
+
// packages/daemon/src/integration/red-head-integration-merge-rework-regression.test.ts
|
|
7
|
+
// PINNED-BY-END
|
|
8
|
+
import { describeFailedVerdictRework } from '../verify/outcome-routing/verification-rework-issue.js';
|
|
9
|
+
import { reopensForRework } from '../verify/attribution/rework-attribution.js';
|
|
10
|
+
import { filterWorkIssues, REWORK_ISSUE_TITLE_PREFIX } from '../types/issue-status.js';
|
|
11
|
+
import { NO_RECORDED_CONCERNS, splitOpenWork } from '../delivery/recorded-concerns.js';
|
|
12
|
+
async function findHeadBug(focusId, head, deps) {
|
|
13
|
+
const prefix = `${REWORK_ISSUE_TITLE_PREFIX} ${head.slice(0, 12)}:`;
|
|
14
|
+
for (const delivery of await deps.getFocusDeliveries(focusId)) {
|
|
15
|
+
const bugs = filterWorkIssues([...await deps.getDeliveryIssues(delivery.id)]).filter((i) => i.title.startsWith(prefix));
|
|
16
|
+
if (bugs.length === 0)
|
|
17
|
+
continue;
|
|
18
|
+
// Owed as work is the one definition; a gate rework Bug is never a recorded concern.
|
|
19
|
+
if (reopensForRework(delivery.executionStatus) && splitOpenWork(bugs, NO_RECORDED_CONCERNS).owed.length > 0) {
|
|
20
|
+
return { kind: 'reopen_owed', carrier: { id: delivery.id, executionStatus: delivery.executionStatus ?? null } };
|
|
21
|
+
}
|
|
22
|
+
return { kind: 'routed' };
|
|
23
|
+
}
|
|
24
|
+
return { kind: 'none' };
|
|
25
|
+
}
|
|
26
|
+
/** A filing that did not land and may land on a retry: unreadable deliveries or issues, or a failed create. */
|
|
27
|
+
function filingLanded(result) {
|
|
28
|
+
if (result.kind === 'deliveries_unreadable')
|
|
29
|
+
return false;
|
|
30
|
+
if (result.kind !== 'offered' || result.outcome.filed)
|
|
31
|
+
return true;
|
|
32
|
+
return result.outcome.reason !== 'read_failed' && result.outcome.reason !== 'create_failed';
|
|
33
|
+
}
|
|
34
|
+
/** Make the failed HEAD's rework startable (module header). */
|
|
35
|
+
export async function startFailedHeadRework(target, deps) {
|
|
36
|
+
const verdict = deps.readCommitVerdict(target.productId, target.focusId, target.head);
|
|
37
|
+
if (verdict?.outcome !== 'failed')
|
|
38
|
+
return { ready: true, did: `no failed verdict is recorded at ${target.head.slice(0, 12)}; nothing to file` };
|
|
39
|
+
const bug = await findHeadBug(target.focusId, target.head, deps);
|
|
40
|
+
if (bug.kind === 'routed')
|
|
41
|
+
return { ready: true, did: 'the HEAD\'s rework Bug is already filed on a routable delivery' };
|
|
42
|
+
if (bug.kind === 'reopen_owed') {
|
|
43
|
+
const outcome = await deps.reopenForRework(bug.carrier);
|
|
44
|
+
return {
|
|
45
|
+
ready: outcome !== 'stays',
|
|
46
|
+
did: `re-opened ${bug.carrier.executionStatus} delivery ${bug.carrier.id}, which carries the HEAD's open rework Bug: ${outcome}`,
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
const filed = await deps.fileReworkForFailedVerdict(target.focusId, verdict);
|
|
50
|
+
return { ready: filingLanded(filed), did: describeFailedVerdictRework(filed) };
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=failed-head-rework-start.js.map
|