chore: pin document recognition engine
Some checks failed
CI / Backend (lint + tests + compose) (push) Has been cancelled
CI / Frontend (lint + type-check + build) (push) Has been cancelled

This commit is contained in:
Vadim Malanov
2026-06-25 11:43:29 +03:00
parent 809d7244bf
commit 4fcec8039b
7 changed files with 154 additions and 459 deletions

View File

@@ -1,6 +1,6 @@
# ADR: Extract OCR / Markdown / Search into a shared `teamhub_core` engine
Status: accepted (staged) · 2026-06-15 · scope: `legacy-knowledge-indexer` + `TeamHUB/Engines`
Status: accepted (staged, recognition engine extracted) · 2026-06-15 · scope: `legacy-knowledge-indexer` + `TeamHUB/Engines`
## Контекст
@@ -42,12 +42,16 @@ versioned dependency / git submodule (D10). Извлечение делаетс
- **`obs`-ядро готово.** `app/common/json_logger.py` написан без app-specific
импортов и переносится в ядро как есть.
- **Плейтменеджмент секретов вынесен из дефолтов** (см. `_enforce_secret_policy`).
- **Первый физический engine вынесен.** OCRmyPDF/Tesseract + Docling recognition
теперь живут в `TeamHUB/Engines/engines/teamhub-document-recognition-engine`;
LegacyHUB оставляет `app/ingestion/ocr.py` и
`app/ingestion/docling_extractor.py` как тонкие адаптеры и source metadata в
`app/ingestion/ENGINE_SOURCE.md`.
## Остаточные шаги (staged, координируются с QMS/MailHUB)
1. Создать `Engines/engines/teamhub_core/` с README (public API/CLI, inputs/outputs,
profile/config model, команда проверки, release notes) и версионным тегом
(`teamhub-core-v0.1.0`).
1. Поддерживать LegacyHUB pin на `teamhub-document-recognition-engine-v0.1.0`
до следующего совместимого release.
2. Перенести `contracts` (типы поиска/цитирования) из `app/api/schemas` в
`teamhub_core.contracts`; `app/api/schemas` ре-экспортирует их для совместимости.
3. Перенести `search`/`ingest`/`storage`/`obs` в ядро; `run_search` принимает