From 9e58f84da7b5717c270c9174ab5a2d2edbcf6d89 Mon Sep 17 00:00:00 2001 From: bolbol Date: Sat, 18 Jul 2026 12:48:15 +0000 Subject: [PATCH] runbook: bifrost 13 VK deployees + pilote redaction-pro + pieges API/permissions + rotations securite --- common/bifrost-routage-par-cout.md | 47 ++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) diff --git a/common/bifrost-routage-par-cout.md b/common/bifrost-routage-par-cout.md index d41375c..9900830 100644 --- a/common/bifrost-routage-par-cout.md +++ b/common/bifrost-routage-par-cout.md @@ -60,3 +60,50 @@ Identification : `docker logs bifrost` → IP source 172.27.x.x → container (r Gabarit du sélecteur : VPS hermes-nabil `/data/nyora/nyora_models.py` + section 7 de `common/hermes-nabil-images-flyers-navigateur.md`. + +--- + +## DÉPLOIEMENT FAIT (18/07/2026, session vacances) + +**13 clés virtuelles créées et actives** : vk-hermes-tt/nyora/perso, vk-n8n, vk-veille-infra, +vk-veille-nexum, vk-redaction-pro, vk-family-help, vk-nyora-veille, vk-gsparc-mezzouna, +vk-reglement-definitif, vk-nyora-doc-api, vk-nyora-notes (les 2 derniers = consommateurs +découverts dans les logs, absents de l'inventaire initial). Valeurs dans +`/volume1/docker/hermes-platform/.env` (`BIFROST_VK_*`). Providers clonés de Nabil-Key. + +**Pilote actif : redaction-pro** route sur `vk-redaction-pro` (nginx.conf, backup +`.bak_vk_20260718`). Premier consommateur attribuable dans logs.db. Comparer coût/qualité à J+7. + +### Pièges rencontrés +- **L'API governance IGNORE `allow_all_keys` en POST ET en PUT** (stocké 0) → fix obligatoire : + `UPDATE governance_virtual_key_provider_configs SET allow_all_keys=1 WHERE virtual_key_id IN + (SELECT id FROM governance_virtual_keys WHERE name LIKE 'vk-%')` **+ restart bifrost** + (config governance cachée en mémoire, l'UPDATE seul ne suffit pas). Sans ça : + 400 "no keys found for provider". +- **mcp-nas ne peut pas écrire les fichiers root de /mnt/docker** → édition via container + éphémère : `docker run --rm -v /volume1/docker:/w alpine sh -c '...'` (clé lue depuis .env + dans le container, jamais affichée). +- **SSH mcp-nas → NAS** : la clé existe dans /root/.ssh/mcp-nas-bestof avec alias **`ssh nas-host`** + (config déjà en place — ne pas conclure trop vite à la clé perdue). +- bifrost-proxy log des [emerg] "host not found in upstream" à chaque boot NAS (course avec + bifrost) mais **s'auto-répare** via restart:always ~20 min après. Pas d'action requise, + ne pas paniquer sur ces logs. +- `/volume1/docker/hermes-platform/.env` est en **777** (piège chmod documenté) — à corriger + avec précaution (vérifier qui lit le fichier et sous quel uid) au retour. + +### 401 : état après enquête +Émetteurs (96 h) : redaction-pro (31 — clé pourtant VALIDE : autre chemin de code à trouver, +l'attribution par clé rendra le coupable visible), nyora-doc-api (12), nyora-notes (8), +veille-backend (3), n8n (2). Pas une clé morte unique : plusieurs chemins de code défaillants. +La bascule par consommateur est le bon outil de diagnostic. + +### SÉCURITÉ — rotations requises (exposition en clair le 18/07) +1. **Clé provider OpenCode** (BIFROST_OPENCODE_KEY) — affichée dans un traceback. +2. **Token Cloudflare Workers AI** (redaction-pro nginx.conf, location /api/cf/) — affiché + malgré masquage partiel. Rotation des deux au retour + mise à jour .env/nginx.conf. + +### Reste à faire (retour de vacances) +- Basculer hermes ×3 (localiser où chaque agent stocke sa clé Bearer), n8n (credential), + gsparc, family-help, nyora-veille, veille-infra/nexum, doc-api, notes → chacun sa clé. +- Élucider le chemin 401 de redaction-pro (la moitié de son trafic échoue). +- J+7 : tableau coût/consommateur (requête de référence ci-dessus) puis définition des besoins.