@telora/daemon 0.24.17 → 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 +12 -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/ci/candidate-failure-record.d.ts +104 -0
- package/dist/ci/candidate-failure-record.d.ts.map +1 -0
- package/dist/ci/candidate-failure-record.js +135 -0
- package/dist/ci/candidate-failure-record.js.map +1 -0
- package/dist/ci/candidate-ref.d.ts.map +1 -1
- package/dist/ci/candidate-ref.js +10 -3
- package/dist/ci/candidate-ref.js.map +1 -1
- package/dist/ci/ci-status-git.d.ts.map +1 -1
- package/dist/ci/ci-status-git.js +1 -0
- package/dist/ci/ci-status-git.js.map +1 -1
- package/dist/ci/ci-status.d.ts.map +1 -1
- package/dist/ci/ci-status.js +1 -0
- package/dist/ci/ci-status.js.map +1 -1
- package/dist/ci/gate-ref.d.ts +10 -1
- package/dist/ci/gate-ref.d.ts.map +1 -1
- package/dist/ci/gate-ref.js +11 -4
- package/dist/ci/gate-ref.js.map +1 -1
- package/dist/ci/product-ci-repo.d.ts.map +1 -1
- package/dist/ci/product-ci-repo.js +3 -2
- package/dist/ci/product-ci-repo.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-merge-context.d.ts +13 -0
- package/dist/composition/execution-merge-context.d.ts.map +1 -1
- package/dist/composition/execution-merge-context.js +76 -3
- package/dist/composition/execution-merge-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/focus-activity-live-sources.d.ts.map +1 -1
- package/dist/composition/focus-activity-live-sources.js +1 -0
- package/dist/composition/focus-activity-live-sources.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 +11 -0
- package/dist/composition/runtime-heartbeat-context.d.ts.map +1 -1
- package/dist/composition/runtime-heartbeat-context.js +33 -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/team-liveness-phase-sources.d.ts.map +1 -1
- package/dist/composition/team-liveness-phase-sources.js +1 -0
- package/dist/composition/team-liveness-phase-sources.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/verification-context.d.ts.map +1 -1
- package/dist/composition/verification-context.js +34 -4
- package/dist/composition/verification-context.js.map +1 -1
- 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-metadata.d.ts +5 -0
- package/dist/focus/heartbeat-metadata.d.ts.map +1 -1
- package/dist/focus/heartbeat-metadata.js +12 -0
- package/dist/focus/heartbeat-metadata.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 +10 -1
- package/dist/focus/heartbeat.js.map +1 -1
- package/dist/focus/host-pressure.d.ts +77 -0
- package/dist/focus/host-pressure.d.ts.map +1 -0
- package/dist/focus/host-pressure.js +83 -0
- package/dist/focus/host-pressure.js.map +1 -0
- 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/git/types.js +1 -1
- package/dist/merge/candidate-ci-failures.d.ts +72 -0
- package/dist/merge/candidate-ci-failures.d.ts.map +1 -0
- package/dist/merge/candidate-ci-failures.js +240 -0
- package/dist/merge/candidate-ci-failures.js.map +1 -0
- package/dist/merge/candidate-red-record.d.ts +44 -0
- package/dist/merge/candidate-red-record.d.ts.map +1 -0
- package/dist/merge/candidate-red-record.js +98 -0
- package/dist/merge/candidate-red-record.js.map +1 -0
- package/dist/merge/candidate-rework.d.ts +4 -3
- package/dist/merge/candidate-rework.d.ts.map +1 -1
- package/dist/merge/candidate-rework.js +46 -14
- package/dist/merge/candidate-rework.js.map +1 -1
- package/dist/merge/candidate-tip-attribution.d.ts +135 -0
- package/dist/merge/candidate-tip-attribution.d.ts.map +1 -0
- package/dist/merge/candidate-tip-attribution.js +319 -0
- package/dist/merge/candidate-tip-attribution.js.map +1 -0
- package/dist/merge/completion-merge-driver.d.ts +49 -5
- package/dist/merge/completion-merge-driver.d.ts.map +1 -1
- package/dist/merge/completion-merge-driver.js +56 -2
- package/dist/merge/completion-merge-driver.js.map +1 -1
- package/dist/merge/completion-merge-gate.d.ts +4 -1
- package/dist/merge/completion-merge-gate.d.ts.map +1 -1
- package/dist/merge/completion-merge-gate.js +9 -8
- package/dist/merge/completion-merge-gate.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 +36 -1
- package/dist/queries/api-client/shared.js.map +1 -1
- package/dist/queries/candidate-ci-reds/candidate-ci-reds.d.ts +35 -0
- package/dist/queries/candidate-ci-reds/candidate-ci-reds.d.ts.map +1 -0
- package/dist/queries/candidate-ci-reds/candidate-ci-reds.js +42 -0
- package/dist/queries/candidate-ci-reds/candidate-ci-reds.js.map +1 -0
- package/dist/queries/candidate-ci-reds/gate-escape-files.d.ts +16 -0
- package/dist/queries/candidate-ci-reds/gate-escape-files.d.ts.map +1 -0
- package/dist/queries/candidate-ci-reds/gate-escape-files.js +51 -0
- package/dist/queries/candidate-ci-reds/gate-escape-files.js.map +1 -0
- 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/daemon-connection.d.ts.map +1 -1
- package/dist/queries/sessions/daemon-connection.js +1 -0
- package/dist/queries/sessions/daemon-connection.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/shell/unified-shell.d.ts +25 -0
- package/dist/shell/unified-shell.d.ts.map +1 -1
- package/dist/shell/unified-shell.js +26 -80
- package/dist/shell/unified-shell.js.map +1 -1
- package/dist/shell/update-restart.d.ts +47 -0
- package/dist/shell/update-restart.d.ts.map +1 -0
- package/dist/shell/update-restart.js +124 -0
- package/dist/shell/update-restart.js.map +1 -0
- 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-suppression.js +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/completion-judge-stubs.d.ts +7 -2
- package/dist/testing/fixtures/completion-judge-stubs.d.ts.map +1 -1
- package/dist/testing/fixtures/completion-judge-stubs.js +11 -1
- package/dist/testing/fixtures/completion-judge-stubs.js.map +1 -1
- package/dist/testing/fixtures/index.js +1 -1
- package/dist/testing/fixtures/merge-log-capture.d.ts.map +1 -1
- package/dist/testing/fixtures/merge-log-capture.js +1 -0
- package/dist/testing/fixtures/merge-log-capture.js.map +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/testing/fixtures/verification-deps.d.ts +7 -0
- package/dist/testing/fixtures/verification-deps.d.ts.map +1 -1
- package/dist/testing/fixtures/verification-deps.js +17 -1
- package/dist/testing/fixtures/verification-deps.js.map +1 -1
- package/dist/testing/fixtures/vitest-failure-log.d.ts.map +1 -1
- package/dist/testing/fixtures/vitest-failure-log.js +2 -1
- package/dist/testing/fixtures/vitest-failure-log.js.map +1 -1
- 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/update/auto-update.d.ts +11 -5
- package/dist/update/auto-update.d.ts.map +1 -1
- package/dist/update/auto-update.js +11 -5
- package/dist/update/auto-update.js.map +1 -1
- package/dist/update/restart-contract.d.ts +62 -0
- package/dist/update/restart-contract.d.ts.map +1 -0
- package/dist/update/restart-contract.js +137 -0
- package/dist/update/restart-contract.js.map +1 -0
- package/dist/verify/attribution/verification-baseline-run.d.ts.map +1 -1
- package/dist/verify/attribution/verification-baseline-run.js +1 -0
- package/dist/verify/attribution/verification-baseline-run.js.map +1 -1
- package/dist/verify/ci-gate/ci-gate-dispatch.d.ts +3 -0
- package/dist/verify/ci-gate/ci-gate-dispatch.d.ts.map +1 -1
- package/dist/verify/ci-gate/ci-gate-dispatch.js +31 -9
- package/dist/verify/ci-gate/ci-gate-dispatch.js.map +1 -1
- package/dist/verify/ci-gate/ci-gate-wait-record.d.ts +6 -0
- package/dist/verify/ci-gate/ci-gate-wait-record.d.ts.map +1 -1
- package/dist/verify/ci-gate/ci-gate-wait-record.js +1 -0
- package/dist/verify/ci-gate/ci-gate-wait-record.js.map +1 -1
- package/dist/verify/deterministic-gate/verification-checkout.d.ts +12 -2
- package/dist/verify/deterministic-gate/verification-checkout.d.ts.map +1 -1
- package/dist/verify/deterministic-gate/verification-checkout.js +18 -3
- package/dist/verify/deterministic-gate/verification-checkout.js.map +1 -1
- package/dist/verify/deterministic-gate/verification-deterministic.js +1 -1
- package/dist/verify/deterministic-gate/verification-failure-parser.d.ts +30 -9
- package/dist/verify/deterministic-gate/verification-failure-parser.d.ts.map +1 -1
- package/dist/verify/deterministic-gate/verification-failure-parser.js +52 -8
- package/dist/verify/deterministic-gate/verification-failure-parser.js.map +1 -1
- package/dist/verify/engine/verification-commit-sharing.d.ts.map +1 -1
- package/dist/verify/engine/verification-commit-sharing.js +6 -2
- package/dist/verify/engine/verification-commit-sharing.js.map +1 -1
- package/dist/verify/engine/verification-deps.d.ts +9 -0
- package/dist/verify/engine/verification-deps.d.ts.map +1 -1
- package/dist/verify/engine/verification-deps.js +1 -1
- package/dist/verify/engine/verification-engine.d.ts.map +1 -1
- package/dist/verify/engine/verification-engine.js +4 -1
- package/dist/verify/engine/verification-engine.js.map +1 -1
- package/dist/verify/escaped-tests/escaped-pass-store.d.ts +19 -0
- package/dist/verify/escaped-tests/escaped-pass-store.d.ts.map +1 -0
- package/dist/verify/escaped-tests/escaped-pass-store.js +90 -0
- package/dist/verify/escaped-tests/escaped-pass-store.js.map +1 -0
- package/dist/verify/escaped-tests/escaped-test-run.d.ts +39 -0
- package/dist/verify/escaped-tests/escaped-test-run.d.ts.map +1 -0
- package/dist/verify/escaped-tests/escaped-test-run.js +156 -0
- package/dist/verify/escaped-tests/escaped-test-run.js.map +1 -0
- package/dist/verify/escaped-tests/escaped-test-set.d.ts +65 -0
- package/dist/verify/escaped-tests/escaped-test-set.d.ts.map +1 -0
- package/dist/verify/escaped-tests/escaped-test-set.js +95 -0
- package/dist/verify/escaped-tests/escaped-test-set.js.map +1 -0
- package/dist/verify/escaped-tests/escaped-tests-source.d.ts +44 -0
- package/dist/verify/escaped-tests/escaped-tests-source.d.ts.map +1 -0
- package/dist/verify/escaped-tests/escaped-tests-source.js +142 -0
- package/dist/verify/escaped-tests/escaped-tests-source.js.map +1 -0
- package/dist/verify/gate-config/verification-manifest.d.ts +12 -1
- package/dist/verify/gate-config/verification-manifest.d.ts.map +1 -1
- package/dist/verify/gate-config/verification-manifest.js +12 -1
- package/dist/verify/gate-config/verification-manifest.js.map +1 -1
- package/dist/verify/gate-verdicts/commit-verdict-record.js +1 -1
- package/dist/verify/outcome-routing/verification-rework-issue.d.ts +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
- package/scripts/telora-daemon-wrapper.sh +16 -7
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"candidate-ci-reds.js","sourceRoot":"","sources":["../../../src/queries/candidate-ci-reds/candidate-ci-reds.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,qEAAqE;AACrE,4EAA4E;AAC5E,gBAAgB;AAEhB;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,oCAAoC;AACpC,MAAM,CAAC,MAAM,8BAA8B,GAAG,gCAAgC,CAAC;AAE/E,sDAAsD;AACtD,MAAM,CAAC,MAAM,0BAA0B,GAAG,GAAG,CAAC;AA0B9C,MAAM,0BAA0B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,gBAAgB,EAAE,CAAC,CAAC,MAAM,EAAE;IAC5B,YAAY,EAAE,CAAC,CAAC,OAAO,EAAE;IACzB,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE;CACrB,CAAC,CAAC,WAAW,EAAE,CAAC;AASjB,wGAAwG;AACxG,MAAM,CAAC,KAAK,UAAU,oBAAoB,CAAC,OAA8B;IACvE,MAAM,MAAM,GAA0B;QACpC,GAAG,OAAO;QACV,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC,EAAE,0BAA0B,CAAC;KAChF,CAAC;IACF,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,8BAA8B,EAAE,0BAA0B,EAAE,EAAE,GAAG,MAAM,EAAE,CAAC,CAAC;IACjH,OAAO,EAAE,gBAAgB,EAAE,MAAM,CAAC,gBAAgB,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,CAAC;AACnH,CAAC"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/** The action this module calls. */
|
|
2
|
+
export declare const LIST_GATE_ESCAPE_FILES_ACTION = "daemon_list_gate_escape_files";
|
|
3
|
+
/** The most files one page of the server's answer holds (product-api MAX_ESCAPE_FILES). */
|
|
4
|
+
export declare const GATE_ESCAPE_FILES_PAGE = 5000;
|
|
5
|
+
/** One escaped test file: its repo-relative path, and when the newest escape naming it was recorded. */
|
|
6
|
+
export interface GateEscapeFile {
|
|
7
|
+
file: string;
|
|
8
|
+
lastEscapeAt: string;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* The product's escaped test files, newest escape first, every page of them.
|
|
12
|
+
* Throws on a failed call, a malformed answer, or a cursor that does not move
|
|
13
|
+
* (the caller fails soft: it adds nothing that run).
|
|
14
|
+
*/
|
|
15
|
+
export declare function listGateEscapeFiles(productId: string): Promise<GateEscapeFile[]>;
|
|
16
|
+
//# sourceMappingURL=gate-escape-files.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gate-escape-files.d.ts","sourceRoot":"","sources":["../../../src/queries/candidate-ci-reds/gate-escape-files.ts"],"names":[],"mappings":"AAwBA,oCAAoC;AACpC,eAAO,MAAM,6BAA6B,kCAAkC,CAAC;AAE7E,2FAA2F;AAC3F,eAAO,MAAM,sBAAsB,OAAO,CAAC;AAE3C,wGAAwG;AACxG,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,CAAC;CACtB;AASD;;;;GAIG;AACH,wBAAsB,mBAAmB,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,CAatF"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
// PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
|
|
2
|
+
// Pinned by: packages/daemon/src/queries/candidate-ci-reds/gate-escape-files.test.ts
|
|
3
|
+
// PINNED-BY-END
|
|
4
|
+
/**
|
|
5
|
+
* The read of a product's escaped test files: product-api
|
|
6
|
+
* `daemon_list_gate_escape_files`, which answers the distinct test files the
|
|
7
|
+
* product's GATE ESCAPES named (candidate reds whose approved head the verify
|
|
8
|
+
* gate had passed), each with the instant of the newest escape naming it, newest
|
|
9
|
+
* first -- aggregated over every escape the product recorded and read PAGE after
|
|
10
|
+
* page (each at most GATE_ESCAPE_FILES_PAGE) until the server says there is no
|
|
11
|
+
* next one, so an older escaped file is listed however many follow it; the
|
|
12
|
+
* daemon retires a file by its passes (verify/escaped-tests/escaped-test-set.ts),
|
|
13
|
+
* never by its age.
|
|
14
|
+
*
|
|
15
|
+
* Throws on a failed call or a malformed answer; the caller
|
|
16
|
+
* (verify/escaped-tests/escaped-tests-source.ts) owns swallowing it.
|
|
17
|
+
*
|
|
18
|
+
* @module queries/candidate-ci-reds/gate-escape-files
|
|
19
|
+
*/
|
|
20
|
+
import { z } from 'zod';
|
|
21
|
+
import { callApiValidated } from '../api-client/shared.js';
|
|
22
|
+
/** The action this module calls. */
|
|
23
|
+
export const LIST_GATE_ESCAPE_FILES_ACTION = 'daemon_list_gate_escape_files';
|
|
24
|
+
/** The most files one page of the server's answer holds (product-api MAX_ESCAPE_FILES). */
|
|
25
|
+
export const GATE_ESCAPE_FILES_PAGE = 5000;
|
|
26
|
+
const FileSchema = z.object({ file: z.string(), lastEscapeAt: z.string() }).passthrough();
|
|
27
|
+
const GateEscapeFilesSchema = z.object({
|
|
28
|
+
files: z.array(FileSchema),
|
|
29
|
+
nextAfter: FileSchema.nullable().optional(),
|
|
30
|
+
}).passthrough();
|
|
31
|
+
/**
|
|
32
|
+
* The product's escaped test files, newest escape first, every page of them.
|
|
33
|
+
* Throws on a failed call, a malformed answer, or a cursor that does not move
|
|
34
|
+
* (the caller fails soft: it adds nothing that run).
|
|
35
|
+
*/
|
|
36
|
+
export async function listGateEscapeFiles(productId) {
|
|
37
|
+
const files = [];
|
|
38
|
+
let after = null;
|
|
39
|
+
for (;;) {
|
|
40
|
+
const page = await callApiValidated(LIST_GATE_ESCAPE_FILES_ACTION, GateEscapeFilesSchema, { productId, ...(after ? { after } : {}) });
|
|
41
|
+
files.push(...page.files.slice(0, GATE_ESCAPE_FILES_PAGE).map((f) => ({ file: f.file, lastEscapeAt: f.lastEscapeAt })));
|
|
42
|
+
const next = page.nextAfter ? { file: page.nextAfter.file, lastEscapeAt: page.nextAfter.lastEscapeAt } : null;
|
|
43
|
+
if (next === null || page.files.length === 0)
|
|
44
|
+
return files;
|
|
45
|
+
if (after !== null && next.file === after.file && next.lastEscapeAt === after.lastEscapeAt) {
|
|
46
|
+
throw new Error(`${LIST_GATE_ESCAPE_FILES_ACTION}: the page cursor did not move`);
|
|
47
|
+
}
|
|
48
|
+
after = next;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
//# sourceMappingURL=gate-escape-files.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gate-escape-files.js","sourceRoot":"","sources":["../../../src/queries/candidate-ci-reds/gate-escape-files.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,qFAAqF;AACrF,gBAAgB;AAEhB;;;;;;;;;;;;;;;GAeG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAE3D,oCAAoC;AACpC,MAAM,CAAC,MAAM,6BAA6B,GAAG,+BAA+B,CAAC;AAE7E,2FAA2F;AAC3F,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,CAAC;AAQ3C,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC;AAE1F,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;IAC1B,SAAS,EAAE,UAAU,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;CAC5C,CAAC,CAAC,WAAW,EAAE,CAAC;AAEjB;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,SAAiB;IACzD,MAAM,KAAK,GAAqB,EAAE,CAAC;IACnC,IAAI,KAAK,GAA0B,IAAI,CAAC;IACxC,SAAS,CAAC;QACR,MAAM,IAAI,GAA0C,MAAM,gBAAgB,CAAC,6BAA6B,EAAE,qBAAqB,EAAE,EAAE,SAAS,EAAE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAC7K,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,sBAAsB,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,YAAY,EAAE,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC;QACxH,MAAM,IAAI,GAA0B,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QACrI,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAC3D,IAAI,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,IAAI,IAAI,IAAI,CAAC,YAAY,KAAK,KAAK,CAAC,YAAY,EAAE,CAAC;YAC3F,MAAM,IAAI,KAAK,CAAC,GAAG,6BAA6B,gCAAgC,CAAC,CAAC;QACpF,CAAC;QACD,KAAK,GAAG,IAAI,CAAC;IACf,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issues.d.ts","sourceRoot":"","sources":["../../../src/queries/deliveries/issues.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"issues.d.ts","sourceRoot":"","sources":["../../../src/queries/deliveries/issues.ts"],"names":[],"mappings":"AA8BA,OAAO,EAIL,mBAAmB,EACpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,KAAK,QAAQ,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAEpD;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAO/E;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAOjF;AAED;;;;;;GAMG;AACH,wBAAsB,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAatF;AAED;;;;;;;GAOG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,MAAM,EACf,UAAU,EAAE,MAAM,EAClB,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC,CAEf;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,GAAG,IAAI,EAC1B,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,GAAG,IAAI,GACtB,OAAO,CAAC,MAAM,CAAC,CAkBjB"}
|
|
@@ -12,6 +12,7 @@
|
|
|
12
12
|
// packages/daemon/src/focus/recorded-delivery-auto-advance.test.ts,
|
|
13
13
|
// packages/daemon/src/focus/unarmed-advance-hold.test.ts,
|
|
14
14
|
// packages/daemon/src/integration/advancement-path-parity.test.ts,
|
|
15
|
+
// packages/daemon/src/integration/f114-review-concern-never-holds-done-regression.test.ts,
|
|
15
16
|
// packages/daemon/src/supervision/no-directed-hold-producer.test.ts
|
|
16
17
|
// PINNED-BY-END
|
|
17
18
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"issues.js","sourceRoot":"","sources":["../../../src/queries/deliveries/issues.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,kGAAkG;AAClG,kEAAkE;AAClE,uDAAuD;AACvD,sEAAsE;AACtE,4DAA4D;AAC5D,qEAAqE;AACrE,+EAA+E;AAC/E,+EAA+E;AAC/E,gFAAgF;AAChF,gEAAgE;AAChE,sEAAsE;AACtE,4DAA4D;AAC5D,qEAAqE;AACrE,sEAAsE;AACtE,gBAAgB;AAEhB;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EACL,4BAA4B,EAC5B,kCAAkC,EAClC,yBAAyB,GAE1B,MAAM,4BAA4B,CAAC;AAKpC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,UAAkB;IACxD,MAAM,MAAM,GAAG,MAAM,gBAAgB,CACnC,YAAY,EACZ,4BAA4B,EAC5B,EAAE,UAAU,EAAE,CACf,CAAC;IACF,OAAO,MAAM,CAAC,MAAM,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,UAAkB;IAC9D,MAAM,MAAM,GAAG,MAAM,gBAAgB,CACnC,mCAAmC,EACnC,kCAAkC,EAClC,EAAE,UAAU,EAAE,CACf,CAAC;IACF,OAAO,MAAM,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,OAAe,EAAE,MAAc;IACrE,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;IACjE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,6EAA6E;QAC7E,IAAI,MAAM,KAAK,MAAM,IAAK,GAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,2BAA2B,CAAC,EAAE,CAAC;YACvF,MAAM,OAAO,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;YAC9E,MAAM,OAAO,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QACzE,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IACD,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;AACtD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,OAAe,EACf,UAAkB,EAClB,WAAmB;IAEnB,MAAM,OAAO,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;AAClF,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,UAAkB,EAClB,KAAa,EACb,WAA0B,EAC1B,SAAiB,EACjB,QAAuB;IAEvB,MAAM,MAAM,GAAG,MAAM,gBAAgB,CACnC,cAAc,EACd,yBAAyB,EACzB;QACE,UAAU;QACV,6EAA6E;QAC7E,uEAAuE;QACvE,aAAa,EAAE,IAAI;QACnB,MAAM,EAAE;YACN,KAAK;YACL,WAAW;YACX,SAAS;YACT,QAAQ,EAAE,QAAQ,IAAI,SAAS;SAChC;KACF,CACF,CAAC;IACF,OAAO,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;AACzB,CAAC"}
|
|
1
|
+
{"version":3,"file":"issues.js","sourceRoot":"","sources":["../../../src/queries/deliveries/issues.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,kGAAkG;AAClG,kEAAkE;AAClE,uDAAuD;AACvD,sEAAsE;AACtE,4DAA4D;AAC5D,qEAAqE;AACrE,+EAA+E;AAC/E,+EAA+E;AAC/E,gFAAgF;AAChF,gEAAgE;AAChE,sEAAsE;AACtE,4DAA4D;AAC5D,qEAAqE;AACrE,6FAA6F;AAC7F,sEAAsE;AACtE,gBAAgB;AAEhB;;;;;;;;GAQG;AAEH,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,sBAAsB,EAAE,MAAM,4CAA4C,CAAC;AACpF,OAAO,EACL,4BAA4B,EAC5B,kCAAkC,EAClC,yBAAyB,GAE1B,MAAM,4BAA4B,CAAC;AAKpC;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,UAAkB;IACxD,MAAM,MAAM,GAAG,MAAM,gBAAgB,CACnC,YAAY,EACZ,4BAA4B,EAC5B,EAAE,UAAU,EAAE,CACf,CAAC;IACF,OAAO,MAAM,CAAC,MAAM,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAAC,UAAkB;IAC9D,MAAM,MAAM,GAAG,MAAM,gBAAgB,CACnC,mCAAmC,EACnC,kCAAkC,EAClC,EAAE,UAAU,EAAE,CACf,CAAC;IACF,OAAO,MAAM,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CAAC,OAAe,EAAE,MAAc;IACrE,IAAI,CAAC;QACH,MAAM,OAAO,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;IACjE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,6EAA6E;QAC7E,IAAI,MAAM,KAAK,MAAM,IAAK,GAAa,CAAC,OAAO,EAAE,QAAQ,CAAC,2BAA2B,CAAC,EAAE,CAAC;YACvF,MAAM,OAAO,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,aAAa,EAAE,EAAE,CAAC,CAAC;YAC9E,MAAM,OAAO,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;QACzE,CAAC;aAAM,CAAC;YACN,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IACD,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,CAAC;AACtD,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CACzC,OAAe,EACf,UAAkB,EAClB,WAAmB;IAEnB,MAAM,OAAO,CAAC,cAAc,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;AAClF,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,UAAkB,EAClB,KAAa,EACb,WAA0B,EAC1B,SAAiB,EACjB,QAAuB;IAEvB,MAAM,MAAM,GAAG,MAAM,gBAAgB,CACnC,cAAc,EACd,yBAAyB,EACzB;QACE,UAAU;QACV,6EAA6E;QAC7E,uEAAuE;QACvE,aAAa,EAAE,IAAI;QACnB,MAAM,EAAE;YACN,KAAK;YACL,WAAW;YACX,SAAS;YACT,QAAQ,EAAE,QAAQ,IAAI,SAAS;SAChC;KACF,CACF,CAAC;IACF,OAAO,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC;AACzB,CAAC"}
|
|
@@ -41,7 +41,20 @@ export interface AgentResolvableEscalationRow {
|
|
|
41
41
|
focusId?: string | null;
|
|
42
42
|
productId?: string | null;
|
|
43
43
|
metadata?: Record<string, unknown> | null;
|
|
44
|
+
/**
|
|
45
|
+
* Tower routing (agent_escalations.tower_state): non-null when a team filing
|
|
46
|
+
* was routed to the Tower supervisor (tower/tower-escalation-session.ts). Such
|
|
47
|
+
* a row is the SUPERVISOR's (pending) or the OPERATOR's (deferred), never the
|
|
48
|
+
* machine lane's: neither a coding spawn nor the routing decider takes it.
|
|
49
|
+
*/
|
|
50
|
+
towerState?: string | null;
|
|
44
51
|
}
|
|
52
|
+
/**
|
|
53
|
+
* Pure: whether a row belongs to the Tower supervisor's lane (routed to it at
|
|
54
|
+
* filing). The routing decider keeps the daemon-filed observations; the
|
|
55
|
+
* supervisor takes team-filed escalations (docs/daemon/invariants-review-and-arm.md).
|
|
56
|
+
*/
|
|
57
|
+
export declare function isTowerRoutedRow(row: Pick<AgentResolvableEscalationRow, 'towerState'>): boolean;
|
|
45
58
|
/**
|
|
46
59
|
* A resolved filing reduced to the axes the routing-quality measure differences
|
|
47
60
|
* (disposition, resolution_class) plus its promotion lineage (routing-measurement.ts).
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"escalation-consumption.d.ts","sourceRoot":"","sources":["../../../src/queries/escalations/escalation-consumption.ts"],"names":[],"mappings":"AAiCA,OAAO,EAAiC,KAAK,iBAAiB,EAAE,KAAK,QAAQ,EAAE,MAAM,yBAAyB,CAAC;AAE/G,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAEtE;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,8EAA8E;IAC9E,QAAQ,EAAE,QAAQ,GAAG,IAAI,CAAC;CAC3B;AAED,gFAAgF;AAChF,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,cAAc,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,WAAW,CAAC,EAAE,iBAAiB,CAAC;IAChC,+FAA+F;IAC/F,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACnC,+FAA+F;IAC/F,gBAAgB,CAAC,EAAE,mBAAmB,CAAC;CACxC;AAED,sEAAsE;AACtE,MAAM,WAAW,4BAA4B;IAC3C,EAAE,EAAE,MAAM,CAAC;IACX,MAAM,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,eAAe,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,cAAc,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC;
|
|
1
|
+
{"version":3,"file":"escalation-consumption.d.ts","sourceRoot":"","sources":["../../../src/queries/escalations/escalation-consumption.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,6 +31,14 @@ import { callApi } from '../api-client/shared.js';
|
|
|
31
31
|
import { DISPOSITION_AGENT_RESOLVABLE, DISPOSITION_NEEDS_INTENT, OPEN_ESCALATION_STATUSES } from './escalation-dispositions.js';
|
|
32
32
|
import { readHumanAct, readObservation } from './filing-observation.js';
|
|
33
33
|
import { isMachineLaneRow, readIncidentKey, readSymptoms } from './incident-record.js';
|
|
34
|
+
/**
|
|
35
|
+
* Pure: whether a row belongs to the Tower supervisor's lane (routed to it at
|
|
36
|
+
* filing). The routing decider keeps the daemon-filed observations; the
|
|
37
|
+
* supervisor takes team-filed escalations (docs/daemon/invariants-review-and-arm.md).
|
|
38
|
+
*/
|
|
39
|
+
export function isTowerRoutedRow(row) {
|
|
40
|
+
return typeof row.towerState === 'string' && row.towerState !== '';
|
|
41
|
+
}
|
|
34
42
|
/** Pure: the optional observation + metadata fields an item carries from its row. */
|
|
35
43
|
function observationFields(metadata) {
|
|
36
44
|
const observation = readObservation(metadata);
|
|
@@ -145,7 +153,8 @@ export function toAgentResolvableItems(rows) {
|
|
|
145
153
|
const humanLane = openHumanLaneByIncident(rows);
|
|
146
154
|
return rows
|
|
147
155
|
.filter((e) => (!e.status || OPEN_ESCALATION_STATUSES.has(e.status)) &&
|
|
148
|
-
e.disposition === DISPOSITION_AGENT_RESOLVABLE
|
|
156
|
+
e.disposition === DISPOSITION_AGENT_RESOLVABLE &&
|
|
157
|
+
!isTowerRoutedRow(e))
|
|
149
158
|
.map((e) => {
|
|
150
159
|
const key = readIncidentKey(e.metadata);
|
|
151
160
|
const pending = key ? humanLane.get(key) : undefined;
|
|
@@ -192,7 +201,8 @@ export async function listOpenAgentResolvableForFocus(focusId) {
|
|
|
192
201
|
export function toOrgAgentResolvableItems(rows) {
|
|
193
202
|
return rows
|
|
194
203
|
.filter((e) => (!e.status || OPEN_ESCALATION_STATUSES.has(e.status)) &&
|
|
195
|
-
e.disposition === DISPOSITION_AGENT_RESOLVABLE
|
|
204
|
+
e.disposition === DISPOSITION_AGENT_RESOLVABLE &&
|
|
205
|
+
!isTowerRoutedRow(e))
|
|
196
206
|
.map((e) => ({
|
|
197
207
|
id: e.id,
|
|
198
208
|
escalationKind: e.escalationKind ?? null,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"escalation-consumption.js","sourceRoot":"","sources":["../../../src/queries/escalations/escalation-consumption.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,qGAAqG;AACrG,0FAA0F;AAC1F,qFAAqF;AACrF,2FAA2F;AAC3F,2EAA2E;AAC3E,gFAAgF;AAChF,6EAA6E;AAC7E,sFAAsF;AACtF,oEAAoE;AACpE,8EAA8E;AAC9E,wEAAwE;AACxE,4EAA4E;AAC5E,kEAAkE;AAClE,6DAA6D;AAC7D,4EAA4E;AAC5E,gBAAgB;AAEhB;;;;;;;;;GASG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAClD,6EAA6E;AAC7E,sEAAsE;AACtE,OAAO,EAAE,4BAA4B,EAAE,wBAAwB,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAChI,OAAO,EAAE,YAAY,EAAE,eAAe,EAAyC,MAAM,yBAAyB,CAAC;AAC/G,OAAO,EAAE,gBAAgB,EAAE,eAAe,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"escalation-consumption.js","sourceRoot":"","sources":["../../../src/queries/escalations/escalation-consumption.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,82 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The Tower supervisor's escalation reads and the daemon's hand-off write
|
|
3
|
+
* (product-api handlers/tower-escalation-handlers.ts, migration
|
|
4
|
+
* 20261020155839):
|
|
5
|
+
*
|
|
6
|
+
* listTowerPendingEscalations -- escalation_list { towerState: 'pending' }:
|
|
7
|
+
* the org's open team escalations routed to the
|
|
8
|
+
* supervisor at filing, full detail.
|
|
9
|
+
* readTowerEscalation -- escalation_get: where one row stands now (the
|
|
10
|
+
* read after a supervisor session exits).
|
|
11
|
+
* deferTowerEscalation -- daemon_escalation_tower_defer: hand a pending
|
|
12
|
+
* row to the operator, recording
|
|
13
|
+
* escalation_deferred (decided by the daemon).
|
|
14
|
+
*
|
|
15
|
+
* The pending read re-checks towerState CLIENT-SIDE: an edge that predates the
|
|
16
|
+
* column ignores the unknown filter and answers every open row, and every one of
|
|
17
|
+
* those must read as not routed rather than as owed a supervisor.
|
|
18
|
+
*
|
|
19
|
+
* @module queries/escalations/tower-escalations
|
|
20
|
+
*/
|
|
21
|
+
import { z } from 'zod';
|
|
22
|
+
/** A team escalation the supervisor owes a decision. */
|
|
23
|
+
export interface TowerPendingEscalation {
|
|
24
|
+
escalationId: string;
|
|
25
|
+
focusId: string | null;
|
|
26
|
+
productId: string | null;
|
|
27
|
+
deliveryId: string | null;
|
|
28
|
+
issueId: string | null;
|
|
29
|
+
disposition: string | null;
|
|
30
|
+
reasonType: string;
|
|
31
|
+
status: string;
|
|
32
|
+
description: string;
|
|
33
|
+
whatWasTried: string | null;
|
|
34
|
+
helpNeeded: string | null;
|
|
35
|
+
metadata: Record<string, unknown>;
|
|
36
|
+
createdAt: string;
|
|
37
|
+
towerRoutedAt: string | null;
|
|
38
|
+
}
|
|
39
|
+
/** Where one routed escalation stands. */
|
|
40
|
+
export interface TowerEscalationState {
|
|
41
|
+
escalationId: string;
|
|
42
|
+
status: string;
|
|
43
|
+
towerState: string | null;
|
|
44
|
+
answeredAt: string | null;
|
|
45
|
+
}
|
|
46
|
+
declare const RowSchema: z.ZodObject<{
|
|
47
|
+
id: z.ZodString;
|
|
48
|
+
reasonType: z.ZodString;
|
|
49
|
+
status: z.ZodString;
|
|
50
|
+
disposition: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
51
|
+
focusId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
52
|
+
productId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
53
|
+
deliveryId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
54
|
+
issueId: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
55
|
+
description: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
56
|
+
whatWasTried: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
57
|
+
helpNeeded: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
58
|
+
metadata: z.ZodOptional<z.ZodNullable<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
|
|
59
|
+
createdAt: z.ZodString;
|
|
60
|
+
towerState: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
61
|
+
towerRoutedAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
62
|
+
answeredAt: z.ZodOptional<z.ZodNullable<z.ZodString>>;
|
|
63
|
+
}, z.core.$loose>;
|
|
64
|
+
/** Pure: the open rows of a list answer that are pending on the supervisor. */
|
|
65
|
+
export declare function toTowerPendingEscalations(rows: ReadonlyArray<z.infer<typeof RowSchema>>): TowerPendingEscalation[];
|
|
66
|
+
/** The org's open team escalations pending on the Tower supervisor, oldest routed first. */
|
|
67
|
+
export declare function listTowerPendingEscalations(): Promise<TowerPendingEscalation[]>;
|
|
68
|
+
/** Where one escalation stands now. */
|
|
69
|
+
export declare function readTowerEscalation(escalationId: string): Promise<TowerEscalationState>;
|
|
70
|
+
/** What the daemon hands to the operator, and why. */
|
|
71
|
+
export interface TowerDeferral {
|
|
72
|
+
escalationId: string;
|
|
73
|
+
summary: string;
|
|
74
|
+
rationale: string;
|
|
75
|
+
evidence: Record<string, unknown>;
|
|
76
|
+
}
|
|
77
|
+
/** Hand a pending escalation to the operator, recording escalation_deferred (decided by the daemon). */
|
|
78
|
+
export declare function deferTowerEscalation(deferral: TowerDeferral): Promise<{
|
|
79
|
+
towerDecisionId: string | null;
|
|
80
|
+
}>;
|
|
81
|
+
export {};
|
|
82
|
+
//# sourceMappingURL=tower-escalations.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tower-escalations.d.ts","sourceRoot":"","sources":["../../../src/queries/escalations/tower-escalations.ts"],"names":[],"mappings":"AAOA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,wDAAwD;AACxD,MAAM,WAAW,sBAAsB;IACrC,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AAED,0CAA0C;AAC1C,MAAM,WAAW,oBAAoB;IACnC,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED,QAAA,MAAM,SAAS;;;;;;;;;;;;;;;;;iBAiBC,CAAC;AAQjB,+EAA+E;AAC/E,wBAAgB,yBAAyB,CAAC,IAAI,EAAE,aAAa,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,SAAS,CAAC,CAAC,GAAG,sBAAsB,EAAE,CAmBlH;AAED,4FAA4F;AAC5F,wBAAsB,2BAA2B,IAAI,OAAO,CAAC,sBAAsB,EAAE,CAAC,CAQrF;AAED,uCAAuC;AACvC,wBAAsB,mBAAmB,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAQ7F;AAED,sDAAsD;AACtD,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,wGAAwG;AACxG,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,aAAa,GAAG,OAAO,CAAC;IAAE,eAAe,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,CAG/G"}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
// PINNED-BY-BEGIN (generated by gen:pinned-by -- do not hand-edit; checked by lint:pinned-by)
|
|
2
|
+
// Pinned by: packages/daemon/src/composition/tower-escalation-context.test.ts,
|
|
3
|
+
// packages/daemon/src/queries/escalations/tower-escalations.test.ts,
|
|
4
|
+
// packages/daemon/src/tower/tower-escalation-prompt.test.ts,
|
|
5
|
+
// packages/daemon/src/tower/tower-escalation-session.test.ts
|
|
6
|
+
// PINNED-BY-END
|
|
7
|
+
/**
|
|
8
|
+
* The Tower supervisor's escalation reads and the daemon's hand-off write
|
|
9
|
+
* (product-api handlers/tower-escalation-handlers.ts, migration
|
|
10
|
+
* 20261020155839):
|
|
11
|
+
*
|
|
12
|
+
* listTowerPendingEscalations -- escalation_list { towerState: 'pending' }:
|
|
13
|
+
* the org's open team escalations routed to the
|
|
14
|
+
* supervisor at filing, full detail.
|
|
15
|
+
* readTowerEscalation -- escalation_get: where one row stands now (the
|
|
16
|
+
* read after a supervisor session exits).
|
|
17
|
+
* deferTowerEscalation -- daemon_escalation_tower_defer: hand a pending
|
|
18
|
+
* row to the operator, recording
|
|
19
|
+
* escalation_deferred (decided by the daemon).
|
|
20
|
+
*
|
|
21
|
+
* The pending read re-checks towerState CLIENT-SIDE: an edge that predates the
|
|
22
|
+
* column ignores the unknown filter and answers every open row, and every one of
|
|
23
|
+
* those must read as not routed rather than as owed a supervisor.
|
|
24
|
+
*
|
|
25
|
+
* @module queries/escalations/tower-escalations
|
|
26
|
+
*/
|
|
27
|
+
import { z } from 'zod';
|
|
28
|
+
import { callApiValidated } from '../api-client/shared.js';
|
|
29
|
+
const RowSchema = z.object({
|
|
30
|
+
id: z.string(),
|
|
31
|
+
reasonType: z.string(),
|
|
32
|
+
status: z.string(),
|
|
33
|
+
disposition: z.string().nullable().optional(),
|
|
34
|
+
focusId: z.string().nullable().optional(),
|
|
35
|
+
productId: z.string().nullable().optional(),
|
|
36
|
+
deliveryId: z.string().nullable().optional(),
|
|
37
|
+
issueId: z.string().nullable().optional(),
|
|
38
|
+
description: z.string().nullable().optional(),
|
|
39
|
+
whatWasTried: z.string().nullable().optional(),
|
|
40
|
+
helpNeeded: z.string().nullable().optional(),
|
|
41
|
+
metadata: z.record(z.string(), z.unknown()).nullable().optional(),
|
|
42
|
+
createdAt: z.string(),
|
|
43
|
+
towerState: z.string().nullable().optional(),
|
|
44
|
+
towerRoutedAt: z.string().nullable().optional(),
|
|
45
|
+
answeredAt: z.string().nullable().optional(),
|
|
46
|
+
}).passthrough();
|
|
47
|
+
const ListSchema = z.object({ escalations: z.array(RowSchema) }).passthrough();
|
|
48
|
+
const GetSchema = z.object({ escalation: RowSchema }).passthrough();
|
|
49
|
+
const DeferSchema = z.object({ towerDecisionId: z.string().nullable().optional() }).passthrough();
|
|
50
|
+
const OPEN = new Set(['pending', 'in_review']);
|
|
51
|
+
/** Pure: the open rows of a list answer that are pending on the supervisor. */
|
|
52
|
+
export function toTowerPendingEscalations(rows) {
|
|
53
|
+
return rows
|
|
54
|
+
.filter((r) => r.towerState === 'pending' && OPEN.has(r.status))
|
|
55
|
+
.map((r) => ({
|
|
56
|
+
escalationId: r.id,
|
|
57
|
+
focusId: r.focusId ?? null,
|
|
58
|
+
productId: r.productId ?? null,
|
|
59
|
+
deliveryId: r.deliveryId ?? null,
|
|
60
|
+
issueId: r.issueId ?? null,
|
|
61
|
+
disposition: r.disposition ?? null,
|
|
62
|
+
reasonType: r.reasonType,
|
|
63
|
+
status: r.status,
|
|
64
|
+
description: r.description ?? '',
|
|
65
|
+
whatWasTried: r.whatWasTried ?? null,
|
|
66
|
+
helpNeeded: r.helpNeeded ?? null,
|
|
67
|
+
metadata: r.metadata ?? {},
|
|
68
|
+
createdAt: r.createdAt,
|
|
69
|
+
towerRoutedAt: r.towerRoutedAt ?? null,
|
|
70
|
+
}));
|
|
71
|
+
}
|
|
72
|
+
/** The org's open team escalations pending on the Tower supervisor, oldest routed first. */
|
|
73
|
+
export async function listTowerPendingEscalations() {
|
|
74
|
+
const res = await callApiValidated('escalation_list', ListSchema, {
|
|
75
|
+
fields: { towerState: 'pending', statuses: ['pending', 'in_review'] },
|
|
76
|
+
limit: 200,
|
|
77
|
+
detail: 'full',
|
|
78
|
+
});
|
|
79
|
+
return toTowerPendingEscalations(res.escalations)
|
|
80
|
+
.sort((a, b) => (a.towerRoutedAt ?? a.createdAt).localeCompare(b.towerRoutedAt ?? b.createdAt));
|
|
81
|
+
}
|
|
82
|
+
/** Where one escalation stands now. */
|
|
83
|
+
export async function readTowerEscalation(escalationId) {
|
|
84
|
+
const res = await callApiValidated('escalation_get', GetSchema, { escalationId, detail: 'full' });
|
|
85
|
+
return {
|
|
86
|
+
escalationId: res.escalation.id,
|
|
87
|
+
status: res.escalation.status,
|
|
88
|
+
towerState: res.escalation.towerState ?? null,
|
|
89
|
+
answeredAt: res.escalation.answeredAt ?? null,
|
|
90
|
+
};
|
|
91
|
+
}
|
|
92
|
+
/** Hand a pending escalation to the operator, recording escalation_deferred (decided by the daemon). */
|
|
93
|
+
export async function deferTowerEscalation(deferral) {
|
|
94
|
+
const res = await callApiValidated('daemon_escalation_tower_defer', DeferSchema, { ...deferral });
|
|
95
|
+
return { towerDecisionId: res.towerDecisionId ?? null };
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=tower-escalations.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"tower-escalations.js","sourceRoot":"","sources":["../../../src/queries/escalations/tower-escalations.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,8 +1,24 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
* review-
|
|
5
|
-
*
|
|
2
|
+
* THE review-finding rule, daemon side, and the RECORDED CONCERNS of a focus as
|
|
3
|
+
* pure functions over its review-finding facts
|
|
4
|
+
* (queries/focus-review/review-finding-facts.ts).
|
|
5
|
+
*
|
|
6
|
+
* A finding blocks only when a not_met acceptance criterion names it. Every
|
|
7
|
+
* other issue a review files is a CONCERN: recorded for the human and the
|
|
8
|
+
* next arm, never the running team's work, never holding its delivery.
|
|
9
|
+
*
|
|
10
|
+
* findingClassOf is a hand MIRROR of the canonical
|
|
11
|
+
* supabase/functions/_shared/review-finding-class.ts findingClassOf (the daemon
|
|
12
|
+
* cannot import the Deno tree at runtime); review-finding-class-parity.test.ts
|
|
13
|
+
* runs both over one case matrix and fails on the first disagreement. Every
|
|
14
|
+
* daemon reader classifies through it: the live delivery writers
|
|
15
|
+
* (delivery/recorded-concerns.ts), the review exit
|
|
16
|
+
* (completion/review-exit/review-defect-detector.ts isBlockingReviewFinding),
|
|
17
|
+
* the team prompt's listing and the ended-arm summary.
|
|
18
|
+
*
|
|
19
|
+
* A daemon-filed rework Bug (gate or shortfall) is never a review finding,
|
|
20
|
+
* whatever session it was credited to (isDaemonReworkIssue): it is owed work by
|
|
21
|
+
* construction.
|
|
6
22
|
*
|
|
7
23
|
* Kept apart from the facts READ so a pure caller (the team prompt's listing,
|
|
8
24
|
* the reconcile writers) does not import the API client.
|
|
@@ -10,17 +26,38 @@
|
|
|
10
26
|
* @module queries/focus-review/recorded-concern-ids
|
|
11
27
|
*/
|
|
12
28
|
import type { ReviewFindingClass } from './review-finding-facts.js';
|
|
29
|
+
/**
|
|
30
|
+
* MIRROR of _shared/review-finding-class.ts findingClassOf. The class of one
|
|
31
|
+
* issue under the rule: null = not a review finding (ordinary owed work);
|
|
32
|
+
* 'blocking' = review-filed and recorded blocking (a not_met criterion names
|
|
33
|
+
* it); 'concern' = review-filed and anything else -- recorded concern, or no
|
|
34
|
+
* class reached the reader (an older edge's link-less review). Pure.
|
|
35
|
+
*/
|
|
36
|
+
export declare function findingClassOf(issueId: string, reviewFiledIds: ReadonlySet<string>, findingClasses: ReadonlyMap<string, ReviewFindingClass>): ReviewFindingClass | null;
|
|
37
|
+
/** MIRROR of _shared/review-finding-class.ts isBlockingFinding: only a recorded 'blocking' blocks. Pure. */
|
|
38
|
+
export declare function isBlockingFinding(issueId: string, findingClasses: ReadonlyMap<string, ReviewFindingClass>): boolean;
|
|
39
|
+
/**
|
|
40
|
+
* Whether an issue is a daemon-filed rework Bug -- a failed gate's
|
|
41
|
+
* (isGateReworkIssue) or a verify shortfall's (isShortfallReworkIssue). Such a
|
|
42
|
+
* Bug is owed work by construction and is never a review finding, even when an
|
|
43
|
+
* older edge credited it to a review session that was live when it was filed.
|
|
44
|
+
* An issue whose title is not known is not one. Pure.
|
|
45
|
+
*/
|
|
46
|
+
export declare function isDaemonReworkIssue(issue: {
|
|
47
|
+
title?: string | null;
|
|
48
|
+
}): boolean;
|
|
13
49
|
/** The facts as the pure helpers below read them (a FocusReviewFindingFacts, or the review exit's id set + classes). */
|
|
14
50
|
export interface ReviewFindingFactsView {
|
|
15
51
|
issueIds: Iterable<string>;
|
|
16
52
|
findingClasses: ReadonlyMap<string, ReviewFindingClass>;
|
|
17
53
|
}
|
|
18
54
|
/**
|
|
19
|
-
* Pure: the ids of the RECORDED CONCERNS among the facts -- review-filed
|
|
20
|
-
* `issueIds`)
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
55
|
+
* Pure: the ids of the RECORDED CONCERNS among the facts -- every review-filed
|
|
56
|
+
* id (in `issueIds`) findingClassOf calls a concern: anything no not_met
|
|
57
|
+
* criterion names, an id with no class included. A concern is recorded for the
|
|
58
|
+
* human and the next arm; it is not the running team's work
|
|
59
|
+
* (prompt-sections/prompt-listing.ts splitRecordedConcerns). A caller holding
|
|
60
|
+
* the issues' titles also drops daemon rework Bugs (isDaemonReworkIssue).
|
|
24
61
|
*/
|
|
25
62
|
export declare function recordedConcernIds(facts: ReviewFindingFactsView): Set<string>;
|
|
26
63
|
/** One open recorded concern, as a human-facing summary names it. */
|
|
@@ -34,8 +71,8 @@ export interface OpenConcernSummary {
|
|
|
34
71
|
* Pure: every OPEN recorded concern among `issues`, by key and title -- the
|
|
35
72
|
* "Open concerns (recorded by review, not worked by this arm)" list a human reads
|
|
36
73
|
* when the armed run ends (queries/focuses/ended-arm.ts `openConcerns`). Closed
|
|
37
|
-
* concerns (Done / Verified / In Review / Cancelled ...) are not listed
|
|
38
|
-
*
|
|
74
|
+
* concerns (Done / Verified / In Review / Cancelled ...) are not listed, nor is a
|
|
75
|
+
* daemon rework Bug.
|
|
39
76
|
*/
|
|
40
77
|
export declare function openRecordedConcerns(issues: ReadonlyArray<{
|
|
41
78
|
id: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recorded-concern-ids.d.ts","sourceRoot":"","sources":["../../../src/queries/focus-review/recorded-concern-ids.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"recorded-concern-ids.d.ts","sourceRoot":"","sources":["../../../src/queries/focus-review/recorded-concern-ids.ts"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAGpE;;;;;;GAMG;AACH,wBAAgB,cAAc,CAC5B,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,WAAW,CAAC,MAAM,CAAC,EACnC,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,kBAAkB,CAAC,GACtD,kBAAkB,GAAG,IAAI,CAG3B;AAED,4GAA4G;AAC5G,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,kBAAkB,CAAC,GACtD,OAAO,CAET;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE;IAAE,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAAG,OAAO,CAG7E;AAED,wHAAwH;AACxH,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAC3B,cAAc,EAAE,WAAW,CAAC,MAAM,EAAE,kBAAkB,CAAC,CAAC;CACzD;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,sBAAsB,GAAG,GAAG,CAAC,MAAM,CAAC,CAO7E;AAED,qEAAqE;AACrE,MAAM,WAAW,kBAAkB;IACjC,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,aAAa,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAAC,EAC7G,KAAK,EAAE,sBAAsB,GAC5B,kBAAkB,EAAE,CAKtB"}
|
|
@@ -1,18 +1,48 @@
|
|
|
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/prompt/recorded-concerns-not-owed-work.test.ts
|
|
2
|
+
// Pinned by: packages/daemon/src/prompt/recorded-concerns-not-owed-work.test.ts,
|
|
3
|
+
// packages/daemon/src/queries/focus-review/review-finding-class-parity.test.ts
|
|
3
4
|
// PINNED-BY-END
|
|
4
|
-
import { OPEN_ISSUE_STATUSES } from '../../types/issue-status.js';
|
|
5
|
+
import { OPEN_ISSUE_STATUSES, isGateReworkIssue, isShortfallReworkIssue } from '../../types/issue-status.js';
|
|
5
6
|
/**
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
7
|
+
* MIRROR of _shared/review-finding-class.ts findingClassOf. The class of one
|
|
8
|
+
* issue under the rule: null = not a review finding (ordinary owed work);
|
|
9
|
+
* 'blocking' = review-filed and recorded blocking (a not_met criterion names
|
|
10
|
+
* it); 'concern' = review-filed and anything else -- recorded concern, or no
|
|
11
|
+
* class reached the reader (an older edge's link-less review). Pure.
|
|
12
|
+
*/
|
|
13
|
+
export function findingClassOf(issueId, reviewFiledIds, findingClasses) {
|
|
14
|
+
if (!reviewFiledIds.has(issueId))
|
|
15
|
+
return null;
|
|
16
|
+
return findingClasses.get(issueId) === 'blocking' ? 'blocking' : 'concern';
|
|
17
|
+
}
|
|
18
|
+
/** MIRROR of _shared/review-finding-class.ts isBlockingFinding: only a recorded 'blocking' blocks. Pure. */
|
|
19
|
+
export function isBlockingFinding(issueId, findingClasses) {
|
|
20
|
+
return findingClasses.get(issueId) === 'blocking';
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Whether an issue is a daemon-filed rework Bug -- a failed gate's
|
|
24
|
+
* (isGateReworkIssue) or a verify shortfall's (isShortfallReworkIssue). Such a
|
|
25
|
+
* Bug is owed work by construction and is never a review finding, even when an
|
|
26
|
+
* older edge credited it to a review session that was live when it was filed.
|
|
27
|
+
* An issue whose title is not known is not one. Pure.
|
|
28
|
+
*/
|
|
29
|
+
export function isDaemonReworkIssue(issue) {
|
|
30
|
+
const title = issue.title;
|
|
31
|
+
return typeof title === 'string' && (isGateReworkIssue({ title }) || isShortfallReworkIssue({ title }));
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Pure: the ids of the RECORDED CONCERNS among the facts -- every review-filed
|
|
35
|
+
* id (in `issueIds`) findingClassOf calls a concern: anything no not_met
|
|
36
|
+
* criterion names, an id with no class included. A concern is recorded for the
|
|
37
|
+
* human and the next arm; it is not the running team's work
|
|
38
|
+
* (prompt-sections/prompt-listing.ts splitRecordedConcerns). A caller holding
|
|
39
|
+
* the issues' titles also drops daemon rework Bugs (isDaemonReworkIssue).
|
|
11
40
|
*/
|
|
12
41
|
export function recordedConcernIds(facts) {
|
|
42
|
+
const filed = new Set(facts.issueIds);
|
|
13
43
|
const concerns = new Set();
|
|
14
|
-
for (const id of
|
|
15
|
-
if (facts.findingClasses
|
|
44
|
+
for (const id of filed) {
|
|
45
|
+
if (findingClassOf(id, filed, facts.findingClasses) === 'concern')
|
|
16
46
|
concerns.add(id);
|
|
17
47
|
}
|
|
18
48
|
return concerns;
|
|
@@ -21,13 +51,13 @@ export function recordedConcernIds(facts) {
|
|
|
21
51
|
* Pure: every OPEN recorded concern among `issues`, by key and title -- the
|
|
22
52
|
* "Open concerns (recorded by review, not worked by this arm)" list a human reads
|
|
23
53
|
* when the armed run ends (queries/focuses/ended-arm.ts `openConcerns`). Closed
|
|
24
|
-
* concerns (Done / Verified / In Review / Cancelled ...) are not listed
|
|
25
|
-
*
|
|
54
|
+
* concerns (Done / Verified / In Review / Cancelled ...) are not listed, nor is a
|
|
55
|
+
* daemon rework Bug.
|
|
26
56
|
*/
|
|
27
57
|
export function openRecordedConcerns(issues, facts) {
|
|
28
58
|
const concernIds = recordedConcernIds(facts);
|
|
29
59
|
return issues
|
|
30
|
-
.filter((i) => concernIds.has(i.id) && OPEN_ISSUE_STATUSES.has(i.status))
|
|
60
|
+
.filter((i) => concernIds.has(i.id) && !isDaemonReworkIssue(i) && OPEN_ISSUE_STATUSES.has(i.status))
|
|
31
61
|
.map((i) => ({ id: i.id, key: i.key, title: i.title, deliveryId: i.deliveryId ?? null }));
|
|
32
62
|
}
|
|
33
63
|
//# sourceMappingURL=recorded-concern-ids.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"recorded-concern-ids.js","sourceRoot":"","sources":["../../../src/queries/focus-review/recorded-concern-ids.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,
|
|
1
|
+
{"version":3,"file":"recorded-concern-ids.js","sourceRoot":"","sources":["../../../src/queries/focus-review/recorded-concern-ids.ts"],"names":[],"mappings":"AAAA,8FAA8F;AAC9F,iFAAiF;AACjF,iFAAiF;AACjF,gBAAgB;AA+BhB,OAAO,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,sBAAsB,EAAE,MAAM,6BAA6B,CAAC;AAE7G;;;;;;GAMG;AACH,MAAM,UAAU,cAAc,CAC5B,OAAe,EACf,cAAmC,EACnC,cAAuD;IAEvD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAC;IAC9C,OAAO,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,UAAU,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAC;AAC7E,CAAC;AAED,4GAA4G;AAC5G,MAAM,UAAU,iBAAiB,CAC/B,OAAe,EACf,cAAuD;IAEvD,OAAO,cAAc,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,UAAU,CAAC;AACpD,CAAC;AAED;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,KAAgC;IAClE,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;IAC1B,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,iBAAiB,CAAC,EAAE,KAAK,EAAE,CAAC,IAAI,sBAAsB,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;AAC1G,CAAC;AAQD;;;;;;;GAOG;AACH,MAAM,UAAU,kBAAkB,CAAC,KAA6B;IAC9D,MAAM,KAAK,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACtC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,KAAK,MAAM,EAAE,IAAI,KAAK,EAAE,CAAC;QACvB,IAAI,cAAc,CAAC,EAAE,EAAE,KAAK,EAAE,KAAK,CAAC,cAAc,CAAC,KAAK,SAAS;YAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IACtF,CAAC;IACD,OAAO,QAAQ,CAAC;AAClB,CAAC;AAUD;;;;;;GAMG;AACH,MAAM,UAAU,oBAAoB,CAClC,MAA6G,EAC7G,KAA6B;IAE7B,MAAM,UAAU,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAC7C,OAAO,MAAM;SACV,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;SACnG,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC,UAAU,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC;AAC9F,CAAC"}
|