Files
healthlog/docs/tasks/items/read-api.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

34 lines
2.8 KiB
Markdown

# 🎯 Клиенты читают данные через HTTP и MCP
- **Тип:** goal
- **Секция:** Запланировано
- **Зачем:** Данные видны только через sqlite на хосте — ни один из трёх потребителей, включая агента-медика, ничего прочитать не может
- **Теги:** decomposed
Потребители читают данные: точки с выбором слоя и свёрткой по сетке, тренировки
и записи, машиночитаемый контракт — и всё то же самое через MCP.
Идёт после каталога и рода агрегации намеренно:
без измеренного рода свёртка в ответе неотличима от угадывания, а ошибиться
здесь дорого — просуммировать нижний слой значит завысить втрое.
**MCP входит в эту цель, а не идёт отдельной.** Прежде их было две, и разделяла
их очередь: адаптер собственной логики не несёт, он переводит вызовы в те же
обработчики, и переводить было нечего. Очередь никуда не делась — она стала
порядком задач внутри цели, — а вот отдельная цель под адаптер описывала не
направление, а последний шаг этого же направления. Заказчик у обоих транспортов
один: три потребителя, из которых первый — агент.
## Завершение
- Точки метрики за период отдаются по HTTP без доступа к файлу базы
- Повторный запрос тех же точек стоит `304`, а не полного чтения
- Точки сворачиваются по заданной сетке измеренным родом агрегации
- Неполное ведро отличимо от полного, и полярность порога названа
- У ответа любого маршрута чтения есть объявленный предел размера
- Тренировки с маршрутом и записи со своим `id` отдаются за период
- Контракт чтения читается машиной: спека, гейт против её расхождения с
маршрутами, UI без внешней сети
- Агент-медик читает то же самое через MCP тем же токеном чтения, и собственной
логики адаптер не несёт