@telora/daemon 0.21.26 → 0.21.82
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 +4 -3
- package/dist/audit/audit-hooks.d.ts +127 -0
- package/dist/audit/audit-hooks.d.ts.map +1 -0
- package/dist/audit/audit-hooks.js +346 -0
- package/dist/audit/audit-hooks.js.map +1 -0
- package/dist/audit/audit-phase.d.ts +170 -0
- package/dist/audit/audit-phase.d.ts.map +1 -0
- package/dist/audit/audit-phase.js +492 -0
- package/dist/audit/audit-phase.js.map +1 -0
- package/dist/audit/audit-prompt.d.ts.map +1 -0
- package/dist/audit/audit-prompt.js.map +1 -0
- package/dist/audit/audit-shape.d.ts.map +1 -0
- package/dist/audit/audit-shape.js.map +1 -0
- package/dist/backends/agent-backend.d.ts +1 -1
- package/dist/backends/agent-backend.d.ts.map +1 -1
- package/dist/backends/availability.d.ts +1 -1
- package/dist/backends/availability.d.ts.map +1 -1
- package/dist/backends/codex/codex-backend.js +1 -1
- package/dist/backends/codex/codex-backend.js.map +1 -1
- package/dist/backends/codex/codex-mcp-proxy.js +1 -1
- package/dist/backends/codex/codex-mcp-proxy.js.map +1 -1
- package/dist/backends/codex/mcp-preflight.d.ts +1 -1
- package/dist/backends/codex/mcp-preflight.d.ts.map +1 -1
- package/dist/backends/lacuna/launch-adapter.d.ts +1 -1
- package/dist/backends/lacuna/launch-adapter.d.ts.map +1 -1
- package/dist/backends/lacuna/lifecycle.d.ts +1 -1
- package/dist/backends/lacuna/lifecycle.d.ts.map +1 -1
- package/dist/backends/lacuna/lifecycle.js +1 -1
- package/dist/backends/lacuna/lifecycle.js.map +1 -1
- package/dist/backends/lacuna/supervisor.d.ts +1 -1
- package/dist/backends/lacuna/supervisor.d.ts.map +1 -1
- package/dist/backends/lacuna/supervisor.js +2 -2
- package/dist/backends/lacuna/supervisor.js.map +1 -1
- package/dist/backends/resolve.js +2 -2
- package/dist/backends/resolve.js.map +1 -1
- package/dist/ci/ci-escalation.d.ts.map +1 -0
- package/dist/ci/ci-escalation.js +66 -0
- package/dist/ci/ci-escalation.js.map +1 -0
- package/dist/ci/ci-sensor-loop.d.ts +146 -0
- package/dist/ci/ci-sensor-loop.d.ts.map +1 -0
- package/dist/ci/ci-sensor-loop.js +265 -0
- package/dist/ci/ci-sensor-loop.js.map +1 -0
- package/dist/ci/ci-status-git.d.ts +53 -0
- package/dist/ci/ci-status-git.d.ts.map +1 -0
- package/dist/ci/ci-status-git.js +89 -0
- package/dist/ci/ci-status-git.js.map +1 -0
- package/dist/ci/ci-status.d.ts +137 -0
- package/dist/ci/ci-status.d.ts.map +1 -0
- package/dist/ci/ci-status.js.map +1 -0
- package/dist/cli/backfill-frt-prose.d.ts +3 -3
- package/dist/cli/backfill-frt-prose.d.ts.map +1 -1
- package/dist/cli/backfill-frt-prose.js +2 -2
- package/dist/cli/backfill-frt-prose.js.map +1 -1
- package/dist/cli/codex-provision.js +1 -1
- package/dist/cli/codex-provision.js.map +1 -1
- package/dist/cli/connect/cline.js +1 -1
- package/dist/cli/connect/cline.js.map +1 -1
- package/dist/cli/connect/codex.js +1 -1
- package/dist/cli/connect/codex.js.map +1 -1
- package/dist/cli/connect/ide.js +1 -1
- package/dist/cli/connect/ide.js.map +1 -1
- package/dist/cli/connect.js +4 -4
- package/dist/cli/connect.js.map +1 -1
- package/dist/cli/open.js +2 -2
- package/dist/cli/open.js.map +1 -1
- package/dist/cli/session-state.d.ts +1 -1
- package/dist/cli/session-state.d.ts.map +1 -1
- package/dist/cli/session-state.js +4 -4
- package/dist/cli/session-state.js.map +1 -1
- package/dist/cli/verify-setup-config.d.ts +1 -1
- package/dist/cli/verify-setup-config.d.ts.map +1 -1
- package/dist/cli/verify-setup.js +2 -2
- package/dist/cli/verify-setup.js.map +1 -1
- package/dist/completion/advanceability.d.ts +1 -1
- package/dist/completion/advanceability.d.ts.map +1 -1
- package/dist/completion/advanceability.js +2 -2
- package/dist/completion/advanceability.js.map +1 -1
- package/dist/completion/delivery-advancement-guard.d.ts +20 -2
- package/dist/completion/delivery-advancement-guard.d.ts.map +1 -1
- package/dist/completion/delivery-advancement-guard.js +32 -4
- package/dist/completion/delivery-advancement-guard.js.map +1 -1
- package/dist/completion/detector.d.ts +9 -3
- package/dist/completion/detector.d.ts.map +1 -1
- package/dist/completion/detector.js +26 -4
- package/dist/completion/detector.js.map +1 -1
- package/dist/completion/escalation-provenance.d.ts +78 -0
- package/dist/completion/escalation-provenance.d.ts.map +1 -0
- package/dist/completion/escalation-provenance.js +206 -0
- package/dist/completion/escalation-provenance.js.map +1 -0
- package/dist/completion/escalations.d.ts +85 -0
- package/dist/completion/escalations.d.ts.map +1 -0
- package/dist/completion/escalations.js +91 -0
- package/dist/completion/escalations.js.map +1 -0
- package/dist/completion/event-entry-phases.d.ts +1 -1
- package/dist/completion/event-entry-phases.d.ts.map +1 -1
- package/dist/completion/event-entry-phases.js +3 -3
- package/dist/completion/event-entry-phases.js.map +1 -1
- package/dist/completion/event-escalations.d.ts +1 -1
- package/dist/completion/event-escalations.d.ts.map +1 -1
- package/dist/completion/event-escalations.js +1 -1
- package/dist/completion/event-escalations.js.map +1 -1
- package/dist/completion/event-phases.d.ts +44 -1
- package/dist/completion/event-phases.d.ts.map +1 -1
- package/dist/completion/event-phases.js +165 -13
- package/dist/completion/event-phases.js.map +1 -1
- package/dist/completion/event.d.ts +20 -1
- package/dist/completion/event.d.ts.map +1 -1
- package/dist/completion/event.js +7 -4
- package/dist/completion/event.js.map +1 -1
- package/dist/completion/exit-classification.d.ts +1 -1
- package/dist/completion/exit-classification.d.ts.map +1 -1
- package/dist/completion/merge-phase.d.ts +21 -7
- package/dist/completion/merge-phase.d.ts.map +1 -1
- package/dist/completion/merge-phase.js +14 -11
- package/dist/completion/merge-phase.js.map +1 -1
- package/dist/completion/progress-snapshot.d.ts +1 -1
- package/dist/completion/progress-snapshot.d.ts.map +1 -1
- package/dist/completion/read-only-pristine.d.ts +1 -1
- package/dist/completion/read-only-pristine.d.ts.map +1 -1
- package/dist/completion/read-only-pristine.js +2 -2
- package/dist/completion/read-only-pristine.js.map +1 -1
- package/dist/completion/review-defect-detector.d.ts +82 -0
- package/dist/completion/review-defect-detector.d.ts.map +1 -0
- package/dist/completion/review-defect-detector.js +148 -0
- package/dist/completion/review-defect-detector.js.map +1 -0
- package/dist/completion/review-exit-escalations.d.ts +1 -1
- package/dist/completion/review-exit-escalations.d.ts.map +1 -1
- package/dist/completion/review-exit-escalations.js +1 -1
- package/dist/completion/review-exit-escalations.js.map +1 -1
- package/dist/completion/review-exit-phase.d.ts +4 -3
- package/dist/completion/review-exit-phase.d.ts.map +1 -1
- package/dist/completion/review-exit-phase.js +10 -9
- package/dist/completion/review-exit-phase.js.map +1 -1
- package/dist/completion/review-exit-shortfall.d.ts +1 -1
- package/dist/completion/review-exit-shortfall.d.ts.map +1 -1
- package/dist/completion/review-exit-shortfall.js +1 -1
- package/dist/completion/review-exit-shortfall.js.map +1 -1
- package/dist/completion/review-spawn-coverage-guard.d.ts.map +1 -0
- package/dist/completion/review-spawn-coverage-guard.js.map +1 -0
- package/dist/completion/state-cascade.d.ts +90 -0
- package/dist/completion/state-cascade.d.ts.map +1 -0
- package/dist/completion/state-cascade.js +230 -0
- package/dist/completion/state-cascade.js.map +1 -0
- package/dist/completion/status-advance-phase.d.ts +4 -4
- package/dist/completion/status-advance-phase.d.ts.map +1 -1
- package/dist/completion/status-advance-phase.js +9 -7
- package/dist/completion/status-advance-phase.js.map +1 -1
- package/dist/completion/team-completion.d.ts +2 -2
- package/dist/completion/team-completion.d.ts.map +1 -1
- package/dist/completion/team-completion.js +15 -9
- package/dist/completion/team-completion.js.map +1 -1
- package/dist/completion/team-lifecycle.d.ts +1 -1
- package/dist/completion/team-lifecycle.d.ts.map +1 -1
- package/dist/completion/team-lifecycle.js +10 -11
- package/dist/completion/team-lifecycle.js.map +1 -1
- package/dist/completion/terminated-work-reconcile.d.ts +2 -2
- package/dist/completion/terminated-work-reconcile.d.ts.map +1 -1
- package/dist/completion/terminated-work-reconcile.js +5 -4
- package/dist/completion/terminated-work-reconcile.js.map +1 -1
- package/dist/context/context-audit.d.ts +68 -0
- package/dist/context/context-audit.d.ts.map +1 -0
- package/dist/context/context-audit.js.map +1 -0
- package/dist/context/context-lock.d.ts +129 -0
- package/dist/context/context-lock.d.ts.map +1 -0
- package/dist/context/context-lock.js.map +1 -0
- package/dist/delivery/delivery-advance-block.d.ts +143 -0
- package/dist/delivery/delivery-advance-block.d.ts.map +1 -0
- package/dist/delivery/delivery-advance-block.js +360 -0
- package/dist/delivery/delivery-advance-block.js.map +1 -0
- package/dist/delivery/delivery-artifacts.d.ts +26 -0
- package/dist/delivery/delivery-artifacts.d.ts.map +1 -0
- package/dist/delivery/delivery-artifacts.js +56 -0
- package/dist/delivery/delivery-artifacts.js.map +1 -0
- package/dist/delivery/delivery-close-actions.d.ts +39 -0
- package/dist/delivery/delivery-close-actions.d.ts.map +1 -0
- package/dist/delivery/delivery-close-actions.js +53 -0
- package/dist/delivery/delivery-close-actions.js.map +1 -0
- package/dist/delivery/delivery-lifecycle.d.ts +144 -0
- package/dist/delivery/delivery-lifecycle.d.ts.map +1 -0
- package/dist/delivery/delivery-lifecycle.js +498 -0
- package/dist/delivery/delivery-lifecycle.js.map +1 -0
- package/dist/delivery/delivery-reconciler-apply.d.ts.map +1 -0
- package/dist/delivery/delivery-reconciler-apply.js +77 -0
- package/dist/delivery/delivery-reconciler-apply.js.map +1 -0
- package/dist/delivery/delivery-reconciler-shadow.d.ts +66 -0
- package/dist/delivery/delivery-reconciler-shadow.d.ts.map +1 -0
- package/dist/delivery/delivery-reconciler-shadow.js +127 -0
- package/dist/delivery/delivery-reconciler-shadow.js.map +1 -0
- package/dist/delivery/delivery-reconciler.d.ts +217 -0
- package/dist/delivery/delivery-reconciler.d.ts.map +1 -0
- package/dist/delivery/delivery-reconciler.js +249 -0
- package/dist/delivery/delivery-reconciler.js.map +1 -0
- package/dist/delivery/external-hold.d.ts +145 -0
- package/dist/delivery/external-hold.d.ts.map +1 -0
- package/dist/delivery/external-hold.js +223 -0
- package/dist/delivery/external-hold.js.map +1 -0
- package/dist/delivery/operator-hold.d.ts +66 -0
- package/dist/delivery/operator-hold.d.ts.map +1 -0
- package/dist/delivery/operator-hold.js +99 -0
- package/dist/delivery/operator-hold.js.map +1 -0
- package/dist/directive/close-loop-dispatcher.d.ts +325 -0
- package/dist/directive/close-loop-dispatcher.d.ts.map +1 -0
- package/dist/directive/close-loop-dispatcher.js +362 -0
- package/dist/directive/close-loop-dispatcher.js.map +1 -0
- package/dist/directive/close-loop-stage.d.ts +2 -2
- package/dist/directive/close-loop-stage.d.ts.map +1 -1
- package/dist/directive/close-loop-stage.js +3 -3
- package/dist/directive/close-loop-stage.js.map +1 -1
- package/dist/directive/directive-assembly.d.ts +2 -3
- package/dist/directive/directive-assembly.d.ts.map +1 -1
- package/dist/directive/directive-assembly.js +5 -4
- package/dist/directive/directive-assembly.js.map +1 -1
- package/dist/directive/directive-dispatch.d.ts +2 -2
- package/dist/directive/directive-dispatch.d.ts.map +1 -1
- package/dist/directive/directive-dispatch.js +3 -3
- package/dist/directive/directive-dispatch.js.map +1 -1
- package/dist/directive/directive-executor.d.ts +37 -0
- package/dist/directive/directive-executor.d.ts.map +1 -0
- package/dist/directive/directive-executor.js +241 -0
- package/dist/directive/directive-executor.js.map +1 -0
- package/dist/directive/directive-queue.d.ts +2 -2
- package/dist/directive/directive-queue.d.ts.map +1 -1
- package/dist/directive/phase-sync.js +3 -3
- package/dist/directive/phase-sync.js.map +1 -1
- package/dist/directive/resolver-dispatch.d.ts.map +1 -0
- package/dist/directive/resolver-dispatch.js.map +1 -0
- package/dist/discovery-fetch.js +1 -1
- package/dist/discovery-fetch.js.map +1 -1
- package/dist/drift/drift-eval-loop.d.ts +71 -0
- package/dist/drift/drift-eval-loop.d.ts.map +1 -0
- package/dist/drift/drift-eval-loop.js +259 -0
- package/dist/drift/drift-eval-loop.js.map +1 -0
- package/dist/drift/drift-evaluator.d.ts.map +1 -0
- package/dist/drift/drift-evaluator.js.map +1 -0
- package/dist/drift/drift-ratify-policy.d.ts.map +1 -0
- package/dist/drift/drift-ratify-policy.js.map +1 -0
- package/dist/drift/retention-observation.d.ts.map +1 -0
- package/dist/drift/retention-observation.js.map +1 -0
- package/dist/drift/sensor-sweep.d.ts +194 -0
- package/dist/drift/sensor-sweep.d.ts.map +1 -0
- package/dist/drift/sensor-sweep.js +458 -0
- package/dist/drift/sensor-sweep.js.map +1 -0
- package/dist/drift/staleness-sensor.d.ts +176 -0
- package/dist/drift/staleness-sensor.d.ts.map +1 -0
- package/dist/drift/staleness-sensor.js +335 -0
- package/dist/drift/staleness-sensor.js.map +1 -0
- package/dist/drift/staleness.d.ts +134 -0
- package/dist/drift/staleness.d.ts.map +1 -0
- package/dist/drift/staleness.js +249 -0
- package/dist/drift/staleness.js.map +1 -0
- package/dist/focus/focus-branch-ahead.d.ts +42 -0
- package/dist/focus/focus-branch-ahead.d.ts.map +1 -0
- package/dist/focus/focus-branch-ahead.js +45 -0
- package/dist/focus/focus-branch-ahead.js.map +1 -0
- package/dist/focus/focus-branch-identity.d.ts +62 -0
- package/dist/focus/focus-branch-identity.d.ts.map +1 -0
- package/dist/focus/focus-branch-identity.js +59 -0
- package/dist/focus/focus-branch-identity.js.map +1 -0
- package/dist/focus/focus-engine.d.ts +74 -0
- package/dist/focus/focus-engine.d.ts.map +1 -0
- package/dist/focus/focus-engine.js +528 -0
- package/dist/focus/focus-engine.js.map +1 -0
- package/dist/focus/focus-executor.d.ts +79 -0
- package/dist/focus/focus-executor.d.ts.map +1 -0
- package/dist/focus/focus-executor.js +421 -0
- package/dist/focus/focus-executor.js.map +1 -0
- package/dist/focus/focus-lifecycle.d.ts +60 -0
- package/dist/focus/focus-lifecycle.d.ts.map +1 -0
- package/dist/focus/focus-lifecycle.js +543 -0
- package/dist/focus/focus-lifecycle.js.map +1 -0
- package/dist/focus/focus-loop-registry.d.ts +52 -0
- package/dist/focus/focus-loop-registry.d.ts.map +1 -0
- package/dist/focus/focus-loop-registry.js +362 -0
- package/dist/focus/focus-loop-registry.js.map +1 -0
- package/dist/focus/focus-loop.d.ts +96 -0
- package/dist/focus/focus-loop.d.ts.map +1 -0
- package/dist/focus/focus-loop.js +364 -0
- package/dist/focus/focus-loop.js.map +1 -0
- package/dist/focus/focus-phase.d.ts.map +1 -0
- package/dist/focus/focus-phase.js.map +1 -0
- package/dist/focus/focus-respawn-guard.d.ts +39 -0
- package/dist/focus/focus-respawn-guard.d.ts.map +1 -0
- package/dist/focus/focus-respawn-guard.js +62 -0
- package/dist/focus/focus-respawn-guard.js.map +1 -0
- package/dist/focus/focus-team-state.d.ts +115 -0
- package/dist/focus/focus-team-state.d.ts.map +1 -0
- package/dist/focus/focus-team-state.js +195 -0
- package/dist/focus/focus-team-state.js.map +1 -0
- package/dist/focus/focus-worktree-state.d.ts +70 -0
- package/dist/focus/focus-worktree-state.d.ts.map +1 -0
- package/dist/focus/focus-worktree-state.js +118 -0
- package/dist/focus/focus-worktree-state.js.map +1 -0
- package/dist/focus/listener-auto-advance.d.ts +126 -0
- package/dist/focus/listener-auto-advance.d.ts.map +1 -0
- package/dist/focus/listener-auto-advance.js +629 -0
- package/dist/focus/listener-auto-advance.js.map +1 -0
- package/dist/focus/listener.d.ts +101 -0
- package/dist/focus/listener.d.ts.map +1 -0
- package/dist/focus/listener.js +770 -0
- package/dist/focus/listener.js.map +1 -0
- package/dist/focus-stage-lifecycle/index.d.ts +63 -0
- package/dist/focus-stage-lifecycle/index.d.ts.map +1 -0
- package/dist/focus-stage-lifecycle/index.js +179 -0
- package/dist/focus-stage-lifecycle/index.js.map +1 -0
- package/dist/focus-stage-lifecycle/planning-release.js +4 -4
- package/dist/focus-stage-lifecycle/planning-release.js.map +1 -1
- package/dist/focus-stage-lifecycle/review-convergence.d.ts +1 -1
- package/dist/focus-stage-lifecycle/review-convergence.d.ts.map +1 -1
- package/dist/focus-stage-lifecycle/review-convergence.js +2 -2
- package/dist/focus-stage-lifecycle/review-convergence.js.map +1 -1
- package/dist/focus-stage-lifecycle/wedge-watchdog.d.ts +1 -1
- package/dist/focus-stage-lifecycle/wedge-watchdog.d.ts.map +1 -1
- package/dist/focus-stage-lifecycle/wedge-watchdog.js +3 -3
- package/dist/focus-stage-lifecycle/wedge-watchdog.js.map +1 -1
- package/dist/git/branch.d.ts +1 -1
- package/dist/git/branch.d.ts.map +1 -1
- package/dist/git/branch.js +1 -1
- package/dist/git/branch.js.map +1 -1
- package/dist/git/exec.d.ts +24 -0
- package/dist/git/exec.d.ts.map +1 -0
- package/dist/git/exec.js +114 -0
- package/dist/git/exec.js.map +1 -0
- package/dist/git/genesis.js +1 -1
- package/dist/git/genesis.js.map +1 -1
- package/dist/git/index.d.ts +3 -8
- package/dist/git/index.d.ts.map +1 -1
- package/dist/git/index.js +3 -8
- package/dist/git/index.js.map +1 -1
- package/dist/git/integration.d.ts +1 -1
- package/dist/git/integration.d.ts.map +1 -1
- package/dist/git/integration.js +1 -1
- package/dist/git/integration.js.map +1 -1
- package/dist/git/merge-lock.js +1 -1
- package/dist/git/merge-lock.js.map +1 -1
- package/dist/git/merge.d.ts +33 -2
- package/dist/git/merge.d.ts.map +1 -1
- package/dist/git/merge.js +159 -18
- package/dist/git/merge.js.map +1 -1
- package/dist/git/state-detector.d.ts +1 -1
- package/dist/git/state-detector.d.ts.map +1 -1
- package/dist/git/state-detector.js +1 -1
- package/dist/git/state-detector.js.map +1 -1
- package/dist/git/types.d.ts +1 -1
- package/dist/git/types.d.ts.map +1 -1
- package/dist/git/utils.js +1 -1
- package/dist/git/utils.js.map +1 -1
- package/dist/guard/condition-evaluators.d.ts +70 -0
- package/dist/guard/condition-evaluators.d.ts.map +1 -0
- package/dist/guard/condition-evaluators.js +203 -0
- package/dist/guard/condition-evaluators.js.map +1 -0
- package/dist/guard/evaluation-context.d.ts.map +1 -0
- package/dist/guard/evaluation-context.js +44 -0
- package/dist/guard/evaluation-context.js.map +1 -0
- package/dist/guard/guard-evaluator.d.ts +47 -0
- package/dist/guard/guard-evaluator.d.ts.map +1 -0
- package/dist/guard/guard-evaluator.js +195 -0
- package/dist/guard/guard-evaluator.js.map +1 -0
- package/dist/guard/trigger-executor.d.ts +99 -0
- package/dist/guard/trigger-executor.d.ts.map +1 -0
- package/dist/guard/trigger-executor.js +437 -0
- package/dist/guard/trigger-executor.js.map +1 -0
- package/dist/host-control/catalog.js +1 -1
- package/dist/host-control/catalog.js.map +1 -1
- package/dist/host-control/client.js +1 -1
- package/dist/host-control/client.js.map +1 -1
- package/dist/host-control/discovery-poll.d.ts +36 -0
- package/dist/host-control/discovery-poll.d.ts.map +1 -0
- package/dist/host-control/discovery-poll.js +94 -0
- package/dist/host-control/discovery-poll.js.map +1 -0
- package/dist/host-control/sizing.js +1 -1
- package/dist/host-control/sizing.js.map +1 -1
- package/dist/index.js +12 -12
- package/dist/index.js.map +1 -1
- package/dist/loops/context-audit-pass.d.ts +2 -2
- package/dist/loops/context-audit-pass.d.ts.map +1 -1
- package/dist/loops/context-audit-pass.js +3 -3
- package/dist/loops/context-audit-pass.js.map +1 -1
- package/dist/loops/engine.js +2 -2
- package/dist/loops/engine.js.map +1 -1
- package/dist/loops/llm-client.d.ts +8 -1
- package/dist/loops/llm-client.d.ts.map +1 -1
- package/dist/loops/llm-client.js +5 -4
- package/dist/loops/llm-client.js.map +1 -1
- package/dist/loops/prompt-builder.js +1 -1
- package/dist/loops/prompt-builder.js.map +1 -1
- package/dist/merge/focus-merge.d.ts +131 -0
- package/dist/merge/focus-merge.d.ts.map +1 -0
- package/dist/merge/focus-merge.js +556 -0
- package/dist/merge/focus-merge.js.map +1 -0
- package/dist/merge/merge-back-loop.d.ts +122 -0
- package/dist/merge/merge-back-loop.d.ts.map +1 -0
- package/dist/merge/merge-back-loop.js +657 -0
- package/dist/merge/merge-back-loop.js.map +1 -0
- package/dist/merge/merge-detector.d.ts +55 -0
- package/dist/merge/merge-detector.d.ts.map +1 -0
- package/dist/merge/merge-detector.js +222 -0
- package/dist/merge/merge-detector.js.map +1 -0
- package/dist/merge/merge-failure-classify.d.ts +48 -0
- package/dist/merge/merge-failure-classify.d.ts.map +1 -0
- package/dist/merge/merge-failure-classify.js +89 -0
- package/dist/merge/merge-failure-classify.js.map +1 -0
- package/dist/nexus/endpoint-clearance.d.ts +12 -3
- package/dist/nexus/endpoint-clearance.d.ts.map +1 -1
- package/dist/nexus/endpoint-clearance.js +17 -8
- package/dist/nexus/endpoint-clearance.js.map +1 -1
- package/dist/nexus/escalation-bridge.js +1 -1
- package/dist/nexus/escalation-bridge.js.map +1 -1
- package/dist/nexus/incoming.d.ts +1 -1
- package/dist/nexus/incoming.d.ts.map +1 -1
- package/dist/nexus/incoming.js +1 -1
- package/dist/nexus/incoming.js.map +1 -1
- package/dist/nexus/intake-spawn.d.ts +1 -1
- package/dist/nexus/intake-spawn.d.ts.map +1 -1
- package/dist/nexus/intake-spawn.js +1 -1
- package/dist/nexus/intake-spawn.js.map +1 -1
- package/dist/nexus/intake.d.ts +1 -1
- package/dist/nexus/intake.d.ts.map +1 -1
- package/dist/nexus/intake.js +1 -1
- package/dist/nexus/intake.js.map +1 -1
- package/dist/nexus/return.d.ts +1 -1
- package/dist/nexus/return.d.ts.map +1 -1
- package/dist/nexus/return.js +2 -2
- package/dist/nexus/return.js.map +1 -1
- package/dist/otlp/log-parser.js +1 -1
- package/dist/otlp/log-parser.js.map +1 -1
- package/dist/otlp/metric-parser.js +1 -1
- package/dist/otlp/metric-parser.js.map +1 -1
- package/dist/otlp/receiver.d.ts +1 -1
- package/dist/otlp/receiver.d.ts.map +1 -1
- package/dist/otlp/receiver.js +2 -2
- package/dist/otlp/receiver.js.map +1 -1
- package/dist/otlp/telemetry-writer.d.ts +90 -0
- package/dist/otlp/telemetry-writer.d.ts.map +1 -0
- package/dist/otlp/telemetry-writer.js +213 -0
- package/dist/otlp/telemetry-writer.js.map +1 -0
- package/dist/prd/controller.d.ts +2 -2
- package/dist/prd/controller.d.ts.map +1 -1
- package/dist/prd/controller.js +3 -3
- package/dist/prd/controller.js.map +1 -1
- package/dist/prd/focus-pushdown.d.ts +1 -1
- package/dist/prd/focus-pushdown.d.ts.map +1 -1
- package/dist/prd/focus-pushdown.js +2 -2
- package/dist/prd/focus-pushdown.js.map +1 -1
- package/dist/prd/steward.d.ts +1 -1
- package/dist/prd/steward.d.ts.map +1 -1
- package/dist/prd/steward.js +3 -2
- package/dist/prd/steward.js.map +1 -1
- package/dist/prompt/focus-prompt-builder.d.ts +33 -0
- package/dist/prompt/focus-prompt-builder.d.ts.map +1 -0
- package/dist/prompt/focus-prompt-builder.js +118 -0
- package/dist/prompt/focus-prompt-builder.js.map +1 -0
- package/dist/prompt/onboarding-directive.d.ts.map +1 -0
- package/dist/prompt/onboarding-directive.js.map +1 -0
- package/dist/prompt/prompt-contradictions.d.ts.map +1 -0
- package/dist/prompt/prompt-contradictions.js.map +1 -0
- package/dist/prompt/prompt-listing.d.ts +70 -0
- package/dist/prompt/prompt-listing.d.ts.map +1 -0
- package/dist/prompt/prompt-listing.js.map +1 -0
- package/dist/prompt/team-prompt-base.d.ts +43 -0
- package/dist/prompt/team-prompt-base.d.ts.map +1 -0
- package/dist/prompt/team-prompt-base.js +123 -0
- package/dist/prompt/team-prompt-base.js.map +1 -0
- package/dist/prompt-sections/context-sections.d.ts +1 -1
- package/dist/prompt-sections/context-sections.d.ts.map +1 -1
- package/dist/prompt-sections/execution-sections.d.ts +1 -1
- package/dist/prompt-sections/execution-sections.d.ts.map +1 -1
- package/dist/prompt-sections/execution-sections.js +2 -2
- package/dist/prompt-sections/execution-sections.js.map +1 -1
- package/dist/prompt-sections/persona-sections.d.ts +2 -2
- package/dist/prompt-sections/persona-sections.d.ts.map +1 -1
- package/dist/prompt-sections/persona-sections.js +1 -1
- package/dist/prompt-sections/role-sections.d.ts +1 -1
- package/dist/prompt-sections/role-sections.d.ts.map +1 -1
- package/dist/prompt-sections/shared.d.ts +1 -1
- package/dist/prompt-sections/shared.d.ts.map +1 -1
- package/dist/queries/agent-resolvable-promotion.d.ts +2 -2
- package/dist/queries/agent-resolvable-promotion.d.ts.map +1 -1
- package/dist/queries/agent-resolvable-promotion.js +5 -5
- package/dist/queries/agent-resolvable-promotion.js.map +1 -1
- package/dist/queries/context-assembly.d.ts +1 -1
- package/dist/queries/context-assembly.d.ts.map +1 -1
- package/dist/queries/context-assembly.js +1 -1
- package/dist/queries/context-assembly.js.map +1 -1
- package/dist/queries/context-lock-queries.d.ts +2 -2
- package/dist/queries/context-lock-queries.d.ts.map +1 -1
- package/dist/queries/deliveries.d.ts +24 -6
- package/dist/queries/deliveries.d.ts.map +1 -1
- package/dist/queries/deliveries.js +34 -39
- package/dist/queries/deliveries.js.map +1 -1
- package/dist/queries/drift.d.ts +1 -1
- package/dist/queries/drift.d.ts.map +1 -1
- package/dist/queries/escalation-suppression.js +1 -1
- package/dist/queries/escalation-suppression.js.map +1 -1
- package/dist/queries/focuses.d.ts +1 -1
- package/dist/queries/focuses.d.ts.map +1 -1
- package/dist/queries/focuses.js +1 -1
- package/dist/queries/focuses.js.map +1 -1
- package/dist/queries/guards.d.ts +1 -1
- package/dist/queries/guards.d.ts.map +1 -1
- package/dist/queries/guards.js +1 -1
- package/dist/queries/guards.js.map +1 -1
- package/dist/queries/holds.d.ts +3 -2
- package/dist/queries/holds.d.ts.map +1 -1
- package/dist/queries/holds.js +7 -6
- package/dist/queries/holds.js.map +1 -1
- package/dist/queries/issues.d.ts +20 -8
- package/dist/queries/issues.d.ts.map +1 -1
- package/dist/queries/issues.js +26 -29
- package/dist/queries/issues.js.map +1 -1
- package/dist/queries/prd.d.ts +2 -1
- package/dist/queries/prd.d.ts.map +1 -1
- package/dist/queries/prd.js +3 -2
- package/dist/queries/prd.js.map +1 -1
- package/dist/queries/reality-tree.js +1 -1
- package/dist/queries/reality-tree.js.map +1 -1
- package/dist/queries/roles.d.ts +1 -1
- package/dist/queries/roles.d.ts.map +1 -1
- package/dist/queries/schemas.d.ts +51 -28
- package/dist/queries/schemas.d.ts.map +1 -1
- package/dist/queries/schemas.js +48 -28
- package/dist/queries/schemas.js.map +1 -1
- package/dist/queries/sessions.d.ts +1 -1
- package/dist/queries/sessions.d.ts.map +1 -1
- package/dist/queries/shared.d.ts +12 -1
- package/dist/queries/shared.d.ts.map +1 -1
- package/dist/queries/shared.js.map +1 -1
- package/dist/queries/system-session.d.ts +14 -3
- package/dist/queries/system-session.d.ts.map +1 -1
- package/dist/queries/system-session.js +9 -11
- package/dist/queries/system-session.js.map +1 -1
- package/dist/queries/verification.d.ts +6 -5
- package/dist/queries/verification.d.ts.map +1 -1
- package/dist/queries/verification.js +17 -14
- package/dist/queries/verification.js.map +1 -1
- package/dist/queries/workflows.d.ts +1 -1
- package/dist/queries/workflows.d.ts.map +1 -1
- package/dist/queries/worktrees.d.ts +10 -10
- package/dist/queries/worktrees.d.ts.map +1 -1
- package/dist/queries/worktrees.js.map +1 -1
- package/dist/reality/realign-apply.d.ts +65 -0
- package/dist/reality/realign-apply.d.ts.map +1 -0
- package/dist/reality/realign-apply.js +302 -0
- package/dist/reality/realign-apply.js.map +1 -0
- package/dist/reality/reality-pole-capture.d.ts.map +1 -0
- package/dist/reality/reality-pole-capture.js +114 -0
- package/dist/reality/reality-pole-capture.js.map +1 -0
- package/dist/reality/reality-pole.d.ts +64 -0
- package/dist/reality/reality-pole.d.ts.map +1 -0
- package/dist/reality/reality-pole.js +101 -0
- package/dist/reality/reality-pole.js.map +1 -0
- package/dist/reality/reality-writeback.d.ts.map +1 -0
- package/dist/reality/reality-writeback.js.map +1 -0
- package/dist/resolvers/agent-escalations.js +2 -2
- package/dist/resolvers/agent-escalations.js.map +1 -1
- package/dist/resolvers/agent-session-summaries.js +2 -2
- package/dist/resolvers/agent-session-summaries.js.map +1 -1
- package/dist/resolvers/assembly-engine.d.ts +114 -0
- package/dist/resolvers/assembly-engine.d.ts.map +1 -0
- package/dist/resolvers/assembly-engine.js +137 -0
- package/dist/resolvers/assembly-engine.js.map +1 -0
- package/dist/resolvers/delivery-acceptance-criteria.js +1 -1
- package/dist/resolvers/delivery-acceptance-criteria.js.map +1 -1
- package/dist/resolvers/delivery-description.js +1 -1
- package/dist/resolvers/delivery-description.js.map +1 -1
- package/dist/resolvers/delivery-issues.js +1 -1
- package/dist/resolvers/delivery-issues.js.map +1 -1
- package/dist/resolvers/delivery-listing.js +2 -2
- package/dist/resolvers/delivery-listing.js.map +1 -1
- package/dist/resolvers/delivery-tech-context.js +1 -1
- package/dist/resolvers/delivery-tech-context.js.map +1 -1
- package/dist/resolvers/deployment-profile.js +2 -2
- package/dist/resolvers/deployment-profile.js.map +1 -1
- package/dist/resolvers/drift-shortfall-proposals.js +3 -3
- package/dist/resolvers/drift-shortfall-proposals.js.map +1 -1
- package/dist/resolvers/escalation-answers.js +2 -2
- package/dist/resolvers/escalation-answers.js.map +1 -1
- package/dist/resolvers/focus-anchoring-injections.js +2 -2
- package/dist/resolvers/focus-anchoring-injections.js.map +1 -1
- package/dist/resolvers/focus-context.js +1 -1
- package/dist/resolvers/focus-context.js.map +1 -1
- package/dist/resolvers/focus-endpoint-catalog.js +1 -1
- package/dist/resolvers/focus-endpoint-catalog.js.map +1 -1
- package/dist/resolvers/focus-injections.js +2 -2
- package/dist/resolvers/focus-injections.js.map +1 -1
- package/dist/resolvers/focus-last-review-report.js +2 -2
- package/dist/resolvers/focus-last-review-report.js.map +1 -1
- package/dist/resolvers/focus-reality-tree.js +2 -2
- package/dist/resolvers/focus-reality-tree.js.map +1 -1
- package/dist/resolvers/git-diff-against-base.js +2 -2
- package/dist/resolvers/git-diff-against-base.js.map +1 -1
- package/dist/resolvers/guards-evaluation-results.js +2 -2
- package/dist/resolvers/guards-evaluation-results.js.map +1 -1
- package/dist/resolvers/index.d.ts +6 -5
- package/dist/resolvers/index.d.ts.map +1 -1
- package/dist/resolvers/index.js +7 -6
- package/dist/resolvers/index.js.map +1 -1
- package/dist/resolvers/loop-context.js +2 -2
- package/dist/resolvers/loop-context.js.map +1 -1
- package/dist/resolvers/loop-delivery-index.js +2 -2
- package/dist/resolvers/loop-delivery-index.js.map +1 -1
- package/dist/resolvers/loop-documents.js +2 -2
- package/dist/resolvers/loop-documents.js.map +1 -1
- package/dist/resolvers/loop-expected-effects.js +2 -2
- package/dist/resolvers/loop-expected-effects.js.map +1 -1
- package/dist/resolvers/loop-frt-statement.js +2 -2
- package/dist/resolvers/loop-frt-statement.js.map +1 -1
- package/dist/resolvers/loop-injection.js +2 -2
- package/dist/resolvers/loop-injection.js.map +1 -1
- package/dist/resolvers/loop-persona.js +3 -3
- package/dist/resolvers/loop-persona.js.map +1 -1
- package/dist/resolvers/loop-questions.js +2 -2
- package/dist/resolvers/loop-questions.js.map +1 -1
- package/dist/resolvers/loop-upstream-udes.js +2 -2
- package/dist/resolvers/loop-upstream-udes.js.map +1 -1
- package/dist/resolvers/prd-context.js +2 -2
- package/dist/resolvers/prd-context.js.map +1 -1
- package/dist/resolvers/prd-persona.js +1 -1
- package/dist/resolvers/prd-persona.js.map +1 -1
- package/dist/resolvers/reality-metrics.js +2 -2
- package/dist/resolvers/reality-metrics.js.map +1 -1
- package/dist/resolvers/reality-projections.js +2 -2
- package/dist/resolvers/reality-projections.js.map +1 -1
- package/dist/resolvers/reality-tree-snapshot.js +2 -2
- package/dist/resolvers/reality-tree-snapshot.js.map +1 -1
- package/dist/resolvers/retired-injections.js +2 -2
- package/dist/resolvers/retired-injections.js.map +1 -1
- package/dist/resolvers/review-outcomes.js +2 -2
- package/dist/resolvers/review-outcomes.js.map +1 -1
- package/dist/resolvers/security-advisory.js +2 -2
- package/dist/resolvers/security-advisory.js.map +1 -1
- package/dist/resolvers/shared/loop.d.ts +1 -1
- package/dist/resolvers/shared/loop.d.ts.map +1 -1
- package/dist/resolvers/shared/wiki.d.ts +2 -1
- package/dist/resolvers/shared/wiki.d.ts.map +1 -1
- package/dist/resolvers/shared/wiki.js +4 -3
- package/dist/resolvers/shared/wiki.js.map +1 -1
- package/dist/resolvers/wiki-search.js +1 -1
- package/dist/resolvers/wiki-search.js.map +1 -1
- package/dist/resolvers/wiki-topic.js +2 -2
- package/dist/resolvers/wiki-topic.js.map +1 -1
- package/dist/resolvers/workflow-stages.js +2 -2
- package/dist/resolvers/workflow-stages.js.map +1 -1
- package/dist/scanners/deps.d.ts +1 -1
- package/dist/scanners/deps.d.ts.map +1 -1
- package/dist/scanners/signatures.d.ts +1 -1
- package/dist/scanners/signatures.d.ts.map +1 -1
- package/dist/scanners/workflow.d.ts +1 -1
- package/dist/scanners/workflow.d.ts.map +1 -1
- package/dist/security/security-auto-inject.d.ts.map +1 -0
- package/dist/security/security-auto-inject.js +168 -0
- package/dist/security/security-auto-inject.js.map +1 -0
- package/dist/security/security-finding-gate.d.ts.map +1 -0
- package/dist/security/security-finding-gate.js +84 -0
- package/dist/security/security-finding-gate.js.map +1 -0
- package/dist/security/security-rescan-resolution.d.ts.map +1 -0
- package/dist/security/security-rescan-resolution.js +117 -0
- package/dist/security/security-rescan-resolution.js.map +1 -0
- package/dist/security/security-scan-engine.d.ts +145 -0
- package/dist/security/security-scan-engine.d.ts.map +1 -0
- package/dist/security/security-scan-engine.js +271 -0
- package/dist/security/security-scan-engine.js.map +1 -0
- package/dist/session/session-lineage.d.ts.map +1 -0
- package/dist/session/session-lineage.js.map +1 -0
- package/dist/session/session-stamp.d.ts +63 -0
- package/dist/session/session-stamp.d.ts.map +1 -0
- package/dist/session/session-stamp.js +67 -0
- package/dist/session/session-stamp.js.map +1 -0
- package/dist/shell/activity-tracker.d.ts.map +1 -0
- package/dist/shell/activity-tracker.js +19 -0
- package/dist/shell/activity-tracker.js.map +1 -0
- package/dist/shell/agent-state.d.ts.map +1 -0
- package/dist/shell/agent-state.js.map +1 -0
- package/dist/shell/auth-liveness.d.ts.map +1 -0
- package/dist/shell/auth-liveness.js.map +1 -0
- package/dist/shell/branch-status.d.ts +97 -0
- package/dist/shell/branch-status.d.ts.map +1 -0
- package/dist/shell/branch-status.js +299 -0
- package/dist/shell/branch-status.js.map +1 -0
- package/dist/shell/circuit-wedge-watcher.d.ts +48 -0
- package/dist/shell/circuit-wedge-watcher.d.ts.map +1 -0
- package/dist/shell/circuit-wedge-watcher.js +94 -0
- package/dist/shell/circuit-wedge-watcher.js.map +1 -0
- package/dist/shell/config-hot-reload.d.ts +91 -0
- package/dist/shell/config-hot-reload.d.ts.map +1 -0
- package/dist/shell/config-hot-reload.js.map +1 -0
- package/dist/shell/config-reconcile.d.ts +114 -0
- package/dist/shell/config-reconcile.d.ts.map +1 -0
- package/dist/shell/config-reconcile.js +189 -0
- package/dist/shell/config-reconcile.js.map +1 -0
- package/dist/shell/config.d.ts +102 -0
- package/dist/shell/config.d.ts.map +1 -0
- package/dist/shell/config.js +486 -0
- package/dist/shell/config.js.map +1 -0
- package/dist/shell/constants.d.ts.map +1 -0
- package/dist/shell/constants.js.map +1 -0
- package/dist/shell/control-state.d.ts +109 -0
- package/dist/shell/control-state.d.ts.map +1 -0
- package/dist/shell/control-state.js +337 -0
- package/dist/shell/control-state.js.map +1 -0
- package/dist/shell/crash-recovery.d.ts +141 -0
- package/dist/shell/crash-recovery.d.ts.map +1 -0
- package/dist/shell/crash-recovery.js +631 -0
- package/dist/shell/crash-recovery.js.map +1 -0
- package/dist/shell/daemon-logs.d.ts.map +1 -0
- package/dist/shell/daemon-logs.js.map +1 -0
- package/dist/shell/daemon-process.d.ts.map +1 -0
- package/dist/shell/daemon-process.js +463 -0
- package/dist/shell/daemon-process.js.map +1 -0
- package/dist/shell/daemon-readiness.d.ts.map +1 -0
- package/dist/shell/daemon-readiness.js.map +1 -0
- package/dist/shell/drain-teardown.d.ts.map +1 -0
- package/dist/shell/drain-teardown.js.map +1 -0
- package/dist/shell/gitignore-convergence.d.ts.map +1 -0
- package/dist/shell/gitignore-convergence.js.map +1 -0
- package/dist/shell/health-events.d.ts.map +1 -0
- package/dist/shell/health-events.js.map +1 -0
- package/dist/shell/heartbeat.d.ts +165 -0
- package/dist/shell/heartbeat.d.ts.map +1 -0
- package/dist/shell/heartbeat.js +502 -0
- package/dist/shell/heartbeat.js.map +1 -0
- package/dist/shell/install-probe-tick.d.ts +63 -0
- package/dist/shell/install-probe-tick.d.ts.map +1 -0
- package/dist/shell/install-probe-tick.js +139 -0
- package/dist/shell/install-probe-tick.js.map +1 -0
- package/dist/shell/install-probe.d.ts.map +1 -0
- package/dist/shell/install-probe.js.map +1 -0
- package/dist/shell/intake-control.d.ts.map +1 -0
- package/dist/shell/intake-control.js.map +1 -0
- package/dist/shell/log-manager.d.ts +18 -0
- package/dist/shell/log-manager.d.ts.map +1 -0
- package/dist/shell/log-manager.js.map +1 -0
- package/dist/shell/log.d.ts.map +1 -0
- package/dist/shell/log.js.map +1 -0
- package/dist/shell/mcp-resolution.d.ts.map +1 -0
- package/dist/shell/mcp-resolution.js.map +1 -0
- package/dist/shell/model-resolution.d.ts.map +1 -0
- package/dist/shell/model-resolution.js.map +1 -0
- package/dist/shell/non-interactive-init.d.ts +40 -0
- package/dist/shell/non-interactive-init.d.ts.map +1 -0
- package/dist/shell/non-interactive-init.js.map +1 -0
- package/dist/shell/product-scaffold.d.ts +56 -0
- package/dist/shell/product-scaffold.d.ts.map +1 -0
- package/dist/shell/product-scaffold.js +136 -0
- package/dist/shell/product-scaffold.js.map +1 -0
- package/dist/shell/schema-version-gate.d.ts.map +1 -0
- package/dist/shell/schema-version-gate.js +220 -0
- package/dist/shell/schema-version-gate.js.map +1 -0
- package/dist/shell/shutdown-state.d.ts.map +1 -0
- package/dist/shell/shutdown-state.js.map +1 -0
- package/dist/shell/stop-request.d.ts.map +1 -0
- package/dist/shell/stop-request.js.map +1 -0
- package/dist/shell/unified-engine-lifecycle.d.ts +186 -0
- package/dist/shell/unified-engine-lifecycle.d.ts.map +1 -0
- package/dist/shell/unified-engine-lifecycle.js +594 -0
- package/dist/shell/unified-engine-lifecycle.js.map +1 -0
- package/dist/shell/unified-init.d.ts +86 -0
- package/dist/shell/unified-init.d.ts.map +1 -0
- package/dist/shell/unified-init.js +313 -0
- package/dist/shell/unified-init.js.map +1 -0
- package/dist/shell/unified-shell-config.d.ts +103 -0
- package/dist/shell/unified-shell-config.d.ts.map +1 -0
- package/dist/shell/unified-shell-config.js.map +1 -0
- package/dist/shell/unified-shell-provisioning.d.ts.map +1 -0
- package/dist/shell/unified-shell-provisioning.js +277 -0
- package/dist/shell/unified-shell-provisioning.js.map +1 -0
- package/dist/shell/unified-shell-status.d.ts.map +1 -0
- package/dist/shell/unified-shell-status.js +143 -0
- package/dist/shell/unified-shell-status.js.map +1 -0
- package/dist/shell/unified-shell.d.ts.map +1 -0
- package/dist/shell/unified-shell.js +583 -0
- package/dist/shell/unified-shell.js.map +1 -0
- package/dist/shell/worker-pidfile.d.ts.map +1 -0
- package/dist/shell/worker-pidfile.js.map +1 -0
- package/dist/spawn/dag-validator.d.ts +52 -0
- package/dist/spawn/dag-validator.d.ts.map +1 -0
- package/dist/spawn/dag-validator.js.map +1 -0
- package/dist/spawn/delivered-manifest.d.ts +1 -1
- package/dist/spawn/delivered-manifest.d.ts.map +1 -1
- package/dist/spawn/dependency-resolver.d.ts +77 -0
- package/dist/spawn/dependency-resolver.d.ts.map +1 -0
- package/dist/spawn/dependency-resolver.js.map +1 -0
- package/dist/spawn/guards.d.ts.map +1 -0
- package/dist/spawn/guards.js +46 -0
- package/dist/spawn/guards.js.map +1 -0
- package/dist/spawn/helpers.d.ts +86 -0
- package/dist/spawn/helpers.d.ts.map +1 -0
- package/dist/spawn/helpers.js +220 -0
- package/dist/spawn/helpers.js.map +1 -0
- package/dist/spawn/index.d.ts +29 -0
- package/dist/spawn/index.d.ts.map +1 -0
- package/dist/spawn/index.js +37 -0
- package/dist/spawn/index.js.map +1 -0
- package/dist/spawn/lifecycle.d.ts +148 -0
- package/dist/spawn/lifecycle.d.ts.map +1 -0
- package/dist/spawn/lifecycle.js +413 -0
- package/dist/spawn/lifecycle.js.map +1 -0
- package/dist/spawn/liveness.d.ts.map +1 -0
- package/dist/spawn/liveness.js +41 -0
- package/dist/spawn/liveness.js.map +1 -0
- package/dist/spawn/model-routing.d.ts +2 -2
- package/dist/spawn/model-routing.d.ts.map +1 -1
- package/dist/spawn/model-routing.js +4 -4
- package/dist/spawn/model-routing.js.map +1 -1
- package/dist/spawn/process-spawn.d.ts +7 -7
- package/dist/spawn/process-spawn.d.ts.map +1 -1
- package/dist/spawn/process-spawn.js +9 -9
- package/dist/spawn/process-spawn.js.map +1 -1
- package/dist/spawn/prompt-assembly.d.ts +6 -6
- package/dist/spawn/prompt-assembly.d.ts.map +1 -1
- package/dist/spawn/prompt-assembly.js +6 -6
- package/dist/spawn/prompt-assembly.js.map +1 -1
- package/dist/spawn/shared.d.ts +3 -3
- package/dist/spawn/shared.d.ts.map +1 -1
- package/dist/spawn/shared.js +1 -1
- package/dist/spawn/spawn-cooldown.d.ts.map +1 -0
- package/dist/spawn/spawn-cooldown.js +53 -0
- package/dist/spawn/spawn-cooldown.js.map +1 -0
- package/dist/spawn/spawn-decision.d.ts +6 -6
- package/dist/spawn/spawn-decision.d.ts.map +1 -1
- package/dist/spawn/spawn-decision.js +8 -8
- package/dist/spawn/spawn-decision.js.map +1 -1
- package/dist/spawn/spawn-environment.d.ts +126 -0
- package/dist/spawn/spawn-environment.d.ts.map +1 -0
- package/dist/spawn/spawn-environment.js +177 -0
- package/dist/spawn/spawn-environment.js.map +1 -0
- package/dist/spawn/spawn-sandbox.d.ts +121 -0
- package/dist/spawn/spawn-sandbox.d.ts.map +1 -0
- package/dist/spawn/spawn-sandbox.js.map +1 -0
- package/dist/spawn/state.d.ts.map +1 -0
- package/dist/spawn/state.js.map +1 -0
- package/dist/spawn/task-converter.d.ts +61 -0
- package/dist/spawn/task-converter.d.ts.map +1 -0
- package/dist/spawn/task-converter.js.map +1 -0
- package/dist/spawn/worker-registry.d.ts.map +1 -0
- package/dist/spawn/worker-registry.js.map +1 -0
- package/dist/spawn/worktree-session.d.ts +5 -5
- package/dist/spawn/worktree-session.d.ts.map +1 -1
- package/dist/spawn/worktree-session.js +12 -12
- package/dist/spawn/worktree-session.js.map +1 -1
- package/dist/types/focus.d.ts +79 -51
- package/dist/types/focus.d.ts.map +1 -1
- package/dist/update/auto-update-idle.d.ts.map +1 -0
- package/dist/update/auto-update-idle.js.map +1 -0
- package/dist/update/auto-update.d.ts.map +1 -0
- package/dist/update/auto-update.js +317 -0
- package/dist/update/auto-update.js.map +1 -0
- package/dist/update/build-info.d.ts.map +1 -0
- package/dist/update/build-info.js.map +1 -0
- package/dist/update/capability-pointer.d.ts.map +1 -0
- package/dist/update/capability-pointer.js.map +1 -0
- package/dist/update/self-update.d.ts.map +1 -0
- package/dist/update/self-update.js +565 -0
- package/dist/update/self-update.js.map +1 -0
- package/dist/update/version-check.d.ts.map +1 -0
- package/dist/update/version-check.js +115 -0
- package/dist/update/version-check.js.map +1 -0
- package/dist/verify/ai-inspection-context.d.ts +63 -0
- package/dist/verify/ai-inspection-context.d.ts.map +1 -0
- package/dist/verify/ai-inspection-context.js +203 -0
- package/dist/verify/ai-inspection-context.js.map +1 -0
- package/dist/verify/ai-inspection-runner.d.ts.map +1 -0
- package/dist/verify/ai-inspection-runner.js +256 -0
- package/dist/verify/ai-inspection-runner.js.map +1 -0
- package/dist/verify/cascade-restatement.d.ts.map +1 -0
- package/dist/verify/cascade-restatement.js.map +1 -0
- package/dist/verify/de-restatement.d.ts.map +1 -0
- package/dist/verify/de-restatement.js +160 -0
- package/dist/verify/de-restatement.js.map +1 -0
- package/dist/verify/retire-aware-restatement.d.ts.map +1 -0
- package/dist/verify/retire-aware-restatement.js +231 -0
- package/dist/verify/retire-aware-restatement.js.map +1 -0
- package/dist/verify/stall-detector-config.d.ts.map +1 -0
- package/dist/verify/stall-detector-config.js.map +1 -0
- package/dist/verify/stall-detectors.d.ts +196 -0
- package/dist/verify/stall-detectors.d.ts.map +1 -0
- package/dist/verify/stall-detectors.js +348 -0
- package/dist/verify/stall-detectors.js.map +1 -0
- package/dist/verify/verification-baseline.d.ts +112 -0
- package/dist/verify/verification-baseline.d.ts.map +1 -0
- package/dist/verify/verification-baseline.js +267 -0
- package/dist/verify/verification-baseline.js.map +1 -0
- package/dist/verify/verification-config.d.ts +146 -0
- package/dist/verify/verification-config.d.ts.map +1 -0
- package/dist/verify/verification-config.js.map +1 -0
- package/dist/verify/verification-default-on.d.ts +160 -0
- package/dist/verify/verification-default-on.d.ts.map +1 -0
- package/dist/verify/verification-default-on.js +272 -0
- package/dist/verify/verification-default-on.js.map +1 -0
- package/dist/verify/verification-deps.d.ts +191 -0
- package/dist/verify/verification-deps.d.ts.map +1 -0
- package/dist/verify/verification-deps.js.map +1 -0
- package/dist/verify/verification-deterministic.d.ts +56 -0
- package/dist/verify/verification-deterministic.d.ts.map +1 -0
- package/dist/verify/verification-deterministic.js +153 -0
- package/dist/verify/verification-deterministic.js.map +1 -0
- package/dist/verify/verification-engine.d.ts +94 -0
- package/dist/verify/verification-engine.d.ts.map +1 -0
- package/dist/verify/verification-engine.js +717 -0
- package/dist/verify/verification-engine.js.map +1 -0
- package/dist/verify/verification-evidence.d.ts +106 -0
- package/dist/verify/verification-evidence.d.ts.map +1 -0
- package/dist/verify/verification-evidence.js +159 -0
- package/dist/verify/verification-evidence.js.map +1 -0
- package/dist/verify/verification-failure-parser.d.ts.map +1 -0
- package/dist/verify/verification-failure-parser.js.map +1 -0
- package/dist/verify/verification-feedback.d.ts +173 -0
- package/dist/verify/verification-feedback.d.ts.map +1 -0
- package/dist/verify/verification-feedback.js +442 -0
- package/dist/verify/verification-feedback.js.map +1 -0
- package/dist/verify/verification-manifest.d.ts.map +1 -0
- package/dist/verify/verification-manifest.js.map +1 -0
- package/dist/verify/verify-reconciliation.d.ts.map +1 -0
- package/dist/verify/verify-reconciliation.js.map +1 -0
- package/dist/verify/verify-restatement.d.ts.map +1 -0
- package/dist/verify/verify-restatement.js +167 -0
- package/dist/verify/verify-restatement.js.map +1 -0
- package/dist/workflow/pipeline-config.d.ts +72 -0
- package/dist/workflow/pipeline-config.d.ts.map +1 -0
- package/dist/workflow/pipeline-config.js.map +1 -0
- package/dist/workflow/stage-classifier.d.ts +32 -0
- package/dist/workflow/stage-classifier.d.ts.map +1 -0
- package/dist/workflow/stage-classifier.js.map +1 -0
- package/dist/workflow/workflow-engine.d.ts +95 -0
- package/dist/workflow/workflow-engine.d.ts.map +1 -0
- package/dist/workflow/workflow-engine.js.map +1 -0
- package/dist/worktree/focus.d.ts +15 -70
- package/dist/worktree/focus.d.ts.map +1 -1
- package/dist/worktree/focus.js +16 -180
- package/dist/worktree/focus.js.map +1 -1
- package/dist/worktree/identity.js +1 -1
- package/dist/worktree/identity.js.map +1 -1
- package/dist/worktree/index.d.ts +1 -1
- package/dist/worktree/index.js +1 -1
- package/dist/worktree/provision.d.ts +147 -0
- package/dist/worktree/provision.d.ts.map +1 -0
- package/dist/worktree/provision.js +467 -0
- package/dist/worktree/provision.js.map +1 -0
- package/dist/worktree/reap.js +1 -1
- package/dist/worktree/reap.js.map +1 -1
- package/dist/worktree/safety.js +1 -1
- package/dist/worktree/safety.js.map +1 -1
- package/dist/worktree/scratch-guard.js +1 -1
- package/dist/worktree/scratch-guard.js.map +1 -1
- package/dist/worktree/state.d.ts +1 -1
- package/dist/worktree/state.d.ts.map +1 -1
- package/dist/worktree/state.js +3 -3
- package/dist/worktree/state.js.map +1 -1
- package/dist/worktree/verify-interlock.js +1 -1
- package/dist/worktree/verify-interlock.js.map +1 -1
- package/package.json +4 -4
- package/dist/activity-tracker.d.ts.map +0 -1
- package/dist/activity-tracker.js +0 -19
- package/dist/activity-tracker.js.map +0 -1
- package/dist/agent-state.d.ts.map +0 -1
- package/dist/agent-state.js.map +0 -1
- package/dist/ai-inspection-context.d.ts +0 -63
- package/dist/ai-inspection-context.d.ts.map +0 -1
- package/dist/ai-inspection-context.js +0 -203
- package/dist/ai-inspection-context.js.map +0 -1
- package/dist/ai-inspection-runner.d.ts.map +0 -1
- package/dist/ai-inspection-runner.js +0 -256
- package/dist/ai-inspection-runner.js.map +0 -1
- package/dist/assembly-engine.d.ts +0 -114
- package/dist/assembly-engine.d.ts.map +0 -1
- package/dist/assembly-engine.js +0 -137
- package/dist/assembly-engine.js.map +0 -1
- package/dist/assembly-resolvers.d.ts +0 -28
- package/dist/assembly-resolvers.d.ts.map +0 -1
- package/dist/assembly-resolvers.js +0 -30
- package/dist/assembly-resolvers.js.map +0 -1
- package/dist/audit-hooks.d.ts +0 -122
- package/dist/audit-hooks.d.ts.map +0 -1
- package/dist/audit-hooks.js +0 -274
- package/dist/audit-hooks.js.map +0 -1
- package/dist/audit-phase.d.ts +0 -171
- package/dist/audit-phase.d.ts.map +0 -1
- package/dist/audit-phase.js +0 -491
- package/dist/audit-phase.js.map +0 -1
- package/dist/audit-prompt.d.ts.map +0 -1
- package/dist/audit-prompt.js.map +0 -1
- package/dist/audit-shape.d.ts.map +0 -1
- package/dist/audit-shape.js.map +0 -1
- package/dist/auth-liveness.d.ts.map +0 -1
- package/dist/auth-liveness.js.map +0 -1
- package/dist/auto-update-idle.d.ts.map +0 -1
- package/dist/auto-update-idle.js.map +0 -1
- package/dist/auto-update.d.ts.map +0 -1
- package/dist/auto-update.js +0 -317
- package/dist/auto-update.js.map +0 -1
- package/dist/branch-status.d.ts +0 -79
- package/dist/branch-status.d.ts.map +0 -1
- package/dist/branch-status.js +0 -292
- package/dist/branch-status.js.map +0 -1
- package/dist/build-info.d.ts.map +0 -1
- package/dist/build-info.js.map +0 -1
- package/dist/capability-pointer.d.ts.map +0 -1
- package/dist/capability-pointer.js.map +0 -1
- package/dist/cascade-restatement.d.ts.map +0 -1
- package/dist/cascade-restatement.js.map +0 -1
- package/dist/ci-escalation.d.ts.map +0 -1
- package/dist/ci-escalation.js +0 -66
- package/dist/ci-escalation.js.map +0 -1
- package/dist/ci-sensor-loop.d.ts +0 -112
- package/dist/ci-sensor-loop.d.ts.map +0 -1
- package/dist/ci-sensor-loop.js +0 -243
- package/dist/ci-sensor-loop.js.map +0 -1
- package/dist/ci-status-git.d.ts +0 -53
- package/dist/ci-status-git.d.ts.map +0 -1
- package/dist/ci-status-git.js +0 -89
- package/dist/ci-status-git.js.map +0 -1
- package/dist/ci-status.d.ts +0 -137
- package/dist/ci-status.d.ts.map +0 -1
- package/dist/ci-status.js.map +0 -1
- package/dist/circuit-wedge-watcher.d.ts +0 -48
- package/dist/circuit-wedge-watcher.d.ts.map +0 -1
- package/dist/circuit-wedge-watcher.js +0 -94
- package/dist/circuit-wedge-watcher.js.map +0 -1
- package/dist/close-loop-dispatcher.d.ts +0 -325
- package/dist/close-loop-dispatcher.d.ts.map +0 -1
- package/dist/close-loop-dispatcher.js +0 -362
- package/dist/close-loop-dispatcher.js.map +0 -1
- package/dist/condition-evaluators.d.ts +0 -70
- package/dist/condition-evaluators.d.ts.map +0 -1
- package/dist/condition-evaluators.js +0 -203
- package/dist/condition-evaluators.js.map +0 -1
- package/dist/config-hot-reload.d.ts +0 -91
- package/dist/config-hot-reload.d.ts.map +0 -1
- package/dist/config-hot-reload.js.map +0 -1
- package/dist/config-reconcile.d.ts +0 -114
- package/dist/config-reconcile.d.ts.map +0 -1
- package/dist/config-reconcile.js +0 -189
- package/dist/config-reconcile.js.map +0 -1
- package/dist/config.d.ts +0 -102
- package/dist/config.d.ts.map +0 -1
- package/dist/config.js +0 -486
- package/dist/config.js.map +0 -1
- package/dist/constants.d.ts.map +0 -1
- package/dist/constants.js.map +0 -1
- package/dist/context-audit.d.ts +0 -68
- package/dist/context-audit.d.ts.map +0 -1
- package/dist/context-audit.js.map +0 -1
- package/dist/context-lock.d.ts +0 -129
- package/dist/context-lock.d.ts.map +0 -1
- package/dist/context-lock.js.map +0 -1
- package/dist/control-state.d.ts +0 -109
- package/dist/control-state.d.ts.map +0 -1
- package/dist/control-state.js +0 -337
- package/dist/control-state.js.map +0 -1
- package/dist/crash-recovery.d.ts +0 -141
- package/dist/crash-recovery.d.ts.map +0 -1
- package/dist/crash-recovery.js +0 -631
- package/dist/crash-recovery.js.map +0 -1
- package/dist/daemon-logs.d.ts.map +0 -1
- package/dist/daemon-logs.js.map +0 -1
- package/dist/daemon-process.d.ts.map +0 -1
- package/dist/daemon-process.js +0 -463
- package/dist/daemon-process.js.map +0 -1
- package/dist/daemon-readiness.d.ts.map +0 -1
- package/dist/daemon-readiness.js.map +0 -1
- package/dist/dag-validator.d.ts +0 -52
- package/dist/dag-validator.d.ts.map +0 -1
- package/dist/dag-validator.js.map +0 -1
- package/dist/de-restatement.d.ts.map +0 -1
- package/dist/de-restatement.js +0 -160
- package/dist/de-restatement.js.map +0 -1
- package/dist/delivery-advance-block.d.ts +0 -143
- package/dist/delivery-advance-block.d.ts.map +0 -1
- package/dist/delivery-advance-block.js +0 -360
- package/dist/delivery-advance-block.js.map +0 -1
- package/dist/delivery-artifacts.d.ts +0 -26
- package/dist/delivery-artifacts.d.ts.map +0 -1
- package/dist/delivery-artifacts.js +0 -56
- package/dist/delivery-artifacts.js.map +0 -1
- package/dist/delivery-close-actions.d.ts +0 -39
- package/dist/delivery-close-actions.d.ts.map +0 -1
- package/dist/delivery-close-actions.js +0 -53
- package/dist/delivery-close-actions.js.map +0 -1
- package/dist/delivery-lifecycle.d.ts +0 -144
- package/dist/delivery-lifecycle.d.ts.map +0 -1
- package/dist/delivery-lifecycle.js +0 -495
- package/dist/delivery-lifecycle.js.map +0 -1
- package/dist/delivery-merge.d.ts +0 -17
- package/dist/delivery-merge.d.ts.map +0 -1
- package/dist/delivery-merge.js +0 -95
- package/dist/delivery-merge.js.map +0 -1
- package/dist/delivery-reconciler-apply.d.ts.map +0 -1
- package/dist/delivery-reconciler-apply.js +0 -77
- package/dist/delivery-reconciler-apply.js.map +0 -1
- package/dist/delivery-reconciler-shadow.d.ts +0 -65
- package/dist/delivery-reconciler-shadow.d.ts.map +0 -1
- package/dist/delivery-reconciler-shadow.js +0 -126
- package/dist/delivery-reconciler-shadow.js.map +0 -1
- package/dist/delivery-reconciler.d.ts +0 -217
- package/dist/delivery-reconciler.d.ts.map +0 -1
- package/dist/delivery-reconciler.js +0 -249
- package/dist/delivery-reconciler.js.map +0 -1
- package/dist/dependency-resolver.d.ts +0 -77
- package/dist/dependency-resolver.d.ts.map +0 -1
- package/dist/dependency-resolver.js.map +0 -1
- package/dist/directive-executor.d.ts +0 -37
- package/dist/directive-executor.d.ts.map +0 -1
- package/dist/directive-executor.js +0 -241
- package/dist/directive-executor.js.map +0 -1
- package/dist/discovery-poll.d.ts +0 -23
- package/dist/discovery-poll.d.ts.map +0 -1
- package/dist/discovery-poll.js +0 -99
- package/dist/discovery-poll.js.map +0 -1
- package/dist/drain-teardown.d.ts.map +0 -1
- package/dist/drain-teardown.js.map +0 -1
- package/dist/drift-eval-loop.d.ts +0 -71
- package/dist/drift-eval-loop.d.ts.map +0 -1
- package/dist/drift-eval-loop.js +0 -259
- package/dist/drift-eval-loop.js.map +0 -1
- package/dist/drift-evaluator.d.ts.map +0 -1
- package/dist/drift-evaluator.js.map +0 -1
- package/dist/drift-ratify-policy.d.ts.map +0 -1
- package/dist/drift-ratify-policy.js.map +0 -1
- package/dist/escalation-provenance.d.ts +0 -64
- package/dist/escalation-provenance.d.ts.map +0 -1
- package/dist/escalation-provenance.js +0 -200
- package/dist/escalation-provenance.js.map +0 -1
- package/dist/escalations.d.ts +0 -85
- package/dist/escalations.d.ts.map +0 -1
- package/dist/escalations.js +0 -91
- package/dist/escalations.js.map +0 -1
- package/dist/evaluation-context.d.ts.map +0 -1
- package/dist/evaluation-context.js +0 -44
- package/dist/evaluation-context.js.map +0 -1
- package/dist/external-hold.d.ts +0 -146
- package/dist/external-hold.d.ts.map +0 -1
- package/dist/external-hold.js +0 -223
- package/dist/external-hold.js.map +0 -1
- package/dist/focus-branch-ahead.d.ts +0 -42
- package/dist/focus-branch-ahead.d.ts.map +0 -1
- package/dist/focus-branch-ahead.js +0 -45
- package/dist/focus-branch-ahead.js.map +0 -1
- package/dist/focus-branch-identity.d.ts +0 -62
- package/dist/focus-branch-identity.d.ts.map +0 -1
- package/dist/focus-branch-identity.js +0 -59
- package/dist/focus-branch-identity.js.map +0 -1
- package/dist/focus-engine.d.ts +0 -74
- package/dist/focus-engine.d.ts.map +0 -1
- package/dist/focus-engine.js +0 -528
- package/dist/focus-engine.js.map +0 -1
- package/dist/focus-executor.d.ts +0 -80
- package/dist/focus-executor.d.ts.map +0 -1
- package/dist/focus-executor.js +0 -420
- package/dist/focus-executor.js.map +0 -1
- package/dist/focus-lifecycle.d.ts +0 -60
- package/dist/focus-lifecycle.d.ts.map +0 -1
- package/dist/focus-lifecycle.js +0 -537
- package/dist/focus-lifecycle.js.map +0 -1
- package/dist/focus-loop-registry.d.ts +0 -52
- package/dist/focus-loop-registry.d.ts.map +0 -1
- package/dist/focus-loop-registry.js +0 -362
- package/dist/focus-loop-registry.js.map +0 -1
- package/dist/focus-loop.d.ts +0 -96
- package/dist/focus-loop.d.ts.map +0 -1
- package/dist/focus-loop.js +0 -364
- package/dist/focus-loop.js.map +0 -1
- package/dist/focus-merge.d.ts +0 -131
- package/dist/focus-merge.d.ts.map +0 -1
- package/dist/focus-merge.js +0 -556
- package/dist/focus-merge.js.map +0 -1
- package/dist/focus-phase.d.ts.map +0 -1
- package/dist/focus-phase.js.map +0 -1
- package/dist/focus-prompt-builder.d.ts +0 -35
- package/dist/focus-prompt-builder.d.ts.map +0 -1
- package/dist/focus-prompt-builder.js +0 -119
- package/dist/focus-prompt-builder.js.map +0 -1
- package/dist/focus-provisioning.d.ts +0 -16
- package/dist/focus-provisioning.d.ts.map +0 -1
- package/dist/focus-provisioning.js +0 -122
- package/dist/focus-provisioning.js.map +0 -1
- package/dist/focus-respawn-guard.d.ts +0 -27
- package/dist/focus-respawn-guard.d.ts.map +0 -1
- package/dist/focus-respawn-guard.js +0 -77
- package/dist/focus-respawn-guard.js.map +0 -1
- package/dist/focus-stage-lifecycle.d.ts +0 -63
- package/dist/focus-stage-lifecycle.d.ts.map +0 -1
- package/dist/focus-stage-lifecycle.js +0 -179
- package/dist/focus-stage-lifecycle.js.map +0 -1
- package/dist/focus-team-state.d.ts +0 -94
- package/dist/focus-team-state.d.ts.map +0 -1
- package/dist/focus-team-state.js +0 -182
- package/dist/focus-team-state.js.map +0 -1
- package/dist/focus-worktree-state.d.ts +0 -58
- package/dist/focus-worktree-state.d.ts.map +0 -1
- package/dist/focus-worktree-state.js +0 -115
- package/dist/focus-worktree-state.js.map +0 -1
- package/dist/git/merge-helpers.d.ts +0 -48
- package/dist/git/merge-helpers.d.ts.map +0 -1
- package/dist/git/merge-helpers.js +0 -107
- package/dist/git/merge-helpers.js.map +0 -1
- package/dist/git/merge-strategies.d.ts +0 -49
- package/dist/git/merge-strategies.d.ts.map +0 -1
- package/dist/git/merge-strategies.js +0 -137
- package/dist/git/merge-strategies.js.map +0 -1
- package/dist/git.d.ts +0 -24
- package/dist/git.d.ts.map +0 -1
- package/dist/git.js +0 -114
- package/dist/git.js.map +0 -1
- package/dist/gitignore-convergence.d.ts.map +0 -1
- package/dist/gitignore-convergence.js.map +0 -1
- package/dist/guard-engine.d.ts +0 -19
- package/dist/guard-engine.d.ts.map +0 -1
- package/dist/guard-engine.js +0 -20
- package/dist/guard-engine.js.map +0 -1
- package/dist/guard-evaluator.d.ts +0 -47
- package/dist/guard-evaluator.d.ts.map +0 -1
- package/dist/guard-evaluator.js +0 -195
- package/dist/guard-evaluator.js.map +0 -1
- package/dist/health-events.d.ts.map +0 -1
- package/dist/health-events.js.map +0 -1
- package/dist/heartbeat.d.ts +0 -165
- package/dist/heartbeat.d.ts.map +0 -1
- package/dist/heartbeat.js +0 -501
- package/dist/heartbeat.js.map +0 -1
- package/dist/install-probe-tick.d.ts +0 -63
- package/dist/install-probe-tick.d.ts.map +0 -1
- package/dist/install-probe-tick.js +0 -139
- package/dist/install-probe-tick.js.map +0 -1
- package/dist/install-probe.d.ts.map +0 -1
- package/dist/install-probe.js.map +0 -1
- package/dist/intake-control.d.ts.map +0 -1
- package/dist/intake-control.js.map +0 -1
- package/dist/listener-auto-advance.d.ts +0 -115
- package/dist/listener-auto-advance.d.ts.map +0 -1
- package/dist/listener-auto-advance.js +0 -621
- package/dist/listener-auto-advance.js.map +0 -1
- package/dist/listener.d.ts +0 -101
- package/dist/listener.d.ts.map +0 -1
- package/dist/listener.js +0 -770
- package/dist/listener.js.map +0 -1
- package/dist/log-manager.d.ts +0 -18
- package/dist/log-manager.d.ts.map +0 -1
- package/dist/log-manager.js.map +0 -1
- package/dist/log.d.ts.map +0 -1
- package/dist/log.js.map +0 -1
- package/dist/mcp-resolution.d.ts.map +0 -1
- package/dist/mcp-resolution.js.map +0 -1
- package/dist/merge-back-loop.d.ts +0 -109
- package/dist/merge-back-loop.d.ts.map +0 -1
- package/dist/merge-back-loop.js +0 -498
- package/dist/merge-back-loop.js.map +0 -1
- package/dist/merge-detector.d.ts +0 -55
- package/dist/merge-detector.d.ts.map +0 -1
- package/dist/merge-detector.js +0 -222
- package/dist/merge-detector.js.map +0 -1
- package/dist/merge-failure-classify.d.ts +0 -39
- package/dist/merge-failure-classify.d.ts.map +0 -1
- package/dist/merge-failure-classify.js +0 -58
- package/dist/merge-failure-classify.js.map +0 -1
- package/dist/model-resolution.d.ts.map +0 -1
- package/dist/model-resolution.js.map +0 -1
- package/dist/non-interactive-init.d.ts +0 -40
- package/dist/non-interactive-init.d.ts.map +0 -1
- package/dist/non-interactive-init.js.map +0 -1
- package/dist/onboarding-directive.d.ts.map +0 -1
- package/dist/onboarding-directive.js.map +0 -1
- package/dist/operator-hold.d.ts +0 -66
- package/dist/operator-hold.d.ts.map +0 -1
- package/dist/operator-hold.js +0 -99
- package/dist/operator-hold.js.map +0 -1
- package/dist/otlp/port-manager.d.ts +0 -26
- package/dist/otlp/port-manager.d.ts.map +0 -1
- package/dist/otlp/port-manager.js +0 -132
- package/dist/otlp/port-manager.js.map +0 -1
- package/dist/output-monitor.d.ts +0 -38
- package/dist/output-monitor.d.ts.map +0 -1
- package/dist/output-monitor.js +0 -92
- package/dist/output-monitor.js.map +0 -1
- package/dist/pipeline-config.d.ts +0 -72
- package/dist/pipeline-config.d.ts.map +0 -1
- package/dist/pipeline-config.js.map +0 -1
- package/dist/planning-prompt-builder.d.ts +0 -69
- package/dist/planning-prompt-builder.d.ts.map +0 -1
- package/dist/planning-prompt-builder.js +0 -517
- package/dist/planning-prompt-builder.js.map +0 -1
- package/dist/product-scaffold.d.ts +0 -56
- package/dist/product-scaffold.d.ts.map +0 -1
- package/dist/product-scaffold.js +0 -136
- package/dist/product-scaffold.js.map +0 -1
- package/dist/prompt-contradictions.d.ts.map +0 -1
- package/dist/prompt-contradictions.js.map +0 -1
- package/dist/prompt-listing.d.ts +0 -70
- package/dist/prompt-listing.d.ts.map +0 -1
- package/dist/prompt-listing.js.map +0 -1
- package/dist/realign-apply.d.ts +0 -65
- package/dist/realign-apply.d.ts.map +0 -1
- package/dist/realign-apply.js +0 -302
- package/dist/realign-apply.js.map +0 -1
- package/dist/reality-pole-capture.d.ts.map +0 -1
- package/dist/reality-pole-capture.js +0 -114
- package/dist/reality-pole-capture.js.map +0 -1
- package/dist/reality-pole.d.ts +0 -64
- package/dist/reality-pole.d.ts.map +0 -1
- package/dist/reality-pole.js +0 -101
- package/dist/reality-pole.js.map +0 -1
- package/dist/reality-writeback.d.ts.map +0 -1
- package/dist/reality-writeback.js.map +0 -1
- package/dist/resolver-dispatch.d.ts.map +0 -1
- package/dist/resolver-dispatch.js.map +0 -1
- package/dist/resolver-reach.d.ts +0 -192
- package/dist/resolver-reach.d.ts.map +0 -1
- package/dist/resolver-reach.js +0 -168
- package/dist/resolver-reach.js.map +0 -1
- package/dist/retention-observation.d.ts.map +0 -1
- package/dist/retention-observation.js.map +0 -1
- package/dist/retire-aware-restatement.d.ts.map +0 -1
- package/dist/retire-aware-restatement.js +0 -231
- package/dist/retire-aware-restatement.js.map +0 -1
- package/dist/review-defect-detector.d.ts +0 -82
- package/dist/review-defect-detector.d.ts.map +0 -1
- package/dist/review-defect-detector.js +0 -148
- package/dist/review-defect-detector.js.map +0 -1
- package/dist/review-spawn-coverage-guard.d.ts.map +0 -1
- package/dist/review-spawn-coverage-guard.js.map +0 -1
- package/dist/schema-version-gate.d.ts.map +0 -1
- package/dist/schema-version-gate.js +0 -220
- package/dist/schema-version-gate.js.map +0 -1
- package/dist/security-auto-inject.d.ts.map +0 -1
- package/dist/security-auto-inject.js +0 -168
- package/dist/security-auto-inject.js.map +0 -1
- package/dist/security-finding-gate.d.ts.map +0 -1
- package/dist/security-finding-gate.js +0 -84
- package/dist/security-finding-gate.js.map +0 -1
- package/dist/security-rescan-resolution.d.ts.map +0 -1
- package/dist/security-rescan-resolution.js +0 -117
- package/dist/security-rescan-resolution.js.map +0 -1
- package/dist/security-scan-engine.d.ts +0 -145
- package/dist/security-scan-engine.d.ts.map +0 -1
- package/dist/security-scan-engine.js +0 -271
- package/dist/security-scan-engine.js.map +0 -1
- package/dist/self-update.d.ts.map +0 -1
- package/dist/self-update.js +0 -565
- package/dist/self-update.js.map +0 -1
- package/dist/sensor-sweep.d.ts +0 -194
- package/dist/sensor-sweep.d.ts.map +0 -1
- package/dist/sensor-sweep.js +0 -458
- package/dist/sensor-sweep.js.map +0 -1
- package/dist/session-lineage.d.ts.map +0 -1
- package/dist/session-lineage.js.map +0 -1
- package/dist/session-stamp.d.ts +0 -63
- package/dist/session-stamp.d.ts.map +0 -1
- package/dist/session-stamp.js +0 -67
- package/dist/session-stamp.js.map +0 -1
- package/dist/shutdown-state.d.ts.map +0 -1
- package/dist/shutdown-state.js.map +0 -1
- package/dist/spawn-cooldown.d.ts.map +0 -1
- package/dist/spawn-cooldown.js +0 -53
- package/dist/spawn-cooldown.js.map +0 -1
- package/dist/spawn-environment.d.ts +0 -126
- package/dist/spawn-environment.d.ts.map +0 -1
- package/dist/spawn-environment.js +0 -177
- package/dist/spawn-environment.js.map +0 -1
- package/dist/spawn-sandbox.d.ts +0 -121
- package/dist/spawn-sandbox.d.ts.map +0 -1
- package/dist/spawn-sandbox.js.map +0 -1
- package/dist/spawner/guards.d.ts.map +0 -1
- package/dist/spawner/guards.js +0 -46
- package/dist/spawner/guards.js.map +0 -1
- package/dist/spawner/helpers.d.ts +0 -69
- package/dist/spawner/helpers.d.ts.map +0 -1
- package/dist/spawner/helpers.js +0 -215
- package/dist/spawner/helpers.js.map +0 -1
- package/dist/spawner/index.d.ts +0 -31
- package/dist/spawner/index.d.ts.map +0 -1
- package/dist/spawner/index.js +0 -39
- package/dist/spawner/index.js.map +0 -1
- package/dist/spawner/lifecycle.d.ts +0 -148
- package/dist/spawner/lifecycle.d.ts.map +0 -1
- package/dist/spawner/lifecycle.js +0 -413
- package/dist/spawner/lifecycle.js.map +0 -1
- package/dist/spawner/liveness.d.ts.map +0 -1
- package/dist/spawner/liveness.js +0 -41
- package/dist/spawner/liveness.js.map +0 -1
- package/dist/spawner/resolution.d.ts +0 -27
- package/dist/spawner/resolution.d.ts.map +0 -1
- package/dist/spawner/resolution.js +0 -101
- package/dist/spawner/resolution.js.map +0 -1
- package/dist/spawner/state.d.ts.map +0 -1
- package/dist/spawner/state.js.map +0 -1
- package/dist/spawner/stream-handlers.d.ts +0 -19
- package/dist/spawner/stream-handlers.d.ts.map +0 -1
- package/dist/spawner/stream-handlers.js +0 -34
- package/dist/spawner/stream-handlers.js.map +0 -1
- package/dist/spawner/worker-registry.d.ts.map +0 -1
- package/dist/spawner/worker-registry.js.map +0 -1
- package/dist/stage-classifier.d.ts +0 -32
- package/dist/stage-classifier.d.ts.map +0 -1
- package/dist/stage-classifier.js.map +0 -1
- package/dist/staleness-sensor.d.ts +0 -176
- package/dist/staleness-sensor.d.ts.map +0 -1
- package/dist/staleness-sensor.js +0 -335
- package/dist/staleness-sensor.js.map +0 -1
- package/dist/staleness.d.ts +0 -134
- package/dist/staleness.d.ts.map +0 -1
- package/dist/staleness.js +0 -249
- package/dist/staleness.js.map +0 -1
- package/dist/stall-detector-config.d.ts.map +0 -1
- package/dist/stall-detector-config.js.map +0 -1
- package/dist/stall-detectors.d.ts +0 -196
- package/dist/stall-detectors.d.ts.map +0 -1
- package/dist/stall-detectors.js +0 -348
- package/dist/stall-detectors.js.map +0 -1
- package/dist/state-cascade.d.ts +0 -90
- package/dist/state-cascade.d.ts.map +0 -1
- package/dist/state-cascade.js +0 -230
- package/dist/state-cascade.js.map +0 -1
- package/dist/stop-request.d.ts.map +0 -1
- package/dist/stop-request.js.map +0 -1
- package/dist/supabase.d.ts +0 -38
- package/dist/supabase.d.ts.map +0 -1
- package/dist/supabase.js +0 -52
- package/dist/supabase.js.map +0 -1
- package/dist/task-converter.d.ts +0 -61
- package/dist/task-converter.d.ts.map +0 -1
- package/dist/task-converter.js.map +0 -1
- package/dist/task-dag-builder.d.ts +0 -14
- package/dist/task-dag-builder.d.ts.map +0 -1
- package/dist/task-dag-builder.js +0 -17
- package/dist/task-dag-builder.js.map +0 -1
- package/dist/team-prompt-base.d.ts +0 -43
- package/dist/team-prompt-base.d.ts.map +0 -1
- package/dist/team-prompt-base.js +0 -123
- package/dist/team-prompt-base.js.map +0 -1
- package/dist/telemetry-writer.d.ts +0 -89
- package/dist/telemetry-writer.d.ts.map +0 -1
- package/dist/telemetry-writer.js +0 -212
- package/dist/telemetry-writer.js.map +0 -1
- package/dist/trigger-executor.d.ts +0 -85
- package/dist/trigger-executor.d.ts.map +0 -1
- package/dist/trigger-executor.js +0 -437
- package/dist/trigger-executor.js.map +0 -1
- package/dist/types.d.ts +0 -9
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -9
- package/dist/types.js.map +0 -1
- package/dist/unified-engine-lifecycle.d.ts +0 -186
- package/dist/unified-engine-lifecycle.d.ts.map +0 -1
- package/dist/unified-engine-lifecycle.js +0 -594
- package/dist/unified-engine-lifecycle.js.map +0 -1
- package/dist/unified-init.d.ts +0 -86
- package/dist/unified-init.d.ts.map +0 -1
- package/dist/unified-init.js +0 -313
- package/dist/unified-init.js.map +0 -1
- package/dist/unified-shell-config.d.ts +0 -103
- package/dist/unified-shell-config.d.ts.map +0 -1
- package/dist/unified-shell-config.js.map +0 -1
- package/dist/unified-shell-provisioning.d.ts.map +0 -1
- package/dist/unified-shell-provisioning.js +0 -277
- package/dist/unified-shell-provisioning.js.map +0 -1
- package/dist/unified-shell-status.d.ts.map +0 -1
- package/dist/unified-shell-status.js +0 -143
- package/dist/unified-shell-status.js.map +0 -1
- package/dist/unified-shell.d.ts.map +0 -1
- package/dist/unified-shell.js +0 -583
- package/dist/unified-shell.js.map +0 -1
- package/dist/verification-baseline.d.ts +0 -112
- package/dist/verification-baseline.d.ts.map +0 -1
- package/dist/verification-baseline.js +0 -267
- package/dist/verification-baseline.js.map +0 -1
- package/dist/verification-config.d.ts +0 -146
- package/dist/verification-config.d.ts.map +0 -1
- package/dist/verification-config.js.map +0 -1
- package/dist/verification-default-on.d.ts +0 -159
- package/dist/verification-default-on.d.ts.map +0 -1
- package/dist/verification-default-on.js +0 -272
- package/dist/verification-default-on.js.map +0 -1
- package/dist/verification-deps.d.ts +0 -190
- package/dist/verification-deps.d.ts.map +0 -1
- package/dist/verification-deps.js.map +0 -1
- package/dist/verification-deterministic.d.ts +0 -56
- package/dist/verification-deterministic.d.ts.map +0 -1
- package/dist/verification-deterministic.js +0 -153
- package/dist/verification-deterministic.js.map +0 -1
- package/dist/verification-engine.d.ts +0 -94
- package/dist/verification-engine.d.ts.map +0 -1
- package/dist/verification-engine.js +0 -716
- package/dist/verification-engine.js.map +0 -1
- package/dist/verification-evidence.d.ts +0 -106
- package/dist/verification-evidence.d.ts.map +0 -1
- package/dist/verification-evidence.js +0 -159
- package/dist/verification-evidence.js.map +0 -1
- package/dist/verification-failure-parser.d.ts.map +0 -1
- package/dist/verification-failure-parser.js.map +0 -1
- package/dist/verification-feedback.d.ts +0 -173
- package/dist/verification-feedback.d.ts.map +0 -1
- package/dist/verification-feedback.js +0 -442
- package/dist/verification-feedback.js.map +0 -1
- package/dist/verification-manifest.d.ts.map +0 -1
- package/dist/verification-manifest.js.map +0 -1
- package/dist/verify-reconciliation.d.ts.map +0 -1
- package/dist/verify-reconciliation.js.map +0 -1
- package/dist/verify-restatement.d.ts.map +0 -1
- package/dist/verify-restatement.js +0 -167
- package/dist/verify-restatement.js.map +0 -1
- package/dist/version-check.d.ts.map +0 -1
- package/dist/version-check.js +0 -115
- package/dist/version-check.js.map +0 -1
- package/dist/worker-pidfile.d.ts.map +0 -1
- package/dist/worker-pidfile.js.map +0 -1
- package/dist/workflow-engine.d.ts +0 -95
- package/dist/workflow-engine.d.ts.map +0 -1
- package/dist/workflow-engine.js.map +0 -1
- package/dist/worktree.d.ts +0 -147
- package/dist/worktree.d.ts.map +0 -1
- package/dist/worktree.js +0 -467
- package/dist/worktree.js.map +0 -1
- /package/dist/{audit-prompt.d.ts → audit/audit-prompt.d.ts} +0 -0
- /package/dist/{audit-prompt.js → audit/audit-prompt.js} +0 -0
- /package/dist/{audit-shape.d.ts → audit/audit-shape.d.ts} +0 -0
- /package/dist/{audit-shape.js → audit/audit-shape.js} +0 -0
- /package/dist/{ci-escalation.d.ts → ci/ci-escalation.d.ts} +0 -0
- /package/dist/{ci-status.js → ci/ci-status.js} +0 -0
- /package/dist/{review-spawn-coverage-guard.d.ts → completion/review-spawn-coverage-guard.d.ts} +0 -0
- /package/dist/{review-spawn-coverage-guard.js → completion/review-spawn-coverage-guard.js} +0 -0
- /package/dist/{context-audit.js → context/context-audit.js} +0 -0
- /package/dist/{context-lock.js → context/context-lock.js} +0 -0
- /package/dist/{delivery-reconciler-apply.d.ts → delivery/delivery-reconciler-apply.d.ts} +0 -0
- /package/dist/{resolver-dispatch.d.ts → directive/resolver-dispatch.d.ts} +0 -0
- /package/dist/{resolver-dispatch.js → directive/resolver-dispatch.js} +0 -0
- /package/dist/{drift-evaluator.d.ts → drift/drift-evaluator.d.ts} +0 -0
- /package/dist/{drift-evaluator.js → drift/drift-evaluator.js} +0 -0
- /package/dist/{drift-ratify-policy.d.ts → drift/drift-ratify-policy.d.ts} +0 -0
- /package/dist/{drift-ratify-policy.js → drift/drift-ratify-policy.js} +0 -0
- /package/dist/{retention-observation.d.ts → drift/retention-observation.d.ts} +0 -0
- /package/dist/{retention-observation.js → drift/retention-observation.js} +0 -0
- /package/dist/{focus-phase.d.ts → focus/focus-phase.d.ts} +0 -0
- /package/dist/{focus-phase.js → focus/focus-phase.js} +0 -0
- /package/dist/{evaluation-context.d.ts → guard/evaluation-context.d.ts} +0 -0
- /package/dist/{onboarding-directive.d.ts → prompt/onboarding-directive.d.ts} +0 -0
- /package/dist/{onboarding-directive.js → prompt/onboarding-directive.js} +0 -0
- /package/dist/{prompt-contradictions.d.ts → prompt/prompt-contradictions.d.ts} +0 -0
- /package/dist/{prompt-contradictions.js → prompt/prompt-contradictions.js} +0 -0
- /package/dist/{prompt-listing.js → prompt/prompt-listing.js} +0 -0
- /package/dist/{reality-pole-capture.d.ts → reality/reality-pole-capture.d.ts} +0 -0
- /package/dist/{reality-writeback.d.ts → reality/reality-writeback.d.ts} +0 -0
- /package/dist/{reality-writeback.js → reality/reality-writeback.js} +0 -0
- /package/dist/{security-auto-inject.d.ts → security/security-auto-inject.d.ts} +0 -0
- /package/dist/{security-finding-gate.d.ts → security/security-finding-gate.d.ts} +0 -0
- /package/dist/{security-rescan-resolution.d.ts → security/security-rescan-resolution.d.ts} +0 -0
- /package/dist/{session-lineage.d.ts → session/session-lineage.d.ts} +0 -0
- /package/dist/{session-lineage.js → session/session-lineage.js} +0 -0
- /package/dist/{activity-tracker.d.ts → shell/activity-tracker.d.ts} +0 -0
- /package/dist/{agent-state.d.ts → shell/agent-state.d.ts} +0 -0
- /package/dist/{agent-state.js → shell/agent-state.js} +0 -0
- /package/dist/{auth-liveness.d.ts → shell/auth-liveness.d.ts} +0 -0
- /package/dist/{auth-liveness.js → shell/auth-liveness.js} +0 -0
- /package/dist/{config-hot-reload.js → shell/config-hot-reload.js} +0 -0
- /package/dist/{constants.d.ts → shell/constants.d.ts} +0 -0
- /package/dist/{constants.js → shell/constants.js} +0 -0
- /package/dist/{daemon-logs.d.ts → shell/daemon-logs.d.ts} +0 -0
- /package/dist/{daemon-logs.js → shell/daemon-logs.js} +0 -0
- /package/dist/{daemon-process.d.ts → shell/daemon-process.d.ts} +0 -0
- /package/dist/{daemon-readiness.d.ts → shell/daemon-readiness.d.ts} +0 -0
- /package/dist/{daemon-readiness.js → shell/daemon-readiness.js} +0 -0
- /package/dist/{drain-teardown.d.ts → shell/drain-teardown.d.ts} +0 -0
- /package/dist/{drain-teardown.js → shell/drain-teardown.js} +0 -0
- /package/dist/{gitignore-convergence.d.ts → shell/gitignore-convergence.d.ts} +0 -0
- /package/dist/{gitignore-convergence.js → shell/gitignore-convergence.js} +0 -0
- /package/dist/{health-events.d.ts → shell/health-events.d.ts} +0 -0
- /package/dist/{health-events.js → shell/health-events.js} +0 -0
- /package/dist/{install-probe.d.ts → shell/install-probe.d.ts} +0 -0
- /package/dist/{install-probe.js → shell/install-probe.js} +0 -0
- /package/dist/{intake-control.d.ts → shell/intake-control.d.ts} +0 -0
- /package/dist/{intake-control.js → shell/intake-control.js} +0 -0
- /package/dist/{log-manager.js → shell/log-manager.js} +0 -0
- /package/dist/{log.d.ts → shell/log.d.ts} +0 -0
- /package/dist/{log.js → shell/log.js} +0 -0
- /package/dist/{mcp-resolution.d.ts → shell/mcp-resolution.d.ts} +0 -0
- /package/dist/{mcp-resolution.js → shell/mcp-resolution.js} +0 -0
- /package/dist/{model-resolution.d.ts → shell/model-resolution.d.ts} +0 -0
- /package/dist/{model-resolution.js → shell/model-resolution.js} +0 -0
- /package/dist/{non-interactive-init.js → shell/non-interactive-init.js} +0 -0
- /package/dist/{schema-version-gate.d.ts → shell/schema-version-gate.d.ts} +0 -0
- /package/dist/{shutdown-state.d.ts → shell/shutdown-state.d.ts} +0 -0
- /package/dist/{shutdown-state.js → shell/shutdown-state.js} +0 -0
- /package/dist/{stop-request.d.ts → shell/stop-request.d.ts} +0 -0
- /package/dist/{stop-request.js → shell/stop-request.js} +0 -0
- /package/dist/{unified-shell-config.js → shell/unified-shell-config.js} +0 -0
- /package/dist/{unified-shell-provisioning.d.ts → shell/unified-shell-provisioning.d.ts} +0 -0
- /package/dist/{unified-shell-status.d.ts → shell/unified-shell-status.d.ts} +0 -0
- /package/dist/{unified-shell.d.ts → shell/unified-shell.d.ts} +0 -0
- /package/dist/{worker-pidfile.d.ts → shell/worker-pidfile.d.ts} +0 -0
- /package/dist/{worker-pidfile.js → shell/worker-pidfile.js} +0 -0
- /package/dist/{dag-validator.js → spawn/dag-validator.js} +0 -0
- /package/dist/{dependency-resolver.js → spawn/dependency-resolver.js} +0 -0
- /package/dist/{spawner → spawn}/guards.d.ts +0 -0
- /package/dist/{spawner → spawn}/liveness.d.ts +0 -0
- /package/dist/{spawn-cooldown.d.ts → spawn/spawn-cooldown.d.ts} +0 -0
- /package/dist/{spawn-sandbox.js → spawn/spawn-sandbox.js} +0 -0
- /package/dist/{spawner → spawn}/state.d.ts +0 -0
- /package/dist/{spawner → spawn}/state.js +0 -0
- /package/dist/{task-converter.js → spawn/task-converter.js} +0 -0
- /package/dist/{spawner → spawn}/worker-registry.d.ts +0 -0
- /package/dist/{spawner → spawn}/worker-registry.js +0 -0
- /package/dist/{auto-update-idle.d.ts → update/auto-update-idle.d.ts} +0 -0
- /package/dist/{auto-update-idle.js → update/auto-update-idle.js} +0 -0
- /package/dist/{auto-update.d.ts → update/auto-update.d.ts} +0 -0
- /package/dist/{build-info.d.ts → update/build-info.d.ts} +0 -0
- /package/dist/{build-info.js → update/build-info.js} +0 -0
- /package/dist/{capability-pointer.d.ts → update/capability-pointer.d.ts} +0 -0
- /package/dist/{capability-pointer.js → update/capability-pointer.js} +0 -0
- /package/dist/{self-update.d.ts → update/self-update.d.ts} +0 -0
- /package/dist/{version-check.d.ts → update/version-check.d.ts} +0 -0
- /package/dist/{ai-inspection-runner.d.ts → verify/ai-inspection-runner.d.ts} +0 -0
- /package/dist/{cascade-restatement.d.ts → verify/cascade-restatement.d.ts} +0 -0
- /package/dist/{cascade-restatement.js → verify/cascade-restatement.js} +0 -0
- /package/dist/{de-restatement.d.ts → verify/de-restatement.d.ts} +0 -0
- /package/dist/{retire-aware-restatement.d.ts → verify/retire-aware-restatement.d.ts} +0 -0
- /package/dist/{stall-detector-config.d.ts → verify/stall-detector-config.d.ts} +0 -0
- /package/dist/{stall-detector-config.js → verify/stall-detector-config.js} +0 -0
- /package/dist/{verification-config.js → verify/verification-config.js} +0 -0
- /package/dist/{verification-deps.js → verify/verification-deps.js} +0 -0
- /package/dist/{verification-failure-parser.d.ts → verify/verification-failure-parser.d.ts} +0 -0
- /package/dist/{verification-failure-parser.js → verify/verification-failure-parser.js} +0 -0
- /package/dist/{verification-manifest.d.ts → verify/verification-manifest.d.ts} +0 -0
- /package/dist/{verification-manifest.js → verify/verification-manifest.js} +0 -0
- /package/dist/{verify-reconciliation.d.ts → verify/verify-reconciliation.d.ts} +0 -0
- /package/dist/{verify-reconciliation.js → verify/verify-reconciliation.js} +0 -0
- /package/dist/{verify-restatement.d.ts → verify/verify-restatement.d.ts} +0 -0
- /package/dist/{pipeline-config.js → workflow/pipeline-config.js} +0 -0
- /package/dist/{stage-classifier.js → workflow/stage-classifier.js} +0 -0
- /package/dist/{workflow-engine.js → workflow/workflow-engine.js} +0 -0
|
@@ -0,0 +1,117 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Re-scan resolution: when a scan run completes that covered a finding's
|
|
3
|
+
* IOC class but did not re-produce a previously-open finding, flip the
|
|
4
|
+
* finding to 'resolved' and (if the linked injection's delivery is done)
|
|
5
|
+
* auto-verify the injection.
|
|
6
|
+
*
|
|
7
|
+
* Called by the scanner engine immediately after a run finishes writing
|
|
8
|
+
* its findings, before the next tick begins.
|
|
9
|
+
*
|
|
10
|
+
* @module security-rescan-resolution
|
|
11
|
+
*/
|
|
12
|
+
import { callApi } from '../queries/shared.js';
|
|
13
|
+
import { createLogger } from '../shell/log.js';
|
|
14
|
+
const log = createLogger({ module: 'security-rescan-resolution' });
|
|
15
|
+
/**
|
|
16
|
+
* Resolve previously-open findings that didn't re-appear in this run.
|
|
17
|
+
*
|
|
18
|
+
* @returns the list of finding ids that were flipped to 'resolved'.
|
|
19
|
+
*/
|
|
20
|
+
export async function resolveStaleFindings(productId, observedSets, deps) {
|
|
21
|
+
const iocClasses = observedSets.map((s) => s.iocClass);
|
|
22
|
+
if (iocClasses.length === 0)
|
|
23
|
+
return [];
|
|
24
|
+
const openFindings = await deps.listOpenFindings(productId, iocClasses);
|
|
25
|
+
const observedByClass = new Map();
|
|
26
|
+
for (const set of observedSets) {
|
|
27
|
+
observedByClass.set(set.iocClass, set.identifiers);
|
|
28
|
+
}
|
|
29
|
+
const resolvedIds = [];
|
|
30
|
+
const resolvedInjectionIds = [];
|
|
31
|
+
for (const finding of openFindings) {
|
|
32
|
+
const observedInClass = observedByClass.get(finding.iocClass);
|
|
33
|
+
if (!observedInClass)
|
|
34
|
+
continue;
|
|
35
|
+
if (observedInClass.has(finding.identifier))
|
|
36
|
+
continue;
|
|
37
|
+
// Finding was open, its class was covered, but it didn't re-appear.
|
|
38
|
+
await deps.markFindingResolved(finding.id);
|
|
39
|
+
await deps.writeAudit({
|
|
40
|
+
findingId: finding.id,
|
|
41
|
+
organizationId: finding.organizationId,
|
|
42
|
+
action: 'resolved',
|
|
43
|
+
payload: { reason: 'absent_in_rescan', ioc_class: finding.iocClass },
|
|
44
|
+
});
|
|
45
|
+
resolvedIds.push(finding.id);
|
|
46
|
+
// Auto-verify the linked injection if its delivery has reached 'done'.
|
|
47
|
+
if (finding.linkedInjectionId) {
|
|
48
|
+
resolvedInjectionIds.push(finding.linkedInjectionId);
|
|
49
|
+
const status = await deps.getInjectionDeliveryStatus(finding.linkedInjectionId);
|
|
50
|
+
if (status === 'done') {
|
|
51
|
+
await deps.verifyInjection(finding.linkedInjectionId);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
// Attempt to close any Security focuses whose findings have all been
|
|
56
|
+
// resolved by this sweep. The server-side gate enforces the close
|
|
57
|
+
// criteria (all findings resolved + all deliveries terminal); we just
|
|
58
|
+
// collect candidates here and fan out. closeSecurityFocus returning
|
|
59
|
+
// false (criteria not yet met) is non-fatal.
|
|
60
|
+
if (resolvedInjectionIds.length > 0) {
|
|
61
|
+
try {
|
|
62
|
+
const mappings = await deps.lookupFocusForInjections(resolvedInjectionIds);
|
|
63
|
+
const focusIds = Array.from(new Set(mappings.map((m) => m.focusId)));
|
|
64
|
+
for (const focusId of focusIds) {
|
|
65
|
+
try {
|
|
66
|
+
await deps.closeSecurityFocus(focusId);
|
|
67
|
+
}
|
|
68
|
+
catch (err) {
|
|
69
|
+
log.warn(`[security-rescan-resolution] closeSecurityFocus ${focusId}:`, err.message);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
}
|
|
73
|
+
catch (err) {
|
|
74
|
+
log.warn('[security-rescan-resolution] lookupFocusForInjections:', err.message);
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
return resolvedIds;
|
|
78
|
+
}
|
|
79
|
+
// ---------------------------------------------------------------------------
|
|
80
|
+
// Default Deps -- daemon-side wiring via callApi.
|
|
81
|
+
// ---------------------------------------------------------------------------
|
|
82
|
+
export function buildDefaultResolutionDeps() {
|
|
83
|
+
return {
|
|
84
|
+
listOpenFindings: async (productId, iocClasses) => {
|
|
85
|
+
const res = await callApi('daemon_list_open_security_findings', { productId, iocClasses });
|
|
86
|
+
return res.items ?? [];
|
|
87
|
+
},
|
|
88
|
+
markFindingResolved: async (findingId) => {
|
|
89
|
+
await callApi('daemon_resolve_security_finding', { findingId });
|
|
90
|
+
},
|
|
91
|
+
writeAudit: async (input) => {
|
|
92
|
+
// `action` is reserved at the wire layer for the dispatcher route, so
|
|
93
|
+
// we rename the audit action to `auditAction` to avoid the collision.
|
|
94
|
+
const { action, ...rest } = input;
|
|
95
|
+
await callApi('daemon_write_security_finding_audit', {
|
|
96
|
+
...rest,
|
|
97
|
+
auditAction: action,
|
|
98
|
+
});
|
|
99
|
+
},
|
|
100
|
+
getInjectionDeliveryStatus: async (injectionNodeId) => {
|
|
101
|
+
const res = await callApi('daemon_get_injection_delivery_status', { injectionNodeId });
|
|
102
|
+
return res.status;
|
|
103
|
+
},
|
|
104
|
+
verifyInjection: async (injectionNodeId) => {
|
|
105
|
+
await callApi('reality_tree_verify_injection', { injectionNodeId });
|
|
106
|
+
},
|
|
107
|
+
lookupFocusForInjections: async (injectionNodeIds) => {
|
|
108
|
+
const res = await callApi('daemon_lookup_focus_for_injections', { injectionNodeIds });
|
|
109
|
+
return res.items ?? [];
|
|
110
|
+
},
|
|
111
|
+
closeSecurityFocus: async (focusId) => {
|
|
112
|
+
const res = await callApi('daemon_close_security_focus', { focusId });
|
|
113
|
+
return res.closed === true;
|
|
114
|
+
},
|
|
115
|
+
};
|
|
116
|
+
}
|
|
117
|
+
//# sourceMappingURL=security-rescan-resolution.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"security-rescan-resolution.js","sourceRoot":"","sources":["../../src/security/security-rescan-resolution.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,145 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Security scan engine.
|
|
3
|
+
*
|
|
4
|
+
* Polls security_scan_configs for due scans (cron-due or manual_run_requested_at
|
|
5
|
+
* set), dispatches pluggable Scanner implementations per IOC class, upserts
|
|
6
|
+
* security_findings rows (one per product/ioc_class/identifier), and hands
|
|
7
|
+
* any newly-observed or unremediated-open finding to security-auto-inject
|
|
8
|
+
* for remediation materialization.
|
|
9
|
+
*
|
|
10
|
+
* No longer writes scan-run rows -- the current-state model only persists
|
|
11
|
+
* findings. `last_run_at` on the config is updated directly at the end of
|
|
12
|
+
* runScanForConfig.
|
|
13
|
+
*
|
|
14
|
+
* Activation: gated by shouldRunLoop('TELORA_SECURITY_SCAN_LOOP') in
|
|
15
|
+
* unified-shell.ts. Opt-out semantics match the other daemon loop ticks
|
|
16
|
+
* (unset/anything-but-'0' = enabled, '0' = disabled). See
|
|
17
|
+
* docs/runbook-loop-activation.md.
|
|
18
|
+
*
|
|
19
|
+
* @module security-scan-engine
|
|
20
|
+
*/
|
|
21
|
+
import type { DaemonConfig } from '../types/index.js';
|
|
22
|
+
import { type AutoInjectDeps } from './security-auto-inject.js';
|
|
23
|
+
import { type ResolutionDeps } from './security-rescan-resolution.js';
|
|
24
|
+
export type Severity = 'low' | 'medium' | 'high' | 'critical';
|
|
25
|
+
export type FindingStatus = 'open' | 'remediating' | 'resolved' | 'escalated';
|
|
26
|
+
/** Configuration row driving an individual product's scan cadence. */
|
|
27
|
+
export interface ScanConfig {
|
|
28
|
+
id: string;
|
|
29
|
+
organizationId: string;
|
|
30
|
+
productId: string;
|
|
31
|
+
scheduleCron: string;
|
|
32
|
+
enabledIocClasses: string[];
|
|
33
|
+
enabled: boolean;
|
|
34
|
+
manualRunRequestedAt: string | null;
|
|
35
|
+
lastRunAt: string | null;
|
|
36
|
+
}
|
|
37
|
+
/** Per-scan context passed to each Scanner. */
|
|
38
|
+
export interface ScanContext {
|
|
39
|
+
config: ScanConfig;
|
|
40
|
+
repoPath: string;
|
|
41
|
+
}
|
|
42
|
+
/** Single finding draft emitted by a Scanner. Stored in security_findings. */
|
|
43
|
+
export interface FindingDraft {
|
|
44
|
+
iocClass: string;
|
|
45
|
+
severity: Severity;
|
|
46
|
+
identifier: string;
|
|
47
|
+
payload: Record<string, unknown>;
|
|
48
|
+
}
|
|
49
|
+
/** Per-scanner output for a single scan run. */
|
|
50
|
+
export interface ScanResult {
|
|
51
|
+
findings: FindingDraft[];
|
|
52
|
+
/** Coverage breadcrumb (e.g. packages_audited, files_scanned) + any warnings. */
|
|
53
|
+
coverage: Record<string, unknown>;
|
|
54
|
+
}
|
|
55
|
+
/** Pluggable Scanner contract -- one per IOC class. */
|
|
56
|
+
export interface Scanner {
|
|
57
|
+
/** IOC class slug, matched against ScanConfig.enabledIocClasses. */
|
|
58
|
+
iocClass: string;
|
|
59
|
+
scan(ctx: ScanContext): Promise<ScanResult>;
|
|
60
|
+
}
|
|
61
|
+
export declare function registerScanner(scanner: Scanner): void;
|
|
62
|
+
export declare function getRegisteredScanners(): Scanner[];
|
|
63
|
+
export interface UpsertFindingResult {
|
|
64
|
+
findingId: string;
|
|
65
|
+
/** True when this row was just inserted (vs an existing row was updated). */
|
|
66
|
+
wasNew: boolean;
|
|
67
|
+
status: FindingStatus;
|
|
68
|
+
linkedInjectionId: string | null;
|
|
69
|
+
}
|
|
70
|
+
/** Options that further narrow which due configs the tick should pick up. */
|
|
71
|
+
export interface DueScanConfigsOptions {
|
|
72
|
+
/**
|
|
73
|
+
* When true, return only configs with a pending manual-run request and
|
|
74
|
+
* skip cron evaluation entirely. Used by the fast (30s) request-drain
|
|
75
|
+
* loop so the click-to-run latency matches other queued-work pickups.
|
|
76
|
+
*/
|
|
77
|
+
manualOnly?: boolean;
|
|
78
|
+
}
|
|
79
|
+
export interface SecurityScanDeps {
|
|
80
|
+
getDueScanConfigs: (opts?: DueScanConfigsOptions) => Promise<ScanConfig[]>;
|
|
81
|
+
/**
|
|
82
|
+
* Insert or update one row of security_findings. Conflict on
|
|
83
|
+
* (product_id, ioc_class, identifier) updates last_seen_at, severity,
|
|
84
|
+
* and payload. first_seen_at is set on insert only.
|
|
85
|
+
*/
|
|
86
|
+
upsertFinding: (productId: string, organizationId: string, finding: FindingDraft) => Promise<UpsertFindingResult>;
|
|
87
|
+
/** Stamp last_run_at on the config after a scan completes. */
|
|
88
|
+
updateConfigLastRun: (configId: string) => Promise<void>;
|
|
89
|
+
clearManualRunRequest: (configId: string) => Promise<void>;
|
|
90
|
+
/**
|
|
91
|
+
* Resolve the repo to scan for a product, or null when this daemon does not
|
|
92
|
+
* manage that product. NULL IS LOAD-BEARING: the caller must skip the scan
|
|
93
|
+
* entirely rather than substitute a fallback path. Returning some other
|
|
94
|
+
* repo's path makes `npm audit` (and every path-based scanner) report THAT
|
|
95
|
+
* repo's findings against this product -- see the fail-closed gate in
|
|
96
|
+
* runScanForConfig.
|
|
97
|
+
*/
|
|
98
|
+
resolveCwd: (productId: string) => string | null;
|
|
99
|
+
/**
|
|
100
|
+
* Flush the OSV + GHSA feed caches. Invoked at the start of every
|
|
101
|
+
* manual-triggered scan so a user-clicked "Refresh feeds" pulls fresh
|
|
102
|
+
* upstream advisory data rather than the cached 15-minute window.
|
|
103
|
+
*/
|
|
104
|
+
clearFeedCaches: () => void;
|
|
105
|
+
scanners: Scanner[];
|
|
106
|
+
/**
|
|
107
|
+
* Optional auto-injection hook. When set, each new finding (or
|
|
108
|
+
* existing open finding with no remediation) is passed to
|
|
109
|
+
* processNewFinding so the daemon can materialize a remediation
|
|
110
|
+
* injection + delivery for it.
|
|
111
|
+
*/
|
|
112
|
+
autoInjectDeps?: AutoInjectDeps;
|
|
113
|
+
/**
|
|
114
|
+
* Optional re-scan resolution hook. When set, after every scan run
|
|
115
|
+
* finishes, the engine asks the resolution module to flip previously
|
|
116
|
+
* open findings whose identifiers did not re-appear to 'resolved'.
|
|
117
|
+
*/
|
|
118
|
+
resolutionDeps?: ResolutionDeps;
|
|
119
|
+
}
|
|
120
|
+
/**
|
|
121
|
+
* Memoize the per-batch identifiers within one scan-run: focus (+ tree),
|
|
122
|
+
* entity node, injection node, and delivery. The server handlers always
|
|
123
|
+
* create new rows; without this wrapper, every finding in the scan would
|
|
124
|
+
* land in its own focus + delivery, producing N noisy copies of what is
|
|
125
|
+
* conceptually one remediation batch. Returns undefined when no
|
|
126
|
+
* auto-inject is configured.
|
|
127
|
+
*
|
|
128
|
+
* Failure semantics: if a memoized call throws, that slot's cached promise
|
|
129
|
+
* is discarded so the next finding in the run retries the create. Slots
|
|
130
|
+
* are independent -- a transient failure on createInjection does not
|
|
131
|
+
* invalidate the already-resolved focus or entity.
|
|
132
|
+
*
|
|
133
|
+
* Also exposes peekFocusId() so the engine can finalize the focus name
|
|
134
|
+
* (appending the finding count) once the scan loop completes.
|
|
135
|
+
*/
|
|
136
|
+
export interface ScanRunAutoInject {
|
|
137
|
+
deps: AutoInjectDeps;
|
|
138
|
+
/** focusId of the memoized focus, or null if no focus was created. */
|
|
139
|
+
peekFocusId(): string | null;
|
|
140
|
+
}
|
|
141
|
+
export declare function wrapAutoInjectForScanRun(inner: AutoInjectDeps | undefined): ScanRunAutoInject | undefined;
|
|
142
|
+
export declare function runScanForConfig(config: ScanConfig, trigger: 'schedule' | 'manual', deps: SecurityScanDeps): Promise<void>;
|
|
143
|
+
export declare function runSecurityScanTick(deps: SecurityScanDeps, opts?: DueScanConfigsOptions): Promise<void>;
|
|
144
|
+
export declare function buildDefaultSecurityScanDeps(config: DaemonConfig): SecurityScanDeps;
|
|
145
|
+
//# sourceMappingURL=security-scan-engine.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"security-scan-engine.d.ts","sourceRoot":"","sources":["../../src/security/security-scan-engine.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,271 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Security scan engine.
|
|
3
|
+
*
|
|
4
|
+
* Polls security_scan_configs for due scans (cron-due or manual_run_requested_at
|
|
5
|
+
* set), dispatches pluggable Scanner implementations per IOC class, upserts
|
|
6
|
+
* security_findings rows (one per product/ioc_class/identifier), and hands
|
|
7
|
+
* any newly-observed or unremediated-open finding to security-auto-inject
|
|
8
|
+
* for remediation materialization.
|
|
9
|
+
*
|
|
10
|
+
* No longer writes scan-run rows -- the current-state model only persists
|
|
11
|
+
* findings. `last_run_at` on the config is updated directly at the end of
|
|
12
|
+
* runScanForConfig.
|
|
13
|
+
*
|
|
14
|
+
* Activation: gated by shouldRunLoop('TELORA_SECURITY_SCAN_LOOP') in
|
|
15
|
+
* unified-shell.ts. Opt-out semantics match the other daemon loop ticks
|
|
16
|
+
* (unset/anything-but-'0' = enabled, '0' = disabled). See
|
|
17
|
+
* docs/runbook-loop-activation.md.
|
|
18
|
+
*
|
|
19
|
+
* @module security-scan-engine
|
|
20
|
+
*/
|
|
21
|
+
import { callApi } from '../queries/shared.js';
|
|
22
|
+
import { configForProduct } from '../shell/config.js';
|
|
23
|
+
import { buildDefaultAutoInjectDeps, processNewFinding, } from './security-auto-inject.js';
|
|
24
|
+
import { resolveStaleFindings, buildDefaultResolutionDeps, } from './security-rescan-resolution.js';
|
|
25
|
+
import { clearOsvCache } from '../feeds/osv.js';
|
|
26
|
+
import { clearGhsaCache } from '../feeds/ghsa.js';
|
|
27
|
+
import { createLogger } from '../shell/log.js';
|
|
28
|
+
const log = createLogger({ module: 'security-scan-engine' });
|
|
29
|
+
// ---------------------------------------------------------------------------
|
|
30
|
+
// Default registry -- scanners self-register here in their own modules
|
|
31
|
+
// ---------------------------------------------------------------------------
|
|
32
|
+
const DEFAULT_REGISTRY = new Map();
|
|
33
|
+
export function registerScanner(scanner) {
|
|
34
|
+
DEFAULT_REGISTRY.set(scanner.iocClass, scanner);
|
|
35
|
+
}
|
|
36
|
+
export function getRegisteredScanners() {
|
|
37
|
+
return [...DEFAULT_REGISTRY.values()];
|
|
38
|
+
}
|
|
39
|
+
function makeMemoSlot(fn, onResolve) {
|
|
40
|
+
let cached = null;
|
|
41
|
+
return (input) => {
|
|
42
|
+
if (!cached) {
|
|
43
|
+
cached = fn(input).then((result) => {
|
|
44
|
+
onResolve?.(result);
|
|
45
|
+
return result;
|
|
46
|
+
}, (err) => {
|
|
47
|
+
cached = null;
|
|
48
|
+
throw err;
|
|
49
|
+
});
|
|
50
|
+
}
|
|
51
|
+
return cached;
|
|
52
|
+
};
|
|
53
|
+
}
|
|
54
|
+
export function wrapAutoInjectForScanRun(inner) {
|
|
55
|
+
if (!inner)
|
|
56
|
+
return undefined;
|
|
57
|
+
let resolvedFocusId = null;
|
|
58
|
+
const focusFn = makeMemoSlot((input) => inner.createSecurityRemediationFocus(input.productId, input.organizationId), (result) => {
|
|
59
|
+
resolvedFocusId = result.focusId;
|
|
60
|
+
});
|
|
61
|
+
const entityFn = makeMemoSlot(inner.upsertEntityNode);
|
|
62
|
+
const injectionFn = makeMemoSlot(inner.createInjection);
|
|
63
|
+
const deliveryFn = makeMemoSlot(inner.createDelivery);
|
|
64
|
+
const wrapped = {
|
|
65
|
+
...inner,
|
|
66
|
+
createSecurityRemediationFocus: (productId, organizationId) => focusFn({ productId, organizationId }),
|
|
67
|
+
upsertEntityNode: entityFn,
|
|
68
|
+
createInjection: injectionFn,
|
|
69
|
+
createDelivery: deliveryFn,
|
|
70
|
+
};
|
|
71
|
+
return {
|
|
72
|
+
deps: wrapped,
|
|
73
|
+
peekFocusId: () => resolvedFocusId,
|
|
74
|
+
};
|
|
75
|
+
}
|
|
76
|
+
export async function runScanForConfig(config, trigger, deps) {
|
|
77
|
+
// Manual triggers carry the "Refresh feeds" intent: flush the OSV/GHSA
|
|
78
|
+
// TTL caches so this scan pulls fresh advisory data instead of replaying
|
|
79
|
+
// the 15-minute window. Scheduled triggers honour the cache to keep
|
|
80
|
+
// upstream load proportional to scan cadence.
|
|
81
|
+
if (trigger === 'manual') {
|
|
82
|
+
deps.clearFeedCaches();
|
|
83
|
+
}
|
|
84
|
+
// Fail-closed product gate. Scan configs exist per product ORG-WIDE, but this
|
|
85
|
+
// daemon only manages the products it was started with. Scanning a product we
|
|
86
|
+
// have no checkout for can only produce findings about some OTHER repo, so we
|
|
87
|
+
// scan nothing rather than scan the wrong tree. Skipping without stamping
|
|
88
|
+
// last_run_at is deliberate: the config stays due, so the daemon that DOES
|
|
89
|
+
// manage this product still picks it up on its own tick.
|
|
90
|
+
const repoPath = deps.resolveCwd(config.productId);
|
|
91
|
+
if (repoPath === null) {
|
|
92
|
+
log.debug(`Skipping security scan for product ${config.productId}: not managed by this daemon ` +
|
|
93
|
+
`(no repo checkout here). Leaving the config due for a daemon that manages it.`);
|
|
94
|
+
return;
|
|
95
|
+
}
|
|
96
|
+
// Per-scan-run focus memoization. The server handler always creates a new
|
|
97
|
+
// focus, so without this wrapper each finding in a scan would land in its
|
|
98
|
+
// own focus. The first finding in this run triggers focus creation; every
|
|
99
|
+
// subsequent finding shares the same focus. Next scan run gets a fresh
|
|
100
|
+
// closure -> fresh focus = fresh batch.
|
|
101
|
+
const scanScopedAutoInject = wrapAutoInjectForScanRun(deps.autoInjectDeps);
|
|
102
|
+
let injectedCount = 0;
|
|
103
|
+
const enabledScanners = deps.scanners.filter((s) => config.enabledIocClasses.includes(s.iocClass));
|
|
104
|
+
// Per-class observed identifier sets for re-scan resolution. Only
|
|
105
|
+
// classes whose scanner ran without error contribute -- a failed
|
|
106
|
+
// scanner can't claim coverage for its class.
|
|
107
|
+
const observedByClass = new Map();
|
|
108
|
+
for (const scanner of enabledScanners) {
|
|
109
|
+
try {
|
|
110
|
+
const result = await scanner.scan({
|
|
111
|
+
config,
|
|
112
|
+
repoPath,
|
|
113
|
+
});
|
|
114
|
+
const observed = new Set();
|
|
115
|
+
for (const finding of result.findings) {
|
|
116
|
+
const upsert = await deps.upsertFinding(config.productId, config.organizationId, finding);
|
|
117
|
+
observed.add(finding.identifier);
|
|
118
|
+
// Trigger auto-inject when:
|
|
119
|
+
// * the finding is brand new, OR
|
|
120
|
+
// * the existing finding is open with no remediation in flight
|
|
121
|
+
// (e.g. previous delivery was cancelled).
|
|
122
|
+
const shouldRemediate = upsert.wasNew || (upsert.status === 'open' && upsert.linkedInjectionId === null);
|
|
123
|
+
if (scanScopedAutoInject && shouldRemediate) {
|
|
124
|
+
try {
|
|
125
|
+
const forInjection = {
|
|
126
|
+
id: upsert.findingId,
|
|
127
|
+
organizationId: config.organizationId,
|
|
128
|
+
productId: config.productId,
|
|
129
|
+
iocClass: finding.iocClass,
|
|
130
|
+
severity: finding.severity,
|
|
131
|
+
identifier: finding.identifier,
|
|
132
|
+
payload: finding.payload,
|
|
133
|
+
status: upsert.status,
|
|
134
|
+
linkedInjectionId: upsert.linkedInjectionId,
|
|
135
|
+
};
|
|
136
|
+
const injectResult = await processNewFinding(forInjection, {}, scanScopedAutoInject.deps);
|
|
137
|
+
if (injectResult.status === 'injected') {
|
|
138
|
+
injectedCount++;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
catch (err) {
|
|
142
|
+
log.warn(`[security-scan-engine] auto-inject ${finding.identifier}:`, err.message);
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
observedByClass.set(scanner.iocClass, observed);
|
|
147
|
+
}
|
|
148
|
+
catch (err) {
|
|
149
|
+
log.warn(`[security-scan-engine] scanner ${scanner.iocClass} failed:`, err.message);
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
// Re-scan resolution: previously-open findings whose class was
|
|
153
|
+
// covered by this run but whose identifier did not re-appear are
|
|
154
|
+
// flipped to 'resolved'. Failures here are non-fatal.
|
|
155
|
+
if (deps.resolutionDeps && observedByClass.size > 0) {
|
|
156
|
+
try {
|
|
157
|
+
const observedSets = Array.from(observedByClass.entries()).map(([iocClass, identifiers]) => ({ iocClass, identifiers }));
|
|
158
|
+
await resolveStaleFindings(config.productId, observedSets, deps.resolutionDeps);
|
|
159
|
+
}
|
|
160
|
+
catch (err) {
|
|
161
|
+
log.warn('resolution sweep failed:', err.message);
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
// Finalize the security remediation focus name with the batch finding count
|
|
165
|
+
// so dashboard names like "Security Remediation 2026-05-21 19:44 UTC" become
|
|
166
|
+
// "... (3 findings)". Best-effort -- no-op when no focus was created or the
|
|
167
|
+
// dep is not wired (tests).
|
|
168
|
+
if (scanScopedAutoInject && injectedCount > 0) {
|
|
169
|
+
const focusId = scanScopedAutoInject.peekFocusId();
|
|
170
|
+
if (focusId && deps.autoInjectDeps?.finalizeSecurityRemediationFocusName) {
|
|
171
|
+
try {
|
|
172
|
+
await deps.autoInjectDeps.finalizeSecurityRemediationFocusName(focusId, injectedCount);
|
|
173
|
+
}
|
|
174
|
+
catch (err) {
|
|
175
|
+
log.warn('[security-scan-engine] finalizeSecurityRemediationFocusName failed:', err.message);
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
// Stamp config.last_run_at so cadence recomputes.
|
|
180
|
+
try {
|
|
181
|
+
await deps.updateConfigLastRun(config.id);
|
|
182
|
+
}
|
|
183
|
+
catch (err) {
|
|
184
|
+
log.warn('updateConfigLastRun failed:', err.message);
|
|
185
|
+
}
|
|
186
|
+
if (trigger === 'manual') {
|
|
187
|
+
await deps.clearManualRunRequest(config.id);
|
|
188
|
+
}
|
|
189
|
+
}
|
|
190
|
+
// ---------------------------------------------------------------------------
|
|
191
|
+
// Loop tick -- invoked by unified-shell on a fixed cadence
|
|
192
|
+
// ---------------------------------------------------------------------------
|
|
193
|
+
// Per-process re-entry guard. A slow scan run (rate-limited retries,
|
|
194
|
+
// many findings) can take longer than the 30s manual-drain tick interval;
|
|
195
|
+
// without this, the same config gets picked up again and a second
|
|
196
|
+
// runScanForConfig runs in parallel, producing duplicate Security
|
|
197
|
+
// remediation focuses for the same scan batch.
|
|
198
|
+
const inFlightConfigs = new Set();
|
|
199
|
+
export async function runSecurityScanTick(deps, opts = {}) {
|
|
200
|
+
const configs = await deps.getDueScanConfigs(opts);
|
|
201
|
+
for (const config of configs) {
|
|
202
|
+
if (!config.enabled)
|
|
203
|
+
continue;
|
|
204
|
+
if (inFlightConfigs.has(config.id))
|
|
205
|
+
continue;
|
|
206
|
+
const trigger = config.manualRunRequestedAt ? 'manual' : 'schedule';
|
|
207
|
+
inFlightConfigs.add(config.id);
|
|
208
|
+
try {
|
|
209
|
+
await runScanForConfig(config, trigger, deps);
|
|
210
|
+
}
|
|
211
|
+
catch (err) {
|
|
212
|
+
// Per-config failures are swallowed so a single broken product
|
|
213
|
+
// does not stop the engine from servicing others.
|
|
214
|
+
log.debug('Per-config failures are swallowed so a single broken product', { error: String(err?.message ?? err) });
|
|
215
|
+
}
|
|
216
|
+
finally {
|
|
217
|
+
inFlightConfigs.delete(config.id);
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
}
|
|
221
|
+
// ---------------------------------------------------------------------------
|
|
222
|
+
// Default Deps -- daemon-side wiring via callApi
|
|
223
|
+
// ---------------------------------------------------------------------------
|
|
224
|
+
export function buildDefaultSecurityScanDeps(config) {
|
|
225
|
+
const resolveCwd = (productId) => {
|
|
226
|
+
const product = config.products.find((p) => p.id === productId);
|
|
227
|
+
// Fail CLOSED. This previously returned config.repoPath -- the daemon's own
|
|
228
|
+
// primary repo -- for any product this daemon does not manage. A scan config
|
|
229
|
+
// exists per product org-wide, but config.products holds only the products
|
|
230
|
+
// THIS daemon was started with, so every unmanaged product was scanned
|
|
231
|
+
// against the daemon's own tree: `npm audit` passed its Node-project gate
|
|
232
|
+
// legitimately (the daemon's repo IS a Node project) and reported the
|
|
233
|
+
// DAEMON's dependency advisories as findings on an unrelated product.
|
|
234
|
+
// Observed 2026-07-24: @modelcontextprotocol/sdk, @hono/node-server,
|
|
235
|
+
// fast-uri and dompurify -- all Telora's own deps -- filed against a Quarto
|
|
236
|
+
// book, a Rust/Godot workspace, and a Python+Vite app, each spawning a
|
|
237
|
+
// Security Remediation focus whose team found nothing and escalated.
|
|
238
|
+
if (!product)
|
|
239
|
+
return null;
|
|
240
|
+
return configForProduct(config, product).repoPath;
|
|
241
|
+
};
|
|
242
|
+
return {
|
|
243
|
+
getDueScanConfigs: async (opts) => {
|
|
244
|
+
const res = await callApi('daemon_get_due_security_scan_configs', opts?.manualOnly ? { manualOnly: true } : {});
|
|
245
|
+
return res.items ?? [];
|
|
246
|
+
},
|
|
247
|
+
upsertFinding: async (productId, organizationId, finding) => {
|
|
248
|
+
const res = await callApi('daemon_upsert_security_finding', {
|
|
249
|
+
productId,
|
|
250
|
+
organizationId,
|
|
251
|
+
...finding,
|
|
252
|
+
});
|
|
253
|
+
return res;
|
|
254
|
+
},
|
|
255
|
+
updateConfigLastRun: async (configId) => {
|
|
256
|
+
await callApi('daemon_update_scan_config_last_run', { configId });
|
|
257
|
+
},
|
|
258
|
+
clearManualRunRequest: async (configId) => {
|
|
259
|
+
await callApi('daemon_clear_manual_scan_request', { configId });
|
|
260
|
+
},
|
|
261
|
+
resolveCwd,
|
|
262
|
+
clearFeedCaches: () => {
|
|
263
|
+
clearOsvCache();
|
|
264
|
+
clearGhsaCache();
|
|
265
|
+
},
|
|
266
|
+
scanners: getRegisteredScanners(),
|
|
267
|
+
autoInjectDeps: buildDefaultAutoInjectDeps(),
|
|
268
|
+
resolutionDeps: buildDefaultResolutionDeps(),
|
|
269
|
+
};
|
|
270
|
+
}
|
|
271
|
+
//# sourceMappingURL=security-scan-engine.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"security-scan-engine.js","sourceRoot":"","sources":["../../src/security/security-scan-engine.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAE/C,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,EACL,0BAA0B,EAC1B,iBAAiB,GAGlB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EACL,oBAAoB,EACpB,0BAA0B,GAG3B,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,iBAAiB,CAAC;AAE/C,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,MAAM,EAAE,sBAAsB,EAAE,CAAC,CAAC;AAkD7D,8EAA8E;AAC9E,uEAAuE;AACvE,8EAA8E;AAE9E,MAAM,gBAAgB,GAAyB,IAAI,GAAG,EAAE,CAAC;AAEzD,MAAM,UAAU,eAAe,CAAC,OAAgB;IAC9C,gBAAgB,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,qBAAqB;IACnC,OAAO,CAAC,GAAG,gBAAgB,CAAC,MAAM,EAAE,CAAC,CAAC;AACxC,CAAC;AA4FD,SAAS,YAAY,CACnB,EAAuC,EACvC,SAAqC;IAErC,IAAI,MAAM,GAA4B,IAAI,CAAC;IAC3C,OAAO,CAAC,KAAa,EAAE,EAAE;QACvB,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,IAAI,CACrB,CAAC,MAAM,EAAE,EAAE;gBACT,SAAS,EAAE,CAAC,MAAM,CAAC,CAAC;gBACpB,OAAO,MAAM,CAAC;YAChB,CAAC,EACD,CAAC,GAAG,EAAE,EAAE;gBACN,MAAM,GAAG,IAAI,CAAC;gBACd,MAAM,GAAG,CAAC;YACZ,CAAC,CACF,CAAC;QACJ,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,KAAiC;IAEjC,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC7B,IAAI,eAAe,GAAkB,IAAI,CAAC;IAC1C,MAAM,OAAO,GAAG,YAAY,CAC1B,CAAC,KAAoD,EAAE,EAAE,CACvD,KAAK,CAAC,8BAA8B,CAAC,KAAK,CAAC,SAAS,EAAE,KAAK,CAAC,cAAc,CAAC,EAC7E,CAAC,MAAM,EAAE,EAAE;QACT,eAAe,GAAG,MAAM,CAAC,OAAO,CAAC;IACnC,CAAC,CACF,CAAC;IACF,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;IACtD,MAAM,WAAW,GAAG,YAAY,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC;IACxD,MAAM,UAAU,GAAG,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC;IACtD,MAAM,OAAO,GAAmB;QAC9B,GAAG,KAAK;QACR,8BAA8B,EAAE,CAAC,SAAS,EAAE,cAAc,EAAE,EAAE,CAC5D,OAAO,CAAC,EAAE,SAAS,EAAE,cAAc,EAAE,CAAC;QACxC,gBAAgB,EAAE,QAAQ;QAC1B,eAAe,EAAE,WAAW;QAC5B,cAAc,EAAE,UAAU;KAC3B,CAAC;IACF,OAAO;QACL,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,GAAG,EAAE,CAAC,eAAe;KACnC,CAAC;AACJ,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,MAAkB,EAClB,OAA8B,EAC9B,IAAsB;IAEtB,uEAAuE;IACvE,yEAAyE;IACzE,oEAAoE;IACpE,8CAA8C;IAC9C,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,8EAA8E;IAC9E,8EAA8E;IAC9E,8EAA8E;IAC9E,0EAA0E;IAC1E,2EAA2E;IAC3E,yDAAyD;IACzD,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACnD,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;QACtB,GAAG,CAAC,KAAK,CACP,sCAAsC,MAAM,CAAC,SAAS,+BAA+B;YACrF,+EAA+E,CAChF,CAAC;QACF,OAAO;IACT,CAAC;IAED,0EAA0E;IAC1E,0EAA0E;IAC1E,0EAA0E;IAC1E,uEAAuE;IACvE,wCAAwC;IACxC,MAAM,oBAAoB,GAAG,wBAAwB,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;IAC3E,IAAI,aAAa,GAAG,CAAC,CAAC;IAEtB,MAAM,eAAe,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEnG,kEAAkE;IAClE,iEAAiE;IACjE,8CAA8C;IAC9C,MAAM,eAAe,GAAG,IAAI,GAAG,EAAuB,CAAC;IACvD,KAAK,MAAM,OAAO,IAAI,eAAe,EAAE,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;gBAChC,MAAM;gBACN,QAAQ;aACT,CAAC,CAAC;YAEH,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAC;YACnC,KAAK,MAAM,OAAO,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACtC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CACrC,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,cAAc,EACrB,OAAO,CACR,CAAC;gBACF,QAAQ,CAAC,GAAG,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBAEjC,4BAA4B;gBAC5B,mCAAmC;gBACnC,iEAAiE;gBACjE,8CAA8C;gBAC9C,MAAM,eAAe,GACnB,MAAM,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,MAAM,IAAI,MAAM,CAAC,iBAAiB,KAAK,IAAI,CAAC,CAAC;gBACnF,IAAI,oBAAoB,IAAI,eAAe,EAAE,CAAC;oBAC5C,IAAI,CAAC;wBACH,MAAM,YAAY,GAAwB;4BACxC,EAAE,EAAE,MAAM,CAAC,SAAS;4BACpB,cAAc,EAAE,MAAM,CAAC,cAAc;4BACrC,SAAS,EAAE,MAAM,CAAC,SAAS;4BAC3B,QAAQ,EAAE,OAAO,CAAC,QAAQ;4BAC1B,QAAQ,EAAE,OAAO,CAAC,QAAQ;4BAC1B,UAAU,EAAE,OAAO,CAAC,UAAU;4BAC9B,OAAO,EAAE,OAAO,CAAC,OAAO;4BACxB,MAAM,EAAE,MAAM,CAAC,MAAM;4BACrB,iBAAiB,EAAE,MAAM,CAAC,iBAAiB;yBAC5C,CAAC;wBACF,MAAM,YAAY,GAAG,MAAM,iBAAiB,CAAC,YAAY,EAAE,EAAE,EAAE,oBAAoB,CAAC,IAAI,CAAC,CAAC;wBAC1F,IAAI,YAAY,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;4BACvC,aAAa,EAAE,CAAC;wBAClB,CAAC;oBACH,CAAC;oBAAC,OAAO,GAAG,EAAE,CAAC;wBACb,GAAG,CAAC,IAAI,CACN,sCAAsC,OAAO,CAAC,UAAU,GAAG,EAC1D,GAAa,CAAC,OAAO,CACvB,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YACD,eAAe,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAClD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CACN,kCAAkC,OAAO,CAAC,QAAQ,UAAU,EAC3D,GAAa,CAAC,OAAO,CACvB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,+DAA+D;IAC/D,iEAAiE;IACjE,sDAAsD;IACtD,IAAI,IAAI,CAAC,cAAc,IAAI,eAAe,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;QACpD,IAAI,CAAC;YACH,MAAM,YAAY,GAAwB,KAAK,CAAC,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC,CAAC,GAAG,CACjF,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CACzD,CAAC;YACF,MAAM,oBAAoB,CAAC,MAAM,CAAC,SAAS,EAAE,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,CAAC;QAClF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,GAAG,CAAC,IAAI,CAAC,0BAA0B,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;QAC/D,CAAC;IACH,CAAC;IAED,4EAA4E;IAC5E,6EAA6E;IAC7E,4EAA4E;IAC5E,4BAA4B;IAC5B,IAAI,oBAAoB,IAAI,aAAa,GAAG,CAAC,EAAE,CAAC;QAC9C,MAAM,OAAO,GAAG,oBAAoB,CAAC,WAAW,EAAE,CAAC;QACnD,IAAI,OAAO,IAAI,IAAI,CAAC,cAAc,EAAE,oCAAoC,EAAE,CAAC;YACzE,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,cAAc,CAAC,oCAAoC,CAAC,OAAO,EAAE,aAAa,CAAC,CAAC;YACzF,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,GAAG,CAAC,IAAI,CACN,qEAAqE,EACpE,GAAa,CAAC,OAAO,CACvB,CAAC;YACJ,CAAC;QACH,CAAC;IACH,CAAC;IAED,kDAAkD;IAClD,IAAI,CAAC;QACH,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC5C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAC,IAAI,CAAC,6BAA6B,EAAG,GAAa,CAAC,OAAO,CAAC,CAAC;IAClE,CAAC;IAED,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;QACzB,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,2DAA2D;AAC3D,8EAA8E;AAE9E,qEAAqE;AACrE,0EAA0E;AAC1E,kEAAkE;AAClE,kEAAkE;AAClE,+CAA+C;AAC/C,MAAM,eAAe,GAAG,IAAI,GAAG,EAAU,CAAC;AAE1C,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,IAAsB,EACtB,OAA8B,EAAE;IAEhC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACnD,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;QAC7B,IAAI,CAAC,MAAM,CAAC,OAAO;YAAE,SAAS;QAC9B,IAAI,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YAAE,SAAS;QAC7C,MAAM,OAAO,GAA0B,MAAM,CAAC,oBAAoB,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;QAC3F,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QAC/B,IAAI,CAAC;YACH,MAAM,gBAAgB,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;QAChD,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACnB,+DAA+D;YACzD,kDAAkD;YAClD,GAAG,CAAC,KAAK,CAAC,8DAA8D,EAAE,EAAE,KAAK,EAAE,MAAM,CAAE,GAAa,EAAE,OAAO,IAAI,GAAG,CAAC,EAAE,CAAC,CAAC;QAC/H,CAAC;gBAAS,CAAC;YACT,eAAe,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;QACpC,CAAC;IACH,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,iDAAiD;AACjD,8EAA8E;AAE9E,MAAM,UAAU,4BAA4B,CAAC,MAAoB;IAC/D,MAAM,UAAU,GAAG,CAAC,SAAiB,EAAiB,EAAE;QACtD,MAAM,OAAO,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,SAAS,CAAC,CAAC;QAChE,4EAA4E;QAC5E,6EAA6E;QAC7E,2EAA2E;QAC3E,uEAAuE;QACvE,0EAA0E;QAC1E,sEAAsE;QACtE,sEAAsE;QACtE,qEAAqE;QACrE,4EAA4E;QAC5E,uEAAuE;QACvE,qEAAqE;QACrE,IAAI,CAAC,OAAO;YAAE,OAAO,IAAI,CAAC;QAC1B,OAAO,gBAAgB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC;IACpD,CAAC,CAAC;IAEF,OAAO;QACL,iBAAiB,EAAE,KAAK,EAAE,IAAI,EAAE,EAAE;YAChC,MAAM,GAAG,GAAG,MAAM,OAAO,CACvB,sCAAsC,EACtC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAC7C,CAAC;YACF,OAAO,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC;QACzB,CAAC;QACD,aAAa,EAAE,KAAK,EAAE,SAAS,EAAE,cAAc,EAAE,OAAO,EAAE,EAAE;YAC1D,MAAM,GAAG,GAAG,MAAM,OAAO,CAAsB,gCAAgC,EAAE;gBAC/E,SAAS;gBACT,cAAc;gBACd,GAAG,OAAO;aACX,CAAC,CAAC;YACH,OAAO,GAAG,CAAC;QACb,CAAC;QACD,mBAAmB,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;YACtC,MAAM,OAAO,CAAC,oCAAoC,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACpE,CAAC;QACD,qBAAqB,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;YACxC,MAAM,OAAO,CAAC,kCAAkC,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QAClE,CAAC;QACD,UAAU;QACV,eAAe,EAAE,GAAG,EAAE;YACpB,aAAa,EAAE,CAAC;YAChB,cAAc,EAAE,CAAC;QACnB,CAAC;QACD,QAAQ,EAAE,qBAAqB,EAAE;QACjC,cAAc,EAAE,0BAA0B,EAAE;QAC5C,cAAc,EAAE,0BAA0B,EAAE;KAC7C,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-lineage.d.ts","sourceRoot":"","sources":["../../src/session/session-lineage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,oDAAoD;AACpD,MAAM,MAAM,iBAAiB,GAAG,QAAQ,GAAG,OAAO,CAAC;AAEnD,8DAA8D;AAC9D,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,iBAAiB,CAAC;CAC/B;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,kBAAkB,CAAC,IAAI,EAAE;IACvC,QAAQ,EAAE;QAAE,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAAC,UAAU,CAAC,EAAE,iBAAiB,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,GAAG,SAAS,CAAC;IAChG,SAAS,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;CACtC,GAAG,WAAW,CAKd;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE;IACpC,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,GAAG,SAAS,CAAC;IACtD,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,iBAAiB,CAAC;CAC/B,GAAG,MAAM,GAAG,IAAI,CAGhB;AAED;;;;;GAKG;AACH,wBAAgB,mBAAmB,CACjC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,GAAG,SAAS,EAC9C,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,GAChB,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAExB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE;IACpC,+EAA+E;IAC/E,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,8DAA8D;IAC9D,cAAc,EAAE,MAAM,CAAC;IACvB,wEAAwE;IACxE,aAAa,EAAE,OAAO,CAAC;CACxB,GAAG,OAAO,CAKV"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-lineage.js","sourceRoot":"","sources":["../../src/session/session-lineage.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAWH;;;;;;;;;;;;;;;GAeG;AACH,MAAM,UAAU,kBAAkB,CAAC,IAGlC;IACC,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,EAAE,OAAO;WACjC,CAAC,IAAI,CAAC,SAAS,KAAK,WAAW,IAAI,IAAI,CAAC,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAC3F,MAAM,UAAU,GAAsB,IAAI,CAAC,QAAQ,EAAE,UAAU,IAAI,QAAQ,CAAC;IAC5E,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;AACjC,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,eAAe,CAAC,IAI/B;IACC,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO;QAAE,OAAO,IAAI,CAAC;IAC7C,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,IAAI,CAAC;AACjD,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,mBAAmB,CACjC,GAA8C,EAC9C,OAAe,EACf,SAAiB;IAEjB,OAAO,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,CAAC,OAAO,CAAC,EAAE,SAAS,EAAE,CAAC;AAClD,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,UAAU,eAAe,CAAC,IAO/B;IACC,IAAI,IAAI,CAAC,kBAAkB,KAAK,IAAI,EAAE,CAAC;QACrC,OAAO,IAAI,CAAC,kBAAkB,KAAK,IAAI,CAAC,cAAc,CAAC;IACzD,CAAC;IACD,OAAO,IAAI,CAAC,aAAa,CAAC;AAC5B,CAAC"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Single stamp site for the `session_started` event (Session identity at the
|
|
3
|
+
* lineage-pass level, D2 write-path).
|
|
4
|
+
*
|
|
5
|
+
* When a spawned team lead emits `session_started`, the daemon must record the
|
|
6
|
+
* engine's Claude session id in two places, keyed by the team's DECLARED lineage:
|
|
7
|
+
*
|
|
8
|
+
* 1. the focus per-lineage resume slot (`product_focuses.claude_session_ids`),
|
|
9
|
+
* so a same-lineage re-spawn can `--resume` it and a sibling lineage cannot
|
|
10
|
+
* clobber it (INJ-A/INJ-B);
|
|
11
|
+
* 2. forward onto THIS lead segment row (`agent_sessions.claude_session_id`),
|
|
12
|
+
* so pass grouping is exact -- the join key historically lived only on the
|
|
13
|
+
* focus slot.
|
|
14
|
+
*
|
|
15
|
+
* This logic previously lived inline in BOTH `output-monitor.ts` and
|
|
16
|
+
* `spawner/helpers.ts`. The two copies drifted in nothing yet, but a single
|
|
17
|
+
* source removes that risk and gives the decision a unit test. The pure decision
|
|
18
|
+
* (`resolveSessionStartedStamp`) is testable without mocks; `stampSessionStarted`
|
|
19
|
+
* is the impure applier both call sites invoke.
|
|
20
|
+
*/
|
|
21
|
+
import type { FocusTeamState } from '../types/index.js';
|
|
22
|
+
/** The two writes a `session_started` stamp performs, plus the team-state mutation. */
|
|
23
|
+
export interface SessionStartedStamp {
|
|
24
|
+
/** Always written: the focus per-lineage resume slot. */
|
|
25
|
+
focusSlot: {
|
|
26
|
+
focusId: string;
|
|
27
|
+
lineage: string;
|
|
28
|
+
claudeSessionId: string;
|
|
29
|
+
};
|
|
30
|
+
/**
|
|
31
|
+
* Written only when the team lead has a persisted segment row -- the forward
|
|
32
|
+
* stamp onto agent_sessions.claude_session_id. Null when leadSessionId is unset.
|
|
33
|
+
*/
|
|
34
|
+
segment: {
|
|
35
|
+
sessionId: string;
|
|
36
|
+
claudeSessionId: string;
|
|
37
|
+
} | null;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Pure decision: given the team's lineage + lead-session id and the focus id +
|
|
41
|
+
* the engine session id from the event, resolve the two writes to perform.
|
|
42
|
+
*
|
|
43
|
+
* The segment write is suppressed when there is no `leadSessionId` (a lead
|
|
44
|
+
* segment row was never persisted), since there is nothing to stamp.
|
|
45
|
+
*/
|
|
46
|
+
export declare function resolveSessionStartedStamp(args: {
|
|
47
|
+
focusId: string;
|
|
48
|
+
lineage: string;
|
|
49
|
+
leadSessionId: string | null;
|
|
50
|
+
eventSessionId: string;
|
|
51
|
+
}): SessionStartedStamp;
|
|
52
|
+
/**
|
|
53
|
+
* Apply a `session_started` stamp: mutate the in-memory team state and fire the
|
|
54
|
+
* two (best-effort, fire-and-forget) DB writes. The single stamp site shared by
|
|
55
|
+
* `output-monitor.ts` and `spawner/helpers.ts`.
|
|
56
|
+
*/
|
|
57
|
+
export declare function stampSessionStarted(args: {
|
|
58
|
+
teamState: FocusTeamState;
|
|
59
|
+
focusId: string;
|
|
60
|
+
focusName: string;
|
|
61
|
+
eventSessionId: string;
|
|
62
|
+
}): void;
|
|
63
|
+
//# sourceMappingURL=session-stamp.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session-stamp.d.ts","sourceRoot":"","sources":["../../src/session/session-stamp.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;GAmBG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAQxD,uFAAuF;AACvF,MAAM,WAAW,mBAAmB;IAClC,yDAAyD;IACzD,SAAS,EAAE;QAAE,OAAO,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,MAAM,CAAA;KAAE,CAAC;IACzE;;;OAGG;IACH,OAAO,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC;QAAC,eAAe,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CAChE;AAED;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CAAC,IAAI,EAAE;IAC/C,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,EAAE,MAAM,CAAC;IAChB,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,cAAc,EAAE,MAAM,CAAC;CACxB,GAAG,mBAAmB,CAOtB;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE;IACxC,SAAS,EAAE,cAAc,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,cAAc,EAAE,MAAM,CAAC;CACxB,GAAG,IAAI,CA4BP"}
|