Files
transcriber/tasks/items/speechkit-error-text-leak.md
T
av 11269c1567 учёт: заведён урожай ревью входа по конфигу
- пять задач партии review-2026-08-23: многозначность Remote-Name и Remote-Email,
  мелочи входа, механизация правила о зависимостях конфига, снятие мёртвого
  читателя .env, управляющие знаки в расширении
- две существующие разведки дополнены находками того же прогона: адрес объекта в
  тексте отказа SpeechKit и выводимость имени копии из журнала
2026-08-23 14:03:52 +03:00

3.0 KiB
Raw Blame History

🔬 Адрес объекта в тексте отказа SpeechKit

  • Тип: research
  • Категория: Очередь — Тот же род утечки в журнал, но вне темы входа — идёт следом за ней.
  • Зачем: Текст отказа операции приходит от Yandex и уезжает в журнал и в колонку error_text: если он несёт URI объекта, из журнала снова собирается ссылка на чужую запись.
  • Теги: review-2026-08-23

Гипотеза ревью задачи pocketbase-storage 2026-08-12, оставшаяся без оракула: поднять настоящий отказ Yandex нечем, а прогон на реальных ключах запрещён. Собственные цепочки отказов задача оборвала — чтение из хранилища и выгрузка в Object Storage больше не называют ключ, — но текст, пришедший чужими руками, идёт в журнал и в задачу как есть.

Подтверждено прогоном ревью config-test-headers-login 2026-08-23: та же находка пришла второй раз. Оракула у неё нет и быть не может — нужен настоящий SpeechKit, а прогон на реальных ключах запрещён («Yandex Cloud за деньги»).

Вопрос

Несёт ли текст отказа операции распознавания адрес объекта, который мы отдали SpeechKit, и в каких случаях? Если несёт — чем его отсечь, не потеряв причину отказа: разбором по образцу, перечнем известных кодов отказа или отказом писать чужой текст вовсе.

Куда ляжет ответ

  • Наблюдение с командой и условиями — записка в docs/research/, рядом с pocketbase-defaults.md.
  • Если адрес приходит — норма в спеку storage, требование «Файл отдаётся ссылкой», и строка в docs/security.md, раздел «Из чего строятся пути и ключи»; сама правка — отдельной задачей.
  • Если не приходит — строка в ту же записку, чтобы гипотезу не поднимали заново.

Рамки

Реальные ключи Yandex и боевые данные не трогаем. Отказ придётся вызывать дешёвым способом: битый объект, объект вне бакета, отозванный доступ — что из этого доступно, решается по ходу. Цена прогона в деньгах называется до запуска.