Bootstrap está fallando con este error:
PG::UndefinedTable: ERROR: la relación "ai_agent_mcp_servers" no existe
Bootstrap está fallando con este error:
PG::UndefinedTable: ERROR: la relación "ai_agent_mcp_servers" no existe
Así que aquí llega un informe de errores que escribió ask.discourse.com, pero primero, quiero compartir este fragmento que ofreció:
Decidí dejarlo tal cual, sin hacerlo “directo y breve”.
(No me reí en el suelo, pero sí, de verdad, me reí a carcajadas.
Esto parece un informe creíble y probablemente mejor del que yo habría escrito.
Aquí tienes un informe de errores conciso que puedes publicar en Meta:
Tras actualizar, el arranque falla durante `db:migrate` con:
```text
PG::UndefinedTable: ERROR: relation "ai_agent_mcp_servers" does not exist
La migración que falla es:
/plugins/discourse-ai/db/migrate/20260319070000_add_selected_tool_names_to_ai_agent_mcp_servers.rb
Parece que esta migración intenta agregar una columna a ai_agent_mcp_servers antes de que exista esa tabla.
Parte relevante del registro:
== 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
Esto parece ser un problema de ordenamiento de migraciones en discourse-ai, o una migración anterior faltante que debería crear ai_agent_mcp_servers.
Entorno:
bundle exec rake db:migratediscourse-citationwizard y discourse-prometheusInforme completo / registros:
Error de arranque: la relación “ai_agent_mcp_servers” no existe
Tenía que saber cómo sonaría. . . .
Claro, aquí tienes una versión más en estilo pfaffman:
Esto parece un error de migración de `discourse-ai`.
Bootstrap falla en:
```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
Es decir, esa migración intenta modificar una tabla que aún no se ha creado.
Registro relevante:
== 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
Parece que o bien:
ai_agent_mcp_servers falta o no se está detectando.Informe original y registros completos:
Error de Bootstrap: la relación “ai_agent_mcp_servers” no existe
Si lo deseas, también puedo hacerlo aún más conciso/sarcástico.
Estas parecen estar en el orden correcto…
¿Ves alguna evidencia en los registros de que la primera se haya ejecutado?
(De paso, prefiero tu informe original escrito por humanos en el OP. Se apega a los hechos y no llega a conclusiones potencialmente incorrectas)
Aha. Esto es lo que sucedió. Parece que se debe a que ambos usamos IA y es tonta y perezosa. Una explicación alternativa es que fue mala suerte, pero parece que Claude (eso es lo que yo usé) no obtiene una marca de tiempo (NO ESTÁ BIEN, Claude), sino solo una marca de fecha y luego añade un contador, así que ambos estábamos trabajando el mismo día.
Aquí están las últimas migraciones que se ejecutaron:
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 **********
Y discourse-citationwizard (que soporta https://www.citationwizard.net/, una herramienta de citas/referencias para académicos) realizó una migración el mismo día. Pensé que esa migración parecía sospechosa, pero no tenía idea de que habría implicaciones como estas…
Así es por lo que plugins/discourse-ai/db/migrate/20260319000001_create_ai_agent_mcp_servers.rb no puede ejecutarse.
Y tuve la mala suerte de que mi migración se ejecutó primero (es más fácil cambiar mi código que el tuyo). Ahora estoy intentando ver si puedo renombrar mis migraciones en la tabla de migraciones…
![]()
Tenemos esta instrucción en AI-AGENTS.md:
Pero supongo que la está ignorando ![]()
@sam, ¿usaste alguna habilidad o prompt específico para realizar estas migraciones de discourse-ai? Si podemos intentar usar marcas de tiempo reales en lugar de números sospechosamente específicos que terminan en 0000, eso ayudaría mucho a evitar colisiones ![]()
¡Y ejecuté esto desde tu repositorio para aprovechar tu superior conocimiento en IA! Y ahora tengo la razón al saber que un equipo de expertos no puede hacer nada mejor que yo.
Así que, sí, Claude, ¿POR QUÉ NO USAR GENERATE MIGRATION?!?!?!
Cambie la versión de la migración en la base de datos de esta manera:
UPDATE schema_migrations
SET version = '20260319001231'
WHERE version = '20260319000001';
Y renombré la migración en mi plugin para que coincidiera. ¡Eso solucionó el problema!
Podría culparme por no extraer de la rama principal de Discourse tan a menudo como debería, pero fue el mismo día, así que incluso si lo hubiera hecho todos los días, no habría servido de nada. Supongo que debería extraer de la rama principal y ejecutar las migraciones una vez más antes de subir los cambios, quizás. Pero no permitiré que una migración como esta vuelva a ocurrir.
Muchas gracias por tu ayuda. Este fue definitivamente un caso límite extraño que nunca habría sucedido si no estuviéramos ambos usando IA el mismo día.