Repository navigation
Audit Observatoire-1-Initiation (Cas 1 Bumble) : pre-registration exemplaire et arithmetique exacte, mais la moitie attaques du verdict n est pas auditable (opposes jamais committes) #18858
Description
Audit du carnet Argument_Analysis_Observatoire-1-Initiation.ipynb (Cas 1 Bumble « Opening Moves »)
Audit read-only, zéro LLM, zéro réseau (aucune re-collecte : l'audit rejoue les sorties committées et l'arithmétique du verdict). Suite de la série #18390.
Contrôle positif — la chaîne de pré-inscription est exemplaire, et l'arithmétique du verdict est exacte de bout en bout
- La chaîne pré-inscription → amendements → livraison est datée et tenue : pré-inscription c.5698503026 (16/09 14:10Z), amendement n°1 correction de date (14:25Z, déploiement réel 2024-04-30 — la fenêtre initiale aurait absorbé 6 semaines de pré-rollout), pilote v1 retiré (verdict dégénéré mesuré, non livré), amendement n°2 pipeline v2 figé AVANT re-collecte (17:20Z), PR feat(observatoire,#16410): Cas 1 — Bumble Opening Moves — DiD imparfait sur avis datés #16431 mergeée 17/09 20:42Z. Les fenêtres du carnet (pré 2023-10-15→2024-04-29, post 2024-05-15→2024-11-15, contrôle r/hingeapp), les 6 catégories et le gate de verdict sont mot pour mot ceux du fil.
- L'instrument est rebranché, pas réécrit — mesuré : zéro redéfinition des symboles de l'instrument dans le code du carnet (
build_aif_graph,Enonce,to_dung_af,d_struct,d_sem,split_half,to_rdf,AIFGraph: 0 occurrence dedef/class), et_dated_graphs_mod.py(789 l.) porte exactement les définitions publiques du carnet Instrument G_t^arg -> G_{t+1}^arg : graphes d'argumentation datés sur le substrat AIF/Dung, avec plancher de bruit obligatoire #13310. La neutralisation C3 est une divergence unique, assumée et documentée (cellule 10 + amendement n°2). - Tout se recalcule : 216 classifications = 4×54 (seaux [9,9,9,9,9,9] imprimés) ; les I-nodes par niveau position (4/5/4/3) = les catégories distinctes non nulles du tableau de distribution ; DiD(noeuds) = 0.200−0.250 = −0.050 ; DiD(attaques) = 1.000−0.750 = +0.250 ; planchers moyens = (0.000+0.250)/2 = 0.125 et (0.000+1.000)/2 = 0.500 ;
OPENING_MOVE_REACT= 0 dans les quatre cellules — la « signature absente » de la conclusion est exacte. Verdict INCONCLUSIVE tranché et imprimé — c'est l'item « à vérifier à la fermeture » laissé par le spot-check du 27/09 (c.5853638796) : il est levé. - Discipline dataset tenue au-delà de l'engagement : zéro verbatim committé (l'engagement autorisait ≤5 par cellule), zéro
/u/résiduel, les seules URL des sorties sont les IRI de namespace AIF (arg.dundee.ac.uk/aif#). Le prélèvement « posts récents par seau » (sort=desc&sort_type=created_utc+ 9 premiers) est énoncé en prose §3 et sa trace est visible et cohérente (date_min Bumble_pre 2023-11-16 = fin du seau 1, bornes sans chevauchement).
Défaut 1 (principal) — la moitié « attaques » du verdict n'est pas auditable depuis l'artefat
Le mot opposes apparaît 0 fois dans les sorties committées. Or la moitié du verdict en dépend : les comptes CA (texte : 0/63/7/53 ; position : 0/9/3/2), DiD(attaques) = +0.250 et le plancher attaques = 0.500 dérivent tous des classifications opposes — qui ne survivent nulle part sous forme d'agrégat. Le tableau de distribution committé (cellule 9) ne porte que cats. Conséquence : un auditeur peut re-vérifier la moitié « nœuds » du verdict (I-nodes ↔ distribution), mais doit croire sur parole la moitié « attaques ». Pour un cas livré sous un protocole dont la règle est que le barreau est écrit à côté de l'affirmation (#13309 §1), la chaîne de preuve du verdict devrait être intégralement dérivable depuis l'artefact.
Réparation proposée : une seconde table de distribution opposes (compte de textes s'opposant à chaque catégorie, par cellule) à côté de la table cats — agrégats seuls, conforme à la politique dataset. Rien d'autre ne bouge.
Défaut 2 — le plancher split-half est une réalisation unique non reproductible
Le plancher est calculé sur une seule réalisation du split par bras, sans seed (« une seule réalisation par bras, fidèle à #13310 »). Les tirages observés (Bumble 0.000, Hinge 0.250 en nœuds ; 0.000 et 1.000 en attaques) montrent la variance du tirage : le seuil du gate attaques (0.500) est lui-même un tirage d'une variable qui peut valoir 0.000. Avec DiD(attaques) = +0.250, un tirage de plancher < 0.200 ferait basculer le verdict. À ces marges le verdict ne change pas, mais le seuil n'est pas rejouable : deux exécutions du même carnet sur les mêmes données peuvent produire deux verdicts différents. Le défaut est hérité du design de l'instrument (#13310) plus que du cas — à consigner sur les deux.
Défaut 3 (mineur) — la marge +0.05 du gate n'est pas dans la sortie imprimée
L'amendement n°2 fixe le gate à DiD > plancher + 0.05 (nœuds ET attaques). La cellule 11 imprime DiD − plancher (−0.175 / −0.250) sans le +0.05. Verdict inchangé à ces marges (−0.225 / −0.300 resteraient négatifs), mais le critère imprimé n'est pas exactement le critère signé — une ligne à réaligner.
Genèse corrigée (leçon des audits précédents)
Entré au dépôt le 17/09 (PR #16431, merge 20:42Z ; arc #16410 : pré-inscription → v1 retiré → v2), dernier toucher le 25/09 (renumérotation série 47b7c0e26). Daté ici par l'API du dépôt distant — le checkout local est un clone shallow dont le log s'arrête à une greffe du 24/09 (même artefact qui a faussé les dates d'entrée des audits ontologies, errata #18656/#18658/#18825).
Vérification (rejouable)
# aucune redéfinition de l'instrument dans le carnet
python - <<'EOF'
import json
nb = json.load(open('MyIA.AI.Notebooks/SymbolicAI/Argument_Analysis/Argument_Analysis_Observatoire-1-Initiation.ipynb', encoding='utf-8'))
code = '\n'.join(''.join(c['source']) for c in nb['cells'] if c['cell_type']=='code')
print({s: code.count(s) for s in ['def build_aif_graph','class Enonce','def to_dung_af','def d_struct','def split_half']})
# -> tous 0
EOF
# opposes absent des sorties committées : extraire les outputs et compter 'opposes' -> 0
# arithmétique : cellule 10 -> DiD(noeuds) 0.200-0.250=-0.050 ; cellule 11 -> planchers (0+0.25)/2, (0+1)/2Liens
- Protocole Observatoire des formes relationnelles — écrire le protocole de preuve AVANT tout cas (échelle à 3 barreaux, biais de sélection signé, pré-inscription) #13309 · EPIC [EPIC] Observatoire des formes relationnelles — temoins externes pour humour, desir et amour #13303 · pré-inscription et amendements : [Observatoire] Cas 1 — initiation sur applis de rencontre : Bumble Opening Moves, DiD imparfait sur avis datés #16410 (c.5698503026, c5698531419, c5701589586) · instrument Instrument G_t^arg -> G_{t+1}^arg : graphes d'argumentation datés sur le substrat AIF/Dung, avec plancher de bruit obligatoire #13310 · PR feat(observatoire,#16410): Cas 1 — Bumble Opening Moves — DiD imparfait sur avis datés #16431 · spot-check 27/09 c.5853638796
Activity
jsboige commentedon Oct 2, 2026
[CLAIMED] lane myia-po-2026:CoursIA -- réparation défaut 1 (table distribution opposes par cellule à côté de cats, agrégats seuls) + défaut 3 (ligne imprimée du gate réalignée sur DiD > plancher + 0.05). Défaut 2 (split-half seed) = mur instrument #13310, consigné, hors périmètre ce fix. paths: MyIA.AI.Notebooks/SymbolicAI/Argument_Analysis/Argument_Analysis_Observatoire-1-Initiation.ipynb
fix(arg,#18858): table oppositions committee + critere signe imprime …