Skip to main content

systemprompt_database/lifecycle/
mod.rs

1//! Database lifecycle: extension schema installation, migrations, and
2//! connection/schema validation.
3//!
4//! Re-exports the schema installers, the [`MigrationService`] and its result
5//! and status types, and the standalone validation helpers
6//! ([`validate_database_connection`], [`validate_write_pool_is_primary`],
7//! [`validate_table_exists`], [`validate_column_exists`]).
8//!
9//! Copyright (c) systemprompt.io — Business Source License 1.1.
10//! See <https://systemprompt.io> for licensing details.
11
12mod installation;
13mod migrations;
14mod validation;
15
16pub use installation::{
17    BOOTSTRAP_ADVISORY_LOCK_KEY, BootstrapLockGuard, DeferredForeignKey, ExpensiveStatement,
18    FkDeferralError, ForeignKeyDrift, HOT_TABLES, MigrationCost, OrphanMigrationLedger,
19    SchemaInstallReport, SchemaResidue, SplitCreateTable, UndeclaredTable, audit_migration_cost,
20    audit_one, audit_schema_residue, check_migration_references, install_extension_schemas,
21    install_extension_schemas_full, install_extension_schemas_with_config,
22    split_create_table_foreign_keys,
23};
24pub use migrations::{
25    AppliedMigration, BaselineStamp, ChecksumDrift, ExtensionMigrationStatus, FreshnessCheck,
26    MarkAppliedOutcome, MigrationConfig, MigrationResult, MigrationService, MigrationStatus,
27    OrphanedMigration, PendingMigration, RepairResult, SlotCollision, TombstonedSlot,
28    is_retirement,
29};
30pub use validation::{
31    ReplicaStatus, replica_status, validate_column_exists, validate_database_connection,
32    validate_table_exists, validate_write_pool_is_primary,
33};