← Назад к Wiki
Спільнота

Внесок у SelenaCore

Внесок у SelenaCore

🇬🇧 English version

Робочий процес

  1. Спершу Issue — вся робота починається зі створення GitHub Issue
  2. Одна задача за раз — взяти Issue → реалізувати → коміт → закрити
  3. Тести обов'язкові — не можна пушити в main з failingтестами

Гілки

  • Зміни до 200 рядків — напряму в main
  • Більше 200 рядків — feat/<issue-number>-<slug>

Коміти

Формат: <type>(<scope>): <опис> [#<N>]

Типи: feat, fix, chore, refactor, test, docs, security, perf.

Стандарти коду

  • Python 3.11+, всі публічні методи — async def
  • Type hints обов'язкові
  • logging.getLogger(__name__) — без print()
  • except Exception as e: — ніколи голий except: pass

Тести

pytest tests/ -v
pytest tests/ --cov=core --cov-report=term-missing
python -m mypy core/

Безпека

Знайшли вразливість — не створюйте публічний Issue. Використовуйте GitHub Security Advisories.

Заборонено

  • eval(), exec() у будь-якому коді
  • shell=True без крайньої необхідності
  • Секрети в .env (лише .env.example)
  • Прямий доступ до /secure/ з модуля
  • Публікація core.* подій з модуля
Внесок у SelenaCore | Wiki · Selena Home AI