Ship a disk example pack so last-wins, patches and create-with-a-mod are tested for real.

Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
Leonid Pershin
2026-08-20 01:06:12 +03:00
co-authored by Cursor
parent edd3d35c79
commit 505b1429ab
20 changed files with 405 additions and 14 deletions
+10 -10
View File
@@ -12,21 +12,21 @@
## Задачи
- [ ] Пак `mods/example` рядом с `core`: `pack.jsonc`, свои локали, пара черт, набор имён,
- [x] Пак `mods/example` рядом с `core`: `pack.jsonc`, свои локали, пара черт, набор имён,
патч чужого def и одна комната
- [ ] Пак нарочно скучный: он образец и фикстура, а не контент. Ванильную игру он не меняет,
- [x] Пак нарочно скучный: он образец и фикстура, а не контент. Ванильную игру он не меняет,
пока не выбран
- [ ] Пак едет в вывод сборки тестов теми же правилами, что и `core`
- [ ] Короткий `README.md` внутри пака: что где лежит и как добавить своё
- [ ] Ориентир в [`../design/defs.md`](../design/defs.md) показывает на него как на образец
- [x] Пак едет в вывод сборки тестов теми же правилами, что и `core`
- [x] Короткий `README.md` внутри пака: что где лежит и как добавить своё
- [x] Ориентир в [`../design/defs.md`](../design/defs.md) показывает на него как на образец
## Тесты, без которых фаза не закрыта
- [ ] `GET /api/catalog?mods=example` отдаёт типы и подписи пака поверх `core`
- [ ] Школа создаётся с паком и поднимается с ним после перезапуска
- [ ] Патч пака виден в каталоге школы, а без пака его нет
- [ ] Одинаковый `defName` в `core` и в паке — побеждает пак, в логе предупреждение
- [ ] Карта пака проходит валидацию и годится для создания школы
- [x] `GET /api/catalog?mods=example` отдаёт типы и подписи пака поверх `core`
- [x] Школа создаётся с паком и поднимается с ним после перезапуска
- [x] Патч пака виден в каталоге школы, а без пака его нет
- [x] Одинаковый `defName` в `core` и в паке — побеждает пак, в логе предупреждение
- [x] Карта пака проходит валидацию и годится для создания школы
## Критерий готовности