Portability-boundary test — data-driven URL refactor
Predicted 20–30 min. Landed in 21m 23s.
Pattern portable across DATA-DRIVEN refactors. Cost-flattening holds, but the floor is higher than for fixed-enum.
DIMENSION
PR #42 (FIRST)
PR #53 (FIXED-ENUM)
PR #55 (DATA-DRIVEN)
wall-clock
an evening
8m 8s
21m 23s
helper imports data
none (fixed regex)
none (fixed regex)
ALL_POSTS
helper LOC
13
13
24 (lookup + slice)
sibling-test cases
9
12
7
migration mechanism
sed (one-liner)
sed (one-liner)
Bun script (~50 LOC)
references rewritten
49
~22
173
files touched (migration)
19
17
46
handler complication
drop owner from sig
rename route segment
yyyymm spoof-guard
over-rewrite incidents
0
1 (caught + reverted)
1 wider (5+ files)
test count delta
+9 (379 → 388)
+12 (407 → 419)
+7 (419 → 426)
verifier verdict
7/7 ✓
7/7 ✓
7/7 ✓
Boundary empirically located between PR #53 and PR #55.
FIXED-ENUM refactors land in ~8 min (template copy + slug rename + paste).
DATA-DRIVEN refactors land in ~21 min (template copy + add ALL_POSTS lookup + spoof guard + migration script + over-rewrite recovery).
Both within predicted bands. Both confirm cost-flattening holds across pattern variants. The added 13 minutes is not the
helper (still mechanical) — it's the migration tooling growing to handle 173 references instead of ~22, and one wider sed-collision.
https://tdd.md