From ab055f8b1a6c5ffd0d5cfd4e63a990ca73cbd6dc Mon Sep 17 00:00:00 2001 From: Nabil Derouiche Date: Thu, 13 Aug 2026 16:17:30 +0100 Subject: [PATCH] =?UTF-8?q?runbook:=20addendum=202=20=E2=80=94=20resolutio?= =?UTF-8?q?n=20definitive=20nyora-notes=20(branches,=20pollution=20DSM/mac?= =?UTF-8?q?OS,=20secret=20SSH=20en=20dur)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...firewall-nyora-notes-onboarding-13-08-2026.md | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) diff --git a/common/tailscale-firewall-nyora-notes-onboarding-13-08-2026.md b/common/tailscale-firewall-nyora-notes-onboarding-13-08-2026.md index 9422ec6..27571aa 100644 --- a/common/tailscale-firewall-nyora-notes-onboarding-13-08-2026.md +++ b/common/tailscale-firewall-nyora-notes-onboarding-13-08-2026.md @@ -112,3 +112,19 @@ un `git fetch` frais a revele que `origin/main` avait en realite recu 3 merges d **Piege identifie pour la suite** : ne jamais conclure sur un ecart local/remote sans `git fetch` frais au prealable — un etat en cache peut donner une image totalement fausse (ici : un merge PR avait deja eu lieu, invisible sans fetch). + +--- + +## Addendum 2 — 13/08/2026 — resolution definitive (branches, pollution, secret en dur) + +Suite a la demande explicite de tout resoudre sans rien laisser trainer. + +**Branches obsoletes** : 8 branches locales ET distantes supprimees (`feat/ai-morning-summary-nvidia`, `feat/initial-catchup-summary`, `feat/sidebars-toggle`, `feat/typography-settings`, `feat/weekly-recap`, `fix/healthcheck`, `fix/htmx-tag-toggle-persistence`, `fix/missing-middle-toggle`) — toutes deja mergees dans l'ancien `main` (donc contenu preserve dans l'historique) ou explicitement abandonnees/depassees. Etat final : une seule branche, `main`, locale et distante identiques. + +**Pollution DSM/macOS** : `.gitignore` complete (`@eaDir/`, `**/@eaDir/`, `*@SynoEAStream`, `*@SynoResource`, `._*`) pour empecher toute reintroduction future. Un fichier deja tracke par erreur (`credentials/@eaDir/.env@SynoEAStream`) untracke via `git rm --cached`. Verifie avec `git check-ignore -v` sur les 3 patterns avant commit. + +**Script mort supprime** : `app/check_docx.py` (debug ponctuel du 11/06, bug deja corrige, ID de note hardcode). Note technique : ce fichier etait inaccessible (permission denied, y compris pour root) via le montage direct `/mnt/docker` du conteneur mcp-nas, mais supprimable normalement via `ssh nas-host` (Best0f) — ACL Synology visiblement scopee differemment entre les deux points d'acces au meme volume. A garder en tete pour toute intervention future sur ce repo depuis mcp-nas. + +**Secret en dur retire (trouvaille de securite)** : `generate-infra-index.py` et `.sh` contenaient le mot de passe SSH Best0f en clair (`SSHPASS="..."` hardcode), deja expose dans l'historique git sous une ancienne valeur (`2L2u519w@ommi`, rotee depuis vers la valeur actuelle). Remplace par lecture `BEST0F_SSH_PASS` (variable d'environnement, avec repli sur `nyora-notes/.env` si absente — ces scripts tournent hors conteneur, sans dotenv, et n'ont pas de tache planifiee identifiee dans le Task Scheduler DSM ni dans une crontab, execution probablement manuelle depuis mcp-nas). Valeur ajoutee dans `.env` (gitignore, jamais commit). L'ancienne valeur exposee dans l'historique n'a pas ete purgee (rewrite d'historique juge disproportionne pour un secret deja rote et un repo Gitea prive sans autre acces) — a signaler si une politique de purge d'historique est un jour mise en place (cf. `common/rotation-secrets-inventaire.md`). + +**Verification finale** : conteneur `nyora-notes` sain (`healthy`) apres toutes les operations — uniquement des refs git et deux fichiers hors execution (scripts de maintenance, jamais importes par l'application) touches, zero redemarrage necessaire.