mirror of
https://gitverse.ru/kpa39l/gotosocial.git
synced 2026-09-29 09:55:10 +00:00
docs(governance): enforce OpenSpec workflow for all changes; openspec: enforce-openspec-workflow
This commit is contained in:
@@ -0,0 +1,48 @@
|
||||
# AGENTS.md — Правила для AI-агентов (Hermes)
|
||||
|
||||
## ЖЁСТКОЕ ТРЕБОВАНИЕ: все изменения — через OpenSpec
|
||||
|
||||
**ЛЮБОЕ изменение проекта** (код, docker-compose.yml, config, системные
|
||||
юниты, документация, статусы) **ОБЯЗАНО** проходить через OpenSpec-воркфлоу:
|
||||
|
||||
1. `/openspec-propose <имя-изменения>` — создать change
|
||||
(proposal.md → specs/ delta → design.md → tasks.md).
|
||||
2. `/openspec-apply-change <имя>` — реализовать задачи из tasks.md
|
||||
(с реальной верификацией каждой).
|
||||
3. `/openspec-archive-change <имя>` — влить delta в main specs
|
||||
(`openspec/specs/`), после `openspec validate`.
|
||||
|
||||
**Запрещено** (без исключений):
|
||||
|
||||
- ❌ Править docker-compose.yml / config.yaml / код / юниты напрямую
|
||||
без openspec-change.
|
||||
- ❌ Коммитить изменения без соответствующего openspec-change
|
||||
(коммит = `feat/fix(...): ...; openspec: <change-name>`).
|
||||
- ❌ «Мелкие правки» в обход openspec: статус-файлы, README, доки —
|
||||
тоже изменения, оформляются так же (допускается `skip_specs: true`
|
||||
для чисто документационных правок).
|
||||
|
||||
**Исключения**: только по явной команде пользователя
|
||||
(«сделай в обход openspec» / подтверждение на прямой фикс).
|
||||
|
||||
## Рабочий процесс
|
||||
|
||||
- Прочитать перед действиями: `STATUS.md`, `PRD.md`, `README.md`,
|
||||
`TODO.md`, `openspec/specs/**/spec.md`.
|
||||
- Верификация каждой задачи — реальная команда (curl, docker ps,
|
||||
systemctl status), не предположение.
|
||||
- Секреты: в `.env`, в git не попадают.
|
||||
- Рестарт сервисов — только извне (SSH sudo systemctl restart).
|
||||
- Git: маленькие коммиты; источник истины gitverse.ru.
|
||||
|
||||
## Текущая спецификация
|
||||
|
||||
- `openspec/specs/gotosocial/` — trusted-proxies, webfinger-and-registration,
|
||||
webclient-and-clean-footer, smtp-email.
|
||||
|
||||
## Справочник essentials
|
||||
|
||||
- Контейнер: `gotosocial` (image superseriousbusiness/gotosocial:0.22.1)
|
||||
- Данные: `/opt/gotosocial/data/` (sqlite.db + storage/)
|
||||
- Порт: 8080 внутри, Caddy vps02 → 10.8.0.2:8080
|
||||
- SMTP: smtp.jino.ru:587, `GTS_SMTP_FROM`, `GTS_SMTP_USERNAME` (соц@dedinit.ru)
|
||||
Reference in New Issue
Block a user