Notifications
VigilQA delivers alerts through four channels: an in-app notification bell, email (SMTP), Slack webhooks, and generic HTTP webhooks. Each channel is independently configurable.
In-app notification bell
The notification bell in the top-right corner of the dashboard surfaces real-time alerts without requiring a page reload. It polls every 60 seconds and shows:
- An unread count badge that clears once you open the panel
- Type icons to distinguish run failures, regression alerts, approval requests, and pipeline completions
- Relative timestamps (e.g. "2 minutes ago") that update on each poll
Notifications are tracked per user — marking them as read on one browser session does not affect other team members' unread counts.
Notification channels
Email (SMTP)
Configure outbound email in Settings → Notifications → Email. VigilQA ships with Zoho SMTP defaults so you only need to supply credentials; swap in any SMTP provider by overriding the host, port, and TLS settings.
Required fields:
- SMTP host — e.g.
smtp.zoho.com - Port —
465(SSL) or587(STARTTLS) - Username and Password (or app-specific password)
- From address — the sender address recipients will see
Email settings can be overridden per product from Product Settings → Notifications, useful when different products have separate QA email aliases.
Slack
Connect a Slack workspace in Settings → Integrations → Slack. Configure per-channel routing:
- Run results →
#qa-runs - Regression alerts →
#eng-alerts - Approval queue updates →
#qa-approvals
Webhooks
Register a webhook URL in Settings → Integrations → Webhooks. VigilQA will POST a JSON payload to your URL for configured events. Useful for custom integrations (PagerDuty, custom dashboards, ChatOps bots).
Configurable notification events
- Run completed (pass) — run finished with all tests passing
- Run completed (fail) — run finished with one or more failures
- New regression detected — RegressionGuard identified new regressions
- Approval items pending — new scripts or patches waiting for review
- Approval rejected — an item you submitted was rejected (with comment)
- Generation pipeline completed — generation run finished
- Coverage gap warning — coverage drops below configured threshold
- Security finding — Critical or High severity finding detected
Webhook payload format
{
"event": "run.completed.failed",
"project": "myapp",
"run_id": "run_abc123",
"plan": "regression",
"environment": "staging",
"passed": 34,
"failed": 3,
"regression_guard_status": "regressions_detected",
"timestamp": "2025-11-15T14:23:01Z",
"dashboard_url": "https://app.sentinelflux.in/projects/myapp/runs/run_abc123"
}