@telora/daemon 0.23.1 → 0.23.7
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 +6 -3
- package/dist/completion/review-exit/review-exit-deps.d.ts +2 -1
- package/dist/completion/review-exit/review-exit-deps.d.ts.map +1 -1
- package/dist/completion/review-exit/review-exit-phase.d.ts.map +1 -1
- package/dist/completion/review-exit/review-exit-phase.js +5 -4
- package/dist/completion/review-exit/review-exit-phase.js.map +1 -1
- package/dist/completion/review-exit-holds/review-exit-verdict-gate.d.ts +2 -1
- package/dist/completion/review-exit-holds/review-exit-verdict-gate.d.ts.map +1 -1
- package/dist/completion/review-exit-holds/review-exit-verdict-gate.js +8 -5
- package/dist/completion/review-exit-holds/review-exit-verdict-gate.js.map +1 -1
- package/dist/completion/state-cascade/review-next-step.d.ts.map +1 -1
- package/dist/completion/state-cascade/review-next-step.js +15 -8
- package/dist/completion/state-cascade/review-next-step.js.map +1 -1
- package/dist/completion/team-exit/status-advance-phase.d.ts.map +1 -1
- package/dist/completion/team-exit/status-advance-phase.js +6 -6
- package/dist/completion/team-exit/status-advance-phase.js.map +1 -1
- package/dist/completion/team-liveness/supervision-firing-record.d.ts +6 -0
- package/dist/completion/team-liveness/supervision-firing-record.d.ts.map +1 -1
- package/dist/completion/team-liveness/supervision-firing-record.js +10 -1
- package/dist/completion/team-liveness/supervision-firing-record.js.map +1 -1
- package/dist/completion/team-outcome/decide-close-rows.d.ts +9 -0
- package/dist/completion/team-outcome/decide-close-rows.d.ts.map +1 -1
- package/dist/completion/team-outcome/decide-close-rows.js +18 -4
- package/dist/completion/team-outcome/decide-close-rows.js.map +1 -1
- package/dist/composition/completion-event-context.js +2 -2
- package/dist/composition/completion-event-context.js.map +1 -1
- package/dist/composition/daemon-contexts.d.ts.map +1 -1
- package/dist/composition/daemon-contexts.js +5 -1
- package/dist/composition/daemon-contexts.js.map +1 -1
- package/dist/composition/engine-start-context.d.ts +3 -0
- package/dist/composition/engine-start-context.d.ts.map +1 -0
- package/dist/composition/engine-start-context.js +24 -0
- package/dist/composition/engine-start-context.js.map +1 -0
- package/dist/composition/execution-spawn-context.d.ts.map +1 -1
- package/dist/composition/execution-spawn-context.js +13 -1
- package/dist/composition/execution-spawn-context.js.map +1 -1
- package/dist/composition/runtime-delivery-advance-context.js +3 -3
- package/dist/composition/runtime-delivery-advance-context.js.map +1 -1
- package/dist/composition/runtime-heartbeat-context.d.ts.map +1 -1
- package/dist/composition/runtime-heartbeat-context.js +3 -0
- package/dist/composition/runtime-heartbeat-context.js.map +1 -1
- package/dist/composition/runtime-poll-context.d.ts +29 -2
- package/dist/composition/runtime-poll-context.d.ts.map +1 -1
- package/dist/composition/runtime-poll-context.js +51 -4
- package/dist/composition/runtime-poll-context.js.map +1 -1
- package/dist/composition/runtime-prd-context.d.ts.map +1 -1
- package/dist/composition/runtime-prd-context.js +25 -1
- package/dist/composition/runtime-prd-context.js.map +1 -1
- package/dist/composition/runtime-spawn-pass-context.js +1 -1
- package/dist/composition/runtime-spawn-pass-context.js.map +1 -1
- package/dist/composition/spawn-pass-deps.d.ts +1 -1
- package/dist/composition/spawn-pass-deps.d.ts.map +1 -1
- package/dist/composition/spawn-pass-deps.js +3 -0
- package/dist/composition/spawn-pass-deps.js.map +1 -1
- package/dist/composition/standing-approval-context.d.ts.map +1 -1
- package/dist/composition/standing-approval-context.js +2 -1
- package/dist/composition/standing-approval-context.js.map +1 -1
- package/dist/composition/state-cascade-context.js +1 -1
- package/dist/composition/state-cascade-context.js.map +1 -1
- package/dist/composition/tower-pass-context.d.ts +9 -0
- package/dist/composition/tower-pass-context.d.ts.map +1 -0
- package/dist/composition/tower-pass-context.js +53 -0
- package/dist/composition/tower-pass-context.js.map +1 -0
- package/dist/composition/verify-probe-context.d.ts.map +1 -1
- package/dist/composition/verify-probe-context.js +5 -4
- package/dist/composition/verify-probe-context.js.map +1 -1
- package/dist/composition/verify-rework-context.d.ts +26 -2
- package/dist/composition/verify-rework-context.d.ts.map +1 -1
- package/dist/composition/verify-rework-context.js +34 -10
- package/dist/composition/verify-rework-context.js.map +1 -1
- package/dist/config/live-daemon-config.d.ts.map +1 -1
- package/dist/config/live-daemon-config.js +1 -19
- package/dist/config/live-daemon-config.js.map +1 -1
- package/dist/daemon-state/awaiting-slot.d.ts.map +1 -1
- package/dist/daemon-state/awaiting-slot.js +2 -1
- package/dist/daemon-state/awaiting-slot.js.map +1 -1
- package/dist/daemon-state/focus-team-state.js +1 -1
- package/dist/daemon-state/intake-control.d.ts.map +1 -1
- package/dist/daemon-state/intake-control.js +2 -1
- package/dist/daemon-state/intake-control.js.map +1 -1
- package/dist/delivery/recorded-concerns.d.ts +19 -2
- package/dist/delivery/recorded-concerns.d.ts.map +1 -1
- package/dist/delivery/recorded-concerns.js +32 -6
- package/dist/delivery/recorded-concerns.js.map +1 -1
- package/dist/directive/directive-queue.js +1 -1
- package/dist/focus/closed-review-window.d.ts +12 -0
- package/dist/focus/closed-review-window.d.ts.map +1 -1
- package/dist/focus/closed-review-window.js +18 -0
- package/dist/focus/closed-review-window.js.map +1 -1
- package/dist/focus/control-state.d.ts +30 -26
- package/dist/focus/control-state.d.ts.map +1 -1
- package/dist/focus/control-state.js +60 -46
- package/dist/focus/control-state.js.map +1 -1
- package/dist/focus/daemon-contexts.d.ts +23 -0
- package/dist/focus/daemon-contexts.d.ts.map +1 -1
- package/dist/focus/daemon-contexts.js +1 -1
- package/dist/focus/daemon-contexts.js.map +1 -1
- package/dist/focus/engine-ready-pass.d.ts +11 -0
- package/dist/focus/engine-ready-pass.d.ts.map +1 -0
- package/dist/focus/engine-ready-pass.js +25 -0
- package/dist/focus/engine-ready-pass.js.map +1 -0
- package/dist/focus/failed-head-wedge.d.ts +95 -0
- package/dist/focus/failed-head-wedge.d.ts.map +1 -0
- package/dist/focus/failed-head-wedge.js +85 -0
- package/dist/focus/failed-head-wedge.js.map +1 -0
- package/dist/focus/focus-engine.d.ts.map +1 -1
- package/dist/focus/focus-engine.js +20 -20
- package/dist/focus/focus-engine.js.map +1 -1
- package/dist/focus/focus-loop-registry.d.ts.map +1 -1
- package/dist/focus/focus-loop-registry.js +2 -1
- package/dist/focus/focus-loop-registry.js.map +1 -1
- package/dist/focus/focus-poller-auto-advance.d.ts.map +1 -1
- package/dist/focus/focus-poller-auto-advance.js +4 -4
- package/dist/focus/focus-poller-auto-advance.js.map +1 -1
- package/dist/focus/focus-poller-spawn.d.ts +42 -49
- package/dist/focus/focus-poller-spawn.d.ts.map +1 -1
- package/dist/focus/focus-poller-spawn.js +129 -83
- package/dist/focus/focus-poller-spawn.js.map +1 -1
- package/dist/focus/focus-poller-state.d.ts.map +1 -1
- package/dist/focus/focus-poller-state.js +1 -19
- package/dist/focus/focus-poller-state.js.map +1 -1
- package/dist/focus/focus-poller.d.ts.map +1 -1
- package/dist/focus/focus-poller.js +2 -1
- package/dist/focus/focus-poller.js.map +1 -1
- package/dist/focus/focus-respawn-guard.d.ts +7 -0
- package/dist/focus/focus-respawn-guard.d.ts.map +1 -1
- package/dist/focus/focus-respawn-guard.js +20 -1
- package/dist/focus/focus-respawn-guard.js.map +1 -1
- package/dist/focus/focus-spawn-decision.d.ts +11 -3
- package/dist/focus/focus-spawn-decision.d.ts.map +1 -1
- package/dist/focus/focus-spawn-decision.js +3 -1
- package/dist/focus/focus-spawn-decision.js.map +1 -1
- package/dist/focus/heartbeat-metadata.d.ts +3 -0
- package/dist/focus/heartbeat-metadata.d.ts.map +1 -1
- package/dist/focus/heartbeat-metadata.js +6 -1
- package/dist/focus/heartbeat-metadata.js.map +1 -1
- package/dist/focus/heartbeat.d.ts.map +1 -1
- package/dist/focus/heartbeat.js +2 -0
- package/dist/focus/heartbeat.js.map +1 -1
- package/dist/focus/pending-directive-gates.d.ts +47 -0
- package/dist/focus/pending-directive-gates.d.ts.map +1 -0
- package/dist/focus/pending-directive-gates.js +76 -0
- package/dist/focus/pending-directive-gates.js.map +1 -0
- package/dist/focus/pending-review-approved-head.d.ts +2 -1
- package/dist/focus/pending-review-approved-head.d.ts.map +1 -1
- package/dist/focus/pending-review-approved-head.js +3 -4
- package/dist/focus/pending-review-approved-head.js.map +1 -1
- package/dist/focus/pending-spawn-pass-deps.d.ts +5 -0
- package/dist/focus/pending-spawn-pass-deps.d.ts.map +1 -1
- package/dist/focus/pending-spawn-pass-deps.js +4 -1
- package/dist/focus/pending-spawn-pass-deps.js.map +1 -1
- package/dist/focus/pending-spawn-verify-hold.d.ts +13 -0
- package/dist/focus/pending-spawn-verify-hold.d.ts.map +1 -0
- package/dist/focus/pending-spawn-verify-hold.js +30 -0
- package/dist/focus/pending-spawn-verify-hold.js.map +1 -0
- package/dist/focus/ready-focus-spawn-action.d.ts +15 -2
- package/dist/focus/ready-focus-spawn-action.d.ts.map +1 -1
- package/dist/focus/ready-focus-spawn-action.js +25 -8
- package/dist/focus/ready-focus-spawn-action.js.map +1 -1
- package/dist/focus/spawn-demand-probe.d.ts +45 -0
- package/dist/focus/spawn-demand-probe.d.ts.map +1 -0
- package/dist/focus/spawn-demand-probe.js +74 -0
- package/dist/focus/spawn-demand-probe.js.map +1 -0
- package/dist/focus/stranded-review-reroute.d.ts.map +1 -1
- package/dist/focus/stranded-review-reroute.js +5 -3
- package/dist/focus/stranded-review-reroute.js.map +1 -1
- package/dist/focus/verify-routing-passes.d.ts +8 -3
- package/dist/focus/verify-routing-passes.d.ts.map +1 -1
- package/dist/focus/verify-routing-passes.js +1 -0
- package/dist/focus/verify-routing-passes.js.map +1 -1
- package/dist/git/focus-branch-containment.d.ts +39 -0
- package/dist/git/focus-branch-containment.d.ts.map +1 -0
- package/dist/git/focus-branch-containment.js +47 -0
- package/dist/git/focus-branch-containment.js.map +1 -0
- package/dist/git/types.d.ts.map +1 -1
- package/dist/git/types.js +2 -0
- package/dist/git/types.js.map +1 -1
- package/dist/poll-trigger.js +1 -1
- package/dist/poll-trigger.js.map +1 -1
- package/dist/prd/arm-readiness.d.ts.map +1 -1
- package/dist/prd/arm-readiness.js +2 -1
- package/dist/prd/arm-readiness.js.map +1 -1
- package/dist/prd/controller-shared.d.ts +32 -8
- package/dist/prd/controller-shared.d.ts.map +1 -1
- package/dist/prd/controller-shared.js +34 -18
- package/dist/prd/controller-shared.js.map +1 -1
- package/dist/prd/controller.d.ts.map +1 -1
- package/dist/prd/controller.js +3 -8
- package/dist/prd/controller.js.map +1 -1
- package/dist/prd/done-sweep.d.ts.map +1 -1
- package/dist/prd/done-sweep.js +2 -7
- package/dist/prd/done-sweep.js.map +1 -1
- package/dist/prd/frontier-arming.d.ts +13 -1
- package/dist/prd/frontier-arming.d.ts.map +1 -1
- package/dist/prd/frontier-arming.js +50 -2
- package/dist/prd/frontier-arming.js.map +1 -1
- package/dist/prd/index.d.ts.map +1 -1
- package/dist/prd/index.js +2 -1
- package/dist/prd/index.js.map +1 -1
- package/dist/queries/api-client/shared.d.ts +1 -0
- package/dist/queries/api-client/shared.d.ts.map +1 -1
- package/dist/queries/api-client/shared.js +16 -1
- package/dist/queries/api-client/shared.js.map +1 -1
- package/dist/queries/deliveries/issues.d.ts.map +1 -1
- package/dist/queries/deliveries/issues.js +3 -0
- package/dist/queries/deliveries/issues.js.map +1 -1
- package/dist/queries/focuses/focus-discovery.d.ts +15 -0
- package/dist/queries/focuses/focus-discovery.d.ts.map +1 -1
- package/dist/queries/focuses/focus-discovery.js +10 -1
- package/dist/queries/focuses/focus-discovery.js.map +1 -1
- package/dist/queries/prd/prd.d.ts.map +1 -1
- package/dist/queries/prd/prd.js +2 -1
- package/dist/queries/prd/prd.js.map +1 -1
- package/dist/queries/tower/tower-state.d.ts +56 -0
- package/dist/queries/tower/tower-state.d.ts.map +1 -0
- package/dist/queries/tower/tower-state.js +76 -0
- package/dist/queries/tower/tower-state.js.map +1 -0
- package/dist/queries/verification/verification.js +1 -1
- package/dist/queries/wire-schemas/schemas.d.ts +12 -0
- package/dist/queries/wire-schemas/schemas.d.ts.map +1 -1
- package/dist/queries/wire-schemas/schemas.js +11 -0
- package/dist/queries/wire-schemas/schemas.js.map +1 -1
- package/dist/spawn/lead-continuation.d.ts +9 -1
- package/dist/spawn/lead-continuation.d.ts.map +1 -1
- package/dist/spawn/lead-continuation.js +37 -11
- package/dist/spawn/lead-continuation.js.map +1 -1
- package/dist/spawn/spawn-decision.d.ts.map +1 -1
- package/dist/spawn/spawn-decision.js +4 -1
- package/dist/spawn/spawn-decision.js.map +1 -1
- package/dist/supervision/spawn-cooldown.js +1 -1
- package/dist/supervision/stop-rows-team-session.d.ts.map +1 -1
- package/dist/supervision/stop-rows-team-session.js +11 -10
- package/dist/supervision/stop-rows-team-session.js.map +1 -1
- package/dist/supervision/team-work.d.ts.map +1 -1
- package/dist/supervision/team-work.js +3 -1
- package/dist/supervision/team-work.js.map +1 -1
- package/dist/testing/fixtures/api-client.js +1 -1
- package/dist/testing/fixtures/approved-head-inert-deps.js +1 -1
- package/dist/testing/fixtures/approved-head-inert-deps.js.map +1 -1
- package/dist/testing/fixtures/index.js +1 -1
- package/dist/testing/fixtures/pending-spawn-world.d.ts.map +1 -1
- package/dist/testing/fixtures/pending-spawn-world.js +3 -1
- package/dist/testing/fixtures/pending-spawn-world.js.map +1 -1
- package/dist/testing/fixtures/review-exit-deps.js +1 -1
- package/dist/testing/fixtures/review-exit-deps.js.map +1 -1
- package/dist/testing/fixtures/verification-deps.js +1 -1
- package/dist/testing/fixtures/verification-feedback-deps.d.ts.map +1 -1
- package/dist/testing/fixtures/verification-feedback-deps.js +2 -0
- package/dist/testing/fixtures/verification-feedback-deps.js.map +1 -1
- package/dist/testing/fixtures/worktree-provisioning-test-deps.d.ts.map +1 -1
- package/dist/testing/fixtures/worktree-provisioning-test-deps.js +1 -0
- package/dist/testing/fixtures/worktree-provisioning-test-deps.js.map +1 -1
- package/dist/tower/focus-landed.d.ts +4 -0
- package/dist/tower/focus-landed.d.ts.map +1 -0
- package/dist/tower/focus-landed.js +45 -0
- package/dist/tower/focus-landed.js.map +1 -0
- package/dist/tower/tower-admission.d.ts +91 -0
- package/dist/tower/tower-admission.d.ts.map +1 -0
- package/dist/tower/tower-admission.js +137 -0
- package/dist/tower/tower-admission.js.map +1 -0
- package/dist/tower/tower-graph.d.ts +23 -0
- package/dist/tower/tower-graph.d.ts.map +1 -0
- package/dist/tower/tower-graph.js +53 -0
- package/dist/tower/tower-graph.js.map +1 -0
- package/dist/tower/tower-heartbeat-status.d.ts +28 -0
- package/dist/tower/tower-heartbeat-status.d.ts.map +1 -0
- package/dist/tower/tower-heartbeat-status.js +11 -0
- package/dist/tower/tower-heartbeat-status.js.map +1 -0
- package/dist/tower/tower-mode.d.ts +9 -0
- package/dist/tower/tower-mode.d.ts.map +1 -0
- package/dist/tower/tower-mode.js +16 -0
- package/dist/tower/tower-mode.js.map +1 -0
- package/dist/tower/tower-pass-standing.d.ts +8 -0
- package/dist/tower/tower-pass-standing.d.ts.map +1 -0
- package/dist/tower/tower-pass-standing.js +50 -0
- package/dist/tower/tower-pass-standing.js.map +1 -0
- package/dist/tower/tower-pass.d.ts +55 -0
- package/dist/tower/tower-pass.d.ts.map +1 -0
- package/dist/tower/tower-pass.js +59 -0
- package/dist/tower/tower-pass.js.map +1 -0
- package/dist/tower/tower-production-pass.d.ts +3 -0
- package/dist/tower/tower-production-pass.d.ts.map +1 -0
- package/dist/tower/tower-production-pass.js +24 -0
- package/dist/tower/tower-production-pass.js.map +1 -0
- package/dist/tower/tower-spawn-intent.d.ts +72 -0
- package/dist/tower/tower-spawn-intent.d.ts.map +1 -0
- package/dist/tower/tower-spawn-intent.js +138 -0
- package/dist/tower/tower-spawn-intent.js.map +1 -0
- package/dist/tower/tower-verdicts.d.ts +81 -0
- package/dist/tower/tower-verdicts.d.ts.map +1 -0
- package/dist/tower/tower-verdicts.js +139 -0
- package/dist/tower/tower-verdicts.js.map +1 -0
- package/dist/types/index.js +1 -1
- package/dist/types/issue-status.d.ts +14 -0
- package/dist/types/issue-status.d.ts.map +1 -1
- package/dist/types/issue-status.js +14 -0
- package/dist/types/issue-status.js.map +1 -1
- package/dist/verify/deterministic-gate/verification-checkout.d.ts +8 -1
- package/dist/verify/deterministic-gate/verification-checkout.d.ts.map +1 -1
- package/dist/verify/deterministic-gate/verification-checkout.js +94 -15
- package/dist/verify/deterministic-gate/verification-checkout.js.map +1 -1
- package/dist/verify/deterministic-gate/verification-deterministic.d.ts.map +1 -1
- package/dist/verify/deterministic-gate/verification-deterministic.js +1 -0
- package/dist/verify/deterministic-gate/verification-deterministic.js.map +1 -1
- package/dist/verify/gate-verdicts/commit-verdict-record.js +1 -1
- package/dist/verify/outcome-routing/verification-rework-issue.d.ts +44 -5
- package/dist/verify/outcome-routing/verification-rework-issue.d.ts.map +1 -1
- package/dist/verify/outcome-routing/verification-rework-issue.js +85 -27
- package/dist/verify/outcome-routing/verification-rework-issue.js.map +1 -1
- package/dist/worktree/focus-worktree-state.d.ts.map +1 -1
- package/dist/worktree/focus-worktree-state.js +1 -0
- package/dist/worktree/focus-worktree-state.js.map +1 -1
- package/dist/worktree/verify-interlock.d.ts.map +1 -1
- package/dist/worktree/verify-interlock.js +1 -0
- package/dist/worktree/verify-interlock.js.map +1 -1
- package/dist/worktree/worktree-package-provisioning.d.ts +6 -1
- package/dist/worktree/worktree-package-provisioning.d.ts.map +1 -1
- package/dist/worktree/worktree-package-provisioning.js +37 -17
- package/dist/worktree/worktree-package-provisioning.js.map +1 -1
- package/package.json +3 -3
|
@@ -1,8 +1,5 @@
|
|
|
1
|
-
import { type FocusHoldWorkDeps } from '../worktree/verify-hold-facts.js';
|
|
2
|
-
import { type ActiveFocusRow } from '../queries/focuses/focus-discovery.js';
|
|
3
1
|
import type { PendingSpawnPassDeps, ReadyFocusPassDeps } from './pending-spawn-pass-deps.js';
|
|
4
|
-
import { type
|
|
5
|
-
import { type PendingReviewApprovedHeadDeps } from './pending-review-approved-head.js';
|
|
2
|
+
import { type DaemonContexts } from './daemon-contexts.js';
|
|
6
3
|
/**
|
|
7
4
|
* Process any focuses ready for agent work.
|
|
8
5
|
*
|
|
@@ -39,50 +36,6 @@ export declare function respawnSuppressedByDemotion(focus: {
|
|
|
39
36
|
focus_id: string;
|
|
40
37
|
focus_name: string;
|
|
41
38
|
}, respawnAfterTeardown: ReadonlySet<string>): boolean;
|
|
42
|
-
/**
|
|
43
|
-
* Whether a queued REVIEW directive for this focus is parked on an operator hold
|
|
44
|
-
* (spawn/review-hold-park.ts): the review waits on the escalation, not on billed
|
|
45
|
-
* respawns, and the hold's resolution releases it (clearing the respawn halt).
|
|
46
|
-
* Read BEFORE the respawn-halt check so a halted focus still observes its
|
|
47
|
-
* release. A non-review directive is never parked here.
|
|
48
|
-
*/
|
|
49
|
-
export declare function pendingReviewParkedOnOperatorHold(focus: {
|
|
50
|
-
focus_id: string;
|
|
51
|
-
focus_name: string;
|
|
52
|
-
}, deps: ReviewHoldParkDeps): Promise<boolean>;
|
|
53
|
-
/**
|
|
54
|
-
* Whether a queued REVIEW directive is declined because the focus head is the
|
|
55
|
-
* commit its current approval already judged (focus/pending-review-approved-head.ts):
|
|
56
|
-
* dropped with its stale review window, or withheld while a hold marker still
|
|
57
|
-
* awaits its release. Read AFTER the operator-hold park, so a resolved hold is
|
|
58
|
-
* released (halt cleared durably) even when the review itself is declined.
|
|
59
|
-
*/
|
|
60
|
-
export declare function pendingReviewDeclinedAtApprovedHead(focus: ActiveFocusRow, deps: PendingReviewApprovedHeadDeps): Promise<boolean>;
|
|
61
|
-
/**
|
|
62
|
-
* Stage-currency guard: a queued spawn directive belongs to the stage the focus
|
|
63
|
-
* was in when it was stashed (originStageId). If the focus has since LEFT that
|
|
64
|
-
* stage, the directive is stale -- the 2026-09-06 focus 6f866509 case, where a
|
|
65
|
-
* verifying-stage directive was consumed by a spawn 0.4s after the focus moved to
|
|
66
|
-
* reviewing. Drop it rather than consume it, and report whether the spawn must be
|
|
67
|
-
* skipped. A null origin (older entry, or a stash site with no stage) or a null
|
|
68
|
-
* current stage skips the check (fail-open, never a false drop).
|
|
69
|
-
*/
|
|
70
|
-
export declare function dropStalePendingSpawnDirective(focus: {
|
|
71
|
-
focus_id: string;
|
|
72
|
-
focus_name: string;
|
|
73
|
-
current_workflow_stage_id: string | null;
|
|
74
|
-
}): boolean;
|
|
75
|
-
/**
|
|
76
|
-
* Whether a pending spawn directive must be DEFERRED because an in-flight verify
|
|
77
|
-
* hold covers the focus's only open work -- read through the ONE shared predicate,
|
|
78
|
-
* so a sibling delivery's open work outside the verified delivery still spawns
|
|
79
|
-
* (f1, 2026-09-13). A REVIEW-lineage pending directive is EXEMPT (returns false
|
|
80
|
-
* even while held): the review is exactly the work that releases the deliveries
|
|
81
|
-
* the hold is holding, so gating it would deadlock the focus in verify. Mirrors
|
|
82
|
-
* the directive gate's lineage exemption (directive/directive-verify-hold-gate.ts)
|
|
83
|
-
* and the review-always-spawnable rule, so the two disposal sites cannot drift.
|
|
84
|
-
*/
|
|
85
|
-
export declare function pendingSpawnDeferredByVerifyHold(focusId: string, deps: FocusHoldWorkDeps): Promise<boolean>;
|
|
86
39
|
/**
|
|
87
40
|
* One poll's pending-spawn pass. It starts a drain of the escalation spool
|
|
88
41
|
* (supervision/escalation-spool.ts): an escalation a bounded hold spooled when the
|
|
@@ -93,6 +46,21 @@ export declare function pendingSpawnDeferredByVerifyHold(focusId: string, deps:
|
|
|
93
46
|
* next.
|
|
94
47
|
*/
|
|
95
48
|
export declare function runPendingSpawnPass(deps: PendingSpawnPassDeps): Promise<void>;
|
|
49
|
+
/**
|
|
50
|
+
* Reconcile the tower's demand record with what could run NOW, before the tower
|
|
51
|
+
* allocates a slot (reconcileSurfacedSpawnIntent): every surfaced focus -- ready,
|
|
52
|
+
* or holding a queued directive -- is probed through the gates its spawn pass
|
|
53
|
+
* applies, bar the tower and the host cap (focus/spawn-demand-probe.ts), and
|
|
54
|
+
* wants a slot exactly when they are all open. So a focus parked behind a verify
|
|
55
|
+
* hold, an escalation, its review budget or a cooldown reserves nothing even the
|
|
56
|
+
* first time it surfaces, a focus whose gate has just cleared is ranked with the
|
|
57
|
+
* waiters on this same pass, and a focus no longer surfaced wants nothing.
|
|
58
|
+
* Skipped in TELORA_TOWER_MODE=off (no tower reads it) and on a failed ready
|
|
59
|
+
* read, which would read an unread product's foci as not surfaced; a focus whose
|
|
60
|
+
* probe could not answer keeps its record. Never throws: the record it corrects
|
|
61
|
+
* only orders the queue.
|
|
62
|
+
*/
|
|
63
|
+
export declare function reconcileSpawnDemand(contexts: Pick<DaemonContexts, 'readyFocusPass' | 'pendingSpawnPass'>): Promise<void>;
|
|
96
64
|
/**
|
|
97
65
|
* Spawn teams for focuses that have a pending spawn directive but were
|
|
98
66
|
* not surfaced by getReadyFocuses.
|
|
@@ -105,8 +73,33 @@ export declare function runPendingSpawnPass(deps: PendingSpawnPassDeps): Promise
|
|
|
105
73
|
* pending-spawn map directly and spawn for any focus that's not
|
|
106
74
|
* already running.
|
|
107
75
|
*/
|
|
76
|
+
/**
|
|
77
|
+
* The pending directives this pass may act on, PURE. None while the daemon shuts
|
|
78
|
+
* down, and none while intake is DRAINED: a drain (an update's safe seam, or a
|
|
79
|
+
* `telora-daemon stop` waiting for the fleet to reach zero teams) promises that
|
|
80
|
+
* no team starts or resumes, and this pass resumes sessions just as the ready
|
|
81
|
+
* pass starts them. The directives are not dropped -- they stay queued and are
|
|
82
|
+
* acted on once the drain is released.
|
|
83
|
+
*/
|
|
84
|
+
export declare function pendingSpawnCandidates(input: {
|
|
85
|
+
shuttingDown: boolean;
|
|
86
|
+
draining: boolean;
|
|
87
|
+
pendingIds: readonly string[];
|
|
88
|
+
hasActiveTeam: (focusId: string) => boolean;
|
|
89
|
+
}): string[];
|
|
108
90
|
export declare function processPendingSpawnFocuses(deps: PendingSpawnPassDeps): Promise<void>;
|
|
109
|
-
/**
|
|
91
|
+
/**
|
|
92
|
+
* THE production ready-focus pass -- the only way production code runs
|
|
93
|
+
* processReadyFocuses (pinned by tower/tower-entrypoints.test.ts). Headed by
|
|
94
|
+
* the demand reconcile (reconcileSpawnDemand) and the product towers' verdict pass (tower/tower-production-pass.ts over
|
|
95
|
+
* composition/tower-pass-context.ts; never throws, inert in
|
|
96
|
+
* TELORA_TOWER_MODE=off), so every spawn is admitted against verdicts computed
|
|
97
|
+
* this pass. SINGLE FLIGHT: a caller arriving while a pass runs (the poll, the
|
|
98
|
+
* engine's start and 60s timer, a completion trigger) awaits that pass rather
|
|
99
|
+
* than starting a second, overlapping one.
|
|
100
|
+
*/
|
|
101
|
+
export declare function runReadyFocusPassThroughTower(contexts: Pick<DaemonContexts, 'towerPass' | 'readyFocusPass' | 'pendingSpawnPass'>): Promise<void>;
|
|
102
|
+
/** The ready-focus pass the focus poll runs: over the composition root's installed contexts. */
|
|
110
103
|
export declare function runProductionReadyFocusPass(): Promise<void>;
|
|
111
104
|
/** The pending-spawn pass the focus poll runs: over the composition root's installed contexts. */
|
|
112
105
|
export declare function runProductionPendingSpawnPass(): Promise<void>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"focus-poller-spawn.d.ts","sourceRoot":"","sources":["../../src/focus/focus-poller-spawn.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"focus-poller-spawn.d.ts","sourceRoot":"","sources":["../../src/focus/focus-poller-spawn.ts"],"names":[],"mappings":"AAmDA,OAAO,KAAK,EAAE,oBAAoB,EAAE,kBAAkB,EAAE,MAAM,8BAA8B,CAAC;AAM7F,OAAO,EAA2B,KAAK,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAuEpF;;;;;;;;;GASG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,kBAAkB,GAAG,OAAO,CAAC,IAAI,CAAC,CAuKjF;AAuDD;;;;;;;GAOG;AACH,wBAAgB,+BAA+B,CAC7C,YAAY,EAAE,aAAa,CAAC;IAAE,QAAQ,EAAE,MAAM,CAAA;CAAE,CAAC,GAChD,GAAG,CAAC,MAAM,CAAC,CAuBb;AAED;;;;;;;;;GASG;AACH,wBAAgB,2BAA2B,CACzC,KAAK,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAA;CAAE,EAC/C,oBAAoB,EAAE,WAAW,CAAC,MAAM,CAAC,GACxC,OAAO,CAQT;AAsED;;;;;;;;GAQG;AACH,wBAAsB,mBAAmB,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CAGnF;AAkBD;;;;;;;;;;;;;GAaG;AACH,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,EAAE,gBAAgB,GAAG,kBAAkB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CA4B/H;AAgCD;;;;;;;;;;;GAWG;AACH;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,KAAK,EAAE;IAC5C,YAAY,EAAE,OAAO,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,UAAU,EAAE,SAAS,MAAM,EAAE,CAAC;IAC9B,aAAa,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC;CAC7C,GAAG,MAAM,EAAE,CAGX;AAcD,wBAAsB,0BAA0B,CAAC,IAAI,EAAE,oBAAoB,GAAG,OAAO,CAAC,IAAI,CAAC,CA8L1F;AAKD;;;;;;;;;GASG;AACH,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,EAAE,WAAW,GAAG,gBAAgB,GAAG,kBAAkB,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAYhJ;AAED,gGAAgG;AAChG,wBAAsB,2BAA2B,IAAI,OAAO,CAAC,IAAI,CAAC,CAEjE;AAED,kGAAkG;AAClG,wBAAsB,6BAA6B,IAAI,OAAO,CAAC,IAAI,CAAC,CAEnE"}
|
|
@@ -1,13 +1,14 @@
|
|
|
1
1
|
// PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
|
|
2
|
-
// Pinned by:
|
|
2
|
+
// Pinned by: 25 tests -- run: npm run gen:pinned-by -- --list packages/daemon/src/focus/focus-poller-spawn.ts
|
|
3
3
|
// PINNED-BY-END
|
|
4
4
|
import { resolveReadyFocusSpawnAction } from './ready-focus-spawn-action.js';
|
|
5
5
|
import { roles, pollState, idleLoggedFocuses, nullRoleSkipWarnedFocuses, lastRolesRefreshAt, healthCheckConsecutiveFailures, POLL_INTERVAL_MS, ROLES_REFRESH_INTERVAL_MS, setPollState, setLastRolesRefreshAt, setLastReadyFocusCount, } from './focus-poller-state.js';
|
|
6
6
|
import { liveDaemonConfig as config } from '../config/live-daemon-config.js';
|
|
7
7
|
import { getAgentRoles } from '../queries/org-config/roles.js';
|
|
8
8
|
import { hasActiveTeam, getActiveTeamCount, getActiveTeams } from '../daemon-state/focus-team-state.js';
|
|
9
|
-
import {
|
|
10
|
-
import {
|
|
9
|
+
import { pendingSpawnDeferredByVerifyHold } from './pending-spawn-verify-hold.js';
|
|
10
|
+
import { probePendingFocusDemand, probeReadyFocusDemand } from './spawn-demand-probe.js';
|
|
11
|
+
import { dropStalePendingSpawnDirective, pendingReviewDeclinedAtApprovedHead, pendingReviewParkedOnOperatorHold, reviewHeadTarget } from './pending-directive-gates.js';
|
|
11
12
|
import { applyRespawnGuard } from './focus-respawn-guard.js';
|
|
12
13
|
import { resolveReviewCycleCapHold } from '../supervision/review-cycle-cap-hold.js';
|
|
13
14
|
import { recordActivity } from '../daemon-state/agent-state.js';
|
|
@@ -23,13 +24,15 @@ import { isRespawnCycleTerminated } from '../supervision/spawn-cooldown.js';
|
|
|
23
24
|
import { recordPendingSpawnAttempt, isNextSpawnInCooldown } from '../spawn/index.js';
|
|
24
25
|
import { installedDaemonContexts } from './daemon-contexts.js';
|
|
25
26
|
import { fileRespawnCycleExhaustedEscalation } from '../spawn/respawn-cycle-escalation.js';
|
|
26
|
-
import { gateReviewSpawnOnOperatorHold } from '../spawn/review-hold-park.js';
|
|
27
27
|
import { pendingCodingSpawnSupersededByReview } from './pending-spawn-review-next-step.js';
|
|
28
28
|
import { dropReviewDirectiveOfClosedWindow, gateReadyReviewDirectiveOnWindow } from './closed-review-window.js';
|
|
29
29
|
import { gatePendingReviewAtApprovedHead } from './pending-review-approved-head.js';
|
|
30
30
|
import { startEscalationSpoolDrain } from '../supervision/escalation-spool.js';
|
|
31
31
|
import { recordFiring, classifyLatestUnclassifiedFiring, isMechanismDemoted, markLatestFiringUnacted, SUPERVISION_MECHANISM } from '../completion/team-liveness/supervision-firing-record.js';
|
|
32
32
|
import { createLogger } from '../log/daemon-log.js';
|
|
33
|
+
import { offerForTower, pendingSpawnHeldByTower } from '../tower/tower-admission.js';
|
|
34
|
+
import { runTowerPassSafely } from '../tower/tower-production-pass.js';
|
|
35
|
+
import { abandonSpawnIntentPass, commitSpawnIntentPass, reconcileSurfacedSpawnIntent } from '../tower/tower-spawn-intent.js';
|
|
33
36
|
const log = createLogger({ module: 'focus-poller' });
|
|
34
37
|
/**
|
|
35
38
|
* The spawn-gate skips the ready pass logs at debug and passes over, re-read live
|
|
@@ -147,7 +150,7 @@ export async function processReadyFocuses(deps) {
|
|
|
147
150
|
? ` across ${config.products.length} product(s)`
|
|
148
151
|
: '';
|
|
149
152
|
log.info(`Found ${readyFocuses.length} ready focuses${productLabel}`);
|
|
150
|
-
for (const focus of readyFocuses) {
|
|
153
|
+
for (const focus of offerForTower('ready', readyFocuses, (f) => f.focus_id, deps.tower.mode())) { // enforce: rank order (tower/tower-admission.ts)
|
|
151
154
|
const role = roles.get(focus.assigned_agent_role_id);
|
|
152
155
|
// Resolve the per-focus spawn-gate decision (pure; see decideFocusSpawn).
|
|
153
156
|
const action = await resolveReadyFocusSpawnAction(focus, role, deps, config, readCapHold);
|
|
@@ -171,8 +174,8 @@ export async function processReadyFocuses(deps) {
|
|
|
171
174
|
// below (one answer -> one re-spawn).
|
|
172
175
|
continue;
|
|
173
176
|
}
|
|
174
|
-
// Skip focuses recently torn down (spawn cooldown)
|
|
175
|
-
if (action === 'skip_cooldown' || action === 'skip_cap_held') {
|
|
177
|
+
// Skip focuses recently torn down (spawn cooldown), held at their review-cycle cap, or held by the tower (each logs once).
|
|
178
|
+
if (action === 'skip_cooldown' || action === 'skip_cap_held' || action === 'skip_tower_hold') {
|
|
176
179
|
continue;
|
|
177
180
|
}
|
|
178
181
|
// Every slot is in use: start no further team, but keep classifying so each
|
|
@@ -336,30 +339,6 @@ async function skipIfRespawnCycleTerminated(focus, organizationId, deps) {
|
|
|
336
339
|
}, deps);
|
|
337
340
|
return true;
|
|
338
341
|
}
|
|
339
|
-
/**
|
|
340
|
-
* Whether a queued REVIEW directive for this focus is parked on an operator hold
|
|
341
|
-
* (spawn/review-hold-park.ts): the review waits on the escalation, not on billed
|
|
342
|
-
* respawns, and the hold's resolution releases it (clearing the respawn halt).
|
|
343
|
-
* Read BEFORE the respawn-halt check so a halted focus still observes its
|
|
344
|
-
* release. A non-review directive is never parked here.
|
|
345
|
-
*/
|
|
346
|
-
export async function pendingReviewParkedOnOperatorHold(focus, deps) {
|
|
347
|
-
if (getPendingSpawnDirective(focus.focus_id)?.lineage !== 'review')
|
|
348
|
-
return false;
|
|
349
|
-
return (await gateReviewSpawnOnOperatorHold(focus, deps)) === 'parked';
|
|
350
|
-
}
|
|
351
|
-
/**
|
|
352
|
-
* The focus branch a review would cover and where its approvals are recorded,
|
|
353
|
-
* resolved against the focus's product (the same repo the spawn would use).
|
|
354
|
-
*/
|
|
355
|
-
function reviewHeadTarget(focus) {
|
|
356
|
-
const productEntry = config && focus.product_id ? findProduct(config, focus.product_id) : undefined;
|
|
357
|
-
const pc = config && productEntry ? configForProduct(config, productEntry) : config;
|
|
358
|
-
return {
|
|
359
|
-
productId: focus.product_id ?? pc?.productId ?? '', focusId: focus.focus_id, branchName: focus.branch_name, repoPath: pc?.repoPath ?? '',
|
|
360
|
-
...(pc?.integrationBranch ? { integrationBranch: pc.integrationBranch } : {}),
|
|
361
|
-
};
|
|
362
|
-
}
|
|
363
342
|
/**
|
|
364
343
|
* The ready-focus pass's spawn. A queued REVIEW directive whose review window has
|
|
365
344
|
* closed is discarded first (focus/closed-review-window.ts; an unreadable window
|
|
@@ -373,35 +352,6 @@ async function spawnReadyFocusTeam(deps, focus, params) {
|
|
|
373
352
|
await gatePendingReviewAtApprovedHead(focus, reviewHeadTarget(focus), 'ready', deps.reviewApprovedHead);
|
|
374
353
|
await deps.spawnFocusTeam(params);
|
|
375
354
|
}
|
|
376
|
-
/**
|
|
377
|
-
* Whether a queued REVIEW directive is declined because the focus head is the
|
|
378
|
-
* commit its current approval already judged (focus/pending-review-approved-head.ts):
|
|
379
|
-
* dropped with its stale review window, or withheld while a hold marker still
|
|
380
|
-
* awaits its release. Read AFTER the operator-hold park, so a resolved hold is
|
|
381
|
-
* released (halt cleared durably) even when the review itself is declined.
|
|
382
|
-
*/
|
|
383
|
-
export async function pendingReviewDeclinedAtApprovedHead(focus, deps) {
|
|
384
|
-
return (await gatePendingReviewAtApprovedHead(focus, reviewHeadTarget(focus), 'pending', deps)) !== 'spawn';
|
|
385
|
-
}
|
|
386
|
-
/**
|
|
387
|
-
* Stage-currency guard: a queued spawn directive belongs to the stage the focus
|
|
388
|
-
* was in when it was stashed (originStageId). If the focus has since LEFT that
|
|
389
|
-
* stage, the directive is stale -- the 2026-09-06 focus 6f866509 case, where a
|
|
390
|
-
* verifying-stage directive was consumed by a spawn 0.4s after the focus moved to
|
|
391
|
-
* reviewing. Drop it rather than consume it, and report whether the spawn must be
|
|
392
|
-
* skipped. A null origin (older entry, or a stash site with no stage) or a null
|
|
393
|
-
* current stage skips the check (fail-open, never a false drop).
|
|
394
|
-
*/
|
|
395
|
-
export function dropStalePendingSpawnDirective(focus) {
|
|
396
|
-
const origin = getPendingSpawnDirective(focus.focus_id)?.originStageId ?? null;
|
|
397
|
-
const current = focus.current_workflow_stage_id;
|
|
398
|
-
if (origin === null || current === null || origin === current)
|
|
399
|
-
return false;
|
|
400
|
-
clearPendingSpawnDirective(focus.focus_id);
|
|
401
|
-
log.info(`[focus-poller] Dropping stale pending directive for "${focus.focus_name}" -- it belongs to stage ` +
|
|
402
|
-
`${origin.slice(0, 8)} but the focus is now in ${current.slice(0, 8)}.`);
|
|
403
|
-
return true;
|
|
404
|
-
}
|
|
405
355
|
/**
|
|
406
356
|
* The OPERATOR-STOP disposal of a queued spawn directive: drop it, deliberately.
|
|
407
357
|
*
|
|
@@ -430,22 +380,6 @@ function dropQueuedDirectiveOnOperatorStop(focus) {
|
|
|
430
380
|
`resume (not carried to resume). This is an operator's choice, NOT a delivery failure: a directive ` +
|
|
431
381
|
`whose session ended mid-delivery is recorded on the focus as an undelivered directive instead.`);
|
|
432
382
|
}
|
|
433
|
-
/**
|
|
434
|
-
* Whether a pending spawn directive must be DEFERRED because an in-flight verify
|
|
435
|
-
* hold covers the focus's only open work -- read through the ONE shared predicate,
|
|
436
|
-
* so a sibling delivery's open work outside the verified delivery still spawns
|
|
437
|
-
* (f1, 2026-09-13). A REVIEW-lineage pending directive is EXEMPT (returns false
|
|
438
|
-
* even while held): the review is exactly the work that releases the deliveries
|
|
439
|
-
* the hold is holding, so gating it would deadlock the focus in verify. Mirrors
|
|
440
|
-
* the directive gate's lineage exemption (directive/directive-verify-hold-gate.ts)
|
|
441
|
-
* and the review-always-spawnable rule, so the two disposal sites cannot drift.
|
|
442
|
-
*/
|
|
443
|
-
export async function pendingSpawnDeferredByVerifyHold(focusId, deps) {
|
|
444
|
-
if (getPendingSpawnDirective(focusId)?.lineage === 'review')
|
|
445
|
-
return false;
|
|
446
|
-
const facts = await resolveFocusVerifyHoldFacts(focusId, deps);
|
|
447
|
-
return !focusHasTeamActionableWork({ hasUnheldActionableWork: true, ...facts });
|
|
448
|
-
}
|
|
449
383
|
/**
|
|
450
384
|
* One poll's pending-spawn pass. It starts a drain of the escalation spool
|
|
451
385
|
* (supervision/escalation-spool.ts): an escalation a bounded hold spooled when the
|
|
@@ -458,7 +392,68 @@ export async function pendingSpawnDeferredByVerifyHold(focusId, deps) {
|
|
|
458
392
|
export async function runPendingSpawnPass(deps) {
|
|
459
393
|
if (!isDaemonShuttingDown())
|
|
460
394
|
void startEscalationSpoolDrain(deps.escalationSpool);
|
|
461
|
-
await processPendingSpawnFocuses(deps);
|
|
395
|
+
await asSpawnIntentPass('pending', () => processPendingSpawnFocuses(deps));
|
|
396
|
+
}
|
|
397
|
+
/**
|
|
398
|
+
* Run one spawn pass as a unit of the tower's demand record
|
|
399
|
+
* (tower/tower-spawn-intent.ts): what it found is committed when it completes
|
|
400
|
+
* -- every focus it offered and did not find wanting is committed as not
|
|
401
|
+
* wanting -- and dropped if it throws.
|
|
402
|
+
*/
|
|
403
|
+
async function asSpawnIntentPass(source, pass) {
|
|
404
|
+
try {
|
|
405
|
+
await pass();
|
|
406
|
+
commitSpawnIntentPass(source);
|
|
407
|
+
}
|
|
408
|
+
catch (err) {
|
|
409
|
+
abandonSpawnIntentPass(source);
|
|
410
|
+
throw err;
|
|
411
|
+
}
|
|
412
|
+
}
|
|
413
|
+
/**
|
|
414
|
+
* Reconcile the tower's demand record with what could run NOW, before the tower
|
|
415
|
+
* allocates a slot (reconcileSurfacedSpawnIntent): every surfaced focus -- ready,
|
|
416
|
+
* or holding a queued directive -- is probed through the gates its spawn pass
|
|
417
|
+
* applies, bar the tower and the host cap (focus/spawn-demand-probe.ts), and
|
|
418
|
+
* wants a slot exactly when they are all open. So a focus parked behind a verify
|
|
419
|
+
* hold, an escalation, its review budget or a cooldown reserves nothing even the
|
|
420
|
+
* first time it surfaces, a focus whose gate has just cleared is ranked with the
|
|
421
|
+
* waiters on this same pass, and a focus no longer surfaced wants nothing.
|
|
422
|
+
* Skipped in TELORA_TOWER_MODE=off (no tower reads it) and on a failed ready
|
|
423
|
+
* read, which would read an unread product's foci as not surfaced; a focus whose
|
|
424
|
+
* probe could not answer keeps its record. Never throws: the record it corrects
|
|
425
|
+
* only orders the queue.
|
|
426
|
+
*/
|
|
427
|
+
export async function reconcileSpawnDemand(contexts) {
|
|
428
|
+
const ready = contexts.readyFocusPass;
|
|
429
|
+
if (!config || ready.tower.mode() === 'off')
|
|
430
|
+
return;
|
|
431
|
+
const cfg = config;
|
|
432
|
+
const demand = new Map();
|
|
433
|
+
try {
|
|
434
|
+
// The ready pass refreshes stale roles before it decides; the probe reads the same roles.
|
|
435
|
+
await refreshAgentRolesIfStale(cfg.organizationId);
|
|
436
|
+
const readCapHold = ready.createCapHoldReader(cfg.organizationId);
|
|
437
|
+
for (const product of cfg.products) {
|
|
438
|
+
for (const f of await ready.getReadyFocuses(cfg.organizationId, product.id)) {
|
|
439
|
+
demand.set(f.focus_id, await probeReadyFocusDemand(f, ready, contexts.pendingSpawnPass.respawnGuard, cfg, readCapHold));
|
|
440
|
+
}
|
|
441
|
+
}
|
|
442
|
+
const pendingIds = getPendingSpawnFocusIds();
|
|
443
|
+
const { focusDetailsById } = pendingIds.length > 0 ? await fetchPendingFocusDetails(pendingIds, contexts.pendingSpawnPass) : { focusDetailsById: new Map() };
|
|
444
|
+
for (const id of pendingIds) {
|
|
445
|
+
const focus = focusDetailsById.get(id);
|
|
446
|
+
// No active row: the pending pass cannot spawn it this pass (it reaps or retries the directive) -- not unknown.
|
|
447
|
+
const wants = focus ? await probePendingFocusDemand(focus, contexts.pendingSpawnPass, cfg) : false;
|
|
448
|
+
const prior = demand.get(id);
|
|
449
|
+
demand.set(id, prior === true || wants === true ? true : prior === null || wants === null ? null : false);
|
|
450
|
+
}
|
|
451
|
+
}
|
|
452
|
+
catch (err) {
|
|
453
|
+
log.warn(`[tower] could not read what could run to reconcile demand: ${err.message} -- keeping the last record`);
|
|
454
|
+
return;
|
|
455
|
+
}
|
|
456
|
+
reconcileSurfacedSpawnIntent(demand);
|
|
462
457
|
}
|
|
463
458
|
/**
|
|
464
459
|
* The active-focus rows (the metadata spawnFocusTeam needs) of the focuses with a
|
|
@@ -499,17 +494,41 @@ async function fetchPendingFocusDetails(pendingIds, deps) {
|
|
|
499
494
|
* pending-spawn map directly and spawn for any focus that's not
|
|
500
495
|
* already running.
|
|
501
496
|
*/
|
|
497
|
+
/**
|
|
498
|
+
* The pending directives this pass may act on, PURE. None while the daemon shuts
|
|
499
|
+
* down, and none while intake is DRAINED: a drain (an update's safe seam, or a
|
|
500
|
+
* `telora-daemon stop` waiting for the fleet to reach zero teams) promises that
|
|
501
|
+
* no team starts or resumes, and this pass resumes sessions just as the ready
|
|
502
|
+
* pass starts them. The directives are not dropped -- they stay queued and are
|
|
503
|
+
* acted on once the drain is released.
|
|
504
|
+
*/
|
|
505
|
+
export function pendingSpawnCandidates(input) {
|
|
506
|
+
if (input.shuttingDown || input.draining)
|
|
507
|
+
return [];
|
|
508
|
+
return input.pendingIds.filter((id) => !input.hasActiveTeam(id));
|
|
509
|
+
}
|
|
510
|
+
/** pendingSpawnCandidates over the live flags, logging a drain that holds queued directives. */
|
|
511
|
+
function pendingSpawnCandidatesThisTick() {
|
|
512
|
+
const draining = isIntakeDraining();
|
|
513
|
+
const queued = getPendingSpawnFocusIds();
|
|
514
|
+
if (draining && queued.length > 0) {
|
|
515
|
+
log.info(`[focus-poller] Intake drained -- holding ${queued.length} queued spawn directive(s); no team session starts or resumes`);
|
|
516
|
+
}
|
|
517
|
+
return pendingSpawnCandidates({ shuttingDown: isDaemonShuttingDown(), draining, pendingIds: queued, hasActiveTeam });
|
|
518
|
+
}
|
|
502
519
|
export async function processPendingSpawnFocuses(deps) {
|
|
503
520
|
if (!config)
|
|
504
521
|
return;
|
|
505
522
|
const awaitingSlot = [];
|
|
506
|
-
const pendingIds =
|
|
523
|
+
const pendingIds = pendingSpawnCandidatesThisTick();
|
|
507
524
|
if (pendingIds.length === 0) {
|
|
508
525
|
recordSlotBlockedFocuses('pending', awaitingSlot);
|
|
509
526
|
return;
|
|
510
527
|
}
|
|
511
528
|
const { focusDetailsById, anyFetchFailed } = await fetchPendingFocusDetails(pendingIds, deps);
|
|
512
|
-
|
|
529
|
+
// enforce: offered in focus rank order, like the ready pass (tower/tower-admission.ts); otherwise queue order.
|
|
530
|
+
const offered = offerForTower('pending', pendingIds.map((id) => ({ id, priority_rank: focusDetailsById.get(id)?.priority_rank ?? null })), (f) => f.id, deps.tower.mode());
|
|
531
|
+
for (const { id: focusId } of offered) {
|
|
513
532
|
const focus = focusDetailsById.get(focusId);
|
|
514
533
|
if (!focus) {
|
|
515
534
|
reapOrRetryAbsentPendingFocus(focusId, anyFetchFailed);
|
|
@@ -611,8 +630,8 @@ export async function processPendingSpawnFocuses(deps) {
|
|
|
611
630
|
log.info(`[focus-poller] Deferring pending spawn for "${focus.focus_name}" -- under a verify hold`);
|
|
612
631
|
continue;
|
|
613
632
|
}
|
|
614
|
-
if (await isNextSpawnInCooldown(config, focus, deps.nextSpawnRoute)) {
|
|
615
|
-
continue;
|
|
633
|
+
if (await isNextSpawnInCooldown(config, focus, deps.nextSpawnRoute) || pendingSpawnHeldByTower(focus, getActiveTeamCount() >= config.maxTotalSessions, deps.tower, Date.now())) {
|
|
634
|
+
continue; // cooling down, or held by the product's tower (tower/tower-admission.ts; fails open)
|
|
616
635
|
}
|
|
617
636
|
// Every slot in use: no spawn; record it as waiting for a slot and keep classifying.
|
|
618
637
|
if (getActiveTeamCount() >= config.maxTotalSessions) {
|
|
@@ -677,9 +696,36 @@ export async function processPendingSpawnFocuses(deps) {
|
|
|
677
696
|
}
|
|
678
697
|
recordSlotBlockedFocuses('pending', awaitingSlot);
|
|
679
698
|
}
|
|
680
|
-
/** The ready-focus pass
|
|
699
|
+
/** The ready-focus pass in flight, if any (single flight: passes never overlap). */
|
|
700
|
+
let readyPassInFlight = null;
|
|
701
|
+
/**
|
|
702
|
+
* THE production ready-focus pass -- the only way production code runs
|
|
703
|
+
* processReadyFocuses (pinned by tower/tower-entrypoints.test.ts). Headed by
|
|
704
|
+
* the demand reconcile (reconcileSpawnDemand) and the product towers' verdict pass (tower/tower-production-pass.ts over
|
|
705
|
+
* composition/tower-pass-context.ts; never throws, inert in
|
|
706
|
+
* TELORA_TOWER_MODE=off), so every spawn is admitted against verdicts computed
|
|
707
|
+
* this pass. SINGLE FLIGHT: a caller arriving while a pass runs (the poll, the
|
|
708
|
+
* engine's start and 60s timer, a completion trigger) awaits that pass rather
|
|
709
|
+
* than starting a second, overlapping one.
|
|
710
|
+
*/
|
|
711
|
+
export function runReadyFocusPassThroughTower(contexts) {
|
|
712
|
+
if (readyPassInFlight)
|
|
713
|
+
return readyPassInFlight;
|
|
714
|
+
readyPassInFlight = (async () => {
|
|
715
|
+
try {
|
|
716
|
+
await reconcileSpawnDemand(contexts);
|
|
717
|
+
await runTowerPassSafely(contexts.towerPass);
|
|
718
|
+
await asSpawnIntentPass('ready', () => processReadyFocuses(contexts.readyFocusPass));
|
|
719
|
+
}
|
|
720
|
+
finally {
|
|
721
|
+
readyPassInFlight = null;
|
|
722
|
+
}
|
|
723
|
+
})();
|
|
724
|
+
return readyPassInFlight;
|
|
725
|
+
}
|
|
726
|
+
/** The ready-focus pass the focus poll runs: over the composition root's installed contexts. */
|
|
681
727
|
export async function runProductionReadyFocusPass() {
|
|
682
|
-
await
|
|
728
|
+
await runReadyFocusPassThroughTower(installedDaemonContexts());
|
|
683
729
|
}
|
|
684
730
|
/** The pending-spawn pass the focus poll runs: over the composition root's installed contexts. */
|
|
685
731
|
export async function runProductionPendingSpawnPass() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"focus-poller-spawn.js","sourceRoot":"","sources":["../../src/focus/focus-poller-spawn.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"focus-poller-spawn.js","sourceRoot":"","sources":["../../src/focus/focus-poller-spawn.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"focus-poller-state.d.ts","sourceRoot":"","sources":["../../src/focus/focus-poller-state.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"focus-poller-state.d.ts","sourceRoot":"","sources":["../../src/focus/focus-poller-state.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAEnD;;;;;GAKG;AACH,MAAM,MAAM,SAAS,GAAG,MAAM,GAAG,YAAY,GAAG,aAAa,CAAC;AAE9D,8DAA8D;AAC9D,eAAO,MAAM,gBAAgB,QAAQ,CAAC;AAEtC,mFAAmF;AACnF,eAAO,MAAM,yBAAyB,QAAgB,CAAC;AAEvD,8FAA8F;AAC9F,eAAO,MAAM,4BAA4B,KAAK,CAAC;AAE/C,eAAO,MAAM,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAa,CAAC;AACvD,eAAO,IAAI,YAAY,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,GAAG,IAAW,CAAC;AACtE,eAAO,IAAI,SAAS,EAAE,SAAkB,CAAC;AACzC,eAAO,IAAI,kBAAkB,QAAI,CAAC;AAClC,eAAO,IAAI,8BAA8B,QAAI,CAAC;AAE9C;;;;GAIG;AACH,eAAO,IAAI,mBAAmB,QAAI,CAAC;AAEnC;;;GAGG;AACH,eAAO,MAAM,iBAAiB,aAAoB,CAAC;AAEnD;;;;;;GAMG;AACH,eAAO,MAAM,yBAAyB,qBAA4B,CAAC;AAEnE,wBAAgB,eAAe,CAAC,KAAK,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,GAAG,IAAI,GAAG,IAAI,CAElF;AAED,wBAAgB,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,CAEnD;AAED,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAEzD;AAED,wBAAgB,iCAAiC,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAErE;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAE1D;AAED,oFAAoF;AACpF,wBAAgB,uBAAuB,IAAI,MAAM,CAEhD"}
|
|
@@ -1,23 +1,5 @@
|
|
|
1
1
|
// PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
|
|
2
|
-
// Pinned by: packages/daemon/src/
|
|
3
|
-
// packages/daemon/src/completion/review-cycle-budget/review-cycle-cap-regression.test.ts,
|
|
4
|
-
// packages/daemon/src/focus/awaiting-slot.test.ts,
|
|
5
|
-
// packages/daemon/src/focus/focus-poller-product-poll.test.ts,
|
|
6
|
-
// packages/daemon/src/focus/gaps-found-hands-to-coding.test.ts,
|
|
7
|
-
// packages/daemon/src/focus/held-review-window-not-stranded.test.ts,
|
|
8
|
-
// packages/daemon/src/focus/parked-shortfall-spawn.test.ts,
|
|
9
|
-
// packages/daemon/src/focus/pending-review-approved-head.test.ts,
|
|
10
|
-
// packages/daemon/src/focus/pending-spawn-review-next-step.test.ts,
|
|
11
|
-
// packages/daemon/src/focus/ready-focus-no-work-spawn.test.ts,
|
|
12
|
-
// packages/daemon/src/focus/session-health-poll-sweep.test.ts,
|
|
13
|
-
// packages/daemon/src/focus/unchanged-reviewed-head.test.ts,
|
|
14
|
-
// packages/daemon/src/focus/unclaimed-notice-coding-precedence.test.ts,
|
|
15
|
-
// packages/daemon/src/integration/approved-head-gate-failure-respawn-regression.test.ts,
|
|
16
|
-
// packages/daemon/src/integration/approved-head-hold-release-regression.test.ts,
|
|
17
|
-
// packages/daemon/src/integration/failed-verdict-review-exit-respawn-regression.test.ts,
|
|
18
|
-
// packages/daemon/src/integration/failed-verdict-review-loop-regression.test.ts,
|
|
19
|
-
// packages/daemon/src/integration/shortfall-park-incident-regression.test.ts,
|
|
20
|
-
// packages/daemon/src/spawn/review-hold-park-shortfall.test.ts
|
|
2
|
+
// Pinned by: 23 tests -- run: npm run gen:pinned-by -- --list packages/daemon/src/focus/focus-poller-state.ts
|
|
21
3
|
// PINNED-BY-END
|
|
22
4
|
/** Polling interval in milliseconds (default: 30 seconds). */
|
|
23
5
|
export const POLL_INTERVAL_MS = 30000;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"focus-poller-state.js","sourceRoot":"","sources":["../../src/focus/focus-poller-state.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,
|
|
1
|
+
{"version":3,"file":"focus-poller-state.js","sourceRoot":"","sources":["../../src/focus/focus-poller-state.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,8GAA8G;AAC9G,gBAAgB;AAyBhB,8DAA8D;AAC9D,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAEtC,mFAAmF;AACnF,MAAM,CAAC,MAAM,yBAAyB,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC;AAEvD,8FAA8F;AAC9F,MAAM,CAAC,MAAM,4BAA4B,GAAG,EAAE,CAAC;AAE/C,MAAM,CAAC,MAAM,KAAK,GAA2B,IAAI,GAAG,EAAE,CAAC;AACvD,MAAM,CAAC,IAAI,YAAY,GAA0C,IAAI,CAAC;AACtE,MAAM,CAAC,IAAI,SAAS,GAAc,MAAM,CAAC;AACzC,MAAM,CAAC,IAAI,kBAAkB,GAAG,CAAC,CAAC;AAClC,MAAM,CAAC,IAAI,8BAA8B,GAAG,CAAC,CAAC;AAE9C;;;;GAIG;AACH,MAAM,CAAC,IAAI,mBAAmB,GAAG,CAAC,CAAC;AAEnC;;;GAGG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;AAEnD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAAkB,CAAC;AAEnE,MAAM,UAAU,eAAe,CAAC,KAA4C;IAC1E,YAAY,GAAG,KAAK,CAAC;AACvB,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAgB;IAC3C,SAAS,GAAG,KAAK,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,KAAa;IACjD,kBAAkB,GAAG,KAAK,CAAC;AAC7B,CAAC;AAED,MAAM,UAAU,iCAAiC,CAAC,KAAa;IAC7D,8BAA8B,GAAG,KAAK,CAAC;AACzC,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,KAAa;IAClD,mBAAmB,GAAG,KAAK,CAAC;AAC9B,CAAC;AAED,oFAAoF;AACpF,MAAM,UAAU,uBAAuB;IACrC,OAAO,mBAAmB,CAAC;AAC7B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"focus-poller.d.ts","sourceRoot":"","sources":["../../src/focus/focus-poller.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"focus-poller.d.ts","sourceRoot":"","sources":["../../src/focus/focus-poller.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,7 +4,8 @@
|
|
|
4
4
|
// packages/daemon/src/focus/migration-claim-poll-wiring.test.ts,
|
|
5
5
|
// packages/daemon/src/focus/session-close-producers.test.ts,
|
|
6
6
|
// packages/daemon/src/focus/session-health-passes.test.ts,
|
|
7
|
-
// packages/daemon/src/focus/session-health-poll-sweep.test.ts
|
|
7
|
+
// packages/daemon/src/focus/session-health-poll-sweep.test.ts,
|
|
8
|
+
// packages/daemon/src/tower/tower-entrypoints.test.ts
|
|
8
9
|
// PINNED-BY-END
|
|
9
10
|
import { getAgentRoles } from '../queries/org-config/roles.js';
|
|
10
11
|
import { checkPausedDeliveriesForRevival } from '../delivery/paused-revival.js';
|