File size: 4,208 Bytes
a185686
ff3c435
 
 
 
a185686
ff3c435
a185686
 
 
ff3c435
a185686
ff3c435
 
 
 
a185686
ff3c435
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
---
title: ReportBridge
emoji: 📋
colorFrom: green
colorTo: blue
sdk: docker
app_port: 7860
pinned: false
---

# ReportBridge

Отдельный экспериментальный бэкенд расширения Медиалогии. Production Space
`PRAnalytics/MiniApp` не вызывается, не изменяется и не перезапускается.
`legacy_parser.py`, `max_api.py` и сертификат скопированы из локального снимка
MiniApp, commit `88344382f5b6a32564ef2546f0332f0562a30baf`. Секреты не копировались.

HF Settings -> Secrets:

- `BRIDGE_API_KEY`: отдельный длинный случайный пароль для расширения; НЕ токен HF.
- `VK_ACCESS_TOKEN`: токен VK, если нужны просмотры VK.
- `MAX_ACCESS_TOKEN`: токен бота Макс, если нужны просмотры Макс.
- `JINA_API_KEY`: необязательно, как в старом парсере.

`GET /health` сообщает только наличие настроек, не значения.
`POST /jobs` принимает `{request_id: UUID, links: [URL, ...]}`.
`GET /jobs/{id}` возвращает фактический прогресс и результат.
Для обоих `/jobs` нужен заголовок `X-Bridge-Key`.
Идентификатор запроса предотвращает дублирование запуска при сетевых повторах.
500 ссылок на задание, максимум 5 активных заданий, 1 задание одновременно,
3 параллельных запроса Telegram/Макс. Очередь и результаты хранятся только
в памяти до перезапуска; готовые задания удаляются при новом запуске через час.

Исходящие обращения только к публичным страницам Telegram/Макс, Jina и VK API.
Telegram с нулём из старого HTML-парсера считается неподтверждённым счётчиком,
а не успешным результатом. Ошибки исключаются из суммы; отчёт явно неполный.
Внешние API могут быть недоступны или менять разметку; очередь не отменяет
эти ограничения. Для защищённых материалов `/c/` нужен отдельный сценарий,
они не поддерживаются.

## Статус запуска

27 октября 2026 репозиторий создан отдельно, но HF остановил выделение CPU
для нового Space: `PAUSED`, `Quota exceeded for flavor cpu-basic
(requested=1): current=2, limit=0`. Платные ресурсы не подключались.
На этапе первоначального создания существующие Spaces не изменялись. Для работы облачного
API нужно разрешённое HF выделение CPU в этой организации.
Бэкенд отдельно проверен локально; реальный запрос Telegram получил просмотры.
Тесты сервиса и обработчиков не требуют доступа к рабочему MiniApp.


## Перенос в PR_Tool

По явному разрешению владельца 27 октября 2026 бэкенд переносится в старый
`PRAnalytics/PR_Tool`, заменяя его Streamlit-интерфейс. `MiniApp` по-прежнему
не изменяется. Облачная сборка расширения использует
`https://pranalytics-pr-tool.hf.space`. Старые файлы и ревизия
`e2c307ec07d010e9b03a9c04ae2e65ed957e7c66` сохранены для отката.
В PR_Tool до переноса не было Secrets и Variables; токены VK и Макс
из другого Space автоматически не переносились.