- каждая запись каталога задач получила тип вместо тега kind: и префикса заголовка; секция роадмапа «Разработка» стала «Сопровождением», порядок секций канонический - поправлены протухшие факты: нереализованные маршруты Read API, MCP и `healthlog import`, словарь слоёв в инварианте, семантика гейта по покрытию диффа, периметр перестал дублировать security.md - замер слияния переведён с находки 49 на находку 54, заполнены Purpose спек storage и parsing
4.9 KiB
Разведка
Наблюдения за внешним миром: что реально шлёт источник, чем документация формата расходится с практикой. Источник истины — этот каталог, а не чужая документация.
Каждый вывод — с числами и командой, которой получен, чтобы его можно было перепроверить. Число без источника читается как условие, а не как замер.
Как снималось
Сервис запущен локально (task run), телефон шлёт по локальной сети на IP
машины. Автоматизация — REST API, JSON, интервал 5 минут.
Накоплено к 2026-08-01: 42 доставки, 165 МБ тел, 6,6 МБ архива. Три автоматизации, режимы менялись по ходу разведки:
| автоматизация | что шлёт | режимы, которые прошли |
|---|---|---|
BC99C8A3 |
показатели здоровья | суммирование посекундно → поминутно → выключено, период Today → Default → Since Last Sync |
37A43AE1 |
тренировки (сперва ошибочно показатели) | период Default |
F4458FA4 |
состояние разума | период Default |
За это время снято: суммированные данные обеих гранулярностей, несуммированные, тренировка в помещении и уличная с геотреком, состояния разума, ночь целиком. Позже к этому добавился родной экспорт Apple Health — второй источник, снятый разово выгрузкой из приложения «Здоровье».
Разбор — командами вида:
gzip -dc raw/2026/07/31/<id>.json.gz | jq -r '...'
плюс скриптом tmp/research/hl.py (Python 3, только стандартная библиотека,
каталог под .gitignore):
python3 tmp/research/hl.py deliveries что приехало
python3 tmp/research/hl.py metrics --period 'Since Last Sync'
python3 tmp/research/hl.py shapes формы точки
python3 tmp/research/hl.py sources источники, с показом невидимых символов
python3 tmp/research/hl.py points step_count точки, инфляция серий
python3 tmp/research/hl.py sleep разбор ночи
python3 tmp/research/hl.py diff <id1> <id2> что изменилось между доставками
python3 tmp/research/hl.py workouts тренировки, ряды, маршрут
Он канонизирует JSON перед сравнением и показывает невидимые символы — те две грабли, на которых разбор оболочкой ломался молча.
Записи
- apple-health.md — 54 находки на живом потоке Health Auto Export и на родном экспорте Apple.
Записи нумерованы сквозным номером внутри файла, и на номер ссылаются снаружи: спеки, предложения и задачи говорят «находка 49». Поэтому нумерация не пересчитывается, записи не переставляются, новая получает следующий номер.
Тематический указатель по номерам находок:
| Тема | Находки |
|---|---|
| Форма точки, схемы, типы значений | 4, 21, 38, 39, 44 |
| Слой и гранулярность, режимы автоматизации | 5, 6, 13, 19, 20, 23, 33, 41 |
| Идентичность, столкновения, слияние, полнота | 11, 14, 36, 47, 49, 54 |
| Досчёт задним числом и стабильность значений | 3, 10, 30, 48, 51 |
| Локализация и категориальные значения | 8, 24, 37, 43 |
| Секции потока и их состав | 9, 15, 16, 17, 22, 34, 50, 52 |
| Заголовки доставки и мета-информация | 12, 31, 32 |
| Родной экспорт Apple как второй источник | 34, 42, 43, 45, 46 |
| Объём, цена, что чистить | 7, 23, 41 |
| Поведение приложения и потери данных | 18, 26, 27, 28, 29 |
| Род агрегации | 40, 53 |
| Разбор ночи, сон | 25, 35, 38, 47 |
Источник точки (source) |
1, 2, 36 |