docs(AGENTS): une obligation qui change de maison avec l'appelant se perd
Classe de défaut, nommée en découpant le lot prévision PV. Certaines obligations ne sont pas attachées à une DONNÉE mais à l'acte de l'aller chercher — l'attribution CC BY 4.0 suit celui qui appelle. Déplacer l'appel déplace donc l'obligation, et si le dépôt d'arrivée ne la porte pas, elle disparaît sans que personne ne l'ait retirée. Ce qui rend la classe dangereuse : le déplacement lui-même est invisible. On discute d'un découpage de responsabilités sur des arguments d'architecture, et l'obligation voyage en silence dans les bagages. Aucun test, aucune revue de code, et le manquement se constate dans un dépôt PUBLIÉ. La question à poser à chaque déplacement : cet acte porte-t-il une obligation, et le dépôt d'arrivée l'écrit-il déjà ? Deux issues — écrite à l'arrivée, ou le déplacement n'a pas lieu. Pas de troisième branche où l'on s'en souviendra. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_015F7G5VeaPVSMeVNjiGj36p
This commit is contained in:
parent
002ecc639b
commit
0b8264ab04
27
AGENTS.md
27
AGENTS.md
@ -869,6 +869,33 @@ Règles absolues :
|
||||
absent = aucun cycle ; `budget` absent = planification suspendue. Un zéro publié se lirait
|
||||
« exécuté, rien à faire ».
|
||||
|
||||
## UNE OBLIGATION QUI CHANGE DE MAISON AVEC L'APPELANT SE PERD
|
||||
|
||||
**Classe de défaut, pas incident** — nommée le 2026-09-08 en découpant le lot prévision PV.
|
||||
|
||||
Certaines obligations ne sont pas attachées à une **donnée**, mais à l'acte de **l'aller
|
||||
chercher** : l'attribution CC BY 4.0 d'une API suit **celui qui appelle**. Déplacer l'appel d'un
|
||||
dépôt à un autre déplace donc l'obligation — et si le dépôt d'arrivée ne la porte pas déjà, elle
|
||||
**disparaît sans que personne ne l'ait retirée**.
|
||||
|
||||
Ce qui rend la classe dangereuse : **le déplacement lui-même est invisible**. On discute d'un
|
||||
découpage de responsabilités, on tranche sur des arguments d'architecture — couplage, cadence,
|
||||
mode dégradé — et l'obligation voyage en silence dans les bagages. Aucun test ne la vérifie,
|
||||
aucune revue de code ne la voit, et le manquement se constate dans un dépôt **publié**.
|
||||
|
||||
Même famille : les licences des dépendances, les mentions de brevet, les conditions d'usage
|
||||
d'une API, et toute condition attachée à un **acte** plutôt qu'à un **fichier**.
|
||||
|
||||
> **La question à poser à chaque déplacement de responsabilité** : *cet acte porte-t-il une
|
||||
> obligation, et le dépôt d'arrivée l'écrit-il déjà ?* Deux issues seulement — elle est écrite à
|
||||
> l'arrivée, ou le déplacement n'a pas lieu. **Il n'y a pas de troisième branche où l'on s'en
|
||||
> souviendra plus tard.**
|
||||
|
||||
*(Cas fondateur : faire appeler l'API Open-Meteo par `ems` aurait fait atterrir l'attribution
|
||||
dans un dépôt GPL publié qui ne l'écrit nulle part. Le découpage retenu — l'appel reste chez
|
||||
l'intégration — fait **disparaître** le problème au lieu de le gérer, ce qui est toujours la
|
||||
meilleure des deux façons de le fermer.)*
|
||||
|
||||
## `setChargingInfo()` DÉCLENCHE UN CYCLE — donc ce qui l'entoure a un ordre
|
||||
|
||||
**`SmartChargingManager::setChargingInfo()` appelle `update()` avant de rendre la main**
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user