# Task #70 — Zwei tote Tokens repariert (2026-07-23) ## A) Matrix-Bot-Token (Alerting) **Befund:** Kein Token war "verloren" — `/opt/shadow-token/alarm.py` und `/opt/shadow-token/refresh.py` hatten eine **veraltete, tote Kopie** des Hermes-Bot-Tokens fest im Code (`syt_aGVybWVz_pGkHRNGFSJJhRSAtCpnz_1Bgdx2`, 401 M_UNKNOWN_TOKEN). Der aktuelle, gültige Hermes-Token lag bereits zentral in `/opt/mcp-server/secrets/credentials.json` (`matrix_hermes_token`), war den beiden Skripten nur nicht bekannt. Zusätzlich: der in den Skripten konfigurierte Alarm-Raum `!bYMaQYlFbFfQGDmktu:matrix.consoro.eu` war für Hermes (und auch für den Admin-Bot) nicht erreichbar (`M_FORBIDDEN` — nicht Mitglied, Room-Previews deaktiviert) — vermutlich ein verwaister/alter Raum. **Fix:** - `/opt/shadow-token/alarm.py` und `/opt/shadow-token/refresh.py`: `MATRIX_TOKEN` auf den aktuellen Hermes-Token gesetzt, `ROOM` + Homeserver-URL auf den echten Alert-Raum `!wRgSkVkLNpGzehtWie:matrix.koerners.org` (matrix.koerners.org) umgestellt — denselben Raum, den `B:\barby\Post-ToMatrix.ps1` bereits nutzt (dort war der Token schon korrekt hinterlegt, keine Änderung nötig). - Hermes (`@hermes:matrix.koerners.org`) wurde per Admin-Token in den Alert-Raum eingeladen und ist beigetreten (war vorher nicht Mitglied). - Backups der Originalskripte: `/opt/shadow-token/alarm.py.bak-20260723-tokenfix`, `/opt/shadow-token/refresh.py.bak-20260723-tokenfix` (reversibel, nichts gelöscht). - Vaultwarden: neuer Eintrag "Matrix Bot Token (@hermes:matrix.koerners.org)" mit dem aktuellen Token angelegt (gab vorher keinen Vaultwarden-Eintrag dafür). **Beleg (echte Testposts, vor dem API-Stopp durch Bär durchgeführt):** - Admin-Token Testpost in Alert-Raum: `event_id: $hkTgBzxSmME_thue4MIuokCM2FPpM48fnqIGf_dXYvI` (HTTP 200) - Hermes-Token whoami-Check: HTTP 200, `user_id: @hermes:matrix.koerners.org` - Hermes-Token Testpost NACH Invite+Join in den Alert-Raum: `event_id: $STz5Z3uiRraou2XBrfiXQYlKGPs1fLYKIxKlqxhz2o0` (HTTP 200) **Hinweis:** Bär hat während der Arbeit per goldener Regel weitere Matrix-API-Calls untersagt (kein Token-Minting via Synapse-Admin-API mehr). War ohnehin nicht nötig — der vorhandene Hermes-Token war/ist gültig, nur falsch referenziert. Die Datei-Edits (sed, kein API-Call) wurden danach noch vorgenommen, ein erneuter Live-Test der Skripte (der einen API-Call auslösen würde) wurde NICHT mehr durchgeführt — steht noch aus, bis Bär grünes Licht gibt. ## B) Forgejo-Token **Befund:** Vaultwarden-Eintrag "Forgejo (localhost tools.consoro.it)" (User `codebarby`, Host `tools.consoro.it`) war falsch — laut doku-verteilen-Skill ist der richtige Host `git.consoro.eu` (NICHT `.it`), User `barby`. **Fix:** Vaultwarden-Eintrag korrigiert auf Name "Forgejo (git.consoro.eu)", User `barby`, Token `dc9a2241890acb243548342977a6c02d6dde39a7`, URI `https://git.consoro.eu`. **Beleg:** `GET https://git.consoro.eu/api/v1/user` mit dem Token → HTTP 200, `{"id":1,"login":"barby","is_admin":true,...}`. ## C) Doku-Verteilung Dieser Eintrag wurde nach Forgejo (barby/hermes-erkenntnisse) gepusht sowie nach Obsidian dokumentiert (siehe separate Obsidian-Notiz gleichen Inhalts).