Skip to content

docs(ict,#15636): ICT-22b et ict/causal_engine.py visibles dans les deux index de la serie (cherry-pick c.1104 dissipation) - #15752

Merged
jsboige merged 1 commit into
mainfrom
fix/1104-cherrypick-15649
Sep 12, 2026
Merged

jsboige merged 1 commit into
mainfrom
fix/1104-cherrypick-15649

Conversation

@jsboige

@jsboige jsboige commented Sep 12, 2026

Copy link
Copy Markdown
Owner

Grain: LIGHT/docs — lane myia-po-2026:CoursIA-2 — prev: LIGHT/guard #15702

docs(ict,#15636): ICT-22b et ict/causal_engine.py visibles dans les deux index de la serie (cherry-pick dissipation c.1104)

c.1107 cherry-pick dissipation INCIDENT c.1104 : PR #15649 originellement squash-mergée sur feature/15479-ict-multilens-endpoints (branche orpheline, PAS sur main). Ce PR reporte le commit eac59646297787c18f5b1ce9be28394455f09ab7 sur main via cherry-pick depuis origin/main (fc906accb0) → commit e6a8897b9b.

Périmètre du changement

Fichier Δ
MyIA.AI.Notebooks/IIT/ICT-Series/ICT-0-Framing.md +2 -0
MyIA.AI.Notebooks/IIT/ICT-Series/README.md +2 -1

Total : 2 fichiers, +4/-1 — Livrable identique au squash d'origine.

Contexte — issue #15636

ICT-22b (notebook consumer tranche 3) et le module ict/causal_engine.py étaient implémentés mais absents des deux index de la série ICT : ICT-0-Framing.md (index narratif d'introduction) et README.md (index principal). Un lecteur arrivant sur la série ne pouvait pas les repérer en naviguant.

Cherry-pick mechanics

git worktree add ../CoursIA-c1107-15649 -b fix/1104-cherrypick-15649 origin/main
cd ../CoursIA-c1107-15649
git cherry-pick eac59646297787c18f5b1ce9be28394455f09ab7  # 0 conflit
git push origin fix/1104-cherrypick-15649
gh pr create --base main --head fix/1104-cherrypick-15649 --title "..." --body-file ...

Vérification pre-merge

  • baseRefName strict == main : préflight gh pr view N --json baseRefName | jq -e '.baseRefName == "main"' (Tell c.1105-L1 ★★ fondateur, dissipation c.1104 INCIDENT).
  • commit accessible sur main : git log origin/main | grep e6a8897b9b après merge.
  • diff == diff du squash d'origine : git diff eac596462 e6a8897b9b -- MyIA.AI.Notebooks/IIT/ICT-Series/ doit rendre 0 ligne (même contenu).

Anti-régression contenu

Le contenu textuel des deux fichiers index a déjà été revu et accepté par reviewers sur #15649 — re-merge sur main est une dissipation d'incident, pas une réécriture.

Co-Authored-By: Claude Haiku 4.5 (1M context) noreply@anthropic.com

@jsboige
jsboige merged commit a678e44 into main Sep 12, 2026
21 of 24 checks passed
@github-actions github-actions Bot added the variation-light-cap-reached Lane ayant deja merge une LIGHT aujourd'hui (cap G-VAR-2 atteint) label Sep 12, 2026
@github-actions

Copy link
Copy Markdown
Contributor

G-VAR-2 light cap reached (advisory, non bloquant).
La lane myia-po-2026:CoursIA-2 a deja consomme son budget LIGHT du jour (axe genre G-VAR-2/3 (light-genre, quel que soit le tier declare) : #15702 (LIGHT/guard, merge a 2026-09-12T09:43:43Z), #15638 (MED/guard, merge a 2026-09-12T09:43:53Z), #15752 (LIGHT/docs, merge a 2026-09-12T11:43:23Z)).
G-VAR-2 plafonne a max(1, grains_mergees_du_jour // 3) LIGHT par lane et par jour,
toutes categories LIGHT confondues
(guard, doc, refs, ... partagent un seul budget) :
c'est un RATIO, pas un plafond plat. La decision de merge reste au coordinateur.

@github-actions github-actions Bot added the variation-genre-cap-exceeded light_genre > cap partage G-VAR-2 (#10020, advisory) label Sep 12, 2026
@github-actions

Copy link
Copy Markdown
Contributor

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

  • CAP-EXCEEDED-BY-GENRE : light_genre > cap partage G-VAR-2 (tally : declared=2 genre=3 cap=2)

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.

myia-ai-01 pushed a commit that referenced this pull request Sep 12, 2026
…ige (#15804)

`--check` n'excusait un lien casse que s'il figurait dans
`baseline_docs_links.json` — un fichier fige a `broken_links: []` qu'aucune
automatisation ne regenere (`--baseline` n'est appele nulle part). Un seul
lien casse sur `main`, meme introduit par une PR mergee, etait donc rapporte
comme « REGRESSION » sur TOUTE PR ouverte, et rougissait trois checks d'un
coup : `check-links`, `Always-on guards` et `PR gate`.

Voie 1 de l'issue : `--check --base <ref>` lit l'arbre de la base et
soustrait les liens deja casses la-bas. Un lien n'est excuse que si la source
existait a la base, portait la meme cible, et que cette cible y manquait
deja. Un lien ajoute par la branche, ou une cible que la branche supprime,
restent donc des regressions. Le fichier fige garde son role sur les voies
sans base disponible (dispatch manuel, scan complet).

`scan_file` est scinde en `scan_content(content, rel_source)` + enveloppe :
le meme scanner sert l'arbre de travail et un `git show <ref>:<path>`. Le
code de retour de git est inspecte AVANT de lire stdout (#15387).

La garde de voie rapide `check-links` passe desormais `--base {base_ref}`
avec `needs_base=True` — la convention des gardes base-vs-head du depot.

Mesure sur un arbre `origin/main` propre (lien ICT-Series/README.md:214
introduit par #15752 MERGED, dont la cible ne vit que dans la PR ouverte
#15609) :

    avant : REGRESSION: 1 new broken link(s): ...           -> exit 1
    apres : OK: No new broken links. (1 pre-existing, 6845) -> exit 0

Controle positif — un lien neuf injecte reste designe :

    REGRESSION: 1 new broken link(s):
      docs/reference/common-commands.md:84 -> ./NOPE-...md  -> exit 1

Tests : 66 dans `test_check_docs_links.py` (dont 9 neufs : excuse par la
base, non-masquage d'un lien neuf, oracle d'arbre git, traversal, cible
html/Quarto, sous-module, revision illisible), 141 avec les suites
fast-lane. `scripts/tests` est execute par `scripts-tests.yml`, donc ces
tests tournent en CI.

See #15766 — l'acceptance 3 (le lien README lui-meme redevient valide)
releve de #15609 : les deux moities sont complementaires.

Co-authored-by: Claude Sonnet 5 <noreply@anthropic.com>
jsboige added a commit that referenced this pull request Sep 12, 2026
…ige (#15804)

`--check` n'excusait un lien casse que s'il figurait dans
`baseline_docs_links.json` — un fichier fige a `broken_links: []` qu'aucune
automatisation ne regenere (`--baseline` n'est appele nulle part). Un seul
lien casse sur `main`, meme introduit par une PR mergee, etait donc rapporte
comme « REGRESSION » sur TOUTE PR ouverte, et rougissait trois checks d'un
coup : `check-links`, `Always-on guards` et `PR gate`.

Voie 1 de l'issue : `--check --base <ref>` lit l'arbre de la base et
soustrait les liens deja casses la-bas. Un lien n'est excuse que si la source
existait a la base, portait la meme cible, et que cette cible y manquait
deja. Un lien ajoute par la branche, ou une cible que la branche supprime,
restent donc des regressions. Le fichier fige garde son role sur les voies
sans base disponible (dispatch manuel, scan complet).

`scan_file` est scinde en `scan_content(content, rel_source)` + enveloppe :
le meme scanner sert l'arbre de travail et un `git show <ref>:<path>`. Le
code de retour de git est inspecte AVANT de lire stdout (#15387).

La garde de voie rapide `check-links` passe desormais `--base {base_ref}`
avec `needs_base=True` — la convention des gardes base-vs-head du depot.

Mesure sur un arbre `origin/main` propre (lien ICT-Series/README.md:214
introduit par #15752 MERGED, dont la cible ne vit que dans la PR ouverte
#15609) :

    avant : REGRESSION: 1 new broken link(s): ...           -> exit 1
    apres : OK: No new broken links. (1 pre-existing, 6845) -> exit 0

Controle positif — un lien neuf injecte reste designe :

    REGRESSION: 1 new broken link(s):
      docs/reference/common-commands.md:84 -> ./NOPE-...md  -> exit 1

Tests : 66 dans `test_check_docs_links.py` (dont 9 neufs : excuse par la
base, non-masquage d'un lien neuf, oracle d'arbre git, traversal, cible
html/Quarto, sous-module, revision illisible), 141 avec les suites
fast-lane. `scripts/tests` est execute par `scripts-tests.yml`, donc ces
tests tournent en CI.

See #15766 — l'acceptance 3 (le lien README lui-meme redevient valide)
releve de #15609 : les deux moities sont complementaires.

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

Labels

variation-genre-cap-exceeded light_genre > cap partage G-VAR-2 (#10020, advisory) variation-light-cap-reached Lane ayant deja merge une LIGHT aujourd'hui (cap G-VAR-2 atteint)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant