@telora/daemon 0.20.4 → 0.20.19
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 +13 -3
- package/dist/ai-inspection-context.d.ts.map +1 -1
- package/dist/ai-inspection-context.js +5 -3
- package/dist/ai-inspection-context.js.map +1 -1
- package/dist/assembly-engine.d.ts.map +1 -1
- package/dist/assembly-engine.js +4 -2
- package/dist/assembly-engine.js.map +1 -1
- package/dist/audit-hooks.d.ts.map +1 -1
- package/dist/audit-hooks.js +3 -1
- package/dist/audit-hooks.js.map +1 -1
- package/dist/auth-liveness.d.ts.map +1 -1
- package/dist/auth-liveness.js +4 -2
- package/dist/auth-liveness.js.map +1 -1
- package/dist/auto-update.d.ts.map +1 -1
- package/dist/auto-update.js +14 -12
- package/dist/auto-update.js.map +1 -1
- package/dist/backends/codex/codex-backend.d.ts.map +1 -1
- package/dist/backends/codex/codex-backend.js +4 -2
- package/dist/backends/codex/codex-backend.js.map +1 -1
- package/dist/backends/codex/codex-mcp-proxy.d.ts.map +1 -1
- package/dist/backends/codex/codex-mcp-proxy.js +3 -1
- package/dist/backends/codex/codex-mcp-proxy.js.map +1 -1
- package/dist/backends/lacuna/lifecycle.d.ts.map +1 -1
- package/dist/backends/lacuna/lifecycle.js +4 -2
- package/dist/backends/lacuna/lifecycle.js.map +1 -1
- package/dist/backends/resolve.d.ts.map +1 -1
- package/dist/backends/resolve.js +3 -1
- package/dist/backends/resolve.js.map +1 -1
- package/dist/cascade-restatement.d.ts.map +1 -1
- package/dist/cascade-restatement.js +15 -13
- package/dist/cascade-restatement.js.map +1 -1
- package/dist/ci-escalation.d.ts.map +1 -1
- package/dist/ci-escalation.js +4 -2
- package/dist/ci-escalation.js.map +1 -1
- package/dist/ci-sensor-loop.d.ts.map +1 -1
- package/dist/ci-sensor-loop.js +6 -4
- package/dist/ci-sensor-loop.js.map +1 -1
- package/dist/ci-status-git.d.ts +5 -6
- package/dist/ci-status-git.d.ts.map +1 -1
- package/dist/ci-status-git.js +7 -7
- package/dist/ci-status-git.js.map +1 -1
- package/dist/cli/connect.d.ts.map +1 -1
- package/dist/cli/connect.js +9 -2
- package/dist/cli/connect.js.map +1 -1
- package/dist/cli/open.d.ts.map +1 -1
- package/dist/cli/open.js +9 -2
- package/dist/cli/open.js.map +1 -1
- package/dist/cli/session-state.d.ts.map +1 -1
- package/dist/cli/session-state.js +2 -0
- package/dist/cli/session-state.js.map +1 -1
- package/dist/cli/verify-setup.d.ts.map +1 -1
- package/dist/cli/verify-setup.js +9 -4
- package/dist/cli/verify-setup.js.map +1 -1
- package/dist/close-loop-dispatcher.d.ts.map +1 -1
- package/dist/close-loop-dispatcher.js +6 -4
- package/dist/close-loop-dispatcher.js.map +1 -1
- package/dist/completion/advanceability.d.ts.map +1 -1
- package/dist/completion/advanceability.js +3 -1
- package/dist/completion/advanceability.js.map +1 -1
- package/dist/completion/agent-completion.d.ts.map +1 -1
- package/dist/completion/agent-completion.js +11 -9
- package/dist/completion/agent-completion.js.map +1 -1
- package/dist/completion/event-escalations.d.ts.map +1 -1
- package/dist/completion/event-escalations.js +10 -8
- package/dist/completion/event-escalations.js.map +1 -1
- package/dist/completion/event-phases.d.ts +104 -0
- package/dist/completion/event-phases.d.ts.map +1 -0
- package/dist/completion/event-phases.js +572 -0
- package/dist/completion/event-phases.js.map +1 -0
- package/dist/completion/event.d.ts +1 -1
- package/dist/completion/event.d.ts.map +1 -1
- package/dist/completion/event.js +36 -592
- package/dist/completion/event.js.map +1 -1
- package/dist/completion/merge-phase.d.ts.map +1 -1
- package/dist/completion/merge-phase.js +14 -12
- package/dist/completion/merge-phase.js.map +1 -1
- package/dist/completion/read-only-pristine.d.ts.map +1 -1
- package/dist/completion/read-only-pristine.js +6 -4
- package/dist/completion/read-only-pristine.js.map +1 -1
- package/dist/completion/review-exit-phase.d.ts +2 -0
- package/dist/completion/review-exit-phase.d.ts.map +1 -1
- package/dist/completion/review-exit-phase.js +86 -30
- package/dist/completion/review-exit-phase.js.map +1 -1
- package/dist/completion/review-exit-shortfall.d.ts +62 -0
- package/dist/completion/review-exit-shortfall.d.ts.map +1 -0
- package/dist/completion/review-exit-shortfall.js +84 -0
- package/dist/completion/review-exit-shortfall.js.map +1 -0
- package/dist/completion/status-advance-phase.d.ts.map +1 -1
- package/dist/completion/status-advance-phase.js +16 -14
- package/dist/completion/status-advance-phase.js.map +1 -1
- package/dist/completion/team-completion.d.ts.map +1 -1
- package/dist/completion/team-completion.js +16 -14
- package/dist/completion/team-completion.js.map +1 -1
- package/dist/completion/team-lifecycle.d.ts.map +1 -1
- package/dist/completion/team-lifecycle.js +32 -33
- package/dist/completion/team-lifecycle.js.map +1 -1
- package/dist/completion/terminated-work-reconcile.d.ts.map +1 -1
- package/dist/completion/terminated-work-reconcile.js +11 -9
- package/dist/completion/terminated-work-reconcile.js.map +1 -1
- package/dist/condition-evaluators.d.ts.map +1 -1
- package/dist/condition-evaluators.js +3 -1
- package/dist/condition-evaluators.js.map +1 -1
- package/dist/config-reconcile.d.ts.map +1 -1
- package/dist/config-reconcile.js +3 -1
- package/dist/config-reconcile.js.map +1 -1
- package/dist/config.d.ts +4 -4
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +39 -37
- package/dist/config.js.map +1 -1
- package/dist/control-state.d.ts.map +1 -1
- package/dist/control-state.js +26 -24
- package/dist/control-state.js.map +1 -1
- package/dist/crash-recovery.d.ts.map +1 -1
- package/dist/crash-recovery.js +43 -41
- package/dist/crash-recovery.js.map +1 -1
- package/dist/daemon-logs.d.ts.map +1 -1
- package/dist/daemon-logs.js +21 -3
- package/dist/daemon-logs.js.map +1 -1
- package/dist/daemon-process.d.ts +0 -1
- package/dist/daemon-process.d.ts.map +1 -1
- package/dist/daemon-process.js +15 -10
- package/dist/daemon-process.js.map +1 -1
- package/dist/delivery-advance-block.d.ts +4 -4
- package/dist/delivery-advance-block.d.ts.map +1 -1
- package/dist/delivery-advance-block.js +25 -18
- package/dist/delivery-advance-block.js.map +1 -1
- package/dist/delivery-guards.d.ts.map +1 -1
- package/dist/delivery-guards.js +11 -9
- package/dist/delivery-guards.js.map +1 -1
- package/dist/delivery-lifecycle.d.ts.map +1 -1
- package/dist/delivery-lifecycle.js +23 -21
- package/dist/delivery-lifecycle.js.map +1 -1
- package/dist/delivery-merge.d.ts.map +1 -1
- package/dist/delivery-merge.js +10 -8
- package/dist/delivery-merge.js.map +1 -1
- package/dist/delivery-reconciler-apply.d.ts.map +1 -1
- package/dist/delivery-reconciler-apply.js +5 -8
- package/dist/delivery-reconciler-apply.js.map +1 -1
- package/dist/delivery-reconciler-shadow.d.ts.map +1 -1
- package/dist/delivery-reconciler-shadow.js +5 -6
- package/dist/delivery-reconciler-shadow.js.map +1 -1
- package/dist/directive/close-loop-stage.d.ts.map +1 -1
- package/dist/directive/close-loop-stage.js +9 -7
- package/dist/directive/close-loop-stage.js.map +1 -1
- package/dist/directive/directive-assembly.d.ts.map +1 -1
- package/dist/directive/directive-assembly.js +3 -1
- package/dist/directive/directive-assembly.js.map +1 -1
- package/dist/directive/directive-dispatch.d.ts.map +1 -1
- package/dist/directive/directive-dispatch.js +16 -14
- package/dist/directive/directive-dispatch.js.map +1 -1
- package/dist/directive/directive-queue.d.ts +27 -0
- package/dist/directive/directive-queue.d.ts.map +1 -1
- package/dist/directive/directive-queue.js +28 -0
- package/dist/directive/directive-queue.js.map +1 -1
- package/dist/directive/phase-sync.d.ts.map +1 -1
- package/dist/directive/phase-sync.js +8 -6
- package/dist/directive/phase-sync.js.map +1 -1
- package/dist/directive-executor.d.ts +1 -1
- package/dist/directive-executor.d.ts.map +1 -1
- package/dist/directive-executor.js +12 -10
- package/dist/directive-executor.js.map +1 -1
- package/dist/discovery-poll.d.ts.map +1 -1
- package/dist/discovery-poll.js +8 -6
- package/dist/discovery-poll.js.map +1 -1
- package/dist/drain-teardown.d.ts.map +1 -1
- package/dist/drain-teardown.js +6 -19
- package/dist/drain-teardown.js.map +1 -1
- package/dist/drift-eval-loop.d.ts.map +1 -1
- package/dist/drift-eval-loop.js +10 -8
- package/dist/drift-eval-loop.js.map +1 -1
- package/dist/drift-ratify-loop.d.ts +68 -0
- package/dist/drift-ratify-loop.d.ts.map +1 -0
- package/dist/drift-ratify-loop.js +161 -0
- package/dist/drift-ratify-loop.js.map +1 -0
- package/dist/drift-ratify-policy.d.ts +101 -0
- package/dist/drift-ratify-policy.d.ts.map +1 -0
- package/dist/drift-ratify-policy.js +178 -0
- package/dist/drift-ratify-policy.js.map +1 -0
- package/dist/escalation-provenance.d.ts.map +1 -1
- package/dist/escalation-provenance.js +8 -3
- package/dist/escalation-provenance.js.map +1 -1
- package/dist/focus-engine.d.ts.map +1 -1
- package/dist/focus-engine.js +36 -34
- package/dist/focus-engine.js.map +1 -1
- package/dist/focus-executor.d.ts +1 -0
- package/dist/focus-executor.d.ts.map +1 -1
- package/dist/focus-executor.js +16 -14
- package/dist/focus-executor.js.map +1 -1
- package/dist/focus-lifecycle.d.ts.map +1 -1
- package/dist/focus-lifecycle.js +56 -44
- package/dist/focus-lifecycle.js.map +1 -1
- package/dist/focus-loop-registry.d.ts.map +1 -1
- package/dist/focus-loop-registry.js +87 -36
- package/dist/focus-loop-registry.js.map +1 -1
- package/dist/focus-merge.d.ts.map +1 -1
- package/dist/focus-merge.js +40 -34
- package/dist/focus-merge.js.map +1 -1
- package/dist/focus-provisioning.d.ts.map +1 -1
- package/dist/focus-provisioning.js +15 -13
- package/dist/focus-provisioning.js.map +1 -1
- package/dist/focus-respawn-guard.d.ts.map +1 -1
- package/dist/focus-respawn-guard.js +4 -2
- package/dist/focus-respawn-guard.js.map +1 -1
- package/dist/focus-stage-lifecycle/planning-release.d.ts.map +1 -1
- package/dist/focus-stage-lifecycle/planning-release.js +10 -8
- package/dist/focus-stage-lifecycle/planning-release.js.map +1 -1
- package/dist/focus-stage-lifecycle/review-convergence.d.ts.map +1 -1
- package/dist/focus-stage-lifecycle/review-convergence.js +11 -9
- package/dist/focus-stage-lifecycle/review-convergence.js.map +1 -1
- package/dist/focus-stage-lifecycle/wedge-watchdog.d.ts.map +1 -1
- package/dist/focus-stage-lifecycle/wedge-watchdog.js +7 -5
- package/dist/focus-stage-lifecycle/wedge-watchdog.js.map +1 -1
- package/dist/focus-stage-lifecycle.d.ts.map +1 -1
- package/dist/focus-stage-lifecycle.js +7 -5
- package/dist/focus-stage-lifecycle.js.map +1 -1
- package/dist/focus-team-state.d.ts +18 -9
- package/dist/focus-team-state.d.ts.map +1 -1
- package/dist/focus-team-state.js +37 -18
- package/dist/focus-team-state.js.map +1 -1
- package/dist/focus-worktree-state.d.ts.map +1 -1
- package/dist/focus-worktree-state.js +6 -4
- package/dist/focus-worktree-state.js.map +1 -1
- package/dist/git/branch.d.ts.map +1 -1
- package/dist/git/branch.js +7 -5
- package/dist/git/branch.js.map +1 -1
- package/dist/git/genesis.d.ts.map +1 -1
- package/dist/git/genesis.js +3 -1
- package/dist/git/genesis.js.map +1 -1
- package/dist/git/integration.d.ts.map +1 -1
- package/dist/git/integration.js +4 -2
- package/dist/git/integration.js.map +1 -1
- package/dist/git/merge-helpers.d.ts.map +1 -1
- package/dist/git/merge-helpers.js +6 -4
- package/dist/git/merge-helpers.js.map +1 -1
- package/dist/git/merge-lock.d.ts +0 -7
- package/dist/git/merge-lock.d.ts.map +1 -1
- package/dist/git/merge-lock.js +5 -3
- package/dist/git/merge-lock.js.map +1 -1
- package/dist/git/merge.d.ts.map +1 -1
- package/dist/git/merge.js +10 -8
- package/dist/git/merge.js.map +1 -1
- package/dist/git/state-detector.d.ts.map +1 -1
- package/dist/git/state-detector.js +9 -7
- package/dist/git/state-detector.js.map +1 -1
- package/dist/git/utils.d.ts.map +1 -1
- package/dist/git/utils.js +6 -4
- package/dist/git/utils.js.map +1 -1
- package/dist/git.d.ts.map +1 -1
- package/dist/git.js +16 -14
- package/dist/git.js.map +1 -1
- package/dist/guard-evaluator.d.ts.map +1 -1
- package/dist/guard-evaluator.js +3 -1
- package/dist/guard-evaluator.js.map +1 -1
- package/dist/heartbeat.d.ts.map +1 -1
- package/dist/heartbeat.js +14 -11
- package/dist/heartbeat.js.map +1 -1
- package/dist/host-control/catalog.d.ts.map +1 -1
- package/dist/host-control/catalog.js +4 -2
- package/dist/host-control/catalog.js.map +1 -1
- package/dist/host-control/client.d.ts.map +1 -1
- package/dist/host-control/client.js +3 -1
- package/dist/host-control/client.js.map +1 -1
- package/dist/host-control/sizing.d.ts.map +1 -1
- package/dist/host-control/sizing.js +4 -1
- package/dist/host-control/sizing.js.map +1 -1
- package/dist/index.js +110 -127
- package/dist/index.js.map +1 -1
- package/dist/install-probe-tick.d.ts.map +1 -1
- package/dist/install-probe-tick.js +6 -4
- package/dist/install-probe-tick.js.map +1 -1
- package/dist/intake-control.d.ts +0 -16
- package/dist/intake-control.d.ts.map +1 -1
- package/dist/intake-control.js +4 -2
- package/dist/intake-control.js.map +1 -1
- package/dist/listener-auto-advance.d.ts.map +1 -1
- package/dist/listener-auto-advance.js +26 -24
- package/dist/listener-auto-advance.js.map +1 -1
- package/dist/listener.d.ts.map +1 -1
- package/dist/listener.js +59 -39
- package/dist/listener.js.map +1 -1
- package/dist/log.d.ts +84 -0
- package/dist/log.d.ts.map +1 -0
- package/dist/log.js +182 -0
- package/dist/log.js.map +1 -0
- package/dist/loops/context-audit-pass.d.ts.map +1 -1
- package/dist/loops/context-audit-pass.js +8 -5
- package/dist/loops/context-audit-pass.js.map +1 -1
- package/dist/loops/engine.d.ts.map +1 -1
- package/dist/loops/engine.js +26 -24
- package/dist/loops/engine.js.map +1 -1
- package/dist/loops/llm-client.d.ts.map +1 -1
- package/dist/loops/llm-client.js +4 -2
- package/dist/loops/llm-client.js.map +1 -1
- package/dist/loops/llm-flag.d.ts +4 -28
- package/dist/loops/llm-flag.d.ts.map +1 -1
- package/dist/loops/llm-flag.js +11 -30
- package/dist/loops/llm-flag.js.map +1 -1
- package/dist/loops/prompt-builder.d.ts.map +1 -1
- package/dist/loops/prompt-builder.js +3 -1
- package/dist/loops/prompt-builder.js.map +1 -1
- package/dist/merge-back-loop.d.ts.map +1 -1
- package/dist/merge-back-loop.js +20 -18
- package/dist/merge-back-loop.js.map +1 -1
- package/dist/merge-detector.d.ts.map +1 -1
- package/dist/merge-detector.js +7 -5
- package/dist/merge-detector.js.map +1 -1
- package/dist/nexus/endpoint-clearance.d.ts.map +1 -1
- package/dist/nexus/endpoint-clearance.js +3 -1
- package/dist/nexus/endpoint-clearance.js.map +1 -1
- package/dist/nexus/escalation-bridge.d.ts.map +1 -1
- package/dist/nexus/escalation-bridge.js +3 -1
- package/dist/nexus/escalation-bridge.js.map +1 -1
- package/dist/nexus/incoming.d.ts.map +1 -1
- package/dist/nexus/incoming.js +3 -1
- package/dist/nexus/incoming.js.map +1 -1
- package/dist/nexus/intake-spawn.d.ts.map +1 -1
- package/dist/nexus/intake-spawn.js +6 -4
- package/dist/nexus/intake-spawn.js.map +1 -1
- package/dist/nexus/intake.d.ts.map +1 -1
- package/dist/nexus/intake.js +3 -1
- package/dist/nexus/intake.js.map +1 -1
- package/dist/nexus/return.d.ts.map +1 -1
- package/dist/nexus/return.js +3 -1
- package/dist/nexus/return.js.map +1 -1
- package/dist/non-interactive-init.d.ts.map +1 -1
- package/dist/non-interactive-init.js +0 -0
- package/dist/non-interactive-init.js.map +1 -1
- package/dist/otlp/port-manager.d.ts.map +1 -1
- package/dist/otlp/port-manager.js +7 -5
- package/dist/otlp/port-manager.js.map +1 -1
- package/dist/otlp/receiver.d.ts.map +1 -1
- package/dist/otlp/receiver.js +14 -12
- package/dist/otlp/receiver.js.map +1 -1
- package/dist/output-monitor.d.ts.map +1 -1
- package/dist/output-monitor.js +6 -4
- package/dist/output-monitor.js.map +1 -1
- package/dist/prd/controller.d.ts.map +1 -1
- package/dist/prd/controller.js +7 -5
- package/dist/prd/controller.js.map +1 -1
- package/dist/prd/focus-pushdown.d.ts.map +1 -1
- package/dist/prd/focus-pushdown.js +3 -1
- package/dist/prd/focus-pushdown.js.map +1 -1
- package/dist/product-scaffold.d.ts.map +1 -1
- package/dist/product-scaffold.js +8 -6
- package/dist/product-scaffold.js.map +1 -1
- package/dist/prompt-sections/persona-sections.d.ts.map +1 -1
- package/dist/prompt-sections/persona-sections.js +41 -4
- package/dist/prompt-sections/persona-sections.js.map +1 -1
- package/dist/queries/context-assembly.d.ts.map +1 -1
- package/dist/queries/context-assembly.js +3 -1
- package/dist/queries/context-assembly.js.map +1 -1
- package/dist/queries/deliveries.d.ts +22 -0
- package/dist/queries/deliveries.d.ts.map +1 -1
- package/dist/queries/deliveries.js +13 -5
- package/dist/queries/deliveries.js.map +1 -1
- package/dist/queries/focuses.d.ts +9 -0
- package/dist/queries/focuses.d.ts.map +1 -1
- package/dist/queries/focuses.js +17 -1
- package/dist/queries/focuses.js.map +1 -1
- package/dist/queries/guards.d.ts.map +1 -1
- package/dist/queries/guards.js +3 -1
- package/dist/queries/guards.js.map +1 -1
- package/dist/queries/issues.d.ts.map +1 -1
- package/dist/queries/issues.js +3 -1
- package/dist/queries/issues.js.map +1 -1
- package/dist/queries/reality-tree.d.ts +22 -0
- package/dist/queries/reality-tree.d.ts.map +1 -1
- package/dist/queries/reality-tree.js +32 -0
- package/dist/queries/reality-tree.js.map +1 -1
- package/dist/queries/schemas.d.ts +2 -0
- package/dist/queries/schemas.d.ts.map +1 -1
- package/dist/queries/schemas.js +5 -0
- package/dist/queries/schemas.js.map +1 -1
- package/dist/queries/system-session.d.ts.map +1 -1
- package/dist/queries/system-session.js +5 -3
- package/dist/queries/system-session.js.map +1 -1
- package/dist/queries/verification.d.ts.map +1 -1
- package/dist/queries/verification.js +6 -4
- package/dist/queries/verification.js.map +1 -1
- package/dist/reality-pole-capture.d.ts.map +1 -1
- package/dist/reality-pole-capture.js +7 -4
- package/dist/reality-pole-capture.js.map +1 -1
- package/dist/reality-pole.d.ts.map +1 -1
- package/dist/reality-pole.js +4 -2
- package/dist/reality-pole.js.map +1 -1
- package/dist/resolvers/agent-escalations.d.ts.map +1 -1
- package/dist/resolvers/agent-escalations.js +3 -1
- package/dist/resolvers/agent-escalations.js.map +1 -1
- package/dist/resolvers/agent-session-summaries.d.ts.map +1 -1
- package/dist/resolvers/agent-session-summaries.js +3 -1
- package/dist/resolvers/agent-session-summaries.js.map +1 -1
- package/dist/resolvers/deployment-profile.d.ts.map +1 -1
- package/dist/resolvers/deployment-profile.js +3 -1
- package/dist/resolvers/deployment-profile.js.map +1 -1
- package/dist/resolvers/drift-shortfall-proposals.d.ts +27 -0
- package/dist/resolvers/drift-shortfall-proposals.d.ts.map +1 -0
- package/dist/resolvers/drift-shortfall-proposals.js +90 -0
- package/dist/resolvers/drift-shortfall-proposals.js.map +1 -0
- package/dist/resolvers/escalation-answers.d.ts.map +1 -1
- package/dist/resolvers/escalation-answers.js +4 -2
- package/dist/resolvers/escalation-answers.js.map +1 -1
- package/dist/resolvers/focus-anchoring-injections.d.ts.map +1 -1
- package/dist/resolvers/focus-anchoring-injections.js +3 -1
- package/dist/resolvers/focus-anchoring-injections.js.map +1 -1
- package/dist/resolvers/focus-injections.d.ts.map +1 -1
- package/dist/resolvers/focus-injections.js +3 -1
- package/dist/resolvers/focus-injections.js.map +1 -1
- package/dist/resolvers/focus-last-review-report.d.ts.map +1 -1
- package/dist/resolvers/focus-last-review-report.js +3 -1
- package/dist/resolvers/focus-last-review-report.js.map +1 -1
- package/dist/resolvers/focus-reality-tree.d.ts.map +1 -1
- package/dist/resolvers/focus-reality-tree.js +3 -1
- package/dist/resolvers/focus-reality-tree.js.map +1 -1
- package/dist/resolvers/git-diff-against-base.d.ts.map +1 -1
- package/dist/resolvers/git-diff-against-base.js +3 -1
- package/dist/resolvers/git-diff-against-base.js.map +1 -1
- package/dist/resolvers/guards-evaluation-results.d.ts.map +1 -1
- package/dist/resolvers/guards-evaluation-results.js +3 -1
- package/dist/resolvers/guards-evaluation-results.js.map +1 -1
- package/dist/resolvers/index.d.ts.map +1 -1
- package/dist/resolvers/index.js +2 -0
- package/dist/resolvers/index.js.map +1 -1
- package/dist/resolvers/loop-context.d.ts.map +1 -1
- package/dist/resolvers/loop-context.js +6 -2
- package/dist/resolvers/loop-context.js.map +1 -1
- package/dist/resolvers/loop-delivery-index.d.ts.map +1 -1
- package/dist/resolvers/loop-delivery-index.js +3 -1
- package/dist/resolvers/loop-delivery-index.js.map +1 -1
- package/dist/resolvers/loop-documents.d.ts.map +1 -1
- package/dist/resolvers/loop-documents.js +3 -1
- package/dist/resolvers/loop-documents.js.map +1 -1
- package/dist/resolvers/loop-expected-effects.d.ts.map +1 -1
- package/dist/resolvers/loop-expected-effects.js +3 -1
- package/dist/resolvers/loop-expected-effects.js.map +1 -1
- package/dist/resolvers/loop-frt-statement.d.ts.map +1 -1
- package/dist/resolvers/loop-frt-statement.js +3 -1
- package/dist/resolvers/loop-frt-statement.js.map +1 -1
- package/dist/resolvers/loop-injection.d.ts.map +1 -1
- package/dist/resolvers/loop-injection.js +3 -1
- package/dist/resolvers/loop-injection.js.map +1 -1
- package/dist/resolvers/loop-persona.d.ts.map +1 -1
- package/dist/resolvers/loop-persona.js +3 -1
- package/dist/resolvers/loop-persona.js.map +1 -1
- package/dist/resolvers/loop-questions.d.ts.map +1 -1
- package/dist/resolvers/loop-questions.js +3 -1
- package/dist/resolvers/loop-questions.js.map +1 -1
- package/dist/resolvers/loop-upstream-udes.d.ts.map +1 -1
- package/dist/resolvers/loop-upstream-udes.js +3 -1
- package/dist/resolvers/loop-upstream-udes.js.map +1 -1
- package/dist/resolvers/prd-context.d.ts.map +1 -1
- package/dist/resolvers/prd-context.js +3 -1
- package/dist/resolvers/prd-context.js.map +1 -1
- package/dist/resolvers/reality-metrics.d.ts.map +1 -1
- package/dist/resolvers/reality-metrics.js +3 -1
- package/dist/resolvers/reality-metrics.js.map +1 -1
- package/dist/resolvers/reality-projections.d.ts.map +1 -1
- package/dist/resolvers/reality-projections.js +3 -1
- package/dist/resolvers/reality-projections.js.map +1 -1
- package/dist/resolvers/reality-tree-snapshot.d.ts.map +1 -1
- package/dist/resolvers/reality-tree-snapshot.js +3 -1
- package/dist/resolvers/reality-tree-snapshot.js.map +1 -1
- package/dist/resolvers/retired-injections.d.ts.map +1 -1
- package/dist/resolvers/retired-injections.js +3 -1
- package/dist/resolvers/retired-injections.js.map +1 -1
- package/dist/resolvers/review-outcomes.d.ts.map +1 -1
- package/dist/resolvers/review-outcomes.js +3 -1
- package/dist/resolvers/review-outcomes.js.map +1 -1
- package/dist/resolvers/security-advisory.d.ts.map +1 -1
- package/dist/resolvers/security-advisory.js +3 -1
- package/dist/resolvers/security-advisory.js.map +1 -1
- package/dist/resolvers/shared/wiki.d.ts.map +1 -1
- package/dist/resolvers/shared/wiki.js +5 -3
- package/dist/resolvers/shared/wiki.js.map +1 -1
- package/dist/resolvers/wiki-topic.d.ts.map +1 -1
- package/dist/resolvers/wiki-topic.js +3 -1
- package/dist/resolvers/wiki-topic.js.map +1 -1
- package/dist/resolvers/workflow-stages.d.ts.map +1 -1
- package/dist/resolvers/workflow-stages.js +3 -1
- package/dist/resolvers/workflow-stages.js.map +1 -1
- package/dist/schema-version-gate.d.ts.map +1 -1
- package/dist/schema-version-gate.js +16 -18
- package/dist/schema-version-gate.js.map +1 -1
- package/dist/security-finding-gate.d.ts.map +1 -1
- package/dist/security-finding-gate.js +3 -1
- package/dist/security-finding-gate.js.map +1 -1
- package/dist/security-rescan-resolution.d.ts.map +1 -1
- package/dist/security-rescan-resolution.js +4 -2
- package/dist/security-rescan-resolution.js.map +1 -1
- package/dist/security-scan-engine.d.ts.map +1 -1
- package/dist/security-scan-engine.js +9 -6
- package/dist/security-scan-engine.js.map +1 -1
- package/dist/self-update.d.ts.map +1 -1
- package/dist/self-update.js +48 -39
- package/dist/self-update.js.map +1 -1
- package/dist/sensor-sweep.d.ts.map +1 -1
- package/dist/sensor-sweep.js +5 -2
- package/dist/sensor-sweep.js.map +1 -1
- package/dist/session-stamp.d.ts.map +1 -1
- package/dist/session-stamp.js +4 -2
- package/dist/session-stamp.js.map +1 -1
- package/dist/shortfall-disposition-config.d.ts +34 -0
- package/dist/shortfall-disposition-config.d.ts.map +1 -0
- package/dist/shortfall-disposition-config.js +46 -0
- package/dist/shortfall-disposition-config.js.map +1 -0
- package/dist/shortfall-disposition-loop.d.ts +86 -0
- package/dist/shortfall-disposition-loop.d.ts.map +1 -0
- package/dist/shortfall-disposition-loop.js +309 -0
- package/dist/shortfall-disposition-loop.js.map +1 -0
- package/dist/spawn/model-routing.d.ts.map +1 -1
- package/dist/spawn/model-routing.js +19 -16
- package/dist/spawn/model-routing.js.map +1 -1
- package/dist/spawn/process-spawn.d.ts.map +1 -1
- package/dist/spawn/process-spawn.js +29 -22
- package/dist/spawn/process-spawn.js.map +1 -1
- package/dist/spawn/prompt-assembly.d.ts.map +1 -1
- package/dist/spawn/prompt-assembly.js +6 -4
- package/dist/spawn/prompt-assembly.js.map +1 -1
- package/dist/spawn/spawn-decision.d.ts.map +1 -1
- package/dist/spawn/spawn-decision.js +16 -14
- package/dist/spawn/spawn-decision.js.map +1 -1
- package/dist/spawn/worktree-session.d.ts.map +1 -1
- package/dist/spawn/worktree-session.js +13 -11
- package/dist/spawn/worktree-session.js.map +1 -1
- package/dist/spawn-cooldown.d.ts +0 -7
- package/dist/spawn-cooldown.d.ts.map +1 -1
- package/dist/spawn-cooldown.js +3 -1
- package/dist/spawn-cooldown.js.map +1 -1
- package/dist/spawn-environment.d.ts.map +1 -1
- package/dist/spawn-environment.js +4 -1
- package/dist/spawn-environment.js.map +1 -1
- package/dist/spawner/helpers.d.ts.map +1 -1
- package/dist/spawner/helpers.js +19 -17
- package/dist/spawner/helpers.js.map +1 -1
- package/dist/spawner/lifecycle.d.ts.map +1 -1
- package/dist/spawner/lifecycle.js +17 -13
- package/dist/spawner/lifecycle.js.map +1 -1
- package/dist/spawner/liveness.d.ts.map +1 -1
- package/dist/spawner/liveness.js +7 -5
- package/dist/spawner/liveness.js.map +1 -1
- package/dist/spawner/resolution.d.ts.map +1 -1
- package/dist/spawner/resolution.js +7 -5
- package/dist/spawner/resolution.js.map +1 -1
- package/dist/spawner/stream-handlers.d.ts +6 -55
- package/dist/spawner/stream-handlers.d.ts.map +1 -1
- package/dist/spawner/stream-handlers.js +10 -172
- package/dist/spawner/stream-handlers.js.map +1 -1
- package/dist/spawner/timeout.d.ts.map +1 -1
- package/dist/spawner/timeout.js +11 -9
- package/dist/spawner/timeout.js.map +1 -1
- package/dist/staleness.d.ts.map +1 -1
- package/dist/staleness.js +4 -1
- package/dist/staleness.js.map +1 -1
- package/dist/stall-detector-config.d.ts +6 -17
- package/dist/stall-detector-config.d.ts.map +1 -1
- package/dist/stall-detector-config.js +10 -36
- package/dist/stall-detector-config.js.map +1 -1
- package/dist/stall-detectors.d.ts.map +1 -1
- package/dist/stall-detectors.js +6 -4
- package/dist/stall-detectors.js.map +1 -1
- package/dist/state-cascade.d.ts.map +1 -1
- package/dist/state-cascade.js +9 -7
- package/dist/state-cascade.js.map +1 -1
- package/dist/stop-request.d.ts.map +1 -1
- package/dist/stop-request.js +6 -2
- package/dist/stop-request.js.map +1 -1
- package/dist/supabase.d.ts.map +1 -1
- package/dist/supabase.js +3 -1
- package/dist/supabase.js.map +1 -1
- package/dist/telemetry-writer.d.ts.map +1 -1
- package/dist/telemetry-writer.js +11 -9
- package/dist/telemetry-writer.js.map +1 -1
- package/dist/trigger-executor.d.ts.map +1 -1
- package/dist/trigger-executor.js +28 -26
- package/dist/trigger-executor.js.map +1 -1
- package/dist/unified-engine-lifecycle.d.ts +19 -11
- package/dist/unified-engine-lifecycle.d.ts.map +1 -1
- package/dist/unified-engine-lifecycle.js +71 -70
- package/dist/unified-engine-lifecycle.js.map +1 -1
- package/dist/unified-init.d.ts.map +1 -1
- package/dist/unified-init.js +41 -36
- package/dist/unified-init.js.map +1 -1
- package/dist/unified-shell-config.d.ts +8 -1
- package/dist/unified-shell-config.d.ts.map +1 -1
- package/dist/unified-shell-config.js +57 -34
- package/dist/unified-shell-config.js.map +1 -1
- package/dist/unified-shell-status.d.ts.map +1 -1
- package/dist/unified-shell-status.js +39 -37
- package/dist/unified-shell-status.js.map +1 -1
- package/dist/unified-shell.d.ts.map +1 -1
- package/dist/unified-shell.js +37 -41
- package/dist/unified-shell.js.map +1 -1
- package/dist/verification-baseline.d.ts.map +1 -1
- package/dist/verification-baseline.js +7 -4
- package/dist/verification-baseline.js.map +1 -1
- package/dist/verification-config.d.ts +3 -3
- package/dist/verification-config.d.ts.map +1 -1
- package/dist/verification-config.js +8 -19
- package/dist/verification-config.js.map +1 -1
- package/dist/verification-default-on.d.ts +6 -6
- package/dist/verification-default-on.d.ts.map +1 -1
- package/dist/verification-default-on.js +9 -7
- package/dist/verification-default-on.js.map +1 -1
- package/dist/verification-deterministic.d.ts.map +1 -1
- package/dist/verification-deterministic.js +6 -3
- package/dist/verification-deterministic.js.map +1 -1
- package/dist/verification-engine.d.ts.map +1 -1
- package/dist/verification-engine.js +20 -16
- package/dist/verification-engine.js.map +1 -1
- package/dist/verification-feedback.d.ts.map +1 -1
- package/dist/verification-feedback.js +4 -2
- package/dist/verification-feedback.js.map +1 -1
- package/dist/version-check.d.ts.map +1 -1
- package/dist/version-check.js +5 -3
- package/dist/version-check.js.map +1 -1
- package/dist/worker-pidfile.d.ts.map +1 -1
- package/dist/worker-pidfile.js +8 -3
- package/dist/worker-pidfile.js.map +1 -1
- package/dist/worktree/focus.d.ts.map +1 -1
- package/dist/worktree/focus.js +15 -13
- package/dist/worktree/focus.js.map +1 -1
- package/dist/worktree/safety.d.ts.map +1 -1
- package/dist/worktree/safety.js +13 -11
- package/dist/worktree/safety.js.map +1 -1
- package/dist/worktree.d.ts.map +1 -1
- package/dist/worktree.js +41 -39
- package/dist/worktree.js.map +1 -1
- package/package.json +3 -3
|
@@ -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":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge-phase.d.ts","sourceRoot":"","sources":["../../src/completion/merge-phase.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAEhE,OAAO,EAAE,gBAAgB,EAAyB,MAAM,mBAAmB,CAAC;AAI5E,OAAO,EAAE,wBAAwB,EAAc,MAAM,WAAW,CAAC;AACjE,OAAO,EAAsB,KAAK,cAAc,EAAoB,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"merge-phase.d.ts","sourceRoot":"","sources":["../../src/completion/merge-phase.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AAEhE,OAAO,EAAE,gBAAgB,EAAyB,MAAM,mBAAmB,CAAC;AAI5E,OAAO,EAAE,wBAAwB,EAAc,MAAM,WAAW,CAAC;AACjE,OAAO,EAAsB,KAAK,cAAc,EAAoB,MAAM,iBAAiB,CAAC;AAQ5F;;;;;;;;;;;;;;;;;GAiBG;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;CAC3C;AAED,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,OAAO,CAAC;IACxB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,iBAAiB,CACrC,MAAM,EAAE,YAAY,EACpB,SAAS,EAAE,cAAc,EACzB,SAAS,EAAE,MAAM,EACjB,iBAAiB,EAAE,MAAM,EAAE,EAC3B,IAAI,GAAE,qBAGL,GACA,OAAO,CAAC,uBAAuB,CAAC,CAqBlC;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;;;;;;;;;;;;;GAaG;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;CAC7B,EAAE,IAAI,GAAE;IAAE,WAAW,CAAC,EAAE,cAAc,CAAA;CAAO,GAAG,OAAO,CAAC,MAAM,CAAC,CAkG/D"}
|
|
@@ -14,6 +14,8 @@ import { resolveCiDecision } from '../pipeline-config.js';
|
|
|
14
14
|
import { fileCdPushEscalation, shouldFileCdPushEscalation } from '../ci-escalation.js';
|
|
15
15
|
import { branchHasUnmergedCommits, runGitSync } from '../git.js';
|
|
16
16
|
import { resolveCiMergeGate } from '../ci-status.js';
|
|
17
|
+
import { createLogger } from '../log.js';
|
|
18
|
+
const log = createLogger({ module: '${ciLabel}' });
|
|
17
19
|
// ── Merge gate ───────────────────────────────────────────────────────
|
|
18
20
|
/**
|
|
19
21
|
* Decide whether to attempt mergeFocusBranch on team exit.
|
|
@@ -118,7 +120,7 @@ export function escalateFailedMergeDeliveries(params) {
|
|
|
118
120
|
branchName: teamState.branchName,
|
|
119
121
|
integrationBranch: config.integrationBranch,
|
|
120
122
|
mergeError: mergeExitReason ?? 'unknown',
|
|
121
|
-
}).catch(err =>
|
|
123
|
+
}).catch(err => log.warn(`[focus-executor] escalateMergeConflict failed for ${deliveryId}:`, err.message));
|
|
122
124
|
}
|
|
123
125
|
}
|
|
124
126
|
}
|
|
@@ -142,7 +144,7 @@ export async function runCiMergeToMain(params, deps = {}) {
|
|
|
142
144
|
const focusName = teamState.focusName;
|
|
143
145
|
const ciDecision = resolveCiDecision(teamState.pipelineConfig);
|
|
144
146
|
if (!ciDecision.shouldMerge) {
|
|
145
|
-
|
|
147
|
+
log.info(`[CI] Skipping integration→main merge for focus ${teamState.focusId} ("${focusName}"): ci.enabled=false`);
|
|
146
148
|
return ' CI skipped (ci.enabled=false).';
|
|
147
149
|
}
|
|
148
150
|
const { pushToRemote, mergeStrategy } = ciDecision;
|
|
@@ -160,7 +162,7 @@ export async function runCiMergeToMain(params, deps = {}) {
|
|
|
160
162
|
mergedSha = runGitSync(['rev-parse', config.integrationBranch], config.repoPath).output?.trim() ?? '';
|
|
161
163
|
}
|
|
162
164
|
catch (err) {
|
|
163
|
-
|
|
165
|
+
log.warn(`Could not resolve integration tip SHA for the CI gate: ${err.message}`);
|
|
164
166
|
}
|
|
165
167
|
if (mergedSha) {
|
|
166
168
|
let status = 'unknown';
|
|
@@ -168,17 +170,17 @@ export async function runCiMergeToMain(params, deps = {}) {
|
|
|
168
170
|
status = await deps.getCiStatus({ sha: mergedSha, integrationBranch: config.integrationBranch, config });
|
|
169
171
|
}
|
|
170
172
|
catch (err) {
|
|
171
|
-
|
|
173
|
+
log.warn(`CI status read failed for ${mergedSha.slice(0, 12)}: ${err.message}`);
|
|
172
174
|
}
|
|
173
175
|
const gate = resolveCiMergeGate(status);
|
|
174
176
|
if (!gate.proceed) {
|
|
175
|
-
|
|
177
|
+
log.info(`Holding integration→main for "${focusName}": ${gate.reason} (sha ${mergedSha.slice(0, 12)}).`);
|
|
176
178
|
return ` ${ciLabel} held: ${gate.reason}.`;
|
|
177
179
|
}
|
|
178
|
-
|
|
180
|
+
log.info(`CI gate passed for "${focusName}": ${gate.reason} (sha ${mergedSha.slice(0, 12)}).`);
|
|
179
181
|
}
|
|
180
182
|
}
|
|
181
|
-
|
|
183
|
+
log.info(`Merging integration to main for "${focusName}" (strategy=${mergeStrategy})${pushToRemote ? ' (will push to remote)' : ''}`);
|
|
182
184
|
try {
|
|
183
185
|
const ciResult = await mergeIntegrationToMain({
|
|
184
186
|
config,
|
|
@@ -189,10 +191,10 @@ export async function runCiMergeToMain(params, deps = {}) {
|
|
|
189
191
|
});
|
|
190
192
|
if (ciResult.success) {
|
|
191
193
|
if (ciResult.pushedTo) {
|
|
192
|
-
|
|
194
|
+
log.info(`[${ciLabel}] Pushed main to ${ciResult.pushedTo.name} (${ciResult.pushedTo.url}) for focus ${teamState.focusId} ("${focusName}")`);
|
|
193
195
|
}
|
|
194
196
|
else {
|
|
195
|
-
|
|
197
|
+
log.info(`Successfully merged integration to main for focus ${teamState.focusId} ("${focusName}")`);
|
|
196
198
|
}
|
|
197
199
|
// Report merged_to_main / pushed_to_remote for every delivery on
|
|
198
200
|
// integration. That's mid-flight-merged deliveries plus, if this
|
|
@@ -206,11 +208,11 @@ export async function runCiMergeToMain(params, deps = {}) {
|
|
|
206
208
|
}
|
|
207
209
|
const newState = ciResult.pushedTo ? 'pushed_to_remote' : 'merged_to_main';
|
|
208
210
|
for (const deliveryId of onIntegration) {
|
|
209
|
-
reportGitState(deliveryId, newState).catch(err =>
|
|
211
|
+
reportGitState(deliveryId, newState).catch(err => log.warn(`reportGitState ${newState} failed for ${deliveryId}:`, err.message));
|
|
210
212
|
}
|
|
211
213
|
return ` ${ciLabel}: merged to main${ciResult.pushedTo ? ' and pushed to remote' : ''}.`;
|
|
212
214
|
}
|
|
213
|
-
|
|
215
|
+
log.error(`Failed to merge integration to main for "${focusName}": ${ciResult.error}`);
|
|
214
216
|
if (shouldFileCdPushEscalation(pushToRemote, ciResult)) {
|
|
215
217
|
await fileCdPushEscalation({
|
|
216
218
|
organizationId: teamState.organizationId,
|
|
@@ -224,7 +226,7 @@ export async function runCiMergeToMain(params, deps = {}) {
|
|
|
224
226
|
return ` ${ciLabel} failed: ${ciResult.error}`;
|
|
225
227
|
}
|
|
226
228
|
catch (err) {
|
|
227
|
-
|
|
229
|
+
log.error(`Error merging integration to main for "${focusName}":`, err.message);
|
|
228
230
|
return ` ${ciLabel} error: ${err.message}`;
|
|
229
231
|
}
|
|
230
232
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"merge-phase.js","sourceRoot":"","sources":["../../src/completion/merge-phase.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,qBAAqB,EAAE,MAAM,mBAAmB,CAAC;AAC5E,OAAO,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAC;AACzD,OAAO,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,MAAM,qBAAqB,CAAC;AACvF,OAAO,EAAE,wBAAwB,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AACjE,OAAO,EAAE,kBAAkB,EAAyC,MAAM,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"merge-phase.js","sourceRoot":"","sources":["../../src/completion/merge-phase.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"read-only-pristine.d.ts","sourceRoot":"","sources":["../../src/completion/read-only-pristine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,MAAM,gBAAgB,CAAC;AAEhF,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"read-only-pristine.d.ts","sourceRoot":"","sources":["../../src/completion/read-only-pristine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,MAAM,gBAAgB,CAAC;AAEhF,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AAMrE;;;;;;;;GAQG;AACH,eAAO,MAAM,kCAAkC,mBAAmC,CAAC;AAEnF;;;;GAIG;AACH,MAAM,WAAW,0BAA0B;IACzC,6BAA6B,CAAC,EAAE,OAAO,6BAA6B,CAAC;IACrE,gBAAgB,CAAC,EAAE,OAAO,gBAAgB,CAAC;IAC3C,4BAA4B,CAAC,EAAE,OAAO,4BAA4B,CAAC;CACpE;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,8BAA8B,CAClD,MAAM,EAAE;IACN,YAAY,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IACxC,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB,EACD,IAAI,GAAE,0BAA+B,GACpC,OAAO,CAAC;IAAE,QAAQ,EAAE,OAAO,CAAA;CAAE,CAAC,CA0DhC"}
|
|
@@ -18,6 +18,8 @@
|
|
|
18
18
|
import { createEscalation, hasOpenEscalationForDelivery } from '../supabase.js';
|
|
19
19
|
import { withRetry, ESCALATION_REASONS, ESCALATION_DISPOSITIONS, ESCALATION_KINDS } from '@telora/daemon-core';
|
|
20
20
|
import { worktreeHasUncommittedChanges } from '../worktree/index.js';
|
|
21
|
+
import { createLogger } from '../log.js';
|
|
22
|
+
const log = createLogger({ module: 'focus-executor' });
|
|
21
23
|
/**
|
|
22
24
|
* escalation_kind discriminator for the read-only-pristine violation.
|
|
23
25
|
*
|
|
@@ -48,7 +50,7 @@ export async function assertReadOnlyWorktreePristine(params, deps = {}) {
|
|
|
48
50
|
if (!worktreePath || !hasUncommitted(worktreePath)) {
|
|
49
51
|
return { pristine: true };
|
|
50
52
|
}
|
|
51
|
-
|
|
53
|
+
log.warn(`[focus-executor] READ-ONLY PRISTINE VIOLATION: audit "${focusName}" left uncommitted changes in ${worktreePath}.`);
|
|
52
54
|
// Durable dedup: skip filing if an open escalation already exists for this
|
|
53
55
|
// delivery. Fail open -- a lookup error proceeds to file.
|
|
54
56
|
let alreadyOpen = false;
|
|
@@ -56,7 +58,7 @@ export async function assertReadOnlyWorktreePristine(params, deps = {}) {
|
|
|
56
58
|
alreadyOpen = await hasOpenEsc(deliveryId, READ_ONLY_PRISTINE_ESCALATION_KIND);
|
|
57
59
|
}
|
|
58
60
|
catch (err) {
|
|
59
|
-
|
|
61
|
+
log.warn(`[focus-executor] Open read-only-pristine escalation lookup failed for "${focusName}", proceeding to file: ${err.message}`);
|
|
60
62
|
}
|
|
61
63
|
if (alreadyOpen) {
|
|
62
64
|
return { pristine: false };
|
|
@@ -77,10 +79,10 @@ export async function assertReadOnlyWorktreePristine(params, deps = {}) {
|
|
|
77
79
|
whatWasTried: 'On read-only team exit the daemon ran `git status --porcelain` and found uncommitted changes in the focus worktree, which a read-only audit must never produce.',
|
|
78
80
|
helpNeeded: `Inspect the audit session for "${focusName}"; the worktree at ${worktreePath} has been reverted. No merge was performed.`,
|
|
79
81
|
}), { maxAttempts: 3, label: 'escalation-read-only-pristine' });
|
|
80
|
-
|
|
82
|
+
log.info(`Filed read-only-pristine escalation for "${focusName}"`);
|
|
81
83
|
}
|
|
82
84
|
catch (err) {
|
|
83
|
-
|
|
85
|
+
log.error(`[focus-executor] Failed to file read-only-pristine escalation for "${focusName}": ${err.message}`);
|
|
84
86
|
}
|
|
85
87
|
return { pristine: false };
|
|
86
88
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"read-only-pristine.js","sourceRoot":"","sources":["../../src/completion/read-only-pristine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC/G,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"read-only-pristine.js","sourceRoot":"","sources":["../../src/completion/read-only-pristine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,gBAAgB,EAAE,4BAA4B,EAAE,MAAM,gBAAgB,CAAC;AAChF,OAAO,EAAE,SAAS,EAAE,kBAAkB,EAAE,uBAAuB,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAC/G,OAAO,EAAE,6BAA6B,EAAE,MAAM,sBAAsB,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAEzC,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC,CAAC;AAGvD;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,kCAAkC,GAAG,gBAAgB,CAAC,eAAe,CAAC;AAanF;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,MAQC,EACD,OAAmC,EAAE;IAErC,MAAM,cAAc,GAAG,IAAI,CAAC,6BAA6B,IAAI,6BAA6B,CAAC;IAC3F,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,IAAI,gBAAgB,CAAC;IAC5D,MAAM,UAAU,GAAG,IAAI,CAAC,4BAA4B,IAAI,4BAA4B,CAAC;IAErF,MAAM,EAAE,YAAY,EAAE,cAAc,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,GAAG,MAAM,CAAC;IAEvG,IAAI,CAAC,YAAY,IAAI,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC;QACnD,OAAO,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC5B,CAAC;IAED,GAAG,CAAC,IAAI,CACN,yDAAyD,SAAS,iCAAiC,YAAY,GAAG,CACnH,CAAC;IAEF,2EAA2E;IAC3E,0DAA0D;IAC1D,IAAI,WAAW,GAAG,KAAK,CAAC;IACxB,IAAI,CAAC;QACH,WAAW,GAAG,MAAM,UAAU,CAAC,UAAU,EAAE,kCAAkC,CAAC,CAAC;IACjF,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CACN,0EAA0E,SAAS,0BAA2B,GAAa,CAAC,OAAO,EAAE,CACtI,CAAC;IACJ,CAAC;IACD,IAAI,WAAW,EAAE,CAAC;QAChB,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;IAC7B,CAAC;IAED,IAAI,CAAC;QACH,MAAM,SAAS,CACb,GAAG,EAAE,CAAC,SAAS,CAAC;YACd,cAAc;YACd,SAAS,EAAE,SAAS,IAAI,EAAE;YAC1B,OAAO,EAAE,IAAI;YACb,UAAU,EAAE,kBAAkB,CAAC,iBAAiB;YAChD,WAAW,EAAE,uBAAuB,CAAC,cAAc;YACnD,cAAc,EAAE,kCAAkC;YAClD,MAAM,EAAE,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE;YACnD,WAAW,EACT,oBAAoB,SAAS,iDAAiD;gBAC9E,sEAAsE;gBACtE,sEAAsE;gBACtE,gEAAgE;YAClE,YAAY,EACV,iKAAiK;YACnK,UAAU,EAAE,kCAAkC,SAAS,sBAAsB,YAAY,6CAA6C;SACvI,CAAC,EACF,EAAE,WAAW,EAAE,CAAC,EAAE,KAAK,EAAE,+BAA+B,EAAE,CAC3D,CAAC;QACF,GAAG,CAAC,IAAI,CAAC,4CAA4C,SAAS,GAAG,CAAC,CAAC;IACrE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,KAAK,CACP,sEAAsE,SAAS,MAAO,GAAa,CAAC,OAAO,EAAE,CAC9G,CAAC;IACJ,CAAC;IAED,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AAC7B,CAAC"}
|
|
@@ -15,6 +15,7 @@ import { emitLoopTrigger } from '../loops/index.js';
|
|
|
15
15
|
import { getFocusDeliveries, getFocusIssues, clearReviewRequestedAt, setReviewedThroughSha, setReviewCycleCount, getFocusReviewReportForSession } from '../queries/focuses.js';
|
|
16
16
|
import { resolveReviewCycleCap } from '../stall-detector-config.js';
|
|
17
17
|
import { createEscalation, hasOpenFocusEscalation } from '../queries/issues.js';
|
|
18
|
+
import { listOpenShortfallProposalIds } from '../queries/reality-tree.js';
|
|
18
19
|
/**
|
|
19
20
|
* Dependencies for runReviewExitHandler. Defaults to real implementations;
|
|
20
21
|
* overridable in tests via the optional `deps` argument.
|
|
@@ -32,6 +33,7 @@ export interface ReviewExitDeps {
|
|
|
32
33
|
setReviewCycleCount?: typeof setReviewCycleCount;
|
|
33
34
|
resolveReviewCycleCap?: typeof resolveReviewCycleCap;
|
|
34
35
|
hasOpenFocusEscalation?: typeof hasOpenFocusEscalation;
|
|
36
|
+
listOpenShortfallProposalIds?: typeof listOpenShortfallProposalIds;
|
|
35
37
|
hasPendingSpawnDirective: typeof hasPendingSpawnDirective;
|
|
36
38
|
emitLoopTrigger: typeof emitLoopTrigger;
|
|
37
39
|
getFocusReviewReportForSession: typeof getFocusReviewReportForSession;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"review-exit-phase.d.ts","sourceRoot":"","sources":["../../src/completion/review-exit-phase.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,oBAAoB,EACpB,wBAAwB,EACxB,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAI3E,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,sBAAsB,EACtB,qBAAqB,EACrB,mBAAmB,EACnB,8BAA8B,EAC/B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"review-exit-phase.d.ts","sourceRoot":"","sources":["../../src/completion/review-exit-phase.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EACL,iBAAiB,EACjB,sBAAsB,EACtB,oBAAoB,EACpB,wBAAwB,EACxB,gBAAgB,EACjB,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,wBAAwB,EAAE,MAAM,iCAAiC,CAAC;AAI3E,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAC;AACpD,OAAO,EACL,kBAAkB,EAClB,cAAc,EACd,sBAAsB,EACtB,qBAAqB,EACrB,mBAAmB,EACnB,8BAA8B,EAC/B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,qBAAqB,EAAE,MAAM,6BAA6B,CAAC;AACpE,OAAO,EAAE,gBAAgB,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAChF,OAAO,EAAE,4BAA4B,EAAE,MAAM,4BAA4B,CAAC;AAgB1E;;;GAGG;AACH,MAAM,WAAW,cAAc;IAC7B,gBAAgB,EAAE,OAAO,gBAAgB,CAAC;IAC1C,kBAAkB,EAAE,OAAO,kBAAkB,CAAC;IAC9C,cAAc,EAAE,OAAO,cAAc,CAAC;IACtC,iBAAiB,EAAE,OAAO,iBAAiB,CAAC;IAC5C,sBAAsB,EAAE,OAAO,sBAAsB,CAAC;IACtD,oBAAoB,EAAE,OAAO,oBAAoB,CAAC;IAClD,wBAAwB,EAAE,OAAO,wBAAwB,CAAC;IAC1D,sBAAsB,EAAE,OAAO,sBAAsB,CAAC;IACtD,qBAAqB,EAAE,OAAO,qBAAqB,CAAC;IAGpD,mBAAmB,CAAC,EAAE,OAAO,mBAAmB,CAAC;IACjD,qBAAqB,CAAC,EAAE,OAAO,qBAAqB,CAAC;IAGrD,sBAAsB,CAAC,EAAE,OAAO,sBAAsB,CAAC;IAKvD,4BAA4B,CAAC,EAAE,OAAO,4BAA4B,CAAC;IACnE,wBAAwB,EAAE,OAAO,wBAAwB,CAAC;IAC1D,eAAe,EAAE,OAAO,eAAe,CAAC;IACxC,8BAA8B,EAAE,OAAO,8BAA8B,CAAC;IACtE,gBAAgB,EAAE,OAAO,gBAAgB,CAAC;CAC3C;AAsBD,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,QAAQ,GAAG,QAAQ,CAAC;IACjC,SAAS,EAAE,OAAO,CAAC;IACnB;;;;;;;;OAQG;IACH,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B;;;;;;OAMG;IACH,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC;AAmBD,4DAA4D;AAC5D,wBAAgB,iCAAiC,IAAI,IAAI,CAGxD;AAED,gGAAgG;AAChG,wBAAgB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAMnE;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAsB,oBAAoB,CACxC,MAAM,EAAE,gBAAgB,EACxB,IAAI,GAAE,cAAsC,GAC3C,OAAO,CAAC,IAAI,CAAC,CA2hBf"}
|
|
@@ -18,7 +18,11 @@ import { emitLoopTrigger } from '../loops/index.js';
|
|
|
18
18
|
import { getFocusDeliveries, getFocusIssues, clearReviewRequestedAt, setReviewedThroughSha, setReviewCycleCount, getFocusReviewReportForSession, } from '../queries/focuses.js';
|
|
19
19
|
import { resolveReviewCycleCap } from '../stall-detector-config.js';
|
|
20
20
|
import { createEscalation, hasOpenFocusEscalation } from '../queries/issues.js';
|
|
21
|
+
import { listOpenShortfallProposalIds } from '../queries/reality-tree.js';
|
|
22
|
+
import { resolveShortfallHold, writeShortfallGateState, describeShortfallHold, } from './review-exit-shortfall.js';
|
|
21
23
|
import { reviewFiledIssueExists, blockingReviewFiledIssueExists, filterDeferrableReviewNotes, } from '../review-defect-detector.js';
|
|
24
|
+
import { createLogger } from '../log.js';
|
|
25
|
+
const log = createLogger({ module: 'focus-executor' });
|
|
22
26
|
const defaultReviewExitDeps = {
|
|
23
27
|
getActiveFocuses,
|
|
24
28
|
getFocusDeliveries,
|
|
@@ -32,6 +36,7 @@ const defaultReviewExitDeps = {
|
|
|
32
36
|
setReviewCycleCount,
|
|
33
37
|
resolveReviewCycleCap,
|
|
34
38
|
hasOpenFocusEscalation,
|
|
39
|
+
listOpenShortfallProposalIds,
|
|
35
40
|
hasPendingSpawnDirective,
|
|
36
41
|
emitLoopTrigger,
|
|
37
42
|
getFocusReviewReportForSession,
|
|
@@ -112,6 +117,18 @@ export async function runReviewExitHandler(params, deps = defaultReviewExitDeps)
|
|
|
112
117
|
// commits landed on the focus branch during the review pass). A lost carry
|
|
113
118
|
// (reviewSpawnTip null) can never be coverage-complete -- withhold auto-approve.
|
|
114
119
|
const coverageComplete = reviewSpawnTip != null && currentBranchTip != null && reviewSpawnTip === currentBranchTip;
|
|
120
|
+
// Open shortfall drift proposals for the focus. A shortfall means the tree
|
|
121
|
+
// claimed X and the work delivered less than X; until one is disposed, NO
|
|
122
|
+
// delivery on this focus may converge to done.
|
|
123
|
+
//
|
|
124
|
+
// Read ONCE per focus, before the delivery loop, exactly like coverageComplete
|
|
125
|
+
// -- the question is focus-scoped, not per-delivery. And deliberately OUTSIDE
|
|
126
|
+
// the reconciler: it is not an input resolveReconciledWrite models, so feeding
|
|
127
|
+
// it one would emit spurious [reconciler-divergence] logs. It gates the write
|
|
128
|
+
// DOWNSTREAM of `target`, where coverageComplete also sits.
|
|
129
|
+
const shortfall = await resolveShortfallHold(deps, focusId, focusName);
|
|
130
|
+
const shortfallsClear = shortfall.clear;
|
|
131
|
+
let shortfallHold = false;
|
|
115
132
|
const focuses = await deps.getActiveFocuses(organizationId, productId);
|
|
116
133
|
const current = focuses.find(s => s.focus_id === focusId);
|
|
117
134
|
if (!current?.review_requested_at) {
|
|
@@ -140,7 +157,7 @@ export async function runReviewExitHandler(params, deps = defaultReviewExitDeps)
|
|
|
140
157
|
reviewOutcome = report.outcome;
|
|
141
158
|
}
|
|
142
159
|
catch (err) {
|
|
143
|
-
|
|
160
|
+
log.warn(`[focus-executor] getFocusReviewReportForSession failed for "${focusName}" session ${sessionId}: ${err.message}`);
|
|
144
161
|
// Treat read failure the same as missing.
|
|
145
162
|
}
|
|
146
163
|
let hasIssueEvidence = false;
|
|
@@ -161,7 +178,7 @@ export async function runReviewExitHandler(params, deps = defaultReviewExitDeps)
|
|
|
161
178
|
deferrableIssueIds = new Set(filterDeferrableReviewNotes(focusIssues, reviewRequestedAt).map(i => i.id));
|
|
162
179
|
}
|
|
163
180
|
catch (err) {
|
|
164
|
-
|
|
181
|
+
log.warn(`[focus-executor] getFocusIssues failed for "${focusName}": ${err.message}`);
|
|
165
182
|
// Treat read failure as no evidence -- only affects the warn-and-leave
|
|
166
183
|
// message and the issue-evidence notice; routing runs regardless (with
|
|
167
184
|
// every open issue treated as blocking, i.e. the pre-deferrability default).
|
|
@@ -241,18 +258,45 @@ export async function runReviewExitHandler(params, deps = defaultReviewExitDeps)
|
|
|
241
258
|
const target = decision.target;
|
|
242
259
|
if (target === DELIVERY_STATUS.VERIFY_FAILED) {
|
|
243
260
|
const awaitingVerifyStage = dWorkflow.stages.find(s => s.name === 'verify_failed');
|
|
244
|
-
|
|
261
|
+
// gateState null: the delivery is routing, so any prior shortfall hold
|
|
262
|
+
// banner must not survive into verify_failed. If the shortfall is still
|
|
263
|
+
// open, the next hold re-writes it.
|
|
264
|
+
await deps.updateDeliveryStatus(d.id, 'verify_failed', awaitingVerifyStage?.id ?? null, null, undefined, { organizationId, fromStatus: 'verify' });
|
|
245
265
|
const failReason = blockingOpenWork.length > 0
|
|
246
266
|
? `${blockingOpenWork.length} blocking open issue(s) (of ${openWork.length} open)`
|
|
247
267
|
: 'review verdict gaps_found with no blocking issue filed (routing inconsistency)';
|
|
248
|
-
|
|
268
|
+
log.info(`Delivery "${d.name}" moved from verify to verify_failed: ${failReason}`);
|
|
249
269
|
routedAny = true;
|
|
250
270
|
}
|
|
251
271
|
else if (target === DELIVERY_STATUS.DONE && reportExists) {
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
272
|
+
// Review stamped a verdict. product-api already refuses an `approved`
|
|
273
|
+
// stamp over an undisposed shortfall -- but a shortfall can be emitted
|
|
274
|
+
// by verify writeback AFTER the stamp and before this handler runs, and
|
|
275
|
+
// that race is invisible to the edge gate. Re-check here, at the single
|
|
276
|
+
// point where the delivery actually moves to done.
|
|
277
|
+
if (!shortfallsClear) {
|
|
278
|
+
shortfallHold = true;
|
|
279
|
+
await writeShortfallGateState(deps, d.id, shortfall.ids);
|
|
280
|
+
log.info(`[focus-executor] Delivery "${d.name}" NOT moved to done despite a passing review -- ` +
|
|
281
|
+
`${describeShortfallHold(shortfall)}. Left in verify.`);
|
|
282
|
+
}
|
|
283
|
+
else {
|
|
284
|
+
const doneStage = dWorkflow.stages.find(s => s.name === 'done');
|
|
285
|
+
// gateState null: clear any prior hold banner on the way to done.
|
|
286
|
+
await deps.updateDeliveryStatus(d.id, 'done', doneStage?.id ?? null, null, undefined, { organizationId, fromStatus: 'verify' });
|
|
287
|
+
log.info(`Delivery "${d.name}" moved from verify to done (review passed)`);
|
|
288
|
+
routedAny = true;
|
|
289
|
+
}
|
|
290
|
+
}
|
|
291
|
+
else if (target === DELIVERY_STATUS.DONE && !shortfallsClear) {
|
|
292
|
+
// Silent clean-exit auto-approve, but the focus carries an undisposed
|
|
293
|
+
// shortfall. Silence cannot approve over a contradiction nobody
|
|
294
|
+
// adjudicated: that is precisely the bar-lowering this gate exists to
|
|
295
|
+
// stop. Left in verify; the disposition pass is armed after the loop.
|
|
296
|
+
shortfallHold = true;
|
|
297
|
+
await writeShortfallGateState(deps, d.id, shortfall.ids);
|
|
298
|
+
log.info(`[focus-executor] Delivery "${d.name}" NOT auto-approved -- ` +
|
|
299
|
+
`${describeShortfallHold(shortfall)}. Left in verify pending disposition.`);
|
|
256
300
|
}
|
|
257
301
|
else if (target === DELIVERY_STATUS.DONE) {
|
|
258
302
|
// Clean review session (no defects filed, no focus_reviews row). Silence
|
|
@@ -267,13 +311,13 @@ export async function runReviewExitHandler(params, deps = defaultReviewExitDeps)
|
|
|
267
311
|
if (coverageComplete) {
|
|
268
312
|
const doneStage = dWorkflow.stages.find(s => s.name === 'done');
|
|
269
313
|
await deps.markDeliveryAutoApproved(d.id, sessionId, doneStage?.id ?? null, { organizationId, fromStatus: DELIVERY_STATUS.VERIFY });
|
|
270
|
-
|
|
314
|
+
log.info(`[focus-executor] Delivery "${d.name}" auto-approved verify -> done ` +
|
|
271
315
|
`(clean review, full coverage @ ${(reviewSpawnTip ?? '').slice(0, 12)}, no defects filed)`);
|
|
272
316
|
routedAny = true;
|
|
273
317
|
}
|
|
274
318
|
else {
|
|
275
319
|
belowCoverageHold = true;
|
|
276
|
-
|
|
320
|
+
log.info(`[focus-executor] Delivery "${d.name}" NOT auto-approved -- below coverage: review covered ` +
|
|
277
321
|
`${(reviewSpawnTip ?? '<unknown>').slice(0, 12)} but branch tip is ${(currentBranchTip ?? '<unknown>').slice(0, 12)} ` +
|
|
278
322
|
`(drift during review). Left in verify; focus routed to a full-pass re-review.`);
|
|
279
323
|
}
|
|
@@ -285,12 +329,12 @@ export async function runReviewExitHandler(params, deps = defaultReviewExitDeps)
|
|
|
285
329
|
const reason = sessionType !== 'review'
|
|
286
330
|
? `${sessionType} session exited (not eligible for auto-approve)`
|
|
287
331
|
: 'review session did not succeed';
|
|
288
|
-
|
|
332
|
+
log.info(`[focus-executor] Delivery "${d.name}" left in verify: ${reason} ` +
|
|
289
333
|
`(verify-cycling; next auto-review poll will re-trigger).`);
|
|
290
334
|
}
|
|
291
335
|
}
|
|
292
336
|
catch (err) {
|
|
293
|
-
|
|
337
|
+
log.warn(`Failed to route delivery "${d.name}" after review: ${err.message}`);
|
|
294
338
|
}
|
|
295
339
|
}
|
|
296
340
|
// The routing inconsistency this focus exists to catch: the review stamped a
|
|
@@ -304,7 +348,7 @@ export async function runReviewExitHandler(params, deps = defaultReviewExitDeps)
|
|
|
304
348
|
const gapsWithoutIssue = reviewOutcome === 'gaps_found' && !anyBlockingOpenWork;
|
|
305
349
|
if (routedAny) {
|
|
306
350
|
await deps.clearReviewRequestedAt(focusId);
|
|
307
|
-
|
|
351
|
+
log.info(`[focus-executor] Review complete for "${focusName}" -- review_requested_at cleared ` +
|
|
308
352
|
`(reportExists=${reportExists}, issueEvidence=${hasIssueEvidence})`);
|
|
309
353
|
// Advance the review coverage watermark to what the review ACTUALLY covered
|
|
310
354
|
// (the carried spawn-tip, `coveredSha`) -- NOT the exit tip. A COMPLETED
|
|
@@ -317,15 +361,15 @@ export async function runReviewExitHandler(params, deps = defaultReviewExitDeps)
|
|
|
317
361
|
if (coveredSha) {
|
|
318
362
|
try {
|
|
319
363
|
await deps.setReviewedThroughSha(focusId, coveredSha);
|
|
320
|
-
|
|
364
|
+
log.info(`[focus-executor] Review coverage watermark for "${focusName}" advanced to ` +
|
|
321
365
|
`${coveredSha.slice(0, 12)} (covered by this review pass).`);
|
|
322
366
|
}
|
|
323
367
|
catch (err) {
|
|
324
|
-
|
|
368
|
+
log.warn(`[focus-executor] setReviewedThroughSha failed for "${focusName}": ${err.message}`);
|
|
325
369
|
}
|
|
326
370
|
}
|
|
327
371
|
else {
|
|
328
|
-
|
|
372
|
+
log.warn(`[focus-executor] Review routed for "${focusName}" but no covered SHA was ` +
|
|
329
373
|
`resolved -- coverage watermark left unchanged (successor will re-cover the full range).`);
|
|
330
374
|
}
|
|
331
375
|
// A routed completion means the drift streak (if any) is broken: either
|
|
@@ -349,7 +393,7 @@ export async function runReviewExitHandler(params, deps = defaultReviewExitDeps)
|
|
|
349
393
|
await deps.setReviewCycleCount(focusId, newCycleCount);
|
|
350
394
|
}
|
|
351
395
|
catch (err) {
|
|
352
|
-
|
|
396
|
+
log.warn(`[focus-executor] setReviewCycleCount failed for "${focusName}": ${err.message}`);
|
|
353
397
|
}
|
|
354
398
|
const reviewCycleCap = deps.resolveReviewCycleCap();
|
|
355
399
|
// Crossing condition: fires exactly once, when this increment takes the
|
|
@@ -372,11 +416,11 @@ export async function runReviewExitHandler(params, deps = defaultReviewExitDeps)
|
|
|
372
416
|
escalationKind: 'review_cycle_cap_exceeded',
|
|
373
417
|
metadata: { review_cycle_count: newCycleCount, cap: reviewCycleCap },
|
|
374
418
|
});
|
|
375
|
-
|
|
419
|
+
log.warn(`[focus-executor] review_cycle_cap_exceeded escalation filed for ` +
|
|
376
420
|
`"${focusName}" (cycles=${newCycleCount}, cap=${reviewCycleCap}).`);
|
|
377
421
|
}
|
|
378
422
|
catch (err) {
|
|
379
|
-
|
|
423
|
+
log.warn(`[focus-executor] createEscalation (review_cycle_cap) failed for "${focusName}": ${err.message}`);
|
|
380
424
|
}
|
|
381
425
|
}
|
|
382
426
|
}
|
|
@@ -401,9 +445,21 @@ export async function runReviewExitHandler(params, deps = defaultReviewExitDeps)
|
|
|
401
445
|
// a review team). Leave review_requested_at set so the incoming team's exit
|
|
402
446
|
// performs the routing. This is the ONLY case the pending-spawn signal
|
|
403
447
|
// gates -- it never blocks the finalization above.
|
|
404
|
-
|
|
448
|
+
log.info(`[focus-executor] "${focusName}" review exit routed nothing and a spawn directive ` +
|
|
405
449
|
`is pending -- leaving review_requested_at set for the incoming team.`);
|
|
406
450
|
}
|
|
451
|
+
else if (shortfallHold) {
|
|
452
|
+
// Nothing routed because the focus carries undisposed shortfalls. This is a
|
|
453
|
+
// DEMAND for disposition, not a wait: review_requested_at is left SET so the
|
|
454
|
+
// focus stays in the review window where the disposition pass and the stall
|
|
455
|
+
// detector can both see it.
|
|
456
|
+
//
|
|
457
|
+
// The bounded-attempt tail (a scoped disposition pass, then a
|
|
458
|
+
// shortfall_undisposed escalation) is the sibling issues' scope; this branch
|
|
459
|
+
// records the hold and leaves the window open for them.
|
|
460
|
+
log.info(`[focus-executor] "${focusName}" review exit held: ` +
|
|
461
|
+
`${describeShortfallHold(shortfall)}. review_requested_at left set; awaiting disposition.`);
|
|
462
|
+
}
|
|
407
463
|
else if (belowCoverageHold) {
|
|
408
464
|
// Pure drift: a clean review under-covered (spawn-tip != exit-tip) and no
|
|
409
465
|
// delivery routed. Record the coverage that DID happen (the review saw
|
|
@@ -415,7 +471,7 @@ export async function runReviewExitHandler(params, deps = defaultReviewExitDeps)
|
|
|
415
471
|
await deps.setReviewedThroughSha(focusId, coveredSha);
|
|
416
472
|
}
|
|
417
473
|
catch (err) {
|
|
418
|
-
|
|
474
|
+
log.warn(`setReviewedThroughSha (drift) failed for "${focusName}": ${err.message}`);
|
|
419
475
|
}
|
|
420
476
|
}
|
|
421
477
|
const streak = (belowCoverageDriftCounts.get(focusId) ?? 0) + 1;
|
|
@@ -428,7 +484,7 @@ export async function runReviewExitHandler(params, deps = defaultReviewExitDeps)
|
|
|
428
484
|
alreadyOpen = await deps.hasOpenFocusEscalation(focusId, 'review_coverage_incomplete');
|
|
429
485
|
}
|
|
430
486
|
catch (err) {
|
|
431
|
-
|
|
487
|
+
log.warn(`hasOpenFocusEscalation (coverage) failed for "${focusName}": ${err.message}`);
|
|
432
488
|
}
|
|
433
489
|
}
|
|
434
490
|
if (!alreadyOpen) {
|
|
@@ -448,10 +504,10 @@ export async function runReviewExitHandler(params, deps = defaultReviewExitDeps)
|
|
|
448
504
|
escalationKind: 'review_coverage_incomplete',
|
|
449
505
|
metadata: { covered_sha: coveredSha, current_tip: currentBranchTip ?? null, drift_streak: streak },
|
|
450
506
|
});
|
|
451
|
-
|
|
507
|
+
log.warn(`[focus-executor] review_coverage_incomplete escalation filed for "${focusName}" (drift streak ${streak}).`);
|
|
452
508
|
}
|
|
453
509
|
catch (err) {
|
|
454
|
-
|
|
510
|
+
log.warn(`createEscalation (coverage) failed for "${focusName}": ${err.message}`);
|
|
455
511
|
}
|
|
456
512
|
}
|
|
457
513
|
}
|
|
@@ -459,7 +515,7 @@ export async function runReviewExitHandler(params, deps = defaultReviewExitDeps)
|
|
|
459
515
|
// First drift: arm ONE full-pass re-review (prior incremental coverage
|
|
460
516
|
// cannot be trusted when the branch moved under the reviewer).
|
|
461
517
|
forceFullPassReviewFocuses.add(focusId);
|
|
462
|
-
|
|
518
|
+
log.info(`[focus-executor] "${focusName}" below coverage (drift streak 1) -- armed a full-pass re-review.`);
|
|
463
519
|
}
|
|
464
520
|
}
|
|
465
521
|
else if (!reportExists && !hasIssueEvidence) {
|
|
@@ -473,7 +529,7 @@ export async function runReviewExitHandler(params, deps = defaultReviewExitDeps)
|
|
|
473
529
|
: !succeeded
|
|
474
530
|
? 'review team did not succeed'
|
|
475
531
|
: 'no verify deliveries to route (clean review sessions auto-approve verify deliveries; this focus had none)';
|
|
476
|
-
|
|
532
|
+
log.warn(`[focus-executor] "${focusName}" has review_requested_at set but ${reason}; ` +
|
|
477
533
|
`phase remains 'reviewing' until a review team runs, work is queued, ` +
|
|
478
534
|
`or review_requested_at is cleared via MCP.`);
|
|
479
535
|
}
|
|
@@ -491,7 +547,7 @@ export async function runReviewExitHandler(params, deps = defaultReviewExitDeps)
|
|
|
491
547
|
alreadyOpen = await deps.hasOpenFocusEscalation(focusId, 'review_gaps_without_issue');
|
|
492
548
|
}
|
|
493
549
|
catch (err) {
|
|
494
|
-
|
|
550
|
+
log.warn(`hasOpenFocusEscalation (gaps-without-issue) failed for "${focusName}": ${err.message}`);
|
|
495
551
|
}
|
|
496
552
|
}
|
|
497
553
|
if (!alreadyOpen) {
|
|
@@ -513,11 +569,11 @@ export async function runReviewExitHandler(params, deps = defaultReviewExitDeps)
|
|
|
513
569
|
escalationKind: 'review_gaps_without_issue',
|
|
514
570
|
metadata: { session_id: sessionId, outcome: 'gaps_found', routed_via: 'gaps_without_issue' },
|
|
515
571
|
});
|
|
516
|
-
|
|
572
|
+
log.warn(`[focus-executor] review_gaps_without_issue escalation filed for "${focusName}" ` +
|
|
517
573
|
`(gaps_found verdict, no blocking issue).`);
|
|
518
574
|
}
|
|
519
575
|
catch (err) {
|
|
520
|
-
|
|
576
|
+
log.warn(`[focus-executor] createEscalation (gaps-without-issue) failed for "${focusName}": ${err.message}`);
|
|
521
577
|
}
|
|
522
578
|
}
|
|
523
579
|
}
|
|
@@ -545,7 +601,7 @@ export async function runReviewExitHandler(params, deps = defaultReviewExitDeps)
|
|
|
545
601
|
});
|
|
546
602
|
}
|
|
547
603
|
catch (err) {
|
|
548
|
-
|
|
604
|
+
log.warn(`[focus-executor] createEscalation (issue-evidence notice) failed for "${focusName}": ${err.message}`);
|
|
549
605
|
}
|
|
550
606
|
}
|
|
551
607
|
}
|