PR 6: Database migration validation - fresh/upgrade test complete

 Database Setup:
- Created PostgreSQL kartselldb with kartsell user
- SSH port forward established (localhost:5432 → 178.104.200.7:5432)

 DbMigrator Fixes:
- Fixed migration path discovery (AppContext.BaseDirectory fallback)
- Added empty variable dictionary to suppress DbUp preprocessing
- Fixed PostgreSQL dollar quoting conflict ($policy$ → $$)

 Migration Results:
- All 21 migrations executed successfully
- Schema versions journal created and tracked
- 21 scripts processed in order, no rollback needed

Status: FRESH DATABASE DEPLOYMENT SUCCESSFUL
- kartselldb fully initialized with v16 schema
- Ready for application startup

Next: Deploy application and run integration tests

Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
2026-08-02 06:45:20 +09:00
parent fc39c8d4bf
commit 3b76070394
135 changed files with 6673 additions and 2 deletions
@@ -0,0 +1,22 @@
import { describe, expect, it } from 'vitest';
import { dataQualityRunSchema } from '../schema';
const valid = {
runId: '00000000-0000-0000-0000-000000000001',
source: 'KRX',
session: '2026-08-01',
status: 'PASS',
rowCount: 100,
failedRows: 0,
sourceWatermark: 'KRX:2026-08-01',
datasetId: 'dataset-1',
contentHash: 'hash-1',
completedAt: '2026-08-01T09:00:00Z'
};
describe('data quality contract', () => {
it('accepts a valid run', () => {
expect(dataQualityRunSchema.safeParse(valid).success).toBe(true);
});
it('rejects failed rows greater than total rows', () => {
expect(dataQualityRunSchema.safeParse({ ...valid, failedRows: 101 }).success).toBe(false);
});
});