p-dev-harness 0.3.1 → 0.4.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/README.md +12 -4
- package/dist/agents/cursor-provider.d.ts.map +1 -1
- package/dist/agents/cursor-provider.js +9 -8
- package/dist/agents/cursor-provider.js.map +1 -1
- package/dist/agents/index.d.ts +3 -4
- package/dist/agents/index.d.ts.map +1 -1
- package/dist/agents/index.js +2 -5
- package/dist/agents/index.js.map +1 -1
- package/dist/agents/types.d.ts +36 -2
- package/dist/agents/types.d.ts.map +1 -1
- package/dist/artifacts/redact.d.ts +2 -0
- package/dist/artifacts/redact.d.ts.map +1 -1
- package/dist/artifacts/redact.js +15 -1
- package/dist/artifacts/redact.js.map +1 -1
- package/dist/artifacts/write-json-out-manifest.d.ts +17 -0
- package/dist/artifacts/write-json-out-manifest.d.ts.map +1 -0
- package/dist/artifacts/write-json-out-manifest.js +68 -0
- package/dist/artifacts/write-json-out-manifest.js.map +1 -0
- package/dist/cli/commands/canary-runner-config.d.ts +2 -0
- package/dist/cli/commands/canary-runner-config.d.ts.map +1 -0
- package/dist/cli/commands/canary-runner-config.js +6 -0
- package/dist/cli/commands/canary-runner-config.js.map +1 -0
- package/dist/cli/commands/doctor.d.ts.map +1 -1
- package/dist/cli/commands/doctor.js +129 -0
- package/dist/cli/commands/doctor.js.map +1 -1
- package/dist/cli/commands/resolve-route.d.ts.map +1 -1
- package/dist/cli/commands/resolve-route.js +5 -0
- package/dist/cli/commands/resolve-route.js.map +1 -1
- package/dist/cli/commands/run.d.ts +1 -0
- package/dist/cli/commands/run.d.ts.map +1 -1
- package/dist/cli/commands/run.js +54 -12
- package/dist/cli/commands/run.js.map +1 -1
- package/dist/cli/commands/sync-managed-runner.d.ts +7 -0
- package/dist/cli/commands/sync-managed-runner.d.ts.map +1 -0
- package/dist/cli/commands/sync-managed-runner.js +89 -0
- package/dist/cli/commands/sync-managed-runner.js.map +1 -0
- package/dist/cli/program.d.ts.map +1 -1
- package/dist/cli/program.js +27 -0
- package/dist/cli/program.js.map +1 -1
- package/dist/config/assert-cloud-config-fingerprint.d.ts +10 -0
- package/dist/config/assert-cloud-config-fingerprint.d.ts.map +1 -0
- package/dist/config/assert-cloud-config-fingerprint.js +26 -0
- package/dist/config/assert-cloud-config-fingerprint.js.map +1 -0
- package/dist/config/cloud-config-fingerprint.d.ts +26 -0
- package/dist/config/cloud-config-fingerprint.d.ts.map +1 -0
- package/dist/config/cloud-config-fingerprint.js +64 -0
- package/dist/config/cloud-config-fingerprint.js.map +1 -0
- package/dist/config/legacy-linear-top-level.d.ts +16 -0
- package/dist/config/legacy-linear-top-level.d.ts.map +1 -0
- package/dist/config/legacy-linear-top-level.js +42 -0
- package/dist/config/legacy-linear-top-level.js.map +1 -0
- package/dist/config/linear-association-gate.d.ts +26 -0
- package/dist/config/linear-association-gate.d.ts.map +1 -0
- package/dist/config/linear-association-gate.js +46 -0
- package/dist/config/linear-association-gate.js.map +1 -0
- package/dist/config/resolve-linear-team.d.ts +10 -0
- package/dist/config/resolve-linear-team.d.ts.map +1 -0
- package/dist/config/resolve-linear-team.js +24 -0
- package/dist/config/resolve-linear-team.js.map +1 -0
- package/dist/config/resolve-linear-workspace.d.ts +83 -0
- package/dist/config/resolve-linear-workspace.d.ts.map +1 -0
- package/dist/config/resolve-linear-workspace.js +244 -0
- package/dist/config/resolve-linear-workspace.js.map +1 -0
- package/dist/config/role-models.d.ts +160 -0
- package/dist/config/role-models.d.ts.map +1 -0
- package/dist/config/role-models.js +31 -0
- package/dist/config/role-models.js.map +1 -0
- package/dist/config/runner-upgrade-sync-gate.d.ts +10 -0
- package/dist/config/runner-upgrade-sync-gate.d.ts.map +1 -0
- package/dist/config/runner-upgrade-sync-gate.js +24 -0
- package/dist/config/runner-upgrade-sync-gate.js.map +1 -0
- package/dist/config/schema.d.ts +266 -0
- package/dist/config/schema.d.ts.map +1 -1
- package/dist/config/schema.js +14 -0
- package/dist/config/schema.js.map +1 -1
- package/dist/config/types.d.ts +1 -1
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/workspace-root.d.ts +7 -0
- package/dist/config/workspace-root.d.ts.map +1 -0
- package/dist/config/workspace-root.js +21 -0
- package/dist/config/workspace-root.js.map +1 -0
- package/dist/cursor/agent-factory.d.ts +8 -0
- package/dist/cursor/agent-factory.d.ts.map +1 -1
- package/dist/cursor/agent-factory.js +34 -5
- package/dist/cursor/agent-factory.js.map +1 -1
- package/dist/cursor/builder-resume-errors.d.ts +3 -0
- package/dist/cursor/builder-resume-errors.d.ts.map +1 -0
- package/dist/cursor/builder-resume-errors.js +32 -0
- package/dist/cursor/builder-resume-errors.js.map +1 -0
- package/dist/cursor/model.d.ts +18 -22
- package/dist/cursor/model.d.ts.map +1 -1
- package/dist/cursor/model.js +73 -25
- package/dist/cursor/model.js.map +1 -1
- package/dist/cursor/run-observer.d.ts +8 -1
- package/dist/cursor/run-observer.d.ts.map +1 -1
- package/dist/cursor/run-observer.js +9 -1
- package/dist/cursor/run-observer.js.map +1 -1
- package/dist/github/auth-verification-retry.d.ts +12 -0
- package/dist/github/auth-verification-retry.d.ts.map +1 -0
- package/dist/github/auth-verification-retry.js +47 -0
- package/dist/github/auth-verification-retry.js.map +1 -0
- package/dist/github/client.d.ts +53 -4
- package/dist/github/client.d.ts.map +1 -1
- package/dist/github/client.js +108 -7
- package/dist/github/client.js.map +1 -1
- package/dist/gui/configure-health.js +2 -2
- package/dist/gui/configure-health.js.map +1 -1
- package/dist/gui/repo-root.d.ts +3 -0
- package/dist/gui/repo-root.d.ts.map +1 -1
- package/dist/gui/repo-root.js +16 -1
- package/dist/gui/repo-root.js.map +1 -1
- package/dist/gui/start-configure-stable.js +6 -2
- package/dist/gui/start-configure-stable.js.map +1 -1
- package/dist/gui/start-gui.js +7 -3
- package/dist/gui/start-gui.js.map +1 -1
- package/dist/linear/client.d.ts +4 -0
- package/dist/linear/client.d.ts.map +1 -1
- package/dist/linear/client.js +7 -0
- package/dist/linear/client.js.map +1 -1
- package/dist/linear/comments.d.ts +9 -0
- package/dist/linear/comments.d.ts.map +1 -1
- package/dist/linear/comments.js +34 -0
- package/dist/linear/comments.js.map +1 -1
- package/dist/linear/issue-query.d.ts +1 -0
- package/dist/linear/issue-query.d.ts.map +1 -1
- package/dist/linear/issue-query.js +3 -0
- package/dist/linear/issue-query.js.map +1 -1
- package/dist/linear/markers.d.ts +7 -0
- package/dist/linear/markers.d.ts.map +1 -1
- package/dist/linear/markers.js +21 -0
- package/dist/linear/markers.js.map +1 -1
- package/dist/linear/parser.d.ts +2 -1
- package/dist/linear/parser.d.ts.map +1 -1
- package/dist/linear/parser.js +46 -0
- package/dist/linear/parser.js.map +1 -1
- package/dist/linear/project-harness-metadata.d.ts +10 -0
- package/dist/linear/project-harness-metadata.d.ts.map +1 -0
- package/dist/linear/project-harness-metadata.js +109 -0
- package/dist/linear/project-harness-metadata.js.map +1 -0
- package/dist/linear/project-metadata-sync.d.ts +29 -0
- package/dist/linear/project-metadata-sync.d.ts.map +1 -0
- package/dist/linear/project-metadata-sync.js +64 -0
- package/dist/linear/project-metadata-sync.js.map +1 -0
- package/dist/linear/run-status-comment.d.ts +49 -0
- package/dist/linear/run-status-comment.d.ts.map +1 -0
- package/dist/linear/run-status-comment.js +118 -0
- package/dist/linear/run-status-comment.js.map +1 -0
- package/dist/linear/writer.d.ts +8 -0
- package/dist/linear/writer.d.ts.map +1 -1
- package/dist/linear/writer.js +13 -0
- package/dist/linear/writer.js.map +1 -1
- package/dist/observability/adapters/fake.d.ts +17 -0
- package/dist/observability/adapters/fake.d.ts.map +1 -0
- package/dist/observability/adapters/fake.js +205 -0
- package/dist/observability/adapters/fake.js.map +1 -0
- package/dist/observability/adapters/noop.d.ts +5 -0
- package/dist/observability/adapters/noop.d.ts.map +1 -0
- package/dist/observability/adapters/noop.js +51 -0
- package/dist/observability/adapters/noop.js.map +1 -0
- package/dist/observability/adapters/posthog.d.ts +12 -0
- package/dist/observability/adapters/posthog.d.ts.map +1 -0
- package/dist/observability/adapters/posthog.js +142 -0
- package/dist/observability/adapters/posthog.js.map +1 -0
- package/dist/observability/adapters/sentry.d.ts +12 -0
- package/dist/observability/adapters/sentry.d.ts.map +1 -0
- package/dist/observability/adapters/sentry.js +217 -0
- package/dist/observability/adapters/sentry.js.map +1 -0
- package/dist/observability/analytics-schemas.d.ts +59 -0
- package/dist/observability/analytics-schemas.d.ts.map +1 -0
- package/dist/observability/analytics-schemas.js +119 -0
- package/dist/observability/analytics-schemas.js.map +1 -0
- package/dist/observability/consent.d.ts +14 -0
- package/dist/observability/consent.d.ts.map +1 -0
- package/dist/observability/consent.js +35 -0
- package/dist/observability/consent.js.map +1 -0
- package/dist/observability/constants.d.ts +18 -0
- package/dist/observability/constants.d.ts.map +1 -0
- package/dist/observability/constants.js +18 -0
- package/dist/observability/constants.js.map +1 -0
- package/dist/observability/context.d.ts +21 -0
- package/dist/observability/context.d.ts.map +1 -0
- package/dist/observability/context.js +105 -0
- package/dist/observability/context.js.map +1 -0
- package/dist/observability/facade-runtime-state.d.ts +17 -0
- package/dist/observability/facade-runtime-state.d.ts.map +1 -0
- package/dist/observability/facade-runtime-state.js +23 -0
- package/dist/observability/facade-runtime-state.js.map +1 -0
- package/dist/observability/facade.d.ts +44 -0
- package/dist/observability/facade.d.ts.map +1 -0
- package/dist/observability/facade.js +432 -0
- package/dist/observability/facade.js.map +1 -0
- package/dist/observability/fatal-handlers.d.ts +4 -0
- package/dist/observability/fatal-handlers.d.ts.map +1 -0
- package/dist/observability/fatal-handlers.js +54 -0
- package/dist/observability/fatal-handlers.js.map +1 -0
- package/dist/observability/identity.d.ts +4 -0
- package/dist/observability/identity.d.ts.map +1 -0
- package/dist/observability/identity.js +11 -0
- package/dist/observability/identity.js.map +1 -0
- package/dist/observability/index.d.ts +9 -0
- package/dist/observability/index.d.ts.map +1 -0
- package/dist/observability/index.js +6 -0
- package/dist/observability/index.js.map +1 -0
- package/dist/observability/local-state.d.ts +14 -0
- package/dist/observability/local-state.d.ts.map +1 -0
- package/dist/observability/local-state.js +107 -0
- package/dist/observability/local-state.js.map +1 -0
- package/dist/observability/package-config.d.ts +11 -0
- package/dist/observability/package-config.d.ts.map +1 -0
- package/dist/observability/package-config.js +117 -0
- package/dist/observability/package-config.js.map +1 -0
- package/dist/observability/posthog-dashboard-contract.d.ts +46 -0
- package/dist/observability/posthog-dashboard-contract.d.ts.map +1 -0
- package/dist/observability/posthog-dashboard-contract.js +200 -0
- package/dist/observability/posthog-dashboard-contract.js.map +1 -0
- package/dist/observability/privacy-schema.d.ts +13 -0
- package/dist/observability/privacy-schema.d.ts.map +1 -0
- package/dist/observability/privacy-schema.js +204 -0
- package/dist/observability/privacy-schema.js.map +1 -0
- package/dist/observability/product-error-messages.d.ts +2 -0
- package/dist/observability/product-error-messages.d.ts.map +1 -0
- package/dist/observability/product-error-messages.js +15 -0
- package/dist/observability/product-error-messages.js.map +1 -0
- package/dist/observability/product-errors.d.ts +12 -0
- package/dist/observability/product-errors.d.ts.map +1 -0
- package/dist/observability/product-errors.js +109 -0
- package/dist/observability/product-errors.js.map +1 -0
- package/dist/observability/provisioning-analytics.d.ts +12 -0
- package/dist/observability/provisioning-analytics.d.ts.map +1 -0
- package/dist/observability/provisioning-analytics.js +11 -0
- package/dist/observability/provisioning-analytics.js.map +1 -0
- package/dist/observability/redaction.d.ts +10 -0
- package/dist/observability/redaction.d.ts.map +1 -0
- package/dist/observability/redaction.js +72 -0
- package/dist/observability/redaction.js.map +1 -0
- package/dist/observability/runtime-eligibility.d.ts +6 -0
- package/dist/observability/runtime-eligibility.d.ts.map +1 -0
- package/dist/observability/runtime-eligibility.js +33 -0
- package/dist/observability/runtime-eligibility.js.map +1 -0
- package/dist/observability/sentry-outbound-privacy.d.ts +12 -0
- package/dist/observability/sentry-outbound-privacy.d.ts.map +1 -0
- package/dist/observability/sentry-outbound-privacy.js +168 -0
- package/dist/observability/sentry-outbound-privacy.js.map +1 -0
- package/dist/observability/session-dedupe.d.ts +8 -0
- package/dist/observability/session-dedupe.d.ts.map +1 -0
- package/dist/observability/session-dedupe.js +42 -0
- package/dist/observability/session-dedupe.js.map +1 -0
- package/dist/observability/session-handoff.d.ts +10 -0
- package/dist/observability/session-handoff.d.ts.map +1 -0
- package/dist/observability/session-handoff.js +25 -0
- package/dist/observability/session-handoff.js.map +1 -0
- package/dist/observability/transport-lifecycle.d.ts +20 -0
- package/dist/observability/transport-lifecycle.d.ts.map +1 -0
- package/dist/observability/transport-lifecycle.js +69 -0
- package/dist/observability/transport-lifecycle.js.map +1 -0
- package/dist/observability/types.d.ts +189 -0
- package/dist/observability/types.d.ts.map +1 -0
- package/dist/observability/types.js +2 -0
- package/dist/observability/types.js.map +1 -0
- package/dist/p-dev/cli.d.ts +1 -1
- package/dist/p-dev/cli.d.ts.map +1 -1
- package/dist/p-dev/cli.js +1 -1
- package/dist/p-dev/cli.js.map +1 -1
- package/dist/p-dev/git-object-plumbing.d.ts +20 -0
- package/dist/p-dev/git-object-plumbing.d.ts.map +1 -1
- package/dist/p-dev/git-object-plumbing.js +106 -13
- package/dist/p-dev/git-object-plumbing.js.map +1 -1
- package/dist/p-dev/launch.d.ts.map +1 -1
- package/dist/p-dev/launch.js +77 -15
- package/dist/p-dev/launch.js.map +1 -1
- package/dist/p-dev/main.js +9 -1
- package/dist/p-dev/main.js.map +1 -1
- package/dist/p-dev/package-paths.d.ts +12 -0
- package/dist/p-dev/package-paths.d.ts.map +1 -1
- package/dist/p-dev/package-paths.js +48 -2
- package/dist/p-dev/package-paths.js.map +1 -1
- package/dist/p-dev/workspace-snapshot-generator.d.ts.map +1 -1
- package/dist/p-dev/workspace-snapshot-generator.js +18 -0
- package/dist/p-dev/workspace-snapshot-generator.js.map +1 -1
- package/dist/p-dev/workspace-snapshot-manifest.d.ts.map +1 -1
- package/dist/p-dev/workspace-snapshot-manifest.js +48 -0
- package/dist/p-dev/workspace-snapshot-manifest.js.map +1 -1
- package/dist/p-dev/workspace-snapshot-types.d.ts +8 -0
- package/dist/p-dev/workspace-snapshot-types.d.ts.map +1 -1
- package/dist/preview/preview-capability.d.ts +9 -0
- package/dist/preview/preview-capability.d.ts.map +1 -0
- package/dist/preview/preview-capability.js +15 -0
- package/dist/preview/preview-capability.js.map +1 -0
- package/dist/product/initialization-state.d.ts +15 -0
- package/dist/product/initialization-state.d.ts.map +1 -0
- package/dist/product/initialization-state.js +37 -0
- package/dist/product/initialization-state.js.map +1 -0
- package/dist/product/product-marker.d.ts +77 -0
- package/dist/product/product-marker.d.ts.map +1 -0
- package/dist/product/product-marker.js +62 -0
- package/dist/product/product-marker.js.map +1 -0
- package/dist/product/read-product-marker.d.ts +15 -0
- package/dist/product/read-product-marker.d.ts.map +1 -0
- package/dist/product/read-product-marker.js +28 -0
- package/dist/product/read-product-marker.js.map +1 -0
- package/dist/prompts/builder.d.ts +10 -1
- package/dist/prompts/builder.d.ts.map +1 -1
- package/dist/prompts/builder.js +16 -2
- package/dist/prompts/builder.js.map +1 -1
- package/dist/resolver/errors.d.ts +1 -1
- package/dist/resolver/errors.d.ts.map +1 -1
- package/dist/resolver/errors.js.map +1 -1
- package/dist/resolver/target-repo.d.ts +4 -1
- package/dist/resolver/target-repo.d.ts.map +1 -1
- package/dist/resolver/target-repo.js +40 -0
- package/dist/resolver/target-repo.js.map +1 -1
- package/dist/runner/builder-thread-acquire.d.ts +41 -0
- package/dist/runner/builder-thread-acquire.d.ts.map +1 -0
- package/dist/runner/builder-thread-acquire.js +224 -0
- package/dist/runner/builder-thread-acquire.js.map +1 -0
- package/dist/runner/builder-thread-evidence.d.ts +13 -0
- package/dist/runner/builder-thread-evidence.d.ts.map +1 -0
- package/dist/runner/builder-thread-evidence.js +23 -0
- package/dist/runner/builder-thread-evidence.js.map +1 -0
- package/dist/runner/builder-thread-idempotency.d.ts +17 -0
- package/dist/runner/builder-thread-idempotency.d.ts.map +1 -0
- package/dist/runner/builder-thread-idempotency.js +12 -0
- package/dist/runner/builder-thread-idempotency.js.map +1 -0
- package/dist/runner/builder-thread-lineage-errors.d.ts +7 -0
- package/dist/runner/builder-thread-lineage-errors.d.ts.map +1 -0
- package/dist/runner/builder-thread-lineage-errors.js +11 -0
- package/dist/runner/builder-thread-lineage-errors.js.map +1 -0
- package/dist/runner/builder-thread-lineage.d.ts +18 -0
- package/dist/runner/builder-thread-lineage.d.ts.map +1 -0
- package/dist/runner/builder-thread-lineage.js +342 -0
- package/dist/runner/builder-thread-lineage.js.map +1 -0
- package/dist/runner/builder-thread-types.d.ts +30 -0
- package/dist/runner/builder-thread-types.d.ts.map +1 -0
- package/dist/runner/builder-thread-types.js +2 -0
- package/dist/runner/builder-thread-types.js.map +1 -0
- package/dist/runner/delivery-dedup.d.ts +26 -0
- package/dist/runner/delivery-dedup.d.ts.map +1 -0
- package/dist/runner/delivery-dedup.js +44 -0
- package/dist/runner/delivery-dedup.js.map +1 -0
- package/dist/runner/failure-finalization.d.ts +34 -0
- package/dist/runner/failure-finalization.d.ts.map +1 -0
- package/dist/runner/failure-finalization.js +154 -0
- package/dist/runner/failure-finalization.js.map +1 -0
- package/dist/runner/fixture.d.ts +1 -1
- package/dist/runner/fixture.d.ts.map +1 -1
- package/dist/runner/fixture.js +3 -0
- package/dist/runner/fixture.js.map +1 -1
- package/dist/runner/phases/handoff.d.ts.map +1 -1
- package/dist/runner/phases/handoff.js +59 -32
- package/dist/runner/phases/handoff.js.map +1 -1
- package/dist/runner/phases/implementation.d.ts.map +1 -1
- package/dist/runner/phases/implementation.js +147 -24
- package/dist/runner/phases/implementation.js.map +1 -1
- package/dist/runner/phases/integration-repair.d.ts +18 -0
- package/dist/runner/phases/integration-repair.d.ts.map +1 -1
- package/dist/runner/phases/integration-repair.js +93 -7
- package/dist/runner/phases/integration-repair.js.map +1 -1
- package/dist/runner/phases/merge.d.ts.map +1 -1
- package/dist/runner/phases/merge.js +129 -51
- package/dist/runner/phases/merge.js.map +1 -1
- package/dist/runner/phases/planning.d.ts.map +1 -1
- package/dist/runner/phases/planning.js +46 -8
- package/dist/runner/phases/planning.js.map +1 -1
- package/dist/runner/phases/production-sync.d.ts.map +1 -1
- package/dist/runner/phases/production-sync.js +28 -4
- package/dist/runner/phases/production-sync.js.map +1 -1
- package/dist/runner/phases/revision.d.ts.map +1 -1
- package/dist/runner/phases/revision.js +112 -32
- package/dist/runner/phases/revision.js.map +1 -1
- package/dist/runner/preflight.d.ts +2 -0
- package/dist/runner/preflight.d.ts.map +1 -1
- package/dist/runner/preflight.js +112 -3
- package/dist/runner/preflight.js.map +1 -1
- package/dist/runner/resolve-route.d.ts +1 -0
- package/dist/runner/resolve-route.d.ts.map +1 -1
- package/dist/runner/resolve-route.js +26 -0
- package/dist/runner/resolve-route.js.map +1 -1
- package/dist/runner/run-generation.d.ts +2 -0
- package/dist/runner/run-generation.d.ts.map +1 -0
- package/dist/runner/run-generation.js +19 -0
- package/dist/runner/run-generation.js.map +1 -0
- package/dist/runner/uninitialized-product-routing.d.ts +24 -0
- package/dist/runner/uninitialized-product-routing.d.ts.map +1 -0
- package/dist/runner/uninitialized-product-routing.js +70 -0
- package/dist/runner/uninitialized-product-routing.js.map +1 -0
- package/dist/setup/config-builder.d.ts.map +1 -1
- package/dist/setup/config-builder.js +12 -0
- package/dist/setup/config-builder.js.map +1 -1
- package/dist/setup/control-plane-readiness.d.ts +8 -1
- package/dist/setup/control-plane-readiness.d.ts.map +1 -1
- package/dist/setup/control-plane-readiness.js +63 -19
- package/dist/setup/control-plane-readiness.js.map +1 -1
- package/dist/setup/control-plane-setup-state.d.ts +13 -3
- package/dist/setup/control-plane-setup-state.d.ts.map +1 -1
- package/dist/setup/control-plane-setup-state.js +30 -3
- package/dist/setup/control-plane-setup-state.js.map +1 -1
- package/dist/setup/control-plane-state-lock.d.ts +12 -0
- package/dist/setup/control-plane-state-lock.d.ts.map +1 -0
- package/dist/setup/control-plane-state-lock.js +79 -0
- package/dist/setup/control-plane-state-lock.js.map +1 -0
- package/dist/setup/control-plane-types.d.ts +72 -1
- package/dist/setup/control-plane-types.d.ts.map +1 -1
- package/dist/setup/first-run-readiness.d.ts +4 -0
- package/dist/setup/first-run-readiness.d.ts.map +1 -1
- package/dist/setup/first-run-readiness.js +2 -2
- package/dist/setup/first-run-readiness.js.map +1 -1
- package/dist/setup/git-askpass-credentials.d.ts +19 -0
- package/dist/setup/git-askpass-credentials.d.ts.map +1 -0
- package/dist/setup/git-askpass-credentials.js +60 -0
- package/dist/setup/git-askpass-credentials.js.map +1 -0
- package/dist/setup/github-dispatch-token.d.ts +4 -0
- package/dist/setup/github-dispatch-token.d.ts.map +1 -1
- package/dist/setup/github-dispatch-token.js +23 -3
- package/dist/setup/github-dispatch-token.js.map +1 -1
- package/dist/setup/github-remote-provider.d.ts +44 -0
- package/dist/setup/github-remote-provider.d.ts.map +1 -1
- package/dist/setup/github-remote-provider.js +22 -2
- package/dist/setup/github-remote-provider.js.map +1 -1
- package/dist/setup/github-remote-setup-live.d.ts +30 -1
- package/dist/setup/github-remote-setup-live.d.ts.map +1 -1
- package/dist/setup/github-remote-setup-live.js +68 -11
- package/dist/setup/github-remote-setup-live.js.map +1 -1
- package/dist/setup/github-repository-name.d.ts +15 -0
- package/dist/setup/github-repository-name.d.ts.map +1 -0
- package/dist/setup/github-repository-name.js +54 -0
- package/dist/setup/github-repository-name.js.map +1 -0
- package/dist/setup/github-target-repository-provider-live.d.ts +35 -0
- package/dist/setup/github-target-repository-provider-live.d.ts.map +1 -0
- package/dist/setup/github-target-repository-provider-live.js +236 -0
- package/dist/setup/github-target-repository-provider-live.js.map +1 -0
- package/dist/setup/github-target-repository-provider-mock.d.ts +47 -0
- package/dist/setup/github-target-repository-provider-mock.d.ts.map +1 -0
- package/dist/setup/github-target-repository-provider-mock.js +189 -0
- package/dist/setup/github-target-repository-provider-mock.js.map +1 -0
- package/dist/setup/github-target-repository-provider.d.ts +44 -0
- package/dist/setup/github-target-repository-provider.d.ts.map +1 -0
- package/dist/setup/github-target-repository-provider.js +7 -0
- package/dist/setup/github-target-repository-provider.js.map +1 -0
- package/dist/setup/github-workflow-permissions.d.ts +1 -1
- package/dist/setup/github-workflow-permissions.d.ts.map +1 -1
- package/dist/setup/github-workflow-permissions.js +1 -1
- package/dist/setup/github-workflow-permissions.js.map +1 -1
- package/dist/setup/gui-view-model.d.ts +5 -0
- package/dist/setup/gui-view-model.d.ts.map +1 -1
- package/dist/setup/gui-view-model.js +5 -0
- package/dist/setup/gui-view-model.js.map +1 -1
- package/dist/setup/harness-dispatch-repo.d.ts +16 -2
- package/dist/setup/harness-dispatch-repo.d.ts.map +1 -1
- package/dist/setup/harness-dispatch-repo.js +113 -22
- package/dist/setup/harness-dispatch-repo.js.map +1 -1
- package/dist/setup/harness-managed-repo-marker.d.ts +1 -0
- package/dist/setup/harness-managed-repo-marker.d.ts.map +1 -1
- package/dist/setup/harness-managed-repo-marker.js +18 -0
- package/dist/setup/harness-managed-repo-marker.js.map +1 -1
- package/dist/setup/harness-provisioning-last-run.d.ts +27 -0
- package/dist/setup/harness-provisioning-last-run.d.ts.map +1 -0
- package/dist/setup/harness-provisioning-last-run.js +94 -0
- package/dist/setup/harness-provisioning-last-run.js.map +1 -0
- package/dist/setup/harness-provisioning-pending-state.d.ts +1 -1
- package/dist/setup/harness-provisioning-pending-state.d.ts.map +1 -1
- package/dist/setup/harness-provisioning-pending-state.js.map +1 -1
- package/dist/setup/harness-provisioning-progress.d.ts +58 -0
- package/dist/setup/harness-provisioning-progress.d.ts.map +1 -0
- package/dist/setup/harness-provisioning-progress.js +134 -0
- package/dist/setup/harness-provisioning-progress.js.map +1 -0
- package/dist/setup/harness-repo-provisioning.d.ts +11 -0
- package/dist/setup/harness-repo-provisioning.d.ts.map +1 -1
- package/dist/setup/harness-repo-provisioning.js +98 -6
- package/dist/setup/harness-repo-provisioning.js.map +1 -1
- package/dist/setup/harness-snapshot-git-transport.d.ts +92 -0
- package/dist/setup/harness-snapshot-git-transport.d.ts.map +1 -0
- package/dist/setup/harness-snapshot-git-transport.js +544 -0
- package/dist/setup/harness-snapshot-git-transport.js.map +1 -0
- package/dist/setup/harness-snapshot-provisioning-helpers.d.ts +1 -1
- package/dist/setup/harness-snapshot-provisioning-helpers.d.ts.map +1 -1
- package/dist/setup/harness-snapshot-provisioning-helpers.js.map +1 -1
- package/dist/setup/harness-snapshot-provisioning.d.ts +12 -1
- package/dist/setup/harness-snapshot-provisioning.d.ts.map +1 -1
- package/dist/setup/harness-snapshot-provisioning.js +298 -73
- package/dist/setup/harness-snapshot-provisioning.js.map +1 -1
- package/dist/setup/harness-step-readiness-server.d.ts +11 -0
- package/dist/setup/harness-step-readiness-server.d.ts.map +1 -0
- package/dist/setup/harness-step-readiness-server.js +24 -0
- package/dist/setup/harness-step-readiness-server.js.map +1 -0
- package/dist/setup/harness-step-readiness.d.ts +21 -0
- package/dist/setup/harness-step-readiness.d.ts.map +1 -0
- package/dist/setup/harness-step-readiness.js +40 -0
- package/dist/setup/harness-step-readiness.js.map +1 -0
- package/dist/setup/harness-workspace-snapshot-loader.d.ts +6 -1
- package/dist/setup/harness-workspace-snapshot-loader.d.ts.map +1 -1
- package/dist/setup/harness-workspace-snapshot-loader.js +45 -12
- package/dist/setup/harness-workspace-snapshot-loader.js.map +1 -1
- package/dist/setup/initial-setup-lifecycle.d.ts +51 -0
- package/dist/setup/initial-setup-lifecycle.d.ts.map +1 -0
- package/dist/setup/initial-setup-lifecycle.js +93 -0
- package/dist/setup/initial-setup-lifecycle.js.map +1 -0
- package/dist/setup/linear-category-labels.d.ts +2 -0
- package/dist/setup/linear-category-labels.d.ts.map +1 -0
- package/dist/setup/linear-category-labels.js +19 -0
- package/dist/setup/linear-category-labels.js.map +1 -0
- package/dist/setup/linear-setup-apply.d.ts +1 -0
- package/dist/setup/linear-setup-apply.d.ts.map +1 -1
- package/dist/setup/linear-setup-apply.js +67 -16
- package/dist/setup/linear-setup-apply.js.map +1 -1
- package/dist/setup/linear-setup-client.d.ts +24 -0
- package/dist/setup/linear-setup-client.d.ts.map +1 -1
- package/dist/setup/linear-setup-client.js +61 -0
- package/dist/setup/linear-setup-client.js.map +1 -1
- package/dist/setup/linear-setup-plan.d.ts +22 -1
- package/dist/setup/linear-setup-plan.d.ts.map +1 -1
- package/dist/setup/linear-setup-plan.js +69 -6
- package/dist/setup/linear-setup-plan.js.map +1 -1
- package/dist/setup/linear-setup-progress.d.ts +30 -0
- package/dist/setup/linear-setup-progress.d.ts.map +1 -0
- package/dist/setup/linear-setup-progress.js +71 -0
- package/dist/setup/linear-setup-progress.js.map +1 -0
- package/dist/setup/linear-status-contract.d.ts +2 -1
- package/dist/setup/linear-status-contract.d.ts.map +1 -1
- package/dist/setup/linear-status-contract.js +26 -67
- package/dist/setup/linear-status-contract.js.map +1 -1
- package/dist/setup/linear-workflow-status-repair.d.ts +36 -0
- package/dist/setup/linear-workflow-status-repair.d.ts.map +1 -0
- package/dist/setup/linear-workflow-status-repair.js +187 -0
- package/dist/setup/linear-workflow-status-repair.js.map +1 -0
- package/dist/setup/linear-workspace-apply.d.ts +25 -0
- package/dist/setup/linear-workspace-apply.d.ts.map +1 -0
- package/dist/setup/linear-workspace-apply.js +212 -0
- package/dist/setup/linear-workspace-apply.js.map +1 -0
- package/dist/setup/linear-workspace-drift.d.ts +2 -0
- package/dist/setup/linear-workspace-drift.d.ts.map +1 -0
- package/dist/setup/linear-workspace-drift.js +2 -0
- package/dist/setup/linear-workspace-drift.js.map +1 -0
- package/dist/setup/linear-workspace-migration.d.ts +43 -0
- package/dist/setup/linear-workspace-migration.d.ts.map +1 -0
- package/dist/setup/linear-workspace-migration.js +212 -0
- package/dist/setup/linear-workspace-migration.js.map +1 -0
- package/dist/setup/linear-workspace-plan.d.ts +92 -0
- package/dist/setup/linear-workspace-plan.d.ts.map +1 -0
- package/dist/setup/linear-workspace-plan.js +283 -0
- package/dist/setup/linear-workspace-plan.js.map +1 -0
- package/dist/setup/local-readiness-checks.d.ts +17 -0
- package/dist/setup/local-readiness-checks.d.ts.map +1 -1
- package/dist/setup/local-readiness-checks.js +86 -23
- package/dist/setup/local-readiness-checks.js.map +1 -1
- package/dist/setup/mock-target-workflow-finalization.d.ts.map +1 -1
- package/dist/setup/mock-target-workflow-finalization.js +27 -4
- package/dist/setup/mock-target-workflow-finalization.js.map +1 -1
- package/dist/setup/packaged-default-route.d.ts +15 -0
- package/dist/setup/packaged-default-route.d.ts.map +1 -0
- package/dist/setup/packaged-default-route.js +17 -0
- package/dist/setup/packaged-default-route.js.map +1 -0
- package/dist/setup/release-sync-managed-runner.d.ts +61 -0
- package/dist/setup/release-sync-managed-runner.d.ts.map +1 -0
- package/dist/setup/release-sync-managed-runner.js +364 -0
- package/dist/setup/release-sync-managed-runner.js.map +1 -0
- package/dist/setup/remote-apply-actions.d.ts.map +1 -1
- package/dist/setup/remote-apply-actions.js +23 -0
- package/dist/setup/remote-apply-actions.js.map +1 -1
- package/dist/setup/runner-upgrade-canary-dispatch.d.ts +19 -0
- package/dist/setup/runner-upgrade-canary-dispatch.d.ts.map +1 -0
- package/dist/setup/runner-upgrade-canary-dispatch.js +38 -0
- package/dist/setup/runner-upgrade-canary-dispatch.js.map +1 -0
- package/dist/setup/runner-upgrade-canary.d.ts +23 -0
- package/dist/setup/runner-upgrade-canary.d.ts.map +1 -0
- package/dist/setup/runner-upgrade-canary.js +146 -0
- package/dist/setup/runner-upgrade-canary.js.map +1 -0
- package/dist/setup/runner-upgrade-evidence.d.ts +14 -0
- package/dist/setup/runner-upgrade-evidence.d.ts.map +1 -0
- package/dist/setup/runner-upgrade-evidence.js +9 -0
- package/dist/setup/runner-upgrade-evidence.js.map +1 -0
- package/dist/setup/runner-upgrade-pending-state.d.ts +30 -0
- package/dist/setup/runner-upgrade-pending-state.d.ts.map +1 -0
- package/dist/setup/runner-upgrade-pending-state.js +75 -0
- package/dist/setup/runner-upgrade-pending-state.js.map +1 -0
- package/dist/setup/runner-upgrade-progress.d.ts +38 -0
- package/dist/setup/runner-upgrade-progress.d.ts.map +1 -0
- package/dist/setup/runner-upgrade-progress.js +95 -0
- package/dist/setup/runner-upgrade-progress.js.map +1 -0
- package/dist/setup/runner-upgrade-provider-live.d.ts +5 -0
- package/dist/setup/runner-upgrade-provider-live.d.ts.map +1 -0
- package/dist/setup/runner-upgrade-provider-live.js +338 -0
- package/dist/setup/runner-upgrade-provider-live.js.map +1 -0
- package/dist/setup/runner-upgrade-provider.d.ts +231 -0
- package/dist/setup/runner-upgrade-provider.d.ts.map +1 -0
- package/dist/setup/runner-upgrade-provider.js +466 -0
- package/dist/setup/runner-upgrade-provider.js.map +1 -0
- package/dist/setup/runner-upgrade-status-cache.d.ts +13 -0
- package/dist/setup/runner-upgrade-status-cache.d.ts.map +1 -0
- package/dist/setup/runner-upgrade-status-cache.js +39 -0
- package/dist/setup/runner-upgrade-status-cache.js.map +1 -0
- package/dist/setup/runner-upgrade-three-way.d.ts +28 -0
- package/dist/setup/runner-upgrade-three-way.d.ts.map +1 -0
- package/dist/setup/runner-upgrade-three-way.js +102 -0
- package/dist/setup/runner-upgrade-three-way.js.map +1 -0
- package/dist/setup/runner-upgrade-timeouts.d.ts +72 -0
- package/dist/setup/runner-upgrade-timeouts.d.ts.map +1 -0
- package/dist/setup/runner-upgrade-timeouts.js +261 -0
- package/dist/setup/runner-upgrade-timeouts.js.map +1 -0
- package/dist/setup/runner-upgrade-types.d.ts +84 -0
- package/dist/setup/runner-upgrade-types.d.ts.map +1 -0
- package/dist/setup/runner-upgrade-types.js +64 -0
- package/dist/setup/runner-upgrade-types.js.map +1 -0
- package/dist/setup/runner-upgrade-worker.d.ts +17 -0
- package/dist/setup/runner-upgrade-worker.d.ts.map +1 -0
- package/dist/setup/runner-upgrade-worker.js +115 -0
- package/dist/setup/runner-upgrade-worker.js.map +1 -0
- package/dist/setup/runner-upgrade.d.ts +57 -0
- package/dist/setup/runner-upgrade.d.ts.map +1 -0
- package/dist/setup/runner-upgrade.js +1311 -0
- package/dist/setup/runner-upgrade.js.map +1 -0
- package/dist/setup/service-verification.d.ts +18 -1
- package/dist/setup/service-verification.d.ts.map +1 -1
- package/dist/setup/service-verification.js +110 -19
- package/dist/setup/service-verification.js.map +1 -1
- package/dist/setup/settings-config-patch.d.ts +69 -0
- package/dist/setup/settings-config-patch.d.ts.map +1 -0
- package/dist/setup/settings-config-patch.js +312 -0
- package/dist/setup/settings-config-patch.js.map +1 -0
- package/dist/setup/setup-state.d.ts +1 -0
- package/dist/setup/setup-state.d.ts.map +1 -1
- package/dist/setup/setup-state.js +11 -1
- package/dist/setup/setup-state.js.map +1 -1
- package/dist/setup/step6-automatic-control-state.d.ts +21 -0
- package/dist/setup/step6-automatic-control-state.d.ts.map +1 -0
- package/dist/setup/step6-automatic-control-state.js +28 -0
- package/dist/setup/step6-automatic-control-state.js.map +1 -0
- package/dist/setup/sync-harness-config-cloud.d.ts +23 -0
- package/dist/setup/sync-harness-config-cloud.d.ts.map +1 -0
- package/dist/setup/sync-harness-config-cloud.js +91 -0
- package/dist/setup/sync-harness-config-cloud.js.map +1 -0
- package/dist/setup/target-repo-provisioning-pending-state.d.ts +42 -0
- package/dist/setup/target-repo-provisioning-pending-state.d.ts.map +1 -0
- package/dist/setup/target-repo-provisioning-pending-state.js +95 -0
- package/dist/setup/target-repo-provisioning-pending-state.js.map +1 -0
- package/dist/setup/target-repo-provisioning.d.ts +67 -0
- package/dist/setup/target-repo-provisioning.d.ts.map +1 -0
- package/dist/setup/target-repo-provisioning.js +473 -0
- package/dist/setup/target-repo-provisioning.js.map +1 -0
- package/dist/setup/target-workflow-finalization-progress.d.ts +43 -0
- package/dist/setup/target-workflow-finalization-progress.d.ts.map +1 -0
- package/dist/setup/target-workflow-finalization-progress.js +83 -0
- package/dist/setup/target-workflow-finalization-progress.js.map +1 -0
- package/dist/setup/target-workflow-finalization-types.d.ts +21 -1
- package/dist/setup/target-workflow-finalization-types.d.ts.map +1 -1
- package/dist/setup/target-workflow-finalization-types.js +75 -0
- package/dist/setup/target-workflow-finalization-types.js.map +1 -1
- package/dist/setup/target-workflow-finalization.d.ts.map +1 -1
- package/dist/setup/target-workflow-finalization.js +618 -15
- package/dist/setup/target-workflow-finalization.js.map +1 -1
- package/dist/setup/target-workflow-setup.d.ts.map +1 -1
- package/dist/setup/target-workflow-setup.js +2 -0
- package/dist/setup/target-workflow-setup.js.map +1 -1
- package/dist/setup/test-only-runner-upgrade-provider.d.ts +11 -0
- package/dist/setup/test-only-runner-upgrade-provider.d.ts.map +1 -0
- package/dist/setup/test-only-runner-upgrade-provider.js +37 -0
- package/dist/setup/test-only-runner-upgrade-provider.js.map +1 -0
- package/dist/setup/test-only-target-repo-provisioning-provider.d.ts +7 -0
- package/dist/setup/test-only-target-repo-provisioning-provider.d.ts.map +1 -0
- package/dist/setup/test-only-target-repo-provisioning-provider.js +33 -0
- package/dist/setup/test-only-target-repo-provisioning-provider.js.map +1 -0
- package/dist/setup/vercel-bridge-artifact.d.ts +7 -0
- package/dist/setup/vercel-bridge-artifact.d.ts.map +1 -0
- package/dist/setup/vercel-bridge-artifact.js +164 -0
- package/dist/setup/vercel-bridge-artifact.js.map +1 -0
- package/dist/setup/vercel-bridge-deploy.d.ts +42 -0
- package/dist/setup/vercel-bridge-deploy.d.ts.map +1 -0
- package/dist/setup/vercel-bridge-deploy.js +138 -0
- package/dist/setup/vercel-bridge-deploy.js.map +1 -0
- package/dist/setup/vercel-bridge-diagnostics.js +1 -1
- package/dist/setup/vercel-bridge-diagnostics.js.map +1 -1
- package/dist/setup/vercel-bridge-options.d.ts +2 -0
- package/dist/setup/vercel-bridge-options.d.ts.map +1 -1
- package/dist/setup/vercel-bridge-options.js +2 -0
- package/dist/setup/vercel-bridge-options.js.map +1 -1
- package/dist/setup/vercel-bridge-orchestration-summary.d.ts +13 -0
- package/dist/setup/vercel-bridge-orchestration-summary.d.ts.map +1 -0
- package/dist/setup/vercel-bridge-orchestration-summary.js +22 -0
- package/dist/setup/vercel-bridge-orchestration-summary.js.map +1 -0
- package/dist/setup/vercel-bridge-project-marker.d.ts +5 -0
- package/dist/setup/vercel-bridge-project-marker.d.ts.map +1 -0
- package/dist/setup/vercel-bridge-project-marker.js +6 -0
- package/dist/setup/vercel-bridge-project-marker.js.map +1 -0
- package/dist/setup/vercel-bridge-readiness.d.ts +1 -0
- package/dist/setup/vercel-bridge-readiness.d.ts.map +1 -1
- package/dist/setup/vercel-bridge-readiness.js +1 -1
- package/dist/setup/vercel-bridge-readiness.js.map +1 -1
- package/dist/setup/vercel-bridge-redeploy-normalize.d.ts +18 -0
- package/dist/setup/vercel-bridge-redeploy-normalize.d.ts.map +1 -0
- package/dist/setup/vercel-bridge-redeploy-normalize.js +175 -0
- package/dist/setup/vercel-bridge-redeploy-normalize.js.map +1 -0
- package/dist/setup/vercel-bridge-redeploy-poll.d.ts +7 -1
- package/dist/setup/vercel-bridge-redeploy-poll.d.ts.map +1 -1
- package/dist/setup/vercel-bridge-redeploy-poll.js +329 -166
- package/dist/setup/vercel-bridge-redeploy-poll.js.map +1 -1
- package/dist/setup/vercel-bridge-redeploy-state.d.ts.map +1 -1
- package/dist/setup/vercel-bridge-redeploy-state.js +3 -0
- package/dist/setup/vercel-bridge-redeploy-state.js.map +1 -1
- package/dist/setup/vercel-bridge-structured-log.d.ts +5 -0
- package/dist/setup/vercel-bridge-structured-log.d.ts.map +1 -1
- package/dist/setup/vercel-bridge-structured-log.js.map +1 -1
- package/dist/setup/vercel-project-name.d.ts +7 -0
- package/dist/setup/vercel-project-name.d.ts.map +1 -0
- package/dist/setup/vercel-project-name.js +26 -0
- package/dist/setup/vercel-project-name.js.map +1 -0
- package/dist/setup/vercel-setup-apply.d.ts +7 -2
- package/dist/setup/vercel-setup-apply.d.ts.map +1 -1
- package/dist/setup/vercel-setup-apply.js +315 -38
- package/dist/setup/vercel-setup-apply.js.map +1 -1
- package/dist/setup/vercel-setup-client.d.ts +26 -1
- package/dist/setup/vercel-setup-client.d.ts.map +1 -1
- package/dist/setup/vercel-setup-client.js +50 -1
- package/dist/setup/vercel-setup-client.js.map +1 -1
- package/dist/setup/vercel-setup-plan.d.ts +5 -0
- package/dist/setup/vercel-setup-plan.d.ts.map +1 -1
- package/dist/setup/vercel-setup-plan.js +65 -13
- package/dist/setup/vercel-setup-plan.js.map +1 -1
- package/dist/setup/vercel-setup-summary.d.ts +3 -0
- package/dist/setup/vercel-setup-summary.d.ts.map +1 -1
- package/dist/setup/vercel-setup-summary.js +4 -0
- package/dist/setup/vercel-setup-summary.js.map +1 -1
- package/dist/setup/workflow-config-snapshot.d.ts +8 -0
- package/dist/setup/workflow-config-snapshot.d.ts.map +1 -0
- package/dist/setup/workflow-config-snapshot.js +13 -0
- package/dist/setup/workflow-config-snapshot.js.map +1 -0
- package/dist/setup/workflow-install-branch-recovery.d.ts +116 -0
- package/dist/setup/workflow-install-branch-recovery.d.ts.map +1 -0
- package/dist/setup/workflow-install-branch-recovery.js +385 -0
- package/dist/setup/workflow-install-branch-recovery.js.map +1 -0
- package/dist/setup/workflow-install-merge-errors.d.ts +5 -2
- package/dist/setup/workflow-install-merge-errors.d.ts.map +1 -1
- package/dist/setup/workflow-install-merge-errors.js +51 -17
- package/dist/setup/workflow-install-merge-errors.js.map +1 -1
- package/dist/setup/workflow-install-merge-gate.d.ts +10 -0
- package/dist/setup/workflow-install-merge-gate.d.ts.map +1 -0
- package/dist/setup/workflow-install-merge-gate.js +21 -0
- package/dist/setup/workflow-install-merge-gate.js.map +1 -0
- package/dist/setup/workflow-model-save-queue.d.ts +16 -0
- package/dist/setup/workflow-model-save-queue.d.ts.map +1 -0
- package/dist/setup/workflow-model-save-queue.js +174 -0
- package/dist/setup/workflow-model-save-queue.js.map +1 -0
- package/dist/setup/workflow-model-sync-lock.d.ts +12 -0
- package/dist/setup/workflow-model-sync-lock.d.ts.map +1 -0
- package/dist/setup/workflow-model-sync-lock.js +79 -0
- package/dist/setup/workflow-model-sync-lock.js.map +1 -0
- package/dist/setup/workflow-model-sync.d.ts +34 -0
- package/dist/setup/workflow-model-sync.d.ts.map +1 -0
- package/dist/setup/workflow-model-sync.js +163 -0
- package/dist/setup/workflow-model-sync.js.map +1 -0
- package/dist/setup/workflow-models-sync-evidence.d.ts +12 -0
- package/dist/setup/workflow-models-sync-evidence.d.ts.map +1 -0
- package/dist/setup/workflow-models-sync-evidence.js +15 -0
- package/dist/setup/workflow-models-sync-evidence.js.map +1 -0
- package/dist/types/parsed-issue.d.ts +8 -0
- package/dist/types/parsed-issue.d.ts.map +1 -1
- package/dist/types/run.d.ts +18 -3
- package/dist/types/run.d.ts.map +1 -1
- package/dist/validate/issue.d.ts +5 -0
- package/dist/validate/issue.d.ts.map +1 -1
- package/dist/validate/issue.js +23 -3
- package/dist/validate/issue.js.map +1 -1
- package/dist/validate/types.d.ts +3 -0
- package/dist/validate/types.d.ts.map +1 -1
- package/dist/webhook/dispatch-statuses.d.ts +1 -1
- package/dist/webhook/dispatch-statuses.d.ts.map +1 -1
- package/dist/webhook/dispatch-statuses.js +4 -13
- package/dist/webhook/dispatch-statuses.js.map +1 -1
- package/dist/webhook/filter.d.ts +5 -2
- package/dist/webhook/filter.d.ts.map +1 -1
- package/dist/webhook/filter.js +15 -1
- package/dist/webhook/filter.js.map +1 -1
- package/dist/webhook/handle-linear-webhook.d.ts.map +1 -1
- package/dist/webhook/handle-linear-webhook.js +15 -1
- package/dist/webhook/handle-linear-webhook.js.map +1 -1
- package/dist/webhook/parse-linear-issue-event.d.ts +6 -0
- package/dist/webhook/parse-linear-issue-event.d.ts.map +1 -1
- package/dist/webhook/parse-linear-issue-event.js +2 -0
- package/dist/webhook/parse-linear-issue-event.js.map +1 -1
- package/dist/webhook/types.d.ts +3 -1
- package/dist/webhook/types.d.ts.map +1 -1
- package/dist/workflow/canonical-product-development-workflow.d.ts +106 -0
- package/dist/workflow/canonical-product-development-workflow.d.ts.map +1 -0
- package/dist/workflow/canonical-product-development-workflow.js +425 -0
- package/dist/workflow/canonical-product-development-workflow.js.map +1 -0
- package/dist/workflow/canonical-workflow-gate.d.ts +33 -0
- package/dist/workflow/canonical-workflow-gate.d.ts.map +1 -0
- package/dist/workflow/canonical-workflow-gate.js +164 -0
- package/dist/workflow/canonical-workflow-gate.js.map +1 -0
- package/dist/workflow/canonical-workflow-validation.d.ts +44 -0
- package/dist/workflow/canonical-workflow-validation.d.ts.map +1 -0
- package/dist/workflow/canonical-workflow-validation.js +193 -0
- package/dist/workflow/canonical-workflow-validation.js.map +1 -0
- package/dist/workflow/finalize-harness-run.d.ts +2 -0
- package/dist/workflow/finalize-harness-run.d.ts.map +1 -0
- package/dist/workflow/finalize-harness-run.js +62 -0
- package/dist/workflow/finalize-harness-run.js.map +1 -0
- package/dist/workflow/preflight-canonical.d.ts +11 -0
- package/dist/workflow/preflight-canonical.d.ts.map +1 -0
- package/dist/workflow/preflight-canonical.js +20 -0
- package/dist/workflow/preflight-canonical.js.map +1 -0
- package/dist/workflow/write-fallback-manifest.d.ts +2 -0
- package/dist/workflow/write-fallback-manifest.d.ts.map +1 -0
- package/dist/workflow/write-fallback-manifest.js +30 -0
- package/dist/workflow/write-fallback-manifest.js.map +1 -0
- package/dist/workflow-page/bootstrap.d.ts +21 -0
- package/dist/workflow-page/bootstrap.d.ts.map +1 -0
- package/dist/workflow-page/bootstrap.js +185 -0
- package/dist/workflow-page/bootstrap.js.map +1 -0
- package/dist/workflow-page/catalog-validation.d.ts +33 -0
- package/dist/workflow-page/catalog-validation.d.ts.map +1 -0
- package/dist/workflow-page/catalog-validation.js +105 -0
- package/dist/workflow-page/catalog-validation.js.map +1 -0
- package/dist/workflow-page/constants.d.ts +7 -0
- package/dist/workflow-page/constants.d.ts.map +1 -0
- package/dist/workflow-page/constants.js +18 -0
- package/dist/workflow-page/constants.js.map +1 -0
- package/dist/workflow-page/current-workflow.d.ts +18 -0
- package/dist/workflow-page/current-workflow.d.ts.map +1 -0
- package/dist/workflow-page/current-workflow.js +142 -0
- package/dist/workflow-page/current-workflow.js.map +1 -0
- package/dist/workflow-page/fingerprint.d.ts +3 -0
- package/dist/workflow-page/fingerprint.d.ts.map +1 -0
- package/dist/workflow-page/fingerprint.js +8 -0
- package/dist/workflow-page/fingerprint.js.map +1 -0
- package/dist/workflow-page/fixture-definition.d.ts +13 -0
- package/dist/workflow-page/fixture-definition.d.ts.map +1 -0
- package/dist/workflow-page/fixture-definition.js +2 -0
- package/dist/workflow-page/fixture-definition.js.map +1 -0
- package/dist/workflow-page/fixture-role-models.d.ts +19 -0
- package/dist/workflow-page/fixture-role-models.d.ts.map +1 -0
- package/dist/workflow-page/fixture-role-models.js +32 -0
- package/dist/workflow-page/fixture-role-models.js.map +1 -0
- package/dist/workflow-page/fixtures/basic-current-workflow.d.ts +5 -0
- package/dist/workflow-page/fixtures/basic-current-workflow.d.ts.map +1 -0
- package/dist/workflow-page/fixtures/basic-current-workflow.js +36 -0
- package/dist/workflow-page/fixtures/basic-current-workflow.js.map +1 -0
- package/dist/workflow-page/fixtures/branching-pr-review.d.ts +3 -0
- package/dist/workflow-page/fixtures/branching-pr-review.d.ts.map +1 -0
- package/dist/workflow-page/fixtures/branching-pr-review.js +10 -0
- package/dist/workflow-page/fixtures/branching-pr-review.js.map +1 -0
- package/dist/workflow-page/fixtures/canonical-violations.d.ts +6 -0
- package/dist/workflow-page/fixtures/canonical-violations.d.ts.map +1 -0
- package/dist/workflow-page/fixtures/canonical-violations.js +19 -0
- package/dist/workflow-page/fixtures/canonical-violations.js.map +1 -0
- package/dist/workflow-page/fixtures/credential-errors.d.ts +3 -0
- package/dist/workflow-page/fixtures/credential-errors.d.ts.map +1 -0
- package/dist/workflow-page/fixtures/credential-errors.js +12 -0
- package/dist/workflow-page/fixtures/credential-errors.js.map +1 -0
- package/dist/workflow-page/fixtures/empty-linear-statuses.d.ts +3 -0
- package/dist/workflow-page/fixtures/empty-linear-statuses.d.ts.map +1 -0
- package/dist/workflow-page/fixtures/empty-linear-statuses.js +9 -0
- package/dist/workflow-page/fixtures/empty-linear-statuses.js.map +1 -0
- package/dist/workflow-page/fixtures/hundred-node-performance.d.ts +3 -0
- package/dist/workflow-page/fixtures/hundred-node-performance.d.ts.map +1 -0
- package/dist/workflow-page/fixtures/hundred-node-performance.js +21 -0
- package/dist/workflow-page/fixtures/hundred-node-performance.js.map +1 -0
- package/dist/workflow-page/fixtures/index.d.ts +6 -0
- package/dist/workflow-page/fixtures/index.d.ts.map +1 -0
- package/dist/workflow-page/fixtures/index.js +24 -0
- package/dist/workflow-page/fixtures/index.js.map +1 -0
- package/dist/workflow-page/fixtures/model-catalog-snapshot.d.ts +10 -0
- package/dist/workflow-page/fixtures/model-catalog-snapshot.d.ts.map +1 -0
- package/dist/workflow-page/fixtures/model-catalog-snapshot.js +29 -0
- package/dist/workflow-page/fixtures/model-catalog-snapshot.js.map +1 -0
- package/dist/workflow-page/fixtures/workflow-scopes.d.ts +4 -0
- package/dist/workflow-page/fixtures/workflow-scopes.d.ts.map +1 -0
- package/dist/workflow-page/fixtures/workflow-scopes.js +16 -0
- package/dist/workflow-page/fixtures/workflow-scopes.js.map +1 -0
- package/dist/workflow-page/linear-status-source.d.ts +15 -0
- package/dist/workflow-page/linear-status-source.d.ts.map +1 -0
- package/dist/workflow-page/linear-status-source.js +44 -0
- package/dist/workflow-page/linear-status-source.js.map +1 -0
- package/dist/workflow-page/model-catalog-lookup.d.ts +3 -0
- package/dist/workflow-page/model-catalog-lookup.d.ts.map +1 -0
- package/dist/workflow-page/model-catalog-lookup.js +4 -0
- package/dist/workflow-page/model-catalog-lookup.js.map +1 -0
- package/dist/workflow-page/model-catalog-utils.d.ts +19 -0
- package/dist/workflow-page/model-catalog-utils.d.ts.map +1 -0
- package/dist/workflow-page/model-catalog-utils.js +46 -0
- package/dist/workflow-page/model-catalog-utils.js.map +1 -0
- package/dist/workflow-page/model-catalog.d.ts +12 -0
- package/dist/workflow-page/model-catalog.d.ts.map +1 -0
- package/dist/workflow-page/model-catalog.js +40 -0
- package/dist/workflow-page/model-catalog.js.map +1 -0
- package/dist/workflow-page/scope-branches.d.ts +11 -0
- package/dist/workflow-page/scope-branches.d.ts.map +1 -0
- package/dist/workflow-page/scope-branches.js +18 -0
- package/dist/workflow-page/scope-branches.js.map +1 -0
- package/dist/workflow-page/source-context.d.ts +13 -0
- package/dist/workflow-page/source-context.d.ts.map +1 -0
- package/dist/workflow-page/source-context.js +61 -0
- package/dist/workflow-page/source-context.js.map +1 -0
- package/dist/workflow-page/types.d.ts +108 -0
- package/dist/workflow-page/types.d.ts.map +1 -0
- package/dist/workflow-page/types.js +2 -0
- package/dist/workflow-page/types.js.map +1 -0
- package/dist/workflow-page/workflow-scopes.d.ts +16 -0
- package/dist/workflow-page/workflow-scopes.d.ts.map +1 -0
- package/dist/workflow-page/workflow-scopes.js +55 -0
- package/dist/workflow-page/workflow-scopes.js.map +1 -0
- package/gui/.next/BUILD_ID +1 -1
- package/gui/.next/app-build-manifest.json +376 -115
- package/gui/.next/app-path-routes-manifest.json +44 -15
- package/gui/.next/build-manifest.json +12 -12
- package/gui/.next/next-minimal-server.js.nft.json +1 -1
- package/gui/.next/next-server.js.nft.json +1 -1
- package/gui/.next/prerender-manifest.json +0 -24
- package/gui/.next/required-server-files.json +4 -3
- package/gui/.next/routes-manifest.json +54 -0
- package/gui/.next/server/app/_not-found/page.js +2 -2
- package/gui/.next/server/app/_not-found/page.js.nft.json +1 -1
- package/gui/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/_not-found.html +1 -1
- package/gui/.next/server/app/_not-found.rsc +3 -3
- package/gui/.next/server/app/api/observability/event/route.js +1 -0
- package/gui/.next/server/app/api/observability/event/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/observability/event/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/observability/preferences/route.js +1 -0
- package/gui/.next/server/app/api/observability/preferences/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/observability/preferences/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/operations/bootstrap/route.js +1 -0
- package/gui/.next/server/app/api/operations/bootstrap/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/operations/bootstrap/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/operations/draft/route.js +1 -0
- package/gui/.next/server/app/api/operations/draft/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/operations/draft/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/settings/apply-config-patch/route.js +8 -0
- package/gui/.next/server/app/api/settings/apply-config-patch/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/settings/apply-config-patch/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/settings/preview-config-patch/route.js +8 -0
- package/gui/.next/server/app/api/settings/preview-config-patch/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/settings/preview-config-patch/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/apply-connect-services/route.js +1 -1
- package/gui/.next/server/app/api/setup/apply-connect-services/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/apply-connect-services/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/apply-harness-repo-provisioning/route.js +1 -1
- package/gui/.next/server/app/api/setup/apply-harness-repo-provisioning/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/apply-harness-repo-provisioning/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/apply-harness-secrets/route.js +1 -1
- package/gui/.next/server/app/api/setup/apply-harness-secrets/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/apply-harness-secrets/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/apply-linear-setup/route.js +1 -1
- package/gui/.next/server/app/api/setup/apply-linear-setup/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/apply-linear-setup/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/apply-linear-workspace/route.js +1 -0
- package/gui/.next/server/app/api/setup/apply-linear-workspace/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/apply-linear-workspace/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/apply-local-files/route.js +1 -1
- package/gui/.next/server/app/api/setup/apply-local-files/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/apply-local-files/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/apply-runner-upgrade/route.js +1 -0
- package/gui/.next/server/app/api/setup/apply-runner-upgrade/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/apply-runner-upgrade/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/apply-target-repo-provisioning/route.js +1 -0
- package/gui/.next/server/app/api/setup/apply-target-repo-provisioning/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/apply-target-repo-provisioning/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/apply-target-workflow/route.js +1 -1
- package/gui/.next/server/app/api/setup/apply-target-workflow/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/apply-target-workflow/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/apply-vercel-bridge/route.js +1 -1
- package/gui/.next/server/app/api/setup/apply-vercel-bridge/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/apply-vercel-bridge/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/complete-initial-setup/route.js +1 -0
- package/gui/.next/server/app/api/setup/complete-initial-setup/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/complete-initial-setup/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/finalize-target-workflow/route.js +1 -1
- package/gui/.next/server/app/api/setup/finalize-target-workflow/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/finalize-target-workflow/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/harness-provisioning-progress/route.js +1 -0
- package/gui/.next/server/app/api/setup/harness-provisioning-progress/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/harness-provisioning-progress/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/harness-provisioning-summary/route.js +1 -1
- package/gui/.next/server/app/api/setup/harness-provisioning-summary/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/harness-provisioning-summary/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/linear-options/route.js +1 -1
- package/gui/.next/server/app/api/setup/linear-options/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/linear-options/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/linear-setup-progress/route.js +1 -0
- package/gui/.next/server/app/api/setup/linear-setup-progress/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/linear-setup-progress/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/linear-summary/route.js +1 -1
- package/gui/.next/server/app/api/setup/linear-summary/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/linear-summary/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/linear-workspace-editor-state/route.js +1 -0
- package/gui/.next/server/app/api/setup/linear-workspace-editor-state/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/linear-workspace-editor-state/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/local-readiness/route.js +3 -1
- package/gui/.next/server/app/api/setup/local-readiness/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/local-readiness/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/manual-harness-secret-values/route.js +1 -1
- package/gui/.next/server/app/api/setup/manual-harness-secret-values/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/manual-harness-secret-values/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/preview-connect-services/route.js +1 -1
- package/gui/.next/server/app/api/setup/preview-connect-services/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/preview-connect-services/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/preview-harness-repo-provisioning/route.js +1 -1
- package/gui/.next/server/app/api/setup/preview-harness-repo-provisioning/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/preview-harness-repo-provisioning/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/preview-harness-secrets/route.js +1 -1
- package/gui/.next/server/app/api/setup/preview-harness-secrets/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/preview-harness-secrets/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/preview-linear-setup/route.js +1 -1
- package/gui/.next/server/app/api/setup/preview-linear-setup/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/preview-linear-setup/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/preview-linear-workspace/route.js +1 -0
- package/gui/.next/server/app/api/setup/preview-linear-workspace/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/preview-linear-workspace/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/preview-local-files/route.js +1 -1
- package/gui/.next/server/app/api/setup/preview-local-files/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/preview-local-files/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/preview-runner-upgrade/route.js +1 -0
- package/gui/.next/server/app/api/setup/preview-runner-upgrade/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/preview-runner-upgrade/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/preview-target-repo-provisioning/route.js +1 -0
- package/gui/.next/server/app/api/setup/preview-target-repo-provisioning/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/preview-target-repo-provisioning/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/preview-target-workflow/route.js +1 -1
- package/gui/.next/server/app/api/setup/preview-target-workflow/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/preview-target-workflow/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/preview-vercel-bridge/route.js +1 -1
- package/gui/.next/server/app/api/setup/preview-vercel-bridge/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/preview-vercel-bridge/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/remote-summary/route.js +1 -1
- package/gui/.next/server/app/api/setup/remote-summary/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/remote-summary/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/runner-upgrade-progress/route.js +1 -0
- package/gui/.next/server/app/api/setup/runner-upgrade-progress/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/runner-upgrade-progress/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/runner-upgrade-status/route.js +1 -0
- package/gui/.next/server/app/api/setup/runner-upgrade-status/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/setup/runner-upgrade-status/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/setup/summary/route.js +1 -1
- package/gui/.next/server/app/api/setup/summary/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/summary/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/vercel-bridge-options/route.js +1 -1
- package/gui/.next/server/app/api/setup/vercel-bridge-options/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/vercel-bridge-options/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/vercel-bridge-redeploy-status/route.js +1 -1
- package/gui/.next/server/app/api/setup/vercel-bridge-redeploy-status/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/vercel-bridge-redeploy-status/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/vercel-summary/route.js +1 -1
- package/gui/.next/server/app/api/setup/vercel-summary/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/vercel-summary/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/verify-harness-repo/route.js +1 -1
- package/gui/.next/server/app/api/setup/verify-harness-repo/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/verify-harness-repo/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/verify-service/route.js +1 -1
- package/gui/.next/server/app/api/setup/verify-service/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/verify-service/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/setup/verify-target-repo/route.js +1 -1
- package/gui/.next/server/app/api/setup/verify-target-repo/route.js.nft.json +1 -1
- package/gui/.next/server/app/api/setup/verify-target-repo/route_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/api/workflow/bootstrap/route.js +1 -0
- package/gui/.next/server/app/api/workflow/bootstrap/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/workflow/bootstrap/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/api/workflow/models/route.js +1 -0
- package/gui/.next/server/app/api/workflow/models/route.js.nft.json +1 -0
- package/gui/.next/server/app/api/workflow/models/route_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/operations/page.js +2 -0
- package/gui/.next/server/app/operations/page.js.nft.json +1 -0
- package/gui/.next/server/app/operations/page_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/page.js +3 -2
- package/gui/.next/server/app/page.js.nft.json +1 -1
- package/gui/.next/server/app/page_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/settings/(console)/connections/page.js +2 -0
- package/gui/.next/server/app/settings/(console)/connections/page.js.nft.json +1 -0
- package/gui/.next/server/app/settings/(console)/connections/page_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/settings/(console)/data-sharing/page.js +2 -0
- package/gui/.next/server/app/settings/(console)/data-sharing/page.js.nft.json +1 -0
- package/gui/.next/server/app/settings/(console)/data-sharing/page_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/settings/(console)/deployments/page.js +2 -0
- package/gui/.next/server/app/settings/(console)/deployments/page.js.nft.json +1 -0
- package/gui/.next/server/app/settings/(console)/deployments/page_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/settings/(console)/linear/page.js +10 -0
- package/gui/.next/server/app/settings/(console)/linear/page.js.nft.json +1 -0
- package/gui/.next/server/app/settings/(console)/linear/page_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/settings/(console)/models/page.js +2 -0
- package/gui/.next/server/app/settings/(console)/models/page.js.nft.json +1 -0
- package/gui/.next/server/app/settings/(console)/models/page_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/settings/(console)/page.js +2 -0
- package/gui/.next/server/app/settings/(console)/page.js.nft.json +1 -0
- package/gui/.next/server/app/settings/(console)/page_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/settings/(console)/repositories/page.js +6 -0
- package/gui/.next/server/app/settings/(console)/repositories/page.js.nft.json +1 -0
- package/gui/.next/server/app/settings/(console)/repositories/page_client-reference-manifest.js +1 -0
- package/gui/.next/server/app/settings/configure/page.js +4 -4
- package/gui/.next/server/app/settings/configure/page.js.nft.json +1 -1
- package/gui/.next/server/app/settings/configure/page_client-reference-manifest.js +1 -1
- package/gui/.next/server/app/workflow/page.js +2 -0
- package/gui/.next/server/app/workflow/page.js.nft.json +1 -0
- package/gui/.next/server/app/workflow/page_client-reference-manifest.js +1 -0
- package/gui/.next/server/app-paths-manifest.json +44 -15
- package/gui/.next/server/chunks/105.js +2 -0
- package/gui/.next/server/chunks/1304.js +200 -0
- package/gui/.next/server/chunks/1536.js +1 -0
- package/gui/.next/server/chunks/1948.js +59 -0
- package/gui/.next/server/chunks/2470.js +3 -0
- package/gui/.next/server/chunks/2581.js +2 -0
- package/gui/.next/server/chunks/383.js +1 -1
- package/gui/.next/server/chunks/521.js +1 -0
- package/gui/.next/server/chunks/553.js +1 -0
- package/gui/.next/server/chunks/5827.js +1 -0
- package/gui/.next/server/chunks/6408.js +1 -0
- package/gui/.next/server/chunks/641.js +1 -0
- package/gui/.next/server/chunks/6482.js +1 -0
- package/gui/.next/server/chunks/6801.js +1 -0
- package/gui/.next/server/chunks/6890.js +1 -0
- package/gui/.next/server/chunks/7201.js +1 -0
- package/gui/.next/server/chunks/7221.js +1 -0
- package/gui/.next/server/chunks/{332.js → 7332.js} +1 -1
- package/gui/.next/server/chunks/7527.js +1 -0
- package/gui/.next/server/chunks/8312.js +1 -0
- package/gui/.next/server/chunks/8476.js +8 -0
- package/gui/.next/server/chunks/8764.js +16 -0
- package/gui/.next/server/chunks/8819.js +22 -0
- package/gui/.next/server/chunks/8825.js +1 -0
- package/gui/.next/server/chunks/9148.js +1 -0
- package/gui/.next/server/chunks/9454.js +1 -0
- package/gui/.next/server/instrumentation.js +1 -0
- package/gui/.next/server/instrumentation.js.nft.json +1 -0
- package/gui/.next/server/middleware-build-manifest.js +1 -1
- package/gui/.next/server/pages/404.html +1 -1
- package/gui/.next/server/pages/500.html +1 -1
- package/gui/.next/server/pages/_document.js +1 -1
- package/gui/.next/server/pages/_document.js.nft.json +1 -1
- package/gui/.next/server/pages/_error.js +2 -2
- package/gui/.next/server/pages/_error.js.nft.json +1 -1
- package/gui/.next/server/pages-manifest.json +1 -1
- package/gui/.next/server/webpack-runtime.js +1 -1
- package/gui/.next/static/chunks/3800-379a4b854a7eb1dc.js +1 -0
- package/gui/.next/static/chunks/464-7503c96bb839c213.js +1 -0
- package/gui/.next/static/chunks/5567-672d065d2668f1ea.js +1 -0
- package/gui/.next/static/chunks/6240-d3f8028539091853.js +1 -0
- package/gui/.next/static/chunks/7420-cb03f2f94db611c4.js +1 -0
- package/gui/.next/static/chunks/8002-528c2e589bc54111.js +1 -0
- package/gui/.next/static/chunks/9188-540635591aa2baf5.js +1 -0
- package/gui/.next/static/chunks/9289-00509b3e0c520cce.js +1 -0
- package/gui/.next/static/chunks/9576-6d94e3d152f876e7.js +1 -0
- package/gui/.next/static/chunks/app/_not-found/page-89865576110e31f0.js +1 -0
- package/gui/.next/static/chunks/app/api/observability/event/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/observability/preferences/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/operations/bootstrap/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/operations/draft/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/settings/apply-config-patch/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/settings/preview-config-patch/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/apply-connect-services/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/apply-harness-repo-provisioning/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/apply-harness-secrets/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/apply-linear-setup/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/apply-linear-workspace/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/apply-local-files/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/apply-runner-upgrade/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/apply-target-repo-provisioning/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/apply-target-workflow/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/apply-vercel-bridge/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/complete-initial-setup/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/finalize-target-workflow/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/harness-provisioning-progress/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/harness-provisioning-summary/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/linear-options/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/linear-setup-progress/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/linear-summary/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/linear-workspace-editor-state/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/local-readiness/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/manual-harness-secret-values/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/preview-connect-services/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/preview-harness-repo-provisioning/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/preview-harness-secrets/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/preview-linear-setup/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/preview-linear-workspace/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/preview-local-files/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/preview-runner-upgrade/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/preview-target-repo-provisioning/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/preview-target-workflow/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/preview-vercel-bridge/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/remote-summary/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/runner-upgrade-progress/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/runner-upgrade-status/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/summary/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/vercel-bridge-options/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/vercel-bridge-redeploy-status/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/vercel-summary/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/verify-harness-repo/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/verify-service/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/setup/verify-target-repo/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/workflow/bootstrap/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/api/workflow/models/route-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/layout-ec756afb9686f579.js +1 -0
- package/gui/.next/static/chunks/app/operations/page-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/page-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/settings/(console)/connections/page-95847d89fc70089a.js +1 -0
- package/gui/.next/static/chunks/app/settings/(console)/data-sharing/page-3e0d8fe941c7334e.js +1 -0
- package/gui/.next/static/chunks/app/settings/(console)/deployments/page-e3aaff205f09b567.js +1 -0
- package/gui/.next/static/chunks/app/settings/(console)/layout-74ce539ae02dc765.js +1 -0
- package/gui/.next/static/chunks/app/settings/(console)/linear/page-0a1e73b5ec66af90.js +1 -0
- package/gui/.next/static/chunks/app/settings/(console)/models/page-336406c2905983c9.js +1 -0
- package/gui/.next/static/chunks/app/settings/(console)/page-08ffe80f6f4603f6.js +1 -0
- package/gui/.next/static/chunks/app/settings/(console)/repositories/page-b1f7159c7771b16a.js +1 -0
- package/gui/.next/static/chunks/app/settings/configure/loading-5f1e73b910fbd9da.js +1 -0
- package/gui/.next/static/chunks/app/settings/configure/page-54b7572655b9f60f.js +1 -0
- package/gui/.next/static/chunks/app/workflow/page-8087b342a6ece93c.js +1 -0
- package/gui/.next/static/chunks/framework-dc88dc15d5e043e1.js +1 -0
- package/gui/.next/static/chunks/main-5b390d9aaa7199a5.js +1 -0
- package/gui/.next/static/chunks/main-app-7fbf1b54aaed0242.js +1 -0
- package/gui/.next/static/chunks/pages/{_app-2e239ff05bfdf6d6.js → _app-50fa07b56b2d29ac.js} +1 -1
- package/gui/.next/static/chunks/pages/_error-fed8688bdd23f211.js +1 -0
- package/gui/.next/static/chunks/{webpack-1e50074b7e886e1b.js → webpack-b27d2f88ec3d35a4.js} +1 -1
- package/gui/.next/static/css/b7b323a34ac09e0b.css +3 -0
- package/gui/.next/static/wM7YWpWgyTcGc7H5h1u7U/_buildManifest.js +1 -0
- package/gui/.next/trace +6 -4
- package/gui/.next/types/app/api/observability/event/route.ts +347 -0
- package/gui/.next/types/app/api/observability/preferences/route.ts +347 -0
- package/gui/.next/types/app/api/operations/bootstrap/route.ts +347 -0
- package/gui/.next/types/app/api/operations/draft/route.ts +347 -0
- package/gui/.next/types/app/api/settings/apply-config-patch/route.ts +347 -0
- package/gui/.next/types/app/api/settings/preview-config-patch/route.ts +347 -0
- package/gui/.next/types/app/api/setup/apply-linear-workspace/route.ts +347 -0
- package/gui/.next/types/app/api/setup/apply-runner-upgrade/route.ts +347 -0
- package/gui/.next/types/app/api/setup/apply-target-repo-provisioning/route.ts +347 -0
- package/gui/.next/types/app/api/setup/complete-initial-setup/route.ts +347 -0
- package/gui/.next/types/app/api/setup/harness-provisioning-progress/route.ts +347 -0
- package/gui/.next/types/app/api/setup/linear-setup-progress/route.ts +347 -0
- package/gui/.next/types/app/api/setup/linear-workspace-editor-state/route.ts +347 -0
- package/gui/.next/types/app/api/setup/preview-linear-workspace/route.ts +347 -0
- package/gui/.next/types/app/api/setup/preview-runner-upgrade/route.ts +347 -0
- package/gui/.next/types/app/api/setup/preview-target-repo-provisioning/route.ts +347 -0
- package/gui/.next/types/app/api/setup/runner-upgrade-progress/route.ts +347 -0
- package/gui/.next/types/app/api/setup/runner-upgrade-status/route.ts +347 -0
- package/gui/.next/types/app/api/workflow/bootstrap/route.ts +347 -0
- package/gui/.next/types/app/api/workflow/models/route.ts +347 -0
- package/gui/.next/types/app/operations/page.ts +84 -0
- package/gui/.next/types/app/settings/(console)/connections/page.ts +84 -0
- package/gui/.next/types/app/settings/(console)/data-sharing/page.ts +84 -0
- package/gui/.next/types/app/settings/(console)/deployments/page.ts +84 -0
- package/gui/.next/types/app/settings/(console)/layout.ts +84 -0
- package/gui/.next/types/app/settings/(console)/linear/page.ts +84 -0
- package/gui/.next/types/app/settings/(console)/models/page.ts +84 -0
- package/gui/.next/types/app/settings/(console)/page.ts +84 -0
- package/gui/.next/types/app/settings/(console)/repositories/page.ts +84 -0
- package/gui/.next/types/app/workflow/page.ts +84 -0
- package/gui/.next/types/routes.d.ts +33 -3
- package/gui/.next/types/validator.ts +270 -0
- package/observability.public.json +6 -0
- package/package.json +5 -1
- package/templates/.harness/config.example.json +1 -0
- package/workspace-snapshot/files/.agents/skills/implementation/SKILL.md +4 -0
- package/workspace-snapshot/files/.agents/skills/issue-intake/SKILL.md +13 -1
- package/workspace-snapshot/files/.agents/skills/planner/SKILL.md +10 -0
- package/workspace-snapshot/files/.github/workflows/harness-auto-runner.yml +38 -11
- package/workspace-snapshot/files/.github/workflows/p-dev-runner-config-canary.yml +24 -0
- package/workspace-snapshot/files/.harness/config.example.json +1 -0
- package/workspace-snapshot/files/AGENTS.md +13 -2
- package/workspace-snapshot/files/ARCHITECTURE.md +23 -6
- package/workspace-snapshot/files/CHANGELOG.md +50 -5
- package/workspace-snapshot/files/README.md +10 -4
- package/workspace-snapshot/files/ROADMAP.md +10 -1
- package/workspace-snapshot/files/apps/gui/app/api/observability/event/route.ts +36 -0
- package/workspace-snapshot/files/apps/gui/app/api/observability/preferences/route.ts +88 -0
- package/workspace-snapshot/files/apps/gui/app/api/operations/bootstrap/route.ts +8 -0
- package/workspace-snapshot/files/apps/gui/app/api/operations/draft/route.ts +15 -0
- package/workspace-snapshot/files/apps/gui/app/api/settings/apply-config-patch/route.ts +52 -0
- package/workspace-snapshot/files/apps/gui/app/api/settings/preview-config-patch/route.ts +40 -0
- package/workspace-snapshot/files/apps/gui/app/api/setup/apply-harness-repo-provisioning/route.ts +6 -5
- package/workspace-snapshot/files/apps/gui/app/api/setup/apply-linear-workspace/route.ts +23 -0
- package/workspace-snapshot/files/apps/gui/app/api/setup/apply-runner-upgrade/route.ts +33 -0
- package/workspace-snapshot/files/apps/gui/app/api/setup/apply-target-repo-provisioning/route.ts +38 -0
- package/workspace-snapshot/files/apps/gui/app/api/setup/apply-vercel-bridge/route.ts +7 -1
- package/workspace-snapshot/files/apps/gui/app/api/setup/complete-initial-setup/route.ts +49 -0
- package/workspace-snapshot/files/apps/gui/app/api/setup/harness-provisioning-progress/route.ts +21 -0
- package/workspace-snapshot/files/apps/gui/app/api/setup/linear-setup-progress/route.ts +17 -0
- package/workspace-snapshot/files/apps/gui/app/api/setup/linear-workspace-editor-state/route.ts +17 -0
- package/workspace-snapshot/files/apps/gui/app/api/setup/local-readiness/route.ts +52 -13
- package/workspace-snapshot/files/apps/gui/app/api/setup/preview-linear-workspace/route.ts +22 -0
- package/workspace-snapshot/files/apps/gui/app/api/setup/preview-runner-upgrade/route.ts +17 -0
- package/workspace-snapshot/files/apps/gui/app/api/setup/preview-target-repo-provisioning/route.ts +34 -0
- package/workspace-snapshot/files/apps/gui/app/api/setup/runner-upgrade-progress/route.ts +17 -0
- package/workspace-snapshot/files/apps/gui/app/api/setup/runner-upgrade-status/route.ts +72 -0
- package/workspace-snapshot/files/apps/gui/app/api/setup/verify-service/route.ts +2 -2
- package/workspace-snapshot/files/apps/gui/app/api/setup/verify-target-repo/route.ts +9 -2
- package/workspace-snapshot/files/apps/gui/app/api/workflow/bootstrap/route.ts +24 -0
- package/workspace-snapshot/files/apps/gui/app/api/workflow/models/route.ts +86 -0
- package/workspace-snapshot/files/apps/gui/app/operations/page.tsx +23 -0
- package/workspace-snapshot/files/apps/gui/app/page.tsx +8 -2
- package/workspace-snapshot/files/apps/gui/app/settings/(console)/connections/page.tsx +27 -0
- package/workspace-snapshot/files/apps/gui/app/settings/(console)/data-sharing/page.tsx +25 -0
- package/workspace-snapshot/files/apps/gui/app/settings/(console)/deployments/page.tsx +28 -0
- package/workspace-snapshot/files/apps/gui/app/settings/(console)/layout.tsx +45 -0
- package/workspace-snapshot/files/apps/gui/app/settings/(console)/linear/page.tsx +20 -0
- package/workspace-snapshot/files/apps/gui/app/settings/(console)/models/page.tsx +14 -0
- package/workspace-snapshot/files/apps/gui/app/settings/(console)/page.tsx +7 -0
- package/workspace-snapshot/files/apps/gui/app/settings/(console)/repositories/page.tsx +29 -0
- package/workspace-snapshot/files/apps/gui/app/settings/configure/loading.tsx +25 -0
- package/workspace-snapshot/files/apps/gui/app/settings/configure/page.tsx +76 -7
- package/workspace-snapshot/files/apps/gui/app/workflow/page.tsx +24 -0
- package/workspace-snapshot/files/apps/gui/components/custom/app-shell.tsx +26 -32
- package/workspace-snapshot/files/apps/gui/components/custom/application-header.tsx +64 -0
- package/workspace-snapshot/files/apps/gui/components/custom/configure-experience.tsx +347 -85
- package/workspace-snapshot/files/apps/gui/components/custom/configure-page-content.tsx +15 -0
- package/workspace-snapshot/files/apps/gui/components/custom/configure-workflow.tsx +675 -112
- package/workspace-snapshot/files/apps/gui/components/custom/data-sharing-preferences.tsx +159 -0
- package/workspace-snapshot/files/apps/gui/components/custom/environment-config-form.tsx +31 -13
- package/workspace-snapshot/files/apps/gui/components/custom/guided-cloud-secrets-card.tsx +99 -46
- package/workspace-snapshot/files/apps/gui/components/custom/guided-linear-workspace-card.tsx +974 -148
- package/workspace-snapshot/files/apps/gui/components/custom/guided-local-readiness-card.tsx +153 -35
- package/workspace-snapshot/files/apps/gui/components/custom/guided-operation-panel.tsx +102 -0
- package/workspace-snapshot/files/apps/gui/components/custom/guided-progress-check.tsx +37 -0
- package/workspace-snapshot/files/apps/gui/components/custom/guided-setup-progress.tsx +114 -0
- package/workspace-snapshot/files/apps/gui/components/custom/guided-step-success-panel.tsx +50 -0
- package/workspace-snapshot/files/apps/gui/components/custom/guided-step-transition.tsx +81 -27
- package/workspace-snapshot/files/apps/gui/components/custom/guided-target-workflow-card.tsx +267 -60
- package/workspace-snapshot/files/apps/gui/components/custom/guided-vercel-bridge-card.tsx +341 -179
- package/workspace-snapshot/files/apps/gui/components/custom/observability-settings-card.tsx +23 -0
- package/workspace-snapshot/files/apps/gui/components/custom/remote-action-confirmation.tsx +13 -11
- package/workspace-snapshot/files/apps/gui/components/custom/review-workflow-changes-disclosure.tsx +59 -0
- package/workspace-snapshot/files/apps/gui/components/custom/settings-menu.tsx +109 -0
- package/workspace-snapshot/files/apps/gui/components/custom/setup-checklist.tsx +47 -29
- package/workspace-snapshot/files/apps/gui/components/custom/target-repo-config-form.tsx +22 -2
- package/workspace-snapshot/files/apps/gui/components/custom/target-repo-create-connect.tsx +419 -0
- package/workspace-snapshot/files/apps/gui/components/custom/target-workflow-pr-card.tsx +105 -43
- package/workspace-snapshot/files/apps/gui/components/custom/theme-toggle.tsx +3 -11
- package/workspace-snapshot/files/apps/gui/components/custom/vercel-bridge-orchestration-status.tsx +65 -0
- package/workspace-snapshot/files/apps/gui/components/custom/workflow-install-pending-panel.tsx +125 -53
- package/workspace-snapshot/files/apps/gui/components/settings/editors/connections-settings-editor.tsx +261 -0
- package/workspace-snapshot/files/apps/gui/components/settings/editors/deployments-settings-editor.tsx +397 -0
- package/workspace-snapshot/files/apps/gui/components/settings/editors/linear-settings-editor.tsx +512 -0
- package/workspace-snapshot/files/apps/gui/components/settings/editors/repositories-settings-editor.tsx +749 -0
- package/workspace-snapshot/files/apps/gui/components/settings/editors/runner-upgrade-settings-card.tsx +533 -0
- package/workspace-snapshot/files/apps/gui/components/settings/settings-models-client.tsx +102 -0
- package/workspace-snapshot/files/apps/gui/components/settings/settings-mutation-panel.tsx +125 -0
- package/workspace-snapshot/files/apps/gui/components/settings/settings-shell.tsx +46 -0
- package/workspace-snapshot/files/apps/gui/components/ui/dropdown-menu.tsx +257 -0
- package/workspace-snapshot/files/apps/gui/components/ui/guided-select.tsx +22 -0
- package/workspace-snapshot/files/apps/gui/components/workflow/workflow-cards-section.tsx +206 -0
- package/workspace-snapshot/files/apps/gui/components/workflow/workflow-health-panel.tsx +43 -0
- package/workspace-snapshot/files/apps/gui/components/workflow/workflow-model-control.tsx +111 -0
- package/workspace-snapshot/files/apps/gui/components/workflow/workflow-page-client.tsx +161 -0
- package/workspace-snapshot/files/apps/gui/components/workflow/workflow-scope-selector.tsx +41 -0
- package/workspace-snapshot/files/apps/gui/instrumentation.ts +136 -0
- package/workspace-snapshot/files/apps/gui/lib/configure-navigation-timing.ts +53 -0
- package/workspace-snapshot/files/apps/gui/lib/constants/form.ts +5 -0
- package/workspace-snapshot/files/apps/gui/lib/constants/layout.ts +10 -3
- package/workspace-snapshot/files/apps/gui/lib/guided-setup.ts +222 -0
- package/workspace-snapshot/files/apps/gui/lib/linear-association-draft.ts +93 -0
- package/workspace-snapshot/files/apps/gui/lib/local-readiness-visual-queue.ts +61 -0
- package/workspace-snapshot/files/apps/gui/lib/observability-client.ts +21 -0
- package/workspace-snapshot/files/apps/gui/lib/observability-preferences.ts +19 -0
- package/workspace-snapshot/files/apps/gui/lib/observability-request-guard.ts +136 -0
- package/workspace-snapshot/files/apps/gui/lib/observability-route.ts +75 -0
- package/workspace-snapshot/files/apps/gui/lib/settings/load-harness-config-summary.ts +20 -0
- package/workspace-snapshot/files/apps/gui/lib/settings/load-repositories-overview.ts +37 -0
- package/workspace-snapshot/files/apps/gui/lib/settings/load-settings-editor-data.ts +51 -0
- package/workspace-snapshot/files/apps/gui/lib/settings/load-target-repo-overview-fields.ts +124 -0
- package/workspace-snapshot/files/apps/gui/lib/settings/runner-upgrade-feature-flag.ts +9 -0
- package/workspace-snapshot/files/apps/gui/lib/settings/runner-upgrade-ssr.ts +13 -0
- package/workspace-snapshot/files/apps/gui/lib/settings/runner-upgrade-ui-gates.ts +87 -0
- package/workspace-snapshot/files/apps/gui/lib/settings/settings-mutation.ts +49 -0
- package/workspace-snapshot/files/apps/gui/lib/settings/settings-navigation.ts +10 -0
- package/workspace-snapshot/files/apps/gui/lib/settings/settings-setup-client.ts +312 -0
- package/workspace-snapshot/files/apps/gui/lib/setup-server.ts +608 -17
- package/workspace-snapshot/files/apps/gui/lib/use-theme-toggle.ts +26 -0
- package/workspace-snapshot/files/apps/gui/lib/vercel-bridge-polling-ui.ts +88 -1
- package/workspace-snapshot/files/apps/gui/lib/verification-state.ts +97 -1
- package/workspace-snapshot/files/apps/gui/lib/workflow/api-client.ts +84 -0
- package/workspace-snapshot/files/apps/gui/lib/workflow/use-model-autosave.ts +90 -0
- package/workspace-snapshot/files/apps/gui/lib/workflow/use-workflow-model-save.ts +265 -0
- package/workspace-snapshot/files/apps/gui/lib/workflow/workflow-health.ts +53 -0
- package/workspace-snapshot/files/apps/gui/lib/workflow/workflow-ownership.ts +47 -0
- package/workspace-snapshot/files/apps/gui/lib/workflow/workflow-status-content.ts +149 -0
- package/workspace-snapshot/files/apps/gui/lib/workflow/workflow-violation-messages.ts +49 -0
- package/workspace-snapshot/files/apps/gui/lib/workflow-server.ts +307 -0
- package/workspace-snapshot/files/apps/gui/next.config.ts +8 -3
- package/workspace-snapshot/files/docs/architecture/canonical-product-development-workflow.md +70 -0
- package/workspace-snapshot/files/docs/architecture/linear-automation-state-machine.md +26 -10
- package/workspace-snapshot/files/docs/design/product-development-harness-gui.md +0 -1
- package/workspace-snapshot/files/docs/getting-started.md +2 -2
- package/workspace-snapshot/files/docs/gui-local.md +3 -3
- package/workspace-snapshot/files/docs/gui-remote-setup.md +2 -2
- package/workspace-snapshot/files/docs/issue-intake.md +12 -0
- package/workspace-snapshot/files/docs/observability-and-privacy.md +247 -0
- package/workspace-snapshot/files/docs/operator-config.md +16 -1
- package/workspace-snapshot/files/docs/p-dev.md +43 -9
- package/workspace-snapshot/files/docs/releases/release-process.md +135 -7
- package/workspace-snapshot/files/docs/releases/v0.3.1.md +42 -6
- package/workspace-snapshot/files/docs/releases/v0.4.0.md +93 -0
- package/workspace-snapshot/files/docs/security.md +8 -0
- package/workspace-snapshot/files/docs/settings-console.md +44 -0
- package/workspace-snapshot/files/harness.config.schema.json +114 -0
- package/workspace-snapshot/files/package-lock.json +1881 -95
- package/workspace-snapshot/files/package.json +10 -2
- package/workspace-snapshot/files/packages/p-dev/README.md +12 -4
- package/workspace-snapshot/files/packages/p-dev/observability.public.json +6 -0
- package/workspace-snapshot/files/packages/p-dev/package.json +5 -1
- package/workspace-snapshot/files/prompts/issue-intake-chatgpt.md +4 -0
- package/workspace-snapshot/files/scripts/configure-browser-matrix.config.ts +40 -0
- package/workspace-snapshot/files/scripts/configure-browser-matrix.spec.ts +294 -0
- package/workspace-snapshot/files/scripts/configure-step4-harness-readiness.config.ts +118 -0
- package/workspace-snapshot/files/scripts/configure-step4-harness-readiness.spec.ts +80 -0
- package/workspace-snapshot/files/scripts/prepare-configure-browser-workspace.ts +138 -0
- package/workspace-snapshot/files/scripts/prepare-p-dev-package.ts +9 -0
- package/workspace-snapshot/files/scripts/workflow-browser-matrix.config.ts +27 -0
- package/workspace-snapshot/files/scripts/workflow-browser-matrix.spec.ts +151 -0
- package/workspace-snapshot/files/src/agents/cursor-provider.ts +12 -14
- package/workspace-snapshot/files/src/agents/index.ts +8 -12
- package/workspace-snapshot/files/src/agents/types.ts +40 -4
- package/workspace-snapshot/files/src/artifacts/redact.ts +18 -2
- package/workspace-snapshot/files/src/artifacts/write-json-out-manifest.ts +90 -0
- package/workspace-snapshot/files/src/cli/commands/canary-runner-config.ts +6 -0
- package/workspace-snapshot/files/src/cli/commands/doctor.ts +148 -0
- package/workspace-snapshot/files/src/cli/commands/resolve-route.ts +5 -0
- package/workspace-snapshot/files/src/cli/commands/run.ts +65 -17
- package/workspace-snapshot/files/src/cli/commands/sync-managed-runner.ts +126 -0
- package/workspace-snapshot/files/src/cli/program.ts +47 -0
- package/workspace-snapshot/files/src/config/assert-cloud-config-fingerprint.ts +36 -0
- package/workspace-snapshot/files/src/config/cloud-config-fingerprint.ts +90 -0
- package/workspace-snapshot/files/src/config/legacy-linear-top-level.ts +69 -0
- package/workspace-snapshot/files/src/config/linear-association-gate.ts +80 -0
- package/workspace-snapshot/files/src/config/resolve-linear-team.ts +41 -0
- package/workspace-snapshot/files/src/config/resolve-linear-workspace.ts +391 -0
- package/workspace-snapshot/files/src/config/role-models.ts +39 -0
- package/workspace-snapshot/files/src/config/runner-upgrade-sync-gate.ts +26 -0
- package/workspace-snapshot/files/src/config/schema.ts +17 -0
- package/workspace-snapshot/files/src/config/types.ts +5 -1
- package/workspace-snapshot/files/src/config/workspace-root.ts +28 -0
- package/workspace-snapshot/files/src/cursor/agent-factory.ts +51 -5
- package/workspace-snapshot/files/src/cursor/builder-resume-errors.ts +41 -0
- package/workspace-snapshot/files/src/cursor/model.ts +106 -25
- package/workspace-snapshot/files/src/cursor/run-observer.ts +15 -2
- package/workspace-snapshot/files/src/github/auth-verification-retry.ts +63 -0
- package/workspace-snapshot/files/src/github/client.ts +204 -5
- package/workspace-snapshot/files/src/gui/configure-health.ts +2 -2
- package/workspace-snapshot/files/src/gui/repo-root.ts +20 -1
- package/workspace-snapshot/files/src/gui/start-configure-stable.ts +6 -2
- package/workspace-snapshot/files/src/gui/start-gui.ts +8 -3
- package/workspace-snapshot/files/src/linear/client.ts +10 -0
- package/workspace-snapshot/files/src/linear/comments.ts +52 -0
- package/workspace-snapshot/files/src/linear/issue-query.ts +4 -0
- package/workspace-snapshot/files/src/linear/markers.ts +28 -0
- package/workspace-snapshot/files/src/linear/parser.ts +61 -1
- package/workspace-snapshot/files/src/linear/project-harness-metadata.ts +147 -0
- package/workspace-snapshot/files/src/linear/project-metadata-sync.ts +115 -0
- package/workspace-snapshot/files/src/linear/run-status-comment.ts +197 -0
- package/workspace-snapshot/files/src/linear/writer.ts +25 -0
- package/workspace-snapshot/files/src/observability/adapters/fake.ts +267 -0
- package/workspace-snapshot/files/src/observability/adapters/noop.ts +62 -0
- package/workspace-snapshot/files/src/observability/adapters/posthog.ts +165 -0
- package/workspace-snapshot/files/src/observability/adapters/sentry.ts +276 -0
- package/workspace-snapshot/files/src/observability/analytics-schemas.ts +150 -0
- package/workspace-snapshot/files/src/observability/consent.ts +70 -0
- package/workspace-snapshot/files/src/observability/constants.ts +25 -0
- package/workspace-snapshot/files/src/observability/context.ts +152 -0
- package/workspace-snapshot/files/src/observability/facade-runtime-state.ts +47 -0
- package/workspace-snapshot/files/src/observability/facade.ts +628 -0
- package/workspace-snapshot/files/src/observability/fatal-handlers.ts +60 -0
- package/workspace-snapshot/files/src/observability/identity.ts +13 -0
- package/workspace-snapshot/files/src/observability/index.ts +47 -0
- package/workspace-snapshot/files/src/observability/local-state.ts +142 -0
- package/workspace-snapshot/files/src/observability/package-config.ts +180 -0
- package/workspace-snapshot/files/src/observability/posthog-dashboard-contract.ts +277 -0
- package/workspace-snapshot/files/src/observability/privacy-schema.ts +229 -0
- package/workspace-snapshot/files/src/observability/product-error-messages.ts +19 -0
- package/workspace-snapshot/files/src/observability/product-errors.ts +139 -0
- package/workspace-snapshot/files/src/observability/provisioning-analytics.ts +28 -0
- package/workspace-snapshot/files/src/observability/redaction.ts +85 -0
- package/workspace-snapshot/files/src/observability/runtime-eligibility.ts +50 -0
- package/workspace-snapshot/files/src/observability/sentry-outbound-privacy.ts +216 -0
- package/workspace-snapshot/files/src/observability/session-dedupe.ts +73 -0
- package/workspace-snapshot/files/src/observability/session-handoff.ts +47 -0
- package/workspace-snapshot/files/src/observability/transport-lifecycle.ts +93 -0
- package/workspace-snapshot/files/src/observability/types.ts +265 -0
- package/workspace-snapshot/files/src/p-dev/cli.ts +1 -1
- package/workspace-snapshot/files/src/p-dev/git-object-plumbing.ts +139 -14
- package/workspace-snapshot/files/src/p-dev/launch.ts +93 -14
- package/workspace-snapshot/files/src/p-dev/main.ts +12 -1
- package/workspace-snapshot/files/src/p-dev/package-paths.ts +72 -2
- package/workspace-snapshot/files/src/p-dev/workspace-snapshot-generator.ts +21 -0
- package/workspace-snapshot/files/src/p-dev/workspace-snapshot-manifest.ts +53 -0
- package/workspace-snapshot/files/src/p-dev/workspace-snapshot-types.ts +8 -0
- package/workspace-snapshot/files/src/preview/preview-capability.ts +21 -0
- package/workspace-snapshot/files/src/product/initialization-state.ts +65 -0
- package/workspace-snapshot/files/src/product/product-marker.ts +76 -0
- package/workspace-snapshot/files/src/product/read-product-marker.ts +63 -0
- package/workspace-snapshot/files/src/prompts/builder.ts +31 -1
- package/workspace-snapshot/files/src/prompts/implementation.md +6 -0
- package/workspace-snapshot/files/src/prompts/integration-repair.md +6 -0
- package/workspace-snapshot/files/src/prompts/planning.md +8 -0
- package/workspace-snapshot/files/src/prompts/revision.md +7 -0
- package/workspace-snapshot/files/src/resolver/errors.ts +3 -1
- package/workspace-snapshot/files/src/resolver/target-repo.ts +60 -1
- package/workspace-snapshot/files/src/runner/builder-thread-acquire.ts +321 -0
- package/workspace-snapshot/files/src/runner/builder-thread-evidence.ts +40 -0
- package/workspace-snapshot/files/src/runner/builder-thread-idempotency.ts +27 -0
- package/workspace-snapshot/files/src/runner/builder-thread-lineage-errors.ts +23 -0
- package/workspace-snapshot/files/src/runner/builder-thread-lineage.ts +555 -0
- package/workspace-snapshot/files/src/runner/builder-thread-types.ts +41 -0
- package/workspace-snapshot/files/src/runner/delivery-dedup.ts +78 -0
- package/workspace-snapshot/files/src/runner/failure-finalization.ts +234 -0
- package/workspace-snapshot/files/src/runner/fixture.ts +6 -1
- package/workspace-snapshot/files/src/runner/phases/handoff.ts +74 -46
- package/workspace-snapshot/files/src/runner/phases/implementation.ts +174 -28
- package/workspace-snapshot/files/src/runner/phases/integration-repair.ts +123 -7
- package/workspace-snapshot/files/src/runner/phases/merge.ts +145 -67
- package/workspace-snapshot/files/src/runner/phases/planning.ts +50 -7
- package/workspace-snapshot/files/src/runner/phases/production-sync.ts +37 -4
- package/workspace-snapshot/files/src/runner/phases/revision.ts +130 -44
- package/workspace-snapshot/files/src/runner/preflight.ts +134 -7
- package/workspace-snapshot/files/src/runner/resolve-route.ts +29 -0
- package/workspace-snapshot/files/src/runner/run-generation.ts +21 -0
- package/workspace-snapshot/files/src/runner/uninitialized-product-routing.ts +121 -0
- package/workspace-snapshot/files/src/setup/config-builder.ts +14 -0
- package/workspace-snapshot/files/src/setup/control-plane-readiness.ts +92 -18
- package/workspace-snapshot/files/src/setup/control-plane-setup-state.ts +61 -5
- package/workspace-snapshot/files/src/setup/control-plane-state-lock.ts +103 -0
- package/workspace-snapshot/files/src/setup/control-plane-types.ts +100 -1
- package/workspace-snapshot/files/src/setup/first-run-readiness.ts +9 -2
- package/workspace-snapshot/files/src/setup/git-askpass-credentials.ts +80 -0
- package/workspace-snapshot/files/src/setup/github-dispatch-token.ts +34 -3
- package/workspace-snapshot/files/src/setup/github-remote-provider.ts +78 -2
- package/workspace-snapshot/files/src/setup/github-remote-setup-live.ts +113 -11
- package/workspace-snapshot/files/src/setup/github-repository-name.ts +63 -0
- package/workspace-snapshot/files/src/setup/github-target-repository-provider-live.ts +323 -0
- package/workspace-snapshot/files/src/setup/github-target-repository-provider-mock.ts +284 -0
- package/workspace-snapshot/files/src/setup/github-target-repository-provider.ts +86 -0
- package/workspace-snapshot/files/src/setup/github-workflow-permissions.ts +2 -1
- package/workspace-snapshot/files/src/setup/gui-view-model.ts +10 -0
- package/workspace-snapshot/files/src/setup/harness-dispatch-repo.ts +157 -25
- package/workspace-snapshot/files/src/setup/harness-managed-repo-marker.ts +24 -0
- package/workspace-snapshot/files/src/setup/harness-provisioning-last-run.ts +152 -0
- package/workspace-snapshot/files/src/setup/harness-provisioning-pending-state.ts +3 -0
- package/workspace-snapshot/files/src/setup/harness-provisioning-progress.ts +213 -0
- package/workspace-snapshot/files/src/setup/harness-repo-provisioning.ts +135 -6
- package/workspace-snapshot/files/src/setup/harness-snapshot-git-transport.ts +846 -0
- package/workspace-snapshot/files/src/setup/harness-snapshot-provisioning-helpers.ts +4 -1
- package/workspace-snapshot/files/src/setup/harness-snapshot-provisioning.ts +352 -81
- package/workspace-snapshot/files/src/setup/harness-step-readiness-server.ts +39 -0
- package/workspace-snapshot/files/src/setup/harness-step-readiness.ts +72 -0
- package/workspace-snapshot/files/src/setup/harness-workspace-snapshot-loader.ts +59 -12
- package/workspace-snapshot/files/src/setup/initial-setup-lifecycle.ts +181 -0
- package/workspace-snapshot/files/src/setup/linear-category-labels.ts +18 -0
- package/workspace-snapshot/files/src/setup/linear-setup-apply.ts +97 -17
- package/workspace-snapshot/files/src/setup/linear-setup-client.ts +96 -0
- package/workspace-snapshot/files/src/setup/linear-setup-plan.ts +105 -11
- package/workspace-snapshot/files/src/setup/linear-setup-progress.ts +113 -0
- package/workspace-snapshot/files/src/setup/linear-status-contract.ts +36 -77
- package/workspace-snapshot/files/src/setup/linear-workflow-status-repair.ts +278 -0
- package/workspace-snapshot/files/src/setup/linear-workspace-apply.ts +309 -0
- package/workspace-snapshot/files/src/setup/linear-workspace-drift.ts +4 -0
- package/workspace-snapshot/files/src/setup/linear-workspace-migration.ts +314 -0
- package/workspace-snapshot/files/src/setup/linear-workspace-plan.ts +407 -0
- package/workspace-snapshot/files/src/setup/local-readiness-checks.ts +163 -31
- package/workspace-snapshot/files/src/setup/mock-target-workflow-finalization.ts +30 -4
- package/workspace-snapshot/files/src/setup/packaged-default-route.ts +29 -0
- package/workspace-snapshot/files/src/setup/release-sync-managed-runner.ts +604 -0
- package/workspace-snapshot/files/src/setup/remote-apply-actions.ts +33 -0
- package/workspace-snapshot/files/src/setup/runner-upgrade-canary-dispatch.ts +69 -0
- package/workspace-snapshot/files/src/setup/runner-upgrade-canary.ts +213 -0
- package/workspace-snapshot/files/src/setup/runner-upgrade-evidence.ts +30 -0
- package/workspace-snapshot/files/src/setup/runner-upgrade-pending-state.ts +116 -0
- package/workspace-snapshot/files/src/setup/runner-upgrade-progress.ts +150 -0
- package/workspace-snapshot/files/src/setup/runner-upgrade-provider-live.ts +520 -0
- package/workspace-snapshot/files/src/setup/runner-upgrade-provider.ts +852 -0
- package/workspace-snapshot/files/src/setup/runner-upgrade-status-cache.ts +61 -0
- package/workspace-snapshot/files/src/setup/runner-upgrade-three-way.ts +162 -0
- package/workspace-snapshot/files/src/setup/runner-upgrade-timeouts.ts +386 -0
- package/workspace-snapshot/files/src/setup/runner-upgrade-types.ts +176 -0
- package/workspace-snapshot/files/src/setup/runner-upgrade-worker.ts +149 -0
- package/workspace-snapshot/files/src/setup/runner-upgrade.ts +1926 -0
- package/workspace-snapshot/files/src/setup/service-verification.ts +160 -20
- package/workspace-snapshot/files/src/setup/settings-config-patch.ts +461 -0
- package/workspace-snapshot/files/src/setup/setup-state.ts +12 -1
- package/workspace-snapshot/files/src/setup/step6-automatic-control-state.ts +59 -0
- package/workspace-snapshot/files/src/setup/sync-harness-config-cloud.ts +128 -0
- package/workspace-snapshot/files/src/setup/target-repo-provisioning-pending-state.ts +160 -0
- package/workspace-snapshot/files/src/setup/target-repo-provisioning.ts +704 -0
- package/workspace-snapshot/files/src/setup/target-workflow-finalization-progress.ts +166 -0
- package/workspace-snapshot/files/src/setup/target-workflow-finalization-types.ts +128 -1
- package/workspace-snapshot/files/src/setup/target-workflow-finalization.ts +806 -15
- package/workspace-snapshot/files/src/setup/target-workflow-setup.ts +2 -0
- package/workspace-snapshot/files/src/setup/test-only-runner-upgrade-provider.ts +51 -0
- package/workspace-snapshot/files/src/setup/test-only-target-repo-provisioning-provider.ts +47 -0
- package/workspace-snapshot/files/src/setup/vercel-bridge-artifact.ts +174 -0
- package/workspace-snapshot/files/src/setup/vercel-bridge-deploy.ts +217 -0
- package/workspace-snapshot/files/src/setup/vercel-bridge-diagnostics.ts +1 -1
- package/workspace-snapshot/files/src/setup/vercel-bridge-options.ts +4 -0
- package/workspace-snapshot/files/src/setup/vercel-bridge-orchestration-summary.ts +46 -0
- package/workspace-snapshot/files/src/setup/vercel-bridge-project-marker.ts +8 -0
- package/workspace-snapshot/files/src/setup/vercel-bridge-readiness.ts +2 -1
- package/workspace-snapshot/files/src/setup/vercel-bridge-redeploy-normalize.ts +244 -0
- package/workspace-snapshot/files/src/setup/vercel-bridge-redeploy-poll.ts +406 -190
- package/workspace-snapshot/files/src/setup/vercel-bridge-redeploy-state.ts +3 -0
- package/workspace-snapshot/files/src/setup/vercel-bridge-structured-log.ts +5 -0
- package/workspace-snapshot/files/src/setup/vercel-project-name.ts +38 -0
- package/workspace-snapshot/files/src/setup/vercel-setup-apply.ts +386 -40
- package/workspace-snapshot/files/src/setup/vercel-setup-client.ts +97 -3
- package/workspace-snapshot/files/src/setup/vercel-setup-plan.ts +84 -14
- package/workspace-snapshot/files/src/setup/vercel-setup-summary.ts +10 -0
- package/workspace-snapshot/files/src/setup/workflow-config-snapshot.ts +22 -0
- package/workspace-snapshot/files/src/setup/workflow-install-branch-recovery.ts +660 -0
- package/workspace-snapshot/files/src/setup/workflow-install-merge-errors.ts +70 -20
- package/workspace-snapshot/files/src/setup/workflow-install-merge-gate.ts +25 -0
- package/workspace-snapshot/files/src/setup/workflow-model-save-queue.ts +251 -0
- package/workspace-snapshot/files/src/setup/workflow-model-sync-lock.ts +103 -0
- package/workspace-snapshot/files/src/setup/workflow-model-sync.ts +259 -0
- package/workspace-snapshot/files/src/setup/workflow-models-sync-evidence.ts +34 -0
- package/workspace-snapshot/files/src/types/parsed-issue.ts +9 -0
- package/workspace-snapshot/files/src/types/run.ts +44 -1
- package/workspace-snapshot/files/src/validate/issue.ts +52 -6
- package/workspace-snapshot/files/src/validate/types.ts +3 -0
- package/workspace-snapshot/files/src/webhook/dispatch-statuses.ts +8 -16
- package/workspace-snapshot/files/src/webhook/filter.ts +24 -1
- package/workspace-snapshot/files/src/webhook/handle-linear-webhook.ts +15 -1
- package/workspace-snapshot/files/src/webhook/parse-linear-issue-event.ts +4 -0
- package/workspace-snapshot/files/src/webhook/types.ts +4 -1
- package/workspace-snapshot/files/src/workflow/canonical-product-development-workflow.ts +584 -0
- package/workspace-snapshot/files/src/workflow/canonical-workflow-gate.ts +255 -0
- package/workspace-snapshot/files/src/workflow/canonical-workflow-validation.ts +297 -0
- package/workspace-snapshot/files/src/workflow/finalize-harness-run.ts +83 -0
- package/workspace-snapshot/files/src/workflow/preflight-canonical.ts +40 -0
- package/workspace-snapshot/files/src/workflow/write-fallback-manifest.ts +39 -0
- package/workspace-snapshot/files/src/workflow-page/bootstrap.ts +277 -0
- package/workspace-snapshot/files/src/workflow-page/catalog-validation.ts +158 -0
- package/workspace-snapshot/files/src/workflow-page/constants.ts +22 -0
- package/workspace-snapshot/files/src/workflow-page/current-workflow.ts +225 -0
- package/workspace-snapshot/files/src/workflow-page/fingerprint.ts +9 -0
- package/workspace-snapshot/files/src/workflow-page/fixture-definition.ts +16 -0
- package/workspace-snapshot/files/src/workflow-page/fixture-role-models.ts +50 -0
- package/workspace-snapshot/files/src/workflow-page/fixtures/basic-current-workflow.ts +39 -0
- package/workspace-snapshot/files/src/workflow-page/fixtures/branching-pr-review.ts +11 -0
- package/workspace-snapshot/files/src/workflow-page/fixtures/canonical-violations.ts +50 -0
- package/workspace-snapshot/files/src/workflow-page/fixtures/credential-errors.ts +13 -0
- package/workspace-snapshot/files/src/workflow-page/fixtures/empty-linear-statuses.ts +10 -0
- package/workspace-snapshot/files/src/workflow-page/fixtures/hundred-node-performance.ts +23 -0
- package/workspace-snapshot/files/src/workflow-page/fixtures/index.ts +37 -0
- package/workspace-snapshot/files/src/workflow-page/fixtures/model-catalog-snapshot.ts +34 -0
- package/workspace-snapshot/files/src/workflow-page/fixtures/workflow-scopes.ts +18 -0
- package/workspace-snapshot/files/src/workflow-page/linear-status-source.ts +65 -0
- package/workspace-snapshot/files/src/workflow-page/model-catalog-lookup.ts +8 -0
- package/workspace-snapshot/files/src/workflow-page/model-catalog-utils.ts +83 -0
- package/workspace-snapshot/files/src/workflow-page/model-catalog.ts +60 -0
- package/workspace-snapshot/files/src/workflow-page/scope-branches.ts +27 -0
- package/workspace-snapshot/files/src/workflow-page/source-context.ts +91 -0
- package/workspace-snapshot/files/src/workflow-page/types.ts +134 -0
- package/workspace-snapshot/files/src/workflow-page/workflow-scopes.ts +73 -0
- package/workspace-snapshot/files/tests/agents/cursor-provider.test.ts +41 -29
- package/workspace-snapshot/files/tests/artifacts/redact.test.ts +11 -0
- package/workspace-snapshot/files/tests/cli/json-out-manifest.test.ts +96 -0
- package/workspace-snapshot/files/tests/config/cloud-config-fingerprint.test.ts +62 -0
- package/workspace-snapshot/files/tests/config/legacy-linear-top-level.test.ts +86 -0
- package/workspace-snapshot/files/tests/config/onboarding-cloud-runner-contract.test.ts +139 -0
- package/workspace-snapshot/files/tests/config/resolve-linear-workspace.test.ts +314 -0
- package/workspace-snapshot/files/tests/config/role-models.test.ts +35 -0
- package/workspace-snapshot/files/tests/cursor/agent-factory.test.ts +124 -0
- package/workspace-snapshot/files/tests/cursor/role-models.test.ts +52 -0
- package/workspace-snapshot/files/tests/cursor/run-observer.test.ts +36 -0
- package/workspace-snapshot/files/tests/fixtures/workflows/harness-auto-runner-with-production-sync.yml +36 -11
- package/workspace-snapshot/files/tests/github/auth-verification-retry.test.ts +141 -0
- package/workspace-snapshot/files/tests/gui/app-shell-settings-menu.test.ts +115 -0
- package/workspace-snapshot/files/tests/gui/configure-fix-loop.test.ts +50 -37
- package/workspace-snapshot/files/tests/gui/configure-navigation-contract.test.ts +107 -0
- package/workspace-snapshot/files/tests/gui/configure-target-repo-create.test.ts +103 -0
- package/workspace-snapshot/files/tests/gui/configure-workflow-readiness.test.ts +117 -0
- package/workspace-snapshot/files/tests/gui/data-sharing-preferences.test.ts +43 -0
- package/workspace-snapshot/files/tests/gui/design-system.test.ts +65 -5
- package/workspace-snapshot/files/tests/gui/guided-linear-workspace-card.test.ts +168 -0
- package/workspace-snapshot/files/tests/gui/guided-operation-ux.test.ts +100 -0
- package/workspace-snapshot/files/tests/gui/guided-setup-progress.test.ts +267 -0
- package/workspace-snapshot/files/tests/gui/guided-setup.test.ts +60 -0
- package/workspace-snapshot/files/tests/gui/guided-target-workflow-polling.test.ts +38 -0
- package/workspace-snapshot/files/tests/gui/linear-association-draft.test.ts +93 -0
- package/workspace-snapshot/files/tests/gui/local-readiness-stream.test.ts +154 -0
- package/workspace-snapshot/files/tests/gui/local-readiness-visual-queue.test.ts +69 -0
- package/workspace-snapshot/files/tests/gui/local-readiness-workspace.test.ts +299 -0
- package/workspace-snapshot/files/tests/gui/m6-configure-boundaries.test.ts +177 -35
- package/workspace-snapshot/files/tests/gui/observability-preferences-route.test.ts +343 -0
- package/workspace-snapshot/files/tests/gui/observability-request-guard.test.ts +177 -0
- package/workspace-snapshot/files/tests/gui/packaged-harness-cloud-secrets-routes.test.ts +16 -0
- package/workspace-snapshot/files/tests/gui/packaged-runner-upgrade-routes.test.ts +532 -0
- package/workspace-snapshot/files/tests/gui/packaged-target-repo-provisioning-routes.test.ts +108 -0
- package/workspace-snapshot/files/tests/gui/repo-root.test.ts +55 -0
- package/workspace-snapshot/files/tests/gui/runner-upgrade-settings-card.test.ts +97 -0
- package/workspace-snapshot/files/tests/gui/settings-cursor.test.ts +39 -0
- package/workspace-snapshot/files/tests/gui/settings-deployments-autoload.test.ts +57 -0
- package/workspace-snapshot/files/tests/gui/settings-mutation-editors.test.ts +154 -0
- package/workspace-snapshot/files/tests/gui/settings-navigation.test.ts +95 -0
- package/workspace-snapshot/files/tests/gui/settings-repositories-page.test.ts +54 -0
- package/workspace-snapshot/files/tests/gui/step7-settings-polish.test.ts +180 -0
- package/workspace-snapshot/files/tests/gui/target-workflow-pr-card.test.ts +68 -0
- package/workspace-snapshot/files/tests/gui/vercel-bridge-polling-ui.test.ts +50 -1
- package/workspace-snapshot/files/tests/gui/verification-state.test.ts +45 -0
- package/workspace-snapshot/files/tests/gui/workflow-bootstrap-route.test.ts +78 -0
- package/workspace-snapshot/files/tests/gui/workflow-model-autosave.test.ts +36 -0
- package/workspace-snapshot/files/tests/gui/workflow-source-ui.test.ts +22 -0
- package/workspace-snapshot/files/tests/gui/workflow-violation-messages.test.ts +39 -0
- package/workspace-snapshot/files/tests/gui/workflow-workspace.test.ts +188 -0
- package/workspace-snapshot/files/tests/linear/markers.test.ts +29 -0
- package/workspace-snapshot/files/tests/linear/run-status-comment.test.ts +143 -0
- package/workspace-snapshot/files/tests/observability/analytics-schemas.test.ts +74 -0
- package/workspace-snapshot/files/tests/observability/context.test.ts +132 -0
- package/workspace-snapshot/files/tests/observability/fatal-process.test.ts +106 -0
- package/workspace-snapshot/files/tests/observability/foundation.test.ts +229 -0
- package/workspace-snapshot/files/tests/observability/instrumentation-dev-startup.test.ts +79 -0
- package/workspace-snapshot/files/tests/observability/lifecycle.test.ts +348 -0
- package/workspace-snapshot/files/tests/observability/package-config.test.ts +66 -0
- package/workspace-snapshot/files/tests/observability/packaged-config.test.ts +47 -0
- package/workspace-snapshot/files/tests/observability/posthog-dashboard-contract.test.ts +133 -0
- package/workspace-snapshot/files/tests/observability/posthog-envelope.test.ts +167 -0
- package/workspace-snapshot/files/tests/observability/posthog-shutdown.test.ts +68 -0
- package/workspace-snapshot/files/tests/observability/privacy-schema.test.ts +83 -0
- package/workspace-snapshot/files/tests/observability/provisioning-analytics.test.ts +54 -0
- package/workspace-snapshot/files/tests/observability/public-config-enablement.test.ts +48 -0
- package/workspace-snapshot/files/tests/observability/sentry-envelope.test.ts +289 -0
- package/workspace-snapshot/files/tests/observability/sentry-outbound-privacy.test.ts +141 -0
- package/workspace-snapshot/files/tests/observability/sentry-privacy-assertions.ts +52 -0
- package/workspace-snapshot/files/tests/observability/sentry-server-only.test.ts +68 -0
- package/workspace-snapshot/files/tests/observability/sentry-transport.test.ts +88 -0
- package/workspace-snapshot/files/tests/observability/session-dedupe.test.ts +117 -0
- package/workspace-snapshot/files/tests/observability/snapshot-exclusion.test.ts +9 -0
- package/workspace-snapshot/files/tests/p-dev/cli.test.ts +2 -2
- package/workspace-snapshot/files/tests/p-dev/git-object-plumbing.test.ts +49 -0
- package/workspace-snapshot/files/tests/p-dev/installed-tarball-gui.test.ts +475 -0
- package/workspace-snapshot/files/tests/p-dev/installed-tarball-loopback.test.ts +986 -0
- package/workspace-snapshot/files/tests/p-dev/installed-tarball-snapshot-provisioning.test.ts +361 -0
- package/workspace-snapshot/files/tests/p-dev/launch.test.ts +55 -3
- package/workspace-snapshot/files/tests/p-dev/package-manifest.test.ts +3 -1
- package/workspace-snapshot/files/tests/p-dev/package-packed-artifact.test.ts +115 -10
- package/workspace-snapshot/files/tests/p-dev/package-paths.test.ts +51 -0
- package/workspace-snapshot/files/tests/p-dev/package-version.test.ts +1 -1
- package/workspace-snapshot/files/tests/p-dev/packaged-workspace-setup.test.ts +1 -1
- package/workspace-snapshot/files/tests/p-dev/workspace-snapshot-policy.test.ts +6 -0
- package/workspace-snapshot/files/tests/product/initialization-state.test.ts +78 -0
- package/workspace-snapshot/files/tests/product/read-product-marker.test.ts +46 -0
- package/workspace-snapshot/files/tests/prompts/builder.test.ts +1 -0
- package/workspace-snapshot/files/tests/prompts/implementation-builder.test.ts +1 -0
- package/workspace-snapshot/files/tests/prompts/issue-intake-chatgpt.test.ts +1 -0
- package/workspace-snapshot/files/tests/resolver/target-repo.test.ts +66 -0
- package/workspace-snapshot/files/tests/runner/builder-thread-acquire.test.ts +288 -0
- package/workspace-snapshot/files/tests/runner/builder-thread-idempotency.test.ts +42 -0
- package/workspace-snapshot/files/tests/runner/builder-thread-lineage.test.ts +206 -0
- package/workspace-snapshot/files/tests/runner/delivery-dedup.test.ts +53 -0
- package/workspace-snapshot/files/tests/runner/failure-finalization-runner-upgrade.test.ts +112 -0
- package/workspace-snapshot/files/tests/runner/failure-finalization.test.ts +203 -0
- package/workspace-snapshot/files/tests/runner/handoff.test.ts +66 -0
- package/workspace-snapshot/files/tests/runner/idempotency-handoff.test.ts +1 -0
- package/workspace-snapshot/files/tests/runner/idempotency-implementation.test.ts +1 -0
- package/workspace-snapshot/files/tests/runner/idempotency-revision.test.ts +1 -0
- package/workspace-snapshot/files/tests/runner/idempotency.test.ts +1 -0
- package/workspace-snapshot/files/tests/runner/implementation.test.ts +24 -5
- package/workspace-snapshot/files/tests/runner/integration-repair.test.ts +21 -6
- package/workspace-snapshot/files/tests/runner/merge-linear-metadata.test.ts +90 -0
- package/workspace-snapshot/files/tests/runner/merge.test.ts +79 -0
- package/workspace-snapshot/files/tests/runner/planning.test.ts +9 -0
- package/workspace-snapshot/files/tests/runner/preflight-canonical.test.ts +73 -0
- package/workspace-snapshot/files/tests/runner/preflight-fail-closed.integration.test.ts +418 -0
- package/workspace-snapshot/files/tests/runner/preview-capability.test.ts +46 -0
- package/workspace-snapshot/files/tests/runner/resolve-route.test.ts +6 -0
- package/workspace-snapshot/files/tests/runner/revision.test.ts +117 -9
- package/workspace-snapshot/files/tests/runner/uninitialized-product-routing.test.ts +120 -0
- package/workspace-snapshot/files/tests/setup/control-plane-readiness.test.ts +86 -0
- package/workspace-snapshot/files/tests/setup/control-plane-state-lock.test.ts +67 -0
- package/workspace-snapshot/files/tests/setup/first-run-readiness.test.ts +134 -2
- package/workspace-snapshot/files/tests/setup/github-dispatch-token.test.ts +49 -1
- package/workspace-snapshot/files/tests/setup/github-repository-name.test.ts +28 -0
- package/workspace-snapshot/files/tests/setup/gui-remote-storage.test.ts +0 -2
- package/workspace-snapshot/files/tests/setup/harness-dispatch-repo.test.ts +292 -3
- package/workspace-snapshot/files/tests/setup/harness-snapshot-bulk-fixture.ts +72 -0
- package/workspace-snapshot/files/tests/setup/harness-snapshot-bulk-installed.test.ts +93 -0
- package/workspace-snapshot/files/tests/setup/harness-snapshot-git-transport.test.ts +518 -0
- package/workspace-snapshot/files/tests/setup/harness-step-readiness.test.ts +145 -0
- package/workspace-snapshot/files/tests/setup/harness-workspace-snapshot-loader.test.ts +142 -0
- package/workspace-snapshot/files/tests/setup/initial-setup-lifecycle.test.ts +220 -0
- package/workspace-snapshot/files/tests/setup/linear-setup-apply.test.ts +7 -4
- package/workspace-snapshot/files/tests/setup/linear-setup-plan.test.ts +46 -3
- package/workspace-snapshot/files/tests/setup/linear-workflow-status-repair.test.ts +314 -0
- package/workspace-snapshot/files/tests/setup/linear-workspace-migration.test.ts +173 -0
- package/workspace-snapshot/files/tests/setup/linear-workspace-plan.test.ts +247 -0
- package/workspace-snapshot/files/tests/setup/local-apply-actions.test.ts +13 -0
- package/workspace-snapshot/files/tests/setup/local-readiness-checks.test.ts +25 -1
- package/workspace-snapshot/files/tests/setup/mock-canonical-preflight.ts +14 -0
- package/workspace-snapshot/files/tests/setup/packaged-default-route.test.ts +85 -0
- package/workspace-snapshot/files/tests/setup/release-sync-managed-runner.test.ts +385 -0
- package/workspace-snapshot/files/tests/setup/runner-upgrade-canary.test.ts +201 -0
- package/workspace-snapshot/files/tests/setup/runner-upgrade-three-way.test.ts +226 -0
- package/workspace-snapshot/files/tests/setup/runner-upgrade.test.ts +702 -0
- package/workspace-snapshot/files/tests/setup/service-verification.test.ts +197 -18
- package/workspace-snapshot/files/tests/setup/settings-config-patch.test.ts +280 -0
- package/workspace-snapshot/files/tests/setup/setup-state.test.ts +47 -0
- package/workspace-snapshot/files/tests/setup/step6-automatic-apply-outcome.test.ts +1 -0
- package/workspace-snapshot/files/tests/setup/step6-automatic-control-state.test.ts +73 -0
- package/workspace-snapshot/files/tests/setup/target-repo-provisioning.test.ts +307 -0
- package/workspace-snapshot/files/tests/setup/target-workflow-finalization-progress.test.ts +71 -0
- package/workspace-snapshot/files/tests/setup/target-workflow-finalization-step-github.test.ts +240 -0
- package/workspace-snapshot/files/tests/setup/vercel-bridge-redeploy-normalize.test.ts +106 -0
- package/workspace-snapshot/files/tests/setup/vercel-bridge-redeploy-poll.test.ts +78 -4
- package/workspace-snapshot/files/tests/setup/vercel-setup-apply.test.ts +278 -3
- package/workspace-snapshot/files/tests/setup/vercel-setup-client.test.ts +76 -0
- package/workspace-snapshot/files/tests/setup/vercel-setup-plan.test.ts +58 -0
- package/workspace-snapshot/files/tests/setup/workflow-install-branch-recovery-commit.test.ts +144 -0
- package/workspace-snapshot/files/tests/setup/workflow-install-branch-recovery.test.ts +133 -0
- package/workspace-snapshot/files/tests/setup/workflow-install-merge-errors.test.ts +66 -1
- package/workspace-snapshot/files/tests/setup/workflow-install-merge-gate.test.ts +58 -0
- package/workspace-snapshot/files/tests/setup/workflow-model-save-queue.test.ts +139 -0
- package/workspace-snapshot/files/tests/setup/workflow-model-sync.test.ts +141 -0
- package/workspace-snapshot/files/tests/validate-issue/uninitialized-product.test.ts +108 -0
- package/workspace-snapshot/files/tests/webhook/filter.test.ts +55 -0
- package/workspace-snapshot/files/tests/webhook/harness-auto-runner-workflow.test.ts +7 -0
- package/workspace-snapshot/files/tests/workflow/canonical-product-development-workflow.test.ts +193 -0
- package/workspace-snapshot/files/tests/workflow/canonical-workflow-validation.test.ts +202 -0
- package/workspace-snapshot/files/tests/workflow/workflow-shell-safety.test.ts +5 -2
- package/workspace-snapshot/files/vitest.config.ts +5 -0
- package/workspace-snapshot/manifest.json +3604 -836
- package/workspace-snapshot/object-pack/snapshot-2735d42c938e514f27a9b2aaf5fa2fcc68019075.idx +0 -0
- package/workspace-snapshot/object-pack/snapshot-2735d42c938e514f27a9b2aaf5fa2fcc68019075.pack +0 -0
- package/gui/.next/server/app/index.html +0 -1
- package/gui/.next/server/app/index.meta +0 -9
- package/gui/.next/server/app/index.rsc +0 -18
- package/gui/.next/server/chunks/200.js +0 -1
- package/gui/.next/server/chunks/477.js +0 -16
- package/gui/.next/server/chunks/585.js +0 -1
- package/gui/.next/server/chunks/647.js +0 -82
- package/gui/.next/server/chunks/711.js +0 -1
- package/gui/.next/server/chunks/900.js +0 -1
- package/gui/.next/server/chunks/901.js +0 -22
- package/gui/.next/static/ZGJuemeaiW4yT7CTlmjdG/_buildManifest.js +0 -1
- package/gui/.next/static/chunks/661-5fc9351358e2f084.js +0 -1
- package/gui/.next/static/chunks/app/_not-found/page-f15332c94524c284.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/apply-connect-services/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/apply-harness-repo-provisioning/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/apply-harness-secrets/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/apply-linear-setup/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/apply-local-files/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/apply-target-workflow/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/apply-vercel-bridge/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/finalize-target-workflow/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/harness-provisioning-summary/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/linear-options/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/linear-summary/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/local-readiness/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/manual-harness-secret-values/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/preview-connect-services/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/preview-harness-repo-provisioning/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/preview-harness-secrets/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/preview-linear-setup/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/preview-local-files/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/preview-target-workflow/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/preview-vercel-bridge/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/remote-summary/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/summary/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/vercel-bridge-options/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/vercel-bridge-redeploy-status/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/vercel-summary/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/verify-harness-repo/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/verify-service/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/api/setup/verify-target-repo/route-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/layout-10445a363bff6a38.js +0 -1
- package/gui/.next/static/chunks/app/page-979ec1702bd9938a.js +0 -1
- package/gui/.next/static/chunks/app/settings/configure/page-25b2288ace2949a1.js +0 -1
- package/gui/.next/static/chunks/framework-7318ce553e854ad6.js +0 -1
- package/gui/.next/static/chunks/main-app-732547e2b1a794b6.js +0 -1
- package/gui/.next/static/chunks/main-f7a784f5852cbbd1.js +0 -1
- package/gui/.next/static/chunks/pages/_error-bda15e7831eec981.js +0 -1
- package/gui/.next/static/css/781f3c93b6d7425a.css +0 -3
- package/workspace-snapshot/files/apps/gui/components/custom/setup-dashboard.tsx +0 -124
- package/workspace-snapshot/files/apps/gui/components/custom/setup-readonly-sections.tsx +0 -210
- /package/gui/.next/static/{ZGJuemeaiW4yT7CTlmjdG → wM7YWpWgyTcGc7H5h1u7U}/_ssgManifest.js +0 -0
|
Binary file
|
|
Binary file
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
<!DOCTYPE html><!--ZGJuemeaiW4yT7CTlmjdG--><html id="__next_error__"><head><meta charSet="utf-8"/><meta name="viewport" content="width=device-width, initial-scale=1"/><link rel="preload" as="script" fetchPriority="low" href="/_next/static/chunks/webpack-1e50074b7e886e1b.js"/><script src="/_next/static/chunks/87c73c54-24122e7b92478d00.js" async=""></script><script src="/_next/static/chunks/18-7be73bec2ceaa744.js" async=""></script><script src="/_next/static/chunks/main-app-732547e2b1a794b6.js" async=""></script><meta name="next-size-adjust" content=""/><title>Product Development Harness</title><meta name="description" content="Local operator GUI for harness setup and configuration."/><script src="/_next/static/chunks/polyfills-42372ed130431b0a.js" noModule=""></script></head><body><div hidden=""><!--$--><!--/$--></div><script src="/_next/static/chunks/webpack-1e50074b7e886e1b.js" id="_R_" async=""></script><script>(self.__next_f=self.__next_f||[]).push([0])</script><script>self.__next_f.push([1,"1:\"$Sreact.fragment\"\n2:I[75,[\"177\",\"static/chunks/app/layout-10445a363bff6a38.js\"],\"ThemeProvider\"]\n3:I[5341,[],\"\"]\n4:I[25,[],\"\"]\n6:I[5104,[],\"OutletBoundary\"]\n8:I[7158,[],\"AsyncMetadataOutlet\"]\na:I[5104,[],\"ViewportBoundary\"]\nc:I[5104,[],\"MetadataBoundary\"]\nd:\"$Sreact.suspense\"\nf:I[4431,[],\"\"]\n:HL[\"/_next/static/media/e4af272ccee01ff0-s.p.woff2\",\"font\",{\"crossOrigin\":\"\",\"type\":\"font/woff2\"}]\n:HL[\"/_next/static/css/781f3c93b6d7425a.css\",\"style\"]\n"])</script><script>self.__next_f.push([1,"0:{\"P\":null,\"b\":\"ZGJuemeaiW4yT7CTlmjdG\",\"p\":\"\",\"c\":[\"\",\"\"],\"i\":false,\"f\":[[[\"\",{\"children\":[\"__PAGE__\",{}]},\"$undefined\",\"$undefined\",true],[\"\",[\"$\",\"$1\",\"c\",{\"children\":[[[\"$\",\"link\",\"0\",{\"rel\":\"stylesheet\",\"href\":\"/_next/static/css/781f3c93b6d7425a.css\",\"precedence\":\"next\",\"crossOrigin\":\"$undefined\",\"nonce\":\"$undefined\"}]],[\"$\",\"html\",null,{\"lang\":\"en\",\"className\":\"__variable_f367f3\",\"suppressHydrationWarning\":true,\"children\":[\"$\",\"body\",null,{\"children\":[\"$\",\"$L2\",null,{\"children\":[\"$\",\"$L3\",null,{\"parallelRouterKey\":\"children\",\"error\":\"$undefined\",\"errorStyles\":\"$undefined\",\"errorScripts\":\"$undefined\",\"template\":[\"$\",\"$L4\",null,{}],\"templateStyles\":\"$undefined\",\"templateScripts\":\"$undefined\",\"notFound\":[[[\"$\",\"title\",null,{\"children\":\"404: This page could not be found.\"}],[\"$\",\"div\",null,{\"style\":{\"fontFamily\":\"system-ui,\\\"Segoe UI\\\",Roboto,Helvetica,Arial,sans-serif,\\\"Apple Color Emoji\\\",\\\"Segoe UI Emoji\\\"\",\"height\":\"100vh\",\"textAlign\":\"center\",\"display\":\"flex\",\"flexDirection\":\"column\",\"alignItems\":\"center\",\"justifyContent\":\"center\"},\"children\":[\"$\",\"div\",null,{\"children\":[[\"$\",\"style\",null,{\"dangerouslySetInnerHTML\":{\"__html\":\"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}\"}}],[\"$\",\"h1\",null,{\"className\":\"next-error-h1\",\"style\":{\"display\":\"inline-block\",\"margin\":\"0 20px 0 0\",\"padding\":\"0 23px 0 0\",\"fontSize\":24,\"fontWeight\":500,\"verticalAlign\":\"top\",\"lineHeight\":\"49px\"},\"children\":404}],[\"$\",\"div\",null,{\"style\":{\"display\":\"inline-block\"},\"children\":[\"$\",\"h2\",null,{\"style\":{\"fontSize\":14,\"fontWeight\":400,\"lineHeight\":\"49px\",\"margin\":0},\"children\":\"This page could not be found.\"}]}]]}]}]],[]],\"forbidden\":\"$undefined\",\"unauthorized\":\"$undefined\"}]}]}]}]]}],{\"children\":[\"__PAGE__\",[\"$\",\"$1\",\"c\",{\"children\":[\"$L5\",null,[\"$\",\"$L6\",null,{\"children\":[\"$L7\",[\"$\",\"$L8\",null,{\"promise\":\"$@9\"}]]}]]}],{},null,false]},null,false],[\"$\",\"$1\",\"h\",{\"children\":[null,[[\"$\",\"$La\",null,{\"children\":\"$Lb\"}],[\"$\",\"meta\",null,{\"name\":\"next-size-adjust\",\"content\":\"\"}]],[\"$\",\"$Lc\",null,{\"children\":[\"$\",\"div\",null,{\"hidden\":true,\"children\":[\"$\",\"$d\",null,{\"fallback\":null,\"children\":\"$Le\"}]}]}]]}],false]],\"m\":\"$undefined\",\"G\":[\"$f\",[]],\"s\":false,\"S\":true}\n"])</script><script>self.__next_f.push([1,"5:E{\"digest\":\"NEXT_REDIRECT;replace;/settings/configure;307;\"}\n"])</script><script>self.__next_f.push([1,"b:[[\"$\",\"meta\",\"0\",{\"charSet\":\"utf-8\"}],[\"$\",\"meta\",\"1\",{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"}]]\n7:null\n"])</script><script>self.__next_f.push([1,"9:{\"metadata\":[[\"$\",\"title\",\"0\",{\"children\":\"Product Development Harness\"}],[\"$\",\"meta\",\"1\",{\"name\":\"description\",\"content\":\"Local operator GUI for harness setup and configuration.\"}]],\"error\":null,\"digest\":\"$undefined\"}\n"])</script><script>self.__next_f.push([1,"e:\"$9:metadata\"\n"])</script></body></html>
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
1:"$Sreact.fragment"
|
|
2
|
-
2:I[75,["177","static/chunks/app/layout-10445a363bff6a38.js"],"ThemeProvider"]
|
|
3
|
-
3:I[5341,[],""]
|
|
4
|
-
4:I[25,[],""]
|
|
5
|
-
6:I[5104,[],"OutletBoundary"]
|
|
6
|
-
8:I[7158,[],"AsyncMetadataOutlet"]
|
|
7
|
-
a:I[5104,[],"ViewportBoundary"]
|
|
8
|
-
c:I[5104,[],"MetadataBoundary"]
|
|
9
|
-
d:"$Sreact.suspense"
|
|
10
|
-
f:I[4431,[],""]
|
|
11
|
-
:HL["/_next/static/media/e4af272ccee01ff0-s.p.woff2","font",{"crossOrigin":"","type":"font/woff2"}]
|
|
12
|
-
:HL["/_next/static/css/781f3c93b6d7425a.css","style"]
|
|
13
|
-
0:{"P":null,"b":"ZGJuemeaiW4yT7CTlmjdG","p":"","c":["",""],"i":false,"f":[[["",{"children":["__PAGE__",{}]},"$undefined","$undefined",true],["",["$","$1","c",{"children":[[["$","link","0",{"rel":"stylesheet","href":"/_next/static/css/781f3c93b6d7425a.css","precedence":"next","crossOrigin":"$undefined","nonce":"$undefined"}]],["$","html",null,{"lang":"en","className":"__variable_f367f3","suppressHydrationWarning":true,"children":["$","body",null,{"children":["$","$L2",null,{"children":["$","$L3",null,{"parallelRouterKey":"children","error":"$undefined","errorStyles":"$undefined","errorScripts":"$undefined","template":["$","$L4",null,{}],"templateStyles":"$undefined","templateScripts":"$undefined","notFound":[[["$","title",null,{"children":"404: This page could not be found."}],["$","div",null,{"style":{"fontFamily":"system-ui,\"Segoe UI\",Roboto,Helvetica,Arial,sans-serif,\"Apple Color Emoji\",\"Segoe UI Emoji\"","height":"100vh","textAlign":"center","display":"flex","flexDirection":"column","alignItems":"center","justifyContent":"center"},"children":["$","div",null,{"children":[["$","style",null,{"dangerouslySetInnerHTML":{"__html":"body{color:#000;background:#fff;margin:0}.next-error-h1{border-right:1px solid rgba(0,0,0,.3)}@media (prefers-color-scheme:dark){body{color:#fff;background:#000}.next-error-h1{border-right:1px solid rgba(255,255,255,.3)}}"}}],["$","h1",null,{"className":"next-error-h1","style":{"display":"inline-block","margin":"0 20px 0 0","padding":"0 23px 0 0","fontSize":24,"fontWeight":500,"verticalAlign":"top","lineHeight":"49px"},"children":404}],["$","div",null,{"style":{"display":"inline-block"},"children":["$","h2",null,{"style":{"fontSize":14,"fontWeight":400,"lineHeight":"49px","margin":0},"children":"This page could not be found."}]}]]}]}]],[]],"forbidden":"$undefined","unauthorized":"$undefined"}]}]}]}]]}],{"children":["__PAGE__",["$","$1","c",{"children":["$L5",null,["$","$L6",null,{"children":["$L7",["$","$L8",null,{"promise":"$@9"}]]}]]}],{},null,false]},null,false],["$","$1","h",{"children":[null,[["$","$La",null,{"children":"$Lb"}],["$","meta",null,{"name":"next-size-adjust","content":""}]],["$","$Lc",null,{"children":["$","div",null,{"hidden":true,"children":["$","$d",null,{"fallback":null,"children":"$Le"}]}]}]]}],false]],"m":"$undefined","G":["$f",[]],"s":false,"S":true}
|
|
14
|
-
5:E{"digest":"NEXT_REDIRECT;replace;/settings/configure;307;"}
|
|
15
|
-
b:[["$","meta","0",{"charSet":"utf-8"}],["$","meta","1",{"name":"viewport","content":"width=device-width, initial-scale=1"}]]
|
|
16
|
-
7:null
|
|
17
|
-
9:{"metadata":[["$","title","0",{"children":"Product Development Harness"}],["$","meta","1",{"name":"description","content":"Local operator GUI for harness setup and configuration."}]],"error":null,"digest":"$undefined"}
|
|
18
|
-
e:"$9:metadata"
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";exports.id=200,exports.ids=[200],exports.modules={74200:(a,b,c)=>{var d,e,f,g;let h;c.d(b,{YO:()=>aC,zM:()=>aB,k5:()=>aF,eu:()=>aE,ai:()=>aA,Ik:()=>aD,Yj:()=>az}),function(a){a.assertEqual=a=>{},a.assertIs=function(a){},a.assertNever=function(a){throw Error()},a.arrayToEnum=a=>{let b={};for(let c of a)b[c]=c;return b},a.getValidEnumValues=b=>{let c=a.objectKeys(b).filter(a=>"number"!=typeof b[b[a]]),d={};for(let a of c)d[a]=b[a];return a.objectValues(d)},a.objectValues=b=>a.objectKeys(b).map(function(a){return b[a]}),a.objectKeys="function"==typeof Object.keys?a=>Object.keys(a):a=>{let b=[];for(let c in a)Object.prototype.hasOwnProperty.call(a,c)&&b.push(c);return b},a.find=(a,b)=>{for(let c of a)if(b(c))return c},a.isInteger="function"==typeof Number.isInteger?a=>Number.isInteger(a):a=>"number"==typeof a&&Number.isFinite(a)&&Math.floor(a)===a,a.joinValues=function(a,b=" | "){return a.map(a=>"string"==typeof a?`'${a}'`:a).join(b)},a.jsonStringifyReplacer=(a,b)=>"bigint"==typeof b?b.toString():b}(d||(d={})),(e||(e={})).mergeShapes=(a,b)=>({...a,...b});let i=d.arrayToEnum(["string","nan","number","integer","float","boolean","date","bigint","symbol","function","undefined","null","array","object","unknown","promise","void","never","map","set"]),j=a=>{switch(typeof a){case"undefined":return i.undefined;case"string":return i.string;case"number":return Number.isNaN(a)?i.nan:i.number;case"boolean":return i.boolean;case"function":return i.function;case"bigint":return i.bigint;case"symbol":return i.symbol;case"object":if(Array.isArray(a))return i.array;if(null===a)return i.null;if(a.then&&"function"==typeof a.then&&a.catch&&"function"==typeof a.catch)return i.promise;if("undefined"!=typeof Map&&a instanceof Map)return i.map;if("undefined"!=typeof Set&&a instanceof Set)return i.set;if("undefined"!=typeof Date&&a instanceof Date)return i.date;return i.object;default:return i.unknown}},k=d.arrayToEnum(["invalid_type","invalid_literal","custom","invalid_union","invalid_union_discriminator","invalid_enum_value","unrecognized_keys","invalid_arguments","invalid_return_type","invalid_date","invalid_string","too_small","too_big","invalid_intersection_types","not_multiple_of","not_finite"]);class l extends Error{get errors(){return this.issues}constructor(a){super(),this.issues=[],this.addIssue=a=>{this.issues=[...this.issues,a]},this.addIssues=(a=[])=>{this.issues=[...this.issues,...a]};let b=new.target.prototype;Object.setPrototypeOf?Object.setPrototypeOf(this,b):this.__proto__=b,this.name="ZodError",this.issues=a}format(a){let b=a||function(a){return a.message},c={_errors:[]},d=a=>{for(let e of a.issues)if("invalid_union"===e.code)e.unionErrors.map(d);else if("invalid_return_type"===e.code)d(e.returnTypeError);else if("invalid_arguments"===e.code)d(e.argumentsError);else if(0===e.path.length)c._errors.push(b(e));else{let a=c,d=0;for(;d<e.path.length;){let c=e.path[d];d===e.path.length-1?(a[c]=a[c]||{_errors:[]},a[c]._errors.push(b(e))):a[c]=a[c]||{_errors:[]},a=a[c],d++}}};return d(this),c}static assert(a){if(!(a instanceof l))throw Error(`Not a ZodError: ${a}`)}toString(){return this.message}get message(){return JSON.stringify(this.issues,d.jsonStringifyReplacer,2)}get isEmpty(){return 0===this.issues.length}flatten(a=a=>a.message){let b={},c=[];for(let d of this.issues)if(d.path.length>0){let c=d.path[0];b[c]=b[c]||[],b[c].push(a(d))}else c.push(a(d));return{formErrors:c,fieldErrors:b}}get formErrors(){return this.flatten()}}l.create=a=>new l(a);let m=(a,b)=>{let c;switch(a.code){case k.invalid_type:c=a.received===i.undefined?"Required":`Expected ${a.expected}, received ${a.received}`;break;case k.invalid_literal:c=`Invalid literal value, expected ${JSON.stringify(a.expected,d.jsonStringifyReplacer)}`;break;case k.unrecognized_keys:c=`Unrecognized key(s) in object: ${d.joinValues(a.keys,", ")}`;break;case k.invalid_union:c="Invalid input";break;case k.invalid_union_discriminator:c=`Invalid discriminator value. Expected ${d.joinValues(a.options)}`;break;case k.invalid_enum_value:c=`Invalid enum value. Expected ${d.joinValues(a.options)}, received '${a.received}'`;break;case k.invalid_arguments:c="Invalid function arguments";break;case k.invalid_return_type:c="Invalid function return type";break;case k.invalid_date:c="Invalid date";break;case k.invalid_string:"object"==typeof a.validation?"includes"in a.validation?(c=`Invalid input: must include "${a.validation.includes}"`,"number"==typeof a.validation.position&&(c=`${c} at one or more positions greater than or equal to ${a.validation.position}`)):"startsWith"in a.validation?c=`Invalid input: must start with "${a.validation.startsWith}"`:"endsWith"in a.validation?c=`Invalid input: must end with "${a.validation.endsWith}"`:d.assertNever(a.validation):c="regex"!==a.validation?`Invalid ${a.validation}`:"Invalid";break;case k.too_small:c="array"===a.type?`Array must contain ${a.exact?"exactly":a.inclusive?"at least":"more than"} ${a.minimum} element(s)`:"string"===a.type?`String must contain ${a.exact?"exactly":a.inclusive?"at least":"over"} ${a.minimum} character(s)`:"number"===a.type||"bigint"===a.type?`Number must be ${a.exact?"exactly equal to ":a.inclusive?"greater than or equal to ":"greater than "}${a.minimum}`:"date"===a.type?`Date must be ${a.exact?"exactly equal to ":a.inclusive?"greater than or equal to ":"greater than "}${new Date(Number(a.minimum))}`:"Invalid input";break;case k.too_big:c="array"===a.type?`Array must contain ${a.exact?"exactly":a.inclusive?"at most":"less than"} ${a.maximum} element(s)`:"string"===a.type?`String must contain ${a.exact?"exactly":a.inclusive?"at most":"under"} ${a.maximum} character(s)`:"number"===a.type?`Number must be ${a.exact?"exactly":a.inclusive?"less than or equal to":"less than"} ${a.maximum}`:"bigint"===a.type?`BigInt must be ${a.exact?"exactly":a.inclusive?"less than or equal to":"less than"} ${a.maximum}`:"date"===a.type?`Date must be ${a.exact?"exactly":a.inclusive?"smaller than or equal to":"smaller than"} ${new Date(Number(a.maximum))}`:"Invalid input";break;case k.custom:c="Invalid input";break;case k.invalid_intersection_types:c="Intersection results could not be merged";break;case k.not_multiple_of:c=`Number must be a multiple of ${a.multipleOf}`;break;case k.not_finite:c="Number must be finite";break;default:c=b.defaultError,d.assertNever(a)}return{message:c}};!function(a){a.errToObj=a=>"string"==typeof a?{message:a}:a||{},a.toString=a=>"string"==typeof a?a:a?.message}(f||(f={}));let n=a=>{let{data:b,path:c,errorMaps:d,issueData:e}=a,f=[...c,...e.path||[]],g={...e,path:f};if(void 0!==e.message)return{...e,path:f,message:e.message};let h="";for(let a of d.filter(a=>!!a).slice().reverse())h=a(g,{data:b,defaultError:h}).message;return{...e,path:f,message:h}};function o(a,b){let c=n({issueData:b,data:a.data,path:a.path,errorMaps:[a.common.contextualErrorMap,a.schemaErrorMap,m,void 0].filter(a=>!!a)});a.common.issues.push(c)}class p{constructor(){this.value="valid"}dirty(){"valid"===this.value&&(this.value="dirty")}abort(){"aborted"!==this.value&&(this.value="aborted")}static mergeArray(a,b){let c=[];for(let d of b){if("aborted"===d.status)return q;"dirty"===d.status&&a.dirty(),c.push(d.value)}return{status:a.value,value:c}}static async mergeObjectAsync(a,b){let c=[];for(let a of b){let b=await a.key,d=await a.value;c.push({key:b,value:d})}return p.mergeObjectSync(a,c)}static mergeObjectSync(a,b){let c={};for(let d of b){let{key:b,value:e}=d;if("aborted"===b.status||"aborted"===e.status)return q;"dirty"===b.status&&a.dirty(),"dirty"===e.status&&a.dirty(),"__proto__"!==b.value&&(void 0!==e.value||d.alwaysSet)&&(c[b.value]=e.value)}return{status:a.value,value:c}}}let q=Object.freeze({status:"aborted"}),r=a=>({status:"dirty",value:a}),s=a=>({status:"valid",value:a}),t=a=>"undefined"!=typeof Promise&&a instanceof Promise;class u{constructor(a,b,c,d){this._cachedPath=[],this.parent=a,this.data=b,this._path=c,this._key=d}get path(){return this._cachedPath.length||(Array.isArray(this._key)?this._cachedPath.push(...this._path,...this._key):this._cachedPath.push(...this._path,this._key)),this._cachedPath}}let v=(a,b)=>{if("valid"===b.status)return{success:!0,data:b.value};if(!a.common.issues.length)throw Error("Validation failed but no issues detected.");return{success:!1,get error(){if(this._error)return this._error;let b=new l(a.common.issues);return this._error=b,this._error}}};function w(a){if(!a)return{};let{errorMap:b,invalid_type_error:c,required_error:d,description:e}=a;if(b&&(c||d))throw Error('Can\'t use "invalid_type_error" or "required_error" in conjunction with custom error map.');return b?{errorMap:b,description:e}:{errorMap:(b,e)=>{let{message:f}=a;return"invalid_enum_value"===b.code?{message:f??e.defaultError}:void 0===e.data?{message:f??d??e.defaultError}:"invalid_type"!==b.code?{message:e.defaultError}:{message:f??c??e.defaultError}},description:e}}class x{get description(){return this._def.description}_getType(a){return j(a.data)}_getOrReturnCtx(a,b){return b||{common:a.parent.common,data:a.data,parsedType:j(a.data),schemaErrorMap:this._def.errorMap,path:a.path,parent:a.parent}}_processInputParams(a){return{status:new p,ctx:{common:a.parent.common,data:a.data,parsedType:j(a.data),schemaErrorMap:this._def.errorMap,path:a.path,parent:a.parent}}}_parseSync(a){let b=this._parse(a);if(t(b))throw Error("Synchronous parse encountered promise.");return b}_parseAsync(a){return Promise.resolve(this._parse(a))}parse(a,b){let c=this.safeParse(a,b);if(c.success)return c.data;throw c.error}safeParse(a,b){let c={common:{issues:[],async:b?.async??!1,contextualErrorMap:b?.errorMap},path:b?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:a,parsedType:j(a)},d=this._parseSync({data:a,path:c.path,parent:c});return v(c,d)}"~validate"(a){let b={common:{issues:[],async:!!this["~standard"].async},path:[],schemaErrorMap:this._def.errorMap,parent:null,data:a,parsedType:j(a)};if(!this["~standard"].async)try{let c=this._parseSync({data:a,path:[],parent:b});return"valid"===c.status?{value:c.value}:{issues:b.common.issues}}catch(a){a?.message?.toLowerCase()?.includes("encountered")&&(this["~standard"].async=!0),b.common={issues:[],async:!0}}return this._parseAsync({data:a,path:[],parent:b}).then(a=>"valid"===a.status?{value:a.value}:{issues:b.common.issues})}async parseAsync(a,b){let c=await this.safeParseAsync(a,b);if(c.success)return c.data;throw c.error}async safeParseAsync(a,b){let c={common:{issues:[],contextualErrorMap:b?.errorMap,async:!0},path:b?.path||[],schemaErrorMap:this._def.errorMap,parent:null,data:a,parsedType:j(a)},d=this._parse({data:a,path:c.path,parent:c});return v(c,await (t(d)?d:Promise.resolve(d)))}refine(a,b){return this._refinement((c,d)=>{let e=a(c),f=()=>d.addIssue({code:k.custom,..."string"==typeof b||void 0===b?{message:b}:"function"==typeof b?b(c):b});return"undefined"!=typeof Promise&&e instanceof Promise?e.then(a=>!!a||(f(),!1)):!!e||(f(),!1)})}refinement(a,b){return this._refinement((c,d)=>!!a(c)||(d.addIssue("function"==typeof b?b(c,d):b),!1))}_refinement(a){return new aq({schema:this,typeName:g.ZodEffects,effect:{type:"refinement",refinement:a}})}superRefine(a){return this._refinement(a)}constructor(a){this.spa=this.safeParseAsync,this._def=a,this.parse=this.parse.bind(this),this.safeParse=this.safeParse.bind(this),this.parseAsync=this.parseAsync.bind(this),this.safeParseAsync=this.safeParseAsync.bind(this),this.spa=this.spa.bind(this),this.refine=this.refine.bind(this),this.refinement=this.refinement.bind(this),this.superRefine=this.superRefine.bind(this),this.optional=this.optional.bind(this),this.nullable=this.nullable.bind(this),this.nullish=this.nullish.bind(this),this.array=this.array.bind(this),this.promise=this.promise.bind(this),this.or=this.or.bind(this),this.and=this.and.bind(this),this.transform=this.transform.bind(this),this.brand=this.brand.bind(this),this.default=this.default.bind(this),this.catch=this.catch.bind(this),this.describe=this.describe.bind(this),this.pipe=this.pipe.bind(this),this.readonly=this.readonly.bind(this),this.isNullable=this.isNullable.bind(this),this.isOptional=this.isOptional.bind(this),this["~standard"]={version:1,vendor:"zod",validate:a=>this["~validate"](a)}}optional(){return ar.create(this,this._def)}nullable(){return as.create(this,this._def)}nullish(){return this.nullable().optional()}array(){return _.create(this)}promise(){return ap.create(this,this._def)}or(a){return ab.create([this,a],this._def)}and(a){return ae.create(this,a,this._def)}transform(a){return new aq({...w(this._def),schema:this,typeName:g.ZodEffects,effect:{type:"transform",transform:a}})}default(a){return new at({...w(this._def),innerType:this,defaultValue:"function"==typeof a?a:()=>a,typeName:g.ZodDefault})}brand(){return new aw({typeName:g.ZodBranded,type:this,...w(this._def)})}catch(a){return new au({...w(this._def),innerType:this,catchValue:"function"==typeof a?a:()=>a,typeName:g.ZodCatch})}describe(a){return new this.constructor({...this._def,description:a})}pipe(a){return ax.create(this,a)}readonly(){return ay.create(this)}isOptional(){return this.safeParse(void 0).success}isNullable(){return this.safeParse(null).success}}let y=/^c[^\s-]{8,}$/i,z=/^[0-9a-z]+$/,A=/^[0-9A-HJKMNP-TV-Z]{26}$/i,B=/^[0-9a-fA-F]{8}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{4}\b-[0-9a-fA-F]{12}$/i,C=/^[a-z0-9_-]{21}$/i,D=/^[A-Za-z0-9-_]+\.[A-Za-z0-9-_]+\.[A-Za-z0-9-_]*$/,E=/^[-+]?P(?!$)(?:(?:[-+]?\d+Y)|(?:[-+]?\d+[.,]\d+Y$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:(?:[-+]?\d+W)|(?:[-+]?\d+[.,]\d+W$))?(?:(?:[-+]?\d+D)|(?:[-+]?\d+[.,]\d+D$))?(?:T(?=[\d+-])(?:(?:[-+]?\d+H)|(?:[-+]?\d+[.,]\d+H$))?(?:(?:[-+]?\d+M)|(?:[-+]?\d+[.,]\d+M$))?(?:[-+]?\d+(?:[.,]\d+)?S)?)??$/,F=/^(?!\.)(?!.*\.\.)([A-Z0-9_'+\-\.]*)[A-Z0-9_+-]@([A-Z0-9][A-Z0-9\-]*\.)+[A-Z]{2,}$/i,G=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])$/,H=/^(?:(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\.){3}(?:25[0-5]|2[0-4][0-9]|1[0-9][0-9]|[1-9][0-9]|[0-9])\/(3[0-2]|[12]?[0-9])$/,I=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/,J=/^(([0-9a-fA-F]{1,4}:){7,7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]{1,}|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\.){3,3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))\/(12[0-8]|1[01][0-9]|[1-9]?[0-9])$/,K=/^([0-9a-zA-Z+/]{4})*(([0-9a-zA-Z+/]{2}==)|([0-9a-zA-Z+/]{3}=))?$/,L=/^([0-9a-zA-Z-_]{4})*(([0-9a-zA-Z-_]{2}(==)?)|([0-9a-zA-Z-_]{3}(=)?))?$/,M="((\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-((0[13578]|1[02])-(0[1-9]|[12]\\d|3[01])|(0[469]|11)-(0[1-9]|[12]\\d|30)|(02)-(0[1-9]|1\\d|2[0-8])))",N=RegExp(`^${M}$`);function O(a){let b="[0-5]\\d";a.precision?b=`${b}\\.\\d{${a.precision}}`:null==a.precision&&(b=`${b}(\\.\\d+)?`);let c=a.precision?"+":"?";return`([01]\\d|2[0-3]):[0-5]\\d(:${b})${c}`}class P extends x{_parse(a){var b,c,e,f;let g;if(this._def.coerce&&(a.data=String(a.data)),this._getType(a)!==i.string){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.string,received:b.parsedType}),q}let j=new p;for(let i of this._def.checks)if("min"===i.kind)a.data.length<i.value&&(o(g=this._getOrReturnCtx(a,g),{code:k.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),j.dirty());else if("max"===i.kind)a.data.length>i.value&&(o(g=this._getOrReturnCtx(a,g),{code:k.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!1,message:i.message}),j.dirty());else if("length"===i.kind){let b=a.data.length>i.value,c=a.data.length<i.value;(b||c)&&(g=this._getOrReturnCtx(a,g),b?o(g,{code:k.too_big,maximum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}):c&&o(g,{code:k.too_small,minimum:i.value,type:"string",inclusive:!0,exact:!0,message:i.message}),j.dirty())}else if("email"===i.kind)F.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"email",code:k.invalid_string,message:i.message}),j.dirty());else if("emoji"===i.kind)h||(h=RegExp("^(\\p{Extended_Pictographic}|\\p{Emoji_Component})+$","u")),h.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"emoji",code:k.invalid_string,message:i.message}),j.dirty());else if("uuid"===i.kind)B.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"uuid",code:k.invalid_string,message:i.message}),j.dirty());else if("nanoid"===i.kind)C.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"nanoid",code:k.invalid_string,message:i.message}),j.dirty());else if("cuid"===i.kind)y.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"cuid",code:k.invalid_string,message:i.message}),j.dirty());else if("cuid2"===i.kind)z.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"cuid2",code:k.invalid_string,message:i.message}),j.dirty());else if("ulid"===i.kind)A.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"ulid",code:k.invalid_string,message:i.message}),j.dirty());else if("url"===i.kind)try{new URL(a.data)}catch{o(g=this._getOrReturnCtx(a,g),{validation:"url",code:k.invalid_string,message:i.message}),j.dirty()}else"regex"===i.kind?(i.regex.lastIndex=0,i.regex.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"regex",code:k.invalid_string,message:i.message}),j.dirty())):"trim"===i.kind?a.data=a.data.trim():"includes"===i.kind?a.data.includes(i.value,i.position)||(o(g=this._getOrReturnCtx(a,g),{code:k.invalid_string,validation:{includes:i.value,position:i.position},message:i.message}),j.dirty()):"toLowerCase"===i.kind?a.data=a.data.toLowerCase():"toUpperCase"===i.kind?a.data=a.data.toUpperCase():"startsWith"===i.kind?a.data.startsWith(i.value)||(o(g=this._getOrReturnCtx(a,g),{code:k.invalid_string,validation:{startsWith:i.value},message:i.message}),j.dirty()):"endsWith"===i.kind?a.data.endsWith(i.value)||(o(g=this._getOrReturnCtx(a,g),{code:k.invalid_string,validation:{endsWith:i.value},message:i.message}),j.dirty()):"datetime"===i.kind?(function(a){let b=`${M}T${O(a)}`,c=[];return c.push(a.local?"Z?":"Z"),a.offset&&c.push("([+-]\\d{2}:?\\d{2})"),b=`${b}(${c.join("|")})`,RegExp(`^${b}$`)})(i).test(a.data)||(o(g=this._getOrReturnCtx(a,g),{code:k.invalid_string,validation:"datetime",message:i.message}),j.dirty()):"date"===i.kind?N.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{code:k.invalid_string,validation:"date",message:i.message}),j.dirty()):"time"===i.kind?RegExp(`^${O(i)}$`).test(a.data)||(o(g=this._getOrReturnCtx(a,g),{code:k.invalid_string,validation:"time",message:i.message}),j.dirty()):"duration"===i.kind?E.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"duration",code:k.invalid_string,message:i.message}),j.dirty()):"ip"===i.kind?(b=a.data,!(("v4"===(c=i.version)||!c)&&G.test(b)||("v6"===c||!c)&&I.test(b))&&1&&(o(g=this._getOrReturnCtx(a,g),{validation:"ip",code:k.invalid_string,message:i.message}),j.dirty())):"jwt"===i.kind?!function(a,b){if(!D.test(a))return!1;try{let[c]=a.split(".");if(!c)return!1;let d=c.replace(/-/g,"+").replace(/_/g,"/").padEnd(c.length+(4-c.length%4)%4,"="),e=JSON.parse(atob(d));if("object"!=typeof e||null===e||"typ"in e&&e?.typ!=="JWT"||!e.alg||b&&e.alg!==b)return!1;return!0}catch{return!1}}(a.data,i.alg)&&(o(g=this._getOrReturnCtx(a,g),{validation:"jwt",code:k.invalid_string,message:i.message}),j.dirty()):"cidr"===i.kind?(e=a.data,!(("v4"===(f=i.version)||!f)&&H.test(e)||("v6"===f||!f)&&J.test(e))&&1&&(o(g=this._getOrReturnCtx(a,g),{validation:"cidr",code:k.invalid_string,message:i.message}),j.dirty())):"base64"===i.kind?K.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"base64",code:k.invalid_string,message:i.message}),j.dirty()):"base64url"===i.kind?L.test(a.data)||(o(g=this._getOrReturnCtx(a,g),{validation:"base64url",code:k.invalid_string,message:i.message}),j.dirty()):d.assertNever(i);return{status:j.value,value:a.data}}_regex(a,b,c){return this.refinement(b=>a.test(b),{validation:b,code:k.invalid_string,...f.errToObj(c)})}_addCheck(a){return new P({...this._def,checks:[...this._def.checks,a]})}email(a){return this._addCheck({kind:"email",...f.errToObj(a)})}url(a){return this._addCheck({kind:"url",...f.errToObj(a)})}emoji(a){return this._addCheck({kind:"emoji",...f.errToObj(a)})}uuid(a){return this._addCheck({kind:"uuid",...f.errToObj(a)})}nanoid(a){return this._addCheck({kind:"nanoid",...f.errToObj(a)})}cuid(a){return this._addCheck({kind:"cuid",...f.errToObj(a)})}cuid2(a){return this._addCheck({kind:"cuid2",...f.errToObj(a)})}ulid(a){return this._addCheck({kind:"ulid",...f.errToObj(a)})}base64(a){return this._addCheck({kind:"base64",...f.errToObj(a)})}base64url(a){return this._addCheck({kind:"base64url",...f.errToObj(a)})}jwt(a){return this._addCheck({kind:"jwt",...f.errToObj(a)})}ip(a){return this._addCheck({kind:"ip",...f.errToObj(a)})}cidr(a){return this._addCheck({kind:"cidr",...f.errToObj(a)})}datetime(a){return"string"==typeof a?this._addCheck({kind:"datetime",precision:null,offset:!1,local:!1,message:a}):this._addCheck({kind:"datetime",precision:void 0===a?.precision?null:a?.precision,offset:a?.offset??!1,local:a?.local??!1,...f.errToObj(a?.message)})}date(a){return this._addCheck({kind:"date",message:a})}time(a){return"string"==typeof a?this._addCheck({kind:"time",precision:null,message:a}):this._addCheck({kind:"time",precision:void 0===a?.precision?null:a?.precision,...f.errToObj(a?.message)})}duration(a){return this._addCheck({kind:"duration",...f.errToObj(a)})}regex(a,b){return this._addCheck({kind:"regex",regex:a,...f.errToObj(b)})}includes(a,b){return this._addCheck({kind:"includes",value:a,position:b?.position,...f.errToObj(b?.message)})}startsWith(a,b){return this._addCheck({kind:"startsWith",value:a,...f.errToObj(b)})}endsWith(a,b){return this._addCheck({kind:"endsWith",value:a,...f.errToObj(b)})}min(a,b){return this._addCheck({kind:"min",value:a,...f.errToObj(b)})}max(a,b){return this._addCheck({kind:"max",value:a,...f.errToObj(b)})}length(a,b){return this._addCheck({kind:"length",value:a,...f.errToObj(b)})}nonempty(a){return this.min(1,f.errToObj(a))}trim(){return new P({...this._def,checks:[...this._def.checks,{kind:"trim"}]})}toLowerCase(){return new P({...this._def,checks:[...this._def.checks,{kind:"toLowerCase"}]})}toUpperCase(){return new P({...this._def,checks:[...this._def.checks,{kind:"toUpperCase"}]})}get isDatetime(){return!!this._def.checks.find(a=>"datetime"===a.kind)}get isDate(){return!!this._def.checks.find(a=>"date"===a.kind)}get isTime(){return!!this._def.checks.find(a=>"time"===a.kind)}get isDuration(){return!!this._def.checks.find(a=>"duration"===a.kind)}get isEmail(){return!!this._def.checks.find(a=>"email"===a.kind)}get isURL(){return!!this._def.checks.find(a=>"url"===a.kind)}get isEmoji(){return!!this._def.checks.find(a=>"emoji"===a.kind)}get isUUID(){return!!this._def.checks.find(a=>"uuid"===a.kind)}get isNANOID(){return!!this._def.checks.find(a=>"nanoid"===a.kind)}get isCUID(){return!!this._def.checks.find(a=>"cuid"===a.kind)}get isCUID2(){return!!this._def.checks.find(a=>"cuid2"===a.kind)}get isULID(){return!!this._def.checks.find(a=>"ulid"===a.kind)}get isIP(){return!!this._def.checks.find(a=>"ip"===a.kind)}get isCIDR(){return!!this._def.checks.find(a=>"cidr"===a.kind)}get isBase64(){return!!this._def.checks.find(a=>"base64"===a.kind)}get isBase64url(){return!!this._def.checks.find(a=>"base64url"===a.kind)}get minLength(){let a=null;for(let b of this._def.checks)"min"===b.kind&&(null===a||b.value>a)&&(a=b.value);return a}get maxLength(){let a=null;for(let b of this._def.checks)"max"===b.kind&&(null===a||b.value<a)&&(a=b.value);return a}}P.create=a=>new P({checks:[],typeName:g.ZodString,coerce:a?.coerce??!1,...w(a)});class Q extends x{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte,this.step=this.multipleOf}_parse(a){let b;if(this._def.coerce&&(a.data=Number(a.data)),this._getType(a)!==i.number){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.number,received:b.parsedType}),q}let c=new p;for(let e of this._def.checks)"int"===e.kind?d.isInteger(a.data)||(o(b=this._getOrReturnCtx(a,b),{code:k.invalid_type,expected:"integer",received:"float",message:e.message}),c.dirty()):"min"===e.kind?(e.inclusive?a.data<e.value:a.data<=e.value)&&(o(b=this._getOrReturnCtx(a,b),{code:k.too_small,minimum:e.value,type:"number",inclusive:e.inclusive,exact:!1,message:e.message}),c.dirty()):"max"===e.kind?(e.inclusive?a.data>e.value:a.data>=e.value)&&(o(b=this._getOrReturnCtx(a,b),{code:k.too_big,maximum:e.value,type:"number",inclusive:e.inclusive,exact:!1,message:e.message}),c.dirty()):"multipleOf"===e.kind?0!==function(a,b){let c=(a.toString().split(".")[1]||"").length,d=(b.toString().split(".")[1]||"").length,e=c>d?c:d;return Number.parseInt(a.toFixed(e).replace(".",""))%Number.parseInt(b.toFixed(e).replace(".",""))/10**e}(a.data,e.value)&&(o(b=this._getOrReturnCtx(a,b),{code:k.not_multiple_of,multipleOf:e.value,message:e.message}),c.dirty()):"finite"===e.kind?Number.isFinite(a.data)||(o(b=this._getOrReturnCtx(a,b),{code:k.not_finite,message:e.message}),c.dirty()):d.assertNever(e);return{status:c.value,value:a.data}}gte(a,b){return this.setLimit("min",a,!0,f.toString(b))}gt(a,b){return this.setLimit("min",a,!1,f.toString(b))}lte(a,b){return this.setLimit("max",a,!0,f.toString(b))}lt(a,b){return this.setLimit("max",a,!1,f.toString(b))}setLimit(a,b,c,d){return new Q({...this._def,checks:[...this._def.checks,{kind:a,value:b,inclusive:c,message:f.toString(d)}]})}_addCheck(a){return new Q({...this._def,checks:[...this._def.checks,a]})}int(a){return this._addCheck({kind:"int",message:f.toString(a)})}positive(a){return this._addCheck({kind:"min",value:0,inclusive:!1,message:f.toString(a)})}negative(a){return this._addCheck({kind:"max",value:0,inclusive:!1,message:f.toString(a)})}nonpositive(a){return this._addCheck({kind:"max",value:0,inclusive:!0,message:f.toString(a)})}nonnegative(a){return this._addCheck({kind:"min",value:0,inclusive:!0,message:f.toString(a)})}multipleOf(a,b){return this._addCheck({kind:"multipleOf",value:a,message:f.toString(b)})}finite(a){return this._addCheck({kind:"finite",message:f.toString(a)})}safe(a){return this._addCheck({kind:"min",inclusive:!0,value:Number.MIN_SAFE_INTEGER,message:f.toString(a)})._addCheck({kind:"max",inclusive:!0,value:Number.MAX_SAFE_INTEGER,message:f.toString(a)})}get minValue(){let a=null;for(let b of this._def.checks)"min"===b.kind&&(null===a||b.value>a)&&(a=b.value);return a}get maxValue(){let a=null;for(let b of this._def.checks)"max"===b.kind&&(null===a||b.value<a)&&(a=b.value);return a}get isInt(){return!!this._def.checks.find(a=>"int"===a.kind||"multipleOf"===a.kind&&d.isInteger(a.value))}get isFinite(){let a=null,b=null;for(let c of this._def.checks)if("finite"===c.kind||"int"===c.kind||"multipleOf"===c.kind)return!0;else"min"===c.kind?(null===b||c.value>b)&&(b=c.value):"max"===c.kind&&(null===a||c.value<a)&&(a=c.value);return Number.isFinite(b)&&Number.isFinite(a)}}Q.create=a=>new Q({checks:[],typeName:g.ZodNumber,coerce:a?.coerce||!1,...w(a)});class R extends x{constructor(){super(...arguments),this.min=this.gte,this.max=this.lte}_parse(a){let b;if(this._def.coerce)try{a.data=BigInt(a.data)}catch{return this._getInvalidInput(a)}if(this._getType(a)!==i.bigint)return this._getInvalidInput(a);let c=new p;for(let e of this._def.checks)"min"===e.kind?(e.inclusive?a.data<e.value:a.data<=e.value)&&(o(b=this._getOrReturnCtx(a,b),{code:k.too_small,type:"bigint",minimum:e.value,inclusive:e.inclusive,message:e.message}),c.dirty()):"max"===e.kind?(e.inclusive?a.data>e.value:a.data>=e.value)&&(o(b=this._getOrReturnCtx(a,b),{code:k.too_big,type:"bigint",maximum:e.value,inclusive:e.inclusive,message:e.message}),c.dirty()):"multipleOf"===e.kind?a.data%e.value!==BigInt(0)&&(o(b=this._getOrReturnCtx(a,b),{code:k.not_multiple_of,multipleOf:e.value,message:e.message}),c.dirty()):d.assertNever(e);return{status:c.value,value:a.data}}_getInvalidInput(a){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.bigint,received:b.parsedType}),q}gte(a,b){return this.setLimit("min",a,!0,f.toString(b))}gt(a,b){return this.setLimit("min",a,!1,f.toString(b))}lte(a,b){return this.setLimit("max",a,!0,f.toString(b))}lt(a,b){return this.setLimit("max",a,!1,f.toString(b))}setLimit(a,b,c,d){return new R({...this._def,checks:[...this._def.checks,{kind:a,value:b,inclusive:c,message:f.toString(d)}]})}_addCheck(a){return new R({...this._def,checks:[...this._def.checks,a]})}positive(a){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!1,message:f.toString(a)})}negative(a){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!1,message:f.toString(a)})}nonpositive(a){return this._addCheck({kind:"max",value:BigInt(0),inclusive:!0,message:f.toString(a)})}nonnegative(a){return this._addCheck({kind:"min",value:BigInt(0),inclusive:!0,message:f.toString(a)})}multipleOf(a,b){return this._addCheck({kind:"multipleOf",value:a,message:f.toString(b)})}get minValue(){let a=null;for(let b of this._def.checks)"min"===b.kind&&(null===a||b.value>a)&&(a=b.value);return a}get maxValue(){let a=null;for(let b of this._def.checks)"max"===b.kind&&(null===a||b.value<a)&&(a=b.value);return a}}R.create=a=>new R({checks:[],typeName:g.ZodBigInt,coerce:a?.coerce??!1,...w(a)});class S extends x{_parse(a){if(this._def.coerce&&(a.data=!!a.data),this._getType(a)!==i.boolean){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.boolean,received:b.parsedType}),q}return s(a.data)}}S.create=a=>new S({typeName:g.ZodBoolean,coerce:a?.coerce||!1,...w(a)});class T extends x{_parse(a){let b;if(this._def.coerce&&(a.data=new Date(a.data)),this._getType(a)!==i.date){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.date,received:b.parsedType}),q}if(Number.isNaN(a.data.getTime()))return o(this._getOrReturnCtx(a),{code:k.invalid_date}),q;let c=new p;for(let e of this._def.checks)"min"===e.kind?a.data.getTime()<e.value&&(o(b=this._getOrReturnCtx(a,b),{code:k.too_small,message:e.message,inclusive:!0,exact:!1,minimum:e.value,type:"date"}),c.dirty()):"max"===e.kind?a.data.getTime()>e.value&&(o(b=this._getOrReturnCtx(a,b),{code:k.too_big,message:e.message,inclusive:!0,exact:!1,maximum:e.value,type:"date"}),c.dirty()):d.assertNever(e);return{status:c.value,value:new Date(a.data.getTime())}}_addCheck(a){return new T({...this._def,checks:[...this._def.checks,a]})}min(a,b){return this._addCheck({kind:"min",value:a.getTime(),message:f.toString(b)})}max(a,b){return this._addCheck({kind:"max",value:a.getTime(),message:f.toString(b)})}get minDate(){let a=null;for(let b of this._def.checks)"min"===b.kind&&(null===a||b.value>a)&&(a=b.value);return null!=a?new Date(a):null}get maxDate(){let a=null;for(let b of this._def.checks)"max"===b.kind&&(null===a||b.value<a)&&(a=b.value);return null!=a?new Date(a):null}}T.create=a=>new T({checks:[],coerce:a?.coerce||!1,typeName:g.ZodDate,...w(a)});class U extends x{_parse(a){if(this._getType(a)!==i.symbol){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.symbol,received:b.parsedType}),q}return s(a.data)}}U.create=a=>new U({typeName:g.ZodSymbol,...w(a)});class V extends x{_parse(a){if(this._getType(a)!==i.undefined){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.undefined,received:b.parsedType}),q}return s(a.data)}}V.create=a=>new V({typeName:g.ZodUndefined,...w(a)});class W extends x{_parse(a){if(this._getType(a)!==i.null){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.null,received:b.parsedType}),q}return s(a.data)}}W.create=a=>new W({typeName:g.ZodNull,...w(a)});class X extends x{constructor(){super(...arguments),this._any=!0}_parse(a){return s(a.data)}}X.create=a=>new X({typeName:g.ZodAny,...w(a)});class Y extends x{constructor(){super(...arguments),this._unknown=!0}_parse(a){return s(a.data)}}Y.create=a=>new Y({typeName:g.ZodUnknown,...w(a)});class Z extends x{_parse(a){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.never,received:b.parsedType}),q}}Z.create=a=>new Z({typeName:g.ZodNever,...w(a)});class $ extends x{_parse(a){if(this._getType(a)!==i.undefined){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.void,received:b.parsedType}),q}return s(a.data)}}$.create=a=>new $({typeName:g.ZodVoid,...w(a)});class _ extends x{_parse(a){let{ctx:b,status:c}=this._processInputParams(a),d=this._def;if(b.parsedType!==i.array)return o(b,{code:k.invalid_type,expected:i.array,received:b.parsedType}),q;if(null!==d.exactLength){let a=b.data.length>d.exactLength.value,e=b.data.length<d.exactLength.value;(a||e)&&(o(b,{code:a?k.too_big:k.too_small,minimum:e?d.exactLength.value:void 0,maximum:a?d.exactLength.value:void 0,type:"array",inclusive:!0,exact:!0,message:d.exactLength.message}),c.dirty())}if(null!==d.minLength&&b.data.length<d.minLength.value&&(o(b,{code:k.too_small,minimum:d.minLength.value,type:"array",inclusive:!0,exact:!1,message:d.minLength.message}),c.dirty()),null!==d.maxLength&&b.data.length>d.maxLength.value&&(o(b,{code:k.too_big,maximum:d.maxLength.value,type:"array",inclusive:!0,exact:!1,message:d.maxLength.message}),c.dirty()),b.common.async)return Promise.all([...b.data].map((a,c)=>d.type._parseAsync(new u(b,a,b.path,c)))).then(a=>p.mergeArray(c,a));let e=[...b.data].map((a,c)=>d.type._parseSync(new u(b,a,b.path,c)));return p.mergeArray(c,e)}get element(){return this._def.type}min(a,b){return new _({...this._def,minLength:{value:a,message:f.toString(b)}})}max(a,b){return new _({...this._def,maxLength:{value:a,message:f.toString(b)}})}length(a,b){return new _({...this._def,exactLength:{value:a,message:f.toString(b)}})}nonempty(a){return this.min(1,a)}}_.create=(a,b)=>new _({type:a,minLength:null,maxLength:null,exactLength:null,typeName:g.ZodArray,...w(b)});class aa extends x{constructor(){super(...arguments),this._cached=null,this.nonstrict=this.passthrough,this.augment=this.extend}_getCached(){if(null!==this._cached)return this._cached;let a=this._def.shape(),b=d.objectKeys(a);return this._cached={shape:a,keys:b},this._cached}_parse(a){if(this._getType(a)!==i.object){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.object,received:b.parsedType}),q}let{status:b,ctx:c}=this._processInputParams(a),{shape:d,keys:e}=this._getCached(),f=[];if(!(this._def.catchall instanceof Z&&"strip"===this._def.unknownKeys))for(let a in c.data)e.includes(a)||f.push(a);let g=[];for(let a of e){let b=d[a],e=c.data[a];g.push({key:{status:"valid",value:a},value:b._parse(new u(c,e,c.path,a)),alwaysSet:a in c.data})}if(this._def.catchall instanceof Z){let a=this._def.unknownKeys;if("passthrough"===a)for(let a of f)g.push({key:{status:"valid",value:a},value:{status:"valid",value:c.data[a]}});else if("strict"===a)f.length>0&&(o(c,{code:k.unrecognized_keys,keys:f}),b.dirty());else if("strip"===a);else throw Error("Internal ZodObject error: invalid unknownKeys value.")}else{let a=this._def.catchall;for(let b of f){let d=c.data[b];g.push({key:{status:"valid",value:b},value:a._parse(new u(c,d,c.path,b)),alwaysSet:b in c.data})}}return c.common.async?Promise.resolve().then(async()=>{let a=[];for(let b of g){let c=await b.key,d=await b.value;a.push({key:c,value:d,alwaysSet:b.alwaysSet})}return a}).then(a=>p.mergeObjectSync(b,a)):p.mergeObjectSync(b,g)}get shape(){return this._def.shape()}strict(a){return f.errToObj,new aa({...this._def,unknownKeys:"strict",...void 0!==a?{errorMap:(b,c)=>{let d=this._def.errorMap?.(b,c).message??c.defaultError;return"unrecognized_keys"===b.code?{message:f.errToObj(a).message??d}:{message:d}}}:{}})}strip(){return new aa({...this._def,unknownKeys:"strip"})}passthrough(){return new aa({...this._def,unknownKeys:"passthrough"})}extend(a){return new aa({...this._def,shape:()=>({...this._def.shape(),...a})})}merge(a){return new aa({unknownKeys:a._def.unknownKeys,catchall:a._def.catchall,shape:()=>({...this._def.shape(),...a._def.shape()}),typeName:g.ZodObject})}setKey(a,b){return this.augment({[a]:b})}catchall(a){return new aa({...this._def,catchall:a})}pick(a){let b={};for(let c of d.objectKeys(a))a[c]&&this.shape[c]&&(b[c]=this.shape[c]);return new aa({...this._def,shape:()=>b})}omit(a){let b={};for(let c of d.objectKeys(this.shape))a[c]||(b[c]=this.shape[c]);return new aa({...this._def,shape:()=>b})}deepPartial(){return function a(b){if(b instanceof aa){let c={};for(let d in b.shape){let e=b.shape[d];c[d]=ar.create(a(e))}return new aa({...b._def,shape:()=>c})}if(b instanceof _)return new _({...b._def,type:a(b.element)});if(b instanceof ar)return ar.create(a(b.unwrap()));if(b instanceof as)return as.create(a(b.unwrap()));if(b instanceof af)return af.create(b.items.map(b=>a(b)));else return b}(this)}partial(a){let b={};for(let c of d.objectKeys(this.shape)){let d=this.shape[c];a&&!a[c]?b[c]=d:b[c]=d.optional()}return new aa({...this._def,shape:()=>b})}required(a){let b={};for(let c of d.objectKeys(this.shape))if(a&&!a[c])b[c]=this.shape[c];else{let a=this.shape[c];for(;a instanceof ar;)a=a._def.innerType;b[c]=a}return new aa({...this._def,shape:()=>b})}keyof(){return am(d.objectKeys(this.shape))}}aa.create=(a,b)=>new aa({shape:()=>a,unknownKeys:"strip",catchall:Z.create(),typeName:g.ZodObject,...w(b)}),aa.strictCreate=(a,b)=>new aa({shape:()=>a,unknownKeys:"strict",catchall:Z.create(),typeName:g.ZodObject,...w(b)}),aa.lazycreate=(a,b)=>new aa({shape:a,unknownKeys:"strip",catchall:Z.create(),typeName:g.ZodObject,...w(b)});class ab extends x{_parse(a){let{ctx:b}=this._processInputParams(a),c=this._def.options;if(b.common.async)return Promise.all(c.map(async a=>{let c={...b,common:{...b.common,issues:[]},parent:null};return{result:await a._parseAsync({data:b.data,path:b.path,parent:c}),ctx:c}})).then(function(a){for(let b of a)if("valid"===b.result.status)return b.result;for(let c of a)if("dirty"===c.result.status)return b.common.issues.push(...c.ctx.common.issues),c.result;let c=a.map(a=>new l(a.ctx.common.issues));return o(b,{code:k.invalid_union,unionErrors:c}),q});{let a,d=[];for(let e of c){let c={...b,common:{...b.common,issues:[]},parent:null},f=e._parseSync({data:b.data,path:b.path,parent:c});if("valid"===f.status)return f;"dirty"!==f.status||a||(a={result:f,ctx:c}),c.common.issues.length&&d.push(c.common.issues)}if(a)return b.common.issues.push(...a.ctx.common.issues),a.result;let e=d.map(a=>new l(a));return o(b,{code:k.invalid_union,unionErrors:e}),q}}get options(){return this._def.options}}ab.create=(a,b)=>new ab({options:a,typeName:g.ZodUnion,...w(b)});let ac=a=>{if(a instanceof ak)return ac(a.schema);if(a instanceof aq)return ac(a.innerType());if(a instanceof al)return[a.value];if(a instanceof an)return a.options;if(a instanceof ao)return d.objectValues(a.enum);else if(a instanceof at)return ac(a._def.innerType);else if(a instanceof V)return[void 0];else if(a instanceof W)return[null];else if(a instanceof ar)return[void 0,...ac(a.unwrap())];else if(a instanceof as)return[null,...ac(a.unwrap())];else if(a instanceof aw)return ac(a.unwrap());else if(a instanceof ay)return ac(a.unwrap());else if(a instanceof au)return ac(a._def.innerType);else return[]};class ad extends x{_parse(a){let{ctx:b}=this._processInputParams(a);if(b.parsedType!==i.object)return o(b,{code:k.invalid_type,expected:i.object,received:b.parsedType}),q;let c=this.discriminator,d=b.data[c],e=this.optionsMap.get(d);return e?b.common.async?e._parseAsync({data:b.data,path:b.path,parent:b}):e._parseSync({data:b.data,path:b.path,parent:b}):(o(b,{code:k.invalid_union_discriminator,options:Array.from(this.optionsMap.keys()),path:[c]}),q)}get discriminator(){return this._def.discriminator}get options(){return this._def.options}get optionsMap(){return this._def.optionsMap}static create(a,b,c){let d=new Map;for(let c of b){let b=ac(c.shape[a]);if(!b.length)throw Error(`A discriminator value for key \`${a}\` could not be extracted from all schema options`);for(let e of b){if(d.has(e))throw Error(`Discriminator property ${String(a)} has duplicate value ${String(e)}`);d.set(e,c)}}return new ad({typeName:g.ZodDiscriminatedUnion,discriminator:a,options:b,optionsMap:d,...w(c)})}}class ae extends x{_parse(a){let{status:b,ctx:c}=this._processInputParams(a),e=(a,e)=>{if("aborted"===a.status||"aborted"===e.status)return q;let f=function a(b,c){let e=j(b),f=j(c);if(b===c)return{valid:!0,data:b};if(e===i.object&&f===i.object){let e=d.objectKeys(c),f=d.objectKeys(b).filter(a=>-1!==e.indexOf(a)),g={...b,...c};for(let d of f){let e=a(b[d],c[d]);if(!e.valid)return{valid:!1};g[d]=e.data}return{valid:!0,data:g}}if(e===i.array&&f===i.array){if(b.length!==c.length)return{valid:!1};let d=[];for(let e=0;e<b.length;e++){let f=a(b[e],c[e]);if(!f.valid)return{valid:!1};d.push(f.data)}return{valid:!0,data:d}}if(e===i.date&&f===i.date&&+b==+c)return{valid:!0,data:b};return{valid:!1}}(a.value,e.value);return f.valid?(("dirty"===a.status||"dirty"===e.status)&&b.dirty(),{status:b.value,value:f.data}):(o(c,{code:k.invalid_intersection_types}),q)};return c.common.async?Promise.all([this._def.left._parseAsync({data:c.data,path:c.path,parent:c}),this._def.right._parseAsync({data:c.data,path:c.path,parent:c})]).then(([a,b])=>e(a,b)):e(this._def.left._parseSync({data:c.data,path:c.path,parent:c}),this._def.right._parseSync({data:c.data,path:c.path,parent:c}))}}ae.create=(a,b,c)=>new ae({left:a,right:b,typeName:g.ZodIntersection,...w(c)});class af extends x{_parse(a){let{status:b,ctx:c}=this._processInputParams(a);if(c.parsedType!==i.array)return o(c,{code:k.invalid_type,expected:i.array,received:c.parsedType}),q;if(c.data.length<this._def.items.length)return o(c,{code:k.too_small,minimum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),q;!this._def.rest&&c.data.length>this._def.items.length&&(o(c,{code:k.too_big,maximum:this._def.items.length,inclusive:!0,exact:!1,type:"array"}),b.dirty());let d=[...c.data].map((a,b)=>{let d=this._def.items[b]||this._def.rest;return d?d._parse(new u(c,a,c.path,b)):null}).filter(a=>!!a);return c.common.async?Promise.all(d).then(a=>p.mergeArray(b,a)):p.mergeArray(b,d)}get items(){return this._def.items}rest(a){return new af({...this._def,rest:a})}}af.create=(a,b)=>{if(!Array.isArray(a))throw Error("You must pass an array of schemas to z.tuple([ ... ])");return new af({items:a,typeName:g.ZodTuple,rest:null,...w(b)})};class ag extends x{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(a){let{status:b,ctx:c}=this._processInputParams(a);if(c.parsedType!==i.object)return o(c,{code:k.invalid_type,expected:i.object,received:c.parsedType}),q;let d=[],e=this._def.keyType,f=this._def.valueType;for(let a in c.data)d.push({key:e._parse(new u(c,a,c.path,a)),value:f._parse(new u(c,c.data[a],c.path,a)),alwaysSet:a in c.data});return c.common.async?p.mergeObjectAsync(b,d):p.mergeObjectSync(b,d)}get element(){return this._def.valueType}static create(a,b,c){return new ag(b instanceof x?{keyType:a,valueType:b,typeName:g.ZodRecord,...w(c)}:{keyType:P.create(),valueType:a,typeName:g.ZodRecord,...w(b)})}}class ah extends x{get keySchema(){return this._def.keyType}get valueSchema(){return this._def.valueType}_parse(a){let{status:b,ctx:c}=this._processInputParams(a);if(c.parsedType!==i.map)return o(c,{code:k.invalid_type,expected:i.map,received:c.parsedType}),q;let d=this._def.keyType,e=this._def.valueType,f=[...c.data.entries()].map(([a,b],f)=>({key:d._parse(new u(c,a,c.path,[f,"key"])),value:e._parse(new u(c,b,c.path,[f,"value"]))}));if(c.common.async){let a=new Map;return Promise.resolve().then(async()=>{for(let c of f){let d=await c.key,e=await c.value;if("aborted"===d.status||"aborted"===e.status)return q;("dirty"===d.status||"dirty"===e.status)&&b.dirty(),a.set(d.value,e.value)}return{status:b.value,value:a}})}{let a=new Map;for(let c of f){let d=c.key,e=c.value;if("aborted"===d.status||"aborted"===e.status)return q;("dirty"===d.status||"dirty"===e.status)&&b.dirty(),a.set(d.value,e.value)}return{status:b.value,value:a}}}}ah.create=(a,b,c)=>new ah({valueType:b,keyType:a,typeName:g.ZodMap,...w(c)});class ai extends x{_parse(a){let{status:b,ctx:c}=this._processInputParams(a);if(c.parsedType!==i.set)return o(c,{code:k.invalid_type,expected:i.set,received:c.parsedType}),q;let d=this._def;null!==d.minSize&&c.data.size<d.minSize.value&&(o(c,{code:k.too_small,minimum:d.minSize.value,type:"set",inclusive:!0,exact:!1,message:d.minSize.message}),b.dirty()),null!==d.maxSize&&c.data.size>d.maxSize.value&&(o(c,{code:k.too_big,maximum:d.maxSize.value,type:"set",inclusive:!0,exact:!1,message:d.maxSize.message}),b.dirty());let e=this._def.valueType;function f(a){let c=new Set;for(let d of a){if("aborted"===d.status)return q;"dirty"===d.status&&b.dirty(),c.add(d.value)}return{status:b.value,value:c}}let g=[...c.data.values()].map((a,b)=>e._parse(new u(c,a,c.path,b)));return c.common.async?Promise.all(g).then(a=>f(a)):f(g)}min(a,b){return new ai({...this._def,minSize:{value:a,message:f.toString(b)}})}max(a,b){return new ai({...this._def,maxSize:{value:a,message:f.toString(b)}})}size(a,b){return this.min(a,b).max(a,b)}nonempty(a){return this.min(1,a)}}ai.create=(a,b)=>new ai({valueType:a,minSize:null,maxSize:null,typeName:g.ZodSet,...w(b)});class aj extends x{constructor(){super(...arguments),this.validate=this.implement}_parse(a){let{ctx:b}=this._processInputParams(a);if(b.parsedType!==i.function)return o(b,{code:k.invalid_type,expected:i.function,received:b.parsedType}),q;function c(a,c){return n({data:a,path:b.path,errorMaps:[b.common.contextualErrorMap,b.schemaErrorMap,m,m].filter(a=>!!a),issueData:{code:k.invalid_arguments,argumentsError:c}})}function d(a,c){return n({data:a,path:b.path,errorMaps:[b.common.contextualErrorMap,b.schemaErrorMap,m,m].filter(a=>!!a),issueData:{code:k.invalid_return_type,returnTypeError:c}})}let e={errorMap:b.common.contextualErrorMap},f=b.data;if(this._def.returns instanceof ap){let a=this;return s(async function(...b){let g=new l([]),h=await a._def.args.parseAsync(b,e).catch(a=>{throw g.addIssue(c(b,a)),g}),i=await Reflect.apply(f,this,h);return await a._def.returns._def.type.parseAsync(i,e).catch(a=>{throw g.addIssue(d(i,a)),g})})}{let a=this;return s(function(...b){let g=a._def.args.safeParse(b,e);if(!g.success)throw new l([c(b,g.error)]);let h=Reflect.apply(f,this,g.data),i=a._def.returns.safeParse(h,e);if(!i.success)throw new l([d(h,i.error)]);return i.data})}}parameters(){return this._def.args}returnType(){return this._def.returns}args(...a){return new aj({...this._def,args:af.create(a).rest(Y.create())})}returns(a){return new aj({...this._def,returns:a})}implement(a){return this.parse(a)}strictImplement(a){return this.parse(a)}static create(a,b,c){return new aj({args:a||af.create([]).rest(Y.create()),returns:b||Y.create(),typeName:g.ZodFunction,...w(c)})}}class ak extends x{get schema(){return this._def.getter()}_parse(a){let{ctx:b}=this._processInputParams(a);return this._def.getter()._parse({data:b.data,path:b.path,parent:b})}}ak.create=(a,b)=>new ak({getter:a,typeName:g.ZodLazy,...w(b)});class al extends x{_parse(a){if(a.data!==this._def.value){let b=this._getOrReturnCtx(a);return o(b,{received:b.data,code:k.invalid_literal,expected:this._def.value}),q}return{status:"valid",value:a.data}}get value(){return this._def.value}}function am(a,b){return new an({values:a,typeName:g.ZodEnum,...w(b)})}al.create=(a,b)=>new al({value:a,typeName:g.ZodLiteral,...w(b)});class an extends x{_parse(a){if("string"!=typeof a.data){let b=this._getOrReturnCtx(a),c=this._def.values;return o(b,{expected:d.joinValues(c),received:b.parsedType,code:k.invalid_type}),q}if(this._cache||(this._cache=new Set(this._def.values)),!this._cache.has(a.data)){let b=this._getOrReturnCtx(a),c=this._def.values;return o(b,{received:b.data,code:k.invalid_enum_value,options:c}),q}return s(a.data)}get options(){return this._def.values}get enum(){let a={};for(let b of this._def.values)a[b]=b;return a}get Values(){let a={};for(let b of this._def.values)a[b]=b;return a}get Enum(){let a={};for(let b of this._def.values)a[b]=b;return a}extract(a,b=this._def){return an.create(a,{...this._def,...b})}exclude(a,b=this._def){return an.create(this.options.filter(b=>!a.includes(b)),{...this._def,...b})}}an.create=am;class ao extends x{_parse(a){let b=d.getValidEnumValues(this._def.values),c=this._getOrReturnCtx(a);if(c.parsedType!==i.string&&c.parsedType!==i.number){let a=d.objectValues(b);return o(c,{expected:d.joinValues(a),received:c.parsedType,code:k.invalid_type}),q}if(this._cache||(this._cache=new Set(d.getValidEnumValues(this._def.values))),!this._cache.has(a.data)){let a=d.objectValues(b);return o(c,{received:c.data,code:k.invalid_enum_value,options:a}),q}return s(a.data)}get enum(){return this._def.values}}ao.create=(a,b)=>new ao({values:a,typeName:g.ZodNativeEnum,...w(b)});class ap extends x{unwrap(){return this._def.type}_parse(a){let{ctx:b}=this._processInputParams(a);return b.parsedType!==i.promise&&!1===b.common.async?(o(b,{code:k.invalid_type,expected:i.promise,received:b.parsedType}),q):s((b.parsedType===i.promise?b.data:Promise.resolve(b.data)).then(a=>this._def.type.parseAsync(a,{path:b.path,errorMap:b.common.contextualErrorMap})))}}ap.create=(a,b)=>new ap({type:a,typeName:g.ZodPromise,...w(b)});class aq extends x{innerType(){return this._def.schema}sourceType(){return this._def.schema._def.typeName===g.ZodEffects?this._def.schema.sourceType():this._def.schema}_parse(a){let{status:b,ctx:c}=this._processInputParams(a),e=this._def.effect||null,f={addIssue:a=>{o(c,a),a.fatal?b.abort():b.dirty()},get path(){return c.path}};if(f.addIssue=f.addIssue.bind(f),"preprocess"===e.type){let a=e.transform(c.data,f);if(c.common.async)return Promise.resolve(a).then(async a=>{if("aborted"===b.value)return q;let d=await this._def.schema._parseAsync({data:a,path:c.path,parent:c});return"aborted"===d.status?q:"dirty"===d.status||"dirty"===b.value?r(d.value):d});{if("aborted"===b.value)return q;let d=this._def.schema._parseSync({data:a,path:c.path,parent:c});return"aborted"===d.status?q:"dirty"===d.status||"dirty"===b.value?r(d.value):d}}if("refinement"===e.type){let a=a=>{let b=e.refinement(a,f);if(c.common.async)return Promise.resolve(b);if(b instanceof Promise)throw Error("Async refinement encountered during synchronous parse operation. Use .parseAsync instead.");return a};if(!1!==c.common.async)return this._def.schema._parseAsync({data:c.data,path:c.path,parent:c}).then(c=>"aborted"===c.status?q:("dirty"===c.status&&b.dirty(),a(c.value).then(()=>({status:b.value,value:c.value}))));{let d=this._def.schema._parseSync({data:c.data,path:c.path,parent:c});return"aborted"===d.status?q:("dirty"===d.status&&b.dirty(),a(d.value),{status:b.value,value:d.value})}}if("transform"===e.type)if(!1!==c.common.async)return this._def.schema._parseAsync({data:c.data,path:c.path,parent:c}).then(a=>"valid"!==a.status?q:Promise.resolve(e.transform(a.value,f)).then(a=>({status:b.value,value:a})));else{let a=this._def.schema._parseSync({data:c.data,path:c.path,parent:c});if("valid"!==a.status)return q;let d=e.transform(a.value,f);if(d instanceof Promise)throw Error("Asynchronous transform encountered during synchronous parse operation. Use .parseAsync instead.");return{status:b.value,value:d}}d.assertNever(e)}}aq.create=(a,b,c)=>new aq({schema:a,typeName:g.ZodEffects,effect:b,...w(c)}),aq.createWithPreprocess=(a,b,c)=>new aq({schema:b,effect:{type:"preprocess",transform:a},typeName:g.ZodEffects,...w(c)});class ar extends x{_parse(a){return this._getType(a)===i.undefined?s(void 0):this._def.innerType._parse(a)}unwrap(){return this._def.innerType}}ar.create=(a,b)=>new ar({innerType:a,typeName:g.ZodOptional,...w(b)});class as extends x{_parse(a){return this._getType(a)===i.null?s(null):this._def.innerType._parse(a)}unwrap(){return this._def.innerType}}as.create=(a,b)=>new as({innerType:a,typeName:g.ZodNullable,...w(b)});class at extends x{_parse(a){let{ctx:b}=this._processInputParams(a),c=b.data;return b.parsedType===i.undefined&&(c=this._def.defaultValue()),this._def.innerType._parse({data:c,path:b.path,parent:b})}removeDefault(){return this._def.innerType}}at.create=(a,b)=>new at({innerType:a,typeName:g.ZodDefault,defaultValue:"function"==typeof b.default?b.default:()=>b.default,...w(b)});class au extends x{_parse(a){let{ctx:b}=this._processInputParams(a),c={...b,common:{...b.common,issues:[]}},d=this._def.innerType._parse({data:c.data,path:c.path,parent:{...c}});return t(d)?d.then(a=>({status:"valid",value:"valid"===a.status?a.value:this._def.catchValue({get error(){return new l(c.common.issues)},input:c.data})})):{status:"valid",value:"valid"===d.status?d.value:this._def.catchValue({get error(){return new l(c.common.issues)},input:c.data})}}removeCatch(){return this._def.innerType}}au.create=(a,b)=>new au({innerType:a,typeName:g.ZodCatch,catchValue:"function"==typeof b.catch?b.catch:()=>b.catch,...w(b)});class av extends x{_parse(a){if(this._getType(a)!==i.nan){let b=this._getOrReturnCtx(a);return o(b,{code:k.invalid_type,expected:i.nan,received:b.parsedType}),q}return{status:"valid",value:a.data}}}av.create=a=>new av({typeName:g.ZodNaN,...w(a)}),Symbol("zod_brand");class aw extends x{_parse(a){let{ctx:b}=this._processInputParams(a),c=b.data;return this._def.type._parse({data:c,path:b.path,parent:b})}unwrap(){return this._def.type}}class ax extends x{_parse(a){let{status:b,ctx:c}=this._processInputParams(a);if(c.common.async)return(async()=>{let a=await this._def.in._parseAsync({data:c.data,path:c.path,parent:c});return"aborted"===a.status?q:"dirty"===a.status?(b.dirty(),r(a.value)):this._def.out._parseAsync({data:a.value,path:c.path,parent:c})})();{let a=this._def.in._parseSync({data:c.data,path:c.path,parent:c});return"aborted"===a.status?q:"dirty"===a.status?(b.dirty(),{status:"dirty",value:a.value}):this._def.out._parseSync({data:a.value,path:c.path,parent:c})}}static create(a,b){return new ax({in:a,out:b,typeName:g.ZodPipeline})}}class ay extends x{_parse(a){let b=this._def.innerType._parse(a),c=a=>("valid"===a.status&&(a.value=Object.freeze(a.value)),a);return t(b)?b.then(a=>c(a)):c(b)}unwrap(){return this._def.innerType}}ay.create=(a,b)=>new ay({innerType:a,typeName:g.ZodReadonly,...w(b)}),aa.lazycreate,function(a){a.ZodString="ZodString",a.ZodNumber="ZodNumber",a.ZodNaN="ZodNaN",a.ZodBigInt="ZodBigInt",a.ZodBoolean="ZodBoolean",a.ZodDate="ZodDate",a.ZodSymbol="ZodSymbol",a.ZodUndefined="ZodUndefined",a.ZodNull="ZodNull",a.ZodAny="ZodAny",a.ZodUnknown="ZodUnknown",a.ZodNever="ZodNever",a.ZodVoid="ZodVoid",a.ZodArray="ZodArray",a.ZodObject="ZodObject",a.ZodUnion="ZodUnion",a.ZodDiscriminatedUnion="ZodDiscriminatedUnion",a.ZodIntersection="ZodIntersection",a.ZodTuple="ZodTuple",a.ZodRecord="ZodRecord",a.ZodMap="ZodMap",a.ZodSet="ZodSet",a.ZodFunction="ZodFunction",a.ZodLazy="ZodLazy",a.ZodLiteral="ZodLiteral",a.ZodEnum="ZodEnum",a.ZodEffects="ZodEffects",a.ZodNativeEnum="ZodNativeEnum",a.ZodOptional="ZodOptional",a.ZodNullable="ZodNullable",a.ZodDefault="ZodDefault",a.ZodCatch="ZodCatch",a.ZodPromise="ZodPromise",a.ZodBranded="ZodBranded",a.ZodPipeline="ZodPipeline",a.ZodReadonly="ZodReadonly"}(g||(g={}));let az=P.create,aA=Q.create;av.create,R.create;let aB=S.create;T.create,U.create,V.create,W.create,X.create,Y.create,Z.create,$.create;let aC=_.create,aD=aa.create;aa.strictCreate,ab.create,ad.create,ae.create,af.create,ag.create,ah.create,ai.create,aj.create,ak.create;let aE=al.create,aF=an.create;ao.create,ap.create,aq.create,ar.create,as.create,aq.createWithPreprocess,ax.create}};
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
"use strict";exports.id=477,exports.ids=[477],exports.modules={1913:(a,b,c)=>{c.d(b,{BA:()=>n,Mc:()=>d,Qh:()=>l,Rd:()=>j,YN:()=>k,Z6:()=>m,aR:()=>e,dI:()=>i,ge:()=>h,qe:()=>f,rD:()=>g});let d='Open "How do I get a GitHub token?" and create a classic token with repo and workflow selected.',e="GitHub token lacks the workflow scope required to create or update Actions workflow files under .github/workflows/. Use a classic PAT with the workflow scope or a fine-grained PAT with Actions/workflows write permission on the target repo, then update GITHUB_TOKEN in .env.local.",f='This token is valid, but it is missing workflow access. Open "How do I get a GitHub token?" and create a classic token with repo and workflow selected.',g="Fine-grained PAT detected. Repo-specific workflow install permission will be checked in Step 2 for each target repo.",h="An earlier setup check did not catch this permission gap. GitHub sometimes only reveals workflow write limits when updating files under .github/workflows/. ";function i(a,b){let c=a?.trim().toLowerCase();return"fine-grained"===c?"fine-grained":"classic"===c||b.length>0?"classic":"unknown"}function j(a){return a.includes("workflow")}function k(a){return a.includes("repo")||a.includes("public_repo")}function l(a){return"classic"!==a.tokenType?{ok:!0,limitation:g}:k(a.oauthScopes)?a.hasWorkflowScope?{ok:!0}:{ok:!1,message:f}:{ok:!1,message:'This token is valid, but it is missing repo access. Open "How do I get a GitHub token?" and create a classic token with repo and workflow selected.'}}function m(a){return"fine-grained"===a.tokenType?{ok:!1,message:"p-dev's first release needs a classic GitHub token with repo and workflow scopes so it can create your private p-dev-harness workspace and configure Actions. Fine-grained tokens are not yet supported for automatic workspace provisioning."}:"unknown"===a.tokenType||0===a.oauthScopes.length?{ok:!1,message:"GitHub accepted this token, but p-dev could not verify that it is a classic PAT with repo and workflow scopes. Create a classic PAT with repo and workflow selected, then verify again."}:a.oauthScopes.includes("repo")?a.hasWorkflowScope?{ok:!0}:{ok:!1,message:"This token is missing the workflow scope required for harness Actions workflow setup. Create a classic PAT with repo and workflow selected, then verify again."}:{ok:!1,message:"This token is missing the repo scope required to create and access your private p-dev-harness workspace. Create a classic PAT with repo and workflow selected, then verify again."}}let n="GitHub does not expose fine-grained Workflows write permission through a dedicated read-only API. Step 2 confirms repo access and Actions visibility; Step 5 remains the final fallback if GitHub only reveals the limit on write."},16589:(a,b,c)=>{function d(a){let b=a.trim().match(/^https:\/\/github\.com\/([A-Za-z0-9_.-]+)\/([A-Za-z0-9_.-]+)\/?$/);return b?{owner:b[1],repo:b[2]}:null}function e(a){if(a.actualBaseBranch!==a.expectedBaseBranch)throw Error(`wrong_pr_base_branch: PR ${a.prUrl} targets "${a.actualBaseBranch}"; expected "${a.expectedBaseBranch}". Update the PR base branch before continuing.`)}c.d(b,{$H:()=>e,wL:()=>d}),c(67470)},39058:(a,b,c)=>{c.d(b,{_u:()=>m,tl:()=>t,yu:()=>v,im:()=>w});var d=c(1913),e=c(67470),f=c(16589),g=c(35966);async function h(a){let b=new g.LinearClient({apiKey:a}),c=await b.viewer;return c.name??c.email??c.id}var i=c(57362),j=c(87285),k=c(84998),l=c(74590);async function m(a){let b=new e.jh({token:a.trim()}),c=await b.inspectAuthenticatedUser(),f=(0,d.dI)(c.tokenType,c.oauthScopes);return{login:c.login,tokenType:f,oauthScopes:c.oauthScopes,hasWorkflowScope:c.oauthScopes.includes("workflow"),hasRepoScope:c.oauthScopes.includes("repo")||c.oauthScopes.includes("public_repo")}}function n(a,b){return(0,i.h4)(a,b)}async function o(a){let b=a.trim();if(!b)return{status:"failed",message:"Enter a Linear API key before verifying."};try{let a=await h(b);return{status:"connected",label:a,message:`Connected as ${a}.`}}catch(a){return{status:"failed",message:function(a,b){let c=a instanceof Error?a.message:String(a);return/unauthorized|invalid|forbidden|authentication/i.test(c)?"Linear rejected this API key. Check that LINEAR_API_KEY is valid.":n(c,[b])}(a,b)}}}async function p(a){let b=a.trim();if(!b)return{status:"failed",message:"Enter a GitHub token before verifying."};try{let a=await m(b),c=(0,d.Qh)(a);if(!c.ok)return{status:"failed",message:c.message,limitation:d.Mc};let e=c.limitation??("classic"===a.tokenType?void 0:d.rD);return{status:"connected",label:a.login,message:`Connected as ${a.login}.`,limitation:e}}catch(a){var c,f;return{status:"failed",message:(c=a,f=b,c instanceof e.OS?401===c.status?"GitHub rejected this token. Check that GITHUB_TOKEN is valid and not expired.":403===c.status?"GitHub accepted the request but denied access. The token may lack required scopes.":n(`GitHub API returned HTTP ${c.status}. Check the token and try again.`,[f]):n(c instanceof Error?c.message:String(c),[f])),limitation:d.Mc}}}async function q(a){let b=a.trim();if(!b)return{status:"failed",message:"Enter a Cursor API key before verifying."};try{let{Cursor:a}=await Promise.resolve().then(c.bind(c,28783)),d=(await a.models.list({apiKey:b})).length,e="";try{let c=await a.repositories.list({apiKey:b});c.length>0&&(e=` ${c.length} connected repo(s) visible to Cursor.`)}catch{}return{status:"connected",label:`${d} model(s)`,message:`Cursor API key accepted (${d} model(s) available).${e}`,limitation:"This confirms the key works with Cursor SDK listing. It does not guarantee a future cloud run can access every target repo."}}catch(a){return{status:"failed",message:function(a,b){let c=a instanceof Error?a.message:String(a);return/unauthorized|invalid|forbidden|authentication|401|403/i.test(c)?"Cursor rejected this API key. Check that CURSOR_API_KEY is valid.":n(c,[b])}(a,b),limitation:"Cursor verification uses read-only SDK model listing, not a live agent run."}}}async function r(a){let b=a.token.trim(),c=a.targetRepo.trim();if(!c)return{status:"failed",message:"Enter a GitHub target repo URL before verifying."};let g=function(a){let b=(0,f.wL)(a.trim());if(!b)return null;let c=`${b.owner}/${b.repo}`;return{...b,slug:c,normalizedUrl:`https://github.com/${c}`}}(c);if(!g)return{status:"failed",message:"Enter a valid GitHub repo URL like https://github.com/acme/my-product."};if(!b)return{status:"failed",message:"Add or save a GitHub token first, then verify repo + workflow access."};try{let a=await m(b);if("classic"===a.tokenType&&!a.hasWorkflowScope)return{status:"failed",repoSlug:g.slug,normalizedUrl:g.normalizedUrl,workflowInstallReady:!1,message:d.qe,limitation:d.Mc};let c=new e.jh({token:b}),f=await c.getRepository(g.owner,g.repo),h=f.permissions?.pull===!0||f.permissions?.push===!0||f.permissions?.admin===!0||f.permissions?.maintain===!0,i=f.permissions?.push===!0||f.permissions?.admin===!0||f.permissions?.maintain===!0;if(!h)return{status:"failed",repoSlug:g.slug,normalizedUrl:g.normalizedUrl,workflowInstallReady:!1,message:`GitHub token cannot read ${g.slug}. Grant repo read access to this token.`};if(!i)return{status:"failed",repoSlug:g.slug,normalizedUrl:g.normalizedUrl,workflowInstallReady:!1,message:`GitHub token cannot write repository contents for ${g.slug}. Workflow install PRs need Contents write access. Use a classic PAT with repo + workflow or a fine-grained PAT with Contents write + Workflows write on this repo.`};try{await c.listActionsWorkflows(g.owner,g.repo)}catch(a){if(a instanceof e.OS&&(403===a.status||404===a.status)&&/workflow/i.test(a.message))return{status:"failed",repoSlug:g.slug,normalizedUrl:g.normalizedUrl,workflowInstallReady:!1,message:d.aR};if(a instanceof e.OS&&403===a.status)return{status:"failed",repoSlug:g.slug,normalizedUrl:g.normalizedUrl,workflowInstallReady:!1,message:`GitHub denied Actions workflow access for ${g.slug}. Grant Workflows write (fine-grained PAT) or workflow scope (classic PAT), then update GITHUB_TOKEN and verify again.`};throw a}if("fine-grained"===a.tokenType)return{status:"connected",repoSlug:g.slug,normalizedUrl:g.normalizedUrl,workflowInstallReady:!0,message:`Connected to ${g.slug} with repo + workflow install access expected.`,limitation:d.BA};return{status:"connected",repoSlug:g.slug,normalizedUrl:g.normalizedUrl,workflowInstallReady:!0,message:`Connected to ${g.slug} with repo + workflow install access.`}}catch(a){if(a instanceof e.OS){if(404===a.status)return{status:"failed",repoSlug:g.slug,normalizedUrl:g.normalizedUrl,workflowInstallReady:!1,message:`Repo ${g.slug} was not found or this token cannot access it.`};if(401===a.status)return{status:"failed",workflowInstallReady:!1,message:"GitHub rejected the token. Verify GITHUB_TOKEN and try again."};if(403===a.status)return{status:"failed",repoSlug:g.slug,normalizedUrl:g.normalizedUrl,workflowInstallReady:!1,message:`GitHub denied access to ${g.slug}. Check token permissions for this repo.`};return{status:"failed",workflowInstallReady:!1,message:n(`GitHub API returned HTTP ${a.status} while checking ${g.slug}.`,[b])}}return{status:"failed",workflowInstallReady:!1,message:n(a instanceof Error?a.message:String(a),[b])}}}async function s(a){let b=a.trim();if(!b)return{status:"failed",message:"Enter a Vercel token before verifying."};try{let a=await (0,l.UL)(b);return{status:"connected",label:a.username,message:`Connected as ${a.username}.`,limitation:"This confirms the Vercel token can read account metadata. Project and env var writes still require preview + confirmation."}}catch(c){let a=c instanceof Error?c.message:String(c);if(/unauthorized|forbidden|401|403/i.test(a))return{status:"failed",message:"Vercel rejected this token. Check that VERCEL_TOKEN is valid."};return{status:"failed",message:n(a,[b])}}}async function t(a){let b=(0,k.ym)(a.cwd),c=await (0,j.Hn)(b);return c?.values[a.key]?.trim()||void 0}async function u(a){let b=a.token?.trim();if(b)return{token:b,usedSavedKey:!1};let c=await t({cwd:a.cwd,key:{linear:"LINEAR_API_KEY",cursor:"CURSOR_API_KEY",github:"GITHUB_TOKEN",vercel:"VERCEL_TOKEN"}[a.service]});return c?{token:c,usedSavedKey:!0}:{token:void 0,usedSavedKey:!1}}async function v(a){let b,c=await u(a);if(!c.token)return{status:"failed",message:`Enter ${({linear:"LINEAR_API_KEY",cursor:"CURSOR_API_KEY",github:"GITHUB_TOKEN",vercel:"VERCEL_TOKEN"})[a.service]} or save it in .env.local before verifying.`,usedSavedKey:!1};switch(a.service){case"linear":b=await o(c.token);break;case"cursor":b=await q(c.token);break;case"github":b=await p(c.token);break;case"vercel":b=await s(c.token)}return{...b,usedSavedKey:c.usedSavedKey}}async function w(a){let b=await u({cwd:a.cwd,service:"github",token:a.githubToken});return{...await r({token:b.token??"",targetRepo:a.targetRepo}),usedSavedGithubToken:b.usedSavedKey}}},45599:(a,b,c)=>{function d(a){let b={},c=a.get("retry-after");if(c){let a=Number(c);Number.isFinite(a)&&a>0&&(b.retryAfterSeconds=Math.ceil(a))}let d=a.get("x-ratelimit-remaining");if(null!==d&&""!==d.trim()){let a=Number(d);Number.isFinite(a)&&(b.rateLimitRemaining=a)}let e=a.get("x-ratelimit-reset");if(null!==e&&""!==e.trim()){let a=Number(e);Number.isFinite(a)&&(b.rateLimitResetEpochSeconds=a)}let f=a.get("x-github-request-id");return f&&(b.requestId=f),b}function e(a){return/secondary rate limit|abuse detection|temporarily blocked/i.test(a)}function f(a){return 429===a.status||403===a.status&&(!!(/rate limit/i.test(a.message)||e(a.message))||void 0!==a.retryAfterSeconds&&!!(a.retryAfterSeconds>0)||0===a.rateLimitRemaining)}function g(a){let{error:b,secondaryStrikeCount:c,nowMs:d}=a;if(void 0!==b.retryAfterSeconds&&b.retryAfterSeconds>0)return 1e3*b.retryAfterSeconds;if(0===b.rateLimitRemaining&&void 0!==b.rateLimitResetEpochSeconds)return Math.max(0,1e3*b.rateLimitResetEpochSeconds-d)+2e3;if(403===b.status||429===b.status){let a=Math.max(0,c-1);return Math.min(3e5,6e4*2**a)}return 6e4}c.d(b,{J6:()=>g,df:()=>f,nq:()=>d,pe:()=>e})},57362:(a,b,c)=>{c.d(b,{B8:()=>g,Gn:()=>h,QJ:()=>e,h4:()=>f,qs:()=>i});let d=RegExp("^(LINEAR_API_KEY|CURSOR_API_KEY|GITHUB_TOKEN|VERCEL_TOKEN|HARNESS_GITHUB_TOKEN|HARNESS_CONFIG_JSON_B64|LINEAR_WEBHOOK_SECRET|GITHUB_DISPATCH_TOKEN)=(.*)$","gm");function e(a){return a.replace(d,(a,b,c)=>c.length>0?`${b}=<redacted>`:`${b}=`)}function f(a,b){let c=a;for(let a of b)a&&(c=c.split(a).join("<redacted>"));return c}function g(a){return[a?.linearApiKey,a?.cursorApiKey,a?.githubToken,a?.vercelToken].filter(a=>!!a)}function h(a){return[a?.linearApiKey,a?.cursorApiKey,a?.githubToken,a?.harnessConfigJsonB64].filter(a=>!!a)}function i(a,b=[]){let c=a=>f(e(a),b);return{...a,content:a.content?c(a.content):void 0,reason:a.reason?c(a.reason):void 0,logMessage:a.logMessage?c(a.logMessage):void 0,manualInstructions:a.manualInstructions?.map(a=>c(a))}}},58885:(a,b,c)=>{c.d(b,{N:()=>i});var d=c(73024),e=c(76760),f=c.n(e),g=c(33443),h=c.n(g);function i(a=process.cwd()){h().config({path:f().join(a,".env")});let b=f().join(a,".env.local");(0,d.existsSync)(b)&&h().config({path:b,override:!0})}},67470:(a,b,c)=>{c.d(b,{OS:()=>f,jh:()=>i});var d=c(92116),e=c(45599);class f extends Error{constructor(a,b,c){super(b),this.name="GitHubApiError",this.status=a,c&&(this.retryAfterSeconds=c.retryAfterSeconds,this.rateLimitRemaining=c.rateLimitRemaining,this.rateLimitResetEpochSeconds=c.rateLimitResetEpochSeconds,this.requestId=c.requestId)}}function g(a,b,c){let g=(0,d.M)(b||`GitHub API request failed: ${a}`);return new f(a,g,c?(0,e.nq)(c):void 0)}let h="https://api.github.com";class i{constructor(a){this.token=a.token}async request(a,b){let c=await fetch(`${h}${a}`,{method:b?.method??"GET",headers:{Accept:"application/vnd.github+json",Authorization:`Bearer ${this.token}`,"X-GitHub-Api-Version":"2022-11-28",...b?.body?{"Content-Type":"application/json"}:{}},body:b?.body?JSON.stringify(b.body):void 0});if(!c.ok){let a=await c.text();throw g(c.status,a,c.headers)}let d=await c.text();return 204!==c.status&&d.trim()?JSON.parse(d):{}}async graphqlRequest(a,b){let c=await fetch(`${h}/graphql`,{method:"POST",headers:{Accept:"application/vnd.github+json",Authorization:`Bearer ${this.token}`,"X-GitHub-Api-Version":"2022-11-28","Content-Type":"application/json"},body:JSON.stringify({query:a,variables:b})});if(!c.ok){let a=await c.text();throw g(c.status,a,c.headers)}let d=await c.json();if(d.errors?.length)throw new f(422,d.errors.map(a=>a.message).join("; "));if(!d.data)throw new f(422,"GitHub GraphQL response missing data");return d.data}async getAuthenticatedUser(){return this.request("/user")}async inspectAuthenticatedUser(){let a=await fetch(`${h}/user`,{method:"GET",headers:{Accept:"application/vnd.github+json",Authorization:`Bearer ${this.token}`,"X-GitHub-Api-Version":"2022-11-28"}}),b=await a.text();if(!a.ok)throw g(a.status,b,a.headers);return{login:JSON.parse(b).login,oauthScopes:(a.headers.get("x-oauth-scopes")??"").split(",").map(a=>a.trim().toLowerCase()).filter(Boolean),tokenType:a.headers.get("github-authentication-token-type")}}async listActionsWorkflows(a,b){return this.request(`/repos/${a}/${b}/actions/workflows?per_page=1`)}async getBranchRef(a,b,c){return this.request(`/repos/${a}/${b}/git/ref/heads/${encodeURIComponent(c)}`)}async getRepository(a,b){return this.request(`/repos/${a}/${b}`)}async getRepositoryById(a){if(!Number.isInteger(a)||a<=0)throw Error(`Invalid GitHub repository ID: ${String(a)}`);return this.request(`/repositories/${a}`)}async getPullRequest(a,b,c){return this.request(`/repos/${a}/${b}/pulls/${c}`)}async markPullRequestReadyForReview(a,b,c){let d=await this.getPullRequest(a,b,c);return await this.graphqlRequest(`mutation MarkPullRequestReadyForReview($pullRequestId: ID!) {
|
|
2
|
-
markPullRequestReadyForReview(input: { pullRequestId: $pullRequestId }) {
|
|
3
|
-
pullRequest { isDraft }
|
|
4
|
-
}
|
|
5
|
-
}`,{pullRequestId:d.node_id}),this.getPullRequest(a,b,c)}async getPullRequestFiles(a,b,c){return this.request(`/repos/${a}/${b}/pulls/${c}/files`)}async getIssueComments(a,b,c){return this.request(`/repos/${a}/${b}/issues/${c}/comments`)}async getCheckRunsForRef(a,b,c){return this.request(`/repos/${a}/${b}/commits/${c}/check-runs`)}async getCombinedStatusForRef(a,b,c){return this.request(`/repos/${a}/${b}/commits/${c}/status`)}async mergePullRequest(a,b,c,d){return this.request(`/repos/${a}/${b}/pulls/${c}/merge`,{method:"PUT",body:{merge_method:d.mergeMethod,...d.commitTitle?{commit_title:d.commitTitle}:{},...d.expectedHeadSha?{sha:d.expectedHeadSha}:{}}})}async updatePullRequestBranch(a,b,c,d={}){return this.request(`/repos/${a}/${b}/pulls/${c}/update-branch`,{method:"PUT",body:{...d.expectedHeadSha?{expected_head_sha:d.expectedHeadSha}:{}}})}async compareCommits(a,b,c,d){return this.request(`/repos/${a}/${b}/compare/${c}...${d}`)}async getActionsPublicKey(a,b){return this.request(`/repos/${a}/${b}/actions/secrets/public-key`)}async listActionsSecrets(a,b){return this.request(`/repos/${a}/${b}/actions/secrets?per_page=100`)}async upsertActionsSecret(a,b,c,d,e){await this.request(`/repos/${a}/${b}/actions/secrets/${c}`,{method:"PUT",body:{encrypted_value:d,key_id:e}})}async getRepositoryContent(a,b,c,d){try{return await this.request(`/repos/${a}/${b}/contents/${c}?ref=${encodeURIComponent(d)}`)}catch(a){if(a instanceof f&&404===a.status)return null;throw a}}decodeRepositoryContent(a){return Buffer.from(a.content,"base64").toString("utf8")}async createOrUpdateRepositoryFile(a){return{commitSha:(await this.request(`/repos/${a.owner}/${a.repo}/contents/${a.path}`,{method:"PUT",body:{message:a.message,content:Buffer.from(a.content,"utf8").toString("base64"),branch:a.branch,...a.sha?{sha:a.sha}:{}}})).commit.sha}}async createGitRef(a,b,c,d){return this.request(`/repos/${a}/${b}/git/refs`,{method:"POST",body:{ref:`refs/heads/${c}`,sha:d}})}async createUserRepository(a){return this.request("/user/repos",{method:"POST",body:{name:a.name,description:a.description,private:a.private,auto_init:a.autoInit}})}async updateUserRepository(a){return this.request(`/repos/${a.owner}/${a.repo}`,{method:"PATCH",body:{description:a.description}})}async createGitBlob(a){return this.request(`/repos/${a.owner}/${a.repo}/git/blobs`,{method:"POST",body:{content:a.content.toString("base64"),encoding:"base64"}})}async createGitTree(a){return this.request(`/repos/${a.owner}/${a.repo}/git/trees`,{method:"POST",body:{...a.baseTree?{base_tree:a.baseTree}:{},tree:a.tree}})}async createGitCommit(a){return this.request(`/repos/${a.owner}/${a.repo}/git/commits`,{method:"POST",body:{message:a.message,tree:a.tree,parents:a.parents,...a.author?{author:a.author}:{},...a.committer?{committer:a.committer}:{}}})}async getGitCommit(a,b,c){return this.request(`/repos/${a}/${b}/git/commits/${c}`)}async getGitTree(a){let b=a.recursive?"?recursive=1":"";return this.request(`/repos/${a.owner}/${a.repo}/git/trees/${a.treeSha}${b}`)}async getGitRef(a,b,c){let d=c.startsWith("refs/heads/")?c.slice(11):c.startsWith("refs/")?c.slice(5):c;return this.request(`/repos/${a}/${b}/git/ref/heads/${encodeURIComponent(d)}`)}async updateGitRef(a){let b=a.ref.startsWith("refs/heads/")?a.ref.slice(11):a.ref.startsWith("refs/")?a.ref.slice(5):a.ref;return this.request(`/repos/${a.owner}/${a.repo}/git/refs/heads/${encodeURIComponent(b)}`,{method:"PATCH",body:{sha:a.sha,force:a.force??!1}})}async createRepositoryFromTemplate(a){return this.request(`/repos/${a.templateOwner}/${a.templateRepo}/generate`,{method:"POST",body:{owner:a.owner,name:a.name,description:a.description,private:a.private,include_all_branches:a.includeAllBranches??!1}})}async createPullRequest(a){return this.request(`/repos/${a.owner}/${a.repo}/pulls`,{method:"POST",body:{title:a.title,head:a.head,base:a.base,body:a.body}})}async listPullRequests(a,b,c={}){let d=new URLSearchParams;return d.set("state",c.state??"open"),c.base&&d.set("base",c.base),c.head&&d.set("head",c.head),d.set("sort",c.sort??"created"),d.set("direction",c.direction??"desc"),this.request(`/repos/${a}/${b}/pulls?${d.toString()}`)}}},74590:(a,b,c)=>{c.d(b,{A3:()=>q,Eb:()=>o,FR:()=>z,MA:()=>B,P4:()=>p,UL:()=>l,V9:()=>v,_i:()=>y,b1:()=>w,bM:()=>u,c9:()=>f,dQ:()=>t,dk:()=>m,iQ:()=>i,ln:()=>n,oN:()=>r,wH:()=>A,wI:()=>x});var d=c(75365);let e="https://api.vercel.com";class f extends Error{constructor(a){super(a.message),this.name="VercelEnvVarTypeError",this.key=a.key,this.existingType=a.existingType,this.status=a.status}}class g extends Error{constructor(a){super(a.message),this.name="VercelTeamBillingError",this.status=a.status,this.providerCode=a.providerCode}}let h=new Set(["LINEAR_WEBHOOK_SECRET","GITHUB_DISPATCH_TOKEN"]);function i(a){return h.has(a)?"sensitive":"plain"}function j(a){return/cannot change the key of a sensitive environment variable/i.test(a.body)?new f({key:a.key,existingType:a.existingType,status:a.status,message:`Vercel rejected updating ${a.key} because sensitive environment variables cannot have their key changed via API. The app did not delete or recreate it. Update the value manually in Vercel or approve a separate delete/recreate repair.`}):/cannot change the type of a sensitive environment variable/i.test(a.body)?new f({key:a.key,existingType:a.existingType,status:a.status,message:`Vercel rejected updating ${a.key} because it is a sensitive environment variable whose type cannot be changed. The app did not delete or recreate it. Update the value manually in Vercel or approve a separate delete/recreate repair.`}):null}async function k(a,b,c){let d=new URL(`${e}${b}`);c?.teamId&&d.searchParams.set("teamId",c.teamId);let f=await fetch(d,{...c,headers:{Authorization:`Bearer ${a.trim()}`,"Content-Type":"application/json",...c?.headers??{}}});if(!f.ok){let a=await f.text();throw Error(`Vercel API ${f.status} on ${b}: ${a.slice(0,200)}`)}if(204!==f.status)return await f.json()}async function l(a){return(await k(a,"/v2/user")).user}async function m(a){return((await k(a,"/v2/teams")).teams??[]).map(a=>({id:a.id,name:a.name,slug:a.slug}))}async function n(a,b){let c="/v1/teams",d=new URL(`${e}${c}`),f=await fetch(d,{method:"POST",headers:{Authorization:`Bearer ${a.trim()}`,"Content-Type":"application/json"},body:JSON.stringify({slug:b.slug.trim(),...b.name?.trim()?{name:b.name.trim()}:{}})});if(!f.ok){let a=await f.text(),b=function(a){let b=a.body.match(/"code"\s*:\s*"(payment_method_required|billing|payment[^"]*)"/i),c=b?.[1];return"payment_method_required"===c||/payment method is required/i.test(a.body)||/credit card/i.test(a.body)?new g({status:a.status,providerCode:c??"payment_method_required",message:"Vercel requires a payment method before creating another team. No harness setup was applied. Add or update billing in Vercel, or choose an existing team."}):null}({status:f.status,body:a});if(b)throw b;throw Error(`Vercel API ${f.status} on ${c}: ${a.slice(0,200)}`)}let h=await f.json();return{id:h.id,slug:h.slug,name:h.name??b.name?.trim()??h.slug}}async function o(a,b){return((await k(a,"/v9/projects",{teamId:b})).projects??[]).map(a=>({id:a.id,name:a.name,accountId:a.accountId}))}async function p(a,b){let c=await k(a,"/v11/projects",{method:"POST",teamId:b.teamId,body:JSON.stringify({name:b.name.trim()})});return{id:c.id,name:c.name,accountId:c.accountId}}async function q(a,b,c){return((await k(a,`/v9/projects/${b}/env`,{teamId:c})).envs??[]).map(a=>({id:a.id,key:a.key,target:a.target??[],type:a.type??"encrypted"}))}function r(a){return"READY"===a.readyState||"READY"===a.state}function s(a){return a.replace(/^https?:\/\//,"").replace(/\/$/,"").toLowerCase()}async function t(a){let b,c=a.listDeployments??u,d=a.getDeployment??v;if(a.preferredDeploymentId?.trim()){if(!r(b=await d(a.vercelToken,a.preferredDeploymentId.trim(),a.teamId)))return}else{if(!(b=(await c(a.vercelToken,a.projectId,a.teamId,{state:"READY",limit:5})).find(a=>r(a))))return;b.aliases?.length||(b=await d(a.vercelToken,b.id,a.teamId))}let e=function(a){let b=s(a.deploymentUrl),c=(a.aliases??[]).map(a=>s(a)).filter(Boolean),d=c.filter(a=>a!==b&&!function(a){let b=s(a);return/^.+-[a-z0-9]{8,}-.+\.vercel\.app$/i.test(b)}(a));if(d.length>0){let a=d.find(a=>!a.endsWith(".vercel.app"))??[...d].sort((a,b)=>a.length-b.length)[0];return{host:a,source:"stable_alias",stableAlias:a}}let e=c.find(a=>a!==b);return e?{host:e,source:"stable_alias",stableAlias:e}:{host:b,source:"latest_ready_deployment"}}({deploymentUrl:b.url,aliases:b.aliases});return{productionUrl:`https://${e.host}`,webhookUrl:function(a){let b=a.replace(/^https?:\/\//,"").replace(/\/$/,"");return`https://${b}/api/linear-webhook`}(e.host),deploymentId:b.id,deploymentUrl:b.url,source:e.source,stableAlias:e.stableAlias,readyState:b.readyState,state:b.state}}async function u(a,b,c,d){let e=new URLSearchParams({projectId:b,target:"production",limit:String(d?.limit??5)});return d?.state?.trim()&&e.set("state",d.state.trim()),((await k(a,`/v6/deployments?${e.toString()}`,{teamId:c})).deployments??[]).map(a=>({id:a.uid,url:a.url,state:a.state,readyState:a.readyState,aliases:a.alias??[]}))}async function v(a,b,c){let d=await k(a,`/v13/deployments/${b}`,{teamId:c});return{id:d.uid??d.id??b,url:d.url,state:d.state,readyState:d.readyState,aliases:d.alias??[]}}async function w(a,b){let c=await k(a,"/v13/deployments",{method:"POST",teamId:b.teamId,body:JSON.stringify({name:b.projectName.trim(),deploymentId:b.sourceDeploymentId,target:"production"})});return{id:c.uid??c.id??b.sourceDeploymentId,url:c.url,state:c.state,readyState:c.readyState}}async function x(a,b){let c=b.existingEnv?.id??b.existingEnvId,d=b.existingEnv?.type,f=i(b.key);if(c){var g;let f=`/v9/projects/${b.projectId}/env/${c}`,h=new URL(`${e}${f}`);b.teamId&&h.searchParams.set("teamId",b.teamId);let i=await fetch(h,{method:"PATCH",headers:{Authorization:`Bearer ${a.trim()}`,"Content-Type":"application/json"},body:JSON.stringify({value:(g={value:b.value,existingEnv:b.existingEnv}).value,target:g.existingEnv?.target?.length?g.existingEnv.target:["production"]})});if(!i.ok){let a=await i.text(),c=j({key:b.key,existingType:d??"encrypted",status:i.status,body:a});if(c)throw c;throw Error(`Vercel API ${i.status} on ${f}: ${a.slice(0,200)}`)}return}let h=`/v10/projects/${b.projectId}/env`,k=new URL(`${e}${h}`);b.teamId&&k.searchParams.set("teamId",b.teamId);let l=await fetch(k,{method:"POST",headers:{Authorization:`Bearer ${a.trim()}`,"Content-Type":"application/json"},body:JSON.stringify({key:b.key,value:b.value,type:f,target:["production"]})});if(!l.ok){let a=await l.text(),c=j({key:b.key,existingType:f,status:l.status,body:a});if(c)throw c;throw Error(`Vercel API ${l.status} on ${h}: ${a.slice(0,200)}`)}}async function y(a){try{let b=await fetch(a,{method:"GET",redirect:"manual"}),c=b.headers.get("location")??"";if((302===b.status||307===b.status||308===b.status)&&/vercel\.com\/sso-api/i.test(c))return{reachable:!1,statusCode:b.status,reason:"protection_redirect"};if(405===b.status)return{reachable:!0,statusCode:b.status};if(404===b.status||401===b.status||403===b.status||b.status>=500)return{reachable:!1,statusCode:b.status};if(b.status>=200&&b.status<400)return{reachable:!0,statusCode:b.status};return{reachable:!1,statusCode:b.status}}catch{return{reachable:!1}}}function z(a){let b=new Set(a.map(a=>a.key));return Object.fromEntries(d.P$.map(a=>[a,b.has(a)?"present":"missing"]))}function A(a,b){let c=b.trim().toLowerCase();return a.find(a=>a.slug.toLowerCase()===c)}function B(a,b){let c=b.trim().toLowerCase();return a.find(a=>a.name.toLowerCase()===c)}},75365:(a,b,c)=>{c.d(b,{P$:()=>d,ck:()=>e,s5:()=>g,vC:()=>f});let d=["LINEAR_WEBHOOK_SECRET","GITHUB_DISPATCH_TOKEN","HARNESS_TEAM_KEY"],e=["GITHUB_DISPATCH_REPOSITORY","GITHUB_DISPATCH_EVENT_TYPE","LINEAR_WEBHOOK_TIMESTAMP_TOLERANCE_MS"],f={GITHUB_DISPATCH_REPOSITORY:"weston-uribe/agentic-product-development-harness",GITHUB_DISPATCH_EVENT_TYPE:"linear_issue_status_changed",LINEAR_WEBHOOK_TIMESTAMP_TOLERANCE_MS:"60000"};function g(a){let b={LINEAR_WEBHOOK_SECRET:a.requiredEnvPresence?.LINEAR_WEBHOOK_SECRET??"missing",GITHUB_DISPATCH_TOKEN:a.requiredEnvPresence?.GITHUB_DISPATCH_TOKEN??"missing",HARNESS_TEAM_KEY:a.requiredEnvPresence?.HARNESS_TEAM_KEY??"missing"},c=[];for(let[d,e]of(a.projectId||c.push("Select the Vercel bridge project."),a.productionUrl||c.push("Resolve the Vercel production URL for the bridge project."),a.endpointReachable||c.push("Verify /api/linear-webhook is reachable on the production URL."),Object.entries(b)))"missing"===e&&c.push(`Vercel production env var ${d} is missing.`);a.linearWebhookVerified||c.push("Verify the Linear Issue webhook points at the Vercel bridge URL."),a.signedProbeVerified||c.push("Signed webhook delivery verification has not passed against production."),a.deploymentRedeployRequired&&c.push("Redeploy Vercel production after env var changes, then retry signed verification.");let d=0===c.length&&!!a.projectId&&!!a.productionUrl&&!!a.endpointReachable&&!0===a.linearWebhookVerified&&!0===a.signedProbeVerified&&!0!==a.deploymentRedeployRequired;return{projectSelected:!!a.projectId,productionUrl:a.productionUrl,webhookUrl:a.webhookUrl,endpointReachable:!!a.endpointReachable,requiredEnvPresence:b,linearWebhookVerified:!!a.linearWebhookVerified,signedProbeVerified:!!a.signedProbeVerified,deploymentRedeployRequired:!!a.deploymentRedeployRequired,manualComplete:!!a.manualComplete,ready:d,blockers:c}}},83954:(a,b,c)=>{c.d(b,{Re:()=>i,Vq:()=>h});var d=c(73024),e=c(76760),f=c.n(e);c(73136);var g=c(58885);function h(a=process.cwd()){let b=process.env.HARNESS_REPO_ROOT?.trim();if(b)return f().resolve(b);let c=process.env.P_DEV_HOME?.trim();if(c)return f().resolve(c);let e=f().resolve(a);for(;;){let a=f().join(e,"package.json");if((0,d.existsSync)(a))try{let b=(0,d.readFileSync)(a,"utf8");if("agentic-product-development-harness"===JSON.parse(b).name)return e}catch{}let b=f().dirname(e);if(b===e)break;e=b}throw Error(`Could not resolve harness repo root from ${a}. Set HARNESS_REPO_ROOT or run harness:gui from the repo.`)}function i(a){(0,g.N)(a);let b=process.env.HARNESS_CONFIG_PATH?.trim();b&&!f().isAbsolute(b)&&(process.env.HARNESS_CONFIG_PATH=f().resolve(a,b))}},84998:(a,b,c)=>{c.d(b,{bm:()=>i,gr:()=>f,it:()=>j,ym:()=>k});var d=c(76760),e=c.n(d);let f=".env.local",g=".harness",h=e().join(g,"config.example.json"),i=e().join(g,"config.local.json"),j=".harness/config.local.json";function k(a){let b=a??process.cwd();return{cwd:b,envExample:e().join(b,".env.example"),envLocal:e().join(b,f),harnessDir:e().join(b,g),configExample:e().join(b,h),configLocal:e().join(b,i)}}},87285:(a,b,c)=>{c.d(b,{HF:()=>n,Hn:()=>k,Ol:()=>p,Um:()=>i,W:()=>o,X_:()=>r,_b:()=>l,ed:()=>j,lL:()=>q});var d=c(51455),e=c(57362),f=c(84998);let g=["HARNESS_CONFIG_PATH","GITHUB_DISPATCH_REPOSITORY","GITHUB_DISPATCH_REPOSITORY_ID","LINEAR_API_KEY","CURSOR_API_KEY","GITHUB_TOKEN","VERCEL_TOKEN"];async function h(a){try{return await (0,d.access)(a),!0}catch{return!1}}function i(a){let b={},c={HARNESS_CONFIG_PATH:!1,GITHUB_DISPATCH_REPOSITORY:!1,GITHUB_DISPATCH_REPOSITORY_ID:!1,LINEAR_API_KEY:!1,CURSOR_API_KEY:!1,GITHUB_TOKEN:!1,VERCEL_TOKEN:!1};for(let d of a.split("\n")){let a=d.trim();if(!a||a.startsWith("#"))continue;let e=a.indexOf("=");if(-1===e)continue;let f=a.slice(0,e).trim(),g=a.slice(e+1).trim();f in c?(b[f]=g,g.length>0&&(c[f]=!0)):"LINEAR_WEBHOOK_SECRET"===f&&(b[f]=g)}return{values:b,presence:c}}async function j(a){return await h(a.envLocal)?(0,d.readFile)(a.envLocal,"utf8"):null}async function k(a){let b=await j(a);return null===b?null:i(b)}function l(a,b){let c={harnessConfigPath:b.harnessConfigPath?.trim()||a?.values.HARNESS_CONFIG_PATH||f.it,githubDispatchRepository:b.githubDispatchRepository?.trim()||a?.values.GITHUB_DISPATCH_REPOSITORY||void 0,githubDispatchRepositoryId:b.githubDispatchRepositoryId?.trim()||a?.values.GITHUB_DISPATCH_REPOSITORY_ID||void 0};for(let[d,e]of Object.entries({linearApiKey:"LINEAR_API_KEY",cursorApiKey:"CURSOR_API_KEY",githubToken:"GITHUB_TOKEN",vercelToken:"VERCEL_TOKEN"})){let f=b[d]?.trim();f?c[d]=f:a?.values[e]&&(c[d]=a.values[e])}return c}function m(a){return{HARNESS_CONFIG_PATH:a.harnessConfigPath??f.it,GITHUB_DISPATCH_REPOSITORY:a.githubDispatchRepository??"",GITHUB_DISPATCH_REPOSITORY_ID:a.githubDispatchRepositoryId??"",LINEAR_API_KEY:a.linearApiKey??"",CURSOR_API_KEY:a.cursorApiKey??"",GITHUB_TOKEN:a.githubToken??"",VERCEL_TOKEN:a.vercelToken??""}}function n(a,b){if(null===a){let a=m(b);return`# Operator local setup — generated by harness setup core
|
|
6
|
-
# Do not commit .env.local (gitignored).
|
|
7
|
-
|
|
8
|
-
# --- Harness managed keys ---
|
|
9
|
-
HARNESS_CONFIG_PATH=${a.HARNESS_CONFIG_PATH}
|
|
10
|
-
GITHUB_DISPATCH_REPOSITORY=${a.GITHUB_DISPATCH_REPOSITORY}
|
|
11
|
-
GITHUB_DISPATCH_REPOSITORY_ID=${a.GITHUB_DISPATCH_REPOSITORY_ID}
|
|
12
|
-
LINEAR_API_KEY=${a.LINEAR_API_KEY}
|
|
13
|
-
CURSOR_API_KEY=${a.CURSOR_API_KEY}
|
|
14
|
-
GITHUB_TOKEN=${a.GITHUB_TOKEN}
|
|
15
|
-
VERCEL_TOKEN=${a.VERCEL_TOKEN}
|
|
16
|
-
`}let c=m(b),d=a.split("\n"),e=new Set,f=[];for(let a of d){let b=a.trim();if(!b||b.startsWith("#")){f.push(a);continue}let d=b.indexOf("=");if(-1===d){f.push(a);continue}let h=b.slice(0,d).trim();if(!g.includes(h)){f.push(a);continue}e.add(h),f.push(`${h}=${c[h]}`)}let h=g.filter(a=>!e.has(a));if(h.length>0)for(let a of(f.length>0&&""!==f[f.length-1]&&f.push(""),f.push("# --- Harness managed keys ---"),h))f.push(`${a}=${c[a]}`);let i=f.join("\n");return a.endsWith("\n")&&!i.endsWith("\n")&&(i+="\n"),i}function o(a){return(0,e.QJ)(a)}function p(a){return(0,e.B8)(a)}function q(a){return{HARNESS_CONFIG_PATH:!!a.harnessConfigPath?.trim(),GITHUB_DISPATCH_REPOSITORY:!!a.githubDispatchRepository?.trim(),GITHUB_DISPATCH_REPOSITORY_ID:!!a.githubDispatchRepositoryId?.trim(),LINEAR_API_KEY:!!a.linearApiKey?.trim(),CURSOR_API_KEY:!!a.cursorApiKey?.trim(),GITHUB_TOKEN:!!a.githubToken?.trim(),VERCEL_TOKEN:!!a.vercelToken?.trim()}}async function r(a){try{let b=await (0,d.stat)(a);return`${b.size}:${b.mtimeMs}`}catch{return"missing"}}},92116:(a,b,c)=>{c.d(b,{M:()=>e});let d=[/lin_api_[A-Za-z0-9_]+/gi,/ghp_[A-Za-z0-9]+/gi,/github_pat_[A-Za-z0-9_]+/gi,/cursor_[A-Za-z0-9_]+/gi,/sk-[A-Za-z0-9_-]+/gi,/xox[baprs]-[A-Za-z0-9-]+/gi,/Bearer\s+[A-Za-z0-9._-]+/gi];function e(a){let b=a;for(let a of d)b=b.replace(a,"[REDACTED]");return b.length>200?`${b.slice(0,200)}…`:b}}};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
"use strict";exports.id=585,exports.ids=[585],exports.modules={4631:(a,b,c)=>{c.d(b,{CH:()=>h,L6:()=>k,LY:()=>e,Me:()=>l,PN:()=>i,fm:()=>g,o:()=>f,xp:()=>j});var d=c(12884);let e=["HARNESS_CONFIG_JSON_B64","LINEAR_API_KEY","CURSOR_API_KEY","HARNESS_GITHUB_TOKEN"],f="<harness-dispatch-repo>";function g(a){let b=new Map(a.map(a=>[a.name,a.status])),c=[],d=[];for(let a of e){let e=b.get(a);if("present"!==e){if("unknown"===e){d.push(a);continue}c.push(a)}}return{allPresent:0===c.length&&0===d.length,missing:c,unknown:d}}let h=".github/workflows/trigger-harness-production-sync.yml",i={previewHarnessSecrets:{id:"preview-harness-secrets",label:"Preview harness repo Actions secrets",description:"Dry-run preview of harness repo GitHub Actions secret writes after confirmation",permission:d.P.remoteRead},applyHarnessSecrets:{id:"apply-harness-secrets",label:"Apply harness repo Actions secrets",description:"Write harness repo GitHub Actions secrets after explicit confirmation",permission:d.P.remoteSecretWrite},previewTargetWorkflowPr:{id:"preview-target-workflow-pr",label:"Preview target repo workflow PR",description:"Dry-run preview of target repo production sync workflow branch and PR install",permission:d.P.remoteRead},applyTargetWorkflowPr:{id:"apply-target-workflow-pr",label:"Apply target repo workflow PR",description:"Create or update a target repo branch and PR for the production sync workflow",permission:d.P.remoteRepoWrite}};function j(a,b){if(a!==b)throw Error(`Remote setup action requires permission scope "${b}", received "${a}"`)}function k(a){if(!a)throw Error("Remote setup writes require explicit confirmation")}function l(a,b){if(!a)throw Error("Preview fingerprint is required");if(a!==b)throw Error("Preview fingerprint is stale. Regenerate preview before applying.")}},12884:(a,b,c)=>{c.d(b,{P:()=>d});let d={readOnly:{scope:"read-only",confirmation:"none",manualAlternative:!1},localFileWrite:{scope:"local-file-write",confirmation:"standard",manualAlternative:!0},remoteRead:{scope:"remote-read",confirmation:"standard",manualAlternative:!0},remoteSecretWrite:{scope:"remote-secret-write",confirmation:"strong",manualAlternative:!0},remoteRepoWrite:{scope:"remote-repo-write",confirmation:"strong",manualAlternative:!0},cloudWorkflowTrigger:{scope:"cloud-workflow-trigger",confirmation:"strong",manualAlternative:!0},linearWrite:{scope:"linear-write",confirmation:"high-risk",manualAlternative:!0}}},14745:(a,b,c)=>{c.d(b,{M:()=>g});var d=c(71512);let e=[{id:"fast",value:"false"}];function f(a){return a.agentProvider?.model?.id??a.defaultModel?.id??d.Sk}function g(a){let b,c=a??{version:1,orchestratorMarker:"harness-orchestrator-v1",logDirectory:"runs",repos:[{id:"target-app",targetRepo:"https://github.com/owner/example-target-app",baseBranch:"main",productionBranch:"main"}],allowedTargetRepos:["https://github.com/owner/example-target-app"]},d=f(c),g={id:f(c),params:[...e]},h="code-default";return c.agentProvider?.model?.id?(h="agentProvider.model.id",b=c.agentProvider.model.id):c.defaultModel?.id&&(h="defaultModel.id",b=c.defaultModel.id),{providerId:"cursor",resolvedModelId:d,configuredModelId:b,source:h,pinnedParams:g.params??[...e],paramsControlledInCode:!0,policyNote:"Model ids are Cursor cloud agent selections. fast:false is pinned in code for cost control and is not user-editable in config."}}},29281:(a,b,c)=>{c.d(b,{Z9:()=>m,g1:()=>n,rL:()=>l,xL:()=>j});var d=c(76760),e=c.n(d),f=c(51455),g=c(96105),h=c(73928),i=c(84783);class j extends Error{constructor(a){super(a),this.name="ConfigError"}}function k(a,b){let c;try{c=JSON.parse(a)}catch{throw new j(`Config is not valid JSON: ${b}`)}let d=g.k.safeParse(c);if(!d.success){let a=d.error.issues.map(a=>`${a.path.join(".")}: ${a.message}`).join("; ");throw new j(`Invalid harness config: ${a}`)}return n(d.data),d.data}async function l(a){let b=(0,i.m)(a);return{config:k(await (0,i.$)(b),b.label),source:b}}async function m(a){let b,c=e().resolve(a);try{b=await (0,f.readFile)(c,"utf8")}catch{throw new j(`Config file not found: ${c}`)}return k(b,c)}function n(a){let b=new Set(a.allowedTargetRepos.map(a=>(0,h.Hx)(a)));for(let c of a.repos){let a=(0,h.Hx)(c.targetRepo);if(!b.has(a))throw new j(`repos[].targetRepo "${c.targetRepo}" is not listed in allowedTargetRepos`)}}},34185:(a,b,c)=>{function d(a){let b=a.trim();if(!b)return null;let c=b.match(/^https:\/\/github\.com\/([A-Za-z0-9_.-]+)\/([A-Za-z0-9_.-]+?)(?:\.git)?\/?$/);if(c)return`${c[1]}/${c[2]}`;let d=b.match(/^git@github\.com:([A-Za-z0-9_.-]+)\/([A-Za-z0-9_.-]+?)(?:\.git)?$/);if(d)return`${d[1]}/${d[2]}`;let e=b.match(/^([A-Za-z0-9_.-]+)\/([A-Za-z0-9_.-]+)$/);return e?`${e[1]}/${e[2]}`:null}function e(a){return d(a)}c.d(b,{R:()=>e,e:()=>d})},71512:(a,b,c)=>{c.d(b,{Ie:()=>d,R:()=>k,Sf:()=>j,Sk:()=>f,Zn:()=>g,dM:()=>i,h5:()=>e,nm:()=>h});let d="harness-orchestrator-v1",e="runs",f="composer-2.5",g="cursor",h="squash",i=!1,j=!1,k=!0},73928:(a,b,c)=>{c.d(b,{Hx:()=>f,rc:()=>g});let d="https://github.com/",e="github.com/";function f(a){let b=a.trim().replace(/\/$/,"");return b.startsWith(d)?b:b.startsWith("http://github.com/")?`${d}${b.slice(18)}`:b.startsWith(e)?`${d}${b.slice(e.length)}`:/^[A-Za-z0-9_.-]+\/[A-Za-z0-9_.-]+$/.test(b)?`${d}${b}`:b}function g(a,b){return f(a)===f(b)}},84107:(a,b,c)=>{c.d(b,{OW:()=>k,e8:()=>h.e,vE:()=>j,z8:()=>m});var d=c(51455),e=c(76760),f=c.n(e),g=c(4631),h=c(34185),i=c(84998);async function j(a){let b=a??process.cwd(),c=f().join(b,".git","config");try{let a=(await (0,d.readFile)(c,"utf8")).match(/\[remote "origin"\][\s\S]*?(?=\[|$)/);if(!a)return null;let b=a[0].match(/^\s*url\s*=\s*(.+)$/m);return b?.[1]?.trim()??null}catch{return null}}function k(a){return a.repo??g.o}async function l(a,b){try{for(let c of(await (0,d.readFile)(a,"utf8")).split("\n")){let a=c.trim();if(!a||a.startsWith("#"))continue;let d=a.indexOf("=");if(-1===d||a.slice(0,d).trim()!==b)continue;let e=a.slice(d+1).trim();return e.length>0?e:void 0}}catch{}}async function m(a){let b=(0,i.ym)(a?.cwd),c=await l(b.envLocal,"GITHUB_DISPATCH_REPOSITORY");return function(a){let b=a?.explicitRepo?(0,h.e)(a.explicitRepo):null;if(b)return{repo:b,source:"explicit-config",resolved:!0,detail:"Resolved from explicit setup/config value."};if(a?.gitRemoteOriginUrl){let b=(0,h.R)(a.gitRemoteOriginUrl);if(b)return{repo:b,source:"git-remote-origin",resolved:!0,detail:"Resolved from harness repo git remote origin."}}let c=a?.manualRepo?(0,h.e)(a.manualRepo):null;return c?{repo:c,source:"manual",resolved:!0,detail:"Resolved from manual operator input."}:{repo:null,source:"manual",resolved:!1,detail:"Harness dispatch repo is unknown. Provide GITHUB_DISPATCH_REPOSITORY, ensure git remote origin is set, or enter the repo manually."}}({explicitRepo:a?.explicitRepo??c??process.env.GITHUB_DISPATCH_REPOSITORY,gitRemoteOriginUrl:await j(a?.cwd),manualRepo:a?.manualRepo})}},84783:(a,b,c)=>{c.d(b,{$:()=>j,m:()=>i});var d=c(51455),e=c(76760),f=c.n(e),g=c(29281);function h(a,b){return f().isAbsolute(b)?f().resolve(b):f().resolve(a,b)}function i(a){let b=a?.baseDir?.trim()||process.cwd(),c=function(){let a=process.argv;for(let b=0;b<a.length;b+=1){let c=a[b];if("--config"===c){let c=a[b+1];if(void 0===c||c.startsWith("-"))throw new g.xL("--config requires a path argument");return c}if(c.startsWith("--config=")){let a=c.slice(9);if(!a)throw new g.xL("--config requires a path argument");return a}}return null}();if(c)return{kind:"cli-config",label:h(b,c),raw:""};let d=process.env.HARNESS_CONFIG_JSON_B64?.trim();if(d)return{kind:"HARNESS_CONFIG_JSON_B64",label:"HARNESS_CONFIG_JSON_B64",raw:function(a){let b=a.trim();if(!b||!/^[A-Za-z0-9+/]+={0,2}$/.test(b))throw new g.xL("Invalid HARNESS_CONFIG_JSON_B64: not valid base64");try{return Buffer.from(b,"base64").toString("utf8")}catch{throw new g.xL("Invalid HARNESS_CONFIG_JSON_B64: not valid base64")}}(d)};let e=process.env.HARNESS_CONFIG_JSON?.trim();if(e)return{kind:"HARNESS_CONFIG_JSON",label:"HARNESS_CONFIG_JSON",raw:e};let f=process.env.HARNESS_CONFIG_PATH?.trim();return f?{kind:"HARNESS_CONFIG_PATH",label:h(b,f),raw:""}:{kind:"default-file",label:h(b,a?.configPath?.trim()||"harness.config.json"),raw:""}}async function j(a){if(a.raw)return a.raw;try{return await (0,d.readFile)(a.label,"utf8")}catch{throw new g.xL(`Config file not found: ${a.label}`)}}},96105:(a,b,c)=>{c.d(b,{k:()=>o});var d=c(74200),e=c(71512);let f=d.Yj().regex(/^https:\/\/github\.com\/[A-Za-z0-9_.-]+\/[A-Za-z0-9_.-]+\/?$/,"must be a https://github.com/<owner>/<repo> URL"),g=d.Ik({id:d.Yj().min(1),linearProjects:d.YO(d.Yj()).optional(),linearTeams:d.YO(d.Yj()).optional(),targetRepo:f,baseBranch:d.Yj().min(1).default("main"),productionBranch:d.Yj().min(1).default("main"),previewProvider:d.Yj().optional(),integrationPreviewUrl:d.Yj().url().optional(),productionUrl:d.Yj().url().optional(),integrationSuccessStatus:d.Yj().min(1).optional(),productionSuccessStatus:d.Yj().min(1).optional(),validation:d.Ik({commands:d.YO(d.Yj()).optional()}).optional()}),h=d.Ik({teamKey:d.Yj().optional(),eligibleStatuses:d.Ik({planning:d.YO(d.Yj()).optional(),implementation:d.YO(d.Yj()).optional(),handoff:d.YO(d.Yj()).optional(),revision:d.YO(d.Yj()).optional(),merge:d.YO(d.Yj()).optional()}).optional(),transitionalStatuses:d.Ik({planningInProgress:d.Yj().optional(),buildingInProgress:d.Yj().optional(),prOpen:d.Yj().optional(),pmReview:d.Yj().optional(),blocked:d.Yj().optional(),readyForBuild:d.Yj().optional(),needsRevision:d.Yj().optional(),revisingInProgress:d.Yj().optional(),readyToMerge:d.Yj().optional(),mergingInProgress:d.Yj().optional(),mergedToDev:d.Yj().optional(),mergedDeployed:d.Yj().optional()}).optional()}),i=d.Ik({timeoutSeconds:d.ai().positive().optional()}),j=d.Ik({timeoutSeconds:d.ai().positive().optional(),branchPrefix:d.Yj().min(1).default(e.Zn)}),k=d.Ik({allowPmReviewWithoutPreview:d.zM().optional(),previewRequiredForSuccess:d.zM().optional()}),l=d.Ik({timeoutSeconds:d.ai().positive().optional()}),m=d.Ik({mergeMethod:d.k5(["squash","merge","rebase"]).optional(),deleteBranchAfterMerge:d.zM().optional(),allowPendingChecks:d.zM().optional(),allowUnknownChecks:d.zM().optional(),allowNeutralChecks:d.zM().optional(),deploymentRequiredForSuccess:d.zM().optional(),deploymentPollTimeoutSeconds:d.ai().positive().optional(),deploymentPollIntervalSeconds:d.ai().positive().optional(),checkPollTimeoutSeconds:d.ai().positive().optional()}),n=d.Ik({id:d.eu("cursor"),model:d.Ik({id:d.Yj()}).optional()}),o=d.Ik({version:d.eu(1),orchestratorMarker:d.Yj().default(e.Ie),logDirectory:d.Yj().default(e.h5),agentProvider:n.optional(),defaultModel:d.Ik({id:d.Yj()}).optional(),linear:h.optional(),planning:i.optional(),implementation:j.optional(),handoff:k.optional(),revision:l.optional(),merge:m.optional(),watch:d.Ik({pollIntervalSeconds:d.ai().positive().optional(),maxConcurrentRuns:d.ai().positive().optional()}).optional(),preview:d.Ik({pollTimeoutSeconds:d.ai().positive().optional(),pollIntervalSeconds:d.ai().positive().optional()}).optional(),repos:d.YO(g).min(1),allowedTargetRepos:d.YO(f).min(1)}).strict()}};
|