Retain native DOM, Blob, AbortSignal and intrinsic interface backing while
JavaScript still holds a retired realm. Retire active execution resources and
trace wrapper and traversal-filter ownership through V8 so the last reference
releases the native host without Rust-to-V8 root cycles.
Cover retained native values, realm finalizers and traversal callback lifetimes.
Validation: cargo fmt --all; cargo clippy --workspace --all-targets --all-features -- -D warnings; cargo nextest run --no-fail-fast.
Use collision-checked random UUIDs for object URL identifiers instead of a process-local counter. Reuse the existing UUID generation for Blob identity and cover URL format plus independent lifetime for multiple URLs referencing one Blob.
Store the URL creator’s browser partition and storage key separately from its backing Blob, and check authorization atomically with URL removal. Use the Worker environment storage key and a shared opaque-origin nonce allocator for Windows and Workers.
Source: e090f2b070