@zhixuan92/multi-model-agent-core 5.1.0 → 5.2.0
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/dist/bounded-execution/activity-tracker-types.d.ts +30 -15
- package/dist/bounded-execution/activity-tracker-types.d.ts.map +1 -1
- package/dist/bounded-execution/activity-tracker-types.js.map +1 -1
- package/dist/bounded-execution/activity-tracker.d.ts +2 -2
- package/dist/bounded-execution/activity-tracker.d.ts.map +1 -1
- package/dist/bounded-execution/activity-tracker.js +4 -5
- package/dist/bounded-execution/activity-tracker.js.map +1 -1
- package/dist/config/schema.d.ts +41 -2
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +1 -2
- package/dist/config/schema.js.map +1 -1
- package/dist/events/task-envelope.d.ts +5 -5
- package/dist/events/task-envelope.d.ts.map +1 -1
- package/dist/events/task-envelope.js +3 -6
- package/dist/events/task-envelope.js.map +1 -1
- package/dist/events/telemetry-uploader.d.ts +1 -1
- package/dist/events/telemetry-uploader.d.ts.map +1 -1
- package/dist/events/to-wire-record.d.ts +1 -1
- package/dist/events/to-wire-record.d.ts.map +1 -1
- package/dist/events/to-wire-record.js +1 -1
- package/dist/events/to-wire-record.js.map +1 -1
- package/dist/events/wire-schema.d.ts +34 -11
- package/dist/events/wire-schema.d.ts.map +1 -1
- package/dist/events/wire-schema.js +8 -8
- package/dist/events/wire-schema.js.map +1 -1
- package/dist/index.d.ts +13 -18
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +9 -17
- package/dist/index.js.map +1 -1
- package/dist/providers/agent-resolver.js +1 -1
- package/dist/providers/agent-resolver.js.map +1 -1
- package/dist/providers/claude-session.d.ts +2 -1
- package/dist/providers/claude-session.d.ts.map +1 -1
- package/dist/providers/claude-session.js +29 -2
- package/dist/providers/claude-session.js.map +1 -1
- package/dist/providers/codex-cli-session.d.ts +3 -2
- package/dist/providers/codex-cli-session.d.ts.map +1 -1
- package/dist/providers/codex-cli-session.js +5 -2
- package/dist/providers/codex-cli-session.js.map +1 -1
- package/dist/providers/provider-factory.d.ts +2 -2
- package/dist/providers/provider-factory.d.ts.map +1 -1
- package/dist/providers/provider-factory.js +12 -12
- package/dist/providers/provider-factory.js.map +1 -1
- package/dist/providers/runner-types.d.ts +3 -16
- package/dist/providers/runner-types.d.ts.map +1 -1
- package/dist/research/index.d.ts +11 -1
- package/dist/research/index.d.ts.map +1 -1
- package/dist/research/index.js +8 -1
- package/dist/research/index.js.map +1 -1
- package/dist/stores/context-block-tool.d.ts +2 -3
- package/dist/stores/context-block-tool.d.ts.map +1 -1
- package/dist/stores/context-block-tool.js +1 -1
- package/dist/stores/context-block-tool.js.map +1 -1
- package/dist/stores/project-context-registry.d.ts +0 -9
- package/dist/stores/project-context-registry.d.ts.map +1 -1
- package/dist/stores/project-context-registry.js +0 -4
- package/dist/stores/project-context-registry.js.map +1 -1
- package/dist/types/brief-quality-policy.d.ts.map +1 -1
- package/dist/types/enums.d.ts +0 -9
- package/dist/types/enums.d.ts.map +1 -1
- package/dist/types/enums.js +0 -10
- package/dist/types/enums.js.map +1 -1
- package/dist/types/run-result.d.ts +48 -23
- package/dist/types/run-result.d.ts.map +1 -1
- package/dist/types/run-result.js +3 -16
- package/dist/types/run-result.js.map +1 -1
- package/dist/types/stage-stats.d.ts +1 -1
- package/dist/types/stage-stats.d.ts.map +1 -1
- package/dist/types/stage-stats.js +2 -4
- package/dist/types/stage-stats.js.map +1 -1
- package/dist/types/task-spec.d.ts +3 -17
- package/dist/types/task-spec.d.ts.map +1 -1
- package/dist/types.d.ts +1 -1
- package/dist/types.d.ts.map +1 -1
- package/dist/unified/reviewer-output-parser.d.ts +51 -0
- package/dist/unified/reviewer-output-parser.d.ts.map +1 -0
- package/dist/unified/reviewer-output-parser.js +39 -0
- package/dist/unified/reviewer-output-parser.js.map +1 -0
- package/dist/unified/skill-loader.d.ts +9 -0
- package/dist/unified/skill-loader.d.ts.map +1 -0
- package/dist/unified/skill-loader.js +45 -0
- package/dist/unified/skill-loader.js.map +1 -0
- package/dist/unified/task-input-schema.d.ts +217 -0
- package/dist/unified/task-input-schema.d.ts.map +1 -0
- package/dist/unified/task-input-schema.js +35 -0
- package/dist/unified/task-input-schema.js.map +1 -0
- package/dist/unified/task-registry.d.ts +23 -0
- package/dist/unified/task-registry.d.ts.map +1 -0
- package/dist/unified/task-registry.js +56 -0
- package/dist/unified/task-registry.js.map +1 -0
- package/dist/unified/two-phase-pipeline.d.ts +52 -0
- package/dist/unified/two-phase-pipeline.d.ts.map +1 -0
- package/dist/unified/two-phase-pipeline.js +95 -0
- package/dist/unified/two-phase-pipeline.js.map +1 -0
- package/dist/unified/type-registry.d.ts +13 -0
- package/dist/unified/type-registry.d.ts.map +1 -0
- package/dist/unified/type-registry.js +30 -0
- package/dist/unified/type-registry.js.map +1 -0
- package/dist/unified/worktree-manager.d.ts +43 -0
- package/dist/unified/worktree-manager.d.ts.map +1 -0
- package/dist/unified/worktree-manager.js +76 -0
- package/dist/unified/worktree-manager.js.map +1 -0
- package/package.json +5 -117
- package/dist/bounded-execution/file-artifact-check.d.ts +0 -7
- package/dist/bounded-execution/file-artifact-check.d.ts.map +0 -1
- package/dist/bounded-execution/file-artifact-check.js +0 -13
- package/dist/bounded-execution/file-artifact-check.js.map +0 -1
- package/dist/bounded-execution/progress-events-subscriber.d.ts +0 -33
- package/dist/bounded-execution/progress-events-subscriber.d.ts.map +0 -1
- package/dist/bounded-execution/progress-events-subscriber.js +0 -59
- package/dist/bounded-execution/progress-events-subscriber.js.map +0 -1
- package/dist/bounded-execution/progress-watchdog.d.ts +0 -43
- package/dist/bounded-execution/progress-watchdog.d.ts.map +0 -1
- package/dist/bounded-execution/progress-watchdog.js +0 -170
- package/dist/bounded-execution/progress-watchdog.js.map +0 -1
- package/dist/bounded-execution/real-diff.d.ts +0 -17
- package/dist/bounded-execution/real-diff.d.ts.map +0 -1
- package/dist/bounded-execution/real-diff.js +0 -59
- package/dist/bounded-execution/real-diff.js.map +0 -1
- package/dist/bounded-execution/scope-match.d.ts +0 -7
- package/dist/bounded-execution/scope-match.d.ts.map +0 -1
- package/dist/bounded-execution/scope-match.js +0 -28
- package/dist/bounded-execution/scope-match.js.map +0 -1
- package/dist/bounded-execution/stall-watchdog.d.ts +0 -18
- package/dist/bounded-execution/stall-watchdog.d.ts.map +0 -1
- package/dist/bounded-execution/stall-watchdog.js +0 -134
- package/dist/bounded-execution/stall-watchdog.js.map +0 -1
- package/dist/bounded-execution/wall-clock-guard.d.ts +0 -12
- package/dist/bounded-execution/wall-clock-guard.d.ts.map +0 -1
- package/dist/bounded-execution/wall-clock-guard.js +0 -27
- package/dist/bounded-execution/wall-clock-guard.js.map +0 -1
- package/dist/config/canonical-model-identity.d.ts +0 -9
- package/dist/config/canonical-model-identity.d.ts.map +0 -1
- package/dist/config/canonical-model-identity.js +0 -54
- package/dist/config/canonical-model-identity.js.map +0 -1
- package/dist/journal/default-schema.d.ts +0 -2
- package/dist/journal/default-schema.d.ts.map +0 -1
- package/dist/journal/default-schema.js +0 -27
- package/dist/journal/default-schema.js.map +0 -1
- package/dist/journal/types.d.ts +0 -22
- package/dist/journal/types.d.ts.map +0 -1
- package/dist/journal/types.js +0 -5
- package/dist/journal/types.js.map +0 -1
- package/dist/lifecycle/annotate-parser.d.ts +0 -11
- package/dist/lifecycle/annotate-parser.d.ts.map +0 -1
- package/dist/lifecycle/annotate-parser.js +0 -74
- package/dist/lifecycle/annotate-parser.js.map +0 -1
- package/dist/lifecycle/annotate-prompts.d.ts +0 -9
- package/dist/lifecycle/annotate-prompts.d.ts.map +0 -1
- package/dist/lifecycle/annotate-prompts.js +0 -95
- package/dist/lifecycle/annotate-prompts.js.map +0 -1
- package/dist/lifecycle/auto-commit.d.ts +0 -3
- package/dist/lifecycle/auto-commit.d.ts.map +0 -1
- package/dist/lifecycle/auto-commit.js +0 -5
- package/dist/lifecycle/auto-commit.js.map +0 -1
- package/dist/lifecycle/auto-register-context-block.d.ts +0 -11
- package/dist/lifecycle/auto-register-context-block.d.ts.map +0 -1
- package/dist/lifecycle/auto-register-context-block.js +0 -18
- package/dist/lifecycle/auto-register-context-block.js.map +0 -1
- package/dist/lifecycle/build-cancelled-result.d.ts +0 -11
- package/dist/lifecycle/build-cancelled-result.d.ts.map +0 -1
- package/dist/lifecycle/build-cancelled-result.js +0 -25
- package/dist/lifecycle/build-cancelled-result.js.map +0 -1
- package/dist/lifecycle/derive-completion.d.ts +0 -28
- package/dist/lifecycle/derive-completion.d.ts.map +0 -1
- package/dist/lifecycle/derive-completion.js +0 -79
- package/dist/lifecycle/derive-completion.js.map +0 -1
- package/dist/lifecycle/executor-output-types.d.ts +0 -53
- package/dist/lifecycle/executor-output-types.d.ts.map +0 -1
- package/dist/lifecycle/executor-output-types.js +0 -2
- package/dist/lifecycle/executor-output-types.js.map +0 -1
- package/dist/lifecycle/file-confinement-check.d.ts +0 -17
- package/dist/lifecycle/file-confinement-check.d.ts.map +0 -1
- package/dist/lifecycle/file-confinement-check.js +0 -44
- package/dist/lifecycle/file-confinement-check.js.map +0 -1
- package/dist/lifecycle/findings-parser.d.ts +0 -18
- package/dist/lifecycle/findings-parser.d.ts.map +0 -1
- package/dist/lifecycle/findings-parser.js +0 -143
- package/dist/lifecycle/findings-parser.js.map +0 -1
- package/dist/lifecycle/git-exec.d.ts +0 -62
- package/dist/lifecycle/git-exec.d.ts.map +0 -1
- package/dist/lifecycle/git-exec.js +0 -135
- package/dist/lifecycle/git-exec.js.map +0 -1
- package/dist/lifecycle/git-toplevel.d.ts +0 -12
- package/dist/lifecycle/git-toplevel.d.ts.map +0 -1
- package/dist/lifecycle/git-toplevel.js +0 -52
- package/dist/lifecycle/git-toplevel.js.map +0 -1
- package/dist/lifecycle/goal-builder.d.ts +0 -35
- package/dist/lifecycle/goal-builder.d.ts.map +0 -1
- package/dist/lifecycle/goal-builder.js +0 -56
- package/dist/lifecycle/goal-builder.js.map +0 -1
- package/dist/lifecycle/goal-preconditions.d.ts +0 -21
- package/dist/lifecycle/goal-preconditions.d.ts.map +0 -1
- package/dist/lifecycle/goal-preconditions.js +0 -33
- package/dist/lifecycle/goal-preconditions.js.map +0 -1
- package/dist/lifecycle/goal-prompts.d.ts +0 -27
- package/dist/lifecycle/goal-prompts.d.ts.map +0 -1
- package/dist/lifecycle/goal-prompts.js +0 -204
- package/dist/lifecycle/goal-prompts.js.map +0 -1
- package/dist/lifecycle/goal-report.d.ts +0 -42
- package/dist/lifecycle/goal-report.d.ts.map +0 -1
- package/dist/lifecycle/goal-report.js +0 -125
- package/dist/lifecycle/goal-report.js.map +0 -1
- package/dist/lifecycle/handlers/annotate-stage.d.ts +0 -35
- package/dist/lifecycle/handlers/annotate-stage.d.ts.map +0 -1
- package/dist/lifecycle/handlers/annotate-stage.js +0 -387
- package/dist/lifecycle/handlers/annotate-stage.js.map +0 -1
- package/dist/lifecycle/handlers/baseline-handlers.d.ts +0 -12
- package/dist/lifecycle/handlers/baseline-handlers.d.ts.map +0 -1
- package/dist/lifecycle/handlers/baseline-handlers.js +0 -281
- package/dist/lifecycle/handlers/baseline-handlers.js.map +0 -1
- package/dist/lifecycle/handlers/enrich-runtime-result.d.ts +0 -3
- package/dist/lifecycle/handlers/enrich-runtime-result.d.ts.map +0 -1
- package/dist/lifecycle/handlers/enrich-runtime-result.js +0 -239
- package/dist/lifecycle/handlers/enrich-runtime-result.js.map +0 -1
- package/dist/lifecycle/handlers/implement-stage.d.ts +0 -10
- package/dist/lifecycle/handlers/implement-stage.d.ts.map +0 -1
- package/dist/lifecycle/handlers/implement-stage.js +0 -228
- package/dist/lifecycle/handlers/implement-stage.js.map +0 -1
- package/dist/lifecycle/handlers/prepare-execution-context-handler.d.ts +0 -13
- package/dist/lifecycle/handlers/prepare-execution-context-handler.d.ts.map +0 -1
- package/dist/lifecycle/handlers/prepare-execution-context-handler.js +0 -61
- package/dist/lifecycle/handlers/prepare-execution-context-handler.js.map +0 -1
- package/dist/lifecycle/handlers/read-route-implementer.d.ts +0 -52
- package/dist/lifecycle/handlers/read-route-implementer.d.ts.map +0 -1
- package/dist/lifecycle/handlers/read-route-implementer.js +0 -109
- package/dist/lifecycle/handlers/read-route-implementer.js.map +0 -1
- package/dist/lifecycle/handlers/register-context-block-handlers.d.ts +0 -4
- package/dist/lifecycle/handlers/register-context-block-handlers.d.ts.map +0 -1
- package/dist/lifecycle/handlers/register-context-block-handlers.js +0 -35
- package/dist/lifecycle/handlers/register-context-block-handlers.js.map +0 -1
- package/dist/lifecycle/handlers/review-fix-stage.d.ts +0 -9
- package/dist/lifecycle/handlers/review-fix-stage.d.ts.map +0 -1
- package/dist/lifecycle/handlers/review-fix-stage.js +0 -75
- package/dist/lifecycle/handlers/review-fix-stage.js.map +0 -1
- package/dist/lifecycle/handlers/terminal-handlers.d.ts +0 -61
- package/dist/lifecycle/handlers/terminal-handlers.d.ts.map +0 -1
- package/dist/lifecycle/handlers/terminal-handlers.js +0 -339
- package/dist/lifecycle/handlers/terminal-handlers.js.map +0 -1
- package/dist/lifecycle/lifecycle-context.d.ts +0 -109
- package/dist/lifecycle/lifecycle-context.d.ts.map +0 -1
- package/dist/lifecycle/lifecycle-context.js +0 -2
- package/dist/lifecycle/lifecycle-context.js.map +0 -1
- package/dist/lifecycle/lifecycle-dispatcher.d.ts +0 -35
- package/dist/lifecycle/lifecycle-dispatcher.d.ts.map +0 -1
- package/dist/lifecycle/lifecycle-dispatcher.js +0 -64
- package/dist/lifecycle/lifecycle-dispatcher.js.map +0 -1
- package/dist/lifecycle/lifecycle-driver.d.ts +0 -16
- package/dist/lifecycle/lifecycle-driver.d.ts.map +0 -1
- package/dist/lifecycle/lifecycle-driver.js +0 -334
- package/dist/lifecycle/lifecycle-driver.js.map +0 -1
- package/dist/lifecycle/merge-stage-stats.d.ts +0 -62
- package/dist/lifecycle/merge-stage-stats.d.ts.map +0 -1
- package/dist/lifecycle/merge-stage-stats.js +0 -136
- package/dist/lifecycle/merge-stage-stats.js.map +0 -1
- package/dist/lifecycle/normalize-output-targets.d.ts +0 -2
- package/dist/lifecycle/normalize-output-targets.d.ts.map +0 -1
- package/dist/lifecycle/normalize-output-targets.js +0 -14
- package/dist/lifecycle/normalize-output-targets.js.map +0 -1
- package/dist/lifecycle/perform-implementation.d.ts +0 -3
- package/dist/lifecycle/perform-implementation.d.ts.map +0 -1
- package/dist/lifecycle/perform-implementation.js +0 -371
- package/dist/lifecycle/perform-implementation.js.map +0 -1
- package/dist/lifecycle/read-only-subtype-spec.d.ts +0 -18
- package/dist/lifecycle/read-only-subtype-spec.d.ts.map +0 -1
- package/dist/lifecycle/read-only-subtype-spec.js +0 -2
- package/dist/lifecycle/read-only-subtype-spec.js.map +0 -1
- package/dist/lifecycle/review-verdict-mapping.d.ts +0 -16
- package/dist/lifecycle/review-verdict-mapping.d.ts.map +0 -1
- package/dist/lifecycle/review-verdict-mapping.js +0 -24
- package/dist/lifecycle/review-verdict-mapping.js.map +0 -1
- package/dist/lifecycle/shared-compute.d.ts +0 -14
- package/dist/lifecycle/shared-compute.d.ts.map +0 -1
- package/dist/lifecycle/shared-compute.js +0 -51
- package/dist/lifecycle/shared-compute.js.map +0 -1
- package/dist/lifecycle/stage-idle-tracker.d.ts +0 -14
- package/dist/lifecycle/stage-idle-tracker.d.ts.map +0 -1
- package/dist/lifecycle/stage-idle-tracker.js +0 -17
- package/dist/lifecycle/stage-idle-tracker.js.map +0 -1
- package/dist/lifecycle/stage-io.d.ts +0 -134
- package/dist/lifecycle/stage-io.d.ts.map +0 -1
- package/dist/lifecycle/stage-io.js +0 -9
- package/dist/lifecycle/stage-io.js.map +0 -1
- package/dist/lifecycle/stage-labels.d.ts +0 -7
- package/dist/lifecycle/stage-labels.d.ts.map +0 -1
- package/dist/lifecycle/stage-labels.js +0 -19
- package/dist/lifecycle/stage-labels.js.map +0 -1
- package/dist/lifecycle/stage-plan-builder.d.ts +0 -4
- package/dist/lifecycle/stage-plan-builder.d.ts.map +0 -1
- package/dist/lifecycle/stage-plan-builder.js +0 -157
- package/dist/lifecycle/stage-plan-builder.js.map +0 -1
- package/dist/lifecycle/stage-plan-types.d.ts +0 -131
- package/dist/lifecycle/stage-plan-types.d.ts.map +0 -1
- package/dist/lifecycle/stage-plan-types.js +0 -28
- package/dist/lifecycle/stage-plan-types.js.map +0 -1
- package/dist/lifecycle/stage-progression.d.ts +0 -6
- package/dist/lifecycle/stage-progression.d.ts.map +0 -1
- package/dist/lifecycle/stage-progression.js +0 -100
- package/dist/lifecycle/stage-progression.js.map +0 -1
- package/dist/lifecycle/task-executor.d.ts +0 -24
- package/dist/lifecycle/task-executor.d.ts.map +0 -1
- package/dist/lifecycle/task-executor.js +0 -365
- package/dist/lifecycle/task-executor.js.map +0 -1
- package/dist/lifecycle/task-runner.d.ts +0 -66
- package/dist/lifecycle/task-runner.d.ts.map +0 -1
- package/dist/lifecycle/task-runner.js +0 -334
- package/dist/lifecycle/task-runner.js.map +0 -1
- package/dist/lifecycle/tool-category.d.ts +0 -2
- package/dist/lifecycle/tool-category.d.ts.map +0 -1
- package/dist/lifecycle/tool-category.js +0 -6
- package/dist/lifecycle/tool-category.js.map +0 -1
- package/dist/lifecycle/tool-config-types.d.ts +0 -32
- package/dist/lifecycle/tool-config-types.d.ts.map +0 -1
- package/dist/lifecycle/tool-config-types.js +0 -2
- package/dist/lifecycle/tool-config-types.js.map +0 -1
- package/dist/lifecycle/warm-followup.d.ts +0 -3
- package/dist/lifecycle/warm-followup.d.ts.map +0 -1
- package/dist/lifecycle/warm-followup.js +0 -16
- package/dist/lifecycle/warm-followup.js.map +0 -1
- package/dist/lifecycle/worker-output-contract.d.ts +0 -22
- package/dist/lifecycle/worker-output-contract.d.ts.map +0 -1
- package/dist/lifecycle/worker-output-contract.js +0 -91
- package/dist/lifecycle/worker-output-contract.js.map +0 -1
- package/dist/lifecycle/write-goal-lock.d.ts +0 -29
- package/dist/lifecycle/write-goal-lock.d.ts.map +0 -1
- package/dist/lifecycle/write-goal-lock.js +0 -70
- package/dist/lifecycle/write-goal-lock.js.map +0 -1
- package/dist/providers/assemble-run-result.d.ts +0 -17
- package/dist/providers/assemble-run-result.d.ts.map +0 -1
- package/dist/providers/assemble-run-result.js +0 -52
- package/dist/providers/assemble-run-result.js.map +0 -1
- package/dist/providers/skill-resolver.d.ts +0 -17
- package/dist/providers/skill-resolver.d.ts.map +0 -1
- package/dist/providers/skill-resolver.js +0 -123
- package/dist/providers/skill-resolver.js.map +0 -1
- package/dist/reporting/batch-persister.d.ts +0 -4
- package/dist/reporting/batch-persister.d.ts.map +0 -1
- package/dist/reporting/batch-persister.js +0 -11
- package/dist/reporting/batch-persister.js.map +0 -1
- package/dist/reporting/commit-stage-runner.d.ts +0 -12
- package/dist/reporting/commit-stage-runner.d.ts.map +0 -1
- package/dist/reporting/commit-stage-runner.js +0 -43
- package/dist/reporting/commit-stage-runner.js.map +0 -1
- package/dist/reporting/derive-investigate-status.d.ts +0 -15
- package/dist/reporting/derive-investigate-status.d.ts.map +0 -1
- package/dist/reporting/derive-investigate-status.js +0 -23
- package/dist/reporting/derive-investigate-status.js.map +0 -1
- package/dist/reporting/extract-fenced-json.d.ts +0 -7
- package/dist/reporting/extract-fenced-json.d.ts.map +0 -1
- package/dist/reporting/extract-fenced-json.js +0 -17
- package/dist/reporting/extract-fenced-json.js.map +0 -1
- package/dist/reporting/findings-headline.d.ts +0 -12
- package/dist/reporting/findings-headline.d.ts.map +0 -1
- package/dist/reporting/findings-headline.js +0 -40
- package/dist/reporting/findings-headline.js.map +0 -1
- package/dist/reporting/findings-outcome.d.ts +0 -13
- package/dist/reporting/findings-outcome.d.ts.map +0 -1
- package/dist/reporting/findings-outcome.js +0 -22
- package/dist/reporting/findings-outcome.js.map +0 -1
- package/dist/reporting/headline-composer.d.ts +0 -29
- package/dist/reporting/headline-composer.d.ts.map +0 -1
- package/dist/reporting/headline-composer.js +0 -10
- package/dist/reporting/headline-composer.js.map +0 -1
- package/dist/reporting/headline-templates/delegate.d.ts +0 -3
- package/dist/reporting/headline-templates/delegate.d.ts.map +0 -1
- package/dist/reporting/headline-templates/delegate.js +0 -42
- package/dist/reporting/headline-templates/delegate.js.map +0 -1
- package/dist/reporting/headline-templates/execute-plan.d.ts +0 -3
- package/dist/reporting/headline-templates/execute-plan.d.ts.map +0 -1
- package/dist/reporting/headline-templates/execute-plan.js +0 -26
- package/dist/reporting/headline-templates/execute-plan.js.map +0 -1
- package/dist/reporting/headline-templates/investigate.d.ts +0 -13
- package/dist/reporting/headline-templates/investigate.d.ts.map +0 -1
- package/dist/reporting/headline-templates/investigate.js +0 -53
- package/dist/reporting/headline-templates/investigate.js.map +0 -1
- package/dist/reporting/headline-templates/journal-recall.d.ts +0 -3
- package/dist/reporting/headline-templates/journal-recall.d.ts.map +0 -1
- package/dist/reporting/headline-templates/journal-recall.js +0 -9
- package/dist/reporting/headline-templates/journal-recall.js.map +0 -1
- package/dist/reporting/headline-templates/journal.d.ts +0 -3
- package/dist/reporting/headline-templates/journal.d.ts.map +0 -1
- package/dist/reporting/headline-templates/journal.js +0 -17
- package/dist/reporting/headline-templates/journal.js.map +0 -1
- package/dist/reporting/headline-templates/research.d.ts +0 -3
- package/dist/reporting/headline-templates/research.d.ts.map +0 -1
- package/dist/reporting/headline-templates/research.js +0 -22
- package/dist/reporting/headline-templates/research.js.map +0 -1
- package/dist/reporting/headline-text.d.ts +0 -36
- package/dist/reporting/headline-text.d.ts.map +0 -1
- package/dist/reporting/headline-text.js +0 -73
- package/dist/reporting/headline-text.js.map +0 -1
- package/dist/reporting/report-parser-slots/delegate-report.d.ts +0 -8
- package/dist/reporting/report-parser-slots/delegate-report.d.ts.map +0 -1
- package/dist/reporting/report-parser-slots/delegate-report.js +0 -12
- package/dist/reporting/report-parser-slots/delegate-report.js.map +0 -1
- package/dist/reporting/report-parser-slots/execute-plan-report.d.ts +0 -11
- package/dist/reporting/report-parser-slots/execute-plan-report.d.ts.map +0 -1
- package/dist/reporting/report-parser-slots/execute-plan-report.js +0 -7
- package/dist/reporting/report-parser-slots/execute-plan-report.js.map +0 -1
- package/dist/reporting/report-parser-slots/investigate-report.d.ts +0 -52
- package/dist/reporting/report-parser-slots/investigate-report.d.ts.map +0 -1
- package/dist/reporting/report-parser-slots/investigate-report.js +0 -307
- package/dist/reporting/report-parser-slots/investigate-report.js.map +0 -1
- package/dist/reporting/report-parser-slots/journal-report.d.ts +0 -19
- package/dist/reporting/report-parser-slots/journal-report.d.ts.map +0 -1
- package/dist/reporting/report-parser-slots/journal-report.js +0 -13
- package/dist/reporting/report-parser-slots/journal-report.js.map +0 -1
- package/dist/reporting/report-parser-slots/no-structured-report.d.ts +0 -10
- package/dist/reporting/report-parser-slots/no-structured-report.d.ts.map +0 -1
- package/dist/reporting/report-parser-slots/no-structured-report.js +0 -13
- package/dist/reporting/report-parser-slots/no-structured-report.js.map +0 -1
- package/dist/reporting/report-parser-slots/research-report.d.ts +0 -31
- package/dist/reporting/report-parser-slots/research-report.d.ts.map +0 -1
- package/dist/reporting/report-parser-slots/research-report.js +0 -50
- package/dist/reporting/report-parser-slots/research-report.js.map +0 -1
- package/dist/reporting/response-envelope-builder.d.ts +0 -32
- package/dist/reporting/response-envelope-builder.d.ts.map +0 -1
- package/dist/reporting/response-envelope-builder.js +0 -26
- package/dist/reporting/response-envelope-builder.js.map +0 -1
- package/dist/reporting/severity.d.ts +0 -62
- package/dist/reporting/severity.d.ts.map +0 -1
- package/dist/reporting/severity.js +0 -93
- package/dist/reporting/severity.js.map +0 -1
- package/dist/reporting/structured-report-parser.d.ts +0 -9
- package/dist/reporting/structured-report-parser.d.ts.map +0 -1
- package/dist/reporting/structured-report-parser.js +0 -8
- package/dist/reporting/structured-report-parser.js.map +0 -1
- package/dist/reporting/terminal-block-registrar.d.ts +0 -14
- package/dist/reporting/terminal-block-registrar.d.ts.map +0 -1
- package/dist/reporting/terminal-block-registrar.js +0 -17
- package/dist/reporting/terminal-block-registrar.js.map +0 -1
- package/dist/reporting/terminal-report-markdown.d.ts +0 -13
- package/dist/reporting/terminal-report-markdown.d.ts.map +0 -1
- package/dist/reporting/terminal-report-markdown.js +0 -31
- package/dist/reporting/terminal-report-markdown.js.map +0 -1
- package/dist/research/research-pre-loop.d.ts +0 -22
- package/dist/research/research-pre-loop.d.ts.map +0 -1
- package/dist/research/research-pre-loop.js +0 -50
- package/dist/research/research-pre-loop.js.map +0 -1
- package/dist/routing/read-route-criteria.d.ts +0 -36
- package/dist/routing/read-route-criteria.d.ts.map +0 -1
- package/dist/routing/read-route-criteria.js +0 -71
- package/dist/routing/read-route-criteria.js.map +0 -1
- package/dist/stores/batch-cache.d.ts +0 -29
- package/dist/stores/batch-cache.d.ts.map +0 -1
- package/dist/stores/batch-cache.js +0 -89
- package/dist/stores/batch-cache.js.map +0 -1
- package/dist/stores/batch-registry.d.ts +0 -138
- package/dist/stores/batch-registry.d.ts.map +0 -1
- package/dist/stores/batch-registry.js +0 -205
- package/dist/stores/batch-registry.js.map +0 -1
- package/dist/tool-surface/register-all-tools.d.ts +0 -4
- package/dist/tool-surface/register-all-tools.d.ts.map +0 -1
- package/dist/tool-surface/register-all-tools.js +0 -35
- package/dist/tool-surface/register-all-tools.js.map +0 -1
- package/dist/tool-surface/tool-surface-registry.d.ts +0 -28
- package/dist/tool-surface/tool-surface-registry.d.ts.map +0 -1
- package/dist/tool-surface/tool-surface-registry.js +0 -16
- package/dist/tool-surface/tool-surface-registry.js.map +0 -1
- package/dist/tools/audit/brief-slot.d.ts +0 -15
- package/dist/tools/audit/brief-slot.d.ts.map +0 -1
- package/dist/tools/audit/brief-slot.js +0 -69
- package/dist/tools/audit/brief-slot.js.map +0 -1
- package/dist/tools/audit/implementer-criteria.d.ts +0 -62
- package/dist/tools/audit/implementer-criteria.d.ts.map +0 -1
- package/dist/tools/audit/implementer-criteria.js +0 -121
- package/dist/tools/audit/implementer-criteria.js.map +0 -1
- package/dist/tools/audit/plan-audit-criteria.d.ts +0 -35
- package/dist/tools/audit/plan-audit-criteria.d.ts.map +0 -1
- package/dist/tools/audit/plan-audit-criteria.js +0 -159
- package/dist/tools/audit/plan-audit-criteria.js.map +0 -1
- package/dist/tools/audit/schema.d.ts +0 -61
- package/dist/tools/audit/schema.d.ts.map +0 -1
- package/dist/tools/audit/schema.js +0 -21
- package/dist/tools/audit/schema.js.map +0 -1
- package/dist/tools/audit/skill-audit-criteria.d.ts +0 -9
- package/dist/tools/audit/skill-audit-criteria.d.ts.map +0 -1
- package/dist/tools/audit/skill-audit-criteria.js +0 -52
- package/dist/tools/audit/skill-audit-criteria.js.map +0 -1
- package/dist/tools/audit/spec-audit-criteria.d.ts +0 -9
- package/dist/tools/audit/spec-audit-criteria.d.ts.map +0 -1
- package/dist/tools/audit/spec-audit-criteria.js +0 -55
- package/dist/tools/audit/spec-audit-criteria.js.map +0 -1
- package/dist/tools/audit/subtypes.d.ts +0 -4
- package/dist/tools/audit/subtypes.d.ts.map +0 -1
- package/dist/tools/audit/subtypes.js +0 -69
- package/dist/tools/audit/subtypes.js.map +0 -1
- package/dist/tools/audit/tool-config.d.ts +0 -7
- package/dist/tools/audit/tool-config.d.ts.map +0 -1
- package/dist/tools/audit/tool-config.js +0 -60
- package/dist/tools/audit/tool-config.js.map +0 -1
- package/dist/tools/criteria-types.d.ts +0 -27
- package/dist/tools/criteria-types.d.ts.map +0 -1
- package/dist/tools/criteria-types.js +0 -25
- package/dist/tools/criteria-types.js.map +0 -1
- package/dist/tools/debug/brief-slot.d.ts +0 -15
- package/dist/tools/debug/brief-slot.d.ts.map +0 -1
- package/dist/tools/debug/brief-slot.js +0 -10
- package/dist/tools/debug/brief-slot.js.map +0 -1
- package/dist/tools/debug/implementer-criteria.d.ts +0 -45
- package/dist/tools/debug/implementer-criteria.d.ts.map +0 -1
- package/dist/tools/debug/implementer-criteria.js +0 -97
- package/dist/tools/debug/implementer-criteria.js.map +0 -1
- package/dist/tools/debug/schema.d.ts +0 -60
- package/dist/tools/debug/schema.d.ts.map +0 -1
- package/dist/tools/debug/schema.js +0 -17
- package/dist/tools/debug/schema.js.map +0 -1
- package/dist/tools/debug/subtypes.d.ts +0 -4
- package/dist/tools/debug/subtypes.d.ts.map +0 -1
- package/dist/tools/debug/subtypes.js +0 -26
- package/dist/tools/debug/subtypes.js.map +0 -1
- package/dist/tools/debug/tool-config.d.ts +0 -7
- package/dist/tools/debug/tool-config.d.ts.map +0 -1
- package/dist/tools/debug/tool-config.js +0 -55
- package/dist/tools/debug/tool-config.js.map +0 -1
- package/dist/tools/delegate/brief-slot.d.ts +0 -20
- package/dist/tools/delegate/brief-slot.d.ts.map +0 -1
- package/dist/tools/delegate/brief-slot.js +0 -31
- package/dist/tools/delegate/brief-slot.js.map +0 -1
- package/dist/tools/delegate/implementer-criteria.d.ts +0 -53
- package/dist/tools/delegate/implementer-criteria.d.ts.map +0 -1
- package/dist/tools/delegate/implementer-criteria.js +0 -99
- package/dist/tools/delegate/implementer-criteria.js.map +0 -1
- package/dist/tools/delegate/schema.d.ts +0 -70
- package/dist/tools/delegate/schema.d.ts.map +0 -1
- package/dist/tools/delegate/schema.js +0 -24
- package/dist/tools/delegate/schema.js.map +0 -1
- package/dist/tools/delegate/tool-config.d.ts +0 -7
- package/dist/tools/delegate/tool-config.d.ts.map +0 -1
- package/dist/tools/delegate/tool-config.js +0 -47
- package/dist/tools/delegate/tool-config.js.map +0 -1
- package/dist/tools/execute-plan/barrel.d.ts +0 -2
- package/dist/tools/execute-plan/barrel.d.ts.map +0 -1
- package/dist/tools/execute-plan/barrel.js +0 -7
- package/dist/tools/execute-plan/barrel.js.map +0 -1
- package/dist/tools/execute-plan/brief-slot.d.ts +0 -25
- package/dist/tools/execute-plan/brief-slot.d.ts.map +0 -1
- package/dist/tools/execute-plan/brief-slot.js +0 -124
- package/dist/tools/execute-plan/brief-slot.js.map +0 -1
- package/dist/tools/execute-plan/implementer-criteria.d.ts +0 -57
- package/dist/tools/execute-plan/implementer-criteria.d.ts.map +0 -1
- package/dist/tools/execute-plan/implementer-criteria.js +0 -108
- package/dist/tools/execute-plan/implementer-criteria.js.map +0 -1
- package/dist/tools/execute-plan/plan-extractor.d.ts +0 -21
- package/dist/tools/execute-plan/plan-extractor.d.ts.map +0 -1
- package/dist/tools/execute-plan/plan-extractor.js +0 -96
- package/dist/tools/execute-plan/plan-extractor.js.map +0 -1
- package/dist/tools/execute-plan/tool-config.d.ts +0 -68
- package/dist/tools/execute-plan/tool-config.d.ts.map +0 -1
- package/dist/tools/execute-plan/tool-config.js +0 -58
- package/dist/tools/execute-plan/tool-config.js.map +0 -1
- package/dist/tools/index.d.ts +0 -8
- package/dist/tools/index.d.ts.map +0 -1
- package/dist/tools/index.js +0 -14
- package/dist/tools/index.js.map +0 -1
- package/dist/tools/investigate/brief-slot.d.ts +0 -15
- package/dist/tools/investigate/brief-slot.d.ts.map +0 -1
- package/dist/tools/investigate/brief-slot.js +0 -9
- package/dist/tools/investigate/brief-slot.js.map +0 -1
- package/dist/tools/investigate/implementer-criteria.d.ts +0 -52
- package/dist/tools/investigate/implementer-criteria.d.ts.map +0 -1
- package/dist/tools/investigate/implementer-criteria.js +0 -106
- package/dist/tools/investigate/implementer-criteria.js.map +0 -1
- package/dist/tools/investigate/schema.d.ts +0 -62
- package/dist/tools/investigate/schema.d.ts.map +0 -1
- package/dist/tools/investigate/schema.js +0 -13
- package/dist/tools/investigate/schema.js.map +0 -1
- package/dist/tools/investigate/subtypes.d.ts +0 -4
- package/dist/tools/investigate/subtypes.d.ts.map +0 -1
- package/dist/tools/investigate/subtypes.js +0 -26
- package/dist/tools/investigate/subtypes.js.map +0 -1
- package/dist/tools/investigate/tool-config.d.ts +0 -8
- package/dist/tools/investigate/tool-config.d.ts.map +0 -1
- package/dist/tools/investigate/tool-config.js +0 -68
- package/dist/tools/investigate/tool-config.js.map +0 -1
- package/dist/tools/journal/recall/brief-slot.d.ts +0 -7
- package/dist/tools/journal/recall/brief-slot.d.ts.map +0 -1
- package/dist/tools/journal/recall/brief-slot.js +0 -5
- package/dist/tools/journal/recall/brief-slot.js.map +0 -1
- package/dist/tools/journal/recall/implementer-criteria.d.ts +0 -9
- package/dist/tools/journal/recall/implementer-criteria.d.ts.map +0 -1
- package/dist/tools/journal/recall/implementer-criteria.js +0 -23
- package/dist/tools/journal/recall/implementer-criteria.js.map +0 -1
- package/dist/tools/journal/recall/schema.d.ts +0 -54
- package/dist/tools/journal/recall/schema.d.ts.map +0 -1
- package/dist/tools/journal/recall/schema.js +0 -10
- package/dist/tools/journal/recall/schema.js.map +0 -1
- package/dist/tools/journal/recall/subtypes.d.ts +0 -4
- package/dist/tools/journal/recall/subtypes.d.ts.map +0 -1
- package/dist/tools/journal/recall/subtypes.js +0 -25
- package/dist/tools/journal/recall/subtypes.js.map +0 -1
- package/dist/tools/journal/recall/tool-config.d.ts +0 -8
- package/dist/tools/journal/recall/tool-config.d.ts.map +0 -1
- package/dist/tools/journal/recall/tool-config.js +0 -46
- package/dist/tools/journal/recall/tool-config.js.map +0 -1
- package/dist/tools/journal/record/brief-slot.d.ts +0 -15
- package/dist/tools/journal/record/brief-slot.d.ts.map +0 -1
- package/dist/tools/journal/record/brief-slot.js +0 -28
- package/dist/tools/journal/record/brief-slot.js.map +0 -1
- package/dist/tools/journal/record/implementer-criteria.d.ts +0 -6
- package/dist/tools/journal/record/implementer-criteria.d.ts.map +0 -1
- package/dist/tools/journal/record/implementer-criteria.js +0 -20
- package/dist/tools/journal/record/implementer-criteria.js.map +0 -1
- package/dist/tools/journal/record/schema.d.ts +0 -55
- package/dist/tools/journal/record/schema.d.ts.map +0 -1
- package/dist/tools/journal/record/schema.js +0 -12
- package/dist/tools/journal/record/schema.js.map +0 -1
- package/dist/tools/journal/record/tool-config.d.ts +0 -7
- package/dist/tools/journal/record/tool-config.d.ts.map +0 -1
- package/dist/tools/journal/record/tool-config.js +0 -47
- package/dist/tools/journal/record/tool-config.js.map +0 -1
- package/dist/tools/read-route-prompt.d.ts +0 -113
- package/dist/tools/read-route-prompt.d.ts.map +0 -1
- package/dist/tools/read-route-prompt.js +0 -86
- package/dist/tools/read-route-prompt.js.map +0 -1
- package/dist/tools/register-context-block/schema.d.ts +0 -8
- package/dist/tools/register-context-block/schema.d.ts.map +0 -1
- package/dist/tools/register-context-block/schema.js +0 -7
- package/dist/tools/register-context-block/schema.js.map +0 -1
- package/dist/tools/register-context-block/tool-config.d.ts +0 -6
- package/dist/tools/register-context-block/tool-config.d.ts.map +0 -1
- package/dist/tools/register-context-block/tool-config.js +0 -39
- package/dist/tools/register-context-block/tool-config.js.map +0 -1
- package/dist/tools/research/brief-slot.d.ts +0 -37
- package/dist/tools/research/brief-slot.d.ts.map +0 -1
- package/dist/tools/research/brief-slot.js +0 -68
- package/dist/tools/research/brief-slot.js.map +0 -1
- package/dist/tools/research/implementer-criteria.d.ts +0 -13
- package/dist/tools/research/implementer-criteria.d.ts.map +0 -1
- package/dist/tools/research/implementer-criteria.js +0 -109
- package/dist/tools/research/implementer-criteria.js.map +0 -1
- package/dist/tools/research/schema.d.ts +0 -11
- package/dist/tools/research/schema.d.ts.map +0 -1
- package/dist/tools/research/schema.js +0 -59
- package/dist/tools/research/schema.js.map +0 -1
- package/dist/tools/research/subtypes.d.ts +0 -4
- package/dist/tools/research/subtypes.d.ts.map +0 -1
- package/dist/tools/research/subtypes.js +0 -25
- package/dist/tools/research/subtypes.js.map +0 -1
- package/dist/tools/research/tool-config.d.ts +0 -8
- package/dist/tools/research/tool-config.d.ts.map +0 -1
- package/dist/tools/research/tool-config.js +0 -48
- package/dist/tools/research/tool-config.js.map +0 -1
- package/dist/tools/research/two-turn-driver.d.ts +0 -16
- package/dist/tools/research/two-turn-driver.d.ts.map +0 -1
- package/dist/tools/research/two-turn-driver.js +0 -41
- package/dist/tools/research/two-turn-driver.js.map +0 -1
- package/dist/tools/retry/brief-slot.d.ts +0 -7
- package/dist/tools/retry/brief-slot.d.ts.map +0 -1
- package/dist/tools/retry/brief-slot.js +0 -3
- package/dist/tools/retry/brief-slot.js.map +0 -1
- package/dist/tools/retry/schema.d.ts +0 -53
- package/dist/tools/retry/schema.d.ts.map +0 -1
- package/dist/tools/retry/schema.js +0 -12
- package/dist/tools/retry/schema.js.map +0 -1
- package/dist/tools/retry/tool-config.d.ts +0 -7
- package/dist/tools/retry/tool-config.d.ts.map +0 -1
- package/dist/tools/retry/tool-config.js +0 -79
- package/dist/tools/retry/tool-config.js.map +0 -1
- package/dist/tools/review/brief-slot.d.ts +0 -11
- package/dist/tools/review/brief-slot.d.ts.map +0 -1
- package/dist/tools/review/brief-slot.js +0 -23
- package/dist/tools/review/brief-slot.js.map +0 -1
- package/dist/tools/review/implementer-criteria.d.ts +0 -48
- package/dist/tools/review/implementer-criteria.d.ts.map +0 -1
- package/dist/tools/review/implementer-criteria.js +0 -108
- package/dist/tools/review/implementer-criteria.js.map +0 -1
- package/dist/tools/review/schema.d.ts +0 -64
- package/dist/tools/review/schema.d.ts.map +0 -1
- package/dist/tools/review/schema.js +0 -17
- package/dist/tools/review/schema.js.map +0 -1
- package/dist/tools/review/subtypes.d.ts +0 -4
- package/dist/tools/review/subtypes.d.ts.map +0 -1
- package/dist/tools/review/subtypes.js +0 -27
- package/dist/tools/review/subtypes.js.map +0 -1
- package/dist/tools/review/tool-config.d.ts +0 -7
- package/dist/tools/review/tool-config.d.ts.map +0 -1
- package/dist/tools/review/tool-config.js +0 -94
- package/dist/tools/review/tool-config.js.map +0 -1
- package/dist/tools/shared-output.d.ts +0 -56
- package/dist/tools/shared-output.d.ts.map +0 -1
- package/dist/tools/shared-output.js +0 -33
- package/dist/tools/shared-output.js.map +0 -1
- package/dist/types/review-policy.d.ts +0 -2
- package/dist/types/review-policy.d.ts.map +0 -1
- package/dist/types/review-policy.js +0 -2
- package/dist/types/review-policy.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"review-fix-stage.js","sourceRoot":"","sources":["../../../src/lifecycle/handlers/review-fix-stage.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,61 +0,0 @@
|
|
|
1
|
-
import type { LifecycleState } from '../stage-plan-types.js';
|
|
2
|
-
import type { StageGate, TerminalPayload } from '../stage-io.js';
|
|
3
|
-
/**
|
|
4
|
-
* Terminal-stage handlers (#45 Step 6).
|
|
5
|
-
*
|
|
6
|
-
* Four StagePlan rows:
|
|
7
|
-
* - 5.3.5 register_terminal_block — registers a context block carrying
|
|
8
|
-
* the terminal RuntimeRunResult so /retry can reference the prior task's
|
|
9
|
-
* output.
|
|
10
|
-
* - 5.4 emit_task_terminal — emits the per-task terminal event
|
|
11
|
-
* (task_done_summary) through ctx.bus.
|
|
12
|
-
* - 5.5 persist_to_batch_registry — marks the per-task state in the
|
|
13
|
-
* batch registry.
|
|
14
|
-
* - 6.1 flush_telemetry — drains the telemetry queue so failure
|
|
15
|
-
* events are persisted before the per-task terminal stage exits.
|
|
16
|
-
*
|
|
17
|
-
* Each handler is idempotent on its state-slot guard:
|
|
18
|
-
* - state.contextBlockId
|
|
19
|
-
* - state.taskTerminalEmitted
|
|
20
|
-
* - state.batchRegistryPersisted
|
|
21
|
-
* - state.telemetryFlushed
|
|
22
|
-
*
|
|
23
|
-
* Defensive no-ops on missing state.executionContext or
|
|
24
|
-
* state.lastRunResult. All four rows are marked runOnTerminal in the
|
|
25
|
-
* StagePlan, so they fire even on hard-fail paths.
|
|
26
|
-
*/
|
|
27
|
-
export declare function registerTerminalBlockHandler(state: LifecycleState): void;
|
|
28
|
-
export declare function emitTaskTerminalHandler(state: LifecycleState): void;
|
|
29
|
-
export declare function persistToBatchRegistryHandler(state: LifecycleState): void;
|
|
30
|
-
/**
|
|
31
|
-
* Row 5.6 — record_task_completed → envelope.seal.
|
|
32
|
-
*
|
|
33
|
-
* Seals the per-task envelope to finalize all accumulated state and
|
|
34
|
-
* trigger telemetry upload via TelemetryUploader subscriber. Idempotent on
|
|
35
|
-
* state.taskCompletedRecorded. No-op when the server hasn't supplied an
|
|
36
|
-
* envelope (CLI/test paths).
|
|
37
|
-
*/
|
|
38
|
-
export declare function recordTaskCompletedHandler(state: LifecycleState): Promise<void>;
|
|
39
|
-
export declare function flushTelemetryHandler(state: LifecycleState): Promise<void>;
|
|
40
|
-
/**
|
|
41
|
-
* v5 unified `terminalHandler` — single entry point that runs the five
|
|
42
|
-
* terminal side effects in idempotency-safe order and returns the
|
|
43
|
-
* `StageGate<TerminalPayload>` the v5 driver expects.
|
|
44
|
-
*
|
|
45
|
-
* The five sub-handlers above are this function's building blocks: one per
|
|
46
|
-
* side effect, kept individually exported so each can be unit-tested in
|
|
47
|
-
* isolation (tests/lifecycle/handlers/terminal-handlers.test.ts) and so
|
|
48
|
-
* observability AC tests can exercise per-side-effect failures
|
|
49
|
-
* (tests/acceptance/stage-io-observability.test.ts). The unified
|
|
50
|
-
* `terminalHandler` is what STAGE_PLAN's `terminal` stage actually invokes;
|
|
51
|
-
* it sequences the five sub-handlers in idempotency-safe order and folds
|
|
52
|
-
* their state-slot guards into the TerminalPayload shape. Per spec §4.7 the side-effect map carries one
|
|
53
|
-
* boolean per side effect — true = succeeded at least once for this state
|
|
54
|
-
* instance; false = attempted-and-failed or never-attempted-because-context-
|
|
55
|
-
* missing.
|
|
56
|
-
*
|
|
57
|
-
* Idempotency: re-invocation MUST be safe and return the same payload (each
|
|
58
|
-
* sub-handler short-circuits on its state-slot guard, e.g. `state.contextBlockId`).
|
|
59
|
-
*/
|
|
60
|
-
export declare function terminalHandler(state: LifecycleState): Promise<StageGate<TerminalPayload>>;
|
|
61
|
-
//# sourceMappingURL=terminal-handlers.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"terminal-handlers.d.ts","sourceRoot":"","sources":["../../../src/lifecycle/handlers/terminal-handlers.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAG7D,OAAO,KAAK,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAUjE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH,wBAAgB,4BAA4B,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI,CAyBxE;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI,CAUnE;AAMD,wBAAgB,6BAA6B,CAAC,KAAK,EAAE,cAAc,GAAG,IAAI,CAkBzE;AAED;;;;;;;GAOG;AACH,wBAAsB,0BAA0B,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAwFrF;AAoED,wBAAsB,qBAAqB,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAkBhF;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,wBAAsB,eAAe,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,SAAS,CAAC,eAAe,CAAC,CAAC,CAwDhG"}
|
|
@@ -1,339 +0,0 @@
|
|
|
1
|
-
import { findModelProfile } from '../../config/model-profile-registry.js';
|
|
2
|
-
import { getRealFilesChanged } from '../../bounded-execution/real-diff.js';
|
|
3
|
-
import { deriveCompletion, extractCompletionInputs } from '../derive-completion.js';
|
|
4
|
-
import { TerminalBlockRegistrar } from '../../reporting/terminal-block-registrar.js';
|
|
5
|
-
import { renderTerminalReportMarkdown } from '../../reporting/terminal-report-markdown.js';
|
|
6
|
-
import { WRITE_ROUTES } from '../stage-io.js';
|
|
7
|
-
import { findEscapedWrites } from '../file-confinement-check.js';
|
|
8
|
-
/**
|
|
9
|
-
* Terminal-stage handlers (#45 Step 6).
|
|
10
|
-
*
|
|
11
|
-
* Four StagePlan rows:
|
|
12
|
-
* - 5.3.5 register_terminal_block — registers a context block carrying
|
|
13
|
-
* the terminal RuntimeRunResult so /retry can reference the prior task's
|
|
14
|
-
* output.
|
|
15
|
-
* - 5.4 emit_task_terminal — emits the per-task terminal event
|
|
16
|
-
* (task_done_summary) through ctx.bus.
|
|
17
|
-
* - 5.5 persist_to_batch_registry — marks the per-task state in the
|
|
18
|
-
* batch registry.
|
|
19
|
-
* - 6.1 flush_telemetry — drains the telemetry queue so failure
|
|
20
|
-
* events are persisted before the per-task terminal stage exits.
|
|
21
|
-
*
|
|
22
|
-
* Each handler is idempotent on its state-slot guard:
|
|
23
|
-
* - state.contextBlockId
|
|
24
|
-
* - state.taskTerminalEmitted
|
|
25
|
-
* - state.batchRegistryPersisted
|
|
26
|
-
* - state.telemetryFlushed
|
|
27
|
-
*
|
|
28
|
-
* Defensive no-ops on missing state.executionContext or
|
|
29
|
-
* state.lastRunResult. All four rows are marked runOnTerminal in the
|
|
30
|
-
* StagePlan, so they fire even on hard-fail paths.
|
|
31
|
-
*/
|
|
32
|
-
export function registerTerminalBlockHandler(state) {
|
|
33
|
-
if (state.contextBlockId)
|
|
34
|
-
return;
|
|
35
|
-
const ctx = state.executionContext;
|
|
36
|
-
const envelope = ctx?.envelope;
|
|
37
|
-
const store = ctx?.contextBlockStore;
|
|
38
|
-
const registry = ctx?.batchRegistry;
|
|
39
|
-
if (!envelope || !store || !registry)
|
|
40
|
-
return;
|
|
41
|
-
const snap = envelope.snapshot();
|
|
42
|
-
// Write routes (delegate / execute-plan / retry) produce code + a commit;
|
|
43
|
-
// their durable record is the diff, not a prose block. No registration.
|
|
44
|
-
if (WRITE_ROUTES.includes(snap.route))
|
|
45
|
-
return;
|
|
46
|
-
try {
|
|
47
|
-
const markdown = renderTerminalReportMarkdown(snap);
|
|
48
|
-
const registrar = new TerminalBlockRegistrar(store, registry);
|
|
49
|
-
const id = registrar.register({
|
|
50
|
-
batchId: snap.batchId, taskIndex: snap.taskIndex, route: snap.route, markdown,
|
|
51
|
-
});
|
|
52
|
-
if (id)
|
|
53
|
-
state.contextBlockId = id;
|
|
54
|
-
}
|
|
55
|
-
catch {
|
|
56
|
-
// Best-effort: registration is advisory and must not block seal/flush/persist.
|
|
57
|
-
envelope.recordValidationWarning({
|
|
58
|
-
rule: 'TerminalBlockRegisterFailed',
|
|
59
|
-
path: `${snap.route}:${snap.batchId}:${snap.taskIndex}`,
|
|
60
|
-
});
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
export function emitTaskTerminalHandler(state) {
|
|
64
|
-
if (state.taskTerminalEmitted)
|
|
65
|
-
return;
|
|
66
|
-
const ctx = state.executionContext;
|
|
67
|
-
if (!ctx)
|
|
68
|
-
return;
|
|
69
|
-
// The old `task_completed` named event was replaced by the sealed-envelope
|
|
70
|
-
// snapshot push inside envelope.seal() (see recordTaskCompletedHandler); the
|
|
71
|
-
// TelemetryUploader subscriber picks up that snapshot and runs toWireRecord.
|
|
72
|
-
// No bus.emit happens here — the envelope IS the event. This handler now only
|
|
73
|
-
// marks the idempotency flag so re-runs are no-ops.
|
|
74
|
-
state.taskTerminalEmitted = true;
|
|
75
|
-
}
|
|
76
|
-
export function persistToBatchRegistryHandler(state) {
|
|
77
|
-
if (state.batchRegistryPersisted)
|
|
78
|
-
return;
|
|
79
|
-
const ctx = state.executionContext;
|
|
80
|
-
if (!ctx)
|
|
81
|
-
return;
|
|
82
|
-
const registry = ctx.batchRegistry;
|
|
83
|
-
if (!registry || typeof registry.complete !== 'function') {
|
|
84
|
-
state.batchRegistryPersisted = true; // structural ack
|
|
85
|
-
return;
|
|
86
|
-
}
|
|
87
|
-
try {
|
|
88
|
-
registry.complete(ctx.taskIndex, state.lastRunResult);
|
|
89
|
-
}
|
|
90
|
-
catch {
|
|
91
|
-
// Persistence failure is non-fatal at the per-task boundary; retention
|
|
92
|
-
// sweep (row 6.3) reconciles via timer.
|
|
93
|
-
}
|
|
94
|
-
state.batchRegistryPersisted = true;
|
|
95
|
-
}
|
|
96
|
-
/**
|
|
97
|
-
* Row 5.6 — record_task_completed → envelope.seal.
|
|
98
|
-
*
|
|
99
|
-
* Seals the per-task envelope to finalize all accumulated state and
|
|
100
|
-
* trigger telemetry upload via TelemetryUploader subscriber. Idempotent on
|
|
101
|
-
* state.taskCompletedRecorded. No-op when the server hasn't supplied an
|
|
102
|
-
* envelope (CLI/test paths).
|
|
103
|
-
*/
|
|
104
|
-
export async function recordTaskCompletedHandler(state) {
|
|
105
|
-
if (state.taskCompletedRecorded)
|
|
106
|
-
return;
|
|
107
|
-
const ctx = state.executionContext;
|
|
108
|
-
if (!ctx)
|
|
109
|
-
return;
|
|
110
|
-
const envelope = ctx.envelope;
|
|
111
|
-
if (!envelope) {
|
|
112
|
-
state.taskCompletedRecorded = true;
|
|
113
|
-
return;
|
|
114
|
-
}
|
|
115
|
-
const real = await getRealFilesChanged(state);
|
|
116
|
-
const last = state.lastRunResult;
|
|
117
|
-
if (real.source === 'git_error') {
|
|
118
|
-
envelope.recordValidationWarning({ rule: 'GitDiffUnavailable', path: 'realFilesChanged' });
|
|
119
|
-
}
|
|
120
|
-
const completionInputs = extractCompletionInputs(state);
|
|
121
|
-
// Use deriveCompletion when implement gate is populated. commitKind being
|
|
122
|
-
// undefined is legitimate (read routes have no commit stage) — deriveCompletion
|
|
123
|
-
// handles those branches internally. Only fall back to workerStatus when the
|
|
124
|
-
// implement gate itself is missing (lifecycle never started, brief_too_vague paths).
|
|
125
|
-
const hasGateInputs = completionInputs.implementOutcome !== undefined;
|
|
126
|
-
let sealStatus;
|
|
127
|
-
if (hasGateInputs) {
|
|
128
|
-
const { completed } = deriveCompletion(completionInputs);
|
|
129
|
-
const hasConcerns = (state.executionContext?.envelope?.snapshot()?.findings ?? []).length > 0;
|
|
130
|
-
sealStatus = completed ? (hasConcerns ? 'done_with_concerns' : 'done') : 'failed';
|
|
131
|
-
}
|
|
132
|
-
else {
|
|
133
|
-
// Fallback only when implement gate is missing entirely (brief_too_vague etc.)
|
|
134
|
-
const ws = (state.workerStatus ?? last?.workerStatus);
|
|
135
|
-
sealStatus = ws === 'done' ? 'done' : ws === 'done_with_concerns' ? 'done_with_concerns' : 'failed';
|
|
136
|
-
}
|
|
137
|
-
// Commit outcome (authoritative, from the commit gate) — computed BEFORE the
|
|
138
|
-
// confinement guard so it can corroborate the worker's self-reported writes.
|
|
139
|
-
// Carried onto the envelope below so the response's structuredReport surfaces
|
|
140
|
-
// the real SHA/message (the response is built from envelope snapshots).
|
|
141
|
-
const commitGate = state.gates?.['commit'];
|
|
142
|
-
const commitPayload = (commitGate?.outcome === 'advance' ? commitGate.payload : null);
|
|
143
|
-
let didCommit = commitPayload?.kind === 'committed';
|
|
144
|
-
// Goal mode (no commit gate): the agent self-commits, so the commit SHA /
|
|
145
|
-
// message come from the goal report (git HEAD of baseSha..HEAD), surfaced via
|
|
146
|
-
// state.structuredReport by the annotate goal-branch.
|
|
147
|
-
const goalReport = state.structuredReport;
|
|
148
|
-
const isGoal = Boolean(state.task?.goal);
|
|
149
|
-
let goalCommitSha = null;
|
|
150
|
-
let goalCommitMessage = null;
|
|
151
|
-
if (isGoal && goalReport?.commitSha) {
|
|
152
|
-
didCommit = true;
|
|
153
|
-
goalCommitSha = goalReport.commitSha;
|
|
154
|
-
goalCommitMessage = goalReport.commitMessage ?? null;
|
|
155
|
-
}
|
|
156
|
-
// Confinement guard: a worker must only write under its dispatched cwd. A
|
|
157
|
-
// reported write that escaped (e.g. into a sibling git worktree / the daemon's
|
|
158
|
-
// startup cwd) is a real mislocation. BUT the worker-reported filesWritten
|
|
159
|
-
// string is unreliable — LLM workers routinely report normalized/relative/
|
|
160
|
-
// hallucinated absolute paths (e.g. "/repo/src/x.ts" or "/workspace/src/x.ts")
|
|
161
|
-
// for a file actually written under the dispatched cwd. So hard-fail ONLY when
|
|
162
|
-
// the worker claims an escaped write AND no commit landed in cwd (didCommit =
|
|
163
|
-
// false → the write is not in this repo → it genuinely wrote elsewhere). When a
|
|
164
|
-
// commit DID land in cwd, the self-reported path is a hallucination — record an
|
|
165
|
-
// advisory warning rather than failing a legitimate, committed task on an
|
|
166
|
-
// unreliable self-report string. (The git commit is the authoritative signal.)
|
|
167
|
-
let escapeErrorCode = null;
|
|
168
|
-
const escaped = findEscapedWrites(last?.filesWritten ?? [], ctx.cwd);
|
|
169
|
-
if (escaped.length > 0) {
|
|
170
|
-
envelope.recordValidationWarning({ rule: 'WorkerWriteEscapedCwd', path: escaped.join(', ') });
|
|
171
|
-
if (!didCommit) {
|
|
172
|
-
sealStatus = 'failed';
|
|
173
|
-
escapeErrorCode = 'tool_sandbox_cwd_violation';
|
|
174
|
-
}
|
|
175
|
-
}
|
|
176
|
-
envelope.seal({
|
|
177
|
-
status: sealStatus,
|
|
178
|
-
terminalAt: new Date().toISOString(),
|
|
179
|
-
stopReason: last?.terminationReason?.cause ?? null,
|
|
180
|
-
structuredError: last?.structuredError ?? null,
|
|
181
|
-
errorCode: escapeErrorCode ?? last?.errorCode ?? null,
|
|
182
|
-
realFilesChanged: real.files,
|
|
183
|
-
commitSha: didCommit ? (goalCommitSha ?? commitPayload?.commitSha ?? null) : null,
|
|
184
|
-
commitMessage: didCommit ? (goalCommitMessage ?? commitPayload?.commitMessage ?? null) : null,
|
|
185
|
-
commitSkipReason: commitPayload?.kind === 'no_op' ? (commitPayload?.reason ?? null) : null,
|
|
186
|
-
contextBlockId: state.contextBlockId ?? null,
|
|
187
|
-
});
|
|
188
|
-
state.taskCompletedRecorded = true;
|
|
189
|
-
}
|
|
190
|
-
/**
|
|
191
|
-
* Synthesize an `implementing` stage entry from top-level RuntimeRunResult fields
|
|
192
|
-
* when the per-stage tracker hasn't populated it. Without this, the wire
|
|
193
|
-
* event ships with `stages: []` for every task, which violates the backend's
|
|
194
|
-
* R2.1 invariant ("empty stages only allowed for brief_too_vague|error")
|
|
195
|
-
* for any task that succeeded — every upload would 400.
|
|
196
|
-
*
|
|
197
|
-
* This is a fallback; it does not replace stats already populated by the
|
|
198
|
-
* runner-shell or lifecycle stage tracker.
|
|
199
|
-
*/
|
|
200
|
-
function ensureImplementingStage(rr, ctx) {
|
|
201
|
-
// Even when no LLM call ever fires (runner_crash, all_tiers_unavailable,
|
|
202
|
-
// dispatcher-no-result), the configured implementer model is known up
|
|
203
|
-
// front via ctx.implementerProvider.config. Stamp it into the synthesized
|
|
204
|
-
// stage and the top-level rr.models so the wire row reports the *intended*
|
|
205
|
-
// model instead of the literal 'custom' fallback in event-builder.
|
|
206
|
-
const fallbackModel = ctx.implementerProvider?.config?.model ?? null;
|
|
207
|
-
const fallbackFamily = fallbackModel ? findModelProfile(fallbackModel).family : null;
|
|
208
|
-
if (rr.models === undefined && fallbackModel !== null) {
|
|
209
|
-
rr.models = {
|
|
210
|
-
implementer: fallbackModel,
|
|
211
|
-
specReviewer: undefined,
|
|
212
|
-
qualityReviewer: undefined,
|
|
213
|
-
};
|
|
214
|
-
}
|
|
215
|
-
const existing = (rr.stageStats?.implementing);
|
|
216
|
-
if (existing?.entered)
|
|
217
|
-
return;
|
|
218
|
-
const usage = rr.usage ?? { inputTokens: 0, outputTokens: 0, cachedReadTokens: 0, cachedNonReadTokens: 0 };
|
|
219
|
-
const synthesized = {
|
|
220
|
-
stage: 'implementing',
|
|
221
|
-
entered: true,
|
|
222
|
-
durationMs: rr.durationMs ?? 0,
|
|
223
|
-
costUSD: rr.cost?.costUSD ?? null,
|
|
224
|
-
agentTier: ctx.assignedTier ?? 'standard',
|
|
225
|
-
modelFamily: fallbackFamily,
|
|
226
|
-
model: fallbackModel,
|
|
227
|
-
maxIdleMs: 0,
|
|
228
|
-
totalIdleMs: 0,
|
|
229
|
-
activityEvents: 0,
|
|
230
|
-
inputTokens: usage.inputTokens ?? 0,
|
|
231
|
-
outputTokens: usage.outputTokens ?? 0,
|
|
232
|
-
cachedReadTokens: usage.cachedReadTokens ?? 0,
|
|
233
|
-
cachedNonReadTokens: usage.cachedNonReadTokens ?? 0,
|
|
234
|
-
turnCount: rr.turns ?? 0,
|
|
235
|
-
filesWrittenCount: Array.isArray(rr.filesWritten) ? rr.filesWritten.length : 0,
|
|
236
|
-
directoriesListed: 0,
|
|
237
|
-
};
|
|
238
|
-
rr.stageStats = {
|
|
239
|
-
...(rr.stageStats ?? {}),
|
|
240
|
-
implementing: synthesized,
|
|
241
|
-
};
|
|
242
|
-
}
|
|
243
|
-
export async function flushTelemetryHandler(state) {
|
|
244
|
-
if (state.telemetryFlushed)
|
|
245
|
-
return;
|
|
246
|
-
const ctx = state.executionContext;
|
|
247
|
-
if (!ctx)
|
|
248
|
-
return;
|
|
249
|
-
const recorder = ctx.recorder;
|
|
250
|
-
if (!recorder || typeof recorder.flush !== 'function') {
|
|
251
|
-
state.telemetryFlushed = true;
|
|
252
|
-
return;
|
|
253
|
-
}
|
|
254
|
-
try {
|
|
255
|
-
await recorder.flush();
|
|
256
|
-
}
|
|
257
|
-
catch {
|
|
258
|
-
// Telemetry flush is best-effort; the recorder retains in-memory queue
|
|
259
|
-
// for the next opportunity.
|
|
260
|
-
}
|
|
261
|
-
state.telemetryFlushed = true;
|
|
262
|
-
}
|
|
263
|
-
/**
|
|
264
|
-
* v5 unified `terminalHandler` — single entry point that runs the five
|
|
265
|
-
* terminal side effects in idempotency-safe order and returns the
|
|
266
|
-
* `StageGate<TerminalPayload>` the v5 driver expects.
|
|
267
|
-
*
|
|
268
|
-
* The five sub-handlers above are this function's building blocks: one per
|
|
269
|
-
* side effect, kept individually exported so each can be unit-tested in
|
|
270
|
-
* isolation (tests/lifecycle/handlers/terminal-handlers.test.ts) and so
|
|
271
|
-
* observability AC tests can exercise per-side-effect failures
|
|
272
|
-
* (tests/acceptance/stage-io-observability.test.ts). The unified
|
|
273
|
-
* `terminalHandler` is what STAGE_PLAN's `terminal` stage actually invokes;
|
|
274
|
-
* it sequences the five sub-handlers in idempotency-safe order and folds
|
|
275
|
-
* their state-slot guards into the TerminalPayload shape. Per spec §4.7 the side-effect map carries one
|
|
276
|
-
* boolean per side effect — true = succeeded at least once for this state
|
|
277
|
-
* instance; false = attempted-and-failed or never-attempted-because-context-
|
|
278
|
-
* missing.
|
|
279
|
-
*
|
|
280
|
-
* Idempotency: re-invocation MUST be safe and return the same payload (each
|
|
281
|
-
* sub-handler short-circuits on its state-slot guard, e.g. `state.contextBlockId`).
|
|
282
|
-
*/
|
|
283
|
-
export async function terminalHandler(state) {
|
|
284
|
-
const t0 = Date.now();
|
|
285
|
-
const flags = {
|
|
286
|
-
contextBlockId: null,
|
|
287
|
-
telemetryFlushed: false,
|
|
288
|
-
batchRegistryPersisted: false,
|
|
289
|
-
taskTerminalEmitted: false,
|
|
290
|
-
projectCleanupTicked: false,
|
|
291
|
-
};
|
|
292
|
-
try {
|
|
293
|
-
registerTerminalBlockHandler(state);
|
|
294
|
-
flags.contextBlockId = state.contextBlockId ?? null;
|
|
295
|
-
}
|
|
296
|
-
catch {
|
|
297
|
-
/* leave null on failure */
|
|
298
|
-
}
|
|
299
|
-
try {
|
|
300
|
-
await flushTelemetryHandler(state);
|
|
301
|
-
flags.telemetryFlushed = state.telemetryFlushed === true;
|
|
302
|
-
}
|
|
303
|
-
catch {
|
|
304
|
-
/* leave false */
|
|
305
|
-
}
|
|
306
|
-
try {
|
|
307
|
-
persistToBatchRegistryHandler(state);
|
|
308
|
-
flags.batchRegistryPersisted = state.batchRegistryPersisted === true;
|
|
309
|
-
}
|
|
310
|
-
catch {
|
|
311
|
-
/* leave false */
|
|
312
|
-
}
|
|
313
|
-
try {
|
|
314
|
-
emitTaskTerminalHandler(state);
|
|
315
|
-
flags.taskTerminalEmitted = state.taskTerminalEmitted === true;
|
|
316
|
-
}
|
|
317
|
-
catch {
|
|
318
|
-
/* leave false */
|
|
319
|
-
}
|
|
320
|
-
try {
|
|
321
|
-
await recordTaskCompletedHandler(state);
|
|
322
|
-
flags.projectCleanupTicked = true; // record-completed doubles as project activity tick
|
|
323
|
-
}
|
|
324
|
-
catch {
|
|
325
|
-
/* leave false */
|
|
326
|
-
}
|
|
327
|
-
return {
|
|
328
|
-
outcome: 'advance',
|
|
329
|
-
payload: flags,
|
|
330
|
-
telemetry: {
|
|
331
|
-
stageLabel: 'terminal',
|
|
332
|
-
durationMs: Date.now() - t0,
|
|
333
|
-
costUSD: 0,
|
|
334
|
-
turnsUsed: 0,
|
|
335
|
-
stopReason: 'normal',
|
|
336
|
-
},
|
|
337
|
-
};
|
|
338
|
-
}
|
|
339
|
-
//# sourceMappingURL=terminal-handlers.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"terminal-handlers.js","sourceRoot":"","sources":["../../../src/lifecycle/handlers/terminal-handlers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
import type { Provider, TaskSpec, MultiModelConfig, AgentType } from '../types.js';
|
|
2
|
-
import type { Session } from '../types/run-result.js';
|
|
3
|
-
import type { EnvelopeBus } from '../events/envelope-bus.js';
|
|
4
|
-
import type { ActivityTracker, HeartbeatTickInfo } from '../bounded-execution/activity-tracker.js';
|
|
5
|
-
import type { WallClockGuard } from '../bounded-execution/wall-clock-guard.js';
|
|
6
|
-
import type { ProjectContext } from '../stores/project-context-registry.js';
|
|
7
|
-
import type { ContextBlockStore } from '../stores/context-block-tool.js';
|
|
8
|
-
import type { TaskEnvelopeStore } from '../events/task-envelope.js';
|
|
9
|
-
/**
|
|
10
|
-
* Spec C10 ExecutionContext — the typed shared state for a per-task run.
|
|
11
|
-
* Populated by `prepare_execution_context` (row 2.5) and read by every
|
|
12
|
-
* downstream handler.
|
|
13
|
-
*
|
|
14
|
-
* Inputs (Group A) are read-only after row 2.5 completes.
|
|
15
|
-
* Bus + heartbeat (Group B) carry mutable runtime state for the watchdog.
|
|
16
|
-
* Cost (Group C) is tracked via stateless priceTokens() in bounded-execution and aggregated inline in events/to-wire-record.ts; not held on ExecutionContext.
|
|
17
|
-
*
|
|
18
|
-
* Per-chain accumulators (Group D) live on `LifecycleState` itself, not
|
|
19
|
-
* here, because each chain handler mutates them as it fires; ExecutionContext
|
|
20
|
-
* is for stable per-task wiring.
|
|
21
|
-
*/
|
|
22
|
-
export interface ExecutionContext {
|
|
23
|
-
task: TaskSpec;
|
|
24
|
-
taskIndex: number;
|
|
25
|
-
config: MultiModelConfig;
|
|
26
|
-
cwd: string;
|
|
27
|
-
route: string;
|
|
28
|
-
client: string;
|
|
29
|
-
mainModel: string | null;
|
|
30
|
-
/** Tier the dispatcher assigned to this task. Stays fixed; rotation lives in per-round handlers via pickReviewer/pickEscalation. */
|
|
31
|
-
assignedTier: AgentType;
|
|
32
|
-
implementerProvider: Provider;
|
|
33
|
-
/** Map of available tier → provider, keyed by AgentType. */
|
|
34
|
-
providers: Partial<Record<AgentType, Provider>>;
|
|
35
|
-
/**
|
|
36
|
-
* v4.4 session source-of-truth. Each call returns the (lazy-created)
|
|
37
|
-
* Session for the given tier — the SAME instance across stages within
|
|
38
|
-
* one task, so codex CLI's `codex exec resume` and claude-agent-sdk's
|
|
39
|
-
* `resume: sessionId` both reload the prior conversation. Throws if
|
|
40
|
-
* the tier has no configured provider.
|
|
41
|
-
*
|
|
42
|
-
* Cleanup: `closeSessions()` is invoked by task-runner.ts's finally
|
|
43
|
-
* block; handlers MUST NOT call session.close() themselves.
|
|
44
|
-
*/
|
|
45
|
-
getSession(tier: AgentType): Session;
|
|
46
|
-
closeSessions(): Promise<void>;
|
|
47
|
-
/** Returns OS pids of every currently-open session's CLI subprocess (if any).
|
|
48
|
-
* Used by shutdown drain to SIGKILL stragglers when closeSessions() exceeds
|
|
49
|
-
* its grace window. Empty array when no sessions are open OR the providers
|
|
50
|
-
* do not spawn subprocesses (e.g. in-process SDK clients). */
|
|
51
|
-
getActivePids(): number[];
|
|
52
|
-
timing: {
|
|
53
|
-
startMs: number;
|
|
54
|
-
timeoutMs: number;
|
|
55
|
-
deadlineMs: number;
|
|
56
|
-
stallTimeoutMs: number;
|
|
57
|
-
};
|
|
58
|
-
/** Wall-clock budget guard. Throws GuardError once budgetMs since task start
|
|
59
|
-
* is exceeded. Stage entries + tool-call boundaries call checkOrThrow(). */
|
|
60
|
-
wallClockGuard: WallClockGuard;
|
|
61
|
-
stall: {
|
|
62
|
-
controller: AbortController;
|
|
63
|
-
/** ms timestamp of the most recent runner event; updated by markRunnerEvent. */
|
|
64
|
-
lastEventAtMs: number;
|
|
65
|
-
/** Set true when stall fires; prevents duplicate aborts. */
|
|
66
|
-
fired: boolean;
|
|
67
|
-
};
|
|
68
|
-
implementerToolMode: TaskSpec['tools'];
|
|
69
|
-
bus: EnvelopeBus | undefined;
|
|
70
|
-
heartbeat: ActivityTracker | undefined;
|
|
71
|
-
/** Logger sink — Step 6 (terminal handlers) will use this for final flush.
|
|
72
|
-
* Minimal structural shape; the full HttpServerLog interface was removed in the
|
|
73
|
-
* events unification refactor. Only `error(kind, err)` is consumed by callers. */
|
|
74
|
-
logger?: {
|
|
75
|
-
error: (kind: string, err: unknown) => void;
|
|
76
|
-
};
|
|
77
|
-
/** Per-task event envelope for recording lifecycle mutations. */
|
|
78
|
-
envelope: TaskEnvelopeStore;
|
|
79
|
-
/**
|
|
80
|
-
* Heartbeat tick recorder — server-supplied callback that turns
|
|
81
|
-
* HeartbeatTickInfo into BatchRegistry.updateRunningHeadlineSnapshot.
|
|
82
|
-
* Optional (CLI/local clients don't have a BatchRegistry).
|
|
83
|
-
*/
|
|
84
|
-
recordHeartbeat?: (tick: HeartbeatTickInfo) => void;
|
|
85
|
-
/** Telemetry recorder — server-only, used at terminal to record task.completed. */
|
|
86
|
-
recorder?: {
|
|
87
|
-
recordTaskCompleted: (params: {
|
|
88
|
-
route: string;
|
|
89
|
-
taskSpec: TaskSpec;
|
|
90
|
-
runResult: import('../types.js').RuntimeRunResult;
|
|
91
|
-
realFilesChanged: string[];
|
|
92
|
-
client: string;
|
|
93
|
-
mainModel: string | null;
|
|
94
|
-
reviewPolicy?: 'full' | 'quality_only' | 'diff_only' | 'none';
|
|
95
|
-
}) => void;
|
|
96
|
-
};
|
|
97
|
-
outputTargets: string[];
|
|
98
|
-
/** Per-project runtime state — used by executor-layer consumers (delegate, etc.). */
|
|
99
|
-
projectContext?: ProjectContext;
|
|
100
|
-
/** Context block store — used by executor-layer consumers for intake expansion. */
|
|
101
|
-
contextBlockStore?: ContextBlockStore;
|
|
102
|
-
/** BatchId owning this execution — threaded so ActivityTracker can tag ticks. */
|
|
103
|
-
batchId?: string;
|
|
104
|
-
/** Optional BatchRegistry — when set, task-runner attaches this ctx onto
|
|
105
|
-
* the entry so shutdown drain can close sessions across all in-flight
|
|
106
|
-
* tasks. Server callers pass this through HandlerDeps; CLI callers omit. */
|
|
107
|
-
batchRegistry?: import('../stores/batch-registry.js').BatchRegistry;
|
|
108
|
-
}
|
|
109
|
-
//# sourceMappingURL=lifecycle-context.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"lifecycle-context.d.ts","sourceRoot":"","sources":["../../src/lifecycle/lifecycle-context.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"lifecycle-context.js","sourceRoot":"","sources":["../../src/lifecycle/lifecycle-context.ts"],"names":[],"mappings":""}
|
|
@@ -1,35 +0,0 @@
|
|
|
1
|
-
import type { LifecycleState } from './stage-plan-types.js';
|
|
2
|
-
import type { ToolCategory } from './tool-category.js';
|
|
3
|
-
import type { ComposePayload } from './stage-io.js';
|
|
4
|
-
export interface DispatchInput {
|
|
5
|
-
route: string;
|
|
6
|
-
toolCategory: ToolCategory;
|
|
7
|
-
rawRequest: unknown;
|
|
8
|
-
/**
|
|
9
|
-
* Tool-specific extras the handlers may need. Plumbed via state spread so
|
|
10
|
-
* route-specific data (task, executionContext, projectContext) reaches
|
|
11
|
-
* stage handlers.
|
|
12
|
-
*/
|
|
13
|
-
context?: Record<string, unknown>;
|
|
14
|
-
}
|
|
15
|
-
export interface DispatchOutput {
|
|
16
|
-
status: number;
|
|
17
|
-
/** ComposePayload on 200; a route error object on 4xx (e.g. missing_context_block). */
|
|
18
|
-
body: ComposePayload | {
|
|
19
|
-
error: string;
|
|
20
|
-
missing?: string[];
|
|
21
|
-
message?: string;
|
|
22
|
-
};
|
|
23
|
-
/**
|
|
24
|
-
* Final lifecycle state — exposed so task-runner.ts and other batch-level
|
|
25
|
-
* orchestrators can read `state.lastRunResult` (the RuntimeRunResult
|
|
26
|
-
* mirror) for downstream consumers (recorder, headline composer) that
|
|
27
|
-
* still expect the legacy fat shape.
|
|
28
|
-
*/
|
|
29
|
-
finalState?: LifecycleState;
|
|
30
|
-
}
|
|
31
|
-
export declare class LifecycleDispatcher {
|
|
32
|
-
dispatch(input: DispatchInput): Promise<DispatchOutput>;
|
|
33
|
-
private initialState;
|
|
34
|
-
}
|
|
35
|
-
//# sourceMappingURL=lifecycle-dispatcher.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"lifecycle-dispatcher.d.ts","sourceRoot":"","sources":["../../src/lifecycle/lifecycle-dispatcher.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAC5D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oBAAoB,CAAC;AAEvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,eAAe,CAAC;AAEpD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,YAAY,CAAC;IAC3B,UAAU,EAAE,OAAO,CAAC;IACpB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,cAAc;IAC7B,MAAM,EAAE,MAAM,CAAC;IACf,uFAAuF;IACvF,IAAI,EAAE,cAAc,GAAG;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;IAC/E;;;;;OAKG;IACH,UAAU,CAAC,EAAE,cAAc,CAAC;CAC7B;AAED,qBAAa,mBAAmB;IACxB,QAAQ,CAAC,KAAK,EAAE,aAAa,GAAG,OAAO,CAAC,cAAc,CAAC;IAqC7D,OAAO,CAAC,YAAY;CAYrB"}
|
|
@@ -1,64 +0,0 @@
|
|
|
1
|
-
// v5 lifecycle dispatcher.
|
|
2
|
-
//
|
|
3
|
-
// Single dispatch path: walk STAGE_PLAN via runStagePlan, return the v5
|
|
4
|
-
// ComposePayload from gates['compose']. No more LifecycleDriver class, no
|
|
5
|
-
// more StagePlan rows, no more handlerKey map, no more executor closure.
|
|
6
|
-
import { runStagePlan } from './lifecycle-driver.js';
|
|
7
|
-
import { STAGE_PLAN } from './stage-plan-builder.js';
|
|
8
|
-
import { ContextBlockNotFoundError } from '../stores/context-block-tool.js';
|
|
9
|
-
export class LifecycleDispatcher {
|
|
10
|
-
async dispatch(input) {
|
|
11
|
-
try {
|
|
12
|
-
const finalState = await runStagePlan(STAGE_PLAN, this.initialState(input));
|
|
13
|
-
const composeGate = finalState.gates?.['compose'];
|
|
14
|
-
let body;
|
|
15
|
-
if (input.route === 'register-context-block') {
|
|
16
|
-
// Register-context-block wire shape is the minimal { id } envelope,
|
|
17
|
-
// NOT the full ComposePayload. Lift it from the compose payload's
|
|
18
|
-
// blockId field (set by composeHandler from gates['register-block']).
|
|
19
|
-
const rawBody = (composeGate?.outcome === 'advance' && composeGate.payload)
|
|
20
|
-
? composeGate.payload
|
|
21
|
-
: finalState.responseEnvelope;
|
|
22
|
-
const envelope = finalState.responseEnvelope;
|
|
23
|
-
if (envelope && typeof envelope === 'object' && 'id' in envelope) {
|
|
24
|
-
body = envelope;
|
|
25
|
-
}
|
|
26
|
-
else if (envelope && typeof envelope === 'object' && 'error' in envelope) {
|
|
27
|
-
body = envelope;
|
|
28
|
-
}
|
|
29
|
-
else if (rawBody?.blockId) {
|
|
30
|
-
body = { error: '', message: '' }; // placeholder, overridden below
|
|
31
|
-
body = { id: rawBody.blockId };
|
|
32
|
-
}
|
|
33
|
-
else {
|
|
34
|
-
body = rawBody;
|
|
35
|
-
}
|
|
36
|
-
}
|
|
37
|
-
else {
|
|
38
|
-
body = (composeGate?.outcome === 'advance' && composeGate.payload)
|
|
39
|
-
? composeGate.payload
|
|
40
|
-
: finalState.responseEnvelope;
|
|
41
|
-
}
|
|
42
|
-
return { status: 200, body, finalState };
|
|
43
|
-
}
|
|
44
|
-
catch (e) {
|
|
45
|
-
if (e instanceof ContextBlockNotFoundError) {
|
|
46
|
-
return { status: 400, body: { error: 'missing_context_block', missing: [e.id] } };
|
|
47
|
-
}
|
|
48
|
-
throw e;
|
|
49
|
-
}
|
|
50
|
-
}
|
|
51
|
-
initialState(input) {
|
|
52
|
-
return {
|
|
53
|
-
terminal: false,
|
|
54
|
-
reviewPolicy: input.rawRequest?.reviewPolicy ?? 'full',
|
|
55
|
-
shutdownInProgress: false,
|
|
56
|
-
route: input.route,
|
|
57
|
-
toolCategory: input.toolCategory,
|
|
58
|
-
request: input.rawRequest,
|
|
59
|
-
...(input.context ?? {}),
|
|
60
|
-
projectContext: input.context?.projectContext,
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
}
|
|
64
|
-
//# sourceMappingURL=lifecycle-dispatcher.js.map
|