Verze klienta a schéma záznamů¶
V administraci (/admin → Users) jsou u každého účtu dva údaje o tom, co má tester nainstalováno:
- Build – verze aplikace (
app_version) z posledních událostí, které klient poslal. Sloupec zežloutne („STALE · version unknown"), když klient posílá události bez verze (starší než 0.8.71). - Schema – verze replay záznamu z nejnovější uploadnuté hry účtu (
schema_version). Žlutě, pokud je starší než schéma, které umí tento server; najetím myší se zobrazí datum záznamu a schéma serveru. V detailu účtu je řádekreplay schema.
Sloupec Schema říká, co klient skutečně vyrábí — nezávisle na tom, co tvrdí jeho verze. Je to nejrychlejší způsob, jak poznat, že tester ještě nemá novou verzi: pokud jsou všechny hry ve schématu 7, žádná oprava, která spoléhá na krok fáze nebo pořadí akcí (v8/v9), se na jeho hrách projevit nemůže.
Proč se hodnota nemění hned
Schema se bere z poslední nahrané hry. Tester, který si aplikaci aktualizoval, ale od té doby nedohrál hru, stále ukazuje staré schéma.
Které vydání aplikace píše které schéma¶
Odvozeno z .glass-shard-sha v každém tagu aplikace (scryglass) a konstanty SCHEMA_VERSION v tom commitu.
| Vydání aplikace | Datum | Replay schéma |
|---|---|---|
| v0.8.80 – v0.9.3 | do 21. 9. 2026 | 3 |
| v0.9.4 | 23. 9. 2026 | 4 |
| v0.9.5 | 23. 9. 2026 | 5 |
| v0.9.6 | 23. 9. 2026 | 7 |
| (nevydáno) | – | 8 (Play::seq, spell_cost_counters) |
| (nevydáno) | – | 9 (Play::step, controller v záznamu) |
Stav k 30. 9. 2026: v cloudu je 2152 her a žádná není ve schématu 8 ani 9 — klienti na to čekají na další vydání.
Jak si to ověřit sám¶
-- nejnovější schéma na účet (to samé, co ukazuje admin)
SELECT u.email,
(t.data->>'schema_version')::int AS schema,
t.created_at
FROM users u
JOIN LATERAL (
SELECT data, created_at FROM training_events
WHERE user_id = u.id AND kind = 'replay_record'
ORDER BY created_at DESC LIMIT 1
) t ON true;
Server pro tento dotaz používá částečný index idx_training_events_replay_user_created (migrace 0021).
Pole current_replay_schema v odpovědi /admin/users je schéma, které rozumí engine tohoto serveru (glass_engine::replay::SCHEMA_VERSION), a po každém nasazení se aktualizuje samo.