-
d137074ed5
fix(core): ходить в CORE через sing-box — с российских адресов ключ не работает
main
jze9
2026-09-17 15:48:43 +05:00
-
9123844a87
fix(ops): не хоронить источник после одного пустого прогона
jze9
2026-09-16 18:34:14 +05:00
-
263a521d63
fix(ops): перезапускать worker-indexer, когда менялись парсеры
jze9
2026-09-16 18:32:11 +05:00
-
7adccd0362
fix(core): резать выборку по архивам, а не по годам — AND в API не работает
jze9
2026-09-16 18:15:38 +05:00
-
7348051c7b
chore(ci): перезапустить деплой после чистки сервера Gitea
jze9
2026-09-16 17:56:43 +05:00
-
3d4fcecbb2
feat(core): подключить CORE как источник полных текстов
jze9
2026-09-16 17:05:34 +05:00
-
20c1d00443
fix(pmc): не давать залипшему запросу съесть весь бюджет прогона
jze9
2026-09-15 13:39:45 +05:00
-
5ceec1e2e3
fix(ops): сторож не снимает живой прогон на долгом COPY
jze9
2026-09-15 13:39:36 +05:00
-
d86bb606c7
fix(wikipedia): позиция — байтовое смещение, а не номер статьи
jze9
2026-09-05 23:26:16 +05:00
-
d3106efeee
feat(ops): заливка идёт сама — автоперезапуск порций по cron
jze9
2026-09-05 21:56:48 +05:00
-
eb2dee9093
perf(ops): начинать листинг PMC после последней залитой статьи
jze9
2026-09-05 21:53:07 +05:00
-
a76e46c561
feat(ops): замер качества детекции — первые честные цифры
jze9
2026-09-05 20:45:59 +05:00
-
fed4b54cfc
fix(ops): мониторинг под реальную топологию + проверка воркеров
jze9
2026-09-05 20:43:01 +05:00
-
26de1b9de1
refactor(ops): массовая заливка — в общий конвейер вместо отдельных скриптов
jze9
2026-09-05 20:32:53 +05:00
-
1b1ca3b7e3
fix(admin): починить панель отладки — она отдавала 500
jze9
2026-09-05 20:17:28 +05:00
-
39951d6a0f
feat(admin): показывать зависшие проверки в панели отладки
jze9
2026-09-05 19:13:01 +05:00
-
f4092e5331
fix(ops): заливки переживают обрывы базы и сети
jze9
2026-09-05 19:13:01 +05:00
-
476682741e
fix(L1): обрезать отпечатки равномерно по тексту, а не произвольно
jze9
2026-09-05 19:13:01 +05:00
-
9145de8e54
docs(worker-gpu): объяснить, почему параллельность воркера жёстко равна 1
jze9
2026-08-31 21:11:19 +05:00
-
780a0a1061
fix(ops): читать дамп Википедии с диска — сетевой поток рвётся на 5.6 ГБ
jze9
2026-08-31 20:54:59 +05:00
-
06363c7401
feat(ops): заливка русской Википедии — единственный доступный источник объёма
jze9
2026-08-31 20:53:10 +05:00
-
e4ca4a7150
docs: сервер эмбеддингов переехал на .1.40 + честные итоги проверок
jze9
2026-08-31 17:06:41 +05:00
-
2d38dfd1f4
feat(ops): путь к миллионам статей — массовая заливка из бакета PMC (не закончен)
jze9
2026-08-28 17:58:17 +05:00
-
d7c004af76
feat(ops): углубление индексации КиберЛенинки + общий store_full_text
jze9
2026-08-28 17:45:48 +05:00
-
d8630ca0f9
fix(admin): покрытие L3 мерить по индексу, а не по отметкам в базе
jze9
2026-08-28 17:17:41 +05:00
-
ea62f10829
feat(admin): состояние инфраструктуры на странице отладки
jze9
2026-08-28 17:00:19 +05:00
-
4008b5019f
test(admin): закрепить смысл таймингов прогона + время работы в отладке
jze9
2026-08-28 16:58:42 +05:00
-
99bf14fe6a
feat(admin): честная длительность прогона + добор эмбеддингов
jze9
2026-08-28 16:51:25 +05:00
-
f1a8d07cb3
fix(openalex): пауза между страницами и живой backoff — заливка тонула в 429
jze9
2026-08-27 17:54:42 +05:00
-
78e27806b9
feat(admin): шкала загрузки источников, отладка и загрузка работ в корпус
jze9
2026-08-27 17:40:23 +05:00
-
95d2903766
docs(DR-HA): зафиксировать риск RabbitMQ consumer_timeout + Infisical failover
jze9
2026-08-27 16:54:26 +05:00
-
fc40793f4d
docs: актуализировать документацию (Infisical, OpenRouter, bge-m3, PMC) + чистка
jze9
2026-08-27 16:51:31 +05:00
-
6c53213103
fix(compose): опубликовать порт 8000 у api — прод отвечал 502 на все запросы
jze9
2026-08-27 16:38:27 +05:00
-
c152fafa70
feat(deploy): переключить .env на проде на Infisical вместо ручного файла
jze9
2026-08-27 16:25:28 +05:00
-
1dd3f1569f
fix(indexer): не превышать consumer_timeout RabbitMQ в retry-бэкоффе OpenAlex
jze9
2026-08-26 20:08:16 +05:00
-
76e221f856
fix(embeddings): не терять батч на таймауте Ollama, уменьшить пачку
jze9
2026-08-26 18:37:49 +05:00
-
e05e658d81
feat(proxy): sing-box для обхода блокировки OpenRouter из РФ
jze9
2026-08-26 17:37:26 +05:00
-
c156fb2b78
feat(embeddings): добавить облачный бэкенд (DeepInfra, та же bge-m3)
jze9
2026-08-26 17:18:11 +05:00
-
96a4530a93
feat(llm): переключаемый бэкенд для L4 — Ollama или OpenRouter
jze9
2026-08-26 17:11:46 +05:00
-
344f78b795
fix(openalex): ограничить retry на 429 и добавить экспоненциальный backoff
jze9
2026-08-26 16:32:02 +05:00
-
237e1767a7
feat(embeddings): переключить эмбеддинги на Ollama/bge-m3 (GPU через Vulkan)
jze9
2026-08-26 15:08:30 +05:00
-
74cbf1b8f4
fix(plagiarism): не матчить против чужих/своих же загруженных работ
jze9
2026-08-25 17:42:23 +05:00
-
43034eda33
fix(indexer): не дублировать полный текст, если он уже есть у парсера
jze9
2026-08-25 16:27:21 +05:00
-
729b41bbfb
feat(corpus): добавить прикладные/техникумовские темы в русский сидинг
jze9
2026-08-25 15:52:12 +05:00
-
29301c3a4c
feat(cabinet): дать пользователю самому удалять задачи из кабинета
jze9
2026-08-25 15:24:46 +05:00
-
5eac465917
fix(frontend): не прятать блок с текстом работы по умолчанию
jze9
2026-08-25 15:02:46 +05:00
-
d02596cedb
feat(plagiarism): показывать текст работы с подсветкой совпадений
jze9
2026-08-25 14:32:16 +05:00
-
53d0de3d71
feat(plagiarism): показывать тематически близкие источники, а не только нарушения
jze9
2026-08-25 14:16:09 +05:00
-
12eb954838
fix(indexer): возвращать месячную квоту при провале извлечения файла
jze9
2026-08-24 21:32:02 +05:00
-
df2dfcc456
fix(indexer): понятная ошибка, если загруженный "PDF" на самом деле не PDF
jze9
2026-08-24 18:55:24 +05:00
-
712dc383ea
fix(api): лимит одновременных задач считать по БД, не по Redis-счётчику
jze9
2026-08-24 18:42:29 +05:00
-
61c903ae0e
fix(api): 500 на GET /tasks/{id} при обращении к закэшированному юзеру
jze9
2026-08-24 18:31:20 +05:00
-
c76f60df69
fix(auth): логировать тело ответа при ошибке OAuth-обмена кода
jze9
2026-08-24 18:21:23 +05:00
-
9f35ae8de1
feat(auth): вход через Google и Яндекс (OAuth2 authorization code flow)
jze9
2026-08-24 17:59:10 +05:00
-
251be1d77b
fix(ci): не валить джобу на неудачной уборке временного чекаута
jze9
2026-08-24 17:07:46 +05:00
-
b471ec767a
feat: две доработки в духе коммерческих систем — цитаты и авто-корпус
jze9
2026-08-24 15:09:43 +05:00
-
92a1ce0f57
feat(ingestion): скрипт бэкфилла full_text для CyberLeninka из OCR
jze9
2026-08-24 15:09:18 +05:00
-
2aac40ed3e
feat(parsers): новый источник PubMed Central (PMC) — реальный полный текст
jze9
2026-08-24 14:47:15 +05:00
-
cc87a11f07
feat(parsers): CyberLeninka full_text из OCR-фрагментов поиска (без доп. запросов)
jze9
2026-08-24 14:37:12 +05:00
-
92e23b5209
feat(ingestion): расширение охвата корпуса — 64 новые дисциплины
jze9
2026-08-24 13:53:01 +05:00
-
ea5c3a962c
docs: визуальная схема системы (Mermaid) — docs/DIAGRAM.md
jze9
2026-08-24 13:47:45 +05:00
-
6099ef621f
fix(parsers): ленивый импорт bs4 в CyberLeninka + добавить в зависимости
jze9
2026-08-12 21:10:55 +05:00
-
9d005486df
fix(parsers): починить CyberLeninka + подготовить русскую заливку корпуса
jze9
2026-08-12 21:02:16 +05:00
-
e6c44f30dd
docs: полное описание проекта — docs/ARCHITECTURE.md
jze9
2026-08-11 20:45:23 +05:00
-
d32a07d0a8
feat(ops): DR-тест восстановления бэкапа PG + runbook HA/DR
jze9
2026-08-11 20:40:03 +05:00
-
d2d99d8231
feat(obs): наблюдаемость Prometheus + Grafana под профилем observability
jze9
2026-08-11 20:37:47 +05:00
-
012b17304f
feat(gpu): Qdrant как векторный бэкенд под флагом — снимает SPOF FAISS
jze9
2026-08-11 20:34:43 +05:00
-
37ee18ac55
docs(readme): секция «Тестирование и качество» + фикс устаревших фактов
jze9
2026-08-11 20:22:45 +05:00
-
ccc3521e74
refactor(gost): вынести сборку списка литературы в app.bibliography + 7 тестов
jze9
2026-08-11 20:20:01 +05:00
-
b2d2061a83
refactor(indexer): вынести разбиение на фрагменты в app.fragments + 5 тестов
jze9
2026-08-11 20:17:33 +05:00
-
4c15f11efa
refactor(gpu): вынести скоринг плагиата в чистый app.scoring + 8 тестов
jze9
2026-08-11 20:13:27 +05:00
-
426796a9a7
test(gpu): покрыть L4 OllamaClient (парсинг парафраза, 12 тестов)
jze9
2026-08-11 20:10:34 +05:00
-
e79f254af6
chore(lint): добавить mypy в CI-гейт — старт градуальной типизации
jze9
2026-08-11 20:07:44 +05:00
-
2daaa8c8a4
chore(lint): ruff-гейт в CI + фиксы (0 находок) — блокирует кривой деплой
jze9
2026-08-11 17:20:24 +05:00
-
ecc10a4413
test: юнит-суит L1/L2/L3 + ГОСТ (41 тест) и гейт в CI перед деплоем
jze9
2026-08-11 17:11:08 +05:00
-
a2d3625f2a
refactor(gpu): убрать мёртвый _reverse_map/_use_gpu из FAISSManager
jze9
2026-08-11 16:57:03 +05:00
-
e328236d0f
fix(ci): pip через Tsinghua-зеркало во всех Dockerfile — надёжные сборки
jze9
2026-08-07 16:46:08 +05:00
-
52e5550f91
fix(indexer): гонка дублей ext_id (IntegrityError→duplicate) + откат Dockerfile
jze9
2026-08-07 16:05:42 +05:00
-
c4596f2c3a
fix(ci): устойчивость сборки worker-indexer к медленному/флоки pypi
jze9
2026-08-07 15:13:37 +05:00
-
9b7becf4d1
feat(ingest): is_oa-фильтр OpenAlex + PDF-ссылка arXiv → покрытие full-text ↑
jze9
2026-08-07 15:04:03 +05:00
-
61b2275972
fix: гонка dispatch-before-commit (search/plagiarism) + detached user в notify
jze9
2026-07-30 13:04:49 +05:00
-
8dc51a4f65
ci: пересобирать только изменённые сервисы + полный клон для diff
jze9
2026-07-29 13:34:30 +05:00
-
34fa495fb1
ci: авто-деплой в прод через Gitea Actions (push в main)
jze9
2026-07-29 13:23:04 +05:00
-
b0e1eadcbb
feat(indexer): MinHash LSH (уровень 2) в общем Redis вместо памяти
jze9
2026-07-29 13:09:51 +05:00
-
f1c1530cea
fix(frontend): убрать неиспользуемый импорт React в Settings
jze9
2026-07-27 13:40:49 +05:00
-
5cbc1e127b
feat(profile): редактирование персональных данных и смена пароля
jze9
2026-07-27 13:22:05 +05:00
-
3af79e9d03
fix(auth): сбрасывать Redis-кэш пользователя после подтверждения email
jze9
2026-07-27 12:22:37 +05:00
-
673e72a15a
feat(infra): переход прод/test на общую инфраструктуру вместо self-hosted
jze9
2026-07-27 12:22:36 +05:00
-
25e55a3f7d
fix(detection): пофрагментная локализация уровня 1 + полное хранение отпечатков
jze9
2026-07-23 19:57:05 +05:00
-
ef2723e1d3
feat(indexer): скачивание полного текста статей + батчинг эмбеддингов
jze9
2026-07-23 19:42:02 +05:00
-
38b000703a
fix(gpu): рабочий FAISS-индекс вместо необучаемого IVFFlat
jze9
2026-07-23 19:28:34 +05:00
-
9ca2bd1742
fix(notifier): маппинг input_data в модели Task для уведомлений о завершении
jze9
2026-07-23 19:16:13 +05:00
-
c1cf1ddd2f
feat(auth): подтверждение email + актуализация SMTP/Ollama конфигов
jze9
2026-07-23 18:37:22 +05:00
-
9894fa9320
feat: админ-панель, лицензия, тестовый стек на распределённой инфраструктуре
jze9
2026-05-30 20:45:53 +05:00
-
9ee5ccdc3f
chore: remove obsolete version field from compose files
jze9
2026-05-25 00:16:14 +05:00
-
c1bfb5f40e
fix(api): security, caching, atomic rate limits, url obfuscation
jze9
2026-05-24 19:51:51 +05:00
-
7758315632
feat: initial microservices project structure
jze9
2026-05-24 19:42:39 +05:00