Files
transcriber/docs/adr/ADR-2026-08-11-known-format-label.md
T
av bd6001cd8d имя файла отправителя убрано из журнала приёма
- расширение приводится к перечню известных форматов прежде метки метрики:
  страница метрик открыта, и хвост имени уезжал на неё дословно
- проверки приёма перехватывают все три потока журнала и читают реестр метрик,
  каждая падает при снятии того, что сторожит
2026-08-11 16:37:58 +03:00

3.8 KiB
Raw Blame History

ADR-2026-08-11. Наружу расширение выходит только приведённым к перечню

Решение

Расширение принятой записи приводится к закрытому перечню известных форматов прежде, чем уйти меткой метрики; всё, чего в перечне нет, заменяется одним общим значением. Имя файла на диске при этом не трогается — там расширение остаётся тем, каким пришло.

Дословно из источника:

Из трёх способов человек выбрал средний. Отвергнуты: оставить как есть и завести задачу — канал жил бы до неё, а закрытие этой задачи читалось бы как «починено»; приводить расширение везде, включая имя файла на диске, — раскладка каталога записей объявлена необратимой и меняется решением человека, а не по ходу починки журнала.

Почему

Расширение берётся из имени, которое дал отправитель, дословно: имя запись.тайное-слово отдаёт тайное-слово, а Разговор с Петровым 11.0808. Оно уходило меткой метрики, а страница метрик отдаётся без проверки отправителя. Канал оказался шире того, ради которого задача заводилась: журнал читает владелец сервиса, метки — кто угодно, и то же значение оседает в хранилище метрик. Тем же каналом множество значений метки становится неограниченным: их задаёт анонимный отправитель.

Отказ от нормализации на диске — не экономия, а граница обратимости: формат имени файла и раскладка data/files объявлены необратимыми, и меняются они решением человека под свою задачу, а не попутно с починкой журнала.

Цена

  • Перечень форматов стал нормой и требует ведения: формат, который сервис начнёт принимать, до внесения в перечень будет виден в метрике как общее значение, неотличимо от чужого хвоста.
  • Форма метки размера принятой записи изменилась — ведущая точка пропала (.mp3 стало mp3). Ряды, собранные до выкладки, перестают пополняться.
  • Настоящий формат записи, попавшей в общее значение, остаётся видимым только в журнале — по полю пути строки приёма и полю формата строки конвертации.
  • Хвост расширения по-прежнему уходит в журнал внутри пути файла. Это остаток, он записан в ../security.md, и своей задачи у него пока нет.