Commit Graph

44 Commits

Author SHA1 Message Date
reform
3b237af1f0 docs: скриншоты панели (9 разделов) + tools/shots_ui.py для пересъёмки; README — раздел «Скриншоты»
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
2026-10-27 13:21:06 +03:00
Vlad Gothbreach
edb3a37039 chore(auto): 2026-10-27T04:21:54Z — items=46115 typed=46115 sources=3791 priced=4296 runs=128 tests=True problems=['пустых источников 2097/3791'] 2026-10-27 08:14:31 +03:00
Vlad Gothbreach
21f47a9844 chore(auto): 2026-10-27T04:46:53Z — items=43775 typed=43775 sources=3791 priced=4175 runs=128 tests=True problems=['пустых источников 2282/3791'] 2026-10-27 07:47:25 +03:00
Vlad Gothbreach
92bf9eaa12 fix(ui): пункты меню не прячутся под футером; сквозные сценарии панели
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
web/index.html:
- мобильное меню после раскрытия не держит анимационную высоту Bootstrap:
  нижние пункты (Обзор/История/API-ключи) уезжали под .sidebar-footer и не нажимались
- на десктопе рельс #nav скроллится сам, футер не сжимается; активный пункт
  доскролливается в область видимости
- failure() принимает заголовок: ошибка валидации источника больше не подписана
  «Не удалось загрузить данные»

tools/reachability.py: общая проверка «элемент виден, но перекрыт другим» —
hit-test по центру с scrollIntoView, пропуск скрытых узлов и закрытых <details>.

tools/panel_scenarios.py: 11 сквозных сценариев реального пользователя —
deep-link фильтр, экспорт CSV/JSON по байтам, читалка и ссылка на оригинал,
дайджест, поиск источников, Telegram-сессия, форма источника (отказ без записи
в реестр), клавиатурный flow (/ ? Esc 1-9) со сверкой строк ленты с API,
мобильное меню, адаптивность 320-1920 без горизонтального переполнения, зум.

