EngineeringVersioning & compatibilité

Versioning & compatibilité

Faire évoluer Orbit sans casser les clients, Espaces, mémoires ou intégrations existantes.

Ce qui doit être versionné

Orbit possède plusieurs contrats indépendants :

  • API REST ;
  • surface MCP ;
  • schémas d’Espaces ;
  • événements internes ;
  • Context Packs ;
  • algorithmes de qualité/CU ;
  • formats d’export ;
  • connecteurs.

Ils ne doivent pas partager un unique numéro de version artificiel.

Compatibilité

Préférer les changements additifs.

Un changement breaking nécessite :

  1. une version explicite ;
  2. une période de coexistence ;
  3. un guide de migration ;
  4. de la télémétrie d’usage ;
  5. une date de dépréciation ;
  6. une stratégie de rollback.

Politique

  • pas de breaking silencieux ;
  • pas de champ réutilisé avec une nouvelle sémantique ;
  • pas de suppression avant mesure réelle d’usage ;
  • formats persistés migrés séparément des contrats publics.

La longévité d’Orbit vient de contrats versionnés et d’adapters remplaçables, pas de la stabilité éternelle d’un fournisseur.