R2: git = source de vérité — src/nodes/ + build/extract intégrés au push
- src/nodes/*.js (6 nodes + template snapshot) = source de vérité unique. - n8n-push.mjs reconstruit le JSON depuis src/ avant syntaxe+golden+PUT (src gagne toujours; n8n-extract.mjs pour resynchroniser si édition UI). - n8n-build.mjs --check pour vérifier la synchro. - Copies historiques déplacées dans archive/ (mortes, dérivées de la prod). - .gitignore: backups locaux de rollback. - AGENTS.md: règle R2 pour toutes les futures sessions (dont Qwen local). - Validé: idempotence, mutation/restauration, pipeline push complet en réel.
This commit is contained in:
81
archive/agents.old
Normal file
81
archive/agents.old
Normal file
@@ -0,0 +1,81 @@
|
||||
# RÈGLES OPÉRATIONNELLES (à respecter absolument)
|
||||
|
||||
## Outils — INTERDICTIONS STRICTES
|
||||
- N'utilise JAMAIS `curl`, `wget`, `fetch` ou tout appel HTTP direct vers
|
||||
Home Assistant, n8n, Victron ou l'onduleur. Ces accès passent EXCLUSIVEMENT
|
||||
par les outils MCP.
|
||||
- N'invente JAMAIS d'URL, d'IP (ex: 192.168.x.x) ni de token. Si une info
|
||||
te manque, utilise l'outil MCP prévu ou demande-la. Ne devine pas.
|
||||
- N'invente JAMAIS de nom d'outil. Les noms exacts, à recopier tels quels :
|
||||
- `ha-get-state` (lire un état Home Assistant)
|
||||
- `ha-set-helper` (écrire un helper HA)
|
||||
- `grid-set-state` (piloter le grid)
|
||||
- `victron-set-charge-limits` (limites de charge Victron)
|
||||
- `pv-get-forecast` (prévision solaire)
|
||||
- `n8n-mcp` (workflows n8n)
|
||||
⚠️ Ce sont des TIRETS (-), jamais des underscores (_).
|
||||
|
||||
## Méthode de travail
|
||||
- Avant TOUTE écriture (PUT/patch/set), fais d'abord un backup ou un dry-run.
|
||||
- Sur un workflow n8n : lis l'état → propose le patch → attends validation → applique.
|
||||
- Une seule action à la fois. Vérifie le résultat avant l'action suivante.
|
||||
- Ne pars pas en boucle : si un outil échoue 2 fois, ARRÊTE et explique le
|
||||
blocage au lieu de réessayer indéfiniment.
|
||||
|
||||
## Domaine
|
||||
- Toutes les valeurs d'énergie (SOC, PV, charge maison, grid, courant EVCS)
|
||||
se lisent via `ha-get-state`, jamais en dur ni par curl.
|
||||
- Le pilotage EVCS/grid/Victron passe par les outils MCP correspondants.
|
||||
|
||||
EVCS Workflow Analysis
|
||||
|
||||
## Workflow Mechanism Analysis
|
||||
|
||||
### Energy Context Monitoring
|
||||
- Tracks battery SOC, PV power, house load, grid power, and EVCS current
|
||||
- Monitors vehicle connection status
|
||||
- Continuously evaluates energy balance
|
||||
|
||||
### Decision Logic
|
||||
- Primary decision: "stop_not_connected" when vehicle is not connected
|
||||
- Secondary decisions based on energy context (night_hc, day_hc)
|
||||
- Source authorization: "Bloqué" (Blocked) when conditions aren't met
|
||||
|
||||
### Control Flow
|
||||
- Surplus controller active but only manages surplus when vehicle is connected
|
||||
- Grid power used when solar is unavailable and house needs must be met
|
||||
- Manual mode allows override of automated decisions
|
||||
|
||||
### State Transitions
|
||||
- Vehicle connection status triggers different control paths
|
||||
- Energy context changes trigger different strategies
|
||||
- User interventions (manual mode) can override automated decisions
|
||||
|
||||
## Situational Framework
|
||||
|
||||
| Situation | Vehicle Status | Solar Power | House Load | Grid Power | EVCS Current | Decision Logic |
|
||||
Control Action |
|
||||
|---------|----------------|------------|-----------|------------|--------------|----------------|------------
|
||||
----|
|
||||
| No Vehicle, No Solar | Disconnected | 0 W | 696 W | ON | 0 A | stop_not_connected | Grid powers house |
|
||||
| No Vehicle, Solar | Disconnected | 683 W | 696 W | OFF | 0 A | stop_not_connected | Solar powers house |
|
||||
| Vehicle Connected, No Solar | Connected | 0 W | 696 W | ON | 0 A | auto_solar_plus | Grid powers house,
|
||||
EVCS idle |
|
||||
| Vehicle Connected, Solar | Connected | 683 W | 696 W | OFF | 0 A | auto_solar_plus | Solar powers house,
|
||||
EVCS idle |
|
||||
| Vehicle Connected, High Demand | Connected | 0 W | 1000 W | ON | 7 A | auto_solar_plus | Grid powers house,
|
||||
EVCS charges |
|
||||
| Manual Override | Any | Any | Any | Any | Any | Stop | Manual control |
|
||||
|
||||
## Key Insights
|
||||
1. The system prioritizes grid power for house needs when solar is unavailable
|
||||
2. The "stop_not_connected" logic prevents EV charging but doesn't manage grid power
|
||||
3. The surplus controller only activates when vehicle is connected and there's surplus energy
|
||||
4. Manual mode allows complete override of automated decisions
|
||||
|
||||
## Recommendations
|
||||
1. Create a rule to disable grid power when no vehicle is connected and solar is unavailable
|
||||
2. Implement a "low energy" mode that prioritizes battery charging over grid power
|
||||
3. Add a "maintenance" mode that allows manual control of all systems
|
||||
4. Create a monitoring dashboard to track energy flows in real-time
|
||||
|
||||
Reference in New Issue
Block a user