Prescription validée
TEC-INT-001 — GraphQL en lecture et REST en écriture
- Statut : valide
- Sources : DEC-0016, EXG-14-003/CA-02, EXG-14-003/CA-03
- Prescription : Elena doit exposer les objets natifs et automatiquement les objets personnalisés par GraphQL pour les lectures et par REST pour les créations, modifications et suppressions, avec autorisation et audit identiques pour les capacités applicables.
- Raison fonctionnelle : traduire la séparation de protocoles validée et garantir qu’un objet ou champ personnalisé n’exige pas de développement d’API spécifique.
- Contraintes et invariants : une lecture métier n’est pas ajoutée comme opération REST ; une mutation métier n’est pas ajoutée comme mutation GraphQL ; tout objet personnalisé suit les mêmes surfaces applicables d’un objet natif, sans contourner ses invariants transactionnels.
- Données : les schémas exposés sont dérivés des objets et champs disponibles ; la pagination par défaut de 25 et les budgets sont prescrits par TEC-INT-005 ; filtres et choix curseur/offset restent à spécifier.
- Interfaces et événements : GraphQL porte les requêtes de lecture ; REST porte les créations, modifications et suppressions. Les notifications frontend Reverb peuvent porter une projection complète autorisée sans relecture systématique selon TEC-INT-003, sans exposer une API de requête concurrente. Le contrat d’idempotence et son phasage relèvent de TEC-INT-006, sans activation par défaut. Versionnement, erreurs et limites transactionnelles restent hors de cette prescription.
- Sécurité et audit : les deux surfaces appliquent les prescriptions transverses d’authentification, d’autorisation et d’audit, définies dans les prescriptions de sécurité et d’audit ; le profil utilisateur relève de TEC-SEC-009, les contrats machine/API restent distincts.
- Exploitation : les schémas GraphQL et routes REST générés sont exportables comme preuves de contrat.
- Vérification : VER-FCT-003
- Questions ouvertes : aucune
- Réalisation : documentation d’API du dépôt
elena.
Application aux contrats tarifaires du Lot 0
Ce complément de TEC-INT-001 borne les représentations d’API et du SDK nécessaires à EXG-01-005/CA-08 à CA-22 et EXG-01-003/CA-10/12. Sources : DEC-0087, DEC-0101, DEC-0115, DEC-0127 et les règles complémentaires Tarifs. Il ne clôt ni le moteur tarifaire ni la conception complète de la facturation.
- Les décimaux tarifaires restent des chaînes exactes jusqu’au consommateur SDK :
aucune conversion implicite en
FloatGraphQL ounumberJavaScript. Distinguer prix unitaire, quantité, pourcentage et montant monétaire ; une sérialisation uniforme à deux décimales ne respecte pas les précisions métier de DEC-0127. - Les réponses distinguent prix déterminé, absence de tarif et conflit ; elles distinguent également prix explicitement forcé et prix antérieur seulement conservé. Ni montant nul ni champ absent ne remplace cette information métier. La lecture GraphQL restitue les conditions persistées sans les actualiser au tarif courant.
- La réponse d’actualisation identifie les lignes effectivement actualisées et celles inchangées avec leurs anomalies. L’intention REST conserve la confirmation explicite de l’état en anomalie ; ni la réponse ni son acceptation ne valent validation commerciale. Les contrôles serveur, la version documentaire et le rollback suivent DEC-0088.
- Les contrats des contributions présentent séparément produit, ajustements, contributions et TVA ; ils conservent assiette et provenance appliquées. Le mode inclus ou ajouté reste explicite, sans seconde facturation. L’export de contrôle prescrit par DEC-0130 restitue les quantités, assiettes et contributions historiques par période, filière et code de barème, sans recalcul au barème courant ni déclaration automatique. Son format et son mécanisme de livraison ne sont pas choisis ici.
- Les diagnostics, provenances et exports n’élargissent pas les droits de lecture du document ou des données sources. Une référence à un tarif concurrent n’autorise pas à exposer les conditions d’un autre client.
Vérification des représentations : complément Lot 0 de VER-FCT-003. Les critères financiers ne sont pas déclarés couverts par ce seul contrat de transport ; ils relèvent des prescriptions et vérifications du domaine Tarifs. DEC-0131 fixe le moteur exact, le parseur dédié et la propriété des écocontributions : barèmes et qualifications chez Referential, application chez Sales, preuve chez chaque propriétaire documentaire. Les contrats du domaine prescrivent les échanges PublicApi typés et la cohérence transactionnelle ; ils n’ajoutent ici ni endpoint ni format d’export.
Couverture volontairement non revendiquée
EXG-14-003/CA-01 reste non couvert : DEC-0016 valide GraphQL pour les lectures, mais ne
suffit pas à couvrir ce critère. TEC-INT-005 complète les budgets et la taille par défaut, mais les filtres restent à spécifier. EXG-14-003/CA-04 reste également non couvert : les
contrats de clé ou token et l’application exacte du RBAC nécessitent une prescription de
sécurité distincte.
Le versionnement, le modèle d’erreur et les limites transactionnelles restent à instruire. TEC-INT-005 porte la pagination par défaut ; TEC-INT-006 porte la cible d’idempotence REST, sa réalisation différée et l’activation explicite, dont les paramètres par commande restent à qualifier.