refactor(visual): rename R2 buckets, /gittensory/shot route, and R2 key prefixes to loopover - #5531
Conversation
…ey prefixes to loopover Provisions two new live Cloudflare R2 buckets (loopover-review-audit, loopover-visual-capture-public) replacing gittensory-review-audit and gittensory-visual-capture-public, and wires the REVIEW_AUDIT R2 binding into wrangler.jsonc for the first time (it was previously configured only via the dashboard, undeclared in code) so it actually resolves on the hosted Worker going forward. Renames the public screenshot route from /gittensory/shot to /loopover/shot (src/api/routes.ts, src/auth/rate-limit.ts's cost classification) and the R2 key namespace from gittensory/ to loopover/ throughout capture.ts, shot.ts, actions-fallback.ts's two fallback-shot namespaces, blob-store.ts, and s3-blob-store.ts, plus every doc comment describing them. Per explicit maintainer decision: no data migration, no permanent alias for old links, and no dual-serving window — old screenshots are not preserved, this is a straight-forward cutover so everything going forward is correctly named. The two old buckets are left in place (not deleted) for now. Closes #5332.
|
Superagent didn't find any vulnerabilities or security issues in this PR. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #5531 +/- ##
=======================================
Coverage 94.79% 94.79%
=======================================
Files 566 566
Lines 45065 45065
Branches 14675 14675
=======================================
Hits 42718 42718
Misses 1613 1613
Partials 734 734
Flags with carried forward coverage won't be shown. Click here to find out more.
🚀 New features to boost your workflow:
|
|
Warning 🟨🟨🟨🟨🟨🟨🟨🟨🟨🟨🟨🟨 ⏸️ Gittensory review result - manual review recommendedReview updated: 2026-07-13 02:18:26 UTC
⏸️ Suggested Action - Manual Review
Review summary Nits — 7 non-blocking
Linked issue satisfactionPartially addressed Review context
Contributor next steps
Signal definitions
[BETA] Chat with GittensoryAsk Gittensory a question about this PR directly in a comment — grounded only in the same cached, public-safe facts shown above, never a new claim.
Full command reference: https://gittensory.aethereal.dev/docs/gittensory-commands 🟩 Safe / merged · 🟦 Advisory · 🟨 Held for review · 🟥 Blocked / closed 💰 Earn for open-source contributions like this. Gittensor lets GitHub contributors earn for the work they already do — register to start earning →. Checked by Gittensory, a quiet PR intelligence layer for OSS maintainers.
|
Summary
Provisions two new live Cloudflare R2 buckets (
loopover-review-audit,loopover-visual-capture-public) replacinggittensory-review-auditandgittensory-visual-capture-public, and adds anr2_bucketsbinding towrangler.jsoncfor the first time —REVIEW_AUDITwas previously configured only via the Cloudflare dashboard, entirely undeclared in code, meaningenv.REVIEW_AUDITlikely resolved toundefinedon the hosted Worker. This PR both renames and actually wires it for the first time.Renames the public screenshot route from
/gittensory/shotto/loopover/shot(src/api/routes.ts,src/auth/rate-limit.ts's cost classification) and the R2 key namespace fromgittensory/toloopover/throughoutcapture.ts,shot.ts,actions-fallback.ts's two fallback-shot namespaces,blob-store.ts, ands3-blob-store.ts, plus every doc comment describing them.Per explicit maintainer decision: no data migration, no permanent alias for old links, no dual-serving window — old screenshots are not preserved, this is a clean forward cutover so everything is correctly named going forward. The two old buckets are left in place (not deleted) for now.
Deliberately unchanged
gittensory-review-enrichmentGitHub Actions artifact name /RUN_NAME_PATTERNinactions-fallback.ts— a cross-repo contract withvisual-capture-fallback.ymlin consuming repos, tracked by issue Rename the visual-capture-fallback.yml cross-repo contract with a compatibility alias #5338 (renaming it here without coordinating the other side would break the fallback dispatch entirely).GITTENSORY_*env var names, the.gittensory.ymlconfig convention, the domain, and Sentry naming (each a separate, already-tracked or explicitly deferred surface).Test plan
npm run test:cigate green (typecheck, coverage, engine-parity, mcp/miner builds, UI lint/typecheck/test/build).auth.test.ts,visual-shot.test.ts,visual-capture.test.ts,actions-fallback.test.ts— 249 tests).npm run typecheckandnpm run cf-typegen— regeneratedworker-configuration.d.tsfor the newr2_bucketsbinding.Closes #5332.