chore: восстановление репозитория из снапшота v0.3.1
Прежняя git-история утрачена при переносе проекта на машину владельца (снапшот без .git). Хэши коммитов в docs/reports/* относятся к утраченной истории. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
commit
1c85091186
184 changed files with 33303 additions and 0 deletions
40
docs/plans/plan-phase-1.md
Normal file
40
docs/plans/plan-phase-1.md
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
# План фазы 1: этап 1 — движок правил (packages/core)
|
||||
|
||||
Обновлено: 2026-08-05 | Статус: завершена (этап 1 принят, гейты зелёные)
|
||||
|
||||
## Критические долги (реестр — в начале, III.5)
|
||||
|
||||
- Нет.
|
||||
|
||||
## Ключевые решения (не пере-решать)
|
||||
|
||||
- Профиль проекта M, триаж литании — ADR-0001.
|
||||
- Подсчёт — китайские правила (Tromp-Taylor), не японские: однозначно алгоритмизируется.
|
||||
- Группы/дамэ: flood fill или union-find — выбрать по бенчмарку в этапе 1, выбор — в ADR.
|
||||
- Ко: простое ко + позиционное суперко (оба, суперко нужен для китайских правил).
|
||||
- Определение мёртвых групп — отдельная функция + ручная корректировка игроком,
|
||||
не авто-анализ.
|
||||
|
||||
## Объём этапа 1
|
||||
|
||||
1. Доски 9×9, 13×13, 19×19; позиция — типизированный массив.
|
||||
2. Группы и дамэ, снятие камней, запрет самоубийства (кроме самоубийства с захватом),
|
||||
простое ко и суперко.
|
||||
3. Подсчёт Tromp-Taylor; коми 6.5 (19×19) / 5.5 (9×9); сэки обрабатывается корректно.
|
||||
4. SGF FF[4]: парсер и генератор (ходы, вариации, комментарии, разметка LB/TR/SQ/CR).
|
||||
5. История с откатом и ветвлением.
|
||||
6. Контракты — сначала в docs/INTERFACES.md, потом код.
|
||||
7. Бенчмарк flood fill vs union-find → ADR-0002.
|
||||
|
||||
## Тесты (гейт приёмки этапа)
|
||||
|
||||
- Захват камня и группы; запрет самоубийства; самоубийство с захватом (легально);
|
||||
простое ко; суперко; сэки при подсчёте; ничья.
|
||||
- Wiring: orphan-check «кто вызывает» по каждой публичной функции ядра
|
||||
(`gotcha-green-modules-dead-system`).
|
||||
- Интеграционный тест полной партии (по заранее записанной SGF).
|
||||
- Property-based тесты инвариантов (fast-check): инварианты — в docstring функций.
|
||||
|
||||
## Критерий выхода
|
||||
|
||||
Все тесты зелёные + `npm run gates` зелёный. К этапу 2 не переходим без этого.
|
||||
Loading…
Add table
Add a link
Reference in a new issue