3.7.5
🧹 Ad placement left entirely to AdSense Auto ads
The app carried two overlapping ad mechanisms: the CUSTOM_EXTERNAL_SCRIPT loader (which enables Auto ads, with Google choosing placement) and a layer of manual ad units gated on ADSENSE_SLOT_* variables. Those variables were never set in production, so the manual layer's client/slot guard was always false and it rendered nothing — dead configuration on top of a mechanism that was already working.
With Auto ads enabled in the console, the manual layer is removed: the partials/ads.html macro and its four call sites (home, result page, wiki sidebar, wiki article), the ADSENSE_CLIENT / ADSENSE_SLOT_* configuration and its loader-URL client derivation, the six deploy-step environment lines, and the reserved-height .ad-container CSS.
Unchanged: GOOGLE_ADS_TXT and CUSTOM_EXTERNAL_SCRIPT behave exactly as before — /ads.txt is still served and the loader script is still injected. The .adsbygoogle rule stays in the print stylesheet, since Auto ads inject that class themselves.
The application now never emits ad markup of its own, which the wiki test suite asserts.
Full changelog: 3.7.4...3.7.5