tools/ui_smoke.py: reachability-проверки десктопного рельса, контролов и мобильного меню.
tests: +3 регрессии на CSS/заголовки ошибок; pytest 93 passed, smoke exit 0,
сценарии exit 0, page_errors пуст.
2026-10-27 05:45:14 +03:00
Vlad Gothbreach
0831984918 sources: панели не схлопываются с rad_ того же домена (175 вместо 5 в реестре); тесты уникальности по (url, adapter)
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
2026-10-27 04:09:59 +03:00
Vlad Gothbreach
1781983027 abuse: панели с free-моделями весят по количеству (80+cnt, до 380) — 30 из 120 в топе выдачи
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
2026-10-27 03:47:18 +03:00
Vlad Gothbreach
2e3bf4cb24 abuse: схлопывание перепечаток (sig в индексе, uniq в API), кэш выдачи 60с; scan 13с -> 1.5с
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
2026-10-27 03:43:42 +03:00
Vlad Gothbreach
07dc5cc788 ui: типографика Inter без наложений, подпись бренда в одну строку, плотнее лента; smoke ловит наложения текста
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
2026-10-27 03:35:24 +03:00
Vlad Gothbreach
8d4a4c14b4 abuse: теги accs + продажа подписок, строже порог; panels: реальные free-имена и 130/175 с бесплатными
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
2026-10-27 03:28:44 +03:00
Vlad Gothbreach
cad71c065c ui: локальный Tabler dashboard + 150 проверенных TG-источников и probe 595 каналов
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
2026-10-27 02:54:29 +03:00
Vlad Gothbreach
c1d2d1bbda fix: preserve short release titles and cover source generation contracts
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
2026-10-27 02:09:37 +03:00
Vlad Gothbreach
16512bf4a1 абузы: free-панели new-api на вкладке (роут /api/panels + грид), CSS вынесен из JS, панельный классификатор даёт freeapi-вес, тесты
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
2026-10-27 02:06:32 +03:00
Vlad Gothbreach
b09cb5f873 абузы: extract промокодов/сумм/ссылок в API и панели, +16 проверенных источников (TG/reddit/discourse/RSS/github/HN), чистка HTML в деталях, клэмп days
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
2026-10-27 01:50:05 +03:00
Vlad Gothbreach
8de421b6af abuse: классификатор ловит панели/github/hn и мульти-теги, реальный total из индекса, кап API поднят до 3000
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
2026-10-27 01:28:28 +03:00
Vlad Gothbreach
61f15f88f2 chore(auto): 2026-10-26T22:21:54Z — items=41703 typed=41703 sources=3412 priced=3971 runs=128 tests=False problems=['тесты: OSError', 'пустых источников 2080/3412'] 2026-10-27 01:21:57 +03:00
Vlad Gothbreach
42a864419b abuse: полный пересчёт индекса только по явному вызову (env не тормозит scan)
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
2026-10-27 01:21:01 +03:00
ENI
d0b2187319 реестр: дедуп источников строго по url (2 падавших теста зелёные); инкрементальный abuse-индекс + tgsearch из предыдущей сессии
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
2026-10-27 01:09:30 +03:00
ENI
d0fca99dda тесты: сессия из data/tg.json подхватывается, без файла — выключена (30 passed)
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
2026-10-27 00:16:10 +03:00
ENI
2d7d509434 tg-сессия в комбайне + панель: ключи/сессия в шапке + фикс пустого radar_sources
- omni/config.py: tg_cfg() читает data/tg.json (вне git), env приоритетнее
- omni/tgsess.py: enabled()/fetch() подтягивают креды из config
- tools/tg_pick.py: перебор пула сессий, проверка is_user_authorized, личные аккаунты исключены
- omni claw pump: 2 канала -> 27 постов через сессию (проверено)
- omni/serve.py: /api/stats += keys{totals}, tg{enabled}
- web/index.html: строка статуса в шапке (ключей / сервисов / TG сессия)
- omni/cli.py radar --apply: пишет полный набор, а не только новые (повторный прогон обнулял файл)
- omni/cli.py radar --import-posts: --since-days + скип известных url до simhash
2026-10-27 00:15:06 +03:00
ENI
2b9f4e1d88 дарк-форумы + cookie-проход CF + opt_in радара в обходе
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
- omni/sources_dark.py: cracked.st, nulledbb, forum.tuts4you — реально отдают темы без логина
- tools/cf_cookies.py: Camoufox снимает cookies с JS-челленджей в data/cookies.json (вне git)
- config: cookies.json подхватывается автоматически
- feeds: include_contains матчится по полному href (showthread.php?tid= не резался по path)
- sources_abuse/abuse_sources: A(extra=...) + tuts4you на html_listing (/topic/)
- sources: _gen_sources() = китайские + дарк наборы
- README: ключи/радар/китайцы/дарк
2026-10-26 23:39:47 +03:00
ENI
2320acf3c5 vault ключей + мост abuse-radar + китайские источники: всё в одном реестре
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
- omni/vault.py: пул ключей парсеров (env-first, data/vault.json, ротация, cooldown 401/402/403=1ч, 429=10м), только маски в выводе
- tools/build_vault.py: сборка пула из MASTER_KEYS.csv и локальных дампов (значения не в git)
- tools/vault_check.py: живая проверка с маскированием
- searchers: firecrawl/tavily/exa/serper/jina/apify берут ключ из vault, если нет env
- omni radar: домены+каналы из radar_server.db -> реестр, --import-posts заливает посты каналов
- radar-источники помечены opt_in: общий обход не тормозят (869 против 3337 всего)
- omni/sources_cn.py + tools/wave_cn.py: 9 живых китайских источников (52pojie, nodeseek, kanxue, anquanke, 4hou, xz.aliyun, ithome, cnbeta, v2ex)
- net.get(proxy=...): принудительный прокси для CF-площадок
- /api/keys + строка ключей в панели
- tests/test_vault_radar.py: 7 тестов, всего 29 passed
2026-10-26 23:31:37 +03:00
Vlad Gothbreach
aa417d635b feat(tg): своя сессия Telethon — omni/tgsess.py + omni pump (глубина 200 постов вместо 20, 20 каналов -> 2832 поста, 2592 новых), CVE-ID в заголовке (471), tg_alive_audit из 856 сессий нашёл 121 живую; тесты 22
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
2026-10-26 22:43:21 +03:00
Vlad Gothbreach
74d968ab2d feat(bot): /tag и /типы — счётчики типов и топ по типу, доступны в read-only режиме; тест (20 passed)
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
2026-10-26 21:13:18 +03:00
Vlad Gothbreach
eaedd37bcd feat(tg): реальные абузы из Telegram без сессии — адаптер tg_web переписан (служебное/пустыши отсекаются, заголовок из тела, порог 12/8 для leak-каналов), 19 живых каналов из 87 проверенных, сигнал абуза в score (+до 1.8), tools/tg_discover.py, tools/fixtg.py, tools/purge_tg_junk.py, tools/rescore.py; реестр 869, база 7295 (ab_ 3135, tg_ 374); тесты 19
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
2026-10-26 21:06:50 +03:00
ENI
f9719b9149 ci: воркфлоу в .gitea/workflows (GitHub-токен без scope workflow отклоняет .github/workflows), копия для GitHub в ci/
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
2026-10-26 20:16:57 +03:00
ENI
c9c0a11ef7 fix: 10 пунктов ревью — /run (кортеж store.add), валидация limit/offset в панели, close() соединений SQLite, троттлинг под локом, read-only бот без OMNI_BOT_OWNERS, eviction JOBS, push_new отдаёт свежие записи, ai.py не спит после последней попытки, дедуп реестра, подключён abuse-реестр (+191 источник); tests/test_regress.py 16 проверок + CI py3.10-3.12
Some checks failed
ci / test (3.10) (push) Has been cancelled
ci / test (3.11) (push) Has been cancelled
ci / test (3.12) (push) Has been cancelled
2026-10-26 20:15:50 +03:00
Vlad Gothbreach
136aa88dd6 chore(auto): 2026-10-26T16:37:00Z — items=5594 typed=5594 sources=665 priced=224 runs=120 problems=OK 2026-10-26 19:37:02 +03:00
Vlad Gothbreach
cfb8639c67 feat(x): парсинг X через api.fxtwitter.com — 30 живых хендлов как источники, адаптер x_user, полный текст твитов, метрики; старый syndication-путь (429) убран 2026-10-26 19:33:35 +03:00
Vlad Gothbreach
f5eef56a3b chore(auto): 2026-10-26T16:21:06Z — items=5281 typed=5281 sources=635 priced=209 runs=120 problems=OK 2026-10-26 19:21:07 +03:00
Vlad Gothbreach
9e68b0a68e chore(auto): 2026-10-26T16:20:23Z — items=5281 typed=5281 sources=635 priced=209 runs=120 problems=['дубли url: 1'] 2026-10-26 19:20:24 +03:00
Vlad Gothbreach
2a6799d92d chore(auto): самоаудит 2026-10-26T16:19:01Z — selfcheck_exit=0 2026-10-26 19:19:03 +03:00
Vlad Gothbreach
7b3d708402 feat: типизация записей (14 типов, до 3 на запись), чипы и бейджи типов в панели, CSV с типами, /api/types, doctor --only по категориям, волны источников 5-6 (635 всего) 2026-10-26 19:01:45 +03:00
ENI
4196d66b4e feat: cookie-jar по хосту, CLI omni add для своих источников, README про ключи/прокси/куки/свой сервер 2026-10-26 17:33:03 +03:00
ENI
1c32a5c630 upgrade: abuse recall on dedicated boards, junk-title and traffic-noise filters, single-instance bot lock 2026-10-26 16:28:18 +03:00
ENI
077694f9e4 ai: перевод абузных постов и саммари подборки (bot buttons, /sum, /tr, /api/summary, cache) 2026-10-26 14:09:47 +03:00
ENI
6d65812314 bot: inline keyboard, channel posting, format switch, abuse subscribe; sources: own TG channels; hide keys tag 2026-10-26 13:26:41 +03:00
reform
e49f711b18 bot: /new и /find читают dict-записи, /stats считает живые источники; режим OMNI_BOT_DRY для проверки без отправки 2026-10-26 12:47:01 +03:00
reform
f8000f2f6c bot: убрана мёртвая ветка _api, owner-лимит читает OMNI_BOT_OWNERS или OMNI_BOT_ALLOW 2026-10-26 12:38:59 +03:00
reform
ec61ec21f0 omni: абузы (31 живой источник + классификатор), авто-добавление фидов, Telegram-бот, вкладка абузов; 589 источников 2026-10-26 12:25:24 +03:00
Reform
81f3e556c4 omni: редизайн панели + 450 источников (341 живых), health-аудит, чистка html/дат, per-source учёт 2026-10-26 09:41:04 +03:00
reform
35be863977 omni: менеджер источников в панели (338 источников, вкл/выкл, добавление, health-check, фоновые джобы) 2026-10-25 21:58:22 +03:00
dev
e1368f2a46 omni: веб-панель (serve + /api), дайджест, arxiv API-fallback, HF trending unwrap 2026-10-25 19:11:52 +03:00
dev
c4d188520f omni: реестр 113 источников (papers/company/cn/kr/community/security/forum/models/benchmark) + команды sources и feed 2026-10-25 18:54:33 +03:00
dev
02816cacfb omni-parse: 12 провайдеров, sqlite+fts5, simhash-дедуп, фильтр релевантности 2026-10-25 13:16:56 +03:00