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

# Dashboard

> Your real-time risk intelligence overview — KPI tiles, issue-volume heatmap, pattern cluster graph, predictions, live activity, and model accuracy.

The Dashboard is the first screen you see after signing in. It gives you an at-a-glance picture of your workspace's health: how many issues are active, which patterns carry the highest risk, what the AI predicts is coming next, and what has been happening in the last few minutes.

The page refreshes automatically every 60 seconds. A **STREAM CONNECTED** indicator in the top bar confirms that live events are flowing.

## Running an analysis

The **Run analysis** button in the top bar triggers a fresh AI analysis pass over your workspace's open issues. Use it after ingesting a batch of new events or when you want an updated risk snapshot.

## KPI tiles

Metric tiles appear across the top of the dashboard. Each tile shows the current value, the change from the previous window, a trend direction, and a mini sparkline.

| Tile                             | What it measures                                                                                                                                                                                                    |
| -------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **Open issues**                  | Issues not yet in a terminal status (`resolved` or `won't fix`)                                                                                                                                                     |
| **Active patterns**              | Patterns in `active` or `emerging` status                                                                                                                                                                           |
| **High-probability predictions** | Predictions with probability ≥ 80 %                                                                                                                                                                                 |
| **Avg risk score**               | Mean risk score across active patterns                                                                                                                                                                              |
| **MTTR**                         | Median time to resolve an issue, in days                                                                                                                                                                            |
| **Loops prevented**              | Patterns moved to `resolved` in the current window                                                                                                                                                                  |
| **Open loops**                   | Patterns not yet resolved (`status != "resolved"`)                                                                                                                                                                  |
| **At-risk areas**                | Patterns whose latest prediction shows real recurrence risk (`p_recurrence ≥ 0.5`) or an active crest alert                                                                                                         |
| **Loops broken**                 | Same population as **Loops prevented**, exposed under its spec-canonical key                                                                                                                                        |
| **Open exposure**                | Sum of the cost-of-inaction (`impact_ledger.cost_of_inaction_cents`) across open loops that have one — a point-in-time snapshot, so its sparkline is honestly empty (no per-day series exists for a snapshot total) |

Use the window selector (7 d / 30 d / 90 d) to change the comparison period. The delta on each tile reflects the change from the previous window of the same length.

<Note>
  Every tile is computed from stored data — there is no synthetic fallback. A tile with no real per-day signal to chart (for example **Prediction precision**, which is one scalar per backtest, or **Connector health**, a live snapshot) renders an honestly empty sparkline (`[]`) rather than a fabricated curve. A metric that depends on a backtest that has never run (e.g. `prediction_precision`, `lead_time_days`) renders `value: null` until one exists.
</Note>

The backing endpoint is `GET /v1/dashboard/kpis?window=30d`. See the [API reference](/api-reference/overview) for the full response schema.

## Interactive chart

Below the tiles, an interactive time-series chart plots one metric over the selected window. Click a point to see its exact value and date in a tooltip. Use the arrow keys when the chart is focused to step through data points.

Available metrics include issue volume, pattern risk trend, and resolution rate. The chart data comes from `GET /v1/dashboard/charts/{metric}`.

## Risk heatmap

The risk heatmap shows issue volume by **day of week × hour of day** (UTC). Darker cells indicate higher issue density. Use it to spot when your systems are most prone to failures — for example, every Monday morning after a weekend deploy.

The backing endpoint is `GET /v1/dashboard/risk-heatmap`. A window with no real issues in range returns an honestly empty grid rather than a placeholder matrix.

## Portfolio risk forecast

`GET /v1/dashboard/forecast` returns a workspace-wide risk forecast: real observed event counts for the trailing half of the window, and a projected Λ(t) curve for the remainder — summed across every pattern in scope's stored hazard fit, anchored to the most recent real event rather than wall-clock "now". Triggers mark patterns with an active crest alert.

<Note>
  When no pattern in scope has a hazard fit yet (or the scope has no event data at all), the response returns an empty `points` list plus a `reason: "no_event_data"` — never a fabricated curve.
</Note>

## Pattern cluster graph

The cluster graph visualises how patterns relate to each other. Each node is a pattern; node size reflects its risk score; edges connect patterns that share contributing factors or issue membership. Clusters — groups of tightly related patterns — are shown as color-coded regions.

<Tip>
  Click any node in the cluster graph to navigate directly to that pattern's detail page.
</Tip>

The graph data comes from `GET /v1/dashboard/cluster-graph`. You can also retrieve the full cluster list via `GET /v1/clusters`.

## Predictions — next incidents

A panel on the lower half of the dashboard surfaces the top upcoming incidents, projected from each pattern's fitted hazard model. Each row shows the pattern name, the recurrence probability, and the prediction window. The amber pill on the panel header counts how many predictions are currently active. Patterns whose hazard isn't fitted yet (too few events or missing timestamps) simply don't appear here — they aren't padded with placeholder predictions.

Click **Apply playbook** on a high-confidence prediction to navigate to its [recommendation](/product-guide/recommendations) and act before the incident occurs.

## Live activity feed

The **Live activity** panel streams workspace events in real time. Each row shows the timestamp and a human-readable description of what happened — new issues ingested, analyses completed, patterns matched, recommendations generated.

Events are fetched from `GET /v1/dashboard/activity` and filter by `type` prefix (for example, `issue.` or `prediction.`).

## Model accuracy

The **Model accuracy** card shows how well the prediction engine is performing:

| Metric          | Meaning                                                      |
| --------------- | ------------------------------------------------------------ |
| **Precision**   | Share of predicted incidents that actually occurred          |
| **Recall**      | Share of actual incidents the model predicted                |
| **Brier score** | Probability calibration error (lower is better; 0 = perfect) |
| **Lead time**   | Average days of advance warning the model provides           |

These figures come from `GET /v1/dashboard/model-accuracy`, which is itself derived from `GET /v1/predictions/accuracy` — computed from backtests only. Until at least one backtest has run (`POST /v1/predictions/backtests`), the card shows an honest empty state (`no_backtest_yet`) rather than placeholder numbers.

## Mobile view

On screens 640 px wide and below, the dashboard switches to a condensed layout. The top bar shows your organisation name and a notification bell. Three compact KPI tiles (Active, P1 loops, Precision) appear below. The most critical open prediction is highlighted in an alert card with quick-action buttons.

## Related pages

<CardGroup cols={2}>
  <Card title="Issues" icon="circle-exclamation" href="/product-guide/issues">
    Drill into the issues behind your KPI tiles.
  </Card>

  <Card title="Patterns" icon="diagram-project" href="/product-guide/patterns">
    Explore the recurring patterns driving your risk score.
  </Card>

  <Card title="Predictions" icon="chart-line" href="/product-guide/predictions">
    Review all active predictions and model accuracy details.
  </Card>

  <Card title="Recommendations" icon="lightbulb" href="/product-guide/recommendations">
    Act on the AI's suggested fixes.
  </Card>
</CardGroup>
