27 lines
1.8 KiB
Markdown
27 lines
1.8 KiB
Markdown
Часть [Вне очереди](README.md). Соседей по папке не читать, если задача не про них.
|
|
|
|
# Что нового после входа
|
|
|
|
### Зачем
|
|
|
|
Альфа обновляется часто. Игрок не смотрит git: если с прошлого захода в этот браузер накатили
|
|
другую сборку Server, один раз показать, что вошло в неё.
|
|
|
|
### Было / Стало / Почему
|
|
|
|
**Было.** Нет версии сборки на экране. Сессионная кука HttpOnly и про вход.
|
|
|
|
**Стало.** Сборка Server вшивает `HEAD` и `git log --first-parent`. `GET /api/changelog?since=`
|
|
отдаёт текущий SHA и коммиты после якоря. Клиент держит `hschool.seen-rev` (год, `Path=/`,
|
|
`SameSite=Lax`, не HttpOnly). Первый заход без куки окно не показывает — только запоминает
|
|
текущий SHA. Окно — после входа, не при возврате из школы.
|
|
|
|
**Почему.** «Накатанный» — то, что в dll, а не грязный HEAD при `--no-build`. First-parent после
|
|
`--no-ff` — это слитые фазы, не внутренняя нарезка ветки. `Mark phase N` оставляем в цепочке
|
|
якорем, в список не рисуем: иначе кука на таком HEAD потеряла бы следующее слияние.
|
|
|
|
### Что не входит
|
|
|
|
Ручной `CHANGELOG.md`. Запись на пользователе в `users.json`. Вызов git из бегущего процесса.
|
|
Бамп версии сокета. Окно внутри открытой школы.
|