Repository navigation
Commit 396b860
test(migrate-ts): green the migrate-ts-pg lane, red on every release tag
The `migrate-ts-pg` job in integration-tests.yml has failed on EVERY release tag
back to at least v0.20.0 -- the same 6 tests on v0.21.0 and v0.21.1. It went
unnoticed structurally, not carelessly: the lane runs ONLY on `v*` tag push, so
the red arrives AFTER publishing, and the same tests `describe.skip` silently
without MIGRATE_TS_PG_URL, so local and PR runs look green. A release gate that
is permanently red provides no signal, which is how the #279 serial-PK adoption
bug reached a release.
Both root causes are test-side; no product defect.
1. Sourceless fixtures (4 of 6 failures). `postgres-lenient-inet` and
`pg-adversarial-fixes` declared an `object.entity` with NO `source.rdb` child.
Persistability derives from a declared/inherited `source.*` (#249), so those
entities are non-persistable: no CREATE TABLE is emitted, the table never
exists, and the assertions fail -- then cascade as
`relation "endpoints"/"readings" does not exist`. Proven, not inferred: adding
`source.rdb` alone takes each file from all-fail to all-pass.
2. Stale CHECK-expression spacing (2 of 6). The expectations still carried
`'open', 'closed'` with spaces after the commas, but `checkExprs` runs
`normalizeCheckExpr`, which deliberately collapses comma spacing outside
literals. The normalizer is right; the expectations predate it.
Verified against a real Postgres 16: the full integration suite goes 124 pass /
6 fail -> 130 pass / 0 fail. The no-PG path still skips cleanly (688 pass /
19 skip / 0 fail), so PR runs are unaffected.
Deliberately NOT changed: the lane's tag-only trigger. Making it run on merge is
a workflow policy decision for the maintainer, not a test fix -- but until it
does, this lane can silently rot again.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015TqsuDye2SfXGf43vuoD3n1 parent 35b0250 commit 396b860
3 files changed
Lines changed: 6 additions & 4 deletions
File tree
- server/typescript/packages/migrate-ts/test/integration
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
159 | 159 | | |
160 | 160 | | |
161 | 161 | | |
162 | | - | |
| 162 | + | |
163 | 163 | | |
164 | 164 | | |
165 | 165 | | |
| |||
189 | 189 | | |
190 | 190 | | |
191 | 191 | | |
192 | | - | |
| 192 | + | |
193 | 193 | | |
194 | 194 | | |
195 | 195 | | |
| |||
203 | 203 | | |
204 | 204 | | |
205 | 205 | | |
206 | | - | |
| 206 | + | |
207 | 207 | | |
208 | 208 | | |
209 | 209 | | |
| |||
326 | 326 | | |
327 | 327 | | |
328 | 328 | | |
329 | | - | |
| 329 | + | |
330 | 330 | | |
331 | 331 | | |
332 | 332 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
39 | 39 | | |
40 | 40 | | |
41 | 41 | | |
| 42 | + | |
42 | 43 | | |
43 | 44 | | |
44 | 45 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
35 | 35 | | |
36 | 36 | | |
37 | 37 | | |
| 38 | + | |
38 | 39 | | |
39 | 40 | | |
40 | 41 | | |
| |||
0 commit comments