@telora/daemon 0.19.47 → 0.19.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 +8 -3
- package/dist/assembly-engine.d.ts +9 -0
- package/dist/assembly-engine.d.ts.map +1 -1
- package/dist/assembly-engine.js.map +1 -1
- package/dist/audit-hooks.js +1 -1
- package/dist/branch-status.js +2 -2
- package/dist/branch-status.js.map +1 -1
- package/dist/ci-sensor-loop.d.ts +47 -0
- package/dist/ci-sensor-loop.d.ts.map +1 -0
- package/dist/ci-sensor-loop.js +116 -0
- package/dist/ci-sensor-loop.js.map +1 -0
- package/dist/ci-status-git.d.ts +52 -0
- package/dist/ci-status-git.d.ts.map +1 -0
- package/dist/ci-status-git.js +86 -0
- package/dist/ci-status-git.js.map +1 -0
- package/dist/ci-status.d.ts +122 -0
- package/dist/ci-status.d.ts.map +1 -0
- package/dist/ci-status.js +114 -0
- package/dist/ci-status.js.map +1 -0
- package/dist/cli/connect/agents.d.ts +24 -0
- package/dist/cli/connect/agents.d.ts.map +1 -0
- package/dist/cli/connect/agents.js +65 -0
- package/dist/cli/connect/agents.js.map +1 -0
- package/dist/cli/connect/claude.d.ts +31 -0
- package/dist/cli/connect/claude.d.ts.map +1 -0
- package/dist/cli/connect/claude.js +104 -0
- package/dist/cli/connect/claude.js.map +1 -0
- package/dist/cli/connect/cline.d.ts +37 -0
- package/dist/cli/connect/cline.d.ts.map +1 -0
- package/dist/cli/connect/cline.js +115 -0
- package/dist/cli/connect/cline.js.map +1 -0
- package/dist/cli/connect/codex.d.ts +44 -0
- package/dist/cli/connect/codex.d.ts.map +1 -0
- package/dist/cli/connect/codex.js +111 -0
- package/dist/cli/connect/codex.js.map +1 -0
- package/dist/cli/connect/ide.d.ts +69 -0
- package/dist/cli/connect/ide.d.ts.map +1 -0
- package/dist/cli/connect/ide.js +134 -0
- package/dist/cli/connect/ide.js.map +1 -0
- package/dist/cli/connect/scaffolding.d.ts +31 -0
- package/dist/cli/connect/scaffolding.d.ts.map +1 -0
- package/dist/cli/connect/scaffolding.js +52 -0
- package/dist/cli/connect/scaffolding.js.map +1 -0
- package/dist/cli/connect/shared.d.ts +30 -0
- package/dist/cli/connect/shared.d.ts.map +1 -0
- package/dist/cli/connect/shared.js +11 -0
- package/dist/cli/connect/shared.js.map +1 -0
- package/dist/cli/connect.d.ts +9 -210
- package/dist/cli/connect.d.ts.map +1 -1
- package/dist/cli/connect.js +10 -526
- package/dist/cli/connect.js.map +1 -1
- package/dist/cli/open.js +2 -2
- package/dist/completion/event.d.ts +2 -0
- package/dist/completion/event.d.ts.map +1 -1
- package/dist/completion/event.js +19 -2
- package/dist/completion/event.js.map +1 -1
- package/dist/completion/merge-phase.d.ts +3 -0
- package/dist/completion/merge-phase.d.ts.map +1 -1
- package/dist/completion/merge-phase.js +35 -3
- package/dist/completion/merge-phase.js.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 +1 -1
- package/dist/completion/read-only-pristine.js.map +1 -1
- package/dist/completion/review-exit-phase.d.ts +30 -3
- package/dist/completion/review-exit-phase.d.ts.map +1 -1
- package/dist/completion/review-exit-phase.js +203 -15
- package/dist/completion/review-exit-phase.js.map +1 -1
- package/dist/completion/status-advance-phase.js +1 -1
- package/dist/completion/status-advance-phase.js.map +1 -1
- package/dist/completion/team-completion.d.ts.map +1 -1
- package/dist/completion/team-completion.js +22 -2
- package/dist/completion/team-completion.js.map +1 -1
- package/dist/completion/team-lifecycle.js +1 -1
- package/dist/completion/terminated-work-reconcile.js +1 -1
- package/dist/completion/terminated-work-reconcile.js.map +1 -1
- package/dist/condition-evaluators.d.ts +41 -2
- package/dist/condition-evaluators.d.ts.map +1 -1
- package/dist/condition-evaluators.js +37 -288
- package/dist/condition-evaluators.js.map +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +23 -0
- package/dist/config.js.map +1 -1
- package/dist/context-audit.d.ts +1 -1
- package/dist/context-audit.d.ts.map +1 -1
- package/dist/context-lock.d.ts +1 -1
- package/dist/context-lock.d.ts.map +1 -1
- package/dist/control-state.d.ts +2 -2
- package/dist/control-state.d.ts.map +1 -1
- package/dist/control-state.js +4 -3
- package/dist/control-state.js.map +1 -1
- package/dist/daemon-process.d.ts +1 -1
- package/dist/daemon-process.d.ts.map +1 -1
- package/dist/delivery-advance-block.d.ts +1 -1
- package/dist/delivery-advance-block.d.ts.map +1 -1
- package/dist/delivery-advance-block.js +1 -1
- package/dist/delivery-advance-block.js.map +1 -1
- package/dist/delivery-lifecycle.js +1 -1
- package/dist/delivery-reconciler-shadow.d.ts +1 -1
- package/dist/delivery-reconciler-shadow.d.ts.map +1 -1
- package/dist/delivery-reconciler-shadow.js +1 -1
- package/dist/delivery-reconciler-shadow.js.map +1 -1
- package/dist/directive-executor.js +1 -1
- package/dist/directive-executor.js.map +1 -1
- package/dist/drift-eval-loop.d.ts.map +1 -1
- package/dist/drift-eval-loop.js +6 -14
- package/dist/drift-eval-loop.js.map +1 -1
- package/dist/escalations.d.ts +1 -1
- package/dist/escalations.d.ts.map +1 -1
- package/dist/escalations.js +1 -1
- package/dist/escalations.js.map +1 -1
- package/dist/evaluation-context.d.ts +2 -33
- package/dist/evaluation-context.d.ts.map +1 -1
- package/dist/evaluation-context.js +2 -56
- package/dist/evaluation-context.js.map +1 -1
- package/dist/focus-engine.d.ts +14 -5
- package/dist/focus-engine.d.ts.map +1 -1
- package/dist/focus-engine.js +35 -289
- package/dist/focus-engine.js.map +1 -1
- package/dist/focus-executor.d.ts +10 -791
- package/dist/focus-executor.d.ts.map +1 -1
- package/dist/focus-executor.js +81 -1572
- package/dist/focus-executor.js.map +1 -1
- package/dist/focus-lifecycle.js +2 -2
- package/dist/focus-lifecycle.js.map +1 -1
- package/dist/focus-loop-registry.d.ts +52 -0
- package/dist/focus-loop-registry.d.ts.map +1 -0
- package/dist/focus-loop-registry.js +328 -0
- package/dist/focus-loop-registry.js.map +1 -0
- package/dist/focus-merge.d.ts +1 -1
- package/dist/focus-merge.d.ts.map +1 -1
- package/dist/focus-merge.js +6 -6
- package/dist/focus-merge.js.map +1 -1
- package/dist/focus-phase.d.ts +4 -0
- package/dist/focus-phase.d.ts.map +1 -1
- package/dist/focus-phase.js +3 -3
- package/dist/focus-phase.js.map +1 -1
- package/dist/focus-prompt-builder.d.ts.map +1 -1
- package/dist/focus-prompt-builder.js +4 -1
- package/dist/focus-prompt-builder.js.map +1 -1
- package/dist/focus-stage-lifecycle/planning-release.d.ts +197 -0
- package/dist/focus-stage-lifecycle/planning-release.d.ts.map +1 -0
- package/dist/focus-stage-lifecycle/planning-release.js +312 -0
- package/dist/focus-stage-lifecycle/planning-release.js.map +1 -0
- package/dist/focus-stage-lifecycle/review-convergence.d.ts +133 -0
- package/dist/focus-stage-lifecycle/review-convergence.d.ts.map +1 -0
- package/dist/focus-stage-lifecycle/review-convergence.js +235 -0
- package/dist/focus-stage-lifecycle/review-convergence.js.map +1 -0
- package/dist/focus-stage-lifecycle/wedge-watchdog.d.ts +133 -0
- package/dist/focus-stage-lifecycle/wedge-watchdog.d.ts.map +1 -0
- package/dist/focus-stage-lifecycle/wedge-watchdog.js +365 -0
- package/dist/focus-stage-lifecycle/wedge-watchdog.js.map +1 -0
- package/dist/focus-stage-lifecycle.d.ts +22 -421
- package/dist/focus-stage-lifecycle.d.ts.map +1 -1
- package/dist/focus-stage-lifecycle.js +24 -832
- package/dist/focus-stage-lifecycle.js.map +1 -1
- package/dist/{git-activity.d.ts → git/activity.d.ts} +1 -1
- package/dist/git/activity.d.ts.map +1 -0
- package/dist/{git-activity.js → git/activity.js} +2 -2
- package/dist/git/activity.js.map +1 -0
- package/dist/{git-branch.d.ts → git/branch.d.ts} +2 -2
- package/dist/git/branch.d.ts.map +1 -0
- package/dist/{git-branch.js → git/branch.js} +2 -2
- package/dist/git/branch.js.map +1 -0
- package/dist/{git-fetch.d.ts → git/fetch.d.ts} +2 -2
- package/dist/git/fetch.d.ts.map +1 -0
- package/dist/{git-fetch.js → git/fetch.js} +1 -1
- package/dist/git/fetch.js.map +1 -0
- package/dist/{git-genesis.d.ts → git/genesis.d.ts} +3 -3
- package/dist/git/genesis.d.ts.map +1 -0
- package/dist/{git-genesis.js → git/genesis.js} +5 -5
- package/dist/git/genesis.js.map +1 -0
- package/dist/git/index.d.ts +36 -0
- package/dist/git/index.d.ts.map +1 -0
- package/dist/git/index.js +36 -0
- package/dist/git/index.js.map +1 -0
- package/dist/{git-integration.d.ts → git/integration.d.ts} +2 -2
- package/dist/git/integration.d.ts.map +1 -0
- package/dist/{git-integration.js → git/integration.js} +4 -4
- package/dist/git/integration.js.map +1 -0
- package/dist/{git-merge-helpers.d.ts → git/merge-helpers.d.ts} +3 -3
- package/dist/git/merge-helpers.d.ts.map +1 -0
- package/dist/{git-merge-helpers.js → git/merge-helpers.js} +3 -3
- package/dist/git/merge-helpers.js.map +1 -0
- package/dist/{git-merge-lock.d.ts → git/merge-lock.d.ts} +1 -1
- package/dist/git/merge-lock.d.ts.map +1 -0
- package/dist/{git-merge-lock.js → git/merge-lock.js} +1 -1
- package/dist/git/merge-lock.js.map +1 -0
- package/dist/{git-merge-strategies.d.ts → git/merge-strategies.d.ts} +2 -2
- package/dist/git/merge-strategies.d.ts.map +1 -0
- package/dist/{git-merge-strategies.js → git/merge-strategies.js} +3 -3
- package/dist/git/merge-strategies.js.map +1 -0
- package/dist/{git-merge.d.ts → git/merge.d.ts} +4 -4
- package/dist/git/merge.d.ts.map +1 -0
- package/dist/{git-merge.js → git/merge.js} +4 -4
- package/dist/git/merge.js.map +1 -0
- package/dist/{git-state-detector.d.ts → git/state-detector.d.ts} +2 -2
- package/dist/git/state-detector.d.ts.map +1 -0
- package/dist/{git-state-detector.js → git/state-detector.js} +7 -7
- package/dist/git/state-detector.js.map +1 -0
- package/dist/{git-types.d.ts → git/types.d.ts} +2 -2
- package/dist/git/types.d.ts.map +1 -0
- package/dist/{git-types.js → git/types.js} +1 -1
- package/dist/git/types.js.map +1 -0
- package/dist/{git-utils.d.ts → git/utils.d.ts} +1 -1
- package/dist/git/utils.d.ts.map +1 -0
- package/dist/{git-utils.js → git/utils.js} +2 -2
- package/dist/git/utils.js.map +1 -0
- package/dist/git.d.ts +5 -5
- package/dist/git.d.ts.map +1 -1
- package/dist/git.js +10 -10
- package/dist/git.js.map +1 -1
- package/dist/guard-engine.d.ts +3 -2
- package/dist/guard-engine.d.ts.map +1 -1
- package/dist/guard-engine.js +2 -2
- package/dist/guard-engine.js.map +1 -1
- package/dist/install-probe-tick.d.ts +63 -0
- package/dist/install-probe-tick.d.ts.map +1 -0
- package/dist/install-probe-tick.js +137 -0
- package/dist/install-probe-tick.js.map +1 -0
- package/dist/install-probe.d.ts +115 -0
- package/dist/install-probe.d.ts.map +1 -0
- package/dist/install-probe.js +197 -0
- package/dist/install-probe.js.map +1 -0
- package/dist/listener-auto-advance.d.ts.map +1 -1
- package/dist/listener-auto-advance.js +31 -0
- package/dist/listener-auto-advance.js.map +1 -1
- package/dist/listener.js +5 -5
- package/dist/listener.js.map +1 -1
- package/dist/{loop-context-audit-pass.d.ts → loops/context-audit-pass.d.ts} +4 -4
- package/dist/loops/context-audit-pass.d.ts.map +1 -0
- package/dist/{loop-context-audit-pass.js → loops/context-audit-pass.js} +7 -7
- package/dist/loops/context-audit-pass.js.map +1 -0
- package/dist/{loop-engine-types.d.ts → loops/engine-types.d.ts} +1 -1
- package/dist/loops/engine-types.d.ts.map +1 -0
- package/dist/{loop-engine-types.js → loops/engine-types.js} +1 -1
- package/dist/loops/engine-types.js.map +1 -0
- package/dist/{loop-engine.d.ts → loops/engine.d.ts} +6 -6
- package/dist/loops/engine.d.ts.map +1 -0
- package/dist/{loop-engine.js → loops/engine.js} +13 -13
- package/dist/loops/engine.js.map +1 -0
- package/dist/{loop-event-bus.d.ts → loops/event-bus.d.ts} +1 -1
- package/dist/loops/event-bus.d.ts.map +1 -0
- package/dist/{loop-event-bus.js → loops/event-bus.js} +1 -1
- package/dist/loops/event-bus.js.map +1 -0
- package/dist/loops/index.d.ts +33 -0
- package/dist/loops/index.d.ts.map +1 -0
- package/dist/loops/index.js +32 -0
- package/dist/loops/index.js.map +1 -0
- package/dist/{loop-llm-client.d.ts → loops/llm-client.d.ts} +3 -3
- package/dist/loops/llm-client.d.ts.map +1 -0
- package/dist/{loop-llm-client.js → loops/llm-client.js} +3 -3
- package/dist/loops/llm-client.js.map +1 -0
- package/dist/{loop-llm-flag.d.ts → loops/llm-flag.d.ts} +1 -1
- package/dist/loops/llm-flag.d.ts.map +1 -0
- package/dist/{loop-llm-flag.js → loops/llm-flag.js} +1 -1
- package/dist/loops/llm-flag.js.map +1 -0
- package/dist/{loop-operational-block.d.ts → loops/operational-block.d.ts} +1 -1
- package/dist/loops/operational-block.d.ts.map +1 -0
- package/dist/{loop-operational-block.js → loops/operational-block.js} +1 -1
- package/dist/loops/operational-block.js.map +1 -0
- package/dist/{loop-prompt-builder.d.ts → loops/prompt-builder.d.ts} +2 -2
- package/dist/loops/prompt-builder.d.ts.map +1 -0
- package/dist/{loop-prompt-builder.js → loops/prompt-builder.js} +1 -1
- package/dist/loops/prompt-builder.js.map +1 -0
- package/dist/{loop-variance.d.ts → loops/variance.d.ts} +1 -1
- package/dist/loops/variance.d.ts.map +1 -0
- package/dist/{loop-variance.js → loops/variance.js} +1 -1
- package/dist/loops/variance.js.map +1 -0
- package/dist/merge-back-loop.d.ts.map +1 -1
- package/dist/merge-back-loop.js +4 -3
- package/dist/merge-back-loop.js.map +1 -1
- package/dist/merge-detector.js +2 -2
- package/dist/merge-detector.js.map +1 -1
- package/dist/{nexus-endpoint-clearance.d.ts → nexus/endpoint-clearance.d.ts} +2 -2
- package/dist/nexus/endpoint-clearance.d.ts.map +1 -0
- package/dist/{nexus-endpoint-clearance.js → nexus/endpoint-clearance.js} +2 -2
- package/dist/nexus/endpoint-clearance.js.map +1 -0
- package/dist/{nexus-escalation-bridge.d.ts → nexus/escalation-bridge.d.ts} +1 -1
- package/dist/nexus/escalation-bridge.d.ts.map +1 -0
- package/dist/{nexus-escalation-bridge.js → nexus/escalation-bridge.js} +2 -2
- package/dist/nexus/escalation-bridge.js.map +1 -0
- package/dist/{nexus-incoming.d.ts → nexus/incoming.d.ts} +2 -2
- package/dist/nexus/incoming.d.ts.map +1 -0
- package/dist/{nexus-incoming.js → nexus/incoming.js} +2 -2
- package/dist/nexus/incoming.js.map +1 -0
- package/dist/nexus/index.d.ts +20 -0
- package/dist/nexus/index.d.ts.map +1 -0
- package/dist/nexus/index.js +20 -0
- package/dist/nexus/index.js.map +1 -0
- package/dist/{nexus-intake-spawn.d.ts → nexus/intake-spawn.d.ts} +3 -3
- package/dist/nexus/intake-spawn.d.ts.map +1 -0
- package/dist/{nexus-intake-spawn.js → nexus/intake-spawn.js} +1 -1
- package/dist/nexus/intake-spawn.js.map +1 -0
- package/dist/{nexus-intake.d.ts → nexus/intake.d.ts} +2 -2
- package/dist/nexus/intake.d.ts.map +1 -0
- package/dist/{nexus-intake.js → nexus/intake.js} +4 -4
- package/dist/nexus/intake.js.map +1 -0
- package/dist/{nexus-return.d.ts → nexus/return.d.ts} +3 -3
- package/dist/nexus/return.d.ts.map +1 -0
- package/dist/{nexus-return.js → nexus/return.js} +4 -4
- package/dist/nexus/return.js.map +1 -0
- package/dist/otlp/index.d.ts +19 -0
- package/dist/otlp/index.d.ts.map +1 -0
- package/dist/otlp/index.js +19 -0
- package/dist/otlp/index.js.map +1 -0
- package/dist/{otlp-log-parser.d.ts → otlp/log-parser.d.ts} +2 -2
- package/dist/otlp/log-parser.d.ts.map +1 -0
- package/dist/{otlp-log-parser.js → otlp/log-parser.js} +5 -6
- package/dist/otlp/log-parser.js.map +1 -0
- package/dist/{otlp-metric-parser.d.ts → otlp/metric-parser.d.ts} +2 -2
- package/dist/otlp/metric-parser.d.ts.map +1 -0
- package/dist/{otlp-metric-parser.js → otlp/metric-parser.js} +4 -5
- package/dist/otlp/metric-parser.js.map +1 -0
- package/dist/{otlp-port-manager.d.ts → otlp/port-manager.d.ts} +1 -1
- package/dist/otlp/port-manager.d.ts.map +1 -0
- package/dist/{otlp-port-manager.js → otlp/port-manager.js} +1 -1
- package/dist/otlp/port-manager.js.map +1 -0
- package/dist/{otlp-receiver.d.ts → otlp/receiver.d.ts} +2 -2
- package/dist/otlp/receiver.d.ts.map +1 -0
- package/dist/{otlp-receiver.js → otlp/receiver.js} +5 -33
- package/dist/otlp/receiver.js.map +1 -0
- package/dist/{otlp-types.d.ts → otlp/types.d.ts} +1 -9
- package/dist/otlp/types.d.ts.map +1 -0
- package/dist/{otlp-types.js → otlp/types.js} +1 -27
- package/dist/otlp/types.js.map +1 -0
- package/dist/pipeline-config.d.ts +1 -1
- package/dist/{prd-controller.d.ts → prd/controller.d.ts} +7 -7
- package/dist/prd/controller.d.ts.map +1 -0
- package/dist/{prd-controller.js → prd/controller.js} +11 -11
- package/dist/prd/controller.js.map +1 -0
- package/dist/{prd-divergence.d.ts → prd/divergence.d.ts} +2 -2
- package/dist/prd/divergence.d.ts.map +1 -0
- package/dist/{prd-divergence.js → prd/divergence.js} +1 -1
- package/dist/prd/divergence.js.map +1 -0
- package/dist/{prd-focus-pushdown.d.ts → prd/focus-pushdown.d.ts} +2 -2
- package/dist/prd/focus-pushdown.d.ts.map +1 -0
- package/dist/{prd-focus-pushdown.js → prd/focus-pushdown.js} +3 -3
- package/dist/prd/focus-pushdown.js.map +1 -0
- package/dist/{prd-frontier.d.ts → prd/frontier.d.ts} +2 -2
- package/dist/prd/frontier.d.ts.map +1 -0
- package/dist/{prd-frontier.js → prd/frontier.js} +1 -1
- package/dist/prd/frontier.js.map +1 -0
- package/dist/prd/index.d.ts +26 -0
- package/dist/prd/index.d.ts.map +1 -0
- package/dist/prd/index.js +25 -0
- package/dist/prd/index.js.map +1 -0
- package/dist/{prd-steward.d.ts → prd/steward.d.ts} +4 -4
- package/dist/prd/steward.d.ts.map +1 -0
- package/dist/{prd-steward.js → prd/steward.js} +4 -4
- package/dist/prd/steward.js.map +1 -0
- package/dist/{prd-viability.d.ts → prd/viability.d.ts} +2 -2
- package/dist/prd/viability.d.ts.map +1 -0
- package/dist/{prd-viability.js → prd/viability.js} +1 -1
- package/dist/prd/viability.js.map +1 -0
- package/dist/product-scaffold.js +2 -2
- package/dist/product-scaffold.js.map +1 -1
- package/dist/prompt-contradictions.d.ts +55 -0
- package/dist/prompt-contradictions.d.ts.map +1 -0
- package/dist/prompt-contradictions.js +114 -0
- package/dist/prompt-contradictions.js.map +1 -0
- package/dist/prompt-listing.d.ts +19 -0
- package/dist/prompt-listing.d.ts.map +1 -1
- package/dist/prompt-listing.js +49 -0
- package/dist/prompt-listing.js.map +1 -1
- package/dist/prompt-sections/execution-sections.d.ts +3 -2
- package/dist/prompt-sections/execution-sections.d.ts.map +1 -1
- package/dist/prompt-sections/execution-sections.js +70 -97
- package/dist/prompt-sections/execution-sections.js.map +1 -1
- package/dist/prompt-sections/persona-sections.d.ts +12 -0
- package/dist/prompt-sections/persona-sections.d.ts.map +1 -1
- package/dist/prompt-sections/persona-sections.js +29 -2
- package/dist/prompt-sections/persona-sections.js.map +1 -1
- package/dist/prompt-sections/role-sections.js +2 -2
- package/dist/prompt-sections/role-sections.js.map +1 -1
- package/dist/queries/context-assembly.d.ts +14 -4
- package/dist/queries/context-assembly.d.ts.map +1 -1
- package/dist/queries/context-assembly.js +14 -4
- package/dist/queries/context-assembly.js.map +1 -1
- package/dist/queries/context-lock-queries.js +1 -1
- package/dist/queries/context-lock-queries.js.map +1 -1
- package/dist/queries/deliveries.d.ts +45 -0
- package/dist/queries/deliveries.d.ts.map +1 -1
- package/dist/queries/deliveries.js +2 -0
- package/dist/queries/deliveries.js.map +1 -1
- package/dist/queries/focuses.d.ts +17 -7
- package/dist/queries/focuses.d.ts.map +1 -1
- package/dist/queries/focuses.js +27 -9
- package/dist/queries/focuses.js.map +1 -1
- package/dist/queries/index.d.ts +1 -1
- package/dist/queries/index.d.ts.map +1 -1
- package/dist/queries/index.js +1 -1
- package/dist/queries/index.js.map +1 -1
- package/dist/queries/schemas.d.ts +4 -0
- package/dist/queries/schemas.d.ts.map +1 -1
- package/dist/queries/schemas.js +8 -0
- package/dist/queries/schemas.js.map +1 -1
- package/dist/reality-pole.js +1 -1
- package/dist/resolvers/escalation-answers.d.ts +40 -0
- package/dist/resolvers/escalation-answers.d.ts.map +1 -1
- package/dist/resolvers/escalation-answers.js +54 -35
- package/dist/resolvers/escalation-answers.js.map +1 -1
- package/dist/resolvers/git-diff-against-base.d.ts.map +1 -1
- package/dist/resolvers/git-diff-against-base.js +4 -1
- package/dist/resolvers/git-diff-against-base.js.map +1 -1
- package/dist/resolvers/prd-context.js +1 -1
- package/dist/resolvers/shared/wiki.d.ts +27 -0
- package/dist/resolvers/shared/wiki.d.ts.map +1 -1
- package/dist/resolvers/shared/wiki.js +39 -0
- package/dist/resolvers/shared/wiki.js.map +1 -1
- package/dist/sensor-sweep.js +1 -1
- package/dist/spawn/delivered-manifest.d.ts +42 -0
- package/dist/spawn/delivered-manifest.d.ts.map +1 -0
- package/dist/spawn/delivered-manifest.js +64 -0
- package/dist/spawn/delivered-manifest.js.map +1 -0
- package/dist/spawn/model-routing.d.ts +277 -0
- package/dist/spawn/model-routing.d.ts.map +1 -0
- package/dist/spawn/model-routing.js +464 -0
- package/dist/spawn/model-routing.js.map +1 -0
- package/dist/spawn/process-spawn.d.ts +137 -0
- package/dist/spawn/process-spawn.d.ts.map +1 -0
- package/dist/spawn/process-spawn.js +385 -0
- package/dist/spawn/process-spawn.js.map +1 -0
- package/dist/spawn/prompt-assembly.d.ts +170 -0
- package/dist/spawn/prompt-assembly.d.ts.map +1 -0
- package/dist/spawn/prompt-assembly.js +272 -0
- package/dist/spawn/prompt-assembly.js.map +1 -0
- package/dist/spawn/shared.d.ts +96 -0
- package/dist/spawn/shared.d.ts.map +1 -0
- package/dist/spawn/shared.js +14 -0
- package/dist/spawn/shared.js.map +1 -0
- package/dist/spawn/spawn-decision.d.ts +239 -0
- package/dist/spawn/spawn-decision.d.ts.map +1 -0
- package/dist/spawn/spawn-decision.js +437 -0
- package/dist/spawn/spawn-decision.js.map +1 -0
- package/dist/spawn/worktree-session.d.ts +105 -0
- package/dist/spawn/worktree-session.d.ts.map +1 -0
- package/dist/spawn/worktree-session.js +216 -0
- package/dist/spawn/worktree-session.js.map +1 -0
- package/dist/spawner/lifecycle.js +5 -5
- package/dist/spawner/lifecycle.js.map +1 -1
- package/dist/spawner/resolution.js +4 -4
- package/dist/spawner/resolution.js.map +1 -1
- package/dist/stall-detector-config.d.ts +4 -0
- package/dist/stall-detector-config.d.ts.map +1 -1
- package/dist/stall-detector-config.js +6 -0
- package/dist/stall-detector-config.js.map +1 -1
- package/dist/state-cascade.js +1 -1
- package/dist/state-cascade.js.map +1 -1
- package/dist/trigger-executor.d.ts +5 -9
- package/dist/trigger-executor.d.ts.map +1 -1
- package/dist/trigger-executor.js +14 -36
- package/dist/trigger-executor.js.map +1 -1
- package/dist/types/config.d.ts +44 -0
- package/dist/types/config.d.ts.map +1 -1
- package/dist/types/focus.d.ts +13 -0
- package/dist/types/focus.d.ts.map +1 -1
- package/dist/types/workflow.d.ts +1 -3
- package/dist/types/workflow.d.ts.map +1 -1
- package/dist/unified-engine-lifecycle.js +1 -1
- package/dist/unified-init.d.ts +3 -3
- package/dist/unified-init.d.ts.map +1 -1
- package/dist/unified-init.js +9 -25
- package/dist/unified-init.js.map +1 -1
- package/dist/unified-shell.d.ts +3 -3
- package/dist/unified-shell.js +4 -4
- package/dist/unified-shell.js.map +1 -1
- package/dist/verification-baseline.d.ts +112 -0
- package/dist/verification-baseline.d.ts.map +1 -0
- package/dist/verification-baseline.js +264 -0
- package/dist/verification-baseline.js.map +1 -0
- package/dist/verification-config.d.ts +53 -0
- package/dist/verification-config.d.ts.map +1 -0
- package/dist/verification-config.js +72 -0
- package/dist/verification-config.js.map +1 -0
- package/dist/verification-default-on.d.ts +87 -0
- package/dist/verification-default-on.d.ts.map +1 -0
- package/dist/verification-default-on.js +186 -0
- package/dist/verification-default-on.js.map +1 -0
- package/dist/verification-deterministic.d.ts +56 -0
- package/dist/verification-deterministic.d.ts.map +1 -0
- package/dist/verification-deterministic.js +123 -0
- package/dist/verification-deterministic.js.map +1 -0
- package/dist/verification-engine.d.ts +22 -15
- package/dist/verification-engine.d.ts.map +1 -1
- package/dist/verification-engine.js +94 -65
- package/dist/verification-engine.js.map +1 -1
- package/dist/verification-failure-parser.d.ts +48 -0
- package/dist/verification-failure-parser.d.ts.map +1 -0
- package/dist/verification-failure-parser.js +102 -0
- package/dist/verification-failure-parser.js.map +1 -0
- package/dist/verification-feedback.d.ts +58 -0
- package/dist/verification-feedback.d.ts.map +1 -0
- package/dist/verification-feedback.js +110 -0
- package/dist/verification-feedback.js.map +1 -0
- package/dist/{worktree-focus.d.ts → worktree/focus.d.ts} +2 -2
- package/dist/worktree/focus.d.ts.map +1 -0
- package/dist/{worktree-focus.js → worktree/focus.js} +7 -7
- package/dist/worktree/focus.js.map +1 -0
- package/dist/worktree/index.d.ts +16 -0
- package/dist/worktree/index.d.ts.map +1 -0
- package/dist/worktree/index.js +16 -0
- package/dist/worktree/index.js.map +1 -0
- package/dist/{worktree-safety.d.ts → worktree/safety.d.ts} +1 -1
- package/dist/worktree/safety.d.ts.map +1 -0
- package/dist/{worktree-safety.js → worktree/safety.js} +2 -2
- package/dist/worktree/safety.js.map +1 -0
- package/dist/{worktree-state.d.ts → worktree/state.d.ts} +1 -1
- package/dist/worktree/state.d.ts.map +1 -0
- package/dist/{worktree-state.js → worktree/state.js} +6 -6
- package/dist/worktree/state.js.map +1 -0
- package/dist/worktree.d.ts +1 -1
- package/dist/worktree.js +5 -5
- package/dist/worktree.js.map +1 -1
- package/package.json +5 -4
- package/dist/git-activity.d.ts.map +0 -1
- package/dist/git-activity.js.map +0 -1
- package/dist/git-branch.d.ts.map +0 -1
- package/dist/git-branch.js.map +0 -1
- package/dist/git-fetch.d.ts.map +0 -1
- package/dist/git-fetch.js.map +0 -1
- package/dist/git-genesis.d.ts.map +0 -1
- package/dist/git-genesis.js.map +0 -1
- package/dist/git-integration.d.ts.map +0 -1
- package/dist/git-integration.js.map +0 -1
- package/dist/git-merge-helpers.d.ts.map +0 -1
- package/dist/git-merge-helpers.js.map +0 -1
- package/dist/git-merge-lock.d.ts.map +0 -1
- package/dist/git-merge-lock.js.map +0 -1
- package/dist/git-merge-strategies.d.ts.map +0 -1
- package/dist/git-merge-strategies.js.map +0 -1
- package/dist/git-merge.d.ts.map +0 -1
- package/dist/git-merge.js.map +0 -1
- package/dist/git-state-detector.d.ts.map +0 -1
- package/dist/git-state-detector.js.map +0 -1
- package/dist/git-types.d.ts.map +0 -1
- package/dist/git-types.js.map +0 -1
- package/dist/git-utils.d.ts.map +0 -1
- package/dist/git-utils.js.map +0 -1
- package/dist/loop-context-audit-pass.d.ts.map +0 -1
- package/dist/loop-context-audit-pass.js.map +0 -1
- package/dist/loop-engine-types.d.ts.map +0 -1
- package/dist/loop-engine-types.js.map +0 -1
- package/dist/loop-engine.d.ts.map +0 -1
- package/dist/loop-engine.js.map +0 -1
- package/dist/loop-event-bus.d.ts.map +0 -1
- package/dist/loop-event-bus.js.map +0 -1
- package/dist/loop-llm-client.d.ts.map +0 -1
- package/dist/loop-llm-client.js.map +0 -1
- package/dist/loop-llm-flag.d.ts.map +0 -1
- package/dist/loop-llm-flag.js.map +0 -1
- package/dist/loop-operational-block.d.ts.map +0 -1
- package/dist/loop-operational-block.js.map +0 -1
- package/dist/loop-prompt-builder.d.ts.map +0 -1
- package/dist/loop-prompt-builder.js.map +0 -1
- package/dist/loop-variance.d.ts.map +0 -1
- package/dist/loop-variance.js.map +0 -1
- package/dist/nexus-endpoint-clearance.d.ts.map +0 -1
- package/dist/nexus-endpoint-clearance.js.map +0 -1
- package/dist/nexus-escalation-bridge.d.ts.map +0 -1
- package/dist/nexus-escalation-bridge.js.map +0 -1
- package/dist/nexus-incoming.d.ts.map +0 -1
- package/dist/nexus-incoming.js.map +0 -1
- package/dist/nexus-intake-spawn.d.ts.map +0 -1
- package/dist/nexus-intake-spawn.js.map +0 -1
- package/dist/nexus-intake.d.ts.map +0 -1
- package/dist/nexus-intake.js.map +0 -1
- package/dist/nexus-return.d.ts.map +0 -1
- package/dist/nexus-return.js.map +0 -1
- package/dist/otlp-log-parser.d.ts.map +0 -1
- package/dist/otlp-log-parser.js.map +0 -1
- package/dist/otlp-metric-parser.d.ts.map +0 -1
- package/dist/otlp-metric-parser.js.map +0 -1
- package/dist/otlp-port-manager.d.ts.map +0 -1
- package/dist/otlp-port-manager.js.map +0 -1
- package/dist/otlp-receiver.d.ts.map +0 -1
- package/dist/otlp-receiver.js.map +0 -1
- package/dist/otlp-types.d.ts.map +0 -1
- package/dist/otlp-types.js.map +0 -1
- package/dist/prd-controller.d.ts.map +0 -1
- package/dist/prd-controller.js.map +0 -1
- package/dist/prd-divergence.d.ts.map +0 -1
- package/dist/prd-divergence.js.map +0 -1
- package/dist/prd-focus-pushdown.d.ts.map +0 -1
- package/dist/prd-focus-pushdown.js.map +0 -1
- package/dist/prd-frontier.d.ts.map +0 -1
- package/dist/prd-frontier.js.map +0 -1
- package/dist/prd-steward.d.ts.map +0 -1
- package/dist/prd-steward.js.map +0 -1
- package/dist/prd-viability.d.ts.map +0 -1
- package/dist/prd-viability.js.map +0 -1
- package/dist/worktree-focus.d.ts.map +0 -1
- package/dist/worktree-focus.js.map +0 -1
- package/dist/worktree-safety.d.ts.map +0 -1
- package/dist/worktree-safety.js.map +0 -1
- package/dist/worktree-state.d.ts.map +0 -1
- package/dist/worktree-state.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"escalation-answers.d.ts","sourceRoot":"","sources":["../../src/resolvers/escalation-answers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"escalation-answers.d.ts","sourceRoot":"","sources":["../../src/resolvers/escalation-answers.ts"],"names":[],"mappings":"AAmDA;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,2BAA2B,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAO9E;AAED,kFAAkF;AAClF,MAAM,WAAW,yBAAyB;IACxC,6EAA6E;IAC7E,OAAO,EAAE,MAAM,CAAC;IAChB,sFAAsF;IACtF,GAAG,EAAE,MAAM,EAAE,CAAC;CACf;AAED;;;;;;GAMG;AACH,wBAAsB,0BAA0B,CAC9C,OAAO,EAAE,MAAM,GACd,OAAO,CAAC,yBAAyB,CAAC,CA4BpC;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,oGAAoG;AACpG,wBAAgB,iCAAiC,IAAI,IAAI,CAIxD"}
|
|
@@ -21,17 +21,24 @@ async function getAnsweredDirectedEscalationsForFocus(focusId, sinceIso) {
|
|
|
21
21
|
return result.escalations ?? [];
|
|
22
22
|
}
|
|
23
23
|
/**
|
|
24
|
-
* Stamp the given answers consumed once
|
|
25
|
-
*
|
|
26
|
-
*
|
|
27
|
-
*
|
|
24
|
+
* Stamp the given answers consumed once the message that carried them has been
|
|
25
|
+
* DISPATCHED -- the closure that stops a delivered answer re-surfacing as an open
|
|
26
|
+
* ask next cycle. Best-effort: a failure here degrades to at-least-once (the
|
|
27
|
+
* answer re-surfaces) rather than losing it, so we swallow the error.
|
|
28
|
+
*
|
|
29
|
+
* Consumption is DECOUPLED from resolution: `resolveAnsweredEscalations` renders
|
|
30
|
+
* the section but does NOT consume, and the spawn path calls this only after the
|
|
31
|
+
* message actually reaches the agent's stdin (post-dispatch). This is the fix for
|
|
32
|
+
* the resolve-time consume bug -- on the directive / resume-delta / scoping paths
|
|
33
|
+
* the section was dropped while the answers were stamped consumed at resolve
|
|
34
|
+
* time, silently losing answered directed intent.
|
|
28
35
|
*
|
|
29
36
|
* Identity contract: consumption is per escalation id, so a legitimately
|
|
30
37
|
* recurring blocker files a NEW escalation (unconsumed) that still surfaces,
|
|
31
38
|
* while the already-answered question stays consumed -- dedup by question
|
|
32
39
|
* identity, not by answer text.
|
|
33
40
|
*/
|
|
34
|
-
async function markDirectedAnswersConsumed(ids) {
|
|
41
|
+
export async function markDirectedAnswersConsumed(ids) {
|
|
35
42
|
if (ids.length === 0)
|
|
36
43
|
return;
|
|
37
44
|
try {
|
|
@@ -41,6 +48,41 @@ async function markDirectedAnswersConsumed(ids) {
|
|
|
41
48
|
console.warn(`[assembly] escalation.answers mark-consumed failed: ${err.message}`);
|
|
42
49
|
}
|
|
43
50
|
}
|
|
51
|
+
/**
|
|
52
|
+
* Fetch + render the answered-directed-escalation section for a focus WITHOUT
|
|
53
|
+
* consuming. Returns the section text and the ids it delivered, so the spawn path
|
|
54
|
+
* can stamp them consumed only after the carrying message is dispatched. Pure
|
|
55
|
+
* read (no side effects); an empty result ('' + []) when there is nothing to
|
|
56
|
+
* deliver or on any read error (best-effort, never blocks a spawn).
|
|
57
|
+
*/
|
|
58
|
+
export async function resolveAnsweredEscalations(focusId) {
|
|
59
|
+
try {
|
|
60
|
+
const since = await getAuditCycleLowerBound(focusId);
|
|
61
|
+
const answered = await getAnsweredDirectedEscalationsForFocus(focusId, since ?? undefined);
|
|
62
|
+
if (answered.length === 0)
|
|
63
|
+
return { section: '', ids: [] };
|
|
64
|
+
const blocks = answered.map((e) => {
|
|
65
|
+
const question = e.description.replace(/\n/g, ' ').trim();
|
|
66
|
+
const truncatedQ = question.length > 400 ? `${question.slice(0, 397)}...` : question;
|
|
67
|
+
const answer = e.answer.trim();
|
|
68
|
+
const when = e.answeredAt ? ` (answered ${e.answeredAt})` : '';
|
|
69
|
+
return `- **You asked** [${e.disposition}]: ${truncatedQ}\n **Answer**${when}: ${answer}`;
|
|
70
|
+
});
|
|
71
|
+
const section = [
|
|
72
|
+
'## Answers to your prior questions',
|
|
73
|
+
'',
|
|
74
|
+
'A human has answered directed questions you raised in earlier cycles.',
|
|
75
|
+
'Treat these as resolved intent/clarification -- act on them and do NOT re-ask.',
|
|
76
|
+
'',
|
|
77
|
+
blocks.join('\n'),
|
|
78
|
+
].join('\n');
|
|
79
|
+
return { section, ids: answered.map((e) => e.id) };
|
|
80
|
+
}
|
|
81
|
+
catch (err) {
|
|
82
|
+
console.warn(`[assembly] escalation.answers failed: ${err.message}`);
|
|
83
|
+
return { section: '', ids: [] };
|
|
84
|
+
}
|
|
85
|
+
}
|
|
44
86
|
/**
|
|
45
87
|
* escalation.answers
|
|
46
88
|
*
|
|
@@ -59,40 +101,17 @@ async function markDirectedAnswersConsumed(ids) {
|
|
|
59
101
|
*
|
|
60
102
|
* Windowed by the prior audit cycle's lower bound (best effort) so the section
|
|
61
103
|
* surfaces answers given since the last cycle rather than the full history.
|
|
104
|
+
*
|
|
105
|
+
* The registered resolver is CONTENT-ONLY (non-consuming): it renders the same
|
|
106
|
+
* section but never stamps answers consumed, so it is safe in any assembly
|
|
107
|
+
* recipe. The spawn path delivers answers as a first-class section
|
|
108
|
+
* (`resolveAnsweredEscalations`) and consumes post-dispatch instead of relying on
|
|
109
|
+
* this resolver -- see spawn/spawn-decision.ts + spawn/prompt-assembly.ts.
|
|
62
110
|
*/
|
|
63
111
|
/** Register this module's resolver(s). Called from initResolvers() -- not an import side effect. */
|
|
64
112
|
export function registerEscalationAnswersResolver() {
|
|
65
113
|
registerSourceResolver('escalation.answers', async (context) => {
|
|
66
|
-
|
|
67
|
-
const since = await getAuditCycleLowerBound(context.focusId);
|
|
68
|
-
const answered = await getAnsweredDirectedEscalationsForFocus(context.focusId, since ?? undefined);
|
|
69
|
-
if (answered.length === 0)
|
|
70
|
-
return '';
|
|
71
|
-
const blocks = answered.map((e) => {
|
|
72
|
-
const question = e.description.replace(/\n/g, ' ').trim();
|
|
73
|
-
const truncatedQ = question.length > 400 ? `${question.slice(0, 397)}...` : question;
|
|
74
|
-
const answer = e.answer.trim();
|
|
75
|
-
const when = e.answeredAt ? ` (answered ${e.answeredAt})` : '';
|
|
76
|
-
return `- **You asked** [${e.disposition}]: ${truncatedQ}\n **Answer**${when}: ${answer}`;
|
|
77
|
-
});
|
|
78
|
-
const section = [
|
|
79
|
-
'## Answers to your prior questions',
|
|
80
|
-
'',
|
|
81
|
-
'A human has answered directed questions you raised in earlier cycles.',
|
|
82
|
-
'Treat these as resolved intent/clarification -- act on them and do NOT re-ask.',
|
|
83
|
-
'',
|
|
84
|
-
blocks.join('\n'),
|
|
85
|
-
].join('\n');
|
|
86
|
-
// Consumed once it is in this spawn's prompt -- stops the same answer
|
|
87
|
-
// re-surfacing (no re-ask). After this, the read-back's
|
|
88
|
-
// answer_consumed_at IS NULL filter excludes these ids.
|
|
89
|
-
await markDirectedAnswersConsumed(answered.map((e) => e.id));
|
|
90
|
-
return section;
|
|
91
|
-
}
|
|
92
|
-
catch (err) {
|
|
93
|
-
console.warn(`[assembly] escalation.answers failed: ${err.message}`);
|
|
94
|
-
return '';
|
|
95
|
-
}
|
|
114
|
+
return (await resolveAnsweredEscalations(context.focusId)).section;
|
|
96
115
|
});
|
|
97
116
|
}
|
|
98
117
|
//# sourceMappingURL=escalation-answers.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"escalation-answers.js","sourceRoot":"","sources":["../../src/resolvers/escalation-answers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,OAAO,EAAE,OAAO,EAAE,MAAM,sBAAsB,CAAC;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,mBAAmB,CAAC;AAuB5D;;;;;;;;;;;GAWG;AACH,KAAK,UAAU,sCAAsC,CACnD,OAAe,EACf,QAAiB;IAEjB,MAAM,MAAM,GAA4B,EAAE,OAAO,EAAE,CAAC;IACpD,IAAI,QAAQ;QAAE,MAAM,CAAC,QAAQ,GAAG,QAAQ,CAAC;IACzC,MAAM,MAAM,GAAG,MAAM,OAAO,CAC1B,oDAAoD,EACpD,MAAM,CACP,CAAC;IACF,OAAO,MAAM,CAAC,WAAW,IAAI,EAAE,CAAC;AAClC,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"escalation-answers.js","sourceRoot":"","sources":["../../src/resolvers/escalation-answers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git-diff-against-base.d.ts","sourceRoot":"","sources":["../../src/resolvers/git-diff-against-base.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AACH,oGAAoG;AACpG,wBAAgB,kCAAkC,IAAI,IAAI,
|
|
1
|
+
{"version":3,"file":"git-diff-against-base.d.ts","sourceRoot":"","sources":["../../src/resolvers/git-diff-against-base.ts"],"names":[],"mappings":"AAIA;;;;;GAKG;AACH,oGAAoG;AACpG,wBAAgB,kCAAkC,IAAI,IAAI,CAqCzD"}
|
|
@@ -13,7 +13,10 @@ export function registerGitDiffAgainstBaseResolver() {
|
|
|
13
13
|
console.warn('[assembly-engine] git.diff_against_base: no worktree path available');
|
|
14
14
|
return '';
|
|
15
15
|
}
|
|
16
|
-
|
|
16
|
+
// The review resume path overrides the base with the coverage watermark
|
|
17
|
+
// (reviewed_through_sha) so a resumed reviewer sees only watermark..tip;
|
|
18
|
+
// every other caller diffs against the integration branch.
|
|
19
|
+
const baseBranch = context.diffBaseOverride ?? context.config.integrationBranch;
|
|
17
20
|
const diff = getGitDiff(context.worktreePath, baseBranch);
|
|
18
21
|
if (!diff.trim())
|
|
19
22
|
return '';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"git-diff-against-base.js","sourceRoot":"","sources":["../../src/resolvers/git-diff-against-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtF;;;;;GAKG;AACH,oGAAoG;AACpG,MAAM,UAAU,kCAAkC;IAChD,sBAAsB,CAAC,uBAAuB,EAAE,KAAK,EAAE,OAAwB,EAAmB,EAAE;QAClG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;YAC1B,OAAO,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;YACpF,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC;
|
|
1
|
+
{"version":3,"file":"git-diff-against-base.js","sourceRoot":"","sources":["../../src/resolvers/git-diff-against-base.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AAE/D,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEtF;;;;;GAKG;AACH,oGAAoG;AACpG,MAAM,UAAU,kCAAkC;IAChD,sBAAsB,CAAC,uBAAuB,EAAE,KAAK,EAAE,OAAwB,EAAmB,EAAE;QAClG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;YAC1B,OAAO,CAAC,IAAI,CAAC,qEAAqE,CAAC,CAAC;YACpF,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,wEAAwE;QACxE,yEAAyE;QACzE,2DAA2D;QAC3D,MAAM,UAAU,GAAG,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC;QAChF,MAAM,IAAI,GAAG,UAAU,CAAC,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;QAE1D,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE;YAAE,OAAO,EAAE,CAAC;QAE5B,IAAI,IAAI,CAAC,MAAM,GAAG,cAAc,EAAE,CAAC;YACjC,MAAM,IAAI,GAAG,kBAAkB,CAAC,OAAO,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;YAClE,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;YAChD,OAAO;gBACL,wBAAwB,UAAU,GAAG;gBACrC,EAAE;gBACF,8BAA8B,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,qBAAqB,IAAI,CAAC,KAAK,CAAC,cAAc,GAAG,IAAI,CAAC,KAAK;gBACvH,EAAE;gBACF,kBAAkB;gBAClB,EAAE;gBACF,KAAK;gBACL,IAAI,CAAC,IAAI,EAAE;gBACX,KAAK;gBACL,EAAE;gBACF,SAAS;gBACT,SAAS;gBACT,KAAK;aACN,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACf,CAAC;QAED,OAAO,wBAAwB,UAAU,oBAAoB,IAAI,UAAU,CAAC;IAC9E,CAAC,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -30,6 +30,33 @@ interface WikiAncestorRef {
|
|
|
30
30
|
depthFromRoot: number;
|
|
31
31
|
}
|
|
32
32
|
export declare const WIKI_RETRIEVAL_BUDGET_CHARS = 10000;
|
|
33
|
+
/**
|
|
34
|
+
* Minimum blended rank a wiki hit must clear for execution-plane retrieval.
|
|
35
|
+
* The hybrid rank is `0.4 * (text_rank / max_text_rank) + 0.6 * (1 - cosine)`,
|
|
36
|
+
* roughly 0..1: a genuine match lands high, an embedding-only near-miss (a page
|
|
37
|
+
* that matches on vector alone, no keyword overlap) lands low. This floor turns
|
|
38
|
+
* such near-misses into a "no wiki section" result -- safer for a spawning team
|
|
39
|
+
* than a misleading best-available page. Conservative starting value; tunable.
|
|
40
|
+
* focus.context / wiki.search already early-return empty on zero hits, so a
|
|
41
|
+
* fully-filtered result simply renders no section.
|
|
42
|
+
*/
|
|
43
|
+
export declare const WIKI_MIN_RELEVANCE = 0.15;
|
|
44
|
+
/**
|
|
45
|
+
* Minimum raw `ts_rank` a wiki hit must clear on the TEXT-ONLY retrieval path
|
|
46
|
+
* (no query embedding available -- e.g. a keyless deployment, which ALWAYS
|
|
47
|
+
* runs this path). This is a DIFFERENT scale from WIKI_MIN_RELEVANCE: the
|
|
48
|
+
* text-only RPC returns unnormalized `ts_rank`, whose genuine-match range on
|
|
49
|
+
* real content starts around ~0.06 for a single-occurrence match and climbs to
|
|
50
|
+
* ~0.4-0.7 for strong matches (empirically observed). The text path also
|
|
51
|
+
* self-floors structurally -- `plainto_tsquery` ANDs the query terms, so a page
|
|
52
|
+
* must contain EVERY query lexeme to appear at all -- so this constant is a
|
|
53
|
+
* deliberately-LOW backstop that trims only degenerate sub-baseline noise
|
|
54
|
+
* without dropping genuine brief matches (ts_rank has weak discrimination in
|
|
55
|
+
* the low range, so a higher floor would cut legitimate hits). It exists so a
|
|
56
|
+
* keyless deployment still enforces a floor rather than leaking the
|
|
57
|
+
* best-available marginal page. Conservative starting value; tunable.
|
|
58
|
+
*/
|
|
59
|
+
export declare const WIKI_MIN_TEXT_RELEVANCE = 0.05;
|
|
33
60
|
/**
|
|
34
61
|
* Deduplicate a flat list of hits by id, keeping the highest-ranked
|
|
35
62
|
* occurrence of any duplicate, and return them sorted by rank descending.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wiki.d.ts","sourceRoot":"","sources":["../../../src/resolvers/shared/wiki.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,OAAO,GAAG,WAAW,GAAG,UAAU,CAAC;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAOD,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,GAAG,WAAW,GAAG,UAAU,CAAC;CAC5C;AAED,UAAU,eAAe;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,2BAA2B,QAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"wiki.d.ts","sourceRoot":"","sources":["../../../src/resolvers/shared/wiki.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,MAAM,EAAE,OAAO,GAAG,WAAW,GAAG,UAAU,CAAC;IAC3C,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAOD,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,GAAG,WAAW,GAAG,UAAU,CAAC;CAC5C;AAED,UAAU,eAAe;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;CACvB;AAED,eAAO,MAAM,2BAA2B,QAAS,CAAC;AAElD;;;;;;;;;GASG;AACH,eAAO,MAAM,kBAAkB,OAAO,CAAC;AAEvC;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,uBAAuB,OAAO,CAAC;AAK5C;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,aAAa,EAAE,GAAG,aAAa,EAAE,CASvE;AAED,wBAAsB,UAAU,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,SAAI,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAwBtG;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,CACzC,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EAAE,GAChB,OAAO,CAAC,eAAe,EAAE,CAAC,CAY5B;AAED;;;;;;;;;GASG;AACH,wBAAsB,eAAe,CACnC,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,MAAM,EAAE,GACZ,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC,CAgBpC;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,aAAa,EAAE,EACrB,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,EACjC,WAAW,EAAE,MAAM,EACnB,SAAS,GAAE,eAAe,EAAO,GAChC,MAAM,CAyCR"}
|
|
@@ -4,6 +4,33 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { callApi } from '../../queries/shared.js';
|
|
6
6
|
export const WIKI_RETRIEVAL_BUDGET_CHARS = 10_000;
|
|
7
|
+
/**
|
|
8
|
+
* Minimum blended rank a wiki hit must clear for execution-plane retrieval.
|
|
9
|
+
* The hybrid rank is `0.4 * (text_rank / max_text_rank) + 0.6 * (1 - cosine)`,
|
|
10
|
+
* roughly 0..1: a genuine match lands high, an embedding-only near-miss (a page
|
|
11
|
+
* that matches on vector alone, no keyword overlap) lands low. This floor turns
|
|
12
|
+
* such near-misses into a "no wiki section" result -- safer for a spawning team
|
|
13
|
+
* than a misleading best-available page. Conservative starting value; tunable.
|
|
14
|
+
* focus.context / wiki.search already early-return empty on zero hits, so a
|
|
15
|
+
* fully-filtered result simply renders no section.
|
|
16
|
+
*/
|
|
17
|
+
export const WIKI_MIN_RELEVANCE = 0.15;
|
|
18
|
+
/**
|
|
19
|
+
* Minimum raw `ts_rank` a wiki hit must clear on the TEXT-ONLY retrieval path
|
|
20
|
+
* (no query embedding available -- e.g. a keyless deployment, which ALWAYS
|
|
21
|
+
* runs this path). This is a DIFFERENT scale from WIKI_MIN_RELEVANCE: the
|
|
22
|
+
* text-only RPC returns unnormalized `ts_rank`, whose genuine-match range on
|
|
23
|
+
* real content starts around ~0.06 for a single-occurrence match and climbs to
|
|
24
|
+
* ~0.4-0.7 for strong matches (empirically observed). The text path also
|
|
25
|
+
* self-floors structurally -- `plainto_tsquery` ANDs the query terms, so a page
|
|
26
|
+
* must contain EVERY query lexeme to appear at all -- so this constant is a
|
|
27
|
+
* deliberately-LOW backstop that trims only degenerate sub-baseline noise
|
|
28
|
+
* without dropping genuine brief matches (ts_rank has weak discrimination in
|
|
29
|
+
* the low range, so a higher floor would cut legitimate hits). It exists so a
|
|
30
|
+
* keyless deployment still enforces a floor rather than leaking the
|
|
31
|
+
* best-available marginal page. Conservative starting value; tunable.
|
|
32
|
+
*/
|
|
33
|
+
export const WIKI_MIN_TEXT_RELEVANCE = 0.05;
|
|
7
34
|
// Reserve a slice of the budget for the ancestors block. Empirically a few
|
|
8
35
|
// hundred characters per ancestor (title + 1-line summary) is plenty.
|
|
9
36
|
const WIKI_ANCESTORS_BUDGET_FRACTION = 0.25;
|
|
@@ -33,10 +60,22 @@ export function dedupeHitsByRank(hits) {
|
|
|
33
60
|
}
|
|
34
61
|
export async function searchWiki(productId, query, limit = 8) {
|
|
35
62
|
try {
|
|
63
|
+
// Execution-plane retrieval intentionally relies on the wiki_search
|
|
64
|
+
// default (includeSuperseded=false), so pages an incoming `supersedes`
|
|
65
|
+
// link marks as retired are excluded -- a spawning team never receives a
|
|
66
|
+
// superseded page ahead of its replacement. Do NOT pass includeSuperseded
|
|
67
|
+
// here; only audit/history surfaces opt into the retired set.
|
|
36
68
|
const result = await callApi('wiki_search', {
|
|
37
69
|
productId,
|
|
38
70
|
query,
|
|
39
71
|
limit,
|
|
72
|
+
// Floor weak/irrelevant hits so a spawning team gets no section rather
|
|
73
|
+
// than a misleading best-available page. Both paths are floored: the
|
|
74
|
+
// hybrid path on the blended 0..1 scale (WIKI_MIN_RELEVANCE) and the
|
|
75
|
+
// text-only path on the raw ts_rank scale (WIKI_MIN_TEXT_RELEVANCE) --
|
|
76
|
+
// a keyless deployment always runs text-only, so it must floor too.
|
|
77
|
+
minRelevance: WIKI_MIN_RELEVANCE,
|
|
78
|
+
minTextRelevance: WIKI_MIN_TEXT_RELEVANCE,
|
|
40
79
|
});
|
|
41
80
|
return result.pages ?? [];
|
|
42
81
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wiki.js","sourceRoot":"","sources":["../../../src/resolvers/shared/wiki.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,yBAAyB,CAAC;AAqClD,MAAM,CAAC,MAAM,2BAA2B,GAAG,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"wiki.js","sourceRoot":"","sources":["../../../src/resolvers/shared/wiki.ts"],"names":[],"mappings":"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"}
|
package/dist/sensor-sweep.js
CHANGED
|
@@ -41,7 +41,7 @@
|
|
|
41
41
|
*/
|
|
42
42
|
import { readFileSync, readdirSync, existsSync } from 'node:fs';
|
|
43
43
|
import { join } from 'node:path';
|
|
44
|
-
import { runGitSync } from './git
|
|
44
|
+
import { runGitSync } from './git/index.js';
|
|
45
45
|
import { configForProduct } from './config.js';
|
|
46
46
|
import { getLatestCodeMetrics, createCodeMetricsSnapshot } from './queries/code-metrics.js';
|
|
47
47
|
/**
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Delivered-context manifest assembly.
|
|
3
|
+
*
|
|
4
|
+
* agent_context_assembly is the per-spawn token-attribution instrument -- "the
|
|
5
|
+
* exact record of WHAT context was injected per spawn." To stay truthful it must
|
|
6
|
+
* reflect the sources composed into the message ACTUALLY SENT, not everything
|
|
7
|
+
* resolved during assembly. The four message shapes deliver different sources:
|
|
8
|
+
*
|
|
9
|
+
* fresh-directive : directive recipe + escalation.answers + prd milestone
|
|
10
|
+
* fresh-legacy : loop-context recipe + escalation.answers + prd milestone
|
|
11
|
+
* resume-delta : git.diff_against_base + escalation.answers
|
|
12
|
+
* scoping : escalation.answers
|
|
13
|
+
*
|
|
14
|
+
* (role framework, scoping directive, remediation framing, review obligations and
|
|
15
|
+
* the resume delta's prior-findings list are STATIC prompt text, not assembly
|
|
16
|
+
* sources, so they carry no manifest row.)
|
|
17
|
+
*
|
|
18
|
+
* This module folds the separately-resolved component manifests into the ordered
|
|
19
|
+
* delivered manifest per shape, re-ordinaled in send order. Pure + dependency-free
|
|
20
|
+
* so the per-shape correspondence is unit-testable without a live spawn. See
|
|
21
|
+
* queries/context-assembly.ts (persistence) and spawn/process-spawn.ts (caller).
|
|
22
|
+
*/
|
|
23
|
+
import type { AssemblyManifestEntry } from '../assembly-engine.js';
|
|
24
|
+
export type SpawnMessageShape = 'fresh-directive' | 'fresh-legacy' | 'resume-delta' | 'scoping';
|
|
25
|
+
/** Manifest row for the first-class answered-escalations section (all shapes). */
|
|
26
|
+
export declare function escalationAnswersManifestEntry(section: string): AssemblyManifestEntry;
|
|
27
|
+
/**
|
|
28
|
+
* Compose the delivered manifest for one spawn, in send order, re-ordinaled from
|
|
29
|
+
* 0. `promptRecipeManifest` is the directive recipe (fresh-directive) or the
|
|
30
|
+
* loop-context recipe (fresh-legacy); it is ignored for resume-delta / scoping
|
|
31
|
+
* (those shapes drop the composed prompt). `gitDiffManifest` applies only to
|
|
32
|
+
* resume-delta. The escalation.answers row is added on ANY shape whose sent
|
|
33
|
+
* message carried the section (non-empty).
|
|
34
|
+
*/
|
|
35
|
+
export declare function buildDeliveredManifest(args: {
|
|
36
|
+
shape: SpawnMessageShape;
|
|
37
|
+
promptRecipeManifest: AssemblyManifestEntry[];
|
|
38
|
+
answeredEscalationsSection: string;
|
|
39
|
+
prdMilestoneManifest: AssemblyManifestEntry[];
|
|
40
|
+
gitDiffManifest: AssemblyManifestEntry[];
|
|
41
|
+
}): AssemblyManifestEntry[];
|
|
42
|
+
//# sourceMappingURL=delivered-manifest.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delivered-manifest.d.ts","sourceRoot":"","sources":["../../src/spawn/delivered-manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAEH,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;AAEnE,MAAM,MAAM,iBAAiB,GACzB,iBAAiB,GACjB,cAAc,GACd,cAAc,GACd,SAAS,CAAC;AAEd,kFAAkF;AAClF,wBAAgB,8BAA8B,CAAC,OAAO,EAAE,MAAM,GAAG,qBAAqB,CAQrF;AAED;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CAAC,IAAI,EAAE;IAC3C,KAAK,EAAE,iBAAiB,CAAC;IACzB,oBAAoB,EAAE,qBAAqB,EAAE,CAAC;IAC9C,0BAA0B,EAAE,MAAM,CAAC;IACnC,oBAAoB,EAAE,qBAAqB,EAAE,CAAC;IAC9C,eAAe,EAAE,qBAAqB,EAAE,CAAC;CAC1C,GAAG,qBAAqB,EAAE,CAmB1B"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Delivered-context manifest assembly.
|
|
3
|
+
*
|
|
4
|
+
* agent_context_assembly is the per-spawn token-attribution instrument -- "the
|
|
5
|
+
* exact record of WHAT context was injected per spawn." To stay truthful it must
|
|
6
|
+
* reflect the sources composed into the message ACTUALLY SENT, not everything
|
|
7
|
+
* resolved during assembly. The four message shapes deliver different sources:
|
|
8
|
+
*
|
|
9
|
+
* fresh-directive : directive recipe + escalation.answers + prd milestone
|
|
10
|
+
* fresh-legacy : loop-context recipe + escalation.answers + prd milestone
|
|
11
|
+
* resume-delta : git.diff_against_base + escalation.answers
|
|
12
|
+
* scoping : escalation.answers
|
|
13
|
+
*
|
|
14
|
+
* (role framework, scoping directive, remediation framing, review obligations and
|
|
15
|
+
* the resume delta's prior-findings list are STATIC prompt text, not assembly
|
|
16
|
+
* sources, so they carry no manifest row.)
|
|
17
|
+
*
|
|
18
|
+
* This module folds the separately-resolved component manifests into the ordered
|
|
19
|
+
* delivered manifest per shape, re-ordinaled in send order. Pure + dependency-free
|
|
20
|
+
* so the per-shape correspondence is unit-testable without a live spawn. See
|
|
21
|
+
* queries/context-assembly.ts (persistence) and spawn/process-spawn.ts (caller).
|
|
22
|
+
*/
|
|
23
|
+
/** Manifest row for the first-class answered-escalations section (all shapes). */
|
|
24
|
+
export function escalationAnswersManifestEntry(section) {
|
|
25
|
+
const charCount = section.length;
|
|
26
|
+
return {
|
|
27
|
+
sourceRef: 'escalation.answers',
|
|
28
|
+
ordinal: 0, // re-assigned by buildDeliveredManifest in send order
|
|
29
|
+
charCount,
|
|
30
|
+
estimatedTokens: Math.ceil(charCount / 4),
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Compose the delivered manifest for one spawn, in send order, re-ordinaled from
|
|
35
|
+
* 0. `promptRecipeManifest` is the directive recipe (fresh-directive) or the
|
|
36
|
+
* loop-context recipe (fresh-legacy); it is ignored for resume-delta / scoping
|
|
37
|
+
* (those shapes drop the composed prompt). `gitDiffManifest` applies only to
|
|
38
|
+
* resume-delta. The escalation.answers row is added on ANY shape whose sent
|
|
39
|
+
* message carried the section (non-empty).
|
|
40
|
+
*/
|
|
41
|
+
export function buildDeliveredManifest(args) {
|
|
42
|
+
const { shape, promptRecipeManifest, answeredEscalationsSection, prdMilestoneManifest, gitDiffManifest } = args;
|
|
43
|
+
const out = [];
|
|
44
|
+
if (shape === 'fresh-directive' || shape === 'fresh-legacy') {
|
|
45
|
+
out.push(...promptRecipeManifest);
|
|
46
|
+
if (answeredEscalationsSection.trim())
|
|
47
|
+
out.push(escalationAnswersManifestEntry(answeredEscalationsSection));
|
|
48
|
+
out.push(...prdMilestoneManifest);
|
|
49
|
+
}
|
|
50
|
+
else if (shape === 'resume-delta') {
|
|
51
|
+
out.push(...gitDiffManifest);
|
|
52
|
+
if (answeredEscalationsSection.trim())
|
|
53
|
+
out.push(escalationAnswersManifestEntry(answeredEscalationsSection));
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
// scoping: only the answered-escalations section is an assembly source.
|
|
57
|
+
if (answeredEscalationsSection.trim())
|
|
58
|
+
out.push(escalationAnswersManifestEntry(answeredEscalationsSection));
|
|
59
|
+
}
|
|
60
|
+
// Re-ordinal in final send order so the persisted ordinals are contiguous and
|
|
61
|
+
// reflect delivery position, not the resolve-time recipe position.
|
|
62
|
+
return out.map((entry, i) => ({ ...entry, ordinal: i }));
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=delivered-manifest.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"delivered-manifest.js","sourceRoot":"","sources":["../../src/spawn/delivered-manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;GAqBG;AAUH,kFAAkF;AAClF,MAAM,UAAU,8BAA8B,CAAC,OAAe;IAC5D,MAAM,SAAS,GAAG,OAAO,CAAC,MAAM,CAAC;IACjC,OAAO;QACL,SAAS,EAAE,oBAAoB;QAC/B,OAAO,EAAE,CAAC,EAAE,sDAAsD;QAClE,SAAS;QACT,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;KAC1C,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,sBAAsB,CAAC,IAMtC;IACC,MAAM,EAAE,KAAK,EAAE,oBAAoB,EAAE,0BAA0B,EAAE,oBAAoB,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC;IAChH,MAAM,GAAG,GAA4B,EAAE,CAAC;IAExC,IAAI,KAAK,KAAK,iBAAiB,IAAI,KAAK,KAAK,cAAc,EAAE,CAAC;QAC5D,GAAG,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC,CAAC;QAClC,IAAI,0BAA0B,CAAC,IAAI,EAAE;YAAE,GAAG,CAAC,IAAI,CAAC,8BAA8B,CAAC,0BAA0B,CAAC,CAAC,CAAC;QAC5G,GAAG,CAAC,IAAI,CAAC,GAAG,oBAAoB,CAAC,CAAC;IACpC,CAAC;SAAM,IAAI,KAAK,KAAK,cAAc,EAAE,CAAC;QACpC,GAAG,CAAC,IAAI,CAAC,GAAG,eAAe,CAAC,CAAC;QAC7B,IAAI,0BAA0B,CAAC,IAAI,EAAE;YAAE,GAAG,CAAC,IAAI,CAAC,8BAA8B,CAAC,0BAA0B,CAAC,CAAC,CAAC;IAC9G,CAAC;SAAM,CAAC;QACN,wEAAwE;QACxE,IAAI,0BAA0B,CAAC,IAAI,EAAE;YAAE,GAAG,CAAC,IAAI,CAAC,8BAA8B,CAAC,0BAA0B,CAAC,CAAC,CAAC;IAC9G,CAAC;IAED,8EAA8E;IAC9E,mEAAmE;IACnE,OAAO,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;AAC3D,CAAC"}
|