feat(storage): add private backups bucket #75
No reviewers
Labels
No labels
Compat/Breaking
Kind/Bug
Kind/Documentation
Kind/Enhancement
Kind/Feature
Kind/Security
Kind/Testing
Priority/Critical
Priority/High
Priority/Low
Priority/Medium
Reviewed/Confirmed
Reviewed/Duplicate
Reviewed/Invalid
Reviewed/Won't Fix
Status/Abandoned
Status/Blocked
Status/Need More Info
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
project-halkyon/halkyon-infra!75
Loading…
Reference in a new issue
No description provided.
Delete branch "refs/pull/75/head"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
What
Adds a private, owner-scoped
backupsStorage bucket (100 MB/object) with the standard fourstorage.objectsRLS policies gating on the{auth.uid()}/folder prefix — the same recipe aspdf-sources/studyset-assets.Why
Backs the client's new automatic account-backup feature (halkyon-learn
feat/automatic-backups). Snapshots are produced and uploaded client-side with the user's own session, so this bucket plus its owner-scoped RLS is the only backend surface: no service role, no cron, no edge function. Nothing server-side ever reads a user's backups.Deploy
Migration
20260705165453_create_backups_bucket.sql. Apply to the live project via the usual migration workflow; runget_advisorsafterwards to confirm no RLS gap. Idempotent (ON CONFLICT DO NOTHING) and reversible (drop the bucket + policies).Merge this before the halkyon-learn PR so the bucket exists when the app feature ships.