Synthèse automatique
Guide opérationnel des opérations GitHub du dépôt Calculadora-BMC : branches, commits, pull requests, workflows CI, triage des issues et politique de merge.
Points forts
- Définit une Definition of Done explicite pour les PR (gate:local vert, template rempli, draft au-delà de 500 lignes ajoutées)
- Playbook CI rouge concret : identification du job en échec, lecture des logs, causes connues (headers ALSA pour midi, BMC_DISK_PRECHECK_SKIP) et limite anti-boucle
- Clarifie l'outillage disponible selon le contexte (outils MCP GitHub en session distante, gh CLI en local, jamais l'API REST avec un token du .env)
- Cadre le triage par labels de priorité (P0/P1) et impose la recherche de doublons avant toute ouverture d'issue
Limites
- Fortement spécifique au dépôt matiasportugau-ui/Calculadora-BMC : les noms de jobs, scripts npm et workflows ne se transposent pas ailleurs
- Renvoie à des documents internes (docs/team/AGILE.md, PROJECT-STATE.md, BACKLOG.md) dont le contenu n'est pas inclus
- Ne couvre pas l'écriture ou la modification de workflows GitHub Actions, seulement leur exécution et leur diagnostic
À utiliser dès qu'une tâche GitHub touche ce dépôt : ouvrir ou relire une PR, diagnostiquer une CI rouge, gérer une branche ou une release, ou trier des issues.
À éviter pour des questions GitHub génériques ou pour un autre dépôt, car les conventions, workflows et scripts décrits sont propres à Calculadora-BMC.
Analyse de sécurité
SûrThe skill is an operational guide for GitHub workflows in a specific repository. It references legitimate development tools (gh CLI, GitHub MCP, npm scripts) and includes safety guardrails such as not exposing secrets, not force-pushing main, and forbidding destructive npm audit fixes without approval. It does not instruct exfiltration, destructive commands, or obfuscated payloads.
Aucun point d'attention détecté
Comment cette analyse est faiteExemples
My branch fix(deps) has changes ready on Calculadora-BMC. Run through the PR checklist: verify npm run gate:local passes, fill the PR template, and tell me whether the diff size forces draft status.CI is failing on my PR in Calculadora-BMC. Pull the failed job logs, tell me which job broke (validate, lint, env-drift…), and give me the local command to reproduce it.Triage the open issues on the BMC Dev board: check for duplicates, surface priority:P0 and priority:P1 first, and propose labels for each.name: github-expert description: GitHub operations expert for the Calculadora-BMC repo — branches, commits, PRs, CI workflows, review flow, labels/board, and merge policy. Use when creating or reviewing PRs, diagnosing red CI, managing branches/releases, triaging issues, or when the user invokes /github-expert or asks "how do we do X on GitHub" in this repo.
GitHub Expert — Calculadora BMC
Operational guide for all GitHub work on matiasportugau-ui/Calculadora-BMC (default branch: main).
Tooling
- Claude Code on the web / remote sessions: use the GitHub MCP tools (
mcp__github__*) for PRs, comments, CI status, and logs.ghCLI is NOT available there. - Local sessions:
ghCLI works if installed; MCP tools are the fallback. - Never call the GitHub REST API directly with tokens from
.env.
Branch & commit conventions
- Branch names:
feat/...,fix/...,chore/...,docs/...(or the session-designatedclaude/*branch). Never commit directly tomain. - Commit messages: concise, English,
type:prefix —feat,fix,refactor,docs,chore. Scope in parentheses is common:feat(ci): ...,fix(deps): .... - If a branch's PR was already merged, never stack new commits on it — restart the branch from
origin/mainand open a new PR.
PR workflow (Definition of Done — docs/team/AGILE.md §3)
npm run gate:localgreen (lint + test + test:api). For large UI/build changes:npm run gate:local:full(adds build).- Fill the PR template (
.github/PULL_REQUEST_TEMPLATE.md): Qué cambia,Closes #, Tipo checkbox, DoD checklist, Notas para el reviewer. - PR > 500 LOC adds → DRAFT obligatorio and split into atomic commits before marking ready (branch protection can't enforce this; we do).
- If the change alters behavior, append a line under "Cambios recientes" in
docs/team/PROJECT-STATE.mdin the same PR. - Bot/agent-created PRs always start as draft.
CI — what runs and when
ci.yml ("CI — Panelin Calculadora BMC") on push + PR:
| Job | What it does |
|-----|--------------|
| validate | npm test (offline suite) + build |
| lint | ESLint on src/ |
| env-drift | .env.example vs config drift check |
| smoke | Prod smoke (push to main only; MATRIZ CSV is the critical check) |
| channels_pipeline / voice_health / knowledge_antenna | Channel + voice + KB health checks |
Other notable workflows:
deploy-calc-api.yml/deploy-vercel.yml— Cloud Run (panelin-calc, us-central1) and Vercel deploys.catalog-diff.yml— Catalog ↔ MATRIZ diff; upserts a PR comment, fails on regression/S1.codeql.yml,dependency-review.yml— security gates.gemini-*.yml— Gemini review/triage bots (dispatch, review, scheduled triage).smoke-prod-scheduled.yml— scheduled prod smoke; failures open/refresh an auto-managed tracking issue.wa-canonical-cutover.yml— dispatchable WA migrate/flip/soak.labels-sync.yml— label catalogue is code-managed; don't hand-edit labels in the UI.
Red CI playbook
- Identify the failing job (
pull_request_read/actions_get), then pull job logs (get_job_logs,failed_only: true). - Reproduce locally:
npm run gate:local(or the specific script the job runs). - Native
midibuild failures on Linux → missing ALSA headers (libasound2-dev); CI installs them, local containers may not. - Disk precheck false-fails on cloud FS →
BMC_DISK_PRECHECK_SKIP=1. - Fix → commit → push; CI re-runs automatically. Use
actions_run_triggeronly for dispatchable workflows. - Several re-kicks with no progress → stop and report the diagnosis instead of looping.
Issues & board
- Backlog lives in GitHub Issues / Project BMC Dev; offline mirror
docs/team/BACKLOG.md; board rulesdocs/team/AGILE.md. - Priority labels:
priority:P0(drop everything) →priority:P1→ lower. Surface P0/P1 first in any triage. - Search for duplicates before opening an issue; set
state_reasonwhen closing.
Guardrails
npm audit fix --forceis forbidden without explicit approval (it has broken Vite here).- Secrets only in
.env/ Secret Manager — never in code, workflow files, or PR bodies. - Never force-push
main; force-with-lease on feature branches only when rebasing your own unshared work. - Be frugal with bot comments on PRs — comment only when it genuinely adds signal.
Language
Respond in Spanish when the user writes in Spanish. Commands, file paths, and technical terms stay in English.
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 annexesCe 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.mdDepuis la racine d’un projet de test, enregistrez le fichier sous .skill-downloads/github-expert-for-calculadora-bmc-msh3us9s/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/github-expert-for-calculadora-bmc-msh3us9s' && curl --fail --show-error --location 'https://skills-guides.com/api/skills/github-expert-for-calculadora-bmc-msh3us9s/download' --output '.skill-downloads/github-expert-for-calculadora-bmc-msh3us9s/SKILL.md.part' && mv '.skill-downloads/github-expert-for-calculadora-bmc-msh3us9s/SKILL.md.part' '.skill-downloads/github-expert-for-calculadora-bmc-msh3us9s/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/github-expert-for-calculadora-bmc-msh3us9s/SKILL.md' && test -s '.skill-downloads/github-expert-for-calculadora-bmc-msh3us9s/SKILL.md' && mkdir -p '.claude/skills' && test ! -e '.claude/skills/github-expert' && cp -R '.skill-downloads/github-expert-for-calculadora-bmc-msh3us9s' '.claude/skills/github-expert'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’OpenSkillsopenskills install './.skill-downloads/github-expert-for-calculadora-bmc-msh3us9s'openskills read 'github-expert-for-calculadora-bmc-msh3us9s'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 syncMode 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/github-expert-for-calculadora-bmc-msh3us9s/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.
Configurer un canal de discussion avec SecretRefs
DevOps
Configurez des canaux de discussion avec des commandes non interactives, les secrets étant uniquement des SecretRefs. Couvre les étapes de collecte, modification, réparation et vérification.
Enquêter sur les échecs CI de ClickHouse
DevOps
Investigue un échec CI de ClickHouse de bout en bout à partir d'une URL de PR ou de rapport S3. Récupère les tests échoués, classe flaky vs vraie régression, et cherche des issues/fixes existants.
Revue de PR Ansible
DevOps
Examine une PR Ansible selon le processus standardisé du projet, incluant la validation des changelogs, la couverture de tests et le suivi des commentaires.