Ferrum — une infrastructure GA4GH qui tourne vraiment.

Pile GA4GH complète sur site — pour les cliniques, les centres d’intégration de données et les nœuds de données genomDE qui ne peuvent pas envoyer de données brutes vers le cloud. Testée, documentée, en Rust.

Construit en Rust Sur site BUSL-1.1

Des preuves que vous pouvez inspecter

Cinq dépôts publics forment la pile GA4GH : Ferrum (données/calcul), ga4gh-infra (identité), Lab Kit (déploiement), Demo (benchmark) et HelixTest (conformité). Apache-2.0 lorsque indiqué ; BUSL-1.1 couvre le runtime Ferrum intégré avec marge claire pour la recherche et conversion en Apache-2.0 au bout de quatre ans (voir LICENSE).

Pourquoi Ferrum existe

Beaucoup d’implémentations GA4GH sont cloud-first, difficiles à vérifier ou tout simplement inachevées. Ferrum s’adresse aux équipes qui savent que leurs données doivent rester sur site — tout en ayant besoin d’interopérer avec des réseaux compatibles GA4GH. Les API GA4GH sont bonnes. Il devrait exister un système qui les implémente de façon cohérente. Nous l’avons construit.

Conçu pour les environnements à ressources limitées

Ferrum n’est pas conçu uniquement pour les institutions européennes disposant d’une infrastructure stable. Un nombre croissant d’utilisateurs travaille dans des environnements à connectivité intermittente, avec du matériel limité et un besoin d’infrastructure de données souveraine, loin des dépendances cloud. Le mode Edge de Ferrum tourne sur un seul appareil avec SQLite et stockage local, compense les coupures de courant grâce aux checkpoints, et prend en charge les données Nanopore directement depuis le laboratoire.

Fonctionnalités

Fonctionnalité Description
Moteurs de workflows portables Exécution WES/TES pour Nextflow, CWL, WDL et Snakemake — sur clusters SLURM/LSF ou runners locaux.
Provenance et export RO-Crate Métadonnées de lignée et bundles RO-Crate exportables pour la reproductibilité, les pistes d’audit et les catalogues en aval.
Offline-first / mode Edge Tourne sur un appareil avec SQLite et stockage local. Pas de PostgreSQL ni MinIO requis pour les déploiements Edge. Reprise propre après une coupure de courant.
Intégration Nanopore / ONT Ingestion native de fichiers POD5/FAST5/BLOW5. Stocke les métriques de qualité ONT (Q-score, N50) aux côtés des objets DRS GA4GH.
Beacon multi-pathogènes Filtres pathogènes Beacon v2 (organisme, gènes AMR, sérotype, Q-score) sur la même infrastructure que les données génomiques humaines.
Mode épidémie Partage d’urgence contrôlé : politiques préconfigurées pour un accès Beacon de santé publique autorisé pendant une épidémie, avec piste d’audit complète. Opt-in par configuration — désactivé par défaut.
Beacon fédéré (P2P) Les instances Ferrum s’interrogent directement — pas de coordinateur central, pas de dépendance cloud. Fonctionne sur des liaisons lentes ou intermittentes.
Conscient batterie / solaire Détecte la source d’alimentation (secteur/batterie/UPS). Réduit la charge sur batterie, écrit un checkpoint avant arrêt d’urgence.
Audit de résidence des données Journal append-only chaîné cryptographiquement de tous les mouvements de données. Prouve que les données sont restées dans votre institution.

Les profils terrain et épidémie sont opt-in : HelixTest couvre des sous-ensembles en CI ; la fédération nécessite une seconde passerelle ; le mode épidémie exige une configuration explicite (désactivé par défaut).

Ce que nous devons dire honnêtement

Ferrum est testé — HelixTest tourne en CI, la démo GA4GH est reproductible, l’architecture est pensée pour monter en charge. Ce que nous n’avons pas encore : un déploiement avec de très gros jeux de données cliniques. Ce n’est pas une limite d’architecture — nous n’avons pas encore eu les moyens. C’est ce que nous voulons faire avec le premier vrai partenaire.

Nous cherchons un premier pilote productif

