Détecter le conteneur
L’import commence par détecter si l’entrée est un texte canonique `.eev`, un `.eevz` compressé, ou un fichier `.eevc` / `.eevcz` déjà émis qu’il faut seulement lire. La compression ne crée pas un autre dialecte du format. Elle transporte simplement un texte canonique dans une enveloppe binaire.
Normaliser vers le parseur texte
Une fois décompressé si nécessaire, chaque variante repasse par le même parseur texte. Cette règle limite les écarts de comportement entre formes de transport et préserve un seul cœur logique pour la lecture applicative.
Construire un modèle interne propre
Le parseur doit produire un modèle explicite : bibliothèque, entrées, métadonnées, global, matrices, vecteurs, modes, peak tracks et blocs optionnels. Ce modèle interne sert à la validation, à l’affichage et au réexport. Il ne doit pas se réduire à un simple tas de lignes brutes.
Réémettre canoniquement
Le writer ne doit pas improviser. Il réémet dans un ordre stable, avec les champs actuels à leur bon endroit, sans reproduire les ambiguïtés legacy tolérées seulement en lecture.