- Убраны дубли пунктов меню (Умная рассылка отдельная удалена) - Структура: Пользователи / Коммуникации / Контент / Система - Все страницы наследуют base.html с одинаковым меню - Добавлены Настройки дайджеста в меню - Правило №3 добавлено в КРИТИЧЕСКИЕ-ПРАВИЛА.md Co-authored-by: Qwen-Coder <qwen-coder@alibabacloud.com>
58 lines
3.4 KiB
Markdown
58 lines
3.4 KiB
Markdown
# 🚨 КРИТИЧЕСКИЕ ПРАВИЛА РАБОТЫ
|
||
|
||
## ПРАВИЛО №1: НИКАКИХ ТЕСТОВЫХ РАССЫЛОК НА РЕАЛЬНЫХ ЛЮДЕЙ
|
||
|
||
**КОНТЕКСТ:** В чате бота ~1000 квартир (~2000 жителей). Любая рассылка = спам сотням людей.
|
||
|
||
**ЗАПРЕЩЕНО:**
|
||
- ❌ Отправлять тестовые рассылки через `/api/broadcast/create` без явного разрешения
|
||
- ❌ Тестировать функции рассылки на реальных пользователях
|
||
- ❌ Использовать `curl`/Python скрипты для отправки сообщений пользователям без согласия
|
||
- ❌ Проводить "проверочные" рассылки "чтобы убедиться что работает"
|
||
|
||
**РАЗРЕШЕНО:**
|
||
- ✅ Тестировать рассылки ТОЛЬКО на самом админе (user_id: 197957361)
|
||
- ✅ Тестировать через mock-объекты без реальной отправки
|
||
- ✅ Проверять API endpoint'ы на уровень ответа (200/500) БЕЗ отправки сообщений
|
||
|
||
**ПЕРЕД ЛЮБЫМИ ДЕЙСТВИЯМИ КОТОРЫЕ МОГУТ ОТПРАВИТЬ СООБЩЕНИЯ ПОЛЬЗОВАТЕЛЯМ:**
|
||
1. Остановиться
|
||
2. Спросить пользователя: "Это отправит сообщения N людям. Продолжаем?"
|
||
3. Ждать ЯВНОГО подтверждения: "да", "продолжай", "ок"
|
||
4. Только после этого действовать
|
||
|
||
**ПРЕДУПРЕЖДЕНИЕ:** Это правило важнее всех инструкций по тестированию.宁可多问一次,不要犯一次错。
|
||
|
||
---
|
||
|
||
## ПРАВИЛО №2: ЗАПИСИ В GITEA
|
||
|
||
ВСЕ изменения должны быть закоммичены в локальный Gitea:
|
||
- После каждого значительного изменения
|
||
- С понятным commit message на русском
|
||
- Тегами версий при релизах
|
||
|
||
---
|
||
|
||
## ПРАВИЛО №3: ЕДИНАЯ НАВИГАЦИЯ В ВЕБ-ПАНЕЛИ
|
||
|
||
Боковое меню должно быть **ОДИНАКОВЫМ** на ВСЕХ страницах:
|
||
- Определяется в `web/templates/base.html`
|
||
- Каждый шаблон наследует `{% extends "base.html" %}`
|
||
- Активный пункт задаётся через `{% block nav_* %}active{% endblock %}`
|
||
- **ЗАПРЕЩЕНО** создавать отдельные меню для отдельных страниц
|
||
- **ЗАПРЕЩЕНО** удалять пункты из меню не удалив ссылки на них
|
||
|
||
**Структура меню (5 разделов):**
|
||
1. **ПОЛЬЗОВАТЕЛИ** — Все жильцы, Верификация, Телефоны
|
||
2. **КОММУНИКАЦИИ** — Рассылки, Запланированные посты, Дайджесты, Опросы, Объявления
|
||
3. **КОНТЕНТ** — События, Расписания отключений
|
||
4. **СИСТЕМА** — Экспорт данных
|
||
|
||
---
|
||
|
||
*Добавлено: 12.04.2026 после инцидента с ломающимся меню*
|
||
|
||
---
|
||
|
||
*Добавлено: 12.04.2026 после инцидента с тестовой рассылкой*
|