@telora/daemon 0.24.25 → 0.24.26
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build-info.json +9 -3
- package/dist/audit/audit-prompt.d.ts.map +1 -1
- package/dist/audit/audit-prompt.js +15 -0
- package/dist/audit/audit-prompt.js.map +1 -1
- package/dist/completion/completion-event/event.d.ts +4 -3
- package/dist/completion/completion-event/event.d.ts.map +1 -1
- package/dist/completion/completion-event/event.js.map +1 -1
- package/dist/completion/review-cycle-budget/review-cycle-cap.d.ts +19 -11
- package/dist/completion/review-cycle-budget/review-cycle-cap.d.ts.map +1 -1
- package/dist/completion/review-cycle-budget/review-cycle-cap.js +36 -36
- package/dist/completion/review-cycle-budget/review-cycle-cap.js.map +1 -1
- package/dist/completion/review-cycle-budget/review-loop-detection.d.ts +101 -0
- package/dist/completion/review-cycle-budget/review-loop-detection.d.ts.map +1 -0
- package/dist/completion/review-cycle-budget/review-loop-detection.js +105 -0
- package/dist/completion/review-cycle-budget/review-loop-detection.js.map +1 -0
- package/dist/completion/review-cycle-budget/spent-budget-release.d.ts +70 -0
- package/dist/completion/review-cycle-budget/spent-budget-release.d.ts.map +1 -0
- package/dist/completion/review-cycle-budget/spent-budget-release.js +98 -0
- package/dist/completion/review-cycle-budget/spent-budget-release.js.map +1 -0
- package/dist/completion/review-exit/review-defect-detector.d.ts +71 -49
- package/dist/completion/review-exit/review-defect-detector.d.ts.map +1 -1
- package/dist/completion/review-exit/review-defect-detector.js +75 -69
- package/dist/completion/review-exit/review-defect-detector.js.map +1 -1
- package/dist/completion/review-exit/review-exit-attribution.d.ts +1 -1
- package/dist/completion/review-exit/review-exit-attribution.js +1 -1
- package/dist/completion/review-exit/review-exit-deps.d.ts +5 -2
- package/dist/completion/review-exit/review-exit-deps.d.ts.map +1 -1
- package/dist/completion/review-exit/review-exit-deps.js +1 -1
- package/dist/completion/review-exit/review-exit-evidence.d.ts +10 -1
- package/dist/completion/review-exit/review-exit-evidence.d.ts.map +1 -1
- package/dist/completion/review-exit/review-exit-evidence.js +17 -14
- package/dist/completion/review-exit/review-exit-evidence.js.map +1 -1
- package/dist/completion/review-exit/review-exit-foreign-findings.d.ts +1 -1
- package/dist/completion/review-exit/review-exit-foreign-findings.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 +12 -8
- package/dist/completion/review-exit/review-exit-phase.js.map +1 -1
- package/dist/completion/state-cascade/review-next-step.d.ts +12 -3
- package/dist/completion/state-cascade/review-next-step.d.ts.map +1 -1
- package/dist/completion/state-cascade/review-next-step.js +10 -1
- package/dist/completion/state-cascade/review-next-step.js.map +1 -1
- package/dist/completion/state-cascade/standing-approval-convergence.d.ts +1 -1
- package/dist/completion/state-cascade/standing-approval-convergence.d.ts.map +1 -1
- package/dist/completion/state-cascade/standing-approval-convergence.js +10 -4
- package/dist/completion/state-cascade/standing-approval-convergence.js.map +1 -1
- package/dist/completion/state-cascade/state-cascade.d.ts +3 -0
- package/dist/completion/state-cascade/state-cascade.d.ts.map +1 -1
- package/dist/completion/state-cascade/state-cascade.js +16 -1
- package/dist/completion/state-cascade/state-cascade.js.map +1 -1
- package/dist/completion/team-exit/status-advance-phase.d.ts +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 -4
- package/dist/completion/team-exit/status-advance-phase.js.map +1 -1
- package/dist/completion/team-outcome/apply-turn.d.ts.map +1 -1
- package/dist/completion/team-outcome/apply-turn.js +9 -4
- package/dist/completion/team-outcome/apply-turn.js.map +1 -1
- package/dist/completion/team-outcome/decide-turn-entry-rows.d.ts.map +1 -1
- package/dist/completion/team-outcome/decide-turn-entry-rows.js +28 -3
- package/dist/completion/team-outcome/decide-turn-entry-rows.js.map +1 -1
- package/dist/completion/team-outcome/decide.d.ts.map +1 -1
- package/dist/completion/team-outcome/decide.js +1 -0
- package/dist/completion/team-outcome/decide.js.map +1 -1
- package/dist/completion/team-outcome/exit-limits.d.ts +6 -0
- package/dist/completion/team-outcome/exit-limits.d.ts.map +1 -1
- package/dist/completion/team-outcome/exit-limits.js +6 -0
- package/dist/completion/team-outcome/exit-limits.js.map +1 -1
- package/dist/completion/team-outcome/exit-pipeline-state.d.ts +5 -0
- package/dist/completion/team-outcome/exit-pipeline-state.d.ts.map +1 -1
- package/dist/completion/team-outcome/exit-pipeline-state.js.map +1 -1
- package/dist/completion/team-teardown/session-hold-bounds.d.ts +10 -1
- package/dist/completion/team-teardown/session-hold-bounds.d.ts.map +1 -1
- package/dist/completion/team-teardown/session-hold-bounds.js +11 -0
- package/dist/completion/team-teardown/session-hold-bounds.js.map +1 -1
- package/dist/completion/team-teardown/session-hold.d.ts.map +1 -1
- package/dist/completion/team-teardown/session-hold.js +2 -0
- package/dist/completion/team-teardown/session-hold.js.map +1 -1
- package/dist/composition/engine-start-context.d.ts.map +1 -1
- package/dist/composition/engine-start-context.js +9 -1
- package/dist/composition/engine-start-context.js.map +1 -1
- package/dist/composition/execution-spawn-context.d.ts.map +1 -1
- package/dist/composition/execution-spawn-context.js +2 -0
- package/dist/composition/execution-spawn-context.js.map +1 -1
- package/dist/composition/judgement-contexts.d.ts.map +1 -1
- package/dist/composition/judgement-contexts.js +8 -2
- package/dist/composition/judgement-contexts.js.map +1 -1
- package/dist/composition/review-exit-context.d.ts.map +1 -1
- package/dist/composition/review-exit-context.js +2 -0
- package/dist/composition/review-exit-context.js.map +1 -1
- package/dist/composition/review-loop-context.d.ts +28 -0
- package/dist/composition/review-loop-context.d.ts.map +1 -0
- package/dist/composition/review-loop-context.js +147 -0
- package/dist/composition/review-loop-context.js.map +1 -0
- package/dist/composition/runtime-heartbeat-context.d.ts.map +1 -1
- package/dist/composition/runtime-heartbeat-context.js +8 -2
- package/dist/composition/runtime-heartbeat-context.js.map +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/state-cascade-context.d.ts.map +1 -1
- package/dist/composition/state-cascade-context.js +3 -1
- package/dist/composition/state-cascade-context.js.map +1 -1
- package/dist/composition/tower-escalation-context.d.ts +12 -0
- package/dist/composition/tower-escalation-context.d.ts.map +1 -0
- package/dist/composition/tower-escalation-context.js +109 -0
- package/dist/composition/tower-escalation-context.js.map +1 -0
- package/dist/composition/workstation-intervals-context.d.ts +3 -0
- package/dist/composition/workstation-intervals-context.d.ts.map +1 -0
- package/dist/composition/workstation-intervals-context.js +33 -0
- package/dist/composition/workstation-intervals-context.js.map +1 -0
- package/dist/daemon-state/awaiting-slot.d.ts +18 -1
- package/dist/daemon-state/awaiting-slot.d.ts.map +1 -1
- package/dist/daemon-state/awaiting-slot.js +7 -0
- package/dist/daemon-state/awaiting-slot.js.map +1 -1
- package/dist/delivery/delivery-reconciler.d.ts +7 -7
- package/dist/delivery/recorded-concerns.d.ts +63 -28
- package/dist/delivery/recorded-concerns.d.ts.map +1 -1
- package/dist/delivery/recorded-concerns.js +72 -28
- package/dist/delivery/recorded-concerns.js.map +1 -1
- package/dist/directive/directive-queue.d.ts +8 -0
- package/dist/directive/directive-queue.d.ts.map +1 -1
- package/dist/directive/directive-queue.js +1 -1
- package/dist/directive/directive-queue.js.map +1 -1
- package/dist/focus/control-state.d.ts +6 -4
- package/dist/focus/control-state.d.ts.map +1 -1
- package/dist/focus/control-state.js +6 -4
- package/dist/focus/control-state.js.map +1 -1
- package/dist/focus/daemon-contexts-judgement.d.ts +6 -0
- package/dist/focus/daemon-contexts-judgement.d.ts.map +1 -1
- package/dist/focus/daemon-contexts.d.ts +6 -0
- package/dist/focus/daemon-contexts.d.ts.map +1 -1
- package/dist/focus/daemon-contexts.js.map +1 -1
- package/dist/focus/focus-engine.d.ts.map +1 -1
- package/dist/focus/focus-engine.js +3 -1
- package/dist/focus/focus-engine.js.map +1 -1
- package/dist/focus/focus-executor.d.ts.map +1 -1
- package/dist/focus/focus-executor.js +3 -2
- package/dist/focus/focus-executor.js.map +1 -1
- package/dist/focus/focus-loop-registry.d.ts.map +1 -1
- package/dist/focus/focus-loop-registry.js +42 -0
- package/dist/focus/focus-loop-registry.js.map +1 -1
- package/dist/focus/focus-poller-auto-advance.d.ts +4 -2
- package/dist/focus/focus-poller-auto-advance.d.ts.map +1 -1
- package/dist/focus/focus-poller-auto-advance.js +24 -18
- package/dist/focus/focus-poller-auto-advance.js.map +1 -1
- package/dist/focus/focus-poller-spawn.d.ts.map +1 -1
- package/dist/focus/focus-poller-spawn.js +8 -6
- package/dist/focus/focus-poller-spawn.js.map +1 -1
- package/dist/focus/heartbeat.d.ts +9 -2
- package/dist/focus/heartbeat.d.ts.map +1 -1
- package/dist/focus/heartbeat.js +9 -1
- package/dist/focus/heartbeat.js.map +1 -1
- package/dist/focus/pending-directive-gates.d.ts +14 -0
- package/dist/focus/pending-directive-gates.d.ts.map +1 -1
- package/dist/focus/pending-directive-gates.js +25 -1
- package/dist/focus/pending-directive-gates.js.map +1 -1
- package/dist/focus/pending-spawn-pass-deps.d.ts +7 -0
- package/dist/focus/pending-spawn-pass-deps.d.ts.map +1 -1
- package/dist/focus/pending-spawn-review-next-step.d.ts +1 -1
- package/dist/focus/pending-spawn-review-next-step.d.ts.map +1 -1
- package/dist/focus/pending-spawn-review-next-step.js +2 -0
- package/dist/focus/pending-spawn-review-next-step.js.map +1 -1
- package/dist/focus/ready-focus-team-work.d.ts +9 -4
- package/dist/focus/ready-focus-team-work.d.ts.map +1 -1
- package/dist/focus/ready-focus-team-work.js +14 -3
- package/dist/focus/ready-focus-team-work.js.map +1 -1
- package/dist/focus/verify-open-issues.d.ts +3 -2
- package/dist/focus/verify-open-issues.d.ts.map +1 -1
- package/dist/focus/verify-open-issues.js +6 -4
- package/dist/focus/verify-open-issues.js.map +1 -1
- package/dist/focus/workstation-intervals.d.ts +83 -0
- package/dist/focus/workstation-intervals.d.ts.map +1 -0
- package/dist/focus/workstation-intervals.js +81 -0
- package/dist/focus/workstation-intervals.js.map +1 -0
- package/dist/focus-stage-lifecycle/wedge-watchdog.d.ts +5 -2
- package/dist/focus-stage-lifecycle/wedge-watchdog.d.ts.map +1 -1
- package/dist/focus-stage-lifecycle/wedge-watchdog.js +2 -2
- package/dist/focus-stage-lifecycle/wedge-watchdog.js.map +1 -1
- package/dist/prompt-sections/persona-sections.d.ts.map +1 -1
- package/dist/prompt-sections/persona-sections.js +4 -1
- package/dist/prompt-sections/persona-sections.js.map +1 -1
- package/dist/prompt-sections/qa-author-section.d.ts.map +1 -1
- package/dist/prompt-sections/qa-author-section.js +18 -1
- package/dist/prompt-sections/qa-author-section.js.map +1 -1
- package/dist/prompt-sections/scoping-sections.d.ts +0 -12
- package/dist/prompt-sections/scoping-sections.d.ts.map +1 -1
- package/dist/prompt-sections/scoping-sections.js +16 -2
- package/dist/prompt-sections/scoping-sections.js.map +1 -1
- package/dist/prompts/bounded-universals.d.ts +13 -0
- package/dist/prompts/bounded-universals.d.ts.map +1 -0
- package/dist/prompts/bounded-universals.js +32 -0
- package/dist/prompts/bounded-universals.js.map +1 -0
- package/dist/queries/api-client/shared.d.ts +2 -1
- package/dist/queries/api-client/shared.d.ts.map +1 -1
- package/dist/queries/api-client/shared.js +31 -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 +1 -0
- package/dist/queries/deliveries/issues.js.map +1 -1
- package/dist/queries/escalations/escalation-consumption.d.ts +13 -0
- package/dist/queries/escalations/escalation-consumption.d.ts.map +1 -1
- package/dist/queries/escalations/escalation-consumption.js +12 -2
- package/dist/queries/escalations/escalation-consumption.js.map +1 -1
- package/dist/queries/escalations/tower-escalations.d.ts +82 -0
- package/dist/queries/escalations/tower-escalations.d.ts.map +1 -0
- package/dist/queries/escalations/tower-escalations.js +97 -0
- package/dist/queries/escalations/tower-escalations.js.map +1 -0
- package/dist/queries/focus-review/recorded-concern-ids.d.ts +48 -11
- package/dist/queries/focus-review/recorded-concern-ids.d.ts.map +1 -1
- package/dist/queries/focus-review/recorded-concern-ids.js +42 -12
- package/dist/queries/focus-review/recorded-concern-ids.js.map +1 -1
- package/dist/queries/focus-review/review-criterion-verdicts.d.ts +37 -0
- package/dist/queries/focus-review/review-criterion-verdicts.d.ts.map +1 -0
- package/dist/queries/focus-review/review-criterion-verdicts.js +64 -0
- package/dist/queries/focus-review/review-criterion-verdicts.js.map +1 -0
- package/dist/queries/focus-review/review-finding-facts.d.ts +18 -6
- package/dist/queries/focus-review/review-finding-facts.d.ts.map +1 -1
- package/dist/queries/focus-review/review-finding-facts.js +21 -8
- package/dist/queries/focus-review/review-finding-facts.js.map +1 -1
- package/dist/queries/focuses/ended-arm.d.ts +56 -13
- package/dist/queries/focuses/ended-arm.d.ts.map +1 -1
- package/dist/queries/focuses/ended-arm.js +40 -14
- package/dist/queries/focuses/ended-arm.js.map +1 -1
- package/dist/queries/focuses/focus-criteria-standing.d.ts +12 -0
- package/dist/queries/focuses/focus-criteria-standing.d.ts.map +1 -1
- package/dist/queries/focuses/focus-criteria-standing.js +13 -0
- package/dist/queries/focuses/focus-criteria-standing.js.map +1 -1
- package/dist/queries/focuses/focus-discovery.d.ts +14 -3
- package/dist/queries/focuses/focus-discovery.d.ts.map +1 -1
- package/dist/queries/focuses/focus-discovery.js +2 -19
- package/dist/queries/focuses/focus-discovery.js.map +1 -1
- package/dist/queries/focuses/focuses.d.ts +15 -12
- package/dist/queries/focuses/focuses.d.ts.map +1 -1
- package/dist/queries/focuses/focuses.js +15 -13
- package/dist/queries/focuses/focuses.js.map +1 -1
- package/dist/queries/sessions/sessions.d.ts.map +1 -1
- package/dist/queries/sessions/sessions.js +2 -1
- package/dist/queries/sessions/sessions.js.map +1 -1
- package/dist/queries/tower-decisions/tower-decisions.d.ts +103 -0
- package/dist/queries/tower-decisions/tower-decisions.d.ts.map +1 -0
- package/dist/queries/tower-decisions/tower-decisions.js +138 -0
- package/dist/queries/tower-decisions/tower-decisions.js.map +1 -0
- package/dist/queries/wire-schemas/schemas.d.ts +2 -0
- package/dist/queries/wire-schemas/schemas.d.ts.map +1 -1
- package/dist/queries/wire-schemas/schemas.js +8 -2
- package/dist/queries/wire-schemas/schemas.js.map +1 -1
- package/dist/queries/workstation-intervals/workstation-intervals.d.ts +52 -0
- package/dist/queries/workstation-intervals/workstation-intervals.d.ts.map +1 -0
- package/dist/queries/workstation-intervals/workstation-intervals.js +49 -0
- package/dist/queries/workstation-intervals/workstation-intervals.js.map +1 -0
- package/dist/resolvers/escalation-answers.d.ts +31 -0
- package/dist/resolvers/escalation-answers.d.ts.map +1 -1
- package/dist/resolvers/escalation-answers.js +31 -17
- package/dist/resolvers/escalation-answers.js.map +1 -1
- package/dist/resolvers/focus-criteria-standing.d.ts.map +1 -1
- package/dist/resolvers/focus-criteria-standing.js +20 -0
- package/dist/resolvers/focus-criteria-standing.js.map +1 -1
- package/dist/shell/unified-engine-lifecycle.d.ts +11 -1
- package/dist/shell/unified-engine-lifecycle.d.ts.map +1 -1
- package/dist/shell/unified-engine-lifecycle.js +10 -1
- package/dist/shell/unified-engine-lifecycle.js.map +1 -1
- package/dist/spawn/directive-dispatch.d.ts.map +1 -1
- package/dist/spawn/directive-dispatch.js +1 -0
- package/dist/spawn/directive-dispatch.js.map +1 -1
- package/dist/spawn/lead-continuation.d.ts +4 -3
- package/dist/spawn/lead-continuation.d.ts.map +1 -1
- package/dist/spawn/lead-continuation.js.map +1 -1
- package/dist/spawn/live-answer-delivery.d.ts +53 -0
- package/dist/spawn/live-answer-delivery.d.ts.map +1 -0
- package/dist/spawn/live-answer-delivery.js +26 -0
- package/dist/spawn/live-answer-delivery.js.map +1 -0
- package/dist/spawn/routing-decider-spawn.d.ts +64 -2
- package/dist/spawn/routing-decider-spawn.d.ts.map +1 -1
- package/dist/spawn/routing-decider-spawn.js +65 -20
- package/dist/spawn/routing-decider-spawn.js.map +1 -1
- package/dist/spawn/worktree-session.d.ts +7 -5
- package/dist/spawn/worktree-session.d.ts.map +1 -1
- package/dist/spawn/worktree-session.js +11 -7
- package/dist/spawn/worktree-session.js.map +1 -1
- package/dist/supervision/review-cycle-cap-hold.d.ts +11 -5
- package/dist/supervision/review-cycle-cap-hold.d.ts.map +1 -1
- package/dist/supervision/review-cycle-cap-hold.js +29 -11
- package/dist/supervision/review-cycle-cap-hold.js.map +1 -1
- package/dist/supervision/review-loop-detector.d.ts +48 -0
- package/dist/supervision/review-loop-detector.d.ts.map +1 -0
- package/dist/supervision/review-loop-detector.js +13 -0
- package/dist/supervision/review-loop-detector.js.map +1 -0
- package/dist/supervision/review-loop-hold.d.ts +29 -0
- package/dist/supervision/review-loop-hold.d.ts.map +1 -0
- package/dist/supervision/review-loop-hold.js +99 -0
- package/dist/supervision/review-loop-hold.js.map +1 -0
- package/dist/supervision/stall-detector-config.d.ts +8 -0
- package/dist/supervision/stall-detector-config.d.ts.map +1 -1
- package/dist/supervision/stall-detector-config.js +14 -3
- package/dist/supervision/stall-detector-config.js.map +1 -1
- package/dist/supervision/stop-registry.d.ts +3 -0
- package/dist/supervision/stop-registry.d.ts.map +1 -1
- package/dist/supervision/stop-registry.js +3 -1
- package/dist/supervision/stop-registry.js.map +1 -1
- package/dist/supervision/stop-rows-review-loop.d.ts +35 -0
- package/dist/supervision/stop-rows-review-loop.d.ts.map +1 -0
- package/dist/supervision/stop-rows-review-loop.js +150 -0
- package/dist/supervision/stop-rows-review-loop.js.map +1 -0
- package/dist/supervision/stop-rows-team-session.d.ts +1 -1
- package/dist/supervision/stop-rows-team-session.d.ts.map +1 -1
- package/dist/supervision/stop-rows-team-session.js.map +1 -1
- package/dist/supervision/unreviewed-settle-detector.d.ts +7 -2
- package/dist/supervision/unreviewed-settle-detector.d.ts.map +1 -1
- package/dist/supervision/unreviewed-settle-detector.js +15 -2
- package/dist/supervision/unreviewed-settle-detector.js.map +1 -1
- package/dist/templates/agents-md.d.ts.map +1 -1
- package/dist/templates/agents-md.js +1 -0
- package/dist/templates/agents-md.js.map +1 -1
- package/dist/templates/claude-md.d.ts +1 -1
- package/dist/templates/claude-md.d.ts.map +1 -1
- package/dist/templates/claude-md.js +12 -0
- package/dist/templates/claude-md.js.map +1 -1
- package/dist/testing/fixtures/api-client.js +1 -1
- package/dist/testing/fixtures/index.js +1 -1
- package/dist/testing/fixtures/pending-spawn-world.d.ts +4 -0
- package/dist/testing/fixtures/pending-spawn-world.d.ts.map +1 -1
- package/dist/testing/fixtures/pending-spawn-world.js +15 -2
- package/dist/testing/fixtures/pending-spawn-world.js.map +1 -1
- package/dist/testing/fixtures/recording-api-client.js +1 -1
- package/dist/testing/fixtures/review-exit-deps.d.ts.map +1 -1
- package/dist/testing/fixtures/review-exit-deps.js +3 -1
- package/dist/testing/fixtures/review-exit-deps.js.map +1 -1
- package/dist/testing/fixtures/review-loop.d.ts +19 -0
- package/dist/testing/fixtures/review-loop.d.ts.map +1 -0
- package/dist/testing/fixtures/review-loop.js +30 -0
- package/dist/testing/fixtures/review-loop.js.map +1 -0
- package/dist/testing/fixtures/shortfall-rework-hold-deps.d.ts.map +1 -1
- package/dist/testing/fixtures/shortfall-rework-hold-deps.js +1 -0
- package/dist/testing/fixtures/shortfall-rework-hold-deps.js.map +1 -1
- package/dist/testing/fixtures/tower-loop.d.ts +28 -0
- package/dist/testing/fixtures/tower-loop.d.ts.map +1 -0
- package/dist/testing/fixtures/tower-loop.js +83 -0
- package/dist/testing/fixtures/tower-loop.js.map +1 -0
- package/dist/tower/tower-escalation-gather.d.ts +33 -0
- package/dist/tower/tower-escalation-gather.d.ts.map +1 -0
- package/dist/tower/tower-escalation-gather.js +38 -0
- package/dist/tower/tower-escalation-gather.js.map +1 -0
- package/dist/tower/tower-escalation-prompt.d.ts +62 -0
- package/dist/tower/tower-escalation-prompt.d.ts.map +1 -0
- package/dist/tower/tower-escalation-prompt.js +130 -0
- package/dist/tower/tower-escalation-prompt.js.map +1 -0
- package/dist/tower/tower-escalation-routing.d.ts +49 -0
- package/dist/tower/tower-escalation-routing.d.ts.map +1 -0
- package/dist/tower/tower-escalation-routing.js +53 -0
- package/dist/tower/tower-escalation-routing.js.map +1 -0
- package/dist/tower/tower-escalation-session.d.ts +149 -0
- package/dist/tower/tower-escalation-session.d.ts.map +1 -0
- package/dist/tower/tower-escalation-session.js +238 -0
- package/dist/tower/tower-escalation-session.js.map +1 -0
- package/dist/tower/tower-supervisor-history.d.ts +129 -0
- package/dist/tower/tower-supervisor-history.d.ts.map +1 -0
- package/dist/tower/tower-supervisor-history.js +217 -0
- package/dist/tower/tower-supervisor-history.js.map +1 -0
- package/dist/tower/tower-supervisor-prompt.d.ts +21 -0
- package/dist/tower/tower-supervisor-prompt.d.ts.map +1 -0
- package/dist/tower/tower-supervisor-prompt.js +205 -0
- package/dist/tower/tower-supervisor-prompt.js.map +1 -0
- package/dist/tower/tower-supervisor-session.d.ts +220 -0
- package/dist/tower/tower-supervisor-session.d.ts.map +1 -0
- package/dist/tower/tower-supervisor-session.js +307 -0
- package/dist/tower/tower-supervisor-session.js.map +1 -0
- package/dist/tower/tower-supervisor.d.ts +86 -0
- package/dist/tower/tower-supervisor.d.ts.map +1 -0
- package/dist/tower/tower-supervisor.js +8 -0
- package/dist/tower/tower-supervisor.js.map +1 -0
- package/dist/types/index.js +1 -1
- package/dist/verify/outcome-routing/verification-rework-issue.d.ts +4 -4
- package/dist/verify/outcome-routing/verification-rework-issue.d.ts.map +1 -1
- package/dist/verify/outcome-routing/verification-rework-issue.js +16 -6
- package/dist/verify/outcome-routing/verification-rework-issue.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"review-finding-facts.d.ts","sourceRoot":"","sources":["../../../src/queries/focus-review/review-finding-facts.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"review-finding-facts.d.ts","sourceRoot":"","sources":["../../../src/queries/focus-review/review-finding-facts.ts"],"names":[],"mappings":"AAWA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB;;;;;GAKG;AACH,MAAM,MAAM,kBAAkB,GAAG,UAAU,GAAG,SAAS,CAAC;AAIxD,wGAAwG;AACxG,eAAO,MAAM,qCAAqC;;;;;;iBAGlC,CAAC;AAEjB,sFAAsF;AACtF,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,cAAc,EAAE,GAAG,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;CACjD;AAED,wFAAwF;AACxF,wBAAgB,oBAAoB,CAClC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,OAAO,qCAAqC,CAAC,GAC9D,uBAAuB,CAKzB;AAED,sDAAsD;AACtD,MAAM,MAAM,+BAA+B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qCAAqC,CAAC,CAAC;AAEpG;;;GAGG;AACH,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,+BAA+B,CAAC,GAClE,OAAO,CAAC,uBAAuB,CAAC,CAElC;AAED,kGAAkG;AAClG,wBAAsB,0BAA0B,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,uBAAuB,CAAC,CAIlG"}
|
|
@@ -2,8 +2,10 @@
|
|
|
2
2
|
// Pinned by: packages/daemon/src/completion/review-exit/review-finding-blocking-predicate.test.ts,
|
|
3
3
|
// packages/daemon/src/completion/review-exit/review-finding-class-routing.test.ts,
|
|
4
4
|
// packages/daemon/src/delivery/recorded-concerns.test.ts,
|
|
5
|
+
// packages/daemon/src/integration/f114-review-concern-never-holds-done-regression.test.ts,
|
|
5
6
|
// packages/daemon/src/integration/reopening-routing-regression.test.ts,
|
|
6
7
|
// packages/daemon/src/prompt/recorded-concerns-not-owed-work.test.ts,
|
|
8
|
+
// packages/daemon/src/queries/focus-review/review-finding-class-parity.test.ts,
|
|
7
9
|
// packages/daemon/src/spawn/resolve-review-context.test.ts
|
|
8
10
|
// PINNED-BY-END
|
|
9
11
|
/**
|
|
@@ -15,12 +17,17 @@
|
|
|
15
17
|
* `focus_review_filed_issue_ids` returns `issueIds: string[]` and, from the edge
|
|
16
18
|
* that records finding classes on, `findingClasses: Record<issueId,
|
|
17
19
|
* 'blocking' | 'concern'>`. An OLDER edge omits `findingClasses`; that reads as
|
|
18
|
-
* an empty map,
|
|
19
|
-
*
|
|
20
|
-
*
|
|
20
|
+
* an empty map, and under the one rule (recorded-concern-ids.ts findingClassOf)
|
|
21
|
+
* every review-filed issue with no recorded 'blocking' is a concern -- the
|
|
22
|
+
* absence of a naming is never a naming.
|
|
21
23
|
*
|
|
22
|
-
* The response is validated (zod) -- a malformed class value throws
|
|
23
|
-
*
|
|
24
|
+
* The response is validated (zod) -- a malformed class value throws.
|
|
25
|
+
*
|
|
26
|
+
* A READ THAT FAILS THROWS. No earlier answer stands in for it: the facts
|
|
27
|
+
* change whenever a review is recorded, and facts kept from before that review
|
|
28
|
+
* can call a finding it re-judged blocking a concern. Every reader that cannot
|
|
29
|
+
* read the classes DEFERS its decision instead (delivery/recorded-concerns.ts;
|
|
30
|
+
* the review exit's findingFactsUnreadable).
|
|
24
31
|
*
|
|
25
32
|
* @module queries/focus-review/review-finding-facts
|
|
26
33
|
*/
|
|
@@ -39,9 +46,15 @@ export function toReviewFindingFacts(response) {
|
|
|
39
46
|
findingClasses: new Map(Object.entries(response.findingClasses ?? {})),
|
|
40
47
|
};
|
|
41
48
|
}
|
|
42
|
-
/**
|
|
49
|
+
/**
|
|
50
|
+
* Read the focus-wide review-filed issue ids AND their recorded finding classes
|
|
51
|
+
* through `read`. Throws when the read fails (module header).
|
|
52
|
+
*/
|
|
53
|
+
export async function readFocusReviewFindingFactsVia(focusId, read) {
|
|
54
|
+
return toReviewFindingFacts(await read(focusId));
|
|
55
|
+
}
|
|
56
|
+
/** Read the focus-wide review-filed issue ids AND their recorded finding classes over the API. */
|
|
43
57
|
export async function getFocusReviewFindingFacts(focusId) {
|
|
44
|
-
|
|
45
|
-
return toReviewFindingFacts(response);
|
|
58
|
+
return readFocusReviewFindingFactsVia(focusId, (id) => callApiValidated('focus_review_filed_issue_ids', FocusReviewFindingFactsResponseSchema, { focusId: id }));
|
|
46
59
|
}
|
|
47
60
|
//# sourceMappingURL=review-finding-facts.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"review-finding-facts.js","sourceRoot":"","sources":["../../../src/queries/focus-review/review-finding-facts.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,mGAAmG;AACnG,qFAAqF;AACrF,4DAA4D;AAC5D,0EAA0E;AAC1E,wEAAwE;AACxE,6DAA6D;AAC7D,gBAAgB;AAEhB
|
|
1
|
+
{"version":3,"file":"review-finding-facts.js","sourceRoot":"","sources":["../../../src/queries/focus-review/review-finding-facts.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,mGAAmG;AACnG,qFAAqF;AACrF,4DAA4D;AAC5D,6FAA6F;AAC7F,0EAA0E;AAC1E,wEAAwE;AACxE,kFAAkF;AAClF,6DAA6D;AAC7D,gBAAgB;AAEhB;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAU3D,MAAM,wBAAwB,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,CAAC;AAEjE,wGAAwG;AACxG,MAAM,CAAC,MAAM,qCAAqC,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5D,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,OAAO,EAAE;IACvC,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,wBAAwB,CAAC,CAAC,OAAO,EAAE;CACzE,CAAC,CAAC,WAAW,EAAE,CAAC;AAQjB,wFAAwF;AACxF,MAAM,UAAU,oBAAoB,CAClC,QAA+D;IAE/D,OAAO;QACL,QAAQ,EAAE,QAAQ,CAAC,QAAQ,IAAI,EAAE;QACjC,cAAc,EAAE,IAAI,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,IAAI,EAAE,CAAC,CAAC;KACvE,CAAC;AACJ,CAAC;AAKD;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,8BAA8B,CAClD,OAAe,EACf,IAAmE;IAEnE,OAAO,oBAAoB,CAAC,MAAM,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,kGAAkG;AAClG,MAAM,CAAC,KAAK,UAAU,0BAA0B,CAAC,OAAe;IAC9D,OAAO,8BAA8B,CAAC,OAAO,EAAE,CAAC,EAAE,EAAE,EAAE,CACpD,gBAAgB,CAAC,8BAA8B,EAAE,qCAAqC,EAAE,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,CACzG,CAAC;AACJ,CAAC"}
|
|
@@ -16,20 +16,37 @@
|
|
|
16
16
|
* The ended-arm record that rides a release, stating WHY the daemon ended the
|
|
17
17
|
* arm and what was still outstanding.
|
|
18
18
|
*
|
|
19
|
-
*
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
19
|
+
* EVERY daemon release carries one (releaseFocusArm takes it as a required
|
|
20
|
+
* argument): no focus is un-armed by the daemon with a null reason. The daemon
|
|
21
|
+
* writes TWO reasons, 'review_budget_spent' and 'run_finished_unreviewed', each
|
|
22
|
+
* in the SAME call as the release (the edge refuses it otherwise,
|
|
23
|
+
* handlers/focus/arm-ended.ts) so the role-less focus is never readable without
|
|
24
|
+
* its reason, and so the record can never be mistaken for the operator stop
|
|
25
|
+
* (operator_stopped_at, which these paths do not write).
|
|
24
26
|
*
|
|
25
27
|
* `detail` carries only what the DAEMON counted. The edge adds the acceptance
|
|
26
28
|
* criteria the last verdict-bearing review called not_met -- it owns the shape
|
|
27
29
|
* that record lives in -- so this daemon never parses a review summary.
|
|
28
|
-
*
|
|
29
|
-
* ARM_ENDED_REVIEW_BUDGET_SPENT is a value the DB CHECK constraint on
|
|
30
|
-
* product_focuses.arm_ended_reason allows and the wedge diagnosis reads back.
|
|
31
30
|
*/
|
|
32
31
|
export declare const ARM_ENDED_REVIEW_BUDGET_SPENT = "review_budget_spent";
|
|
32
|
+
/**
|
|
33
|
+
* The UNREVIEWED SETTLE end: every delivery settled while the review window the
|
|
34
|
+
* focus opened never received a verdict, so the daemon released the stranded
|
|
35
|
+
* arm and kept the window open (supervision/unreviewed-settle-detector.ts). A
|
|
36
|
+
* finish -- the covered work is terminal -- but one whose review is still owed,
|
|
37
|
+
* which a re-arm runs.
|
|
38
|
+
*/
|
|
39
|
+
export declare const ARM_ENDED_RUN_FINISHED_UNREVIEWED = "run_finished_unreviewed";
|
|
40
|
+
/**
|
|
41
|
+
* The LIFECYCLE end with nothing left over: every delivery the arm covered is
|
|
42
|
+
* terminal and the clear discounted no recorded work. Written ONLY by SQL -- the
|
|
43
|
+
* lifecycle arm clear (auto_terminate_focus_team /
|
|
44
|
+
* clear_focus_team_on_review_window_close, migration 20261020133821) in the same
|
|
45
|
+
* write that nulls the role, whatever closed the review window (a verdict, a
|
|
46
|
+
* deadline, the hand-off breaker, the spent-budget path) -- and never by this
|
|
47
|
+
* daemon.
|
|
48
|
+
*/
|
|
49
|
+
export declare const ARM_ENDED_RUN_FINISHED = "run_finished";
|
|
33
50
|
/**
|
|
34
51
|
* The LIFECYCLE end: the run finished every delivery its arm covered while one
|
|
35
52
|
* or more deliveries recorded as new intent under it still rest at planning.
|
|
@@ -45,12 +62,13 @@ export declare const ARM_ENDED_REVIEW_BUDGET_SPENT = "review_budget_spent";
|
|
|
45
62
|
*/
|
|
46
63
|
export declare const ARM_ENDED_RUN_FINISHED_RECORDED_WORK_WAITS = "run_finished_recorded_work_waits";
|
|
47
64
|
/** Every reason product_focuses.arm_ended_reason may hold (the DB CHECK set). */
|
|
48
|
-
export type ArmEndedReason = typeof ARM_ENDED_REVIEW_BUDGET_SPENT | typeof ARM_ENDED_RUN_FINISHED_RECORDED_WORK_WAITS;
|
|
65
|
+
export type ArmEndedReason = typeof ARM_ENDED_REVIEW_BUDGET_SPENT | typeof ARM_ENDED_RUN_FINISHED | typeof ARM_ENDED_RUN_FINISHED_RECORDED_WORK_WAITS | typeof ARM_ENDED_RUN_FINISHED_UNREVIEWED;
|
|
49
66
|
/**
|
|
50
|
-
* True when the recorded reason
|
|
51
|
-
*
|
|
52
|
-
* budget, for no reason at all, and
|
|
53
|
-
* (an unknown reason is never read as
|
|
67
|
+
* True when the recorded reason says the run FINISHED its covered work: the
|
|
68
|
+
* lifecycle clear (with or without recorded work waiting for the next arm) or
|
|
69
|
+
* the unreviewed settle. False for a spent budget, for no reason at all, and
|
|
70
|
+
* for any value this daemon does not know (an unknown reason is never read as
|
|
71
|
+
* a finish).
|
|
54
72
|
*/
|
|
55
73
|
export declare function isRunFinishedArmEnd(reason: string | null | undefined): boolean;
|
|
56
74
|
/** One delivery recorded as new intent under the arm that ended, as the record names it. */
|
|
@@ -76,6 +94,15 @@ export interface RecordedWorkWaitsDetail {
|
|
|
76
94
|
* unnamed. A missing or non-numeric count falls back to the parsed list length.
|
|
77
95
|
*/
|
|
78
96
|
export declare function parseRecordedWorkWaitsDetail(detail: unknown): RecordedWorkWaitsDetail | null;
|
|
97
|
+
/**
|
|
98
|
+
* How the spent-budget record's findings were arrived at. Absent = measured at
|
|
99
|
+
* the review exit that spent the budget. 'not_measured' = the release was
|
|
100
|
+
* re-attempted by the backstop (completion/review-cycle-budget/spent-budget-release.ts)
|
|
101
|
+
* with no exit measurement in hand, so the empty lists are an ABSENCE, not a
|
|
102
|
+
* measurement.
|
|
103
|
+
*/
|
|
104
|
+
export type SpentBudgetFindingsBasis = 'not_measured';
|
|
105
|
+
/** The spent-review-budget record (reason 'review_budget_spent'). */
|
|
79
106
|
export interface EndedArmRecord {
|
|
80
107
|
reason: typeof ARM_ENDED_REVIEW_BUDGET_SPENT;
|
|
81
108
|
detail: {
|
|
@@ -102,6 +129,22 @@ export interface EndedArmRecord {
|
|
|
102
129
|
title: string;
|
|
103
130
|
deliveryId: string | null;
|
|
104
131
|
}>;
|
|
132
|
+
/** See SpentBudgetFindingsBasis; absent when the lists were measured at the exit. */
|
|
133
|
+
findingsBasis?: SpentBudgetFindingsBasis;
|
|
134
|
+
};
|
|
135
|
+
}
|
|
136
|
+
/** The unreviewed-settle record (reason 'run_finished_unreviewed'). */
|
|
137
|
+
export interface UnreviewedSettleArmRecord {
|
|
138
|
+
reason: typeof ARM_ENDED_RUN_FINISHED_UNREVIEWED;
|
|
139
|
+
detail: {
|
|
140
|
+
/** The settled deliveries whose review verdict was never rendered. */
|
|
141
|
+
settledDeliveries: Array<{
|
|
142
|
+
id: string;
|
|
143
|
+
name: string;
|
|
144
|
+
executionStatus: string | null;
|
|
145
|
+
}>;
|
|
105
146
|
};
|
|
106
147
|
}
|
|
148
|
+
/** Every record a daemon release may carry -- one is REQUIRED (releaseFocusArm). */
|
|
149
|
+
export type DaemonEndedArmRecord = EndedArmRecord | UnreviewedSettleArmRecord;
|
|
107
150
|
//# sourceMappingURL=ended-arm.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ended-arm.d.ts","sourceRoot":"","sources":["../../../src/queries/focuses/ended-arm.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ended-arm.d.ts","sourceRoot":"","sources":["../../../src/queries/focuses/ended-arm.ts"],"names":[],"mappings":"AAQA;;;;;;;;;;;;;GAaG;AAEH;;;;;;;;;;;;;;;GAeG;AACH,eAAO,MAAM,6BAA6B,wBAAwB,CAAC;AAEnE;;;;;;GAMG;AACH,eAAO,MAAM,iCAAiC,4BAA4B,CAAC;AAE3E;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB,iBAAiB,CAAC;AAErD;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,0CAA0C,qCAAqC,CAAC;AAE7F,iFAAiF;AACjF,MAAM,MAAM,cAAc,GACtB,OAAO,6BAA6B,GACpC,OAAO,sBAAsB,GAC7B,OAAO,0CAA0C,GACjD,OAAO,iCAAiC,CAAC;AAS7C;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,GAAG,OAAO,CAE9E;AAED,4FAA4F;AAC5F,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;CACd;AAED;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,kBAAkB,EAAE,mBAAmB,EAAE,CAAC;IAC1C,gGAAgG;IAChG,KAAK,EAAE,MAAM,CAAC;CACf;AAMD;;;;;;GAMG;AACH,wBAAgB,4BAA4B,CAAC,MAAM,EAAE,OAAO,GAAG,uBAAuB,GAAG,IAAI,CAY5F;AAED;;;;;;GAMG;AACH,MAAM,MAAM,wBAAwB,GAAG,cAAc,CAAC;AAEtD,qEAAqE;AACrE,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,OAAO,6BAA6B,CAAC;IAC7C,MAAM,EAAE;QACN,mEAAmE;QACnE,gBAAgB,EAAE,MAAM,CAAC;QACzB,sDAAsD;QACtD,GAAG,EAAE,MAAM,CAAC;QACZ,yFAAyF;QACzF,oBAAoB,EAAE,KAAK,CAAC;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,CAAC,CAAC;QACnG;;;;;WAKG;QACH,YAAY,EAAE,KAAK,CAAC;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,GAAG,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,CAAC,CAAC;QAC3F,qFAAqF;QACrF,aAAa,CAAC,EAAE,wBAAwB,CAAC;KAC1C,CAAC;CACH;AAED,uEAAuE;AACvE,MAAM,WAAW,yBAAyB;IACxC,MAAM,EAAE,OAAO,iCAAiC,CAAC;IACjD,MAAM,EAAE;QACN,sEAAsE;QACtE,iBAAiB,EAAE,KAAK,CAAC;YAAE,EAAE,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAC;YAAC,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;SAAE,CAAC,CAAC;KACxF,CAAC;CACH;AAED,oFAAoF;AACpF,MAAM,MAAM,oBAAoB,GAAG,cAAc,GAAG,yBAAyB,CAAC"}
|
|
@@ -1,7 +1,9 @@
|
|
|
1
1
|
// PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
|
|
2
2
|
// Pinned by: packages/daemon/src/completion/review-cycle-budget/review-cycle-cap-regression.test.ts,
|
|
3
3
|
// packages/daemon/src/completion/review-cycle-budget/review-cycle-churn-meter.test.ts,
|
|
4
|
-
// packages/daemon/src/
|
|
4
|
+
// packages/daemon/src/completion/review-cycle-budget/spent-budget-release.test.ts,
|
|
5
|
+
// packages/daemon/src/focus/disarm-reaper.test.ts, packages/daemon/src/queries/focuses/ended-arm.test.ts,
|
|
6
|
+
// packages/daemon/src/supervision/unreviewed-settle-detector.test.ts
|
|
5
7
|
// PINNED-BY-END
|
|
6
8
|
/**
|
|
7
9
|
* The ENDED-ARM record: the shape the daemon sends with a release to state WHY
|
|
@@ -21,20 +23,37 @@
|
|
|
21
23
|
* The ended-arm record that rides a release, stating WHY the daemon ended the
|
|
22
24
|
* arm and what was still outstanding.
|
|
23
25
|
*
|
|
24
|
-
*
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
28
|
-
*
|
|
26
|
+
* EVERY daemon release carries one (releaseFocusArm takes it as a required
|
|
27
|
+
* argument): no focus is un-armed by the daemon with a null reason. The daemon
|
|
28
|
+
* writes TWO reasons, 'review_budget_spent' and 'run_finished_unreviewed', each
|
|
29
|
+
* in the SAME call as the release (the edge refuses it otherwise,
|
|
30
|
+
* handlers/focus/arm-ended.ts) so the role-less focus is never readable without
|
|
31
|
+
* its reason, and so the record can never be mistaken for the operator stop
|
|
32
|
+
* (operator_stopped_at, which these paths do not write).
|
|
29
33
|
*
|
|
30
34
|
* `detail` carries only what the DAEMON counted. The edge adds the acceptance
|
|
31
35
|
* criteria the last verdict-bearing review called not_met -- it owns the shape
|
|
32
36
|
* that record lives in -- so this daemon never parses a review summary.
|
|
33
|
-
*
|
|
34
|
-
* ARM_ENDED_REVIEW_BUDGET_SPENT is a value the DB CHECK constraint on
|
|
35
|
-
* product_focuses.arm_ended_reason allows and the wedge diagnosis reads back.
|
|
36
37
|
*/
|
|
37
38
|
export const ARM_ENDED_REVIEW_BUDGET_SPENT = 'review_budget_spent';
|
|
39
|
+
/**
|
|
40
|
+
* The UNREVIEWED SETTLE end: every delivery settled while the review window the
|
|
41
|
+
* focus opened never received a verdict, so the daemon released the stranded
|
|
42
|
+
* arm and kept the window open (supervision/unreviewed-settle-detector.ts). A
|
|
43
|
+
* finish -- the covered work is terminal -- but one whose review is still owed,
|
|
44
|
+
* which a re-arm runs.
|
|
45
|
+
*/
|
|
46
|
+
export const ARM_ENDED_RUN_FINISHED_UNREVIEWED = 'run_finished_unreviewed';
|
|
47
|
+
/**
|
|
48
|
+
* The LIFECYCLE end with nothing left over: every delivery the arm covered is
|
|
49
|
+
* terminal and the clear discounted no recorded work. Written ONLY by SQL -- the
|
|
50
|
+
* lifecycle arm clear (auto_terminate_focus_team /
|
|
51
|
+
* clear_focus_team_on_review_window_close, migration 20261020133821) in the same
|
|
52
|
+
* write that nulls the role, whatever closed the review window (a verdict, a
|
|
53
|
+
* deadline, the hand-off breaker, the spent-budget path) -- and never by this
|
|
54
|
+
* daemon.
|
|
55
|
+
*/
|
|
56
|
+
export const ARM_ENDED_RUN_FINISHED = 'run_finished';
|
|
38
57
|
/**
|
|
39
58
|
* The LIFECYCLE end: the run finished every delivery its arm covered while one
|
|
40
59
|
* or more deliveries recorded as new intent under it still rest at planning.
|
|
@@ -49,14 +68,21 @@ export const ARM_ENDED_REVIEW_BUDGET_SPENT = 'review_budget_spent';
|
|
|
49
68
|
* constants; never read "any non-null reason" as one meaning.
|
|
50
69
|
*/
|
|
51
70
|
export const ARM_ENDED_RUN_FINISHED_RECORDED_WORK_WAITS = 'run_finished_recorded_work_waits';
|
|
71
|
+
/** The reasons that say the run FINISHED its covered work (every covered delivery terminal). */
|
|
72
|
+
const RUN_FINISHED_REASONS = new Set([
|
|
73
|
+
ARM_ENDED_RUN_FINISHED,
|
|
74
|
+
ARM_ENDED_RUN_FINISHED_RECORDED_WORK_WAITS,
|
|
75
|
+
ARM_ENDED_RUN_FINISHED_UNREVIEWED,
|
|
76
|
+
]);
|
|
52
77
|
/**
|
|
53
|
-
* True when the recorded reason
|
|
54
|
-
*
|
|
55
|
-
* budget, for no reason at all, and
|
|
56
|
-
* (an unknown reason is never read as
|
|
78
|
+
* True when the recorded reason says the run FINISHED its covered work: the
|
|
79
|
+
* lifecycle clear (with or without recorded work waiting for the next arm) or
|
|
80
|
+
* the unreviewed settle. False for a spent budget, for no reason at all, and
|
|
81
|
+
* for any value this daemon does not know (an unknown reason is never read as
|
|
82
|
+
* a finish).
|
|
57
83
|
*/
|
|
58
84
|
export function isRunFinishedArmEnd(reason) {
|
|
59
|
-
return reason
|
|
85
|
+
return reason != null && RUN_FINISHED_REASONS.has(reason);
|
|
60
86
|
}
|
|
61
87
|
function isRecord(value) {
|
|
62
88
|
return typeof value === 'object' && value !== null && !Array.isArray(value);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ended-arm.js","sourceRoot":"","sources":["../../../src/queries/focuses/ended-arm.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,qGAAqG;AACrG,yFAAyF;AACzF,
|
|
1
|
+
{"version":3,"file":"ended-arm.js","sourceRoot":"","sources":["../../../src/queries/focuses/ended-arm.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,qGAAqG;AACrG,yFAAyF;AACzF,qFAAqF;AACrF,4GAA4G;AAC5G,uEAAuE;AACvE,gBAAgB;AAEhB;;;;;;;;;;;;;GAaG;AAEH;;;;;;;;;;;;;;;GAeG;AACH,MAAM,CAAC,MAAM,6BAA6B,GAAG,qBAAqB,CAAC;AAEnE;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG,yBAAyB,CAAC;AAE3E;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,cAAc,CAAC;AAErD;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,0CAA0C,GAAG,kCAAkC,CAAC;AAS7F,gGAAgG;AAChG,MAAM,oBAAoB,GAAwB,IAAI,GAAG,CAAC;IACxD,sBAAsB;IACtB,0CAA0C;IAC1C,iCAAiC;CAClC,CAAC,CAAC;AAEH;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,MAAiC;IACnE,OAAO,MAAM,IAAI,IAAI,IAAI,oBAAoB,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;AAC5D,CAAC;AAmBD,SAAS,QAAQ,CAAC,KAAc;IAC9B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,4BAA4B,CAAC,MAAe;IAC1D,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,kBAAkB,CAAC;QAAE,OAAO,IAAI,CAAC;IAChF,MAAM,kBAAkB,GAA0B,EAAE,CAAC;IACrD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,kBAAkB,EAAE,CAAC;QAC9C,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,OAAO,KAAK,CAAC,EAAE,KAAK,QAAQ,IAAI,KAAK,CAAC,EAAE,KAAK,EAAE;YAAE,SAAS;QAClF,MAAM,IAAI,GAAG,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAAC;QACzF,kBAAkB,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAClD,CAAC;IACD,MAAM,KAAK,GAAG,OAAO,MAAM,CAAC,KAAK,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC;QAC7E,CAAC,CAAC,MAAM,CAAC,KAAK;QACd,CAAC,CAAC,kBAAkB,CAAC,MAAM,CAAC;IAC9B,OAAO,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC;AACvC,CAAC"}
|
|
@@ -122,6 +122,12 @@ declare const CriterionStandingSchema: z.ZodObject<{
|
|
|
122
122
|
divergenceReason: z.ZodNullable<z.ZodString>;
|
|
123
123
|
}, z.core.$loose>>;
|
|
124
124
|
basis: z.ZodOptional<z.ZodString>;
|
|
125
|
+
amendment: z.ZodCatch<z.ZodOptional<z.ZodObject<{
|
|
126
|
+
originalCriterion: z.ZodString;
|
|
127
|
+
amendmentCount: z.ZodOptional<z.ZodNumber>;
|
|
128
|
+
amendedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
129
|
+
amendedByKind: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
130
|
+
}, z.core.$loose>>>;
|
|
125
131
|
status: z.ZodEnum<{
|
|
126
132
|
open: "open";
|
|
127
133
|
met: "met";
|
|
@@ -225,6 +231,12 @@ export declare const FocusCriteriaStandingSchema: z.ZodObject<{
|
|
|
225
231
|
divergenceReason: z.ZodNullable<z.ZodString>;
|
|
226
232
|
}, z.core.$loose>>;
|
|
227
233
|
basis: z.ZodOptional<z.ZodString>;
|
|
234
|
+
amendment: z.ZodCatch<z.ZodOptional<z.ZodObject<{
|
|
235
|
+
originalCriterion: z.ZodString;
|
|
236
|
+
amendmentCount: z.ZodOptional<z.ZodNumber>;
|
|
237
|
+
amendedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
238
|
+
amendedByKind: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
239
|
+
}, z.core.$loose>>>;
|
|
228
240
|
status: z.ZodEnum<{
|
|
229
241
|
open: "open";
|
|
230
242
|
met: "met";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"focus-criteria-standing.d.ts","sourceRoot":"","sources":["../../../src/queries/focuses/focus-criteria-standing.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,wEAAwE;AACxE,eAAO,MAAM,8BAA8B,4BAA4B,CAAC;AAExE;;;;;;;GAOG;AACH,QAAA,MAAM,oBAAoB;;;;;;;iBAOV,CAAC;AAEjB;;;;;;;;GAQG;AACH,QAAA,MAAM,sBAAsB;;;;;iBAKZ,CAAC;AAEjB;;;;;;;;;;;;;;;;;;;GAmBG;AACH,QAAA,MAAM,uBAAuB
|
|
1
|
+
{"version":3,"file":"focus-criteria-standing.d.ts","sourceRoot":"","sources":["../../../src/queries/focuses/focus-criteria-standing.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,wEAAwE;AACxE,eAAO,MAAM,8BAA8B,4BAA4B,CAAC;AAExE;;;;;;;GAOG;AACH,QAAA,MAAM,oBAAoB;;;;;;;iBAOV,CAAC;AAEjB;;;;;;;;GAQG;AACH,QAAA,MAAM,sBAAsB;;;;;iBAKZ,CAAC;AAEjB;;;;;;;;;;;;;;;;;;;GAmBG;AACH,QAAA,MAAM,uBAAuB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAmCb,CAAC;AAEjB;;;;GAIG;AACH,QAAA,MAAM,2BAA2B;;;;iBAIjB,CAAC;AAEjB,uEAAuE;AACvE,QAAA,MAAM,0BAA0B;;;;iBAIhB,CAAC;AAEjB;;;;;;GAMG;AACH,QAAA,MAAM,cAAc;;;;;;;iBAQJ,CAAC;AAEjB;;;;;GAKG;AACH,QAAA,MAAM,kBAAkB;;;;;;;iBAmBR,CAAC;AAEjB;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA0CxB,CAAC;AAEjB,gEAAgE;AAChE,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAElE,6DAA6D;AAC7D,MAAM,MAAM,iBAAiB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAExE,0DAA0D;AAC1D,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,sBAAsB,CAAC,CAAC;AAEtE,mFAAmF;AACnF,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF,yEAAyE;AACzE,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,0BAA0B,CAAC,CAAC;AAE9E,0EAA0E;AAC1E,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,kBAAkB,CAAC,CAAC;AAEtE,uEAAuE;AACvE,MAAM,MAAM,gBAAgB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,cAAc,CAAC,CAAC;AAE9D,2EAA2E;AAC3E,MAAM,MAAM,qBAAqB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,2BAA2B,CAAC,CAAC;AAEhF;;;GAGG;AACH,wBAAsB,wBAAwB,CAC5C,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,qBAAqB,CAAC,CAEhC;AAED;;;;;;GAMG;AACH,wBAAsB,4BAA4B,CAChD,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,qBAAqB,CAAC,CAKhC"}
|
|
@@ -116,6 +116,19 @@ const CriterionStandingSchema = z.object({
|
|
|
116
116
|
* string, echoed only; absent on an older edge or a pre-derivation stamp.
|
|
117
117
|
*/
|
|
118
118
|
basis: z.string().optional(),
|
|
119
|
+
/**
|
|
120
|
+
* TREE, ARMED STAMP only: present when the criterion was AMENDED under the
|
|
121
|
+
* standing arm (amend_focus_criterion, migration 20261020142139). `criterion`
|
|
122
|
+
* is then the amended wording; `originalCriterion` the wording the arm
|
|
123
|
+
* stamped. Echoed only. A malformed value reads as absent (`.catch`) -- it
|
|
124
|
+
* labels a criterion and must never fail the whole read.
|
|
125
|
+
*/
|
|
126
|
+
amendment: z.object({
|
|
127
|
+
originalCriterion: z.string(),
|
|
128
|
+
amendmentCount: z.number().optional(),
|
|
129
|
+
amendedAt: z.string().nullable().optional(),
|
|
130
|
+
amendedByKind: z.string().nullable().optional(),
|
|
131
|
+
}).passthrough().optional().catch(undefined),
|
|
119
132
|
status: z.enum(['addressed', 'met', 'open']),
|
|
120
133
|
}).passthrough();
|
|
121
134
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"focus-criteria-standing.js","sourceRoot":"","sources":["../../../src/queries/focuses/focus-criteria-standing.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"focus-criteria-standing.js","sourceRoot":"","sources":["../../../src/queries/focuses/focus-criteria-standing.ts"],"names":[],"mappings":"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"}
|
|
@@ -189,9 +189,12 @@ export interface ActiveFocusRow {
|
|
|
189
189
|
* a NEW arm. 'run_finished_recorded_work_waits' => the LIFECYCLE clear released
|
|
190
190
|
* the arm with every covered delivery terminal while deliveries recorded as
|
|
191
191
|
* new intent wait at planning for the next arm -- a finish, not a stop.
|
|
192
|
-
*
|
|
193
|
-
*
|
|
194
|
-
*
|
|
192
|
+
* 'run_finished' => the lifecycle clear with nothing left over;
|
|
193
|
+
* 'run_finished_unreviewed' => the daemon released a settled focus whose
|
|
194
|
+
* review never rendered a verdict (migration 20261020133821: every machine end
|
|
195
|
+
* records a reason). Null => no machine end recorded: the arm is live, was
|
|
196
|
+
* never made, was an operator stop (operator_stopped_at), or ended before
|
|
197
|
+
* every end recorded one. Null on backends predating the column. Read by the
|
|
195
198
|
* disarm reaper and the wedge diagnosis, by value.
|
|
196
199
|
*
|
|
197
200
|
* OPTIONAL: `undefined` and `null` mean the same thing here (no machine end),
|
|
@@ -214,6 +217,14 @@ export interface ActiveFocusRow {
|
|
|
214
217
|
* predating the column, which fails CLOSED to "covered".
|
|
215
218
|
*/
|
|
216
219
|
armed_baseline_delivery_ids?: unknown;
|
|
220
|
+
/**
|
|
221
|
+
* When a stamped criterion of this focus was last amended under the arm
|
|
222
|
+
* (product_focuses.criteria_amended_at, amend_focus_criterion()). A REVIEW
|
|
223
|
+
* directive queued before it was assembled on the replaced wording and is
|
|
224
|
+
* dropped (focus/pending-directive-gates.ts), so the next review is a fresh
|
|
225
|
+
* session on the new wording. OPTIONAL: absent/null = never amended.
|
|
226
|
+
*/
|
|
227
|
+
criteria_amended_at?: string | null;
|
|
217
228
|
current_workflow_stage_id: string | null;
|
|
218
229
|
review_requested_at: string | null;
|
|
219
230
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"focus-discovery.d.ts","sourceRoot":"","sources":["../../../src/queries/focuses/focus-discovery.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"focus-discovery.d.ts","sourceRoot":"","sources":["../../../src/queries/focuses/focus-discovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -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/delivery/advance-hold.test.ts,
|
|
4
|
-
// packages/daemon/src/delivery/discovery-only-auto-advance.test.ts,
|
|
5
|
-
// packages/daemon/src/delivery/recorded-concerns.test.ts, packages/daemon/src/focus/awaiting-slot.test.ts,
|
|
6
|
-
// packages/daemon/src/focus/disarm-reaper.test.ts,
|
|
7
|
-
// packages/daemon/src/focus/focus-activity-progress-clock.test.ts,
|
|
8
|
-
// packages/daemon/src/focus/focus-poller-auto-advance-guard-measure.test.ts,
|
|
9
|
-
// packages/daemon/src/focus/focus-poller-auto-advance-team-presence.test.ts,
|
|
10
|
-
// packages/daemon/src/focus/focus-poller-auto-advance-teamless-wedge.test.ts,
|
|
11
|
-
// packages/daemon/src/focus/heartbeat-focus-activity.test.ts,
|
|
12
|
-
// packages/daemon/src/focus/recorded-delivery-auto-advance.test.ts,
|
|
13
|
-
// packages/daemon/src/focus/unarmed-advance-hold.test.ts,
|
|
14
|
-
// packages/daemon/src/focus/unclaimed-notice-coding-precedence.test.ts,
|
|
15
|
-
// packages/daemon/src/integration/advancement-path-parity.test.ts,
|
|
16
|
-
// packages/daemon/src/nexus/nexus-return-path-e2e.test.ts,
|
|
17
|
-
// packages/daemon/src/queries/focuses/answer-rearm-respawn.test.ts,
|
|
18
|
-
// packages/daemon/src/tower/tower-entrypoints.test.ts,
|
|
19
|
-
// packages/daemon/src/tower/tower-ready-row-ingestion.test.ts,
|
|
20
|
-
// packages/daemon/src/tower/tower-spawn-modes.test.ts
|
|
2
|
+
// Pinned by: 21 tests -- run: npm run gen:pinned-by -- --list packages/daemon/src/queries/focuses/focus-discovery.ts
|
|
21
3
|
// PINNED-BY-END
|
|
22
4
|
import { callApi, callApiValidated } from '../api-client/shared.js';
|
|
23
5
|
import { ReadyFocusesResponseSchema, ActiveFocusesResponseSchema } from '../wire-schemas/schemas.js';
|
|
@@ -105,6 +87,7 @@ export async function getActiveFocuses(_organizationId, productId) {
|
|
|
105
87
|
arm_ended_reason: s.armEndedReason ?? null,
|
|
106
88
|
arm_ended_detail: s.armEndedDetail ?? null,
|
|
107
89
|
armed_baseline_delivery_ids: s.armedBaselineDeliveryIds ?? null,
|
|
90
|
+
criteria_amended_at: s.criteriaAmendedAt ?? null,
|
|
108
91
|
current_workflow_stage_id: s.currentWorkflowStageId ?? null,
|
|
109
92
|
review_requested_at: s.reviewRequestedAt ?? null,
|
|
110
93
|
reviewed_through_sha: s.reviewedThroughSha ?? null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"focus-discovery.js","sourceRoot":"","sources":["../../../src/queries/focuses/focus-discovery.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,
|
|
1
|
+
{"version":3,"file":"focus-discovery.js","sourceRoot":"","sources":["../../../src/queries/focuses/focus-discovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* can build a complete task DAG.
|
|
6
6
|
*/
|
|
7
7
|
import type { FocusDeliveryInfo, FocusIssueInfo, StageDirective, Workflow } from '../../types/index.js';
|
|
8
|
-
import type {
|
|
8
|
+
import type { DaemonEndedArmRecord } from './ended-arm.js';
|
|
9
9
|
/**
|
|
10
10
|
* Batch-read the provenance origin of a set of focuses, as a Map
|
|
11
11
|
* focusId -> origin|null. Feeds the machine-owned lane's source-reliability
|
|
@@ -127,18 +127,21 @@ export declare function clearCompletionMergePending(focusId: string): Promise<vo
|
|
|
127
127
|
/** Clear review_requested_at without changing focus status or stage. */
|
|
128
128
|
export declare function clearReviewRequestedAt(focusId: string): Promise<void>;
|
|
129
129
|
/**
|
|
130
|
-
* Release a
|
|
131
|
-
* agent_assigned_at -> null)
|
|
130
|
+
* Release a focus's assigned agent role (assigned_agent_role_id and
|
|
131
|
+
* agent_assigned_at -> null) and record WHY in the SAME edge call
|
|
132
|
+
* (arm_ended_reason / arm_ended_at / arm_ended_detail). The record is REQUIRED:
|
|
133
|
+
* no focus is un-armed by the daemon with a null reason. Callers: the spent
|
|
134
|
+
* review budget ('review_budget_spent', which may also close the review window
|
|
135
|
+
* in this write) and the unreviewed settle ('run_finished_unreviewed', which
|
|
136
|
+
* keeps the window open -- the deferred DB clear cannot reach it).
|
|
132
137
|
*
|
|
133
|
-
* The
|
|
134
|
-
*
|
|
135
|
-
*
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
*/
|
|
141
|
-
export declare function releaseFocusArm(focusId: string, endedArm?: EndedArmRecord): Promise<void>;
|
|
138
|
+
* The edge endpoint accepts ONLY a null role here (a non-null value is refused):
|
|
139
|
+
* the daemon may release an arm, never assign one -- arming stays a human
|
|
140
|
+
* go-signal.
|
|
141
|
+
*/
|
|
142
|
+
export declare function releaseFocusArm(focusId: string, endedArm: DaemonEndedArmRecord, opts?: {
|
|
143
|
+
closeReviewWindow?: boolean;
|
|
144
|
+
}): Promise<void>;
|
|
142
145
|
/**
|
|
143
146
|
* Record an explicit "review was skipped" outcome for a focus, naming why.
|
|
144
147
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"focuses.d.ts","sourceRoot":"","sources":["../../../src/queries/focuses/focuses.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"focuses.d.ts","sourceRoot":"","sources":["../../../src/queries/focuses/focuses.ts"],"names":[],"mappings":"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"}
|
|
@@ -14,6 +14,7 @@
|
|
|
14
14
|
// packages/daemon/src/merge/completion-rework-armed.test.ts,
|
|
15
15
|
// packages/daemon/src/queries/focuses/scan-all-focuses.test.ts,
|
|
16
16
|
// packages/daemon/src/spawn/empty-directive-route.test.ts,
|
|
17
|
+
// packages/daemon/src/tower/tower-supervisor.test.ts,
|
|
17
18
|
// packages/daemon/src/verify/outcome-routing/verification-rework-issue.test.ts,
|
|
18
19
|
// packages/daemon/src/verify/shortfalls/shortfall-rulings.test.ts
|
|
19
20
|
// PINNED-BY-END
|
|
@@ -253,25 +254,26 @@ export async function clearReviewRequestedAt(focusId) {
|
|
|
253
254
|
});
|
|
254
255
|
}
|
|
255
256
|
/**
|
|
256
|
-
* Release a
|
|
257
|
-
* agent_assigned_at -> null)
|
|
257
|
+
* Release a focus's assigned agent role (assigned_agent_role_id and
|
|
258
|
+
* agent_assigned_at -> null) and record WHY in the SAME edge call
|
|
259
|
+
* (arm_ended_reason / arm_ended_at / arm_ended_detail). The record is REQUIRED:
|
|
260
|
+
* no focus is un-armed by the daemon with a null reason. Callers: the spent
|
|
261
|
+
* review budget ('review_budget_spent', which may also close the review window
|
|
262
|
+
* in this write) and the unreviewed settle ('run_finished_unreviewed', which
|
|
263
|
+
* keeps the window open -- the deferred DB clear cannot reach it).
|
|
258
264
|
*
|
|
259
|
-
* The
|
|
260
|
-
*
|
|
261
|
-
*
|
|
262
|
-
* verdict, so neither trigger reaches it and the arm is stranded. This is the
|
|
263
|
-
* daemon-owned path that releases it while keeping the window open. The edge
|
|
264
|
-
* endpoint accepts ONLY a null here (a non-null value is refused): the daemon
|
|
265
|
-
* may release an arm, never assign one -- arming stays a human go-signal.
|
|
265
|
+
* The edge endpoint accepts ONLY a null role here (a non-null value is refused):
|
|
266
|
+
* the daemon may release an arm, never assign one -- arming stays a human
|
|
267
|
+
* go-signal.
|
|
266
268
|
*/
|
|
267
|
-
export async function releaseFocusArm(focusId, endedArm) {
|
|
269
|
+
export async function releaseFocusArm(focusId, endedArm, opts = {}) {
|
|
268
270
|
await callApi('daemon_update_focus_status', {
|
|
269
271
|
focusId,
|
|
270
272
|
fields: {
|
|
271
273
|
assignedAgentRoleId: null,
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
274
|
+
armEndedReason: endedArm.reason,
|
|
275
|
+
armEndedDetail: endedArm.detail,
|
|
276
|
+
...(opts.closeReviewWindow ? { reviewRequestedAt: null } : {}),
|
|
275
277
|
},
|
|
276
278
|
});
|
|
277
279
|
}
|