diff --git a/.planning/phases/01-core-generation-pipeline/01-CONTEXT.md b/.planning/phases/01-core-generation-pipeline/01-CONTEXT.md
new file mode 100644
index 0000000..5dafb26
--- /dev/null
+++ b/.planning/phases/01-core-generation-pipeline/01-CONTEXT.md
@@ -0,0 +1,73 @@
+# Phase 1: Core Generation Pipeline - Context
+
+**Gathered:** 2026-03-08
+**Status:** Ready for planning
+
+
+## Phase Boundary
+
+Pipeline end-to-end che genera 13 caroselli Instagram con distribuzione Persuasion Nurturing + livelli Schwartz, e produce CSV per Canva Bulk Create. Include Web UI con form di generazione, progress indicator, anteprima output con navigazione slide, e download CSV. Deployata su VPS come single container FastAPI + React SPA su `https://lab.mlhub.it/postgenerator/`.
+
+
+
+
+## Implementation Decisions
+
+### Struttura carosello Canva
+- Numero slide variabile per tipo post (non fisso) — il numero cambia in base al tipo Persuasion Nurturing (es. valore puo' avere piu' slide di promo)
+- Claude sceglie i nomi placeholder Canva Bulk Create — l'utente creera' il template Canva dopo, basandosi sullo schema CSV prodotto
+- Claude decide la struttura immagini per slide (quali slide hanno campo immagine) in base a best practice Instagram carousels
+- Il CSV include una colonna caption Instagram con testo post + hashtag, generata dall'LLM insieme al contenuto slide
+
+### Form di generazione
+- Input guidato con default intelligenti: obiettivo campagna + settimane obbligatori, opzionalmente nicchia, tono di voce, nome brand
+- Campi opzionali hanno default ragionevoli se non compilati
+- Claude API key configurata una volta nella pagina Impostazioni, non nel form di generazione
+- Pulsante "Genera" disabilitato se API key non configurata, con messaggio che rimanda a Impostazioni
+
+### Anteprima e review output
+- Layout griglia di card per i 13 post generati
+- Ogni card mostra badge colorati con tipo Persuasion Nurturing (es. "Valore", "Storytelling") e livello Schwartz
+- Click su card per espandere e vedere le slide
+- Navigazione slide con frecce laterali (stile Instagram stories preview)
+- Caption Instagram visibile sotto le slide nell'espansione
+- Edit inline del testo: click su testo slide per modificarlo, le modifiche si riflettono nel CSV scaricato
+
+### Gestione errori e risultati parziali
+- Post falliti mostrati come card errore con icona, messaggio breve, e pulsante "Riprova" per rigenerare quel singolo post
+- CSV scaricato esclude i post falliti — solo post generati con successo (se 2 su 13 falliscono, CSV ha 11 righe)
+- Per-item error isolation: un fallimento API non blocca il batch
+
+### Claude's Discretion
+- Nomi esatti dei placeholder Canva (colonne CSV)
+- Numero slide specifico per ogni tipo Persuasion Nurturing
+- Quali slide hanno campo immagine e quali no
+- Numero di post: fisso 13 o configurabile — Claude sceglie l'approccio piu' pragmatico per MVP
+- Form "Genera Singolo Post": form separato o azione dal calendario — Claude sceglie il flusso piu' naturale
+- Design UI generale (colori, spacing, tipografia)
+- Loading skeleton e progress indicator design
+- Struttura file-based storage
+
+
+
+
+## Specific Ideas
+
+- Griglia card con badge strategici colorati — l'utente vuole vedere a colpo d'occhio la distribuzione PN e Schwartz
+- Navigazione slide stile Instagram stories (frecce laterali) — familiare per chi lavora con Instagram
+- Edit inline prima del download — l'utente vuole poter correggere piccoli dettagli senza rigenerare
+- Caption Instagram nel CSV e nell'anteprima — il workflow e' "genera tutto, rivedi, scarica, importa in Canva, posta"
+
+
+
+
+## Deferred Ideas
+
+None — discussion stayed within phase scope
+
+
+
+---
+
+*Phase: 01-core-generation-pipeline*
+*Context gathered: 2026-03-08*