@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
@@ -1,20 +1,12 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Add `log_bytes BIGINT NOT NULL DEFAULT 0` columns to `execution_runs` and
4
- * `execution_jobs` so the orchestrator can persist the per-job and per-run
5
- * raw log byte totals reported by agents on terminal `step.status`.
3
+ * Per-run and per-job raw log byte totals, reported by agents on terminal `step.status`.
6
4
  *
7
- * Used by the operator-side `kici_org_log_bytes` capacity-planning gauge on
8
- * the Platform (Platform mirrors these columns via WS replication and runs
9
- * the aggregation query — same DB-derived pattern as
10
- * `kici_org_executions_count` and `kici_org_agent_minutes`).
5
+ * The Platform mirrors these columns via WS replication for its `kici_org_log_bytes` gauge
6
+ * (the DB-derived pattern of `kici_org_executions_count` and `kici_org_agent_minutes`).
11
7
  *
12
- * Default 0 keeps existing rows valid without a backfill: pre-existing runs
13
- * predate this column and report as zero log-bytes, which is the correct
14
- * operator-visibility value (we never had the agent telemetry to compute a
15
- * real total for them).
16
- *
17
- * Idempotent (`ADD COLUMN IF NOT EXISTS`).
8
+ * Default 0 needs no backfill: older runs never had the agent telemetry, so zero is correct.
9
+ * Idempotent.
18
10
  */
19
11
  export declare function up(db: Kysely<unknown>): Promise<void>;
20
12
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,35 +1,22 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Add lease + retry + DLQ columns to `kici_events` so the EventRouter can
4
- * deliver events at-least-once with bounded retries and a visible
5
- * dead-letter queue.
3
+ * Lease + retry + DLQ columns on `kici_events`, so the EventRouter delivers
4
+ * events at-least-once with bounded retries and a visible dead-letter queue.
5
+ * Marking a row processed before dispatch lost the event when
6
+ * `onEventMatched` threw, and a crash between the cron fire claim and the
7
+ * event write advanced `cron_last_fired.last_fired_at` with no event row.
6
8
  *
7
- * Before this migration, EventRouter used `claimForProcessing` (UPDATE
8
- * processed=true WHERE processed=false RETURNING *) and dispatched after
9
- * the row was already marked processed. If `onEventMatched` threw, the
10
- * event was silently lost. Same loss surface for cron fires, since
11
- * `tryClaimFire` and `eventStore.write` were two separate transactions:
12
- * a crash between them advanced `cron_last_fired.last_fired_at` without
13
- * persisting the event row.
14
- *
15
- * After this migration:
16
- * - `claimed_at`, `claimed_by`: lease-based claim. Replaces the
17
- * "flip processed=true upfront" pattern. A lease is taken on dispatch,
18
- * released on success (processed=true) or failure (cleared + retry scheduled).
19
- * - `attempts`: incremented on each lease attempt. Enables bounded retry.
20
- * - `last_error`: most recent dispatch failure message (truncated by
21
- * application code to 4 KB).
22
- * - `next_retry_at`: earliest moment the leader-only retry scanner should
23
- * re-publish `pg_notify` for this event.
24
- * - `dlq_at`, `dlq_reason`: terminal DLQ marker. Once `dlq_at IS NOT NULL`
25
- * the row is no longer eligible for lease/retry. Surfaced in the
9
+ * - `claimed_at`, `claimed_by`: a lease taken on dispatch, released on
10
+ * success (processed=true) or failure (cleared + retry scheduled).
11
+ * - `attempts`: incremented per lease attempt; bounds retries.
12
+ * - `last_error`: latest dispatch failure (truncated by the app to 4 KB).
13
+ * - `next_retry_at`: earliest moment the leader-only retry scanner
14
+ * re-publishes `pg_notify` for this event.
15
+ * - `dlq_at`, `dlq_reason`: terminal DLQ marker; a row with
16
+ * `dlq_at IS NOT NULL` is never leased or retried again. Shown on the
26
17
  * dashboard admin DLQ page.
27
18
  *
