- tmp/research/fixtures.py собирает фикстуры из архива, вычищая измерения и
сохраняя порядок ключей, форму литералов, выравнивание меток и невидимые
символы; шесть фикстур в internal/hae/testdata
- internal/canon — общий дом канонической формы, полноты и хеша: числа читаются
литералом через json.Number, округление до 12 значащих цифр
- internal/hae — разбор секции metrics, вывод слоя по метрике, разделение схем
сна, координаты интервалом; recover внутри Parse, фаззинг
- миграция bucket и docs/database.md
- три решения опровергнуты экспериментами: повтор при SQLITE_BUSY не сходится
без _txlock=immediate (242 из 800 против 800 из 800), разбор в map[string]any
держит 197 МиБ против 54, канонизация без json.Number теряет литерал
- канонизации назначен дом: общий internal/canon вместо hae, иначе импорт
экспорта Apple потребует второй реализации и хеш-детектор станет бесполезен
- вывод слоя вернул шаг наследования, WARN сравнивается только с надёжным
заголовком; в bucket возвращены units и границы содержимого
- proposal и две capability: parsing (вывод слоя, форматы времени, канонизация)
и storage (координатный ключ, слияние по полноте, часовые объекты)
- design фиксирует границы: разбор отдельным пакетом, синхронно после записи в
архив, конкурентная запись в один час — риск с тестом
- вне scope сознательно: тренировки, reindex, словарь кодов, род агрегации