Blog
All articles. All pillars. All authors.
L'opcode dupliqué qui a failli tout casser
Comment un gestionnaire d'opcode CreateMap dupliqué dans la VM de FLIN supprimait silencieusement des clés de map -- découvert pendant l'audit, corrigé en une ligne de Rust.
30 TODO, 5 panics de production, 0 problème de sécurité
L'inventaire complet des résultats de l'audit de FLIN : 30 TODO catégorisés par sévérité, 5 appels panic en production et une revue de sécurité propre sur 186K lignes.
Le plan de correction de l'audit
Comment nous avons organisé 30 TODO et 6 bugs critiques en un plan de correction en cinq phases -- et complété les 21 éléments de correction en cinq sessions sur deux jours.
La correction de persistance qui a pris 3 sessions
Trois sessions, trois causes racines, un objectif : faire en sorte que l'application todo de FLIN sauvegarde réellement les données sur disque. La saga de la persistance du navigateur à la base de données.
Le bug de gestion du None
Comment le modèle temporel de FLIN était bloqué par une correction de 10 lignes -- l'accès aux propriétés sur les valeurs None lançait des erreurs au lieu de se propager gracieusement.
Le bug de rendu des espaces blancs HTML
Comment le lexer de FLIN mangeait silencieusement les espaces blancs entre le texte et les liaisons dynamiques, causant l'échec de 23 tests temporels sur une logique correcte.
Quand la VM s'est bloquée sur la création d'entités
Comment le système d'actions de FLIN a créé une condition de type deadlock où la création d'entités dans les fonctions échouait silencieusement, et le travail de détective qui l'a tracé.
Le bug de suivi des versions temporelles
Comment un écart de synchronisation des numéros de version entre la VM et la base de données de FLIN faisait que l'accès temporel retournait toujours None -- et le principe de conception qu'il a révélé.
Le pipeline de compilation complet, de bout en bout
Le pipeline de compilation complet de FLIN : six phases du code source à l'application en cours d'exécution, expliquées de bout en bout.
La crise du choix du modèle d'embeddings
Comment le choix du modèle d'embeddings de FLIN était contraint par la disponibilité des bibliothèques -- et l'architecture que nous avons construite pour changer de modèle sans casser les applications.
15 bugs qui ont façonné le langage FLIN
Une rétrospective sur 15 bugs critiques qui ont façonné la conception de FLIN -- des opcodes manquants à la sémantique booléenne du None, chaque échec a rendu le langage plus fort.
Le format binaire .flinc
Un plongeon en profondeur dans le format binaire .flinc -- le bytecode compilé de FLIN avec nombres magiques, pools de constantes, infos de débogage RLE et checksums CRC32.