28
- * Partial indexes keep these new lookups cheap without blowing up the index
29
- * size on the hot path (most rows are processed=true and irrelevant to the
30
- * scanner).
31
- *
32
- * Idempotent (`ADD COLUMN IF NOT EXISTS` + `CREATE INDEX IF NOT EXISTS`).
19
+ * Partial indexes skip the hot-path processed=true rows. Idempotent.
33
20
  */
34
21
  export declare function up(db: Kysely<unknown>): Promise<void>;
35
22
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -2,28 +2,23 @@ import { type Kysely } from 'kysely';
2
2
  /**
3
3
  * Org-scope `org_settings` and qualify each glob entry by source.
4
4
  *
5
- * `org_settings` was keyed by `routing_key`, meaning each webhook
6
- * source had its own independent global-workflow configuration. With multi-
7
- * source orgs, the dashboard's per-org settings page only ever showed the
8
- * first source it found and silently hid the rest.
9
- *
10
- * This migration:
5
+ * A `routing_key`-keyed table gave each webhook source its own
6
+ * global-workflow config, and the per-org dashboard page showed only the
7
+ * first source of a multi-source org.
11
8
  *
12
9
  * 1. Adds a `customer_id text` column.
13
10
  * 2. Backfills `customer_id` from `sources` / `generic_webhook_sources` by
14
- * `routing_key`. Rows whose `routing_key` cannot be resolved (orphans
15
- * from deleted sources) are dropped — they were already unreachable.
11
+ * `routing_key`. Unresolvable rows (orphans from deleted sources) are
12
+ * dropped — they were already unreachable.
16
13
  * 3. Converts the three repo-list `text[]` columns to `jsonb` arrays of
17
- * `{routingKey?: string, pattern: string}` entries. Each existing entry
18
- * is qualified with its original `routing_key` so semantics are preserved
19
- * verbatim — a glob that previously only saw events on `github:42` still
20
- * only sees events on `github:42`.
21
- * 4. Merges rows by `customer_id`. `global_workflows_enabled` collapses with
22
- * logical OR; the three list columns concatenate.
23
- * 5. Drops the old `routing_key` column and PK; new PK is `customer_id`.
14
+ * `{routingKey?: string, pattern: string}`. Each entry is qualified with
15
+ * its original `routing_key`, so a glob that saw only `github:42` events
16
+ * still sees only `github:42` events.
17
+ * 4. Merges rows by `customer_id`: `global_workflows_enabled` is OR-ed, the
18
+ * list columns concatenate.
19
+ * 5. Drops the `routing_key` column and PK; the new PK is `customer_id`.
24
20
  *
25
- * Idempotent: a re-run on an already-migrated DB sees `customer_id` exists
26
- * and the list columns are already jsonb, so it is a no-op.
21
+ * Idempotent: an existing `customer_id` column makes a re-run a no-op.
27
22
  */
28
23
  export declare function up(db: Kysely<unknown>): Promise<void>;
29
24
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -2,13 +2,11 @@ import { type Kysely } from 'kysely';
2
2
  /**
3
3
  * Add `org_settings.allow_http_npm_registries boolean NOT NULL DEFAULT false`.
4
4
  *
5
- * Operators flip this on a per-org basis to permit `http://` (non-HTTPS)
6
- * registry URLs in workflow `registries:` declarations. By default only
7
- * `https://` registries are accepted, with an automatic exemption for
8
- * loopback / `*.local` / private link-local hosts so a local registry
9
- * (for example `http://registry.local:4873`) keeps working.
5
+ * Per-org opt-in for `http://` registry URLs in workflow `registries:`. Otherwise only
6
+ * `https://` is accepted, except loopback / `*.local` / private link-local hosts, so a local
7
+ * registry (for example `http://registry.local:4873`) keeps working.
10
8
  *
11
- * Idempotent: a re-run on a DB that already has the column is a no-op.
9
+ * Idempotent.
12
10
  */
13
11
  export declare function up(db: Kysely<unknown>): Promise<void>;
