Drizzle SQL template was running `\d+$` through JS string-literal escape rules, eating the backslash and matching every character class \d alias instead of digits. Berths sorted lexically (A1, A10, A11, A2, …) instead of by trailing number. Switch to `[0-9]+$` POSIX form which survives the escape pass intact. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>