> ## 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.

# Search & Activity

> Find any issue, pattern, prediction, or recommendation instantly with global search, and review the workspace activity feed.

## Global search

Global search lets you find any entity in your workspace without navigating to a specific screen. It searches across issues, patterns, predictions, recommendations, and members simultaneously.

### Opening search

Click the search icon in the top bar (present on every screen that renders the `Topbar` component) or use the keyboard shortcut to open the Command Palette. Start typing and results appear immediately.

### Typeahead suggestions

As you type, the Command Palette surfaces up to 8 typeahead suggestions via `GET /v1/search/suggest?q={query}`. Suggestions are scoped to entity types your token has access to:

| Entity type     | Required scope         |
| --------------- | ---------------------- |
| Issues          | `issues:read`          |
| Patterns        | `patterns:read`        |
| Predictions     | `predictions:read`     |
| Recommendations | `recommendations:read` |
| Members         | `members:read`         |

Each suggestion includes the entity name, type badge, and a direct link. Selecting a suggestion navigates immediately to the entity detail page.

### Full search

Press **Enter** (or click **Search**) to run a full federated search via `GET /v1/search`.

#### Query parameters

| Parameter | Type    | Description                                                                                           |
| --------- | ------- | ----------------------------------------------------------------------------------------------------- |
| `q`       | string  | Search query (1–200 characters, required)                                                             |
| `types`   | string  | Comma-separated entity types to include: `issue`, `pattern`, `prediction`, `recommendation`, `member` |
| `limit`   | integer | Results per page (1–50, default 25)                                                                   |
| `cursor`  | string  | Pagination cursor (only supported when `types` is a single value)                                     |

If you omit `types`, all entity types you have scope for are searched. If you specify an unknown type explicitly, the API returns a `400 validation_error`.

#### Search results

Results are grouped by entity type. Each result item includes:

* **Type** — the entity type
* **ID** — the entity ID
* **Title / name** — the display text
* **Link** — the in-app URL for that entity
* **Snippet** — a short excerpt showing where the query matched

<Note>
  Search is a substring match across entity names and titles. In production it is backed by OpenSearch for full-text relevance ranking.
</Note>

## Activity feed

The **Activity feed** is a chronological log of everything that has happened in your workspace — issues ingested, patterns detected, analyses completed, recommendations generated, and more.

### Viewing the activity feed

The activity feed appears in a few places:

1. **Dashboard** — the **Live activity** panel on the lower half of the Dashboard shows the most recent events in real time, streaming via WebSocket, backed by `GET /v1/dashboard/activity` (or its simpler alias `GET /v1/dashboard/recent-activity`).
2. **Workspace Activity API** — `GET /v1/activity` is the full workspace feed: it **unions** the recorded-activity store with a humanized projection of the append-only event log, so it shows everything that actually happened, not just the handful of call sites that write a dedicated activity row. High-cardinality machine bookkeeping (`field_updated`, `criticality.computed`, `loop.assigned`) is filtered out of the human feed — it stays fully visible per-entity via `GET /issues/{id}/events` and the workspace event log.

### Activity event fields

Each activity event contains:

| Field                       | Description                                                                                                                           |
| --------------------------- | ------------------------------------------------------------------------------------------------------------------------------------- |
| `id`                        | Event ID                                                                                                                              |
| `type`                      | Dot-separated event type (e.g. `issue.status.changed`, `fix.verified`)                                                                |
| `actor`                     | The user who triggered the event `{id}`, or `null` for system events                                                                  |
| `message`                   | Human-readable description — event-log rows are humanized server-side (e.g. `fix.verified` → "Fix verified — proof window held")      |
| `entity_type` / `entity_id` | The entity this event is about                                                                                                        |
| `created_at`                | ISO 8601 UTC timestamp                                                                                                                |
| `source`                    | `"event_log"` for projected event-log rows; a data source name (e.g. `pagerduty`, `jira`) for recorded activity rows where applicable |

### Filtering the feed

`GET /v1/activity` accepts:

| Parameter                   | Description                                                                                      |
| --------------------------- | ------------------------------------------------------------------------------------------------ |
| `type`                      | Prefix filter — returns only events whose type starts with this string (e.g. `issue.` or `fix.`) |
| `actor_id`                  | Filter by the acting user                                                                        |
| `entity_type` / `entity_id` | Filter to a specific entity                                                                      |
| `limit`                     | Page size (1–200, default 50)                                                                    |
| `cursor`                    | Pagination cursor for the next page                                                              |

`GET /v1/dashboard/activity` (the simpler Dashboard-panel alias) accepts `type`, `since`, `limit`, and `cursor`.

### Event types

Event types you will see in the feed include:

| Event type                             | Meaning                                             |
| -------------------------------------- | --------------------------------------------------- |
| `issue.ingested`                       | A new issue was ingested                            |
| `pattern.updated` / `pattern.resolved` | A pattern's status changed                          |
| `alert.crest_fired`                    | A prediction crossed the crest alert threshold      |
| `fix.attested`                         | A recommendation was attested — proof window opened |
| `fix.verified` / `fix.failed`          | A fix's proof window closed, held or reopened       |
| `pin.created` / `pin.deleted`          | A pattern pin was created or removed                |
| `root_cause.classified`                | A root cause classification completed               |
| `config.activated`                     | A config version was activated                      |

An event type with no dedicated human-message mapping still appears — it falls back to the raw type, humanized (`.` and `_` replaced with spaces).

## Related pages

<CardGroup cols={2}>
  <Card title="Dashboard" icon="gauge" href="/product-guide/dashboard">
    The Live activity panel streams events in real time.
  </Card>

  <Card title="Notifications & Alerts" icon="bell" href="/product-guide/notifications-alerts">
    Turn high-signal activity events into alert-rule triggers.
  </Card>

  <Card title="Issues" icon="circle-exclamation" href="/product-guide/issues">
    Navigate to an issue directly from a search result.
  </Card>

  <Card title="Patterns" icon="diagram-project" href="/product-guide/patterns">
    Navigate to a pattern directly from a search result.
  </Card>
</CardGroup>
