@telora/daemon 0.22.104 → 0.22.132
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 +4 -3
- package/dist/completion/commit-verdict-release.d.ts +49 -0
- package/dist/completion/commit-verdict-release.d.ts.map +1 -0
- package/dist/completion/commit-verdict-release.js +240 -0
- package/dist/completion/commit-verdict-release.js.map +1 -0
- package/dist/completion/completion-phase-registry.d.ts +10 -4
- package/dist/completion/completion-phase-registry.d.ts.map +1 -1
- package/dist/completion/completion-phase-registry.js +19 -7
- package/dist/completion/completion-phase-registry.js.map +1 -1
- package/dist/completion/detector.d.ts.map +1 -1
- package/dist/completion/detector.js +1 -0
- package/dist/completion/detector.js.map +1 -1
- package/dist/completion/event-entry-phases.d.ts +6 -3
- package/dist/completion/event-entry-phases.d.ts.map +1 -1
- package/dist/completion/event-entry-phases.js +135 -76
- package/dist/completion/event-entry-phases.js.map +1 -1
- package/dist/completion/event-phases.d.ts +24 -3
- package/dist/completion/event-phases.d.ts.map +1 -1
- package/dist/completion/event-phases.js +9 -9
- package/dist/completion/event-phases.js.map +1 -1
- package/dist/completion/event.d.ts +8 -0
- package/dist/completion/event.d.ts.map +1 -1
- package/dist/completion/event.js +47 -21
- package/dist/completion/event.js.map +1 -1
- package/dist/completion/exit-classification.d.ts.map +1 -1
- package/dist/completion/exit-classification.js +1 -0
- package/dist/completion/exit-classification.js.map +1 -1
- package/dist/completion/merge-phase.d.ts +21 -9
- package/dist/completion/merge-phase.d.ts.map +1 -1
- package/dist/completion/merge-phase.js +35 -10
- package/dist/completion/merge-phase.js.map +1 -1
- package/dist/completion/review-auto-approval-record.d.ts +19 -0
- package/dist/completion/review-auto-approval-record.d.ts.map +1 -0
- package/dist/completion/review-auto-approval-record.js +102 -0
- package/dist/completion/review-auto-approval-record.js.map +1 -0
- package/dist/completion/review-cycle-cap.d.ts +62 -0
- package/dist/completion/review-cycle-cap.d.ts.map +1 -0
- package/dist/completion/review-cycle-cap.js +180 -0
- package/dist/completion/review-cycle-cap.js.map +1 -0
- package/dist/completion/review-exit-deps.d.ts +17 -2
- package/dist/completion/review-exit-deps.d.ts.map +1 -1
- package/dist/completion/review-exit-deps.js +19 -2
- package/dist/completion/review-exit-deps.js.map +1 -1
- package/dist/completion/review-exit-escalations.d.ts +45 -23
- package/dist/completion/review-exit-escalations.d.ts.map +1 -1
- package/dist/completion/review-exit-escalations.js +15 -74
- package/dist/completion/review-exit-escalations.js.map +1 -1
- package/dist/completion/review-exit-evidence.d.ts +9 -0
- package/dist/completion/review-exit-evidence.d.ts.map +1 -1
- package/dist/completion/review-exit-evidence.js +4 -1
- package/dist/completion/review-exit-evidence.js.map +1 -1
- package/dist/completion/review-exit-foreign-findings.d.ts +151 -0
- package/dist/completion/review-exit-foreign-findings.d.ts.map +1 -0
- package/dist/completion/review-exit-foreign-findings.js +474 -0
- package/dist/completion/review-exit-foreign-findings.js.map +1 -0
- package/dist/completion/review-exit-phase.d.ts.map +1 -1
- package/dist/completion/review-exit-phase.js +71 -64
- package/dist/completion/review-exit-phase.js.map +1 -1
- package/dist/completion/review-exit-progress.d.ts +20 -0
- package/dist/completion/review-exit-progress.d.ts.map +1 -1
- package/dist/completion/review-exit-progress.js +28 -19
- package/dist/completion/review-exit-progress.js.map +1 -1
- package/dist/completion/review-exit-rehoming.d.ts +5 -0
- package/dist/completion/review-exit-rehoming.d.ts.map +1 -1
- package/dist/completion/review-exit-rehoming.js.map +1 -1
- package/dist/completion/review-exit-verdict-gate.d.ts +202 -0
- package/dist/completion/review-exit-verdict-gate.d.ts.map +1 -0
- package/dist/completion/review-exit-verdict-gate.js +228 -0
- package/dist/completion/review-exit-verdict-gate.js.map +1 -0
- package/dist/completion/review-next-step.d.ts +62 -0
- package/dist/completion/review-next-step.d.ts.map +1 -0
- package/dist/completion/review-next-step.js +63 -0
- package/dist/completion/review-next-step.js.map +1 -0
- package/dist/completion/session-hold-sweep-deps.d.ts +17 -0
- package/dist/completion/session-hold-sweep-deps.d.ts.map +1 -0
- package/dist/completion/session-hold-sweep-deps.js +89 -0
- package/dist/completion/session-hold-sweep-deps.js.map +1 -0
- package/dist/completion/session-hold.d.ts +180 -0
- package/dist/completion/session-hold.d.ts.map +1 -0
- package/dist/completion/session-hold.js +238 -0
- package/dist/completion/session-hold.js.map +1 -0
- package/dist/completion/state-cascade.d.ts +19 -0
- package/dist/completion/state-cascade.d.ts.map +1 -1
- package/dist/completion/state-cascade.js +85 -31
- package/dist/completion/state-cascade.js.map +1 -1
- package/dist/completion/team-lifecycle.d.ts +35 -2
- package/dist/completion/team-lifecycle.d.ts.map +1 -1
- package/dist/completion/team-lifecycle.js +165 -94
- package/dist/completion/team-lifecycle.js.map +1 -1
- package/dist/completion/team-phase.d.ts +27 -15
- package/dist/completion/team-phase.d.ts.map +1 -1
- package/dist/completion/team-phase.js +34 -15
- package/dist/completion/team-phase.js.map +1 -1
- package/dist/delivery/commit-verdict-hold.d.ts +55 -0
- package/dist/delivery/commit-verdict-hold.d.ts.map +1 -0
- package/dist/delivery/commit-verdict-hold.js +118 -0
- package/dist/delivery/commit-verdict-hold.js.map +1 -0
- package/dist/directive/directive-dispatch.d.ts.map +1 -1
- package/dist/directive/directive-dispatch.js +10 -3
- package/dist/directive/directive-dispatch.js.map +1 -1
- package/dist/directive/directive-executor.d.ts.map +1 -1
- package/dist/directive/directive-executor.js +1 -0
- package/dist/directive/directive-executor.js.map +1 -1
- package/dist/directive/directive-queue.d.ts.map +1 -1
- package/dist/directive/directive-queue.js +6 -1
- package/dist/directive/directive-queue.js.map +1 -1
- package/dist/directive/phase-sync.d.ts +29 -2
- package/dist/directive/phase-sync.d.ts.map +1 -1
- package/dist/directive/phase-sync.js +30 -6
- package/dist/directive/phase-sync.js.map +1 -1
- package/dist/drift/artifact-ref-shape.d.ts +34 -0
- package/dist/drift/artifact-ref-shape.d.ts.map +1 -0
- package/dist/drift/artifact-ref-shape.js +94 -0
- package/dist/drift/artifact-ref-shape.js.map +1 -0
- package/dist/drift/drift-eval-loop.d.ts +7 -0
- package/dist/drift/drift-eval-loop.d.ts.map +1 -1
- package/dist/drift/drift-eval-loop.js +34 -5
- package/dist/drift/drift-eval-loop.js.map +1 -1
- package/dist/drift/drift-evaluator.d.ts.map +1 -1
- package/dist/drift/drift-evaluator.js +8 -3
- package/dist/drift/drift-evaluator.js.map +1 -1
- package/dist/focus/awaiting-slot.d.ts +34 -0
- package/dist/focus/awaiting-slot.d.ts.map +1 -0
- package/dist/focus/awaiting-slot.js +26 -0
- package/dist/focus/awaiting-slot.js.map +1 -0
- package/dist/focus/focus-lifecycle.js +2 -2
- package/dist/focus/focus-lifecycle.js.map +1 -1
- package/dist/focus/focus-phase.d.ts.map +1 -1
- package/dist/focus/focus-phase.js +3 -1
- package/dist/focus/focus-phase.js.map +1 -1
- package/dist/focus/focus-spawn-decision.d.ts +62 -0
- package/dist/focus/focus-spawn-decision.d.ts.map +1 -0
- package/dist/focus/focus-spawn-decision.js +41 -0
- package/dist/focus/focus-spawn-decision.js.map +1 -0
- package/dist/focus/focus-team-state.d.ts.map +1 -1
- package/dist/focus/focus-team-state.js +1 -13
- package/dist/focus/focus-team-state.js.map +1 -1
- package/dist/focus/listener-spawn.d.ts +16 -55
- package/dist/focus/listener-spawn.d.ts.map +1 -1
- package/dist/focus/listener-spawn.js +102 -64
- package/dist/focus/listener-spawn.js.map +1 -1
- package/dist/focus/listener-state.d.ts.map +1 -1
- package/dist/focus/listener-state.js +4 -1
- package/dist/focus/listener-state.js.map +1 -1
- package/dist/focus/listener.d.ts +41 -2
- package/dist/focus/listener.d.ts.map +1 -1
- package/dist/focus/listener.js +135 -83
- package/dist/focus/listener.js.map +1 -1
- package/dist/focus/pending-spawn-pass-deps.d.ts +69 -0
- package/dist/focus/pending-spawn-pass-deps.d.ts.map +1 -0
- package/dist/focus/pending-spawn-pass-deps.js +34 -0
- package/dist/focus/pending-spawn-pass-deps.js.map +1 -0
- package/dist/focus/pending-spawn-review-next-step.d.ts +83 -0
- package/dist/focus/pending-spawn-review-next-step.d.ts.map +1 -0
- package/dist/focus/pending-spawn-review-next-step.js +325 -0
- package/dist/focus/pending-spawn-review-next-step.js.map +1 -0
- package/dist/focus/review-cycle-cap-hold.d.ts +132 -0
- package/dist/focus/review-cycle-cap-hold.d.ts.map +1 -0
- package/dist/focus/review-cycle-cap-hold.js +178 -0
- package/dist/focus/review-cycle-cap-hold.js.map +1 -0
- package/dist/focus/team-actionable-work.js +2 -2
- package/dist/focus/verify-open-issues.d.ts +22 -0
- package/dist/focus/verify-open-issues.d.ts.map +1 -1
- package/dist/focus/verify-open-issues.js +118 -57
- package/dist/focus/verify-open-issues.js.map +1 -1
- package/dist/focus/verify-routing-passes.d.ts +32 -0
- package/dist/focus/verify-routing-passes.d.ts.map +1 -0
- package/dist/focus/verify-routing-passes.js +18 -0
- package/dist/focus/verify-routing-passes.js.map +1 -0
- package/dist/git/index.d.ts.map +1 -1
- package/dist/git/index.js +9 -5
- package/dist/git/index.js.map +1 -1
- package/dist/merge/focus-merge.d.ts +16 -2
- package/dist/merge/focus-merge.d.ts.map +1 -1
- package/dist/merge/focus-merge.js +53 -30
- package/dist/merge/focus-merge.js.map +1 -1
- package/dist/merge/merge-back-loop.d.ts +5 -0
- package/dist/merge/merge-back-loop.d.ts.map +1 -1
- package/dist/merge/merge-back-loop.js +17 -8
- package/dist/merge/merge-back-loop.js.map +1 -1
- package/dist/merge/merge-gate-coverage.d.ts +94 -0
- package/dist/merge/merge-gate-coverage.d.ts.map +1 -0
- package/dist/merge/merge-gate-coverage.js +217 -0
- package/dist/merge/merge-gate-coverage.js.map +1 -0
- package/dist/prompt/focus-prompt-builder.d.ts.map +1 -1
- package/dist/prompt/focus-prompt-builder.js +6 -0
- package/dist/prompt/focus-prompt-builder.js.map +1 -1
- package/dist/prompt/prompt-listing.d.ts.map +1 -1
- package/dist/prompt/prompt-listing.js +8 -0
- package/dist/prompt/prompt-listing.js.map +1 -1
- package/dist/prompt/team-prompt-base.d.ts.map +1 -1
- package/dist/prompt/team-prompt-base.js +5 -1
- package/dist/prompt/team-prompt-base.js.map +1 -1
- package/dist/prompt-sections/execution-sections.d.ts.map +1 -1
- package/dist/prompt-sections/execution-sections.js +14 -39
- package/dist/prompt-sections/execution-sections.js.map +1 -1
- package/dist/prompt-sections/gate-ownership.d.ts +36 -0
- package/dist/prompt-sections/gate-ownership.d.ts.map +1 -0
- package/dist/prompt-sections/gate-ownership.js +68 -0
- package/dist/prompt-sections/gate-ownership.js.map +1 -0
- package/dist/prompt-sections/gate-verdict-section.d.ts +58 -0
- package/dist/prompt-sections/gate-verdict-section.d.ts.map +1 -0
- package/dist/prompt-sections/gate-verdict-section.js +88 -0
- package/dist/prompt-sections/gate-verdict-section.js.map +1 -0
- package/dist/prompt-sections/persona-sections.d.ts +10 -0
- package/dist/prompt-sections/persona-sections.d.ts.map +1 -1
- package/dist/prompt-sections/persona-sections.js +35 -11
- package/dist/prompt-sections/persona-sections.js.map +1 -1
- package/dist/prompt-sections/shared.js +1 -1
- package/dist/prompt-sections/shared.js.map +1 -1
- package/dist/queries/agent-resolvable-promotion.d.ts +6 -3
- package/dist/queries/agent-resolvable-promotion.d.ts.map +1 -1
- package/dist/queries/agent-resolvable-promotion.js +20 -9
- package/dist/queries/agent-resolvable-promotion.js.map +1 -1
- package/dist/queries/deliveries.d.ts +46 -4
- package/dist/queries/deliveries.d.ts.map +1 -1
- package/dist/queries/deliveries.js +69 -16
- package/dist/queries/deliveries.js.map +1 -1
- package/dist/queries/delivery-gate-state.d.ts +151 -1
- package/dist/queries/delivery-gate-state.d.ts.map +1 -1
- package/dist/queries/delivery-gate-state.js +95 -14
- package/dist/queries/delivery-gate-state.js.map +1 -1
- package/dist/queries/delivery-write-discipline.d.ts +65 -0
- package/dist/queries/delivery-write-discipline.d.ts.map +1 -0
- package/dist/queries/delivery-write-discipline.js +101 -0
- package/dist/queries/delivery-write-discipline.js.map +1 -0
- package/dist/queries/escalation-consumption.d.ts +11 -0
- package/dist/queries/escalation-consumption.d.ts.map +1 -1
- package/dist/queries/escalation-consumption.js +22 -0
- package/dist/queries/escalation-consumption.js.map +1 -1
- package/dist/queries/escalation-spool.d.ts +75 -0
- package/dist/queries/escalation-spool.d.ts.map +1 -0
- package/dist/queries/escalation-spool.js +232 -0
- package/dist/queries/escalation-spool.js.map +1 -0
- package/dist/queries/escalation-suppression.d.ts.map +1 -1
- package/dist/queries/escalation-suppression.js +2 -0
- package/dist/queries/escalation-suppression.js.map +1 -1
- package/dist/queries/escalations.js +1 -1
- package/dist/queries/filing-observation.d.ts.map +1 -1
- package/dist/queries/filing-observation.js +2 -0
- package/dist/queries/filing-observation.js.map +1 -1
- package/dist/queries/focus-discovery.d.ts +4 -4
- package/dist/queries/focus-discovery.d.ts.map +1 -1
- package/dist/queries/focus-discovery.js +1 -0
- package/dist/queries/focus-discovery.js.map +1 -1
- package/dist/queries/focus-review-approval.d.ts +84 -0
- package/dist/queries/focus-review-approval.d.ts.map +1 -0
- package/dist/queries/focus-review-approval.js +158 -0
- package/dist/queries/focus-review-approval.js.map +1 -0
- package/dist/queries/focuses.d.ts +6 -5
- package/dist/queries/focuses.d.ts.map +1 -1
- package/dist/queries/focuses.js +9 -5
- package/dist/queries/focuses.js.map +1 -1
- package/dist/queries/incident-correlation.d.ts +5 -4
- package/dist/queries/incident-correlation.d.ts.map +1 -1
- package/dist/queries/incident-correlation.js +11 -5
- package/dist/queries/incident-correlation.js.map +1 -1
- package/dist/queries/issues.d.ts.map +1 -1
- package/dist/queries/issues.js +2 -1
- package/dist/queries/issues.js.map +1 -1
- package/dist/queries/loop-refusal-observation.d.ts +64 -0
- package/dist/queries/loop-refusal-observation.d.ts.map +1 -0
- package/dist/queries/loop-refusal-observation.js +137 -0
- package/dist/queries/loop-refusal-observation.js.map +1 -0
- package/dist/queries/schemas.d.ts +9 -0
- package/dist/queries/schemas.d.ts.map +1 -1
- package/dist/queries/schemas.js +11 -3
- package/dist/queries/schemas.js.map +1 -1
- package/dist/queries/shared.js +1 -1
- package/dist/queries/verification.d.ts.map +1 -1
- package/dist/queries/verification.js +1 -15
- package/dist/queries/verification.js.map +1 -1
- package/dist/queries/wire-contract.generated.d.ts +3 -0
- package/dist/queries/wire-contract.generated.d.ts.map +1 -1
- package/dist/queries/wire-contract.generated.js +3 -0
- package/dist/queries/wire-contract.generated.js.map +1 -1
- package/dist/resolvers/assembly-engine.d.ts.map +1 -1
- package/dist/resolvers/assembly-engine.js +3 -1
- package/dist/resolvers/assembly-engine.js.map +1 -1
- package/dist/resolvers/git-diff-against-base.d.ts +5 -2
- package/dist/resolvers/git-diff-against-base.d.ts.map +1 -1
- package/dist/resolvers/git-diff-against-base.js +121 -39
- package/dist/resolvers/git-diff-against-base.js.map +1 -1
- package/dist/resolvers/shared/git-diff.d.ts +2 -0
- package/dist/resolvers/shared/git-diff.d.ts.map +1 -1
- package/dist/resolvers/shared/git-diff.js +5 -1
- package/dist/resolvers/shared/git-diff.js.map +1 -1
- package/dist/resolvers/shared/review-window-commits.d.ts +96 -0
- package/dist/resolvers/shared/review-window-commits.d.ts.map +1 -0
- package/dist/resolvers/shared/review-window-commits.js +262 -0
- package/dist/resolvers/shared/review-window-commits.js.map +1 -0
- package/dist/session/session-lineage.d.ts.map +1 -1
- package/dist/session/session-lineage.js +4 -1
- package/dist/session/session-lineage.js.map +1 -1
- package/dist/shell/fail-stop.d.ts +18 -0
- package/dist/shell/fail-stop.d.ts.map +1 -0
- package/dist/shell/fail-stop.js +53 -0
- package/dist/shell/fail-stop.js.map +1 -0
- package/dist/shell/graceful-shutdown.d.ts +48 -0
- package/dist/shell/graceful-shutdown.d.ts.map +1 -0
- package/dist/shell/graceful-shutdown.js +152 -0
- package/dist/shell/graceful-shutdown.js.map +1 -0
- package/dist/shell/heartbeat.d.ts.map +1 -1
- package/dist/shell/heartbeat.js +5 -4
- package/dist/shell/heartbeat.js.map +1 -1
- package/dist/shell/log.d.ts.map +1 -1
- package/dist/shell/log.js +4 -1
- package/dist/shell/log.js.map +1 -1
- package/dist/shell/stop-request.d.ts.map +1 -1
- package/dist/shell/stop-request.js +2 -1
- package/dist/shell/stop-request.js.map +1 -1
- package/dist/shell/unified-shell.d.ts.map +1 -1
- package/dist/shell/unified-shell.js +41 -114
- package/dist/shell/unified-shell.js.map +1 -1
- package/dist/spawn/lifecycle.d.ts +12 -0
- package/dist/spawn/lifecycle.d.ts.map +1 -1
- package/dist/spawn/lifecycle.js +25 -21
- package/dist/spawn/lifecycle.js.map +1 -1
- package/dist/spawn/prompt-assembly.d.ts +19 -1
- package/dist/spawn/prompt-assembly.d.ts.map +1 -1
- package/dist/spawn/prompt-assembly.js +70 -21
- package/dist/spawn/prompt-assembly.js.map +1 -1
- package/dist/spawn/review-hold-park.d.ts.map +1 -1
- package/dist/spawn/review-hold-park.js +18 -8
- package/dist/spawn/review-hold-park.js.map +1 -1
- package/dist/spawn/spawn-cooldown.d.ts.map +1 -1
- package/dist/spawn/spawn-cooldown.js +4 -0
- package/dist/spawn/spawn-cooldown.js.map +1 -1
- package/dist/spawn/spawn-decision.d.ts.map +1 -1
- package/dist/spawn/spawn-decision.js +2 -1
- package/dist/spawn/spawn-decision.js.map +1 -1
- package/dist/spawn/worktree-session.d.ts +6 -0
- package/dist/spawn/worktree-session.d.ts.map +1 -1
- package/dist/spawn/worktree-session.js +15 -2
- package/dist/spawn/worktree-session.js.map +1 -1
- package/dist/testing/fixtures/index.d.ts +10 -1
- package/dist/testing/fixtures/index.d.ts.map +1 -1
- package/dist/testing/fixtures/index.js +59 -1
- package/dist/testing/fixtures/index.js.map +1 -1
- package/dist/testing/fixtures/pending-spawn-world.d.ts +34 -0
- package/dist/testing/fixtures/pending-spawn-world.d.ts.map +1 -0
- package/dist/testing/fixtures/pending-spawn-world.js +92 -0
- package/dist/testing/fixtures/pending-spawn-world.js.map +1 -0
- package/dist/types/index.js +1 -1
- package/dist/verify/commit-gate-configured.d.ts +86 -0
- package/dist/verify/commit-gate-configured.d.ts.map +1 -0
- package/dist/verify/commit-gate-configured.js +234 -0
- package/dist/verify/commit-gate-configured.js.map +1 -0
- package/dist/verify/commit-verdict-record.d.ts +98 -0
- package/dist/verify/commit-verdict-record.d.ts.map +1 -0
- package/dist/verify/commit-verdict-record.js +297 -0
- package/dist/verify/commit-verdict-record.js.map +1 -0
- package/dist/verify/explicit-gate-outcome.d.ts +161 -0
- package/dist/verify/explicit-gate-outcome.d.ts.map +1 -0
- package/dist/verify/explicit-gate-outcome.js +215 -0
- package/dist/verify/explicit-gate-outcome.js.map +1 -0
- package/dist/verify/explicit-rearm.d.ts +27 -0
- package/dist/verify/explicit-rearm.d.ts.map +1 -0
- package/dist/verify/explicit-rearm.js +161 -0
- package/dist/verify/explicit-rearm.js.map +1 -0
- package/dist/verify/explicit-run-ledger.d.ts +26 -0
- package/dist/verify/explicit-run-ledger.d.ts.map +1 -0
- package/dist/verify/explicit-run-ledger.js +93 -0
- package/dist/verify/explicit-run-ledger.js.map +1 -0
- package/dist/verify/failure-signature.d.ts.map +1 -1
- package/dist/verify/failure-signature.js +5 -1
- package/dist/verify/failure-signature.js.map +1 -1
- package/dist/verify/gate-run-registry.d.ts +105 -0
- package/dist/verify/gate-run-registry.d.ts.map +1 -0
- package/dist/verify/gate-run-registry.js +111 -0
- package/dist/verify/gate-run-registry.js.map +1 -0
- package/dist/verify/gate-verdict-source.d.ts +68 -0
- package/dist/verify/gate-verdict-source.d.ts.map +1 -0
- package/dist/verify/gate-verdict-source.js +143 -0
- package/dist/verify/gate-verdict-source.js.map +1 -0
- package/dist/verify/judged-commit-gate.d.ts +11 -0
- package/dist/verify/judged-commit-gate.d.ts.map +1 -0
- package/dist/verify/judged-commit-gate.js +48 -0
- package/dist/verify/judged-commit-gate.js.map +1 -0
- package/dist/verify/rework-judgment.d.ts +58 -0
- package/dist/verify/rework-judgment.d.ts.map +1 -0
- package/dist/verify/rework-judgment.js +54 -0
- package/dist/verify/rework-judgment.js.map +1 -0
- package/dist/verify/verification-attribution.d.ts +105 -0
- package/dist/verify/verification-attribution.d.ts.map +1 -0
- package/dist/verify/verification-attribution.js +322 -0
- package/dist/verify/verification-attribution.js.map +1 -0
- package/dist/verify/verification-baseline-run.d.ts +123 -0
- package/dist/verify/verification-baseline-run.d.ts.map +1 -0
- package/dist/verify/verification-baseline-run.js +386 -0
- package/dist/verify/verification-baseline-run.js.map +1 -0
- package/dist/verify/verification-baseline.d.ts +79 -33
- package/dist/verify/verification-baseline.d.ts.map +1 -1
- package/dist/verify/verification-baseline.js +99 -106
- package/dist/verify/verification-baseline.js.map +1 -1
- package/dist/verify/verification-checkout.d.ts +13 -0
- package/dist/verify/verification-checkout.d.ts.map +1 -1
- package/dist/verify/verification-checkout.js +39 -2
- package/dist/verify/verification-checkout.js.map +1 -1
- package/dist/verify/verification-commit-sharing.d.ts +84 -0
- package/dist/verify/verification-commit-sharing.d.ts.map +1 -0
- package/dist/verify/verification-commit-sharing.js +416 -0
- package/dist/verify/verification-commit-sharing.js.map +1 -0
- package/dist/verify/verification-config.d.ts.map +1 -1
- package/dist/verify/verification-config.js +12 -2
- package/dist/verify/verification-config.js.map +1 -1
- package/dist/verify/verification-default-on.d.ts +27 -11
- package/dist/verify/verification-default-on.d.ts.map +1 -1
- package/dist/verify/verification-default-on.js +159 -29
- package/dist/verify/verification-default-on.js.map +1 -1
- package/dist/verify/verification-deps-default.d.ts.map +1 -1
- package/dist/verify/verification-deps-default.js +49 -42
- package/dist/verify/verification-deps-default.js.map +1 -1
- package/dist/verify/verification-deps.d.ts +69 -4
- package/dist/verify/verification-deps.d.ts.map +1 -1
- package/dist/verify/verification-deterministic.d.ts +15 -2
- package/dist/verify/verification-deterministic.d.ts.map +1 -1
- package/dist/verify/verification-deterministic.js +12 -3
- package/dist/verify/verification-deterministic.js.map +1 -1
- package/dist/verify/verification-diagnostics.d.ts +16 -0
- package/dist/verify/verification-diagnostics.d.ts.map +1 -0
- package/dist/verify/verification-diagnostics.js +219 -0
- package/dist/verify/verification-diagnostics.js.map +1 -0
- package/dist/verify/verification-engine.d.ts +12 -8
- package/dist/verify/verification-engine.d.ts.map +1 -1
- package/dist/verify/verification-engine.js +110 -92
- package/dist/verify/verification-engine.js.map +1 -1
- package/dist/verify/verification-evidence-unavailable-feedback.d.ts +2 -1
- package/dist/verify/verification-evidence-unavailable-feedback.d.ts.map +1 -1
- package/dist/verify/verification-evidence-unavailable-feedback.js +14 -4
- package/dist/verify/verification-evidence-unavailable-feedback.js.map +1 -1
- package/dist/verify/verification-failure-parser.d.ts +37 -3
- package/dist/verify/verification-failure-parser.d.ts.map +1 -1
- package/dist/verify/verification-failure-parser.js +66 -3
- package/dist/verify/verification-failure-parser.js.map +1 -1
- package/dist/verify/verification-feedback.d.ts +21 -34
- package/dist/verify/verification-feedback.d.ts.map +1 -1
- package/dist/verify/verification-feedback.js +37 -88
- package/dist/verify/verification-feedback.js.map +1 -1
- package/dist/verify/verification-gate-stages.d.ts +110 -0
- package/dist/verify/verification-gate-stages.d.ts.map +1 -0
- package/dist/verify/verification-gate-stages.js +179 -0
- package/dist/verify/verification-gate-stages.js.map +1 -0
- package/dist/verify/verification-history-reset.d.ts +61 -0
- package/dist/verify/verification-history-reset.d.ts.map +1 -0
- package/dist/verify/verification-history-reset.js +90 -0
- package/dist/verify/verification-history-reset.js.map +1 -0
- package/dist/verify/verification-manifest.d.ts.map +1 -1
- package/dist/verify/verification-manifest.js +2 -1
- package/dist/verify/verification-manifest.js.map +1 -1
- package/dist/verify/verification-rework-messages.d.ts +19 -0
- package/dist/verify/verification-rework-messages.d.ts.map +1 -0
- package/dist/verify/verification-rework-messages.js +52 -0
- package/dist/verify/verification-rework-messages.js.map +1 -0
- package/dist/worktree/install-inputs.d.ts +89 -0
- package/dist/worktree/install-inputs.d.ts.map +1 -0
- package/dist/worktree/install-inputs.js +625 -0
- package/dist/worktree/install-inputs.js.map +1 -0
- package/dist/worktree/install-script-effects.d.ts +30 -0
- package/dist/worktree/install-script-effects.d.ts.map +1 -0
- package/dist/worktree/install-script-effects.js +524 -0
- package/dist/worktree/install-script-effects.js.map +1 -0
- package/dist/worktree/install-script-tokens.d.ts +57 -0
- package/dist/worktree/install-script-tokens.d.ts.map +1 -0
- package/dist/worktree/install-script-tokens.js +299 -0
- package/dist/worktree/install-script-tokens.js.map +1 -0
- package/dist/worktree/provision.d.ts +27 -4
- package/dist/worktree/provision.d.ts.map +1 -1
- package/dist/worktree/provision.js +46 -7
- package/dist/worktree/provision.js.map +1 -1
- package/dist/worktree/safety.d.ts +11 -0
- package/dist/worktree/safety.d.ts.map +1 -1
- package/dist/worktree/safety.js +20 -3
- package/dist/worktree/safety.js.map +1 -1
- package/dist/worktree/verify-interlock.d.ts.map +1 -1
- package/dist/worktree/verify-interlock.js +3 -1
- package/dist/worktree/verify-interlock.js.map +1 -1
- package/dist/worktree/worktree-package-provisioning.d.ts +75 -0
- package/dist/worktree/worktree-package-provisioning.d.ts.map +1 -0
- package/dist/worktree/worktree-package-provisioning.js +362 -0
- package/dist/worktree/worktree-package-provisioning.js.map +1 -0
- package/package.json +1 -1
package/dist/completion/event.js
CHANGED
|
@@ -3,6 +3,7 @@
|
|
|
3
3
|
// packages/daemon/src/completion/exit-verify-hold.test.ts,
|
|
4
4
|
// packages/daemon/src/completion/merge-resolution-hold.test.ts,
|
|
5
5
|
// packages/daemon/src/completion/reengagement-redrive.test.ts,
|
|
6
|
+
// packages/daemon/src/completion/review-window-idle-coding-lead-regression.test.ts,
|
|
6
7
|
// packages/daemon/src/completion/teardown-demotion-gate.test.ts,
|
|
7
8
|
// packages/daemon/src/completion/terminal-error-terminate.test.ts
|
|
8
9
|
// PINNED-BY-END
|
|
@@ -29,6 +30,7 @@ import { isWorktreeUnderVerify as defaultIsWorktreeUnderVerify } from '../worktr
|
|
|
29
30
|
import { readWorktreeHeadSha as defaultReadWorktreeHeadSha } from '../git/index.js';
|
|
30
31
|
import { isProcessAlive as defaultIsProcessAlive } from '../spawn/liveness.js';
|
|
31
32
|
import { focusHasTeamActionableWork } from '../focus/team-actionable-work.js';
|
|
33
|
+
import { recordSessionHold, clearSessionHold, REVIEW_WINDOW_KEEP_ALIVE_BOUND, MERGE_RESOLUTION_HOLD_BOUND, } from './session-hold.js';
|
|
32
34
|
// Escalation builders + their reason-string constants live in
|
|
33
35
|
// event-escalations.ts; re-exported here so existing importers are unaffected.
|
|
34
36
|
export { PLANNING_NO_DELIVERIES_REASON, NO_PROGRESS_ESCALATION_REASON, NON_ADVANCEABLE_ESCALATION_REASON, NON_ADVANCEABLE_CAUSE, DELIVERY_ADVANCEMENT_STALLED_REASON, DELIVERY_ADVANCEMENT_STALLED_CAUSE, escalatePlanningFailure, escalateNoProgress, escalateNonAdvanceable, escalateDeliveryAdvancementStalled, } from './event-escalations.js';
|
|
@@ -223,12 +225,11 @@ export async function runPlanningRefreshPhase(state) {
|
|
|
223
225
|
* deterministically and terminates; a coding pass mid-review is left running.
|
|
224
226
|
*/
|
|
225
227
|
export async function runReviewWindowRoutingPhase(state) {
|
|
226
|
-
const routed = await routeReviewWindowCompletion(state.ctx, state.deps, state.currentDeliveries);
|
|
227
|
-
// 'terminated' ->
|
|
228
|
-
// 'leave_running' -> a coding pass
|
|
229
|
-
//
|
|
230
|
-
//
|
|
231
|
-
// -> the pipeline continues.
|
|
228
|
+
const routed = await routeReviewWindowCompletion(state.ctx, state.deps, state.currentDeliveries, state.currentIssues);
|
|
229
|
+
// 'terminated' -> a review pass closed the focus, or a no-work coding pass was
|
|
230
|
+
// torn down so the queued review can spawn. 'leave_running' -> a coding pass
|
|
231
|
+
// with actionable work is KEPT; the iterator bounds the keep with a session hold
|
|
232
|
+
// and re-arms its detector. 'not_in_review' -> the pipeline continues.
|
|
232
233
|
if (routed === 'terminated')
|
|
233
234
|
return { halt: 'terminated' };
|
|
234
235
|
if (routed === 'leave_running')
|
|
@@ -290,6 +291,9 @@ export async function runAdvancementStallWatchdogPhase(state) {
|
|
|
290
291
|
/** Phase: execute the chosen action's side effects. */
|
|
291
292
|
export async function runExecuteActionPhase(state) {
|
|
292
293
|
const { facts, action } = requireDecision(state);
|
|
294
|
+
// Only the no-actionable-work action can (re)record the demoted-keep hold; any other action ends that keep.
|
|
295
|
+
if (action.kind !== 'terminate_no_actionable_work')
|
|
296
|
+
clearSessionHold(state.ctx.focusId, 'first_result_teardown_demoted');
|
|
293
297
|
await executeCompletionAction(state.ctx, state.deps, facts, action, SCOPE_COVERAGE_NO_PROGRESS_LIMIT);
|
|
294
298
|
return 'continue';
|
|
295
299
|
}
|
|
@@ -300,11 +304,11 @@ export async function runExecuteActionPhase(state) {
|
|
|
300
304
|
* completion-event-phase-registry.test.ts.
|
|
301
305
|
*/
|
|
302
306
|
export const COMPLETION_EVENT_PHASE_REGISTRY = [
|
|
303
|
-
{ name: 'merge-resolution-hold', haltDispositions: ['kept'], run: runMergeResolutionHoldPhase },
|
|
307
|
+
{ name: 'merge-resolution-hold', haltDispositions: ['kept'], holdBound: MERGE_RESOLUTION_HOLD_BOUND, run: runMergeResolutionHoldPhase },
|
|
304
308
|
{ name: 'terminal-error-terminate', haltDispositions: ['terminated'], run: runTerminalErrorTerminatePhase },
|
|
305
309
|
{ name: 'fetch-state', haltDispositions: [], run: runFetchStatePhase },
|
|
306
310
|
{ name: 'planning-refresh', haltDispositions: ['terminated'], run: runPlanningRefreshPhase },
|
|
307
|
-
{ name: 'review-window-routing', haltDispositions: ['terminated', 'kept'], run: runReviewWindowRoutingPhase },
|
|
311
|
+
{ name: 'review-window-routing', haltDispositions: ['terminated', 'kept'], holdBound: REVIEW_WINDOW_KEEP_ALIVE_BOUND, run: runReviewWindowRoutingPhase },
|
|
308
312
|
{ name: 'scope-coverage-terminate', haltDispositions: ['terminated'], run: runScopeCoverageTerminatePhase },
|
|
309
313
|
{ name: 'wake-cycle-self-heal', haltDispositions: ['terminated'], run: runWakeCycleSelfHealPhase },
|
|
310
314
|
{ name: 'decide', haltDispositions: [], run: runDecidePhase },
|
|
@@ -320,8 +324,12 @@ export const COMPLETION_EVENT_PHASE_REGISTRY = [
|
|
|
320
324
|
export async function runCompletionEventPhases(state, registry = COMPLETION_EVENT_PHASE_REGISTRY) {
|
|
321
325
|
for (const phase of registry) {
|
|
322
326
|
const outcome = await phase.run(state);
|
|
323
|
-
if (outcome === 'continue')
|
|
327
|
+
if (outcome === 'continue') {
|
|
328
|
+
// The condition this phase kept the team for no longer holds: end its bounded hold.
|
|
329
|
+
if (phase.holdBound)
|
|
330
|
+
clearSessionHold(state.ctx.focusId, phase.holdBound.kind);
|
|
324
331
|
continue;
|
|
332
|
+
}
|
|
325
333
|
const { halt } = outcome;
|
|
326
334
|
// Enforce the declared halt contract. A phase that halts with a disposition
|
|
327
335
|
// it never declared is refused (throws) -- this is what makes "keep the team"
|
|
@@ -333,21 +341,39 @@ export async function runCompletionEventPhases(state, registry = COMPLETION_EVEN
|
|
|
333
341
|
`declared haltDispositions [${phase.haltDispositions.join(', ')}] -- a keep-the-team ` +
|
|
334
342
|
`halt must be declared on the entry so it cannot be expressed by silently exiting the flow`);
|
|
335
343
|
}
|
|
336
|
-
if (halt === 'kept')
|
|
337
|
-
|
|
338
|
-
// result event produces a completion decision instead of being swallowed
|
|
339
|
-
// by the latched isComplete guard (detector.ts). Recording the keep here,
|
|
340
|
-
// where the halt is observed, is the sole point that makes a kept team
|
|
341
|
-
// visible in the log rather than inferable only from an absent completion
|
|
342
|
-
// line (AC5).
|
|
343
|
-
state.ctx.completionDetector.reset();
|
|
344
|
-
log.info(`[focus-executor] Completion halt at phase "${phase.name}" KEPT team ` +
|
|
345
|
-
`"${state.ctx.focusName}" alive and re-armed its completion detector -- ` +
|
|
346
|
-
`its next result event will be classified, not swallowed`);
|
|
347
|
-
}
|
|
344
|
+
if (halt === 'kept')
|
|
345
|
+
recordBoundedKeep(state, phase);
|
|
348
346
|
return;
|
|
349
347
|
}
|
|
350
348
|
}
|
|
349
|
+
/**
|
|
350
|
+
* A 'kept' halt: the team was KEPT alive. Bound the keep FIRST -- a keep with no
|
|
351
|
+
* declared holdBound is refused (throws), so no completion halt can hold a
|
|
352
|
+
* session indefinitely (2026-09-15 idle-lead deadlock) -- then re-arm the
|
|
353
|
+
* completion detector so its NEXT result event produces a completion decision
|
|
354
|
+
* instead of being swallowed by the latched isComplete guard (detector.ts).
|
|
355
|
+
* Recording the keep here, where the halt is observed, is the sole point that
|
|
356
|
+
* makes a kept team visible in the log (AC5).
|
|
357
|
+
*/
|
|
358
|
+
function recordBoundedKeep(state, phase) {
|
|
359
|
+
const { ctx, deps } = state;
|
|
360
|
+
const bound = phase.holdBound;
|
|
361
|
+
if (!bound) {
|
|
362
|
+
throw new Error(`completion-event phase "${phase.name}" KEPT the team without a declared holdBound -- ` +
|
|
363
|
+
`every keep must carry a bounded expiry that ends in teardown or escalation`);
|
|
364
|
+
}
|
|
365
|
+
recordSessionHold({
|
|
366
|
+
...bound,
|
|
367
|
+
focusId: ctx.focusId,
|
|
368
|
+
reason: `completion halt at phase "${phase.name}" kept the team alive`,
|
|
369
|
+
teamStartedAt: ctx.teamState.startedAt,
|
|
370
|
+
nowMs: (deps.now ?? Date.now)(),
|
|
371
|
+
});
|
|
372
|
+
ctx.completionDetector.reset();
|
|
373
|
+
log.info(`[focus-executor] Completion halt at phase "${phase.name}" KEPT team ` +
|
|
374
|
+
`"${ctx.focusName}" alive (bounded by a ${bound.kind} session hold, ${Math.round(bound.maxMs / 1000)}s) ` +
|
|
375
|
+
`and re-armed its completion detector -- its next result event will be classified, not swallowed`);
|
|
376
|
+
}
|
|
351
377
|
// ── Handler ─────────────────────────────────────────────────────────────
|
|
352
378
|
/**
|
|
353
379
|
* Handle a 'complete' event from the CompletionDetector.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"event.js","sourceRoot":"","sources":["../../src/completion/event.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"event.js","sourceRoot":"","sources":["../../src/completion/event.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,qFAAqF;AACrF,6DAA6D;AAC7D,kEAAkE;AAClE,iEAAiE;AACjE,sFAAsF;AACtF,mEAAmE;AACnE,oEAAoE;AACpE,gBAAgB;AAYhB,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC3E,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AACjE,OAAO,EAAE,aAAa,IAAI,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAE,gBAAgB,IAAI,uBAAuB,EAAE,oCAAoC,IAAI,mCAAmC,EAA+B,MAAM,2BAA2B,CAAC;AAClM,OAAO,EACL,uBAAuB,IAAI,8BAA8B,EACzD,oBAAoB,IAAI,2BAA2B,GACpD,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,qCAAqC,IAAI,4CAA4C,EAAE,MAAM,yBAAyB,CAAC;AAChI,OAAO,EAAE,sBAAsB,EAAyB,MAAM,0BAA0B,CAAC;AACzF,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAC9E,iFAAiF;AACjF,+EAA+E;AAC/E,+EAA+E;AAC/E,cAAc;AACd,OAAO,EACL,gBAAgB,EAChB,wBAAwB,EACxB,0BAA0B,GAC3B,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,0BAA0B,EAAE,CAAC;AAClF,OAAO,EAAE,gBAAgB,IAAI,uBAAuB,EAAE,MAAM,kCAAkC,CAAC;AAC/F,OAAO,EAAE,6BAA6B,IAAI,oCAAoC,EAAE,MAAM,sBAAsB,CAAC;AAC7G,OAAO,EAAE,qBAAqB,IAAI,4BAA4B,EAAE,MAAM,iCAAiC,CAAC;AACxG,OAAO,EAAE,mBAAmB,IAAI,0BAA0B,EAAE,MAAM,iBAAiB,CAAC;AACpF,OAAO,EAAE,cAAc,IAAI,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC/E,OAAO,EAAE,0BAA0B,EAAE,MAAM,kCAAkC,CAAC;AAC9E,OAAO,EACL,iBAAiB,EACjB,gBAAgB,EAChB,8BAA8B,EAC9B,2BAA2B,GAE5B,MAAM,mBAAmB,CAAC;AAE3B,8DAA8D;AAC9D,+EAA+E;AAC/E,OAAO,EACL,6BAA6B,EAC7B,6BAA6B,EAC7B,iCAAiC,EACjC,qBAAqB,EACrB,mCAAmC,EACnC,kCAAkC,EAElC,uBAAuB,EACvB,kBAAkB,EAClB,sBAAsB,EACtB,kCAAkC,GACnC,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,2BAA2B,IAAI,kCAAkC,GAGlE,MAAM,gCAAgC,CAAC;AACxC,OAAO,EACL,oBAAoB,EACpB,2BAA2B,EAC3B,oBAAoB,GACrB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EACL,sBAAsB,EACtB,6BAA6B,EAC7B,uBAAuB,GAExB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAGvD;;;;GAIG;AACH,MAAM,CAAC,MAAM,gCAAgC,GAC3C,aAAa,EAAE,CAAC,uCAAuC,CAAC;AAE1D,MAAM,UAAU,yCAAyC,CACvD,YAA8C,aAAa,EAAE;IAE7D,OAAO,SAAS,CAAC,6CAA6C,CAAC;AACjE,CAAC;AAED,MAAM,CAAC,MAAM,sCAAsC,GACjD,yCAAyC,EAAE,CAAC;AAoL9C;;;;GAIG;AACH,SAAS,sBAAsB,CAAC,EAAc,EAAE,OAAe;IAC7D,MAAM,KAAK,GAAG,UAAU,CAAC,EAAE,EAAE,OAAO,CAAC,CAAC;IACtC,KAAK,CAAC,KAAK,EAAE,EAAE,CAAC;IAChB,OAAO,GAAG,EAAE,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;AACnC,CAAC;AAED,KAAK,UAAU,2BAA2B,CACxC,MAAoB,EACpB,OAAe;IAEf,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;IAChF,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,EAAE,mBAAmB,IAAI,IAAI,CAAC;AAChF,CAAC;AAED,KAAK,UAAU,gCAAgC,CAC7C,MAAoB,EACpB,OAAe;IAEf,MAAM,OAAO,GAAG,MAAM,gBAAgB,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,SAAS,CAAC,CAAC;IAChF,MAAM,KAAK,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC;IACxD,OAAO;QACL,QAAQ,EAAE,KAAK,EAAE,SAAS,IAAI,KAAK;QACnC,WAAW,EAAE,KAAK,EAAE,YAAY,IAAI,KAAK;QACzC,UAAU,EAAE,KAAK,EAAE,WAAW,IAAI,IAAI;KACvC,CAAC;AACJ,CAAC;AAED,MAAM,WAAW,GAAwB;IACvC,kBAAkB;IAClB,cAAc;IACd,gBAAgB,EAAE,uBAAuB;IACzC,aAAa,EAAE,oBAAoB;IACnC,uBAAuB,EAAE,8BAA8B;IACvD,sBAAsB,EAAE,4CAA4C;IACpE,4BAA4B,EAAE,mCAAmC;IACjE,oBAAoB,EAAE,2BAA2B;IACjD,yBAAyB,EAAE,gCAAgC;IAC3D,oBAAoB,EAAE,2BAA2B;IACjD,gBAAgB,EAAE,uBAAuB;IACzC,6BAA6B,EAAE,oCAAoC;IACnE,qBAAqB,EAAE,4BAA4B;IACnD,mBAAmB,EAAE,0BAA0B;IAC/C,2BAA2B,EAAE,kCAAkC;IAC/D,GAAG,EAAE,IAAI,CAAC,GAAG;IACb,WAAW,EAAE,qBAAqB;IAClC,eAAe,EAAE,sBAAsB;IACvC,OAAO,EAAE,qBAAqB;CAC/B,CAAC;AAEF;;;;;GAKG;AACH,MAAM,UAAU,oBAAoB,CAAC,SAAyB;IAC5D,MAAM,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC;IACvC,IAAI,MAAM,EAAE,CAAC;QACX,SAAS,CAAC,aAAa,GAAG,SAAS,CAAC;QACpC,MAAM,EAAE,CAAC;IACX,CAAC;AACH,CAAC;AA8DD,6EAA6E;AAC7E,SAAS,eAAe,CACtB,KAAgC;IAEhC,IAAI,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;QAClC,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAC;IAC5F,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,CAAC;AACtD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,KAAgC;IAEhC,MAAM,EAAE,GAAG,EAAE,GAAG,KAAK,CAAC;IACtB,IAAI,GAAG,CAAC,SAAS,CAAC,WAAW,KAAK,QAAQ;QAAE,OAAO,UAAU,CAAC;IAC9D,oEAAoE;IACpE,6EAA6E;IAC7E,yEAAyE;IACzE,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,MAAM,EAAE,OAAO;QAAE,OAAO,UAAU,CAAC;IAC5D,GAAG,CAAC,IAAI,CACN,+CAA+C,GAAG,CAAC,SAAS,qBAAqB;QACjF,gFAAgF;QAChF,6DAA6D,CAC9D,CAAC;IACF,yEAAyE;IACzE,yEAAyE;IACzE,0EAA0E;IAC1E,GAAG,CAAC,SAAS,CAAC,cAAc,GAAG,UAAU,CAAC;IAC1C,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IACtC,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;AAChC,CAAC;AAED,sEAAsE;AACtE,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,KAAgC;IAEhC,MAAM,CAAC,iBAAiB,EAAE,aAAa,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QAC3D,KAAK,CAAC,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;QAChD,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,CAAC;KAC7C,CAAC,CAAC;IACH,KAAK,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC5C,KAAK,CAAC,aAAa,GAAG,aAAa,CAAC;IACpC,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,KAAgC;IAEhC,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC;IAC3C,MAAM,IAAI,GAAG,0BAA0B,CAAC;QACtC,uBAAuB,EAAE,KAAK;QAC9B,eAAe,EAAE,KAAK;QACtB,0BAA0B,EAAE,SAAS,CAAC,sBAAsB;KAC7D,CAAC,CAAC;IACH,IAAI,CAAC,IAAI;QAAE,OAAO,UAAU,CAAC;IAC7B,GAAG,CAAC,IAAI,CACN,qDAAqD,SAAS,wBAAwB;QACtF,wFAAwF;QACxF,qEAAqE,CACtE,CAAC;IACF,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAC1B,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,KAAgC;IAEhC,OAAO,CAAC,MAAM,oBAAoB,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACjF,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE;QACxB,CAAC,CAAC,UAAU,CAAC;AACjB,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAC/C,KAAgC;IAEhC,MAAM,MAAM,GAAG,MAAM,2BAA2B,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC;IACtH,+EAA+E;IAC/E,6EAA6E;IAC7E,iFAAiF;IACjF,uEAAuE;IACvE,IAAI,MAAM,KAAK,YAAY;QAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;IAC3D,IAAI,MAAM,KAAK,eAAe;QAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;IACxD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,KAAgC;IAEhC,MAAM,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,GAAG,KAAK,CAAC,GAAG,CAAC;IACpD,MAAM,WAAW,GAAG,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAChD,CAAC,CAAC,EAAE,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,eAAe,IAAI,EAAE,CAAC,CAClD,CAAC;IACF,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7B,GAAG,CAAC,IAAI,CACN,gCAAgC,SAAS,uBAAuB,CACjE,CAAC;QACF,qEAAqE;QACrE,wEAAwE;QACxE,oEAAoE;QACpE,sEAAsE;QACtE,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAC/B,SAAS,CAAC,cAAc,GAAG,eAAe,CAAC;QAC3C,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QAClC,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;IAChC,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,KAAgC;IAEhC,MAAM,IAAI,GAAG,MAAM,oBAAoB,CACrC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,aAAa,CACpE,CAAC;IACF,IAAI,IAAI,CAAC,UAAU;QAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC;IACnD,KAAK,CAAC,mBAAmB,GAAG,IAAI,CAAC,mBAAmB,CAAC;IACrD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,mEAAmE;AACnE,MAAM,CAAC,KAAK,UAAU,cAAc,CAClC,KAAgC;IAEhC,MAAM,KAAK,GAAG,MAAM,sBAAsB,CACxC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,iBAAiB,EAAE,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC,aAAa,CAC/F,CAAC;IACF,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC;IACpB,KAAK,CAAC,MAAM,GAAG,sBAAsB,CAAC;QACpC,qBAAqB,EAAE,KAAK,CAAC,qBAAqB;QAClD,iBAAiB,EAAE,KAAK,CAAC,iBAAiB;QAC1C,sBAAsB,EAAE,KAAK,CAAC,KAAK,KAAK,IAAI;QAC5C,gBAAgB,EAAE,KAAK,CAAC,uBAAuB;QAC/C,eAAe,EAAE,gCAAgC;QACjD,uBAAuB,EAAE,KAAK,CAAC,qBAAqB;QACpD,wBAAwB,EAAE,KAAK,CAAC,wBAAwB;KACzD,CAAC,CAAC;IACH,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,qFAAqF;AACrF,MAAM,CAAC,KAAK,UAAU,gCAAgC,CACpD,KAAgC;IAEhC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACjD,OAAO,CAAC,MAAM,6BAA6B,CACzC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,sCAAsC,CAC7E,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC;AAC3C,CAAC;AAED,uDAAuD;AACvD,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,KAAgC;IAEhC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACjD,4GAA4G;IAC5G,IAAI,MAAM,CAAC,IAAI,KAAK,8BAA8B;QAAE,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,+BAA+B,CAAC,CAAC;IACzH,MAAM,uBAAuB,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,MAAM,EAAE,gCAAgC,CAAC,CAAC;IACtG,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,MAAM,+BAA+B,GAAqC;IAC/E,EAAE,IAAI,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,2BAA2B,EAAE,GAAG,EAAE,2BAA2B,EAAE;IACvI,EAAE,IAAI,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,8BAA8B,EAAE;IAC3G,EAAE,IAAI,EAAE,aAAa,EAAE,gBAAgB,EAAE,EAAE,EAAE,GAAG,EAAE,kBAAkB,EAAE;IACtE,EAAE,IAAI,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,uBAAuB,EAAE;IAC5F,EAAE,IAAI,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,CAAC,YAAY,EAAE,MAAM,CAAC,EAAE,SAAS,EAAE,8BAA8B,EAAE,GAAG,EAAE,2BAA2B,EAAE;IACxJ,EAAE,IAAI,EAAE,0BAA0B,EAAE,gBAAgB,EAAE,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,8BAA8B,EAAE;IAC3G,EAAE,IAAI,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,yBAAyB,EAAE;IAClG,EAAE,IAAI,EAAE,QAAQ,EAAE,gBAAgB,EAAE,EAAE,EAAE,GAAG,EAAE,cAAc,EAAE;IAC7D,EAAE,IAAI,EAAE,4BAA4B,EAAE,gBAAgB,EAAE,CAAC,YAAY,CAAC,EAAE,GAAG,EAAE,gCAAgC,EAAE;IAC/G,EAAE,IAAI,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,EAAE,EAAE,GAAG,EAAE,qBAAqB,EAAE;CAC7E,CAAC;AAEF;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,wBAAwB,CAC5C,KAAgC,EAChC,WAA6C,+BAA+B;IAE5E,KAAK,MAAM,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC7B,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QACvC,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;YAC3B,oFAAoF;YACpF,IAAI,KAAK,CAAC,SAAS;gBAAE,gBAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;YAC/E,SAAS;QACX,CAAC;QACD,MAAM,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;QACzB,4EAA4E;QAC5E,8EAA8E;QAC9E,2EAA2E;QAC3E,0EAA0E;QAC1E,iFAAiF;QACjF,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YAC3C,MAAM,IAAI,KAAK,CACb,2BAA2B,KAAK,CAAC,IAAI,8BAA8B,IAAI,eAAe;gBACtF,8BAA8B,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,uBAAuB;gBACtF,2FAA2F,CAC5F,CAAC;QACJ,CAAC;QACD,IAAI,IAAI,KAAK,MAAM;YAAE,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACrD,OAAO;IACT,CAAC;AACH,CAAC;AAED;;;;;;;;GAQG;AACH,SAAS,iBAAiB,CAAC,KAAgC,EAAE,KAAqC;IAChG,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;IAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC;IAC9B,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CACb,2BAA2B,KAAK,CAAC,IAAI,kDAAkD;YACvF,4EAA4E,CAC7E,CAAC;IACJ,CAAC;IACD,iBAAiB,CAAC;QAChB,GAAG,KAAK;QACR,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,MAAM,EAAE,6BAA6B,KAAK,CAAC,IAAI,uBAAuB;QACtE,aAAa,EAAE,GAAG,CAAC,SAAS,CAAC,SAAS;QACtC,KAAK,EAAE,CAAC,IAAI,CAAC,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,EAAE;KAChC,CAAC,CAAC;IACH,GAAG,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC;IAC/B,GAAG,CAAC,IAAI,CACN,8CAA8C,KAAK,CAAC,IAAI,cAAc;QACtE,IAAI,GAAG,CAAC,SAAS,yBAAyB,KAAK,CAAC,IAAI,kBAAkB,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK;QACzG,iGAAiG,CAClG,CAAC;AACJ,CAAC;AAED,2EAA2E;AAE3E;;;;;;;;;;;;;GAaG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,GAA2B,EAC3B,OAA4B,WAAW;IAEvC,2EAA2E;IAC3E,8EAA8E;IAC9E,mEAAmE;IACnE,oBAAoB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;IACpC,MAAM,wBAAwB,CAAC;QAC7B,GAAG;QACH,IAAI;QACJ,iBAAiB,EAAE,EAAE;QACrB,aAAa,EAAE,EAAE;QACjB,mBAAmB,EAAE,EAAE;QACvB,KAAK,EAAE,SAAS;QAChB,MAAM,EAAE,SAAS;KAClB,CAAC,CAAC;AACL,CAAC;AAED,2EAA2E;AAC3E,4EAA4E;AAC5E,gFAAgF;AAChF,6EAA6E;AAC7E,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exit-classification.d.ts","sourceRoot":"","sources":["../../src/completion/exit-classification.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"exit-classification.d.ts","sourceRoot":"","sources":["../../src/completion/exit-classification.ts"],"names":[],"mappings":"AAOA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEtF;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,OAAO,CAEjF;AAID,4DAA4D;AAC5D,MAAM,WAAW,sBAAsB;IACrC,wCAAwC;IACxC,QAAQ,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,UAAU,EAAE,OAAO,CAAC;IACpB;;;OAGG;IACH,qBAAqB,EAAE,OAAO,CAAC;IAC/B;;;;;;;;;;;;OAYG;IACH,SAAS,EAAE,OAAO,CAAC;IACnB;;;;;;OAMG;IACH,cAAc,EAAE,OAAO,CAAC;IACxB;;;;;;;OAOG;IACH,WAAW,EAAE,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;CACjD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE;IACvC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,SAAS,EAAE,cAAc,CAAC;IAC1B,cAAc,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAAC;CAClD,GAAG,sBAAsB,CAezB;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAChC,WAAW,EAAE,sBAAsB,CAAC,aAAa,CAAC,EAClD,cAAc,EAAE,cAAc,CAAC,gBAAgB,CAAC,GAC/C,YAAY,GAAG,IAAI,CAgBrB"}
|
|
@@ -1,6 +1,7 @@
|
|
|
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/completion/completion-phase-registry.test.ts,
|
|
3
3
|
// packages/daemon/src/completion/no-actionable-work-exit.test.ts,
|
|
4
|
+
// packages/daemon/src/completion/review-window-idle-coding-lead-regression.test.ts,
|
|
4
5
|
// packages/daemon/src/spawn/resume-failure-sigterm-exclusion.test.ts
|
|
5
6
|
// PINNED-BY-END
|
|
6
7
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exit-classification.js","sourceRoot":"","sources":["../../src/completion/exit-classification.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,+EAA+E;AAC/E,oEAAoE;AACpE,uEAAuE;AACvE,gBAAgB;AAahB;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAAC,IAAmB,EAAE,MAAqB;IACtE,OAAO,MAAM,KAAK,SAAS,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AACrD,CAAC;AAgDD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAKhC;IACC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC;IAClC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7D,MAAM,qBAAqB,GACzB,MAAM,CAAC,SAAS,KAAK,eAAe;QACpC,UAAU;QACV,MAAM,CAAC,cAAc,KAAK,eAAe,CAAC;IAC5C,MAAM,SAAS,GAAG,QAAQ,KAAK,CAAC,IAAI,qBAAqB,CAAC;IAC1D,8EAA8E;IAC9E,6EAA6E;IAC7E,2EAA2E;IAC3E,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,KAAK,eAAe,IAAI,UAAU,CAAC;IAC1E,MAAM,WAAW,GACf,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;IAClE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,qBAAqB,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC;AACjG,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAChC,WAAkD,EAClD,cAAgD;IAEhD,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,WAAW;YACd,OAAO,cAAc,KAAK,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC;QACrE,KAAK,SAAS;YACZ,QAAQ,cAAc,EAAE,CAAC;gBACvB,KAAK,oBAAoB,CAAC,CAAC,OAAO,oBAAoB,CAAC;gBACvD,KAAK,aAAa,CAAC,CAAC,OAAO,aAAa,CAAC;gBACzC,KAAK,cAAc,CAAC,CAAC,OAAO,cAAc,CAAC;gBAC3C,KAAK,SAAS,CAAC,CAAC,OAAO,SAAS,CAAC;gBACjC,KAAK,UAAU,CAAC,CAAC,OAAO,UAAU,CAAC;gBACnC,OAAO,CAAC,CAAC,OAAO,SAAS,CAAC;YAC5B,CAAC;QACH,KAAK,QAAQ;YACX,OAAO,OAAO,CAAC;IACnB,CAAC;AACH,CAAC"}
|
|
1
|
+
{"version":3,"file":"exit-classification.js","sourceRoot":"","sources":["../../src/completion/exit-classification.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,+EAA+E;AAC/E,oEAAoE;AACpE,sFAAsF;AACtF,uEAAuE;AACvE,gBAAgB;AAahB;;;;;;;;GAQG;AACH,MAAM,UAAU,aAAa,CAAC,IAAmB,EAAE,MAAqB;IACtE,OAAO,MAAM,KAAK,SAAS,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,KAAK,GAAG,CAAC;AACrD,CAAC;AAgDD;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAKhC;IACC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,IAAI,CAAC,CAAC;IAClC,MAAM,UAAU,GAAG,aAAa,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;IAC7D,MAAM,qBAAqB,GACzB,MAAM,CAAC,SAAS,KAAK,eAAe;QACpC,UAAU;QACV,MAAM,CAAC,cAAc,KAAK,eAAe,CAAC;IAC5C,MAAM,SAAS,GAAG,QAAQ,KAAK,CAAC,IAAI,qBAAqB,CAAC;IAC1D,8EAA8E;IAC9E,6EAA6E;IAC7E,2EAA2E;IAC3E,MAAM,cAAc,GAAG,MAAM,CAAC,SAAS,KAAK,eAAe,IAAI,UAAU,CAAC;IAC1E,MAAM,WAAW,GACf,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC;IAClE,OAAO,EAAE,QAAQ,EAAE,UAAU,EAAE,qBAAqB,EAAE,SAAS,EAAE,cAAc,EAAE,WAAW,EAAE,CAAC;AACjG,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAChC,WAAkD,EAClD,cAAgD;IAEhD,QAAQ,WAAW,EAAE,CAAC;QACpB,KAAK,WAAW;YACd,OAAO,cAAc,KAAK,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC;QACrE,KAAK,SAAS;YACZ,QAAQ,cAAc,EAAE,CAAC;gBACvB,KAAK,oBAAoB,CAAC,CAAC,OAAO,oBAAoB,CAAC;gBACvD,KAAK,aAAa,CAAC,CAAC,OAAO,aAAa,CAAC;gBACzC,KAAK,cAAc,CAAC,CAAC,OAAO,cAAc,CAAC;gBAC3C,KAAK,SAAS,CAAC,CAAC,OAAO,SAAS,CAAC;gBACjC,KAAK,UAAU,CAAC,CAAC,OAAO,UAAU,CAAC;gBACnC,OAAO,CAAC,CAAC,OAAO,SAAS,CAAC;YAC5B,CAAC;QACH,KAAK,QAAQ;YACX,OAAO,OAAO,CAAC;IACnB,CAAC;AACH,CAAC"}
|
|
@@ -13,14 +13,18 @@ import { mergeFocusBranch } from '../merge/focus-merge.js';
|
|
|
13
13
|
import { mergeIntegrationToMain } from '../git/index.js';
|
|
14
14
|
import { fileCdPushEscalation, shouldFileCdPushEscalation } from '../ci/ci-escalation.js';
|
|
15
15
|
import { branchHasUnmergedCommits } from '../git/exec.js';
|
|
16
|
+
import { type MergeGateTarget } from '../merge/merge-gate-coverage.js';
|
|
16
17
|
import type { CiStatusReader } from '../ci/ci-status.js';
|
|
17
18
|
/**
|
|
18
|
-
* Decide whether
|
|
19
|
+
* Decide whether mergeFocusBranch is a candidate on team exit.
|
|
19
20
|
*
|
|
20
|
-
* The gate asks "does the branch have
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
21
|
+
* The gate asks "does the branch have committed work?" rather than "did the
|
|
22
|
+
* team session exit cleanly?" -- the exit shape (review-cycle SIGTERM,
|
|
23
|
+
* role-clear, daemon crash, manual termination) decides nothing. It is only the
|
|
24
|
+
* FIRST gate: attemptFocusMerge then merges only when every commit the merge
|
|
25
|
+
* would add has passed the focus's review or verify gate
|
|
26
|
+
* (merge/merge-gate-coverage.ts), so a stopped team's WIP capture and any other
|
|
27
|
+
* unreviewed commit stay on the focus branch.
|
|
24
28
|
*
|
|
25
29
|
* Skip merge when:
|
|
26
30
|
* - The team is still in its planning phase (cancellation mid-planning --
|
|
@@ -57,6 +61,8 @@ export declare function selectWorkedDeliveryIds(deliveries: readonly {
|
|
|
57
61
|
export interface FocusMergeAttemptDeps {
|
|
58
62
|
branchHasUnmergedCommits: typeof branchHasUnmergedCommits;
|
|
59
63
|
mergeFocusBranch: typeof mergeFocusBranch;
|
|
64
|
+
/** Why the merge must hold (ungated or unreadable coverage), or null to merge. */
|
|
65
|
+
readMergeGateHold: (target: MergeGateTarget) => Promise<string | null>;
|
|
60
66
|
}
|
|
61
67
|
export interface FocusMergeAttemptResult {
|
|
62
68
|
attempted: boolean;
|
|
@@ -66,16 +72,22 @@ export interface FocusMergeAttemptResult {
|
|
|
66
72
|
/**
|
|
67
73
|
* Decide whether to merge the focus branch and, if so, run the merge.
|
|
68
74
|
*
|
|
69
|
-
* This is the integration of
|
|
75
|
+
* This is the integration of four separate concerns that the merge gate
|
|
70
76
|
* conflated before:
|
|
71
77
|
* 1. Branch state: does the focus branch actually have committed work?
|
|
72
78
|
* 2. Team gate: planningPhase + readOnly safety nets in shouldAttemptMerge.
|
|
73
|
-
* 3.
|
|
79
|
+
* 3. Gate coverage: every commit the merge would add has passed the focus's
|
|
80
|
+
* review or verify gate (readMergeGateHold). An ungated commit -- a WIP
|
|
81
|
+
* capture wip-preserve just made included -- or an unreadable approving
|
|
82
|
+
* review/verdict holds the merge; integration is untouched and the
|
|
83
|
+
* merge-back loop or the next team exit asks again.
|
|
84
|
+
* 4. Per-delivery telemetry: workedDeliveryIds is passed through for
|
|
74
85
|
* git-state reporting inside mergeFocusBranch.
|
|
75
86
|
*
|
|
76
87
|
* Returns attempted=false when the gate skips the merge (clean exit with
|
|
77
|
-
* nothing to merge, planning-phase, or read-only
|
|
78
|
-
* with the merge
|
|
88
|
+
* nothing to merge, planning-phase, or read-only: exitReason null; a gate
|
|
89
|
+
* coverage hold: exitReason names it). Returns attempted=true with the merge
|
|
90
|
+
* result otherwise.
|
|
79
91
|
*
|
|
80
92
|
* Exported so tests can verify the threading from done-only deliveries +
|
|
81
93
|
* branch-with-commits to a real mergeFocusBranch invocation, without having
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge-phase.d.ts","sourceRoot":"","sources":["../../src/completion/merge-phase.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"merge-phase.d.ts","sourceRoot":"","sources":["../../src/completion/merge-phase.ts"],"names":[],"mappings":"AAKA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACtE,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AAEzD,OAAO,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,wBAAwB,CAAC;AAC1F,OAAO,EAAE,wBAAwB,EAAE,MAAM,gBAAgB,CAAC;AAC1D,OAAO,EAAqB,KAAK,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAC1F,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oBAAoB,CAAC;AAQzD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,kBAAkB,CAChC,SAAS,EAAE,IAAI,CAAC,cAAc,EAAE,eAAe,GAAG,UAAU,CAAC,EAC7D,gBAAgB,EAAE,OAAO,GACxB,OAAO,CAIT;AAED;;;;;;;;;GASG;AACH,eAAO,MAAM,4BAA4B,EAAE,WAAW,CAAC,MAAM,CAI3D,CAAC;AAEH;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,SAAS;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,EAAE,EACrE,aAAa,EAAE,WAAW,CAAC,MAAM,CAAC,GACjC,MAAM,EAAE,CAIV;AAID,MAAM,WAAW,qBAAqB;IACpC,wBAAwB,EAAE,OAAO,wBAAwB,CAAC;IAC1D,gBAAgB,EAAE,OAAO,gBAAgB,CAAC;IAC1C,kFAAkF;IAClF,iBAAiB,EAAE,CAAC,MAAM,EAAE,eAAe,KAAK,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAAC;CACxE;AAED,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,OAAO,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,cAAc,EACzB,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,MAAM,EAAE,EAC3B,IAAI,GAAE,qBAIL,GACA,OAAO,CAAC,uBAAuB,CAAC,CAqClC;AAID;;;;GAIG;AACH,wBAAgB,6BAA6B,CAAC,MAAM,EAAE;IACpD,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,cAAc,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAChC,GAAG,IAAI,CAkBP;AAID;;;;;GAKG;AACH,MAAM,WAAW,oBAAoB;IACnC,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,sBAAsB,CAAC,EAAE,OAAO,sBAAsB,CAAC;IACvD,cAAc,CAAC,EAAE,OAAO,cAAc,CAAC;IACvC,0BAA0B,CAAC,EAAE,OAAO,0BAA0B,CAAC;IAC/D,oBAAoB,CAAC,EAAE,OAAO,oBAAoB,CAAC;CACpD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE;IAC7C,MAAM,EAAE,YAAY,CAAC;IACrB,SAAS,EAAE,cAAc,CAAC;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,OAAO,CAAC;IACxB,iBAAiB,EAAE,MAAM,EAAE,CAAC;IAC5B,iEAAiE;IACjE,IAAI,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IACxB,6EAA6E;IAC7E,iBAAiB,CAAC,EAAE,MAAM,EAAE,CAAC;CAC9B,EAAE,IAAI,GAAE,oBAAyB,GAAG,OAAO,CAAC,MAAM,CAAC,CA6GnD"}
|
|
@@ -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/ci/ci-merge-gate.test.ts
|
|
2
|
+
// Pinned by: packages/daemon/src/ci/ci-merge-gate.test.ts,
|
|
3
|
+
// packages/daemon/src/completion/teardown-merge-gate.test.ts
|
|
3
4
|
// PINNED-BY-END
|
|
4
5
|
import { reportGitState } from '../queries/deliveries.js';
|
|
5
6
|
import { mergeFocusBranch } from '../merge/focus-merge.js';
|
|
@@ -8,16 +9,20 @@ import { mergeIntegrationToMain } from '../git/index.js';
|
|
|
8
9
|
import { resolveCiDecision } from '../workflow/pipeline-config.js';
|
|
9
10
|
import { fileCdPushEscalation, shouldFileCdPushEscalation } from '../ci/ci-escalation.js';
|
|
10
11
|
import { branchHasUnmergedCommits } from '../git/exec.js';
|
|
12
|
+
import { readMergeGateHold } from '../merge/merge-gate-coverage.js';
|
|
11
13
|
import { createLogger } from '../shell/log.js';
|
|
12
14
|
const log = createLogger({ module: 'ci-merge' });
|
|
13
15
|
// ── Merge gate ───────────────────────────────────────────────────────
|
|
14
16
|
/**
|
|
15
|
-
* Decide whether
|
|
17
|
+
* Decide whether mergeFocusBranch is a candidate on team exit.
|
|
16
18
|
*
|
|
17
|
-
* The gate asks "does the branch have
|
|
18
|
-
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
19
|
+
* The gate asks "does the branch have committed work?" rather than "did the
|
|
20
|
+
* team session exit cleanly?" -- the exit shape (review-cycle SIGTERM,
|
|
21
|
+
* role-clear, daemon crash, manual termination) decides nothing. It is only the
|
|
22
|
+
* FIRST gate: attemptFocusMerge then merges only when every commit the merge
|
|
23
|
+
* would add has passed the focus's review or verify gate
|
|
24
|
+
* (merge/merge-gate-coverage.ts), so a stopped team's WIP capture and any other
|
|
25
|
+
* unreviewed commit stay on the focus branch.
|
|
21
26
|
*
|
|
22
27
|
* Skip merge when:
|
|
23
28
|
* - The team is still in its planning phase (cancellation mid-planning --
|
|
@@ -65,16 +70,22 @@ export function selectWorkedDeliveryIds(deliveries, alreadyMerged) {
|
|
|
65
70
|
/**
|
|
66
71
|
* Decide whether to merge the focus branch and, if so, run the merge.
|
|
67
72
|
*
|
|
68
|
-
* This is the integration of
|
|
73
|
+
* This is the integration of four separate concerns that the merge gate
|
|
69
74
|
* conflated before:
|
|
70
75
|
* 1. Branch state: does the focus branch actually have committed work?
|
|
71
76
|
* 2. Team gate: planningPhase + readOnly safety nets in shouldAttemptMerge.
|
|
72
|
-
* 3.
|
|
77
|
+
* 3. Gate coverage: every commit the merge would add has passed the focus's
|
|
78
|
+
* review or verify gate (readMergeGateHold). An ungated commit -- a WIP
|
|
79
|
+
* capture wip-preserve just made included -- or an unreadable approving
|
|
80
|
+
* review/verdict holds the merge; integration is untouched and the
|
|
81
|
+
* merge-back loop or the next team exit asks again.
|
|
82
|
+
* 4. Per-delivery telemetry: workedDeliveryIds is passed through for
|
|
73
83
|
* git-state reporting inside mergeFocusBranch.
|
|
74
84
|
*
|
|
75
85
|
* Returns attempted=false when the gate skips the merge (clean exit with
|
|
76
|
-
* nothing to merge, planning-phase, or read-only
|
|
77
|
-
* with the merge
|
|
86
|
+
* nothing to merge, planning-phase, or read-only: exitReason null; a gate
|
|
87
|
+
* coverage hold: exitReason names it). Returns attempted=true with the merge
|
|
88
|
+
* result otherwise.
|
|
78
89
|
*
|
|
79
90
|
* Exported so tests can verify the threading from done-only deliveries +
|
|
80
91
|
* branch-with-commits to a real mergeFocusBranch invocation, without having
|
|
@@ -83,11 +94,25 @@ export function selectWorkedDeliveryIds(deliveries, alreadyMerged) {
|
|
|
83
94
|
export async function attemptFocusMerge(config, teamState, sessionId, workedDeliveryIds, deps = {
|
|
84
95
|
branchHasUnmergedCommits,
|
|
85
96
|
mergeFocusBranch,
|
|
97
|
+
readMergeGateHold: (target) => readMergeGateHold(target),
|
|
86
98
|
}) {
|
|
87
99
|
const branchHasCommits = deps.branchHasUnmergedCommits(teamState.branchName, config.integrationBranch, config.repoPath);
|
|
88
100
|
if (!shouldAttemptMerge(teamState, branchHasCommits)) {
|
|
89
101
|
return { attempted: false, mergeSucceeded: false, exitReason: null };
|
|
90
102
|
}
|
|
103
|
+
const hold = await deps.readMergeGateHold({
|
|
104
|
+
organizationId: teamState.organizationId,
|
|
105
|
+
productId: teamState.productId,
|
|
106
|
+
focusId: teamState.focusId,
|
|
107
|
+
branchName: teamState.branchName,
|
|
108
|
+
integrationBranch: config.integrationBranch,
|
|
109
|
+
repoPath: config.repoPath,
|
|
110
|
+
});
|
|
111
|
+
if (hold !== null) {
|
|
112
|
+
log.info(`[merge-gate] Not merging ${teamState.branchName} into ${config.integrationBranch} for "${teamState.focusName}": ` +
|
|
113
|
+
`${hold}. The commits stay on the focus branch for the next team or review.`, { focusId: teamState.focusId });
|
|
114
|
+
return { attempted: false, mergeSucceeded: false, exitReason: `Merge to ${config.integrationBranch} held: ${hold}.` };
|
|
115
|
+
}
|
|
91
116
|
const mergeResult = await deps.mergeFocusBranch(config, teamState, sessionId, teamState.branchName, workedDeliveryIds);
|
|
92
117
|
return {
|
|
93
118
|
attempted: true,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge-phase.js","sourceRoot":"","sources":["../../src/completion/merge-phase.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,
|
|
1
|
+
{"version":3,"file":"merge-phase.js","sourceRoot":"","sources":["../../src/completion/merge-phase.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/** A clean full-coverage auto-approval of one focus commit. */
|
|
2
|
+
export interface ReviewAutoApproval {
|
|
3
|
+
productId: string;
|
|
4
|
+
focusId: string;
|
|
5
|
+
/** The commit the review covered: its spawn tip, equal to its exit tip. */
|
|
6
|
+
sha: string;
|
|
7
|
+
/** The review session whose exit approved it. */
|
|
8
|
+
sessionId: string;
|
|
9
|
+
/** A delivery the approval moved to done (provenance only). */
|
|
10
|
+
deliveryId: string;
|
|
11
|
+
recordedAt: string;
|
|
12
|
+
}
|
|
13
|
+
/** The record file for a focus commit; `dir` defaults to the global state dir. Exported for tests. */
|
|
14
|
+
export declare function reviewAutoApprovalPath(productId: string, focusId: string, sha: string, dir?: string): string;
|
|
15
|
+
/** Record an auto-approval atomically. Best-effort: false (and logged) when the sha is malformed or the write failed. */
|
|
16
|
+
export declare function writeReviewAutoApproval(approval: ReviewAutoApproval, dir?: string): boolean;
|
|
17
|
+
/** Every auto-approval recorded for the focus, newest first. Empty when none can be read: a missing record approves nothing. */
|
|
18
|
+
export declare function listReviewAutoApprovals(productId: string, focusId: string, dir?: string): ReviewAutoApproval[];
|
|
19
|
+
//# sourceMappingURL=review-auto-approval-record.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review-auto-approval-record.d.ts","sourceRoot":"","sources":["../../src/completion/review-auto-approval-record.ts"],"names":[],"mappings":"AAuCA,+DAA+D;AAC/D,MAAM,WAAW,kBAAkB;IACjC,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,2EAA2E;IAC3E,GAAG,EAAE,MAAM,CAAC;IACZ,iDAAiD;IACjD,SAAS,EAAE,MAAM,CAAC;IAClB,+DAA+D;IAC/D,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAYD,sGAAsG;AACtG,wBAAgB,sBAAsB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,GAAE,MAAsB,GAAG,MAAM,CAE3H;AAYD,yHAAyH;AACzH,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,kBAAkB,EAAE,GAAG,GAAE,MAAsB,GAAG,OAAO,CAgB1G;AAED,gIAAgI;AAChI,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,GAAE,MAAsB,GAAG,kBAAkB,EAAE,CAkB7H"}
|
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
// PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
|
|
2
|
+
// Pinned by: packages/daemon/src/completion/review-coverage-gate.test.ts,
|
|
3
|
+
// packages/daemon/src/completion/teardown-merge-gate.test.ts
|
|
4
|
+
// PINNED-BY-END
|
|
5
|
+
/**
|
|
6
|
+
* The commit a clean full-coverage review auto-approval covered, recorded durably.
|
|
7
|
+
*
|
|
8
|
+
* A review session that exits clean (succeeded, no defects filed, no
|
|
9
|
+
* focus_reviews row) with its spawn tip equal to its exit tip auto-approves its
|
|
10
|
+
* verify deliveries to done (completion/review-exit-phase.ts). That approval
|
|
11
|
+
* writes no focus_reviews row, and auto_approved_at on the delivery names a
|
|
12
|
+
* session, not a commit -- so the merge gate had no commit to read for it, and a
|
|
13
|
+
* product with no deterministic gate kept reviewed, done work on the focus branch
|
|
14
|
+
* forever.
|
|
15
|
+
*
|
|
16
|
+
* One file per (product, focus, sha) under the global state dir, written
|
|
17
|
+
* atomically (temp + rename) BEFORE the delivery's move to done: a write that
|
|
18
|
+
* fails leaves the delivery in verify, so no auto-approved delivery is done
|
|
19
|
+
* without the evidence its work needs to merge, and a record whose move then
|
|
20
|
+
* fails still names a commit a clean full-coverage review judged. The
|
|
21
|
+
* merge gate reads a focus's records as approvals of the exact commit each covered
|
|
22
|
+
* (queries/focus-review-approval.ts places them by time among the focus's
|
|
23
|
+
* completed reviews, so a newer gaps_found review of the same commit revokes
|
|
24
|
+
* one). A record that is missing, unreadable or malformed approves nothing: the
|
|
25
|
+
* merge holds, the safe direction. Host-local like the per-commit verdict record
|
|
26
|
+
* (verify/commit-verdict-record.ts): the daemon that claims the product writes
|
|
27
|
+
* and reads it.
|
|
28
|
+
*
|
|
29
|
+
* @module review-auto-approval-record
|
|
30
|
+
*/
|
|
31
|
+
import { mkdirSync, readdirSync, readFileSync, renameSync, writeFileSync } from 'node:fs';
|
|
32
|
+
import { resolve } from 'node:path';
|
|
33
|
+
import { resolveGlobalStateDir } from '../shell/daemon-process.js';
|
|
34
|
+
import { createLogger } from '../shell/log.js';
|
|
35
|
+
const log = createLogger({ module: 'focus-executor' });
|
|
36
|
+
const SHA_RE = /^[0-9a-f]{7,64}$/i;
|
|
37
|
+
function approvalDir() {
|
|
38
|
+
return resolve(resolveGlobalStateDir(), 'review-auto-approvals');
|
|
39
|
+
}
|
|
40
|
+
function filePrefix(productId, focusId) {
|
|
41
|
+
return `${productId}-${focusId}-`.replace(/[^a-zA-Z0-9._-]/g, '_');
|
|
42
|
+
}
|
|
43
|
+
/** The record file for a focus commit; `dir` defaults to the global state dir. Exported for tests. */
|
|
44
|
+
export function reviewAutoApprovalPath(productId, focusId, sha, dir = approvalDir()) {
|
|
45
|
+
return resolve(dir, `${filePrefix(productId, focusId)}${sha.replace(/[^a-zA-Z0-9]/g, '_')}.json`);
|
|
46
|
+
}
|
|
47
|
+
/** Validate a parsed record; null when it is not a well-formed approval. */
|
|
48
|
+
function parseApproval(raw) {
|
|
49
|
+
if (typeof raw !== 'object' || raw === null)
|
|
50
|
+
return null;
|
|
51
|
+
const r = raw;
|
|
52
|
+
if (typeof r.productId !== 'string' || typeof r.focusId !== 'string')
|
|
53
|
+
return null;
|
|
54
|
+
if (typeof r.sha !== 'string' || !SHA_RE.test(r.sha))
|
|
55
|
+
return null;
|
|
56
|
+
if (typeof r.sessionId !== 'string' || typeof r.deliveryId !== 'string' || typeof r.recordedAt !== 'string')
|
|
57
|
+
return null;
|
|
58
|
+
return { productId: r.productId, focusId: r.focusId, sha: r.sha, sessionId: r.sessionId, deliveryId: r.deliveryId, recordedAt: r.recordedAt };
|
|
59
|
+
}
|
|
60
|
+
/** Record an auto-approval atomically. Best-effort: false (and logged) when the sha is malformed or the write failed. */
|
|
61
|
+
export function writeReviewAutoApproval(approval, dir = approvalDir()) {
|
|
62
|
+
if (!SHA_RE.test(approval.sha)) {
|
|
63
|
+
log.warn(`[focus-executor] not recording the auto-approval of focus ${approval.focusId}: malformed covered sha '${approval.sha}'`);
|
|
64
|
+
return false;
|
|
65
|
+
}
|
|
66
|
+
const path = reviewAutoApprovalPath(approval.productId, approval.focusId, approval.sha, dir);
|
|
67
|
+
const tmp = `${path}.${process.pid}.tmp`;
|
|
68
|
+
try {
|
|
69
|
+
mkdirSync(dir, { recursive: true });
|
|
70
|
+
writeFileSync(tmp, JSON.stringify(approval, null, 2), { mode: 0o600 });
|
|
71
|
+
renameSync(tmp, path);
|
|
72
|
+
return true;
|
|
73
|
+
}
|
|
74
|
+
catch (err) {
|
|
75
|
+
log.warn(`[focus-executor] failed to record the auto-approval of ${approval.focusId}@${approval.sha.slice(0, 8)}: ${err.message}`);
|
|
76
|
+
return false;
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
/** Every auto-approval recorded for the focus, newest first. Empty when none can be read: a missing record approves nothing. */
|
|
80
|
+
export function listReviewAutoApprovals(productId, focusId, dir = approvalDir()) {
|
|
81
|
+
const prefix = filePrefix(productId, focusId);
|
|
82
|
+
let names;
|
|
83
|
+
try {
|
|
84
|
+
names = readdirSync(dir).filter((name) => name.startsWith(prefix) && name.endsWith('.json'));
|
|
85
|
+
}
|
|
86
|
+
catch {
|
|
87
|
+
return [];
|
|
88
|
+
}
|
|
89
|
+
const approvals = [];
|
|
90
|
+
for (const name of names) {
|
|
91
|
+
try {
|
|
92
|
+
const parsed = parseApproval(JSON.parse(readFileSync(resolve(dir, name), 'utf8')));
|
|
93
|
+
if (parsed && parsed.productId === productId && parsed.focusId === focusId)
|
|
94
|
+
approvals.push(parsed);
|
|
95
|
+
}
|
|
96
|
+
catch {
|
|
97
|
+
// Unreadable or malformed: approves nothing.
|
|
98
|
+
}
|
|
99
|
+
}
|
|
100
|
+
return approvals.sort((a, b) => Date.parse(b.recordedAt) - Date.parse(a.recordedAt));
|
|
101
|
+
}
|
|
102
|
+
//# sourceMappingURL=review-auto-approval-record.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review-auto-approval-record.js","sourceRoot":"","sources":["../../src/completion/review-auto-approval-record.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { getFocusIssues, getFocusReviewFiledIssueIds, type clearReviewRequestedAt } from '../queries/focuses.js';
|
|
2
|
+
import { type ReviewExitEscalationContext, type ReviewExitEscalationDeps, type ReviewFiledFindingSummary } from './review-exit-escalations.js';
|
|
3
|
+
/** The routed review exit's facts the cycle count is decided from. */
|
|
4
|
+
export interface ReviewCycleOutcome {
|
|
5
|
+
/**
|
|
6
|
+
* The EXITING session's type. Only a review-session exit is a review cycle: a
|
|
7
|
+
* coding exit that routes verify work (the open-work self-heal) can neither fail
|
|
8
|
+
* nor converge a review's verdict, so it leaves the count untouched (no climb, no
|
|
9
|
+
* reset), files nothing and closes no window. Absent counts, as the hand-off
|
|
10
|
+
* breaker's absent sessionType does (recordHandoffAndMaybeTerminate): a caller
|
|
11
|
+
* that cannot name its lineage must not be able to switch off the billing stop.
|
|
12
|
+
*/
|
|
13
|
+
sessionType?: 'coding' | 'review';
|
|
14
|
+
/** A delivery converged to done this exit. */
|
|
15
|
+
convergedAny: boolean;
|
|
16
|
+
/** A delivery re-opened to verify_failed this exit. */
|
|
17
|
+
anyReopenedToVerifyFailed: boolean;
|
|
18
|
+
/** A delivery's route waits on its gate verdict: the release replay owns the open window. */
|
|
19
|
+
verdictHeldAny: boolean;
|
|
20
|
+
/** Open, blocking, review-filed findings on the focus (read focus-wide at exit). */
|
|
21
|
+
openBlockingFindings: ReviewFiledFindingSummary[];
|
|
22
|
+
}
|
|
23
|
+
/** Pure: whether a routed review exit converged -- it resets the count instead of climbing it. */
|
|
24
|
+
export declare function reviewCycleConverged(outcome: Pick<ReviewCycleOutcome, 'convergedAny' | 'anyReopenedToVerifyFailed' | 'openBlockingFindings'>): boolean;
|
|
25
|
+
/** Deps of the crossing: the escalation deps plus the window writer it closes. */
|
|
26
|
+
export interface ReviewCycleCapDeps extends ReviewExitEscalationDeps {
|
|
27
|
+
clearReviewRequestedAt: typeof clearReviewRequestedAt;
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Record one routed review cycle: reset on convergence, climb otherwise, and hold
|
|
31
|
+
* the focus at the cap. Best-effort -- never aborts the routing that already ran.
|
|
32
|
+
* A deps object without the count writer or the cap skips the whole cap.
|
|
33
|
+
*/
|
|
34
|
+
export declare function recordReviewCycleAndMaybeHold(deps: ReviewCycleCapDeps, ctx: ReviewExitEscalationContext, priorCycleCount: number, outcome: ReviewCycleOutcome): Promise<void>;
|
|
35
|
+
/**
|
|
36
|
+
* File the review_cycle_cap_exceeded observation (at most one open per focus).
|
|
37
|
+
* Returns whether one is now open (filed, or already open). NO_HUMAN_ACT: what the
|
|
38
|
+
* unconverged findings need -- route, re-scope, descope -- is planning work an
|
|
39
|
+
* agent performs; the hold is keyed on this observation's kind, not on an act.
|
|
40
|
+
*/
|
|
41
|
+
export declare function fileReviewCycleCapObservation(deps: ReviewExitEscalationDeps, ctx: ReviewExitEscalationContext, args: {
|
|
42
|
+
cycleCount: number;
|
|
43
|
+
cap: number;
|
|
44
|
+
openBlockingFindings: readonly ReviewFiledFindingSummary[];
|
|
45
|
+
}): Promise<boolean>;
|
|
46
|
+
/** Deps of the failed-filing re-file (real defaults; tests inject). */
|
|
47
|
+
export interface ReviewCycleCapReconcileDeps extends ReviewExitEscalationDeps {
|
|
48
|
+
getFocusIssues: typeof getFocusIssues;
|
|
49
|
+
getFocusReviewFiledIssueIds: typeof getFocusReviewFiledIssueIds;
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* The failed-filing half, run by the cascade each poll: a focus whose count
|
|
53
|
+
* stands at or past the cap is held by count; file (or find) its observation and
|
|
54
|
+
* reset the count, so the routing decider has the observation to take and its
|
|
55
|
+
* resolution lifts the hold. A no-op below the cap (no read). Best-effort.
|
|
56
|
+
*/
|
|
57
|
+
export declare function reconcileReviewCycleCapFiling(ctx: {
|
|
58
|
+
organizationId: string;
|
|
59
|
+
focusId: string;
|
|
60
|
+
focusName: string;
|
|
61
|
+
}, reviewCycleCount: number, deps?: ReviewCycleCapReconcileDeps): Promise<void>;
|
|
62
|
+
//# sourceMappingURL=review-cycle-cap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review-cycle-cap.d.ts","sourceRoot":"","sources":["../../src/completion/review-cycle-cap.ts"],"names":[],"mappings":"AA8CA,OAAO,EAAuB,cAAc,EAAE,2BAA2B,EAAE,KAAK,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAItI,OAAO,EAEL,KAAK,2BAA2B,EAChC,KAAK,wBAAwB,EAC7B,KAAK,yBAAyB,EAC/B,MAAM,8BAA8B,CAAC;AAMtC,sEAAsE;AACtE,MAAM,WAAW,kBAAkB;IACjC;;;;;;;OAOG;IACH,WAAW,CAAC,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAClC,8CAA8C;IAC9C,YAAY,EAAE,OAAO,CAAC;IACtB,uDAAuD;IACvD,yBAAyB,EAAE,OAAO,CAAC;IACnC,6FAA6F;IAC7F,cAAc,EAAE,OAAO,CAAC;IACxB,oFAAoF;IACpF,oBAAoB,EAAE,yBAAyB,EAAE,CAAC;CACnD;AAED,kGAAkG;AAClG,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,IAAI,CAAC,kBAAkB,EAAE,cAAc,GAAG,2BAA2B,GAAG,sBAAsB,CAAC,GAAG,OAAO,CAEtJ;AAED,kFAAkF;AAClF,MAAM,WAAW,kBAAmB,SAAQ,wBAAwB;IAClE,sBAAsB,EAAE,OAAO,sBAAsB,CAAC;CACvD;AAiBD;;;;GAIG;AACH,wBAAsB,6BAA6B,CACjD,IAAI,EAAE,kBAAkB,EACxB,GAAG,EAAE,2BAA2B,EAChC,eAAe,EAAE,MAAM,EACvB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,IAAI,CAAC,CAoCf;AAED;;;;;GAKG;AACH,wBAAsB,6BAA6B,CACjD,IAAI,EAAE,wBAAwB,EAC9B,GAAG,EAAE,2BAA2B,EAChC,IAAI,EAAE;IAAE,UAAU,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,oBAAoB,EAAE,SAAS,yBAAyB,EAAE,CAAA;CAAE,GACpG,OAAO,CAAC,OAAO,CAAC,CAgClB;AAED,uEAAuE;AACvE,MAAM,WAAW,2BAA4B,SAAQ,wBAAwB;IAC3E,cAAc,EAAE,OAAO,cAAc,CAAC;IACtC,2BAA2B,EAAE,OAAO,2BAA2B,CAAC;CACjE;AAWD;;;;;GAKG;AACH,wBAAsB,6BAA6B,CACjD,GAAG,EAAE;IAAE,cAAc,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EACnE,gBAAgB,EAAE,MAAM,EACxB,IAAI,GAAE,2BAAkD,GACvD,OAAO,CAAC,IAAI,CAAC,CAef"}
|