14
12
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,24 +1,20 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Add a Postgres trigger on `generic_webhook_sources` that emits
4
- * `pg_notify('generic_sources_change', routing_key)` on every INSERT,
5
- * UPDATE, and DELETE. Soft-deletes (UPDATE that sets `deleted_at`) ride
6
- * the same UPDATE path — the listener treats a row with `deleted_at IS
7
- * NOT NULL` (or a row that no longer exists for that routing_key) as a
8
- * de-registration signal.
3
+ * Add a trigger on `generic_webhook_sources` that emits
4
+ * `pg_notify('generic_sources_change', routing_key)` on every INSERT, UPDATE
5
+ * and DELETE. A soft-delete (UPDATE setting `deleted_at`) rides the UPDATE
6
+ * path; the listener reads `deleted_at IS NOT NULL` or a missing row as
7
+ * de-registration.
9
8
  *
10
- * The consumer is `GenericSourcesChangeListener`
11
- * (`packages/orchestrator/src/webhook/generic-sources-listener.ts`),
12
- * which runs in every orchestrator peer, LISTENs on the channel, and
13
- * mutates the local `ProviderRegistry` in place
14
- * (`registerProviderBundleForSource` for INSERT/UPDATE; `unregister` for
15
- * DELETE / soft-delete). Without this round-trip, peers other than the
16
- * one that handled `kici-admin source add generic` would 404 incoming
17
- * webhooks until restart.
9
+ * `GenericSourcesChangeListener`
10
+ * (`packages/orchestrator/src/webhook/generic-sources-listener.ts`) LISTENs in
11
+ * every peer and updates its local `ProviderRegistry`
12
+ * (`registerProviderBundleForSource` / `unregister`). Without it, peers other
13
+ * than the one that ran `kici-admin source add generic` 404 the webhooks until
14
+ * restart.
18
15
  *
19
- * Mirrors the existing GitHub-app `sources` trigger
20
- * (`notify_sources_change()` + `sources_change_trigger`, defined in
21
- * `001_initial.ts`).
16
+ * Mirrors the GitHub-app `sources` trigger (`notify_sources_change()` +
17
+ * `sources_change_trigger` in `001_initial.ts`).
22
18
  */
23
19
  export declare function up(db: Kysely<unknown>): Promise<void>;
24
20
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -2,15 +2,12 @@ import { type Kysely } from 'kysely';
2
2
  /**
3
3
  * Add `org_settings.dashboard_write_policy jsonb NOT NULL DEFAULT '{}'`.
4
4
  *
5
- * Stores the per-customer policy that decides which Platform-routed
6
- * dashboard.* write operations the orchestrator accepts. An empty
7
- * JSONB object means everything is enabled (permissive default). To
8
- * disable an operation, set its key to `false`, e.g.
9
- * `{"secrets.set": false, "variables.set": false}`. Unknown / missing
10
- * keys are treated as `true` by the resolver in
11
- * `@kici-dev/engine/protocol/dashboard-write-operations`.
5
+ * Per-customer policy for which Platform-routed dashboard.* write operations the orchestrator
6
+ * accepts. A key set to `false` disables that operation (e.g. `{"secrets.set": false}`);
7
+ * missing keys resolve to `true` in `@kici-dev/engine/protocol/dashboard-write-operations`, so
8
+ * `{}` enables everything.
12
9
  *
13
- * Idempotent: a re-run on a DB that already has the column is a no-op.
10
+ * Idempotent.
14
11
  */
15
12
  export declare function up(db: Kysely<unknown>): Promise<void>;
16
13
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,23 +1,11 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Add `check_run_tracking` table for HA-safe check-run state persistence.
3
+ * `check_run_tracking`: `CheckRunReporter` state keyed per (provider, owner, repo, sha,
4
+ * check_name). Per-process maps reset on a replacement coord (Raft leader switch / coord crash)
5
+ * and left GitHub check runs stuck in `queued` forever. `run_id` is indexed for cleanup.
4
6
  *
