@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
@@ -2,12 +2,8 @@ import pg from 'pg';
2
2
  import { Kysely } from 'kysely';
3
3
  import { createPool as _createPool } from '@kici-dev/shared';
4
4
  import type { Database } from './types.js';
5
- /**
6
- * Create PostgreSQL connection pool.
7
- */
5
+ /** Creates a PostgreSQL connection pool. */
8
6
  export declare const createPool: typeof _createPool;
9
- /**
10
- * Create Kysely database instance typed to the orchestrator schema.
11
- */
7
+ /** Creates a Kysely instance typed to the orchestrator schema. */
12
8
  export declare function createDb(pool: pg.Pool): Kysely<Database>;
13
9
  //# sourceMappingURL=client.d.ts.map
@@ -13,10 +13,9 @@ export declare const DEFERRED_INDEX_LOCK_KEY = 543210002;
13
13
  /**
14
14
  * Drop a leftover invalid index before rebuilding it.
15
15
  *
16
- * An interrupted `CREATE INDEX CONCURRENTLY` leaves the index in place marked
17
- * invalid: it is not used by the planner, and `IF NOT EXISTS` sees it and
18
- * skips. Without this, the very first failed build would make the retry a
19
- * permanent no-op — the opposite of the "retries on the next boot" contract.
16
+ * An interrupted `CREATE INDEX CONCURRENTLY` leaves an invalid index that the
17
+ * planner ignores and `IF NOT EXISTS` skips, so without this the first failed
18
+ * build would turn the "retries on the next boot" contract into a no-op.
20
19
  */
21
20
  export declare function dropIfInvalid(client: Pick<pg.Client, 'query'>, name: string, logger: Logger): Promise<void>;
