@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.
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 +121 -233
  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 +39 -45
  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 +33 -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 +7 -7
  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 +33 -59
  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 +4553 -6556
  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 +143 -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 +251 -486
  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 +289 -525
  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 +65 -151
  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 +21 -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 +21 -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 +19 -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 +45 -0
  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/test-direct.d.ts +46 -0
  473. package/dist/routes/uploads.d.ts +14 -19
  474. package/dist/routes/webhooks.d.ts +2 -24
  475. package/dist/scaler/agent-binary-location.d.ts +77 -0
  476. package/dist/scaler/agent-fit.d.ts +2 -2
  477. package/dist/scaler/backend-factory.d.ts +10 -18
  478. package/dist/scaler/bare-metal-backend.d.ts +28 -45
  479. package/dist/scaler/claim-store.d.ts +20 -43
  480. package/dist/scaler/config.d.ts +10 -37
  481. package/dist/scaler/container-backend.d.ts +22 -35
  482. package/dist/scaler/container-hostconfig.d.ts +10 -16
  483. package/dist/scaler/container-routing.d.ts +10 -13
  484. package/dist/scaler/disk-guard.d.ts +2 -3
  485. package/dist/scaler/event-backend.d.ts +33 -58
  486. package/dist/scaler/event-provision-reaper.d.ts +61 -84
  487. package/dist/scaler/failure-tracker.d.ts +6 -13
  488. package/dist/scaler/file-tail.d.ts +6 -19
  489. package/dist/scaler/firecracker-api.d.ts +19 -63
  490. package/dist/scaler/firecracker-backend.d.ts +142 -258
  491. package/dist/scaler/host-access.d.ts +7 -10
  492. package/dist/scaler/index.d.ts +3 -6
  493. package/dist/scaler/ip-allocator.d.ts +30 -82
  494. package/dist/scaler/label-matcher.d.ts +14 -35
  495. package/dist/scaler/log-forwarder.d.ts +6 -25
  496. package/dist/scaler/machine-ledger.d.ts +39 -86
  497. package/dist/scaler/manager.d.ts +517 -787
  498. package/dist/scaler/pending-scale-sweeper.d.ts +8 -11
  499. package/dist/scaler/reap-orphans.d.ts +8 -12
  500. package/dist/scaler/resolve-container-auth.d.ts +12 -21
  501. package/dist/scaler/scaler-events.d.ts +2 -5
  502. package/dist/scaler/scaler-state-store.d.ts +127 -189
  503. package/dist/scaler/spawn-errors.d.ts +1 -4
  504. package/dist/scaler/startup-orphan-sweep.d.ts +3 -4
  505. package/dist/scaler/startup-tools-check.d.ts +21 -0
  506. package/dist/scaler/types.d.ts +142 -255
  507. package/dist/scaler/vm-job-bindings.d.ts +5 -9
  508. package/dist/scaler/warm-pool.d.ts +46 -93
  509. package/dist/secrets/audit-logger.d.ts +0 -3
  510. package/dist/secrets/backend-health.d.ts +0 -9
  511. package/dist/secrets/backend-registry.d.ts +0 -9
  512. package/dist/secrets/cleanup.d.ts +0 -1
  513. package/dist/secrets/config.d.ts +0 -3
  514. package/dist/secrets/ephemeral-keys.d.ts +0 -3
  515. package/dist/secrets/pg-secret-store.d.ts +0 -3
  516. package/dist/secrets/rbac.d.ts +5 -7
  517. package/dist/secrets/routing-key-scope.d.ts +1 -0
  518. package/dist/secrets/secret-output-store.d.ts +0 -6
  519. package/dist/secrets/secret-resolver.d.ts +2 -6
  520. package/dist/secrets/token-manager.d.ts +1 -4
  521. package/dist/secrets/vault-secret-store.d.ts +0 -13
  522. package/dist/security/comment-handler.d.ts +0 -2
  523. package/dist/security/workflow-diff.d.ts +1 -1
  524. package/dist/server.js +49004 -53782
  525. package/dist/sources/source-manager.d.ts +0 -3
  526. package/dist/sources/source-store.d.ts +0 -9
  527. package/dist/sources/source-validator.d.ts +0 -3
  528. package/dist/stale-detector/all-terminal-runs.d.ts +8 -11
  529. package/dist/stale-detector/gate-deadline-detector.d.ts +14 -19
  530. package/dist/stale-detector/reboot-deadline-sweep.d.ts +7 -11
  531. package/dist/stale-detector/stale-dispatch-candidates.d.ts +13 -20
  532. package/dist/stale-detector/stale-run-detector.d.ts +74 -121
  533. package/dist/stale-detector/workflow-deadline-detector.d.ts +15 -43
  534. package/dist/standalone.js +9342 -13077
  535. package/dist/storage/blob-routes.d.ts +10 -19
  536. package/dist/storage/filesystem.d.ts +19 -29
  537. package/dist/storage/index.d.ts +2 -10
  538. package/dist/storage/key-discriminator.d.ts +8 -10
  539. package/dist/storage/loopback-guard.d.ts +27 -45
  540. package/dist/storage/s3.d.ts +26 -53
  541. package/dist/storage/sign-url.d.ts +7 -22
  542. package/dist/storage/types.d.ts +46 -72
  543. package/dist/webhook/event-log.d.ts +0 -2
  544. package/dist/webhook/generic-sources.d.ts +0 -21
  545. package/dist/webhook/ingest-admission.d.ts +0 -1
  546. package/dist/webhook/relay-buffer.d.ts +2 -2
  547. package/dist/webhook/verify-inbound.d.ts +0 -1
  548. package/dist/worker/in-memory-execution-tracker.d.ts +9 -31
  549. package/dist/worker/in-memory-job-queue.d.ts +32 -72
  550. package/dist/worker/peer-outbox.d.ts +5 -8
  551. package/dist/worker/reroute-dispatch.d.ts +4 -6
  552. package/dist/worker/static-agent-token-store.d.ts +6 -27
  553. package/dist/worker/worker-outbox-relay.d.ts +2 -2
  554. package/dist/worker/worker-status.d.ts +3 -20
  555. package/dist/ws/agent-api-registry.d.ts +8 -27
  556. package/dist/ws/agent-handler.d.ts +63 -110
  557. package/dist/ws/agent-heartbeat.d.ts +5 -12
  558. package/dist/ws/bringup-api.d.ts +31 -38
  559. package/dist/ws/dashboard-backends-handler.d.ts +12 -22
  560. package/dist/ws/dashboard-context-handler.d.ts +37 -80
  561. package/dist/ws/dashboard-diagnostics-handler.d.ts +8 -25
  562. package/dist/ws/dashboard-dispatch-guard.d.ts +3 -4
  563. package/dist/ws/dashboard-fleet-handler.d.ts +9 -13
  564. package/dist/ws/dashboard-fleet-write-handler.d.ts +7 -21
  565. package/dist/ws/dashboard-global-workflows-handler.d.ts +22 -44
  566. package/dist/ws/dashboard-registrations-handler.d.ts +10 -27
  567. package/dist/ws/dashboard-run-state-handler.d.ts +10 -13
  568. package/dist/ws/event-buffer.d.ts +3 -6
  569. package/dist/ws/execution-status-frame.d.ts +7 -10
  570. package/dist/ws/failure-messages.d.ts +9 -14
  571. package/dist/ws/fleet-agent-collector.d.ts +6 -12
  572. package/dist/ws/fleet-runs-on-all.d.ts +1 -6
  573. package/dist/ws/git-credential-relay.d.ts +12 -20
  574. package/dist/ws/inventory-api.d.ts +4 -5
  575. package/dist/ws/observer-registry.d.ts +14 -59
  576. package/dist/ws/ownership-gate.d.ts +1 -1
  577. package/dist/ws/platform-client.d.ts +21 -30
  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 +46 -63
  581. package/installer-image-digests.json +3 -3
  582. package/package.json +6 -5
  583. package/sbom.spdx.json +53 -53
  584. package/dist/__test-helpers__/fake-scaler-state-store.d.ts +0 -24
  585. package/dist/__test-helpers__/mock-db-query.d.ts +0 -129
  586. package/dist/__test-helpers__/mock-db.d.ts +0 -134
  587. package/dist/__test-helpers__/mock-ws.d.ts +0 -13
  588. package/dist/__test-helpers__/peer-mutual-auth.d.ts +0 -42
  589. package/dist/__test-helpers__/scratch-db.d.ts +0 -16
  590. package/dist/__test-helpers__/test-db.d.ts +0 -34
  591. package/dist/pipeline/dispatch-matched-workflow.test-helpers.d.ts +0 -121
  592. package/dist/scaler/container-spawn.d.ts +0 -28
