Cette page a été traduite automatiquement. La version anglaise fait référence. Lire en anglais
Aller au contenu principal

Runbooks

Liste de contrôle complète de préparation du desk et tests de certification d'intégration.

Liste de contrôle de préparation du desk

Avant la mise en production, vérifiez :

Connectivité API

  • Endpoints de staging testés
  • Endpoints de production configurés (lorsque disponibles)
  • Endpoint de health check répondant
  • Connexion WebSocket stable

Authentification

  • Signature EIP-712 fonctionnelle
  • Autorisation d'agent configurée (le cas échéant)
  • Gestion des nonces implémentée
  • Vérification des signatures testée

Système de cotation

  • Placement d'ordres en masse testé
  • Réconciliation du cycle de vie des ordres vérifiée
  • Suivi des exécutions implémenté
  • Fonctionnalité d'annulation testée

Contrôles de risque

  • MMP configuré et testé
  • Modèle de marge compris
  • Restrictions par niveau (tier) vérifiées
  • Surveillance du portefeuille implémentée

Surveillance

  • Flux WebSocket souscrits
  • Réconciliation ordres/exécutions automatisée
  • Health checks configurés
  • Alertes mises en place

Kill Switch

  • Capacité à annuler tous les ordres
  • Capacité à se déconnecter immédiatement
  • Procédures d'urgence documentées

Couverture

  • Intégration avec les contrats perpétuels Hyperliquid vérifiée
  • Stratégie de couverture en delta implémentée
  • Calcul de la marge sur les perpétuels compris

Règlement

  • Gestion des échéances testée
  • Règlement des positions vérifié
  • Source du prix de référence comprise

Tests de certification d'intégration

Test 1 : Placement d'ordre

Étapes :

  1. Placez un ordre unique via POST /order
  2. Vérifiez le statut de l'ordre : ACKEDOPEN
  3. Vérifiez que l'ordre apparaît dans GET /orders?wallet=...
  4. Vérifiez la réception des order_updates via WebSocket

Résultat attendu : Ordre placé avec succès, mises à jour de statut reçues

Test 2 : Placement d'ordres en masse

Étapes :

  1. Placez 10 ordres via POST /bulk_order
  2. Vérifiez que tous les ordres sont acceptés
  3. Vérifiez les statuts des ordres via REST et WS
  4. Vérifiez l'absence d'erreurs de signature/authentification

Résultat attendu : Tous les ordres placés avec succès

Test 3 : Suivi des exécutions

Étapes :

  1. Placez un ordre qui sera exécuté
  2. Surveillez le canal WebSocket fills
  3. Vérifiez la réception de l'exécution avec le bon order_id
  4. Vérifiez que l'exécution apparaît dans GET /fills?wallet=...
  5. Vérifiez que le statut de l'ordre passe à FILLED

Résultat attendu : Exécutions suivies correctement, statut de l'ordre mis à jour

Test 4 : Suivi des exécutions partielles

Étapes :

  1. Placez un ordre qui sera partiellement exécuté
  2. Surveillez le canal WebSocket fills (et non order_updates)
  3. Vérifiez la réception de l'exécution partielle
  4. Agrégez les exécutions par order_id pour calculer la taille exécutée
  5. Vérifiez que le statut de l'ordre reste OPEN (et non PARTIALLY_FILLED sur le WS)

Résultat attendu : Exécutions partielles suivies via le canal fills, statut de l'ordre correct

Test 5 : Annulation d'ordre

Étapes :

  1. Placez un ordre via POST /order
  2. Annulez l'ordre via DELETE /order
  3. Vérifiez le statut de l'ordre : CANCELED
  4. Vérifiez la réception des order_updates via WebSocket

Résultat attendu : Ordre annulé avec succès, mises à jour de statut reçues

Test 6 : Déclenchement du MMP

Étapes :

  1. Configurez le MMP via POST /mmp-config
  2. Placez des ordres avec MMP activé
  3. Déclenchez le MMP en dépassant les limites
  4. Vérifiez que les ordres sont annulés avec le motif MMP
  5. Vérifiez que les autres ordres avec MMP activé sont également annulés

Résultat attendu : Le MMP se déclenche correctement, ordres annulés

Test 7 : Rejet pour marge insuffisante

Étapes :

  1. Placez un ordre qui dépasse la marge disponible
  2. Vérifiez que l'ordre est rejeté avec le motif « Insufficient margin »
  3. Vérifiez que le motif de rejet inclut les valeurs requise, disponible et manquante
  4. Vérifiez le statut de l'ordre : REJECTED

Résultat attendu : Ordre rejeté avec un motif clair

Test 8 : Restriction par niveau (tier)

Étapes :

  1. Utilisez un portefeuille configuré pour un accès en position longue uniquement
  2. Tentez de placer un ordre de vente sans position longue
  3. Vérifiez que l'ordre est rejeté avec le motif lié au tier
  4. Placez un ordre d'achat (devrait réussir)
  5. Placez un ordre de vente pour clôturer (devrait réussir)

Résultat attendu : Restrictions par tier appliquées correctement

Test 9 : Reconnexion WebSocket

Étapes :

  1. Connectez-vous au WebSocket
  2. Souscrivez aux canaux
  3. Déconnectez le WebSocket
  4. Reconnectez-vous avec un backoff exponentiel
  5. Souscrivez à nouveau aux canaux
  6. Interrogez l'API REST pour rattraper les mises à jour manquées

Résultat attendu : La reconnexion fonctionne, l'état est récupéré

Test 10 : Réconciliation du portefeuille

Étapes :

  1. Placez et faites exécuter des ordres
  2. Vérifiez le portefeuille via GET /portfolio?wallet=...
  3. Vérifiez que les positions correspondent aux exécutions
  4. Vérifiez que l'utilisation de la marge est correcte
  5. Réconciliez avec les mises à jour portfolio du WebSocket

Résultat attendu : État du portefeuille exact, réconciliation réussie

Préparation à la production

Liste de contrôle pré-production

  • Tous les tests d'intégration réussis
  • Surveillance et alertes configurées
  • Kill switch testé
  • Procédures d'urgence documentées
  • Équipe formée à la réponse aux incidents
  • Contacts de support identifiés

Liste de contrôle de mise en production

  • Environnement de staging entièrement testé
  • Endpoints de production vérifiés
  • Tableaux de bord de surveillance prêts
  • Alertes configurées
  • Planning d'astreinte de l'équipe établi
  • Documentation revue

Références