Files
healthlog/docs/tasks/items/read-api-records.md
T
av 3d24248075 docs: документация приведена к канону av-dev-pm 4
- каждая запись каталога задач получила тип вместо тега kind: и префикса
  заголовка; секция роадмапа «Разработка» стала «Сопровождением», порядок
  секций канонический
- поправлены протухшие факты: нереализованные маршруты Read API, MCP и
  `healthlog import`, словарь слоёв в инварианте, семантика гейта по покрытию
  диффа, периметр перестал дублировать security.md
- замер слияния переведён с находки 49 на находку 54, заполнены Purpose спек
  storage и parsing
2026-08-05 19:09:35 +03:00

2.6 KiB

Отдавать записи со своим id за период

  • Тип: feature
  • Категория: Ядро
  • Зачем: stateOfMind разобран и хранится, но наружу не отдаётся — а восстановить его нечем: в экспорте Apple его нет
  • Теги: goal:read-api, sprint:2026-08-04

Записи со своим id — сегодня это stateOfMind — достаются за период через GET /records/{kind}.

Разбор и хранение сделаны тем же изменением, что у тренировок; наружу не отдаётся ничего. У этих данных есть особенность, которой нет больше ни у чего в проекте: stateOfMind нет в экспорте Apple, он не восстанавливается пересборкой из снапшота, и единственный его источник — доставки HAE. Отдача наружу — не удобство, а единственный способ увидеть то, что иначе живёт только внутри базы.

Конверт наследуется от точек; собственной формы у записей нет.

Двигает строку «Завершения» цели: «Тренировки с маршрутом и записи со своим id отдаются за период».

Затрагивает

Новый маршрут GET /api/v1/records/{kind} и код отказа на неизвестном kind. Публичный тип провода в internal/httpapi — конверт записей. Чтение таблицы записей; схемы и формата на диске не трогает.

Критерии приёмки

  • записи stateOfMind за период отдаются одним запросом — оракул: запрос к поднятому сервису на живом архиве
  • неизвестный kind отвечает отказом со списком известных, а не пустым списком: пустота и опечатка обязаны различаться — оракул: тест
  • конверт совпадает с конвертом точек и тренировок — оракул: тест, сравнивающий форму ответа трёх маршрутов

Рамки

Схема не трогается, данные только читаются. Берётся после конверта.