Срез 2c: DBML v5.15 (NU, email, индексы), §1.3/§1.5/§3/§9 по факту маппинга, OQ-110…117, qa-guide #17

Merged
aep merged 5 commits from feat/16-slice-2c-osv-ingest into main 2026-10-06 00:56:05 +03:00

5 Commits

Author SHA1 Message Date
Andrey Epifancev
e3d3c2a9eb model: v5.15 — индексы osv_entry(parent_entry_id, recognition_job_id), stored_file(current_recognition_job_id) (I-1, OQ-117)
- data-model-v5.15.dbml: обычные индексы osv_entry (parent_entry_id), osv_entry (recognition_job_id),
  stored_file (current_recognition_job_id) с note; п. 4 changelog v5.15 — индексы для удаления файла и
  обхода дерева строк; замер: DELETE документа 1000 строк 8,6 с → 16 мс на 200 тыс. строк.
- entities-v5.15.md: строка 4 в «Что изменилось в v5.15».
- 07-open-questions: OQ-117 закрыт в v5.15 (v5.16 и миграция 0004 не понадобились).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-06 00:55:25 +04:00
Andrey Epifancev
8c73fe941c docs: OQ-117 индексы osv_entry, актуализация плана срезов и qa-guide
- 07-open-questions: OQ-117 — индексы osv_entry(parent_entry_id),
  osv_entry(recognition_job_id), stored_file(current_recognition_job_id); без них
  DELETE /files/{id} делает seq scan на проверке self-FK (I-1 final review, R-24);
  нужны DBML v5.16 и миграция 0004, блокер до прода / до подсреза 2d.
- 09-delivery-plan: итог make check-full приведён к фактическому прогону
  (e2e skipped в check-full, отдельный e2e 1 passed, fixtures 13 + 1 skipped);
  решения без обсуждения №1–52 (T12.6).
- qa-guide U16: до ERROR файл остаётся UPLOADED (ack нет) (T12.7).

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-06 00:37:53 +04:00
Andrey Epifancev
45ee08c0f8 docs: §1.3/§1.5/§3/§9 по факту маппинга, архитектура (цикл маппинга), OQ, план срезов, qa-guide
05-domain-rules: §1.3, §1.5, §3 п. 4, §9.2–9.3, новый §9.5 (загрузка, маппинг, автозамена, подтверждение, удаление, аудит).
03-architecture: цикл маппинга, порядок блокировок, схема ключей S3. 07-open-questions: закрыты OQ-67/69/70/59/109,
новые OQ-110…116. 09-delivery-plan: Срез 2c по факту. dev/qa-guide: раздел 6.6 «Загрузка ОСВ и просмотр строк через API».
tasks.md: 2.1 выполнен.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-06 00:11:52 +04:00
Andrey Epifancev
5545ee539f docs: entities-v5.15, guide, ссылки на DBML v5.15
entities-v5.15.md — копия v5.14 + «Что изменилось в v5.15» (osv_data_type NU, email в нижнем регистре, семантика
stored_file.status); 04-data-model-guide и шаблон CLAUDE.md arm-core — на v5.15; tasks.md change'а: 1.2 выполнена.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-05 21:27:52 +04:00
Andrey Epifancev
c821e0fbfe OpenSpec: change slice-2c-osv-ingest (DBML v5.15, правила маппинга ОСВ в ядре, OQ) и data-model-v5.15.dbml
Issue: RSHB/arm-ka-docs#16

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_012vJkmBGKKqMoEMzvsXG3y2
2026-10-05 21:08:49 +04:00