NativeCanvasFence
One render-thread-owned completion fence, independent of screens and presentation snapshots.
The driver inserts it into the same ordered GPU queue as the protected work. The device owns its lifetime and never waits for it during a frame or screen cleanup.