@@ -1,17 +1,13 @@
1
1
  /**
2
- * Durable job-to-agent bindings, read from the coordinator's dispatch queue.
3
- *
4
- * A worker has no database, so this is the coordinator's half of the
5
- * live-VM tracking: a VM whose agent holds a non-terminal job is tracked, even
6
- * when the node that runs the VM has lost every in-memory trace of it.
2
+ * Durable job-to-agent bindings from the coordinator's dispatch queue: the coordinator's half
3
+ * of live-VM tracking (a worker has no database). A VM whose agent holds a non-terminal job is
4
+ * tracked even when its node has lost every in-memory trace of it.
7
5
  */
8
6
  import type { Kysely } from 'kysely';
9
7
  import type { Database } from '../db/types.js';
10
8
  /**
11
- * The non-terminal job each of `agentIds` holds, keyed by agent id. An agent
12
- * holds a job it was dispatched (`agent_id`) and a job waiting for it to
13
- * reconnect (`recovery_agent_id`). The value is the job id the queue
14
- * dispatches by, `dispatch_queue.id`.
9
+ * The non-terminal job (`dispatch_queue.id`) each of `agentIds` holds: one it was dispatched
10
+ * (`agent_id`) or one waiting for it to reconnect (`recovery_agent_id`).
15
11
  */