22
21
  export interface BuildDeferredIndexesResult {
@@ -26,13 +25,12 @@ export interface BuildDeferredIndexesResult {
26
25
  /**
27
26
  * Build every deferred index on one dedicated connection.
28
27
  *
29
- * The connection is taken straight from `pg` rather than from the serving
30
- * pool: `CREATE INDEX CONCURRENTLY` must run outside a transaction and must
31
- * not inherit a statement timeout, and a concurrent build on a large table
32
- * would otherwise hold a serving connection for its whole duration.
28
+ * The connection comes straight from `pg`, not the serving pool:
29
+ * `CREATE INDEX CONCURRENTLY` runs outside a transaction with no statement
30
+ * timeout, and a long build would otherwise hold a serving connection.
33
31
  *
34
- * The advisory lock is `pg_try_advisory_lock`, not the blocking form: when a
35
- * peer is already building, this instance has nothing to wait for.
32
+ * `pg_try_advisory_lock`, not the blocking form: when a peer is already
33
+ * building, this instance has nothing to wait for.
36
34
  */
37
35
  export declare function buildDeferredIndexes(databaseUrl: string, opts?: {
38
36
  logger?: Logger;
@@ -1,24 +1,19 @@
1
1
  /**
2
2
  * Indexes built after boot, outside the migration set.
3
3
  *
4
- * A migration cannot build an index without locking the table it indexes.
5
- * Kysely runs the whole pending batch inside one transaction and offers no
6
- * per-migration opt-out, and PostgreSQL rejects `CREATE INDEX CONCURRENTLY`
7
- * inside a transaction block outright — so a migration's only option is a
8
- * plain `CREATE INDEX`, which holds an exclusive lock for the whole build. On
9
- * a table holding millions of rows that is a multi-minute outage bolted onto
10
- * an upgrade.
4
+ * Kysely runs the pending batch in one transaction with no per-migration opt-out, and PostgreSQL
5
+ * rejects `CREATE INDEX CONCURRENTLY` inside a transaction block, so a migration can only use a
6
+ * plain `CREATE INDEX`: an exclusive lock for the whole build, a multi-minute upgrade outage on a
7
+ * table of millions of rows.
11
8
  *
12
- * So an index on a table that scales with run volume goes here instead. Each
13
- * entry is built `CONCURRENTLY` on its own connection with no statement
14
- * timeout, under an advisory lock distinct from the migration lock, after the
15
- * server is already serving. `IF NOT EXISTS` makes every build idempotent, and
16
- * a failed build retries on the next boot.
9
+ * So an index on a table that scales with run volume goes here. Each entry is built
10
+ * `CONCURRENTLY` on its own connection with no statement timeout, under an advisory lock distinct
11
+ * from the migration lock, after the server is serving. `IF NOT EXISTS` makes every build
12
+ * idempotent, and a failed build retries on the next boot.
17
13
  *
18
- * A repository check enforces that new indexes on those tables land here
19
- * rather than in a migration. The build itself is `deferred-index-build.ts`;
20
- * this module holds only the list, so a CLI can read it without loading the
21
- * orchestrator's metrics.
14
+ * A repository check enforces that new indexes on those tables land here. The build is
15
+ * `deferred-index-build.ts`; this module holds only the list, so a CLI can read it without
16
+ * loading the orchestrator's metrics.
22
17
  */
23
18
  export interface DeferredIndex {
24
19
  /** Index name, matching the one the SQL creates. */
@@ -27,12 +22,10 @@ export interface DeferredIndex {
27
22
  sql: string;
28
23
  }
29
24
  /**
30
- * Every index the retention sweep and the age-based readers depend on.
31
- *
32
- * Each one supports a `... < cutoff` scan that would otherwise walk the whole
33
- * table on every cleanup tick. The tables already carry indexes for their
34
- * serving-path queries; these cover the aging path, whose predicate is not
35
- * prefixed by an organization or routing key.
25
+ * Every index the retention sweep and the age-based readers depend on: each supports a
26
+ * `... < cutoff` scan that would otherwise walk the whole table every cleanup tick. Serving-path
27
+ * indexes exist already; these cover the aging path, whose predicate has no org or routing-key
28
+ * prefix.
36
29
  */
37
30
  export declare const DEFERRED_INDEXES: ReadonlyArray<DeferredIndex>;
38
31
  //# sourceMappingURL=deferred-indexes.d.ts.map
@@ -1,8 +1,6 @@
1
1
  /**
2
- * Static migration provider for bundled builds.
3
- *
4
- * Rolldown doesn't support dynamic `import()` of migration files at runtime,
5
- * so we statically import all migrations and provide them to Kysely's Migrator.
2
+ * Static migration provider for bundled builds: Rolldown cannot dynamic-`import()` migration
3
+ * files at runtime, so every migration is imported statically for Kysely's Migrator.
6
4
  */
7
5
  import type { MigrationProvider } from 'kysely/migration';
8
6
  export declare function createMigrationProvider(): MigrationProvider;
@@ -1,63 +1,45 @@
1
1
  /**
2
2
  * Test harness for the per-migration real-Postgres suites.
3
3
  *
4
- * A test named `NNN_thing.test.ts` documents the schema that migration `NNN`
5
- * produces, so it must apply the migration set only as far as `NNN`. Applying
6
- * the whole set instead runs the assertions against the schema at the head of
7
- * the migration list, where a later migration may already have dropped or
8
- * reshaped the column under test — the test then fails, or passes for the wrong
9
- * reason. Those suites only execute when `KICI_TEST_ADMIN_DATABASE_URL` is set,
10
- * so that rot stays invisible in a normal `pnpm test` run.
11
- *
12
- * The harness derives the target from the calling test file's own URL, so a
13
- * test can neither name the wrong migration nor drift when a file is renamed.
14
- * It has no fallback to the whole set: an unknown or no-op target throws.
15
- *
16
- * A DATA migration needs the state one step earlier as well, so it can insert
17
- * the rows it is supposed to rewrite: `migrateToPreviousMigration()` provides
18
- * it, deriving that target from the migration list rather than from a name the
19
- * test spells out.
20
- *
21
- * Repo/store tests outside `migrations/` (host roster, artifact store, the repo
22
- * suites) legitimately want head-of-list schema and use `migrateToLatest()`
23
- * directly instead.
4
+ * A test named `NNN_thing.test.ts` documents the schema migration `NNN` produces, so it applies
5
+ * the set only as far as `NNN`: at the head of the list a later migration may have dropped or
6
+ * reshaped the column under test, and the test fails or passes for the wrong reason. These
7
+ * suites run only when `KICI_TEST_ADMIN_DATABASE_URL` is set, so that rot is invisible in a
8
+ * normal `pnpm test`.
9
+ *
10
+ * The target comes from the calling test file's own URL, so a test cannot name the wrong
11
+ * migration or drift on rename. There is no fallback to the whole set: an unknown or no-op
12
+ * target throws. `migrateToPreviousMigration()` gives a DATA migration the state one step
13
+ * earlier, derived from the migration list.
14
+ *
15
+ * Repo/store tests outside `migrations/` want head-of-list schema and use `migrateToLatest()`.
24
16
  */
25
17
  import type { Kysely } from 'kysely';
26
18
  import { type MigrationResultSet } from 'kysely/migration';
27
19
  /**
28
- * Derive `030_held_runs_env_set_null` from a
29
- * `.../migrations/030_held_runs_env_set_null.test.ts` module URL.
30
- *
31
- * Throws when the caller is not a per-migration test, so a copy-paste into an
32
- * unrelated suite fails loudly instead of silently migrating somewhere odd.
20
+ * Derive `030_held_runs_env_set_null` from a `.../migrations/030_held_runs_env_set_null.test.ts`
21
+ * URL. Throws for a non-per-migration caller, so a copy-paste into another suite fails loudly.
33
22
  */
34
23
  export declare function migrationNameFromTestUrl(testUrl: string): string;
35
24
  /**
36
- * Apply migrations `001..NNN` inclusive, where `NNN` is the migration the
37
- * calling test file is named after. Pass `import.meta.url` as `testUrl`.
25
+ * Apply migrations `001..NNN` inclusive, `NNN` being the calling test file's migration. Pass
26
+ * `import.meta.url` as `testUrl`.
38
27
  *
39
- * Returns Kysely's result set so callers keep their own error handling
40
- * (`if (error) throw error` / `expect(error).toBeUndefined()`). A target that
41
- * does not exist surfaces as `error`; a target that applied nothing, or stopped
42
- * somewhere other than itself, throws — neither can silently degrade into
43
- * "the whole migration set ran".
28
+ * Returns Kysely's result set so callers keep their own error handling. A missing target
29
+ * surfaces as `error`; a target that applied nothing, or stopped elsewhere, throws — neither
30
+ * silently degrades into "the whole migration set ran".
44
31
  */
45
32
  export declare function migrateToOwnMigration<DB>(db: Kysely<DB>, testUrl: string): Promise<MigrationResultSet>;
46
33
  /**
47
- * Apply migrations `001..NNN-1` — everything up to, but NOT including, the
48
- * migration the calling test file is named after. Pass `import.meta.url`.
34
+ * Apply migrations `001..NNN-1`: up to, but NOT including, the calling test file's migration.
35
+ * Pass `import.meta.url`.
49
36
  *
50
- * This is the pre-migration state a DATA migration has to be tested from. A
51
- * data migration rewrites rows that already exist, so its test has to straddle
52
- * it: migrate here, insert the rows an upgraded database actually holds, then
53
- * call {@link migrateToOwnMigration} and assert what moved. Going straight to
54
- * `migrateToOwnMigration` leaves no window to insert anything, so the
55
- * assertions would run against rows the migration never saw — a check that
56
- * passes identically with the migration body deleted.
37
+ * A DATA migration's test straddles it: migrate here, insert the rows an upgraded database
38
+ * holds, then call {@link migrateToOwnMigration} and assert what moved. Without this window the
39
+ * assertions run against rows the migration never saw, and pass with its body deleted.
57
40
  *
58
- * The target is derived from the migration list, so the caller never names the
59
- * previous migration and cannot drift when one is inserted before it. A test
60
- * for the very first migration throws, since there is no earlier state.
41
+ * The target comes from the migration list, so it cannot drift when a migration is inserted
42
+ * before it. The first migration throws: there is no earlier state.
61
43
  */
62
44
  export declare function migrateToPreviousMigration<DB>(db: Kysely<DB>, testUrl: string): Promise<MigrationResultSet>;
63
45
  //# sourceMappingURL=migration-test-harness.d.ts.map
@@ -1,8 +1,5 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  export declare function up(db: Kysely<any>): Promise<void>;
3
- /**
4
- * Rollback drops everything created above. Uses CASCADE on table drops to cut
5
- * through the FK graph without relying on exact topological order.
6
- */
3
+ /** Drops everything `up` created; CASCADE cuts the FK graph without a topological order. */
7
4
  export declare function down(db: Kysely<any>): Promise<void>;
8
5
  //# sourceMappingURL=001_initial.d.ts.map
@@ -1,15 +1,12 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Add key_version column to config_versions so that sensitive-field encryption
4
- * can be rotated via `kici-admin rotate-key`.
3
+ * `config_versions.key_version`, so `kici-admin rotate-key` can rotate sensitive-field encryption.
5
4
  *
6
- * Existing rows are backfilled to 1 via the DEFAULT clause (every historical
7
- * row was encrypted under the first master-key generation). After rotation,
8
- * `SharedConfigStore` writes the next integer (MAX(key_version) + 1) and
9
- * stores the active generation alongside the ciphertext.
5
+ * The DEFAULT backfills existing rows to 1 (all encrypted under the first master-key
6
+ * generation). After rotation, `SharedConfigStore` writes MAX(key_version) + 1 beside the
7
+ * ciphertext.
10
8
  *
11
- * No index is needed: rotation does a full-table scan; reads are by
12
- * `version` primary key and never filter on `key_version`.
9
+ * No index: rotation full-scans; reads go by the `version` primary key.
13
10
  */
14
11
  export declare function up(db: Kysely<any>): Promise<void>;
15
12
  export declare function down(db: Kysely<any>): Promise<void>;
@@ -2,24 +2,19 @@ import { type Kysely } from 'kysely';
2
2
  /**
3
3
  * Access log: one row per read or orchestrator-admin mutation attributable
4
4
  * to an ActorPrincipal (dashboard user, api_key, service_account, platform
5
- * operator break-glass, or system). Backs:
5
+ * operator break-glass, or system). Backs the dashboard "Data access" tab
6
+ * (dashboard.access-log.list), GET /api/v1/admin/access-log and
7
+ * `kici-admin access-log`.
6
8
  *
7
- * - dashboard "Data access" tab (dashboard.access-log.list message)
8
- * - orchestrator admin HTTP route GET /api/v1/admin/access-log
9
- * - kici-admin `access-log` CLI subcommand
9
+ * `secret_audit_log` stays the source of truth for secret *mutation* events
10
+ * (different retention expectations); access_log records secret *reveals*
11
+ * with full actor attribution.
10
12
  *
11
- * Covers reads + orchestrator-admin mutations uniformly. `secret_audit_log`
12
- * stays the source of truth for secret *mutation* events (kept separate for
13
- * historical reasons and different retention expectations); access_log
14
- * records secret *reveals* with full actor attribution.
13
+ * `source` distinguishes platform_proxy / admin_http / admin_cli entry
14
+ * points. `actor_meta` holds variant-specific extras (ownerSub for api_key,
15
+ * reason for platform_operator).
15
16
  *
16
- * `source` distinguishes platform_proxy vs admin_http vs admin_cli entry
17
- * points. `actor_meta` captures the variant-specific extras that don't fit
18
- * in the flat (actor_type, actor_id) columns — ownerSub for api_key,
19
- * reason for platform_operator.
20
- *
21
- * Retention is TTL-based via expires_at; packages/orchestrator/src/queue/
22
- * cleanup.ts picks up the prune pass.
17
+ * Retention is TTL-based via expires_at; queue/cleanup.ts prunes.
23
18
  */
24
19
  export declare function up(db: Kysely<any>): Promise<void>;
25
20
  export declare function down(db: Kysely<any>): Promise<void>;
@@ -2,16 +2,14 @@
2
2
  * Rename `dispatch_queue.bundle_url` / `bundle_hash` → `source_tar_url` /
3
3
  * `source_tar_hash`.
4
4
  *
5
- * The cached build artifact changed from a Rolldown-bundled `.compiled.mjs`
6
- * (keyed under `bundles/{contentHash}.js` in S3) to a raw `.kici/` source
7
- * tarball (keyed under `source/{contentHash}.tar.gz`). The agent extracts it
8
- * and imports the workflow via the shared oxc-transform ESM loader hook
9
- * instead of running Rolldown at runtime.
5
+ * The cached build artifact is a raw `.kici/` source tarball
6
+ * (`source/{contentHash}.tar.gz` in S3), not a Rolldown-bundled `.compiled.mjs`
7
+ * (`bundles/{contentHash}.js`). The agent extracts it and imports the workflow
8
+ * through the shared oxc-transform ESM loader hook.
10
9
  *
11
- * Pre-release rename: no data preservation needed. Any rows referencing the
12
- * old bundle URLs will fail their contentHash lookup once the new SCHEMA_V4
13
- * cache prefix lands, and the orchestrator will schedule a fresh build job —
14
- * same as any other cache miss.
10
+ * Pre-release rename with no data preservation: rows with old bundle URLs miss
11
+ * their contentHash lookup under the SCHEMA_V4 cache prefix and get a fresh
12
+ * build job, like any cache miss.
15
13
  */
16
14
  import type { Kysely } from 'kysely';
17
15
  export declare function up(db: Kysely<unknown>): Promise<void>;
@@ -1,16 +1,10 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Cold-store chunk counter table.
3
+ * Per-(db, table, tenant) archived-chunk totals, so the `cold_store_chunks_total` gauge and
4
+ * `kici-admin cold-store list-chunks` avoid S3 LIST calls (expensive + rate-limited).
4
5
  *
5
- * Tracks per-(db, table, tenant) archived-chunk metadata so the
6
- * `cold_store_chunks_total` Prometheus gauge and the
7
- * `kici-admin cold-store list-chunks` CLI can report totals without
8
- * issuing S3 LIST calls (expensive + rate-limited).
9
- *
10
- * The table starts empty; the cold-store archiver
11
- * updates it transactionally with every successful chunk
12
- * write via `INSERT ... ON CONFLICT (db, table_name, tenant_id) DO
13
- * UPDATE SET chunk_count = chunk_count + EXCLUDED.chunk_count, ...`.
6
+ * Starts empty; the archiver upserts it in the same transaction as every successful chunk
7
+ * write (`INSERT ... ON CONFLICT (db, table_name, tenant_id) DO UPDATE ...`).
14
8
  */
15
9
  export declare function up(db: Kysely<unknown>): Promise<void>;
16
10
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,37 +1,17 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * `execution_runs` / `execution_jobs` / `execution_steps` cold-store
4
- * schema additions.
3
+ * Cold-store columns for `execution_runs` / `execution_jobs` / `execution_steps`.
5
4
  *
6
- * Part of the cold-storage archival system.
5
+ * Each table gets `archived_at` and `archive_object_key` (both NULL), set inside the archive tx
6
+ * before the DELETE; survivors carry NULL, as `run_events` does in the Platform's schema.
7
7
  *
8
- * Each table gets `archived_at TIMESTAMPTZ NULL` and
9
- * `archive_object_key TEXT NULL` (set inside the archive tx before the
10
- * DELETE; survivors carry NULL — the same pattern `run_events` carries
11
- * in the Platform's schema).
8
+ * The archiver partitions by `routing_key`, which only `execution_runs` carried; jobs and steps
9
+ * get it denormalized (avoiding a 3-table JOIN per archive cycle) with a one-shot backfill from
10
+ * their runs. New inserts must populate it (enforced at the application layer). It stays
11
+ * NULLable so a missed insert site still lands; `listEligiblePartitions` skips NULL tenants.
12
12
  *
13
- * Tenant column denormalization: the orchestrator side partitions by
14
- * `routing_key`, but only `execution_runs` carries the column today.
15
- * `execution_jobs` and `execution_steps` reference the run by `run_id`
16
- * and would otherwise need a 3-table JOIN at every archive cycle. We
17
- * denormalize `routing_key` onto both tables and backfill from the
18
- * existing run rows. Backfill is one-shot inside this migration. New
19
- * inserts must populate the column going forward (enforced at the
20
- * application layer).
21
- *
22
- * The denormalized column is left NULLable for safety: if an insert
23
- * site is missed in the rollout, the row still lands in PG; the
24
- * cold-store adapter's `listEligiblePartitions` skips NULLs (no
25
- * tenant ⇒ no archive). A follow-up migration may tighten to NOT NULL
26
- * once we're confident every insert site is updated.
27
- *
28
- * Composite indexes added for the archiver's
29
- * `listEligiblePartitions` discovery query
30
- * (`GROUP BY routing_key, DATE(created_at)`):
31
- *
32
- * - `idx_execution_runs_routing_key_created (routing_key, created_at)`
33
- * - `idx_execution_jobs_routing_key_created (routing_key, created_at)`
34
- * - `idx_execution_steps_routing_key_created (routing_key, created_at)`
13
+ * The `(routing_key, created_at)` indexes serve the archiver's `listEligiblePartitions` query
14
+ * (`GROUP BY routing_key, DATE(created_at)`).
35
15
  */
36
16
  export declare function up(db: Kysely<unknown>): Promise<void>;
37
17
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,38 +1,19 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * `secret_audit_log` and `access_log` cold-store schema additions, plus
4
- * the removal of `access_log`'s `expires_at`-based hard delete.
3
+ * Cold-store columns for `secret_audit_log` and `access_log`, and removal of `access_log`'s
4
+ * `expires_at` hard delete.
5
5
  *
6
- * Part of the cold-storage archival system.
6
+ * Both tables get the `archived_at` / `archive_object_key` pair (as in
7
+ * `006_runs_jobs_steps_archived_at.ts`), set in the archive tx before the DELETE.
7
8
  *
8
- * Both tables get the same `archived_at TIMESTAMPTZ NULL` /
9
- * `archive_object_key TEXT NULL` pair that `run_events` carries
10
- * (in the Platform's schema) and that `execution_runs` / `execution_jobs` /
11
- * `execution_steps` got in `006_runs_jobs_steps_archived_at.ts`. Set inside
12
- * the archive transaction before the DELETE; survivors carry NULL.
9
+ * `idx_secret_audit_log_routing_timestamp` lets the archiver's per-tenant scan use one index;
10
+ * the single-column `idx_secret_audit_log_timestamp` would force a filter step. `access_log`'s
11
+ * existing `access_log_org_created_idx (org_id, created_at DESC)` already serves its scan.
13
12
  *
14
- * `secret_audit_log` gets a composite
15
- * `idx_secret_audit_log_routing_timestamp (routing_key, timestamp)` so
16
- * the archiver's per-tenant scan can use a single index. The existing
17
- * `idx_secret_audit_log_timestamp` is single-column and would force a
18
- * filter step.
19
- *
20
- * `access_log` already has `access_log_org_created_idx (org_id,
21
- * created_at DESC)`, which is sufficient for the per-tenant scan
22
- * (range scans use either direction).
23
- *
24
- * Drops `access_log.expires_at` column and `access_log_expires_idx`.
25
- * Before this migration, `expires_at` powered a 90-day hard-delete sweep in
26
- * `packages/orchestrator/src/audit/access-log.ts:cleanup` (called from
27
- * `packages/orchestrator/src/queue/cleanup.ts:runCleanup` step 5). With
28
- * cold-store, `access_log` rows older than 30 days are archived rather
29
- * than deleted, so the TTL becomes effectively "forever". Keeping the
30
- * column would mean either (a) double-evicting rows or (b) silently
31
- * mismatching the new contract. Drop it.
32
- *
33
- * `down()` recreates `expires_at` with a default of `now() + 90 days`
34
- * — best effort; rows inserted between `up()` and a hypothetical
35
- * `down()` would not have meaningful retention bounds.
13
+ * `expires_at` drove a 90-day hard-delete sweep; cold-store archives `access_log` rows older
14
+ * than 30 days instead, so keeping the column would double-evict rows or contradict that
15
+ * contract. `down()` recreates it with a `now() + 90 days` default, best effort: rows inserted
16
+ * after `up()` get no meaningful retention bound.
36
17
  */
37
18
  export declare function up(db: Kysely<unknown>): Promise<void>;
38
19
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,37 +1,22 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * `event_log` cold-store schema additions plus removal of the
4
- * `expires_at`-based 30-day hard delete.
3
+ * `event_log` cold-store schema: adds the `archived_at` /
4
+ * `archive_object_key` pair `007_audit_logs_archived_at.ts` added elsewhere
5
+ * (set inside the archive transaction before the DELETE; survivors carry
6
+ * NULL) and removes the `expires_at`-based 30-day hard delete.
5
7
  *
6
- * Part of the cold-storage archival system.
8
+ * `idx_event_log_routing_received` exists because the cold-store partitions
9
+ * `event_log` by `routing_key` (NOT NULL here, so no synthetic-tenant
10
+ * fallback); `event_log_org_received_idx` is keyed by `org_id` and does not
11
+ * serve the per-tenant archiver scan.
7
12
  *
8
- * Adds the same `archived_at TIMESTAMPTZ NULL` /
9
- * `archive_object_key TEXT NULL` pair
10
- * `007_audit_logs_archived_at.ts` added on this side. Set inside the archive
11
- * transaction before the DELETE; survivors carry NULL.
13
+ * Rows older than 30 days are now archived rather than deleted; the per-row
14
+ * `payload_key` blob is retained indefinitely so the dashboard
15
+ * delivery-detail page can still load the body of archived deliveries.
12
16
  *
13
- * Adds `idx_event_log_routing_received` on `(routing_key, received_at)`
14
- * because the orchestrator-side cold-store partitions `event_log` by
15
- * `routing_key` (NOT NULL on this table; no synthetic-tenant fallback
16
- * is needed). The existing `event_log_org_received_idx` is keyed by
17
- * `org_id`, fine for dashboard queries but not the per-tenant
18
- * archiver scan.
19
- *
20
- * Drops `event_log.expires_at` and the matching
21
- * `event_log_expires_at_idx` index. Before this migration, `expires_at`
22
- * powered the 30-day hard-delete sweep in
23
- * `packages/orchestrator/src/webhook/event-log.ts:cleanup`, called
24
- * from `packages/orchestrator/src/queue/cleanup.ts:runCleanup` step 4
25
- * (which also deleted the per-row `payload_key` blob from object
26
- * storage). With cold-store, rows older than 30 days are archived
27
- * rather than deleted; the per-row `payload_key` blob is retained
28
- * indefinitely so the dashboard delivery-detail page can still load
29
- * the body for archived deliveries.
30
- *
31
- * Per the project's "no backward compatibility (pre-release)" rule,
32
- * `down()` recreates `expires_at` with a default of `now() + 30 days`
33
- * — best effort; rows inserted between `up()` and a hypothetical
34
- * `down()` would not have meaningful retention bounds.
17
+ * `down()` recreates `expires_at` defaulting to `now() + 30 days` — best
18
+ * effort; rows inserted between `up()` and `down()` get no meaningful
19
+ * retention bound.
35
20
  */
36
21
  export declare function up(db: Kysely<unknown>): Promise<void>;
37
22
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,14 +1,10 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Trigram (pg_trgm) index on access_log.error_message for the federated
4
- * Activity page's full-text search (`q` parameter).
3
+ * pg_trgm index on access_log.error_message for the Activity page's `q` search; matches the
4
+ * Platform's `008_audit_log_trigram.ts` (on `audit_log.details::text`).
5
5
  *
6
- * Matches the Platform counterpart in `008_audit_log_trigram.ts` which
7
- * indexes `audit_log.details::text`.
8
- *
9
- * Idempotent: `CREATE EXTENSION IF NOT EXISTS` and `CREATE INDEX IF NOT
10
- * EXISTS` are both safe to re-run. No CONCURRENTLY because Kysely runs
11
- * migrations inside a transaction; the lock is brief on a sampled table.
6
+ * Idempotent. No CONCURRENTLY because Kysely runs migrations inside a transaction; the lock is
7
+ * brief on a sampled table.
12
8
  */
13
9
  export declare function up(db: Kysely<unknown>): Promise<void>;
14
10
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,33 +1,23 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Cold-store chunk index (cold-store purge).
3
+ * Cold-store chunk index: one row per archived chunk the GC sweep can later
4
+ * purge from S3. Written in the `markArchivedAndDelete` transaction, so a chunk
5
+ * is fully recorded (S3 + index + rollup + audit) or fully absent.
4
6
  *
5
- * One row per archived chunk that the GC sweep can later purge from S3.
6
- * Inserted inside the same transaction as `markArchivedAndDelete` so a
7
- * chunk is either fully recorded (S3 + index + rollup + audit) or fully
8
- * absent (no orphan rows).
7
+ * - `chunk_id` is the deterministic 16-hex chunk filename stem; the primary key
8
+ * `(db, table_name, chunk_id)` lets the framework `DELETE` without scanning.
9
+ * `db` is always `'orchestrator'` here, for shape parity with
10
+ * `cold_store_chunk_counts` and the Platform-side migration.
11
+ * - `bucket` is the S3 prefix segment (`'30d'` / `'180d'` / `'1y'` / `'2y'` /
12
+ * `'forever'`), for `cold-store list-chunks` / `list-purgeable` filtering.
13
+ * - `max_cold_days` is the row-level retention horizon, TEXT to hold numbers
14
+ * and `'forever'`. The GC sweep checks `max_cold_days != 'forever' AND
15
+ * now() > archived_at + (max_cold_days || ' days')::interval`.
16
+ * - `object_key` is the chunk's full S3 key, so the GC sweep calls
17
+ * `DeleteObject` without recomputing it.
9
18
  *
10
- * Schema notes:
11
- *
12
- * - `chunk_id` is the deterministic 16-hex chunk filename stem; primary
13
- * key is `(db, table_name, chunk_id)` so the framework can `DELETE`
14
- * without scanning. The `db` column matches `cold_store_chunk_counts`
15
- * (always `'orchestrator'` here, included for shape parity with the
16
- * Platform-side migration).
17
- * - `bucket` is the S3 prefix segment (`'30d'` / `'180d'` / `'1y'` /
18
- * `'2y'` / `'forever'`). Carried for `cold-store list-chunks` /
19
- * `list-purgeable` filtering.
20
- * - `max_cold_days` is the row-level retention horizon — TEXT to
21
- * accommodate both numeric values and the literal `'forever'`. The
22
- * GC sweep checks `max_cold_days != 'forever' AND now() > archived_at
23
- * + (max_cold_days || ' days')::interval`.
24
- * - `object_key` is the full S3 key of the data chunk; the GC sweep
25
- * uses this to issue `DeleteObject` directly without recomputing the
26
- * key from the prefix.
27
- *
28
- * V1-manifest chunks are NOT in this table — they live
29
- * forever. Adapters that don't opt into per-bucket archival via
30
- * `coldTtlDays` don't insert here either.
19
+ * V1-manifest chunks are NOT here — they live forever — nor are chunks from
20
+ * adapters that do not opt into per-bucket archival via `coldTtlDays`.
31
21
  */
32
22
  export declare function up(db: Kysely<unknown>): Promise<void>;
33
23
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -1,20 +1,12 @@
1
1
  import { type Kysely } from 'kysely';
2
2
  /**
3
- * Drop the `source_secrets_change_trigger` and the
4
- * `notify_source_secrets_change()` plpgsql function.
3
+ * Drops `source_secrets_change_trigger` and `notify_source_secrets_change()`. Their only
4
+ * LISTEN/NOTIFY consumer, `WebhookSecretManager`, pushed webhook secrets to the Platform; the
5
+ * orchestrator now never sends secret material there (the Platform asks it to verify each
6
+ * webhook, reading `PgSecretStore`), so the NOTIFY traffic has no listener.
5
7
  *
6
- * Both were used by the (now removed) `WebhookSecretManager` which
7
- * subscribed via LISTEN/NOTIFY to detect changes to webhook secret rows in
8
- * `scoped_secrets` and pushed them to the multi-tenant Platform via the
9
- * `source.secrets` WS message. After the chunked-relay cutover the
10
- * orchestrator never pushes secret material to Platform -- Platform asks
11
- * the orchestrator to verify each inbound webhook on demand and the
12
- * verifier reads secrets directly from `PgSecretStore` -- so the trigger
13
- * is dead code and only emits NOTIFY traffic that nobody listens to.
14
- *
15
- * `down` re-creates the function + trigger as they were originally defined
16
- * in `001_initial.ts`. They wake up no consumer until the `WebhookSecretManager`
17
- * is restored, so this migration is safe to roll back.
8
+ * `down` re-creates both as defined in `001_initial.ts`; they wake no consumer, so the
9
+ * rollback is safe.
18
10
  */
19
11
  export declare function up(db: Kysely<unknown>): Promise<void>;
20
12
  export declare function down(db: Kysely<unknown>): Promise<void>;
@@ -4,22 +4,17 @@ import { type Kysely } from 'kysely';
4
4
  * revoked_at IS NULL` so two ACTIVE rows for the same `instance_id` become a
5
5
  * database-level impossibility.
6
6
  *
7
- * Background: `PeerCredentialStore.save()` historically ran an `UPDATE …
8
- * SET revoked_at = NOW()` followed by an `INSERT` without a transaction or
9
- * unique constraint. When a joining peer fanned out N peer-clients in
10
- * parallel (one per coordinator), each coordinator's `save()` could run its
11
- * `UPDATE` before the others' `INSERT`s committed — both `UPDATE`s revoked
12
- * nothing and both `INSERT`s succeeded, leaving 2+ ACTIVE rows for the same
13
- * `instance_id`. The peer's local credential file then ended up holding a
14
- * hash that a later concurrent `save()` had revoked, causing an endless
15
- * "Peer HMAC proof invalid" loop.
7
+ * Why: `PeerCredentialStore.save()` ran an unguarded `UPDATE … SET revoked_at
8
+ * = NOW()` then `INSERT` (no transaction, no constraint), which races when a
9
+ * joining peer fans out one peer-client per coordinator: both `UPDATE`s revoke
10
+ * nothing, both `INSERT`s land, and the peer's credential file can hold a hash
11
+ * a concurrent `save()` revoked — an endless "Peer HMAC proof invalid" loop.
16
12
  *
17
- * The `up()` first dedupes any pre-existing duplicates (revoke all but the
18
- * newest active row per `instance_id`) — required because earlier migrations
19
- * predate the constraint and existing databases may already hold the dupes.
13
+ * `up()` first dedupes existing duplicates (revokes all but the newest active
14
+ * row per `instance_id`), which databases from before the constraint may hold.
20
15
  *
21
- * `down()` only drops the index; it does NOT undo the dedupe (there's no
22
- * safe way to recreate revoked rows, and the dedupe is monotonic).
16
+ * `down()` only drops the index; it does NOT undo the dedupe (revoked rows
17
+ * cannot be safely recreated, and the dedupe is monotonic).
23
18
  */
24
19
  export declare function up(db: Kysely<unknown>): Promise<void>;
25
20
  export declare function down(db: Kysely<unknown>): Promise<void>;