5
- * The `CommitStatusReporter` previously held all of its check-run bookkeeping
6
- * in per-process `Map`s. Under HA (Raft leader switch / coord crash) those
7
- * maps reset to empty on the replacement coord, leaving GitHub check runs
8
- * stuck in `queued` forever.
9
- *
10
- * Single composite-keyed table per (provider, owner, repo, sha, check_name):
11
- *
12
- * - `check_run_id` replaces in-memory `checkRunIds`.
13
- * - `build_creation_state` replaces `pendingBuildCreations` Promise map.
14
- * - `step_progress_json` replaces `stepProgress` array map.
15
- * - `in_progress_sent_at` replaces `inProgressSent` boolean map.
16
- * - `run_id` indexed; replaces `runIdToKeys` reverse map.
17
- *
18
- * Progress-timer debounce state (the `progressTimers` Map) is NOT persisted —
19
- * timers are recreated on demand when an update arrives and the row's
20
- * `updated_at` is older than the debounce window.
7
+ * Progress-timer debounce state is NOT persisted: a timer is recreated when an update arrives
8
+ * and the row's `updated_at` is older than the debounce window.
21
9
  *
22
10
  * Idempotent: a re-run on a DB that already has the table is a no-op.
23
11
  */
@@ -1,28 +1,18 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Add three tables persisting `ScalerManager` per-coord state:
3
+ * Persists `ScalerManager` per-coord state:
4
4
  *
5
- * - `scaler_spawning_agents`: agents spawned via Docker/Podman/Firecracker
6
- * that have not yet registered via WS. Carries the `bound_job_id` so a
7
- * replacement coord still issues the eager-dispatch hop on register.
5
+ * - `scaler_spawning_agents`: spawned agents not yet registered via WS. `bound_job_id` lets a
6
+ * replacement coord still issue the eager-dispatch hop on register.
7
+ * - `scaler_agent_jobs`: agentId → (runId, jobId) for scaler-lifecycle event routing; inserted
8
+ * on `correlateAgentToJob`, deleted on disconnect / job completion.
9
+ * - `scaler_reservations`: outstanding reservations by agentId. Usage counters are derived,
10
+ * recomputed on coord boot as `SUM(...) GROUP BY scaler_name`, so the cap check stays correct.
8
11
  *
9
- * - `scaler_agent_jobs`: agentId → (runId, jobId) correlation for
10
- * scaler-lifecycle event routing. Inserted on `correlateAgentToJob`,
11
- * deleted on disconnect / job completion.
12
+ * Without them a coord crash mid-spawn orphans the agent, strands the reservation until backend
13
+ * GC disconnects the WS minutes later, and leaves a hole in the run timeline.
12
14
  *
13
- * - `scaler_reservations`: outstanding resource reservations keyed by
14
- * agentId. Per-scaler / global usage counters are derived state —
15
- * recomputed on coord boot as `SUM(...) GROUP BY scaler_name` so the
16
- * cap-check critical section stays correct.
17
- *
18
- * Without these tables, a coord crash mid-spawn orphans the agent (eager
19
- * dispatch lost), strands the reservation (resource leak until backend
20
- * GC eventually disconnects the WS, minutes later), and loses every
21
- * scaler-lifecycle event emitted before correlation (execution-tracker
22
- * sees a hole in the run timeline).
23
- *
24
- * Idempotent: a re-run on a DB that already has any of these tables
25
- * leaves the existing one alone.
15
+ * Idempotent: an existing table is left alone.
26
16
  */
27
17
  export declare function up(db: Kysely<unknown>): Promise<void>;
28
18
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,25 +1,14 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Add `dispatch_queue.recovery_deadline TIMESTAMPTZ` and
4
- * `dispatch_queue.recovery_agent_id TEXT` columns persisting per-job
5
- * recovery state for HA-safe agent-disconnect handling.
3
+ * Persists per-job agent-disconnect recovery state, so a coord crash between starting the
4
+ * recovery timer and its firing cannot leave a `recovering` job with no deadline or owning
5
+ * agent, lingering forever.
6
6
  *
