Quality regression: generated visualizations are subpar and broken
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 35/100
- Issue type
- Bug
- Clarity
- Needs clarification
- Activity status
- Quiet
- Tech stack
- three.js, typescript
- Domain
- ai, data-visualization
Research direction
Start by reviewing the agent system prompt, the widget renderer import map, and the LangGraph/CopilotKit setup around langchain_openai.ChatOpenAI. Compare the attached .chalk HTML outputs across models and broader visualization prompts, then determine whether prompt guidance, few-shot examples, or model changes address the regression. Done means the cause is identified and a reproducible quality improvement is demonstrated.
Written by the indexing model from the issue text.
Description
Problem
The quality of generated visualizations from the deployed agent has degraded. The same prompt ("sphere icosahedron morph") produces broken or low-quality outputs across multiple attempts.
Evidence
Two downloaded outputs from the same prompt attached as .html files in .chalk/:
Attempt 1 — CSS 3D divs (sphere-icosahedron-morph (1).html)
- Uses 20
<div>elements with CSStransform-style: preserve-3dandclip-pathtransitions - No WebGL / Three.js despite it being available via the import map
- Hover interaction conflicts with the CSS spin animation (
style.animation = 'none'vs CSSanimation: spin 10s) - The morph is cosmetic — just toggling
border-radius: 50%↔clip-path: polygon()on flat divs - Faces positioned via manual JS math that approximates 3D but doesn't actually render proper geometry
Attempt 2 — Canvas 2D fake 3D (sphere-icosahedron-morph.html)
- Uses
canvas.getContext('2d')instead of WebGL - Sphere is just a radial gradient circle, not actual geometry
- Icosahedron faces are projected triangles drawn with
ctx.moveTo/lineTo— no real lighting - Uses
color-mix()CSS which has mixed browser support - The "morph" is interpolating between a gradient blob and wireframe triangles — visually unconvincing
What a good output would look like
- Use Three.js (available in the import map at
https://esm.sh/three) - Proper
IcosahedronGeometrywithMeshStandardMaterialor custom shaders - Real WebGL lighting and smooth vertex-level morphing between sphere and icosahedron
- Orbit controls or smooth auto-rotation
Possible causes
- Model regression — GPT-5.4 (
gpt-5.4-2026-03-05) may be producing lower-quality code for complex 3D visualizations compared to earlier versions - System prompt lacks quality guidance — The current prompt mentions
widgetRenderercapabilities but doesn't guide the model toward using Three.js/WebGL for 3D content, or set quality expectations for interactive visualizations - No few-shot examples — The agent has no reference for what "good" output looks like, so it falls back to simpler CSS/Canvas approaches
Suggested investigation
- Compare output quality between GPT-5.4 and other models (e.g. Claude) for the same prompts
- Add quality guidance to the system prompt (e.g. "For 3D visualizations, use Three.js from the import map")
- Consider adding few-shot examples of high-quality widget HTML in the agent skills
- Test a broader set of prompts to determine if regression is model-wide or specific to 3D content
Environment
- Model:
gpt-5.4-2026-03-05vialangchain_openai.ChatOpenAI - Agent: LangGraph with CopilotKit middleware
- Widget renderer: sandboxed iframe with import map (Three.js, GSAP, D3, Chart.js available)
- Dominant language
- TypeScript
- Stars
- 1.6k
- Forks
- 202
- PR merge metrics
- No merged PRs in 30d
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from CopilotKit/OpenGenerativeUI
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
enhancement
Difficulty 2/5 1-3 hours Newbie friendliness 72/100
-
Difficulty 4/5 3-5 days Newbie friendliness 48/100
CopilotKit/OpenGenerativeUI#87 · 2 comments ·
-
Difficulty 5/5 Over a week Newbie friendliness 35/100
-
Difficulty 4/5 3-5 days Newbie friendliness 45/100
All issues in CopilotKit/OpenGenerativeUI
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
safetrustcr/dApp-SafeTrust#426 ·
-
area:workflow bug ready-for-agent
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
fil-donadoni/tolaria#4409 ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
Fission-AI/OpenSpec#1960 ·
-
Add dependabot Open
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
corsairdev/corsair#1764 ·