Your LLM Can Return Perfect JSON and Still Be Completely Wrong

Most developers (including me) assumed one thing when Structured Outputs became available:

If my JSON validates against the schema, my extraction is correct.

Unfortunately, that's not true.

After spending the last few months building ShapeCraft, a structured output library for Node.js that works across OpenAI, Claude, Ollama, and Groq, I realized something important: