Skip to content

Fix SupportOps reliability and improve support workflows#16

Merged
sonnymay merged 5 commits into
mainfrom
agent/supportops-reliability
Jul 17, 2026
Merged

Fix SupportOps reliability and improve support workflows#16
sonnymay merged 5 commits into
mainfrom
agent/supportops-reliability

Conversation

@sonnymay

@sonnymay sonnymay commented Jul 16, 2026

Copy link
Copy Markdown
Owner

What changed

  • catch Supabase connection and timeout failures before they escape as raw 500 responses
  • return controlled 503 responses with retry guidance when the data service is unavailable
  • add a daily dependency health check that wakes Render and performs a real Supabase query
  • improve frontend API errors, loading states, responsive navigation, forms, tables, and status badges
  • add ticket search across ticket, customer, and device data
  • add status and priority filters with live result counts and useful empty states
  • add customer search across name, email, phone, and company
  • add device search across serial number, model, product type, and customer
  • add RMA search plus shipping and resolution workflow filters
  • preserve live RMA workflow values in edit forms and filters
  • show inline validation and API failures for ticket, customer, device, RMA, delete, detail, and note actions
  • disable action controls while saves are in progress to prevent duplicate requests
  • add regression tests for network timeouts and API 503 behavior
  • document the dependency health endpoint and keepalive workflow

Root cause

The Supabase project had been auto-paused for inactivity. Requests could also fail before the existing response handler ran, so connection-level timeouts surfaced as unhandled 500 errors. This made the frontend appear unusable even though the Render process itself was healthy.

Several mutation handlers also awaited API calls without catching failures. A failed create, update, delete, or note request could therefore appear to do nothing.

Impact

SupportOps now fails clearly during dependency outages, remains usable on narrow screens, supports faster ticket and inventory triage, reports action failures in context, and receives a daily real-database health check to prevent the same inactivity pause from recurring.

Validation

  • backend: 32 tests passed
  • Ruff check and format check passed
  • mypy passed
  • frontend ESLint passed
  • Vite production build passed
  • Playwright verified dashboard, ticket list, ticket detail, new-ticket form, customer search, device search, combined RMA search/status filtering, inline validation, and 390px mobile layouts
  • browser console reported zero errors
  • live /health, /health/dependencies, /dashboard, /customers, /tickets, /devices, and /rmas all returned HTTP 200 after Supabase recovery

@vercel

vercel Bot commented Jul 16, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
supportops Ready Ready Preview, Comment Jul 17, 2026 4:49pm

@sonnymay sonnymay changed the title Fix SupportOps reliability and mobile usability Fix SupportOps reliability and improve support workflows Jul 16, 2026
@sonnymay sonnymay closed this Jul 16, 2026
@sonnymay sonnymay reopened this Jul 16, 2026
@sonnymay sonnymay closed this Jul 16, 2026
@sonnymay sonnymay reopened this Jul 16, 2026
@sonnymay
sonnymay marked this pull request as ready for review July 17, 2026 21:12
@sonnymay
sonnymay merged commit 88dcfec into main Jul 17, 2026
7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant