36 lines
2.3 KiB
Markdown
36 lines
2.3 KiB
Markdown
# План исправлений по ревью Gemini — 2026-09-05
|
||
|
||
## Обязательный релизный набор
|
||
|
||
1. Сбрасывать `fileInputEl.value` после обработки выбора, чтобы повторный выбор
|
||
того же файла снова генерировал `change`.
|
||
2. Фильтровать ZIP entries по разрешённому расширению до декомпрессии, сохраняя
|
||
отдельный проход для вложенных `.zip`.
|
||
3. Объединять корневые папки с одинаковым путём вместо создания дублей.
|
||
4. Сохранять базовое имя в `File.name`, а логический путь — в `node.path` и
|
||
результате `flattenFiles()`.
|
||
5. Показывать ошибку ZIP в статусе по умолчанию, если `onError` не передан.
|
||
6. Использовать fallback-конфигурацию при отсутствии или повреждении
|
||
`config.json` в demo-сервере.
|
||
|
||
## Статус выполнения
|
||
|
||
- Выполнено: обязательный релизный набор пунктов 1–6.
|
||
- Выполнено: удалены legacy `set_status.js`, `init_upload_table.js` и пустой
|
||
`upload/backend/` с остатками `__pycache__`.
|
||
- Выполнено: живая документация очищена от ссылок на удалённую legacy-архитектуру.
|
||
- Выполнено: `build.mjs` очищает `dist/` перед сборкой; версия повышена до `0.1.13`.
|
||
|
||
## Отложенные задачи
|
||
|
||
- Перевести тяжёлую синхронную ZIP-распаковку в Web Worker после подтверждения
|
||
реальными измерениями необходимости.
|
||
|
||
## Проверка
|
||
|
||
- Пересобрать ESM/IIFE bundles.
|
||
- Проверить синтаксис изменённых JavaScript и Python-файлов.
|
||
- Обновить версию с `0.1.11` до `0.1.12` в `package.json` и `site/app.py`.
|
||
- Выполнить browser smoke-тесты для повторного выбора, ZIP-фильтрации,
|
||
слияния папок и fallback ошибки.
|