@kici-dev/orchestrator 0.17.0 → 0.19.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.
Files changed (592) hide show
  1. package/dist/agent/agent-version.d.ts +12 -21
  2. package/dist/agent/dispatcher.d.ts +283 -437
  3. package/dist/agent/host-roster-reaper.d.ts +8 -10
  4. package/dist/agent/host-roster.d.ts +77 -100
  5. package/dist/agent/ownership-refusal.d.ts +3 -5
  6. package/dist/agent/ownership-tracker.d.ts +42 -76
  7. package/dist/agent/registry.d.ts +137 -230
  8. package/dist/agent/token-store.d.ts +34 -77
  9. package/dist/agent-packaging/availability.d.ts +6 -9
  10. package/dist/agent-packaging/download.d.ts +6 -9
  11. package/dist/agent-packaging/install-closure.d.ts +9 -12
  12. package/dist/agent-packaging/node-binary.d.ts +6 -10
  13. package/dist/agent-packaging/node-runtime-members.d.ts +3 -5
  14. package/dist/agent-packaging/refresh.d.ts +12 -16
  15. package/dist/agent-packaging/store.d.ts +5 -6
  16. package/dist/agent-packaging/upload.d.ts +3 -4
  17. package/dist/app.d.ts +0 -3
  18. package/dist/approvals/apply-decision.d.ts +35 -52
  19. package/dist/approvals/approval-resolver.d.ts +11 -23
  20. package/dist/approvals/held-run-release-wiring.d.ts +14 -21
  21. package/dist/approvals/independent-wiring.d.ts +13 -20
  22. package/dist/approvals/resume-router.d.ts +1 -1
  23. package/dist/approvals/step-approval-bridge.d.ts +11 -21
  24. package/dist/approvals/triggerer-subject.d.ts +8 -10
  25. package/dist/artifacts/artifact-store.d.ts +55 -95
  26. package/dist/artifacts/failure-messages.d.ts +15 -20
  27. package/dist/audit/access-log.d.ts +27 -45
  28. package/dist/audit/sampling-rate-limiter.d.ts +11 -23
  29. package/dist/cache/agent-job-failed-error.d.ts +2 -3
  30. package/dist/cache/build-coordinator.d.ts +5 -28
  31. package/dist/cache/cache-upload-settle.d.ts +11 -11
  32. package/dist/cache/dep-cache.d.ts +32 -60
  33. package/dist/cache/dispatch-cache-ref-tracker.d.ts +15 -23
  34. package/dist/cache/global-eval-round-cache.d.ts +33 -41
  35. package/dist/cache/pending-builds.d.ts +2 -6
  36. package/dist/cache/pending-dynamics.d.ts +2 -7
  37. package/dist/cache/pending-global-evals.d.ts +9 -12
  38. package/dist/cache/pending-inits.d.ts +11 -22
  39. package/dist/cache/pending-precursor-db-watcher.d.ts +24 -32
  40. package/dist/cache/pending-tracker.d.ts +17 -45
  41. package/dist/cache/precursor-result.d.ts +17 -30
  42. package/dist/cache/source-cache.d.ts +36 -65
  43. package/dist/cache/user-cache.d.ts +21 -25
  44. package/dist/cancel/cancel-held-run.d.ts +13 -16
  45. package/dist/cancel/cancel-route-answer.d.ts +1 -2
  46. package/dist/cancel/cancel-run.d.ts +26 -50
  47. package/dist/cancel/dashboard-cancel-handler.d.ts +2 -2
  48. package/dist/cancel/peer-job-cancel.d.ts +11 -14
  49. package/dist/cancel/sweep-stuck-cancelling.d.ts +9 -13
  50. package/dist/cli/api-client.d.ts +25 -76
  51. package/dist/cli/commands/access-log.d.ts +4 -24
  52. package/dist/cli/commands/agent-package.d.ts +7 -15
  53. package/dist/cli/commands/agent-service/agent-env.d.ts +3 -6
  54. package/dist/cli/commands/agent-service/index.d.ts +4 -10
  55. package/dist/cli/commands/agent-service/install.d.ts +4 -11
  56. package/dist/cli/commands/agent-service/status.d.ts +4 -9
  57. package/dist/cli/commands/agent-service/upgrade.d.ts +4 -16
  58. package/dist/cli/commands/agent.d.ts +12 -25
  59. package/dist/cli/commands/api-key.d.ts +5 -12
  60. package/dist/cli/commands/attestations-list.d.ts +7 -17
  61. package/dist/cli/commands/attestations-retry.d.ts +5 -11
  62. package/dist/cli/commands/attestations-reverify.d.ts +4 -5
  63. package/dist/cli/commands/attestations.d.ts +3 -8
  64. package/dist/cli/commands/audit.d.ts +1 -5
  65. package/dist/cli/commands/backend.d.ts +2 -11
  66. package/dist/cli/commands/check-run.d.ts +7 -18
  67. package/dist/cli/commands/cluster-name.d.ts +5 -12
  68. package/dist/cli/commands/cluster-settings.d.ts +28 -53
  69. package/dist/cli/commands/cold-store.d.ts +7 -15
  70. package/dist/cli/commands/config.d.ts +9 -20
  71. package/dist/cli/commands/context.d.ts +8 -20
  72. package/dist/cli/commands/dashboard-encryption-key.d.ts +9 -14
  73. package/dist/cli/commands/db-backup.d.ts +17 -32
  74. package/dist/cli/commands/db.d.ts +3 -4
  75. package/dist/cli/commands/debug-bundle.d.ts +3 -10
  76. package/dist/cli/commands/diagnose.d.ts +3 -14
  77. package/dist/cli/commands/event-dlq.d.ts +4 -12
  78. package/dist/cli/commands/event-log.d.ts +2 -20
  79. package/dist/cli/commands/execution.d.ts +3 -9
  80. package/dist/cli/commands/firecracker/index.d.ts +3 -6
  81. package/dist/cli/commands/held-run.d.ts +23 -37
  82. package/dist/cli/commands/host.d.ts +4 -11
  83. package/dist/cli/commands/inspect-bundle.d.ts +3 -11
  84. package/dist/cli/commands/local-hook.d.ts +2 -10
  85. package/dist/cli/commands/local-trigger.d.ts +2 -2
  86. package/dist/cli/commands/orchestrator-service/drain.d.ts +3 -6
  87. package/dist/cli/commands/orchestrator-service/index.d.ts +6 -14
  88. package/dist/cli/commands/orchestrator-service/install-env.d.ts +25 -49
  89. package/dist/cli/commands/orchestrator-service/install.d.ts +2 -5
  90. package/dist/cli/commands/orchestrator-service/status.d.ts +10 -22
  91. package/dist/cli/commands/orchestrator-service/upgrade.d.ts +6 -15
  92. package/dist/cli/commands/org-settings.d.ts +5 -11
  93. package/dist/cli/commands/peer.d.ts +5 -10
  94. package/dist/cli/commands/queue.d.ts +3 -9
  95. package/dist/cli/commands/registration.d.ts +4 -8
  96. package/dist/cli/commands/remote-source.d.ts +6 -12
  97. package/dist/cli/commands/rotate.d.ts +1 -5
  98. package/dist/cli/commands/runs.d.ts +1 -30
  99. package/dist/cli/commands/scaler.d.ts +5 -12
  100. package/dist/cli/commands/secret.d.ts +1 -9
  101. package/dist/cli/commands/service-health.d.ts +5 -10
  102. package/dist/cli/commands/shared/admin-cli-access-log.d.ts +10 -19
  103. package/dist/cli/commands/shared/bare-metal-binary-check.d.ts +86 -0
  104. package/dist/cli/commands/shared/cli-action.d.ts +1 -4
  105. package/dist/cli/commands/shared/confirm.d.ts +5 -10
  106. package/dist/cli/commands/shared/db.d.ts +1 -12
  107. package/dist/cli/commands/shared/env-file-mode.d.ts +6 -9
  108. package/dist/cli/commands/shared/secret-input.d.ts +7 -21
  109. package/dist/cli/commands/shared/service-verbs.d.ts +6 -12
  110. package/dist/cli/commands/shared/unbound-context-warning.d.ts +2 -4
  111. package/dist/cli/commands/shared/upgrade-hooks.d.ts +7 -16
  112. package/dist/cli/commands/shared/upgrade-safety.d.ts +20 -31
  113. package/dist/cli/commands/shared/versioned-upgrade.d.ts +83 -161
  114. package/dist/cli/commands/signing-key.d.ts +4 -9
  115. package/dist/cli/commands/source-manifest.d.ts +11 -14
  116. package/dist/cli/commands/source.d.ts +7 -32
  117. package/dist/cli/commands/token.d.ts +4 -15
  118. package/dist/cli/commands/trust-policy.d.ts +35 -88
  119. package/dist/cli/commands/variable.d.ts +3 -5
  120. package/dist/cli/commands/workflow.d.ts +3 -24
  121. package/dist/cli/join.d.ts +3 -6
  122. package/dist/cli/kici-admin.d.ts +11 -29
  123. package/dist/cli/lazy-deps/cache.d.ts +1 -14
  124. package/dist/cli/lazy-deps/downloader.d.ts +4 -27
  125. package/dist/cli/lazy-deps/registry.d.ts +5 -25
  126. package/dist/cli/local-github-ingress-url.d.ts +5 -7
  127. package/dist/cli/loopback-callback.d.ts +6 -7
  128. package/dist/cli/open-browser.d.ts +4 -8
  129. package/dist/cli/root-option-routing.d.ts +17 -29
  130. package/dist/cli/service/backup-timer.d.ts +16 -39
  131. package/dist/cli/service/compose-path.d.ts +3 -7
  132. package/dist/cli/service/compose.d.ts +12 -30
  133. package/dist/cli/service/deploy-env.d.ts +6 -18
  134. package/dist/cli/service/entrypoint.d.ts +14 -25
  135. package/dist/cli/service/env-assignment.d.ts +6 -17
  136. package/dist/cli/service/image-digests.d.ts +6 -15
  137. package/dist/cli/service/index.d.ts +2 -18
  138. package/dist/cli/service/instance/index-file.d.ts +9 -16
  139. package/dist/cli/service/instance/manifest.d.ts +60 -60
  140. package/dist/cli/service/instance/resolve.d.ts +32 -68
  141. package/dist/cli/service/instance/types.d.ts +12 -29
  142. package/dist/cli/service/launchd.d.ts +29 -60
  143. package/dist/cli/service/platform-detect.d.ts +13 -68
  144. package/dist/cli/service/privilege.d.ts +12 -25
  145. package/dist/cli/service/shutdown-grace.d.ts +11 -20
  146. package/dist/cli/service/systemd.d.ts +7 -20
  147. package/dist/cli/service/types.d.ts +63 -114
  148. package/dist/cli/service/windows-acl.d.ts +14 -21
  149. package/dist/cli/service/windows-env-file.d.ts +10 -28
  150. package/dist/cli/service/windows.d.ts +15 -31
  151. package/dist/cli/webhook-url-notes.d.ts +4 -6
  152. package/dist/cli/wizard/agent-wizard.d.ts +3 -14
  153. package/dist/cli/wizard/orchestrator-wizard.d.ts +12 -37
  154. package/dist/cli/wizard/prompts.d.ts +6 -16
  155. package/dist/cli.js +8207 -10128
  156. package/dist/cluster/cluster-identity.d.ts +20 -32
  157. package/dist/cluster/cluster-settings-reader.d.ts +50 -77
  158. package/dist/cluster/coordinator-credential.d.ts +4 -5
  159. package/dist/cluster/coordinator.d.ts +76 -148
  160. package/dist/cluster/health-api.d.ts +2 -10
  161. package/dist/cluster/index.d.ts +1 -6
  162. package/dist/cluster/instance-heartbeat.d.ts +26 -42
  163. package/dist/cluster/join-client.d.ts +4 -7
  164. package/dist/cluster/join-handler.d.ts +3 -7
  165. package/dist/cluster/join-token.d.ts +13 -27
  166. package/dist/cluster/leader-gated-scheduler.d.ts +8 -17
  167. package/dist/cluster/orphan-recovery.d.ts +13 -35
  168. package/dist/cluster/peer-auth-coordinator.d.ts +2 -8
  169. package/dist/cluster/peer-client.d.ts +46 -76
  170. package/dist/cluster/peer-credentials.d.ts +24 -70
  171. package/dist/cluster/peer-crypto.d.ts +5 -26
  172. package/dist/cluster/peer-forget.d.ts +3 -3
  173. package/dist/cluster/peer-handler.d.ts +47 -71
  174. package/dist/cluster/peer-registry.d.ts +37 -106
  175. package/dist/cluster/plan-headroom-store.d.ts +4 -6
  176. package/dist/cluster/raft-state.d.ts +4 -13
  177. package/dist/cluster/raft.d.ts +18 -53
  178. package/dist/cluster/reconcile-identity.d.ts +8 -11
  179. package/dist/cluster/rerouted-job-guard.d.ts +7 -11
  180. package/dist/cluster/verified-issuer.d.ts +2 -3
  181. package/dist/cluster/worker-cluster-settings.d.ts +7 -10
  182. package/dist/cluster/worker-eviction.d.ts +16 -26
  183. package/dist/cold-store/load-access-log-range.d.ts +15 -31
  184. package/dist/cold-store/load-event-log-range.d.ts +13 -27
  185. package/dist/cold-store/load-secret-audit-log-range.d.ts +8 -12
  186. package/dist/cold-store/orchestrator-cold-store.d.ts +8 -28
  187. package/dist/cold-store/tables/access-log.d.ts +12 -14
  188. package/dist/cold-store/tables/event-log.d.ts +4 -8
  189. package/dist/cold-store/tables/execution-runs.d.ts +6 -11
  190. package/dist/cold-store/tables/secret-audit-log.d.ts +5 -12
  191. package/dist/concurrency/dispatch-next-queued.d.ts +13 -25
  192. package/dist/concurrency/queue-manager.d.ts +22 -54
  193. package/dist/concurrency/waiters.d.ts +15 -31
  194. package/dist/config/encryption.d.ts +0 -2
  195. package/dist/config/loader.d.ts +0 -1
  196. package/dist/config/reload.d.ts +0 -6
  197. package/dist/config/resolver.d.ts +0 -4
  198. package/dist/config/shared-store.d.ts +0 -2
  199. package/dist/config/types.d.ts +0 -3
  200. package/dist/content-requirements-cache.d.ts +0 -1
  201. package/dist/contexts/context-store.d.ts +0 -2
  202. package/dist/contexts/held-runs.d.ts +0 -2
  203. package/dist/contexts/variable-store.d.ts +0 -2
  204. package/dist/dashboard/attestation-filters.d.ts +13 -18
  205. package/dist/dashboard/handler.d.ts +145 -307
  206. package/dist/db/client.d.ts +2 -6
  207. package/dist/db/deferred-index-build.d.ts +8 -10
  208. package/dist/db/deferred-indexes.d.ts +15 -22
  209. package/dist/db/migration-provider.d.ts +2 -4
  210. package/dist/db/migration-test-harness.d.ts +26 -44
  211. package/dist/db/migrations/001_initial.d.ts +1 -4
  212. package/dist/db/migrations/002_config_versions_key_version.d.ts +5 -8
  213. package/dist/db/migrations/003_access_log.d.ts +10 -15
  214. package/dist/db/migrations/004_rename_bundle_to_source.d.ts +7 -9
  215. package/dist/db/migrations/005_cold_store_chunk_counter.d.ts +4 -10
  216. package/dist/db/migrations/006_runs_jobs_steps_archived_at.d.ts +9 -29
  217. package/dist/db/migrations/007_audit_logs_archived_at.d.ts +11 -30
  218. package/dist/db/migrations/008_event_log_archived_at.d.ts +14 -29
  219. package/dist/db/migrations/009_access_log_trigram.d.ts +4 -8
  220. package/dist/db/migrations/010_cold_store_chunks.d.ts +16 -26
  221. package/dist/db/migrations/011_drop_source_secrets_notify.d.ts +6 -14
  222. package/dist/db/migrations/012_peer_credentials_active_uniq.d.ts +9 -14
  223. package/dist/db/migrations/013_execution_log_bytes.d.ts +5 -13
  224. package/dist/db/migrations/014_kici_events_lease_retry.d.ts +14 -27
  225. package/dist/db/migrations/015_org_settings_customer_scoped.d.ts +12 -17
  226. package/dist/db/migrations/016_org_settings_allow_http_npm.d.ts +4 -6
  227. package/dist/db/migrations/019_generic_sources_change_notify.d.ts +13 -17
  228. package/dist/db/migrations/020_org_settings_dashboard_write_policy.d.ts +5 -8
  229. package/dist/db/migrations/021_check_run_tracking.d.ts +5 -17
  230. package/dist/db/migrations/022_scaler_manager_state.d.ts +10 -20
  231. package/dist/db/migrations/023_dispatch_queue_recovery_deadline.d.ts +7 -18
  232. package/dist/db/migrations/024_dispatch_queue_provisioning_error.d.ts +5 -11
  233. package/dist/db/migrations/025_init_failure.d.ts +5 -9
  234. package/dist/db/migrations/027_workflow_timeout.d.ts +5 -13
  235. package/dist/db/migrations/029_dispatch_queue_attempts.d.ts +4 -10
  236. package/dist/db/migrations/030_held_runs_env_set_null.d.ts +5 -6
  237. package/dist/db/migrations/031_dispatch_queue_ack_deadline.d.ts +6 -12
  238. package/dist/db/migrations/033_org_settings_approval.d.ts +7 -10
  239. package/dist/db/migrations/034_held_runs_generalize.d.ts +10 -18
  240. package/dist/db/migrations/035_pending_workflow_contexts.d.ts +4 -5
  241. package/dist/db/migrations/037_generic_sources_provider_type_local.d.ts +5 -6
  242. package/dist/db/migrations/038_remote_sources.d.ts +5 -7
  243. package/dist/db/migrations/045_host_properties.d.ts +5 -9
  244. package/dist/db/migrations/046_join_token_consumed_by_instance.d.ts +5 -10
  245. package/dist/db/migrations/048_host_reboot_pending.d.ts +6 -12
  246. package/dist/db/migrations/049_held_runs_payload.d.ts +3 -8
  247. package/dist/db/migrations/050_sources_slug.d.ts +4 -5
  248. package/dist/db/migrations/051_binding_host_pattern.d.ts +7 -10
  249. package/dist/db/migrations/052_host_reach_metadata.d.ts +8 -11
  250. package/dist/db/migrations/053_agent_token_single_use.d.ts +6 -10
  251. package/dist/db/migrations/054_local_working_tree.d.ts +4 -6
  252. package/dist/db/migrations/055_agent_token_mandatory_labels.d.ts +6 -11
  253. package/dist/db/migrations/056_execution_jobs_environments.d.ts +4 -11
  254. package/dist/db/migrations/064_execution_jobs_skipped_environments.d.ts +6 -9
  255. package/dist/db/migrations/065_pending_attestations.d.ts +9 -12
  256. package/dist/db/migrations/066_pending_attestations_rejected.d.ts +4 -7
  257. package/dist/db/migrations/068_request_idempotency.d.ts +7 -9
  258. package/dist/db/migrations/069_reroute_tunables.d.ts +6 -14
  259. package/dist/db/migrations/071_batch_accumulation.d.ts +8 -16
  260. package/dist/db/migrations/072_dispatch_queue_run_id_index.d.ts +3 -9
  261. package/dist/db/migrations/074_normalize_zero_concurrency_limit.d.ts +4 -7
  262. package/dist/db/migrations/076_artifacts.d.ts +7 -8
  263. package/dist/db/migrations/078_org_settings_backup_staleness.d.ts +3 -6
  264. package/dist/db/migrations/079_org_settings_scaler_spawn_timeout.d.ts +4 -8
  265. package/dist/db/migrations/080_cluster_settings.d.ts +6 -10
  266. package/dist/db/migrations/081_org_settings_queue_timeout.d.ts +7 -11
  267. package/dist/db/migrations/082_host_s3_reachable.d.ts +5 -10
  268. package/dist/db/migrations/083_org_settings_artifact_caps.d.ts +6 -8
  269. package/dist/db/migrations/084_orchestrator_signing_keys.d.ts +8 -13
  270. package/dist/db/migrations/085_cluster_settings_reroute_flap_grace_ms.d.ts +4 -5
  271. package/dist/db/migrations/086_cluster_settings_max_fanout_hosts.d.ts +3 -3
  272. package/dist/db/migrations/087_cluster_settings_event_router_rate_limit.d.ts +5 -3
  273. package/dist/db/migrations/088_cluster_settings_cache_max_tarball_bytes.d.ts +3 -3
  274. package/dist/db/migrations/089_cluster_settings_cache_ttl_days.d.ts +3 -5
  275. package/dist/db/migrations/090_cluster_settings_concurrency_wait_timeout_ms.d.ts +3 -6
  276. package/dist/db/migrations/091_cluster_settings_agent_token_ttl_ms.d.ts +3 -6
  277. package/dist/db/migrations/092_cluster_settings_version.d.ts +5 -9
  278. package/dist/db/migrations/094_dashboard_encryption_keys.d.ts +9 -14
  279. package/dist/db/migrations/095_dashboard_write_policy_tristate.d.ts +2 -6
  280. package/dist/db/migrations/099_cluster_settings_dashboard_verified_issuer.d.ts +8 -11
  281. package/dist/db/migrations/101_contexts_hold_expiry_drop_default.d.ts +9 -15
  282. package/dist/db/migrations/102_dispatch_queue_agent_id.d.ts +6 -11
  283. package/dist/db/migrations/103_cluster_settings_ownership_db_check_timeout_ms.d.ts +6 -12
  284. package/dist/db/migrations/104_check_run_terminal_sent.d.ts +8 -14
  285. package/dist/db/migrations/105_org_trust_policy.d.ts +5 -7
  286. package/dist/db/migrations/106_cluster_settings_check_run_tracking_ttl_days.d.ts +4 -12
  287. package/dist/db/migrations/107_check_run_tracking_updated_at_index.d.ts +8 -14
  288. package/dist/db/migrations/113_execution_runs_workflow_repo_index.d.ts +10 -19
  289. package/dist/db/migrations/115_global_workflows_cluster_switch.d.ts +2 -3
  290. package/dist/db/migrations/121_org_settings_allow_untrusted_dockerfile_builds.d.ts +7 -8
  291. package/dist/db/migrations/122_host_roster_scaler_managed.d.ts +9 -16
  292. package/dist/db/migrations/123_workflow_registrations_default_branch.d.ts +8 -16
  293. package/dist/db/migrations/125_org_trust_directory.d.ts +13 -21
  294. package/dist/db/migrations/126_held_runs_posted_pending_check.d.ts +10 -16
  295. package/dist/db/migrations/127_org_trust_policy_approval_expiry_seconds.d.ts +8 -16
  296. package/dist/db/migrations/128_execution_runs_global_eval_round.d.ts +6 -11
  297. package/dist/db/migrations/129_execution_runs_dispatch_routing_key.d.ts +8 -11
  298. package/dist/db/migrations/130_scaler_provision_outcomes.d.ts +13 -20
  299. package/dist/db/migrations/131_execution_jobs_git_credentials.d.ts +12 -22
  300. package/dist/db/migrations/132_execution_runs_trigger_event.d.ts +6 -16
  301. package/dist/db/migrations/133_dispatch_queue_source_tar_digest.d.ts +6 -9
  302. package/dist/db/migrations/140_dispatch_queue_canonical_labels.d.ts +22 -40
  303. package/dist/db/migrations/143_execution_jobs_precursor_result.d.ts +9 -18
  304. package/dist/db/migrations/144_execution_runs_registration_window.d.ts +12 -20
  305. package/dist/db/migrations/147_sealed_job_secrets.d.ts +5 -9
  306. package/dist/db/migrations/148_cluster_settings_sealed_secrets_retry_backoff_ms.d.ts +7 -13
  307. package/dist/db/migrations/150_execution_runs_status_epoch.d.ts +6 -11
  308. package/dist/db/migrations/152_org_settings_cache_upload_settle_timeout.d.ts +5 -8
  309. package/dist/db/migrations/157_host_roster_identity_source.d.ts +9 -13
  310. package/dist/db/migrations/159_org_id_widen_to_source_width.d.ts +5 -0
  311. package/dist/db/migrator.d.ts +17 -25
  312. package/dist/db/notify-listener.d.ts +8 -11
  313. package/dist/db/repos/dashboard-encryption-keys-repo.d.ts +9 -10
  314. package/dist/db/synthetic-job-ids.d.ts +6 -8
  315. package/dist/db/types.d.ts +531 -1058
  316. package/dist/deployment/deployment-identity.d.ts +42 -60
  317. package/dist/diagnostics/bundle-reader.d.ts +3 -15
  318. package/dist/diagnostics/bundle-writer.d.ts +5 -12
  319. package/dist/diagnostics/checks/agents.d.ts +1 -7
  320. package/dist/diagnostics/checks/backup.d.ts +7 -10
  321. package/dist/diagnostics/checks/certs.d.ts +1 -6
  322. package/dist/diagnostics/checks/config.d.ts +2 -5
  323. package/dist/diagnostics/checks/db.d.ts +1 -1
  324. package/dist/diagnostics/checks/disk.d.ts +1 -6
  325. package/dist/diagnostics/checks/firecracker-network.d.ts +3 -3
  326. package/dist/diagnostics/checks/index.d.ts +0 -6
  327. package/dist/diagnostics/checks/retention.d.ts +3 -6
  328. package/dist/diagnostics/checks/scaler.d.ts +3 -7
  329. package/dist/diagnostics/checks/ws.d.ts +1 -6
  330. package/dist/diagnostics/fleet-collector.d.ts +11 -14
  331. package/dist/diagnostics/fleet-constants.d.ts +1 -3
  332. package/dist/diagnostics/fleet-selection.d.ts +3 -7
  333. package/dist/diagnostics/fleet-topology.d.ts +2 -6
  334. package/dist/diagnostics/fleet-wiring.d.ts +6 -12
  335. package/dist/diagnostics/index.d.ts +0 -5
  336. package/dist/diagnostics/runner.d.ts +4 -8
  337. package/dist/diagnostics/types.d.ts +10 -21
  338. package/dist/drain/drain-controller.d.ts +16 -22
  339. package/dist/entry-helpers.d.ts +0 -2
  340. package/dist/events/circuit-breaker.d.ts +0 -3
  341. package/dist/events/event-router.d.ts +1 -2
  342. package/dist/events/event-store.d.ts +0 -9
  343. package/dist/events/trust-store.d.ts +0 -3
  344. package/dist/events/types.d.ts +0 -9
  345. package/dist/firecracker/host-network.d.ts +24 -30
  346. package/dist/firecracker/net-interfaces.d.ts +4 -7
  347. package/dist/helpers/rate-limiter.d.ts +0 -1
  348. package/dist/index.js +240 -482
  349. package/dist/metrics/agent-metrics-aggregator.d.ts +24 -67
  350. package/dist/metrics/metrics-reporter.d.ts +4 -13
  351. package/dist/metrics/prometheus.d.ts +47 -81
  352. package/dist/orchestrator-core.d.ts +3 -7
  353. package/dist/pipeline/content-filter.d.ts +20 -30
  354. package/dist/pipeline/cross-source-tally.d.ts +7 -8
  355. package/dist/pipeline/decorating-secret-resolver.d.ts +4 -8
  356. package/dist/pipeline/degraded-reason.d.ts +3 -4
  357. package/dist/pipeline/direct-ingress-deps.d.ts +15 -24
  358. package/dist/pipeline/dispatch-matched-workflow.d.ts +290 -526
  359. package/dist/pipeline/flatten-lock-steps.d.ts +4 -6
  360. package/dist/pipeline/global-dispatch-identity.d.ts +5 -10
  361. package/dist/pipeline/global-eval-round.d.ts +62 -156
  362. package/dist/pipeline/global-round-hold.d.ts +5 -7
  363. package/dist/pipeline/held-context-data.d.ts +5 -8
  364. package/dist/pipeline/held-round-registrations.d.ts +8 -11
  365. package/dist/pipeline/install-gate.d.ts +15 -25
  366. package/dist/pipeline/install-secrets-resolver.d.ts +24 -34
  367. package/dist/pipeline/internal-event-pipeline.d.ts +45 -62
  368. package/dist/pipeline/invoke-gate.d.ts +27 -40
  369. package/dist/pipeline/job-contexts.d.ts +19 -36
  370. package/dist/pipeline/manual-schedule.d.ts +7 -13
  371. package/dist/pipeline/needs-scheduler.d.ts +29 -46
  372. package/dist/pipeline/pending-workflow-context.d.ts +14 -28
  373. package/dist/pipeline/process-webhook.d.ts +88 -123
  374. package/dist/pipeline/processor.d.ts +209 -355
  375. package/dist/pipeline/remote-source-store.d.ts +5 -8
  376. package/dist/pipeline/request-idempotency.d.ts +10 -13
  377. package/dist/pipeline/rerun-global.d.ts +6 -7
  378. package/dist/pipeline/rerun-inputs.d.ts +23 -37
  379. package/dist/pipeline/rerun.d.ts +34 -57
  380. package/dist/pipeline/resolve-sandbox-grant.d.ts +5 -10
  381. package/dist/pipeline/resume-workflow.d.ts +28 -34
  382. package/dist/pipeline/route-or-dispatch-jobs.d.ts +19 -30
  383. package/dist/pipeline/run-event-context.d.ts +16 -21
  384. package/dist/pipeline/sandbox-allowlist-reader.d.ts +7 -11
  385. package/dist/pipeline/security-hold-check.d.ts +56 -80
  386. package/dist/pipeline/test-pipeline.d.ts +20 -46
  387. package/dist/pipeline/unbound-job-context.d.ts +6 -9
  388. package/dist/pipeline/undispatched-hold-checks.d.ts +4 -6
  389. package/dist/pipeline/wave-scheduler.d.ts +15 -22
  390. package/dist/pipeline/webhook-payload-store.d.ts +3 -10
  391. package/dist/pipeline/workflow-lock-at-sha.d.ts +14 -20
  392. package/dist/policy/dashboard-write-policy.d.ts +1 -1
  393. package/dist/provider-registry.d.ts +0 -19
  394. package/dist/providers/generic/index.d.ts +0 -2
  395. package/dist/providers/generic/normalizer.d.ts +0 -1
  396. package/dist/providers/generic/verification.d.ts +0 -8
  397. package/dist/providers/github/auth.d.ts +0 -1
  398. package/dist/providers/github/changed-files.d.ts +2 -1
  399. package/dist/providers/github/file-contents.d.ts +0 -4
  400. package/dist/providers/github/lock-file.d.ts +0 -4
  401. package/dist/providers/github/normalizer.d.ts +1 -9
  402. package/dist/providers/local/index.d.ts +1 -2
  403. package/dist/providers/local/lock-file-fetcher.d.ts +0 -4
  404. package/dist/providers/local/normalizer.d.ts +0 -10
  405. package/dist/providers/local/repo-url-builder.d.ts +0 -2
  406. package/dist/providers/universal-git/clone-token.d.ts +0 -2
  407. package/dist/providers/universal-git/lock-file.d.ts +0 -2
  408. package/dist/providers/universal-git/normalizer.d.ts +0 -2
  409. package/dist/queue/bootstrap.d.ts +3 -15
  410. package/dist/queue/cleanup.d.ts +29 -50
  411. package/dist/queue/depth-refresher.d.ts +21 -39
  412. package/dist/queue/job-queue.d.ts +112 -163
  413. package/dist/queue/retention.d.ts +23 -36
  414. package/dist/queue/scheduled-job.d.ts +17 -39
  415. package/dist/queue/terminalize-unroutable.d.ts +16 -18
  416. package/dist/queue/unroutable-probe.d.ts +15 -22
  417. package/dist/registration/extractor.d.ts +0 -6
  418. package/dist/registration/registration-index.d.ts +0 -6
  419. package/dist/registration/registration-store.d.ts +0 -9
  420. package/dist/reporting/agent-failure-category.d.ts +3 -5
  421. package/dist/reporting/check-run-reporter.d.ts +142 -316
  422. package/dist/reporting/check-run-summary.d.ts +16 -35
  423. package/dist/reporting/check-run-tracking-store.d.ts +54 -107
  424. package/dist/reporting/execution-tracker.d.ts +356 -526
  425. package/dist/reporting/fs-log-storage.d.ts +31 -33
  426. package/dist/reporting/job-check-run-completion.d.ts +14 -22
  427. package/dist/reporting/log-chunk-sink.d.ts +11 -16
  428. package/dist/reporting/log-pull-handler.d.ts +4 -13
  429. package/dist/reporting/log-retention.d.ts +3 -4
  430. package/dist/reporting/log-storage.d.ts +24 -52
  431. package/dist/reporting/log-writer.d.ts +28 -56
  432. package/dist/reporting/peer-log-normalize.d.ts +4 -8
  433. package/dist/reporting/run-aggregator.d.ts +6 -11
  434. package/dist/reporting/run-summary-fields.d.ts +5 -8
  435. package/dist/reporting/s3-log-storage.d.ts +31 -50
  436. package/dist/reporting/step-display-order.d.ts +11 -21
  437. package/dist/reporting/step-log-buffer.d.ts +7 -28
  438. package/dist/reporting/step-log-reader.d.ts +11 -19
  439. package/dist/routes/admin-access-log.d.ts +4 -6
  440. package/dist/routes/admin-auth.d.ts +17 -38
  441. package/dist/routes/admin-backends.d.ts +3 -14
  442. package/dist/routes/admin-cluster-name.d.ts +13 -21
  443. package/dist/routes/admin-cluster-settings.d.ts +6 -9
  444. package/dist/routes/admin-config.d.ts +7 -19
  445. package/dist/routes/admin-contexts.d.ts +6 -13
  446. package/dist/routes/admin-db.d.ts +5 -10
  447. package/dist/routes/admin-event-dlq.d.ts +3 -5
  448. package/dist/routes/admin-event-inspect.d.ts +3 -4
  449. package/dist/routes/admin-event-log.d.ts +3 -7
  450. package/dist/routes/admin-events.d.ts +16 -30
  451. package/dist/routes/admin-held-runs.d.ts +52 -76
  452. package/dist/routes/admin-maintenance.d.ts +3 -6
  453. package/dist/routes/admin-orchestrator-drain.d.ts +0 -2
  454. package/dist/routes/admin-org-settings.d.ts +8 -14
  455. package/dist/routes/admin-peer-forget.d.ts +0 -1
  456. package/dist/routes/admin-queue-execution.d.ts +3 -3
  457. package/dist/routes/admin-registrations.d.ts +3 -12
  458. package/dist/routes/admin-runs.d.ts +16 -29
  459. package/dist/routes/admin-scaler-orphans.d.ts +4 -4
  460. package/dist/routes/admin-scaler-reload.d.ts +5 -8
  461. package/dist/routes/admin-scheduled-jobs.d.ts +3 -4
  462. package/dist/routes/admin-sources.d.ts +20 -29
  463. package/dist/routes/admin-trust-policy.d.ts +31 -48
  464. package/dist/routes/admin.d.ts +67 -94
  465. package/dist/routes/caller-identity.d.ts +5 -12
  466. package/dist/routes/capabilities.d.ts +8 -13
  467. package/dist/routes/diagnostics.d.ts +2 -10
  468. package/dist/routes/fleet.d.ts +1 -2
  469. package/dist/routes/github-webhook.d.ts +2 -5
  470. package/dist/routes/health.d.ts +6 -19
  471. package/dist/routes/provenance-oidc.d.ts +3 -3
  472. package/dist/routes/uploads.d.ts +5 -11
  473. package/dist/routes/webhooks.d.ts +2 -24
  474. package/dist/scaler/agent-binary-location.d.ts +77 -0
  475. package/dist/scaler/agent-fit.d.ts +2 -2
  476. package/dist/scaler/backend-factory.d.ts +10 -18
  477. package/dist/scaler/bare-metal-backend.d.ts +30 -46
  478. package/dist/scaler/claim-store.d.ts +20 -43
  479. package/dist/scaler/config.d.ts +10 -37
  480. package/dist/scaler/container-backend.d.ts +22 -35
  481. package/dist/scaler/container-hostconfig.d.ts +19 -16
  482. package/dist/scaler/container-routing.d.ts +10 -13
  483. package/dist/scaler/disk-guard.d.ts +2 -3
  484. package/dist/scaler/event-backend.d.ts +33 -58
  485. package/dist/scaler/event-provision-reaper.d.ts +61 -84
  486. package/dist/scaler/failure-tracker.d.ts +6 -13
  487. package/dist/scaler/file-tail.d.ts +6 -19
  488. package/dist/scaler/firecracker-api.d.ts +19 -63
  489. package/dist/scaler/firecracker-backend.d.ts +142 -258
  490. package/dist/scaler/host-access.d.ts +7 -10
  491. package/dist/scaler/index.d.ts +3 -6
  492. package/dist/scaler/ip-allocator.d.ts +30 -82
  493. package/dist/scaler/label-matcher.d.ts +14 -35
  494. package/dist/scaler/log-forwarder.d.ts +6 -25
  495. package/dist/scaler/machine-ledger.d.ts +39 -86
  496. package/dist/scaler/manager.d.ts +517 -787
  497. package/dist/scaler/pending-scale-sweeper.d.ts +8 -11
  498. package/dist/scaler/reap-orphans.d.ts +8 -12
  499. package/dist/scaler/resolve-container-auth.d.ts +12 -21
  500. package/dist/scaler/scaler-events.d.ts +2 -5
  501. package/dist/scaler/scaler-state-store.d.ts +127 -189
  502. package/dist/scaler/spawn-errors.d.ts +1 -4
  503. package/dist/scaler/startup-orphan-sweep.d.ts +3 -4
  504. package/dist/scaler/startup-tools-check.d.ts +21 -0
  505. package/dist/scaler/types.d.ts +142 -255
  506. package/dist/scaler/vm-job-bindings.d.ts +5 -9
  507. package/dist/scaler/warm-pool.d.ts +49 -93
  508. package/dist/secrets/audit-logger.d.ts +0 -3
  509. package/dist/secrets/backend-health.d.ts +0 -9
  510. package/dist/secrets/backend-registry.d.ts +0 -9
  511. package/dist/secrets/cleanup.d.ts +0 -1
  512. package/dist/secrets/config.d.ts +0 -3
  513. package/dist/secrets/ephemeral-keys.d.ts +0 -3
  514. package/dist/secrets/pg-secret-store.d.ts +0 -3
  515. package/dist/secrets/rbac.d.ts +0 -6
  516. package/dist/secrets/secret-output-store.d.ts +0 -6
  517. package/dist/secrets/secret-resolver.d.ts +2 -6
  518. package/dist/secrets/token-manager.d.ts +0 -4
  519. package/dist/secrets/vault-secret-store.d.ts +0 -13
  520. package/dist/security/comment-handler.d.ts +0 -2
  521. package/dist/security/workflow-diff.d.ts +1 -1
  522. package/dist/server.js +8628 -13569
  523. package/dist/sources/source-manager.d.ts +0 -3
  524. package/dist/sources/source-store.d.ts +0 -9
  525. package/dist/sources/source-validator.d.ts +0 -3
  526. package/dist/stale-detector/all-terminal-runs.d.ts +8 -11
  527. package/dist/stale-detector/gate-deadline-detector.d.ts +14 -19
  528. package/dist/stale-detector/reboot-deadline-sweep.d.ts +7 -11
  529. package/dist/stale-detector/stale-dispatch-candidates.d.ts +13 -20
  530. package/dist/stale-detector/stale-run-detector.d.ts +74 -121
  531. package/dist/stale-detector/workflow-deadline-detector.d.ts +15 -43
  532. package/dist/standalone.js +7670 -12402
  533. package/dist/storage/blob-routes.d.ts +10 -19
  534. package/dist/storage/filesystem.d.ts +19 -29
  535. package/dist/storage/index.d.ts +2 -10
  536. package/dist/storage/key-discriminator.d.ts +8 -10
  537. package/dist/storage/loopback-guard.d.ts +27 -45
  538. package/dist/storage/s3.d.ts +25 -52
  539. package/dist/storage/sign-url.d.ts +7 -22
  540. package/dist/storage/types.d.ts +44 -70
  541. package/dist/webhook/event-log.d.ts +0 -2
  542. package/dist/webhook/generic-sources.d.ts +0 -21
  543. package/dist/webhook/ingest-admission.d.ts +0 -1
  544. package/dist/webhook/relay-buffer.d.ts +2 -2
  545. package/dist/webhook/verify-inbound.d.ts +0 -1
  546. package/dist/worker/in-memory-execution-tracker.d.ts +9 -31
  547. package/dist/worker/in-memory-job-queue.d.ts +32 -72
  548. package/dist/worker/peer-outbox.d.ts +5 -8
  549. package/dist/worker/reroute-dispatch.d.ts +4 -6
  550. package/dist/worker/static-agent-token-store.d.ts +6 -27
  551. package/dist/worker/worker-outbox-relay.d.ts +2 -2
  552. package/dist/worker/worker-status.d.ts +3 -20
  553. package/dist/ws/agent-api-registry.d.ts +8 -27
  554. package/dist/ws/agent-handler.d.ts +63 -110
  555. package/dist/ws/agent-heartbeat.d.ts +5 -12
  556. package/dist/ws/bringup-api.d.ts +31 -38
  557. package/dist/ws/dashboard-backends-handler.d.ts +12 -22
  558. package/dist/ws/dashboard-context-handler.d.ts +37 -80
  559. package/dist/ws/dashboard-diagnostics-handler.d.ts +8 -25
  560. package/dist/ws/dashboard-dispatch-guard.d.ts +3 -4
  561. package/dist/ws/dashboard-fleet-handler.d.ts +9 -13
  562. package/dist/ws/dashboard-fleet-write-handler.d.ts +7 -21
  563. package/dist/ws/dashboard-global-workflows-handler.d.ts +22 -44
  564. package/dist/ws/dashboard-registrations-handler.d.ts +10 -27
  565. package/dist/ws/dashboard-run-state-handler.d.ts +10 -13
  566. package/dist/ws/event-buffer.d.ts +3 -6
  567. package/dist/ws/execution-status-frame.d.ts +9 -11
  568. package/dist/ws/failure-messages.d.ts +9 -14
  569. package/dist/ws/fleet-agent-collector.d.ts +6 -12
  570. package/dist/ws/fleet-runs-on-all.d.ts +1 -6
  571. package/dist/ws/git-credential-relay.d.ts +12 -20
  572. package/dist/ws/inventory-api.d.ts +4 -5
  573. package/dist/ws/job-status-forward-frame.d.ts +30 -0
  574. package/dist/ws/observer-registry.d.ts +14 -59
  575. package/dist/ws/outbound-frame-guard.d.ts +4 -0
  576. package/dist/ws/ownership-gate.d.ts +1 -1
  577. package/dist/ws/platform-client.d.ts +32 -31
  578. package/dist/ws/replay-chunker.d.ts +7 -10
  579. package/dist/ws/server-options.d.ts +5 -9
  580. package/dist/ws/test-relay-handlers.d.ts +45 -59
  581. package/dist/ws/test-run-log-cursor.d.ts +18 -0
  582. package/installer-image-digests.json +3 -3
  583. package/package.json +6 -5
  584. package/sbom.spdx.json +53 -53
  585. package/dist/__test-helpers__/fake-scaler-state-store.d.ts +0 -24
  586. package/dist/__test-helpers__/mock-db-query.d.ts +0 -129
  587. package/dist/__test-helpers__/mock-db.d.ts +0 -134
  588. package/dist/__test-helpers__/mock-ws.d.ts +0 -13
  589. package/dist/__test-helpers__/peer-mutual-auth.d.ts +0 -42
  590. package/dist/__test-helpers__/scratch-db.d.ts +0 -16
  591. package/dist/__test-helpers__/test-db.d.ts +0 -34
  592. package/dist/pipeline/dispatch-matched-workflow.test-helpers.d.ts +0 -121
