snapshots.gf.cx R2 push — 2026-07-10
DAILY HYGIENE · · detail report · check snapshots_r2_push
Verdict: 🟢 GREEN
All snapshot entries in last 48h have working R2 URLs across 22 surface(s).
Delta-results
| Metric | Value |
|---|---|
| surfaces | [{‘slug’: ‘antifragile-gf’, ‘total_entries’: 45, ‘in_window’: 2, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘antifragile-gf_2026-07-10_581111a.jpg’}, {‘slug’: ‘brand-gf-cx’, ‘total_entries’: 27, ‘in_window’: 2, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘brand-gf-cx_2026-07-10_be8ab70.jpg’}, {‘slug’: ‘brooklyn-gf-cx’, ‘total_entries’: 33, ‘in_window’: 8, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘brooklyn-gf-cx_2026-07-10_98aed52.jpg’}, {‘slug’: ‘crm-gf-cx’, ‘total_entries’: 27, ‘in_window’: 2, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘crm-gf-cx_2026-07-10_be62c81.jpg’}, {‘slug’: ‘cv-gf-cx’, ‘total_entries’: 27, ‘in_window’: 2, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘cv-gf-cx_2026-07-10_2f61fbf.jpg’}, {‘slug’: ‘dash-gf-cx’, ‘total_entries’: 84, ‘in_window’: 3, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘dash-gf-cx_2026-07-10_fad2019.jpg’}, {‘slug’: ‘dash-reports’, ‘total_entries’: 119, ‘in_window’: 2, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘dash-reports_2026-07-10_8f74f88.jpg’}, {‘slug’: ‘data-gf-cx’, ‘total_entries’: 51, ‘in_window’: 2, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘data-gf-cx_2026-07-10_7af9dfc.jpg’}, {‘slug’: ‘data-sourced’, ‘total_entries’: 49, ‘in_window’: 2, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘data-sourced_2026-07-10_7af9dfc.jpg’}, {‘slug’: ‘email-gf-cx’, ‘total_entries’: 23, ‘in_window’: 2, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘email-gf-cx_2026-07-10_811ec7b.jpg’}, {‘slug’: ‘growth-gf-cx’, ‘total_entries’: 53, ‘in_window’: 3, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘growth-gf-cx_2026-07-10_64845e0.jpg’}, {‘slug’: ‘happiness-gf-cx’, ‘total_entries’: 144, ‘in_window’: 6, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘happiness-gf-cx_2026-07-10_d8a0741.jpg’}, {‘slug’: ‘london-gf-cx’, ‘total_entries’: 32, ‘in_window’: 3, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘london-gf-cx_2026-07-10_29a3e0c.jpg’}, {‘slug’: ‘pa-gf-cx’, ‘total_entries’: 43, ‘in_window’: 2, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘pa-gf-cx_2026-07-10_110039.jpg’}, {‘slug’: ‘patterns-gf-cx’, ‘total_entries’: 101, ‘in_window’: 3, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘patterns-gf-cx_2026-07-10_32456ec.jpg’}, {‘slug’: ‘radar-gf-cx’, ‘total_entries’: 27, ‘in_window’: 2, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘radar-gf-cx_2026-07-10_25eb131.jpg’}, {‘slug’: ‘sandbox-fal’, ‘total_entries’: 41, ‘in_window’: 5, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘sandbox-fal_2026-07-10_b3b1b88.jpg’}, {‘slug’: ‘sandbox-gf-cx’, ‘total_entries’: 42, ‘in_window’: 5, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘sandbox-gf-cx_2026-07-10_b3b1b88.jpg’}, {‘slug’: ‘sandbox-one-pager’, ‘total_entries’: 36, ‘in_window’: 5, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘sandbox-one-pager_2026-07-10_b3b1b88.jpg’}, {‘slug’: ‘services-gf-cx’, ‘total_entries’: 61, ‘in_window’: 19, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘services-gf-cx_2026-07-10_6e5ba4c.jpg’}, {‘slug’: ‘status-gf-cx’, ‘total_entries’: 309, ‘in_window’: 2, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘status-gf-cx_2026-07-10_8a134e8.jpg’}, {‘slug’: ‘status-transfer-windows’, ‘total_entries’: 77, ‘in_window’: 2, ‘missing_r2’: 0, ‘missing_examples’: [], ‘broken_url_count’: 0, ‘latest_broken’: False, ‘latest_filename’: ‘status-transfer-windows_2026-07-10_8a134e8.jpg’}] |
| total_missing_r2 | 0 |
| total_broken_url | 0 |
| latest_broken_surfaces | [] |
Why this tripwire exists
Catches the silent R2 upload failure where surface_snapshot.py captures the local JPEG successfully but wrangler r2 object put fails because launchd isn’t carrying CLOUDFLARE_API_TOKEN. Added 2026-06-05 after dash-gf-cx_2026-06-05_110006.jpg rendered as a broken featured card on snapshots.gf.cx (local 297 KB on disk, R2 URL 404). RED when any surface’s LATEST entry has no r2_url (= visible broken card) or ≥3 entries across portfolio are missing within 48h. Backfill heal: surface_snapshot.py --backfill-r2.
Generated by dare_daily_hygiene.py · check snapshots_r2_push · 2026-07-10 · authoritative click-through for the dash.dare.co.uk Site-Health card.
dare_snapshots_r2_push_2026-07-10.md · Rendered Built with — component scripts
seo_render_html.py— wraps the source.mdin the dash.gf.cx design language (+anchor_enricher.pyfor inline-link promotion & rollover thumbnails)dare_dev_reports_publish.py— bundles the day’s reports into the catalog and ships to dash.gf.cx/reports