7
- * `Dispatcher.recoveringJobs` previously held the timer handle, agent
8
- * ID, and deadline entirely in process memory. A coord crash between
9
- * starting the timer and it firing dropped the timer; the replacement
10
- * coord saw the row as `status='recovering'` but had no record of when
11
- * the deadline expired or which agent owned the job. Jobs lingered
12
- * forever.
7
+ * A leader-gated sweep (`Dispatcher.sweepExpiredRecoveries`) fails rows matching
8
+ * `WHERE status='recovering' AND recovery_deadline < now()`; on coord boot
9
+ * `Dispatcher.recoverState()` re-creates the timers from the persisted deadlines.
13
10
  *
14
- * The new columns make the deadline durable. A leader-gated sweep
15
- * (`Dispatcher.sweepExpiredRecoveries`) scans
16
- * `WHERE status='recovering' AND recovery_deadline < now()` and marks
17
- * each row failed; on coord boot, `Dispatcher.recoverState()`
18
- * hydrates the in-memory Map by re-creating timers from the persisted
19
- * deadlines.
20
- *
21
- * Idempotent: re-running on a DB that already has either column is a
22
- * no-op.
11
+ * Idempotent: an existing column is a no-op.
23
12
  */
24
13
  export declare function up(db: Kysely<unknown>): Promise<void>;
25
14
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,17 +1,11 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Add `dispatch_queue.last_provisioning_error TEXT` recording the most
4
- * recent scaler spawn-failure detail for a queued job.
3
+ * `dispatch_queue.last_provisioning_error`: the latest scaler spawn-failure detail for a queued
4
+ * job, written by a job-bound `scaler.failed` event (e.g. "spawn node ENOENT"). The
5
+ * queue-timeout reaper surfaces it instead of a bare "no agent available" timeout. Cleared on
6
+ * dispatch; NULL when no failure is recorded.
5
7
  *
6
- * When the scaler fails to provision an agent for a job (e.g. the agent
7
- * process exits with "spawn node ENOENT", or a container backend rejects
8
- * the run), a `scaler.failed` event bound to the job writes the failure
9
- * detail into this column. The queue-timeout reaper reads it so the job's
10
- * eventual failure surfaces the real provisioning cause instead of a bare
11
- * "no agent available" timeout. The column is cleared on dispatch and is
12
- * NULL whenever no provisioning failure has been recorded.
13
- *
14
- * Idempotent: re-running on a DB that already has the column is a no-op.
8
+ * Idempotent: an existing column is a no-op.
15
9
  */
16
10
  export declare function up(db: Kysely<unknown>): Promise<void>;
17
11
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,15 +1,11 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Add `init_failure jsonb` columns to `execution_runs` and `execution_jobs`.
3
+ * `init_failure` on `execution_runs` / `execution_jobs`: non-NULL means the run/job never
4
+ * executed a step because of an init-phase failure. Shape: `InitFailure` from
5
+ * `@kici-dev/engine`. The dashboard reads it directly, so it renders the banner without a
6
+ * round-trip to a possibly offline orchestrator.
4
7
  *
5
- * Presence of this column on a row means the run/job never executed a step
6
- * because of an init-phase failure; absence (NULL) means a normal run.
7
- * Shape on the wire is `InitFailure` from `@kici-dev/engine`. The dashboard
8
- * reads this column directly so it can render the right banner without
9
- * round-tripping to the orchestrator (which may be offline).
10
- *
11
- * Idempotent: re-running on a DB that already has either column is a no-op
12
- * for that column.
8
+ * Idempotent per column.
13
9
  */
14
10
  export declare function up(db: Kysely<unknown>): Promise<void>;
15
11
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,19 +1,11 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Add `workflow_timeout_ms integer` to `execution_runs`.
3
+ * Add `execution_runs.workflow_timeout_ms`: the lock workflow's wall-clock timeout (ms), read at
4
+ * run creation; NULL means no cap. The WorkflowDeadlineDetector cancels runs past
5
+ * `started_at + workflow_timeout_ms` with the distinct workflow-timeout reason.
4
6
  *
5
- * Persists the workflow-level wall-clock timeout (in milliseconds) read from
6
- * the lock workflow at run creation. NULL means no workflow-level cap is
7
- * configured. The WorkflowDeadlineDetector reads this column to find runs
8
- * whose `started_at + workflow_timeout_ms` has passed and cancels them with
9
- * the distinct workflow-timeout reason.
10
- *
11
- * Typed INTEGER to match the existing `*_ms` columns (`duration_ms`,
12
- * `concurrency_timeout_ms`), which keeps the pg read representation a plain
13
- * number rather than the BIGINT-as-string shape. INTEGER caps the timeout at
14
- * ~24.8 days, far beyond any sane workflow wall-clock budget.
15
- *
16
- * Idempotent: re-running on a DB that already has the column is a no-op.
7
+ * INTEGER like the other `*_ms` columns, so pg reads a plain number rather than a BIGINT string;
8
+ * it caps the timeout at ~24.8 days. Idempotent.
17
9
  */
18
10
  export declare function up(db: Kysely<unknown>): Promise<void>;
19
11
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,15 +1,9 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Add `dispatch_queue.dispatch_attempts INT NOT NULL DEFAULT 0`.
4
- *
5
- * Counts how many times a job has been returned to `pending` for
6
- * re-dispatch after a failed delivery attempt (agent sent job.reject, or
7
- * a scaler-managed agent disconnected before the job started). The
8
- * dispatcher fails the job permanently once the counter reaches
9
- * MAX_DISPATCH_ATTEMPTS, bounding requeue loops; `expires_at` remains the
10
- * time-based backstop.
11
- *
12
- * Idempotent: re-running on a DB that already has the column is a no-op.
3
+ * Add `dispatch_queue.dispatch_attempts`: how often a job returned to `pending` after a failed
4
+ * delivery (job.reject, or a scaler-managed agent disconnecting before start). The dispatcher
5
+ * fails the job at MAX_DISPATCH_ATTEMPTS, bounding requeue loops; `expires_at` stays the
6
+ * time-based backstop. Idempotent.
13
7
  */
14
8
  export declare function up(db: Kysely<unknown>): Promise<void>;
15
9
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,12 +1,11 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * held_runs.environment_id becomes nullable with ON DELETE SET NULL so
4
- * terminal held-run history survives environment deletion (a null
5
- * environment_id means the environment was since deleted). Pending held
6
- * runs still block deletion — enforced in EnvironmentStore.delete.
3
+ * held_runs.environment_id becomes nullable with ON DELETE SET NULL, so
4
+ * terminal held-run history survives environment deletion (null = deleted
5
+ * since). Pending held runs still block deletion, in EnvironmentStore.delete.
7
6
  *
8
- * Idempotent: dropping the NOT NULL and the constraint are both no-ops on a
9
- * re-run, and the constraint is re-created with the SET NULL action.
7
+ * Idempotent: both drops are no-ops on a re-run, and the constraint is
8
+ * re-created with the SET NULL action.
10
9
  */
11
10
  export declare function up(db: Kysely<unknown>): Promise<void>;
12
11
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,18 +1,12 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Add `dispatch_queue.ack_deadline TIMESTAMPTZ` and
4
- * `dispatch_queue.ack_agent_id TEXT` persisting the per-dispatch
5
- * acknowledgment deadline for HA-safe lost-dispatch detection.
3
+ * Add `dispatch_queue.ack_deadline` / `ack_agent_id`: the persisted per-dispatch ack deadline
4
+ * for HA-safe lost-dispatch detection.
6
5
  *
7
- * The dispatcher stamps both when a job.dispatch is sent and clears them
8
- * when the agent answers (job.ack / job.reject / job.status running). A
9
- * `dispatched` row past its deadline is requeued — by the owning coord's
10
- * in-memory timer, or by the leader-gated sweep
11
- * (`Dispatcher.sweepExpiredAckDeadlines`) when the owning coord crashed.
12
- * On coord boot, `Dispatcher.recoverState()` re-arms timers from the
13
- * persisted deadlines.
14
- *
15
- * Idempotent: re-running on a DB that already has either column is a no-op.
6
+ * Stamped on job.dispatch, cleared on the agent's answer (job.ack / job.reject / job.status
7
+ * running). A `dispatched` row past its deadline is requeued by the owning coord's timer, or by
8
+ * the leader-gated `Dispatcher.sweepExpiredAckDeadlines` when that coord crashed;
9
+ * `Dispatcher.recoverState()` re-arms timers on coord boot. Idempotent.
16
10
  */
