-- =====================================================================
--  Bucket « releases » — hébergement des mises à jour de l'application
--  À exécuter UNE SEULE FOIS : Supabase > SQL Editor > New query > Run
--
--  Ce bucket contient l'installeur signé et le fichier « latest.json »
--  que chaque application interroge au lancement.
--
--  Lecture PUBLIQUE : les collègues doivent pouvoir télécharger la mise
--  à jour avant même d'être connectés. Aucun risque : le paquet est
--  signé, et une mise à jour non signée par la clé privée du projet est
--  purement et simplement refusée par Tauri.
--
--  Écriture : réservée au script « npm run release », qui s'authentifie
--  avec la clé service_role depuis la machine de l'administrateur.
-- =====================================================================

insert into storage.buckets (id, name, public)
  values ('releases', 'releases', true)
  on conflict (id) do nothing;

drop policy if exists releases_read on storage.objects;

create policy releases_read on storage.objects
  for select using (bucket_id = 'releases');

-- Personne d'autre que service_role n'écrit ici : aucune policy d'insert
-- n'est créée volontairement (service_role contourne la RLS).

notify pgrst, 'reload schema';
