Skip to content

Chore(submodule): bump Argumentum d257443df0 -> a88947e5c2 (26 commits, Cards inchange pour les carnets) - #23375

Merged
jsboige merged 1 commit into
mainfrom
chore/bump-argumentum-a88947e5
Oct 31, 2026
Merged

jsboige merged 1 commit into
mainfrom
chore/bump-argumentum-a88947e5

Conversation

@jsboige

@jsboige jsboige commented Oct 29, 2026 •

Copy link
Copy Markdown
Owner

Grain: LIGHT/tooling — lane myia-ai-01:CoursIA-2 — prev: MED/ledger #23206

Bump du gitlink Argumentum vers la tête de master

submodule_watch.py signalait une DERIVE : le gitlink de MyIA.AI.Notebooks/SymbolicAI/Argument_Analysis/Argumentum (d257443df0) avait 26 commits de retard sur refs/heads/master (a88947e5c2).

La branche déclarée dans .gitmodules est master ; la référence de comparaison est donc refs/heads/master, et non un HEAD distant.

Les 26 commits

Portée Nombre
Portail DNN : page de contact, newsletter, pages légales (es/ar/fa/zh), canon des « download cards » (#458 D1-E4) 17
Exports DNN2sxc des 4 taxonomies (Fallacies, Rules, Scenarii, Virtues) en 8 langues (#136) 8
i18n pt-BR (manage-password / forgot-password) 1

Ce que les carnets consomment — et ce qui ne change pas pour eux

Les carnets et scripts de CoursIA ne lisent que Cards/ du sous-module. Sous Cards/, le delta ne change aucun fichier : git diff --name-only d257443df0 a88947e5c2 -- Cards/ rend 0 chemin — le contenu que les carnets lisent est identique octet pour octet entre les deux pins.

Le reste du delta est hors de la portée des carnets :

  • DNNPlatform/** : ressources .resx et pages DNN ;
  • Generation/Converters/Argumentum.AssetConverter/** : code d'export et ses tests ;
  • docs/dnn-localization/, tools/large-blob-guard.py.

Les XML d'export 2sxcContentExport_Argumentum_*.xml (dont Fallacies, modifié de +90 222 lignes) ne sont lus par aucun fichier du dépôt : git grep -l 2sxcContentExport sur origin/main rend 0 résultat. Ce sont des charges utiles de déploiement DNN, pas la source que les carnets lisent.

Aucune sortie de carnet ne change. Je n'ai rejoué aucun carnet : la vérification porte sur l'égalité des octets de Cards/ entre les deux pins, pas sur une ré-exécution.

Consommateurs recensés sur origin/main (git grep -l "Cards/Fallacies\|Cards/Scenarii\|Argumentum Fallacies") :

  • MyIA.AI.Notebooks/SymbolicAI/Argument_Analysis/Argumentation-Onto-01-AIF-OWL2-Python.ipynb
  • MyIA.AI.Notebooks/SymbolicAI/Argument_Analysis/Argumentation-Onto-02-CrossLinks-CSV-Python.ipynb
  • MyIA.AI.Notebooks/SymbolicAI/Argument_Analysis/README.md
  • MyIA.AI.Notebooks/SymbolicAI/Argument_Analysis/_archive/Argument_Analysis_Agentic-1-informal_agent.ipynb
  • MyIA.AI.Notebooks/GameTheory/GameTheory-18c-Humour-Banc-Python.ipynb
  • MyIA.AI.Notebooks/GenAI/FallacyDetection/README.md
  • scripts/fallacy_detection/cartesian_dataset_builder.py
  • scripts/fallacy_detection/tests/test_argumentum_taxonomy_integrity.py

Gate du sous-module (état 3)

8 workflows actifs sur ArgumentumGames/Argumentum. Au sha a88947e5c2 :

workflow conclusion horodatage
Build success 2026-10-29T16:13:12Z
Mindmap wrapper behaviour success 2026-10-29T16:13:12Z
Deploy static content to Pages success 2026-10-29T16:13:12Z
Healthcheck — Pages URLs success 2026-10-29T16:16:12Z

Le gate existe, tire et est vert sur la branche par défaut : la substitution R3 (deux vérifications firsthand sur deux sièges distincts) cesse — A2 est acquis.

Deux PRs de bump déjà ouvertes — ce que celle-ci fait

PR cible rapport au pin actuel d257443
#23045 0de5058c90 4 commits en arrière — la fusion ferait régresser le pin
#22415 dc42437ce9 71 commits en arrière ; son diff ne touche d'ailleurs pas le gitlink (9 fichiers : copies de taxonomie, NOTICE, NOTICE-VIRTUES, ontologie)

Cette PR pointe vers la tête de la branche déclarée et supersède #23045, qui est une régression de pin. Je ne ferme pas #23045 : la fermeture revient à myia-ai-01:CoursIA.

#22415 est un resync de contenu (les copies de taxonomie du dépôt CoursIA), pas un bump : il n'entre pas en collision de fichier avec celle-ci, et son sort reste à trancher par le coordinateur — son contenu vise un pin 71 commits en arrière, alors que Cards/ a bougé entre dc42437ce9 et d257443 (les quatre lignes de taxonomie décrites par #22958).

Vérification

  • git ls-remote https://github.com/ArgumentumGames/Argumentum refs/heads/master → a88947e5c2209c6c0471f52c3573a2f66912dd47.
  • git log --oneline d257443df0..a88947e5c2 | wc -l → 26, mesuré deux fois par des voies indépendantes (clone local et API compare), résultat identique.
  • git merge-base --is-ancestor → d257443df0, 0de5058c90 et dc42437ce9 sont tous trois ancêtres de a88947e5c2.
  • git diff --name-only d257443df0 a88947e5c2 -- Cards/ → 0 chemin.
  • git grep -l 2sxcContentExport origin/main → 0 résultat.
  • Diff du dépôt parent : 1 fichier, 1 insertion(+), 1 deletion(-), mode 160000 (gitlink).

🤖 Generated with Claude Code

…s, Cards inchange)

La DERIVE signalee par submodule_watch.py porte 26 commits de master sur le
gitlink du sous-module Argumentum (branche declaree dans .gitmodules : master).

Les carnets de CoursIA ne lisent que Cards/ du sous-module, et le delta ne
change aucun fichier sous Cards/ : git diff --name-only d257443df0
a88947e5c2 -- Cards/ rend 0 chemin. Le contenu consomme est identique octet
pour octet entre les deux pins, donc aucune sortie de carnet ne change.

Les XML d'export 2sxcContentExport_Argumentum_*.xml sont modifies (+90 222
lignes sur Fallacies) mais ne sont lus par aucun fichier du depot :
git grep -l 2sxcContentExport sur origin/main rend 0 resultat.

Gate du sous-module : Build, Mindmap wrapper behaviour, Deploy static content
et Healthcheck sont verts au sha a88947e5c2 (2026-10-29T16:13-16Z), donc la
substitution R3 cesse.

Cette PR supersede #23045, qui vise 0de5058c90 -- quatre commits en arriere
du pin actuel, soit une regression de pin. La fermeture de #23045 revient au
coordinateur ; cette PR ne la fait pas.

Co-Authored-By: Claude Haiku 5.5 <noreply@anthropic.com>
@github-actions github-actions Bot added the variation-tag-genre-offlist GENRE hors de l'enumeration variation-protocol §1 label Oct 29, 2026
@github-actions

Copy link
Copy Markdown
Contributor

G-VAR-2/3 GENRE signals (advisory, non bloquant, #10020).
La lane `myia-ai-01:CoursIA-2` voit ces signaux actifs sur les mergees du jour (UTC 2026-10-29) :

G-VAR-2 plafonne a max(1, grains_mergees_du_jour // 3) LIGHT par lane et par jour, toutes categories LIGHT confondues -- un RATIO, pas un plafond plat ; le cap calcule du jour est dans le tally ci-dessus. G-VAR-3 interdit deux genres LIGHT consecutifs. Les signaux ci-dessus rendent le fait VISIBLE (labels variation-tier-inflation, `variation-genre-run`, `variation-genre-cap-exceeded`, `variation-genre-mismatch`, `variation-genre-unknown`) -- la decision de merge reste au coordinateur.

@github-actions

github-actions Bot commented Oct 29, 2026 •

Copy link
Copy Markdown
Contributor

Path-collision (organ #13359/#13615)

Cette PR #23375 (Chore(submodule): bump Argumentum d257443df0 -> a88947e5c2 (26 commits, Cards inchange pour les carnets)) touche au moins un chemin de fichier aussi modifie par d'autres PRs ouvertes. Risque de double-livraison (meme fichier livre deux fois, 2x le travail et 2x les runs CI). Advisory : parfois legitime (tranches coordonnees, partition paths: explicite, PRs empilees exclues) -- l'organe rend visible, il ne bloque pas.

jsboige added a commit that referenced this pull request Oct 30, 2026
…de sortie

Cinq points releves par la review du 2026-10-29 sur la PR #23314.

1. `rc=1` ambigu (le point bloqueur). Python rend 1 aussi bien sur une derive
   mesuree que sur une exception non rattrapee : le step de verdict, branche sur
   `steps.drift.outputs.rc`, publiait « derive de gitlink au-dela du seuil » sur
   un `drift.json` de 0 octet. Le step de mesure n'expose plus `rc` (il reste
   dans le log, indicatif) ; le verdict lit `drift.json` avec jq et traite un
   artefact absent ou illisible comme une PANNE DE MESURE, distincte d'une
   derive. Test de non-regression : aucun step ne lit un output `rc`.

2. Seuil franchi avant le merge. Mesure du jour sur Argumentum, la plus active
   des cinq : 100 commits sur 6 jours actifs (24-29/10), mediane **16 commits
   par jour actif**. A 10, le garde rougissait apres une seule journee
   d'activite amont -- tous les jours pour un cron quotidien. Seuil porte a 40
   (~2,5 jours actifs medians), justifie dans la docstring et dans l'en-tete du
   workflow. Mesure a la tete : Argumentum DERIVE 26 commits, semantic-fleet 1,
   rc 0. Le bump de rattrapage reste la PR #23375, ouverte independamment.

3. Le seuil n'est plus ecrit deux fois : `MAX_AHEAD` dans l'env du job, lu par
   la mesure et par le verdict ; un test verifie qu'il egale
   `DEFAULT_MAX_AHEAD`, pour que CI et local ne divergent pas en silence.

4. `INJOIGNABLE` : `ahead_by` passe de 0 a `None`, pour qu'un consommateur qui
   ne lit que ce champ ne conclue pas « pas de derive » sur un depot muet. 0
   reste reserve a l'etat `OK`, ou il est le resultat d'une mesure.

5. « Advisory » et `exit 1` n'etaient pas compatibles. Le garde est bloquant sur
   `schedule` et `push` -- les evenements qui font autorite sur `main` -- et
   advisory (annotation, sans echec du job) sur `pull_request`, ou une derive
   anterieure au contenu de la PR n'est pas imputable a son auteur.

Tests : 19 passed (15 + 4).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@jsboige
jsboige merged commit 45bbf38 into main Oct 31, 2026
21 of 24 checks passed
myia-ai-01 pushed a commit that referenced this pull request Oct 31, 2026
…ules (#23314)

* Add(tooling): garde quotidienne de la derive des gitlinks de sous-modules

La Regle 2 mesurait la derive, mais l'organe ne tournait qu'a la main, au
rythme des cycles de coordination : une derive de 26 commits (Argumentum,
d257443df -> a88947e5) a pu s'accumuler en trois semaines sans regard. Le
proprietaire naturel de cette derive, Dependabot, s'est tu : aucune PR (tous
ecosystemes) depuis le 2026-10-27.

Mesure du 2026-10-29, cause du silence : le pin de main a ete avance a la main
de 84 commits (PR #22958, 27/10 20:57:30Z), soit 5 minutes avant que
Dependabot n'auto-cloture sa propre PR (#22823, 27/10 21:02:08Z, "up-to-date
now") -- il n'avait alors plus de cible, et sa resolution de branche s'etait
figee sur une ref du 23/10.

L'organe existant est etendu plutot que duplique :
- compare_ahead() mesure la distance (ahead_by de l'API compare) en stdlib
  (urllib) : ni gh, ni secret requis dans la CI ;
- gitlink_drift() rend ahead_by (0 pour OK, la distance pour DERIVE, None si
  la mesure est impossible) ;
- drift_exit_code() : 0 = rien, 1 = derive au-dela du seuil, 2 = mesure
  impossible (un incident de reseau ne fait pas rougir la veille) ;
- --drift-only : mode sans GraphQL, sans jeton, sans liste de PRs ; la veille
  historique garde son comportement et son exit_code inchanges.

Le workflow .github/workflows/submodule-drift.yml (cron 17 4 * * *, hors :00
pile) publie l'artefact de mesure et echoue sur un bump en retard. Le seuil
de 10 commits distingue "le pin suit" de "le bump est en retard" : un garde
qui rougirait sur toute derive serait rouge en permanence. Le garde est
advisory, non enregistre comme check bloquant.

15 tests dans scripts/tests/test_submodule_watch_drift.py verrouillent les
pieges : une mesure absente n'est jamais un zero, une derive courte n'est pas
un retard, un depot muet n'est pas une egalite, la branche declaree fait foi.

Cette PR ne bump pas le pin Argumentum : la decision de bumper releve de
l'adjoint et du coordinateur. L'outillage mesure desormais la derive au lieu
de la laisser s'accumuler.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

* Fix(tooling,#23314): le verdict du garde lit le JSON, jamais le code de sortie

Cinq points releves par la review du 2026-10-29 sur la PR #23314.

1. `rc=1` ambigu (le point bloqueur). Python rend 1 aussi bien sur une derive
   mesuree que sur une exception non rattrapee : le step de verdict, branche sur
   `steps.drift.outputs.rc`, publiait « derive de gitlink au-dela du seuil » sur
   un `drift.json` de 0 octet. Le step de mesure n'expose plus `rc` (il reste
   dans le log, indicatif) ; le verdict lit `drift.json` avec jq et traite un
   artefact absent ou illisible comme une PANNE DE MESURE, distincte d'une
   derive. Test de non-regression : aucun step ne lit un output `rc`.

2. Seuil franchi avant le merge. Mesure du jour sur Argumentum, la plus active
   des cinq : 100 commits sur 6 jours actifs (24-29/10), mediane **16 commits
   par jour actif**. A 10, le garde rougissait apres une seule journee
   d'activite amont -- tous les jours pour un cron quotidien. Seuil porte a 40
   (~2,5 jours actifs medians), justifie dans la docstring et dans l'en-tete du
   workflow. Mesure a la tete : Argumentum DERIVE 26 commits, semantic-fleet 1,
   rc 0. Le bump de rattrapage reste la PR #23375, ouverte independamment.

3. Le seuil n'est plus ecrit deux fois : `MAX_AHEAD` dans l'env du job, lu par
   la mesure et par le verdict ; un test verifie qu'il egale
   `DEFAULT_MAX_AHEAD`, pour que CI et local ne divergent pas en silence.

4. `INJOIGNABLE` : `ahead_by` passe de 0 a `None`, pour qu'un consommateur qui
   ne lit que ce champ ne conclue pas « pas de derive » sur un depot muet. 0
   reste reserve a l'etat `OK`, ou il est le resultat d'une mesure.

5. « Advisory » et `exit 1` n'etaient pas compatibles. Le garde est bloquant sur
   `schedule` et `push` -- les evenements qui font autorite sur `main` -- et
   advisory (annotation, sans echec du job) sur `pull_request`, ou une derive
   anterieure au contenu de la PR n'est pas imputable a son auteur.

Tests : 19 passed (15 + 4).

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>

---------

Co-authored-by: Claude Sonnet 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

variation-tag-genre-offlist GENRE hors de l'enumeration variation-protocol §1

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant