5d62003fe5
The session panel's header becomes two tabs, Changes and Preview. Preview shows a web page by address (Reload, Open in a browser tab, the workspace's ports as chips, last address per workspace) in an iframe on the page's own origin: http(s) only, no userinfo, never the dashboard's origin, no top navigation. One rule for every link (lib/openInPreview.ts): a chat or terminal link to localhost/127.0.0.1/0.0.0.0/[::1] opens in Preview while a session panel answers and the dashboard is on loopback; anything else, or a Ctrl/Cmd click, opens a browser tab as before.