docs: bug_list — только открытые баги; закрытые → bug_closed.md
Три Critical'а (BUG-1 провал на row 1 при боковом переходе, BUG-2 ping-pong при возврате, BUG-3 окклюзия climb-up на кнопке) висели непроверенными с 2026-07-21. Прогнал в MAME: - BUG-1 не воспроизводится: room6 → кнопка (0,2) → открытая решётка → переход влево даёт room8, y=55, curr_row=0. Заодно снят и сам диагноз записи — репроекция Y при БОКОВОМ переходе не нужна: goto_other_room (seg002.c:390) меняет только x, наш check_leave делает то же. - BUG-2 не воспроизводится: шов room2↔room3, четыре пересечения с разворотом сразу после входа — комната меняется ровно раз на пересечение. - BUG-3 закрыт фиксом tile_code_drawn от 2026-07-28 (это дубль уже записанного «спуск с кнопки»); оговорка про непереснятый подъём — в bug_closed.md. bug_list.md теперь только открытое (BUG-CEIL-1/2/3, BUG-OCCL-1, T-1, T-2, таблица обхода 24 комнат) + индекс с якорями. bug_closed.md — закрытое вместе с разбором корней (odd-pixel char_x, подстановка тайла кнопки, баг кодогенератора SDCC), он и есть главная ценность архива. TASKS.md: кросслинки на открытые баги в шапке, в L1-TRIAGE, L1-PASS и «Отложено». Указатели в CLAUDE.md/README/room_model_plan/layout_plan_v2 переведены на нужный из двух файлов. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
@@ -1,9 +1,16 @@
|
||||
# roomtest — доска текущих задач (обновлено 2026-08-01)
|
||||
|
||||
Не список багов (он в `bug_list.md`) и не план фаз (`../docs/PORT_PLAN.md`,
|
||||
`../docs/layout_plan_v2.md`, `../docs/levels_plan.md`), а то, **что берём в
|
||||
работу сейчас и в каком порядке**. Каждая запись: что сделать, почему
|
||||
именно сейчас, чем подтверждать результат.
|
||||
Не список багов (открытые — [`bug_list.md`](bug_list.md), закрытые с разбором
|
||||
корней — [`bug_closed.md`](bug_closed.md)) и не план фаз
|
||||
(`../docs/PORT_PLAN.md`, `../docs/layout_plan_v2.md`, `../docs/levels_plan.md`),
|
||||
а то, **что берём в работу сейчас и в каком порядке**. Каждая запись: что
|
||||
сделать, почему именно сейчас, чем подтверждать результат.
|
||||
|
||||
**Открытые баги** (все Medium/косметика, Critical'ов нет):
|
||||
[BUG-CEIL-1](bug_list.md#bug-ceil-1) · [BUG-CEIL-3](bug_list.md#bug-ceil-3) ·
|
||||
[BUG-OCCL-1](bug_list.md#bug-occl-1) ·
|
||||
[BUG-CEIL-2](bug_list.md#bug-ceil-2) (отложен) ·
|
||||
оптимизации [T-1](bug_list.md#t-1), [T-2](bug_list.md#t-2).
|
||||
|
||||
Правило проекта в силе: механику сверять с `../SDLPoP/src/` ДО кодинга;
|
||||
диагноз платформы подтверждать артефактом (брейкпоинт/дамп/.asm), а не
|
||||
@@ -112,7 +119,7 @@
|
||||
`libc/irq/_irq_tramp.c` в общий кусок либо продублировать в
|
||||
`libc/kbd/kbd_raw_poll.c`; тело обязано идти под `DI` (гонка с ISR за
|
||||
деструктивное чтение порта 0x18).
|
||||
5. Побочно сюда же играет **T-2 (idle-skip)** из `bug_list.md`: не
|
||||
5. Побочно сюда же играет **[T-2](bug_list.md#t-2) (idle-skip)**: не
|
||||
перерисовывать Кида, пока поза/координаты не менялись, — это минус
|
||||
heal+blit (то есть минус DI-окна) в самых спокойных кадрах, где как раз
|
||||
и тапают Shift+стрелку.
|
||||
@@ -332,14 +339,25 @@
|
||||
`pop_next_level`, который взводит `END_LEVEL` (`seg006.c:662`). **Это же
|
||||
первый шаг плана следующих уровней** — см. `../docs/levels_plan.md`.
|
||||
|
||||
### L1-TRIAGE. Ревизия `bug_list.md`
|
||||
Список отстал от кода: BUG-1/BUG-2 (боковой переход, ping-pong) закрываются
|
||||
`pop_leave_timer` + `char_x_forward_edge` (`pop_map.c:1402..1432,1553`),
|
||||
BUG-3 (окклюзия climb-up на кнопке) — фиксом `tile_code_drawn` от 2026-07-28,
|
||||
но все три по-прежнему стоят как **Critical**. Пройти их в MAME, закрыть
|
||||
подтверждённые, оставшиеся (BUG-CEIL-1/2/3, BUG-OCCL-1 — косметика окклюзии)
|
||||
переклассифицировать. Заодно закрыть таблицу обхода 24 комнат — она
|
||||
заполнена на 5 строк из 24, а инструмент (`ROOMNAV`) готов.
|
||||
### L1-TRIAGE. Ревизия багов — **ЧАСТЬ 1 СДЕЛАНА 2026-08-01**
|
||||
|
||||
✅ **Три Critical'а прогнаны в MAME и закрыты** (протокол с числами — в
|
||||
[`bug_closed.md`](bug_closed.md), раздел «Проверено в MAME 2026-08-01»):
|
||||
BUG-1 (провал на row 1 при переходе через открытые ворота) и BUG-2
|
||||
(ping-pong при возврате) **не воспроизводятся**, BUG-3 (окклюзия climb-up на
|
||||
кнопке) закрыт фиксом `tile_code_drawn` от 2026-07-28. Заодно снят неверный
|
||||
диагноз BUG-1: репроекция Y при БОКОВОМ переходе — не наш пробел, а точное
|
||||
поведение `goto_other_room` (`SDLPoP/src/seg002.c:390` меняет только `x`).
|
||||
Список разделён на [`bug_list.md`](bug_list.md) (открытое) и
|
||||
[`bug_closed.md`](bug_closed.md) (закрытое + разбор корней).
|
||||
|
||||
⏳ **Осталось:** закрыть таблицу обхода 24 комнат
|
||||
([`bug_list.md`](bug_list.md#обход-всех-24-комнат-уровня-1)) — заполнена на
|
||||
5 строк из 24, инструмент (`ROOMNAV`) готов. Открытая косметика окклюзии
|
||||
([BUG-CEIL-1](bug_list.md#bug-ceil-1),
|
||||
[BUG-CEIL-3](bug_list.md#bug-ceil-3),
|
||||
[BUG-OCCL-1](bug_list.md#bug-occl-1)) остаётся Medium — трогать после
|
||||
L1-PASS, обход комнат может добавить к ней новые случаи.
|
||||
|
||||
### L1-SPEED. Игра идёт быстрее оригинала (найдено 2026-08-01)
|
||||
Сверка таймингов: оригинал — `BASE_FPS = 60` при `base_speed = 5` тиков на
|
||||
@@ -356,18 +374,25 @@ BUG-3 (окклюзия climb-up на кнопке) — фиксом `tile_code_
|
||||
пики, loose-полы, зелье, падения. Это приёмка этапа 1 и одновременно
|
||||
регресс-база для уровня 2.
|
||||
|
||||
Заодно проверить на живом проходе открытую косметику окклюзии —
|
||||
[BUG-CEIL-1](bug_list.md#bug-ceil-1),
|
||||
[BUG-CEIL-3](bug_list.md#bug-ceil-3),
|
||||
[BUG-OCCL-1](bug_list.md#bug-occl-1): именно здесь станет видно, мешают ли
|
||||
они играть или это придирки на стоп-кадре. И подъём на тайл-кнопку — см.
|
||||
оговорку к BUG-3 в [`bug_closed.md`](bug_closed.md).
|
||||
|
||||
---
|
||||
|
||||
## Отложено осознанно (не брать, пока не появится причина)
|
||||
|
||||
- **Звук** (CBL-эффекты, Фаза 5 `PORT_PLAN.md`) — геймплей не блокирует.
|
||||
- **Таймер уровня / HUD времени / меню / сохранения** — Фаза 6.
|
||||
- **T-1** (пики: перерисовка по причине) — `bug_list.md`; отдаётся почти
|
||||
бесплатно после T-2, отдельно не окупается.
|
||||
- **BUG-CEIL-2** (loose-плита в потолке из комнаты сверху) — требует
|
||||
персистентного per-room modifier соседей, это Фаза P0 из
|
||||
- **[T-1](bug_list.md#t-1)** (пики: перерисовка по причине) — отдаётся почти
|
||||
бесплатно после [T-2](bug_list.md#t-2), отдельно не окупается.
|
||||
- **[BUG-CEIL-2](bug_list.md#bug-ceil-2)** (loose-плита в потолке из комнаты
|
||||
сверху) — требует персистентного per-room modifier соседей, это Фаза P0 из
|
||||
`../docs/gates_spikes_plan.md`.
|
||||
- **Отключение мыши на время игры** и **замена PRNG** —
|
||||
`../docs/ideas_backlog.md` (оба дают доли процента кадра).
|
||||
- **OPT-1** (хирургический редрой шва) — стоимость транзиентная, решение от
|
||||
2026-07-22 «оставляем».
|
||||
- **OPT-1** (хирургический редрой шва) — решено НЕ делать, стоимость
|
||||
транзиентная; разбор в [`bug_closed.md`](bug_closed.md).
|
||||
|
||||
Reference in New Issue
Block a user