Skip to content

Workflow Issues ​

Diagnosis and resolution guide for workflow execution, canvas rendering, and real-time streaming problems.


Workflow execution failures ​

Symptoms ​

  • Node stays in running state indefinitely
  • Node shows failed status
  • Workflow completes but output is empty

Root cause ​

Provider timeouts, invalid prompts, or missing parameters.

Diagnosis ​

  1. Click the failed node to see the error message
  2. Check the Run Log panel for detailed events
  3. Via CLI:
    bash
    lf execution inspect <run-id>

Fixes ​

ErrorFix
Missing parameter: [[topic]]Provide the root input before running
Model timeoutIncrease timeout in node settings; check provider status
Provider error: 429Rate limited; wait and retry
Provider error: 401Check API key for the assigned agent
Upstream node failedFix the upstream node first
Cycle detectedRemove the edge creating a loop

Prevention ​

  • Use dry run to validate before execution
  • Set reasonable timeouts (60–120s for complex prompts)
  • Configure retries (1–2) for transient errors

Canvas rendering bugs ​

Symptoms ​

  • Canvas is blank or shows a white screen
  • Nodes do not appear after adding
  • Edges disconnect visually but data is correct
  • Pan/zoom is jumpy or unresponsive

Root cause ​

React Flow rendering issues, stale state, or CSS conflicts.

Diagnosis ​

  1. Open browser DevTools → Console for errors
  2. Check for React errors (red error boundaries)
  3. Verify the workflow data loads in the Network tab

Fixes ​

  1. Refresh the page — stale React Flow state is the most common cause
  2. Clear browser cache:
    DevTools → Application → Clear site data
  3. Reset canvas view:
    • Press Ctrl/Cmd + Shift + F (fit to view)
    • If nodes are off-screen, this brings them back
  4. Disable browser extensions — ad blockers and privacy extensions can interfere with canvas rendering

Prevention ​

  • Use the latest browser version (Chrome, Firefox, Edge)
  • Avoid opening workflows with >100 nodes (performance degrades)

WebSocket / real-time issues ​

Symptoms ​

  • Execution status does not update in real time
  • Node status badges are stale
  • "Connection lost" banner appears

Root cause ​

WebSocket connection to Supabase Realtime dropped or blocked.

Diagnosis ​

  1. Open DevTools → Network → WS tab
  2. Look for WebSocket connections to realtime-*
  3. Check for connection close frames

Fixes ​

  1. Refresh the page to re-establish the WebSocket
  2. Check Supabase Realtime:
    bash
    pnpm supabase status
    # Realtime should show "running"
  3. Check firewall/proxy — WebSocket connections must be allowed on port 54321 (local) or 443 (production)
  4. Disable VPN — some VPNs block WebSocket upgrade requests

Prevention ​

  • The Supabase client auto-reconnects; avoid manually closing channels
  • Use supabase.channel(...).subscribe() for subscriptions (includes reconnect logic)

API rate limits ​

Symptoms ​

  • 429 Too Many Requests from the platform API
  • Workflows queue but do not execute
  • Error: Rate limit exceeded

Root cause ​

Too many concurrent requests to the platform API or AI provider.

Diagnosis ​

  1. Check the Retry-After header in the response
  2. Review execution logs for rate limit events
  3. Check provider dashboard for usage spikes

Fixes ​

  1. Wait and retry — respect the Retry-After header
  2. Reduce concurrency — run fewer parallel workflows
  3. Upgrade provider tier — higher rate limits with paid plans
  4. Set per-agent rate limits:
    bash
    lf lenser update <id> --rate-limit 30  # max 30 runs/hour

Prevention ​

  • Configure automatic retry with exponential backoff
  • Set budget and rate limits on agents before production use
  • Use queuing for batch workloads

Edge case: empty outputs ​

Symptoms ​

  • Workflow completes successfully but output is empty string
  • Result panel shows null or undefined

Root cause ​

Model returned an empty response, or output mapping is misconfigured.

Diagnosis ​

  1. Check the raw model response in the execution details
  2. Verify the edge mapping: source output key → target parameter name
  3. Check if the prompt is too vague or contradictory

Fixes ​

  1. Check the model response — if genuinely empty, improve the prompt
  2. Verify edge mapping — ensure output key matches (case-sensitive)
  3. Add a minimum output instruction to the prompt:
    Always provide at least one sentence as output, even if the input is unclear.

Next steps ​