Composition & Drift
How Inspect tracks Composition links, detects JSON-vs-Figma drift, and repairs components/component sets with Re-apply.
What Composition Drift means
When a component or component set is linked to a Composition JSON, Inspect can compare current Figma state with JSON reference.
Drift means those states no longer match.
Common reasons:
- manual canvas edits after generation;
- JSON update not yet re-applied in Figma;
- component recreated/moved and diff-id link became stale.
Composition Tracking section
Inspect shows tracking state for composition-linked components/component sets:
- Linked: current node id is linked in diff-id to composition name.
- Unlinked: composition name exists, but id mapping differs.
Re-link updates diff-id mapping for the current file when names match but IDs drifted.
Out of Sync section
When drift is detected, Inspect shows:
- total difference count;
- category badges;
- actions: Show Diff and Re-apply.
Difference categories
| Category | Compared data |
|---|---|
hash | quick composition hash check |
structure | node hierarchy and ordering |
property | component properties metadata |
binding | token/style variable bindings |
layout | autolayout fields (direction, gap, padding, etc.) |
fill | fills |
stroke | strokes |
effect | effect settings |
text | text-related fields |
sizing | width/height/constraints |
style | style links and style-level mapping |
Show Diff
Show Diff opens a detailed modal grouped by category so you can inspect exact path-level changes before repair.
Re-apply behavior
Re-apply runs composition apply in repair mode for the selected composition-linked node.
Expected behavior:
- existing node identity remains in place;
- composition structure/style/binding state is repaired to JSON target;
- for component sets, repair is applied across mapped variants.
After successful re-apply, Out of Sync should disappear for repaired differences.
Recommended workflow
- Select component/component set.
- Review Composition Tracking state.
- If unlinked, run Re-link.
- If out of sync, open Show Diff.
- Run Re-apply.
- Re-check drift status.