Il bootstrap sta fallendo con questo errore:
PG::UndefinedTable: ERRORE: la relazione "ai_agent_mcp_servers" non esiste
Il bootstrap sta fallendo con questo errore:
PG::UndefinedTable: ERRORE: la relazione "ai_agent_mcp_servers" non esiste
Quindi, ecco un rapporto di bug scritto da ask.discourse.com, ma prima voglio condividere questo estratto che ha proposto:
Ho deciso di lasciarlo com’è, senza renderlo “brusco e conciso”.
(Non sono caduto a terra, ma ho davvero riso a voce alta.
Sembra un rapporto credibile e probabilmente migliore di quello che avrei scritto io.
Ecco un rapporto di bug conciso che puoi pubblicare su Meta:
Dopo l'aggiornamento, bootstrap fallisce durante `db:migrate` con:
```text
PG::UndefinedTable: ERROR: relation "ai_agent_mcp_servers" does not exist
La migrazione che fallisce è:
/plugins/discourse-ai/db/migrate/20260319070000_add_selected_tool_names_to_ai_agent_mcp_servers.rb
Sembra che questa migrazione tenti di aggiungere una colonna a ai_agent_mcp_servers prima che quella tabella esista.
Parte rilevante del log:
== 20260319070000 AddSelectedToolNamesToAiAgentMcpServers: migrating ==========
PG::UndefinedTable: ERROR: relation "ai_agent_mcp_servers" does not exist
...
/var/www/discourse/plugins/discourse-ai/db/migrate/20260319070000_add_selected_tool_names_to_ai_agent_mcp_servers.rb:5
Questo sembra un problema di ordinamento delle migrazioni in discourse-ai, o una migrazione precedente mancante che dovrebbe creare ai_agent_mcp_servers.
Ambiente:
bundle exec rake db:migratediscourse-citationwizard e discourse-prometheusRapporto completo / log:
Errore di bootstrap: la relazione “ai_agent_mcp_servers” non esiste
Dovevo sapere come avrei suonato. . . .
Certamente — ecco una versione più in stile pfaffman:
Sembra un bug di migrazione di `discourse-ai`.
Bootstrap fallisce in:
```text
/plugins/discourse-ai/db/migrate/20260319070000_add_selected_tool_names_to_ai_agent_mcp_servers.rb
con:
PG::UndefinedTable: ERROR: relation "ai_agent_mcp_servers" does not exist
Quindi quella migrazione sta cercando di modificare una tabella che non è stata ancora creata.
Log rilevante:
== 20260319070000 AddSelectedToolNamesToAiAgentMcpServers: migrating ==========
PG::UndefinedTable: ERROR: relation "ai_agent_mcp_servers" does not exist
...
/var/www/discourse/plugins/discourse-ai/db/migrate/20260319070000_add_selected_tool_names_to_ai_agent_mcp_servers.rb:5
Sembra che o:
ai_agent_mcp_servers manchi o non venga rilevata.Segnalazione originale e log completi:
Errore di bootstrap: la relazione “ai_agent_mcp_servers” non esiste
Se vuoi, posso renderla ancora più sintetica e sarcastica.
Queste sembrano essere nell’ordine corretto…
Hai riscontrato qualche evidenza nei log che la prima sia stata eseguita?
(FWIW, preferisco il tuo rapporto originale scritto da una persona nel primo messaggio. Si attiene ai fatti e non trae conclusioni potenzialmente errate)
Aha. Ecco cosa è successo. Sembra che sia colpa nostra, dato che abbiamo entrambi usato un’AI, ed è stupida e pigra. Un’alternativa sarebbe la sfortuna, ma sembra che Claude (quello che ho usato io) non riceva un timestamp (MA NON È ACCETTABILE, Claude), ma solo una data e poi aggiunge un contatore, quindi entrambi stavamo lavorando lo stesso giorno.
Ecco le ultime migrazioni eseguite:
up 20260316000001 Create discourse citationwizard openalex api keys
up 20260316000002 Create discourse citationwizard api key daily snapshots
up 20260316071735 Rename automation api key scope resource
up 20260316071736 Rename ai api key scope resource
up 20260316071737 Rename data explorer api key scope resource
up 20260319000000 ********** NO FILE **********
up 20260319000001 Create discourse citationwizard user lookup events
up 20260319000002 Create discourse citationwizard citation wizard sessions
up 20260319033623 ********** NO FILE **********
up 20260319055039 ********** NO FILE **********
E discourse-citationwizard (che supporta https://www.citationwizard.net/, uno strumento di citazione/riferimento per accademici) ha creato una migrazione lo stesso giorno. Pensavo che quella migrazione fosse sospetta, ma non immaginavo che avrebbe avuto conseguenze del genere…
Ecco perché plugins/discourse-ai/db/migrate/20260319000001_create_ai_agent_mcp_servers.rb non può essere eseguita.
E ho avuto la sfortuna che la mia migrazione sia stata eseguita per prima (è più facile modificare il mio codice che il tuo). Sto cercando ora di vedere se posso rinominare le mie migrazioni nella tabella delle migrazioni…
![]()
Abbiamo questa istruzione in AI-AGENTS.md:
Ma immagino la stia ignorando ![]()
@sam hai usato qualche skill/prompt specifico per queste migrazioni di discourse-ai? Se potessimo provare a usare timestamp reali invece di numeri sospettosamente specifici che terminano con 0000, ci aiuterebbe davvero a evitare collisioni ![]()
E ho eseguito questo comando direttamente dal tuo repository per sfruttare la tua superiore conoscenza dell’IA. E ora sono stato vindicato nel sapere che un team di esperti non può fare meglio di me!
Quindi, sì, Claude, PERCHÉ NON USARE GENERATE MIGRATION!?!?!?
Ho modificato la versione della migrazione nel database in questo modo:
UPDATE schema_migrations
SET version = '20260319001231'
WHERE version = '20260319000001';
E ho rinominato la migrazione nel mio plugin per farla corrispondere. Ha funzionato!
Potrei dare la colpa a me stesso per non aver fatto pull dal ramo main di Discourse abbastanza spesso, ma era lo stesso giorno, quindi anche se lo avessi fatto ogni giorno, non avrebbe aiutato. Immagino che dovrei fare pull da main ed eseguire le migrazioni un’ultima volta prima di fare push, forse. Ma non permetterò che una migrazione del genere si ripeta.
Grazie mille per il tuo aiuto. È stato decisamente un caso limite strano che non si sarebbe mai verificato se non avessimo entrambi utilizzato l’IA lo stesso giorno.