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, FkDeferralError,
18    ForeignKeyDrift, SchemaInstallReport, SplitCreateTable, install_extension_schemas,
19    install_extension_schemas_full, install_extension_schemas_with_config,
20    split_create_table_foreign_keys,
21};
22pub use migrations::{
23    AppliedMigration, BaselineStamp, ChecksumDrift, ExtensionMigrationStatus, FreshnessCheck,
24    MarkAppliedOutcome, MigrationConfig, MigrationResult, MigrationService, MigrationStatus,
25    OrphanedMigration, PendingMigration, RepairResult, SlotCollision, TombstonedSlot,
26};
27pub use validation::{
28    ReplicaStatus, replica_status, validate_column_exists, validate_database_connection,
29    validate_table_exists, validate_write_pool_is_primary,
30};