Files
Fusion 6ec35988cc feat(sessions): add stop confirmation, health checks, and tunnel recreation
- Add inline confirmation dialog before stopping instances
- Delete instances from state immediately without page reload
- Add health check polling every 30s for running instances
- Show tunnel error badge when tunnel is unreachable
- Add 'Fix Tunnel' button to recreate broken tunnels
- Update API client with health check and tunnel recreation endpoints
2026-05-20 16:49:31 +02:00

1.6 KiB

Why

The session management UI has critical UX and reliability issues that make it frustrating to use. Users can accidentally stop sessions without confirmation, deleted sessions remain visible until manual reload, and broken tunnels require full instance restart to fix. These bugs degrade the core user experience of the tool instance system.

What Changes

  • Add confirmation dialog for stopping sessions - Prevent accidental session stops with a "Are you sure?" dialog
  • Fix frontend state after session deletion - Update React state immediately when delete succeeds so the session disappears without reload
  • Add tunnel health monitoring - Periodically check if tunnel URLs respond with HTTP 200, mark as erroneous if not
  • Add "Recreate Tunnel" button - Allow users to regenerate a broken tunnel without restarting the entire instance
  • Display tunnel health status - Show visual indicator (error badge) when a tunnel is broken

Capabilities

New Capabilities

  • tunnel-health-monitoring: Background health checks for temporary Cloudflare tunnels with status indicators
  • session-lifecycle-ux: Improved session stop/delete interactions with confirmations and state updates

Modified Capabilities

  • tool-instances: Update instance model and API to support tunnel recreation without full restart

Impact

  • Frontend: sessions.tsx, instance-list.tsx, api/sessions.ts
  • Backend: tool_instances.py (tunnel recreation endpoint), docker.py (tunnel restart utility)
  • Database: No schema changes needed (existing tunnel_id and url fields reused)
  • Docker: No changes needed