tasks: целевая картина пересобрана — три цели, тринадцать задач, сдвинутые границы
- паспорт: сервис объявлен архивом с бессрочным хранением записей и текстов, машинная вычитка расшифровки внутри границ, приложение — основной вход; добавлены две границы: не файловое хранилище общего назначения и не биллинг; - заведены цели upload-reliability, user-settings, usage-stats и тринадцать задач; очередь пересобрана — сперва починки, затем разведки о хранилище, затем доступ и владелец, и только потом экраны; - архитектура: четыре новых открытых вопроса — приём большого файла, учёт расхода, срок хранения, потолок шести часов.
This commit is contained in:
@@ -0,0 +1,37 @@
|
||||
# ✨ Сделать страницу статистики для владельца
|
||||
|
||||
- **Тип:** feature
|
||||
- **Категория:** Очередь
|
||||
- **Зачем:** Собранный учёт читается только запросом к базе руками: ни страницы, ни признака владельца в приложении нет.
|
||||
- **Теги:** goal:usage-stats
|
||||
|
||||
Двигает пункты 1, 2 и 3 «Завершения» цели: расход по каждому пользователю виден
|
||||
на странице, и открывается она только владельцу сервиса.
|
||||
|
||||
## Затрагивает
|
||||
|
||||
- новый экран приложения: таблица пользователей с объёмом, минутами и расходом,
|
||||
накопительно и за период;
|
||||
- эндпоинт сводки потребления с отбором по периоду;
|
||||
- признак владельца сервиса: откуда он берётся — из группы OIDC или из
|
||||
конфигурации;
|
||||
- `docs/security.md` — второй уровень доступа помимо «свой или чужой».
|
||||
|
||||
## Критерии приёмки
|
||||
|
||||
- Владелец видит на странице строку по каждому пользователю с объёмом, минутами
|
||||
и расходом. Оракул — тест экрана на подставном API: три пользователя, три
|
||||
строки, числа совпадают с ответом.
|
||||
- Обычный пользователь получает отказ и на странице, и на эндпоинте сводки, а не
|
||||
пустую таблицу. Оракул — тест эндпоинта под обычной учётной записью: `403`.
|
||||
- Отбор по периоду меняет числа. Оракул — тест на выборке за месяц и за всё
|
||||
время.
|
||||
- Страница не показывает ни имён файлов, ни текстов записей — только
|
||||
идентификаторы и числа. Оракул — тест ответа сводки: полей с именем и текстом
|
||||
в нём нет.
|
||||
|
||||
## Рамки
|
||||
|
||||
Берётся после `usage-accounting` — до неё показывать нечего. Управления
|
||||
пользователями на странице не делаем: заводит и отключает их Authelia. Цен и
|
||||
пересчёта в деньги здесь нет.
|
||||
Reference in New Issue
Block a user