docs(skills): fill cross-cutting Git/Jira conventions
- commit format: Conventional Commits (all six *-standards) - branches/deploy: feature branches from main; release-* -> stage, tag v* -> prod (all six *-standards) - jira-workflow: statuses To Do -> In Progress -> Review -> Done; who moves status when; MR link + status transition policy; comment guidance - key-prefix list stays TODO (unknown project prefixes) Verified: no leftover commit-format TODOs, deploy convention in all 6, skills still load via pi.
This commit is contained in:
@@ -40,8 +40,10 @@ api/ # спецификации API (proto/openapi)
|
|||||||
|
|
||||||
## Коммиты и MR
|
## Коммиты и MR
|
||||||
|
|
||||||
- **Формат коммитов:** `<!-- TODO: например Conventional Commits (feat:, fix:, chore:) или свой -->`.
|
- **Формат коммитов:** Conventional Commits (`feat:`, `fix:`, `chore:`, `docs:`, `refactor:`, `test:` …).
|
||||||
- **Ветки:** от основной, именование `<!-- TODO: напр. feature/PROJ-123-short-desc -->`.
|
- **Ветки и деплой:** фича-ветки — от `main` (в имя ветки желательно включать ключ тикета).
|
||||||
|
Деплой управляется ветками/тегами: ветка `release-*` → раскатка на **stage**; тег `v*` → раскатка в **прод**.
|
||||||
|
Ветки `release-*` и теги `v*` без необходимости не пушь — `permission-gate` переспросит.
|
||||||
- **MR обязателен** (см. корпоративные правила из контекста сессии). Прямой push в защищённые
|
- **MR обязателен** (см. корпоративные правила из контекста сессии). Прямой push в защищённые
|
||||||
ветки запрещён — расширение `permission-gate` дополнительно переспросит.
|
ветки запрещён — расширение `permission-gate` дополнительно переспросит.
|
||||||
- **Описание MR:** что и зачем изменено, как проверено (линтеры + тесты), ссылка на тикет
|
- **Описание MR:** что и зачем изменено, как проверено (линтеры + тесты), ссылка на тикет
|
||||||
|
|||||||
@@ -56,12 +56,13 @@ MR из защищённой ветки (`main`/`master`/`release/*`) скрип
|
|||||||
|
|
||||||
## Соглашения
|
## Соглашения
|
||||||
|
|
||||||
<!-- TODO: заполнить реальными значениями компании -->
|
- **Формат ключей задач:** вида `PROJ-123` (буквенный префикс проекта + номер).
|
||||||
|
`<!-- TODO: перечислить реальные префиксы проектов -->`
|
||||||
- **Формат ключей задач:** `<!-- TODO: например PROJ-123, префиксы проектов -->`
|
- **Статусы и переходы:** To Do → In Progress → Review → Done.
|
||||||
- **Статусы и переходы:** `<!-- TODO: рабочий процесс, напр. To Do → In Progress → In Review → Done -->`
|
- **Кто и когда меняет статус:** разработчик переводит тикет: в **In Progress** — при старте работы;
|
||||||
- **Кто и когда меняет статус:** `<!-- TODO: договорённости команды -->`
|
в **Review** — при выставлении MR (в тикет добавляется ссылка на MR); в **Done** — после мержа.
|
||||||
- **Что писать в комментарии при старте/готовности:** `<!-- TODO -->`
|
- **Что писать в комментарии:** при старте — кратко о начале работы; при готовности — ссылку на MR
|
||||||
|
(используй `create-mr.sh`, который сразу приложит ссылку, либо `link-mr.sh`).
|
||||||
|
|
||||||
## Полезное
|
## Полезное
|
||||||
|
|
||||||
|
|||||||
@@ -44,7 +44,10 @@ app/ # Android-модуль приложения
|
|||||||
|
|
||||||
## Коммиты и MR
|
## Коммиты и MR
|
||||||
|
|
||||||
- **Формат коммитов:** `<!-- TODO: например Conventional Commits или свой -->`.
|
- **Формат коммитов:** Conventional Commits (`feat:`, `fix:`, `chore:`, `docs:`, `refactor:`, `test:` …).
|
||||||
|
- **Ветки и деплой:** фича-ветки — от `main` (в имя ветки желательно включать ключ тикета).
|
||||||
|
Деплой управляется ветками/тегами: ветка `release-*` → раскатка на **stage**; тег `v*` → раскатка в **прод**.
|
||||||
|
Ветки `release-*` и теги `v*` без необходимости не пушь — `permission-gate` переспросит.
|
||||||
- **MR обязателен** (см. корпоративные правила из контекста сессии). Прямой push в защищённые
|
- **MR обязателен** (см. корпоративные правила из контекста сессии). Прямой push в защищённые
|
||||||
ветки запрещён — расширение `permission-gate` дополнительно переспросит.
|
ветки запрещён — расширение `permission-gate` дополнительно переспросит.
|
||||||
- Перед MR: `ktlintCheck`, `detekt`, `test` (и `lint`) — всё зелёное.
|
- Перед MR: `ktlintCheck`, `detekt`, `test` (и `lint`) — всё зелёное.
|
||||||
|
|||||||
@@ -40,7 +40,10 @@ tests/
|
|||||||
|
|
||||||
## Коммиты и MR
|
## Коммиты и MR
|
||||||
|
|
||||||
- **Формат коммитов:** `<!-- TODO: например Conventional Commits или свой -->`.
|
- **Формат коммитов:** Conventional Commits (`feat:`, `fix:`, `chore:`, `docs:`, `refactor:`, `test:` …).
|
||||||
|
- **Ветки и деплой:** фича-ветки — от `main` (в имя ветки желательно включать ключ тикета).
|
||||||
|
Деплой управляется ветками/тегами: ветка `release-*` → раскатка на **stage**; тег `v*` → раскатка в **прод**.
|
||||||
|
Ветки `release-*` и теги `v*` без необходимости не пушь — `permission-gate` переспросит.
|
||||||
- **MR обязателен** (см. корпоративные правила из контекста сессии). Прямой push в защищённые
|
- **MR обязателен** (см. корпоративные правила из контекста сессии). Прямой push в защищённые
|
||||||
ветки запрещён — расширение `permission-gate` дополнительно переспросит.
|
ветки запрещён — расширение `permission-gate` дополнительно переспросит.
|
||||||
- Перед MR: `ruff check .`, `ruff format --check .`, `mypy .`, `pytest` — всё зелёное.
|
- Перед MR: `ruff check .`, `ruff format --check .`, `mypy .`, `pytest` — всё зелёное.
|
||||||
|
|||||||
@@ -44,7 +44,10 @@ benches/ # бенчмарки (если есть)
|
|||||||
|
|
||||||
## Коммиты и MR
|
## Коммиты и MR
|
||||||
|
|
||||||
- **Формат коммитов:** `<!-- TODO: например Conventional Commits или свой -->`.
|
- **Формат коммитов:** Conventional Commits (`feat:`, `fix:`, `chore:`, `docs:`, `refactor:`, `test:` …).
|
||||||
|
- **Ветки и деплой:** фича-ветки — от `main` (в имя ветки желательно включать ключ тикета).
|
||||||
|
Деплой управляется ветками/тегами: ветка `release-*` → раскатка на **stage**; тег `v*` → раскатка в **прод**.
|
||||||
|
Ветки `release-*` и теги `v*` без необходимости не пушь — `permission-gate` переспросит.
|
||||||
- **MR обязателен** (см. корпоративные правила из контекста сессии). Прямой push в защищённые
|
- **MR обязателен** (см. корпоративные правила из контекста сессии). Прямой push в защищённые
|
||||||
ветки запрещён — расширение `permission-gate` дополнительно переспросит.
|
ветки запрещён — расширение `permission-gate` дополнительно переспросит.
|
||||||
- Перед MR: `cargo fmt --check`, `cargo clippy -D warnings`, `cargo test` — всё зелёное.
|
- Перед MR: `cargo fmt --check`, `cargo clippy -D warnings`, `cargo test` — всё зелёное.
|
||||||
|
|||||||
@@ -39,7 +39,10 @@ Tests/<Target>Tests/...
|
|||||||
|
|
||||||
## Коммиты и MR
|
## Коммиты и MR
|
||||||
|
|
||||||
- **Формат коммитов:** `<!-- TODO: например Conventional Commits или свой -->`.
|
- **Формат коммитов:** Conventional Commits (`feat:`, `fix:`, `chore:`, `docs:`, `refactor:`, `test:` …).
|
||||||
|
- **Ветки и деплой:** фича-ветки — от `main` (в имя ветки желательно включать ключ тикета).
|
||||||
|
Деплой управляется ветками/тегами: ветка `release-*` → раскатка на **stage**; тег `v*` → раскатка в **прод**.
|
||||||
|
Ветки `release-*` и теги `v*` без необходимости не пушь — `permission-gate` переспросит.
|
||||||
- **MR обязателен** (см. корпоративные правила из контекста сессии). Прямой push в защищённые
|
- **MR обязателен** (см. корпоративные правила из контекста сессии). Прямой push в защищённые
|
||||||
ветки запрещён — расширение `permission-gate` дополнительно переспросит.
|
ветки запрещён — расширение `permission-gate` дополнительно переспросит.
|
||||||
- Перед MR: `swiftformat --lint .`, `swiftlint --strict`, тесты — всё зелёное.
|
- Перед MR: `swiftformat --lint .`, `swiftlint --strict`, тесты — всё зелёное.
|
||||||
|
|||||||
@@ -42,7 +42,10 @@ test/ | *.test.ts # рядом с кодом или в test/
|
|||||||
|
|
||||||
## Коммиты и MR
|
## Коммиты и MR
|
||||||
|
|
||||||
- **Формат коммитов:** `<!-- TODO: например Conventional Commits или свой -->`.
|
- **Формат коммитов:** Conventional Commits (`feat:`, `fix:`, `chore:`, `docs:`, `refactor:`, `test:` …).
|
||||||
|
- **Ветки и деплой:** фича-ветки — от `main` (в имя ветки желательно включать ключ тикета).
|
||||||
|
Деплой управляется ветками/тегами: ветка `release-*` → раскатка на **stage**; тег `v*` → раскатка в **прод**.
|
||||||
|
Ветки `release-*` и теги `v*` без необходимости не пушь — `permission-gate` переспросит.
|
||||||
- **MR обязателен** (см. корпоративные правила из контекста сессии). Прямой push в защищённые
|
- **MR обязателен** (см. корпоративные правила из контекста сессии). Прямой push в защищённые
|
||||||
ветки запрещён — расширение `permission-gate` дополнительно переспросит.
|
ветки запрещён — расширение `permission-gate` дополнительно переспросит.
|
||||||
- Перед MR: `tsc --noEmit`, `eslint .`, `prettier --check .`, тесты — всё зелёное.
|
- Перед MR: `tsc --noEmit`, `eslint .`, `prettier --check .`, тесты — всё зелёное.
|
||||||
|
|||||||
Reference in New Issue
Block a user