Commit Graph
409 Commits
Author SHA1 Message Date
bolbol bedae23368 PROTOCOL-INFRA: identifiant de dedup et instant de collecte, comptage vs identification, troncature OWA, critere de test discriminant (11/08/2026) 2026-08-11 16:55:14 +00:00
bolbol 0c109afccd runbook: nyora-notes-tt -- message_id invalide, dedup par cle stable + comptage (11/08/2026) 2026-08-11 16:54:04 +00:00
Claude (hermes-perso) 32812c1172 hermes-tt: pilote post-fix D -- message_id instable (bloquant backfill/n8n), concurrence SQLite, debit mesure 2026-08-11 07:10:14 +01:00
Claude (hermes-perso) 3f232b44f6 PROTOCOL-INFRA: 3 regles issues de la resolution du bug D (clic != effet, garde-fou non concluant, flock sur tests Playwright) 2026-08-10 22:23:14 +01:00
Claude (hermes-perso) f3b9cc10d9 hermes-tt: bug D resolu (deplier != selectionner) + bug C + bug E decouvert et bloque
Cause de fond du bug D : go_to_folder_path confondait l'expansion d'un dossier
et sa selection. Seules les feuilles etaient reellement selectionnees ; tout
dossier a enfants laissait le dossier courant sur la Boite de reception, d'ou
un /search en HTTP 200 sur le mauvais perimetre. 63 dossiers sur 336 concernes.

Correctif : segments intermediaires = expansion seule ; dernier segment = clic
sur la ligne + confirmation par aria-selected, sinon 502 explicite.
Bug C corrige dans le meme passage (premier segment resolu aussi parmi les
freres de niveau 2, apres la Boite de reception pour retrocompatibilite).

Pollution induite mesuree et purgee : 46 notes sur 399, sur 10 dossiers tous
conteneurs. 399 -> 353 notes, 0 incoherence residuelle.

Bug E decouvert par les tests : sur un dossier sans message direct, OWA elargit
lui-meme la recherche a toute la boite. Politique du garde-fou inversee --
l'heterogeneite bloque desormais l'ingestion au lieu de la laisser passer.
2026-08-10 22:20:59 +01:00
Nabil.Derouiche c003b58768 hermes-tt: garde-fou de portee /search (mitigation bug D) + timeout aligne sur le nouveau plafond
Garde-fou : /search renvoie parfois le contenu de la Boite de reception pour un
folder_path donne, en HTTP 200 sans erreur (bug D, cause non corrigee cote serveur).
Verifie avant d'implementer qu'AUCUN signal structure n'existe dans la reponse
(top-level query/count/items ; par item raw_text/aria_label/elem_id/attrs) -- en
exposer un imposerait de modifier hermes-mail-browser, donc session dediee.

Signal retenu faute de mieux : la derniere ligne de raw_text porte le libelle du
dossier. Fiabilite mesuree sur 5 dossiers de types differents avant implementation :
uniforme a 100% dans les 5 cas (81/81, 37/37, 6/6, 84/84, 77/77), correspondant dans
les 4 cas sains, divergent dans le seul cas verole -- fiable ET discriminant, ce qui
justifie un blocage dur plutot qu'un simple avertissement.

Conception conservatrice : ne bloque que sur preuve positive de mauvaise portee ;
journalise et laisse passer quand il ne peut pas conclure (aucun item, libelles
heterogenes, noyau comparable vide). Un faux positif bloquerait une ingestion
legitime, ce qui serait pire que le defaut couvert. HermesFolderScopeError herite de
HermesMailClientError -> comportement correct chez les deux appelants de production
sans les modifier (checkpoint 'error' cote pipeline, None cote download_attachments).
Verifie en conditions reelles depuis le container : dossier sain 81 items ingeres,
dossier verole bloque. Non-regression du mock de test verifiee.

Timeout : effet de bord du fix B (plafond 20 -> 200). La duree de /search croit avec
le volume demande (scroll progressif) -- 40 a 240 s mesures, contre timeout=60 code en
dur. Les gros dossiers echouaient en timeout. SEARCH_TIMEOUT_S = 300.

+ 1 regle PROTOCOL-INFRA (plafond de pagination et timeout sont couples).
2026-08-10 18:32:37 +01:00
Nabil.Derouiche c5f25684f7 hermes-tt: 4 bugs extraction OWA (A+B corriges, C+D diagnostiques)
A - glyphe de zone privee Unicode seul en ligne 0 de raw_text decalant tout le
    decoupage positionnel : sender, subject ET date faux ensemble. 295/399 notes
    avaient un received_date qui n'est pas une date. 11 points de code PUA distincts
    recenses sur 40 dossiers, dont 7 hors de la plage Fluent UI habituelle -> retenir
    U+E000-U+F8FF. Correctif : nettoyage en amont du decoupage, date par motif,
    normalisation ISO 8601 au jour, message_id sur champs normalises + conversation_id
    comme discriminant. Corrige aussi checkpoint.last_processed_date (meme source).

