@kici-dev/orchestrator 0.16.0 → 0.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/agent/agent-version.d.ts +12 -21
- package/dist/agent/dispatcher.d.ts +283 -437
- package/dist/agent/host-roster-reaper.d.ts +8 -10
- package/dist/agent/host-roster.d.ts +77 -100
- package/dist/agent/ownership-refusal.d.ts +3 -5
- package/dist/agent/ownership-tracker.d.ts +42 -76
- package/dist/agent/registry.d.ts +121 -233
- package/dist/agent/token-store.d.ts +34 -77
- package/dist/agent-packaging/availability.d.ts +6 -9
- package/dist/agent-packaging/download.d.ts +6 -9
- package/dist/agent-packaging/install-closure.d.ts +9 -12
- package/dist/agent-packaging/node-binary.d.ts +6 -10
- package/dist/agent-packaging/node-runtime-members.d.ts +3 -5
- package/dist/agent-packaging/refresh.d.ts +12 -16
- package/dist/agent-packaging/store.d.ts +5 -6
- package/dist/agent-packaging/upload.d.ts +3 -4
- package/dist/app.d.ts +0 -3
- package/dist/approvals/apply-decision.d.ts +39 -45
- package/dist/approvals/approval-resolver.d.ts +11 -23
- package/dist/approvals/held-run-release-wiring.d.ts +14 -21
- package/dist/approvals/independent-wiring.d.ts +13 -20
- package/dist/approvals/resume-router.d.ts +1 -1
- package/dist/approvals/step-approval-bridge.d.ts +11 -21
- package/dist/approvals/triggerer-subject.d.ts +8 -10
- package/dist/artifacts/artifact-store.d.ts +55 -95
- package/dist/artifacts/failure-messages.d.ts +15 -20
- package/dist/audit/access-log.d.ts +27 -45
- package/dist/audit/sampling-rate-limiter.d.ts +11 -23
- package/dist/cache/agent-job-failed-error.d.ts +2 -3
- package/dist/cache/build-coordinator.d.ts +5 -28
- package/dist/cache/cache-upload-settle.d.ts +11 -11
- package/dist/cache/dep-cache.d.ts +32 -60
- package/dist/cache/dispatch-cache-ref-tracker.d.ts +15 -23
- package/dist/cache/global-eval-round-cache.d.ts +33 -41
- package/dist/cache/pending-builds.d.ts +2 -6
- package/dist/cache/pending-dynamics.d.ts +2 -7
- package/dist/cache/pending-global-evals.d.ts +9 -12
- package/dist/cache/pending-inits.d.ts +11 -22
- package/dist/cache/pending-precursor-db-watcher.d.ts +24 -32
- package/dist/cache/pending-tracker.d.ts +17 -45
- package/dist/cache/precursor-result.d.ts +17 -30
- package/dist/cache/source-cache.d.ts +36 -65
- package/dist/cache/user-cache.d.ts +21 -25
- package/dist/cancel/cancel-held-run.d.ts +13 -16
- package/dist/cancel/cancel-route-answer.d.ts +1 -2
- package/dist/cancel/cancel-run.d.ts +26 -50
- package/dist/cancel/dashboard-cancel-handler.d.ts +2 -2
- package/dist/cancel/peer-job-cancel.d.ts +11 -14
- package/dist/cancel/sweep-stuck-cancelling.d.ts +9 -13
- package/dist/cli/api-client.d.ts +33 -76
- package/dist/cli/commands/access-log.d.ts +4 -24
- package/dist/cli/commands/agent-package.d.ts +7 -15
- package/dist/cli/commands/agent-service/agent-env.d.ts +3 -6
- package/dist/cli/commands/agent-service/index.d.ts +4 -10
- package/dist/cli/commands/agent-service/install.d.ts +4 -11
- package/dist/cli/commands/agent-service/status.d.ts +4 -9
- package/dist/cli/commands/agent-service/upgrade.d.ts +4 -16
- package/dist/cli/commands/agent.d.ts +12 -25
- package/dist/cli/commands/api-key.d.ts +7 -7
- package/dist/cli/commands/attestations-list.d.ts +7 -17
- package/dist/cli/commands/attestations-retry.d.ts +5 -11
- package/dist/cli/commands/attestations-reverify.d.ts +4 -5
- package/dist/cli/commands/attestations.d.ts +3 -8
- package/dist/cli/commands/audit.d.ts +1 -5
- package/dist/cli/commands/backend.d.ts +2 -11
- package/dist/cli/commands/check-run.d.ts +7 -18
- package/dist/cli/commands/cluster-name.d.ts +5 -12
- package/dist/cli/commands/cluster-settings.d.ts +28 -53
- package/dist/cli/commands/cold-store.d.ts +7 -15
- package/dist/cli/commands/config.d.ts +9 -20
- package/dist/cli/commands/context.d.ts +8 -20
- package/dist/cli/commands/dashboard-encryption-key.d.ts +9 -14
- package/dist/cli/commands/db-backup.d.ts +17 -32
- package/dist/cli/commands/db.d.ts +3 -4
- package/dist/cli/commands/debug-bundle.d.ts +3 -10
- package/dist/cli/commands/diagnose.d.ts +3 -14
- package/dist/cli/commands/event-dlq.d.ts +4 -12
- package/dist/cli/commands/event-log.d.ts +2 -20
- package/dist/cli/commands/execution.d.ts +3 -9
- package/dist/cli/commands/firecracker/index.d.ts +3 -6
- package/dist/cli/commands/held-run.d.ts +23 -37
- package/dist/cli/commands/host.d.ts +4 -11
- package/dist/cli/commands/inspect-bundle.d.ts +3 -11
- package/dist/cli/commands/local-hook.d.ts +2 -10
- package/dist/cli/commands/local-trigger.d.ts +2 -2
- package/dist/cli/commands/orchestrator-service/drain.d.ts +3 -6
- package/dist/cli/commands/orchestrator-service/index.d.ts +6 -14
- package/dist/cli/commands/orchestrator-service/install-env.d.ts +25 -49
- package/dist/cli/commands/orchestrator-service/install.d.ts +2 -5
- package/dist/cli/commands/orchestrator-service/status.d.ts +10 -22
- package/dist/cli/commands/orchestrator-service/upgrade.d.ts +6 -15
- package/dist/cli/commands/org-settings.d.ts +5 -11
- package/dist/cli/commands/peer.d.ts +5 -10
- package/dist/cli/commands/queue.d.ts +3 -9
- package/dist/cli/commands/registration.d.ts +4 -8
- package/dist/cli/commands/remote-source.d.ts +6 -12
- package/dist/cli/commands/rotate.d.ts +1 -5
- package/dist/cli/commands/runs.d.ts +1 -30
- package/dist/cli/commands/scaler.d.ts +5 -12
- package/dist/cli/commands/secret.d.ts +1 -9
- package/dist/cli/commands/service-health.d.ts +5 -10
- package/dist/cli/commands/shared/admin-cli-access-log.d.ts +10 -19
- package/dist/cli/commands/shared/bare-metal-binary-check.d.ts +86 -0
- package/dist/cli/commands/shared/cli-action.d.ts +1 -4
- package/dist/cli/commands/shared/confirm.d.ts +5 -10
- package/dist/cli/commands/shared/db.d.ts +1 -12
- package/dist/cli/commands/shared/env-file-mode.d.ts +6 -9
- package/dist/cli/commands/shared/secret-input.d.ts +7 -21
- package/dist/cli/commands/shared/service-verbs.d.ts +6 -12
- package/dist/cli/commands/shared/unbound-context-warning.d.ts +2 -4
- package/dist/cli/commands/shared/upgrade-hooks.d.ts +7 -16
- package/dist/cli/commands/shared/upgrade-safety.d.ts +20 -31
- package/dist/cli/commands/shared/versioned-upgrade.d.ts +83 -161
- package/dist/cli/commands/signing-key.d.ts +4 -9
- package/dist/cli/commands/source-manifest.d.ts +11 -14
- package/dist/cli/commands/source.d.ts +7 -32
- package/dist/cli/commands/token.d.ts +4 -15
- package/dist/cli/commands/trust-policy.d.ts +35 -88
- package/dist/cli/commands/variable.d.ts +3 -5
- package/dist/cli/commands/workflow.d.ts +3 -24
- package/dist/cli/join.d.ts +3 -6
- package/dist/cli/kici-admin.d.ts +11 -29
- package/dist/cli/lazy-deps/cache.d.ts +1 -14
- package/dist/cli/lazy-deps/downloader.d.ts +4 -27
- package/dist/cli/lazy-deps/registry.d.ts +5 -25
- package/dist/cli/local-github-ingress-url.d.ts +5 -7
- package/dist/cli/loopback-callback.d.ts +6 -7
- package/dist/cli/open-browser.d.ts +4 -8
- package/dist/cli/root-option-routing.d.ts +17 -29
- package/dist/cli/service/backup-timer.d.ts +16 -39
- package/dist/cli/service/compose-path.d.ts +3 -7
- package/dist/cli/service/compose.d.ts +12 -30
- package/dist/cli/service/deploy-env.d.ts +6 -18
- package/dist/cli/service/entrypoint.d.ts +14 -25
- package/dist/cli/service/env-assignment.d.ts +6 -17
- package/dist/cli/service/image-digests.d.ts +6 -15
- package/dist/cli/service/index.d.ts +2 -18
- package/dist/cli/service/instance/index-file.d.ts +9 -16
- package/dist/cli/service/instance/manifest.d.ts +33 -59
- package/dist/cli/service/instance/resolve.d.ts +32 -68
- package/dist/cli/service/instance/types.d.ts +12 -29
- package/dist/cli/service/launchd.d.ts +29 -60
- package/dist/cli/service/platform-detect.d.ts +13 -68
- package/dist/cli/service/privilege.d.ts +12 -25
- package/dist/cli/service/shutdown-grace.d.ts +11 -20
- package/dist/cli/service/systemd.d.ts +7 -20
- package/dist/cli/service/types.d.ts +63 -114
- package/dist/cli/service/windows-acl.d.ts +14 -21
- package/dist/cli/service/windows-env-file.d.ts +10 -28
- package/dist/cli/service/windows.d.ts +15 -31
- package/dist/cli/webhook-url-notes.d.ts +4 -6
- package/dist/cli/wizard/agent-wizard.d.ts +3 -14
- package/dist/cli/wizard/orchestrator-wizard.d.ts +12 -37
- package/dist/cli/wizard/prompts.d.ts +6 -16
- package/dist/cli.js +4553 -6556
- package/dist/cluster/cluster-identity.d.ts +20 -32
- package/dist/cluster/cluster-settings-reader.d.ts +50 -77
- package/dist/cluster/coordinator-credential.d.ts +4 -5
- package/dist/cluster/coordinator.d.ts +76 -148
- package/dist/cluster/health-api.d.ts +2 -10
- package/dist/cluster/index.d.ts +1 -6
- package/dist/cluster/instance-heartbeat.d.ts +26 -42
- package/dist/cluster/join-client.d.ts +4 -7
- package/dist/cluster/join-handler.d.ts +3 -7
- package/dist/cluster/join-token.d.ts +13 -27
- package/dist/cluster/leader-gated-scheduler.d.ts +8 -17
- package/dist/cluster/orphan-recovery.d.ts +13 -35
- package/dist/cluster/peer-auth-coordinator.d.ts +2 -8
- package/dist/cluster/peer-client.d.ts +46 -76
- package/dist/cluster/peer-credentials.d.ts +24 -70
- package/dist/cluster/peer-crypto.d.ts +5 -26
- package/dist/cluster/peer-forget.d.ts +3 -3
- package/dist/cluster/peer-handler.d.ts +47 -71
- package/dist/cluster/peer-registry.d.ts +37 -106
- package/dist/cluster/plan-headroom-store.d.ts +4 -6
- package/dist/cluster/raft-state.d.ts +4 -13
- package/dist/cluster/raft.d.ts +18 -53
- package/dist/cluster/reconcile-identity.d.ts +8 -11
- package/dist/cluster/rerouted-job-guard.d.ts +7 -11
- package/dist/cluster/verified-issuer.d.ts +2 -3
- package/dist/cluster/worker-cluster-settings.d.ts +7 -10
- package/dist/cluster/worker-eviction.d.ts +16 -26
- package/dist/cold-store/load-access-log-range.d.ts +15 -31
- package/dist/cold-store/load-event-log-range.d.ts +13 -27
- package/dist/cold-store/load-secret-audit-log-range.d.ts +8 -12
- package/dist/cold-store/orchestrator-cold-store.d.ts +8 -28
- package/dist/cold-store/tables/access-log.d.ts +12 -14
- package/dist/cold-store/tables/event-log.d.ts +4 -8
- package/dist/cold-store/tables/execution-runs.d.ts +6 -11
- package/dist/cold-store/tables/secret-audit-log.d.ts +5 -12
- package/dist/concurrency/dispatch-next-queued.d.ts +13 -25
- package/dist/concurrency/queue-manager.d.ts +22 -54
- package/dist/concurrency/waiters.d.ts +15 -31
- package/dist/config/encryption.d.ts +0 -2
- package/dist/config/loader.d.ts +0 -1
- package/dist/config/reload.d.ts +0 -6
- package/dist/config/resolver.d.ts +0 -4
- package/dist/config/shared-store.d.ts +0 -2
- package/dist/config/types.d.ts +0 -3
- package/dist/content-requirements-cache.d.ts +0 -1
- package/dist/contexts/context-store.d.ts +0 -2
- package/dist/contexts/held-runs.d.ts +0 -2
- package/dist/contexts/variable-store.d.ts +0 -2
- package/dist/dashboard/attestation-filters.d.ts +13 -18
- package/dist/dashboard/handler.d.ts +143 -307
- package/dist/db/client.d.ts +2 -6
- package/dist/db/deferred-index-build.d.ts +8 -10
- package/dist/db/deferred-indexes.d.ts +15 -22
- package/dist/db/migration-provider.d.ts +2 -4
- package/dist/db/migration-test-harness.d.ts +26 -44
- package/dist/db/migrations/001_initial.d.ts +1 -4
- package/dist/db/migrations/002_config_versions_key_version.d.ts +5 -8
- package/dist/db/migrations/003_access_log.d.ts +10 -15
- package/dist/db/migrations/004_rename_bundle_to_source.d.ts +7 -9
- package/dist/db/migrations/005_cold_store_chunk_counter.d.ts +4 -10
- package/dist/db/migrations/006_runs_jobs_steps_archived_at.d.ts +9 -29
- package/dist/db/migrations/007_audit_logs_archived_at.d.ts +11 -30
- package/dist/db/migrations/008_event_log_archived_at.d.ts +14 -29
- package/dist/db/migrations/009_access_log_trigram.d.ts +4 -8
- package/dist/db/migrations/010_cold_store_chunks.d.ts +16 -26
- package/dist/db/migrations/011_drop_source_secrets_notify.d.ts +6 -14
- package/dist/db/migrations/012_peer_credentials_active_uniq.d.ts +9 -14
- package/dist/db/migrations/013_execution_log_bytes.d.ts +5 -13
- package/dist/db/migrations/014_kici_events_lease_retry.d.ts +14 -27
- package/dist/db/migrations/015_org_settings_customer_scoped.d.ts +12 -17
- package/dist/db/migrations/016_org_settings_allow_http_npm.d.ts +4 -6
- package/dist/db/migrations/019_generic_sources_change_notify.d.ts +13 -17
- package/dist/db/migrations/020_org_settings_dashboard_write_policy.d.ts +5 -8
- package/dist/db/migrations/021_check_run_tracking.d.ts +5 -17
- package/dist/db/migrations/022_scaler_manager_state.d.ts +10 -20
- package/dist/db/migrations/023_dispatch_queue_recovery_deadline.d.ts +7 -18
- package/dist/db/migrations/024_dispatch_queue_provisioning_error.d.ts +5 -11
- package/dist/db/migrations/025_init_failure.d.ts +5 -9
- package/dist/db/migrations/027_workflow_timeout.d.ts +5 -13
- package/dist/db/migrations/029_dispatch_queue_attempts.d.ts +4 -10
- package/dist/db/migrations/030_held_runs_env_set_null.d.ts +5 -6
- package/dist/db/migrations/031_dispatch_queue_ack_deadline.d.ts +6 -12
- package/dist/db/migrations/033_org_settings_approval.d.ts +7 -10
- package/dist/db/migrations/034_held_runs_generalize.d.ts +10 -18
- package/dist/db/migrations/035_pending_workflow_contexts.d.ts +4 -5
- package/dist/db/migrations/037_generic_sources_provider_type_local.d.ts +5 -6
- package/dist/db/migrations/038_remote_sources.d.ts +5 -7
- package/dist/db/migrations/045_host_properties.d.ts +5 -9
- package/dist/db/migrations/046_join_token_consumed_by_instance.d.ts +5 -10
- package/dist/db/migrations/048_host_reboot_pending.d.ts +6 -12
- package/dist/db/migrations/049_held_runs_payload.d.ts +3 -8
- package/dist/db/migrations/050_sources_slug.d.ts +4 -5
- package/dist/db/migrations/051_binding_host_pattern.d.ts +7 -10
- package/dist/db/migrations/052_host_reach_metadata.d.ts +8 -11
- package/dist/db/migrations/053_agent_token_single_use.d.ts +6 -10
- package/dist/db/migrations/054_local_working_tree.d.ts +4 -6
- package/dist/db/migrations/055_agent_token_mandatory_labels.d.ts +6 -11
- package/dist/db/migrations/056_execution_jobs_environments.d.ts +4 -11
- package/dist/db/migrations/064_execution_jobs_skipped_environments.d.ts +6 -9
- package/dist/db/migrations/065_pending_attestations.d.ts +9 -12
- package/dist/db/migrations/066_pending_attestations_rejected.d.ts +4 -7
- package/dist/db/migrations/068_request_idempotency.d.ts +7 -9
- package/dist/db/migrations/069_reroute_tunables.d.ts +6 -14
- package/dist/db/migrations/071_batch_accumulation.d.ts +8 -16
- package/dist/db/migrations/072_dispatch_queue_run_id_index.d.ts +3 -9
- package/dist/db/migrations/074_normalize_zero_concurrency_limit.d.ts +4 -7
- package/dist/db/migrations/076_artifacts.d.ts +7 -8
- package/dist/db/migrations/078_org_settings_backup_staleness.d.ts +3 -6
- package/dist/db/migrations/079_org_settings_scaler_spawn_timeout.d.ts +4 -8
- package/dist/db/migrations/080_cluster_settings.d.ts +6 -10
- package/dist/db/migrations/081_org_settings_queue_timeout.d.ts +7 -11
- package/dist/db/migrations/082_host_s3_reachable.d.ts +5 -10
- package/dist/db/migrations/083_org_settings_artifact_caps.d.ts +6 -8
- package/dist/db/migrations/084_orchestrator_signing_keys.d.ts +8 -13
- package/dist/db/migrations/085_cluster_settings_reroute_flap_grace_ms.d.ts +4 -5
- package/dist/db/migrations/086_cluster_settings_max_fanout_hosts.d.ts +3 -3
- package/dist/db/migrations/087_cluster_settings_event_router_rate_limit.d.ts +5 -3
- package/dist/db/migrations/088_cluster_settings_cache_max_tarball_bytes.d.ts +3 -3
- package/dist/db/migrations/089_cluster_settings_cache_ttl_days.d.ts +3 -5
- package/dist/db/migrations/090_cluster_settings_concurrency_wait_timeout_ms.d.ts +3 -6
- package/dist/db/migrations/091_cluster_settings_agent_token_ttl_ms.d.ts +3 -6
- package/dist/db/migrations/092_cluster_settings_version.d.ts +5 -9
- package/dist/db/migrations/094_dashboard_encryption_keys.d.ts +9 -14
- package/dist/db/migrations/095_dashboard_write_policy_tristate.d.ts +2 -6
- package/dist/db/migrations/099_cluster_settings_dashboard_verified_issuer.d.ts +8 -11
- package/dist/db/migrations/101_contexts_hold_expiry_drop_default.d.ts +9 -15
- package/dist/db/migrations/102_dispatch_queue_agent_id.d.ts +6 -11
- package/dist/db/migrations/103_cluster_settings_ownership_db_check_timeout_ms.d.ts +6 -12
- package/dist/db/migrations/104_check_run_terminal_sent.d.ts +8 -14
- package/dist/db/migrations/105_org_trust_policy.d.ts +5 -7
- package/dist/db/migrations/106_cluster_settings_check_run_tracking_ttl_days.d.ts +4 -12
- package/dist/db/migrations/107_check_run_tracking_updated_at_index.d.ts +8 -14
- package/dist/db/migrations/113_execution_runs_workflow_repo_index.d.ts +10 -19
- package/dist/db/migrations/115_global_workflows_cluster_switch.d.ts +2 -3
- package/dist/db/migrations/121_org_settings_allow_untrusted_dockerfile_builds.d.ts +7 -8
- package/dist/db/migrations/122_host_roster_scaler_managed.d.ts +9 -16
- package/dist/db/migrations/123_workflow_registrations_default_branch.d.ts +8 -16
- package/dist/db/migrations/125_org_trust_directory.d.ts +13 -21
- package/dist/db/migrations/126_held_runs_posted_pending_check.d.ts +10 -16
- package/dist/db/migrations/127_org_trust_policy_approval_expiry_seconds.d.ts +8 -16
- package/dist/db/migrations/128_execution_runs_global_eval_round.d.ts +6 -11
- package/dist/db/migrations/129_execution_runs_dispatch_routing_key.d.ts +8 -11
- package/dist/db/migrations/130_scaler_provision_outcomes.d.ts +13 -20
- package/dist/db/migrations/131_execution_jobs_git_credentials.d.ts +12 -22
- package/dist/db/migrations/132_execution_runs_trigger_event.d.ts +6 -16
- package/dist/db/migrations/133_dispatch_queue_source_tar_digest.d.ts +6 -9
- package/dist/db/migrations/140_dispatch_queue_canonical_labels.d.ts +22 -40
- package/dist/db/migrations/143_execution_jobs_precursor_result.d.ts +9 -18
- package/dist/db/migrations/144_execution_runs_registration_window.d.ts +12 -20
- package/dist/db/migrations/147_sealed_job_secrets.d.ts +5 -9
- package/dist/db/migrations/148_cluster_settings_sealed_secrets_retry_backoff_ms.d.ts +7 -13
- package/dist/db/migrations/150_execution_runs_status_epoch.d.ts +6 -11
- package/dist/db/migrations/152_org_settings_cache_upload_settle_timeout.d.ts +5 -8
- package/dist/db/migrations/157_host_roster_identity_source.d.ts +9 -13
- package/dist/db/migrations/159_org_id_widen_to_source_width.d.ts +5 -0
- package/dist/db/migrator.d.ts +17 -25
- package/dist/db/notify-listener.d.ts +8 -11
- package/dist/db/repos/dashboard-encryption-keys-repo.d.ts +9 -10
- package/dist/db/synthetic-job-ids.d.ts +6 -8
- package/dist/db/types.d.ts +531 -1058
- package/dist/deployment/deployment-identity.d.ts +42 -60
- package/dist/diagnostics/bundle-reader.d.ts +3 -15
- package/dist/diagnostics/bundle-writer.d.ts +5 -12
- package/dist/diagnostics/checks/agents.d.ts +1 -7
- package/dist/diagnostics/checks/backup.d.ts +7 -10
- package/dist/diagnostics/checks/certs.d.ts +1 -6
- package/dist/diagnostics/checks/config.d.ts +2 -5
- package/dist/diagnostics/checks/db.d.ts +1 -1
- package/dist/diagnostics/checks/disk.d.ts +1 -6
- package/dist/diagnostics/checks/firecracker-network.d.ts +3 -3
- package/dist/diagnostics/checks/index.d.ts +0 -6
- package/dist/diagnostics/checks/retention.d.ts +3 -6
- package/dist/diagnostics/checks/scaler.d.ts +3 -7
- package/dist/diagnostics/checks/ws.d.ts +1 -6
- package/dist/diagnostics/fleet-collector.d.ts +11 -14
- package/dist/diagnostics/fleet-constants.d.ts +1 -3
- package/dist/diagnostics/fleet-selection.d.ts +3 -7
- package/dist/diagnostics/fleet-topology.d.ts +2 -6
- package/dist/diagnostics/fleet-wiring.d.ts +6 -12
- package/dist/diagnostics/index.d.ts +0 -5
- package/dist/diagnostics/runner.d.ts +4 -8
- package/dist/diagnostics/types.d.ts +10 -21
- package/dist/drain/drain-controller.d.ts +16 -22
- package/dist/entry-helpers.d.ts +0 -2
- package/dist/events/circuit-breaker.d.ts +0 -3
- package/dist/events/event-router.d.ts +1 -2
- package/dist/events/event-store.d.ts +0 -9
- package/dist/events/trust-store.d.ts +0 -3
- package/dist/events/types.d.ts +0 -9
- package/dist/firecracker/host-network.d.ts +24 -30
- package/dist/firecracker/net-interfaces.d.ts +4 -7
- package/dist/helpers/rate-limiter.d.ts +0 -1
- package/dist/index.js +251 -486
- package/dist/metrics/agent-metrics-aggregator.d.ts +24 -67
- package/dist/metrics/metrics-reporter.d.ts +4 -13
- package/dist/metrics/prometheus.d.ts +47 -81
- package/dist/orchestrator-core.d.ts +3 -7
- package/dist/pipeline/content-filter.d.ts +20 -30
- package/dist/pipeline/cross-source-tally.d.ts +7 -8
- package/dist/pipeline/decorating-secret-resolver.d.ts +4 -8
- package/dist/pipeline/degraded-reason.d.ts +3 -4
- package/dist/pipeline/direct-ingress-deps.d.ts +15 -24
- package/dist/pipeline/dispatch-matched-workflow.d.ts +289 -525
- package/dist/pipeline/flatten-lock-steps.d.ts +4 -6
- package/dist/pipeline/global-dispatch-identity.d.ts +5 -10
- package/dist/pipeline/global-eval-round.d.ts +65 -151
- package/dist/pipeline/global-round-hold.d.ts +5 -7
- package/dist/pipeline/held-context-data.d.ts +5 -8
- package/dist/pipeline/held-round-registrations.d.ts +8 -11
- package/dist/pipeline/install-gate.d.ts +15 -25
- package/dist/pipeline/install-secrets-resolver.d.ts +24 -34
- package/dist/pipeline/internal-event-pipeline.d.ts +45 -62
- package/dist/pipeline/invoke-gate.d.ts +27 -40
- package/dist/pipeline/job-contexts.d.ts +19 -36
- package/dist/pipeline/manual-schedule.d.ts +7 -13
- package/dist/pipeline/needs-scheduler.d.ts +29 -46
- package/dist/pipeline/pending-workflow-context.d.ts +14 -28
- package/dist/pipeline/process-webhook.d.ts +88 -123
- package/dist/pipeline/processor.d.ts +209 -355
- package/dist/pipeline/remote-source-store.d.ts +5 -8
- package/dist/pipeline/request-idempotency.d.ts +10 -13
- package/dist/pipeline/rerun-global.d.ts +6 -7
- package/dist/pipeline/rerun-inputs.d.ts +23 -37
- package/dist/pipeline/rerun.d.ts +34 -57
- package/dist/pipeline/resolve-sandbox-grant.d.ts +5 -10
- package/dist/pipeline/resume-workflow.d.ts +28 -34
- package/dist/pipeline/route-or-dispatch-jobs.d.ts +19 -30
- package/dist/pipeline/run-event-context.d.ts +16 -21
- package/dist/pipeline/sandbox-allowlist-reader.d.ts +7 -11
- package/dist/pipeline/security-hold-check.d.ts +56 -80
- package/dist/pipeline/test-pipeline.d.ts +21 -46
- package/dist/pipeline/unbound-job-context.d.ts +6 -9
- package/dist/pipeline/undispatched-hold-checks.d.ts +4 -6
- package/dist/pipeline/wave-scheduler.d.ts +15 -22
- package/dist/pipeline/webhook-payload-store.d.ts +3 -10
- package/dist/pipeline/workflow-lock-at-sha.d.ts +14 -20
- package/dist/policy/dashboard-write-policy.d.ts +1 -1
- package/dist/provider-registry.d.ts +0 -19
- package/dist/providers/generic/index.d.ts +0 -2
- package/dist/providers/generic/normalizer.d.ts +0 -1
- package/dist/providers/generic/verification.d.ts +0 -8
- package/dist/providers/github/auth.d.ts +0 -1
- package/dist/providers/github/changed-files.d.ts +2 -1
- package/dist/providers/github/file-contents.d.ts +0 -4
- package/dist/providers/github/lock-file.d.ts +0 -4
- package/dist/providers/github/normalizer.d.ts +1 -9
- package/dist/providers/local/index.d.ts +1 -2
- package/dist/providers/local/lock-file-fetcher.d.ts +0 -4
- package/dist/providers/local/normalizer.d.ts +0 -10
- package/dist/providers/local/repo-url-builder.d.ts +0 -2
- package/dist/providers/universal-git/clone-token.d.ts +0 -2
- package/dist/providers/universal-git/lock-file.d.ts +0 -2
- package/dist/providers/universal-git/normalizer.d.ts +0 -2
- package/dist/queue/bootstrap.d.ts +3 -15
- package/dist/queue/cleanup.d.ts +29 -50
- package/dist/queue/depth-refresher.d.ts +21 -39
- package/dist/queue/job-queue.d.ts +112 -163
- package/dist/queue/retention.d.ts +23 -36
- package/dist/queue/scheduled-job.d.ts +17 -39
- package/dist/queue/terminalize-unroutable.d.ts +21 -18
- package/dist/queue/unroutable-probe.d.ts +15 -22
- package/dist/registration/extractor.d.ts +0 -6
- package/dist/registration/registration-index.d.ts +0 -6
- package/dist/registration/registration-store.d.ts +0 -9
- package/dist/reporting/agent-failure-category.d.ts +3 -5
- package/dist/reporting/check-run-reporter.d.ts +142 -316
- package/dist/reporting/check-run-summary.d.ts +16 -35
- package/dist/reporting/check-run-tracking-store.d.ts +54 -107
- package/dist/reporting/execution-tracker.d.ts +356 -526
- package/dist/reporting/fs-log-storage.d.ts +31 -33
- package/dist/reporting/job-check-run-completion.d.ts +14 -22
- package/dist/reporting/log-chunk-sink.d.ts +11 -16
- package/dist/reporting/log-pull-handler.d.ts +4 -13
- package/dist/reporting/log-retention.d.ts +3 -4
- package/dist/reporting/log-storage.d.ts +24 -52
- package/dist/reporting/log-writer.d.ts +28 -56
- package/dist/reporting/peer-log-normalize.d.ts +4 -8
- package/dist/reporting/run-aggregator.d.ts +6 -11
- package/dist/reporting/run-summary-fields.d.ts +5 -8
- package/dist/reporting/s3-log-storage.d.ts +31 -50
- package/dist/reporting/step-display-order.d.ts +11 -21
- package/dist/reporting/step-log-buffer.d.ts +7 -28
- package/dist/reporting/step-log-reader.d.ts +11 -19
- package/dist/routes/admin-access-log.d.ts +4 -6
- package/dist/routes/admin-auth.d.ts +19 -38
- package/dist/routes/admin-backends.d.ts +3 -14
- package/dist/routes/admin-cluster-name.d.ts +13 -21
- package/dist/routes/admin-cluster-settings.d.ts +6 -9
- package/dist/routes/admin-config.d.ts +7 -19
- package/dist/routes/admin-contexts.d.ts +6 -13
- package/dist/routes/admin-db.d.ts +5 -10
- package/dist/routes/admin-event-dlq.d.ts +3 -5
- package/dist/routes/admin-event-inspect.d.ts +3 -4
- package/dist/routes/admin-event-log.d.ts +3 -7
- package/dist/routes/admin-events.d.ts +16 -30
- package/dist/routes/admin-held-runs.d.ts +52 -76
- package/dist/routes/admin-maintenance.d.ts +3 -6
- package/dist/routes/admin-orchestrator-drain.d.ts +0 -2
- package/dist/routes/admin-org-settings.d.ts +8 -14
- package/dist/routes/admin-peer-forget.d.ts +0 -1
- package/dist/routes/admin-queue-execution.d.ts +3 -3
- package/dist/routes/admin-registrations.d.ts +3 -12
- package/dist/routes/admin-runs.d.ts +16 -29
- package/dist/routes/admin-scaler-orphans.d.ts +4 -4
- package/dist/routes/admin-scaler-reload.d.ts +5 -8
- package/dist/routes/admin-scheduled-jobs.d.ts +3 -4
- package/dist/routes/admin-sources.d.ts +20 -29
- package/dist/routes/admin-trust-policy.d.ts +31 -48
- package/dist/routes/admin.d.ts +67 -94
- package/dist/routes/caller-identity.d.ts +45 -0
- package/dist/routes/capabilities.d.ts +8 -13
- package/dist/routes/diagnostics.d.ts +2 -10
- package/dist/routes/fleet.d.ts +1 -2
- package/dist/routes/github-webhook.d.ts +2 -5
- package/dist/routes/health.d.ts +6 -19
- package/dist/routes/provenance-oidc.d.ts +3 -3
- package/dist/routes/test-direct.d.ts +46 -0
- package/dist/routes/uploads.d.ts +14 -19
- package/dist/routes/webhooks.d.ts +2 -24
- package/dist/scaler/agent-binary-location.d.ts +77 -0
- package/dist/scaler/agent-fit.d.ts +2 -2
- package/dist/scaler/backend-factory.d.ts +10 -18
- package/dist/scaler/bare-metal-backend.d.ts +28 -45
- package/dist/scaler/claim-store.d.ts +20 -43
- package/dist/scaler/config.d.ts +10 -37
- package/dist/scaler/container-backend.d.ts +22 -35
- package/dist/scaler/container-hostconfig.d.ts +10 -16
- package/dist/scaler/container-routing.d.ts +10 -13
- package/dist/scaler/disk-guard.d.ts +2 -3
- package/dist/scaler/event-backend.d.ts +33 -58
- package/dist/scaler/event-provision-reaper.d.ts +61 -84
- package/dist/scaler/failure-tracker.d.ts +6 -13
- package/dist/scaler/file-tail.d.ts +6 -19
- package/dist/scaler/firecracker-api.d.ts +19 -63
- package/dist/scaler/firecracker-backend.d.ts +142 -258
- package/dist/scaler/host-access.d.ts +7 -10
- package/dist/scaler/index.d.ts +3 -6
- package/dist/scaler/ip-allocator.d.ts +30 -82
- package/dist/scaler/label-matcher.d.ts +14 -35
- package/dist/scaler/log-forwarder.d.ts +6 -25
- package/dist/scaler/machine-ledger.d.ts +39 -86
- package/dist/scaler/manager.d.ts +517 -787
- package/dist/scaler/pending-scale-sweeper.d.ts +8 -11
- package/dist/scaler/reap-orphans.d.ts +8 -12
- package/dist/scaler/resolve-container-auth.d.ts +12 -21
- package/dist/scaler/scaler-events.d.ts +2 -5
- package/dist/scaler/scaler-state-store.d.ts +127 -189
- package/dist/scaler/spawn-errors.d.ts +1 -4
- package/dist/scaler/startup-orphan-sweep.d.ts +3 -4
- package/dist/scaler/startup-tools-check.d.ts +21 -0
- package/dist/scaler/types.d.ts +142 -255
- package/dist/scaler/vm-job-bindings.d.ts +5 -9
- package/dist/scaler/warm-pool.d.ts +46 -93
- package/dist/secrets/audit-logger.d.ts +0 -3
- package/dist/secrets/backend-health.d.ts +0 -9
- package/dist/secrets/backend-registry.d.ts +0 -9
- package/dist/secrets/cleanup.d.ts +0 -1
- package/dist/secrets/config.d.ts +0 -3
- package/dist/secrets/ephemeral-keys.d.ts +0 -3
- package/dist/secrets/pg-secret-store.d.ts +0 -3
- package/dist/secrets/rbac.d.ts +5 -7
- package/dist/secrets/routing-key-scope.d.ts +1 -0
- package/dist/secrets/secret-output-store.d.ts +0 -6
- package/dist/secrets/secret-resolver.d.ts +2 -6
- package/dist/secrets/token-manager.d.ts +1 -4
- package/dist/secrets/vault-secret-store.d.ts +0 -13
- package/dist/security/comment-handler.d.ts +0 -2
- package/dist/security/workflow-diff.d.ts +1 -1
- package/dist/server.js +49004 -53782
- package/dist/sources/source-manager.d.ts +0 -3
- package/dist/sources/source-store.d.ts +0 -9
- package/dist/sources/source-validator.d.ts +0 -3
- package/dist/stale-detector/all-terminal-runs.d.ts +8 -11
- package/dist/stale-detector/gate-deadline-detector.d.ts +14 -19
- package/dist/stale-detector/reboot-deadline-sweep.d.ts +7 -11
- package/dist/stale-detector/stale-dispatch-candidates.d.ts +13 -20
- package/dist/stale-detector/stale-run-detector.d.ts +74 -121
- package/dist/stale-detector/workflow-deadline-detector.d.ts +15 -43
- package/dist/standalone.js +9342 -13077
- package/dist/storage/blob-routes.d.ts +10 -19
- package/dist/storage/filesystem.d.ts +19 -29
- package/dist/storage/index.d.ts +2 -10
- package/dist/storage/key-discriminator.d.ts +8 -10
- package/dist/storage/loopback-guard.d.ts +27 -45
- package/dist/storage/s3.d.ts +26 -53
- package/dist/storage/sign-url.d.ts +7 -22
- package/dist/storage/types.d.ts +46 -72
- package/dist/webhook/event-log.d.ts +0 -2
- package/dist/webhook/generic-sources.d.ts +0 -21
- package/dist/webhook/ingest-admission.d.ts +0 -1
- package/dist/webhook/relay-buffer.d.ts +2 -2
- package/dist/webhook/verify-inbound.d.ts +0 -1
- package/dist/worker/in-memory-execution-tracker.d.ts +9 -31
- package/dist/worker/in-memory-job-queue.d.ts +32 -72
- package/dist/worker/peer-outbox.d.ts +5 -8
- package/dist/worker/reroute-dispatch.d.ts +4 -6
- package/dist/worker/static-agent-token-store.d.ts +6 -27
- package/dist/worker/worker-outbox-relay.d.ts +2 -2
- package/dist/worker/worker-status.d.ts +3 -20
- package/dist/ws/agent-api-registry.d.ts +8 -27
- package/dist/ws/agent-handler.d.ts +63 -110
- package/dist/ws/agent-heartbeat.d.ts +5 -12
- package/dist/ws/bringup-api.d.ts +31 -38
- package/dist/ws/dashboard-backends-handler.d.ts +12 -22
- package/dist/ws/dashboard-context-handler.d.ts +37 -80
- package/dist/ws/dashboard-diagnostics-handler.d.ts +8 -25
- package/dist/ws/dashboard-dispatch-guard.d.ts +3 -4
- package/dist/ws/dashboard-fleet-handler.d.ts +9 -13
- package/dist/ws/dashboard-fleet-write-handler.d.ts +7 -21
- package/dist/ws/dashboard-global-workflows-handler.d.ts +22 -44
- package/dist/ws/dashboard-registrations-handler.d.ts +10 -27
- package/dist/ws/dashboard-run-state-handler.d.ts +10 -13
- package/dist/ws/event-buffer.d.ts +3 -6
- package/dist/ws/execution-status-frame.d.ts +7 -10
- package/dist/ws/failure-messages.d.ts +9 -14
- package/dist/ws/fleet-agent-collector.d.ts +6 -12
- package/dist/ws/fleet-runs-on-all.d.ts +1 -6
- package/dist/ws/git-credential-relay.d.ts +12 -20
- package/dist/ws/inventory-api.d.ts +4 -5
- package/dist/ws/observer-registry.d.ts +14 -59
- package/dist/ws/ownership-gate.d.ts +1 -1
- package/dist/ws/platform-client.d.ts +21 -30
- package/dist/ws/replay-chunker.d.ts +7 -10
- package/dist/ws/server-options.d.ts +5 -9
- package/dist/ws/test-relay-handlers.d.ts +46 -63
- package/installer-image-digests.json +3 -3
- package/package.json +6 -5
- package/sbom.spdx.json +53 -53
- package/dist/__test-helpers__/fake-scaler-state-store.d.ts +0 -24
- package/dist/__test-helpers__/mock-db-query.d.ts +0 -129
- package/dist/__test-helpers__/mock-db.d.ts +0 -134
- package/dist/__test-helpers__/mock-ws.d.ts +0 -13
- package/dist/__test-helpers__/peer-mutual-auth.d.ts +0 -42
- package/dist/__test-helpers__/scratch-db.d.ts +0 -16
- package/dist/__test-helpers__/test-db.d.ts +0 -34
- package/dist/pipeline/dispatch-matched-workflow.test-helpers.d.ts +0 -121
- package/dist/scaler/container-spawn.d.ts +0 -28
|
@@ -1,21 +1,18 @@
|
|
|
1
1
|
import type { Kysely } from 'kysely';
|
|
2
2
|
import type { Database, RemoteSourceRow } from '../db/types.js';
|
|
3
3
|
/**
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* to the canonical org id via the `remote_sources` row.
|
|
4
|
+
* Routing key a Platform-relayed `test.trigger` carries; `resolveOrgId` maps it
|
|
5
|
+
* back to the org id via the `remote_sources` row.
|
|
7
6
|
*/
|
|
8
7
|
export declare function remoteRoutingKeyFor(orgId: string): string;
|
|
9
8
|
/**
|
|
10
|
-
* Idempotently upsert
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* self-heal — re-running updates `cluster_id` if the cluster identity changed.
|
|
9
|
+
* Idempotently upsert an org's `remote_sources` anchor on every Platform
|
|
10
|
+
* (re)connect, after `auth.success`. The unique `(customer_id)` constraint
|
|
11
|
+
* makes it a self-heal that updates a changed `cluster_id`.
|
|
14
12
|
*/
|
|
15
13
|
export declare function provisionRemoteSource(db: Kysely<Database>, params: {
|
|
16
14
|
orgId: string;
|
|
17
15
|
clusterId: string | null;
|
|
18
16
|
}): Promise<void>;
|
|
19
|
-
/** Read the auto-provisioned remote-source row for an org, if it exists. */
|
|
20
17
|
export declare function getRemoteSource(db: Kysely<Database>, orgId: string): Promise<RemoteSourceRow | undefined>;
|
|
21
18
|
//# sourceMappingURL=remote-source-store.d.ts.map
|
|
@@ -1,26 +1,23 @@
|
|
|
1
1
|
import type { Kysely } from 'kysely';
|
|
2
2
|
import type { Database } from '../db/types.js';
|
|
3
3
|
/**
|
|
4
|
-
* Atomically claim a run-minting request by its Platform `requestId
|
|
5
|
-
* the run id to use. `claimed: false` means a sibling coordinator
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* click yields exactly one run.
|
|
4
|
+
* Atomically claim a run-minting request by its Platform `requestId`, returning
|
|
5
|
+
* the run id to use. `claimed: false` means a sibling coordinator owns it (a
|
|
6
|
+
* relay failover re-send): the caller MUST return `{ newRunId }` WITHOUT
|
|
7
|
+
* creating or dispatching a run, so one click yields exactly one run.
|
|
9
8
|
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
*
|
|
14
|
-
* inserts and wins; the loser reads back the winner's `new_run_id`.
|
|
9
|
+
* Used by `run.rerun.request` and `run.manual_schedule.request`, which both mint
|
|
10
|
+
* a run and ride the Platform's timeout-driven failover. HA siblings share one
|
|
11
|
+
* orchestrator DB, so `INSERT … ON CONFLICT (request_id) DO NOTHING` is the
|
|
12
|
+
* single arbiter; the loser reads back the winner's `new_run_id`.
|
|
15
13
|
*/
|
|
16
14
|
export declare function claimRequestId(db: Kysely<Database>, requestId: string): Promise<{
|
|
17
15
|
newRunId: string;
|
|
18
16
|
claimed: boolean;
|
|
19
17
|
}>;
|
|
20
18
|
/**
|
|
21
|
-
* Prune `request_idempotency` rows older than 1h
|
|
22
|
-
* so
|
|
23
|
-
* bounded avoids unbounded growth on a long-lived coordinator.
|
|
19
|
+
* Prune `request_idempotency` rows older than 1h: the request budget is ~10s,
|
|
20
|
+
* so no claimed requestId is re-sent after an hour, and the table stays bounded.
|
|
24
21
|
*
|
|
25
22
|
* @returns the number of rows deleted.
|
|
26
23
|
*/
|
|
@@ -5,15 +5,14 @@ export declare function isCrossRepoGlobalRun(originalRun: OriginalRunRow): boole
|
|
|
5
5
|
* Re-run an organization-wide run against the commits it recorded: the source
|
|
6
6
|
* repository at `sha`, and the workflow repository at `workflow_sha`.
|
|
7
7
|
*
|
|
8
|
-
* The workflow is read
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* credentials apply exactly as they did.
|
|
8
|
+
* The workflow is read through the workflow repository's registration (provider
|
|
9
|
+
* bundle and context) from its lock file at the recorded commit, never from the
|
|
10
|
+
* registration's current lock entry. It dispatches through the first-run global
|
|
11
|
+
* pipeline, so contexts, holds, approval gates and the workflow repository's
|
|
12
|
+
* credentials apply as they did.
|
|
14
13
|
*
|
|
15
14
|
* Refuses, naming the workflow repository, when the run recorded no workflow
|
|
16
|
-
* commit or the workflow is no longer registered there
|
|
15
|
+
* commit or the workflow is no longer registered there; nothing falls back to a
|
|
17
16
|
* current lock file.
|
|
18
17
|
*/
|
|
19
18
|
export declare function rerunCrossRepoGlobalRun(opts: {
|
|
@@ -11,9 +11,8 @@ import type { TrustPolicyOutcome } from '../security/trust-policy-gate.js';
|
|
|
11
11
|
import type { WebhookInfo } from '../webhook/handler.js';
|
|
12
12
|
import type { OriginalRunRow, RerunDeps } from './rerun.js';
|
|
13
13
|
/**
|
|
14
|
-
* Load the original webhook payload from object storage.
|
|
15
|
-
*
|
|
16
|
-
* cannot be parsed.
|
|
14
|
+
* Load the original webhook payload from object storage. Null for cron/schedule
|
|
15
|
+
* runs (none stored) or an unparseable payload.
|
|
17
16
|
*/
|
|
18
17
|
export declare function loadWebhookPayload(originalRunId: string, deps: Pick<RerunDeps, 'logStorage'>): Promise<Record<string, unknown> | null>;
|
|
19
18
|
/** The provider bundle + context a re-run resolves out of the original run's row. */
|
|
@@ -23,41 +22,33 @@ export interface RerunProviderBinding {
|
|
|
23
22
|
routingKey: string;
|
|
24
23
|
}
|
|
25
24
|
/**
|
|
26
|
-
* Resolve the provider bundle and stored provider context for a run
|
|
27
|
-
* re-
|
|
28
|
-
*
|
|
29
|
-
* Shared by the workflow re-run and the evaluation-round re-run so the two
|
|
30
|
-
* cannot disagree about which source a run belongs to, or about how its
|
|
31
|
-
* `provider_context` column is parsed.
|
|
25
|
+
* Resolve the provider bundle and stored provider context for a re-run. Shared
|
|
26
|
+
* by the workflow and evaluation-round re-runs so they cannot disagree about a
|
|
27
|
+
* run's source or how `provider_context` is parsed.
|
|
32
28
|
*/
|
|
33
29
|
export declare function resolveRerunProviderBinding(originalRun: OriginalRunRow, deps: Pick<RerunDeps, 'providerRegistry'>): RerunProviderBinding;
|
|
34
30
|
/** How a refusal to rebuild a re-run's inputs names the run and the way forward. */
|
|
35
31
|
export interface RerunRefusal {
|
|
36
|
-
/**
|
|
32
|
+
/** `Cannot re-run …`. */
|
|
37
33
|
subject: string;
|
|
38
|
-
/**
|
|
34
|
+
/** `was deciding` for a round, `ran for` for a run. */
|
|
39
35
|
eventVerb: string;
|
|
40
|
-
/** What the caller can do instead. */
|
|
41
36
|
remedy: string;
|
|
42
37
|
}
|
|
43
|
-
/** The refusal wording for a global evaluation round. */
|
|
44
38
|
export declare function roundRefusal(originalRun: OriginalRunRow): RerunRefusal;
|
|
45
39
|
/**
|
|
46
40
|
* The provider event name + action the original delivery carried.
|
|
47
41
|
*
|
|
48
|
-
* `execution_runs`
|
|
49
|
-
*
|
|
50
|
-
*
|
|
51
|
-
*
|
|
52
|
-
* the delivery, after the round's failure is recorded, so it is present for
|
|
53
|
-
* every re-run an operator can actually reach.
|
|
42
|
+
* Neither `execution_runs` nor the stored payload has it (the event name is a
|
|
43
|
+
* provider header); it lives in the delivery's `event_log` row, addressed by
|
|
44
|
+
* the run row's delivery id. That row is written at the end of the delivery,
|
|
45
|
+
* after the round's failure is recorded, so every reachable re-run has it.
|
|
54
46
|
*
|
|
55
|
-
* Addressed by `(org_id, delivery_id)` — the table's
|
|
56
|
-
*
|
|
57
|
-
*
|
|
58
|
-
*
|
|
59
|
-
*
|
|
60
|
-
* the row it picked would not even be stable.
|
|
47
|
+
* Addressed by `(org_id, delivery_id)` — the table's uniqueness — never by
|
|
48
|
+
* delivery id alone: a generic source takes it verbatim from a sender-supplied
|
|
49
|
+
* header, so one tenant can reuse another's id, and an id-only lookup would
|
|
50
|
+
* re-evaluate one org's globals against another org's event (and pick an
|
|
51
|
+
* unstable row, with no `ORDER BY`).
|
|
61
52
|
*/
|
|
62
53
|
export declare function loadDeliveryEventName(originalRun: OriginalRunRow, deps: Pick<RerunDeps, 'db'>, refusal?: RerunRefusal): Promise<{
|
|
63
54
|
event: string;
|
|
@@ -66,12 +57,10 @@ export declare function loadDeliveryEventName(originalRun: OriginalRunRow, deps:
|
|
|
66
57
|
/** The verdict an approved security hold stands for. */
|
|
67
58
|
export declare const RELEASED_DECISION: TrustPolicyOutcome;
|
|
68
59
|
/**
|
|
69
|
-
* The normalized
|
|
70
|
-
*
|
|
71
|
-
*
|
|
72
|
-
*
|
|
73
|
-
* Read-only, and it throws — so it runs before the requestId claim, never
|
|
74
|
-
* inside the re-evaluation.
|
|
60
|
+
* The normalized delivery the round was deciding, stamped with the default
|
|
61
|
+
* branch as the delivery stamped it: a re-run's jobs carry this event, and an
|
|
62
|
+
* agent derives a new-branch diff from it. Read-only and throwing, so it runs
|
|
63
|
+
* before the requestId claim, never inside the re-evaluation.
|
|
75
64
|
*/
|
|
76
65
|
export declare function normalizeRoundEvent(originalRun: OriginalRunRow, providerBundle: NonNullable<ReturnType<ProviderRegistry['getByRoutingKey']>>, delivery: {
|
|
77
66
|
event: string;
|
|
@@ -79,12 +68,9 @@ export declare function normalizeRoundEvent(originalRun: OriginalRunRow, provide
|
|
|
79
68
|
}, payload: Record<string, unknown>, refusal?: RerunRefusal): SimulatedEvent;
|
|
80
69
|
/**
|
|
81
70
|
* Stamp the re-evaluated event with the source repository's default branch and
|
|
82
|
-
* changed files.
|
|
83
|
-
*
|
|
84
|
-
*
|
|
85
|
-
* the source repo's lock file uses path patterns, and a scoped re-evaluation
|
|
86
|
-
* has no such lock file to bound it. A bundle with no fetcher, or a fetch
|
|
87
|
-
* error, carries `unavailable`.
|
|
71
|
+
* changed files. Unconditional, unlike the delivery path: a scoped
|
|
72
|
+
* re-evaluation has no source lock file to tell whether path patterns are
|
|
73
|
+
* used. No fetcher, or a fetch error, carries `unavailable`.
|
|
88
74
|
*/
|
|
89
75
|
export declare function withChangedFiles(opts: {
|
|
90
76
|
event: SimulatedEvent;
|
package/dist/pipeline/rerun.d.ts
CHANGED
|
@@ -1,13 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Re-run handler
|
|
2
|
+
* Re-run handler: loads a completed run and its stored webhook payload,
|
|
3
|
+
* re-fetches the lock file at the original SHA, and dispatches a new run
|
|
4
|
+
* linked by parent_run_id.
|
|
3
5
|
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* dispatches a new run with parent_run_id linkage.
|
|
7
|
-
*
|
|
8
|
-
* This is NOT a reuse of processWebhook -- it's a separate, simpler function
|
|
9
|
-
* that skips dedup, normalization, trigger matching, and changed files fetching.
|
|
10
|
-
* It goes directly to: lock file parse -> job expansion -> dispatch.
|
|
6
|
+
* Deliberately not processWebhook: it skips dedup, normalization, trigger
|
|
7
|
+
* matching and the changed-files fetch (lock file -> job expansion -> dispatch).
|
|
11
8
|
*/
|
|
12
9
|
import { type ColdStore } from '@kici-dev/shared';
|
|
13
10
|
import type { Kysely, Selectable } from 'kysely';
|
|
@@ -29,13 +26,10 @@ import type { DepCache } from '../cache/index.js';
|
|
|
29
26
|
import type { PendingBuildTracker } from '../cache/index.js';
|
|
30
27
|
import type { ProcessingDeps } from './processor.js';
|
|
31
28
|
/**
|
|
32
|
-
* Thrown when
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
* The WS dashboard handler maps this to a structured response that the
|
|
38
|
-
* Platform proxy surfaces as HTTP 410 (`errorCode: 'runArchivedNotRerunnable'`).
|
|
29
|
+
* Thrown when the run row is absent from PG AND the cold-store replay failed or
|
|
30
|
+
* is unavailable (chunk missing, contentHash mismatch, S3 outage, or cold-store
|
|
31
|
+
* probe disabled). The Platform proxy surfaces it as HTTP 410
|
|
32
|
+
* (`errorCode: 'runArchivedNotRerunnable'`).
|
|
39
33
|
*/
|
|
40
34
|
export declare class RunArchivedNotRerunnableError extends Error {
|
|
41
35
|
readonly runId: string;
|
|
@@ -60,71 +54,54 @@ export interface RerunDeps {
|
|
|
60
54
|
buildCoordinator: BuildCoordinator | null;
|
|
61
55
|
pendingBuilds: PendingBuildTracker | null;
|
|
62
56
|
/**
|
|
63
|
-
* When set, a PG miss on `originalRunId`
|
|
64
|
-
*
|
|
65
|
-
* RunArchivedNotRerunnableError on PG miss" path for deployments without
|
|
66
|
-
* cold-store wired up.
|
|
57
|
+
* When set, a PG miss on `originalRunId` replays the row's chunk from cold
|
|
58
|
+
* store and re-reads; `null` throws RunArchivedNotRerunnableError on a miss.
|
|
67
59
|
*/
|
|
68
60
|
coldStore: ColdStore | null;
|
|
69
61
|
/**
|
|
70
|
-
* The live webhook-processing bag, assembled on demand.
|
|
71
|
-
*
|
|
72
|
-
*
|
|
73
|
-
*
|
|
74
|
-
*
|
|
75
|
-
* the pending-eval tracker). Supplied by the entry point that already
|
|
76
|
-
* assembles the bag for the inbound webhook path, so the two cannot drift.
|
|
77
|
-
* Absent means round re-runs are not available on this deployment.
|
|
62
|
+
* The live webhook-processing bag, assembled on demand. Only a failed global
|
|
63
|
+
* eval round's re-run needs it (it re-drives the organization-wide pass, which
|
|
64
|
+
* reaches the registration index, policy reader and pending-eval tracker). The
|
|
65
|
+
* inbound webhook entry point supplies it, so the two cannot drift. Absent
|
|
66
|
+
* means round re-runs are not available on this deployment.
|
|
78
67
|
*/
|
|
79
68
|
processingDeps?: (() => ProcessingDeps) | null;
|
|
80
69
|
}
|
|
81
|
-
/**
|
|
82
|
-
* Original run row from execution_runs (selectAll).
|
|
83
|
-
* Aliased to the Kysely Selectable so all column names stay typed
|
|
84
|
-
* as the underlying schema.
|
|
85
|
-
*/
|
|
70
|
+
/** Original run row from execution_runs (selectAll). */
|
|
86
71
|
export type OriginalRunRow = Selectable<ExecutionRunTable>;
|
|
87
72
|
export declare function handleRerun(originalRunId: string, triggeredBy: string | null, triggeredByAgentLabel: string | null, deps: RerunDeps,
|
|
88
73
|
/**
|
|
89
|
-
* Platform-minted
|
|
90
|
-
*
|
|
91
|
-
*
|
|
92
|
-
*
|
|
93
|
-
* a failover re-send returns that same run instead of minting a second one.
|
|
74
|
+
* Platform-minted idempotency key, stable across an HA relay failover re-send
|
|
75
|
+
* (the Platform re-sends the same message verbatim to a sibling coordinator on
|
|
76
|
+
* a timeout). After read-only validation, the first coordinator to claim it
|
|
77
|
+
* creates the run; a re-send returns that same run.
|
|
94
78
|
*/
|
|
95
79
|
requestId: string,
|
|
96
80
|
/**
|
|
97
|
-
*
|
|
98
|
-
*
|
|
99
|
-
* under the right tenant prefix.
|
|
81
|
+
* Forwarded by the Platform in `run.rerun.request`; addresses the cold-store
|
|
82
|
+
* chunk under the right tenant prefix.
|
|
100
83
|
*/
|
|
101
84
|
routingKeyHint?: string): Promise<{
|
|
102
85
|
newRunId: string;
|
|
103
86
|
}>;
|
|
104
87
|
/**
|
|
105
|
-
* Settle every detached re-evaluation started so far.
|
|
106
|
-
*
|
|
107
|
-
*
|
|
108
|
-
* precisely so no request waits on it. It exists so a caller that needs the
|
|
109
|
-
* work to have finished (a test asserting on the pass) can wait for it
|
|
110
|
-
* deterministically instead of racing the microtask queue.
|
|
88
|
+
* Settle every detached re-evaluation started so far. A running orchestrator
|
|
89
|
+
* never calls it; it lets a caller such as a test wait deterministically
|
|
90
|
+
* instead of racing the microtask queue.
|
|
111
91
|
*/
|
|
112
92
|
export declare function settlePendingRoundReevaluations(): Promise<void>;
|
|
113
93
|
/**
|
|
114
|
-
* Release a held global evaluation round: re-evaluate
|
|
115
|
-
*
|
|
116
|
-
*
|
|
94
|
+
* Release a held global evaluation round: re-evaluate it from the stored payload
|
|
95
|
+
* with the approved event treated as passing, dispatch what it admits, and
|
|
96
|
+
* settle the held run.
|
|
117
97
|
*
|
|
118
|
-
* Reached from
|
|
119
|
-
*
|
|
120
|
-
*
|
|
121
|
-
* event log entry — the same reconstruction a re-run of a failed round uses —
|
|
122
|
-
* so the release does not depend on how a workflow dispatch context would be
|
|
123
|
-
* replayed.
|
|
98
|
+
* Reached from `resumeWorkflow`. The held row stores no dispatch context, so
|
|
99
|
+
* everything is rebuilt from the row, the payload and the delivery's event log
|
|
100
|
+
* entry — the same reconstruction a failed round's re-run uses.
|
|
124
101
|
*
|
|
125
102
|
* Never throws. A round that cannot be rebuilt or decided fails the held run
|
|
126
|
-
* with the reason
|
|
127
|
-
*
|
|
103
|
+
* with the reason an approver reads. A release that cannot claim the held row
|
|
104
|
+
* (another release did) does nothing.
|
|
128
105
|
*/
|
|
129
106
|
export declare function releaseHeldGlobalEvalRound(runId: string, deps: ProcessingDeps): Promise<void>;
|
|
130
107
|
//# sourceMappingURL=rerun.d.ts.map
|
|
@@ -5,10 +5,7 @@ export interface SandboxRequest {
|
|
|
5
5
|
capabilities?: string[];
|
|
6
6
|
network?: SandboxNetworkMode;
|
|
7
7
|
}
|
|
8
|
-
/**
|
|
9
|
-
* The resolution outcome: either an authorized grant (possibly `undefined` when
|
|
10
|
-
* the request is a no-op / non-escalating) or a total, loud denial.
|
|
11
|
-
*/
|
|
8
|
+
/** An authorized grant (`undefined` for a no-op / non-escalating request) or a total denial. */
|
|
12
9
|
export type SandboxGrantResolution = {
|
|
13
10
|
grant?: ResolvedSandboxGrant;
|
|
14
11
|
} | {
|
|
@@ -17,12 +14,10 @@ export type SandboxGrantResolution = {
|
|
|
17
14
|
};
|
|
18
15
|
};
|
|
19
16
|
/**
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
* stripped and run anyway. Pure (no I/O), so the allow-list is injected and the
|
|
25
|
-
* function is exhaustively unit-testable.
|
|
17
|
+
* The single enforcement point of a sandbox request against the operator's
|
|
18
|
+
* allow-list. Deny is loud and total: any capability or host-network not
|
|
19
|
+
* allow-listed fails the run with a reason naming it; a disallowed cap is never
|
|
20
|
+
* silently stripped and run anyway. Pure: the allow-list is injected.
|
|
26
21
|
*/
|
|
27
22
|
export declare function resolveSandboxGrant(request: SandboxRequest | undefined, allowList: SandboxAllowList): SandboxGrantResolution;
|
|
28
23
|
//# sourceMappingURL=resolve-sandbox-grant.d.ts.map
|
|
@@ -25,25 +25,22 @@ export type RebuiltWorkflowDispatchContext = Omit<WorkflowDispatchContext, 'glob
|
|
|
25
25
|
global?: UnmintedGlobalIdentity;
|
|
26
26
|
};
|
|
27
27
|
/**
|
|
28
|
-
* Rebuild a
|
|
29
|
-
*
|
|
30
|
-
* provider
|
|
31
|
-
* Returns null when the provider bundle can no longer be resolved.
|
|
28
|
+
* Rebuild a dispatch context from the persisted inputs, re-attaching the live
|
|
29
|
+
* `deps` and the provider `bundle` from the live registry. Returns null when
|
|
30
|
+
* the provider bundle, or a global run's workflow bundle, no longer resolves.
|
|
32
31
|
*
|
|
33
|
-
* A global run's identity
|
|
34
|
-
*
|
|
35
|
-
*
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
* them. Returns null when the workflow bundle can no longer be resolved either.
|
|
32
|
+
* A global run's identity comes from what was stored at hold time (workflow
|
|
33
|
+
* commit, branch, provider context), never from the live registration, which
|
|
34
|
+
* may have moved on while the run waited. Its workflow bundle is looked up by
|
|
35
|
+
* the stored workflow routing key, and it has no credentials until
|
|
36
|
+
* {@link withWorkflowRepoCredentials} mints them.
|
|
39
37
|
*
|
|
40
|
-
* The
|
|
41
|
-
*
|
|
42
|
-
* `
|
|
43
|
-
*
|
|
44
|
-
*
|
|
45
|
-
*
|
|
46
|
-
* app, the wrong credentials, and a check poster writing to the wrong place.
|
|
38
|
+
* The bundle key is `effectiveRoutingKey ?? info.routingKey` — the post-overlay
|
|
39
|
+
* key `setupDispatchContext` builds `setup.info` from and the run row records.
|
|
40
|
+
* `info.routingKey` is the INBOUND key and never carries the overlay, so on a
|
|
41
|
+
* cross-source or fallback-resolved dispatch it names the source the event
|
|
42
|
+
* arrived on: the resumed run would get the wrong app, the wrong credentials,
|
|
43
|
+
* and a check poster writing to the wrong place.
|
|
47
44
|
*/
|
|
48
45
|
export declare function rebuildWorkflowDispatchContext(inputs: SerializableWorkflowDispatchInputs, deps: ProcessingDeps): RebuiltWorkflowDispatchContext | null;
|
|
49
46
|
/**
|
|
@@ -64,28 +61,25 @@ export declare function resumeWorkflow(signal: ReleaseSignal, deps: ProcessingDe
|
|
|
64
61
|
* the run cancelled, complete the check runs the dispatch already posted, and
|
|
65
62
|
* drop the pending context.
|
|
66
63
|
*
|
|
67
|
-
* The check runs
|
|
68
|
-
*
|
|
69
|
-
*
|
|
70
|
-
*
|
|
71
|
-
* It runs before the delete because the pending context is what the check-run
|
|
72
|
-
* names are derived from.
|
|
64
|
+
* The check runs complete `cancelled`, matching the run row `cancelHeldRun`
|
|
65
|
+
* writes (status and failure class `cancelled`); otherwise they stay `queued`
|
|
66
|
+
* for a run that never starts (see `completeUndispatchedHoldChecks`). This runs
|
|
67
|
+
* before the delete because the check-run names derive from the pending context.
|
|
73
68
|
*
|
|
74
69
|
* The hold row decides whether the `KiCI Security` check is terminalized too:
|
|
75
70
|
* the trust policy's PR-wide hold and the SDK's workflow-level `requireApproval`
|
|
76
71
|
* each posted one pending, while the install gate posted none and must not have
|
|
77
|
-
* one fabricated.
|
|
78
|
-
*
|
|
72
|
+
* one fabricated. See `postedPendingSecurityCheck` for the per-shape derivation
|
|
73
|
+
* and why `queue_type` cannot make the distinction.
|
|
79
74
|
*
|
|
80
|
-
* This is the single writer of that check for a rejection
|
|
81
|
-
*
|
|
82
|
-
*
|
|
83
|
-
*
|
|
84
|
-
*
|
|
85
|
-
*
|
|
86
|
-
*
|
|
87
|
-
*
|
|
88
|
-
* holds are still pending) leaves the caller free to decide for itself.
|
|
75
|
+
* This is the single writer of that check for a rejection on both surfaces: the
|
|
76
|
+
* dashboard / CLI / MCP reject (via `applyDecision`'s `onWorkflowReject`) and
|
|
77
|
+
* `/kici reject` (via the comment handler's), so both render identically and
|
|
78
|
+
* both check families carry the summary below. The returned boolean says whether
|
|
79
|
+
* a security check was actually WRITTEN, so a caller suppresses its own post on
|
|
80
|
+
* a write rather than on a delegate resolving; a rejection this declines to
|
|
81
|
+
* report (an install gate, or a commit whose other holds are still pending)
|
|
82
|
+
* leaves the caller free to decide.
|
|
89
83
|
*/
|
|
90
84
|
export declare function rejectWorkflow(hold: SecurityCheckHold, deps: ProcessingDeps, db: Kysely<Database> | undefined, reason: string, opts?: {
|
|
91
85
|
runHeld?: boolean;
|
|
@@ -1,13 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Shared coordinator-route / direct-dispatch machinery for
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* (`manual-schedule.ts`) both materialize a workflow's static jobs, try to
|
|
7
|
-
* route them through the cluster coordinator (local dispatch first, then
|
|
8
|
-
* reroute to peers), fall back to direct local dispatch in standalone mode or
|
|
9
|
-
* on a coordinator timeout, and synthesize records for rejected jobs. This
|
|
10
|
-
* module implements that once so a fix lands in a single place.
|
|
2
|
+
* Shared coordinator-route / direct-dispatch machinery for `rerun.ts` and
|
|
3
|
+
* `manual-schedule.ts`: materialize static jobs, route through the cluster
|
|
4
|
+
* coordinator (local first, then peers), fall back to direct local dispatch in
|
|
5
|
+
* standalone mode or on a coordinator timeout, and synthesize rejected records.
|
|
11
6
|
*/
|
|
12
7
|
import { createLogger } from '@kici-dev/shared';
|
|
13
8
|
import type { LockJob, MaterializedJob } from '@kici-dev/engine';
|
|
@@ -21,24 +16,22 @@ export interface DispatchedJobEntry {
|
|
|
21
16
|
matrixValues?: Record<string, unknown>;
|
|
22
17
|
runsOnLabels?: string[];
|
|
23
18
|
/**
|
|
24
|
-
*
|
|
25
|
-
* `execution_jobs.base_job_name
|
|
26
|
-
*
|
|
19
|
+
* Unexpanded job name of a materialized child, persisted to
|
|
20
|
+
* `execution_jobs.base_job_name`: the rolling-wave scheduler groups a wave by it,
|
|
21
|
+
* and a NULL makes the wave gate bail.
|
|
27
22
|
*/
|
|
28
23
|
baseJobName?: string;
|
|
29
24
|
/**
|
|
30
|
-
* `gate` marks an invoke-gate row (
|
|
31
|
-
*
|
|
32
|
-
* row and carries its kind through to `execution_jobs.job_kind`.
|
|
25
|
+
* `gate` marks an invoke-gate row (gate executor, never an agent). The
|
|
26
|
+
* global-workflow dispatch path carries it to `execution_jobs.job_kind`.
|
|
33
27
|
*/
|
|
34
28
|
jobKind?: JobKind;
|
|
35
29
|
/** For a gate job, its wall-clock timeout in ms (orchestrator-swept). */
|
|
36
30
|
timeoutMs?: number;
|
|
37
31
|
/**
|
|
38
|
-
* The
|
|
39
|
-
*
|
|
40
|
-
*
|
|
41
|
-
* every declared credential on a job this path registered.
|
|
32
|
+
* The lock entry's `gitCredentials`, verbatim, persisted to
|
|
33
|
+
* `execution_jobs.git_credentials`; the credential relay authorizes against it,
|
|
34
|
+
* so dropping it refuses every declared credential.
|
|
42
35
|
*/
|
|
43
36
|
gitCredentials?: Readonly<Record<string, Readonly<Record<string, string>>>>;
|
|
44
37
|
}
|
|
@@ -48,7 +41,7 @@ export interface RejectedJobEntry {
|
|
|
48
41
|
}
|
|
49
42
|
export interface RouteOrDispatchOptions {
|
|
50
43
|
newRunId: string;
|
|
51
|
-
/**
|
|
44
|
+
/** Unmaterialized; the helper materializes and handles FanoutError. */
|
|
52
45
|
staticJobs: LockJob[];
|
|
53
46
|
workflowName: string;
|
|
54
47
|
repoUrl: string;
|
|
@@ -62,18 +55,17 @@ export interface RouteOrDispatchOptions {
|
|
|
62
55
|
runContext: RunContext;
|
|
63
56
|
/** Per-caller jobConfig shape (schedule dispatchInputs vs. rerun source fallback). */
|
|
64
57
|
buildJobConfig: (mat: MaterializedJob) => Record<string, unknown>;
|
|
65
|
-
/**
|
|
58
|
+
/** Keeps the caller's log prefix ('manual-schedule' / 'rerun'). */
|
|
66
59
|
logger: ReturnType<typeof createLogger>;
|
|
67
|
-
/**
|
|
60
|
+
/** Log label: 'Manual schedule' | 'Re-run'. */
|
|
68
61
|
label: string;
|
|
69
62
|
coordinator: RunCoordinator | null;
|
|
70
63
|
dispatcher: Dispatcher;
|
|
71
64
|
}
|
|
72
65
|
/**
|
|
73
|
-
* Materialize
|
|
74
|
-
*
|
|
75
|
-
*
|
|
76
|
-
* with the execution tracker plus any synthetic-rejected IDs to mark failed.
|
|
66
|
+
* Materialize (degrading on a matrix that can no longer expand), then route via
|
|
67
|
+
* the coordinator or dispatch directly. Returns jobs to register plus
|
|
68
|
+
* synthetic-rejected IDs to mark failed.
|
|
77
69
|
*/
|
|
78
70
|
export declare function routeOrDispatchJobs(opts: RouteOrDispatchOptions): Promise<{
|
|
79
71
|
dispatchedJobs: DispatchedJobEntry[];
|
|
@@ -85,9 +77,6 @@ export interface RegisterDispatchedJobsOptions {
|
|
|
85
77
|
rejectedJobs: RejectedJobEntry[];
|
|
86
78
|
executionTracker: ExecutionTracker;
|
|
87
79
|
}
|
|
88
|
-
/**
|
|
89
|
-
* Register dispatched jobs with the execution tracker, then mark any
|
|
90
|
-
* synthetic-rejected jobs failed. No-op when nothing was dispatched.
|
|
91
|
-
*/
|
|
80
|
+
/** Register dispatched jobs, then fail synthetic-rejected ones. No-op when none dispatched. */
|
|
92
81
|
export declare function registerDispatchedJobs(opts: RegisterDispatchedJobsOptions): Promise<void>;
|
|
93
82
|
//# sourceMappingURL=route-or-dispatch-jobs.d.ts.map
|
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Resolve the pull-request head context an `execution_runs` row records.
|
|
3
3
|
*
|
|
4
|
-
* `execution_runs.ref` is the branch a run PRESENTS
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* same base branch mint an identical identity.
|
|
4
|
+
* `execution_runs.ref` is the branch a run PRESENTS (the BASE branch for a pull
|
|
5
|
+
* request), saying nothing about where the code came from. The OIDC mint reads
|
|
6
|
+
* these fields: without them a fork pull request and a trusted push to the same
|
|
7
|
+
* base branch mint an identical identity.
|
|
9
8
|
*/
|
|
10
9
|
import { type SimulatedEvent } from '@kici-dev/engine';
|
|
11
10
|
export interface RunEventContext {
|
|
@@ -16,24 +15,20 @@ export interface RunEventContext {
|
|
|
16
15
|
/**
|
|
17
16
|
* Derive the head context from a normalized event.
|
|
18
17
|
*
|
|
19
|
-
* `isFork`
|
|
20
|
-
*
|
|
21
|
-
*
|
|
22
|
-
*
|
|
23
|
-
*
|
|
24
|
-
* the claim exists to close.
|
|
18
|
+
* `isFork` follows the event TYPE, not the optional flag's presence: a push, tag
|
|
19
|
+
* or schedule has no fork dimension, so `false` is its true value. Leaving it
|
|
20
|
+
* unresolved would make every `is_fork = 'false'` cloud trust policy reject
|
|
21
|
+
* legitimate pushes, and the customer's fix (also accepting `'unresolved'`)
|
|
22
|
+
* would re-open the hole the claim closes.
|
|
25
23
|
*
|
|
26
|
-
* NULL survives for
|
|
27
|
-
*
|
|
28
|
-
*
|
|
29
|
-
* policy that pins them therefore fails closed.
|
|
24
|
+
* NULL survives only for a PR-family event whose payload has no head
|
|
25
|
+
* repository. A lost write leaves all three NULL, which every claim renders as
|
|
26
|
+
* unresolved, so a policy pinning them fails closed.
|
|
30
27
|
*
|
|
31
|
-
* The head repository
|
|
32
|
-
*
|
|
33
|
-
*
|
|
34
|
-
*
|
|
35
|
-
* `is_fork = 'false'` for a pull request nobody resolved, which is the fail-OPEN
|
|
36
|
-
* direction this claim exists to remove.
|
|
28
|
+
* The head repository decides that case, NOT the `isForkPR` flag: normalizers
|
|
29
|
+
* derive it as `head !== base`, which collapses to `false` with no head
|
|
30
|
+
* repository (a deleted fork, a trimmed payload), and would publish
|
|
31
|
+
* `is_fork = 'false'` unresolved — the fail-OPEN direction.
|
|
37
32
|
*/
|
|
38
33
|
export declare function resolveRunEventContext(event: Pick<SimulatedEvent, 'type' | 'sourceBranch' | 'headRepo' | 'isForkPR'>): RunEventContext;
|
|
39
34
|
//# sourceMappingURL=run-event-context.d.ts.map
|