5.8 KiB
Приёмка открытой альфы RF4 Spotter
Версия: 7 сентября 2026 года. Проверка проводится сначала владельцем проекта, затем открыто реальными пользователями. Продуктового allowlist нет: доступны все категории рекордов, водоёмы и виды рыб, корректно полученные из разрешённых источников. Неполный или непроверенный staging не публикуется.
Условия открытия
- production preflight, DNS, TLS,
/healthи/readyуспешны; - настроены внешний backup, ежедневное обслуживание и уведомления мониторинга;
- работают
privacy@rf4spotter.ruиabuse@rf4spotter.ru, назначен ответственный; - опубликованы
/rulesи/privacy, форма требует согласия; - заглушки секретов отсутствуют, административные маршруты закрыты двумя уровнями авторизации;
- импортирован полный доступный разрешённый каталог, демоданные отсутствуют;
- по каждому источнику опубликованы время последнего успешного обновления и состояние ошибки.
Сценарий игрока
- На телефоне открыть главную, выбрать водоём и рыбу, получить результат не позднее второй высоты экрана.
- Открыть точку и своими словами объяснить активность, уверенность и свежесть.
- Отправить улов с обязательными полями и согласием; убедиться, что до модерации он не публичен.
- Модератор проверяет заявку, указывает причину отказа либо одобряет её.
- После одобрения точка появляется в выдаче; удаление заявки обезличивает данные и сохраняет аудит.
- Проверить рекорды и сброс фильтров на desktop и 390 px.
Проверка каталога выполняется по всем загруженным сущностям автоматически: уникальность slug, существование связей, диапазоны координат/веса, отсутствие неподтверждённого staging в публичном API. Ручной smoke использует минимум по одному представителю каждого водоёма и каждой категории рекордов; редкие виды проверяются выборочно, а не исключаются из публикации.
Перед каждым релизом выполнить docker compose exec -T api python -m app.cli audit-catalog. Ненулевой failures или exit code 1 блокирует открытие/обновление.
Измеримые критерии
| Область | Проходной порог |
|---|---|
| Доступность | axe: 0 critical/serious; Lighthouse accessibility ≥ 95 |
| Интерфейс | нет горизонтального overflow на 390 px; ≥ 80% участников завершают поиск без подсказки |
| Каталог | 100% публичных записей имеют валидные связи; фильтры принимают весь загруженный справочник без allowlist |
| Понятность | ≥ 80% верно объясняют разницу активности и уверенности |
| API | p95 публичных списков ≤ 250 мс; admin queue ≤ 500 мс на пилотном объёме |
| Надёжность | readiness успешен; backup моложе 26 часов и проходит checksum |
| Модерация | 100% пользовательских заявок сначала pending; медианное решение ≤ 12 часов |
| Свежесть | успешный разрешённый импорт не старше настроенного интервала; сбой явно виден в readiness/monitoring |
| Abuse | шестая заявка одного клиента за 10 минут получает 429; файл > 8 МБ отклоняется; повторный screenshot отклоняется |
| Обращения | abuse подтверждается ≤ 24 часов, privacy/delete ≤ 72 часов |
Стоп-критерии
Альфа закрывается для новых отправок при утечке данных или секретов, потере возможности восстановления, обходе модерации, недоступности обоих контактов более 24 часов либо устойчивой ошибке 5xx выше 2% за 15 минут. Публичное чтение можно оставить только если оно не усугубляет инцидент.
Результат прогона
Для каждого запуска фиксируются дата, версия/коммит, участники, объём данных, p95, ошибки, возраст backup, результаты axe/Lighthouse и решение GO/NO-GO. Блокирующие дефекты получают владельца и срок повторной проверки.