Ferrum est testé et documenté — mais un déploiement avec de réels volumes de données cliniques, p. ex. sur un site DIC ou un nœud de données genomDE, n’a pas encore eu lieu. C’est ce que nous voulons faire avec le bon partenaire : une institution qui veut devenir compatible GA4GH, sur site, sans dépendance cloud — et qui apporte l’ouverture pour une collaboration authentique plutôt qu’un achat logiciel classique.

Complémentaire aux archives nationales (p. ex. GHGA)

Les archives nationales conservent les données génomiques soumises. Ferrum est le côté local : infrastructure compatible GA4GH à la clinique ou au nœud de données avant soumission. Crypt4GH est implémenté dans Ferrum — le même chiffrement que de nombreuses archives. Interface DRS pour un transfert structuré. Pas de cloud comme intermédiaire.

Crypt4GH Compatible DRS Sans cloud intermédiaire Complémentaire à GHGA

Intégration du jeu de données cœur MII

Ferrum MII Connect exécute des contrôles de profils hors ligne contre des métadonnées MII embarquées (jeu par défaut de 17 modules) — rapports JSON/SARIF pour l’ETL-CI. Ce n’est pas un validateur FHIR complet ni une certification de conformité juridique.

Documentation MII Connect →

Services GA4GH

TRS · DRS · WES · TES · htsget · Beacon v2 · Passports · Crypt4GH — sous une passerelle (Ferrum Passports en standalone, ou ga4gh-infra en co-déploiement).

Implémentation GA4GH sur GitHub →

Options de déploiement

Démo, nœud unique, cluster HPC, Kubernetes — toutes les options sont documentées.

Option Description
Démo Pile complète : `ferrum demo start` dans le dépôt Ferrum (Docker). Sous-ensemble benchmark : Ferrum GA4GH Demo (TRS · DRS · WES · TES). Conformité : HelixTest en CI.
Nœud unique PostgreSQL et MinIO sur un serveur — disposition standard pour déploiements de production sur site.
Cluster HPC Intégration SLURM/LSF pour l’exécution de workflows en environnement cluster.
Kubernetes Manifestes Kubernetes et charts Helm pour déploiements cluster scalables.
Edge / hors ligne Mode Edge avec SQLite et système de fichiers local — démarrer avec `ferrum demo start --edge` ou `./scripts/install-field-edge.sh`. Adapté aux laboratoires de terrain et aux environnements à ressources limitées. Déploiement terrain & hors ligne →
Documentation de déploiement sur GitHub →

Installation

Installez la CLI, ajoutez-la au PATH, puis choisissez Docker (pile complète) ou le mode Edge (SQLite, sans Docker).

curl -sSf https://raw.githubusercontent.com/SynapticFour/Ferrum/main/install.sh | sh && export PATH="$HOME/.ferrum/bin:$PATH"

Pile complète (Docker)

ferrum demo start

Edge / hors ligne

ferrum demo start --edge

Ajoutez export PATH="$HOME/.ferrum/bin:$PATH" à votre profil shell pour un accès permanent. Installations terrain : voir ./scripts/install-field-edge.sh dans le dépôt.

Démarrage rapide sur GitHub →

Architecture

Rust, Async/Tokio, PostgreSQL, stockage compatible S3 (dont MinIO, backends OpenDAL), Crypt4GH avec ré-enveloppe d’en-tête en O(1), provenance et export RO-Crate, couche de validation de profils MII, SLURM/LSF pour HPC

Licence et collaboration

Ferrum est sous BUSL-1.1 — gratuit pour la recherche et les usages non commerciaux, avec licence commerciale pour les déploiements de production. Après quatre ans la licence devient Apache-2.0. Vous pouvez l’acheter, demander des fonctionnalités, ou vous en servir comme point de départ pour votre propre infrastructure. Pas d’enfermement propriétaire.

Conçu pour les environnements réglementés (RGPD, EHDS, NIS2, HIPAA comme orientation). Outils techniques de conformité (contrôles de profils MII, rapports CI). Pas de promesse de certification — preuve technique, pas de conseil juridique.

Lire le livre blanc Ferrum et GA4GH — Contrôles de conformité HelixTest, benchmarks de la démo GA4GH, architecture et notre façon de travailler.

Contexte réglementaire : EHDS · NIS2 · RGPD et données de santé

Nous répondons en général sous deux jours ouvrés. Dépôt et licence sur demande.