16
12
  export declare function findActiveJobBindings(db: Kysely<Database>, agentIds: readonly string[]): Promise<Map<string, string>>;
17
13
  //# sourceMappingURL=vm-job-bindings.d.ts.map
@@ -1,69 +1,51 @@
1
1
  /**
2
2
  * Warm pool manager for pre-provisioned idle agents.
3
3
  *
4
- * Each configured label set has a target `size`. On every tick the manager asks
5
- * the agent registry how many agents could already serve a job with those
6
- * labels, subtracts the spawns it has issued but not yet seen register, and
7
- * starts the difference. It holds no list of its own: the agent registry is the
8
- * single source of truth for what is ready, which is also what the dispatcher
9
- * reads, so the two can never disagree.
4
+ * Each configured label set has a target `size`. Every tick the manager starts
5
+ * `size - ready - inFlight` agents, where `ready` comes from the agent registry.
6
+ * It holds no list of its own: the registry is the single source of truth for
7
+ * what is ready, and the dispatcher reads it too, so the two never disagree.
10
8
  *
11
- * Uses a callback pattern to avoid circular dependencies with ScalerManager.
9
+ * Callbacks avoid a circular dependency with ScalerManager.
12
10
  */
13
11
  export interface WarmPoolCallbacks {
14
- /** Request the ScalerManager to spawn a new agent for the given label set */
15
12
  onSpawnRequest: (labelSet: string[], backendName: string) => Promise<void>;
16
- /** Request the ScalerManager to destroy an idle agent */
17
13
  onDestroyRequest: (managedId: string, backendName: string) => Promise<void>;
18
14
  /**
19
- * How many registered agents could serve a job with this label set right
20
- * now. Backed by `AgentRegistry.findAvailable`, which is the same query the
21
- * dispatcher uses — so the warm pool and the dispatcher can never disagree
22
- * about what "ready" means.
23
- *
24
- * A static agent that matches the labels counts: it removes the need for a
25
- * warm one just as well as a spawned agent does.
15
+ * Registered agents that could serve a job with this label set now, via
16
+ * `AgentRegistry.findAvailable` — the dispatcher's own query. A matching
17
+ * static agent counts: it removes the need for a warm one just as well.
26
18
  */
27
19
  countAvailable: (labels: string[]) => number;
28
20
  /**
29
21
  * Agents this backend spawned that match the label set and have never run a
30
- * job, with the timestamp they registered at. `registeredAt` doubles as
31
- * "idle since": scaler agents are single-use, so an agent still registered
32
- * with no active job has been idle since it came up.
22
+ * job. `registeredAt` doubles as "idle since": scaler agents are single-use.
33
23
  *
34
- * Scoped to the backend because the result feeds the reaper, and the reaper
35
- * destroys what it is given. A static agent that happens to match the labels
36
- * is ready capacity, not this pool's to tear down.
24
+ * Scoped to the backend because the reaper destroys what it is given; a
25
+ * matching static agent is ready capacity, not this pool's to tear down.
37
26
  */
38
27
  listIdle: (labels: string[], backendName: string) => Array<{
39
28
  agentId: string;
40
29
  registeredAt: number;
41
30
  }>;
42
31
  /**
43
- * How many more agents this backend may still start before it reaches the
44
- * scaler's `maxAgents` or the orchestrator's `globalMaxAgents`, whichever
45
- * binds first. The deficit is clamped to it, so a pool that cannot reach its
46
- * target stops asking instead of issuing a spawn the caps refuse every tick.
32
+ * Headroom before the scaler's `maxAgents` or the orchestrator's
33
+ * `globalMaxAgents`, whichever binds first. The deficit is clamped to it, so
34
+ * a pool that cannot reach its target stops issuing spawns the caps refuse.
47
35
  */
48
36
  capacityRemaining: (backendName: string) => number;
49
37
  /**
50
- * Called at the end of each tick, once the reap and the deficit pass have
51
- * run. The ScalerManager publishes the warm-pool gauges from it, so they
52
- * follow the pool rather than the scrape.
38
+ * Runs after each tick's reap and deficit pass; the ScalerManager publishes
39
+ * the warm-pool gauges from it, so they follow the pool rather than the scrape.
53
40
  */
54
41
  onTick?: () => void;
55
42
  }