@@ -11,21 +11,17 @@ export interface SandboxAllowList {
11
11
  }
12
12
  export interface SandboxAllowListReader {
13
13
  /**
14
- * Read the org's escape-hatch allow-list. Never throws; on a DB error (or no
15
- * DB handle) it degrades to the safe deny-all default `{ capabilities: [],
16
- * allowHostNetwork: false }` so a sick DB denies escalation rather than
17
- * blocking dispatch.
14
+ * Never throws: a DB error or no DB handle degrades to deny-all, so a sick DB
15
+ * denies escalation rather than blocking dispatch.
18
16
  */
19
17
  read(orgId: string): Promise<SandboxAllowList>;
20
18
  }
21
19
  /**
22
- * Reader for the per-org container-sandbox escape-hatch allow-list. Read once per
23
- * matched-workflow dispatch (not per request), against a single indexed row, so
24
- * it is intentionally **uncached**: this is a security control, and an operator's
25
- * `sandbox-allowlist` change must take effect on the very next dispatch (a cache
26
- * would leave the old policy in force for its TTL — a stale-deny or stale-allow
27
- * window on a privilege boundary). The trivial per-dispatch query is the right
28
- * trade for always-fresh enforcement.
20
+ * Reader for the per-org container-sandbox escape-hatch allow-list, read once per
21
+ * matched-workflow dispatch against one indexed row. Intentionally **uncached**:
22
+ * a security control, so an operator's `sandbox-allowlist` change must apply on
23
+ * the very next dispatch; a cache TTL would open a stale-deny or stale-allow
24
+ * window on a privilege boundary.
29
25
  */
