- 20 задач: 8 высоких, 9 средних, 3 низких; две заведены идеями — сутки при смене часового пояса и пересекающиеся источники одной метрики - план сведён к порядку и его обоснованию, единицы работы переехали в беклог
1.5 KiB
Read API: точки, выбор слоя, свёртка по сетке
Приоритет: высокий
Сейчас данные достаются только sqlite3 на хосте. Все три сценария —
агент-медик, трекер тренировок, фитнес-игра — упираются в отсутствие чтения.
Формы запроса ровно две, и это один запрос с необязательным параметром:
?from&to — все значения за период (вес, лекарства, симптомы), ?from&to&bucket
— с разбивкой (шаги, энергия).
Решение по размеру ответа (вариант «б»): разбивка не задана и ответ не влезает — сервер сам берёт сетку погрубее и называет её в ответе; разбивка задана явно и не влезает — ошибка со списком доступных сеток, а не тихая подмена. Различие существенно: иначе агент, попросивший минутную сетку, получит суточные суммы.
Готово, когда «шаги за неделю по дням» и «вес за год» отвечаются одним запросом
каждый, а в ответе всегда видно layer, bucket и aggregation.
Связано: docs/architecture.md → «Read API», план шаг 5.