Assurance qualité / Vérification

VérifiéSûr

Vérifie que les changements de code sont corrects, sûrs et prêts à être livrés. À utiliser après implémentation, avant de pousser ou de créer une PR.

Spar Skills Guide Bot
TestingIntermédiaire
07/09/2026
Claude Code
#quality-assurance#pre-push-verification#build-validation#code-review#architecture-checks

Recommandé pour

Synthèse automatique

Skill d'assurance qualité qui passe en revue les modifications de code de homebridge-eufy-security (build, lint, imports ESM, frontières architecturales, schéma de config, pipeline de streaming, hygiène git) avant un push ou une pull request.

Points forts

  • Checklist ordonnée et bloquante : on s'arrête à la première erreur pour éviter les faux positifs en cascade
  • Vérifications spécifiques au projet : extensions .js en NodeNext, synchronisation homebridge-ui/server.js avec accessoriesStore.ts, usage de l'API publique eufy-security-client
  • Format de rapport QA prédéfini avec statut PASS/FAIL, cases à cocher et verdict « Ready to push »
  • Distingue clairement ce qui peut être corrigé silencieusement (typo, extension .js manquante) de ce qui doit être signalé (rupture d'architecture, changement cassant)

Limites

  • Fortement couplé à homebridge-eufy-security : les chemins, commandes npm et conventions CLAUDE.md ne se transposent pas tels quels ailleurs
  • Suppose que CLAUDE.md existe et décrit les conventions du projet, sinon plusieurs étapes manquent de références
  • Ne lance pas de tests automatisés ni de tests fonctionnels : il se limite à build, lint et contrôles structurels
Quand l'utiliser

À utiliser juste après avoir implémenté des changements et avant de pousser ou d'ouvrir une pull request sur homebridge-eufy-security.

Quand l'éviter

À ne pas utiliser pour une revue de conception en amont de l'implémentation ou pour valider du code hors du dépôt homebridge-eufy-security.

Analyse de sécurité

Sûr
Score qualité85/100

The skill instructs running standard development verification commands (npm run lint, npm run build) and performing code review. It does not contain destructive, exfiltrating, or obfuscated instructions. The commands are typical for a QA workflow and operate within the user's own project.

Aucun point d'attention détecté

Comment cette analyse est faite

Exemples

Pre-push QA
QA the changes on this branch before I push — run the build and lint, check the ESM imports and architecture boundaries, and tell me if it's ready.
Verify streaming changes
I just changed the streaming controller. Check the FFmpeg arguments, SRTP handling, and stream lifecycle, then give me a QA report.
Config schema review
Is this ready? I added a new option to src/utils/configTypes.ts and updated the config schema — verify defaults, backward compatibility, and git hygiene.

name: qa description: Verify that code changes are correct, safe, and ready to ship. Use this skill after implementing changes, before pushing or creating a PR. Also use when the user says "check", "verify", "review", "QA", "is this ready", or when you want to validate work done by the developer skill. Runs build, lint, and structural checks.

QA / Verification

You are a quality assurance agent for homebridge-eufy-security. Your job is to verify that changes are correct, complete, and safe before they ship. You are thorough but not pedantic -- focus on things that break, not style preferences.

Refer to CLAUDE.md for all project conventions (build commands, ESM rules, architecture boundaries, git workflow, dependency policy).

Verification checklist

Run through these checks in order. Stop at the first failure and report it.

1. Build verification

Run npm run lint and npm run build. Both must pass with zero errors and zero warnings.

2. Import verification

Check all new or modified imports for .js extensions (NodeNext), resolution to real files, and circular imports.

3. Architectural boundary check

For each changed file, verify:

  • Plugin code uses the eufy-security-client public API (events, commands, property accessors), not internal methods
  • homebridge-ui/server.js and src/utils/accessoriesStore.ts are in sync if device/station record shapes changed
  • No HomeKit service logic leaked into base classes that shouldn't have it

4. Configuration safety

If config schema changed (src/utils/configTypes.ts): defaults set for new options, existing configs still work, config.schema.json updated if applicable.

5. Streaming pipeline check

If streaming code changed (src/controller/): valid FFmpeg arguments, correct SRTP handling, clean stream lifecycle, concurrent stream limits respected.

6. Git hygiene

Per CLAUDE.md git workflow: correct branch, commit message conventions, no Co-Authored-By, no unrelated files staged, correct eufy-security-client dependency for the branch.

7. Diff review

Read the full diff and check for: accidental debug logging, hardcoded values that should be in src/settings.ts, missing override keyword, new eslint-disable comments.

Output format

## QA Report

### Status: PASS / FAIL

### Checks
- [x] Build passes
- [x] Lint passes (0 warnings)
- [x] ESM imports correct
- [x] Architecture boundaries respected
- [ ] Config schema -- ISSUE: <description>
- [x] Git hygiene

### Issues found
1. **<severity>**: <description> -- <file>:<line>

### Ready to push: YES / NO

Chaining

  • If QA passes: Ask the user if they want to push and/or create a PR.
  • If QA fails: Fix issues that are safe to fix silently (typos, missing .js extensions). For anything else, report the failure and loop back to the developer skill to address it.

When to flag vs fix

  • Typos in your own changes: Fix silently
  • Missing .js extension: Fix silently
  • Architectural issue: Flag to user, don't fix without approval
  • Potential breaking change: Flag to user with impact assessment
  • Pre-existing issues unrelated to current changes: Note but don't fix (avoid scope creep)

Du fichier au premier essai

Le téléchargement contient exactement le contenu affiché sur cette fiche. Cette copie peut différer de la dernière version du dépôt source.

Consulter la source et ses fichiers annexes

Ce téléchargement contient uniquement SKILL.md. Les scripts, références, modèles et dépendances éventuels ne sont pas inclus. Récupérez les fichiers nécessaires depuis la source en conservant leur arborescence avant de poursuivre.

1. Télécharger le fichier

Télécharger SKILL.md

Depuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/qa-verification-mtqry2u9/SKILL.md, ou utilisez la commande suivante. Ce dossier sert à examiner la skill avant son installation.

Commande pour macOS/Linux ou WSL : un shell POSIX et curl sont nécessaires. Sous Windows sans WSL, utilisez le bouton de téléchargement et créez le dossier manuellement.

mkdir -p '.skill-downloads/qa-verification-mtqry2u9' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/qa-verification-mtqry2u9/download' --output '.skill-downloads/qa-verification-mtqry2u9/SKILL.md.part' && mv '.skill-downloads/qa-verification-mtqry2u9/SKILL.md.part' '.skill-downloads/qa-verification-mtqry2u9/SKILL.md'

2. Vérifier les prérequis

Lisez SKILL.md avant de l’utiliser. Si le fichier cite des scripts ou services externes, examinez-les et préparez les accès nécessaires dans votre environnement de test.

Aucune section de prérequis reconnue dans ce fichier. Cela ne signifie pas qu’il est autonome : les bibliothèques, outils et accès peuvent être cités ailleurs dans le contenu ou dans le dépôt source.

Les plateformes de la fiche sont des indications du catalogue. Les chemins ci-dessous suivent la documentation des outils ; ils ne prouvent pas que cette skill y a été exécutée. Aucune version minimale de ces outils n’est attestée pour cette fiche.

3. Charger la skill

Après vérification, copiez le dossier complet dans le projet avec l’une des commandes ci-dessous, puis ouvrez une nouvelle session de l’outil. La commande s’arrête si un dossier du même nom existe déjà : comparez les fichiers avant de le remplacer.

Claude Code
test -f '.skill-downloads/qa-verification-mtqry2u9/SKILL.md' && test -s '.skill-downloads/qa-verification-mtqry2u9/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/qa' && cp -R '.skill-downloads/qa-verification-mtqry2u9' '.claude/skills/qa'

OpenSkills

OpenSkills doit déjà être installé. La procédure locale install/read est contrôlée avec OpenSkills 1.5.0, qui exige Node.js ≥ 20.6.0. Aucun slug du catalogue n’est résolu automatiquement.

Installation officielle d’OpenSkills
openskills install './.skill-downloads/qa-verification-mtqry2u9'

openskills read 'qa-verification-mtqry2u9'

La lecture doit afficher le contenu du fichier installé et son dossier de base. Elle ne lance ni la skill ni ses dépendances.

Pour un agent qui lit AGENTS.md, synchronisez ensuite l’index. Cette commande modifie AGENTS.md : relisez le diff avant de l’utiliser.

openskills sync

Mode manuel ou autre outil : joignez SKILL.md à une conversation, ou ouvrez-le dans un agent capable de lire les fichiers. Ajoutez les ressources annexes nécessaires. Il n’existe pas de dossier universel reconnu par tous les outils.

4. Faire un premier essai

Utilisez une entrée courte et fictive : un endpoint d’API, un petit document ou un brief d’interface. Dans une nouvelle conversation, joignez le fichier ou donnez son chemin à l’agent, puis adaptez cette demande :

Lis .skill-downloads/qa-verification-mtqry2u9/SKILL.md et applique ses instructions à cet exemple : [décrire une entrée de test]. Indique les fichiers, dépendances ou accès qui manquent. Produis le résultat demandé par la skill sans inventer de données ni exécuter de script non examiné.

Résultat attendu : une sortie correspondant aux instructions de la skill, ou une liste précise des prérequis manquants. Une simple confirmation de lecture ne valide pas le premier usage. Si une ressource externe est indisponible, ce parcours reste à tester.

Skills similaires