Plumb · diff
plumb_diffCompare two PDS snapshots of the same screen to detect semantic design changes. Returns structured deltas with role-labeled notes and a summary, avoiding raw JSON diffs.
Instructions
Semantic diff between two PDS snapshots of the same screen — call plumb_node (or plumb_outline/plumb_query) once before a design change and once after, then pass both raw JSON responses here. Returns structured deltas (added/removed/renamed/changed nodes, each with a note — e.g. 'the hero moved from (0, 0) to (0, 120)') plus a one-line summary, not a JSON diff. Narration uses the same role labels plumb_node already returns on pattern (nav/hero/footer/sidebar/card/button) when available, so 'the hero moved' beats 'el btn-3 moved 40px' whenever a role was detected. This tool does no live Figma fetching itself — it only compares two documents you already have.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| after | Yes | Snapshot taken AFTER the change. A full PdsDocument object exactly as returned by plumb_node / plumb_outline / plumb_query (the `nodes` + `root` fields are required). | |
| before | Yes | Snapshot taken BEFORE the change. A full PdsDocument object exactly as returned by plumb_node / plumb_outline / plumb_query (the `nodes` + `root` fields are required). |