Replaces @DirtiesContext(AFTER_EACH_TEST_METHOD), which restarted the full Spring context per test (≈10–15s × 7), with @Transactional rollback. Each test still sees a clean slate via the spring-test default rollback, but the context is shared across the class. Wall time for this class dropped from 35s to 17.87s in local runs. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>