Qu'est-ce qu'Ato ?
Ato est une façon de traiter le logiciel comme une continuation : la Computation encore possible à partir d'un point donné, plutôt qu'un point de terminaison de service, un dépôt ou un instantané.
L'objectif n'est pas de remplacer les conteneurs, les gestionnaires de paquets ou les machines virtuelles. Ces outils peuvent préparer et exécuter l'environnement. La couche d'Ato permet d'enregistrer, de conserver, de diviser en branches, de transférer et de poursuivre la Computation qui s'exécute par-dessus.
Le problème
La plupart des logiciels sont fournis comme un accès à un service : une interface qui dialogue avec le serveur et la base de données de quelqu'un d'autre. Ce que vous recevez, c'est l'écran, pas le logiciel. Trois conséquences en découlent.
- Un travail en cours ne peut pas être déplacé. Une session cesse d'être utilisable lorsque l'environnement du fournisseur change, que le service s'arrête ou que vous perdez l'accès.
- Le passé n'est pas un lieu où revenir. Un document enregistré n'est pas la même chose que l'état du programme qui l'a produit.
- L'environnement décide de ce qui peut s'exécuter. Un même projet peut fonctionner sur une machine et échouer sur une autre parce qu'un runtime, une bibliothèque ou un service manque.
Le développement assisté par LLM rend cela plus visible : le logiciel est produit plus vite et en plus de variantes, si bien que la capacité à conserver, comparer, déplacer et reprendre une computation opérationnelle compte davantage que la capacité à conserver la machine sur laquelle elle a tourné pour la première fois.
Le modèle
Computation ──▶ seal ──▶ Capsule ──▶ transfer ──▶ materialize ──▶ Run ──▶ continue
- Une Computation est le travail restant à partir du point actuel. Elle change lorsqu'une interaction se produit.
- Une Capsule est un point scellé, immuable et adressable de cette computation. Elle peut être conservée, transmise, reprise, composée et dérivée en branches.
- Un Run est une évaluation vivante reprise depuis une Capsule. Les Runs avancent ; sceller un point produit une autre Capsule.
- Un Record est la preuve qu'une interaction a été observée. Il explique comment un Run a atteint un point, mais il n'est pas ce point.
- Une Materialization est un moyen physique de réaliser une Capsule : Replay (le rejeu des interactions enregistrées), reconstruction d'espace de travail ou futur mécanisme d'instantané.
Ces distinctions sont au cœur du modèle. Concepts clés définit chaque terme et explique comment ils s'articulent.
Ce qui fonctionne aujourd'hui
Ato est expérimental. Le dépôt comprend des objets de calcul, commandes de cycle de vie, adaptateurs, bundles portables et un exemple de vérification statique. Le profil d’application portable sépare Contract K (conditions observables) de Derivation D (voie déclarée) ; un reçu consigne les observations réelles. Sa spécification est un projet en cours d’implémentation. Les capacités et autorisations de l’hôte déterminent les voies disponibles. La reprise générale entre hôtes hétérogènes, la mémoire des processus et la Formation autonome par IA restent en recherche ou développement. About · Guide de développement.
Ce qu'Ato n'est pas
- Ce n'est pas un outil général de provisionnement d'environnements qui remplace Docker, Nix ou les VM.
- Ce n'est pas une réimplémentation des gestionnaires de paquets ou des chaînes d'outils.
- Ce n'est pas un remplacement de Git ni d'un registre de conteneurs.
- Ce n'est pas une garantie que chaque processus peut être rejoué de manière déterministe.