> ## Documentation Index
> Fetch the complete documentation index at: https://docs.uselemma.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Issues

> Recurring failure patterns Lemma detects from trace evidence

An issue is a group of occurrences: a durable failure pattern that Lemma infers from trace evidence, where each occurrence is one time that pattern showed up in a specific trace. See [Concepts](/platform/concepts) for how these nouns relate. Open **Issues** in a project in the [Lemma dashboard](https://platform.uselemma.ai) to triage them.

<Frame>
  <img src="https://mintcdn.com/lemma/MIn-cLOqO8pw0wFX/images/platform/issues-workspace.png?fit=max&auto=format&n=MIn-cLOqO8pw0wFX&q=85&s=a7696c330ce9151ce3cb69b6e19072bc" alt="Issues table grouped by agent, showing signals, occurrence counts, assignee, status, and last seen" width="2750" height="1644" data-path="images/platform/issues-workspace.png" />
</Frame>

You don't write assertions for this to work: Lemma analyzes traces and groups repeated evidence into issues on its own. See [Concepts](/platform/concepts) for how that detection and grouping work, and why both are probabilistic. Alerting follows this issue lifecycle through [Slack](/connections/slack) and [webhooks](/connections/webhooks).

## Issue versus occurrence

One issue can have many occurrences across many traces. Opening an issue shows the rationale behind it, its category, priority signals, linked traces, and available actions. Opening a trace instead shows you whether that specific run is an occurrence of one or more issues.

## Status

| Status        | Meaning                                              |
| ------------- | ---------------------------------------------------- |
| `open`        | Active; nobody is working it yet                     |
| `in_progress` | Active; someone is working it                        |
| `resolved`    | Terminal: you believe the underlying defect is fixed |
| `dismissed`   | Terminal: not a real problem, or not worth tracking  |

`resolved` and `dismissed` are mutually exclusive, and if two people act on the same issue at once, whichever transition commits first wins.

Matching evidence can reopen a resolved issue, but never reopens a dismissed one, and reopening an issue manually doesn't by itself change a linked Linear ticket; see [Linear](/connections/linear) for how those stay in sync. You can also flag an issue for review, assign it to a Lemma member, and add tags. Assignment inside Lemma doesn't write to Linear unless you create a ticket and choose combined assignment.

## Priority and grouping

Priority comes from recurrence and impact measured across your whole population of issues, things like volume and spikes, not from a threshold you configure on a monitor. Treat it as a triage hint rather than a guarantee.

Grouping aims for one issue per underlying defect, but it isn't perfect. If two issues look like the same bug, check their occurrences rather than assuming Lemma missed an obvious merge; grouping gets revised as more traces arrive.

## Investigating an issue

1. Filter the issues table by status, agent, assignee, flagged state, or search term.
2. Open the issue and read why Lemma flagged it.
3. Open the supporting traces and review both the conversation and the execution tree.
4. Ask **[Inspect](/platform/inspect)** why it fired, what scenarios triggered it, and how to fix it.
5. Export it as markdown through `GET /issues/{id}/markdown` or the UI equivalent, to paste into a ticket or hand to a coding agent.
6. Resolve or dismiss it, and add feedback if the finding was wrong so future extraction can learn from it.

## Workflow connections

Each connection reports on the issue lifecycle in a different way:

* **[Slack](/connections/slack)**: issue alerts and Issue Briefs sent to a project channel
* **[Linear](/connections/linear)**: an optional one-to-one ticket link that you create, exact-link, or unlink explicitly
* **[MCP Server](/connections/mcp)**: lets coding agents list and act on issues with a project API key
* **[Webhooks](/connections/webhooks)**: `issue.created`, `issue.resolved`, `issue.dismissed`, and `issue.reopened` events

Connecting Slack or Linear never auto-creates a ticket, and recurrence never creates a new one either.

## Related pages

<CardGroup cols={2}>
  <Card title="Concepts" href="/platform/concepts">
    How traces, occurrences, and issues relate.
  </Card>

  <Card title="Traces" href="/platform/traces">
    Open the supporting executions for an issue.
  </Card>

  <Card title="Inspect" href="/platform/inspect">
    Ask why an issue was flagged and how to fix it.
  </Card>

  <Card title="Artifacts" href="/platform/artifacts">
    Agent context that can sharpen detection.
  </Card>

  <Card title="Slack" href="/connections/slack">
    Issue alerts and Issue Briefs in your workspace.
  </Card>
</CardGroup>
