Issues
Issues are the core unit of work in Sailfish. Issues primarily come from two sources: (1) customer reports flowing in from your CS platforms — auto-categorized or manually escalated as bugs — and (2) the in-app Report Issue modal. Sailfish correlates each report with the user's session data, groups related occurrences, and measures impact. The Issues page gives your team a single place to see every problem, understand its blast radius, and take action.
Issue List
The Issues page shows all detected issues for your application, with controls to find what matters most.
Filtering & Search
| Filter | Description |
|---|---|
| Severity | Filter by severity level (critical, high, medium, low) |
| Created by | Filter by source: CS tools (auto or manual escalation) or in-app Report Issue modal |
| Date range | Issues detected within a specific time window |
| Snoozed | Toggle visibility of snoozed issues |
| Has eng ticket | Filter to issues that have (or don't have) a linked Jira/Linear ticket |
Use the search bar to find issues by title or description.
Batch Actions
Select multiple issues to perform batch operations like Open in Desktop App, which launches the Sailfish Desktop App with all selected issues loaded for deep debugging.
Issue Detail
Click any issue to open its detail view. The issue detail page has four tabs, each providing a different perspective on the problem.
Home Tab
The Home tab is your overview. It shows:
- Summary cards — At-a-glance metrics including total occurrences, unique users affected, and time since first/last seen
- Occurrence chart — A time-series chart showing how often the issue occurs, broken down by device type (mobile vs. desktop). Toggle between Month, Week, Day, and Hour views to understand trending
- Recording occurrences — A list of individual sessions where this issue occurred, showing the user ID and timestamp for each. Click any occurrence to jump directly to that moment in the Recordings timeline
For Product and CS teams: The occurrence chart and affected users list are essential for understanding blast radius and prioritizing fixes. You can see exactly which customers hit the bug and when.
Engineering Packet Tab
The Engineering Packet tab provides the technical deep-dive that engineers need to debug the issue:
- Function spans — The call stack and execution trace leading to the error
- Logs — Console logs and application logs surrounding the error
- Exceptions — The exact error message, type, and stack trace
You can download the engineering packet data as JSONL or CSV for offline analysis or sharing with team members who don't have Sailfish access.
Occurrences Tab
The Occurrences tab shows a detailed time-series view of every occurrence of this issue. Use it to:
- Identify when the issue started (first occurrence)
- See if the issue is getting better or worse over time
- Correlate spikes with deployments or changes
- Break down occurrences by mobile vs. desktop to understand platform-specific impact
Timeline Tab
The Timeline tab shows the activity history for this issue — when it was created, status changes, comments, linked tickets, and any actions taken. This is your audit trail for issue lifecycle management.
Taking Action on Issues
From any issue, you can take several actions:
Create an Engineering Ticket
Click Create Ticket to generate a Jira, Linear, or Zendesk ticket directly from the issue. The ticket is pre-populated with:
- Issue title and description
- Occurrence count and affected user count
- A direct link back to the issue in Sailfish
- Priority mapping based on severity
Configure your ticketing integration in Engineering Systems.
Fix in Desktop App
Click Fix in Desktop App to open the issue directly in the Sailfish Desktop App debugger. This launches a sfveritas:// deep link that loads the issue with full debugging context — function traces, variable values, and the ability to step through execution.
Other Actions
| Action | Description |
|---|---|
| Snooze | Temporarily hide the issue for a set duration (1 day, 1 week, etc.). It reappears after the snooze period |
| Resolve | Mark the issue as resolved. If it recurs, it will automatically reopen |
| Follow | Subscribe to notifications for this issue |
| Generate test cases | Use AI to generate test cases that cover the failing scenario |
| Download spans | Export the function execution spans for offline analysis |