go-learn/docs/reports/session-1.md
sab.code.lab 1c85091186 chore: восстановление репозитория из снапшота v0.3.1
Прежняя git-история утрачена при переносе проекта на машину владельца
(снапшот без .git). Хэши коммитов в docs/reports/* относятся к утраченной
истории.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-08-07 09:34:02 +02:00

3.9 KiB
Raw Blame History

Отчёт сессии 1 (для следующей сессии)

Дата: 2026-08-05 | Ветка: main | Последний коммит: см. git log

Что сделано

  1. Шаг 0 — каркас. Триаж литании (ADR-0001, профиль M), git + .gitattributes (* text=auto eol=lf) с первого коммита, docs-каркас, AGENTS.md (точка входа), гейты npm run gates (prettier + eslint + tsc -b --noEmit + vitest). Запинены: typescript 5.9.3, vitest 4.1.10, eslint 10.8.0, prettier 3.9.6, fast-check 4.9.0. CI — GitHub Actions (ubuntu+windows), написан, не запускался.
  2. Этап 1 — packages/core. Движок правил полностью по контракту docs/INTERFACES.md: доски 9/13/19, группы/дамэ (flood fill — ADR-0002, бенчмарк: union-find медленнее в 1.74×), захваты, запрет самоубийства (самоубийство с захватом легально), простое ко + позиционное суперко, подсчёт Tromp-Taylor со снятием dead-камней и ничьей, история-дерево с ветвлением, SGF FF[4] (парсер+генератор, roundtrip), seeded RNG (mulberry32). Тесты: 43/43 (юнит, wiring orphan-check, интеграция полной партии 9×9, property-based fast-check).
  3. Решения владельца (молчание = дефолт): каркас подтверждён, коми 13×13 = 5.5, LICENSE = MIT (файл добавлен), CI на GitHub Actions.

Что НЕ сделано

  • Этапы 29 не начаты.
  • CI не проверен на GitHub (репо локальный).
  • Настоящая позиция двойного ко для юнит-теста суперко (см. PROJECT_STATE).

Подводные камни для следующей сессии

  • Среда выполнения: /mnt/agents/output НЕ поддерживает симлинки → npm install невозможен там. Работать только через git worktree в $HOME (git worktree add $HOME/work-<name> <branch> из /mnt/agents/output/go-learn). Каталог $HOME может сбрасываться между сессиями — worktree пересоздавать, коммиты в общем .git не теряются. git worktree prune не запускать, пока живы субагенты; мёртвые записи удалять git worktree remove --force <path>.
  • У субагентов своя файловая система (или $HOME сбрасывается): НЕЗАКОММИЧЕННЫЕ правки в worktree теряются. Правило: перед передачей работы субагенту всё коммитить; контракты передавать и в тексте задания, не только файлами.
  • Контракт core уже зафиксирован — изменения только через обновление INTERFACES.md ПЕРЕД кодом. UI этапа 5 ветвится по полю reason (MoveError), не по тексту error.
  • В /mnt-репозитории были мусорные пустые каталоги от ошибочной команды с brace-expansion (шелл без bash) — вычищены в сессии 1; mkdir писать без {}.

С чего начать продолжение

Этап 2 (доска Canvas): сначала дописать контракт рендера в docs/INTERFACES.md (render(ctx, position, options) — чистая функция, devicePixelRatio, хоси, тач-ввод), затем код. План — docs/plans/plan-phase-1.md обновить или создать plan-phase-2.md.