B - search_folder() ne transmettait pas limit a /search -> plafond serveur silencieux
    a 20 items, dossier marque done comme s'il etait complet.

C - dossiers hors Reception inatteignables : 3 chemins de navigation, 3 defauts deja
    resolus ailleurs dans le meme fichier. Diagnostique, non corrige.

D - NON RESOLU, BLOQUANT BACKFILL : /search renvoie le contenu de la Boite de reception
    pour certains folder_path, en HTTP 200. Invalide la methode d'audit de completude
    et remet en question le classement des 399 notes existantes.

+ 3 regles generales dans PROTOCOL-INFRA.md (glyphe/emoji cassant tout matching de
texte naif sur OWA ; valeur par defaut serveur non transmise = troncature silencieuse ;
verifier la portee d'un resultat scope, pas seulement son code HTTP).
2026-08-10 17:24:17 +01:00
bolbolandClaude Opus 4.8 ac2a1b641e secrets(rotation): B5 -- mot de passe legacy famille 2L2u519w* largement embarque (empreinte, pas de valeur)
Ajout B5 a common/rotation-secrets-inventaire.md, redige selon la doctrine A1 (empreinte
sha256:bbd43b3e, valeur JAMAIS en clair). Sweep unique grep -rlI sur /volume1/docker (08/08/2026)
= ~30 fichiers : ~10 remotes git (.git/config), 7 .env desactives/backups, et DEJA en clair dans le
repo nas-runbooks lui-meme (HEBERGEMENT-SITES-STATIQUES.md, n8n-skills-officiels.md,
tap-gitea-hermes-skills.md, telegram-flood-control-...gitea-deploy-token.md) + context-hub/MEMORY/log.
Liveness NON re-verifiee (172.17.0.1 injoignable hors NAS, test Tailscale non concluant) -> traiter
comme potentiellement vivant. Remediation (rotation + reecriture remotes + scrub historique) = session
dediee, hors perimetre du chantier message_id.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-08 13:14:27 +01:00
bolbolandClaude Opus 4.8 c3a74b565d docs(hermes-tt): runbook elem_id OWA volatile (piste message_id natif fermee) + PROTOCOL-INFRA
- hermes-tt/nyora-notes-tt-message-id-elem-id-volatile-08-08-2026.md : cycle complet --
  hypothese elem_id stable, test insuffisant (1 msg position 0, appels rapproches) qui l'a
  faussement valide, test rigoureux (19 msg, ensembles disjoints, 0/20 meme index) qui
  l'infirme, cause (id de rendu DOM volatile), decision (message_id reste hash SHA256 stable,
  conservation conversation_id data-convid niveau thread + fix retry /search count:0), garde-fou
  dedup (399 notes en dossiers 'done' jamais re-scannes -> pas de doublon).
- PROTOCOL-INFRA.md : regle "id DOM d'un SPA jamais presume stable" (tester >=2 rendus reels +
  plusieurs echantillons) + fix /search count:0 transitoire + piege split('|') sur attrs.
