mirror of
https://github.com/Matysh/houseplan-card
synced 2026-10-06 22:49:16 +00:00
feat: an outsider's issue is worked like any other once admitted
The guard refused to review any issue the owner had not filed himself. The rule was meant to keep malformed outside reports out of the pipeline, but it checked at every step instead of at the entrance, and it duplicated a guarantee the platform already gives: only someone with write access can apply a label. Applying the first status label is the owner's explicit decision, and it is the only place the question belongs. So the author check is gone. While an issue carries no status label it sits outside the process and the invariants do not apply; once labelled, the task is in flight and who filed it stops mattering. The old rule also cost real work. On #123 an outside bug report had been analysed and specified before the guard turned it away in nine seconds, and the remedy on offer was to refile the same thing as the owner's own issue. Issue: #114 User-Visible: no
This commit is contained in:
+14
-6
@@ -472,12 +472,20 @@ Project v2 остаётся человеческим представление
|
||||
Инварианты: **ровно одна `S*`-метка** на открытом issue; закрытый issue статусных
|
||||
меток не несёт; `blocked` не заменяет статус, а дополняет его.
|
||||
|
||||
**В процесс берутся только issue, созданные владельцем** (решение владельца
|
||||
2026-08-13). Репозиторий публичный, задачи заводят и посторонние; такие issue
|
||||
бывают плохо оформлены или невалидны, и статусных меток им не ставят — инварианты
|
||||
на них не распространяются. Проверять `user.login`. Что делать с чужим issue:
|
||||
прочитать, при необходимости переформулировать и завести **свой** со ссылкой на
|
||||
исходный, либо оставить до решения владельца. Не размечать и не брать в работу.
|
||||
**Чужой issue берётся в работу так же, как свой — после явного решения
|
||||
владельца** (решение владельца 2026-08-13, уточнено в тот же день). Репозиторий
|
||||
публичный, отчёты заводят и посторонние; проверка стоит **на входе**, а не на
|
||||
каждом шаге.
|
||||
|
||||
Входом служит присвоение первой статусной метки: пока меток нет, issue вне
|
||||
процесса и инварианты на него не распространяются. Как только метка стоит, задача
|
||||
в работе, и **кто её завёл, дальше не имеет значения** — статусы, ревью и лимиты
|
||||
работают одинаково.
|
||||
|
||||
Присвоение метки и есть то самое явное решение, причём проверенное платформой:
|
||||
метки может ставить только тот, у кого есть право записи в репозиторий. Прежняя
|
||||
редакция требовала переоформлять чужой отчёт своим issue со ссылкой на исходный;
|
||||
это оказалось работой впустую — на #123 к моменту отказа ТЗ уже было написано.
|
||||
|
||||
`S8-merged` появился позже остальных и закрывает разрыв, который раньше
|
||||
закрывался памятью человека: код принят, но бета ещё не вышла, и issue закрывать
|
||||
|
||||
Reference in New Issue
Block a user