- роадмап отвечает «что умеет и чего не умеет»: PLAN.md → ROADMAP.md, четыре канонические секции, достигнутые звенья строками в «Готово», цели переформулированы возможностями приложения - задачи: род работы и «Затрагивает» набору спринта, 34 заголовка в форму действия, «Завершение» целей перечнями со ссылкой из каждой задачи - вычитка проходами task-form и doc-wording, починены протухшие факты в README, паспорте и review.md
38 lines
2.6 KiB
Markdown
38 lines
2.6 KiB
Markdown
# Отдавать записи со своим id за период
|
|
|
|
- **Секция:** Ядро
|
|
- **Зачем:** stateOfMind разобран и хранится, но наружу не отдаётся — а восстановить его нечем: в экспорте Apple его нет
|
|
- **Теги:** goal:read-api, sprint:2026-08-04, kind:feature
|
|
|
|
Записи со своим `id` — сегодня это `stateOfMind` — достаются за период через
|
|
`GET /records/{kind}`.
|
|
|
|
Разбор и хранение сделаны тем же изменением, что у тренировок; наружу не отдаётся
|
|
ничего. У этих данных есть особенность, которой нет больше ни у чего в проекте:
|
|
**`stateOfMind` нет в экспорте Apple**, он не восстанавливается пересборкой из
|
|
снапшота, и единственный его источник — доставки HAE. Отдача наружу — не
|
|
удобство, а единственный способ увидеть то, что иначе живёт только внутри базы.
|
|
|
|
Конверт наследуется от точек; собственной формы у записей нет.
|
|
|
|
Двигает строку «Завершения» цели: «Тренировки с маршрутом и записи со своим `id` отдаются за период».
|
|
|
|
## Затрагивает
|
|
|
|
Новый маршрут `GET /api/v1/records/{kind}` и код отказа на неизвестном `kind`.
|
|
Публичный тип провода в `internal/httpapi` — конверт записей. Чтение таблицы
|
|
записей; схемы и формата на диске не трогает.
|
|
|
|
## Критерии приёмки
|
|
|
|
- записи `stateOfMind` за период отдаются одним запросом — оракул: запрос к
|
|
поднятому сервису на живом архиве
|
|
- неизвестный `kind` отвечает отказом со списком известных, а не пустым списком:
|
|
пустота и опечатка обязаны различаться — оракул: тест
|
|
- конверт совпадает с конвертом точек и тренировок — оракул: тест, сравнивающий
|
|
форму ответа трёх маршрутов
|
|
|
|
## Рамки
|
|
|
|
Схема не трогается, данные только читаются. Берётся после конверта.
|