Add user catch submission and moderation workflow
This commit is contained in:
@@ -43,9 +43,11 @@ docker compose up --build
|
||||
- справочники рыб, водоёмов и приманок;
|
||||
- Astro SSR-интерфейс с адаптивной главной и страницей точки;
|
||||
- объяснимые индексы активности и уверенности по формуле спецификации;
|
||||
- состояния «нет данных» и «источник недоступен».
|
||||
- состояния «нет данных» и «источник недоступен»;
|
||||
- идемпотентный импорт официальных записей с журналом запусков;
|
||||
- публичная страница `/records` с источником и временем последнего импорта.
|
||||
- публичная страница `/records` с источником и временем последнего импорта;
|
||||
- форма `/report`, защищённые admin API и журнал модерации;
|
||||
- honeypot и базовый лимит отправок.
|
||||
|
||||
Все пользовательские ники и уловы в seed демонстрационные.
|
||||
|
||||
@@ -87,6 +89,17 @@ docker compose --profile tools run --rm importer
|
||||
|
||||
Импорт делает до трёх ограниченных попыток, проверяет DOM-контракт и не удаляет ранее сохранённые данные при сбое. Повторный запуск обновляет совпавшие записи по SHA-256 ключу и не создаёт дубликаты. Автоматическое расписание намеренно ещё не включено: сначала требуется согласовать допустимость регулярного опроса официального сайта.
|
||||
|
||||
## Пользовательские уловы и модерация
|
||||
|
||||
Новая запись из `/report` получает статус `pending` и не участвует в активности до одобрения. Административные методы требуют заголовок `Authorization: Bearer $ADMIN_TOKEN`:
|
||||
|
||||
```bash
|
||||
curl -H "Authorization: Bearer change-me-in-production" \
|
||||
"http://localhost:8000/api/v1/admin/catch-reports?status=pending"
|
||||
```
|
||||
|
||||
Перед внешним развёртыванием обязательно замените демонстрационный `ADMIN_TOKEN`. Скриншоты пока не принимаются: следующим шагом для них подключается MinIO/S3 с проверкой MIME, размера и очисткой EXIF.
|
||||
|
||||
## Исследовательский парсер официальных рекордов
|
||||
|
||||
```bash
|
||||
|
||||
Reference in New Issue
Block a user