orto-skills/orto-suite/orto-meteo-decisioni/SKILL.md

278 lines
9.3 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

---
name: orto-meteo-decisioni
description: Analizzare previsione meteo e generare modifiche task operativi (aggiustamenti irrigazione, reschedule task, alert). Usare quando: (1) ottenere previsione 7-giorni per localizzazione orto, (2) calcolare precipitazione effettiva e deficit idrico, (3) decidere skip/delay irrigazione basato su pioggia, vento, gelo, caldo, (4) taggare task calendario per reschedule meteo-driven. Output: Briefing meteo settimanale (markdown) con decisioni irrigazione specifiche zona, raccomandazioni reschedule task, alert gelo/caldo/vento.
---
# Orto Meteo Decisioni — Decisioni Operative Basate su Meteo
Ottenere previsione meteo, calcolare bilancio acqua, generare aggiustamenti irrigazione e raccomandazioni reschedule task.
## Quando Usare Questa Skill
- **Settimanale:** Ogni lunedì, generare brief meteo per settimana avanti
- **Task critico:** Prima di trapianto, trattamenti, o operazioni alto-fabbisogno-acqua
- **Scheduling adattivo:** Real-time O lookahead 7-giorni (no, non intra-gg)
- **Integrazione:** Link con orto-calendario (task meteo_defer), orto-irrigazione (decisioni zona)
## Processo
### Fase 1: Ottieni Previsione Meteo
**Fonte dati:** wttr.in (o open-meteo fallback, no API key richiesta)
**Periodo previsione:** 7 giorni avanti (Lunedì-Domenica)
**Estrarre:**
- Tmax, Tmin giornalieri
- Precipitazione (mm, probabilità)
- Velocità vento (kn)
- Umidità relativa (%)
- Rischio gelo (T < 0°C notti)
### Fase 2: Calcola Bilancio Acqua per Zona
**Per ogni zona, computare:**
```
Precipitazione effettiva (mm) = Precip_mm × 0.85 (fattore infiltrazione suolo)
Deficit idrico (mm) = Zona_classe_acqua_bisogno_giornaliero (mm) - Precip_effettiva (mm)
Regola decisione:
SE Precip_effettiva >= 70% bisogno zona:
→ SALTA irrigazione (pioggia sufficiente)
→ Ritarda 24-48h se pioggia durante ore applicazione
SE PURE Precip_effettiva >= 30%:
→ RIDUCI runtime 30-50%
SE NO:
→ MANTIENI baseline O aumenta (alert caldo)
```
### Fase 3: Valuta Fattori Rischio
| Fattore | Threshold | Azione |
|--------|-----------|--------|
| **Gelo** | T < 0°C notte | Alert; differisci trapianto delicato +3-7 gg; irriga mattina (proteggi radici) |
| **Stress caldo** | T > 35°C gg | Forza irrigazione (priorità su previsione pioggia); aumenta frequenza |
| **Vento** | > 5 kn | Differisci spray fogliari, trapianto (piante stress); riduci irrigazione sprinkler |
| **Vento forte** | > 8 kn | DIFFERISCI trapianto critico, trattamenti |
| **Pioggia forte** | > 20mm/24h | Alert rischio inondazione (esp. se drenaggio scarso); controlla campo |
| **Grandine** | Alert grandine | Stop irrigazione immediato; valuta danni post-grandine |
### Fase 4: Genera Brief Settimanale
**Output:** `dati/meteo/dati_meteo_giornalieri.md`
```markdown
# Meteo Brief — Week [WK] ([DATE_RANGE]) — [ORTO_ID]
**Location:** [PROVINCIA], [REGIONE], [LAT], [LON]
**Zone climatica:** [ZONE]
**Data forecast:** [RETRIEVED_DATE]
---
## Riepilogo Settimanale
| Giorno | Tmax | Tmin | Precip (mm) | Vento (kn) | Allerta |
|--------|------|------|-------------|-----------|---------|
| Lun | 22 | 14 | 0 | 3 | ✓ OK |
| Mar | 24 | 15 | 2 | 4 | ✓ OK |
| Mer | 20 | 12 | 8 | 5 | ⚠️ VENTO |
| Gio | 19 | 10 | 12 | 2 | ✓ OK (pioggia) |
| Ven | 23 | 13 | 0 | 3 | ✓ OK |
| Sab | 26 | 16 | 0 | 4 | ✓ OK |
| Dom | 28 | 18 | 1 | 6 | ⚠️ CALDO + VENTO |
**Tendenza:** Instabile martedì-giovedì (pioggia intermittente), then dry + warm weekend
---
## Decisioni per Zone Irrigue
### ZONA ALTA (A1 — Pomodoro, Basilico)
**Baseline:** Daily 7am + 5pm, 60 min each (summer schedule)
**Meteo-adjusted schedule:**
| Giorno | Baseline | Precip | Effective | Decision | New Schedule | Nota |
|--------|----------|--------|-----------|----------|--------------|------|
| Lun | 7am+5pm | 0 mm | 0 mm | Irrigate full | 7am 60min, 5pm 60min | ✓ |
| Mar | 7am+5pm | 2 mm | 1.7 mm | Irrigate reduced | 7am 45min, skip 5pm | Pioggia leggera |
| Mer | SKIP | 8 mm | 6.8 mm | **SKIP** | **SKIP** | Vento 5kn (no spray) |
| Gio | SKIP | 12 mm | 10.2 mm | **SKIP** | **SKIP** | Pioggia adeguata, vento cala |
| Ven | 7am+5pm | 0 mm | 0 mm | Irrigate full | 7am 60min, 5pm 60min | Post-pioggia, recuperare |
| Sab | 7am+5pm | 0 mm | 0 mm | Irrigate full | 7am 60min, 5pm 60min | ✓ |
| Dom | 7am+5pm | 1 mm | 0.85 mm | 🔥 CALDO ALERT | 6am 80min, 5pm 80min | T > 28°C, vento 6kn (monitor) |
**Summary:**
- **Water saved Wed-Thu:** 240 min (pioggia sufficient)
- **Water added Dom:** +40 min (heat stress override)
- **Vento impact:** Mer risky (defer), Dom monitor
---
### ZONA MEDIA (A2 — Cavolo, Lattuga)
**Baseline:** 3-4x/week, 40-50 min per session
**Decision:** Baseline ridotto mercoledì (pioggia). Giovedì skip. Normale altri giorni.
---
### ZONA BASSA (A3 — Carota, Cipolla)
**Baseline:** 2-3x/week, 20-30 min (low water need)
**Decision:** Skip Wed-Thu (pioggia sufficiente). Cipolla in maturazione → ulteriore riduzione (evitare marciume).
---
## Riprogrammazione Task (Meteo-Sensitive Calendar)
**Calendar reference:** `dati/calendario/calendario_operativo.md`
### ⚠️ TASK CRITICA QUESTA SETTIMANA
**[Se presente] Task 16.1 — Trapianto Pomodoro**
Original date: Martedì (19 Apr)
**Meteo check:** Vento martedì 4 kn (OK), mercoledì 5 kn (borderline)
**Decision:** PROCEED martedì (vento tollerabile). Proteggere piantine da vento (wind break se needed).
**If trapianto fosse mercoledì:** RINVIARE +2 gg (vento 5+ kn non ideale; piante freshe soffrono)
---
### Task con meteo-tag METEO_DEFER
| Task | Scheduled | Meteo Issue | Action |
|------|-----------|-------------|--------|
| Trattamento fogliare (se presente) | Mercoledì | Vento > 5 kn | RINVIARE Venerdì |
| Concimazione (se presente) | Mercoledì | Pioggia imminente | POSTPONE Giovedì post-pioggia |
---
### Task con meteo-tag METEO_SKIP (None per questa settimana)
---
## Allerte Importanti
### 🟡 ATTENZIONE VENTO (Mercoledì)
**Vento 5 kn mercoledì.**
- NO trattamenti fogliari (spray non effective, drift)
- NO trapianti se piantine sensibili
- Irrigazione: Preferire goccia a spray
- Consiglio: Posticipare attività outdoor critiche
---
### 🔥 ALLERTA CALDO (Domenica)
**T max 28°C, possibile > 30°C domenica.**
- **Irrigazione:** Aumentate di +30% (heat stress override)
- **Mulching:** Check pacciamatura è adequata
- **Ombra:** Se lattuga estiva in bolognaise, aumentate copertura
- **Orario:** Irrigare presto mattina (6am) + sera (6pm), evitare ore 12-15 (radiazione massima)
---
### ✅ OK — Pioggia Prevista (Gio)
**Pioggia 12 mm giovedì** → SKIP irrigazione
- Effective rainfall ~10 mm (copre 70% zone MEDIA/ALTA)
- Opportunità: Ridurre pressione sull'acqua
- Nota: Post-pioggia (venerdì), monitorare marciume se drenaggio scadente
---
## Consigli Operative
**Lunedì:**
- [ ] Mantenere irrigazione baseline (niente pioggia)
- [ ] Check manometro pressione sistema
- [ ] Preparare strumenti (se trattamento necessario venerdì)
**Martedì:**
- [ ] Monitorare vento (possibile irrigazione ridotta se >5kn)
- [ ] Irrigazione 7am + 5pm (schedule normale)
**Mercoledì:**
- [ ] **SKIP irrigazione** (pioggia + vento)
- [ ] NO trattamenti fogliari (vento)
- [ ] Monitorare pioggia cumulo (potrebbe meno di forecast)
**Giovedì:**
- [ ] **SKIP irrigazione** (pioggia adequate)
- [ ] Check drenaggio post-pioggia (evitare ristagno)
**Venerdì:**
- [ ] **Riprendere irrigazione** full (baseline restored)
- [ ] Eseguire trattamenti fogliare se posticipato mercoledì (condizioni OK)
- [ ] Monitorare umidità suolo sensore (dovrebbe calare post-pioggia)
**Sabato:**
- [ ] Irrigazione baseline (sole, no pioggia)
**Domenica:**
- [ ] **AUMENTATE IRRIGAZIONE** (caldo, 28°C+)
- [ ] Controllare temperature (T > 30°C = heat stress risk)
- [ ] Cercare ombra naturale per lattuga/cavolo
---
## Affidabilità Previsioni & Updates
**Confidence this forecast:** 0.82 (Day 1-3 high, Day 5-7 medium)
**Update schedule:**
- Monday 8am: Full 7-day
- Thursday 6pm: 2-day update (Fri-Sat precision)
- Real-time: Critical alerts (frost, hail, extreme wind)
**Source:** wttr.in (UK MetOffice data); fallback open-meteo (OM)
---
## Note Storiche (Opzionale)
*Campo tracking opzionale: Il meteo effettivo ha corrisposto alla previsione? Usare per calibrazione.*
- Scorsa settimana previsione pioggia Mer, effettiva Gio: errore -1 gg
- Margini confidenza migliorano con dati calibrazione
---
## Riferimenti
- `references/meteo_soglie.md` — Valori threshold completi (vento, pioggia, gelo, caldo, umidità), trigger operativi per reschedule
- `references/irrigazione_parametri.md` — Calcolo effective rainfall per decisioni irrigazione
- `references/calendario_it.md` — Date gelate regionali per frost alerts
## Assunzioni
1. Connessione internet disponibile (fetch meteo API)
2. Localizzazione orto lat/lon accuratamente registrata
3. Dati previsione sono rolling 7-giorni (refresh giornaliero)
4. Precipitazione effettiva = precip × 0.85 (fattore infiltrazione standard)
## Checklist Validazione
- ✓ Dati previsione recuperati e parsati
- ✓ Bilancio acqua calcolato per zona
- ✓ Raccomandazioni reschedule task coerenti con calendario
- ✓ Alert triggerati se threshold ecceduti (gelo, caldo, vento, pioggia)
- ✓ Markdown output azionabile (decisioni giornaliere chiare)
---
**Skill: orto-meteo-decisioni** | Versione 1.0 | Status: Pronto per Produzione