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

40 lines
3.0 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 🔬 Адрес объекта в тексте отказа 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 и боевые данные не трогаем. Отказ придётся вызывать
дешёвым способом: битый объект, объект вне бакета, отозванный доступ — что из
этого доступно, решается по ходу. Цена прогона в деньгах называется до запуска.