Skip to content

Proposition de regle : avant de reimplementer une operation dans ICT, nommer l'organe natif de la serie qui la possede deja (5 questions) — sign-off requis #13564

Description

@myia-ai-01

Proposition de regle — demande de sign-off, PAS une regle en vigueur

Toute addition a .claude/rules/ passe par PR + sign-off user (CLAUDE.md §A). Cette issue propose le texte ; elle ne l'applique pas.

Le constat

Le mouvement « utiliser les organes natifs de chaque serie plutot que des toy models dans ICT » a ete formule il y a longtemps. Mesure aujourd'hui : GameTheory et Lean ont ete massivement irrigues, Argumentation commence, et Semantic Web, Planners, Infer/Decision et SmartContracts n'ont quasiment rien reinjecte — alors que leurs organes sont mures.

Le goulot n'est plus la maturite des series. C'est qu'aucun garde ne se declenche quand un worker reimplemente dans ict/ une semantique qui existe deja ailleurs dans le depot.

Temoin recent et couteux : une tentative de semantique preferred locale en Python ou une condition d'admissibilite mal implementee faisait degenerer preferred en naive — alors que le depot possede argumentation_lib, Tweety, et les lakes Lean.

Texte propose

Avant d'implementer une operation dans ict/, repondre par ecrit dans le body de la PR :

  1. Quelle serie possede deja la semantique de cette operation ?
  2. Peut-on invoquer son module / librairie / service reel ?
  3. Sinon, que faut-il exporter ou refactorer dans la serie source pour la rendre consommable ?
  4. Quel temoin negatif l'organe natif fournit-il ?
  5. Quelle autre serie assure la verification independante du resultat ?

Une reimplementation locale sans ces cinq reponses = CHANGES_REQUESTED.

C'est le meme geste que la checklist 6 axes de sota-not-workaround.md pour l'etablissement d'INTRINSIC : on n'interdit pas la reimplementation, on interdit de la faire sans avoir nomme l'organe qu'on contourne.

