The blocked Google Ads review was brought back out of the NotFair waiting lane. The June 15 NotFair reset is not the real blocker for this project.
What shipped:
deleted_client or invalid_client; one unrelated ADC token refreshes but lacks the Google Ads adwords scope.aguiarlawmarketing@gmail.com for account 381-391-6687 Sam Aguiar Injury Lawyers.Apr 23 - May 22, 2026: 1,248 clicks, 84.00 conversions, $181.87 cost per conversion, $15,276.71 cost.Skills/google-ads-mcp/SKILL.md, Skills/google-ads-daily-negatives/SKILL.md, and Repos/sail-googleads/google-ads/runbooks/google-ads-token-rotation.md so future agents treat deleted_client as OAuth-client repair, not stale token rotation or NotFair quota waiting./Users/samaguiar/Documents/Projects/Repos/sail-googleads/google-ads/outputs/reports/google-ads-review-unblock-2026-05-23.md./Users/samaguiar/Documents/Projects/admin/_qa-queue/2026-05-23.md.The task reached the smallest durable unblock without making live Google Ads mutations. The queued automated review could not be run on API data yet because the OAuth client fails before GAQL. The live browser proof confirms the account is reachable, so the remaining issue is credential repair, not Ads account access and not NotFair.
Best next move is to repair or replace the Google Ads OAuth client, generate a fresh https://www.googleapis.com/auth/adwords refresh token while signed in as aguiarlawmarketing@gmail.com, propagate the new client and token values to Notion plus credential mirrors, then rerun one GAQL probe for login customer 8676599345, customer 3813916687.
A useful improvement after local repair is a cloud-hosted Google Ads credential lane for the campaign-health routine, using Notion as the canonical source and a Bearer-token protected endpoint. That would reduce multi-machine drift.
Start with the proof artifact above. Do not use NotFair for this lane. Do not wait for June 15. Do not keep retrying old refresh tokens if the error is deleted_client. The browser session proved live account access, but browser proof does not clear the API blocker for automated reads or mutations.
No destructive changes were made. No budgets, bids, campaigns, ads, keywords, negatives, or recommendations were modified.
Importance: High.