# 900 — Decision log

Every design question of this plan is answered; there are no open questions.
Each decision below is already written into the chapter it names. If
implementation finds a fact that contradicts a decision, stop, ask the user
with the question tool, and record the new answer here and in the chapter.

## Decided 2026-09-30 (planning discussion)

| # | Question | Decision | Chapter |
|---|----------|----------|---------|
| 1 | Architecture | Real skin addon `skin.milionar`, fork of Estuary 21.3 | 020 |
| 2 | Where the skin lives | Inside the addon (`resources/skin.milionar/`), installed/updated by the service, switch offered | 040 |
| 3 | Look | Estuary 1:1 + Home | 030 §4 |
| 4 | Home content | All Milionář features, each optional in skin settings, on by default | 050 |
| 5 | Top bar | Power as Estuary; settings → menu Kodi / Skin / Milionář; search → addon search window | 050 §4 |
| 6 | Search input | Estuary keyboard + OK, no live typing | 070 §1 |
| 7 | Search rows | Movies, Series, People, In my library, Search history | 070 §2 |
| 8 | Estuary menu items | Milionář first; Music, Music videos, TV, Radio, Pictures, Games, Weather, Favourites hidden by default | 050 §2 |
| 9 | Library integration | Info dialog + `kodi.context.item` in the addon | 080 |
| 10 | Library actions | Search sources, Milionář game, Similar, Add to MyTV/MyCinema | 080 §1 |
| 11 | Resolution | Stay 2560x1440; compare native captures | 100 §2 |
| 12 | Declined switch | Ask again after every addon update | 040 §4 |
| 13 | Widget rows | Table 050 §3 approved | 050 §3 |
| 14 | Branding | id `skin.milionar`, name "Milionář", Milionář logo on Home, own icon/fanart | 030 §3 |
| 15 | Delivery | Phases F0–F5, the user's test after each | 130 |
| 16 | Plan location | `docs/plan/skin-milionar/` + skill `kodi-skin` | 000 |
| 17 | Playback screens in the baseline | Yes, with a local ffmpeg test video | 100 §5, 120 §2 |
| 18 | Videos views in the baseline | All 9 views for movies and TV shows | 120 §2 |
| 19 | Dialog header icon (`vendor_icon.png`) | Keep Kodi's, Estuary 1:1 | 030 §3 |
| 20 | Home logo | Wordmark (emblem + "MILIONÁŘ") built from the addon icon, 192x56 box, shown to the user before use | 030 §3 |
| 21 | Milionář menu item click | Topic picker menu: Film z knihovny / Seriál z knihovny / Náhodně | 050 §4a |
| 22 | Icons | Estuary icons only, mapping in 050 §2 | 050 §2 |
| 23 | MyCinema "Doporučené filmy" | TMDb recommendations from the films in the user's cinemas, cache 24 h | 060 §5 |
| 24 | AI recent recommendations | New store: last 30 recommended titles, filled by the AI dialogs | 060 §6 |
| 25 | Info dialog | One "Milionář" button opening an action menu | 080 §2 |

## Decided by the planner (technical, within the decisions above)

| Topic | Decision | Chapter |
|-------|----------|---------|
| Fonts | Estuary font set unchanged; the addon's 11 undefined font names are addon backlog, not skin work | 010 §5 |
| Library search rows | Native `videodb://` listings with an xsp title filter built by the addon (two rows: films, series) | 070 §2 |
| Resume from widgets | Library items resume through JSON-RPC `Player.Open` with `resume: true` | 060 §3 |
| Random widget rows in baselines | Whole row region masked | 100 §5 |
| Media packing | Loose PNGs; TexturePacker only if Home is > 10 % slower than Estuary | 030 §5 |

## Backlog outside this plan

- 11 undefined font names in the addon XML (010 §5).

## Amendment during F2 (2026-09-30)

- Widget items that run an addon action are playable `skin_run` plugin URLs (resolved to nothing, then `RunPlugin`) instead of `onclick_condition`/`onclick_action` params, because Estuary's `WidgetListEpisodes` has no such params and Estuary includes stay untouched (060 §3, 050 §6).
- 2026-10-01: user decision: the full baseline compare (120 §3/§4) is no longer run automatically; only targeted checks of what changed, a full run only on request. F5 therefore has no full-compare gate.

## 2026-10-03 — branding and accent facelift (180)

Use the exact new sidebar mark everywhere old branding appeared: mark + wordmark
in wide headers, mark in square icons; refresh old-branded promotional captures.
Keep the default gold accent and offer six colours across the skin and both
managers. Logo follows the accent. Preserve background colours, geometry and
Kodi's native context-menu design.

## 2026-10-05 — cinematic Filmy section (190)

