Nine of the round's ten surviving findings. The tenth (a failed shelf reorder leaving an order the server rejected on screen) is on ROADMAP.md: its obvious remedy reintroduces the overlapping-move defect the code already documents, so it wants a design, not a review edit. - `navigateOverOverlays` buried the live overlay entries before knowing whether the navigation pushed one. `setPage` no-ops when the page is already current and Home is the default landing page, so Shift+W over a player ON Home marked its entry buried under a push that never happened: the unmount consumed the mark instead of reclaiming the entry, and the next browser Back was a press that did nothing. `setPage` now reports whether it navigated, and one `buryUnder` rule serves both entry points — `closeThenNavigate` takes the same no-op navigation from a palette command for the page you are already on. - The hero could answer a new time budget with the previous one's pick. The chip row resets seed/seen/press but cannot reset an answer that already resolved, and `keepPreviousData` chained through the disabled seed-0 query — so a reroll under "10 perc" showed the film picked for "Bármennyi" while it loaded, and kept it if the request failed. `lastPick` now carries the server's own budget echo, and the placeholder is scoped to the budget. - The reroll button spun and swallowed clicks after mark-watched, bookmark, pin and shelf moves: the pick key sits under the invalidated `discover` prefix on purpose, so raw `isFetching` was true for background refetches. It now means "a press of mine is outstanding" — which still covers the first press, where there is no placeholder. - Failed writes on Home toasted the page's LOAD-failure string over a fully loaded page; they get their own key (HU+EN). The empty-state reroll had no `loading`, so the press was unacknowledged and a second click skipped a tier. `danger` moved into the shared unpin row so the same command is not red on the shelf and neutral in the rail below it. - Two comments claimed things the code does not do: the `exclude` cap guards no "unbounded scan" (it never reaches SQL), and the route test that named the cap sends three keys. Tests: the burial rule gets its own file (it is the one assertion that lets a reconcile issue a real programmatic back()); App's keymap wiring gets a source contract, because dropping it left all 818 tests green; `add_pin`'s IntegrityError arm was reached by nothing. Every new test mutation-checked red, both edges where the predicate has two. Gate: ruff, ruff format, 3x tsc, eslint (0 errors), prettier, knip, vitest 822, pytest 1005.
53 lines
1.7 KiB
JSON
53 lines
1.7 KiB
JSON
{
|
|
"navLabel": "Kezdőlap",
|
|
"title": "Mit nézzek most?",
|
|
"error": "Nem sikerült betölteni az ajánlatokat.",
|
|
"actionFailed": "Nem sikerült elmenteni.",
|
|
"budget": {
|
|
"ask": "Mennyi időd van?",
|
|
"short": "10 perc",
|
|
"medium": "30 perc",
|
|
"long": "Egy este",
|
|
"any": "Mindegy"
|
|
},
|
|
"hero": {
|
|
"resume": "Ott hagytad abba",
|
|
"resumeLeft": "Ott hagytad abba · {{time}} van hátra",
|
|
"comfort": "A polcodról",
|
|
"surprise": "Meglepetés",
|
|
"play": "Lejátszás",
|
|
"continue": "Folytatás",
|
|
"reroll": "Mást kérek",
|
|
"emptyAny": "Még nincs mit ajánlani. Iratkozz fel egy csatornára, vagy tűzz valamit a polcodra.",
|
|
"emptyBudget": "Ennyi időbe semmi sem fér bele a könyvtáradból."
|
|
},
|
|
"comfort": {
|
|
"title": "Komfort polc",
|
|
"empty": "Még nincs ide tűzve semmi. Tűzz ki egy csatornát, sorozatot vagy listát, amihez mindig visszatérsz."
|
|
},
|
|
"continue": {
|
|
"title": "Folytatás",
|
|
"empty": "Most nincs félbehagyott dolgod."
|
|
},
|
|
"shelf": {
|
|
"unwatchedCount_one": "{{count}} megnézetlen",
|
|
"unwatchedCount_other": "{{count}} megnézetlen",
|
|
"itemCount_one": "{{count}} videó",
|
|
"itemCount_other": "{{count}} videó",
|
|
"moveFirst": "A polc elejére",
|
|
"moveLeft": "Balra",
|
|
"moveRight": "Jobbra",
|
|
"moveLast": "A polc végére",
|
|
"moveFailed": "Nem sikerült átrendezni a polcot."
|
|
},
|
|
"pin": {
|
|
"menu": "Komfort polc",
|
|
"add": "Komfort polcra",
|
|
"remove": "Levétel a polcról",
|
|
"added": "{{title}} felkerült a komfort polcra.",
|
|
"removed": "{{title}} lekerült a komfort polcról.",
|
|
"addFailed": "Nem sikerült a polcra tűzni.",
|
|
"removeFailed": "Nem sikerült levenni a polcról."
|
|
}
|
|
}
|