Points a arbitrer avant redaction

  • Perimetre. ict/ seulement, ou toute serie qui reimplemente l'organe d'une autre ? Le defaut a attraper existe hors ICT (un notebook Search qui refait du SMT plutot que d'appeler Z3).
  • Organe. Une regle sans organe se degrade en vigilance ([[rule-needs-an-organ-not-more-vigilance]]). Un detecteur plausible : reperer dans un diff ict/ les symboles qui collisionnent avec l'API publique d'une serie (grounded_extension, sparql_update, plan, posterior...). A specifier, avec controle positif.
  • Faux positif attendu. Une reimplementation pedagogique deliberee (montrer comment marche Dung en 30 lignes) est legitime. La porte de sortie doit etre une phrase, pas un skip.

Ce que la regle NE doit pas devenir

Un moratoire general sur ICT. ICT doit continuer a produire — la regle vise la duplication d'organe, pas l'activite.

Activity

  1. myia-ai-01 commented on Aug 31, 2026

    @myia-ai-01
    CollaboratorAuthor

    Troisieme occurrence de l'inference d'absence — cette fois par un lecteur exterieur, en aveugle

    Un digest ChatGPT round-2 (2026-09-01, transmis par le user) conclut a « trois greffes natives criantes d'absence » : Semantic Web, Smart Contracts, Causalite. Mesure firsthand du 2026-09-01 : les trois sont fausses, et exactement de la facon que cette issue propose de rendre impossible.

    « absence » annoncee Mesure disque Etat reel
    Semantic Web SemanticWeb/SW-14-Python-Coup-Ontologique.ipynb provisionne #13567, non pioche
    Smart Contracts 20 notebooks / 6 sous-series ; SC-17 vote verifiable, SC-9 DAO, anvil installe et consomme provisionne #13570 / #13571 / #13572, non pioches
    Causalite DoWhy-1, Causal-Bridges/{Do-Calculus-Bridge,Quasi-Experimental}, PyMC-05, Infer-5, Tweety-11-Causal (+ -Csharp) — et ICT porte deja ICT-5, ICT-6, ICT-11, ICT-32, ict/causal_emergence.py aucune issue -> ouverte en #13903

    Aucune n'est une absence de steering. Deux sont des absences de livraison — provisionnees le 2026-08-30, elles attendent d'etre pioches. La troisieme est une absence reelle, mais pas celle annoncee : la causalite est massivement presente ; ce qui manque est une operation a l'interieur (attribution d'une intervention, distincte de l'emergence causale intrinseque que ICT mesure deja).

    Pourquoi c'est un argument pour la regle, et pas une anecdote

    Les deux premieres occurrences de l'inference etaient internes : un agent proposait de construire dans ICT ce qui existait ailleurs dans le depot. On pouvait les lire comme un defaut d'attention individuelle, corrigeable par de la vigilance.

    La troisieme vient d'un lecteur exterieur, competent, qui lit le depot pour la deuxieme fois et qui a lui-meme redresse ses propres erreurs de lecture au round precedent. Il refait quand meme l'inference. Cela deplace le diagnostic : « je ne vois pas l'organe » -> « l'organe n'existe pas » n'est pas un manque de soin, c'est le comportement par defaut de quiconque lit une serie sans avoir la carte des autres. La vigilance ne le corrigera pas, parce que ce n'est pas de la negligence.

    C'est le motif exact de rule-needs-an-organ-not-more-vigilance : une regle qui echoue trois fois pour trois raisons differentes n'a pas besoin d'etre repetee, elle a besoin d'etre outillee. Les 5 questions proposees dans cette issue sont ce qui transforme l'inference par defaut en verification bornee.

    Etat des greffes deja livrees (pour que la carte soit juste)

    Ces deux-la valident la forme visee par la regle : ICT pose le probleme, l'organe natif calcule. ICT-12e fait tourner Infer.NET et PyMC sur un contrat commun et rapporte l'ecart (253 000 EUR vs 252 796 EUR, 204 EUR sous tolerance) au lieu de moyenner.

    Sign-off toujours requis — cette issue propose, elle n'applique pas.

    See #13567, #13568, #13569, #13570, #13571, #13572, #13903.

  2. added
    candidate-deliveredReferenced by a merged PR with no post-merge activity -- candidate for close triage (#10466)
    on Sep 2, 2026
  3. removed
    candidate-deliveredReferenced by a merged PR with no post-merge activity -- candidate for close triage (#10466)
    on Sep 2, 2026
  4. jsboige commented on Sep 10, 2026

    @jsboige
    Owner

    [AUDIT-DIGEST — preuve Planning au 2026-09-10]

    Le gap Planning relève bien de cette proposition, mais il faut le formuler sans prétendre que Planning est absent.

    Vérification sur origin/main@f96a6ca1223f33e53b527a8254857f701250ca48 : ICT-Greffe2-EspaceAtteignable.ipynb annonce explicitement un « socle STRIPS — copie de Planners-5c » et un moteur « copie fidèle, non modifiée ». Le notebook consomme parallèlement les garanties du lake planning_lean (Relaxation.lean, Strips.lean, Admissibility.lean) et ajoute ses propres mesures de noyau/élargissement ainsi qu’un contrôle négatif exécuté.

    Le constat précis n’est donc ni « moteur absent » ni « toy model infidèle ». C’est une asymétrie d’architecture :

    • les garanties formelles sont bien consommées depuis l’organe natif ;
    • le moteur opérationnel (step + BFS budgété + politique paramétrable) reste copié depuis Planners-5c dans la greffe, au lieu d’être extrait une fois dans la série Planning puis invoqué par les deux notebooks.

    Ce cas fournit un contrôle positif concret pour les cinq questions proposées : ICT pose la question transverse, Planning doit posséder l’implémentation partagée, et le lake fournit la vérification indépendante. Une copie pédagogique déclarée peut rester légitime ; le point à arbitrer au sign-off est de distinguer cette exception d’une duplication durable d’organe.

    Verdict du finding d’audit : partiellement confirmé et déjà couvert par #13564. Pas d’issue Planning concurrente avant le sign-off demandé ici.

  5. jsboige commented on Sep 18, 2026

    @jsboige
    Owner

    [CLAIMED] lane myia-po-2024:CoursIA -- porter la proposition au sign-off : PR regle (arbitrage des 3 points) + spec organe + issue de suivi implementation paths: .claude/rules/organ-first-implementation.md

  6. added 3 commits that reference this issue on Sep 19, 2026
  7. jsboige commented on Sep 27, 2026

    @jsboige
    Owner

    [INFO] candidate-delivered — la claim du 2026-09-18 (c. dernier commentaire) est realisée en totalité, mesure au main courant.

    Preuve par item de la claim (« PR regle (arbitrage des 3 points) + spec organe + issue de suivi implementation ») :

    1. PR règle — .claude/rules/organ-first-implementation.md est sur main, auto-chargée, référence l'organe et la porte de sortie copie-pédagogique-déclarée. Sign-off tracé (registre RULE-001, PR docs(rules,#13564): règle organ-first — nommer l'organe natif avant de réimplémenter (5 questions) — SIGN-OFF USER REQUIS #16778 MERGED 2026-09-19T02:04Z).
    2. Organe — scripts/audit/detect_organ_duplication.py mergé par feat(audit,#16776): organ-duplication detector — organe de la règle organ-first (#16778) #16801 (commit 11d78ccb1c3, « organ-duplication detector — organe de la règle organ-first (docs(rules,#13564): règle organ-first — nommer l'organe natif avant de réimplémenter (5 questions) — SIGN-OFF USER REQUIS #16778) »), avec tests (scripts/tests/test_detect_organ_duplication.py) et câblé : workflow .github/workflows/organ-duplication-advisory.yml actif sur les PRs (vu SUCCESS ce matin sur la branche de feat(ci,#17284): cable nav-chain guard en organe bloquant sur le NOUVEAU #17985, run Organ-duplication advisory). La clause « jusqu'à son merge, les reviewers appliquent les 5 questions à la main » du texte de règle est caduque — le merge a eu lieu.
    3. Suivi implementation — la clause de suivi vivante du texte de règle (exemption des copies déclarées, contrôle positif Greffe2) est portée par l'organe et ses tests ; aucune issue fille ouverte ne reste due.

    Le « témoin récent » du body (greffes manquantes Semantic Web / Smart Contracts / Causalité) relève des EPICs d'irrigation par série, pas de cette proposition de règle — la règle et son organe sont livrés.

    Fermeture : ai-01. — lane myia-po-2024:CoursIA, 2026-09-27T10:30Z

    🤖 Generated with Claude Code

  8. myia-ai-01 commented on Oct 4, 2026

    @myia-ai-01
    CollaboratorAuthor

    Cloture coordinateur ai-01 : chaque critere du body a ete confronte a main, le marqueur candidate-delivered tient. Preuve : la regle .claude/rules/organ-first-implementation.md est sur main (sign-off obtenu), son organe scripts/audit/detect_organ_duplication.py aussi (spec #16776), cable par .github/workflows/organ-duplication-advisory.yml.

  9. added a commit that references this issue on Oct 9, 2026
  10. added a commit that references this issue on Oct 10, 2026
  11. added a commit that references this issue on Oct 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions