84. Stabilité des fonctionnalités

Cette table unique inventorie chaque fonctionnalité que Pepsi implémente et consigne les preuves actuelles de la stabilité de chacune. Les trois premières colonnes sont maintenues à la main dans contrib/feature-registry.tsv ; les trois dernières sont fusionnées depuis une télémétrie d’usage anonyme et sur consentement explicite (voir pepsi-telemetry).

  • Test automatisé — si, et comment, la fonctionnalité est couverte par un test automatisé : U (un cargo test unitaire / en-processus), I (un test d’intégration — un script tests/*.sh de pipeline en service ou un test de bout en bout pepsi-test-stages), I/U (les deux), ou - (pas encore de test automatisé).

  • Manuel — si la fonctionnalité a en outre été vérifiée à la main (yes/no).

  • Déploiements — nombre de déploiements réels qui ont signalé avoir la fonctionnalité activée.

  • Usages — nombre de fois où la fonctionnalité a réellement été exercée sur le terrain.

  • Stabilité — un palier dérivé des deux dernières colonnes :

    • stable — déploiements ≥ 100 et usages totaux ≥ 100000

    • used — déploiements ≥ 10 et usages totaux ≥ 1000

    • experimental — sinon

Une fonctionnalité marquée (*) après son nom n’est pas instrumentée pour la télémétrie — c’est une capacité de protocole passive, une facilité universelle, ou une CLI de courte durée qui se termine avant qu’un compte d’usage ait pu être vidé — de sorte que ses cases Déploiements, Usages et Stabilité sont affichées comme — (aucun compte ne peut être mesuré pour elle).

Les comptes ci-dessous proviennent de https://telemetry.pepsi.taler.net/telemetry/report. Une fonctionnalité instrumentée qui n’y a aucun compte affiche 0 / 0 / experimental : aucun déploiement participant ne l’a exercée depuis le dernier démarrage de son démon de télémétrie. Le collecteur n’authentifie pas les soumissions : lisez donc les comptes comme une indication, non comme une mesure. Aucune fonctionnalité n’est encore passée par une passe de test à la main dédiée (Manuel = no partout).

Rapport généré : 2026-09-28T23:22:26Z

Stabilité des fonctionnalités

Fonctionnalité (RFC)

Test automatisé

Manuel

Déploiements

Usages

Stabilité

Cœur de serveur SMTP (RFC 5321)

I/U

no

1

141

experimental

STARTTLS (RFC 3207)

I/U

no

1

830

experimental

TLS implicite / port submissions (RFC 8314)

U

no

0

0

experimental

CHUNKING / BDAT (RFC 3030)

I/U

no

1

18

experimental

Déclaration et application de SIZE (RFC 1870)

I/U

no

1

129

experimental

PIPELINING (RFC 2920)

I/U

no

1

111

experimental

ENHANCEDSTATUSCODES (RFC 2034) (*)

U

no

—

—

—

En-tête de trace Received (RFC 5321, RFC 3848)

I/U

no

1

141

experimental

Limitation de connexions / d’engorgement

I/U

no

0

0

experimental

8BITMIME (RFC 6152)

I/U

no

1

43

experimental

SMTPUTF8 (RFC 6531)

I/U

no

1

8

experimental

Rétrogradation 8 bits / UTF-8 par saut (RFC 2045, RFC 2047)

I/U

no

0

0

experimental

Notifications d’état de remise (RFC 3461, RFC 3463, RFC 3464)

I/U

no

1

88

experimental

SMTP AUTH (entrant) (RFC 4954)

U

no

1

16

experimental

Soumission de messages / MSA (RFC 6409)

U

no

1

17

experimental

Authentification du client (MYNETWORKS / certificat client TLS)

I/U

no

0

0

experimental

SPF (RFC 7208)

U

no

1

140

experimental

Vérification DKIM (RFC 6376, RFC 8463)

I/U

no

1

91

experimental

DMARC (RFC 7489)

U

no

1

95

experimental

iprev / FCrDNS (RFC 8601)

U

no

1

140

experimental

En-tête Authentication-Results (RFC 8601)

U

no

1

141

experimental

Scellement et vérification ARC (RFC 8617)

I/U

no

1

124

experimental

Sender Rewriting Scheme (SRS)

I/U

no

0

0

experimental

Signature DKIM sortante (RFC 6376, RFC 8463)

I/U

no

1

23

experimental

Relais direct vers le MX (RFC 5321)

I/U

no

1

53

experimental

Gestion du Null MX (RFC 7505)

U

no

0

0

experimental

MTA-STS (RFC 8461)

U

no

1

4

experimental

Autoconfiguration des clients de messagerie (config-v1.1.xml) (draft-ietf-mailmaint-autoconfig)

U

no

0

0

experimental

Vérification de l’identité de serveur TLS (RFC 6125)

U

no

1

53

experimental

Relais via smarthost (RFC 5321)

I/U

no

0

0

experimental

Mécanismes SASL de smarthost (RFC 4954, RFC 4616, RFC 5802, RFC 7628)

U

no

0

0

experimental

DANE / TLSA (RFC 7672)

U

no

0

0

experimental

SMTP TLS Reporting (TLSRPT) (RFC 8460)

I/U

no

1

43

experimental

Remise locale en Maildir

I/U

no

1

119

experimental

Application du quota de boîte aux lettres (Maildir++ / quotactl)

I/U

no

0

0

experimental

CLI et réconciliation du quota de boîte aux lettres (pepsi-quota) (*)

I

no

—

—

—

Remise locale LMTP + Sieve du MDA (RFC 2033, RFC 5228)

I/U

no

0

0

experimental

Traitement de ~/.forward

I/U

no

0

0

experimental

Expansion d’alias / de map virtuelle

I/U

no

1

119

experimental

Client de filtre de courrier milter (après la file d’attente)

I/U

no

0

0

experimental

Barrière anti-spam à péage à l’envoi (GNU Taler)

I/U

no

0

0

experimental

Wallet d’auto-paiement (GNU Taler)

I/U

no

1

17

experimental

Vérification de liste blanche d’expéditeur

I/U

no

0

0

experimental

Liste blanche automatique (sortante)

I/U

no

1

17

experimental

Détection de langue

I/U

no

1

63

experimental

Blocage de langue

I/U

no

1

63

experimental

Étape de branchement conditionnel

U

no

1

141

experimental

Édition des paramètres par e-mail

I/U

no

1

17

experimental

Redéfinitions de paramètres par adresse

I/U

no

0

0

experimental

Génération de rebonds (RFC 3464)

I/U

no

1

7

experimental

Puits de rejet

no

0

0

experimental

File d’attente à table unique et récupération après plantage

I

no

0

0

experimental

Pools de workers pipelinés et chien de garde

I

no

1

1

experimental

Fusion d’étapes

I

no

1

17

experimental

Serveur HTTP (politique MTA-STS + métriques) (RFC 8461)

I/U

no

0

0

experimental

Métriques Prometheus

I

no

0

0

experimental

Provisionnement et vérification DNS (*)

I/U

no

—

—

—

Migration depuis un MTA existant (Postfix/Exim/Sendmail/qmail/Stalwart) (*)

U

no

—

—

—

CLI d’opérateur de file d’attente (pepsi-queue) (*)

no

—

—

—

Résumé de santé (pepsi-status) (*)

U

no

—

—

—

Diagnostic de détection de langue (pepsi-detect-language) (*)

U

no

—

—

—

Socket de soumission locale (authentification par identifiants du pair) (RFC 6409)

U

no

1

2

experimental

Client compatible sendmail (pepsi-sendmail) (*)

I/U

no

—

—

—

CLI de liste blanche (pepsi-whitelist) (*)

I

no

—

—

—

Espaces de noms de liste blanche par utilisateur (<login>/name) (*)

I/U

no

—

—

—

Import de liste blanche depuis une boîte aux lettres (mbox/Maildir) (*)

I/U

no

—

—

—

Import de liste blanche par IMAP (*)

U

no

—

—

—

Import de liste blanche via doveadm (*)

U

no

—

—

—

Propositions de joker de liste blanche + exclusion des hébergeurs (*)

I/U

no

—

—

—

Magasin de clés de bout en bout (identités, clés de pairs, confiance des CA) (*)

I/U

no

—

—

—

Clés privées enveloppées en AEAD sous une KEK de secrets.d

U

no

0

0

experimental

Colonne des clés privées restreinte au rôle pepsi-crypto (*)

I

no

—

—

—

CLI du magasin de clés (pepsi-keys) (*)

I

no

—

—

—

Génération de clés OpenPGP (Ed25519 / RSA)

U

no

0

0

experimental

Délivrance de certificat S/MIME + CSR (auto-signé)

U

no

0

0

experimental

Mode certificat S/MIME unique (CRYPTO_SMIME_SHARED_KEY)

U

no

0

0

experimental

Découverte de clés : WKD advanced (openpgpkey.<domain>) (draft-koch-openpgp-webkey-service)

I/U

no

0

0

experimental

Découverte de clés : WKD direct (draft-koch-openpgp-webkey-service)

I/U

no

0

0

experimental

Découverte de clés : DANE OPENPGPKEY / SMIMEA (RFC 7929, RFC 8162)

U

no

0

0

experimental

Découverte de clés : serveur de clés vérificateur (VKS)

U

no

0

0

experimental

Découverte de clés : annuaire LDAP (conditionné par une fonctionnalité de compilation) (RFC 4511)

U

no

0

0

experimental

Moissonnage de clés depuis le courrier entrant + Autocrypt

U

no

0

0

experimental

Apprentissage de clés depuis le gossip Autocrypt d’un message déchiffré (Autocrypt Level 1)

U

no

0

0

experimental

Message garé sur clé manquante (découverte asynchrone)

I/U

no

0

0

experimental

Signature et chiffrement de bout en bout sortants (pepsi-stage-encrypt) (RFC 3156, RFC 8551)

I/U

no

0

0

experimental

Chiffrement OpenPGP (PGP/MIME) sortant (RFC 3156, RFC 9580)

U

no

0

0

experimental

Chiffrement S/MIME (CMS) sortant (RFC 8551, RFC 5083)

U

no

0

0

experimental

Signature de bout en bout sortante sans chiffrement (RFC 3156, RFC 8551)

U

no

0

0

experimental

Rétrogradation de conteneur par destinataire (SEIPDv1 / CBC) (RFC 4880)

U

no

0

0

experimental

Annonce de clé Autocrypt sur le courrier sortant (Autocrypt Level 1)

U

no

0

0

experimental

Gossip de clés Autocrypt : les clés des autres destinataires To/Cc à l’intérieur du texte chiffré (Autocrypt Level 1)

U

no

0

0

experimental

Destinataire sans clé acheminé vers le portail de lien sécurisé

I/U

no

0

0

experimental

Portail de repli par lien sécurisé : stocker un message non chiffrable

I/U

no

0

0

experimental

Points de terminaison du portail de lien sécurisé servis par pepsi-httpd

I/U

no

0

0

experimental

Message à lien sécurisé ouvert avec le bon PIN

I

no

0

0

experimental

PIN de lien sécurisé refusé (compteur de verrouillage)

I

no

0

0

experimental

Réponse composée via le portail de lien sécurisé

I

no

0

0

experimental

Second facteur du lien sécurisé envoyé par courrier à l’expéditeur

U

no

0

0

experimental

Second facteur du lien sécurisé remis à une commande de passerelle

no

0

0

experimental

Lien sécurisé sans second facteur (lien seul, plus faible)

U

no

0

0

experimental

Création d’identité sur demande (une demande explicite de protection, ou SIGN = always)

I/U

no

0

0

experimental

Préréglage pEp : une clé générée pour un expéditeur à sa première soumission (ENABLE_PEP)

I

no

0

0

experimental

La propre clé (MUA) d’un utilisateur enregistrée depuis un en-tête Autocrypt ou un fichier de clé soumis (Autocrypt Level 1)

I

no

0

0

experimental

Clé publique de l’expéditeur jointe sous forme de fichier (ATTACH_KEYS_AS_FILES) (RFC 3156)

I/U

no

0

0

experimental

Libre-service des clés par e-mail (état, génération, enregistrement, publication, retrait)

I/U

no

0

0

experimental

Déchiffrement de bout en bout et vérification de signature entrants (pepsi-stage-decrypt) (RFC 3156, RFC 8551)

I/U

no

0

0

experimental

Message entrant réellement déchiffré (RFC 3156, RFC 8551)

U

no

0

0

experimental

Déchiffrement OpenPGP entrant (PGP/MIME, en ligne) (RFC 3156, RFC 9580)

U

no

0

0

experimental

Déchiffrement S/MIME (CMS) entrant (RFC 8551, RFC 5083)

U

no

0

0

experimental

Signature entrante valide contre une clé de confiance (RFC 3156, RFC 8551)

U

no

0

0

experimental

Signature entrante valide mais la clé n’est pas ancrée (TOFU)

U

no

0

0

experimental

Signature entrante qui n’a pas vérifié

U

no

0

0

experimental

Texte chiffré entrant que cet hôte n’a pas pu ouvrir

U

no

0

0

experimental

Texte clair OpenPGP entrant au-delà du plafond de décompression

U

no

0

0

experimental

Apprentissage de clés Autocrypt depuis le courrier entrant (Autocrypt Level 1)

I/U

no

0

0

experimental

Clés apprises en ligne depuis un message entrant (Autocrypt Level 1)

U

no

0

0

experimental

Revérification à l’aide d’un certificat trouvé dans le texte clair

no

0

0

experimental

Clés de tiers apprises depuis les champs de gossip d’un message déchiffré (Autocrypt Level 1)

U

no

0

0

experimental

Clé Autocrypt d’un correspondant remplacée par une plus récente (auditée, utilisateurs avertis) (Autocrypt Level 1)

I/U

no

0

0

experimental

Clé Autocrypt plus récente refusée parce que la clé stockée est toujours valide (ACCEPT_ROTATION = expired)

I/U

no

0

0

experimental

Échec cryptographique entrant acheminé vers une étape de quarantaine

U

no

0

0

experimental

Échec cryptographique entrant renvoyé en rebond

U

no

0

0

experimental

Courrier entrant chiffré vers la propre clé (MUA) d’un utilisateur transmis sans être ouvert (RFC 3156, RFC 8551)

I

no

0

0

experimental

Courrier entrant déchiffré rechiffré vers la propre clé (MUA) du destinataire pour le stockage (pepsi-stage-reencrypt) (RFC 3156, RFC 8551)

I/U

no

0

0

experimental

Rechiffrement pour le stockage vers une clé MUA OpenPGP (RFC 3156, RFC 9580)

I/U

no

0

0

experimental

Rechiffrement pour le stockage vers une clé MUA S/MIME (RFC 8551, RFC 5083)

U

no

0

0

experimental

Courrier déchiffré classé en clair : le destinataire n’a pas de clé MUA (ON_NO_CLIENT_KEY = plaintext)

I

no

0

0

experimental

Clé MUA d’un destinataire vers laquelle le scellement a échoué

no

0

0

experimental

Courrier déchiffré refusé faute de clé MUA (ON_NO_CLIENT_KEY = bounce) (RFC 3463)

I

no

0

0

experimental

Preuve consignée qu’un correspondant détient notre clé (arrête le fichier de clé)

I/U

no

0

0

experimental

Publication de clés : points de terminaison Web Key Directory (draft-koch-openpgp-webkey-service)

I/U

no

0

0

experimental

Publication de clés : téléversement vers le serveur de clés + réessai de vérification (*)

U

no

—

—

—

Publication de clés : confirmation automatique du courrier de vérification du serveur de clés

U

no

0

0

experimental

Acheminement par domaine de destinataire vers un saut suivant (pepsi-stage-route)

I/U

no

0

0

experimental

Module complémentaire Outlook servi par pepsi-httpd (manifeste + volet de tâches)

U

no

0

0

experimental

Choix de la famille d’adresses IP par saut suivant (ADDRESS_FAMILY)

U

no

0

0

experimental

CLI de paramètres (pepsi-settings) (*)

I/U

no

—

—

—

Configuration en base de données (chaîne de portées + rechargement à chaud)

I/U

no

0

0

experimental

CLI de configuration (pepsi-config) (*)

I

no

—

—

—

Export/import chiffré de la configuration (*)

U

no

—

—

—

Mise en rebond des échecs (pepsi-failure-bouncer)

no

0

0

experimental

Helper de rafraîchissement de jeton OAuth de smarthost (*)

U

no

—

—

—

Journalisation structurée (*)

U

no

—

—

—

Télémétrie de fonctionnalités (*)

U

no

—

—

—

API REST d’administration (/api/v1)

I/U

no

0

0

experimental

Console web d’administration (/ui)

U

no

0

0

experimental

Questionnaire de configuration initiale piloté depuis la console web

U

no

0

0

experimental

Messages à lien sécurisé parcourus depuis la console web

U

no

0

0

experimental

Clé de correspondant importée via l’API (POST /api/v1/peers)

I

no

0

0

experimental

Consultation de découverte mise en file d’attente via l’API (POST /api/v1/peers/discover)

I

no

0

0

experimental

Journal d’audit d’administration

U

no

0

0

experimental

Journal par message sur consentement explicite ([pepsi] MAIL_LOG)

U

no

0

0

experimental

Configuration initiale pilotée par navigateur (/api/v1/setup + pepsi-setup apply)

U

no

0

0

experimental

Assistant non interactif (pepsi-setup –answers)

U

no

0

0

experimental

Réponse automatique de vacances / d’absence (RFC 3834)

I/U

no

0

0

experimental

Défi de confirmation à l’envoi pour les expéditeurs inconnus (pepsi-stage-secretary) (RFC 3834)

I/U

no

0

0

experimental

Listes de diffusion : domaines, listes, membres, propriétaires, interdictions (pepsi-list) (*)

I/U

no

—

—

—

Stockage des archives de listes (partitionné par hachage, plein texte + trigrammes) (*)

I/U

no

—

—

—

Routage des listes de diffusion (pepsi-stage-list)

I/U

no

0

0

experimental

Envoi de liste : chaîne de modération, pipeline de gestionnaires et éclatement (pepsi-stage-list-post)

I/U

no

0

0

experimental

Remise de liste par membre : désabonnement en un clic, décoration (pepsi-stage-list-deliver)

I/U

no

0

0

experimental

Commandes de liste par e-mail : join, leave, confirm et les flux d’abonnement (pepsi-stage-list-command)

I/U

no

0

0

experimental

Traitement des rejets de liste : attribution VERP, 17 détecteurs, comptabilisation (pepsi-stage-list-bounce)

I/U

no

0

0

experimental

Archives de liste : ingestion, constitution des fils, les deux mécanismes de recherche, suppression et export (pepsi-archive) (*)

I/U

no

—

—

—

L’API REST de GNU Mailman 3 (/3.0/ et /3.1/) – amont 3.3.10, vérifiée par les suites propres de mailmanclient et de Postorius

I/U

no

0

0

experimental

L’interface web publique des listes : index, formulaires d’abonnement et de désabonnement, navigation dans les archives et recherche

I/U

no

0

0

experimental

Désabonnement en un clic RFC 8058 (List-Unsubscribe-Post), honoré quoi que dise la politique de désabonnement (RFC 8058)

I/U

no

0

0

experimental

Comptes de membres sur le site public des listes : inscription, vérification d’adresse, mots de passe et réinitialisation, et les pages d’abonnement propres au membre

I/U

no

0

0

experimental

La console du propriétaire et du modérateur : messages retenus, demandes d’abonnement, écrans de réglages générés, liste des membres, interdictions et règles d’en-tête – autorisée par une interrogation de la liste des membres, non par un compte d’exploitant

I/U

no

0

0

experimental

Import d’un serveur GNU Mailman 3 en fonctionnement via sa propre API REST : domaines, listes, utilisateurs, adresses, membres, interdictions et règles d’en-tête

I/U

no

0

0

experimental

Import d’un site Mailman 2.1 depuis ses fichiers config.pck, avec la correspondance d’attributs d’amont et un lecteur de pickle qui ne construit rien

I/U

no

0

0

experimental

Import d’une archive mbox, avec les réparations cleanarch dans le lecteur et une reconstruction automatique des fils

I/U

no

0

0

experimental

La campagne d’invitations de bascule : un débit, une reprise et une simulation par domaine

I/U

no

0

0

experimental

Les deux formats de résumé : multipart/digest MIME et la forme simple RFC 1153, avec la règle de volume et de numéro et une minuterie périodique (RFC 1153)

I/U

no

0

0

experimental

Le répondeur automatique de l’adresse d’envoi, y compris respond_and_discard (RFC 3834)

I/U

no

0

0

experimental

Rejet des messages retenus au-delà de max_days_to_hold – un attribut inerte dans GNU Mailman 3

I/U

no

0

0

experimental

Les 28 modèles de notification de GNU Mailman dans les dix langues livrées, avec l’audit des substituts qui repère un nom de substitut traduit (*)

U

no

—

—

—

Les pages publiques de listes et d’archives en anglais, allemand et français, choisies d’après Accept-Language dans l’ordre des q, avant tout accès à la base (*)

I/U

no

—

—

—