30
26
  export declare function createSandboxAllowListReader(deps: {
31
27
  db?: Kysely<Database>;
@@ -3,10 +3,7 @@ import type { Kysely } from 'kysely';
3
3
  import type { Database } from '../db/types.js';
4
4
  /** Resolve the check poster of the provider bundle a routing key is served by. */
5
5
  export type ResolveCheckStatusPoster = (routingKey: string) => CheckStatusPoster | undefined;
6
- /**
7
- * The `held_runs` columns this module reads. A full `HeldRun` row satisfies it,
8
- * so every caller passes the row it already loaded rather than a projection.
9
- */
6
+ /** The `held_runs` columns this module reads; a full `HeldRun` row satisfies it. */
10
7
  export interface SecurityCheckHold {
11
8
  id: string;
12
9
  org_id: string;
@@ -16,9 +13,8 @@ export interface SecurityCheckHold {
16
13
  hold_type: string;
17
14
  approval_requirement: unknown;
18
15
  /**
19
- * Whether the pending post reached the provider. Required rather than
20
- * optional so a query that projects columns by name cannot omit it and fall
21
- * back to the shape derivation without the compiler saying so.
16
+ * Whether the pending post reached the provider. Required, so a projecting
17
+ * query cannot silently omit it and fall back to the shape derivation.
22
18
  */
23
19
  posted_pending_check: boolean | null;
24
20
  }
@@ -62,22 +58,16 @@ export interface SettleSecurityCheckResult {
62
58
  * Whether this hold put a pending `KiCI Security` check on its commit, and so
63
59
  * has one to terminalize when it ends.
64
60
  *
65
- * `posted_pending_check` is the answer whenever the row carries one: it is
66
- * written `true` only after the provider accepted the post, so it records what
67
- * HAPPENED. Everything below records what the code INTENDED, which is a
68
- * different question and answers the wrong way twice — a post the provider
69
- * refused, and a hold reached with no check poster in `ctx.bundle`, both leave
70
- * a shape that says "posted" and a commit that has nothing. Terminalizing then
71
- * CREATES the check run, so the mirror of the stuck-check leak is a fabricated
72
- * failing check on a pull request.
73
- *
74
- * The shape derivation stays for `null` — a row written before the column
75
- * existed, for which no fact was recorded and an inference is all there is.
61
+ * `posted_pending_check` wins whenever set: it is written `true` only after the
62
+ * provider accepted the post, so it records what HAPPENED. The shape derivation
63
+ * below records what the code INTENDED, and is wrong for a refused post and for
64
+ * a hold with no check poster in `ctx.bundle` — terminalizing those CREATES a
65
+ * fabricated failing check on a pull request. The derivation serves only
66
+ * `null` (a row older than the column).
76
67
  *
77
- * Three sites post that pending status, and the derivation is read off them
78
- * rather than off the queue type — which cannot make the distinction, because a
79
- * workflow install gate whose context protection rule is security-typed carries
80
- * `queue_type = 'security'` and posts nothing at all.
68
+ * Three sites post the pending status, and the derivation reads them, not the
69
+ * queue type: an install gate with a security-typed context protection rule
70
+ * carries `queue_type = 'security'` and posts nothing.
81
71
  *
82
72
  * | Hold | Written by | Posts pending? | Recognised here by |
83
73
  * |---|---|---|---|
@@ -90,11 +80,11 @@ export interface SettleSecurityCheckResult {
90
80
  * | wait-timer / concurrency hold | the per-env gate | no | none of the above matches |
91
81
  * | step approval | `StepApprovalBridge.request` | no | step scope |
92
82
  *
93
- * `approval_requirement` is what `createHold` writes and `create` does not, so
94
- * it identifies exactly the rows `holdJobForApproval` wrote through the
95
- * approval path — the site whose post is guarded by `if (hold && …)`. The two
96
- * other `createHold` callers are excluded above it: the install gate by its job
97
- * id, the step bridge by its scope.
83
+ * `approval_requirement` is written by `createHold` and not by `create`, so it
84
+ * identifies exactly the rows `holdJobForApproval` wrote through the approval
85
+ * path (whose post is guarded by `if (hold && …)`). The other `createHold`
86
+ * callers are excluded before it: the install gate by job id, the step bridge
87
+ * by scope.
98
88
  */
99
89
  export declare function postedPendingSecurityCheck(hold: SecurityCheckHold): boolean;
100
90
  /**
@@ -102,28 +92,22 @@ export declare function postedPendingSecurityCheck(hold: SecurityCheckHold): boo
102
92
  * families use: `cancelled` for a rejection, `timed_out` for an elapsed window,
103
93
  * `success` for an approval.
104
94
  *
105
- * The subject follows the hold's scope on every outcome, because the same event
106
- * means different things at each: a workflow-scoped hold owns the whole run,
107
- * while a job-scoped one owns one job and says nothing about the run's other
108
- * jobs — including a step-approval hold that is still pending, which a run-wide
109
- * "no longer waiting for approval" would contradict.
95
+ * The subject follows the hold's scope: a workflow-scoped hold owns the whole
96
+ * run, a job-scoped one owns one job and says nothing about the others (a
97
+ * still-pending step-approval hold would contradict a run-wide "no longer
98
+ * waiting for approval").
110
99
  *
111
- * `actor` names whoever ended the hold, on an approve and on a reject alike.
112
- * Only an expiry has none: nobody answered, which is what expiry means. A
113
- * rejecter whose surface already writes its own attribution into `reason` (the
114
- * `/kici reject` handler builds "Rejected by alice via /kici reject") passes no
115
- * `actor`, so the sentence lands once rather than twice.
100
+ * `actor` names whoever ended the hold (none on expiry). A surface that already
101
+ * writes its attribution into `reason` (`/kici reject`: "Rejected by alice via
102
+ * /kici reject") passes no `actor`, so the sentence lands once.
116
103
  *
117
- * **`actor` is a display name, and it is published verbatim on a public commit
118
- * check.** It must never be an opaque identity-provider subject id: a surface
119
- * that holds one — the dashboard / CLI / MCP applier, which decides by KiCI
120
- * user id — resolves it against the org's identity directory first and passes
121
- * nothing when that resolves to no single name. Omitting the attribution reads
122
- * as "an approver"; leaking the subject reads as `Approved by
123
- * 8f3a-…-uuid`, on a pull request anyone can open.
104
+ * **`actor` is a display name, published verbatim on a public commit check.**
105
+ * Never an opaque identity-provider subject id: a surface holding one (the
106
+ * dashboard / CLI / MCP applier) resolves it against the org's identity
107
+ * directory first and passes nothing when no single name results — "an
108
+ * approver", never `Approved by 8f3a-…-uuid` on a public pull request.
124
109
  *
125
- * `reason` is normalized to end in terminal punctuation — a rejecter's own
126
- * sentence carries none, and without one it runs straight into what follows.
110
+ * `reason` is normalized to end in terminal punctuation.
127
111
  */
128
112
  export declare function buildHoldEndedSummary(args: {
129
113
  outcome: HoldOutcome;
@@ -133,12 +117,11 @@ export declare function buildHoldEndedSummary(args: {
133
117
  via?: string | undefined;
134
118
  }): string;
135
119
  /**
136
- * Terminalize the `KiCI Security` check of a hold that just ended, choosing the
137
- * conclusion, title and summary from {@link HoldOutcome}.
138
- *
139
- * The single entry point for every surface that ends a hold — the `/kici`
140
- * comment handler, the dashboard / CLI / MCP applier, and the stale detector's
141
- * approval-window sweep — so those surfaces cannot render one event three ways.
120
+ * Terminalize the `KiCI Security` check of an ended hold, with conclusion, title
121
+ * and summary from {@link HoldOutcome}. The single entry point for every surface
122
+ * that ends a hold (the `/kici` comment handler, the dashboard / CLI / MCP
123
+ * applier, the stale detector's approval-window sweep), so they cannot render
124
+ * one event three ways.
142
125
  */
143
126
  export declare function settleSecurityCheckForOutcome(args: {
144
127
  db: Kysely<Database> | undefined;
@@ -155,15 +138,10 @@ export declare function settleSecurityCheckForOutcome(args: {
155
138
  * The dashboard / CLI / MCP applier's entry point into
156
139
  * {@link settleSecurityCheckForOutcome}.
157
140
  *
158
- * That applier decides by KiCI user id, so the only actor it holds is an opaque
159
- * identity-provider subject — and this summary is published verbatim on a public
160
- * commit check. `resolveDisplayName` maps the subject onto the account name the
161
- * org's identity directory links it to; when it names none, the attribution is
162
- * DROPPED rather than falling back to the subject. So an approve reads
163
- * "Approved by an approver" at worst, never "Approved by 8f3a-…-uuid".
164
- *
165
- * Separate from its caller so the resolve-or-drop step is a unit under test
166
- * rather than a line in the composition root.
141
+ * The applier holds only an opaque identity-provider subject, and the summary is
142
+ * public. `resolveDisplayName` maps it to the org identity directory's linked
143
+ * account name; when none, the attribution is DROPPED, never the subject. A
144
+ * separate function so the resolve-or-drop step is unit-tested.
167
145
  */
168
146
  export declare function settleSecurityCheckForDecision(args: {
169
147
  db: Kysely<Database> | undefined;
@@ -180,23 +158,22 @@ export declare function settleSecurityCheckForDecision(args: {
180
158
  * Terminalize the `KiCI Security` check of a hold that just ended, under a
181
159
  * caller-supplied status and copy.
182
160
  *
183
- * Used directly where one summary has to reach BOTH check families — a rejected
184
- * workflow-scoped hold reports the same sentence on `KiCI Security` and on the
185
- * `kici/…` runs of the same event, and that sameness is asserted rather than
186
- * assumed. Everything else goes through {@link settleSecurityCheckForOutcome}.
161
+ * Used directly where one summary must reach BOTH check families (a rejected
162
+ * workflow-scoped hold reports the same, asserted sentence on `KiCI Security`
163
+ * and the event's `kici/…` runs); everything else goes through
164
+ * {@link settleSecurityCheckForOutcome}.
187
165
  *
188
- * Call it AFTER the hold's own row has left `pending` (every caller does: the
189
- * applier flips inside `recordAndReject` / `recordAndRelease`, the comment
190
- * handler inside `reject` / `approveByQueueType`) — and, on an approve, BEFORE
191
- * the resume, so a replayed dispatch that holds again overwrites this terminal
192
- * status with its own pending one rather than the other way round. The ending
193
- * hold's own id is excluded from the contention query regardless, so a sweep
194
- * that has not yet flipped its batch can name it in `excludeHoldIds`.
166
+ * Call it AFTER the hold's row has left `pending` (the applier flips inside
167
+ * `recordAndReject` / `recordAndRelease`, the comment handler inside `reject` /
168
+ * `approveByQueueType`) and, on an approve, BEFORE the resume, so a replayed
169
+ * dispatch that holds again overwrites this terminal status with its pending
170
+ * one, not the reverse. The ending hold's id is always excluded from the
171
+ * contention query; a sweep that has not flipped its batch yet names the rest
172
+ * in `excludeHoldIds`.
195
173
  *
196
- * Never throws: terminalizing a check run is a reporting courtesy on a path
197
- * whose real job is to terminalize the hold, and a provider error must not stop
198
- * that. The returned `posted` is what a caller binds its own suppression to —
199
- * it says a check was written, not merely that a delegate resolved.
174
+ * Never throws: a provider error must not stop the hold's terminalization.
175
+ * Callers bind suppression to the returned `posted` (a check was written, not
176
+ * merely a delegate resolved).
200
177
  */
201
178
  export declare function settleSecurityHoldCheck(args: {
202
179
  db: Kysely<Database> | undefined;
@@ -207,10 +184,9 @@ export declare function settleSecurityHoldCheck(args: {
207
184
  summary: string;
208
185
  excludeHoldIds?: readonly string[] | undefined;
209
186
  /**
210
- * Commits this caller already wrote in the same pass. A sweep that ends
211
- * several holds on one commit shares one check run between them, and every
212
- * hold in it carries the same conclusion and summary — so the second write
213
- * would be a byte-identical provider round-trip.
187
+ * Commits this caller already wrote in the same pass: a sweep's holds on one
188
+ * commit share one check run and identical copy, so a second write is a
189
+ * byte-identical round-trip.
214
190
  */
215
191
  skipCommits?: ReadonlySet<string> | undefined;
216
192
  }): Promise<SettleSecurityCheckResult>;
@@ -2,12 +2,12 @@
2
2
  * Test-trigger adapter for CLI-initiated runs (`kici run`).
3
3
  *
4
4
  * Resolves the lock file, matched decisions, and fixture-specific concerns
5
- * (inline-vs-provider lock, decision selection, fixture-payload storage, the
5
+ * (inline-vs-provider lock, fixture-payload storage, the
6
6
  * `allow_local_execution` context gate, CLI-secret overlay, in-memory
7
7
  * test-run marking), then dispatches each matched workflow through the SAME
8
- * shared core as webhooks (`dispatchMatchedWorkflow`). The test path is a thin
9
- * adapter — needs-DAG scheduling, `expansionMap` fan-out edges, `runsOnAll`
10
- * host fan-out, and deferred init/dynamic dispatch all come from the core.
8
+ * core as webhooks (`dispatchMatchedWorkflow`), which supplies needs-DAG
9
+ * scheduling, `expansionMap` fan-out edges, `runsOnAll` host fan-out, and
10
+ * deferred init/dynamic dispatch.
11
11
  *
12
12
  * Differences from a webhook run:
13
13
  * - the synthetic event is injected directly (no provider normalization/dedup);
@@ -24,13 +24,8 @@
24
24
  import { type ProcessingDeps } from './processor.js';
25
25
  import { type ActorPrincipal } from '@kici-dev/engine';
26
26
  import type { CheckMode, HostTargetSelector } from '@kici-dev/engine';
27
- /**
28
- * Input for a test trigger request.
29
- */
30
27
  export interface TestTriggerInput {
31
- /** Unique fixture identifier from the CLI. */
32
28
  fixtureId: string;
33
- /** The simulated event to inject into the pipeline. */
34
29
  event: {
35
30
  type: string;
36
31
  action?: string;
@@ -41,15 +36,15 @@ export interface TestTriggerInput {
41
36
  };
42
37
  /** Routing key for provider lookup and lock file fetch. */
43
38
  routingKey: string;
44
- /** Reference to uploaded tarball (optional). */
39
+ /** Uploaded tarball reference. */
45
40
  uploadId?: string;
46
- /** Fixture secret context mappings (optional). */
41
+ /** Fixture secret context mappings `{ contextName: envName }`. */
47
42
  secrets?: Record<string, string>;
48
43
  /** Base64 X25519+AES-GCM blob of the developer's local secrets ({flat, contexts}). */
49
44
  encryptedSecrets?: string;
50
45
  /** Base64 ephemeral CLI public key that encrypted `encryptedSecrets`. */
51
46
  encryptedSecretsKey?: string;
52
- /** Direct workflow run -- bypass triggers (optional). */
47
+ /** Direct workflow run, bypassing triggers. */
53
48
  workflowName?: string;
54
49
  /** Resolved overlay metadata for tarball download + decryption. */
55
50
  resolvedOverlay?: {
@@ -57,18 +52,13 @@ export interface TestTriggerInput {
57
52
  cliPublicKey: string;
58
53
  orchestratorPrivateKey: string;
59
54
  };
60
- /** Request trace ID from the HTTP request. */
55
+ /** Trace ID of the HTTP request. */
61
56
  requestId: string;
62
57
  /**
63
- * The principal that initiated this run: the one the Platform relays on
58
+ * The initiating principal: the one the Platform relays on
64
59
  * `test.relay.trigger`, or the admin token's service account on the direct
65
- * test-run routes.
66
- *
67
- * Required rather than optional: the relay handler and the direct test-run
68
- * routes are the production callers and both always pass an actor, and an
69
- * optional field would let a future caller silently drop attribution, which
70
- * leaves `execution_runs.triggered_by` NULL while the column claims to hold
71
- * the initiator.
60
+ * test-run routes. Required so no caller can silently leave
61
+ * `execution_runs.triggered_by` NULL.
72
62
  */
73
63
  actor: ActorPrincipal;
74
64
  /** JSON-stringified lock file content for local repos with no remote. */
@@ -76,39 +66,26 @@ export interface TestTriggerInput {
76
66
  /** When true, repo has no remote -- skip provider lookup, skip clone. */
77
67
  fullRepo?: boolean;
78
68
  /**
79
- * Run mode for idempotent steps (`apply` | `check` | `check-fail-on-drift`).
80
- * Threaded onto each dispatched job's config and persisted on the run.
81
- * Omitted means `apply`.
69
+ * Run mode for idempotent steps, set on each job's config and persisted on
70
+ * the run. Omitted means `apply`.
82
71
  */
83
72
  checkMode?: CheckMode;
84
- /**
85
- * Runtime host narrowing from `kici run --target`. Threaded onto the dispatch
86
- * context, where it post-filters each runsOnAll job's matched roster.
87
- */
73
+ /** `kici run --target`: post-filters each runsOnAll job's matched roster. */
88
74
  target?: HostTargetSelector;
89
75
  /**
90
- * Raw operator-supplied `kici run --input KEY=VALUE` pairs (not coerced /
91
- * defaulted). Validated + coerced + defaulted here against the matched
92
- * workflow's lock dispatch descriptor before dispatch.
76
+ * Raw `kici run --input KEY=VALUE` pairs, validated, coerced and defaulted
77
+ * here against the matched workflow's lock dispatch descriptor.
93
78
  */
94
79
  dispatchInputs?: Record<string, string>;
95
80
  }
96
- /**
97
- * Result of processing a test trigger.
98
- */
99
81
  interface TestTriggerResult {
100
- /** Unique run identifier. */
101
82
  runId: string;
102
- /** Whether the test trigger was accepted or rejected. */
103
83
  status: 'accepted' | 'rejected';
104
- /** Reason for rejection (if rejected). */
105
84
  reason?: string;
106
- /** Dispatched job IDs. */
107
85
  jobIds: string[];
108
86
  /**
109
- * User-visible warnings on an accepted run — today, one per job whose bound
110
- * test-run context(s) were unavailable (non-test or unconfigured) and
111
- * skipped. Printed by the CLI on acceptance.
87
+ * Warnings the CLI prints on acceptance: one per job whose bound test-run
88
+ * contexts were unavailable (non-test or unconfigured) and skipped.
112
89
  */
113
90
  warnings?: string[];
114
91
  }
@@ -122,11 +99,8 @@ export declare function repoIdentityFromInlineInput(input: TestTriggerInput): {
122
99
  provider: string;
123
100
  };
124
101
  /**
125
- * Process a test trigger through the shared dispatch core.
126
- *
127
- * Resolves the lock file + matched decisions + fixture concerns, then builds a
128
- * `WorkflowDispatchContext` per matched workflow and calls
129
- * `dispatchMatchedWorkflow` — the same core the webhook path uses.
102
+ * Process a test trigger through the shared dispatch core: one
103
+ * `WorkflowDispatchContext` per matched workflow, into `dispatchMatchedWorkflow`.
130
104
  */
131
105
  export declare function processTestTrigger(input: TestTriggerInput, deps: ProcessingDeps): Promise<TestTriggerResult>;
132
106
  export {};
@@ -1,20 +1,17 @@
1
1
  /**
2
- * The dispatch-time warning for a job context that has no scope binding.
2
+ * The dispatch-time warning for a job context with no scope binding.
3
3
  *
4
- * A job receives a context's secrets only through the context's scope
5
- * bindings, so a context with none delivers no secret, and nothing fails until
6
- * a step reads one. This names each such context in the orchestrator log when
7
- * the job's context data resolves. Advisory only: it runs after resolution, a
8
- * failed lookup logs nothing, and the dispatch proceeds unchanged.
4
+ * Secrets reach a job only through scope bindings, so an unbound context
5
+ * delivers none and nothing fails until a step reads one. Advisory only: it runs
6
+ * after resolution, a failed lookup logs nothing, and dispatch is unchanged.
9
7
  */
10
8
  import type { Context } from '@kici-dev/engine';
11
9
  import type { SecretResolverApi } from '../secrets/secret-resolver.js';
12
10
  /** The warning line's message; the structured fields carry the identities. */
13
11
  export declare const UNBOUND_JOB_CONTEXT_MESSAGE = "Job binds a context that has no scope binding; it receives no secrets from it";
14
12
  /**
15
- * Warn once for every context in `entries` that resolved no secret and has no
16
- * scope binding. A context that resolved at least one secret is skipped without
17
- * a lookup, so a bound context costs nothing here.
13
+ * Warn once per context that resolved no secret and has no scope binding; one
14
+ * that resolved a secret is skipped without a lookup.
18
15
  */
19
16
  export declare function warnUnboundJobContexts(args: {
20
17
  secretResolver: SecretResolverApi | undefined;
@@ -5,13 +5,11 @@ import type { CheckRunReporter } from '../reporting/check-run-reporter.js';
5
5
  /**
6
6
  * Complete the check runs of `runId`'s stored workflow dispatch, if it has one.
7
7
  *
8
- * A run with no pending workflow context never held at workflow scope (or its
9
- * context was already consumed by a resume), so there is nothing to close and
10
- * this is a no-op. Call it BEFORE `deletePendingWorkflowContext` — the context
11
- * is the only place the check-run names can still be derived from.
8
+ * A no-op without a pending workflow context. Call it BEFORE
9
+ * `deletePendingWorkflowContext`: the context is the only source of the
10
+ * check-run names.
12
11
  *
13
- * Never throws: closing a check run is a reporting courtesy on a path whose real
14
- * job is to terminalize the run, and a provider error must not stop that.
12
+ * Never throws: a provider error must not stop the caller terminalizing the run.
15
13
  */
16
14
  export declare function completeUndispatchedHoldChecks(args: {
17
15
  db: Kysely<Database> | undefined;
@@ -1,18 +1,15 @@
1
1
  /**
2
2
  * Rolling-wave scheduler for bounded fan-out (`maxParallel` / `failFast`).
3
3
  *
4
- * Sibling of the needs-scheduler (`needs-scheduler.ts`): both fire on a job
5
- * reaching terminal state and decide what to do with held downstream/sibling
6
- * jobs. The needs-scheduler releases jobs whose `needs` edges are now satisfied;
7
- * the wave-scheduler releases the next `wave_gated` sibling of a fan-out base
8
- * whenever an in-flight slot frees up (or, under `failFast`, skips the held
9
- * remainder on the first child failure).
4
+ * Like `needs-scheduler.ts`, it fires when a job reaches a terminal state: it
5
+ * releases the next `wave_gated` sibling of a fan-out base when an in-flight
6
+ * slot frees up, or, under `failFast`, skips the held remainder on the first
7
+ * child failure.
10
8
  *
11
- * Pure DB — no in-memory state. Every decision is a fresh query against
12
- * `execution_jobs` keyed by `(run_id, base_job_name)`, so the scheduler needs
13
- * zero recovery code on orchestrator restart. The caller performs the DB write
14
- * (clear `wave_gated` / mark skipped) and the dispatch (`onJobReady`), keeping
15
- * this module a pure decision function.
9
+ * Pure DB, no in-memory state: every decision is a fresh query on
10
+ * `execution_jobs` keyed by `(run_id, base_job_name)`, so a restart needs no
11
+ * recovery code. The caller performs the DB write (clear `wave_gated` / mark
12
+ * skipped) and the dispatch (`onJobReady`).
16
13
  */
17
14
  import type { Kysely } from 'kysely';
18
15
  import type { Database } from '../db/types.js';
@@ -38,23 +35,19 @@ export type WaveResult = {
38
35
  action: 'noop';
39
36
  };
40
37
  /**
41
- * Decide what happens after a fan-out child of `baseJobName` reaches terminal.
42
- *
43
- * The wave policy (`maxParallel` / `failFast`) is read from the base group's
44
- * own rows — every child of a bounded wave carries the same stamped
45
- * `wave_max_parallel` / `wave_fail_fast`, so the just-completed child's slot
46
- * being re-inserted without the policy on release does not break the chain
47
- * (the still-held siblings carry it). If no sibling carries a policy, this is
48
- * not a bounded wave → `noop`.
38
+ * The wave policy is read from the base group's rows: every child of a bounded
39
+ * wave carries the same `wave_max_parallel` / `wave_fail_fast`, so a slot
40
+ * re-inserted without the policy on release does not break the chain (the
41
+ * still-held siblings carry it). No sibling with a policy means no bounded
42
+ * wave → `noop`.
49
43
  *
50
44
  * - `failFast` + a child failure → `skip-remaining` every still-held sibling.
51
45
  * - in-flight count `< maxParallel` AND a held sibling exists → `release` the
52
46
  * next held sibling (lowest `variant_label`).
53
47
  * - otherwise → `noop`.
54
48
  *
55
- * "In-flight" = a non-terminal, non-`wave_gated` child (it has been dispatched
56
- * and not yet completed). The just-completed child is terminal, so it does not
57
- * count against the window — its slot is the one we are filling.
49
+ * "In-flight" = a non-terminal, non-`wave_gated` child. The just-completed
50
+ * child is terminal, so its slot is the one being filled.
58
51
  */
59
52
  export declare function evaluateWave(db: Kysely<Database>, evaluation: WaveEvaluation): Promise<WaveResult>;
60
53
  //# sourceMappingURL=wave-scheduler.d.ts.map
@@ -1,16 +1,9 @@
1
1
  import type { LogStorage } from '../reporting/log-storage.js';
2
- /**
3
- * Object-storage key holding the webhook payload for a run. Shared by the
4
- * writers and by the re-run path that copies a payload forward, so the layout
5
- * is stated once.
6
- */
2
+ /** Object-storage key of a run's webhook payload, shared by the writers and the re-run copy. */
7
3
  export declare function webhookPayloadPath(runId: string): string;
8
4
  /**
9
- * Store a run's triggering webhook payload, best-effort.
10
- *
11
- * A failure is logged and swallowed: the payload is a debugging aid, and losing
12
- * it must never cost the run that was about to execute. A no-op when the
13
- * orchestrator has no object storage configured.
5
+ * Best-effort: a failure is logged and swallowed, because losing a debugging
6
+ * aid must never cost the run. A no-op without object storage.
14
7
  */
15
8
  export declare function storeWebhookPayload(args: {
16
9
  logStorage: LogStorage | undefined;
@@ -1,22 +1,18 @@
1
1
  /**
2
- * Load a workflow repository's lock entries as they were at a recorded commit.
3
- *
4
- * An organization-wide run records the commit of the repository that defines
5
- * its workflow (`execution_runs.workflow_sha`). Two paths act on such a run
6
- * later, after that repository may have moved on: the re-run of a finished
7
- * global run, and the release of a held evaluation round. Both must run the
8
- * workflow version the run was created against, never the registration's
9
- * current one. This module is the one place that resolves it.
2
+ * Load a workflow repository's lock entries at the commit an organization-wide
3
+ * run recorded (`execution_runs.workflow_sha`). The re-run of a finished global
4
+ * run and the release of a held evaluation round act after that repository may
5
+ * have moved on, and must run the version the run was created against, never
6
+ * the registration's current one. This module is the one place that resolves it.
10
7
  */
11
8
  import type { LockFile, LockWorkflow } from '@kici-dev/engine';
12
9
  import type { ProviderRegistry } from '../provider-registry.js';
13
10
  import type { RegisteredWorkflow } from '../registration/registration-index.js';
14
11
  import { type DepCacheKey } from '@kici-dev/shared';
15
12
  /**
16
- * Whether a lock entry is an organization-wide workflow: a trigger carries
17
- * `repos:`. The re-run and the held-round release both judge a workflow by its
18
- * entry at the recorded commit through this one rule, never by the current
19
- * registration.
13
+ * A lock entry is organization-wide when a trigger carries `repos:`. The re-run
14
+ * and the held-round release judge a workflow by its entry at the recorded
15
+ * commit through this one rule, never by the current registration.
20
16
  */
21
17
  export declare function isOrganizationWideEntry(entry: LockWorkflow): boolean;
22
18
  /**
@@ -37,14 +33,12 @@ export interface WorkflowLockEntryAtSha {
37
33
  depCacheKey: DepCacheKey;
38
34
  }
39
35
  /**
40
- * The lock entries of `registrations` at `sha`, keyed by workflow name.
41
- *
42
- * Every registration must belong to the same workflow repository. When each
43
- * registration is already at `sha`, its stored lock entry is that version and
44
- * nothing is fetched. Otherwise the lock file is fetched at `sha` through the
45
- * registration's own provider bundle, with the registration's provider context
46
- * — the same fetcher a per-repository re-run reads its own lock file with. A
47
- * workflow the lock file at `sha` does not define is absent from the result.
36
+ * The lock entries of `registrations` at `sha`, keyed by workflow name. Every
37
+ * registration must belong to one workflow repository. When each is already at
38
+ * `sha`, its stored lock entry is that version and nothing is fetched; otherwise
39
+ * the lock file is fetched at `sha` through the registration's own bundle and
40
+ * provider context, the fetcher a per-repository re-run uses. A workflow the
41
+ * lock file at `sha` does not define is absent from the result.
48
42
  *
49
43
  * Throws, naming the workflow repository, when the lock file cannot be read:
50
44
  * the caller refuses rather than falling back to any other version.
@@ -106,7 +106,7 @@ export declare function assertDashboardWriteAllowed(db: Kysely<Database>, custom
106
106
  * Merge `updates` into the persisted policy and persist the result.
107
107
  * Unknown keys in `updates` are rejected at the Zod schema layer
108
108
  * before this function runs (kici-admin already validates). Any
109
- * operation explicitly set to `true` is normalized away — the
109
+ * operation explicitly set to `'permissive'` is normalized away — the
110
110
  * permissive default lives in the absence of the key, keeping the
111
111
  * JSONB shape minimal.
112
112
  *
@@ -81,12 +81,6 @@ export interface ProviderBundle {
81
81
  */
82
82
  export declare class ProviderRegistry {
83
83
  private readonly bundles;
84
- /**
85
- * Register a provider bundle by routing key.
86
- *
87
- * Each routing key gets its own bundle with per-app credentials.
88
- * Routing keys have the format "{provider}:{id}" (e.g., "github:12345").
89
- */
90
84
  registerByRoutingKey(routingKey: string, bundle: ProviderBundle): void;
91
85
  /**
92
86
  * Register the provider-wide default bundle for `type`, stored under the
@@ -104,9 +98,6 @@ export declare class ProviderRegistry {
104
98
  */
105
99
  hasExact(routingKey: string): boolean;
106
100
  /**
107
- * Get the provider bundle by routing key.
108
- * Routing keys have the format "{provider}:{id}" (e.g., "github:12345").
109
- *
110
101
  * A key with no bundle of its own falls back only to its type's default
111
102
  * bundle (`{type}:default`, e.g. `generic:default`, which stands in for every
112
103
  * plain generic source). It never falls back to another key's bundle: that
@@ -115,30 +106,20 @@ export declare class ProviderRegistry {
115
106
  */
116
107
  getByRoutingKey(routingKey: string): ProviderBundle | undefined;
117
108
  /**
118
- * Get just the normalizer for a routing key.
119
109
  * Convenience method for webhook handling.
120
110
  */
121
111
  getNormalizerByRoutingKey(routingKey: string): WebhookNormalizer | undefined;
122
- /**
123
- * Iterate over all registered bundles.
124
- */
125
112
  getAll(): IterableIterator<[string, ProviderBundle]>;
126
- /**
127
- * Get all registered routing keys.
128
- */
129
113
  getRoutingKeys(): string[];
130
114
  /**
131
- * Remove a routing key and its bundle.
132
115
  * Used during config reload when apps are removed.
133
116
  */
134
117
  unregister(routingKey: string): boolean;
135
118
  /**
136
- * Check if a routing key is for a generic webhook source.
137
119
  * Generic routing keys have the format "generic:{orgId}:{sourceId}".
138
120
  */
139
121
  static isGenericRoutingKey(routingKey: string): boolean;
140
122
  /**
141
- * Remove all registered bundles.
142
123
  * Used during full config rebuild on reload.
143
124
  */
144
125
  clear(): void;