tasks: очередь расставлена от базы к деталям
- порядок беклога и роадмапа назначен слоями: проверки, которым можно верить → долги входа → владелец записи и контракт API → конвейер под тестами → приложение и возможности поверх; у каждого движения записана причина; - заведены восемь задач под пункты «Завершения», которых не закрывала ни одна запись, — цель any-audio-source была без задач вовсе; - у четырёх задач сняты критерии, требовавшие того, что делает задача ниже по очереди; исправлены ссылки на несуществующий repo/sqlite и на отменённую разведку об очереди.
This commit is contained in:
@@ -0,0 +1,41 @@
|
||||
# ✨ Собирать путь одной записи по конвейеру запросом
|
||||
|
||||
- **Тип:** feature
|
||||
- **Категория:** Очередь — Пункт 3 «Завершения» цели не закрывала ни одна задача; применяет словарь, который выберет разведка строкой выше.
|
||||
- **Зачем:** Звенья пути связаны только идентификатором задачи в строках журнала: чтобы понять, где запись провела минуты, владелец читает логи контейнера глазами.
|
||||
- **Теги:** goal:service-observability
|
||||
|
||||
Двигает пункт 3 «Завершения» цели: путь одной записи по конвейеру собирается
|
||||
запросом, а не чтением логов глазами.
|
||||
|
||||
Путь длиной в минуты идёт через четыре внешних сервиса и три воркера. Сегодня
|
||||
его звенья связывает `job_id` в строках журнала, и собирает их человек.
|
||||
|
||||
**Форма ответа зависит от исхода разведки** `opentelemetry-fit`: с OpenTelemetry
|
||||
это трасса со спанами на шаг, без него — отметки времени переходов у самой
|
||||
задачи и запрос по ним. Разведка выбирает словарь, эта задача его применяет.
|
||||
|
||||
## Затрагивает
|
||||
|
||||
- таблица задач: отметки времени перехода между состояниями и их шаг схемы —
|
||||
либо экспорт спанов, если разведка выберет трассировку;
|
||||
- шаги конвейера — место, где отмечается начало и конец звена;
|
||||
- способ прочитать собранное: запрос к хранилищу либо внешний приёмник трасс;
|
||||
- `docs/architecture.md`, раздел эксплуатации — как читается путь записи;
|
||||
- `docs/security.md` — путь записи не несёт ни текста, ни имени файла.
|
||||
|
||||
## Критерии приёмки
|
||||
|
||||
- Путь записи от приёма до готового текста читается одним обращением, без чтения
|
||||
журнала. Оракул — тест: прогнать задачу через все шаги на подставных адаптерах
|
||||
и получить длительность каждого звена.
|
||||
- Путь отказавшей записи показывает звено, на котором она встала. Оракул — тест
|
||||
с отказом на конвертации: звено названо, дальнейших звеньев нет.
|
||||
- Собранное не несёт содержимого записи. Оракул — тест: в ответе только
|
||||
идентификаторы, состояния, длительности и расширение.
|
||||
|
||||
## Рамки
|
||||
|
||||
Берётся после `opentelemetry-fit`: пока словарь не выбран, работа рискует быть
|
||||
переписанной целиком. Хранение путей дольше срока жизни задачи за задачей не
|
||||
стоит.
|
||||
Reference in New Issue
Block a user