Repinoid
fd53e5edf1
feat: integrate upload-platform v0.2.2 into drhider (v0.0.78)
...
- Update upload/ module to v0.2.2 with modular Layer 1 (FilePicker) and Layer 2 (Streaming transit upload)
- Replace legacy manual file table in site/templates/index.html with FilePicker.initFilePicker
- Wire uploadViaVM with per-file status updates and abort signal support
- Add dist bundles to dist/ and site/static/dist/ with routes in site/routes/main_bp.py
- Add test_hardening.py and test_safe_name.py from upload-platform
- Bump version to 0.0.78 in site/app.py
- Document integration plan and report in History/upload-integration/
2026-09-15 12:23:31 +03:00
Repinoid
191a8e78f8
1
2026-09-14 18:40:13 +03:00
Repinoid
9c976923de
Merge origin/master into master
2026-09-14 18:33:38 +03:00
Repinoid
7e4ecff693
chore: ignore agent temporary files
2026-09-14 18:25:27 +03:00
Repinoid
58c7cb5c46
chore: ignore nested upload-platform repository
2026-09-12 19:53:59 +03:00
Repinoid
e4567140b3
chore: sync local VM mirror state
2026-09-12 19:48:37 +03:00
“Naeel”
bd697f309a
Merge remote-tracking branch 'origin/master'
2026-09-06 14:09:58 +03:00
“Naeel”
b75c2169d0
feat: add upload platform
2026-09-06 14:09:22 +03:00
“Naeel”
b78f55490c
1
2026-09-05 13:27:35 +03:00
“Naeel”
f579b9324f
docs: document VM rsync sync
2026-08-31 20:59:26 +03:00
“Naeel”
9f526bdf97
fix: remove api blueprint syntax error
2026-08-31 20:55:26 +03:00
“Naeel”
dcc0be739f
docs: README модуля — раздача в Flask, onXHR, слой 3
2026-08-26 07:12:27 +03:00
“Naeel”
e64d882176
test: покрыть zip deflate (метод 8), skip в Node 18 (нет deflate-raw)
2026-08-25 19:17:52 +03:00
“Naeel”
bbb29fe406
fix: вернуть регистрацию activeXHR (onXHR) для отмены загрузки + тесты чистых функций
2026-08-25 19:14:30 +03:00
“Naeel”
71db745221
test: добавить нагрузочные/долгие тесты слоёв 1 и 2 (37 тестов всего)
2026-08-25 19:11:29 +03:00
“Naeel”
3daa7beea7
fix: resetAll — syncProcCtx до table.clear (неверный рендер «Готово 0/0» после новой сессии)
2026-08-25 17:29:17 +03:00
“Naeel”
8cf9edac73
chore: удалить неиспользуемый site/session.py, bump v0.0.76
2026-08-25 08:56:45 +03:00
“Naeel”
e42fd964f0
feat: интегрировать модуль upload в drhider (бэк blueprint + фронт ES-модули)
2026-08-25 08:52:50 +03:00
“Naeel”
f4bb07820a
fix(upload): параметризация pullRetries/pullRetryDelay/pullTimeout, configure лимитов/TTL, onStatus в init, логирование sid/name
2026-08-25 08:37:09 +03:00
“Naeel”
ad208c32a8
feat: модуль upload — вынос слоёв 1 и 2 (выбор файлов + закачка через ВМ), файл-на-функцию, тесты
2026-08-25 08:08:14 +03:00
“Naeel”
000fb60fa0
1
2026-08-25 07:58:51 +03:00
“Naeel”
70e8e35fab
docs: детализировать PLAN-upload-layers (2 слоя, файл-на-функцию, README для агента)
2026-08-25 07:57:55 +03:00
“Naeel”
b8481d8cc4
docs: тест стабильности v0.0.75 — состав, цикл, CSV/ZIP, кнопка, фильтр zip OK
2026-08-24 20:40:27 +03:00
“Naeel”
cbabf5fd3a
docs: подтверждение v0.0.75 на проде — кнопка при 0 файлов, фильтр zip, регресс OK
2026-08-24 20:23:46 +03:00
“Naeel”
188c6c2e86
docs: решение — историю git не переписываем, ключ убран из файлов, рекомендована ротация
2026-08-24 20:22:40 +03:00
“Naeel”
014e953753
секрет-гигиена: убран LLM_API_KEY из README/DEPLOY/History (попал в коммите 0707d53 при копировании env из Штурвала)
2026-08-24 20:21:02 +03:00
“Naeel”
cef5c4863e
v0.0.75: кнопка disabled при 0 файлов, фильтр документов в expand_zips, README-риски
2026-08-24 20:18:44 +03:00
“Naeel”
83dfcdc546
docs: подтверждение v0.0.74 на проде
2026-08-24 20:12:49 +03:00
“Naeel”
b31a70ade3
v0.0.74: отмена в extract-фазе — прерывание не ждёт все .doc-конвертации
2026-08-24 20:07:23 +03:00
“Naeel”
3bd8067e1b
docs: подтверждение v0.0.73 на проде — SSRF/path traversal защита + регресс подпапок OK
2026-08-24 20:04:10 +03:00
“Naeel”
5b0339ee71
v0.0.73: фиксы по код-ревью Соннета — SSRF, path traversal, слабый SID, proc_error, zip-бомба, self-XSS
2026-08-24 19:58:27 +03:00
“Naeel”
a0e2533e25
docs: код-ревью Соннета — 15 находок (SSRF, path traversal, слабый SID, zip-бомба, idx-мисматч и др.)
2026-08-24 19:50:50 +03:00
“Naeel”
c3fbd574c6
docs: промпт для код-ревью Соннетом — строго ограниченный список файлов + 8 вопросов
2026-08-24 19:37:36 +03:00
“Naeel”
7ff2428c80
docs: TODO — баг кнопки «Обфусцировать» активна при 0 файлов после «Новой сессии» (исправить при следующей правке, v0.0.73)
2026-08-24 19:35:42 +03:00
“Naeel”
bfe633d74f
docs: массовое тестирование v0.0.72 — 4 блока (папка/цикл/прерывание/UI) все OK; найден мелкий баг кнопки при 0 файлов
2026-08-24 19:34:49 +03:00
“Naeel”
fc7247b105
docs: тест v0.0.72 на проде — статусы «не извлечён»/«пропущен (лимит)», счётчик дедупа, полный цикл OK
2026-08-24 19:28:05 +03:00
“Naeel”
97d621dc38
docs: временный сбой сертификата gitea — push починился сам, диагностика
2026-08-24 19:23:37 +03:00
“Naeel”
3cf691cc66
v0.0.72: ретраи pull (3 попытки), корректная ошибка лимита сессии, счётчик дедупа
2026-08-24 19:14:53 +03:00
“Naeel”
ab34f10b83
v0.0.71: разделение статусов — «пропущен (лимит)» vs «не извлечён»; группа «Пропущены (сверх лимита)»; схема логики загрузки + найденные баги
2026-08-24 19:04:55 +03:00
“Naeel”
fd51301024
v0.0.70: заметная кнопка HELP в шапке (вместо «?») + пояснение статуса «пропущен» в ограничениях
2026-08-24 18:53:11 +03:00
“Naeel”
ebc6772fc1
docs: диагноз разового DNS-сбоя pull (gaierror -5) — единичная ошибка, работает
2026-08-24 18:47:28 +03:00
“Naeel”
8d409a757e
docs: полный тест выбора папки v0.0.69 на проде — все сценарии OK, найден баг счётчика при дедупе
2026-08-24 18:42:21 +03:00
“Naeel”
56ed0e14bc
docs: подтверждение v0.0.69 на проде — оба сценария папки с архивами работают
2026-08-24 18:39:28 +03:00
“Naeel”
9cae115196
v0.0.69: архивы из папки не теряются — zip без документов добавляется как есть; раскрытие zip с документами; склонение счётчика
2026-08-24 17:10:21 +03:00
“Naeel”
3906763b3b
v0.0.68: кнопка «Выбрать папку» — рекурсивный выбор папки с подпапками (webkitdirectory), относительный путь сохраняется
2026-08-24 16:47:48 +03:00
“Naeel”
a156f1cc6d
docs: план для Flash — кнопка «Выбрать папку» (webkitdirectory, рекурсивно, относительный путь)
2026-08-24 16:45:56 +03:00
“Naeel”
3eeb3b7884
docs: тесты v0.0.67 (загрузка/лимиты/ZIP-кириллица/ETA/прерывание) + разбор двухкластерного деплоя
2026-08-24 16:38:32 +03:00
“Naeel”
924c4281ce
docs: v0.0.64-0.0.67 (тикеры/оценки, блокировки UI, фикс имён ZIP) + README History
2026-08-24 15:55:55 +03:00
“Naeel”
bfb21540c8
v0.0.67: фикс кириллических имён из ZIP (UTF-8 без флага -> мусор CP866) — строгая UTF-8 проверка в decodeZipName
2026-08-24 15:46:24 +03:00
“Naeel”
a54cef2992
v0.0.66: блокировка выбора/удаления файлов на время загрузки и обработки, заморозка сессии после результата + кнопка Новая сессия
2026-08-24 15:42:37 +03:00
“Naeel”
5f93eb506a
v0.0.65: мгновенные ориентировочные оценки времени обработки по каждому файлу и суммарно (сразу при выборе файлов)
2026-08-24 15:25:36 +03:00
“Naeel”
c0d17972bf
docs: README для History — описание каждой папки и каждого файла
2026-08-24 15:24:57 +03:00
“Naeel”
284a6360cf
v0.0.64: тикер текущего файла и оценки времени на всех этапах обработки (в т.ч. извлечение), самокалибровка скорости
2026-08-24 15:23:38 +03:00
“Naeel”
ab94a72f0a
docs: сортировка History по темам (sonnet, opus, llm, sse, ux-frontend, upload, infra, plans, tests, base, code-fixes)
2026-08-24 15:23:31 +03:00
“Naeel”
44b878ae94
v0.0.63: TTL-фикс, прерывание с сохранением, трекинг файлов/чанков, ETA (global+per-file), UI-таблица 3 секции + кнопка Прервать
2026-08-24 14:59:03 +03:00
“Naeel”
f042d3e12a
docs: подробный план реализации для Flash (TTL+трекинг+прерывание+ETA+UI, v0.0.63)
2026-08-24 14:16:03 +03:00
“Naeel”
1a426af5ee
docs: дизайн TTL-фикса, прерывания с сохранением, оценки времени и UI (план, код не менялся)
2026-08-24 10:48:16 +03:00
“Naeel”
7397ad5acd
docs: тесты загрузки и обфускации 24.08 + найденный баг TTL<долгой обфускации (download 404)
2026-08-24 09:28:02 +03:00
“Naeel”
476684efd8
v0.0.62: лимиты 50МБ/файл, 500МБ/сессия (фронт+бэк), лимиты в UI
2026-08-24 08:22:54 +03:00
“Naeel”
b8f3abe846
docs: тесты реальной обфускации и фикс .doc/liberta (v0.0.61, без параллельности, 2×100 файлов — 0 ошибок конверсии)
2026-08-23 12:56:43 +03:00
“Naeel”
44534c1f3d
v0.0.61: параллельность убрана — .doc через liberta последовательно (liberta не тянет конкурентность, javaldx), LLM _LLM_CONCURRENCY=1
2026-08-23 12:02:32 +03:00
“Naeel”
540ec3e58f
docs: результаты edge-case и стресс-теста загрузки (v0.0.59–0.0.60, OOM на 4Gi, дедуп, лимиты)
2026-08-23 11:11:47 +03:00
“Naeel”
5dc91074a2
v0.0.60: дедуп по имя+размер (дату игнорируем) — при совпадении оставляем более свежий файл, дубль из архива/повтора не создаёт _2
2026-08-23 10:39:16 +03:00
“Naeel”
953b03a807
v0.0.59: убран лимит 100 МБ/файл — учитываются все файлы (остался только суммарный 1 ГБ)
2026-08-23 08:40:34 +03:00
“Naeel”
077e10e629
1
2026-08-23 07:11:06 +03:00
“Naeel”
806e160ddf
drhider: тест-режим 'только загрузка' (?upload-only=1) — ранний выход до Фазы 2 (без обработки) + debug-endpoint /api/session_files
2026-08-23 07:05:52 +03:00
“Naeel”
5f52a4977a
docs: план тест-режима 'только загрузка' (?upload-only=1) для проверки ВМ-загрузки без обработки
2026-08-23 07:04:48 +03:00
“Naeel”
dfc22c166a
docs: план универсального файлового сервиса — статус реализовано/задеплоено (v1.0.0, ВМ)
2026-08-21 16:23:49 +03:00
“Naeel”
85440c6f66
chore: убрать file_list.csv из репозитория (data-артефакт, не относится к коду)
2026-08-21 15:40:32 +03:00
“Naeel”
b880743be4
v0.0.58: ВМ-загрузка (паттерн ВМ-буфер+pull) — PUT на ВМ + /api/upload_refs (egress), nginx /drhider-upload/ + CORS + TTL
2026-08-21 15:40:24 +03:00
“Naeel”
50af8d3a6d
docs: актуализация README/ARCHITECTURE + план паттерна ВМ-буфер+pull (снимок перед ВМ-инкапсуляцией загрузки)
2026-08-21 15:35:45 +03:00
“Naeel”
b025a4afe2
v0.0.57: LLM обрабатывает ВСЕ данные — пофайловый чанкинг (6000/overlap 500), параллельность 4, дедуп+верификация против полного текста
2026-08-20 10:01:01 +03:00
“Naeel”
e8fc0aa2a8
docs: Q&A Sonnet по LLM-чанкингу (схема + 6 уточнений, решение к внедрению)
2026-08-20 09:58:56 +03:00
“Naeel”
5454dd982a
v0.0.56: КРИТИЧНО — mapping.csv (ключ расшифровки) убран из выходного ZIP, CSV только отдельно
2026-08-20 09:38:28 +03:00
“Naeel”
8cb8adfc5d
v0.0.55: A1 threading для .doc (liberta), A2 кэш compiled regex — безопасное ускорение
2026-08-20 09:20:30 +03:00
“Naeel”
4178701a04
v0.0.54: В2 фикс кракозябр имён zip (utf-8+валидация→cp866), В1 фильтр таблиц (безопасен, эффект≈0)
2026-08-20 09:10:16 +03:00
“Naeel”
8c6d749454
docs: ревью Sonnet — промпт, follow-up вопросы, Q&A с ответами
2026-08-20 09:04:03 +03:00
“Naeel”
1863e3df98
v0.0.53: устойчивость к битым файлам — воркер не падает, битые пропускаются, остальные обрабатываются
2026-08-20 08:30:30 +03:00
“Naeel”
d4a2a0bd5e
v0.0.52: файловый лог /tmp/drhider.log (LOG_FILE env) — логи видны в поде через kubectl exec
2026-08-20 08:12:23 +03:00
“Naeel”
fae340ae43
v0.0.51: максимальное логирование (LOG_LEVEL env) + детальные логи SSE/воркера для диагностики обрыва
2026-08-20 07:55:11 +03:00
“Naeel”
d480d16295
v0.0.50: лимиты загрузки (>100МБ/файл, >1ГБ сумма) — красная подсветка в таблице, исключение из обфускации
2026-08-20 07:25:02 +03:00
“Naeel”
1f1bcd1102
docs: бенчмарк UI 5 прогонов DownLoads.zip (v0.0.49)
2026-08-19 19:59:45 +04:00
“Naeel”
781b992227
chore: .gitignore — добавить files/ (тестовые PDF)
2026-08-19 19:28:15 +04:00
“Naeel”
49bee3dccf
v0.0.49: индикатор распаковки архивов, разделение фаз (загрузка/обработка), таймауты SSE на ingress 1800с
2026-08-19 18:49:55 +04:00
“Naeel”
a6e6606622
v0.0.48: версия (без понижения, откат фичи выбора папки остаётся в коде)
2026-08-19 18:43:03 +04:00
“Naeel”
72a78944b4
Revert "v0.0.47: выбор целой папки (webkitdirectory) — рекурсивно, как раскрытие ZIP"
...
This reverts commit b41fe017d3 .
2026-08-19 18:41:43 +04:00
“Naeel”
b41fe017d3
v0.0.47: выбор целой папки (webkitdirectory) — рекурсивно, как раскрытие ZIP
2026-08-19 18:29:34 +04:00
“Naeel”
9414d5cded
docs: удаление process_names + git push HTTP/2 проблема (решение HTTP/1.1)
2026-08-19 18:23:23 +04:00
“Naeel”
cf55b807fb
v0.0.46: удалён тестовый API process_names (нельзя указывать локальные файлы — сервер не видит машину клиента)
2026-08-19 14:54:17 +04:00
“Naeel”
d25e346842
v0.0.45: тестовый API process_names — обфускация файлов по именам (только при валидном TEST_INPUT_DIR)
2026-08-19 14:47:16 +04:00
“Naeel”
ba7c67b18f
v0.0.44: во время LLM live-блок показывает 'ИИ анализирует все файлы', а не имя последнего файла
2026-08-19 14:43:01 +04:00
“Naeel”
95bab59f9a
docs: диагностика нестабильной загрузки + аннотации ingress + таймаут 300с
2026-08-19 14:33:26 +04:00
“Naeel”
b64688a3ee
v0.0.43: таймаут загрузки 30с → 300с (загрузка больших файлов нестабильна через шлюз)
2026-08-19 14:33:08 +04:00
“Naeel”
3f5cdd6df0
v0.0.42: таймер в статусе тикает только у текущего файла (остальные останавливаются при start)
2026-08-19 14:00:10 +04:00
“Naeel”
33ebf80a35
v0.0.41: время на конкретный файл в колонке Статус (бэк считает, без общего LLM)
2026-08-19 13:46:00 +04:00
“Naeel”
5c345b75c5
v0.0.40: имя файла в live-блоке + сброс старых итогов при повторной обфускации
2026-08-19 13:36:12 +04:00
“Naeel”
ef9b7ae9f6
dr
2026-08-19 12:05:27 +04:00
“Naeel”
79a44a6587
v0.0.39: оптимизация apply_replacements — однопроходная замена вместо N×re.sub (ускорение в разы)
2026-08-19 09:47:16 +04:00
“Naeel”
3fa11e2481
v0.0.38: живой таймер обработки + индикация ИИ (live-блок, heartbeat llm в SSE)
2026-08-19 09:25:01 +04:00
“Naeel”
debf745367
v0.0.37: крупный заметный блок статистики (общее время, время ИИ, токены) в UI
2026-08-19 09:16:18 +04:00