This document lists all the changes made to ensure the codebase passes CI/CD checks.
- Applied
cargo fmtto format all Rust code according to rustfmt standards - All formatting issues resolved
-
Moved
partition_utils.sqlfrommigrations/todocs/directory- This file is not a migration but a utility script
- sqlx requires migration files to have numeric prefixes
-
Removed duplicate partition migration
- Deleted
migrations/20260219000000_partition_transactions.sql(duplicate) - Kept
migrations/20250217000000_partition_transactions.sql
- Deleted
-
Fixed duplicate index creation
- Modified
20250217000000_partition_transactions.sqlto useCREATE INDEX IF NOT EXISTS - Prevents conflict with index created in init migration
- Modified
-
Renamed migration to avoid timestamp collision
- Renamed
20260222000000_transaction_memo_metadata.sqlto20260222000001_transaction_memo_metadata.sql - Two migrations had the same timestamp causing primary key violation
- Renamed
-
Removed foreign key constraint in DLQ table
- Modified
20260220143500_transaction_dlq.sql - Partitioned tables don't support foreign keys to non-unique columns
- Added comment about application-level referential integrity
- Modified
-
Removed unused imports:
utoipa::ToSchemafromsrc/db/models.rsENTITY_SETTLEMENTandTransactionDlqfromsrc/db/queries.rs
-
Fixed redundant field names:
- Changed
anchor_webhook_secret: anchor_webhook_secrettoanchor_webhook_secretinsrc/config.rs
- Changed
The following issues still need to be addressed:
-
Deprecated function usage:
base64::encodeandbase64::decodeinsrc/utils/cursor.rschrono::DateTime::from_utcinsrc/db/cron.rschrono::TimeZone::ymd_optinsrc/db/cron.rs
-
Unused imports in various files
-
Missing fields in test fixtures
-
Config struct field mismatches in tests
- All migrations now run successfully
- Database schema is properly created
- Code formatting passes
cargo fmt --check
- Fix remaining clippy warnings
- Update test fixtures with new Transaction fields (memo, memo_type, metadata)
- Update deprecated function calls to use new APIs
- Remove unused imports