docs: DrHider working state — v1.1, VM, 19 entities, 30s, 6 files ZIP
Deploy contracts-flask / validate (push) Successful in 0s
Deploy contracts-flask / validate (push) Successful in 0s
This commit is contained in:
@@ -0,0 +1,59 @@
|
|||||||
|
# DrHider — рабочее состояние v1.1
|
||||||
|
|
||||||
|
Файл: `/home/naeel/nubes/contracts/contracts-flask/History/drhider-working-state-2026-06-29.md`
|
||||||
|
|
||||||
|
29.06.2026 16:55
|
||||||
|
|
||||||
|
## Статус: РАБОТАЕТ
|
||||||
|
|
||||||
|
VM (`contracts.kube5s.ru`) — полный цикл: страница → загрузка → обфускация → ZIP.
|
||||||
|
|
||||||
|
## URL
|
||||||
|
|
||||||
|
- Страница: `https://contracts.kube5s.ru/drhider`
|
||||||
|
- API: `POST https://contracts.kube5s.ru/api/drhider` (JSON base64)
|
||||||
|
- Редирект с managed: `https://contractor.pythonk8s.services.ngcloud.ru/DrHider` → VM
|
||||||
|
|
||||||
|
## Тест (VM → публичный URL)
|
||||||
|
|
||||||
|
```
|
||||||
|
POST /api/drhider с примеры_договоров_для_ИИ.zip (120KB, 5 файлов внутри)
|
||||||
|
→ HTTP 200, 107KB ZIP, 30 секунд
|
||||||
|
→ 6 файлов в ZIP: 5 обфусцированных + mapping.csv
|
||||||
|
→ 19 обфусцированных сущностей (телефоны, email, компании, ФИО)
|
||||||
|
```
|
||||||
|
|
||||||
|
## Что работает
|
||||||
|
|
||||||
|
- ZIP-распаковка: вложенные архивы извлекаются, cp437→utf-8
|
||||||
|
- Regex-обфускация: телефоны, email, ИНН, ОГРН, КПП, БИК, счета, паспорта
|
||||||
|
- COMPANY_PATTERN: Unicode-кавычки, ASCII-кавычки, «ёлочки»
|
||||||
|
- PERSON_PATTERN: Фамилия И.О. и Фамилия Имя Отчество (только кириллица)
|
||||||
|
- WHITELIST: "НУБЕС" не заменяется
|
||||||
|
- Paragraph-level замена в .docx: runs склеиваются
|
||||||
|
- .doc — бинарный, пропускается без изменений
|
||||||
|
- PDF → .txt (текст без форматирования)
|
||||||
|
- mapping.csv внутри ZIP
|
||||||
|
- Таймер в UI (секунды обработки)
|
||||||
|
- nginx: /api/drhider → 600s timeout, CORS
|
||||||
|
|
||||||
|
## Что НЕ работает (известные ограничения)
|
||||||
|
|
||||||
|
- LLM-NER: не подключён (нужен LLM_KEY на VM)
|
||||||
|
- PDF: форматирование теряется (read-only)
|
||||||
|
- .doc: не обфусцируется (бинарный формат, нет libreoffice)
|
||||||
|
- Нет кнопки очистки сессии
|
||||||
|
- 30 секунд на 5 файлов — медленно (LLM замедляет, даже regex)
|
||||||
|
|
||||||
|
## Файлы
|
||||||
|
|
||||||
|
- `/home/naeel/nubes/contracts/contracts-flask/deploy/services/drhider.py` — ядро v1.1
|
||||||
|
- `/home/naeel/nubes/contracts/contracts-flask/deploy/convert_server.py` — VM обработчик
|
||||||
|
- `/home/naeel/nubes/contracts/contracts-flask/site/templates/drhider.html` — страница (скопирована на VM)
|
||||||
|
- `/home/naeel/nubes/contracts/contracts-flask/site/app.py` — редирект с managed
|
||||||
|
- `/etc/nginx/sites-enabled/nginx-contracts.conf` — nginx (VM)
|
||||||
|
|
||||||
|
## Версии
|
||||||
|
|
||||||
|
- DrHider: v1.1
|
||||||
|
- contracts-flask: v1.0.194
|
||||||
Reference in New Issue
Block a user