feat: reveal all hidden shapes with Shift+H, release SAM3 VRAM on idle and on demand (REQ-191, REQ-192)

This commit is contained in:
asus committed 2026-10-07 11:55:00 +07:00
1 parent f5be7880b0
commit fd608848bf
16 files changed
+290 -20

No files matched your search

+9 -3
View File
@@ -201,7 +201,9 @@ falling back to `route.projectId` and then `1`:
```
GPU: <name, stripped of "NVIDIA GeForce" / "Laptop GPU"> | CPU if none
VRAM: <free>GB | N/A
SAM3: Ready | Off ← green when ready
SAM3: Loaded | Idle | Off ← Loaded = green button, click frees the VRAM (REQ-192)
Idle = green, not in VRAM, loads on next use (~12 s)
Off = not enough free VRAM to load
```
Icons are SVG (Heroicons/Lucide-style), never emoji. *(Some emoji survive inside page bodies —
@@ -1171,6 +1173,7 @@ Handlers are attached in the **capture** phase on `document`, and:
| `1`–`9` | set active class; reclass the selected shape if any | reclass **all marked** shapes |
| `Del` / `Backspace` | delete the selected shape | delete **all marked** shapes (confirmed) |
| `H` | hide/show the selected shape(s); no-op with nothing selected | same |
| `Shift`+`H` | toggle the reveal-all overlay — draws every hidden shape without touching the hidden state; a plain `H` while it is on just turns it off | same |
| `Esc` | cancel the gesture in flight | clear the marked set |
| hold `S` | SAM3 assist mode while held | — |
| `Enter` | apply the exemplar preview (panel open) | — |
@@ -1213,7 +1216,9 @@ network.
hide; click still selects it and the trash still deletes it. Empty means the frame has
**zero shapes**, not zero visible ones: *"None on this frame — drag to draw a shape."*
plus, if the batch has shapes elsewhere, a *Jump to Frame with Shapes [N]* button.
- **Shortcuts** — a static `<dl>` of the keyboard map (it also lists `H`). Keep it visible;
While the reveal-all overlay is on (REQ-191), the header carries a small `revealing hidden`
chip — accent-coloured pill, SVG eye icon, `title` explaining `Shift+H` turns it off.
- **Shortcuts** — a static `<dl>` of the keyboard map (it also lists `H` and `Shift`+`H`). Keep it visible;
this is a keyboard-first screen and the panel is the discovery mechanism.
---
@@ -1554,7 +1559,8 @@ di-deep-link — jangan dihapus.
### Shell
Top bar tetap 48 px: wordmark kiri → nav urut pipeline di tengah → kanan badge health
(`GPU: …`, `VRAM: … GB`, `SAM3: Ready/Off` hijau saat siap, polling 3 detik) + toggle tema.
(`GPU: …`, `VRAM: … GB`, `SAM3: Loaded/Idle/Off` — `Loaded` hijau dan bisa diklik untuk
melepas VRAM (REQ-192), polling 3 detik) + toggle tema.
Error boundary membungkus area halaman, di-key per rute.
### Design token sekarang (boleh diganti, maknanya harus bertahan)