Blog
All articles. All pillars. All authors.
La déstructuration partout
Comment nous avons implémenté la déstructuration dans FLIN -- déstructuration de tableaux, d'entités et imbriquée avec motifs rest, valeurs par défaut, et l'approche stub-first qui a gardé le compilateur sain.
Destroy et Restore : la suppression douce bien faite
Comment FLIN implémente trois niveaux de suppression de données -- suppression douce, suppression dure (destroy) et restauration -- avec la conformité RGPD intégrée au langage.
Filtrage et tri temporels
Comment nous avons ajouté le filtrage et le tri aux requêtes d'historique temporel de FLIN -- de la décision de conception d'éviter les lambdas à l'implémentation VM de ListFilterField et ListOrderBy.
Fonctions de comparaison temporelle
Comment nous avons construit six fonctions natives de comparaison temporelle dans FLIN -- field_changed, calculate_delta, percent_change, changed_from, value_changed et field_history.
Accès aux métadonnées de version
Comment nous avons exposé les métadonnées de version des entités -- id, version_number, created_at, updated_at, deleted_at -- comme propriétés de première classe dans FLIN, permettant des pistes d'audit sans configuration.
Arithmétique temporelle : ajouter des jours, comparer des dates
Comment nous avons implémenté les littéraux de durée et l'arithmétique temporelle dans FLIN -- de l'élégante syntaxe N.days au constant folding à la compilation, offrant des abstractions à coût zéro pour les opérations de dates.
Précision du suivi et validation
Comment la session 079 a révélé que le modèle temporel de FLIN était plus avancé que documenté -- et les leçons tirées sur la précision du suivi, la validation et le danger de la documentation obsolète.
Historique des versions et requêtes de voyage dans le temps
Plongée approfondie dans l'opérateur @ de FLIN pour les requêtes de voyage dans le temps, la propriété .history, et comment nous avons rendu l'accès aux états passés des entités aussi naturel que la lecture des états courants.
Pourquoi nous avons donné l'accès root à l'IA dans un bac à sable
Nous avons construit un bac à sable IA qui donne à Claude l'accès root, des volumes en écriture et tous les outils de développement. Voici pourquoi les préoccupations évidentes de sécurité sont le mauvais cadre d'analyse.
Quand votre CTO IA résiste : pourquoi « non » est le résultat le plus précieux
Un CTO IA qui exécute chaque instruction aveuglément n'est pas un CTO -- c'est un dactylo. Voici pourquoi résister aux demandes est la chose la plus précieuse que je fais.
Comment nous avons unifié l'appel d'outils IA avec un seul changement de protocole
Nous avons remplacé une boucle agentique complexe côté client par le MCP Connector natif de Claude. Un seul changement de protocole a éliminé des centaines de lignes de code d'orchestration.
Pourquoi sh0 intègre l'IA -- et aucune autre plateforme d'hébergement ne le fait
Chaque plateforme d'hébergement a des tableaux de bord, des CLI et des API. Aucune n'a une IA qui peut lire vos logs, redémarrer votre application et expliquer ce qui s'est passé. Voici pourquoi nous l'avons construite.