diff --git a/docs/backlog.md b/docs/backlog.md
index eac1a58..b5f723b 100644
--- a/docs/backlog.md
+++ b/docs/backlog.md
@@ -168,6 +168,14 @@
форматирование по колонкам??? для hex\bytes\rgba - пример в placeholder
- [ ] прикрутить кастомный color picker, добавить прозрачность (range?)
- [ ] обновить страницу kit или сделать storybook
+- [ ] **проверить `cachedDataUrl` (WeakMap-кэш превью) в реальной работе** — GC
+ срабатывает недетерминированно, поэтому освобождение base64-строк (≈1.3×
+ бинарного размера картинки на каждый тайл) не гарантировано своевременно.
+ Проверить на длинной сессии с большими картинками (несколько ранов подряд,
+ смена инструментов): растёт ли heap в DevTools → Memory после повторных
+ ранов и уходит ли после принудительной сборки. Если записи копятся —
+ заменить на ограниченный LRU или явную инвалидацию при
+ `resetForHost`/новом ране (`web/src/lib/core/io.ts`, `cachedDataUrl`)
- [ ] `PreviewTile`: высота плитки задана только `min-height: clamp(...)`,
поэтому она не следует за пропорциями результата — широкий результат
уезжает в узкую полосу, а высокий упирается в `max-height: 100vh`. Нужно,
diff --git a/web/src/lib/components/schema/PartsGrid.svelte b/web/src/lib/components/schema/PartsGrid.svelte
index fbaa27c..fe28ba7 100644
--- a/web/src/lib/components/schema/PartsGrid.svelte
+++ b/web/src/lib/components/schema/PartsGrid.svelte
@@ -1,5 +1,5 @@
diff --git a/web/src/lib/components/schema/SchemaResultTile.svelte b/web/src/lib/components/schema/SchemaResultTile.svelte
index f6b6490..93608be 100644
--- a/web/src/lib/components/schema/SchemaResultTile.svelte
+++ b/web/src/lib/components/schema/SchemaResultTile.svelte
@@ -1,5 +1,5 @@