Committed state is lost when subsurface is destroyed.
Consider the following sync tree: A parent of B parent of C
And the following sequence of requests:
- Modify C (X)
- Commit C
- Destroy subsurface(C)
- Attach C to A
- Commit C
The changes in (X) are lost and never applied even by subsequent commits of all of A, B, and C.