Day 2 UI v2 - Live Interactive Canvas Checkpoint
Date: 2026-06-08
Scope
- Replaced the static Stage 1 canvas with a live in-memory canvas app.
- Added click-to-create idea frames with editable idea cards and Proceed actions.
- Added a named Gradio API bridge so browser-side canvas state calls the validated Python MiniCPM engine without moving model logic into JavaScript.
- Added live pressure cards, next-iteration cards, multiple independent frames, zoom controls, wheel zoom, and drag panning.
- Kept the validated engine logic unchanged.
Screenshot
Desktop screenshot:
docs/validation/day2-v2-live-interactive.png
Checkpoints
- Click-to-create + type + Proceed + live model response: passed.
- Browser smoke created Frame 1, typed a tool-rental idea, clicked Proceed, showed a pending MiniCPM card, and rendered a returned Reality Contact pressure from the local MiniCPM endpoint.
- Iteration stacking: passed.
- Browser smoke typed an Idea v2 refinement, clicked Proceed again, and rendered a second live MiniCPM pressure card at Real Actor depth.
- Multiple frames + zoom/pan: passed.
- Browser smoke created a second independent frame, used zoom controls, and drag-panned without accidentally creating extra frames.
Validation
python3 -m unittest discover -s testspassed.python3 -m compileall iris tests app.pypassed.git diff --checkpassed.- Browser smoke passed at
http://127.0.0.1:7860using local MiniCPM through Ollama athttp://localhost:11434/v1. - Final smoke metrics: 2 frames, 2 live AI pressure cards, 4 idea cards, no old circle/electron labels, no page-level horizontal overflow.
Result
Iris UI v2 now satisfies the live canvas flow: empty canvas to independent idea frames, real MiniCPM pressure cards, stacked iterations, and zoom/pan.