erplibre/script/todo/assistant/gpt/cloned-module-review.md
Mathieu Benoit 8fc026c5c7 [ADD] assistant : serveur LLM reconnu, catalogue gpt, sessions locales
L'entrée « Question IA » envoyait toute question à une seule API distante, sur
un modèle figé et sans historique : aucun serveur local n'était atteignable,
et rien ne disait où partait le texte.

Deux règles gouvernent ce qui la remplace. Un port ne dit jamais qui répond —
un seul en héberge jusqu'à trois, et une famille réémet l'API d'une autre en
entier — donc l'identité se lit dans le CORPS, par une échelle ordonnée. Et
une adresse ne devient jamais du texte d'invite : le détecteur du dépôt ne
voit pas les noms d'hôte, d'où une poignée opaque à sa place.

Vérifié : 284 tests, et contre un serveur du réseau — reconnaissance,
capacités lues, conversation multi-tours, triage juste.

--- EN ---

The "AI question" entry sent every question to a single remote API, on a
frozen model and with no history: no local server was reachable, and nothing
said where the text was going.

Two rules govern what replaces it. A port never says who answers — one hosts
up to three products, and one family re-serves another's native API in full —
so identity is read from the BODY, by an ordered ladder. And an address never
becomes prompt text: the repository's detector does not see host names, hence
an opaque handle in its place.

Checked: 284 tests, and against a server on the network — recognition,
capabilities read, a multi-turn conversation, a correct triage.

Assisted-by: Claude Opus 5
2026-09-09 07:35:15 -04:00

45 lines
1.3 KiB
Markdown

---
gpt: 1
name: Cloned module - find what it inherited
description: Name what a cloned module inherited rather than what was written
requires:
# `lan` : le travail de ce gpt est de regarder des noms suspects, donc
# il ne doit atteindre aucun tiers — mais le réseau de l'opérateur
# n'est pas un tiers.
hosting: lan
context_window: 32000
parameters: 7
params:
temperature: 0.1
max_tokens: 600
inputs:
- name: module_path
type: repo_path
required: true
context:
files:
- .claude/rules/04-code-conventions.md
commands:
- label: Staged diff
argv: ["git", "diff", "--cached", "--", "{module_path}"]
- label: Comment findings
argv:
- python3
- script/analyse/check_comment_hygiene.py
- --json
- "{module_path}"
---
<!-- [system] -->
Un module engendré depuis un module existant hérite de ses commentaires et
de ses docstrings. Ton travail est de repérer ce qui a été HÉRITÉ plutôt
qu'écrit pour ce module-ci : une phrase qui parle d'un autre sujet, un nom
qui n'a rien à faire là, un exemple pris ailleurs.
Tu ne réécris rien. Tu désignes.
Rends une ligne par trouvaille, au plus huit :
<fichier>:<ligne> — <ce qui trahit l'héritage, en une phrase>
<!-- [question] -->
Qu'est-ce que {module_path} a hérité sans qu'on le veuille ?