Pega tu GraphQL roto a la izquierda y haz clic en "¡¡Reparar GraphQL!!" para arreglarloPega GraphQL roto

¿Qué es el Reparador de GraphQL?

Si alguna vez has pegado un esquema de GraphQL en una herramienta y te ha devuelto Syntax Error: Expected ":", found Name, o has visto fallar un diff del Schema Registry porque a alguien se le olvidó un dos puntos tras un nombre de campo, ya conoces el dolor. SDL no perdona — basta un signo de puntuación de menos para que el documento entero se niegue a parsearse. Esta herramienta repara las roturas más comunes: dos puntos faltantes tras los nombres de campo, campos duplicados dentro de un type, llaves desbalanceadas, comas sueltas, referencias a escalares mal escritas. Pega el esquema roto en el editor de la izquierda, pulsa el botón verde ¡¡Reparar GraphQL!!, y a la derecha aparece un SDL limpio.

La reparación sigue la especificación de GraphQL de octubre de 2021 en cuanto a la gramática de tipos, campos y argumentos. La gramática es pequeña pero estricta — consulta la guía oficial de Schemas y Types para ver el conjunto completo de reglas. El reparador normaliza la estructura sin tocar tus nombres de campo, tipos ni directivas, así que el diff contra tu registry queda limpio. Si quieres una verificación adicional del resultado, pásalo por el validador de la documentación de esquema de Apollo Server o por el parser de referencia incluido en graphql-js.

El esquema se envía a un pequeño servicio de IA al que se le ha indicado que repare solo la sintaxis — nunca que invente, renombre o elimine campos. El SDL reparado vuelve como texto plano, listo para pegar en tu proyecto. No registramos nada en nuestro lado.

Cómo usar el Reparador de GraphQL

Tres pasos. Cada uno usa los botones reales de esta página.

1

Pega un SDL roto o carga el ejemplo

Suelta tu SDL de GraphQL roto en el editor de la izquierda. Pulsa GraphQL de ejemplo para cargar un esquema Order/Customer roto a propósito con el tipo de errores que esta herramienta resuelve — dos puntos faltantes, un campo duplicado, una llave de cierre sin par.

type Order {
  id: ID!
  placedAt DateTime!
  total Money!
}

El reparador no inventa campos que tú no escribiste. Solo repara la sintaxis que la gramática de GraphQL rechaza. Para convenciones de nombres y diseño por encima de la sintaxis válida, vale la pena leer la guía de buenas prácticas de GraphQL.

2

Haz clic en ¡¡Reparar GraphQL!!

Pulsa el botón verde. El reparador lee el SDL roto, identifica los errores estructurales y de puntuación, y reescribe el documento. Aparece un indicador de carga mientras trabaja. Ambos editores usan resaltado de sintaxis SDL para que puedas comparar antes y después uno al lado del otro.

3

Copia el esquema saneado

El panel de la derecha muestra el SDL reparado. Los nombres de campo, tipos, descripciones y directivas no cambian — solo se corrigen los errores de sintaxis. Copia la salida y pégala en tu archivo schema.graphql o en tu registry.

Cuándo lo usarías de verdad

Limpiar esquemas editados a mano

¿Editaste un schema.graphql grande a mano y te comiste un dos puntos entre placedAt y DateTime!? El mensaje de error solo dice "Expected :" con un número de línea. El reparador devuelve el dos puntos a su sitio sin que tengas que ir campo por campo.

Arreglar SDL generado por IA

Le pediste a un LLM que escribiera un esquema para una funcionalidad nueva y te ha devuelto un campo duplicado, una coma donde debería haber una llave y un { sin pareja. Falla típica. Pégalo, pulsa Reparar y obtienes un esquema parseable sin reescribirlo.

Recuperar esquemas de logs

¿Sacaste un fragmento de SDL de una línea de log donde estaba envuelto en escapes o le habían quitado los saltos de línea? El reparador normaliza la estructura para que el esquema recuperado vuelva a parsearse de verdad.

Verificación previa al Schema Registry

Antes de subir un cambio a un registry federado, pasa el SDL por el reparador para cazar los fallos de puntuación que bloquearían el diff. Te ahorras un viaje de ida y vuelta con el registry rechazando la subida.

Preguntas frecuentes

¿Qué tipos de errores arregla?

Dos puntos faltantes entre un nombre de campo y su tipo (la rotura más común), campos duplicados dentro de un mismo type, llaves de cierre faltantes o sobrantes, comas sueltas en input objects y corchetes desparejados en list types. No inventa campos, tipos ni argumentos — solo repara la sintaxis que el parser rechaza.

¿Cambia los nombres de mis campos o tipos?

No. Los nombres de campo, escalares, tipos, descripciones y directivas pasan tal cual. El reparador solo toca la sintaxis estructural — los nombres que escribiste se quedan exactamente como los escribiste.

¿Soporta escalares y directivas personalizadas?

Sí. scalar Money, scalar DateTime, directivas personalizadas @auth o @deprecated — todo se conserva. El reparador no valida que un escalar personalizado esté registrado en tu servidor, solo que el SDL parse.

¿Y los subgrafos federados (Apollo Federation)?

Las directivas de federación (@key, @external, @requires) pasan intactas. El reparador es puramente una capa de reparación de sintaxis — no ejecuta la composición de federación. Pasa la salida saneada por el paso de composición de tu registry después.

¿Mi esquema se envía a un servidor?

Sí — la reparación corre en un pequeño servicio de backend porque el modelo de lenguaje vive allí. No registramos la entrada y la respuesta vuelve directamente a tu navegador. Hay un límite de 64 KB por petición.

¿Producirá siempre un esquema parseable?

Para las roturas comunes descritas arriba, sí. Si a la entrada le falta tanta estructura que la intención original es ambigua (por ejemplo, el cuerpo entero de un type borrado), la salida puede señalar un error en lugar de adivinar. En ese caso, arregla el hueco evidente a mano y vuelve a pasar el resultado.

Otras herramientas de GraphQL

Reparar es una parte de un flujo de trabajo de GraphQL. Estas herramientas cubren el resto: