Vai al contenuto principale

Panoramica

Quando Devin tiene traccia di una pull request, monitora i commenti in arrivo e risponde automaticamente. Per impostazione predefinita, Devin ignora i commenti degli utenti bot (come github-actions[bot], dependabot[bot] o bot di code review) per evitare loop di feedback infiniti. La funzionalità Autofix settings - bot comments ti consente di controllare questo comportamento, in modo che Devin possa rispondere automaticamente ai commenti dei bot di cui ti fidi. Si tratta di un’impostazione a livello di organizzazione che si applica a tutte le sessioni di Devin all’interno della tua organizzazione.

Dove trovarla

Vai su Settings > Customization > Pull request settings > Autofix settings - bot comments.
Solo gli amministratori dell’organizzazione possono modificare questa impostazione.

Modalità disponibili

Non rispondere ai commenti dei bot (predefinito)

Devin ignora tutti i commenti degli utenti bot sulle pull request (PR). Questa è l’opzione più sicura ed elimina qualsiasi rischio di cicli infiniti tra Devin e altri strumenti automatizzati.

Rispondi a tutti i commenti dei bot

Devin tratta i commenti dei bot esattamente come quelli umani e li elabora tutti.
Questa modalità può causare cicli infiniti con bot automatici di revisione del codice. Ad esempio, se un bot di code review commenta su una pull request (PR) di Devin, Devin risponde con una modifica al codice e il bot commenta di nuovo, il ciclo può ripetersi indefinitamente. Usa questa modalità solo se sei certo che i tuoi bot non genereranno cicli di feedback.

Rispondi solo a bot specifici

Puoi fornire un’allowlist di nomi utente dei bot a cui Devin deve rispondere. Devin elabora i commenti di quei bot e ignora tutti gli altri. Questa è l’opzione consigliata per la maggior parte dei team perché offre un controllo preciso. Per aggiungere un bot all’allowlist:
  1. Seleziona Rispondi solo a bot specifici dal menu a discesa.
  2. Inserisci il nome utente GitHub del bot nel campo di input (ad es. github-actions[bot]).
  3. Fai clic su Add.
I nomi utente dei bot in genere terminano con [bot]. Puoi trovare il nome utente di un bot guardando chi ha scritto il commento sulla tua pull request. Per rimuovere un bot, fai clic sul pulsante × accanto al suo nome nell’allowlist.
La corrispondenza dei nomi utente dei bot non distingue tra maiuscole e minuscole, quindi GitHub-Actions[bot] e github-actions[bot] sono trattati allo stesso modo.

Come funziona in fase di esecuzione

Quando un bot lascia un commento su una PR che Devin sta monitorando, Devin controlla le impostazioni per i commenti dei bot della tua organizzazione:
  1. La modalità è “none” — il commento viene ignorato.
  2. La modalità è “allowlist” — il nome utente del bot viene confrontato con la tua allowlist. Se corrisponde, Devin elabora il commento. In caso contrario, viene ignorato.
  3. La modalità è “all” — il commento viene elaborato.
Se il commento supera il filtro dei bot, viene comunque sottoposto agli altri controlli di elaborazione dei commenti di Devin (come l’impostazione mention-only e la casella di controllo per il monitoraggio dei commenti sulla PR).
I commenti dei bot relativi a errori di lint (contenenti “lint check failed”) vengono sempre elaborati, indipendentemente da questa impostazione, così Devin può sempre rispondere agli errori di CI.

Casi d’uso comuni

  • Bot di CI: Consenti al tuo bot di CI di collaborare con Devin, in modo che possa correggere automaticamente errori di linting, errori nei test o problemi di build segnalati dalla pipeline.
  • Scanner di sicurezza: Consenti al tuo bot di scansione di sicurezza di collaborare con Devin, in modo che possa gestire direttamente le segnalazioni di vulnerabilità.
  • Strumenti di qualità del codice: Consenti a bot come SonarQube o Codacy di collaborare con Devin, in modo che possa rispondere ai feedback sulla qualità del codice.

Interazione con Devin Review

Devin Review pubblica commenti sulle PR come devin-ai-integration[bot]. Poiché si tratta di un account bot, i suoi commenti sono soggetti alle impostazioni dei commenti dei bot. Con la modalità predefinita (“Non rispondere ai commenti dei bot”), le sessioni di Devin non agiranno automaticamente in base alle segnalazioni di Devin Review. Se vuoi che Devin risolva automaticamente i problemi segnalati da Devin Review, puoi:
  • Impostare la modalità su “Rispondi solo a bot specifici” e aggiungere devin-ai-integration[bot] all’allowlist.
  • Impostare la modalità su “Rispondi a tutti i commenti dei bot”.
I commenti di riepilogo “No Issues Found” di Devin Review vengono sempre ignorati indipendentemente da questa impostazione — vengono prese in considerazione solo i commenti che riportano risultati effettivi.

Interazione con la modalità solo menzioni

Se hai abilitato l’impostazione “Rispondi solo ai commenti PR che menzionano Devin”, anche i commenti del bot devono menzionare Devin (iniziare con DevinAI o @devin) per essere elaborati. Il filtro dei commenti del bot viene eseguito per primo e poi viene applicato il filtro della modalità solo menzioni.

Suggerimenti

  • Inizia con “Rispondi solo a bot specifici” e aggiungi i bot uno alla volta. In questo modo puoi verificare che ogni bot interagisca correttamente con Devin prima di aggiungerne altri.
  • Se noti loop imprevisti, torna a “Non rispondere ai commenti dei bot” per interromperli immediatamente.
  • Gli utenti bot sono identificati dal loro tipo utente GitHub (Bot), non dal loro username. Gli utenti umani con [bot] nel nome non sono soggetti a questa impostazione.