The user: the skin is ours and may leave Estuary's look ("mega cinematic theme"), starting with Filmy only. This amends
locked decision 4 (Estuary 1:1 look) and the planner's "Estuary font set unchanged" for the cinematic sections: they
use their own includes, two extra font sizes and generated shape textures. The hero shows the film selected in the rows
(second reference image: switching between the films in progress), the rows stay the section's widget slots. Agent's
choices inside that: focus in the accent colour, TMDb as the only rating, the current row pinned under the hero.

## 2026-10-05 — Media detail on Home (200)

The user approved a pinned cinematic hero with data-driven cast, collection,
recommendation/similar rows and inline seasons/episodes, all existing detail
entry points in skin.milionar, and reused person actions. The user subsequently
required minimal primary actions plus a clearly visible Back button: Play/Continue,
My list membership, More options, Back. Trailer/full plot and infrequent actions
belong in More options; rows must not have duplicate hero buttons.

## 2026-10-06 — Cinematic Vinyl and default presentation

Vinyl joins the cinematic Home theme, using its actual API title images and
original artwork, with music-specific card styles and an explicit track-list
card. The user requested a strong default layout and preservation of the
context menus they had tuned. The one-time Vinyl-only migration reorders the
existing widgets and changes their visual styles; their sources, UIDs, counts,
sorting, clicks and exact context menus move together. Free slots use the
recommended Vinyl defaults. No recurring reset or full-skin defaults bump.
See `210-vinyl-cinema.md`. GUI rendering/playback testing was not requested.

## Milionář-only Home, no Kodi library in the skin (2026-10-08)

The user decided that skin.milionar replaces everything Kodi does on Home with the addon's own library and
supports no Kodi library item anywhere. Removed from the skin: all Estuary main menu items and their widget
groups, their skin switches (the old `HomeMenuNo…` bools stay unused in userdata), the "Doplňky" Home item
(not offered anywhere in the skin; the settings menu 1108 keeps "Nastavení Kodi"), window 1121 and the Milionář button
for Kodi library items in the info dialog. The addon is unchanged: `widget_in_progress`, `lib_*`,
`kodi.context.item`, the Kodi library export and the mirror keep working for other skins. See 030 §4 item 11.

Defaults migration (2026-10-08): one forced reset per release, nothing else. Addon half: `wcs/defaults.py`
`DEFAULTS_VERSION` (service start after the update); skin half: `wcs/skin/defaults.py` `FLAG` = `MilionarDefaultsV8`
(Home `<onload>`). The separate Vinyl migration (`MilionarVinylCinemaV1`, `wcs/vinyl/defaults.py`) is removed because the
shipped snapshot already carries the Vinyl layout. `snapshot_defaults.py` drops skin flags the skin no longer reads.
To force again: raise both values and publish with `--snapshot-defaults`.

## 2026-10-11 — MyTV sidebar activation

Clicking MyTV or confirming it with Enter/OK focuses the cinematic hero button
group (22905), whose existing default selects the first visible button, instead
of opening `my_tv_dialog`. Right-arrow navigation and return-focus behavior stay
unchanged. See `050-home.md` §2.

## 2026-10-12 — Unified sidebar and classic listing entry points

The user approved click/Enter/OK matching Right for every text sidebar item,
including MyTV (supersedes its 2026-10-11 hero-button target). Existing return
focus and top-bar actions stay unchanged. Classic listing access exists only
for Filmy, Seriály and Vinyl: fixed button, sidebar context option and a full
widget-manager action row, all available together for user comparison. The row
is appended last by a one-time additive migration; seven slots preserve the
existing six Vinyl widgets. Filmy/Seriály reuse the native list's keyboard,
search-results selection and add action; Vinyl keeps its Music catalogue. No
existing dialog or action is removed. See `050-home.md` §2. Verification is
targeted offline; GUI testing awaits the user.

The action-row editor exposes Add movie/series and Classic list as separate
named actions, in both the context and hero managers. Add is first by default
on the cards and in the editors. Existing generic Open configurations upgrade
without discarding independent visibility choices; borrowed heroes execute the
actions of their owning widget.

## 2026-10-12 — Keep classic listings in widgets only

After comparing the three variants, the user chose only the movable action
widgets. Removed the fixed upper-right buttons and the sidebar popup; C/long OK
on every sidebar item opens its widget manager directly. Action widgets retain
the current defaults, Add first then Classic list (Vinyl: Classic list only),
header, UIDs, ordering/visibility configuration and context/hero editors. No
widget settings or shipped defaults are reset. See `050-home.md` §2.

## 2026-10-15 — A second skin with a modern look

Standa asked for a second skin: a modern facelift (glass, rounded, glossy, blur through Kodi workarounds) with every
function of skin.milionar, selectable in the addon settings, without duplicating anything that need not be. Built
as `skin.milionar.modern`, an overlay composed over the classic skin on the device (`wcs/skin/compose.py`), the blur
from Kodi's own `image://…/transform?width=` thumbnails, one shared version, the look chosen by the addon setting
`skin_variant`. The classic skin stays unchanged (Estuary 1:1 rules apply to it, not to the overlay). See
`240-modern.md`.
