perf/REPORT.md: резюме и ответы на жалобы заказчика, методика и окружение,
таблица 13 мест (file:line, доказательство, влияние, приоритет, подтверждено
замером), подробности, статический разбор без замера, что не проверено.
Refs #202
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- report-data/20261026-control-s1: CPU 4x, 1 повтор (FORM_2/AHR, свод 1 MAIN,
свод 2 GO, модалка выбора ВСП на большом листе), отдельный run_id
- analysis/api-split: полное время API против заголовка X-DB-Time-Ms
(вместо py-spy, которому на macOS нужен root)
- analysis/modal-renders, hotspots: рендеры модалок прогона s1, циклы CSS и
matchMedia со вторым листом
Refs #202
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- C1: trace только на повторе 0 при числе повторов > 1 (lib/trace.ts
shouldTrace) в scroll и scroll-coauthor: admin-контроль, control4x и
PERF_S2_REPEATS=1 больше не теряют единственную запись (traced=1).
- I1: масштаб 2 - PERF_LOAD_TIMEOUT_MS=40 мин и PERF_TEST_TIMEOUT_MS=90 мин,
если не заданы.
- I2: шаг aggregate падает при сбое perfkit.aggregate/копирования и если
summary.json не создан; тесты run-all (perf/tests/test_run_all.py).
- M2: после modals_profiling останавливается preview :8081.
- README, design.md: решения раунда.
Refs #202
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
- perf/run-all.sh: масштабы 1 и 2, шаги reset -> gen -> verify -> stand ->
preflight -> scroll -> coauthor -> grow -> modals -> modals_profiling ->
memory -> memtrend -> [control4x] -> bench -> aggregate; лог и
run-all.status.json, возобновление (PERF_STEPS, PERF_SKIP_RESET),
сухой режим с оценкой длительности, PERF_S2_REPEATS/PERF_S2_TARGETS,
контроль CPU 4x (PERF_CONTROL_TARGETS).
- Основная метрика: main_thread_ms и main_thread_ms_per_step в скролле
(CDP TaskDuration), frame_excess_ms; в summary.md первыми строками.
- SQL-статистика по шагам: PERF_SQLSTATS_TAG -> sql/<шаг>/ (sqlstats --out).
- netlog: тела /auth/ не пишутся, поля password/token/secret вырезаются.
- scroll.spec: уникальные имена целей (лист ССП с суффиксом /ssp, год в
отчёте проекта) - иначе Playwright не запускал файл из-за дублей.
- PERF_TRACE=0 для прогонов с одним повтором.
- README: scroll-coauthor, run-all, возобновление, без CPU 4/6 в матрицах.
- design.md: уточнена формулировка R-2, решения Task 10a.
Refs #202
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
perfkit.gen.grow доращивает FORM_2 AHR_UTILITY/AHR_SECURITY до 500 и
FORM_4 CAP до 300 строк; у форм-модалок варианты @big.
Refs #202
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
no_overflow вместо пустого complete, узкий catch по строкам, таймаут свода 2,
подписка на мутации до ввода фильтра и проверка эффекта фильтра, traced=1.
Refs #202
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>