> For the complete documentation index, see [llms.txt](https://wiki.crosswatch.app/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://wiki.crosswatch.app/crosswatch/tools/captures/capture-compare-advanced.md).

# Capture Compare (Advanced)

Capture Compare (Advanced) is a **read-only diff viewer**.

It’s the “power user” version of [Capture Compare](/crosswatch/tools/captures/capture-compare.md).

Use it when you need raw proof.

{% hint style="info" %}
This tool never writes to providers.

It only reads capture files and shows differences.
{% endhint %}

<figure><img src="/files/CsXxExwg4nvjVDdYYcjD" alt=""><figcaption></figcaption></figure>

### What it’s good for

Use Advanced compare when you want:

* Side-by-side browsing of **File A vs File B**
* Field-level changes for **Updated** items
* Raw JSON for both sides
* Quick copy for keys and external IDs (imdb/tmdb/etc.)

### Open Advanced compare

{% stepper %}
{% step %}

### Open Captures

Open **Tools → Captures**.
{% endstep %}

{% step %}

### Open Compare

Open the **Compare** panel.
{% endstep %}

{% step %}

### Pick File A and File B

Pick two captures from the same provider.

You can compare one feature at a time or an **All** bundle with multiple features.

Keep the feature, or bundle type, the same when you can.
{% endstep %}

{% step %}

### Open Advanced

Open the advanced compare viewer.

Use **Refresh** if the files changed on disk.
{% endstep %}
{% endstepper %}

### How to use the viewer

#### Header summary

The header shows provider + feature and four counters:

* `+` Added
* `-` Removed
* `~` Updated
* `=` Unchanged

#### Filters

Use filters to cut noise:

* **Search**: title, key, and common external IDs
* **Status chips**: Added, Removed, Updated, Unchanged
* **Type**: Movies / Shows / Seasons / Episodes
* **Sort**: status / title / key
* **Changed only**: hide unchanged items

#### Two-pane list (A vs B)

The top section shows two lists:

* Left = items present in **File A**
* Right = items present in **File B**

Selecting an item syncs selection across panes.

#### Item inspector

The bottom section shows details for the selected key:

* Status + change count (for Updated)
* Copy buttons (key, JSON A, JSON B)
* For Updated: a list of changed fields (JSON path + values)
* Two raw records side-by-side (A and B)

{% hint style="info" %}
For **Added** items, File A is empty.

For **Removed** items, File B is empty.
{% endhint %}

<details>

<summary>Viewer tips</summary>

* Use the splitters to resize the A/B panes and the detail area.
* Scroll is kept in sync in the detail panes when possible.
* Clicking an ID chip copies its value.
* Clipboard can be blocked by browser security policies.

</details>

### Status semantics

Same rules as standard compare:

* **Added**: present in B, missing in A
* **Removed**: present in A, missing in B
* **Updated**: present in both, payload differs
* **Unchanged**: present in both, payload matches

### Performance and limits

Advanced compare can load a lot of data.

If it feels slow, reduce the scope:

* Compare captures close in time.
* Compare the same provider and the same feature or bundle type.
* Hide **Unchanged**.

<details>

<summary>API reference (optional)</summary>

#### Endpoint

`GET /api/snapshots/diff/extended`

#### Notes

The API path still uses `snapshots`.

The UI calls them captures.

</details>


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://wiki.crosswatch.app/crosswatch/tools/captures/capture-compare-advanced.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
