chore(process): align ship review guidance and guard inventory counts (#767)

Clarify nightly review and beta coverage without changing gates or schedules.
Cover the real night/beta publication summaries and reject stale category
counts, totals and membership in the browser-guard documentation.

Issue: #767
User-Visible: no
This commit is contained in:
Matysh
2026-10-05 08:33:38 +03:00
parent 7fb20c658b
commit cf1c90fb5b
13 changed files with 170 additions and 29 deletions
+3 -2
View File
@@ -28,8 +28,9 @@ import { isMainModule } from './spawn-portable.mjs';
export const INDEX_FILE = 'INDEX.md';
const DOC_NAME = /^(CODE|SPEC)-REVIEW-(?:issue-)?(\d+)(?:-r(\d+))?(?:-([a-z0-9-]+))?\.md$/i;
const RELEASE_DOC_NAME = /^RELEASE-REVIEW-(v(?:0|[1-9]\d*)\.(?:0|[1-9]\d*)\.(?:0|[1-9]\d*))\.md$/i;
// #696: пакетное ревью ship-задач перед бетой (PROCESS.md §11.7) — по тегу беты.
// #727: ночной документ `SHIP-REVIEW-<база>-dev-<sha12>.md` — тег здесь база диапазона.
// #696/#727: пакетное ревью ship — ночью заранее; перед бетой проверка покрытия
// и ревью непрочитанной дельты (PROCESS.md §11.7). Документ дельты — по тегу беты;
// ночной `SHIP-REVIEW-<база>-dev-<sha12>.md` — по базе диапазона и SHA головы dev.
const SHIP_DOC_NAME = /^SHIP-REVIEW-(v(?:0|[1-9]\d*)\.(?:0|[1-9]\d*)\.(?:0|[1-9]\d*)(?:-beta\.(?:0|[1-9]\d*))?)(-dev-[0-9a-f]{12})?\.md$/i;
const COLOUR = {
'зелёный': 'зелёный', 'зеленый': 'зелёный', green: 'зелёный',
+5 -3
View File
@@ -1,6 +1,7 @@
#!/usr/bin/env node
/**
* Пакетное ревью задач `track:ship` перед бетой (#696, PROCESS.md §11.7).
* Пакетное ревью `track:ship`: ночью и непрочитанная дельта перед бетой
* (#696/#727, PROCESS.md §11.7).
*
* node scripts/ship-review.mjs doc --tag=v1.79.0-beta.1
* node scripts/ship-review.mjs doc --tag=nightly --candidate=<sha>
@@ -11,8 +12,9 @@
*
* `ship` сливается без ревью модели (§5): правка в механических рамках и
* зелёный лёгкий Validate. Прочитать её код обязан кто-то до того, как она
* уйдёт пользователям, — это пакетное ревью всех ship-задач диапазона
* «прошлый тег..кандидат беты» одной сессией модели.
* уйдёт пользователям: ночью — непокрытые ship-задачи диапазона
* «прошлый тег..голова dev», перед бетой — проверка покрытия и ревью
* непрочитанных либо изменённых задач «прошлый тег..кандидат беты».
*
* Какие задачи — ship, доказывает конвейер, а не метка: слияние без модели
* оставляет в issue машинный маркер `<!-- hp:ship-merge material=<sha> -->`.
+1 -1
View File
@@ -39,7 +39,7 @@ export const PIPELINE_EVENTS = [
{ re: /^Лимит циклов ревью исчерпан/m, kind: 'exhausted', text: 'конвейер: лимит циклов исчерпан — решение владельца' },
// #726: маршрут вердикта show. После исчерпания: тот же комментарий может нести
// и маршрут, но решение тогда за владельцем — первым находится `exhausted`.
{ re: /^\*\*Ревью show: решать есть что — трек повышен до `track:ask`\.\*\*/m, kind: 'reclassify', text: 'конвейер: трек повышен до ask: полное ТЗ в теле issue, код класса A не пушить до S5' },
{ re: /^\*\*Ревью show: решать есть что — трек повышен до `track:ask`\.\*\*/m, kind: 'reclassify', text: 'конвейер: трек повышен до ask: полное ТЗ в теле issue, всю ветку (включая тесты и документы) не пушить до S5' },
{ re: /^\*\*Ревью show: решать есть что — вопрос владельцу\.\*\*/m, kind: 'owner-question', text: 'конвейер: вопрос владельцу о треке show — ждёт владельца' },
{ re: /^Конвейер ревью не запущен:/m, kind: 'refused', text: 'конвейер отказал (blocked/review-4) — читать комментарий' },
];