17
11
  export declare function up(db: Kysely<unknown>): Promise<void>;
18
12
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,18 +1,15 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Add the two approval-policy columns to `org_settings`:
3
+ * Add the approval-policy columns to `org_settings`:
4
4
  *
5
5
  * - `approval_expiry_seconds INTEGER NOT NULL DEFAULT 86400` — how long a held
6
- * approval element waits before it expires (and its run/job/step is
7
- * rejected). One day by default. An SDK `requireApproval` `timeout` overrides
8
- * this per element; otherwise this per-org value applies.
9
- * - `allow_self_approval BOOLEAN NOT NULL DEFAULT true` — whether the user who
10
- * triggered a run may also approve its held elements. Operators turn it off
11
- * to enforce four-eyes review.
6
+ * approval element waits before it expires and its run/job/step is rejected.
7
+ * An SDK `requireApproval` `timeout` overrides it per element.
8
+ * - `allow_self_approval BOOLEAN NOT NULL DEFAULT true` — whether a run's
9
+ * triggering user may approve its held elements; off enforces four-eyes review.
12
10
  *
13
- * Both are cluster-configurable per org via `kici-admin org-settings approval`
14
- * and the orchestrator admin route. Idempotent: a re-run on a DB that already
15
- * has the columns is a no-op (each column is guarded independently).
11
+ * Set per org via `kici-admin org-settings approval` and the orchestrator admin
12
+ * route. Idempotent: each column is guarded independently.
16
13
  */
17
14
  export declare function up(db: Kysely<unknown>): Promise<void>;
18
15
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,23 +1,15 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Generalize `held_runs` from an environment-only hold into the unified
4
- * "held element" model that backs per-element approvals, and add the
5
- * `held_run_approvals` table that records each approver's decision.
6
- *
7
- * New `held_runs` columns (all idempotent, column-exists guarded):
8
- * - `hold_scope text NOT NULL DEFAULT 'job'` — 'workflow' | 'job' | 'step'
9
- * (engine `HoldScope`). Existing rows held a single job, so they default to
10
- * 'job'.
11
- * - `step_index integer` — nullable; set only for step-scoped holds.
12
- * - `trigger_source text NOT NULL DEFAULT 'environment'` — 'environment' |
13
- * 'explicit' (engine `TriggerSource`). Existing holds came from environment
14
- * protection, so they default to 'environment'.
15
- * - `approval_requirement jsonb` — the normalized `ApprovalRequirement`
16
- * (clauses + expiresAt + reason) the hold must satisfy. Nullable for legacy
17
- * rows that predate the approval model.
18
- *
19
- * New `held_run_approvals` table: one row per approver decision, FK to
20
- * `held_runs.id` (uuid) with ON DELETE CASCADE.
3
+ * Generalize `held_runs` from an environment-only hold into the "held element" model behind
4
+ * per-element approvals, and add `held_run_approvals` (one row per approver decision,
5
+ * ON DELETE CASCADE). Columns are added idempotently, column-exists guarded:
6
+ * - `hold_scope` — 'workflow' | 'job' | 'step' (engine `HoldScope`); existing rows held a
7
+ * single job, so they default to 'job'.
8
+ * - `step_index` — set only for step-scoped holds.
9
+ * - `trigger_source` — 'environment' | 'explicit' (engine `TriggerSource`); existing holds came
10
+ * from environment protection, so they default to 'environment'.
11
+ * - `approval_requirement` — the normalized `ApprovalRequirement` (clauses + expiresAt +
12
+ * reason); NULL on rows that predate the approval model.
21
13
  */
22
14
  export declare function up(db: Kysely<unknown>): Promise<void>;