- _INDEX.md : entree ajoutee.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-08-08 12:10:03 +01:00
Claude 9188fed0ac hermes-tt: addendum runbook -- fix LIST_ATTACHMENTS_TIMEOUT 20s->35s 2026-08-08 12:01:42 +01:00
Claude 3071a5a553 hermes-tt: runbook bug timeout search_folder/list_attachments PJ 2026 2026-08-08 12:01:42 +01:00
bolbol 50a1de04e3 protocol: ajout tactique checklist-projet (suivi operations validees, economie tokens) 2026-08-08 07:51:57 +00:00
bolbol f45af39583 index: ajout runbook nyora-notes-tt phase2+embedding relance post-sweep 08-08-2026 2026-08-08 04:19:34 +00:00
bolbol a25bb4ee88 runbook: nyora-notes-tt phase2+embedding relance post-sweep 08-08-2026 2026-08-08 04:18:27 +00:00
bolbol 69f8a8b31c docs(hermes-tt): index - endpoint ao_reference + fix pj-archive + 1er match content_hash 2026-08-07 23:47:35 +00:00
bolbol af3609cef0 docs(hermes-tt): runbook endpoint ao_reference + fix pj-archive + 1er match content_hash 2026-08-07 23:47:09 +00:00
bolbol 5897774041 docs(hermes-tt): runbook livelock sweep attachments (scan_fail_count) 2026-08-07 23:36:52 +00:00
bolbol 08e3dd67ee docs(hermes-tt): index - fix livelock sweep attachments (scan_fail_count) 2026-08-07 23:35:51 +00:00
bolbol de759c72db index: ajout runbook liaison attachments-onedrive 2026-08-07 21:06:46 +00:00
bolbol 0e4418263b runbook: liaison Mail<->RAG<->OneDrive PJ, hash+extraction+embedding, 2 pieges Docker (07/08/2026) 2026-08-07 21:06:25 +00:00
bolbol e16ffa9b4b docs(_INDEX): ajout entree sharepoint-delta-sync (tableau hermes-tt + liste chronologique) 2026-08-07 00:20:47 +00:00
bolbol aa206a1787 docs(hermes-tt): ajout runbook sharepoint-delta-sync 2026-08-07 00:19:14 +00:00
bolbol b0e1540049 hermes-tt: addendum purge MEMORY.md orphelin + cause racine ambiguite boot.md 2026-08-06 12:45:31 +00:00
bolbol d85605c215 hermes-tt: index runbook RIA fiabilite citation 2026-08-06 12:09:45 +00:00
bolbol fc8eeec671 hermes-tt: runbook fiabilite RAG RIA (12 articles avec header colle corriges) 2026-08-06 12:08:59 +00:00
bolbol cfe04e88f7 index: entree nyora-notes-tt onedrive-sync doublons + extensions (06/08/2026) 2026-08-06 07:24:32 +00:00
bolbol 15aecd9401 runbook: nyora-notes-tt onedrive-sync doublons + extensions inconvertibles (06/08/2026) 2026-08-06 07:23:22 +00:00
bolbol 754226c7b6 runbook : contournement direct NVIDIA NIM/OpenRouter pour onedrive_vec 2026-08-05 21:06:36 +00:00
bolbol 71d487620a index : ajout runbooks Bifrost rotation cles + 3 bugs nyora-notes-tt/convert-api (05/08/2026) 2026-08-05 17:00:58 +00:00
bolbol 6450bef958 runbook : 3 bugs nyora-notes-tt/nyora-convert-api (FTS5 slash, KeyError Mimo, accents) 2026-08-05 17:00:25 +00:00
bolbol a14bcc636e runbook : rotation cles Google Bifrost bloquee par max_retries=0 2026-08-05 17:00:24 +00:00
bolbol ff982fb113 index: ajout runbook piege pid-namespace container 2026-08-04 21:29:20 +00:00
bolbol 5651733a66 runbook: piege ps-aux host vs namespace PID container (mcp-nas) 2026-08-04 21:29:00 +00:00
Claude e8c22aaceb index: passation-pj-hermes-tt-deepseek-mimo 2026-08-02 18:54:56 +00:00
Claude 705ababfbe runbook: passation chantier PJ a hermes-tt (DeepSeek V4 Flash) + Mimo V2.5 2026-08-02 18:54:37 +00:00
hermes-tt 16114e134c protocol-infra: fix cron n8n orphelin cause instabilite hermes-mail-browser 2026-08-02 17:00:39 +00:00
hermes-tt d58ab996d1 index: n8n-cron-orphelin-hermes-mail-browser-instabilite 2026-08-02 17:00:25 +00:00
hermes-tt df61ceab6a runbook: cron n8n orphelin (ingestion continue) cause reelle instabilite hermes-mail-browser 2026-08-02 16:59:56 +00:00
hermes-tt 31b98fcbc9 protocol-infra: fix nyora-notes-tt disk I/O error post-backup (moteur sqlite mixte) 2026-08-02 14:51:39 +00:00
hermes-tt 51acc8a303 runbook: index nyora-notes-tt-backup-wal-moteur-mixte 2026-08-02 14:50:58 +00:00
hermes-tt 5cfc900b10 runbook: nyora-notes-tt disk I/O error post-backup (moteur sqlite mixte sur WAL) 2026-08-02 14:50:40 +00:00
bolbol 5f8a112db5 index: ajout runbook correctif 16 dossiers RAG error (toggle non idempotent) 2026-08-02 09:47:13 +00:00
bolbol 16c9ba3589 runbook: bandeau de correction -- diagnostic 'etat de session degrade' infirme, voir runbook toggle-expand-non-idempotent-fix 2026-08-02 09:46:55 +00:00
bolbol 5ddb8ab9b3 runbook: correction diagnostic 16 dossiers RAG error (toggle non idempotent, pas etat session degrade) 2026-08-02 09:46:39 +00:00
bolbol 723012ae54 INDEX: 16 dossiers error RAG — état session OWA dégradé (02/08/2026) 2026-08-02 08:38:56 +00:00
bolbol d3bab26c3d Runbook 16 dossiers error RAG — état session OWA dégradé (02/08/2026) 2026-08-02 08:38:37 +00:00
bolbol 2e17b515c9 roadmap: architecture 2 phases telechargement/resume (31/07/2026) 2026-08-01 06:52:59 +00:00
bolbol 4dcf749153 roadmap: decision finale exhaustif + dedup par contenu (31/07/2026) 2026-08-01 00:39:30 +00:00
bolbol f4c2351cfb roadmap: pieces jointes = chantier dedie futur, cible pas exhaustif (31/07/2026) 2026-08-01 00:17:49 +00:00
bolbol 87f008e247 deploy: index i-have-adhd 4 instances 2026-07-31 19:06:27 +00:00