feat: close Cloudflare-native public quality loop#36
Conversation
|
You have reached your Codex usage limits for code reviews. You can see your limits in the Codex usage dashboard. |
|
Cloudflare public-read snapshot closeout receipt (2026-06-28 UTC):\n\n- Added D1 public_read_snapshots and hot-path snapshot reads for default featured/all/bootstrap/facets/regions.\n- Remote D1 schema applied to ns-db; snapshot rows generated for all 5 fixed keys at 2026-06-28T16:15:59.664Z.\n- Worker deployed manually from this branch: version 0aa36d65-2277-4105-8024-2a8fdfea712f.\n- Live headers confirmed X-News-Sentry-Snapshot: hit and X-News-Sentry-Worker-Cache: hit for featured/bootstrap/facets.\n- PR CI is green on 76ff653.\n\nNot merged yet because production Deploy live quality still has the known PR2 blocker: public_quality.summary_ready=7 < 500. Local direct-path TTFB from this machine also remains mostly ~0.75-1.2s despite snapshot/cache hit, so the remaining latency is no longer D1 aggregation on these hot paths. |
Summary
Deployment Boundary
Verification
./.venv/bin/python -m pytest tests/unit/test_cloudflare_d1_backfill.py tests/unit/test_cloudflare_native_config.py tests/unit/test_public_translation.py tests/unit/test_cloudflare_live_quality_check.py -q --tb=short=> 53 passed./.venv/bin/python -m ruff check src/news_sentry/core/public_translation.py tools/cloudflare_d1_public_translation_backfill.py tools/cloudflare_d1_backfill.py tools/cloudflare_live_quality_check.py tests/unit/test_cloudflare_d1_backfill.py tests/unit/test_cloudflare_native_config.py tests/unit/test_cloudflare_live_quality_check.py tests/unit/test_public_translation.py=> cleancd frontend/public && npm test -- src/App.test.tsx src/lib/api.test.ts src/lib/seo/site-seo.test.ts=> 72 passedcd frontend/public && VITE_API_BASE=https://api.news-sentry.com npm run build=> successcd frontend/cloudflare && npx wrangler deploy --env="" --dry-run --outdir /tmp/ns-worker-dry-run --containers-rollout none=> successpython tools/cloudflare_d1_public_translation_backfill.py --data-dir /tmp/news-sentry-no-data --targets france --limit 1 --daily-limit 1 --generate-missing --dry-run --output-sql /tmp/news-sentry-public-translation-empty.sql=> dry-run receipt produced-- no public translation patches readygit diff --check=> cleanNotes