@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,100 +0,0 @@
|
|
|
1
|
-
import { STAGE_PLAN } from './stage-plan-builder.js';
|
|
2
|
-
import { HUMAN_LABEL } from './stage-labels.js';
|
|
3
|
-
/** v5 stage name → human-readable label. `null` = hidden from the user-facing
|
|
4
|
-
* bracket (the stage runs but doesn't get its own slot in the polling
|
|
5
|
-
* headline; prepare + register-block + compose are pure plumbing). */
|
|
6
|
-
const STAGE_LABELS = {
|
|
7
|
-
prepare: null,
|
|
8
|
-
'register-block': null,
|
|
9
|
-
implement: HUMAN_LABEL.implementing,
|
|
10
|
-
review: HUMAN_LABEL.review,
|
|
11
|
-
rework: HUMAN_LABEL.rework,
|
|
12
|
-
commit: HUMAN_LABEL.committing,
|
|
13
|
-
annotate: HUMAN_LABEL.annotating,
|
|
14
|
-
compose: null,
|
|
15
|
-
terminal: 'Finalizing',
|
|
16
|
-
};
|
|
17
|
-
/** Tool route → (ToolCategory, default reviewPolicy). Keep in sync with
|
|
18
|
-
* task-runner.ts:toolCategoryForRoute. */
|
|
19
|
-
const ROUTE_PROFILE = {
|
|
20
|
-
delegate: { category: 'artifact_producing', reviewPolicy: 'full' },
|
|
21
|
-
'execute-plan': { category: 'artifact_producing', reviewPolicy: 'full' },
|
|
22
|
-
retry: { category: 'artifact_producing', reviewPolicy: 'full' },
|
|
23
|
-
'journal-record': { category: 'artifact_producing', reviewPolicy: 'full' },
|
|
24
|
-
audit: { category: 'read_only', reviewPolicy: 'none' },
|
|
25
|
-
review: { category: 'read_only', reviewPolicy: 'none' },
|
|
26
|
-
debug: { category: 'read_only', reviewPolicy: 'none' },
|
|
27
|
-
investigate: { category: 'read_only', reviewPolicy: 'none' },
|
|
28
|
-
research: { category: 'read_only', reviewPolicy: 'none' },
|
|
29
|
-
'journal-recall': { category: 'read_only', reviewPolicy: 'none' },
|
|
30
|
-
'register-context-block': { category: 'assist', reviewPolicy: 'none' },
|
|
31
|
-
};
|
|
32
|
-
/** Simulated state used to filter STAGE_PLAN's shouldRun predicates so the
|
|
33
|
-
* denominator reflects the maximum reachable stage set for the route
|
|
34
|
-
* (the worst-case ramp the user can see). */
|
|
35
|
-
function simulatedState(route, category, reviewPolicy) {
|
|
36
|
-
return {
|
|
37
|
-
terminal: false,
|
|
38
|
-
reviewPolicy,
|
|
39
|
-
shutdownInProgress: false,
|
|
40
|
-
route,
|
|
41
|
-
toolCategory: category,
|
|
42
|
-
readOnlyTask: category === 'read_only',
|
|
43
|
-
reviewVerdict: 'changes_required',
|
|
44
|
-
gates: {
|
|
45
|
-
implement: { outcome: 'advance', payload: { workerSelfAssessment: 'done', filesChanged: ['x'] }, telemetry: { stageLabel: 'implement', durationMs: 0, costUSD: 0, turnsUsed: 0, stopReason: 'normal' } },
|
|
46
|
-
review: { outcome: 'advance', payload: { verdict: 'changes_required' }, telemetry: { stageLabel: 'review', durationMs: 0, costUSD: 0, turnsUsed: 0, stopReason: 'normal' } },
|
|
47
|
-
},
|
|
48
|
-
lastRunResult: { filesWritten: ['x'] },
|
|
49
|
-
filesChanged: ['x'],
|
|
50
|
-
halted: false,
|
|
51
|
-
};
|
|
52
|
-
}
|
|
53
|
-
/** Build the user-facing stage label list for a route by walking STAGE_PLAN
|
|
54
|
-
* and including each stage whose Layer-1 (applicableRoutes) AND Layer-2
|
|
55
|
-
* (shouldRun under simulated state) both pass. */
|
|
56
|
-
export function stageOrderForRoute(route) {
|
|
57
|
-
const profile = ROUTE_PROFILE[route];
|
|
58
|
-
if (!profile)
|
|
59
|
-
return ['Finalizing'];
|
|
60
|
-
const state = simulatedState(route, profile.category, profile.reviewPolicy);
|
|
61
|
-
const ordered = [];
|
|
62
|
-
for (const stage of STAGE_PLAN) {
|
|
63
|
-
const def = stage;
|
|
64
|
-
const applies = def.applicableRoutes === 'all'
|
|
65
|
-
? true
|
|
66
|
-
: def.applicableRoutes.includes(route);
|
|
67
|
-
if (!applies)
|
|
68
|
-
continue;
|
|
69
|
-
let runnable = false;
|
|
70
|
-
try {
|
|
71
|
-
runnable = def.shouldRun(state).run;
|
|
72
|
-
}
|
|
73
|
-
catch {
|
|
74
|
-
runnable = false;
|
|
75
|
-
}
|
|
76
|
-
if (!runnable)
|
|
77
|
-
continue;
|
|
78
|
-
const label = STAGE_LABELS[def.name];
|
|
79
|
-
if (label === null)
|
|
80
|
-
continue; // hidden from bracket
|
|
81
|
-
const final = label ?? def.name;
|
|
82
|
-
if (!ordered.includes(final))
|
|
83
|
-
ordered.push(final);
|
|
84
|
-
}
|
|
85
|
-
return ordered.length > 0 ? ordered : ['Finalizing'];
|
|
86
|
-
}
|
|
87
|
-
const cache = new Map();
|
|
88
|
-
export const STAGE_ORDER_BY_ROUTE = new Proxy({}, {
|
|
89
|
-
get(_target, prop) {
|
|
90
|
-
if (typeof prop !== 'string')
|
|
91
|
-
return undefined;
|
|
92
|
-
let cached = cache.get(prop);
|
|
93
|
-
if (!cached) {
|
|
94
|
-
cached = stageOrderForRoute(prop);
|
|
95
|
-
cache.set(prop, cached);
|
|
96
|
-
}
|
|
97
|
-
return cached;
|
|
98
|
-
},
|
|
99
|
-
});
|
|
100
|
-
//# sourceMappingURL=stage-progression.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"stage-progression.js","sourceRoot":"","sources":["../../src/lifecycle/stage-progression.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import type { ToolConfig } from './tool-config-types.js';
|
|
2
|
-
import type { ExecutionContext } from './lifecycle-context.js';
|
|
3
|
-
import type { ExecutorOutput } from './executor-output-types.js';
|
|
4
|
-
/**
|
|
5
|
-
* Generic per-task orchestrator. Takes a ToolConfig (which encodes all
|
|
6
|
-
* tool-specific behavior: brief compilation, TaskSpec building, headline
|
|
7
|
-
* composition, report parsing), an ExecutionContext, and raw tool input,
|
|
8
|
-
* and runs the standard pipeline:
|
|
9
|
-
*
|
|
10
|
-
* 1. Compile briefs via config.briefSlot(input)
|
|
11
|
-
* 2. Resolve agent via resolveAgent(config.agentType, config)
|
|
12
|
-
* 3. Build TaskSpec per brief via config.buildTaskSpec
|
|
13
|
-
* 4. Dispatch each task via runTaskViaDispatcher
|
|
14
|
-
* 5. Auto-register context block from usable outputs
|
|
15
|
-
* 6. Compute batch timings + aggregate cost
|
|
16
|
-
* 7. Parse structured report via config.reportSchema
|
|
17
|
-
* 8. Compose headline via config.headlineTemplate
|
|
18
|
-
* 9. Map review verdicts
|
|
19
|
-
* 10. Return ExecutorOutput
|
|
20
|
-
*
|
|
21
|
-
* Target: ≤ 200 LOC. If it grows past 250, factor helpers back out.
|
|
22
|
-
*/
|
|
23
|
-
export declare function executeTask<Input, Brief, Report>(config: ToolConfig<Input, Brief, Report>, ctx: ExecutionContext, input: Input): Promise<ExecutorOutput>;
|
|
24
|
-
//# sourceMappingURL=task-executor.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"task-executor.d.ts","sourceRoot":"","sources":["../../src/lifecycle/task-executor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAgB,MAAM,wBAAwB,CAAC;AACvE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAC/D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAgBjE;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAsB,WAAW,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EACpD,MAAM,EAAE,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,CAAC,EACxC,GAAG,EAAE,gBAAgB,EACrB,KAAK,EAAE,KAAK,GACX,OAAO,CAAC,cAAc,CAAC,CA2UzB"}
|
|
@@ -1,365 +0,0 @@
|
|
|
1
|
-
import { randomUUID } from 'node:crypto';
|
|
2
|
-
import { resolveAgent } from '../providers/agent-resolver.js';
|
|
3
|
-
import { runTaskViaDispatcher, applyParallelSafetySuffixIfNeeded } from './task-runner.js';
|
|
4
|
-
import { computeTimings, computeAggregateCost } from './shared-compute.js';
|
|
5
|
-
import { autoRegisterContextBlock } from './auto-register-context-block.js';
|
|
6
|
-
import { mapReviewVerdicts } from './review-verdict-mapping.js';
|
|
7
|
-
import { notApplicable } from '../reporting/not-applicable.js';
|
|
8
|
-
import { parseStructuredReport } from '../reporting/structured-report.js';
|
|
9
|
-
import { expandContextBlocks } from '../stores/expand-context-blocks.js';
|
|
10
|
-
import { buildCancelledResult } from './build-cancelled-result.js';
|
|
11
|
-
import { TaskEnvelopeStore } from '../events/task-envelope.js';
|
|
12
|
-
import { withWriteGoalLock, WriteGoalBusyError, DEFAULT_WRITE_GOAL_LOCK_TIMEOUT_MS } from './write-goal-lock.js';
|
|
13
|
-
import { resolveGitToplevel } from './git-toplevel.js';
|
|
14
|
-
import { checkGoalShape } from './goal-preconditions.js';
|
|
15
|
-
/**
|
|
16
|
-
* Generic per-task orchestrator. Takes a ToolConfig (which encodes all
|
|
17
|
-
* tool-specific behavior: brief compilation, TaskSpec building, headline
|
|
18
|
-
* composition, report parsing), an ExecutionContext, and raw tool input,
|
|
19
|
-
* and runs the standard pipeline:
|
|
20
|
-
*
|
|
21
|
-
* 1. Compile briefs via config.briefSlot(input)
|
|
22
|
-
* 2. Resolve agent via resolveAgent(config.agentType, config)
|
|
23
|
-
* 3. Build TaskSpec per brief via config.buildTaskSpec
|
|
24
|
-
* 4. Dispatch each task via runTaskViaDispatcher
|
|
25
|
-
* 5. Auto-register context block from usable outputs
|
|
26
|
-
* 6. Compute batch timings + aggregate cost
|
|
27
|
-
* 7. Parse structured report via config.reportSchema
|
|
28
|
-
* 8. Compose headline via config.headlineTemplate
|
|
29
|
-
* 9. Map review verdicts
|
|
30
|
-
* 10. Return ExecutorOutput
|
|
31
|
-
*
|
|
32
|
-
* Target: ≤ 200 LOC. If it grows past 250, factor helpers back out.
|
|
33
|
-
*/
|
|
34
|
-
export async function executeTask(config, ctx, input) {
|
|
35
|
-
// ── Step 1: Compile briefs ──
|
|
36
|
-
const briefs = config.briefSlot(input);
|
|
37
|
-
if (!Array.isArray(briefs) || briefs.length === 0) {
|
|
38
|
-
// No tasks to run — return an empty-ok envelope.
|
|
39
|
-
return emptyEnvelope(config.name, ctx);
|
|
40
|
-
}
|
|
41
|
-
// ── Step 2: Build TaskSpecs from briefs, then expand contextBlockIds ──
|
|
42
|
-
// Gap 1 cache-invariant fix (4.0.3+): batch cache MUST store the EXPANDED,
|
|
43
|
-
// contextBlockIds-stripped task. If we cache the original (with
|
|
44
|
-
// contextBlockIds) and the contextBlockStore loses entries before retry,
|
|
45
|
-
// retry resolves stale IDs and fails. expandContextBlocks strips
|
|
46
|
-
// contextBlockIds from the returned task, so subsequent expansion calls
|
|
47
|
-
// are a no-op (idempotent).
|
|
48
|
-
const tasks = briefs.map((brief) => {
|
|
49
|
-
const built = config.buildTaskSpec(brief, ctx, input);
|
|
50
|
-
return ctx.contextBlockStore
|
|
51
|
-
? expandContextBlocks(built, ctx.contextBlockStore)
|
|
52
|
-
: built;
|
|
53
|
-
});
|
|
54
|
-
// ── Step 3: Resolve agent per task ──
|
|
55
|
-
// Each task's agentType (set by the brief slot) selects its provider.
|
|
56
|
-
// For tools where agentTypeOverridable=false, every brief carries the
|
|
57
|
-
// tool default and this collapses to one resolution per agent slot;
|
|
58
|
-
// for tools where it's true (delegate, retry), this honors per-task
|
|
59
|
-
// overrides instead of forcing the whole batch onto one tier.
|
|
60
|
-
const resolvedPerTask = tasks.map((task) => {
|
|
61
|
-
try {
|
|
62
|
-
return resolveAgent(task.agentType ?? config.agentType, ctx.config);
|
|
63
|
-
}
|
|
64
|
-
catch (err) {
|
|
65
|
-
return {
|
|
66
|
-
error: err instanceof Error ? err.message : String(err),
|
|
67
|
-
};
|
|
68
|
-
}
|
|
69
|
-
});
|
|
70
|
-
// Store TaskSpecs in the per-project batch cache so retry can
|
|
71
|
-
// reconstruct original tasks without re-invoking the brief slot.
|
|
72
|
-
// (Tasks here are already expanded — see comment above.)
|
|
73
|
-
if (ctx.batchId && ctx.projectContext?.batchCache) {
|
|
74
|
-
ctx.projectContext.batchCache.remember(ctx.batchId, tasks);
|
|
75
|
-
}
|
|
76
|
-
// ── Step 4: Dispatch ──
|
|
77
|
-
const mainModel = ctx.mainModel;
|
|
78
|
-
const startMs = Date.now();
|
|
79
|
-
const buildCrashResult = (msg) => ({
|
|
80
|
-
output: '',
|
|
81
|
-
status: 'error',
|
|
82
|
-
usage: { inputTokens: 0, outputTokens: 0, cachedReadTokens: 0, cachedNonReadTokens: 0 },
|
|
83
|
-
turns: 0,
|
|
84
|
-
filesWritten: [],
|
|
85
|
-
outputIsDiagnostic: false,
|
|
86
|
-
escalationLog: [],
|
|
87
|
-
error: msg,
|
|
88
|
-
errorCode: 'runner_crash',
|
|
89
|
-
retryable: false,
|
|
90
|
-
durationMs: Date.now() - startMs,
|
|
91
|
-
structuredError: { code: 'runner_crash', message: msg, where: `executor:${config.name}` },
|
|
92
|
-
workerStatus: 'failed',
|
|
93
|
-
actualCostUSD: 0,
|
|
94
|
-
directoriesListed: [],
|
|
95
|
-
});
|
|
96
|
-
const buildGoalFailResult = (code, msg) => ({
|
|
97
|
-
output: '',
|
|
98
|
-
status: 'error',
|
|
99
|
-
usage: { inputTokens: 0, outputTokens: 0, cachedReadTokens: 0, cachedNonReadTokens: 0 },
|
|
100
|
-
turns: 0,
|
|
101
|
-
filesWritten: [],
|
|
102
|
-
outputIsDiagnostic: true,
|
|
103
|
-
escalationLog: [],
|
|
104
|
-
error: msg,
|
|
105
|
-
// errorCode must stay within the wire ErrorCode enum; the precise goal
|
|
106
|
-
// code rides on structuredError.code (a free string) so it still surfaces
|
|
107
|
-
// on results[i].error.code without widening the enum.
|
|
108
|
-
errorCode: 'other',
|
|
109
|
-
retryable: false,
|
|
110
|
-
durationMs: Date.now() - startMs,
|
|
111
|
-
structuredError: { code, message: msg, where: `goal:${config.name}` },
|
|
112
|
-
workerStatus: 'failed',
|
|
113
|
-
actualCostUSD: 0,
|
|
114
|
-
directoriesListed: [],
|
|
115
|
-
});
|
|
116
|
-
const buildAgentNotConfiguredResult = (msg) => ({
|
|
117
|
-
output: '',
|
|
118
|
-
status: 'error',
|
|
119
|
-
usage: { inputTokens: 0, outputTokens: 0, cachedReadTokens: 0, cachedNonReadTokens: 0 },
|
|
120
|
-
turns: 0,
|
|
121
|
-
filesWritten: [],
|
|
122
|
-
outputIsDiagnostic: false,
|
|
123
|
-
escalationLog: [],
|
|
124
|
-
error: msg,
|
|
125
|
-
errorCode: 'agent_not_configured',
|
|
126
|
-
retryable: false,
|
|
127
|
-
durationMs: Date.now() - startMs,
|
|
128
|
-
workerStatus: 'failed',
|
|
129
|
-
actualCostUSD: 0,
|
|
130
|
-
directoriesListed: [],
|
|
131
|
-
});
|
|
132
|
-
// Sync task 0's envelope reviewPolicy from the resolved TaskSpec.
|
|
133
|
-
// async-dispatch creates task 0's envelope before briefs run, so its
|
|
134
|
-
// initial seed is always the route default ('full') — see
|
|
135
|
-
// async-dispatch.ts. Now that tasks[] exists with the per-task value
|
|
136
|
-
// from the request, override so wire telemetry reports caller intent.
|
|
137
|
-
if (ctx.envelope && tasks[0]?.reviewPolicy) {
|
|
138
|
-
ctx.envelope.setReviewPolicy(tasks[0].reviewPolicy);
|
|
139
|
-
}
|
|
140
|
-
// Multi-task envelope fix: async-dispatch creates exactly ONE envelope
|
|
141
|
-
// (taskIndex=0) before the executor runs. For multi-task batches (e.g.
|
|
142
|
-
// /delegate with tasks.length > 1) we need a distinct envelope per task
|
|
143
|
-
// so per-task recordToolCall / startStage / seal don't collide. Tasks
|
|
144
|
-
// beyond index 0 get a freshly-created envelope attached to the same
|
|
145
|
-
// batchRegistry entry; task 0 keeps reusing the pre-created envelope so
|
|
146
|
-
// single-task batches behave exactly as before.
|
|
147
|
-
if (tasks.length > 1 &&
|
|
148
|
-
ctx.batchId !== undefined &&
|
|
149
|
-
ctx.batchRegistry &&
|
|
150
|
-
ctx.envelope) {
|
|
151
|
-
const e0 = ctx.envelope.snapshot();
|
|
152
|
-
for (let i = 1; i < tasks.length; i++) {
|
|
153
|
-
const env = TaskEnvelopeStore.create({
|
|
154
|
-
taskId: `${ctx.batchId}:${i}`,
|
|
155
|
-
batchId: ctx.batchId,
|
|
156
|
-
taskIndex: i,
|
|
157
|
-
route: e0.route,
|
|
158
|
-
agentType: e0.agentType,
|
|
159
|
-
client: e0.client,
|
|
160
|
-
mainModel: e0.mainModel,
|
|
161
|
-
cwd: e0.cwd,
|
|
162
|
-
reviewPolicy: tasks[i].reviewPolicy ?? 'full',
|
|
163
|
-
}, ctx.bus);
|
|
164
|
-
ctx.batchRegistry.attachEnvelope(ctx.batchId, i, env);
|
|
165
|
-
}
|
|
166
|
-
// Bump tasksTotal/tasksStarted from the async-dispatch placeholder of
|
|
167
|
-
// 1 so the live headline reports the real fan-out width.
|
|
168
|
-
const entry = ctx.batchRegistry.get(ctx.batchId);
|
|
169
|
-
if (entry) {
|
|
170
|
-
entry.tasksTotal = tasks.length;
|
|
171
|
-
entry.tasksStarted = tasks.length;
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
|
-
const envelopeForTask = (i) => {
|
|
175
|
-
if (i === 0)
|
|
176
|
-
return ctx.envelope;
|
|
177
|
-
if (!ctx.batchId || !ctx.batchRegistry)
|
|
178
|
-
return ctx.envelope;
|
|
179
|
-
return ctx.batchRegistry.get(ctx.batchId)?.taskEnvelopes?.[i] ?? ctx.envelope;
|
|
180
|
-
};
|
|
181
|
-
const dispatchOne = async (task, i) => {
|
|
182
|
-
const r = resolvedPerTask[i];
|
|
183
|
-
if ('error' in r) {
|
|
184
|
-
return buildAgentNotConfiguredResult(r.error);
|
|
185
|
-
}
|
|
186
|
-
try {
|
|
187
|
-
const taskEnvelope = envelopeForTask(i);
|
|
188
|
-
return await runTaskViaDispatcher({
|
|
189
|
-
task,
|
|
190
|
-
resolved: r,
|
|
191
|
-
config: ctx.config,
|
|
192
|
-
taskIndex: i,
|
|
193
|
-
batchId: ctx.batchId,
|
|
194
|
-
recordHeartbeat: ctx.recordHeartbeat,
|
|
195
|
-
logger: ctx.logger,
|
|
196
|
-
recorder: ctx.recorder,
|
|
197
|
-
route: ctx.route ?? config.name,
|
|
198
|
-
client: ctx.client,
|
|
199
|
-
mainModel: ctx.mainModel,
|
|
200
|
-
bus: ctx.bus,
|
|
201
|
-
...(taskEnvelope && { envelope: taskEnvelope }),
|
|
202
|
-
...(ctx.contextBlockStore && { contextBlockStore: ctx.contextBlockStore }),
|
|
203
|
-
...(ctx.batchRegistry && { batchRegistry: ctx.batchRegistry }),
|
|
204
|
-
...(ctx.reviewerEngine !== undefined && { reviewerEngine: ctx.reviewerEngine }),
|
|
205
|
-
});
|
|
206
|
-
}
|
|
207
|
-
catch (e) {
|
|
208
|
-
// Gap 3 fix (round-2 F5): durationMs MUST be set on EVERY return,
|
|
209
|
-
// including failure envelopes. Pre-fix, error envelopes carried
|
|
210
|
-
// durationMs:0 — failed runs were invisible in cost-per-time
|
|
211
|
-
// analysis, retry budgeting, and operator debugging.
|
|
212
|
-
return buildCrashResult(e instanceof Error ? e.message : String(e));
|
|
213
|
-
}
|
|
214
|
-
};
|
|
215
|
-
// Effective dispatch mode: route default unless the route allows a caller
|
|
216
|
-
// override AND the request carried one. (execute-plan: not overridable, so
|
|
217
|
-
// always serial; delegate: parallel by default, overridable to serial.)
|
|
218
|
-
const requestedMode = input.execution;
|
|
219
|
-
const mode = config.dispatchModeOverridable && requestedMode ? requestedMode : config.dispatchMode;
|
|
220
|
-
const concurrent = mode === 'parallel' && tasks.length > 1;
|
|
221
|
-
// Append the parallel-safety reminder only when tasks actually run
|
|
222
|
-
// concurrently (parallel mode + >1 task). The original tasks[] (stored in
|
|
223
|
-
// the batch cache for retry) is left unsuffixed.
|
|
224
|
-
const dispatchTasks = applyParallelSafetySuffixIfNeeded(tasks, concurrent);
|
|
225
|
-
let results;
|
|
226
|
-
const goal0 = tasks[0]?.goal;
|
|
227
|
-
if (goal0) {
|
|
228
|
-
// Goal mode (write routes): one sequential goal-set, serialized per repo so
|
|
229
|
-
// concurrent same-repo goal-sets never interleave self-commits. Shape
|
|
230
|
-
// preconditions (empty/oversized plan) hard-fail before the lock; git
|
|
231
|
-
// preconditions + baseSha capture happen inside the lock (prepare stage).
|
|
232
|
-
const shape = checkGoalShape(goal0);
|
|
233
|
-
if (!shape.ok) {
|
|
234
|
-
results = [buildGoalFailResult(shape.code, shape.message)];
|
|
235
|
-
}
|
|
236
|
-
else {
|
|
237
|
-
const repoKey = (await resolveGitToplevel(goal0.cwd)) ?? goal0.cwd;
|
|
238
|
-
try {
|
|
239
|
-
results = [await withWriteGoalLock(repoKey, () => dispatchOne(tasks[0], 0), DEFAULT_WRITE_GOAL_LOCK_TIMEOUT_MS)];
|
|
240
|
-
}
|
|
241
|
-
catch (e) {
|
|
242
|
-
results = e instanceof WriteGoalBusyError
|
|
243
|
-
? [buildGoalFailResult('write_goal_busy', e.message)]
|
|
244
|
-
: [buildCrashResult(e instanceof Error ? e.message : String(e))];
|
|
245
|
-
}
|
|
246
|
-
}
|
|
247
|
-
}
|
|
248
|
-
else if (tasks.length === 1) {
|
|
249
|
-
// Single-task fast path — identical to pre-change behavior, no suffix.
|
|
250
|
-
results = [await dispatchOne(tasks[0], 0)];
|
|
251
|
-
}
|
|
252
|
-
else if (mode === 'parallel') {
|
|
253
|
-
results = await Promise.all(dispatchTasks.map((task, i) => dispatchOne(task, i)));
|
|
254
|
-
}
|
|
255
|
-
else {
|
|
256
|
-
// Serial: input order; stop issuing new work once the batch abort fires.
|
|
257
|
-
results = new Array(dispatchTasks.length);
|
|
258
|
-
for (let i = 0; i < dispatchTasks.length; i++) {
|
|
259
|
-
if (ctx.stall.controller.signal.aborted) {
|
|
260
|
-
results[i] = buildCancelledResult();
|
|
261
|
-
continue;
|
|
262
|
-
}
|
|
263
|
-
results[i] = await dispatchOne(dispatchTasks[i], i);
|
|
264
|
-
}
|
|
265
|
-
}
|
|
266
|
-
const wallClockMs = Date.now() - startMs;
|
|
267
|
-
// Gap 3 fix (4.0.3+): surface the executor's wall-clock as
|
|
268
|
-
// result.durationMs on each task. The dispatcher's runResult.durationMs
|
|
269
|
-
// only covers the implementer's shell.run wall-clock, missing
|
|
270
|
-
// reviewer/annotator stages. Setting it here means retry callers + the
|
|
271
|
-
// wire builder's Math.max see the real total. Skip if the result already
|
|
272
|
-
// has a larger durationMs (e.g., dispatcher tracked something we didn't).
|
|
273
|
-
for (const r of results) {
|
|
274
|
-
if (!r.durationMs || r.durationMs < wallClockMs) {
|
|
275
|
-
r.durationMs = wallClockMs;
|
|
276
|
-
}
|
|
277
|
-
}
|
|
278
|
-
// ── Step 5: Auto-register context block ──
|
|
279
|
-
const contextBlockId = autoRegisterContextBlock(results, ctx.contextBlockStore);
|
|
280
|
-
// ── Step 6: Compute timings + cost ──
|
|
281
|
-
const batchTimings = computeTimings(wallClockMs, results);
|
|
282
|
-
const costSummary = computeAggregateCost(results);
|
|
283
|
-
// ── Step 7: Resolve structured report ──
|
|
284
|
-
// v4.4.x: the Annotating handler builds the canonical unified StructuredReport
|
|
285
|
-
// and compose_response attaches it onto results[N].structuredReport. Prefer
|
|
286
|
-
// that. Fall back to legacy per-tool schema / narrative parser only when the
|
|
287
|
-
// annotator did not run (terminal short-circuit, register-block route).
|
|
288
|
-
let structuredReport;
|
|
289
|
-
const annotatorReport = results[0] && results[0].structuredReport;
|
|
290
|
-
if (annotatorReport && typeof annotatorReport === 'object') {
|
|
291
|
-
structuredReport = annotatorReport;
|
|
292
|
-
}
|
|
293
|
-
else {
|
|
294
|
-
const primaryOutput = results[0]?.output;
|
|
295
|
-
if (primaryOutput && primaryOutput.trim().length > 0) {
|
|
296
|
-
try {
|
|
297
|
-
structuredReport = config.reportSchema.parse(primaryOutput);
|
|
298
|
-
}
|
|
299
|
-
catch {
|
|
300
|
-
structuredReport = parseStructuredReport(primaryOutput);
|
|
301
|
-
}
|
|
302
|
-
}
|
|
303
|
-
else {
|
|
304
|
-
structuredReport = notApplicable('no task output to parse');
|
|
305
|
-
}
|
|
306
|
-
}
|
|
307
|
-
// ── Step 8: Compose headline ──
|
|
308
|
-
// v4.5.2+: pass runResult + task so audit/review/debug composers can
|
|
309
|
-
// fall back to parseNarrativeFindings(runResult.output) and read
|
|
310
|
-
// task.filePaths for the document path when the structured report
|
|
311
|
-
// doesn't carry them.
|
|
312
|
-
const headline = config.headlineTemplate.compose({
|
|
313
|
-
taskBrief: typeof briefs[0] === 'object' && briefs[0] !== null
|
|
314
|
-
? briefs[0].prompt
|
|
315
|
-
?? briefs[0].brief
|
|
316
|
-
?? briefs[0].question
|
|
317
|
-
?? config.name
|
|
318
|
-
: config.name,
|
|
319
|
-
report: structuredReport,
|
|
320
|
-
status: results[0]?.status ?? 'error',
|
|
321
|
-
...(results[0] && { runResult: results[0] }),
|
|
322
|
-
...(tasks[0] && { task: tasks[0] }),
|
|
323
|
-
});
|
|
324
|
-
// ── Step 9: Map review verdicts ──
|
|
325
|
-
const verdicts = mapReviewVerdicts(results[0] ?? {}, false);
|
|
326
|
-
// ── Step 10: Build + post-process envelope ──
|
|
327
|
-
let envelope = {
|
|
328
|
-
headline,
|
|
329
|
-
results,
|
|
330
|
-
batchTimings,
|
|
331
|
-
costSummary,
|
|
332
|
-
structuredReport: structuredReport,
|
|
333
|
-
error: notApplicable('batch succeeded'),
|
|
334
|
-
batchId: ctx.batchId ?? randomUUID(),
|
|
335
|
-
wallClockMs,
|
|
336
|
-
mainModel,
|
|
337
|
-
dispatchMode: mode,
|
|
338
|
-
specReviewVerdict: verdicts.specReviewVerdict,
|
|
339
|
-
qualityReviewVerdict: verdicts.qualityReviewVerdict,
|
|
340
|
-
roundsUsed: verdicts.roundsUsed,
|
|
341
|
-
...(contextBlockId !== undefined && { contextBlockId }),
|
|
342
|
-
};
|
|
343
|
-
if (config.postProcessEnvelope) {
|
|
344
|
-
envelope = await config.postProcessEnvelope(envelope, ctx);
|
|
345
|
-
}
|
|
346
|
-
return envelope;
|
|
347
|
-
}
|
|
348
|
-
/** Return an empty-ok envelope when briefSlot produces no briefs. */
|
|
349
|
-
function emptyEnvelope(toolName, ctx) {
|
|
350
|
-
return {
|
|
351
|
-
headline: `${toolName}: no tasks executed`,
|
|
352
|
-
results: [],
|
|
353
|
-
batchTimings: { wallClockMs: 0, sumOfTaskMs: 0, estimatedParallelSavingsMs: 0 },
|
|
354
|
-
costSummary: { totalActualCostUSD: 0, totalCostDeltaVsMainUSD: 0 },
|
|
355
|
-
structuredReport: notApplicable('no briefs produced'),
|
|
356
|
-
error: notApplicable('batch succeeded'),
|
|
357
|
-
batchId: ctx.batchId ?? randomUUID(),
|
|
358
|
-
wallClockMs: 0,
|
|
359
|
-
mainModel: ctx.mainModel,
|
|
360
|
-
specReviewVerdict: 'not_applicable',
|
|
361
|
-
qualityReviewVerdict: 'not_applicable',
|
|
362
|
-
roundsUsed: 0,
|
|
363
|
-
};
|
|
364
|
-
}
|
|
365
|
-
//# sourceMappingURL=task-executor.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"task-executor.js","sourceRoot":"","sources":["../../src/lifecycle/task-executor.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import type { TaskSpec, RuntimeRunResult, MultiModelConfig } from '../types.js';
|
|
2
|
-
import type { ProgressEvent } from '../providers/runner-types.js';
|
|
3
|
-
import type { ResolvedSkillBundle } from '../types/run-result.js';
|
|
4
|
-
import type { HeartbeatTickInfo } from '../bounded-execution/activity-tracker.js';
|
|
5
|
-
import type { EnvelopeBus } from '../events/envelope-bus.js';
|
|
6
|
-
import type { ExecutionContext } from './lifecycle-context.js';
|
|
7
|
-
import type { ResolvedAgent } from '../providers/agent-resolver.js';
|
|
8
|
-
import { LifecycleDispatcher } from './lifecycle-dispatcher.js';
|
|
9
|
-
/**
|
|
10
|
-
* Conditionally appends PARALLEL_SAFETY_SUFFIX to each task's prompt.
|
|
11
|
-
* Appended ONLY when `concurrent` is true — i.e. the batch runs in parallel
|
|
12
|
-
* mode with more than one task. Within serial dispatch (or single-task
|
|
13
|
-
* batches) tasks don't race, so the reminder is omitted. The suffix
|
|
14
|
-
* reinforces per-worker commit attribution: stay in your lane, touch only
|
|
15
|
-
* your own files.
|
|
16
|
-
*
|
|
17
|
-
* Pure function — returns shallow-cloned tasks; original array unchanged.
|
|
18
|
-
*/
|
|
19
|
-
export declare function applyParallelSafetySuffixIfNeeded<T extends {
|
|
20
|
-
prompt: string;
|
|
21
|
-
testCommand?: string;
|
|
22
|
-
}>(tasks: T[], concurrent: boolean): T[];
|
|
23
|
-
export interface DispatchTaskInput {
|
|
24
|
-
task: TaskSpec;
|
|
25
|
-
resolved: ResolvedAgent;
|
|
26
|
-
config: MultiModelConfig;
|
|
27
|
-
taskIndex: number;
|
|
28
|
-
onProgress?: (taskIndex: number, event: ProgressEvent) => void;
|
|
29
|
-
batchId?: string;
|
|
30
|
-
recordHeartbeat?: (tick: HeartbeatTickInfo) => void;
|
|
31
|
-
logger?: {
|
|
32
|
-
error: (kind: string, err: unknown) => void;
|
|
33
|
-
};
|
|
34
|
-
recorder?: ExecutionContext['recorder'];
|
|
35
|
-
route?: string;
|
|
36
|
-
client?: string;
|
|
37
|
-
/** Calling agent's model (e.g., claude-opus-4-7), threaded into telemetry as mainModel.
|
|
38
|
-
* Sourced from X-MMA-Main-Model header → execution-context → here. */
|
|
39
|
-
mainModel?: string | null;
|
|
40
|
-
bus?: EnvelopeBus;
|
|
41
|
-
/** Context block store for expanding contextBlockIds into the task's prompt
|
|
42
|
-
* before dispatch. Without this, the worker LLM never sees the prior-round
|
|
43
|
-
* audit/review report referenced by contextBlockIds. */
|
|
44
|
-
contextBlockStore?: import('../stores/context-block-tool.js').ContextBlockStore;
|
|
45
|
-
/** Registry to attach/detach the per-task ExecutionContext on. When provided,
|
|
46
|
-
* shutdown drain in serve.ts can walk the registry and call closeSessions()
|
|
47
|
-
* on every in-flight task before the daemon exits. */
|
|
48
|
-
batchRegistry?: import('../stores/batch-registry.js').BatchRegistry;
|
|
49
|
-
/** Per-task event envelope for recording lifecycle mutations. Optional during migration. */
|
|
50
|
-
envelope?: import('../events/task-envelope.js').TaskEnvelopeStore;
|
|
51
|
-
resolvedSkills?: ResolvedSkillBundle;
|
|
52
|
-
}
|
|
53
|
-
export declare function resolveSkillsForTask(args: {
|
|
54
|
-
task: {
|
|
55
|
-
prompt: string;
|
|
56
|
-
skills?: string[];
|
|
57
|
-
};
|
|
58
|
-
client: string;
|
|
59
|
-
batchId: string;
|
|
60
|
-
taskIndex: number;
|
|
61
|
-
}): Promise<{
|
|
62
|
-
bundle?: ResolvedSkillBundle;
|
|
63
|
-
failure?: RuntimeRunResult;
|
|
64
|
-
}>;
|
|
65
|
-
export declare function runTaskViaDispatcher(input: DispatchTaskInput, dispatcher?: LifecycleDispatcher): Promise<RuntimeRunResult>;
|
|
66
|
-
//# sourceMappingURL=task-runner.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"task-runner.d.ts","sourceRoot":"","sources":["../../src/lifecycle/task-runner.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,QAAQ,EACR,gBAAgB,EAChB,gBAAgB,EAGjB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAClE,OAAO,KAAK,EAAW,mBAAmB,EAAE,MAAM,wBAAwB,CAAC;AAC3E,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,0CAA0C,CAAC;AAGlF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAC7D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAC;AAE/D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAE,mBAAmB,EAAE,MAAM,2BAA2B,CAAC;AAgBhE;;;;;;;;;GASG;AACH,wBAAgB,iCAAiC,CAAC,CAAC,SAAS;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAA;CAAE,EAClG,KAAK,EAAE,CAAC,EAAE,EACV,UAAU,EAAE,OAAO,GAClB,CAAC,EAAE,CAOL;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,QAAQ,CAAC;IACf,QAAQ,EAAE,aAAa,CAAC;IACxB,MAAM,EAAE,gBAAgB,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,aAAa,KAAK,IAAI,CAAC;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,iBAAiB,KAAK,IAAI,CAAC;IACpD,MAAM,CAAC,EAAE;QAAE,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,KAAK,IAAI,CAAA;KAAE,CAAC;IACzD,QAAQ,CAAC,EAAE,gBAAgB,CAAC,UAAU,CAAC,CAAC;IACxC,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB;2EACuE;IACvE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,GAAG,CAAC,EAAE,WAAW,CAAC;IAClB;;6DAEyD;IACzD,iBAAiB,CAAC,EAAE,OAAO,iCAAiC,EAAE,iBAAiB,CAAC;IAChF;;2DAEuD;IACvD,aAAa,CAAC,EAAE,OAAO,6BAA6B,EAAE,aAAa,CAAC;IACpE,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,OAAO,4BAA4B,EAAE,iBAAiB,CAAC;IAClE,cAAc,CAAC,EAAE,mBAAmB,CAAC;CACtC;AAqID,wBAAsB,oBAAoB,CAAC,IAAI,EAAE;IAC/C,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC;IAC5C,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;CACnB,GAAG,OAAO,CAAC;IAAE,MAAM,CAAC,EAAE,mBAAmB,CAAC;IAAC,OAAO,CAAC,EAAE,gBAAgB,CAAA;CAAE,CAAC,CAiCxE;AAED,wBAAsB,oBAAoB,CACxC,KAAK,EAAE,iBAAiB,EACxB,UAAU,GAAE,mBAA+C,GAC1D,OAAO,CAAC,gBAAgB,CAAC,CA+I3B"}
|