Files
healthlog/docs/tasks/items/derived-content-schemas.md
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

31 lines
2.3 KiB
Markdown

# ✨ Выводить схемы содержимого из данных
- **Тип:** feature
- **Категория:** Ядро
- **Зачем:** Метрик больше сотни и формы точек разные — клиент вынужден угадывать структуру по выборке
- **Теги:** goal:self-description
Метрик у Apple больше сотни, формы точек разные, и рукописный каталог описывал
бы документацию HAE, а не то, что он реально прислал. Схема содержимого
**выводится из данных** тем же проходом разбора: незнакомая метрика описывает
себя сама, без релиза.
Схема отдаётся вместе со статистикой — для потребителя она важнее формального
типа: сколько точек, первая и последняя метка, единицы, доля присутствия поля.
Вывод ограничивается по глубине вложенности, иначе схема тренировки с маршрутом
разрастётся до размеров самих данных.
**Глубину вывода для тренировок выбираем по факту**, когда увидим, как приходят
маршруты: структура тренировки разнородна, и заранее назначенный предел либо
срежет полезное, либо не срежет ничего. Точка маршрута при этом описываться
должна — блоб трека не непрозрачен, это массив однотипных объектов.
Готово, когда клиент по `/api/v1/metrics/{name}/schema` видит поля, их типы и
присутствие, не выкачивая выборку.
Связано: `docs/architecture.md` → «Самоописание». Форму конверта API описывает
не эта задача, а OpenAPI.
Двигает строку «Завершения» цели: «Формы содержимого метрик выведены из данных, а не описаны руками».