23
15
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,10 +1,9 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Pending workflow dispatch context — backs resume of a workflow whose install
4
- * gate held. One row per held run: the serializable dispatch inputs needed to
5
- * rebuild the WorkflowDispatchContext when the hold releases (reviewer approve,
6
- * wait-timer expiry, concurrency slot free). The row is deleted once the resume
7
- * dispatch has been kicked off.
3
+ * Pending workflow dispatch context, for resuming a workflow whose install gate
4
+ * held. One row per held run holds the serializable inputs that rebuild the
5
+ * WorkflowDispatchContext when the hold releases (reviewer approve, wait-timer
6
+ * expiry, free concurrency slot); it is deleted once the resume dispatch starts.
8
7
  */
9
8
  export declare function up(db: Kysely<unknown>): Promise<void>;
10
9
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -4,12 +4,11 @@ import { type Kysely } from 'kysely';
4
4
  * permits `'local'` instead of `'internal'`, and migrate any carried-over
5
5
  * `'internal'` rows to `'local'`.
6
6
  *
7
- * The local filesystem (`file://`) provider is `provider_type='local'`; the
8
- * value used to be `'internal'`. The original CHECK constraint
9
- * (`generic_webhook_sources_provider_type_check`) allowed only
10
- * `{'generic','internal'}`, so writing a `'local'` row fails. Universal-git
11
- * sources keep `provider_type='generic'` (discriminated by `git_config`), so
12
- * the new allowed set is `{'generic','local'}`.
7
+ * The local filesystem (`file://`) provider is `provider_type='local'`, which
8
+ * the original `generic_webhook_sources_provider_type_check`
9
+ * (`{'generic','internal'}`) rejects. Universal-git sources keep
10
+ * `provider_type='generic'` (discriminated by `git_config`), so the new allowed
11
+ * set is `{'generic','local'}`.
13
12
  *
14
13
  * Idempotent: the constraint is dropped IF EXISTS and recreated; the data
15
14
  * backfill is a plain UPDATE that is a no-op once no `'internal'` rows remain.
@@ -1,13 +1,11 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * `remote_sources` anchors a Platform-relayed `kici run remote` to its real
4
- * org. One row per org served by this orchestrator: routing key
5
- * `remote:<orgId>` maps to the canonical org id, so `resolveOrgId` resolves
6
- * the real tenant through the same local-source path a webhook takes — no
7
- * GitHub App, no webhook secret, no manual setup. The row is auto-provisioned
8
- * on Platform auth from the canonical org id carried on `auth.success`.
3
+ * `remote_sources` anchors a Platform-relayed `kici run remote` to its real org: one row per
4
+ * served org maps `remote:<orgId>` to the canonical org id, so `resolveOrgId` takes the
5
+ * webhook's local-source path with no GitHub App, webhook secret or manual setup.
6
+ * Auto-provisioned on Platform auth from the org id on `auth.success`.
9
7
  *
10
- * Idempotent: a re-run on a DB that already has the table is a no-op.
8
+ * Idempotent: an existing table is a no-op.
11
9
  */
12
10
  export declare function up(db: Kysely<unknown>): Promise<void>;
13
11
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,15 +1,11 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Add the typed host-vars dimension to the host roster:
3
+ * `host_roster.host_properties jsonb NOT NULL DEFAULT '{}'`: the typed host-vars
4
+ * bag (`string | number | boolean` values) the agent reports at registration
5
+ * and/or the operator declares (`kici-admin host declare --prop`). Labels stay
6
+ * the flat-string grouping dimension; properties are a separate queryable one.
4
7
  *
5
- * - `host_roster.host_properties jsonb NOT NULL DEFAULT '{}'` — the typed
6
- * property bag (`string | number | boolean` values) reported by the agent at
7
- * registration and/or declared by the operator (`kici-admin host declare
8
- * --prop`). Labels stay the flat-string grouping dimension; properties are
9
- * the separate queryable host-vars dimension.
10
- *
11
- * Idempotent (`ADD COLUMN IF NOT EXISTS`): re-running on a DB that already has
12
- * the column is a no-op. Existing data is preserved (additive column).
8
+ * Idempotent and additive.
13
9
  */
14
10
  export declare function up(db: Kysely<unknown>): Promise<void>;
15
11
  export declare function down(db: Kysely<unknown>): Promise<void>;