@telora/daemon 0.24.25 → 0.24.29
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 +10 -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/nexus/escalation-bridge.d.ts.map +1 -1
- package/dist/nexus/escalation-bridge.js +2 -1
- package/dist/nexus/escalation-bridge.js.map +1 -1
- package/dist/nexus/file-escalation.d.ts.map +1 -1
- package/dist/nexus/file-escalation.js +1 -0
- package/dist/nexus/file-escalation.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/deliveries.js +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/delivery-gate-state/delivery-gate-state.js +1 -1
- package/dist/queries/delivery-gate-state/verify-own-holds.d.ts +24 -2
- package/dist/queries/delivery-gate-state/verify-own-holds.d.ts.map +1 -1
- package/dist/queries/delivery-gate-state/verify-own-holds.js.map +1 -1
- package/dist/queries/escalations/cause-key.d.ts.map +1 -1
- package/dist/queries/escalations/cause-key.js +1 -0
- package/dist/queries/escalations/cause-key.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/escalations.d.ts.map +1 -1
- package/dist/queries/escalations/escalations.js +2 -1
- package/dist/queries/escalations/escalations.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/verification/verification.js +1 -1
- 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/escalation-filing.js +1 -1
- package/dist/supervision/incident-correlation.d.ts +4 -1
- package/dist/supervision/incident-correlation.d.ts.map +1 -1
- package/dist/supervision/incident-correlation.js +7 -2
- package/dist/supervision/incident-correlation.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 +4 -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-delivery.d.ts +10 -0
- package/dist/supervision/stop-rows-delivery.d.ts.map +1 -1
- package/dist/supervision/stop-rows-delivery.js +29 -0
- package/dist/supervision/stop-rows-delivery.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/deterministic-gate/verification-deterministic.js +1 -1
- package/dist/verify/effect-reconciliation/verify-reconciliation.d.ts +11 -0
- package/dist/verify/effect-reconciliation/verify-reconciliation.d.ts.map +1 -1
- package/dist/verify/effect-reconciliation/verify-reconciliation.js +35 -2
- package/dist/verify/effect-reconciliation/verify-reconciliation.js.map +1 -1
- package/dist/verify/effect-reconciliation/verify-restatement.d.ts +4 -0
- package/dist/verify/effect-reconciliation/verify-restatement.d.ts.map +1 -1
- package/dist/verify/effect-reconciliation/verify-restatement.js +3 -3
- package/dist/verify/effect-reconciliation/verify-restatement.js.map +1 -1
- package/dist/verify/engine/reconciliation-step.d.ts +9 -2
- package/dist/verify/engine/reconciliation-step.d.ts.map +1 -1
- package/dist/verify/engine/reconciliation-step.js +26 -3
- package/dist/verify/engine/reconciliation-step.js.map +1 -1
- package/dist/verify/outcome-routing/incurable-model-hold.d.ts +2 -0
- package/dist/verify/outcome-routing/incurable-model-hold.d.ts.map +1 -1
- package/dist/verify/outcome-routing/incurable-model-hold.js +21 -6
- package/dist/verify/outcome-routing/incurable-model-hold.js.map +1 -1
- package/dist/verify/outcome-routing/repeating-model-hold.d.ts.map +1 -1
- package/dist/verify/outcome-routing/repeating-model-hold.js +13 -7
- package/dist/verify/outcome-routing/repeating-model-hold.js.map +1 -1
- package/dist/verify/outcome-routing/unjudged-node-hold.d.ts +31 -0
- package/dist/verify/outcome-routing/unjudged-node-hold.d.ts.map +1 -0
- package/dist/verify/outcome-routing/unjudged-node-hold.js +134 -0
- package/dist/verify/outcome-routing/unjudged-node-hold.js.map +1 -0
- package/dist/verify/outcome-routing/verification-model-unavailable-hold.d.ts +4 -0
- package/dist/verify/outcome-routing/verification-model-unavailable-hold.d.ts.map +1 -1
- package/dist/verify/outcome-routing/verification-model-unavailable-hold.js +25 -8
- package/dist/verify/outcome-routing/verification-model-unavailable-hold.js.map +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/dist/verify/shortfalls/pre-judge-rulings.d.ts.map +1 -1
- package/dist/verify/shortfalls/pre-judge-rulings.js +1 -0
- package/dist/verify/shortfalls/pre-judge-rulings.js.map +1 -1
- package/package.json +3 -3
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
|
|
2
2
|
// Pinned by: packages/daemon/src/completion/review-cycle-budget/review-cycle-cap-regression.test.ts,
|
|
3
|
-
// packages/daemon/src/supervision/review-cycle-cap-hold.test.ts
|
|
3
|
+
// packages/daemon/src/supervision/review-cycle-cap-hold.test.ts,
|
|
4
|
+
// packages/daemon/src/supervision/review-loop-hold.test.ts
|
|
4
5
|
// PINNED-BY-END
|
|
5
6
|
/**
|
|
6
7
|
* The spawn-gate half of the spent review budget: a focus whose
|
|
@@ -37,6 +38,13 @@
|
|
|
37
38
|
* poll, so a transient failure delays one poll instead of billing a pass the
|
|
38
39
|
* budget exists to prevent.
|
|
39
40
|
*
|
|
41
|
+
* THE HELD REVIEW LOOP rejoins here (the read the async signature was kept
|
|
42
|
+
* for): after the budget, every resolver below consults the review_loop_held
|
|
43
|
+
* row (supervision/review-loop-hold.ts) -- a focus whose review loop the review
|
|
44
|
+
* exit detected as non-converging is held by the same gates, the same way,
|
|
45
|
+
* until its loop is resolved. Two rows, one gate surface: the budget decides
|
|
46
|
+
* first, and its log line names it; the loop hold logs its own.
|
|
47
|
+
*
|
|
40
48
|
* History: docs/daemon/history-team-lifecycle.md (supervision/review-cycle-cap-hold.ts).
|
|
41
49
|
*
|
|
42
50
|
* @module supervision/review-cycle-cap-hold
|
|
@@ -44,6 +52,7 @@
|
|
|
44
52
|
import { safetyGateFailsClosed } from '../workflow/gate-failure-policy.js';
|
|
45
53
|
import { createLogger } from '../log/daemon-log.js';
|
|
46
54
|
import { evaluateStop } from './stop-registry.js';
|
|
55
|
+
import { createProductReviewLoopHoldReader, resolveReviewLoopHold } from './review-loop-hold.js';
|
|
47
56
|
const log = createLogger({ module: 'focus' });
|
|
48
57
|
/** Pure: whether the spent review budget holds the focus. An unreadable count holds. */
|
|
49
58
|
export function isReviewCycleCapHeld(facts) {
|
|
@@ -65,15 +74,8 @@ const heldLoggedFocuses = new Set();
|
|
|
65
74
|
export function __resetReviewCycleCapHoldLog() {
|
|
66
75
|
heldLoggedFocuses.clear();
|
|
67
76
|
}
|
|
68
|
-
/**
|
|
69
|
-
|
|
70
|
-
* read (null when it could not), and log the held edge once per episode.
|
|
71
|
-
*
|
|
72
|
-
* Async because every gate calls it in an await position and the un-arm that
|
|
73
|
-
* normally precedes it is the asynchronous half of the same decision; keeping
|
|
74
|
-
* the signature lets a future read rejoin here without touching four gates.
|
|
75
|
-
*/
|
|
76
|
-
export async function resolveReviewCycleCapHold(focus, deps) {
|
|
77
|
+
/** The budget half alone: decide on the count the caller read and log the held edge once per episode. */
|
|
78
|
+
function resolveBudgetHold(focus, deps) {
|
|
77
79
|
const facts = readReviewCycleCapFacts(focus, deps);
|
|
78
80
|
const held = isReviewCycleCapHeld(facts);
|
|
79
81
|
if (!held) {
|
|
@@ -87,6 +89,19 @@ export async function resolveReviewCycleCapHold(focus, deps) {
|
|
|
87
89
|
}
|
|
88
90
|
return held;
|
|
89
91
|
}
|
|
92
|
+
/**
|
|
93
|
+
* Resolve the backstop for a focus whose review_cycle_count the caller already
|
|
94
|
+
* read (null when it could not) -- the spent budget, then the held review loop
|
|
95
|
+
* -- logging each held edge once per episode.
|
|
96
|
+
*
|
|
97
|
+
* Async because every gate calls it in an await position; the held-loop read
|
|
98
|
+
* (supervision/review-loop-hold.ts) is the read that signature was kept for.
|
|
99
|
+
*/
|
|
100
|
+
export async function resolveReviewCycleCapHold(focus, deps) {
|
|
101
|
+
if (resolveBudgetHold(focus, deps))
|
|
102
|
+
return true;
|
|
103
|
+
return resolveReviewLoopHold(focus, deps.reviewLoopHold);
|
|
104
|
+
}
|
|
90
105
|
/**
|
|
91
106
|
* A backstop reader for the ready-focus spawn gate. getReadyFocuses rows do not
|
|
92
107
|
* carry review_cycle_count, so the count comes from the active-focus read --
|
|
@@ -107,10 +122,13 @@ export function createReadyFocusCapHoldReader(organizationId, deps) {
|
|
|
107
122
|
}
|
|
108
123
|
return counts;
|
|
109
124
|
};
|
|
125
|
+
const readLoopHold = createProductReviewLoopHoldReader(deps.reviewLoopHold);
|
|
110
126
|
return async (focus) => {
|
|
111
127
|
const counts = await readCounts(focus.product_id);
|
|
112
128
|
const reviewCycleCount = counts?.get(focus.focus_id) ?? null;
|
|
113
|
-
|
|
129
|
+
if (resolveBudgetHold({ focusId: focus.focus_id, focusName: focus.focus_name, reviewCycleCount }, deps))
|
|
130
|
+
return true;
|
|
131
|
+
return readLoopHold(focus);
|
|
114
132
|
};
|
|
115
133
|
}
|
|
116
134
|
//# sourceMappingURL=review-cycle-cap-hold.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"review-cycle-cap-hold.js","sourceRoot":"","sources":["../../src/supervision/review-cycle-cap-hold.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,qGAAqG;AACrG,
|
|
1
|
+
{"version":3,"file":"review-cycle-cap-hold.js","sourceRoot":"","sources":["../../src/supervision/review-cycle-cap-hold.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,qGAAqG;AACrG,mEAAmE;AACnE,6DAA6D;AAC7D,gBAAgB;AAEhB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAC3E,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAClD,OAAO,EAAE,iCAAiC,EAAE,qBAAqB,EAA2B,MAAM,uBAAuB,CAAC;AAE1H,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC,CAAC;AAS9C,wFAAwF;AACxF,MAAM,UAAU,oBAAoB,CAAC,KAA0B;IAC7D,OAAO,YAAY,CAAC,qBAAqB,EAAE,KAAK,CAAC,CAAC;AACpD,CAAC;AAED,wEAAwE;AACxE,SAAS,YAAY,CAAC,KAA0B;IAC9C,IAAI,KAAK,CAAC,gBAAgB,KAAK,IAAI;QAAE,OAAO,wDAAwD,CAAC;IACrG,OAAO,UAAU,KAAK,CAAC,gBAAgB,WAAW,KAAK,CAAC,GAAG,EAAE,CAAC;AAChE,CAAC;AAYD,8FAA8F;AAC9F,MAAM,UAAU,uBAAuB,CACrC,KAA0C,EAC1C,IAA4B;IAE5B,OAAO,EAAE,gBAAgB,EAAE,KAAK,CAAC,gBAAgB,EAAE,GAAG,EAAE,IAAI,CAAC,qBAAqB,EAAE,EAAE,CAAC;AACzF,CAAC;AAED,0FAA0F;AAC1F,MAAM,iBAAiB,GAAG,IAAI,GAAG,EAAU,CAAC;AAE5C,qDAAqD;AACrD,MAAM,UAAU,4BAA4B;IAC1C,iBAAiB,CAAC,KAAK,EAAE,CAAC;AAC5B,CAAC;AAED,yGAAyG;AACzG,SAAS,iBAAiB,CACxB,KAA8E,EAC9E,IAA4B;IAE5B,MAAM,KAAK,GAAG,uBAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IACnD,MAAM,IAAI,GAAG,oBAAoB,CAAC,KAAK,CAAC,CAAC;IACzC,IAAI,CAAC,IAAI,EAAE,CAAC;QACV,iBAAiB,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAC1C,CAAC;SAAM,IAAI,CAAC,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC;QACjD,iBAAiB,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACrC,GAAG,CAAC,IAAI,CACN,4BAA4B,KAAK,CAAC,SAAS,yCAAyC,YAAY,CAAC,KAAK,CAAC,IAAI;YAC3G,wGAAwG;YACxG,oEAAoE,CACrE,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC7C,KAA8E,EAC9E,IAA4B;IAE5B,IAAI,iBAAiB,CAAC,KAAK,EAAE,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IAChD,OAAO,qBAAqB,CAAC,KAAK,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;AAC3D,CAAC;AAaD;;;;;;GAMG;AACH,MAAM,UAAU,6BAA6B,CAC3C,cAAsB,EACtB,IAA2B;IAE3B,MAAM,eAAe,GAAG,IAAI,GAAG,EAA+C,CAAC;IAC/E,MAAM,UAAU,GAAG,CAAC,SAAwB,EAAuC,EAAE;QACnF,MAAM,GAAG,GAAG,SAAS,IAAI,EAAE,CAAC;QAC5B,IAAI,MAAM,GAAG,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,IAAI,CAAC,gBAAgB,CAAC,cAAc,EAAE,SAAS,IAAI,SAAS,CAAC;iBACnE,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAoB,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC;iBAC9F,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE,CAAC,qBAAqB,CAAC,6CAA6C,GAAG,IAAI,QAAQ,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC;YAC9H,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;QACnC,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;IACF,MAAM,YAAY,GAAG,iCAAiC,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC5E,OAAO,KAAK,EAAE,KAAK,EAAE,EAAE;QACrB,MAAM,MAAM,GAAG,MAAM,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAClD,MAAM,gBAAgB,GAAG,MAAM,EAAE,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC;QAC7D,IAAI,iBAAiB,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC,UAAU,EAAE,gBAAgB,EAAE,EAAE,IAAI,CAAC;YAAE,OAAO,IAAI,CAAC;QACrH,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;IAC7B,CAAC,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* THE NON-CONVERGING REVIEW LOOP: one criterion failing alone, review after
|
|
3
|
+
* review, each review naming a new blocking finding against it.
|
|
4
|
+
*
|
|
5
|
+
* Tinker Tailor f114 ran nine consecutive reviews that each judged every other
|
|
6
|
+
* criterion met and filed one new blocking Bug against the same criterion. The
|
|
7
|
+
* coding pass fixed each Bug and the next review found the next one: the
|
|
8
|
+
* criterion was unbounded, so the loop could not converge, and nothing saw it
|
|
9
|
+
* until the review budget (TELORA_REVIEW_CYCLE_CAP) ended the run. The loop is
|
|
10
|
+
* a judgement call -- is the criterion unbounded, or is the work really short?
|
|
11
|
+
* -- and the operator ruled a Tower supervisor makes it, not the operator. This
|
|
12
|
+
* module SEES the loop, so the review exit can hold it and call the supervisor
|
|
13
|
+
* (completion/review-cycle-budget/review-loop-detection.ts).
|
|
14
|
+
*
|
|
15
|
+
* THE RULE. On the N most recent consecutive verdict-bearing reviews under the
|
|
16
|
+
* arm (N = TELORA_REVIEW_LOOP_THRESHOLD, default 3):
|
|
17
|
+
* - exactly ONE criterion key is not_met, and it is the SAME key on all N;
|
|
18
|
+
* - every other criterion is met or excused (implied: a verdict is one of
|
|
19
|
+
* the three);
|
|
20
|
+
* - each of the N reviews names at least one BLOCKING issue against that
|
|
21
|
+
* criterion (an issue its not_met verdict names that is in the review's
|
|
22
|
+
* stored blocking set) that no EARLIER of the N reviews named.
|
|
23
|
+
* Fewer than N reviews, a second unmet criterion, a review whose verdicts
|
|
24
|
+
* name no criterion at all (a row from before focus_reviews.criterion_verdicts),
|
|
25
|
+
* a review re-naming only findings an earlier one named, or a review whose
|
|
26
|
+
* not_met names no blocking issue: no loop. The last two matter: a criterion
|
|
27
|
+
* whose one finding is simply not fixed yet is not a loop -- the coding pass
|
|
28
|
+
* still owes that finding -- and a reopening nobody demonstrated blocks
|
|
29
|
+
* nothing, so it moves nothing.
|
|
30
|
+
*
|
|
31
|
+
* Criterion identity is the criterion-reopenings identity (`node:<uuid>` /
|
|
32
|
+
* `text:<normalized>`), stored by focus_review_complete; the rule only compares
|
|
33
|
+
* keys. The decision itself is the review_loop_detected stop row
|
|
34
|
+
* (supervision/stop-rows-review-loop.ts); this module asks the registry.
|
|
35
|
+
*
|
|
36
|
+
* Pure: no I/O.
|
|
37
|
+
*
|
|
38
|
+
* @module supervision/review-loop-detector
|
|
39
|
+
*/
|
|
40
|
+
import type { ReviewVerdictRecord } from '../queries/focus-review/review-criterion-verdicts.js';
|
|
41
|
+
import type { ReviewLoopDetection } from './stop-rows-review-loop.js';
|
|
42
|
+
/**
|
|
43
|
+
* Detect a non-converging loop over the focus's reviews since the arm, given
|
|
44
|
+
* NEWEST FIRST. `threshold` below 2 is read as 2 (one failing review is not a
|
|
45
|
+
* loop). Returns the loop (its reviews oldest first), or null.
|
|
46
|
+
*/
|
|
47
|
+
export declare function detectNonConvergingReviewLoop(reviewsNewestFirst: readonly ReviewVerdictRecord[], threshold: number): ReviewLoopDetection | null;
|
|
48
|
+
//# sourceMappingURL=review-loop-detector.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review-loop-detector.d.ts","sourceRoot":"","sources":["../../src/supervision/review-loop-detector.ts"],"names":[],"mappings":"AAIA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,sDAAsD,CAAC;AAEhG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AAEtE;;;;GAIG;AACH,wBAAgB,6BAA6B,CAC3C,kBAAkB,EAAE,SAAS,mBAAmB,EAAE,EAClD,SAAS,EAAE,MAAM,GAChB,mBAAmB,GAAG,IAAI,CAE5B"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
// PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
|
|
2
|
+
// Pinned by: packages/daemon/src/supervision/review-loop-detector.test.ts
|
|
3
|
+
// PINNED-BY-END
|
|
4
|
+
import { evaluateStop } from './stop-registry.js';
|
|
5
|
+
/**
|
|
6
|
+
* Detect a non-converging loop over the focus's reviews since the arm, given
|
|
7
|
+
* NEWEST FIRST. `threshold` below 2 is read as 2 (one failing review is not a
|
|
8
|
+
* loop). Returns the loop (its reviews oldest first), or null.
|
|
9
|
+
*/
|
|
10
|
+
export function detectNonConvergingReviewLoop(reviewsNewestFirst, threshold) {
|
|
11
|
+
return evaluateStop('review_loop_detected', { reviewsNewestFirst, threshold });
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=review-loop-detector.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review-loop-detector.js","sourceRoot":"","sources":["../../src/supervision/review-loop-detector.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,0EAA0E;AAC1E,gBAAgB;AA2ChB,OAAO,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAGlD;;;;GAIG;AACH,MAAM,UAAU,6BAA6B,CAC3C,kBAAkD,EAClD,SAAiB;IAEjB,OAAO,YAAY,CAAC,sBAAsB,EAAE,EAAE,kBAAkB,EAAE,SAAS,EAAE,CAAC,CAAC;AACjF,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { OpenReviewLoop } from '../queries/tower-decisions/tower-decisions.js';
|
|
2
|
+
/** The open-loop read (production: queries/tower-decisions listOpenReviewLoops, bound at the composition root). */
|
|
3
|
+
export interface ReviewLoopHoldDeps {
|
|
4
|
+
listOpenReviewLoops: (scope: {
|
|
5
|
+
focusId: string;
|
|
6
|
+
} | {
|
|
7
|
+
productId: string | null;
|
|
8
|
+
}) => Promise<OpenReviewLoop[]>;
|
|
9
|
+
}
|
|
10
|
+
/** Pure: whether a focus's open loops (null = the read failed) hold it. */
|
|
11
|
+
export declare function isReviewLoopHeld(openLoopIds: readonly string[] | null): boolean;
|
|
12
|
+
/** Test seam: clear the per-episode log throttle. */
|
|
13
|
+
export declare function __resetReviewLoopHoldLog(): void;
|
|
14
|
+
/** Resolve the hold for one focus (one read). */
|
|
15
|
+
export declare function resolveReviewLoopHold(focus: {
|
|
16
|
+
focusId: string;
|
|
17
|
+
focusName: string;
|
|
18
|
+
}, deps: ReviewLoopHoldDeps): Promise<boolean>;
|
|
19
|
+
/**
|
|
20
|
+
* A hold reader for the ready-focus gate: the open loops are read once per
|
|
21
|
+
* product for the reader's lifetime (create one per poll). A failed read holds
|
|
22
|
+
* every focus of that product.
|
|
23
|
+
*/
|
|
24
|
+
export declare function createProductReviewLoopHoldReader(deps: ReviewLoopHoldDeps): (focus: {
|
|
25
|
+
focus_id: string;
|
|
26
|
+
focus_name: string;
|
|
27
|
+
product_id: string | null;
|
|
28
|
+
}) => Promise<boolean>;
|
|
29
|
+
//# sourceMappingURL=review-loop-hold.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review-loop-hold.d.ts","sourceRoot":"","sources":["../../src/supervision/review-loop-hold.ts"],"names":[],"mappings":"AAqCA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,+CAA+C,CAAC;AAIpF,mHAAmH;AACnH,MAAM,WAAW,kBAAkB;IACjC,mBAAmB,EAAE,CAAC,KAAK,EAAE;QAAE,OAAO,EAAE,MAAM,CAAA;KAAE,GAAG;QAAE,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,KAAK,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC;CAC/G;AAED,2EAA2E;AAC3E,wBAAgB,gBAAgB,CAAC,WAAW,EAAE,SAAS,MAAM,EAAE,GAAG,IAAI,GAAG,OAAO,CAE/E;AAKD,qDAAqD;AACrD,wBAAgB,wBAAwB,IAAI,IAAI,CAE/C;AAoBD,iDAAiD;AACjD,wBAAsB,qBAAqB,CACzC,KAAK,EAAE;IAAE,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,EAC7C,IAAI,EAAE,kBAAkB,GACvB,OAAO,CAAC,OAAO,CAAC,CAKlB;AAED;;;;GAIG;AACH,wBAAgB,iCAAiC,CAC/C,IAAI,EAAE,kBAAkB,GACvB,CAAC,KAAK,EAAE;IAAE,QAAQ,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,CAAC;IAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,KAAK,OAAO,CAAC,OAAO,CAAC,CAsBlG"}
|
|
@@ -0,0 +1,99 @@
|
|
|
1
|
+
// PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
|
|
2
|
+
// Pinned by: packages/daemon/src/supervision/review-loop-hold.test.ts
|
|
3
|
+
// PINNED-BY-END
|
|
4
|
+
/**
|
|
5
|
+
* The spawn-gate hold of a non-converging review loop: a focus carrying an
|
|
6
|
+
* OPEN loop_detected decision (recorded under its current arm, no
|
|
7
|
+
* loop_resolved naming it) spawns no coding or review pass. The condition is
|
|
8
|
+
* the review_loop_held stop-registry row (supervision/stop-rows-review-spawn.ts).
|
|
9
|
+
*
|
|
10
|
+
* The review exit records the decision when it detects the loop
|
|
11
|
+
* (completion/review-cycle-budget/review-loop-detection.ts) and hands it to
|
|
12
|
+
* the Tower supervisor; this module is what makes the record HOLD. It never
|
|
13
|
+
* un-arms the focus and spends no review cycle: the loop waits for a decision,
|
|
14
|
+
* not for a human to grant a budget.
|
|
15
|
+
*
|
|
16
|
+
* Read by the same gates, through the same resolver, as the spent review
|
|
17
|
+
* budget: supervision/review-cycle-cap-hold.ts resolveReviewCycleCapHold and
|
|
18
|
+
* createReadyFocusCapHoldReader consult it after the budget, so the ready-focus
|
|
19
|
+
* gate, the pending-directive pass, the tower's demand probe and the
|
|
20
|
+
* auto-review window hold on a loop exactly as they hold on a spent budget --
|
|
21
|
+
* the read the cap hold's async signature was kept for.
|
|
22
|
+
*
|
|
23
|
+
* Fails CLOSED: an unreadable decision record holds. Same reasoning as the
|
|
24
|
+
* budget's count read (workflow/gate-failure-policy.ts, safety class): the
|
|
25
|
+
* read repeats every poll, so a transient failure delays one poll, while a
|
|
26
|
+
* fail-open read would spawn the very pass the loop is held against. A server
|
|
27
|
+
* that predates the record answers `unknown_action`, which the query reads as
|
|
28
|
+
* no loops (queries/tower-decisions/tower-decisions.ts) -- no loop can exist
|
|
29
|
+
* there, so nothing is held for one.
|
|
30
|
+
*
|
|
31
|
+
* @module supervision/review-loop-hold
|
|
32
|
+
*/
|
|
33
|
+
import { safetyGateFailsClosed } from '../workflow/gate-failure-policy.js';
|
|
34
|
+
import { createLogger } from '../log/daemon-log.js';
|
|
35
|
+
import { evaluateStop } from './stop-registry.js';
|
|
36
|
+
const log = createLogger({ module: 'focus' });
|
|
37
|
+
/** Pure: whether a focus's open loops (null = the read failed) hold it. */
|
|
38
|
+
export function isReviewLoopHeld(openLoopIds) {
|
|
39
|
+
return evaluateStop('review_loop_held', { openLoopIds });
|
|
40
|
+
}
|
|
41
|
+
/** Focuses whose held episode was already logged (one line per episode, not per poll). */
|
|
42
|
+
const heldLoggedFocuses = new Set();
|
|
43
|
+
/** Test seam: clear the per-episode log throttle. */
|
|
44
|
+
export function __resetReviewLoopHoldLog() {
|
|
45
|
+
heldLoggedFocuses.clear();
|
|
46
|
+
}
|
|
47
|
+
/** Decide and log (once per held episode) for a focus whose open loops were read. */
|
|
48
|
+
function decideAndLog(focus, openLoopIds) {
|
|
49
|
+
const held = isReviewLoopHeld(openLoopIds);
|
|
50
|
+
if (!held) {
|
|
51
|
+
heldLoggedFocuses.delete(focus.focusId);
|
|
52
|
+
}
|
|
53
|
+
else if (!heldLoggedFocuses.has(focus.focusId)) {
|
|
54
|
+
heldLoggedFocuses.add(focus.focusId);
|
|
55
|
+
log.info(`[review-loop-hold] "${focus.focusName}" is held by ` +
|
|
56
|
+
(openLoopIds === null
|
|
57
|
+
? 'an unreadable decision record (fail closed)'
|
|
58
|
+
: `${openLoopIds.length} open non-converging review loop(s) (${openLoopIds.map((id) => id.slice(0, 8)).join(', ')})`) +
|
|
59
|
+
`: no coding or review pass spawns until a loop_resolved decision names each loop, or a new arm. The focus stays armed.`);
|
|
60
|
+
}
|
|
61
|
+
return held;
|
|
62
|
+
}
|
|
63
|
+
/** Resolve the hold for one focus (one read). */
|
|
64
|
+
export async function resolveReviewLoopHold(focus, deps) {
|
|
65
|
+
const ids = await deps.listOpenReviewLoops({ focusId: focus.focusId })
|
|
66
|
+
.then((loops) => loops.map((l) => l.towerDecisionId))
|
|
67
|
+
.catch((err) => safetyGateFailsClosed(`review-loop-hold read (focus ${focus.focusId.slice(0, 8)})`, err, null));
|
|
68
|
+
return decideAndLog(focus, ids);
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* A hold reader for the ready-focus gate: the open loops are read once per
|
|
72
|
+
* product for the reader's lifetime (create one per poll). A failed read holds
|
|
73
|
+
* every focus of that product.
|
|
74
|
+
*/
|
|
75
|
+
export function createProductReviewLoopHoldReader(deps) {
|
|
76
|
+
const byProduct = new Map();
|
|
77
|
+
const read = (productId) => {
|
|
78
|
+
const key = productId ?? '';
|
|
79
|
+
let loops = byProduct.get(key);
|
|
80
|
+
if (!loops) {
|
|
81
|
+
loops = deps.listOpenReviewLoops({ productId })
|
|
82
|
+
.then((rows) => {
|
|
83
|
+
const map = new Map();
|
|
84
|
+
for (const r of rows)
|
|
85
|
+
map.set(r.focusId, [...(map.get(r.focusId) ?? []), r.towerDecisionId]);
|
|
86
|
+
return map;
|
|
87
|
+
})
|
|
88
|
+
.catch((err) => safetyGateFailsClosed(`review-loop-hold read (product ${key || '<none>'})`, err, null));
|
|
89
|
+
byProduct.set(key, loops);
|
|
90
|
+
}
|
|
91
|
+
return loops;
|
|
92
|
+
};
|
|
93
|
+
return async (focus) => {
|
|
94
|
+
const map = await read(focus.product_id);
|
|
95
|
+
const ids = map === null ? null : (map.get(focus.focus_id) ?? []);
|
|
96
|
+
return decideAndLog({ focusId: focus.focus_id, focusName: focus.focus_name }, ids);
|
|
97
|
+
};
|
|
98
|
+
}
|
|
99
|
+
//# sourceMappingURL=review-loop-hold.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"review-loop-hold.js","sourceRoot":"","sources":["../../src/supervision/review-loop-hold.ts"],"names":[],"mappings":"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"}
|
|
@@ -12,6 +12,14 @@ export declare function resolveReviewCycleCap(): number;
|
|
|
12
12
|
export declare function resolveIdleTeamStallHours(): number;
|
|
13
13
|
/** Resolve the review-exit hand-off cap (env override or default 3). */
|
|
14
14
|
export declare function resolveReviewHandoffCap(): number;
|
|
15
|
+
/**
|
|
16
|
+
* Resolve the non-converging review-loop threshold (env override or default 3):
|
|
17
|
+
* the consecutive reviews on which ONE criterion fails alone before the daemon
|
|
18
|
+
* holds the loop and calls the Tower supervisor
|
|
19
|
+
* (supervision/review-loop-detector.ts). Never below 2: one failing review is
|
|
20
|
+
* not a loop. Read raw pending the daemon-core republish that carries the field.
|
|
21
|
+
*/
|
|
22
|
+
export declare function resolveReviewLoopThreshold(): number;
|
|
15
23
|
/** Resolve the review-liveness window in minutes (env override or default 15). */
|
|
16
24
|
export declare function resolveReviewLivenessWindowMinutes(): number;
|
|
17
25
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stall-detector-config.d.ts","sourceRoot":"","sources":["../../src/supervision/stall-detector-config.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"stall-detector-config.d.ts","sourceRoot":"","sources":["../../src/supervision/stall-detector-config.ts"],"names":[],"mappings":"AAsCA,uEAAuE;AACvE,wBAAgB,sBAAsB,IAAI,MAAM,CAE/C;AAED,wFAAwF;AACxF,wBAAgB,6BAA6B,IAAI,MAAM,CAEtD;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,IAAI,MAAM,CAE9C;AAED,gFAAgF;AAChF,wBAAgB,yBAAyB,IAAI,MAAM,CAElD;AASD,wEAAwE;AACxE,wBAAgB,uBAAuB,IAAI,MAAM,CAEhD;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,IAAI,MAAM,CAEnD;AAED,kFAAkF;AAClF,wBAAgB,kCAAkC,IAAI,MAAM,CAE3D;AAED;;;;;GAKG;AACH,wBAAgB,mCAAmC,IAAI,MAAM,CAE5D;AAED,yFAAyF;AACzF,wBAAgB,2BAA2B,IAAI,MAAM,CAEpD;AAED,4FAA4F;AAC5F,wBAAgB,2BAA2B,IAAI,MAAM,CAEpD;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,iCAAiC,IAAI,MAAM,CAE1D;AAED;;;;;;;;GAQG;AACH,wBAAgB,yBAAyB,IAAI,MAAM,CAElD"}
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
// PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
|
|
2
2
|
// Pinned by: packages/daemon/src/completion/completion-event/stall-guard-time-floor.test.ts,
|
|
3
3
|
// packages/daemon/src/focus/focus-poller-auto-advance-teamless-wedge.test.ts,
|
|
4
|
-
// packages/daemon/src/supervision/stall-detectors-clock-wiring.test.ts
|
|
4
|
+
// packages/daemon/src/supervision/stall-detectors-clock-wiring.test.ts,
|
|
5
|
+
// packages/daemon/src/tower/tower-supervisor.test.ts
|
|
5
6
|
// PINNED-BY-END
|
|
6
7
|
/**
|
|
7
8
|
* Single in-daemon source for the stall-detector thresholds.
|
|
@@ -52,7 +53,7 @@ export function resolveReviewCycleCap() {
|
|
|
52
53
|
export function resolveIdleTeamStallHours() {
|
|
53
54
|
return loadEnvConfig().TELORA_IDLE_TEAM_STALL_HOURS;
|
|
54
55
|
}
|
|
55
|
-
// NOTE: the
|
|
56
|
+
// NOTE: the resolvers below read process.env RAW (via rawPositiveNumber)
|
|
56
57
|
// rather than loadEnvConfig() because their knobs are PENDING a daemon-core
|
|
57
58
|
// republish (see rawPositiveNumber). The canonical declarations already live in
|
|
58
59
|
// packages/daemon-core/src/env-config.ts; switch these to loadEnvConfig() and
|
|
@@ -60,7 +61,17 @@ export function resolveIdleTeamStallHours() {
|
|
|
60
61
|
// is republished + pinned.
|
|
61
62
|
/** Resolve the review-exit hand-off cap (env override or default 3). */
|
|
62
63
|
export function resolveReviewHandoffCap() {
|
|
63
|
-
return
|
|
64
|
+
return loadEnvConfig().TELORA_REVIEW_HANDOFF_CAP;
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* Resolve the non-converging review-loop threshold (env override or default 3):
|
|
68
|
+
* the consecutive reviews on which ONE criterion fails alone before the daemon
|
|
69
|
+
* holds the loop and calls the Tower supervisor
|
|
70
|
+
* (supervision/review-loop-detector.ts). Never below 2: one failing review is
|
|
71
|
+
* not a loop. Read raw pending the daemon-core republish that carries the field.
|
|
72
|
+
*/
|
|
73
|
+
export function resolveReviewLoopThreshold() {
|
|
74
|
+
return Math.max(2, Math.floor(parsePositive(process.env.TELORA_REVIEW_LOOP_THRESHOLD, 3)));
|
|
64
75
|
}
|
|
65
76
|
/** Resolve the review-liveness window in minutes (env override or default 15). */
|
|
66
77
|
export function resolveReviewLivenessWindowMinutes() {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stall-detector-config.js","sourceRoot":"","sources":["../../src/supervision/stall-detector-config.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,6FAA6F;AAC7F,gFAAgF;AAChF,
|
|
1
|
+
{"version":3,"file":"stall-detector-config.js","sourceRoot":"","sources":["../../src/supervision/stall-detector-config.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,6FAA6F;AAC7F,gFAAgF;AAChF,0EAA0E;AAC1E,uDAAuD;AACvD,gBAAgB;AAEhB;;;;;;;;;GASG;AAEH,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD;;;;;;;;;;;GAWG;AACH,SAAS,aAAa,CAAC,GAAuB,EAAE,QAAgB;IAC9D,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,EAAE;QAAE,OAAO,QAAQ,CAAC;IACrD,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC;IACtB,OAAO,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;AACpD,CAAC;AAED,uEAAuE;AACvE,MAAM,UAAU,sBAAsB;IACpC,OAAO,aAAa,EAAE,CAAC,kCAAkC,CAAC;AAC5D,CAAC;AAED,wFAAwF;AACxF,MAAM,UAAU,6BAA6B;IAC3C,OAAO,aAAa,EAAE,CAAC,gCAAgC,CAAC;AAC1D,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,qBAAqB;IACnC,OAAO,aAAa,EAAE,CAAC,uBAAuB,CAAC;AACjD,CAAC;AAED,gFAAgF;AAChF,MAAM,UAAU,yBAAyB;IACvC,OAAO,aAAa,EAAE,CAAC,4BAA4B,CAAC;AACtD,CAAC;AAED,yEAAyE;AACzE,4EAA4E;AAC5E,gFAAgF;AAChF,8EAA8E;AAC9E,iFAAiF;AACjF,2BAA2B;AAE3B,wEAAwE;AACxE,MAAM,UAAU,uBAAuB;IACrC,OAAO,aAAa,EAAE,CAAC,yBAAyB,CAAC;AACnD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,0BAA0B;IACxC,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,4BAA4B,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAC7F,CAAC;AAED,kFAAkF;AAClF,MAAM,UAAU,kCAAkC;IAChD,OAAO,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,qCAAqC,EAAE,EAAE,CAAC,CAAC;AAC9E,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mCAAmC;IACjD,OAAO,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,sCAAsC,EAAE,EAAE,CAAC,CAAC;AAC/E,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,2BAA2B;IACzC,OAAO,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,CAAC,CAAC,CAAC;AACtE,CAAC;AAED,4FAA4F;AAC5F,MAAM,UAAU,2BAA2B;IACzC,OAAO,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,8BAA8B,EAAE,EAAE,CAAC,CAAC;AACvE,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,iCAAiC;IAC/C,OAAO,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,oCAAoC,EAAE,EAAE,CAAC,CAAC;AAC7E,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,yBAAyB;IACvC,OAAO,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,0BAA0B,EAAE,CAAC,CAAC,CAAC;AAClE,CAAC"}
|
|
@@ -70,6 +70,9 @@ export declare const STOP_REGISTRY: {
|
|
|
70
70
|
readonly review_handoff_breaker_hold: StopRow<import("./stop-rows-review-spawn.js").ReviewHandoffBreakerHoldFacts, boolean>;
|
|
71
71
|
readonly review_spawn_coverage_guard: StopRow<import("./stop-rows-review-spawn.js").ReviewSpawnCoverageGuardFacts, boolean>;
|
|
72
72
|
readonly review_hold_park: StopRow<import("./stop-rows-review-spawn.js").ReviewHoldParkFacts, boolean>;
|
|
73
|
+
} & {
|
|
74
|
+
readonly review_loop_detected: StopRow<import("./stop-rows-review-loop.js").ReviewLoopDetectionFacts, import("./stop-rows-review-loop.js").ReviewLoopDetection | null>;
|
|
75
|
+
readonly review_loop_held: StopRow<import("./stop-rows-review-loop.js").ReviewLoopHeldFacts, boolean>;
|
|
73
76
|
} & {
|
|
74
77
|
readonly operator_hold: StopRow<import("./stop-rows-delivery.js").OperatorHoldFacts, boolean>;
|
|
75
78
|
readonly operator_hold_escalation: StopRow<import("./stop-rows-delivery.js").OperatorHoldEscalationFacts, import("./stop-rows-delivery.js").OperatorHoldEscalationVerdict>;
|
|
@@ -82,6 +85,7 @@ export declare const STOP_REGISTRY: {
|
|
|
82
85
|
readonly advance_hold: StopRow<import("./stop-rows-delivery.js").AdvanceHoldFacts, import("./stop-rows-delivery.js").AdvanceHoldVerdict>;
|
|
83
86
|
readonly model_unavailable_verify_hold: StopRow<import("./stop-rows-delivery.js").ModelUnavailableVerifyHoldFacts, boolean>;
|
|
84
87
|
readonly incurable_model_hold: StopRow<import("./stop-rows-delivery.js").IncurableModelHoldFacts, boolean>;
|
|
88
|
+
readonly unjudged_rejudge_limit: StopRow<import("./stop-rows-delivery.js").UnjudgedRejudgeLimitFacts, boolean>;
|
|
85
89
|
readonly model_unavailable_done_hold: StopRow<import("./stop-rows-delivery.js").ModelUnavailableDoneHoldFacts, boolean>;
|
|
86
90
|
readonly verify_run_in_flight_done_hold: StopRow<import("./stop-rows-delivery.js").VerifyRunInFlightDoneHoldFacts, boolean>;
|
|
87
91
|
} & {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stop-registry.d.ts","sourceRoot":"","sources":["../../src/supervision/stop-registry.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"stop-registry.d.ts","sourceRoot":"","sources":["../../src/supervision/stop-registry.ts"],"names":[],"mappings":"AASA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAwB,KAAK,OAAO,EAAE,MAAM,eAAe,CAAC;AAanE,8CAA8C;AAC9C,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAYzB,CAAC;AAEF,MAAM,MAAM,YAAY,GAAG,OAAO,aAAa,CAAC;AAChD,MAAM,MAAM,MAAM,GAAG,MAAM,YAAY,CAAC;AACxC,MAAM,MAAM,WAAW,CAAC,CAAC,SAAS,MAAM,IAAI,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;AACvF,MAAM,MAAM,aAAa,CAAC,CAAC,SAAS,MAAM,IAAI,UAAU,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC;AAEtF,mEAAmE;AACnE,MAAM,MAAM,UAAU,GAAG,OAAO,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;AAEjD,uCAAuC;AACvC,wBAAgB,YAAY,IAAI,SAAS,UAAU,EAAE,CAEpD;AAED,2DAA2D;AAC3D,MAAM,MAAM,sBAAsB,GAAG,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;AAI1E;;;;GAIG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,sBAAsB,GAAG,IAAI,GAAG,IAAI,CAEpF;AAED;;;GAGG;AACH,wBAAgB,YAAY,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,CAK7F;AAED,sFAAsF;AACtF,wBAAgB,SAAS,CAAC,CAAC,SAAS,MAAM,EAAE,EAAE,EAAE,CAAC,EAAE,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,GAAG,OAAO,CAGjF;AAED,kDAAkD;AAClD,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,OAAO,CAAC;CAChB;AAED,qDAAqD;AACrD,MAAM,MAAM,aAAa,GAAG;KAAG,CAAC,IAAI,MAAM,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC;CAAE,CAAC;AAE/D;;;GAGG;AACH,wBAAgB,aAAa,CAAC,SAAS,EAAE,aAAa,GAAG,cAAc,EAAE,CAQxE"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
// PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
|
|
2
2
|
// Pinned by: packages/daemon/src/completion/completion-event/stall-termination-authority.test.ts,
|
|
3
3
|
// packages/daemon/src/focus-stage-lifecycle/ratify-bar-gate.test.ts,
|
|
4
|
+
// packages/daemon/src/supervision/review-loop-detector.test.ts,
|
|
4
5
|
// packages/daemon/src/supervision/stop-inventory.test.ts,
|
|
5
6
|
// packages/daemon/src/supervision/stop-progress-record.test.ts,
|
|
6
7
|
// packages/daemon/src/supervision/stop-registry.test.ts
|
|
@@ -34,13 +35,14 @@ import { COMPLETION_STALL_STOP_ROWS } from './stop-rows-completion-stall.js';
|
|
|
34
35
|
import { TEAM_SESSION_STOP_ROWS } from './stop-rows-team-session.js';
|
|
35
36
|
import { SPAWN_STOP_ROWS } from './stop-rows-spawn.js';
|
|
36
37
|
import { REVIEW_SPAWN_STOP_ROWS } from './stop-rows-review-spawn.js';
|
|
38
|
+
import { REVIEW_LOOP_STOP_ROWS } from './stop-rows-review-loop.js';
|
|
37
39
|
import { DELIVERY_STOP_ROWS } from './stop-rows-delivery.js';
|
|
38
40
|
import { VERIFY_RERUN_STOP_ROWS } from './stop-rows-verify-rerun.js';
|
|
39
41
|
import { FOCUS_HEALTH_STOP_ROWS } from './stop-rows-focus-health.js';
|
|
40
42
|
import { TEAM_REGISTRATION_STOP_ROWS } from './stop-rows-team-registration.js';
|
|
41
43
|
import { WORK_HOLD_STOP_ROWS } from './stop-rows-work-holds.js';
|
|
42
44
|
/** Every registered stop, keyed by row id. */
|
|
43
|
-
export const STOP_REGISTRY = combineStopRowTables(TEAM_STALL_STOP_ROWS, COMPLETION_STALL_STOP_ROWS, TEAM_SESSION_STOP_ROWS, SPAWN_STOP_ROWS, REVIEW_SPAWN_STOP_ROWS, DELIVERY_STOP_ROWS, VERIFY_RERUN_STOP_ROWS, FOCUS_HEALTH_STOP_ROWS, TEAM_REGISTRATION_STOP_ROWS, WORK_HOLD_STOP_ROWS);
|
|
45
|
+
export const STOP_REGISTRY = combineStopRowTables(TEAM_STALL_STOP_ROWS, COMPLETION_STALL_STOP_ROWS, TEAM_SESSION_STOP_ROWS, SPAWN_STOP_ROWS, REVIEW_SPAWN_STOP_ROWS, REVIEW_LOOP_STOP_ROWS, DELIVERY_STOP_ROWS, VERIFY_RERUN_STOP_ROWS, FOCUS_HEALTH_STOP_ROWS, TEAM_REGISTRATION_STOP_ROWS, WORK_HOLD_STOP_ROWS);
|
|
44
46
|
/** Every row, in declaration order. */
|
|
45
47
|
export function listStopRows() {
|
|
46
48
|
return Object.values(STOP_REGISTRY);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stop-registry.js","sourceRoot":"","sources":["../../src/supervision/stop-registry.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,kGAAkG;AAClG,uEAAuE;AACvE,4DAA4D;AAC5D,kEAAkE;AAClE,0DAA0D;AAC1D,gBAAgB;AAEhB;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,oBAAoB,EAAgB,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,8CAA8C;AAC9C,MAAM,CAAC,MAAM,aAAa,GAAG,oBAAoB,CAC/C,oBAAoB,EACpB,0BAA0B,EAC1B,sBAAsB,EACtB,eAAe,EACf,sBAAsB,EACtB,kBAAkB,EAClB,sBAAsB,EACtB,sBAAsB,EACtB,2BAA2B,EAC3B,mBAAmB,CACpB,CAAC;AAUF,uCAAuC;AACvC,MAAM,UAAU,YAAY;IAC1B,OAAO,MAAM,CAAC,MAAM,CAAC,aAAa,CAAqC,CAAC;AAC1E,CAAC;AAKD,IAAI,kBAAkB,GAAkC,IAAI,CAAC;AAE7D;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,QAAuC;IAC5E,kBAAkB,GAAG,QAAQ,CAAC;AAChC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAmB,EAAK,EAAE,KAAqB;IACzE,MAAM,GAAG,GAAG,aAAa,CAAC,EAAE,CAAyD,CAAC;IACtF,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpC,kBAAkB,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7C,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,SAAS,CAAmB,EAAK,EAAE,KAAqB;IACtE,MAAM,GAAG,GAAG,aAAa,CAAC,EAAE,CAAyD,CAAC;IACtF,OAAO,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;AAC5C,CAAC;AAWD;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,SAAwB;IACpD,MAAM,GAAG,GAAqB,EAAE,CAAC;IACjC,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAa,EAAE,CAAC;QACxD,IAAI,CAAC,CAAC,EAAE,IAAI,SAAS,CAAC;YAAE,SAAS;QACjC,MAAM,KAAK,GAAG,SAAS,CAAC,EAAE,CAA2B,CAAC;QACtD,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
1
|
+
{"version":3,"file":"stop-registry.js","sourceRoot":"","sources":["../../src/supervision/stop-registry.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,kGAAkG;AAClG,uEAAuE;AACvE,kEAAkE;AAClE,4DAA4D;AAC5D,kEAAkE;AAClE,0DAA0D;AAC1D,gBAAgB;AAEhB;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,oBAAoB,EAAgB,MAAM,eAAe,CAAC;AACnE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,0BAA0B,EAAE,MAAM,iCAAiC,CAAC;AAC7E,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,qBAAqB,EAAE,MAAM,4BAA4B,CAAC;AACnE,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AACrE,OAAO,EAAE,2BAA2B,EAAE,MAAM,kCAAkC,CAAC;AAC/E,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAEhE,8CAA8C;AAC9C,MAAM,CAAC,MAAM,aAAa,GAAG,oBAAoB,CAC/C,oBAAoB,EACpB,0BAA0B,EAC1B,sBAAsB,EACtB,eAAe,EACf,sBAAsB,EACtB,qBAAqB,EACrB,kBAAkB,EAClB,sBAAsB,EACtB,sBAAsB,EACtB,2BAA2B,EAC3B,mBAAmB,CACpB,CAAC;AAUF,uCAAuC;AACvC,MAAM,UAAU,YAAY;IAC1B,OAAO,MAAM,CAAC,MAAM,CAAC,aAAa,CAAqC,CAAC;AAC1E,CAAC;AAKD,IAAI,kBAAkB,GAAkC,IAAI,CAAC;AAE7D;;;;GAIG;AACH,MAAM,UAAU,sBAAsB,CAAC,QAAuC;IAC5E,kBAAkB,GAAG,QAAQ,CAAC;AAChC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,YAAY,CAAmB,EAAK,EAAE,KAAqB;IACzE,MAAM,GAAG,GAAG,aAAa,CAAC,EAAE,CAAyD,CAAC;IACtF,MAAM,OAAO,GAAG,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACpC,kBAAkB,EAAE,CAAC,EAAE,EAAE,GAAG,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;IAC7C,OAAO,OAAO,CAAC;AACjB,CAAC;AAED,sFAAsF;AACtF,MAAM,UAAU,SAAS,CAAmB,EAAK,EAAE,KAAqB;IACtE,MAAM,GAAG,GAAG,aAAa,CAAC,EAAE,CAAyD,CAAC;IACtF,OAAO,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,EAAE,KAAK,CAAC,CAAC,CAAC;AAC5C,CAAC;AAWD;;;GAGG;AACH,MAAM,UAAU,aAAa,CAAC,SAAwB;IACpD,MAAM,GAAG,GAAqB,EAAE,CAAC;IACjC,KAAK,MAAM,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,aAAa,CAAa,EAAE,CAAC;QACxD,IAAI,CAAC,CAAC,EAAE,IAAI,SAAS,CAAC;YAAE,SAAS;QACjC,MAAM,KAAK,GAAG,SAAS,CAAC,EAAE,CAA2B,CAAC;QACtD,GAAG,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,EAAE,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;IAChD,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -85,6 +85,15 @@ export interface IncurableModelHoldFacts {
|
|
|
85
85
|
*/
|
|
86
86
|
inputChangeProven: boolean;
|
|
87
87
|
}
|
|
88
|
+
/** Facts for re-holding an unjudged-node hold at its re-judge limit without a judge call. */
|
|
89
|
+
export interface UnjudgedRejudgeLimitFacts {
|
|
90
|
+
/** The standing unjudged hold has re-formed UNJUDGED_REJUDGE_LIMIT times on one input (verify/outcome-routing/unjudged-node-hold.ts). */
|
|
91
|
+
rejudgeLimitReached: boolean;
|
|
92
|
+
/** The hold recorded the input it was judged against. */
|
|
93
|
+
inputRecorded: boolean;
|
|
94
|
+
/** The current input was READ and differs from the recorded one. An unreadable current input proves no change. */
|
|
95
|
+
inputChangeProven: boolean;
|
|
96
|
+
}
|
|
88
97
|
/** Facts for the review exit's done route. */
|
|
89
98
|
export interface ModelUnavailableDoneHoldFacts {
|
|
90
99
|
/** gate_state records the model-unavailable hold (queries/delivery-gate-state/verify-own-holds.ts). */
|
|
@@ -114,6 +123,7 @@ export declare const DELIVERY_STOP_ROWS: {
|
|
|
114
123
|
readonly advance_hold: import("./stop-row.js").StopRow<AdvanceHoldFacts, AdvanceHoldVerdict>;
|
|
115
124
|
readonly model_unavailable_verify_hold: import("./stop-row.js").StopRow<ModelUnavailableVerifyHoldFacts, boolean>;
|
|
116
125
|
readonly incurable_model_hold: import("./stop-row.js").StopRow<IncurableModelHoldFacts, boolean>;
|
|
126
|
+
readonly unjudged_rejudge_limit: import("./stop-row.js").StopRow<UnjudgedRejudgeLimitFacts, boolean>;
|
|
117
127
|
readonly model_unavailable_done_hold: import("./stop-row.js").StopRow<ModelUnavailableDoneHoldFacts, boolean>;
|
|
118
128
|
readonly verify_run_in_flight_done_hold: import("./stop-row.js").StopRow<VerifyRunInFlightDoneHoldFacts, boolean>;
|
|
119
129
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stop-rows-delivery.d.ts","sourceRoot":"","sources":["../../src/supervision/stop-rows-delivery.ts"],"names":[],"mappings":"AA8BA,mGAAmG;AACnG,MAAM,WAAW,iBAAiB;IAChC,kFAAkF;IAClF,eAAe,EAAE,OAAO,CAAC;IACzB,sDAAsD;IACtD,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,gGAAgG;AAChG,MAAM,WAAW,qBAAqB;IACpC,8DAA8D;IAC9D,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,0FAA0F;IAC1F,mBAAmB,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,oFAAoF;AACpF,MAAM,WAAW,2BAA2B;IAC1C,uDAAuD;IACvD,OAAO,EAAE,OAAO,CAAC;IACjB,6FAA6F;IAC7F,kBAAkB,EAAE,OAAO,CAAC;IAC5B,mEAAmE;IACnE,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,mEAAmE;IACnE,UAAU,EAAE,SAAS,qBAAqB,EAAE,CAAC;IAC7C,2DAA2D;IAC3D,gBAAgB,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,0FAA0F;IAC1F,aAAa,EAAE,SAAS,MAAM,EAAE,CAAC;CAClC;AAED,6FAA6F;AAC7F,MAAM,MAAM,6BAA6B,GAAG;IAAE,cAAc,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CAAC;AAE/F,mFAAmF;AACnF,MAAM,WAAW,iBAAiB;IAChC,0DAA0D;IAC1D,YAAY,EAAE,OAAO,CAAC;IACtB,oFAAoF;IACpF,iBAAiB,EAAE,KAAK,GAAG,OAAO,GAAG,aAAa,CAAC;CACpD;AAED,kEAAkE;AAClE,MAAM,WAAW,sBAAsB;IACrC,mFAAmF;IACnF,gBAAgB,EAAE,OAAO,CAAC;IAC1B,kEAAkE;IAClE,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,8EAA8E;AAC9E,MAAM,WAAW,sBAAsB;IACrC,0DAA0D;IAC1D,KAAK,CAAC,EAAE,MAAM,GAAG,eAAe,GAAG,SAAS,CAAC;IAC7C,gGAAgG;IAChG,OAAO,EAAE,cAAc,GAAG,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC1D,6EAA6E;IAC7E,cAAc,EAAE,OAAO,CAAC;CACzB;AAED,uDAAuD;AACvD,MAAM,WAAW,gBAAgB;IAC/B,oDAAoD;IACpD,kBAAkB,EAAE,OAAO,CAAC;IAC5B,mDAAmD;IACnD,cAAc,EAAE,OAAO,CAAC;IACxB,sFAAsF;IACtF,WAAW,EAAE,OAAO,CAAC;CACtB;AAED,+EAA+E;AAC/E,MAAM,MAAM,kBAAkB,GAAG,kBAAkB,GAAG,sBAAsB,GAAG,IAAI,CAAC;AAEpF,kDAAkD;AAClD,MAAM,WAAW,+BAA+B;IAC9C,oGAAoG;IACpG,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED,iFAAiF;AACjF,MAAM,WAAW,uBAAuB;IACtC,gHAAgH;IAChH,aAAa,EAAE,OAAO,CAAC;IACvB,yDAAyD;IACzD,aAAa,EAAE,OAAO,CAAC;IACvB;;;OAGG;IACH,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAED,8CAA8C;AAC9C,MAAM,WAAW,6BAA6B;IAC5C,uGAAuG;IACvG,4BAA4B,EAAE,OAAO,CAAC;CACvC;AAED,oFAAoF;AACpF,MAAM,WAAW,8BAA8B;IAC7C,6HAA6H;IAC7H,iBAAiB,EAAE,OAAO,CAAC;CAC5B;AAoLD,4IAA4I;AAC5I,MAAM,WAAW,wBAAwB;IACvC,4GAA4G;IAC5G,QAAQ,EAAE,OAAO,CAAC;IAClB,oHAAoH;IACpH,YAAY,EAAE,OAAO,CAAC;CACvB;
|
|
1
|
+
{"version":3,"file":"stop-rows-delivery.d.ts","sourceRoot":"","sources":["../../src/supervision/stop-rows-delivery.ts"],"names":[],"mappings":"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"}
|
|
@@ -340,6 +340,35 @@ const GATE_ROUTE_HOLD_ROWS = {
|
|
|
340
340
|
],
|
|
341
341
|
},
|
|
342
342
|
}),
|
|
343
|
+
unjudged_rejudge_limit: booleanStopRow({
|
|
344
|
+
id: 'unjudged_rejudge_limit',
|
|
345
|
+
kind: 'cap',
|
|
346
|
+
stopsOn: 'verify_node_unjudged_at_rejudge_limit',
|
|
347
|
+
enforcedBy: 'verify/outcome-routing/incurable-model-hold.ts',
|
|
348
|
+
condition: 'A delivery holds an unjudged-node verify hold (the judge ran but left a node without a judgment: its answer ' +
|
|
349
|
+
'never parsed, or the reconciliation failed) that has re-formed UNJUDGED_REJUDGE_LIMIT times in a row on one ' +
|
|
350
|
+
'judged input, and no change to that input has been observed (an unreadable current input observes none).',
|
|
351
|
+
factsRead: [
|
|
352
|
+
'delivery gate_state.modelUnavailable (kind unjudged, reformCount, judgedAgainst)',
|
|
353
|
+
"the delivery's current commit-set fingerprint",
|
|
354
|
+
"the delivery's current rulings fingerprint (operator rulings and approving-review verdicts)",
|
|
355
|
+
'the fingerprint of the question the judge is asked (every declared statement it is handed)',
|
|
356
|
+
],
|
|
357
|
+
effect: 'The dispatch re-holds the delivery at its own status with NO judge call (no rework, no verify_failed, no ' +
|
|
358
|
+
'iteration); the limit is surfaced once as its own verify_node_unjudged escalation naming each node\'s parse ' +
|
|
359
|
+
'error and raw answer tail.',
|
|
360
|
+
releaser: 'A new commit on the delivery, a new shortfall ruling, a new approving review, or an edit of a declared statement the judge is handed.',
|
|
361
|
+
releaseCondition: 'A successful read of the commit-set, rulings and question fingerprints differs from the recorded one.',
|
|
362
|
+
evaluate: ({ rejudgeLimitReached, inputRecorded, inputChangeProven }) => rejudgeLimitReached && inputRecorded && !inputChangeProven,
|
|
363
|
+
characterization: {
|
|
364
|
+
trigger: [{ rejudgeLimitReached: true, inputRecorded: true, inputChangeProven: false }],
|
|
365
|
+
release: [
|
|
366
|
+
{ rejudgeLimitReached: true, inputRecorded: true, inputChangeProven: true },
|
|
367
|
+
{ rejudgeLimitReached: true, inputRecorded: false, inputChangeProven: false },
|
|
368
|
+
{ rejudgeLimitReached: false, inputRecorded: true, inputChangeProven: false },
|
|
369
|
+
],
|
|
370
|
+
},
|
|
371
|
+
}),
|
|
343
372
|
model_unavailable_done_hold: booleanStopRow({
|
|
344
373
|
id: 'model_unavailable_done_hold',
|
|
345
374
|
kind: 'hold',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stop-rows-delivery.js","sourceRoot":"","sources":["../../src/supervision/stop-rows-delivery.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"stop-rows-delivery.js","sourceRoot":"","sources":["../../src/supervision/stop-rows-delivery.ts"],"names":[],"mappings":"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"}
|