ACF
acfstandard.io
Developer docs
EN
REASON

acf.map-ai-act-obligations

Énumération exhaustive des obligations AI Act applicables à un cas d’usage qualifié — ventilées par phase de cycle de vie (pre-go-live / continu / incident), avec articles, échéances (incluant les reports Digital Omnibus), actions opérationnelles et preuves attendues.

!Attention
Cet outil produit une cartographie réglementaire préliminaire, pas un avis juridique. requires_human_review vaut toujours true. Les échéances reflètent le calendrier AI Act 2024/1689 figé dans le regulatory_snapshot — un juriste doit valider l’application au cas concret avant tout dépôt ou inspection.

Quand l’utiliser

Utilisez cet outil quand un système a déjà été qualifié — typiquement haut risque Annexe III, ou Annexe I, ou hors scope — et qu’il faut maintenant la liste exhaustive des articles AI Act qui s’appliquent, en quelle phase, à quelle date d’applicabilité, et quelles preuves doivent être prêtes. C’est la sortie qui alimente un plan de mise en conformité ou la réponse à un inspecteur.

La question board que la sortie tranche : « De quoi sommes-nous redevables, devant qui, et à quelle date ? » Le critical_path donne les cinq obligations pre-go-live non reportées par Digital Omnibus — celles à clôturer avant tout autre travail.

Paramètres d’entrée

Cinq champs, dont quatre obligatoires. La qualification annex et provider_or_deployer doit déjà avoir été tranchée en amont (typiquement par acf.classify-agent ou par un juriste).

annex"iii" | "i" | "none"required
Catégorie de risque AI Act déjà qualifiée. iii = haut risque Annexe III (RH, biométrie, infrastructure critique…) ; i = Annexe I (jouets, machines, dispositifs médicaux régulés) ; none = hors scope haut risque.
use_casestring (10-500)required
Description du cas d’usage. Sert à faire matcher les règles métier internes (recrutement, scoring crédit, etc.) qui ajoutent des fiches ACF® et obligations spécifiques.
provider_or_deployer"provider" | "deployer" | "both"required
Rôle AI Act du demandeur. deployer ajoute Art. 26 et Art. 27 (FRIA) ; provider ajoute la chaîne Art. 9-15 + Art. 43.
gpai_usedboolean
Le système utilise-t-il un GPAI (LLM généraliste) en sous-couche ? Active les obligations GPAI Art. 51-55 et renforce Art. 50 (transparence).
locale"en" | "fr"default: "en"
Langue de la sortie textuelle (titres d’articles, rationales).

Schéma de sortie

La sortie est un objet structuré ventilant les obligations par phase de cycle de vie, plus métadonnées et pied-de-page signé.

obligations{ pre_go_live: Obligation[], continuous: Obligation[], on_incident: Obligation[] }
Obligations classées par phase. Chaque Obligation contient article, title, requirement, deadline, fiches ACF® liées, operational_actions, evidence_required et digital_omnibus_deferred.
total_countnumber
Nombre total d’obligations toutes phases confondues.
critical_pathstring[]
Maximum cinq obligations pre-go-live non reportées par Digital Omnibus — c’est la liste à clôturer en priorité absolue.
confidence"low" | "medium" | "high"
Niveau de confiance global. low si annex=none mais que des règles ont matché sur le use_case (contradiction).
assumptionsstring[]
Hypothèses explicites — par exemple, contradiction détectée entre l’annex déclaré et les règles qui ont matché.
gaps_to_validatestring[]
Trous identifiés que la revue humaine doit combler avant d’agir sur la cartographie.
rationale_per_ruleRationaleRecord[]
Trace par règle interne : id, version, fired (true/false), evidence textuelle. Sert l’audit trail signé.
requires_human_reviewtrue
Constant. Aucun appel ne retourne false.

Exemple d’appel

Un déployeur d’agent de présélection CV (Annexe III §4 — emploi) :

map-obligations.tstypescript
import { Client } from "@modelcontextprotocol/sdk/client/index.js";
import { StdioClientTransport } from "@modelcontextprotocol/sdk/client/stdio.js";

const transport = new StdioClientTransport({
  command: "npx",
  args: ["-y", "acf-mcp"],
});
const client = new Client({ name: "demo", version: "1.0" }, {});
await client.connect(transport);

const result = await client.callTool({
  name: "acf.map-ai-act-obligations",
  arguments: {
    annex: "iii",
    use_case:
      "Automated CV screening agent that ranks candidates for a software-engineering role. Outputs a shortlist that recruiters use as a starting point.",
    provider_or_deployer: "deployer",
    gpai_used: true,
    locale: "en",
  },
});

console.log(JSON.stringify(result.content, null, 2));

Réponse

