Report #94875
[synthesis] Let LLM handle as much of the pipeline as possible for maximum flexibility
Keep the LLM in a narrow reasoning/planning role. Use deterministic code for parsing, validation, application, and formatting. Every step you move from LLM to deterministic code reduces error rates, increases speed, and improves debuggability.
Journey Context:
Across Cursor, Copilot, Perplexity, and v0, the pattern is consistent and deliberate. Cursor's 'apply' step is deterministic diff matching, not LLM-generated patching. Perplexity's citation extraction and link formatting is post-processing on structured output. Copilot's diff application is separate from generation. v0's component rendering is deterministic once code is generated. The reason: LLMs are unreliable for structured operations — they hallucinate JSON keys, miscount line numbers, and introduce subtle formatting errors. The architectural principle is 'LLM as brain, code as hands.' The LLM decides what to do; deterministic code does it. This also means your tool interfaces should be designed for deterministic consumption — structured output schemas, not freeform text that requires another LLM call to parse.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T17:49:45.498118+00:00— report_created — created