PROMPT 2 · INVENTAIRE TECHNIQUE TERMINÉ
Audit statique consolidé de RadioInternet.ca. Les états distinguent ce qui fonctionne dans le navigateur, ce qui demeure partiel et ce qui exige une infrastructure serveur. Aucun module absent n’est présenté comme terminé.
Rôle : Relier tous les parcours et conserver les URL
État : Fonctionnel
Dépendances : Next Link, route dynamique, menu mobile
Problème : Menu et pied de page très denses; contrôle manuel des liens requis à chaque ajout
Rôle : Présenter les services et conduire vers la commande
État : Fonctionnel avec limites
Dépendances : Catalogue JSON de 136 services
Problème : Architecture actuelle adaptée à 136 offres, pas encore à 1 000; recherche et comparaison à consolider
Rôle : Préparer une demande vérifiable
État : Fonctionnel local
Dépendances : Navigateur, courriel de l’utilisateur
Problème : Pas de base de commandes, compte, paiement ni accusé de réception serveur
Rôle : Lire les titres et flux autorisés
État : Fonctionnel avec limites
Dépendances : HTML Audio, sources Suno et flux externes
Problème : Autoplay iOS limité; continuité entre pages et disponibilité des sources externes non garanties
Rôle : Trouver et changer de station par style
État : Fonctionnel avec limites
Dépendances : Radio Browser, flux HTTPS, stockage local
Problème : Métadonnées musicales inégales; recommandations limitées aux données publiques disponibles
Rôle : Importer, enregistrer, monter, mixer, masteriser et exporter
État : Fonctionnel local
Dépendances : Web Audio, IndexedDB, permissions micro
Problème : Mémoire mobile, gros fichiers, codecs serveur et reprise multiappareil non couverts
Rôle : Instrument tactile et communication P2P
État : Bêta fonctionnelle
Dépendances : WebRTC, micro, caméra, échange manuel de signal
Problème : Aucun serveur de signalisation/TURN; salles, reconnexion et enregistrement partagé incomplets
Rôle : Grille, bibliothèque, file et campagnes
État : Fonctionnel local
Dépendances : Stockage navigateur, import/export JSON
Problème : Pas de diffusion 24/7 réelle, base partagée, rôles ni Liquidsoap connecté
Rôle : Préparer chanson, pochette, droits et profil
État : Fonctionnel local
Dépendances : Fichiers locaux, mailto, Music Radar local
Problème : Compte artiste, téléversement durable, modération, versions et publication serveur absents
Rôle : Publier et explorer les articles
État : Fonctionnel avec limites
Dépendances : Collection générée au build
Problème : Éditeur local sans workflow serveur, révision, planification ou preuve de source centralisée
Rôle : Préparer campagnes et afficher des zones
État : Partiel
Dépendances : AdSense, consentement, inventaire interne
Problème : Emplacements présents mais moteur multi-régies, fréquence, rapports et vente directe non branchés
Rôle : Mesurer pages et actions
État : Partiel
Dépendances : GA4, consentement, stockage local
Problème : Définitions officielles et événements métier incomplets; données locales non consolidées
Rôle : Orienter vers les fonctions du site
État : Fonctionnel local limité
Dépendances : Moteur de règles et base de connaissances locale
Problème : Pas de modèle serveur, RAG, comptes, historique partagé ni audit automatique continu
Rôle : Connecter FFmpeg, Demucs, Whisper, RNNoise et voix
État : Absent côté exécution
Dépendances : Workers, stockage, files de travaux, secrets
Problème : Contrats documentés mais moteurs non déployés
Rôle : Séparer clients, artistes, radios et administrateurs
État : Partiel
Dépendances : Identité ChatGPT disponible, base absente
Problème : Aucun modèle de données métier, rôles, espace client durable ou journal administratif
Rôle : Encaisser, taxer, recevoir les webhooks et produire les reçus
État : Absent
Dépendances : Fournisseur officiel, taxes, catalogue, webhooks
Problème : PayPal ou une autre API marchande reconnue doit être configurée avec webhooks signés; aucune transaction ne doit être présentée comme effectuée avant cette connexion
Rôle : Rendre les pages découvrables et partageables
État : Fonctionnel avec limites
Dépendances : Métadonnées Next, robots, sitemap, images OG
Problème : Routes dynamiques et contenus volumineux à contrôler périodiquement; données structurées à étendre
Rôle : Protéger comptes, médias, consentements et secrets
État : Fondation présente
Dépendances : CSP, permissions, consentement, fournisseur d’identité
Problème : Audit OWASP, journalisation, rétention, sauvegardes et réponse aux incidents à formaliser avant données clients
Rôle : Fonctionner au doigt, au clavier et dans les deux orientations
État : Corrigé par conception
Dépendances : CSS responsive, Safari/Chrome, permissions appareil
Problème : Certification WCAG et matrice physique iPhone/iPad/Android non terminées
Rôle : Expliquer droits, confidentialité et conditions
État : Présentes
Dépendances : Validation juridique humaine
Problème : Textes techniques non équivalents à un avis juridique; mise à jour requise avant paiement et comptes
Modèle de données, comptes/rôles, sécurité, sauvegardes, journalisation et décisions de conformité.
3–6 sem.Commande serveur, devis, fournisseur de paiement, taxes, webhooks, reçus et espace client.
3–5 sem.Téléversements, quotas, antivirus, stockage, transcodage, files de travaux et suppression contrôlée.
4–8 sem.Signalisation, STUN/TURN, salles, reconnexion, consentement d’enregistrement et Liquidsoap/Icecast.
5–10 sem.Dictionnaire d’événements, consentement, fraude, tableaux de bord, multi-régies et rapports.
4–8 sem.Tests automatisés, matrice d’appareils, performance, accessibilité, observabilité et non-régression.
3–6 sem.Les prochains travaux doivent commencer par les P0 : données, comptes, permissions, sécurité, commande, paiement, stockage média, WebRTC et diffusion. Les fonctions locales existantes sont conservées. Toute nouvelle fonction dépendante de ces blocs doit attendre leur validation.