Aller au contenu

Plan de test ARPhone

Prérequis

  • Deux clients connectés avec des personnages distincts et un troisième personnage hors ligne.
  • Une base migrée de 0028 vers 0029, Redis disponible, volume arphone_media inscriptible et ressources pma-voice, yarn, webpack, screenshot-basic, medusa-arphone démarrées dans cet ordre.
  • Des rôles de recette couvrant séparément les six permissions ARPhone, plus Founder et Staff sans permission initiale.
  • Pour les cas destructifs, utiliser une base et un volume média jetables sauvegardés avant le test.

Parcours joueur

ID Scénario Résultat attendu
ARP-001 Ouvrir/fermer F2 avant et après spawn, avec une autre NUI Aucun vol de focus, backdrop ou commande requise ; panneau centre droit.
ARP-002 Premier F2 puis reconnexion Un seul implant, numéro permanent unique et ID technique absent de l'UI joueur.
ARP-003 Appel accepté entre deux clients Voix seulement après acceptation ; overlay conservé panneau fermé ; raccrochage propre.
ARP-004 Offline, occupé, refus, timeout 30 s, déconnexion et restart resource Historique exact, aucun canal vocal résiduel.
ARP-005 Banque ARPhone Comptes, soldes et transactions lisibles ; aucune mutation disponible.
ARP-006 DM offline, retry/double clic, receipts, badge, saisie et blocage Un seul message ; envoyé/livré/lu ; badge et saisie visibles sans présence globale ; blocage refusé explicitement.
ARP-007 Groupe : invite/accept, promotion, retrait, transfert et départ Permissions de groupe et propriété conformes.
ARP-008 Rejoindre, partir, messages pendant absence, rejoindre à nouveau Seules les périodes d'adhésion sont visibles.
ARP-009 Photo Preview/Retake/Cancel/Save/attach/hide Seul Save compte ; WebP <=720p et <1 Mo ; attachment reste valide après masquage.
ARP-010 Calculatrice hors API Résultat local, aucun appel réseau ni historique persistant.

Transparence et cycle visuel

ID Scénario Résultat attendu
ARP-BG-001 Sélectionner un personnage sans ouvrir F2 Monde intégralement visible, aucun voile noir, aucune capture clavier/souris.
ARP-BG-002 Ouvrir F2, parcourir deux applications, puis fermer avec F2 et avec Échap Panneau uniquement au centre droit ; après chaque fermeture, aucun pixel NUI résiduel et contrôles rendus au jeu.
ARP-BG-003 Recevoir puis accepter un appel avec F2 fermé Seule la carte d'appel apparaît ; le reste du canvas reste transparent.
ARP-BG-004 Tester refus, expiration, appel manqué et raccrochage Après le délai d'état final, la carte disparaît et la racine revient à inactive.
ARP-BG-005 Terminer un appel puis en recevoir un autre pendant le délai de fermeture du premier Le timer du premier appel n'efface pas la nouvelle carte d'appel.
ARP-BG-006 Redémarrer medusa-arphone, changer de personnage puis se reconnecter Aucun backdrop et aucun focus NUI résiduel.
ARP-BG-007 Rejouer ouverture/fermeture/appel en 1280×720, 1920×1080 et ultrawide Transparence complète hors composants ; panneau et carte restent lisibles et positionnés.
ARP-BG-008 Contrôle statique CSS/JS node --check passe, aucun color-scheme, fonds html/body/#app transparents et règle [hidden] forte présente.

API, sécurité et administration

ID Scénario Résultat attendu
ARP-011 Grant manquant, expiré ou rejoué ; mauvais MIME/dimensions/taille 4xx explicite, aucun fichier ni metadata incohérente.
ARP-012 Deux Save au dernier slot de quota Au plus une photo acceptée, aucune dépassement de quota.
ARP-013 Matrice des six permissions web/F10 Chaque capacité est indépendante et revalidée serveur ; Founder a tout, Staff rien par défaut.
ARP-014 Revoke/reactivate, quota global/override, réassignation et orphan Effet persistant et contenu conservé.
ARP-015 Quarantaine et fin d'appel web/F10 Effet live, audit sans contenu ni identifiant brut.
ARP-016 Hard delete avec confirmation fausse puis correcte Refus puis purge/tombstones/anonymisation/numéro retiré.
ARP-017 Désactiver une app puis rouvrir F2 App retirée du registre visible sans casser le shell.
ARP-018 Panne API, voix, capture ou stockage Seule la fonction dépendante est dégradée ; aucun écran bloqué.
ARP-019 48 joueurs, listes >50, rate limits Pages bornées à 50, p95 non média visé <500 ms, 429 au-delà des limites.
ARP-020 Build puis redémarrage hors ligne SHA pma/screenshot journalisés, builders yarn/webpack de l'artefact FXServer disponibles avant la capture et contenu de l'image immuable.

Régression

Rejouer la sélection/spawn, HUD, F10/F9, OAuth web admin, inventaires, groupes, banque PNJ/ATM et /bank. Vérifier node --check, tests API, migration depuis 0028, build MkDocs et refresh-context --check.