modulo 02 / lezione 09

Anatomia del prompt operativo

Vincoli: file ammessi, dipendenze, pattern, divieti

Esplicitare i confini del task così che il modello non riempia i vuoti con assunzioni proprie.

60 min Prompt Engineering

Vincoli: file ammessi, dipendenze, pattern, divieti

I vincoli dicono al modello dove può muoversi. Senza vincoli, un LLM tende a completare il task nel modo che gli sembra più plausibile: può aggiungere dipendenze, cambiare file fuori scope, introdurre pattern non usati dal progetto o risolvere un problema piccolo con un refactor enorme.

Perché questa lezione conta

Nel lavoro reale il codice non vive in un foglio bianco. Esistono confini tecnici, economici e organizzativi:

  • file che non vanno toccati;
  • dipendenze vietate;
  • compatibilità con deploy e runtime;
  • convenzioni di stile;
  • sicurezza minima;
  • accessibilità;
  • performance;
  • debito tecnico da non ampliare.

Un prompt professionale deve esplicitare questi confini.

Tipi di vincoli

File ammessi e vietati

Specificare il perimetro evita modifiche laterali.

Puoi modificare solo:
- src/data/promptEngineering.ts
- src/pages/laboratorio/prompt-engineering.astro
- src/content/lezioni/prompt-engineering/*.md

Non modificare:
- astro.config.mjs
- public/_redirects
- layout globali

Questa sezione è essenziale quando lavori con agenti multi-file.

Dipendenze

Un modello può proporre librerie utili ma non necessarie. Per un sito statico o un progetto con deploy conservativo, una dipendenza nuova ha costo di manutenzione, sicurezza e build.

Non aggiungere dipendenze.
Se pensi che una dipendenza sia necessaria, fermati e motiva prima di modificare package.json.

Pattern e convenzioni

Il modello deve sapere se esistono pattern locali da rispettare:

  • data file invece di query runtime;
  • Markdown per contenuti;
  • componenti Astro già presenti;
  • naming degli slug;
  • struttura dei moduli;
  • stile dei test.

Non basta dire “segui il progetto”: meglio indicare il pattern preciso.

Divieti espliciti

I divieti sono utili quando il modello tende spesso a fare una cosa sbagliata:

Non fare refactor non richiesti.
Non cambiare firme pubbliche.
Non aggiungere console.log.
Non modificare routing o redirect.
Non creare nuove astrazioni se basta modificare il data file.

Esempio operativo

Prompt senza vincoli:

Aggiungi una sezione al corso e sistema le lezioni.

Prompt con vincoli:

Obiettivo:
Aggiungi un modulo finale al corso Prompt Engineering.

Vincoli:
- mantieni output statico Astro;
- non cambiare slug delle lezioni esistenti;
- non modificare routing, redirect o configurazione deploy LiteSpeed;
- non aggiungere dipendenze;
- aggiorna solo data file, pagina corso e Markdown delle nuove lezioni;
- dopo la modifica esegui `npm run build`.

Formato risposta:
- elenco file modificati;
- numero moduli/lezioni finali;
- verifica eseguita;
- rischi residui.

Laboratorio guidato

Prendi un prompt già usato per generare o modificare codice. Aggiungi un blocco vincoli con questa struttura:

CategoriaVincolo
File ammessi
File vietati
Dipendenze
Pattern da rispettare
Sicurezza/privacy
Performance/deploy
Refactor vietati
Verifica obbligatoria

Esegui il prompt prima e dopo l’aggiunta dei vincoli. Confronta il diff: meno file toccati? meno soluzioni creative? meno assunzioni?

Output atteso

Un elenco di vincoli ricorrenti che vivono in un file di regole del progetto, non nei singoli prompt.

Esempio:

Vincoli ricorrenti del progetto:
- output statico, compatibile con LiteSpeed;
- nessuna dipendenza senza approvazione;
- contenuti corso in Markdown;
- slug stabili;
- build obbligatoria prima di chiudere.

Checklist di verifica

  • il prompt indica cosa si può modificare;
  • il prompt indica cosa non si può modificare;
  • dipendenze e pattern sono espliciti;
  • i vincoli non contraddicono l’obiettivo;
  • i vincoli più ricorrenti sono documentati nel progetto.

Errori comuni

Vincoli troppo generici. “Scrivi codice pulito” non limita nulla. “Non cambiare comportamento pubblico” è un vincolo.

Divieti senza criterio. Vietare tutto blocca il lavoro. I vincoli devono proteggere rischio reale.

Vincoli dimenticati nei prompt successivi. Se un vincolo ricorre, spostalo in un file di regole versionato.

Collegamenti

  • Modulo: Anatomia del prompt operativo — lezione 9 del corso.
  • Lezione precedente: Obiettivo: una cosa, verbo-oggetto-criterio.
  • Prossima lezione: Formato e verifiche: come parlare al modello dell’output.