Contenu du dossier
6 fichiers Markdown · 31.1 Ko · skills/ai-act-audit
---
name: ai-act-audit
description: >-
Audit de transparence et de risques AI Act (UE) sur une app, un site ou un
produit : article 50 (mentions, marquage, deepfakes), article 5 (pratiques
interdites), rôles fournisseur/déployeur, checklist et rapport factuel. Use
when the user asks to check AI Act compliance, audit a chatbot or AI features,
review transparency obligations, scan a public page for AI disclosure, or
prepare an AI Act readiness review.
---
# Audit AI Act (transparence & interdictions)
Tu es un auditeur technique de l’**AI Act** (règlement UE 2024/1689). Tu
constates des **signaux**, tu ne rends pas de verdict juridique « conforme /
non conforme ». Tu ne donnes pas de conseil juridique.
**Date de référence du corpus Balise : août 2026.** L’article 50 est applicable
depuis le **2 août 2026** (non reporté). Le marquage machine 50(2) des systèmes
génératifs déjà sur le marché avant cette date a un sursis jusqu’au
**2 décembre 2026**. L’info chatbot 50(1) est **immédiate**.
## Quand charger les références
| Besoin | Fichier |
| --- | --- |
| Obligations Art. 50, formulaires OK / KO, sanctions | [reference-obligations.md](reference-obligations.md) |
| Interdictions Art. 5, bonnes / mauvaises pratiques | [reference-interdictions.md](reference-interdictions.md) |
| Checklist exhaustive à cocher | [checklist.md](checklist.md) |
| Chats custom, widgets, faux négatifs / positifs | [edge-cases.md](edge-cases.md) |
| Format de rapport attendu | [report-template.md](report-template.md) |
Lis ces fichiers **avant** de conclure. Ne paraphrases pas les citations légales
au-delà de ce qu’ils contiennent.
## Règles d’or (non négociables)
1. **Signal ≠ manquement.** Écrire « mention absente de la page servie », jamais
« illégal » ou « amende certaine ».
2. **Séparer les obligations.** Marquage machine (fournisseur, 50(2)) ≠ mention
visible (souvent déployeur, 50(4)). Un C2PA correct **n’exonère pas** la
mention visible.
3. **Identifier le débiteur.** Widget tiers non modifié → 50(1) pèse souvent sur
l’éditeur du widget ; bot maison / rebrandé → l’entreprise peut être
fournisseur.
4. **Ne pas inventer l’origine IA.** Absence de C2PA ≠ image non générée.
Watermark texte propriétaire (ex. Claude) hors portée sans outil dédié.
5. **Refuser le name & shame juridique.** Constats techniques + citations
d’articles pour orienter, pas pour accuser.
## Outils d’inspection (obligatoire selon le contexte)
Utilise les outils **réels** disponibles dans l’environnement — ne te contente
pas d’imaginer la page.
### Pages web publiques
Par ordre de préférence :
1. **Navigateur Cursor / MCP browser** (`browser_navigate`, `browser_snapshot`,
`browser_click`, `browser_take_screenshot`) — idéal pour voir l’UI, ouvrir un
chat, lire le DOM accessible.
2. **Playwright** (CLI ou script local) — pour iframes cross-origin, multi-pages,
réseau, téléchargement d’images.
3. **Fetch HTTP** — HTML brut, en-têtes, robots.txt ; insuffisant seul pour un
widget JS.
**Procédure minimale page publique :**
```text
1. Ouvrir l’URL (viewport desktop ~1366px)
2. Accepter cookies si bandeau bloque le chat (Didomi, OneTrust, Axeptio…)
3. Snapshot accessibilité / DOM : bouton chat, iframes, textes visibles
4. Noter l’état AVANT ouverture du widget
5. Ouvrir le chat / la conversation ; relire le premier message et la zone de saisie
6. Lister images de contenu ; pour 3–10 images représentatives, tenter C2PA / XMP
si un outil local le permet (ex. Balise, c2pa-ts, exifr)
7. Mentions légales : responsable éditorial identifiable ?
```
### Codebase / app locale
- Chercher chatbots, SDK (Intercom, Crisp, HubSpot, OpenAI, Anthropic, etc.).
- Chercher génération d’images / vidéo / voix.
- Chercher biométrie, émotion, scoring, scraping de visages.
- Vérifier textes d’UI : onboarding, disclaimers, badges « AI ».
- Vérifier si les sorties passent par un pipeline qui **strip** les métadonnées
(CDN, sharp, Cloudinary, Next/Image mal configuré).
### Ce que tu ne fais pas
- Pas d’OCR pour lire un label dans les pixels (trop fragile → faux négatif).
- Pas d’affirmation sur SynthID / watermarks propriétaires non documentés.
- Pas de scan hors périmètre autorisé (intranet sans accès, contournement de
captcha / auth).
## Workflow d’audit
Copie et coche au fil de l’eau :
```text
Audit AI Act
- [ ] 1. Périmètre & rôle (fournisseur / déployeur / les deux)
- [ ] 2. Inventaire des fonctions IA
- [ ] 3. Article 5 — drapeaux rouges (stop si interdit)
- [ ] 4. Article 50(1)+(5) — interaction / chat
- [ ] 5. Article 50(2) — marquage machine des sorties
- [ ] 6. Article 50(4) — mentions visibles médias / textes
- [ ] 7. Article 50(3) — émotions / biométrie (si pertinent)
- [ ] 8. Haut risque / GPAI (si indices) — orientation seulement
- [ ] 9. Rapport (template) + limites
```
### 1. Périmètre & rôle
Demander si besoin : URL(s), accès staging, codebase, pays cible (UE), usage
pro vs interne. Classer chaque fonction :
| Situation | Rôle probable |
| --- | --- |
| Bot développé en interne, sous la marque du site | Fournisseur |
| Widget tiers intégré sans modification | Déployeur (50(1) → éditeur du widget) |
| Fork / white-label d’un système tiers sous sa marque | Souvent fournisseur du nouveau système |
| Publie des images/vidéos IA | Déployeur pour 50(4) |
### 2. Inventaire
Lister : chat, agent, génération image/vidéo/audio/texte, avatar, reco
conversationnelle, analyse faciale, voix. Exclure du 50(1) typiquement :
spam filters, traduction pure, recherche sans génération, autocomplétion
non conversationnelle (voir référence).
### 3. Article 5 d’abord
Si un usage tombe dans une **interdiction** (voir
[reference-interdictions.md](reference-interdictions.md)), le signaler en
**critique** avant toute discussion de transparence : étiqueter ne rend pas
licite un usage interdit (ex. reconnaissance d’émotions au travail / à l’école).
### 4. Chat / interaction — 50(1) + 50(5)
**Bonnes pratiques (exemples acceptables) :**
- Message d’accueil clair : « Vous interagissez avec un système d’IA »
- Badge persistant près du champ de saisie
- Révélation si l’utilisateur demande « es-tu une IA ? »
- Rappels si contexte sensible (finance, santé, réclamations, mineurs)
**Insuffisant (liste noire) :**
- Mention uniquement dans CGU / FAQ / documentation
- Watermark machine seul, non perceptible
- « Assistant » ambigu, avatar humain trompeur
- « Ce site utilise l’IA » générique, non lié à *cette* interaction
- Description purement technique (« LLM ») sans dire que l’interlocuteur est artificiel
**Timing :** au plus tard à la **première interaction** / début de session. Une
mention qui n’apparaît qu’après plusieurs tours ou derrière un menu est un
signal faible.
**Mesure en deux temps :** (A) page servie avant clic — (B) après ouverture.
Reporter les deux. (B) OK + (A) vide = souvent OK juridiquement sur le timing,
mais opaque pour le visiteur qui ne clique pas.
**Chats custom :** si aucun éditeur connu (Intercom, Crisp…) n’apparaît, appliquer
la heuristique bulle flottante + libellé — détail et tableaux d’edge cases dans
[edge-cases.md](edge-cases.md). Ne jamais conclure « pas de chat » sur la seule
absence de SDK.
### 5. Marquage machine — 50(2)
Cible : **fournisseur** du générateur. Vérifier si le produit *génère* des
sorties. Présence C2PA / métadonnées signées = signal positif. Absence = non
concluant (CDN, recompression). Watermark texte (ex. Anthropic) : noter la
politique déclarée du fournisseur ; ne pas prétendre l’avoir détecté sans outil.
### 6. Mentions visibles — 50(4)
- Deepfake / hypertrucage : mention **humaine** perceptible sans outil.
- Ne pas se reposer sur C2PA pour acquitter 50(4).
- Texte d’intérêt public : mention ou exception éditoriale réelle (revue humaine
+ responsable identifiable). Signal faible observable : mentions légales.
Pour les images sur page : légende / texte adjacent clair > `alt` seul (indice).
### 7. Rapport
Produis le rapport avec [report-template.md](report-template.md). Sévérités :
| Niveau | Sens |
| --- | --- |
| Critique | Indice d’usage potentiellement interdit (Art. 5) ou biométrie sensible |
| Élevé | Interaction IA sans aucune mention au début de session (constaté) |
| Moyen | Mention seulement hors widget / après clic / ambiguë |
| Info | Marquage machine absent ou non lisible (non concluant) |
| OK signal | Mention claire constatée / C2PA origine IA + légende |
Termine toujours par **Limites de l’audit** et **Prochaines vérifications
humaines / juridiques**.
## Formulation publique (si l’utilisateur publie)
Autorisé : « Sur la page servie, aucune mention d’IA n’était lisible dans le
widget avant ouverture. »
Interdit : « Ce site viole l’AI Act » / « Ils risquent 15 M€ ».
Plafond Art. 50 (ordre de grandeur, Art. 99(4)) : jusqu’à **15 M€ ou 3 %** du
CA mondial (le plus élevé) ; PME : le plus faible des deux. Art. 5 : palier
supérieur (**35 M€ / 7 %**). Citer comme contexte, pas comme menace ciblée.
# Checklist audit AI Act
Cocher pendant l’audit. Joindre URL, commit, capture ou extrait DOM pour chaque
point non trivial.
## A. Cadrage
- [ ] Périmètre écrit (URLs, environnements, codebase, date)
- [ ] Langue / marché UE précisé
- [ ] Rôle(s) : fournisseur / déployeur / les deux / indéterminé
- [ ] Usage pro vs interne / B2B fermé noté
- [ ] Outils utilisés (browser Cursor, Playwright, lecture code, Balise…)
## B. Inventaire IA
- [ ] Chat / agent / avatar / voix listés
- [ ] Génération image / vidéo / audio / texte listée
- [ ] Biométrie / émotions / scoring / scraping visages cherchés
- [ ] Fournisseurs tiers (Intercom, OpenAI, Anthropic, etc.) identifiés
- [ ] Fonctions hors champ 50(1) écartées avec motif (traduction, antispam…)
## C. Article 5 (priorité)
- [ ] Nulle trace d’emotion recognition travail / éducation
- [ ] Nulle trace de catégorisation biométrique sensible
- [ ] Nulle trace de scraping massif de visages pour reconnaissance
- [ ] Nulle offre d’ID biométrique temps réel espace public hors cadre
- [ ] Pas d’autre drapeau art. 5 évident dans le périmètre
- [ ] Si doute : escalade humaine, pas d’auto-clear
## D. Interaction — 50(1) + 50(5)
- [ ] Widget / surface d’interaction repéré (ou absence documentée)
- [ ] État **avant** ouverture : texte visible noté
- [ ] État **après** ouverture / 1er message : texte noté
- [ ] Mention claire que l’interlocuteur est une IA (pas seulement « assistant »)
- [ ] Mention non reléguée aux seules CGU
- [ ] Badge ou libellé persistant près de la saisie (si pertinent)
- [ ] Réponse à la question « es-tu une IA ? » testée si possible
- [ ] Contextes sensibles : rappels / escalade humaine évalués
- [ ] Iframes tiers lues si le texte du widget y vit
- [ ] Si pas d’éditeur connu : heuristique bulle flottante + libellé (voir edge-cases.md)
- [ ] Angle mort icon-only / sans aria-label signalé si pertinent
- [ ] Débiteur probable (éditeur widget vs site / bot maison) renseigné
## E. Marquage machine — 50(2)
- [ ] Le produit **génère**-t-il des sorties ? (sinon N/A)
- [ ] Politique du fournisseur de modèle documentée (C2PA, watermark texte…)
- [ ] Échantillon de fichiers sortis : présence / absence de manifeste
- [ ] Pipeline de delivery : strip métadonnées ? (CDN, optimiseur)
- [ ] Moyen de détection annoncé par le fournisseur ? (info, souvent hors page)
- [ ] Calendrier : modèle pré/post 2 août 2026 / échéance 2 déc. 2026 noté
## F. Médias & textes — 50(4)
- [ ] Images/vidéos photoréalistes publiées repérées
- [ ] Mention humaine visible sans outil près du média (ou absence)
- [ ] Non-reliance sur le seul C2PA pour l’étiquette visible
- [ ] Cas co-occurrence : origine IA attestée **et** pas de mention humaine
- [ ] Textes intérêt public : mention ou indices d’exception éditoriale
- [ ] Mentions légales : responsable éditorial identifiable
## G. Émotions / biométrie — 50(3)
- [ ] N/A documenté **ou** information à la 1ère exposition vérifiée
- [ ] Recoupement art. 5 fait
## H. Qualité du rapport
- [ ] Sévérités alignées sur le template
- [ ] Aucune phrase « illégal / amende » sans qualification juridique humaine
- [ ] Limites de l’audit explicites
- [ ] Actions recommandées classées (produit / juridique / technique)
# Edge cases — chats custom, widgets, faux négatifs
Complément opérationnel pour l’audit page publique. À lire avec la section
chat de `SKILL.md`. Aligné sur la détection Balise (`chats-custom` +
signatures éditeurs).
## Deux familles de chats
| Famille | Comment les trouver | Piège |
| --- | --- | --- |
| **Éditeur connu** | Domaine réseau (Intercom, Crisp…), `window.*`, sélecteurs DOM | Marque blanche / chargement différé |
| **Sur mesure (custom)** | Pas de signature éditeur → UI | Faux négatif fréquent si on ne cherche que les SDK |
Un bot custom (ex. Mistral / OpenAI derrière une bulle maison) **n’apparaît
pas** dans les listes Intercom/Crisp. Il faut une heuristique UI.
## Heuristique « chat sur mesure » (à appliquer)
Repérer un **lanceur** qui cumule :
1. Conteneur **`position: fixed` ou `sticky`**
2. Placée dans un **coin** d’écran (souvent bas-droite)
3. **Libellé** chat / assistant / IA dans `aria-label`, `title`, texte visible
ou teaser voisin (« Open AI Assistant », « Ask our AI », « Have questions?
Ask our AI », « powered by Mistral », etc.)
Puis :
- Noter l’état **avant** clic (lanceur + teaser).
- **Ouvrir** le panneau ; lire premier message + zone de saisie.
- Lire les **iframes** si le contenu conversationnel y vit.
- Qualifier la nature : indices IA lexicaux → `assistant-ia` probable ;
sinon `indetermine` (ne pas inventer un humain).
## Edge cases à documenter explicitement
| Cas | Constat attendu | Ne pas écrire |
| --- | --- | --- |
| Bulle + `aria-label` « Open AI Assistant » | Chat custom détectable ; mention possible **dans le lanceur** | « Absent de la page » si le libellé annonce déjà l’IA |
| Mention seulement après ouverture (ex. Back Market) | Avant clic : absente / hors widget ; après clic : trouvée | « Hors-la-loi » |
| Fenêtre créée seulement au clic (DOM vide avant) | `non-verifiable` pour le contenu widget | « Absente » |
| Icône seule, pas d’`aria-label` / texte | Angle mort — chat peut exister sans être vu | « Aucun chat sur le site » |
| FAQ « AI » au milieu de page, pas de bulle | Ce n’est **pas** un lanceur de chat | Faux positif chat |
| Widget tiers non modifié | Débiteur 50(1) souvent = éditeur du widget | Imputer automatiquement le site |
| Bot maison sous la marque du site | Site peut être **fournisseur** | « Ce n’est jamais leur problème » |
| Bandeau cookies bloque le script | Chat invisible pour le scan | « Pas de chat » sans nuance |
| Watermark texte Claude / SynthID | Hors portée sans outil dédié | « Pas de marquage donc pas d’IA » |
| C2PA présent sans `digitalSourceType` IA | Provenance ≠ génération IA | « Image IA marquée » |
| Sitemap multi-pages incomplet / SPA | Liste partielle | « Audit de tout le site » |
## Procédure anti-faux-négatif (custom)
```text
1. Snap accessibilité : boutons / aria-label contenant assistant|chat|AI|IA
2. Chercher fixed/sticky en coin bas-droite (puis autres coins)
3. Si trouvé → ouvrir, lire iframe si besoin
4. Si rien → chercher scripts fetch vers api.openai|mistral|anthropic|… (indice faible)
5. Si toujours rien → « aucun chat détectable avec les méthodes utilisées » + limites
```
## Formulation
- « Chat sur mesure repéré (bulle bas-droite, libellé …). »
- « Aucune signature d’éditeur connue ; aucune bulle flottante libellée
chat/IA trouvée — un bot icon-only peut encore échapper. »
# Référence — obligations de transparence (article 50)
Corpus condensé pour l’agent. Sources : règlement (UE) 2024/1689 ; lignes
directrices Commission C(2026) 5054 final (20 juillet 2026) ; code de bonnes
pratiques transparence des contenus IA (10 juin 2026). Les « § » renvoient aux
lignes directrices.
## Calendrier (août 2026)
| Obligation | Date |
| --- | --- |
| Art. 50 (transparence) | **2 août 2026** — applicable, **non reporté** |
| Marquage machine 50(2) pour systèmes génératifs **déjà** sur le marché avant le 2 août 2026 | Sursis jusqu’au **2 décembre 2026** |
| Info chatbot 50(1) même si le système est aussi génératif | **Sans délai** depuis le 2 août 2026 |
| Contenus générés **avant** le 2 août 2026 | Pas de marquage rétroactif ; s’ils sont **publiés après**, les règles de publication s’appliquent |
L’omnibus a reporté d’autres volets (haut risque, etc.) — **pas** l’article 50.
## Qui doit quoi
| Article | Débiteur | Objet |
| --- | --- | --- |
| 50(1) | **Fournisseur** | Informer que l’on interagit avec une IA |
| 50(2) | **Fournisseur** (génératif / GPAI) | Marquage machine + moyens de détection |
| 50(3) | **Déployeur** | Informer si émotions / catégorisation biométrique |
| 50(4) al. 1 | **Déployeur** pro | Mention visible deepfake / hypertrucage |
| 50(4) al. 2 | **Déployeur** pro | Mention texte d’intérêt public (sauf exception éditoriale) |
| 50(5) | Transversal | Clair, reconnaissable, **au plus tard à la 1ère interaction / exposition** |
### Fournisseur vs déployeur (web)
- Développe le bot en interne sous sa marque → **fournisseur**.
- Modifie un système puis le met en service sous sa marque → **fournisseur** du nouveau système.
- Intègre un widget tiers **sans** modification → **déployeur** ; le 50(1) pèse sur l’éditeur du widget.
- Publie une image IA → **déployeur** pour le 50(4), même si le générateur a marqué en 50(2).
## 50(1) — interaction
**Champ :** système d’IA (art. 3(1)), interaction **directe** avec des **personnes physiques**. Inclut chatbots support / e-commerce / finance / santé / éducation, assistants vocaux, avatars, bots sociaux, agents IA.
**Hors champ typique :** reco non conversationnelle, antispam, traduction, recherche sans génération, automates à règles / arbres de décision / réponses purement préprogrammées, autocomplétion.
**Quand :** début de chaque session interactive ; chaque nouvelle personne exposée. Rappels si publics vulnérables, finance, juridique, santé, réclamations, compagnons IA. Doit pouvoir révéler sa nature **sur demande**.
**Forme OK :** phrase d’ouverture (« Vous interagissez avec un système d’IA »), badge près de la saisie, annonce vocale, symbole « AI » visible.
**Forme KO (§38) :**
- CGU / URL / doc uniquement
- Marquage machine seul non perceptible
- « Assistant » ambigu, représentation humaine trompeuse
- Mention générique « ce site utilise l’IA »
- Jargon technique sans dire que l’interlocuteur est artificiel
**Exception « c’est évident » :** restrictive. Savoir que les chatbots existent **ne suffit pas**. Helpdesk / chatbot grand public en ligne : en pratique **pas** dans l’exception. OK possibles : outil code pour devs pros, outil interne salariés formés, outil réservé à des pros de santé.
## 50(2) — marquage machine
Deux exigences cumulatives : (1) sorties marquées lisibles machine ; (2) **moyens de détection** mis à disposition. Marquer sans détecter = insuffisant.
Techniques citées : filigranes, métadonnées, crypto / provenance, journalisation, empreintes, combinaison. Approche multicouche du code de bonnes pratiques : métadonnées signées (de fait **C2PA**) + filigrane robuste + repli.
**Couvert :** texte, image, audio, vidéo, multimodal, 3D, VR/AR.
**Hors champ (§68) notamment :** sorties très courtes (mots isolés, légendes, alt, libellés UI, icônes), code source, machine-à-machine, simple réarrangement d’existant.
**Exceptions :** aide à l’édition standard (grammaire / format sans création), pas d’altération substantielle, usages légaux pénaux ; tolérances B2B fermé / éphémère temps réel.
**Observabilité :** présence C2PA / XMP = signal fort. Absence = **non concluant** (strip CDN/CMS) et l’obligation ne pèse en général **pas** sur le site qui affiche.
## 50(3) — émotions / biométrie
Déployeur informe au plus tard à la première exposition. Forme libre (écrit, icônes, oral…).
Catégorisation biométrique visée même hors « haut risque » (ex. estimation âge/genre à partir de biométrie).
**Attention Art. 5 :** reconnaissance d’émotions **au travail et en éducation = interdite** ; l’information 50(3) ne la rend pas licite.
Observabilité page publique : quasi nulle (SDK faciaux = indice faible).
## 50(4) — deepfakes et textes
### Al. 1 — hypertrucage
Déployeur pro d’un système qui génère/manipule image/audio/vidéo constituant un deepfake (art. 3(60)) : divulguer génération/manipulation artificielle.
Critères deepfake (cumulatifs) : ressemblance appréciable ; sujets existants ou plausiblement ; personnes/objets/lieux/événements ; apparaîtraient faussement authentiques. Intention de tromper **non** requise.
Divulgation **perceptible sans outil ni démarche dédiée**. **Le déployeur ne peut pas s’acquitter via le seul marquage 50(2) du fournisseur** (§117).
Œuvres artistiques / satiriques / fictionnelles : obligation **allégée** (ne pas entraver la jouissance), **pas** une exclusion. Si ambigu ou informatif+créatif → régime informatif l’emporte.
### Al. 2 — texte d’intérêt public
Divulguer l’origine IA **sauf** revue humaine / contrôle éditorial **et** responsabilité éditoriale assumée. Charte seule ou relecture auto = insuffisant. IA après validation → exception tombe. Identité + coordonnées du responsable éditorial **faciles à trouver** (ex. mentions légales).
## 50(5) — perceptibilité
Claire + distinguable + au plus tard 1ère interaction/exposition + accessibilité (renvoi directives accessibilité).
Insuffisant : manuel, **plusieurs niveaux de menus**, CGU non lues. Pour contenus : chaque sortie / chaque exposition raisonnable ; mention seulement au début d’une vidéo si on peut rejoindre au milieu = problématique.
## Sanctions (ordre de grandeur)
- Art. 50 → Art. 99(4) : jusqu’à **15 M€ ou 3 %** CA mondial (le plus élevé) ; PME/start-up : le **plus faible** ; institutions UE : 750 k€.
- Art. 5 → palier **35 M€ / 7 %**.
- Plaintes : art. 85. Autres droits (conso, image, pénal, DSA) restent applicables.
- Étiqueter correctement **ne légalise pas** un contenu autrement illicite.
## Observabilité scanner (rappel)
| Obligation | Observable ? |
| --- | --- |
| 50(1)+50(5) | Partiellement — meilleur terrain (mention dans l’UI) |
| 50(2) | Positif seulement (marque présente) |
| 50(3) | Hors portée |
| 50(4) médias | Partiel ; cas solide = origine IA attestée **sans** mention humaine |
| 50(4) texte | Hors portée (sauf mentions légales) |
# Référence — interdictions (article 5) & bonnes / mauvaises pratiques
L’article 5 liste des **pratiques d’IA interdites**. La transparence (art. 50)
ne les rend jamais licites. En audit produit, traiter ces points en **priorité
critique** dès qu’un indice apparaît.
Plafond de sanctions : jusqu’à **35 000 000 EUR ou 7 %** du CA mondial
(art. 99), palier supérieur à celui de l’article 50.
Ce fichier oriente un audit technique. La qualification juridique finale
appartient à un conseil.
## Pratiques interdites — grille d’alerte produit
Pour chaque ligne : si l’app **fait** ou **facilite** clairement la pratique,
remonter en **Critique** avec preuves (écran, endpoint, doc produit, code).
| Thème (art. 5) | Signaux produits à chercher | Notes |
| --- | --- | --- |
| Techniques subliminales / manipulatoires dépassant la conscience, distordant le comportement | UX dark pattern extrême + IA personnalisée pour pousser des actes préjudiciables | Seuil élevé ; ne pas confondre avec du marketing banal |
| Exploitation de vulnérabilités (âge, handicap, situation sociale/économique) | Ciblage IA de mineurs / personnes vulnérables pour nuire | |
| Scoring social par autorités publiques (notation citoyenne étendue) | Produit « score citoyen » pour une autorité publique | Hors champ : scoring privé limité (crédit etc.) selon conditions — ne pas conclure trop vite |
| Biométrie pour inférer race, opinions politiques, religieuses, philosophiques, syndicales, vie sexuelle/orientation | Modèles « profilage sensible » depuis le visage / la voix | Vérifier exceptions légales étroites ; défaut = drapeau rouge |
| Scraping non ciblé de photos de visage sur internet / CCTV pour bases de reconnaissance | Pipelines d’ingestion massive de visages, datasets « web scrape faces » | |
| Reconnaissance d’émotions **sur le lieu de travail** ou **dans l’éducation** | Caméra / voix « mood detection » employés ou élèves | **Interdit** ; un disclaimer 50(3) ne suffit pas |
| Identification biométrique à distance « temps réel » dans l’espace public (police), hors exceptions strictes | Si le produit est vendu pour ce cas d’usage hors cadre légal | Exceptions nationales très encadrées — escalader au juridique |
Si le produit est clairement hors de ces cas, écrire : « Aucun indice d’usage
art. 5 détecté dans le périmètre inspecté » — pas « conforme art. 5 ».
## Bonnes pratiques transversales (au-delà du minimum légal)
### Transparence interaction
- Annonce IA **avant ou au premier message**, langage clair (FR/langue de l’UI).
- Badge permanent « IA » près de la saisie.
- Réponse honnête à « es-tu un robot / une IA ? ».
- Escalade humaine visible ; ne pas faire croire à un conseiller humain.
- Logs de la version du disclaimer (preuve de diligence).
### Contenus générés
- Pipeline qui **préserve** C2PA / métadonnées signées jusqu’au navigateur
(attention CDN, recompression, screenshots).
- Légende visible sur images/vidéos photoréalistes publiées à titre pro.
- Séparer « stock photo » / « capture UI » / « visuel généré ».
- Pour le texte d’actualité / intérêt public : relecture humaine réelle +
responsable éditorial public, ou mention d’origine IA.
### Gouvernance produit
- Registre des systèmes d’IA (finalité, rôle fournisseur/déployeur, base légale).
- Revue art. 5 avant tout nouveau use case biométrie / émotions / scoring.
- Contrat avec le fournisseur de modèle : marquage 50(2), détection, DPA.
- Formation support : ne jamais nier qu’un bot est une IA.
- Process plainte / signalement (art. 85 en tête).
### Technique & accessibilité
- Mentions contrastées, lisibles mobile, compatibles lecteurs d’écran.
- Ne pas cacher la mention dans un accordéon « Mentions légales ».
- Préserver le marquage à l’export (PNG/JPEG/SVG) ; documenter les formats qui
le perdent (souvent WebP/AVIF après optimisation).
## Mauvaises pratiques (anti-patterns)
| Anti-pattern | Pourquoi c’est un problème |
| --- | --- |
| « On a du C2PA donc on est bons pour l’étiquette visible » | 50(2) ≠ 50(4) ; lignes directrices §117 |
| Mention seulement dans les CGU | Explicitement insuffisant (§38, §142) |
| Avatar ultra-réaliste + prénom humain, aucune mention IA | Risque tromperie + 50(1)/conso |
| Strip systématique des métadonnées « pour alléger le site » sans alternative | Fragilise la chaîne de marquage machine |
| Emotion AI « pour le bien-être au travail » avec simple bandeau | Peut être **interdit** (art. 5), pas un sujet de wording |
| Affirmer « conformité AI Act » dans le marketing après un scan auto | Surpromesse ; un scan = signaux |
| OCR / détecteur magique d’images IA présenté comme preuve | Non fiable ; hors bonnes pratiques Balise |
| Scanner des sites tiers pour publier « X est hors-la-loi » | Risque diffamation ; coller aux constats |
## Articulations hors AI Act (ne pas ignorer)
- **Droit de la consommation** : laisser croire à un humain peut être une
omission trompeuse même si le débat 50(1) est complexe (débiteur).
- **RGPD** : biométrie = données sensibles ; bases légales strictes.
- **DSA** : marquages plateforme ≠ substitut automatique aux devoirs du
déployeur, mais peuvent aider.
- **Droit à l’image / pénal** : un deepfake étiqueté peut rester illicite.
## Matrice décision rapide
```text
Fonction IA identifiée
├─ Indice art. 5 ? → Critique + stop usage / juridique
├─ Interaction directe personne ? → 50(1)+50(5)
├─ Génère média/texte (fournisseur) ? → 50(2)
├─ Publie média photoréaliste (déployeur) ? → 50(4) al.1
├─ Publie texte intérêt public ? → 50(4) al.2
└─ Émotions / biométrie ? → 50(3) + re-check art. 5
```
# Template de rapport — audit AI Act
Copier tel quel et remplir. Titre neutre : pas de « non-conformité » dans le H1.
```markdown
# Audit technique AI Act — [nom du produit / domaine]
- **Date :** YYYY-MM-DD
- **Périmètre :** [URLs, commits, environnements]
- **Outils :** [Cursor browser / Playwright / revue code / Balise / …]
- **Rôles estimés :** fournisseur / déployeur / mixte / indéterminé
- **Avertissement :** constat technique, pas un avis juridique.
## Synthèse (5 lignes max)
[Ce qui a été vu. Ce qui n’a pas pu l’être. Aucune conclusion d’amende.]
## Inventaire des fonctions IA
| Fonction | Surface | Fournisseur tech | Rôle estimé | Articles potentiellement concernés |
| --- | --- | --- | --- | --- |
| | | | | |
## Article 5 — alertes
| Statut | Détail | Preuve |
| --- | --- | --- |
| Aucun indice / Indice / Hors périmètre | | |
## Constats article 50
| ID | Article | Signal constaté | Sévérité | Preuve | Notes |
| --- | --- | --- | --- | --- | --- |
| C1 | 50(1)/50(5) | | | | Avant clic / après clic |
| C2 | 50(2) | | | | |
| C3 | 50(4) | | | | |
| C4 | 50(3) | | | | |
Sévérités : Critique | Élevé | Moyen | Info | OK signal
## Détail des preuves
### C1 — …
Extrait UI / URL / timestamp / capture.
## Bonnes pratiques déjà en place
- …
## Écarts & actions recommandées
| Priorité | Action | Owner suggéré | Objectif |
| --- | --- | --- | --- |
| P0 | | Legal / Produit | |
| P1 | | Eng | |
| P2 | | | |
## Limites de cet audit
- Une ou quelques pages / un environnement seulement
- Qualification « système d’IA », exceptions, identité du débiteur : souvent hors de portée
- Absence de marquage machine non conclusive
- Watermarks texte propriétaires non testés sauf outil dédié
- Pas de revue du dossier de conformité complet (GPAI / haut risque)
## Suite recommandée
- [ ] Revue juridique des points Critique / Élevé
- [ ] Correctifs produit (mentions, badges, pipeline métadonnées)
- [ ] Re-audit après déploiement
```
## Exemples de formulations (à réutiliser)
**Bon :**
« Après ouverture du widget Intercom sur `https://…/help`, le premier message
affiche : “…” — mention d’IA explicite au début de session. »
**Bon :**
« Sur la page servie avant clic, aucune mention d’IA n’était présente dans le
DOM accessible du lanceur ; le cadre du widget a été lu et ne contenait pas de
formulation de divulgation. »
**Mauvais :**
« Le site est hors la loi et risque 15 millions d’euros. »