rowshape validate
validate hydrates a disposable Postgres from the fixture, applies the migration set through your own runner, captures what happened (locks, durations, rows, constraint violations, index builds), and returns a verdict. Against a provided live branch (–target) the facts are ground truth. validate never touches the fixture’s source database.
rowshape validate [rowshape.yaml] [flags]| Flag | Default | Description |
|---|---|---|
--calibrate |
— | hydrate at two scales and fit the cost curve, upgrading duration estimates to measured (slower) |
--ephemeral |
— | admin URL: create a disposable database, hydrate into it, then drop it |
--i-know-target-is-writable |
— | proceed with –target when the fixture records no source host to check it against |
--json |
— | emit the machine-readable verdict as JSON |
--max-rows |
0 |
cap hydrated rows per table (0 = no cap) |
--migrations, -m |
migrations |
migration .sql file or directory |
--runner |
— | override runner detection (rawsql; alembic|prisma|drizzle are DETECTED but cannot be validated yet) |
--scale |
1 |
fraction of declared rows to hydrate |
--seed |
0 |
deterministic hydration seed |
--statement-timeout |
1m0s |
cancel a migration statement that runs longer than this (0 = no ceiling); a cancelled statement is reported, never certified |
--target |
— | validate against this live database URL (its data is ground truth) |
--warn-fail |
— | exit non-zero on a WARN-only verdict |