| .. |
|
20250707221245_create_debats_tables.sql
|
refactor: migrate Ruby domain entities to modern Effect Schema
|
2025-07-10 00:18:34 +02:00 |
|
20250709152000_add_taken_at_to_statements.sql
|
feat(subjects): migrate general layout and Subjects page
|
2025-07-17 15:29:50 +02:00 |
|
20250717151910_make_public_figure_fields_required.sql
|
feat(db): enforce required fields for public_figures with auth seeding
|
2025-07-24 12:10:01 +02:00 |
|
20260105213750_remove_picture_url_from_public_figures.sql
|
feat(avatars): utiliser Supabase Storage avec convention {slug}.jpg
|
2026-02-06 17:33:19 +01:00 |
|
20260212000000_rename_user_profiles_to_contributors.sql
|
feat: authentification Supabase, entité Contributor, inscription par URL secrète
|
2026-02-12 01:59:47 +01:00 |
|
20260212120000_create_subject_activity_view.sql
|
feat: vue SQL subject_activity_summary pour la page d'accueil
|
2026-02-12 22:40:21 +01:00 |
|
20260227120000_create_invitations_table.sql
|
feat: système d'invitation par les contributeurs Éloquent (1000+ pts)
|
2026-02-27 23:56:20 +01:00 |
|
20260227130000_create_get_user_id_by_email_rpc.sql
|
feat: système d'invitation par les contributeurs Éloquent (1000+ pts)
|
2026-02-27 23:56:20 +01:00 |
|
20260228120000_create_reputation_events_table.sql
|
feat: table reputation_events comme source de vérité pour la réputation
|
2026-03-04 23:54:39 +01:00 |
|
20260308120000_make_wikipedia_url_optional_add_notoriety_sources.sql
|
feat: rendre wikipedia_url optionnel et ajouter notoriety_sources
|
2026-03-10 01:10:41 +01:00 |
|
20260309120000_create_public_figure_activity_view.sql
|
feat: refonte page /p avec vue SQL pré-agrégée, recherche et index A-Z
|
2026-03-10 01:10:44 +01:00 |
|
20260318104049_limit_figures_in_subject_activity_view.sql
|
feat: limiter les thumbnails personnalités à 2 lignes sur la page d'accueil (SQL LIMIT 15 + CSS max-height)
|
2026-03-18 23:08:06 +01:00 |
|
20260318110000_remove_taken_at_default.sql
|
fix: le champ taken_at des statements utilisait la date du jour au lieu de la date saisie par l'utilisateur
|
2026-03-18 23:06:37 +01:00 |
|
20260321120000_merge_evidences_into_statements.sql
|
refactor: fusionner Evidence dans Statement — un statement est une déclaration sourcée (citation + source + date + personnalité + position), suppression de l'entité Evidence et de la table evidences, renommage factDate → statedAt, nettoyage des permissions evidence_*
|
2026-03-22 00:30:32 +01:00 |
|
20260322120000_rename_date_to_stated_at.sql
|
fix: rendre la migration de renommage no-op — la migration principale a déjà été corrigée avant déploiement
|
2026-03-22 00:35:35 +01:00 |
|
20260322130000_create_draft_statements.sql
|
feat: système de brouillons de prises de position — table draft_statements, API REST (GET/POST/PATCH) protégée par ADMIN_API_KEY, page admin /admin/drafts avec résolution des entités et validation en cascade via les use cases existants (createPublicFigure, createSubject, createPosition, createStatement), permission admin au rang Fondateur
|
2026-03-23 23:59:11 +01:00 |
|
20260323130000_add_origin_to_draft_statements.sql
|
feat: champ origin obligatoire sur les brouillons — identifie quelle IA a déposé chaque draft, affiché comme badge dans la carte admin
|
2026-03-23 23:59:11 +01:00 |
|
20260323130001_make_origin_not_null.sql
|
feat: champ origin obligatoire sur les brouillons — identifie quelle IA a déposé chaque draft, affiché comme badge dans la carte admin
|
2026-03-23 23:59:11 +01:00 |
|
20260324120000_add_revision_requested_status.sql
|
feat: distinction rejet définitif / demande de révision — statut revision_requested, deux actions séparées rejectDraftAction et requestRevisionAction, repo factorisé avec findByStatus unique
|
2026-03-24 23:50:19 +01:00 |
|
20260325120000_add_merge_positions_function.sql
|
feat: page détail position et fusion de positions — page /s/[slug]/position/[positionId] avec prises de position, fusion transactionnelle via rpc SQL merge_positions, méthode findByPositionIdWithFigures, lien cliquable sur les titres de position
|
2026-03-25 22:37:43 +01:00 |
|
20260326120000_add_subject_positions_summary_function.sql
|
feat: composant FigureAvatarRow avec badge +N, read model SQL get_subject_positions_summary (CQRS), suppression du CSS mort des avatars inline
|
2026-03-26 23:25:36 +01:00 |
|
20260326130000_soft_delete.sql
|
fix: renommer migration soft-delete pour éviter le conflit de timestamp avec add_subject_positions_summary_function (20260326120000 → 20260326130000)
|
2026-03-27 17:17:26 +01:00 |
|
20260328110000_remove_authenticated_write_policies.sql
|
fix: renommer la migration RLS write pour respecter l'ordre chronologique en production
|
2026-03-28 10:38:34 +01:00 |
|
20260328120000_remove_public_read_policies.sql
|
security: suppression des politiques RLS de lecture — toutes les requêtes passent par le client admin
|
2026-03-28 10:32:26 +01:00 |
|
20260328130000_add_slug_to_positions.sql
|
feat: slug sur les positions (étape 1) — colonne nullable, script backfill, entité/repo mis à jour, slugify partagé entre les 3 entités
|
2026-03-29 12:25:08 +02:00 |
|
20260328130001_positions_slug_not_null_unique.sql
|
feat: slug sur les positions (étape 2) — NOT NULL + unique par sujet, routes /s/[slug]/position/[positionSlug], fonction SQL mise à jour
|
2026-03-29 12:39:17 +02:00 |
|
20260328130002_add_slug_to_positions_summary_function.sql
|
feat: slug sur les positions (étape 2) — NOT NULL + unique par sujet, routes /s/[slug]/position/[positionSlug], fonction SQL mise à jour
|
2026-03-29 12:39:17 +02:00 |