Требования к созданию Issue и PR - moevm/mse1h2024-licheepi GitHub Wiki

Общие требования

Именование

Все новые Issue и PR должен быть назван следующим образом:

[КОД-ISSUE] Имя Issue ли PR в свободной форме на русском or in English

КОД-ISSUE представляет собой обозначенную последовательностью заглавных букв область, соответствующую наиболее затрагиваемому связанному с затрагиваемыми областями тэгу, затем дефис, затем порядковый номер Issue в затрагиваемой области.

В названиях Issue и PR не должно быть орфографических и грамматических ошибок.

Тэги

Тэги делятся на три группы:

  • Связанные с затрагиваемыми областями
  • Связанные с типом работы
  • Связанные с версией продукта

Связанные с затрагиваемыми областями тэги

Для Issue, связанные с затрагиваемыми областями тэги должны указывать те компоненты, в которые должны вноситься изменения в процессе реализации поставленной в данном Issue задачи.

Для PR, на первом PR для конкретного Issue связанные с затрагиваемыми областями тэги обязаны совпадать со всеми такими тэгами на issue, если он реализует всю задачу, а в противном случае только те, которые он непосредственно затрагивает. Все последующие PR аналогичным образом идут по второй части правила.

Имеются следующие связанные с затрагиваемыми областями тэги:

Связанные с типом работы тэги

Имеются следующие связанные с типом работы тэги:

Они выставляются в соответствии с типом работы в проекте следующим образом:

  • Тэги implementation, invalid, bug ставится для типа Feature в соответствии со смыслом PR:
    • Тэг implementation ставится по умолчанию, то есть если Issue/PR направлен на реализацию фичи на оценивание;
    • Тэг invalid ставится, если Issue/PR направлен на исправление несоответствия проекту поставленным требованиям;
    • Тэг improvement ставится, если Issue/PR направлен на исправление любой другой ошибки либо внедрение любого не поставленного в требованиях улучшения.
  • Тэг documentation ставится для типов Sprint и Documentation;
  • Тэг research ставится для типа Intangible;
  • Для типа Repository management тэги ставятся следующим образом:
    • По умолчанию Тэг не ставится;
    • Тэг invalid ставится при добавлении нового подрепозитория;
    • Тэг documentation ставится для разработки правил работы с репозиториями.

Связанные с версией продукта тэги

Связанные с версией продукта тэги обязаны соответствовать текущей версии разрабатываемого продукта. В частности:

Указание проекта

Все Issue должны быть добавлен к проекту moevm/mse1h2024-licheepi. PR должен быть добавлен к проекту moevm/mse1h2024-licheepi, если он не отклонён или закрыт навсегда, и не должен быть добавлен в обратном случае.

Открытый Issue должен быть перенесён в To Do, автоматически это не делается.

Для каждого Issue и PR должен быть указан тип:

  • Тип Sprint указывается, если Issue/PR связан с оформлением результатов спринта;
  • Тип Feature указывается, если Issue/PR связан непосредственно с разработкой проекта, то есть участвует в реализации хотя бы одной фичи на оценивание;
  • Тип Repository management указывается, если Issue/PR связан с управлением репозиториями;
  • Тип Documentation указывается для всех остальных Issue, если они подразумевают добавление хоть чего-то в репозиторий, а также для всех остальных PR;
  • Тип Intangible указывается для всех остальных Issue, в рамках которых в репозиторий не добавляется ничего. Он не может быть на PR. Если PR относится к Issue, то его тип должен соответствовать типу Issue.

Указание итерации

В Milestones требуется указать текущую итерацию. Их четыре:

  • Итерация 1;
  • Итерация 2;
  • Итерация 3;
  • Итерация 4.

Требования к созданию Issue

Права на создание, изменение и закрытие

Создавать и закрывать Issue имеет право только @oorschnai (Мария Сорочина)

Изменять Issue имеют право только @oorschnai (Мария Сорочина) и @dmitrij-zavrazhin-1304 (Dmitrij Zavražin).

Описание

В описании требуется привести описание поставленной задачи. Затем в качестве Definition of Done указать критерии, согласно которым определяется её успешное выполнение.

Исполнитель

В поле Assignee требуется указать исполнителей, у которых будет право делать коммиты и создавать PR, относящиеся к данному Issue.

Требования к созданию PR

Права на создание, закрытие, и слияние

Создавать PR имеет право имеет каждый. В том случае, если PR относится к Issue, создавать PR имеет только один из указанных там исполнителей.

Закрывать PR имеет право только создатель PR, а также @oorschnai (Мария Сорочина) и @dmitrij-zavrazhin-1304 (Dmitrij Zavražin).

Мёржить PR имеет право только @oorschnai (Мария Сорочина).

Описание

Для PR описание не требуется.

Проверяющие

Для тех, кто не указан в CODEOWNERS, поле Reviewers обязательно должно соответствовать указанным в нём людям.

Для тех, кто указан в CODEOWNERS и соответственно не имеет права проверять свой собственный код, требуется указать двух дополнительных проверяющих, хотя бы один из которых будет обязан провести проверку, следующим образом:

  • Для репозитория mse1h2024-licheepi: @CorvusSharp (Ярослав Герасименко) и @pddemchuk (Полина Демчук);
  • Для репозитория mse1h2024-licheepi4a-sdk: @CorvusSharp (Ярослав Герасименко) и @pddemchuk (Полина Демчук);
  • Для репозитория mse1h2024-xuantie-yocto: @GeorIsay (Георгий Исайкин) и @sashachernyakova (Александра Чернякова);
  • Для репозитория mse1h2024-meta-virtualization: @GeorIsay (Георгий Исайкин) и @sashachernyakova (Александра Чернякова);

Исполнитель

В поле Assignee требуется указать себя. Каждый имеет право создавать PR только на себя, нельзя создавать за другого.

Комментарий о создании PR

После создания PR в соответствующем issue должен быть написан комментарий со ссылкой на открытый PR.