response.jsonjson
{
  "obligations": {
    "pre_go_live": [
      {
        "article": "art-9",
        "title": "Risk management system",
        "requirement": "Establish, implement, document, maintain a risk management system across the lifecycle.",
        "deadline": "2027-12-02",
        "fiches": ["ACF-02", "ACF-09"],
        "operational_actions": [
          "Stand up risk register",
          "Define risk methodology",
          "Review quarterly"
        ],
        "evidence_required": ["Risk register", "Methodology doc"],
        "digital_omnibus_deferred": true
      },
      {
        "article": "art-10",
        "title": "Data and data governance",
        "requirement": "Training/validation/testing data sets governance + quality requirements.",
        "deadline": "2027-12-02",
        "fiches": ["ACF-08"],
        "operational_actions": [
          "Document data sources",
          "Run bias evaluation",
          "Document data drift monitoring"
        ],
        "evidence_required": ["Data inventory", "Bias evaluation report"],
        "digital_omnibus_deferred": true
      },
      {
        "article": "art-11",
        "title": "Technical documentation",
        "requirement": "Maintain technical documentation per Annex IV.",
        "deadline": "2027-12-02",
        "fiches": ["ACF-04"],
        "operational_actions": ["Author Annex IV-aligned tech doc"],
        "evidence_required": ["Technical documentation"],
        "digital_omnibus_deferred": true
      },
      {
        "article": "art-13",
        "title": "Transparency to deployers",
        "requirement": "Provide instructions for use that allow the deployer to interpret outputs.",
        "deadline": "2027-12-02",
        "fiches": ["ACF-04"],
        "operational_actions": [
          "Draft instructions for use",
          "Translate to operating languages"
        ],
        "evidence_required": ["Instructions for use"],
        "digital_omnibus_deferred": true
      },
      {
        "article": "art-50",
        "title": "Transparency on AI/GPAI",
        "requirement": "Disclose AI usage to natural persons interacting with the system.",
        "deadline": "2026-08-02",
        "fiches": ["ACF-04"],
        "operational_actions": ["Add disclosure on every user surface"],
        "evidence_required": ["Disclosure copy"],
        "digital_omnibus_deferred": false
      }
    ],
    "continuous": [
      {
        "article": "art-15",
        "title": "Accuracy, robustness, cybersecurity",
        "requirement": "Maintain accuracy, robustness, cybersecurity levels appropriate to the use.",
        "deadline": "continuous",
        "fiches": ["ACF-06"],
        "operational_actions": [
          "Define accuracy KPIs",
          "Run robustness tests",
          "Define cybersecurity controls"
        ],
        "evidence_required": ["KPI dashboards", "Pen test reports"],
        "digital_omnibus_deferred": false
      },
      {
        "article": "art-26",
        "title": "Deployer obligations",
        "requirement": "Instructions, monitoring, fundamental rights impact assessment.",
        "deadline": "2027-12-02",
        "fiches": ["ACF-12"],
        "operational_actions": [
          "Run fundamental rights IA",
          "Document monitoring plan"
        ],
        "evidence_required": ["FRIA report", "Monitoring plan"],
        "digital_omnibus_deferred": true
      },
      {
        "article": "art-27",
        "title": "Fundamental rights impact assessment",
        "requirement": "Mandatory FRIA for high-risk deployers in some sectors.",
        "deadline": "2027-12-02",
        "fiches": ["ACF-12"],
        "operational_actions": ["Author FRIA"],
        "evidence_required": ["FRIA"],
        "digital_omnibus_deferred": true
      },
      {
        "article": "art-72",
        "title": "Post-market monitoring",
        "requirement": "Establish a post-market monitoring system.",
        "deadline": "continuous",
        "fiches": ["ACF-06"],
        "operational_actions": ["Define post-market monitoring plan"],
        "evidence_required": ["Monitoring reports"],
        "digital_omnibus_deferred": false
      }
    ],
    "on_incident": [
      {
        "article": "art-79",
        "title": "Serious incident reporting",
        "requirement": "Report serious incidents to authorities within 15 days.",
        "deadline": "on-incident",
        "fiches": ["ACF-09"],
        "operational_actions": [
          "Define incident classification + reporting playbook"
        ],
        "evidence_required": ["Incident reports"],
        "digital_omnibus_deferred": false
      }
    ]
  },
  "total_count": 10,
  "critical_path": [
    "art-50: Transparency on AI/GPAI",
    "art-15: Accuracy, robustness, cybersecurity"
  ],
  "confidence": "high",
  "assumptions": [],
  "gaps_to_validate": [
    "Confirm provider_or_deployer qualification — it changes the obligation set.",
    "Confirm GPAI usage — Article 50 transparency obligation depends on it."
  ],
  "requires_human_review": true,
  "rationale_per_rule": [
    {
      "rule_id": "annex-iii.recruitment",
      "rule_version": "2026-06",
      "fired": true,
      "evidence": "Use case mentions CV screening + candidate ranking — Annex III §4 (employment) triggered."
    }
  ],
  "doctrine_version": "ACF framework v1.0 / rules 2026-06",
  "doctrine_hash": "sha256:bf0b6d8e4731ebdc58f6d6338702c5b74af47874cf0ad3dc958cde5c5b30b9dc",
  "doctrine_signature": "ed25519:…",
  "doctrine_archive_url": "https://acfstandard.io/doctrine/v1.0/archive.json",
  "regulatory_snapshot": "EU AI Act 2024/1689 · GDPR 2016/679 · ISO 42001:2023 · NIST AI RMF 1.0 · COBIT 2019 — frozen 2026-06",
  "generated_at": "2026-06-14T11:52:08.214Z",
  "disclaimer": "Preliminary qualification only — not legal advice. Human review required."
}

Erreurs courantes

  • InvalidEnumValue annex reçoit autre chose que iii / i / none, ou provider_or_deployer autre chose que provider / deployer / both. Corrigez vers l’une des valeurs canoniques.
  • InputTooShort use_case < 10 caractères. Une description tronquée empêche les règles métier de matcher — précisez le cas.
  • DoctrineSnapshotMismatch le snapshot réglementaire chargé ne correspond pas au doctrine_hash demandé. Mettez acf-mcp à jour ou pointez explicitement vers la version archivée.
  • acf.classify-agent obtenir la qualification annex + provider_or_deployer avant d’appeler cet outil.
  • acf.assign-ddao-controls traduire les obligations en contrôles DDAO concrets avec budget et effort estimé.
  • acf.regulation.article récupérer le texte vérifié d’un article AI Act spécifique cité dans la cartographie.