Principe de Transparent Continuation Checkpointing

Trigora repose sur le mécanisme Transparent Continuation Checkpointing (TCC). Au lieu de reconstruire l’état d’une exécution en rejouant l’historique complet, TCC consigne à chaque point durable la position du programme ainsi que l’état nécessaire à la reprise. Cette approche élimine la surcharge liée à la relecture des actions déjà terminées et garantit que la reprise démarre exactement à la dernière continuation validée.

Architecture et composants

Le cœur de Trigora est le TCC Engine, implémenté principalement en Rust. Le moteur supporte l’intégration native et via WebAssembly, ce qui le rend portable sur différents environnements d’exécution. Des front‑ends déclarés existent pour TypeScript, Python et Rust, permettant aux développeurs d’écrire la logique métier dans le langage de leur choix. Le SDK expose des primitives comme effect et waitForEvent ; un extrait typique montre l’appel d’un effet puis l’attente d’un événement externe :

import { effect, waitForEvent } from "@trigora/sdk";
export default async function approval() {
  const result = await effect("generate", () => 42);
  const review = await waitForEvent("approved");
  return { result, review };
}

Le dépôt principal regroupe le CLI, le runtime local et les contrats publics partagés. Des dépôts séparés hébergent les SDK spécifiques à chaque langage (trigora-typescript, trigora-python, trigora-rust) ainsi que le moteur TCC (tcc-engine).

Intégration et déploiement

Les développeurs installent les SDK via les gestionnaires de paquets habituels : npm install @trigora/sdk @trigora/client pour TypeScript, pip install trigora trigora-client trigora-cli pour Python (versions 3.10–3.14 supportées) et cargo add trigora trigora-client pour Rust. Le CLI initialise un projet (trigora init), lance le runtime local (trigora dev) et déploie la version finale (trigora deploy). Trigora Cloud, service managé, fournit la persistance, la gestion des déclencheurs (cron, webhook), les secrets de projet et l’observabilité des exécutions. Les programmes peuvent être déclenchés depuis la CLI, une API, un webhook ou un planificateur, et rester actifs pendant des secondes, heures ou jours.

Limites et perspectives

Le modèle TCC impose que chaque point durable soit explicitement déclaré dans le code, ce qui peut augmenter la charge de conception pour des flux très fragmentés. Le moteur TCC, bien que disponible sous Business Source License, n’est pas entièrement open source, ce qui limite son adoption par des organisations requérant une licence permissive. De plus, la persistance dépend du service cloud ou d’une infrastructure tierce, introduisant un vecteur de défaillance supplémentaire si la couche de stockage n’est pas redondante. Malgré ces contraintes, Trigora propose une alternative concrète aux systèmes de workflow qui reposent sur le replay, en particulier pour les agents d’IA nécessitant des interactions humaines ou des appels à des API externes sur de longues périodes.