56
- /** One label set's fill state, as the warm-pool metrics report it. */
57
43
  export interface WarmPoolStats {
58
44
  /**
59
- * The pool's identity: its normalized DECLARED label set, which is the
60
- * `configs` map key.
61
- *
62
- * This — not `labels` — is what a per-pool metric dimension keys on. Two
63
- * pools on one scaler can widen to the SAME query set (one label set
64
- * declaring the plain platform label the other only gets from the taint), so
65
- * a dimension built from `labels` collapses them into one series and silently
66
- * drops a pool's fill state.
45
+ * The normalized DECLARED label set (the `configs` key). Per-pool metric
46
+ * dimensions key on this, not `labels`: two pools on one scaler can widen to
47
+ * the SAME query set (one declares the platform label the other gets from the
48
+ * taint), and keying on `labels` would silently drop a pool's fill state.
67
49
  */
68
50
  key: string;
69
51
  /** The widened query set the `ready` count was measured with. */
@@ -75,22 +57,16 @@ export interface WarmPoolStats {
75
57
  }
76
58
  export declare class WarmPoolManager {
77
59
  private readonly callbacks;
78
- /** Configuration per normalized label set */
79
60
  private readonly configs;
80
61
  /**
81
62
  * Warm spawns issued but not yet registered, per normalized label set.
82
- *
83
- * Load-bearing: without it, two passes landing before the first spawn
84
- * registers would each see the full deficit and issue `size` spawns apiece.
63
+ * Without it, two passes before the first spawn registers would each issue
64
+ * `size` spawns.
85
65
  */
86
66
  private readonly inFlight;
87
- /** Periodic deficit + idle check interval */
88
67
  private idleCheckInterval;
89
68
  constructor(callbacks: WarmPoolCallbacks);
90
69
  /**
91
- * Configure the warm pool for a label set.
92
- * Called during ScalerManager initialization based on YAML config.
93
- *
94
70
  * `normalizedLabels` keys the pool by its DECLARED label set, which is what
95
71
  * every in-flight release path normalizes back to.
96
72
  */
@@ -101,52 +77,36 @@ export declare class WarmPoolManager {
101
77
  spawnLabels: string[];
102
78
  }): void;
103
79
  /**
104
- * One deficit pass. For each configured label set, top the pool up to its
105
- * target: `size - ready - inFlight`, clamped by the backend's remaining cap
106
- * headroom.
107
- *
108
- * The per-backend budget is tracked across the whole pass: two label sets on
109
- * one scaler draw from the same `maxAgents`, so clamping each against the
110
- * same starting headroom would let them jointly overshoot it.
80
+ * One deficit pass. The per-backend budget spans the whole pass: two label
81
+ * sets on one scaler draw from the same `maxAgents`, so clamping each against
82
+ * the same starting headroom would let them jointly overshoot it.
111
83
  */
112
84
  evaluate(): void;
113
- /** A warm spawn registered: release its in-flight slot. */
114
85
  onWarmAgentRegistered(labels: string[]): void;
115
86
  /**
116
87
  * A warm spawn failed, timed out, or was pruned as never-registered: release
117
- * its in-flight slot so the next pass retries it. Without this the slot is
118
- * held forever and the pool sits permanently below target.
88
+ * its in-flight slot so the next pass retries it.
119
89
  */
120
90
  onWarmSpawnFailed(labels: string[]): void;
121
91
  private releaseInFlight;
122
- /** Per-label-set fill state, for the warm-pool metrics. */
123
92
  getStats(): WarmPoolStats[];
124
93
  /**
125
- * Start the periodic tick: reap surplus agents past their idle timeout, then
126
- * top the pools back up.
94
+ * Start the periodic tick: reap surplus idle agents, then top the pools up.
127
95
  *
128
- * The first pass runs immediately rather than a tick later. The one caller
129
- * is `ScalerManager.startWarmPools()`, which each host reaches only after
130
- * `ensureHostsReady()` and — on the coordinator — after the event emitter
131
- * is assigned, so spawning here is safe. Waiting a tick instead would leave
132
- * the pool empty for 30 seconds after every restart, which is precisely the
133
- * cold start it exists to remove.
96
+ * The first pass runs immediately: waiting a tick would leave the pool empty
97
+ * for 30 seconds after every restart, the cold start it exists to remove. It
98
+ * is safe because the one caller, `ScalerManager.startWarmPools()`, runs only
99
+ * after `ensureHostsReady()` and, on the coordinator, after the event emitter
100
+ * is assigned.
134
101
  */
135
102
  start(): void;
136
- /**
137
- * Stop the periodic tick.
138
- */
139
103
  stop(): void;
140
- /**
141
- * Total ready agents across every configured pool. Surfaced by
142
- * `getStatus().warmPoolCount`.
143
- */
104
+ /** Ready agents across every pool; surfaced by `getStatus().warmPoolCount`. */
144
105
  getTotalPoolSize(): number;
145
106
  /**
146
- * Update configs. Destroy surplus agents in pools that shrunk, and drop
147
- * pools whose config disappeared (the scaler was removed from the config,
148
- * or its `warmPool.enabled` flipped to false) — a warm agent must not
149
- * outlive the config that asked for it.
107
+ * Destroy surplus agents in pools that shrunk, and drop pools whose config
108
+ * disappeared (scaler removed, or `warmPool.enabled` set to false) — a warm
109
+ * agent must not outlive the config that asked for it.
150
110
  */
151
111
  reload(newConfigs: Map<string, {
152
112
  backendName: string;
@@ -156,28 +116,21 @@ export declare class WarmPoolManager {
156
116
  spawnLabels: string[];
157
117
  }>): void;
158
118
  /**
159
- * Destroy this pool's idle agents beyond `keep`, oldest first.
160
- *
161
- * Oldest-first because the survivors are the ones with the most time left
162
- * before the idle reaper takes them, which is the set an arriving job is
163
- * most likely to find still ready.
119
+ * Destroy this pool's idle agents beyond `keep`, oldest first: the survivors
120
+ * have the most time left before the idle reaper, so an arriving job is most
121
+ * likely to find them still ready.
164
122
  */
165
123
  private destroyIdle;
166
124
  /**
167
125
  * Destroy agents that are BOTH surplus to the pool's target AND idle past
168
- * its timeout. `registeredAt` is the idle-since stamp: scaler agents are
169
- * single-use, so an agent still registered with no active job has never run
170
- * one.
171
- *
172
- * The target check is what stops the pool churning against itself. Reaping
173
- * on age alone means a quiet pool destroys its own agent every
174
- * `idleTimeoutSeconds` and immediately re-spawns it: the provisioning
175
- * workflow runs forever on zero traffic, and — because an event-backend
176
- * replacement takes minutes to boot — the pool is below target for much of
177
- * every cycle. A warm pool that is cold most of the time is worse than none.
178
- * So the timeout trims surplus only: a pool sitting at `size` never reaps.
126
+ * its timeout (`registeredAt` is the idle-since stamp).
179
127
  *
180
- * `size: 0` still drains, because then every ready agent is surplus.
128
+ * The target check stops the pool churning against itself. Reaping on age
129
+ * alone makes a quiet pool destroy and re-spawn its agent every
130
+ * `idleTimeoutSeconds`: the provisioning workflow runs forever on zero
131
+ * traffic, and since an event-backend replacement takes minutes to boot, the
132
+ * pool is below target for much of every cycle. So a pool at `size` never
133
+ * reaps; `size: 0` still drains, since every ready agent is then surplus.
181
134
  *
182
135
  * Exposed for testing.
183
136
  */
@@ -35,14 +35,11 @@ export declare class AuditLogger {
35
35
  * `deleteSecret`, the scope writes, `rotateKey`, `secret-outputs.reveal`) bypass the
36
36
  * sampler — they are transactional with the mutation and must always
37
37
  * land.
38
- *
39
- * @param entry - The audit entry to record.
40
38
  */
41
39
  log(entry: AuditEntry): Promise<void>;
42
40
  /**
43
41
  * Query audit log entries with optional filters.
44
42
  *
45
- * @param opts - Query filters and pagination.
46
43
  * @returns Matching audit log rows ordered by timestamp descending.
47
44
  */
48
45
  query(opts: {
@@ -27,13 +27,7 @@ export declare class BackendHealthChecker {
27
27
  * Check health of all enabled backends in parallel.
28
28
  */
29
29
  checkAllBackends(): Promise<Map<string, BackendHealthStatus>>;
30
- /**
31
- * Start periodic health checks at the given interval.
32
- */
33
30
  startPeriodicCheck(intervalMs?: number): void;
34
- /**
35
- * Stop periodic health checks.
36
- */
37
31
  stopPeriodicCheck(): void;
38
32
  /**
39
33
  * Test connectivity to a backend without persisting it.
@@ -44,9 +38,6 @@ export declare class BackendHealthChecker {
44
38
  error?: string;
45
39
  latencyMs: number;
46
40
  }>;
47
- /**
48
- * Probe a backend by type and return its health status.
49
- */
50
41
  private probeBackend;
51
42
  /**
52
43
  * Probe a PG backend by running SELECT 1.
@@ -71,17 +71,8 @@ export declare class BackendRegistry {
71
71
  * Returns a map of backend name to SecretStore.
72
72
  */
73
73
  loadAllStores(auditLogger: AuditLogger): Promise<Map<string, SecretStore>>;
74
- /**
75
- * Create a SecretStore for a given backend type and config.
76
- */
77
74
  createStoreForBackend(backendType: BackendType, config: Record<string, unknown>, auditLogger: AuditLogger): SecretStore | null;
78
- /**
79
- * Update health status for a backend.
80
- */
81
75
  updateHealthStatus(name: string, status: BackendHealthStatus, error?: string): Promise<void>;
82
- /**
83
- * Update sync status for a backend.
84
- */
85
76
  updateSyncStatus(name: string, scopeCount: number, error?: string): Promise<void>;
86
77
  /**
87
78
  * Re-encrypt every non-sentinel backend config under the current master key
@@ -12,7 +12,6 @@ export interface SecretCleanupDeps {
12
12
  db: Kysely<Database>;
13
13
  /** Max age in hours before rows are considered orphaned. Default: 24 */
14
14
  maxAgeHours?: number;
15
- /** Optional logger for cleanup messages */
16
15
  logger?: {
17
16
  info(msg: string, meta?: Record<string, unknown>): void;
18
17
  warn(msg: string, meta?: Record<string, unknown>): void;
@@ -1,6 +1,3 @@
1
- /**
2
- * Secret store configuration.
3
- */
4
1
  export interface SecretStoreConfig {
5
2
  /** 32-byte AES-256 encryption key. */
6
3
  masterKey: Buffer;
@@ -1,4 +1,3 @@
1
- /** AAD string used when encrypting/decrypting private keys with secret key. */
2
1
  /** AAD binding a wrapped run private key to its purpose (AES-GCM authenticated data). */
3
2
  export declare const PRIVATE_KEY_AAD = "ephemeral-private-key";
4
3
  /**
@@ -46,7 +45,6 @@ export declare function decryptPrivateKey(encryptedData: string, secretKey: stri
46
45
  *
47
46
  * @param envelope - { agentPublicKey: base64, encrypted: base64 (IV||AuthTag||Ciphertext) }
48
47
  * @param runPrivateKeyDer - DER-encoded run private key Buffer
49
- * @returns Decrypted plaintext string
50
48
  */
51
49
  export declare function decryptSecretOutput(envelope: {
52
50
  agentPublicKey: string;
@@ -62,7 +60,6 @@ export declare function decryptSecretOutput(envelope: {
62
60
  *
63
61
  * @param envelope - `{ ephemeralPublicKey: base64 DER-SPKI, encrypted: base64 IV||tag||ct }`
64
62
  * @param encryptionPrivateKeyDer - DER-encoded orchestrator X25519 private key
65
- * @returns Decrypted plaintext string
66
63
  */
67
64
  export declare function decryptDashboardSealedWrite(envelope: {
68
65
  ephemeralPublicKey: string;
@@ -85,9 +85,6 @@ export declare class PgSecretStore implements SecretStore {
85
85
  * keeps a key stored before this rule readable and deletable.
86
86
  */
87
87
  setSecret(orgId: string, scope: string, key: string, value: string): Promise<void>;
88
- /**
89
- * Delete a secret from a scope.
90
- */
91
88
  deleteSecret(orgId: string, scope: string, key: string): Promise<void>;
92
89
  /**
93
90
  * List all secret key names in a scope (no values returned).
@@ -23,10 +23,11 @@ export type Permission = 'context.create' | 'context.read' | 'context.update' |
23
23
  /** Stop live Firecracker VMs the node's orchestrator does not track. */
24
24
  | 'scaler.manage'
25
25
  /** Drop a departed peer from the coordinators' live peer registries. */
26
- | 'peer.manage';
27
- /**
28
- * Error thrown when a role lacks the required permission.
29
- */
26
+ | 'peer.manage'
27
+ /** Start or cancel a `kici run remote` test run through the direct test-run routes. */
28
+ | 'test_run.trigger'
29
+ /** Follow a test run's status and logs through the direct test-run routes. */
30
+ | 'test_run.read';
30
31
  export declare class PermissionDeniedError extends Error {
31
32
  readonly role: Role;
32
33
  readonly permission: Permission;
@@ -39,9 +40,6 @@ export declare class PermissionDeniedError extends Error {
39
40
  * No database or external state -- purely in-memory evaluation.
40
41
  */
41
42
  export declare class RbacEnforcer {
42
- /**
43
- * Check whether a role has a specific permission.
44
- */
45
43
  hasPermission(role: Role, permission: Permission): boolean;
46
44
  /**
47
45
  * Require a permission, throwing PermissionDeniedError if not authorized.
@@ -25,6 +25,7 @@
25
25
  * they use `requireUnscopedToken` instead.
26
26
  */
27
27
  import type { Context } from 'hono';
28
+ export declare const UNSCOPED_REQUIRED_MESSAGE = "Access denied: this route requires an unscoped admin token (the calling token is restricted to a single routing key)";
28
29
  /**
29
30
  * Reject the request with 403 when the calling token has a routing-key
30
31
  * scope and the request targets a different routing key.
@@ -1,11 +1,5 @@
1
1
  /**
2
2
  * Secret output store for cross-job secret output CRUD.
3
- *
4
- * Provides typed operations against the run_secret_outputs table:
5
- * - Upsert encrypted secret outputs (per run/job/key)
6
- * - Retrieve outputs for a specific job or multiple upstream jobs
7
- * - Delete all outputs for a run (cleanup)
8
- * - Delete orphaned outputs older than a threshold (maintenance)
9
3
  */
10
4
  import type { Kysely } from 'kysely';
11
5
  import type { Database } from '../db/types.js';
@@ -55,9 +55,6 @@ export interface SecretStoreLike {
55
55
  decrypt(secret: ScopedSecret): string;
56
56
  getSecrets(orgId: string, scope: string): Promise<Record<string, string>>;
57
57
  }
58
- /**
59
- * Dependencies for the SecretResolver.
60
- */
61
58
  export interface SecretResolverDeps {
62
59
  bindingStore: BindingStoreLike;
63
60
  /** Map of backend name to store. Replaces single secretStore. */
@@ -114,7 +111,6 @@ export declare class SecretResolver implements SecretResolverApi {
114
111
  /**
115
112
  * Resolve secrets for a job dispatch.
116
113
  *
117
- * @param orgId - Organization ID
118
114
  * @param context - The matched context row and the name the job declared
119
115
  * @param hostCtx - Optional fan-out child identity for per-host resolution.
120
116
  * When supplied, each binding is gated by its `host_pattern` and its
@@ -160,14 +156,14 @@ export declare class SecretResolver implements SecretResolverApi {
160
156
  /** How many scope bindings the context row `contextId` has. */
161
157
  countContextBindings(contextId: string): Promise<number>;
162
158
  /**
163
- * Resolve secrets with metadata (per, for secrets.getMeta).
159
+ * Resolve secrets with metadata (for secrets.getMeta).
164
160
  *
165
161
  * Returns the secret value along with which backend and scope provided it.
166
162
  */
167
163
  resolveForContextWithMeta(orgId: string, context: MatchedContextRef, hostCtx?: HostFacts): Promise<Record<string, ResolvedSecretMeta>>;
168
164
  /**
169
165
  * Collect all secrets from all backend stores, prefixing scopes.
170
- * Per /: unreachable backends are tracked but not fatal here.
166
+ * Unreachable backends are tracked but not fatal here.
171
167
  * Callers apply scoped failure policy based on job bindings.
172
168
  */
173
169
  private collectAllSecrets;
@@ -32,7 +32,6 @@ export declare class TokenManager {
32
32
  *
33
33
  * On success, fires a non-blocking update to last_used_at.
34
34
  *
35
- * @param token - The plaintext token to validate.
36
35
  * @returns Token info if valid, null if invalid/expired/revoked.
37
36
  */
38
37
  validate(token: string): Promise<{
@@ -40,10 +39,8 @@ export declare class TokenManager {
40
39
  role: Role;
41
40
  routingKey: string | null;
42
41
  label: string;
42
+ subject: string | null;
43
43
  } | null>;
44
- /**
45
- * Revoke a token by ID.
46
- */
47
44
  revokeToken(tokenId: string): Promise<void>;
48
45
  /**
49
46
  * List all tokens (excluding hash for security).
@@ -1,12 +1,8 @@
1
1
  import type { SecretStore } from '@kici-dev/engine';
2
2
  import type { Logger } from '@kici-dev/shared';
3
- /**
4
- * Configuration for the Vault secret store backend.
5
- */
6
3
  export interface VaultConfig {
7
4
  /** Vault server URL (e.g., 'http://vault:8200'). */
8
5
  vaultUrl: string;
9
- /** Authentication method. */
10
6
  authMethod: 'approle' | 'token';
11
7
  /** AppRole role ID (required for 'approle' auth). */
12
8
  roleId?: string;
@@ -45,9 +41,6 @@ export declare class VaultSecretStore implements SecretStore {
45
41
  private authenticate;
46
42
  private getToken;
47
43
  private withRetry;
48
- /**
49
- * Build the full Vault path for a scoped secret.
50
- */
51
44
  private secretPath;
52
45
  /**
53
46
  * Get all secrets for a scope as key-value pairs.
@@ -57,13 +50,7 @@ export declare class VaultSecretStore implements SecretStore {
57
50
  * Set (create or update) a secret in a scope.
58
51
  */
59
52
  setSecret(orgId: string, scope: string, key: string, value: string): Promise<void>;
60
- /**
61
- * Delete a secret key from a scope.
62
- */
63
53
  deleteSecret(orgId: string, scope: string, key: string): Promise<void>;
64
- /**
65
- * List all secret key names in a scope.
66
- */
67
54
  listKeys(orgId: string, scope: string): Promise<string[]>;
68
55
  /**
69
56
  * List all distinct scopes for an org.
@@ -16,7 +16,6 @@ interface CommentCommand {
16
16
  /** Optional: specific run to approve/reject. */
17
17
  runId?: string;
18
18
  }
19
- /** Parameters for the approval comment handler. */
20
19
  export interface HandleApprovalCommentParams {
21
20
  commentBody: string;
22
21
  commenterUsername: string;
@@ -76,7 +75,6 @@ export interface HandleApprovalCommentParams {
76
75
  */
77
76
  onWorkflowReject?: (hold: HeldRun, reason: string) => Promise<boolean>;
78
77
  }
79
- /** Result of handling a comment. */
80
78
  interface HandleApprovalResult {
81
79
  handled: boolean;
82
80
  reason?: string;
@@ -16,7 +16,7 @@ export interface WorkflowModification {
16
16
  * Compares workflow names and configurations:
17
17
  * - Added: in head but not base
18
18
  * - Removed: in base but not head
19
- * - Modified: in both but triggers, jobs, or steps differ
19
+ * - Modified: in both but triggers, jobs (steps included), or rules differ
20
20
  *
21
21
  * @param baseLockFile - Lock file from the base branch (null for new repos)
22
22
  * @param headLockFile - Lock file from the head commit (null means nothing to detect)