Files
contracts/History/mvp-auto-classify-plan.md
T

1.4 KiB

MVP Auto-classification — план реализации

Итоговый план (Опус + мои правки)

Фаза 1: БД + данные

  1. ALTER documents — 7 колонок (doc_type, own_number, parent_number, doc_date TEXT, counterparty, classify_status, batch_id)
  2. db/documents.py — set_classification(), list_pending(batch), list_by_batch(batch)
  3. db/prompts.py — seed classify prompt

Фаза 2: Классификация

  1. llm_prompt.py — build_classify_prompt (строгий JSON)
  2. services/classify.py — умная выжимка + LLM + ThreadPoolExecutor(4)

Фаза 3: Группировка

  1. services/grouping.py — normalize_number + group_documents + apply_groups

Фаза 4: Эндпоинты

  1. convert_server.py — POST /classify-batch, GET /api/groups, POST /apply-groups

Фаза 5: UI

  1. app.js — batch_id, classify button, polling progress, group cards, per-group compare
  2. index.cfm — version bump only (HTML не меняем)

Мои корректировки к плану Опуса

  • batch_id генерируется на клиенте (crypto.randomUUID()), передаётся в upload
  • ZIP — фаза 2, сначала multi-upload (уже работает)
  • doc_date TEXT (не DATE) — LLM нормализует в ISO, при провале null
  • parent_number отдельно от own_number