Mapowanie ekranów
Źródło: repo luneta/docs/MAPOWANIE.md — edytuj w repo, nie tutaj.
Mapowanie ekranów: F-klawisze i paczka sesji
Decyzja właściciela z 2026-10-06. Cel: mapować ekrany i zgłaszać problemy bez wychodzenia z gry, a po sesji oddać Claude Code jedną zwięzłą paczkę zamiast setek klatek.
F-klawisze (tylko gdy wykryta gra działa)
| klawisz | akcja |
|---|---|
| F5 | zgłoś: zrzut okna gry + okienko przy kursorze (opis, potem typ) |
| F6 | auto-skan i nakładka razem (któreś wyłączone → oba wł., inaczej oba wył.) |
| F7 | panel mapowania (debug/normal), etykiety zmiennych „tu jest X” |
| F8 | opis do ostatniego zgłoszenia z F5 |
| F9 | okno Lunety pokaż/schowaj |
| F10 | wolne na przyszłość |
Poza grą klawisze są zwolnione (globalny skrót zabierałby np. F5 przeglądarce). Włącznik:
ustawienia → „F5 zgłoś…”. Kod: src-tauri/src/fkeys.rs, src-tauri/src/report.rs.
Każda akcja daje komunikat w nakładce (jeśli włączona) i w zakładce „aktywność”. Zero wejścia do gry: okienko zgłoszenia to zwykłe okno pulpitu, chwilowo zabiera fokus.
Zgłoszenie (F5)
- F5 — Luneta robi zrzut okna gry w tej chwili (zanim pojawi się okienko).
- Przy kursorze otwiera się okienko: wpisz, o co chodzi (opcjonalnie), potem kliknij typ
(albo Ctrl+1…5):
- nowy ekran / do mapowania — ekran, którego Luneta nie zna;
- zły odczyt — zła liczba, zły ekran, zły fakt;
- zadanie nie odhaczone / błędnie;
- pomysł na funkcję — np. „pokazuj tu taktyki”;
- inne.
- Klik zapisuje klatkę i wpis do lokalnego dziennika problemów (
<dane>/review/,kind: manual,data.category). Esc albo 60 s bez wyboru: nic nie trafia na dysk.
F8 otwiera to samo okienko z samym polem opisu dla ostatniego zgłoszenia (dziennik jest tylko
dopisywany, więc opis to osobny wpis kind: note z data.ref; luneta review i paczka sklejają
je ze zgłoszeniem). Zgłoszenia nie idą na serwer.
Paczka sesji
luneta session-pack <gra> [--since <godz.>|--all] [--frames N] [--learn <katalog>…]
albo przycisk paczka sesji w zakładce „aktywność” (gra wybrana w dniówkach).
- Okres: od ostatniej paczki tej gry, najdalej 24 h wstecz (
--since 3= ostatnie 3 h,--all= cały dziennik). - Zawartość
session.md: zgłoszenia pogrupowane po typie (z opisami F8), etykiety z panelu, dziennik automatyczny zliczony po rodzaju i ekranie, wynik toru ekranów (luneta screens) na unikalnych klatkach sesji wg bieżących reguł i modelu, lista klatek w paczce, opcjonalnie wiersz „sprawdzenie” zluneta learn(--learn mapping/ba-1 …; model trafia do katalogu paczki, nie doassets/). - Klawisze (ustawienie „klawisze”, domyślnie wył.; CLAUDE.md): sekcja „klawisze” — najczęstsze
per ekran i sekwencja z 15 s przed każdym zgłoszeniem F5. Źródło
<dane>/review/<dzień>/keys.jsonl, zapisywane tylko przy aktywnym oknie gry i działającym auto-skanie. - Klatki: najwyżej N (domyślnie 8), tylko nierozpoznane — zgłoszenia „nowy ekran”/„zły odczyt”,
new_screen,anchor_mismatch,unknown_screen, którego bieżące reguły nadal nie rozpoznają. Prawie identyczne (dHash < 12 bitów) odpadają. Przeskalowane do 1280 px, JPEG 80. Logika wyboru:luneta_lib::core::session_pack(z testami). - Miejsce:
<dane>/review/packs/<data>-<gra>/(Linux:~/.local/share/pl.ariku.luneta/review/packs/). Zostaje 10 ostatnich paczek. Nic nie jest wysyłane.
Szacunek tokenów jest w nagłówku session.md: tekst ≈ znaki / 3, obraz ≈ szer.×wys./750 po
skalowaniu do 1568 px. Klatka 1920×1080 ≈ 1840 tokenów, 1280×720 ≈ 1230.
Pomiar 2026-10-06 (BA, 24 h, 45 klatek w dzienniku): paczka ~11,2 tys. (tekst ~1,4 tys. +
8 klatek ~9,8 tys.) vs surowe klatki ~83 tys.; czas ~1 min 45 s (OCR 44 unikalnych klatek).
Przegląd przez Claude Code
Tylko na wyraźną prośbę właściciela, w sesji z nim (CLAUDE.md, wyjątek „dziennik problemów”).
Wskaż katalog paczki: najpierw session.md, klatki tylko te, do których odsyła tekst.
No comments to display
No comments to display