Notification Bell: Failed Pipeline Visibility
Notification Bell: Failed Pipeline Visibility
The notification bell in the SaaS Factory dashboard surfaces failed pipelines so that issues are immediately visible without navigating to the pipeline list. This page describes how the bell currently works, its known limitations, and what improvements are planned.
How It Works
The notification bell polls for failed pipelines on a 30-second interval. On each tick it fetches up to 20 pipelines with status = 'failed' and displays them in a slide-out sheet. A red badge on the bell icon shows the total count of fetched failures.
Poll interval : 30 seconds
Max results : 20 pipelines
Filter : status = 'failed'
Sort : most recent first
Reading the Badge Count
The number shown in the red badge equals the number of failed pipelines returned by the most recent poll — up to 20. Because there is no read/seen state tracked, the badge count does not decrease after you open the notification sheet and review the entries. It will remain at N until the underlying pipelines are fixed (or the product is removed).
Opening the Notification Sheet
- Click the bell icon in the top navigation bar.
- A sheet slides in from the right listing each failed pipeline with its product name, pipeline ID, and failure timestamp.
- Click any entry to navigate directly to the pipeline detail page.
- Use the View all approvals link in the sheet footer to go to the full approvals queue.
Known Limitations
Stale Failures Remain Visible
Failed pipelines are not filtered by age. A pipeline that failed months ago and was never fixed will continue to appear in the list and contribute to the badge count for as long as it exists in the database. If a product accumulates more than 20 unresolved failures, only the 20 most recent are shown.
No Dismiss or Mark-as-Read
There is currently no way to dismiss an individual notification or mark the entire list as read. The only way to remove a failure from the bell is to either:
- Fix the pipeline so it transitions out of
failedstatus, or - Delete the pipeline (or the product).
Badge Resets Only on Poll
The badge count updates every 30 seconds. After fixing a pipeline, the badge will not drop immediately — it will update on the next poll cycle.
Planned Improvements
The following changes are planned to address these limitations:
| Improvement | Description |
|---|---|
lastViewedAt tracking | Store the timestamp of the user's last bell-open in localStorage or as a server-side preference. Pipelines older than lastViewedAt will not count toward the badge or appear in the list after being seen. |
| Dismiss all / Mark all read | A new action in the sheet footer (next to View all approvals) to clear all current notifications in one click. |
| 7-day age filter | Limit the query to pipelines that failed within the last 7 days, preventing indefinitely stale failures from cluttering the list. |
Resolving a Failed Pipeline
Clicking a notification entry takes you to the pipeline detail page where you can:
- Review the failure logs and error output.
- Trigger a retry to re-run the pipeline.
- Open the associated PR or feature ticket for investigation.
Once a pipeline moves out of failed status it will no longer appear in the notification bell on the next poll.