p-dev-harness 0.3.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/LICENSE +21 -0
- package/README.md +53 -0
- package/bin/p-dev.js +2 -0
- package/dist/agents/cursor-provider.d.ts +3 -0
- package/dist/agents/cursor-provider.d.ts.map +1 -0
- package/dist/agents/cursor-provider.js +60 -0
- package/dist/agents/cursor-provider.js.map +1 -0
- package/dist/agents/index.d.ts +12 -0
- package/dist/agents/index.d.ts.map +1 -0
- package/dist/agents/index.js +24 -0
- package/dist/agents/index.js.map +1 -0
- package/dist/agents/provider.d.ts +4 -0
- package/dist/agents/provider.d.ts.map +1 -0
- package/dist/agents/provider.js +5 -0
- package/dist/agents/provider.js.map +1 -0
- package/dist/agents/types.d.ts +59 -0
- package/dist/agents/types.d.ts.map +1 -0
- package/dist/agents/types.js +2 -0
- package/dist/agents/types.js.map +1 -0
- package/dist/artifacts/events.d.ts +8 -0
- package/dist/artifacts/events.d.ts.map +1 -0
- package/dist/artifacts/events.js +23 -0
- package/dist/artifacts/events.js.map +1 -0
- package/dist/artifacts/manifest-fields.d.ts +8 -0
- package/dist/artifacts/manifest-fields.d.ts.map +1 -0
- package/dist/artifacts/manifest-fields.js +10 -0
- package/dist/artifacts/manifest-fields.js.map +1 -0
- package/dist/artifacts/manifest.d.ts +4 -0
- package/dist/artifacts/manifest.d.ts.map +1 -0
- package/dist/artifacts/manifest.js +11 -0
- package/dist/artifacts/manifest.js.map +1 -0
- package/dist/artifacts/paths.d.ts +36 -0
- package/dist/artifacts/paths.d.ts.map +1 -0
- package/dist/artifacts/paths.js +107 -0
- package/dist/artifacts/paths.js.map +1 -0
- package/dist/artifacts/redact.d.ts +3 -0
- package/dist/artifacts/redact.d.ts.map +1 -0
- package/dist/artifacts/redact.js +45 -0
- package/dist/artifacts/redact.js.map +1 -0
- package/dist/artifacts/run-id.d.ts +2 -0
- package/dist/artifacts/run-id.d.ts.map +1 -0
- package/dist/artifacts/run-id.js +5 -0
- package/dist/artifacts/run-id.js.map +1 -0
- package/dist/artifacts/snapshot.d.ts +3 -0
- package/dist/artifacts/snapshot.d.ts.map +1 -0
- package/dist/artifacts/snapshot.js +9 -0
- package/dist/artifacts/snapshot.js.map +1 -0
- package/dist/artifacts/summary.d.ts +9 -0
- package/dist/artifacts/summary.d.ts.map +1 -0
- package/dist/artifacts/summary.js +68 -0
- package/dist/artifacts/summary.js.map +1 -0
- package/dist/cli/commands/diagnose-vercel-bridge.d.ts +5 -0
- package/dist/cli/commands/diagnose-vercel-bridge.d.ts.map +1 -0
- package/dist/cli/commands/diagnose-vercel-bridge.js +20 -0
- package/dist/cli/commands/diagnose-vercel-bridge.js.map +1 -0
- package/dist/cli/commands/doctor.d.ts +6 -0
- package/dist/cli/commands/doctor.d.ts.map +1 -0
- package/dist/cli/commands/doctor.js +190 -0
- package/dist/cli/commands/doctor.js.map +1 -0
- package/dist/cli/commands/inspect.d.ts +5 -0
- package/dist/cli/commands/inspect.d.ts.map +1 -0
- package/dist/cli/commands/inspect.js +39 -0
- package/dist/cli/commands/inspect.js.map +1 -0
- package/dist/cli/commands/operator-init.d.ts +5 -0
- package/dist/cli/commands/operator-init.d.ts.map +1 -0
- package/dist/cli/commands/operator-init.js +30 -0
- package/dist/cli/commands/operator-init.js.map +1 -0
- package/dist/cli/commands/redact-output.d.ts +2 -0
- package/dist/cli/commands/redact-output.d.ts.map +1 -0
- package/dist/cli/commands/redact-output.js +18 -0
- package/dist/cli/commands/redact-output.js.map +1 -0
- package/dist/cli/commands/resolve-route.d.ts +10 -0
- package/dist/cli/commands/resolve-route.d.ts.map +1 -0
- package/dist/cli/commands/resolve-route.js +67 -0
- package/dist/cli/commands/resolve-route.js.map +1 -0
- package/dist/cli/commands/run.d.ts +12 -0
- package/dist/cli/commands/run.d.ts.map +1 -0
- package/dist/cli/commands/run.js +36 -0
- package/dist/cli/commands/run.js.map +1 -0
- package/dist/cli/commands/sync-production.d.ts +25 -0
- package/dist/cli/commands/sync-production.d.ts.map +1 -0
- package/dist/cli/commands/sync-production.js +147 -0
- package/dist/cli/commands/sync-production.js.map +1 -0
- package/dist/cli/commands/validate-issue.d.ts +9 -0
- package/dist/cli/commands/validate-issue.d.ts.map +1 -0
- package/dist/cli/commands/validate-issue.js +53 -0
- package/dist/cli/commands/validate-issue.js.map +1 -0
- package/dist/cli/exit-codes.d.ts +5 -0
- package/dist/cli/exit-codes.d.ts.map +1 -0
- package/dist/cli/exit-codes.js +5 -0
- package/dist/cli/exit-codes.js.map +1 -0
- package/dist/cli/finalize-exit.d.ts +6 -0
- package/dist/cli/finalize-exit.d.ts.map +1 -0
- package/dist/cli/finalize-exit.js +9 -0
- package/dist/cli/finalize-exit.js.map +1 -0
- package/dist/cli/program.d.ts +3 -0
- package/dist/cli/program.d.ts.map +1 -0
- package/dist/cli/program.js +150 -0
- package/dist/cli/program.js.map +1 -0
- package/dist/config/defaults.d.ts +31 -0
- package/dist/config/defaults.d.ts.map +1 -0
- package/dist/config/defaults.js +34 -0
- package/dist/config/defaults.js.map +1 -0
- package/dist/config/load-config.d.ts +17 -0
- package/dist/config/load-config.d.ts.map +1 -0
- package/dist/config/load-config.js +57 -0
- package/dist/config/load-config.js.map +1 -0
- package/dist/config/load-dotenv.d.ts +2 -0
- package/dist/config/load-dotenv.d.ts.map +1 -0
- package/dist/config/load-dotenv.js +11 -0
- package/dist/config/load-dotenv.js.map +1 -0
- package/dist/config/resolve-config.d.ts +12 -0
- package/dist/config/resolve-config.d.ts.map +1 -0
- package/dist/config/resolve-config.js +98 -0
- package/dist/config/resolve-config.js.map +1 -0
- package/dist/config/schema.d.ts +505 -0
- package/dist/config/schema.d.ts.map +1 -0
- package/dist/config/schema.js +110 -0
- package/dist/config/schema.js.map +1 -0
- package/dist/config/status-names.d.ts +25 -0
- package/dist/config/status-names.d.ts.map +1 -0
- package/dist/config/status-names.js +41 -0
- package/dist/config/status-names.js.map +1 -0
- package/dist/config/types.d.ts +2 -0
- package/dist/config/types.d.ts.map +1 -0
- package/dist/config/types.js +2 -0
- package/dist/config/types.js.map +1 -0
- package/dist/cursor/agent-factory.d.ts +24 -0
- package/dist/cursor/agent-factory.d.ts.map +1 -0
- package/dist/cursor/agent-factory.js +91 -0
- package/dist/cursor/agent-factory.js.map +1 -0
- package/dist/cursor/errors.d.ts +4 -0
- package/dist/cursor/errors.d.ts.map +1 -0
- package/dist/cursor/errors.js +14 -0
- package/dist/cursor/errors.js.map +1 -0
- package/dist/cursor/git-result.d.ts +8 -0
- package/dist/cursor/git-result.d.ts.map +1 -0
- package/dist/cursor/git-result.js +43 -0
- package/dist/cursor/git-result.js.map +1 -0
- package/dist/cursor/model.d.ts +31 -0
- package/dist/cursor/model.d.ts.map +1 -0
- package/dist/cursor/model.js +41 -0
- package/dist/cursor/model.js.map +1 -0
- package/dist/cursor/revision-git-result.d.ts +4 -0
- package/dist/cursor/revision-git-result.d.ts.map +1 -0
- package/dist/cursor/revision-git-result.js +43 -0
- package/dist/cursor/revision-git-result.js.map +1 -0
- package/dist/cursor/run-cleanup.d.ts +6 -0
- package/dist/cursor/run-cleanup.d.ts.map +1 -0
- package/dist/cursor/run-cleanup.js +22 -0
- package/dist/cursor/run-cleanup.js.map +1 -0
- package/dist/cursor/run-observer.d.ts +45 -0
- package/dist/cursor/run-observer.d.ts.map +1 -0
- package/dist/cursor/run-observer.js +228 -0
- package/dist/cursor/run-observer.js.map +1 -0
- package/dist/cursor/urls.d.ts +3 -0
- package/dist/cursor/urls.d.ts.map +1 -0
- package/dist/cursor/urls.js +12 -0
- package/dist/cursor/urls.js.map +1 -0
- package/dist/fixture/frontmatter.d.ts +11 -0
- package/dist/fixture/frontmatter.d.ts.map +1 -0
- package/dist/fixture/frontmatter.js +45 -0
- package/dist/fixture/frontmatter.js.map +1 -0
- package/dist/github/actions-url.d.ts +3 -0
- package/dist/github/actions-url.d.ts.map +1 -0
- package/dist/github/actions-url.js +13 -0
- package/dist/github/actions-url.js.map +1 -0
- package/dist/github/base-branch.d.ts +25 -0
- package/dist/github/base-branch.d.ts.map +1 -0
- package/dist/github/base-branch.js +73 -0
- package/dist/github/base-branch.js.map +1 -0
- package/dist/github/check-policy.d.ts +12 -0
- package/dist/github/check-policy.d.ts.map +1 -0
- package/dist/github/check-policy.js +71 -0
- package/dist/github/check-policy.js.map +1 -0
- package/dist/github/client.d.ts +227 -0
- package/dist/github/client.d.ts.map +1 -0
- package/dist/github/client.js +244 -0
- package/dist/github/client.js.map +1 -0
- package/dist/github/commit-reachability.d.ts +34 -0
- package/dist/github/commit-reachability.d.ts.map +1 -0
- package/dist/github/commit-reachability.js +85 -0
- package/dist/github/commit-reachability.js.map +1 -0
- package/dist/github/links.d.ts +5 -0
- package/dist/github/links.d.ts.map +1 -0
- package/dist/github/links.js +17 -0
- package/dist/github/links.js.map +1 -0
- package/dist/github/merge-result.d.ts +8 -0
- package/dist/github/merge-result.d.ts.map +1 -0
- package/dist/github/merge-result.js +22 -0
- package/dist/github/merge-result.js.map +1 -0
- package/dist/github/pr-discovery.d.ts +12 -0
- package/dist/github/pr-discovery.d.ts.map +1 -0
- package/dist/github/pr-discovery.js +33 -0
- package/dist/github/pr-discovery.js.map +1 -0
- package/dist/github/pr-inspector.d.ts +48 -0
- package/dist/github/pr-inspector.d.ts.map +1 -0
- package/dist/github/pr-inspector.js +190 -0
- package/dist/github/pr-inspector.js.map +1 -0
- package/dist/github/pr-url.d.ts +8 -0
- package/dist/github/pr-url.d.ts.map +1 -0
- package/dist/github/pr-url.js +15 -0
- package/dist/github/pr-url.js.map +1 -0
- package/dist/gui/configure-health.d.ts +15 -0
- package/dist/gui/configure-health.d.ts.map +1 -0
- package/dist/gui/configure-health.js +124 -0
- package/dist/gui/configure-health.js.map +1 -0
- package/dist/gui/dev-server-process.d.ts +25 -0
- package/dist/gui/dev-server-process.d.ts.map +1 -0
- package/dist/gui/dev-server-process.js +165 -0
- package/dist/gui/dev-server-process.js.map +1 -0
- package/dist/gui/port.d.ts +17 -0
- package/dist/gui/port.d.ts.map +1 -0
- package/dist/gui/port.js +50 -0
- package/dist/gui/port.js.map +1 -0
- package/dist/gui/repo-root.d.ts +4 -0
- package/dist/gui/repo-root.d.ts.map +1 -0
- package/dist/gui/repo-root.js +49 -0
- package/dist/gui/repo-root.js.map +1 -0
- package/dist/gui/start-configure-stable.d.ts +3 -0
- package/dist/gui/start-configure-stable.d.ts.map +1 -0
- package/dist/gui/start-configure-stable.js +92 -0
- package/dist/gui/start-configure-stable.js.map +1 -0
- package/dist/gui/start-gui.d.ts +3 -0
- package/dist/gui/start-gui.d.ts.map +1 -0
- package/dist/gui/start-gui.js +90 -0
- package/dist/gui/start-gui.js.map +1 -0
- package/dist/index.d.ts +3 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +9 -0
- package/dist/index.js.map +1 -0
- package/dist/linear/client.d.ts +14 -0
- package/dist/linear/client.d.ts.map +1 -0
- package/dist/linear/client.js +30 -0
- package/dist/linear/client.js.map +1 -0
- package/dist/linear/comment-card.d.ts +24 -0
- package/dist/linear/comment-card.d.ts.map +1 -0
- package/dist/linear/comment-card.js +45 -0
- package/dist/linear/comment-card.js.map +1 -0
- package/dist/linear/comments.d.ts +179 -0
- package/dist/linear/comments.d.ts.map +1 -0
- package/dist/linear/comments.js +551 -0
- package/dist/linear/comments.js.map +1 -0
- package/dist/linear/handoff-comment.d.ts +3 -0
- package/dist/linear/handoff-comment.d.ts.map +1 -0
- package/dist/linear/handoff-comment.js +11 -0
- package/dist/linear/handoff-comment.js.map +1 -0
- package/dist/linear/implementation-comment.d.ts +3 -0
- package/dist/linear/implementation-comment.d.ts.map +1 -0
- package/dist/linear/implementation-comment.js +11 -0
- package/dist/linear/implementation-comment.js.map +1 -0
- package/dist/linear/issue-query.d.ts +14 -0
- package/dist/linear/issue-query.d.ts.map +1 -0
- package/dist/linear/issue-query.js +47 -0
- package/dist/linear/issue-query.js.map +1 -0
- package/dist/linear/markers.d.ts +46 -0
- package/dist/linear/markers.d.ts.map +1 -0
- package/dist/linear/markers.js +179 -0
- package/dist/linear/markers.js.map +1 -0
- package/dist/linear/merge-source-comment.d.ts +10 -0
- package/dist/linear/merge-source-comment.d.ts.map +1 -0
- package/dist/linear/merge-source-comment.js +29 -0
- package/dist/linear/merge-source-comment.js.map +1 -0
- package/dist/linear/parser.d.ts +4 -0
- package/dist/linear/parser.d.ts.map +1 -0
- package/dist/linear/parser.js +86 -0
- package/dist/linear/parser.js.map +1 -0
- package/dist/linear/phase-labels.d.ts +8 -0
- package/dist/linear/phase-labels.d.ts.map +1 -0
- package/dist/linear/phase-labels.js +38 -0
- package/dist/linear/phase-labels.js.map +1 -0
- package/dist/linear/planning-comment.d.ts +3 -0
- package/dist/linear/planning-comment.d.ts.map +1 -0
- package/dist/linear/planning-comment.js +11 -0
- package/dist/linear/planning-comment.js.map +1 -0
- package/dist/linear/pm-feedback-comment.d.ts +3 -0
- package/dist/linear/pm-feedback-comment.d.ts.map +1 -0
- package/dist/linear/pm-feedback-comment.js +29 -0
- package/dist/linear/pm-feedback-comment.js.map +1 -0
- package/dist/linear/revision-comment.d.ts +3 -0
- package/dist/linear/revision-comment.d.ts.map +1 -0
- package/dist/linear/revision-comment.js +11 -0
- package/dist/linear/revision-comment.js.map +1 -0
- package/dist/linear/states.d.ts +3 -0
- package/dist/linear/states.d.ts.map +1 -0
- package/dist/linear/states.js +13 -0
- package/dist/linear/states.js.map +1 -0
- package/dist/linear/writer.d.ts +36 -0
- package/dist/linear/writer.d.ts.map +1 -0
- package/dist/linear/writer.js +105 -0
- package/dist/linear/writer.js.map +1 -0
- package/dist/p-dev/browser.d.ts +9 -0
- package/dist/p-dev/browser.d.ts.map +1 -0
- package/dist/p-dev/browser.js +15 -0
- package/dist/p-dev/browser.js.map +1 -0
- package/dist/p-dev/cli.d.ts +10 -0
- package/dist/p-dev/cli.d.ts.map +1 -0
- package/dist/p-dev/cli.js +73 -0
- package/dist/p-dev/cli.js.map +1 -0
- package/dist/p-dev/launch.d.ts +20 -0
- package/dist/p-dev/launch.d.ts.map +1 -0
- package/dist/p-dev/launch.js +107 -0
- package/dist/p-dev/launch.js.map +1 -0
- package/dist/p-dev/main.d.ts +3 -0
- package/dist/p-dev/main.d.ts.map +1 -0
- package/dist/p-dev/main.js +10 -0
- package/dist/p-dev/main.js.map +1 -0
- package/dist/p-dev/next-bin.d.ts +2 -0
- package/dist/p-dev/next-bin.d.ts.map +1 -0
- package/dist/p-dev/next-bin.js +8 -0
- package/dist/p-dev/next-bin.js.map +1 -0
- package/dist/p-dev/node-version.d.ts +9 -0
- package/dist/p-dev/node-version.d.ts.map +1 -0
- package/dist/p-dev/node-version.js +31 -0
- package/dist/p-dev/node-version.js.map +1 -0
- package/dist/p-dev/package-paths.d.ts +5 -0
- package/dist/p-dev/package-paths.d.ts.map +1 -0
- package/dist/p-dev/package-paths.js +34 -0
- package/dist/p-dev/package-paths.js.map +1 -0
- package/dist/p-dev/package-version.d.ts +6 -0
- package/dist/p-dev/package-version.d.ts.map +1 -0
- package/dist/p-dev/package-version.js +40 -0
- package/dist/p-dev/package-version.js.map +1 -0
- package/dist/p-dev/runtime-mode.d.ts +6 -0
- package/dist/p-dev/runtime-mode.d.ts.map +1 -0
- package/dist/p-dev/runtime-mode.js +18 -0
- package/dist/p-dev/runtime-mode.js.map +1 -0
- package/dist/p-dev/shutdown.d.ts +7 -0
- package/dist/p-dev/shutdown.d.ts.map +1 -0
- package/dist/p-dev/shutdown.js +55 -0
- package/dist/p-dev/shutdown.js.map +1 -0
- package/dist/p-dev/workspace.d.ts +22 -0
- package/dist/p-dev/workspace.d.ts.map +1 -0
- package/dist/p-dev/workspace.js +74 -0
- package/dist/p-dev/workspace.js.map +1 -0
- package/dist/preview/production-from-merge.d.ts +34 -0
- package/dist/preview/production-from-merge.d.ts.map +1 -0
- package/dist/preview/production-from-merge.js +94 -0
- package/dist/preview/production-from-merge.js.map +1 -0
- package/dist/preview/urls.d.ts +16 -0
- package/dist/preview/urls.d.ts.map +1 -0
- package/dist/preview/urls.js +13 -0
- package/dist/preview/urls.js.map +1 -0
- package/dist/preview/vercel-from-pr.d.ts +19 -0
- package/dist/preview/vercel-from-pr.d.ts.map +1 -0
- package/dist/preview/vercel-from-pr.js +91 -0
- package/dist/preview/vercel-from-pr.js.map +1 -0
- package/dist/prompts/branch-name.d.ts +3 -0
- package/dist/prompts/branch-name.d.ts.map +1 -0
- package/dist/prompts/branch-name.js +15 -0
- package/dist/prompts/branch-name.js.map +1 -0
- package/dist/prompts/builder.d.ts +21 -0
- package/dist/prompts/builder.d.ts.map +1 -0
- package/dist/prompts/builder.js +51 -0
- package/dist/prompts/builder.js.map +1 -0
- package/dist/prompts/integration-repair-builder.d.ts +20 -0
- package/dist/prompts/integration-repair-builder.d.ts.map +1 -0
- package/dist/prompts/integration-repair-builder.js +37 -0
- package/dist/prompts/integration-repair-builder.js.map +1 -0
- package/dist/prompts/revision-builder.d.ts +19 -0
- package/dist/prompts/revision-builder.d.ts.map +1 -0
- package/dist/prompts/revision-builder.js +34 -0
- package/dist/prompts/revision-builder.js.map +1 -0
- package/dist/resolver/allowed-repos.d.ts +3 -0
- package/dist/resolver/allowed-repos.d.ts.map +1 -0
- package/dist/resolver/allowed-repos.js +10 -0
- package/dist/resolver/allowed-repos.js.map +1 -0
- package/dist/resolver/errors.d.ts +6 -0
- package/dist/resolver/errors.d.ts.map +1 -0
- package/dist/resolver/errors.js +9 -0
- package/dist/resolver/errors.js.map +1 -0
- package/dist/resolver/normalize-repo.d.ts +4 -0
- package/dist/resolver/normalize-repo.d.ts.map +1 -0
- package/dist/resolver/normalize-repo.js +25 -0
- package/dist/resolver/normalize-repo.js.map +1 -0
- package/dist/resolver/target-repo.d.ts +20 -0
- package/dist/resolver/target-repo.d.ts.map +1 -0
- package/dist/resolver/target-repo.js +73 -0
- package/dist/resolver/target-repo.js.map +1 -0
- package/dist/runner/building-recovery.d.ts +5 -0
- package/dist/runner/building-recovery.d.ts.map +1 -0
- package/dist/runner/building-recovery.js +18 -0
- package/dist/runner/building-recovery.js.map +1 -0
- package/dist/runner/dry-run.d.ts +13 -0
- package/dist/runner/dry-run.d.ts.map +1 -0
- package/dist/runner/dry-run.js +108 -0
- package/dist/runner/dry-run.js.map +1 -0
- package/dist/runner/errors.d.ts +22 -0
- package/dist/runner/errors.d.ts.map +1 -0
- package/dist/runner/errors.js +41 -0
- package/dist/runner/errors.js.map +1 -0
- package/dist/runner/execution-environment.d.ts +25 -0
- package/dist/runner/execution-environment.d.ts.map +1 -0
- package/dist/runner/execution-environment.js +122 -0
- package/dist/runner/execution-environment.js.map +1 -0
- package/dist/runner/fixture.d.ts +4 -0
- package/dist/runner/fixture.d.ts.map +1 -0
- package/dist/runner/fixture.js +18 -0
- package/dist/runner/fixture.js.map +1 -0
- package/dist/runner/idempotency.d.ts +29 -0
- package/dist/runner/idempotency.d.ts.map +1 -0
- package/dist/runner/idempotency.js +295 -0
- package/dist/runner/idempotency.js.map +1 -0
- package/dist/runner/orchestrator.d.ts +19 -0
- package/dist/runner/orchestrator.d.ts.map +1 -0
- package/dist/runner/orchestrator.js +149 -0
- package/dist/runner/orchestrator.js.map +1 -0
- package/dist/runner/phase-args.d.ts +11 -0
- package/dist/runner/phase-args.d.ts.map +1 -0
- package/dist/runner/phase-args.js +35 -0
- package/dist/runner/phase-args.js.map +1 -0
- package/dist/runner/phase-infer.d.ts +7 -0
- package/dist/runner/phase-infer.d.ts.map +1 -0
- package/dist/runner/phase-infer.js +45 -0
- package/dist/runner/phase-infer.js.map +1 -0
- package/dist/runner/phases/handoff.d.ts +13 -0
- package/dist/runner/phases/handoff.d.ts.map +1 -0
- package/dist/runner/phases/handoff.js +422 -0
- package/dist/runner/phases/handoff.js.map +1 -0
- package/dist/runner/phases/implementation.d.ts +13 -0
- package/dist/runner/phases/implementation.d.ts.map +1 -0
- package/dist/runner/phases/implementation.js +435 -0
- package/dist/runner/phases/implementation.js.map +1 -0
- package/dist/runner/phases/integration-repair.d.ts +31 -0
- package/dist/runner/phases/integration-repair.d.ts.map +1 -0
- package/dist/runner/phases/integration-repair.js +379 -0
- package/dist/runner/phases/integration-repair.js.map +1 -0
- package/dist/runner/phases/merge.d.ts +13 -0
- package/dist/runner/phases/merge.d.ts.map +1 -0
- package/dist/runner/phases/merge.js +816 -0
- package/dist/runner/phases/merge.js.map +1 -0
- package/dist/runner/phases/planning.d.ts +13 -0
- package/dist/runner/phases/planning.d.ts.map +1 -0
- package/dist/runner/phases/planning.js +306 -0
- package/dist/runner/phases/planning.js.map +1 -0
- package/dist/runner/phases/production-sync.d.ts +16 -0
- package/dist/runner/phases/production-sync.d.ts.map +1 -0
- package/dist/runner/phases/production-sync.js +215 -0
- package/dist/runner/phases/production-sync.js.map +1 -0
- package/dist/runner/phases/revision.d.ts +13 -0
- package/dist/runner/phases/revision.d.ts.map +1 -0
- package/dist/runner/phases/revision.js +565 -0
- package/dist/runner/phases/revision.js.map +1 -0
- package/dist/runner/preflight.d.ts +45 -0
- package/dist/runner/preflight.d.ts.map +1 -0
- package/dist/runner/preflight.js +148 -0
- package/dist/runner/preflight.js.map +1 -0
- package/dist/runner/resolve-route.d.ts +25 -0
- package/dist/runner/resolve-route.d.ts.map +1 -0
- package/dist/runner/resolve-route.js +81 -0
- package/dist/runner/resolve-route.js.map +1 -0
- package/dist/setup/config-builder.d.ts +7 -0
- package/dist/setup/config-builder.d.ts.map +1 -0
- package/dist/setup/config-builder.js +109 -0
- package/dist/setup/config-builder.js.map +1 -0
- package/dist/setup/config-local-editor.d.ts +37 -0
- package/dist/setup/config-local-editor.d.ts.map +1 -0
- package/dist/setup/config-local-editor.js +187 -0
- package/dist/setup/config-local-editor.js.map +1 -0
- package/dist/setup/config-writer.d.ts +20 -0
- package/dist/setup/config-writer.d.ts.map +1 -0
- package/dist/setup/config-writer.js +132 -0
- package/dist/setup/config-writer.js.map +1 -0
- package/dist/setup/control-plane-readiness-server.d.ts +5 -0
- package/dist/setup/control-plane-readiness-server.d.ts.map +1 -0
- package/dist/setup/control-plane-readiness-server.js +9 -0
- package/dist/setup/control-plane-readiness-server.js.map +1 -0
- package/dist/setup/control-plane-readiness.d.ts +23 -0
- package/dist/setup/control-plane-readiness.d.ts.map +1 -0
- package/dist/setup/control-plane-readiness.js +216 -0
- package/dist/setup/control-plane-readiness.js.map +1 -0
- package/dist/setup/control-plane-setup-state.d.ts +6 -0
- package/dist/setup/control-plane-setup-state.d.ts.map +1 -0
- package/dist/setup/control-plane-setup-state.js +41 -0
- package/dist/setup/control-plane-setup-state.js.map +1 -0
- package/dist/setup/control-plane-types.d.ts +97 -0
- package/dist/setup/control-plane-types.d.ts.map +1 -0
- package/dist/setup/control-plane-types.js +2 -0
- package/dist/setup/control-plane-types.js.map +1 -0
- package/dist/setup/doctor-summary.d.ts +16 -0
- package/dist/setup/doctor-summary.d.ts.map +1 -0
- package/dist/setup/doctor-summary.js +62 -0
- package/dist/setup/doctor-summary.js.map +1 -0
- package/dist/setup/env-merge.d.ts +26 -0
- package/dist/setup/env-merge.d.ts.map +1 -0
- package/dist/setup/env-merge.js +201 -0
- package/dist/setup/env-merge.js.map +1 -0
- package/dist/setup/env-writer.d.ts +17 -0
- package/dist/setup/env-writer.d.ts.map +1 -0
- package/dist/setup/env-writer.js +129 -0
- package/dist/setup/env-writer.js.map +1 -0
- package/dist/setup/first-run-readiness.d.ts +204 -0
- package/dist/setup/first-run-readiness.d.ts.map +1 -0
- package/dist/setup/first-run-readiness.js +911 -0
- package/dist/setup/first-run-readiness.js.map +1 -0
- package/dist/setup/generated-instructions.d.ts +19 -0
- package/dist/setup/generated-instructions.d.ts.map +1 -0
- package/dist/setup/generated-instructions.js +70 -0
- package/dist/setup/generated-instructions.js.map +1 -0
- package/dist/setup/github-dispatch-token.d.ts +12 -0
- package/dist/setup/github-dispatch-token.d.ts.map +1 -0
- package/dist/setup/github-dispatch-token.js +66 -0
- package/dist/setup/github-dispatch-token.js.map +1 -0
- package/dist/setup/github-remote-provider.d.ts +192 -0
- package/dist/setup/github-remote-provider.d.ts.map +1 -0
- package/dist/setup/github-remote-provider.js +302 -0
- package/dist/setup/github-remote-provider.js.map +1 -0
- package/dist/setup/github-remote-setup-live.d.ts +49 -0
- package/dist/setup/github-remote-setup-live.d.ts.map +1 -0
- package/dist/setup/github-remote-setup-live.js +400 -0
- package/dist/setup/github-remote-setup-live.js.map +1 -0
- package/dist/setup/github-repo-slug.d.ts +3 -0
- package/dist/setup/github-repo-slug.d.ts.map +1 -0
- package/dist/setup/github-repo-slug.js +23 -0
- package/dist/setup/github-repo-slug.js.map +1 -0
- package/dist/setup/github-secret-encryption.d.ts +2 -0
- package/dist/setup/github-secret-encryption.d.ts.map +1 -0
- package/dist/setup/github-secret-encryption.js +8 -0
- package/dist/setup/github-secret-encryption.js.map +1 -0
- package/dist/setup/github-workflow-permissions.d.ts +54 -0
- package/dist/setup/github-workflow-permissions.d.ts.map +1 -0
- package/dist/setup/github-workflow-permissions.js +110 -0
- package/dist/setup/github-workflow-permissions.js.map +1 -0
- package/dist/setup/gui-view-model.d.ts +85 -0
- package/dist/setup/gui-view-model.d.ts.map +1 -0
- package/dist/setup/gui-view-model.js +404 -0
- package/dist/setup/gui-view-model.js.map +1 -0
- package/dist/setup/guided-config-form.d.ts +8 -0
- package/dist/setup/guided-config-form.d.ts.map +1 -0
- package/dist/setup/guided-config-form.js +36 -0
- package/dist/setup/guided-config-form.js.map +1 -0
- package/dist/setup/harness-dispatch-repo.d.ts +23 -0
- package/dist/setup/harness-dispatch-repo.d.ts.map +1 -0
- package/dist/setup/harness-dispatch-repo.js +110 -0
- package/dist/setup/harness-dispatch-repo.js.map +1 -0
- package/dist/setup/harness-managed-repo-marker.d.ts +59 -0
- package/dist/setup/harness-managed-repo-marker.d.ts.map +1 -0
- package/dist/setup/harness-managed-repo-marker.js +289 -0
- package/dist/setup/harness-managed-repo-marker.js.map +1 -0
- package/dist/setup/harness-provisioning-context.d.ts +58 -0
- package/dist/setup/harness-provisioning-context.d.ts.map +1 -0
- package/dist/setup/harness-provisioning-context.js +204 -0
- package/dist/setup/harness-provisioning-context.js.map +1 -0
- package/dist/setup/harness-provisioning-pending-state.d.ts +59 -0
- package/dist/setup/harness-provisioning-pending-state.d.ts.map +1 -0
- package/dist/setup/harness-provisioning-pending-state.js +167 -0
- package/dist/setup/harness-provisioning-pending-state.js.map +1 -0
- package/dist/setup/harness-repo-provisioning.d.ts +61 -0
- package/dist/setup/harness-repo-provisioning.d.ts.map +1 -0
- package/dist/setup/harness-repo-provisioning.js +1106 -0
- package/dist/setup/harness-repo-provisioning.js.map +1 -0
- package/dist/setup/harness-secret-fingerprint.d.ts +21 -0
- package/dist/setup/harness-secret-fingerprint.d.ts.map +1 -0
- package/dist/setup/harness-secret-fingerprint.js +25 -0
- package/dist/setup/harness-secret-fingerprint.js.map +1 -0
- package/dist/setup/harness-secret-setup.d.ts +81 -0
- package/dist/setup/harness-secret-setup.d.ts.map +1 -0
- package/dist/setup/harness-secret-setup.js +290 -0
- package/dist/setup/harness-secret-setup.js.map +1 -0
- package/dist/setup/harness-template-identity.d.ts +48 -0
- package/dist/setup/harness-template-identity.d.ts.map +1 -0
- package/dist/setup/harness-template-identity.js +114 -0
- package/dist/setup/harness-template-identity.js.map +1 -0
- package/dist/setup/linear-setup-apply.d.ts +30 -0
- package/dist/setup/linear-setup-apply.d.ts.map +1 -0
- package/dist/setup/linear-setup-apply.js +192 -0
- package/dist/setup/linear-setup-apply.js.map +1 -0
- package/dist/setup/linear-setup-client.d.ts +70 -0
- package/dist/setup/linear-setup-client.d.ts.map +1 -0
- package/dist/setup/linear-setup-client.js +180 -0
- package/dist/setup/linear-setup-client.js.map +1 -0
- package/dist/setup/linear-setup-plan.d.ts +88 -0
- package/dist/setup/linear-setup-plan.d.ts.map +1 -0
- package/dist/setup/linear-setup-plan.js +239 -0
- package/dist/setup/linear-setup-plan.js.map +1 -0
- package/dist/setup/linear-setup-summary.d.ts +12 -0
- package/dist/setup/linear-setup-summary.d.ts.map +1 -0
- package/dist/setup/linear-setup-summary.js +21 -0
- package/dist/setup/linear-setup-summary.js.map +1 -0
- package/dist/setup/linear-status-contract.d.ts +15 -0
- package/dist/setup/linear-status-contract.d.ts.map +1 -0
- package/dist/setup/linear-status-contract.js +79 -0
- package/dist/setup/linear-status-contract.js.map +1 -0
- package/dist/setup/linear-webhook-env-local.d.ts +10 -0
- package/dist/setup/linear-webhook-env-local.d.ts.map +1 -0
- package/dist/setup/linear-webhook-env-local.js +74 -0
- package/dist/setup/linear-webhook-env-local.js.map +1 -0
- package/dist/setup/linear-webhook-secret.d.ts +63 -0
- package/dist/setup/linear-webhook-secret.d.ts.map +1 -0
- package/dist/setup/linear-webhook-secret.js +335 -0
- package/dist/setup/linear-webhook-secret.js.map +1 -0
- package/dist/setup/local-apply-actions.d.ts +85 -0
- package/dist/setup/local-apply-actions.d.ts.map +1 -0
- package/dist/setup/local-apply-actions.js +303 -0
- package/dist/setup/local-apply-actions.js.map +1 -0
- package/dist/setup/local-readiness-checks.d.ts +16 -0
- package/dist/setup/local-readiness-checks.d.ts.map +1 -0
- package/dist/setup/local-readiness-checks.js +164 -0
- package/dist/setup/local-readiness-checks.js.map +1 -0
- package/dist/setup/mock-target-workflow-finalization.d.ts +24 -0
- package/dist/setup/mock-target-workflow-finalization.d.ts.map +1 -0
- package/dist/setup/mock-target-workflow-finalization.js +367 -0
- package/dist/setup/mock-target-workflow-finalization.js.map +1 -0
- package/dist/setup/model-settings.d.ts +17 -0
- package/dist/setup/model-settings.d.ts.map +1 -0
- package/dist/setup/model-settings.js +46 -0
- package/dist/setup/model-settings.js.map +1 -0
- package/dist/setup/permission-model.d.ts +46 -0
- package/dist/setup/permission-model.d.ts.map +1 -0
- package/dist/setup/permission-model.js +56 -0
- package/dist/setup/permission-model.js.map +1 -0
- package/dist/setup/redact-secrets.d.ts +17 -0
- package/dist/setup/redact-secrets.d.ts.map +1 -0
- package/dist/setup/redact-secrets.js +51 -0
- package/dist/setup/redact-secrets.js.map +1 -0
- package/dist/setup/remote-actions.d.ts +136 -0
- package/dist/setup/remote-actions.d.ts.map +1 -0
- package/dist/setup/remote-actions.js +75 -0
- package/dist/setup/remote-actions.js.map +1 -0
- package/dist/setup/remote-apply-actions.d.ts +32 -0
- package/dist/setup/remote-apply-actions.d.ts.map +1 -0
- package/dist/setup/remote-apply-actions.js +242 -0
- package/dist/setup/remote-apply-actions.js.map +1 -0
- package/dist/setup/remote-preview-fingerprint.d.ts +15 -0
- package/dist/setup/remote-preview-fingerprint.d.ts.map +1 -0
- package/dist/setup/remote-preview-fingerprint.js +20 -0
- package/dist/setup/remote-preview-fingerprint.js.map +1 -0
- package/dist/setup/remote-setup-summary.d.ts +28 -0
- package/dist/setup/remote-setup-summary.d.ts.map +1 -0
- package/dist/setup/remote-setup-summary.js +93 -0
- package/dist/setup/remote-setup-summary.js.map +1 -0
- package/dist/setup/secret-change-token.d.ts +2 -0
- package/dist/setup/secret-change-token.d.ts.map +1 -0
- package/dist/setup/secret-change-token.js +14 -0
- package/dist/setup/secret-change-token.js.map +1 -0
- package/dist/setup/service-verification.d.ts +60 -0
- package/dist/setup/service-verification.d.ts.map +1 -0
- package/dist/setup/service-verification.js +419 -0
- package/dist/setup/service-verification.js.map +1 -0
- package/dist/setup/setup-actions.d.ts +126 -0
- package/dist/setup/setup-actions.d.ts.map +1 -0
- package/dist/setup/setup-actions.js +128 -0
- package/dist/setup/setup-actions.js.map +1 -0
- package/dist/setup/setup-github-auth.d.ts +5 -0
- package/dist/setup/setup-github-auth.d.ts.map +1 -0
- package/dist/setup/setup-github-auth.js +12 -0
- package/dist/setup/setup-github-auth.js.map +1 -0
- package/dist/setup/setup-state.d.ts +51 -0
- package/dist/setup/setup-state.d.ts.map +1 -0
- package/dist/setup/setup-state.js +19 -0
- package/dist/setup/setup-state.js.map +1 -0
- package/dist/setup/stale-smoke-repo.d.ts +40 -0
- package/dist/setup/stale-smoke-repo.d.ts.map +1 -0
- package/dist/setup/stale-smoke-repo.js +77 -0
- package/dist/setup/stale-smoke-repo.js.map +1 -0
- package/dist/setup/sync-downstream-summaries.d.ts +22 -0
- package/dist/setup/sync-downstream-summaries.d.ts.map +1 -0
- package/dist/setup/sync-downstream-summaries.js +54 -0
- package/dist/setup/sync-downstream-summaries.js.map +1 -0
- package/dist/setup/target-workflow-finalization-lock.d.ts +17 -0
- package/dist/setup/target-workflow-finalization-lock.d.ts.map +1 -0
- package/dist/setup/target-workflow-finalization-lock.js +72 -0
- package/dist/setup/target-workflow-finalization-lock.js.map +1 -0
- package/dist/setup/target-workflow-finalization-types.d.ts +32 -0
- package/dist/setup/target-workflow-finalization-types.d.ts.map +1 -0
- package/dist/setup/target-workflow-finalization-types.js +4 -0
- package/dist/setup/target-workflow-finalization-types.js.map +1 -0
- package/dist/setup/target-workflow-finalization.d.ts +19 -0
- package/dist/setup/target-workflow-finalization.d.ts.map +1 -0
- package/dist/setup/target-workflow-finalization.js +690 -0
- package/dist/setup/target-workflow-finalization.js.map +1 -0
- package/dist/setup/target-workflow-setup.d.ts +63 -0
- package/dist/setup/target-workflow-setup.d.ts.map +1 -0
- package/dist/setup/target-workflow-setup.js +167 -0
- package/dist/setup/target-workflow-setup.js.map +1 -0
- package/dist/setup/test-only-provisioning-provider.d.ts +11 -0
- package/dist/setup/test-only-provisioning-provider.d.ts.map +1 -0
- package/dist/setup/test-only-provisioning-provider.js +37 -0
- package/dist/setup/test-only-provisioning-provider.js.map +1 -0
- package/dist/setup/test-only-remote-setup-provider.d.ts +11 -0
- package/dist/setup/test-only-remote-setup-provider.d.ts.map +1 -0
- package/dist/setup/test-only-remote-setup-provider.js +37 -0
- package/dist/setup/test-only-remote-setup-provider.js.map +1 -0
- package/dist/setup/vercel-bridge-diagnostics.d.ts +101 -0
- package/dist/setup/vercel-bridge-diagnostics.d.ts.map +1 -0
- package/dist/setup/vercel-bridge-diagnostics.js +353 -0
- package/dist/setup/vercel-bridge-diagnostics.js.map +1 -0
- package/dist/setup/vercel-bridge-options.d.ts +35 -0
- package/dist/setup/vercel-bridge-options.d.ts.map +1 -0
- package/dist/setup/vercel-bridge-options.js +95 -0
- package/dist/setup/vercel-bridge-options.js.map +1 -0
- package/dist/setup/vercel-bridge-readiness.d.ts +38 -0
- package/dist/setup/vercel-bridge-readiness.d.ts.map +1 -0
- package/dist/setup/vercel-bridge-readiness.js +85 -0
- package/dist/setup/vercel-bridge-readiness.js.map +1 -0
- package/dist/setup/vercel-bridge-redeploy-poll.d.ts +46 -0
- package/dist/setup/vercel-bridge-redeploy-poll.d.ts.map +1 -0
- package/dist/setup/vercel-bridge-redeploy-poll.js +571 -0
- package/dist/setup/vercel-bridge-redeploy-poll.js.map +1 -0
- package/dist/setup/vercel-bridge-redeploy-state.d.ts +16 -0
- package/dist/setup/vercel-bridge-redeploy-state.d.ts.map +1 -0
- package/dist/setup/vercel-bridge-redeploy-state.js +27 -0
- package/dist/setup/vercel-bridge-redeploy-state.js.map +1 -0
- package/dist/setup/vercel-bridge-structured-log.d.ts +34 -0
- package/dist/setup/vercel-bridge-structured-log.d.ts.map +1 -0
- package/dist/setup/vercel-bridge-structured-log.js +30 -0
- package/dist/setup/vercel-bridge-structured-log.js.map +1 -0
- package/dist/setup/vercel-bridge-verification.d.ts +22 -0
- package/dist/setup/vercel-bridge-verification.d.ts.map +1 -0
- package/dist/setup/vercel-bridge-verification.js +38 -0
- package/dist/setup/vercel-bridge-verification.js.map +1 -0
- package/dist/setup/vercel-production-redeploy.d.ts +57 -0
- package/dist/setup/vercel-production-redeploy.d.ts.map +1 -0
- package/dist/setup/vercel-production-redeploy.js +180 -0
- package/dist/setup/vercel-production-redeploy.js.map +1 -0
- package/dist/setup/vercel-setup-apply.d.ts +69 -0
- package/dist/setup/vercel-setup-apply.d.ts.map +1 -0
- package/dist/setup/vercel-setup-apply.js +779 -0
- package/dist/setup/vercel-setup-apply.js.map +1 -0
- package/dist/setup/vercel-setup-client.d.ts +134 -0
- package/dist/setup/vercel-setup-client.d.ts.map +1 -0
- package/dist/setup/vercel-setup-client.js +416 -0
- package/dist/setup/vercel-setup-client.js.map +1 -0
- package/dist/setup/vercel-setup-plan.d.ts +132 -0
- package/dist/setup/vercel-setup-plan.d.ts.map +1 -0
- package/dist/setup/vercel-setup-plan.js +452 -0
- package/dist/setup/vercel-setup-plan.js.map +1 -0
- package/dist/setup/vercel-setup-summary.d.ts +11 -0
- package/dist/setup/vercel-setup-summary.d.ts.map +1 -0
- package/dist/setup/vercel-setup-summary.js +29 -0
- package/dist/setup/vercel-setup-summary.js.map +1 -0
- package/dist/setup/vercel-webhook-probe.d.ts +17 -0
- package/dist/setup/vercel-webhook-probe.d.ts.map +1 -0
- package/dist/setup/vercel-webhook-probe.js +125 -0
- package/dist/setup/vercel-webhook-probe.js.map +1 -0
- package/dist/setup/workflow-install-merge-errors.d.ts +12 -0
- package/dist/setup/workflow-install-merge-errors.d.ts.map +1 -0
- package/dist/setup/workflow-install-merge-errors.js +130 -0
- package/dist/setup/workflow-install-merge-errors.js.map +1 -0
- package/dist/types/parsed-issue.d.ts +9 -0
- package/dist/types/parsed-issue.d.ts.map +1 -0
- package/dist/types/parsed-issue.js +2 -0
- package/dist/types/parsed-issue.js.map +1 -0
- package/dist/types/run.d.ts +46 -0
- package/dist/types/run.d.ts.map +1 -0
- package/dist/types/run.js +2 -0
- package/dist/types/run.js.map +1 -0
- package/dist/validate/constants.d.ts +3 -0
- package/dist/validate/constants.d.ts.map +1 -0
- package/dist/validate/constants.js +3 -0
- package/dist/validate/constants.js.map +1 -0
- package/dist/validate/issue.d.ts +15 -0
- package/dist/validate/issue.d.ts.map +1 -0
- package/dist/validate/issue.js +177 -0
- package/dist/validate/issue.js.map +1 -0
- package/dist/validate/report.d.ts +3 -0
- package/dist/validate/report.d.ts.map +1 -0
- package/dist/validate/report.js +62 -0
- package/dist/validate/report.js.map +1 -0
- package/dist/validate/types.d.ts +30 -0
- package/dist/validate/types.d.ts.map +1 -0
- package/dist/validate/types.js +2 -0
- package/dist/validate/types.js.map +1 -0
- package/dist/webhook/dispatch-github.d.ts +6 -0
- package/dist/webhook/dispatch-github.d.ts.map +1 -0
- package/dist/webhook/dispatch-github.js +33 -0
- package/dist/webhook/dispatch-github.js.map +1 -0
- package/dist/webhook/dispatch-statuses.d.ts +8 -0
- package/dist/webhook/dispatch-statuses.d.ts.map +1 -0
- package/dist/webhook/dispatch-statuses.js +19 -0
- package/dist/webhook/dispatch-statuses.js.map +1 -0
- package/dist/webhook/extract-issue-key.d.ts +10 -0
- package/dist/webhook/extract-issue-key.d.ts.map +1 -0
- package/dist/webhook/extract-issue-key.js +33 -0
- package/dist/webhook/extract-issue-key.js.map +1 -0
- package/dist/webhook/filter.d.ts +9 -0
- package/dist/webhook/filter.d.ts.map +1 -0
- package/dist/webhook/filter.js +27 -0
- package/dist/webhook/filter.js.map +1 -0
- package/dist/webhook/handle-linear-webhook.d.ts +20 -0
- package/dist/webhook/handle-linear-webhook.d.ts.map +1 -0
- package/dist/webhook/handle-linear-webhook.js +139 -0
- package/dist/webhook/handle-linear-webhook.js.map +1 -0
- package/dist/webhook/parse-linear-issue-event.d.ts +31 -0
- package/dist/webhook/parse-linear-issue-event.d.ts.map +1 -0
- package/dist/webhook/parse-linear-issue-event.js +60 -0
- package/dist/webhook/parse-linear-issue-event.js.map +1 -0
- package/dist/webhook/redact-log.d.ts +15 -0
- package/dist/webhook/redact-log.d.ts.map +1 -0
- package/dist/webhook/redact-log.js +13 -0
- package/dist/webhook/redact-log.js.map +1 -0
- package/dist/webhook/types.d.ts +61 -0
- package/dist/webhook/types.d.ts.map +1 -0
- package/dist/webhook/types.js +2 -0
- package/dist/webhook/types.js.map +1 -0
- package/dist/webhook/verify.d.ts +16 -0
- package/dist/webhook/verify.d.ts.map +1 -0
- package/dist/webhook/verify.js +36 -0
- package/dist/webhook/verify.js.map +1 -0
- package/dist/webhook/workflow-command.d.ts +3 -0
- package/dist/webhook/workflow-command.d.ts.map +1 -0
- package/dist/webhook/workflow-command.js +7 -0
- package/dist/webhook/workflow-command.js.map +1 -0
- package/dist/workflow/dispatch-metadata.d.ts +4 -0
- package/dist/workflow/dispatch-metadata.d.ts.map +1 -0
- package/dist/workflow/dispatch-metadata.js +50 -0
- package/dist/workflow/dispatch-metadata.js.map +1 -0
- package/dist/workflow/manifest-summary.d.ts +10 -0
- package/dist/workflow/manifest-summary.d.ts.map +1 -0
- package/dist/workflow/manifest-summary.js +47 -0
- package/dist/workflow/manifest-summary.js.map +1 -0
- package/dist/workflow/production-sync-dispatch.d.ts +13 -0
- package/dist/workflow/production-sync-dispatch.d.ts.map +1 -0
- package/dist/workflow/production-sync-dispatch.js +38 -0
- package/dist/workflow/production-sync-dispatch.js.map +1 -0
- package/dist/workflow/summarize-manifest.d.ts +2 -0
- package/dist/workflow/summarize-manifest.d.ts.map +1 -0
- package/dist/workflow/summarize-manifest.js +15 -0
- package/dist/workflow/summarize-manifest.js.map +1 -0
- package/dist/workflow/validate.d.ts +7 -0
- package/dist/workflow/validate.d.ts.map +1 -0
- package/dist/workflow/validate.js +32 -0
- package/dist/workflow/validate.js.map +1 -0
- package/dist/workflow/write-dispatch-metadata.d.ts +2 -0
- package/dist/workflow/write-dispatch-metadata.d.ts.map +1 -0
- package/dist/workflow/write-dispatch-metadata.js +4 -0
- package/dist/workflow/write-dispatch-metadata.js.map +1 -0
- package/gui/.next/BUILD_ID +1 -0
- package/gui/.next/app-build-manifest.json +232 -0
- package/gui/.next/app-path-routes-manifest.json +33 -0
- package/gui/.next/build-manifest.json +33 -0
- package/gui/.next/diagnostics/build-diagnostics.json +6 -0
- package/gui/.next/diagnostics/framework.json +1 -0
- package/gui/.next/export-marker.json +6 -0
- package/gui/.next/images-manifest.json +58 -0
- package/gui/.next/next-minimal-server.js.nft.json +1 -0
- package/gui/.next/next-server.js.nft.json +1 -0
- package/gui/.next/package.json +1 -0
- package/gui/.next/prerender-manifest.json +61 -0
- package/gui/.next/react-loadable-manifest.json +1 -0
- package/gui/.next/required-server-files.json +333 -0
- package/gui/.next/routes-manifest.json +59 -0
- package/gui/.next/server/app/_not-found/page.js +2 -0
- package/gui/.next/server/app/_not-found/page.js.nft.json +1 -0
- package/gui/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/_not-found.html +1 -0
- package/gui/.next/server/app/_not-found.meta +8 -0
- package/gui/.next/server/app/_not-found.rsc +17 -0
- package/gui/.next/server/app/api/setup/apply-connect-services/route.js +1 -0
- package/gui/.next/server/app/api/setup/apply-connect-services/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/apply-connect-services/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/apply-harness-repo-provisioning/route.js +1 -0
- package/gui/.next/server/app/api/setup/apply-harness-repo-provisioning/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/apply-harness-repo-provisioning/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/apply-harness-secrets/route.js +1 -0
- package/gui/.next/server/app/api/setup/apply-harness-secrets/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/apply-harness-secrets/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/apply-linear-setup/route.js +1 -0
- package/gui/.next/server/app/api/setup/apply-linear-setup/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/apply-linear-setup/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/apply-local-files/route.js +1 -0
- package/gui/.next/server/app/api/setup/apply-local-files/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/apply-local-files/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/apply-target-workflow/route.js +1 -0
- package/gui/.next/server/app/api/setup/apply-target-workflow/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/apply-target-workflow/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/apply-vercel-bridge/route.js +1 -0
- package/gui/.next/server/app/api/setup/apply-vercel-bridge/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/apply-vercel-bridge/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/finalize-target-workflow/route.js +1 -0
- package/gui/.next/server/app/api/setup/finalize-target-workflow/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/finalize-target-workflow/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/harness-provisioning-summary/route.js +1 -0
- package/gui/.next/server/app/api/setup/harness-provisioning-summary/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/harness-provisioning-summary/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/linear-options/route.js +1 -0
- package/gui/.next/server/app/api/setup/linear-options/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/linear-options/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/linear-summary/route.js +1 -0
- package/gui/.next/server/app/api/setup/linear-summary/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/linear-summary/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/local-readiness/route.js +1 -0
- package/gui/.next/server/app/api/setup/local-readiness/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/local-readiness/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/manual-harness-secret-values/route.js +1 -0
- package/gui/.next/server/app/api/setup/manual-harness-secret-values/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/manual-harness-secret-values/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/preview-connect-services/route.js +1 -0
- package/gui/.next/server/app/api/setup/preview-connect-services/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/preview-connect-services/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/preview-harness-repo-provisioning/route.js +1 -0
- package/gui/.next/server/app/api/setup/preview-harness-repo-provisioning/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/preview-harness-repo-provisioning/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/preview-harness-secrets/route.js +1 -0
- package/gui/.next/server/app/api/setup/preview-harness-secrets/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/preview-harness-secrets/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/preview-linear-setup/route.js +1 -0
- package/gui/.next/server/app/api/setup/preview-linear-setup/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/preview-linear-setup/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/preview-local-files/route.js +1 -0
- package/gui/.next/server/app/api/setup/preview-local-files/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/preview-local-files/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/preview-target-workflow/route.js +1 -0
- package/gui/.next/server/app/api/setup/preview-target-workflow/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/preview-target-workflow/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/preview-vercel-bridge/route.js +1 -0
- package/gui/.next/server/app/api/setup/preview-vercel-bridge/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/preview-vercel-bridge/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/remote-summary/route.js +1 -0
- package/gui/.next/server/app/api/setup/remote-summary/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/remote-summary/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/summary/route.js +1 -0
- package/gui/.next/server/app/api/setup/summary/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/summary/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/vercel-bridge-options/route.js +1 -0
- package/gui/.next/server/app/api/setup/vercel-bridge-options/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/vercel-bridge-options/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/vercel-bridge-redeploy-status/route.js +1 -0
- package/gui/.next/server/app/api/setup/vercel-bridge-redeploy-status/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/vercel-bridge-redeploy-status/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/vercel-summary/route.js +1 -0
- package/gui/.next/server/app/api/setup/vercel-summary/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/vercel-summary/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/verify-harness-repo/route.js +1 -0
- package/gui/.next/server/app/api/setup/verify-harness-repo/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/verify-harness-repo/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/verify-service/route.js +1 -0
- package/gui/.next/server/app/api/setup/verify-service/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/verify-service/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/verify-target-repo/route.js +1 -0
- package/gui/.next/server/app/api/setup/verify-target-repo/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/verify-target-repo/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/index.html +1 -0
- package/gui/.next/server/app/index.meta +9 -0
- package/gui/.next/server/app/index.rsc +18 -0
- package/gui/.next/server/app/page.js +2 -0
- package/gui/.next/server/app/page.js.nft.json +1 -0
- package/gui/.next/server/app/page_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/settings/configure/page.js +10 -0
- package/gui/.next/server/app/settings/configure/page.js.nft.json +1 -0
- package/gui/.next/server/app/settings/configure/page_client-reference-manifest.js +1 -0
- package/gui/.next/server/app-paths-manifest.json +33 -0
- package/gui/.next/server/chunks/120.js +81 -0
- package/gui/.next/server/chunks/200.js +1 -0
- package/gui/.next/server/chunks/332.js +9 -0
- package/gui/.next/server/chunks/383.js +6 -0
- package/gui/.next/server/chunks/477.js +16 -0
- package/gui/.next/server/chunks/585.js +1 -0
- package/gui/.next/server/chunks/711.js +1 -0
- package/gui/.next/server/chunks/900.js +1 -0
- package/gui/.next/server/chunks/901.js +22 -0
- package/gui/.next/server/functions-config-manifest.json +4 -0
- package/gui/.next/server/interception-route-rewrite-manifest.js +1 -0
- package/gui/.next/server/middleware-build-manifest.js +1 -0
- package/gui/.next/server/middleware-manifest.json +6 -0
- package/gui/.next/server/middleware-react-loadable-manifest.js +1 -0
- package/gui/.next/server/next-font-manifest.js +1 -0
- package/gui/.next/server/next-font-manifest.json +1 -0
- package/gui/.next/server/pages/404.html +1 -0
- package/gui/.next/server/pages/500.html +1 -0
- package/gui/.next/server/pages/_app.js +1 -0
- package/gui/.next/server/pages/_app.js.nft.json +1 -0
- package/gui/.next/server/pages/_document.js +1 -0
- package/gui/.next/server/pages/_document.js.nft.json +1 -0
- package/gui/.next/server/pages/_error.js +19 -0
- package/gui/.next/server/pages/_error.js.nft.json +1 -0
- package/gui/.next/server/pages-manifest.json +6 -0
- package/gui/.next/server/server-reference-manifest.js +1 -0
- package/gui/.next/server/server-reference-manifest.json +1 -0
- package/gui/.next/server/webpack-runtime.js +1 -0
- package/gui/.next/static/7x8X_k4tESvkyqRnNCC9E/_buildManifest.js +1 -0
- package/gui/.next/static/7x8X_k4tESvkyqRnNCC9E/_ssgManifest.js +1 -0
- package/gui/.next/static/chunks/17a9af85-3150126cc8b0fbba.js +1 -0
- package/gui/.next/static/chunks/18-7be73bec2ceaa744.js +1 -0
- package/gui/.next/static/chunks/51af2d27-9a58e6b5db9a3047.js +1 -0
- package/gui/.next/static/chunks/661-5fc9351358e2f084.js +1 -0
- package/gui/.next/static/chunks/87c73c54-24122e7b92478d00.js +1 -0
- package/gui/.next/static/chunks/app/_not-found/page-f15332c94524c284.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/apply-connect-services/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/apply-harness-repo-provisioning/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/apply-harness-secrets/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/apply-linear-setup/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/apply-local-files/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/apply-target-workflow/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/apply-vercel-bridge/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/finalize-target-workflow/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/harness-provisioning-summary/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/linear-options/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/linear-summary/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/local-readiness/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/manual-harness-secret-values/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/preview-connect-services/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/preview-harness-repo-provisioning/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/preview-harness-secrets/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/preview-linear-setup/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/preview-local-files/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/preview-target-workflow/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/preview-vercel-bridge/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/remote-summary/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/summary/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/vercel-bridge-options/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/vercel-bridge-redeploy-status/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/vercel-summary/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/verify-harness-repo/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/verify-service/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/verify-target-repo/route-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/layout-10445a363bff6a38.js +1 -0
- package/gui/.next/static/chunks/app/page-979ec1702bd9938a.js +1 -0
- package/gui/.next/static/chunks/app/settings/configure/page-25b2288ace2949a1.js +1 -0
- package/gui/.next/static/chunks/framework-7318ce553e854ad6.js +1 -0
- package/gui/.next/static/chunks/main-app-732547e2b1a794b6.js +1 -0
- package/gui/.next/static/chunks/main-f7a784f5852cbbd1.js +1 -0
- package/gui/.next/static/chunks/pages/_app-2e239ff05bfdf6d6.js +1 -0
- package/gui/.next/static/chunks/pages/_error-bda15e7831eec981.js +1 -0
- package/gui/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
- package/gui/.next/static/chunks/webpack-1e50074b7e886e1b.js +1 -0
- package/gui/.next/static/css/cc2acc71c03f3b4b.css +3 -0
- package/gui/.next/static/media/19cfc7226ec3afaa-s.woff2 +0 -0
- package/gui/.next/static/media/21350d82a1f187e9-s.woff2 +0 -0
- package/gui/.next/static/media/8e9860b6e62d6359-s.woff2 +0 -0
- package/gui/.next/static/media/ba9851c3c22cd980-s.woff2 +0 -0
- package/gui/.next/static/media/c5fe6dc8356a8c31-s.woff2 +0 -0
- package/gui/.next/static/media/df0a9ae256c0569c-s.woff2 +0 -0
- package/gui/.next/static/media/e4af272ccee01ff0-s.p.woff2 +0 -0
- package/gui/.next/trace +4 -0
- package/gui/.next/types/app/api/setup/apply-connect-services/route.ts +347 -0
- package/gui/.next/types/app/api/setup/apply-harness-repo-provisioning/route.ts +347 -0
- package/gui/.next/types/app/api/setup/apply-harness-secrets/route.ts +347 -0
- package/gui/.next/types/app/api/setup/apply-linear-setup/route.ts +347 -0
- package/gui/.next/types/app/api/setup/apply-local-files/route.ts +347 -0
- package/gui/.next/types/app/api/setup/apply-target-workflow/route.ts +347 -0
- package/gui/.next/types/app/api/setup/apply-vercel-bridge/route.ts +347 -0
- package/gui/.next/types/app/api/setup/finalize-target-workflow/route.ts +347 -0
- package/gui/.next/types/app/api/setup/harness-provisioning-summary/route.ts +347 -0
- package/gui/.next/types/app/api/setup/linear-options/route.ts +347 -0
- package/gui/.next/types/app/api/setup/linear-summary/route.ts +347 -0
- package/gui/.next/types/app/api/setup/local-readiness/route.ts +347 -0
- package/gui/.next/types/app/api/setup/manual-harness-secret-values/route.ts +347 -0
- package/gui/.next/types/app/api/setup/preview-connect-services/route.ts +347 -0
- package/gui/.next/types/app/api/setup/preview-harness-repo-provisioning/route.ts +347 -0
- package/gui/.next/types/app/api/setup/preview-harness-secrets/route.ts +347 -0
- package/gui/.next/types/app/api/setup/preview-linear-setup/route.ts +347 -0
- package/gui/.next/types/app/api/setup/preview-local-files/route.ts +347 -0
- package/gui/.next/types/app/api/setup/preview-target-workflow/route.ts +347 -0
- package/gui/.next/types/app/api/setup/preview-vercel-bridge/route.ts +347 -0
- package/gui/.next/types/app/api/setup/remote-summary/route.ts +347 -0
- package/gui/.next/types/app/api/setup/summary/route.ts +347 -0
- package/gui/.next/types/app/api/setup/vercel-bridge-options/route.ts +347 -0
- package/gui/.next/types/app/api/setup/vercel-bridge-redeploy-status/route.ts +347 -0
- package/gui/.next/types/app/api/setup/vercel-summary/route.ts +347 -0
- package/gui/.next/types/app/api/setup/verify-harness-repo/route.ts +347 -0
- package/gui/.next/types/app/api/setup/verify-service/route.ts +347 -0
- package/gui/.next/types/app/api/setup/verify-target-repo/route.ts +347 -0
- package/gui/.next/types/app/layout.ts +84 -0
- package/gui/.next/types/app/page.ts +84 -0
- package/gui/.next/types/app/settings/configure/page.ts +84 -0
- package/gui/.next/types/cache-life.d.ts +141 -0
- package/gui/.next/types/package.json +1 -0
- package/gui/.next/types/routes.d.ts +101 -0
- package/gui/.next/types/validator.ts +331 -0
- package/gui/next.config.mjs +13 -0
- package/gui/postcss.config.mjs +8 -0
- package/gui/public/setup/github-token/github-pat-generate-classic.png +0 -0
- package/gui/public/setup/github-token/github-pat-generate-new-token.png +0 -0
- package/gui/public/setup/github-token/github-pat-verify-email.png +0 -0
- package/package.json +62 -0
- package/templates/.env.example +37 -0
- package/templates/.harness/config.example.json +83 -0
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { HarnessConfig } from "../config/types.js";
|
|
2
|
+
import { EventLogger } from "../artifacts/events.js";
|
|
3
|
+
import type { ResolvedTarget } from "../resolver/target-repo.js";
|
|
4
|
+
import type { ErrorClassification, RunPhase } from "../types/run.js";
|
|
5
|
+
import type { ParsedIssue } from "../types/parsed-issue.js";
|
|
6
|
+
import type { LinearIssueSnapshot } from "../linear/client.js";
|
|
7
|
+
export interface PreflightOptions {
|
|
8
|
+
issueKey: string;
|
|
9
|
+
configPath: string;
|
|
10
|
+
fixturePath?: string;
|
|
11
|
+
linearApiKey?: string;
|
|
12
|
+
}
|
|
13
|
+
export interface PreflightContext {
|
|
14
|
+
config: HarnessConfig;
|
|
15
|
+
issue: LinearIssueSnapshot;
|
|
16
|
+
parsed: ParsedIssue;
|
|
17
|
+
resolved: ResolvedTarget;
|
|
18
|
+
runId: string;
|
|
19
|
+
runDirectory: string;
|
|
20
|
+
events: EventLogger;
|
|
21
|
+
phase: RunPhase;
|
|
22
|
+
phaseInferredFromStatus: string | null;
|
|
23
|
+
startedAt: Date;
|
|
24
|
+
}
|
|
25
|
+
export interface PreflightFailure {
|
|
26
|
+
success: false;
|
|
27
|
+
config: HarnessConfig | null;
|
|
28
|
+
issue: LinearIssueSnapshot | null;
|
|
29
|
+
parsed: ParsedIssue;
|
|
30
|
+
resolved: ResolvedTarget | null;
|
|
31
|
+
runId: string;
|
|
32
|
+
runDirectory: string;
|
|
33
|
+
events: EventLogger | null;
|
|
34
|
+
phase: RunPhase;
|
|
35
|
+
phaseInferredFromStatus: string | null;
|
|
36
|
+
startedAt: Date;
|
|
37
|
+
errorClassification: ErrorClassification;
|
|
38
|
+
message: string;
|
|
39
|
+
}
|
|
40
|
+
export type PreflightResult = {
|
|
41
|
+
success: true;
|
|
42
|
+
context: PreflightContext;
|
|
43
|
+
} | PreflightFailure;
|
|
44
|
+
export declare function runPreflight(options: PreflightOptions): Promise<PreflightResult>;
|
|
45
|
+
//# sourceMappingURL=preflight.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preflight.d.ts","sourceRoot":"","sources":["../../src/runner/preflight.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AASrD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAMjE,OAAO,KAAK,EAAE,mBAAmB,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AACrE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,EAAE,aAAa,CAAC;IACtB,KAAK,EAAE,mBAAmB,CAAC;IAC3B,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,cAAc,CAAC;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,WAAW,CAAC;IACpB,KAAK,EAAE,QAAQ,CAAC;IAChB,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,SAAS,EAAE,IAAI,CAAC;CACjB;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,KAAK,CAAC;IACf,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;IAC7B,KAAK,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAClC,MAAM,EAAE,WAAW,CAAC;IACpB,QAAQ,EAAE,cAAc,GAAG,IAAI,CAAC;IAChC,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,EAAE,MAAM,CAAC;IACrB,MAAM,EAAE,WAAW,GAAG,IAAI,CAAC;IAC3B,KAAK,EAAE,QAAQ,CAAC;IAChB,uBAAuB,EAAE,MAAM,GAAG,IAAI,CAAC;IACvC,SAAS,EAAE,IAAI,CAAC;IAChB,mBAAmB,EAAE,mBAAmB,CAAC;IACzC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,MAAM,eAAe,GACvB;IAAE,OAAO,EAAE,IAAI,CAAC;IAAC,OAAO,EAAE,gBAAgB,CAAA;CAAE,GAC5C,gBAAgB,CAAC;AAErB,wBAAsB,YAAY,CAChC,OAAO,EAAE,gBAAgB,GACxB,OAAO,CAAC,eAAe,CAAC,CAwJ1B"}
|
|
@@ -0,0 +1,148 @@
|
|
|
1
|
+
import { mkdir, writeFile } from "node:fs/promises";
|
|
2
|
+
import { MILESTONE } from "../config/defaults.js";
|
|
3
|
+
import { loadHarnessConfig } from "../config/load-config.js";
|
|
4
|
+
import { EventLogger } from "../artifacts/events.js";
|
|
5
|
+
import { createRunId } from "../artifacts/run-id.js";
|
|
6
|
+
import { getRunDirectory, getErrorPath } from "../artifacts/paths.js";
|
|
7
|
+
import { writeIssueSnapshot } from "../artifacts/snapshot.js";
|
|
8
|
+
import { fetchLinearIssue } from "../linear/client.js";
|
|
9
|
+
import { parseIssueDescription } from "../linear/parser.js";
|
|
10
|
+
import { assertRepoAllowed } from "../resolver/allowed-repos.js";
|
|
11
|
+
import { ResolverError } from "../resolver/errors.js";
|
|
12
|
+
import { resolveTargetRepo } from "../resolver/target-repo.js";
|
|
13
|
+
import { assertBaseBranchExists } from "../github/base-branch.js";
|
|
14
|
+
import { GitHubClient } from "../github/client.js";
|
|
15
|
+
import { inferPhaseFromStatus } from "./phase-infer.js";
|
|
16
|
+
import { logExecutionEnvironmentMarker } from "./execution-environment.js";
|
|
17
|
+
import { loadIssueFixture } from "./fixture.js";
|
|
18
|
+
export async function runPreflight(options) {
|
|
19
|
+
const startedAt = new Date();
|
|
20
|
+
const runId = createRunId(options.issueKey, startedAt);
|
|
21
|
+
let config = null;
|
|
22
|
+
let runDirectory = "";
|
|
23
|
+
let events = null;
|
|
24
|
+
let issue = null;
|
|
25
|
+
let parsed = {
|
|
26
|
+
task: "",
|
|
27
|
+
acceptanceCriteria: [],
|
|
28
|
+
outOfScope: [],
|
|
29
|
+
parseErrors: [],
|
|
30
|
+
};
|
|
31
|
+
let resolved = null;
|
|
32
|
+
let phase = "none";
|
|
33
|
+
let phaseInferredFromStatus = null;
|
|
34
|
+
try {
|
|
35
|
+
const loaded = await loadHarnessConfig({ configPath: options.configPath });
|
|
36
|
+
config = loaded.config;
|
|
37
|
+
runDirectory = getRunDirectory(config.logDirectory, options.issueKey, runId);
|
|
38
|
+
events = new EventLogger(runDirectory);
|
|
39
|
+
await events.init();
|
|
40
|
+
await mkdir(runDirectory, { recursive: true });
|
|
41
|
+
const executionEnvironment = logExecutionEnvironmentMarker();
|
|
42
|
+
await events.log("run_started", "info", {
|
|
43
|
+
issueKey: options.issueKey,
|
|
44
|
+
milestone: MILESTONE,
|
|
45
|
+
executionEnvironment: executionEnvironment.kind,
|
|
46
|
+
executionEnvironmentMarker: executionEnvironment.marker,
|
|
47
|
+
hostname: executionEnvironment.hostname,
|
|
48
|
+
codespaceName: executionEnvironment.codespaceName,
|
|
49
|
+
githubRunId: executionEnvironment.githubRunId,
|
|
50
|
+
githubWorkflow: executionEnvironment.githubWorkflow,
|
|
51
|
+
gitBranch: executionEnvironment.gitBranch,
|
|
52
|
+
gitSha: executionEnvironment.gitSha,
|
|
53
|
+
});
|
|
54
|
+
await events.log("config_loaded", "info", {
|
|
55
|
+
configSource: loaded.source.label,
|
|
56
|
+
configSourceKind: loaded.source.kind,
|
|
57
|
+
});
|
|
58
|
+
if (options.fixturePath) {
|
|
59
|
+
issue = await loadIssueFixture(options.fixturePath, options.issueKey);
|
|
60
|
+
await events.log("issue_loaded_from_fixture", "info", {
|
|
61
|
+
issueKey: issue.identifier,
|
|
62
|
+
fixturePath: options.fixturePath,
|
|
63
|
+
});
|
|
64
|
+
}
|
|
65
|
+
else {
|
|
66
|
+
const apiKey = options.linearApiKey ?? process.env.LINEAR_API_KEY ?? "";
|
|
67
|
+
if (!apiKey) {
|
|
68
|
+
throw new Error("LINEAR_API_KEY is required for live issue fetch");
|
|
69
|
+
}
|
|
70
|
+
issue = await fetchLinearIssue(options.issueKey, apiKey);
|
|
71
|
+
await events.log("issue_fetched", "info", { issueKey: issue.identifier });
|
|
72
|
+
}
|
|
73
|
+
await writeIssueSnapshot(runDirectory, issue);
|
|
74
|
+
parsed = parseIssueDescription(issue.description ?? "");
|
|
75
|
+
await events.log("issue_parsed", "info", {
|
|
76
|
+
parseErrors: parsed.parseErrors,
|
|
77
|
+
hasTargetRepo: Boolean(parsed.targetRepoRaw),
|
|
78
|
+
});
|
|
79
|
+
const inferred = inferPhaseFromStatus(issue.status, config);
|
|
80
|
+
phase = inferred.phase;
|
|
81
|
+
phaseInferredFromStatus = inferred.statusLabel;
|
|
82
|
+
await events.log("phase_inferred", "info", { phase, status: phaseInferredFromStatus });
|
|
83
|
+
if (parsed.parseErrors.length > 0) {
|
|
84
|
+
throw new ResolverError("ambiguous_issue", parsed.parseErrors.join("; "));
|
|
85
|
+
}
|
|
86
|
+
resolved = resolveTargetRepo(parsed, {
|
|
87
|
+
projectName: issue.projectName ?? undefined,
|
|
88
|
+
teamName: issue.teamName ?? undefined,
|
|
89
|
+
}, config);
|
|
90
|
+
assertRepoAllowed(resolved.targetRepo, config);
|
|
91
|
+
if (process.env.GITHUB_TOKEN) {
|
|
92
|
+
await assertBaseBranchExists(new GitHubClient({ token: process.env.GITHUB_TOKEN }), resolved.targetRepo, resolved.baseBranch);
|
|
93
|
+
}
|
|
94
|
+
await events.log("repo_resolved", "info", { ...resolved });
|
|
95
|
+
return {
|
|
96
|
+
success: true,
|
|
97
|
+
context: {
|
|
98
|
+
config,
|
|
99
|
+
issue,
|
|
100
|
+
parsed,
|
|
101
|
+
resolved,
|
|
102
|
+
runId,
|
|
103
|
+
runDirectory,
|
|
104
|
+
events,
|
|
105
|
+
phase,
|
|
106
|
+
phaseInferredFromStatus,
|
|
107
|
+
startedAt,
|
|
108
|
+
},
|
|
109
|
+
};
|
|
110
|
+
}
|
|
111
|
+
catch (error) {
|
|
112
|
+
let errorClassification = null;
|
|
113
|
+
if (error instanceof ResolverError) {
|
|
114
|
+
errorClassification = error.classification;
|
|
115
|
+
}
|
|
116
|
+
else if (error instanceof Error && error.message.startsWith("wrong_status")) {
|
|
117
|
+
errorClassification = "wrong_status";
|
|
118
|
+
}
|
|
119
|
+
else if (error instanceof Error &&
|
|
120
|
+
error.message.startsWith("base_branch_missing")) {
|
|
121
|
+
errorClassification = "base_branch_missing";
|
|
122
|
+
}
|
|
123
|
+
else if (error instanceof Error &&
|
|
124
|
+
error.message.startsWith("wrong_pr_base_branch")) {
|
|
125
|
+
errorClassification = "wrong_pr_base_branch";
|
|
126
|
+
}
|
|
127
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
128
|
+
if (runDirectory) {
|
|
129
|
+
await writeFile(getErrorPath(runDirectory), `${JSON.stringify({ message, errorClassification }, null, 2)}\n`, "utf8").catch(() => undefined);
|
|
130
|
+
}
|
|
131
|
+
return {
|
|
132
|
+
success: false,
|
|
133
|
+
config,
|
|
134
|
+
issue,
|
|
135
|
+
parsed,
|
|
136
|
+
resolved,
|
|
137
|
+
runId,
|
|
138
|
+
runDirectory,
|
|
139
|
+
events,
|
|
140
|
+
phase,
|
|
141
|
+
phaseInferredFromStatus,
|
|
142
|
+
startedAt,
|
|
143
|
+
errorClassification,
|
|
144
|
+
message,
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
//# sourceMappingURL=preflight.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"preflight.js","sourceRoot":"","sources":["../../src/runner/preflight.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { RunPhase } from "../types/run.js";
|
|
2
|
+
import type { DispatchPhaseArg } from "./phase-args.js";
|
|
3
|
+
export type ResolveRoutePhaseArg = DispatchPhaseArg;
|
|
4
|
+
export interface ResolveRouteResult {
|
|
5
|
+
issueKey: string;
|
|
6
|
+
phase: RunPhase;
|
|
7
|
+
repoConfigId: string;
|
|
8
|
+
baseBranch: string;
|
|
9
|
+
targetRepo: string;
|
|
10
|
+
linearStatus: string | null;
|
|
11
|
+
mergeConcurrencyGroup: string;
|
|
12
|
+
shouldRun: boolean;
|
|
13
|
+
}
|
|
14
|
+
export declare function buildMergeConcurrencyGroup(repoConfigId: string, baseBranch: string): string;
|
|
15
|
+
export interface ResolveRouteOptions {
|
|
16
|
+
issueKey: string;
|
|
17
|
+
configPath: string;
|
|
18
|
+
phase?: ResolveRoutePhaseArg;
|
|
19
|
+
linearApiKey?: string;
|
|
20
|
+
}
|
|
21
|
+
export declare class LinearAuthError extends Error {
|
|
22
|
+
constructor(message: string);
|
|
23
|
+
}
|
|
24
|
+
export declare function resolveRoute(options: ResolveRouteOptions): Promise<ResolveRouteResult>;
|
|
25
|
+
//# sourceMappingURL=resolve-route.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolve-route.d.ts","sourceRoot":"","sources":["../../src/runner/resolve-route.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAExD,MAAM,MAAM,oBAAoB,GAAG,gBAAgB,CAAC;AAEpD,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,QAAQ,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,qBAAqB,EAAE,MAAM,CAAC;IAC9B,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,wBAAgB,0BAA0B,CACxC,YAAY,EAAE,MAAM,EACpB,UAAU,EAAE,MAAM,GACjB,MAAM,CAGR;AA0DD,MAAM,WAAW,mBAAmB;IAClC,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,qBAAa,eAAgB,SAAQ,KAAK;gBAC5B,OAAO,EAAE,MAAM;CAI5B;AAED,wBAAsB,YAAY,CAChC,OAAO,EAAE,mBAAmB,GAC3B,OAAO,CAAC,kBAAkB,CAAC,CA6C7B"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { loadHarnessConfig } from "../config/load-config.js";
|
|
2
|
+
import { getTransitionalStatus } from "../config/status-names.js";
|
|
3
|
+
import { fetchLinearIssue } from "../linear/client.js";
|
|
4
|
+
import { findLatestPhaseStartRunId } from "../linear/comments.js";
|
|
5
|
+
import { createLinearClient, listIssueComments } from "../linear/writer.js";
|
|
6
|
+
import { parseIssueDescription } from "../linear/parser.js";
|
|
7
|
+
import { resolveTargetRepo } from "../resolver/target-repo.js";
|
|
8
|
+
import { GitHubClient } from "../github/client.js";
|
|
9
|
+
import { findImplementationPullRequest } from "../github/pr-discovery.js";
|
|
10
|
+
import { isImplementationStartStale } from "./building-recovery.js";
|
|
11
|
+
import { inferPhaseFromStatus } from "./phase-infer.js";
|
|
12
|
+
export function buildMergeConcurrencyGroup(repoConfigId, baseBranch) {
|
|
13
|
+
const sanitizedBranch = baseBranch.replace(/[^a-zA-Z0-9._-]/g, "-");
|
|
14
|
+
return `${repoConfigId}-${sanitizedBranch}`;
|
|
15
|
+
}
|
|
16
|
+
function resolvePhase(phaseArg, inferredPhase) {
|
|
17
|
+
if (phaseArg === "auto") {
|
|
18
|
+
return inferredPhase;
|
|
19
|
+
}
|
|
20
|
+
return phaseArg;
|
|
21
|
+
}
|
|
22
|
+
async function applyBuildingRecoveryRouting(issue, config, phase, targetRepo, baseBranch, linearApiKey) {
|
|
23
|
+
const building = getTransitionalStatus(config, "buildingInProgress").toLowerCase();
|
|
24
|
+
const status = issue.status?.trim().toLowerCase() ?? "";
|
|
25
|
+
if (status !== building) {
|
|
26
|
+
return { phase, shouldRun: phase !== "none" };
|
|
27
|
+
}
|
|
28
|
+
const githubToken = process.env.GITHUB_TOKEN;
|
|
29
|
+
if (githubToken) {
|
|
30
|
+
const github = new GitHubClient({ token: githubToken });
|
|
31
|
+
const discovered = await findImplementationPullRequest(github, targetRepo, baseBranch, issue.identifier);
|
|
32
|
+
if (discovered) {
|
|
33
|
+
return { phase: "handoff", shouldRun: true };
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
if (phase === "implementation") {
|
|
37
|
+
const client = createLinearClient(linearApiKey);
|
|
38
|
+
const comments = await listIssueComments(client, issue.id);
|
|
39
|
+
const latestStartRunId = findLatestPhaseStartRunId(comments, config.orchestratorMarker, "implementation_start");
|
|
40
|
+
if (latestStartRunId && !isImplementationStartStale(latestStartRunId)) {
|
|
41
|
+
return { phase: "implementation", shouldRun: false };
|
|
42
|
+
}
|
|
43
|
+
return { phase: "implementation", shouldRun: true };
|
|
44
|
+
}
|
|
45
|
+
return { phase, shouldRun: phase !== "none" };
|
|
46
|
+
}
|
|
47
|
+
export class LinearAuthError extends Error {
|
|
48
|
+
constructor(message) {
|
|
49
|
+
super(message);
|
|
50
|
+
this.name = "LinearAuthError";
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
export async function resolveRoute(options) {
|
|
54
|
+
const { config } = await loadHarnessConfig({ configPath: options.configPath });
|
|
55
|
+
const apiKey = options.linearApiKey ?? process.env.LINEAR_API_KEY ?? "";
|
|
56
|
+
if (!apiKey) {
|
|
57
|
+
throw new LinearAuthError("LINEAR_API_KEY is required");
|
|
58
|
+
}
|
|
59
|
+
const issueKey = options.issueKey.toUpperCase();
|
|
60
|
+
const issue = await fetchLinearIssue(issueKey, apiKey);
|
|
61
|
+
const parsed = parseIssueDescription(issue.description ?? "");
|
|
62
|
+
const resolved = resolveTargetRepo(parsed, {
|
|
63
|
+
projectName: issue.projectName ?? undefined,
|
|
64
|
+
teamName: issue.teamName ?? undefined,
|
|
65
|
+
}, config);
|
|
66
|
+
const inferred = inferPhaseFromStatus(issue.status, config);
|
|
67
|
+
const phaseArg = options.phase ?? "auto";
|
|
68
|
+
const phase = resolvePhase(phaseArg, inferred.phase);
|
|
69
|
+
const recovery = await applyBuildingRecoveryRouting(issue, config, phase, resolved.targetRepo, resolved.baseBranch, apiKey);
|
|
70
|
+
return {
|
|
71
|
+
issueKey,
|
|
72
|
+
phase: recovery.phase,
|
|
73
|
+
repoConfigId: resolved.repoConfigId,
|
|
74
|
+
baseBranch: resolved.baseBranch,
|
|
75
|
+
targetRepo: resolved.targetRepo,
|
|
76
|
+
linearStatus: issue.status,
|
|
77
|
+
mergeConcurrencyGroup: buildMergeConcurrencyGroup(resolved.repoConfigId, resolved.baseBranch),
|
|
78
|
+
shouldRun: recovery.shouldRun,
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=resolve-route.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"resolve-route.js","sourceRoot":"","sources":["../../src/runner/resolve-route.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { type HarnessConfig } from "../config/schema.js";
|
|
2
|
+
import type { SetupConfigBuildInput } from "./setup-state.js";
|
|
3
|
+
export declare function buildHarnessConfig(input: SetupConfigBuildInput): HarnessConfig;
|
|
4
|
+
export declare function formatHarnessConfigJson(config: HarnessConfig): string;
|
|
5
|
+
export declare function buildHarnessConfigJson(input: SetupConfigBuildInput): string;
|
|
6
|
+
export declare function buildExampleTargetAppConfig(): HarnessConfig;
|
|
7
|
+
//# sourceMappingURL=config-builder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-builder.d.ts","sourceRoot":"","sources":["../../src/setup/config-builder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAuB,KAAK,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAG9E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AA0B9D,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,qBAAqB,GAAG,aAAa,CA2D9E;AAED,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAErE;AAED,wBAAgB,sBAAsB,CAAC,KAAK,EAAE,qBAAqB,GAAG,MAAM,CAE3E;AAED,wBAAgB,2BAA2B,IAAI,aAAa,CAkB3D"}
|
|
@@ -0,0 +1,109 @@
|
|
|
1
|
+
import { harnessConfigSchema } from "../config/schema.js";
|
|
2
|
+
import { validateRepoClosure } from "../config/load-config.js";
|
|
3
|
+
import { DEFAULT_MODEL_ID } from "../config/defaults.js";
|
|
4
|
+
const EXAMPLE_LINEAR_STATUSES = {
|
|
5
|
+
eligibleStatuses: {
|
|
6
|
+
planning: ["Ready for Planning"],
|
|
7
|
+
implementation: ["Ready for Build"],
|
|
8
|
+
handoff: ["PR Open"],
|
|
9
|
+
revision: ["Needs Revision"],
|
|
10
|
+
merge: ["Ready to Merge"],
|
|
11
|
+
},
|
|
12
|
+
transitionalStatuses: {
|
|
13
|
+
planningInProgress: "Planning",
|
|
14
|
+
buildingInProgress: "Building",
|
|
15
|
+
prOpen: "PR Open",
|
|
16
|
+
pmReview: "PM Review",
|
|
17
|
+
blocked: "Blocked",
|
|
18
|
+
readyForBuild: "Ready for Build",
|
|
19
|
+
needsRevision: "Needs Revision",
|
|
20
|
+
revisingInProgress: "Revising",
|
|
21
|
+
readyToMerge: "Ready to Merge",
|
|
22
|
+
mergingInProgress: "Merging",
|
|
23
|
+
mergedToDev: "Merged to Dev",
|
|
24
|
+
mergedDeployed: "Merged / Deployed",
|
|
25
|
+
},
|
|
26
|
+
};
|
|
27
|
+
export function buildHarnessConfig(input) {
|
|
28
|
+
const modelId = input.modelId ?? DEFAULT_MODEL_ID;
|
|
29
|
+
const allowedTargetRepos = [...new Set(input.repos.map((repo) => repo.targetRepo))];
|
|
30
|
+
const config = harnessConfigSchema.parse({
|
|
31
|
+
version: 1,
|
|
32
|
+
agentProvider: {
|
|
33
|
+
id: "cursor",
|
|
34
|
+
model: { id: modelId },
|
|
35
|
+
},
|
|
36
|
+
defaultModel: { id: modelId },
|
|
37
|
+
linear: {
|
|
38
|
+
teamKey: input.linearTeamKey ?? "TEAM",
|
|
39
|
+
...EXAMPLE_LINEAR_STATUSES,
|
|
40
|
+
},
|
|
41
|
+
planning: { timeoutSeconds: 1800 },
|
|
42
|
+
implementation: { timeoutSeconds: 3600, branchPrefix: "cursor" },
|
|
43
|
+
handoff: {
|
|
44
|
+
allowPmReviewWithoutPreview: true,
|
|
45
|
+
previewRequiredForSuccess: false,
|
|
46
|
+
},
|
|
47
|
+
revision: { timeoutSeconds: 3600 },
|
|
48
|
+
merge: {
|
|
49
|
+
mergeMethod: "squash",
|
|
50
|
+
deleteBranchAfterMerge: false,
|
|
51
|
+
allowPendingChecks: false,
|
|
52
|
+
allowUnknownChecks: false,
|
|
53
|
+
allowNeutralChecks: true,
|
|
54
|
+
deploymentRequiredForSuccess: false,
|
|
55
|
+
deploymentPollTimeoutSeconds: 300,
|
|
56
|
+
deploymentPollIntervalSeconds: 15,
|
|
57
|
+
checkPollTimeoutSeconds: 120,
|
|
58
|
+
},
|
|
59
|
+
preview: {
|
|
60
|
+
pollTimeoutSeconds: 300,
|
|
61
|
+
pollIntervalSeconds: 15,
|
|
62
|
+
},
|
|
63
|
+
repos: input.repos.map((repo) => ({
|
|
64
|
+
id: repo.id,
|
|
65
|
+
linearProjects: repo.linearProjects,
|
|
66
|
+
linearTeams: repo.linearTeams,
|
|
67
|
+
targetRepo: repo.targetRepo,
|
|
68
|
+
baseBranch: repo.baseBranch ?? "dev",
|
|
69
|
+
productionBranch: repo.productionBranch ?? "main",
|
|
70
|
+
previewProvider: repo.previewProvider ?? "vercel",
|
|
71
|
+
integrationPreviewUrl: repo.integrationPreviewUrl,
|
|
72
|
+
productionUrl: repo.productionUrl,
|
|
73
|
+
integrationSuccessStatus: repo.integrationSuccessStatus ?? "Merged to Dev",
|
|
74
|
+
productionSuccessStatus: repo.productionSuccessStatus ?? "Merged / Deployed",
|
|
75
|
+
validation: repo.validationCommands
|
|
76
|
+
? { commands: repo.validationCommands }
|
|
77
|
+
: { commands: ["npm run lint", "npm run build"] },
|
|
78
|
+
})),
|
|
79
|
+
allowedTargetRepos,
|
|
80
|
+
});
|
|
81
|
+
validateRepoClosure(config);
|
|
82
|
+
return config;
|
|
83
|
+
}
|
|
84
|
+
export function formatHarnessConfigJson(config) {
|
|
85
|
+
return `${JSON.stringify(config, null, 2)}\n`;
|
|
86
|
+
}
|
|
87
|
+
export function buildHarnessConfigJson(input) {
|
|
88
|
+
return formatHarnessConfigJson(buildHarnessConfig(input));
|
|
89
|
+
}
|
|
90
|
+
export function buildExampleTargetAppConfig() {
|
|
91
|
+
return buildHarnessConfig({
|
|
92
|
+
repos: [
|
|
93
|
+
{
|
|
94
|
+
id: "target-app",
|
|
95
|
+
linearProjects: ["Example Target App"],
|
|
96
|
+
targetRepo: "https://github.com/owner/example-target-app",
|
|
97
|
+
baseBranch: "dev",
|
|
98
|
+
productionBranch: "main",
|
|
99
|
+
previewProvider: "vercel",
|
|
100
|
+
integrationSuccessStatus: "Merged to Dev",
|
|
101
|
+
productionSuccessStatus: "Merged / Deployed",
|
|
102
|
+
productionUrl: "https://www.example.com",
|
|
103
|
+
integrationPreviewUrl: "https://staging.example.com",
|
|
104
|
+
validationCommands: ["npm run lint", "npm run build"],
|
|
105
|
+
},
|
|
106
|
+
],
|
|
107
|
+
});
|
|
108
|
+
}
|
|
109
|
+
//# sourceMappingURL=config-builder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-builder.js","sourceRoot":"","sources":["../../src/setup/config-builder.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { HarnessConfig } from "../config/types.js";
|
|
2
|
+
import { buildHarnessConfig } from "./config-builder.js";
|
|
3
|
+
import { type SetupConfigBuildInput, type TargetRepoSetupInput } from "./setup-state.js";
|
|
4
|
+
export interface TargetRepoFormInput {
|
|
5
|
+
id: string;
|
|
6
|
+
targetRepo: string;
|
|
7
|
+
linearProjects?: string;
|
|
8
|
+
linearTeams?: string;
|
|
9
|
+
baseBranch?: string;
|
|
10
|
+
productionBranch?: string;
|
|
11
|
+
previewProvider?: string;
|
|
12
|
+
integrationPreviewUrl?: string;
|
|
13
|
+
productionUrl?: string;
|
|
14
|
+
integrationSuccessStatus?: string;
|
|
15
|
+
productionSuccessStatus?: string;
|
|
16
|
+
validationCommands?: string;
|
|
17
|
+
}
|
|
18
|
+
export interface LocalConfigFormInput {
|
|
19
|
+
repos: TargetRepoFormInput[];
|
|
20
|
+
linearTeamKey?: string;
|
|
21
|
+
modelId?: string;
|
|
22
|
+
}
|
|
23
|
+
export declare function normalizeTargetRepoFormInput(input: TargetRepoFormInput): TargetRepoSetupInput;
|
|
24
|
+
export declare function normalizeConfigFormInput(input: LocalConfigFormInput): SetupConfigBuildInput;
|
|
25
|
+
export declare function validateConfigFormInput(input: LocalConfigFormInput): {
|
|
26
|
+
config: ReturnType<typeof buildHarnessConfig>;
|
|
27
|
+
json: string;
|
|
28
|
+
};
|
|
29
|
+
export declare function createEmptyConfigFormInput(): LocalConfigFormInput;
|
|
30
|
+
export declare function isExampleHarnessConfig(config: HarnessConfig): boolean;
|
|
31
|
+
export declare function sanitizeConfigFormInputForFirstRun(input: LocalConfigFormInput): LocalConfigFormInput;
|
|
32
|
+
export declare function isExampleTemplateValue(value?: string): boolean;
|
|
33
|
+
export declare function configToFormInput(config: HarnessConfig): LocalConfigFormInput;
|
|
34
|
+
export declare function loadConfigFormDefaults(options?: {
|
|
35
|
+
cwd?: string;
|
|
36
|
+
}): Promise<LocalConfigFormInput>;
|
|
37
|
+
//# sourceMappingURL=config-local-editor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"config-local-editor.d.ts","sourceRoot":"","sources":["../../src/setup/config-local-editor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAIxD,OAAO,EAAE,kBAAkB,EAA0B,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAEL,KAAK,qBAAqB,EAC1B,KAAK,oBAAoB,EAC1B,MAAM,kBAAkB,CAAC;AAY1B,MAAM,WAAW,mBAAmB;IAClC,EAAE,EAAE,MAAM,CAAC;IACX,UAAU,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IACjC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,oBAAoB;IACnC,KAAK,EAAE,mBAAmB,EAAE,CAAC;IAC7B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAwBD,wBAAgB,4BAA4B,CAC1C,KAAK,EAAE,mBAAmB,GACzB,oBAAoB,CAiBtB;AAED,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,oBAAoB,GAC1B,qBAAqB,CAUvB;AAED,wBAAgB,uBAAuB,CAAC,KAAK,EAAE,oBAAoB,GAAG;IACpE,MAAM,EAAE,UAAU,CAAC,OAAO,kBAAkB,CAAC,CAAC;IAC9C,IAAI,EAAE,MAAM,CAAC;CACd,CAKA;AAED,wBAAgB,0BAA0B,IAAI,oBAAoB,CAIjE;AAED,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,aAAa,GAAG,OAAO,CAqBrE;AAED,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,oBAAoB,GAC1B,oBAAoB,CAgCtB;AAED,wBAAgB,sBAAsB,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAe9D;AAYD,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,aAAa,GAAG,oBAAoB,CAsB7E;AAED,wBAAsB,sBAAsB,CAAC,OAAO,CAAC,EAAE;IACrD,GAAG,CAAC,EAAE,MAAM,CAAC;CACd,GAAG,OAAO,CAAC,oBAAoB,CAAC,CA8BhC"}
|