release stale web resources and avoid diagnostic texture pinning

Advance the web resource cache generation only when the replacement
  document is installed, after the previous document and its asynchronous
  loads have been detached. This prevents outgoing document nodes from
  acquiring leases under the new generation.

  Add UIWebView coverage for delayed document replacement, stale resource
  release, and periodic cache pruning.

  Make Texture Viewer thumbnails observe textures through weak handles and
  retain them only for the duration of drawing. Keep explicit selection as
  the only operation that pins a texture, so opening the diagnostic viewer
  no longer prevents unused textures from being released.

  Update the shared-resource ownership plan to document the replacement-time
  navigation boundary.
This commit is contained in:
Martín Lucas Golini
2026-07-22 20:15:29 -03:00
parent 2d8693295c
commit fb433715fc
4 changed files with 137 additions and 7 deletions

View File

@@ -753,8 +753,9 @@ Exit criteria:
### Stage 6: WebResourceCache and document leases
Status: complete, 2026-07-21. Each UISceneNode now owns a WebResourceCache document session with
an explicit cache partition and navigation generation. UIWebView advances that session at the
existing navigation boundary. Document, stylesheet, remote font, image, and CSS background image
an explicit cache partition and navigation generation. UIWebView advances that session when the
replacement document is installed, after the previous document has been detached. Document,
stylesheet, remote font, image, and CSS background image
requests share canonical fragment-free keys that include the partition, request method/body and
headers, resource kind, and image decode options.