Release / build-and-push (push) Successful in 1m1s
Admin create had no URL handling at all (and crashed on missing steamId via .length), and admin update passed req.body straight to the scraper. Reuse normalizeSteamId in both, 400 on unrecognized input, and reject failed scrapes (non-object / missing title+frontImage) before Game.create/findOneAndUpdate so failures report as 'Steam lookup failed' instead of schema validation noise.