mirror of
https://github.com/go-admin-team/go-admin.git
synced 2026-09-20 17:57:54 +00:00
The host kept its own copy of the version-naming rule, byte-identical to the one in contract/migration: slice the leading 13 characters, no check. Two copies of a convention that applications also have to follow is two things to keep in step, and the copies had already stopped matching - core now rejects a name that carries no timestamp, and this one still accepted "add_orders.go" and registered a migration under that string as its version, which nothing would ever match and nothing would report. Delegate instead, so there is one implementation of the rule and an app's migration and a host migration derive their version the same way. The test pins the reject case, not just the happy path: a re-divergence that only sliced would still pass the happy path. Claude-Session: https://claude.ai/code/session_01HPTAw8b8tAdFNFn8rKdPYx