release: the dev-channel job never gates a release; desktop-dev retries the live dev latest.json on 5xx

This commit is contained in:
CRTkafa 2026-10-26 11:05:08 +07:00
parent 1030cdff0c
commit 05d0e227a1
2 changed files with 11 additions and 6 deletions

View file

@ -95,8 +95,9 @@ export interface Task { id: number; name: string; run_number: number; workflow_i
/** The state of a commit from its ci.yml jobs (the newest run of that commit) and whether its record exists. Pure. */
export function taskState(tasks: Task[], sha: string, runUrl: (n: number) => string): Exclude<Status, { state: 'green' }> {
// the background test jobs (ci, acceptance) never gate a release (the owner's decision 2026-10-16): only the
// installer builds and the record count; tools/ci-status.ts reports the tests
const mine = tasks.filter(t => t.head_sha === sha && t.workflow_id === 'ci.yml' && !/^(ci|acceptance\b)/.test(t.name));
// installer builds and the record count; tools/ci-status.ts reports the tests. The dev job (the owner's dev update
// channel) never gates a release either: a hiccup publishing a dev build must not hold back npm.
const mine = tasks.filter(t => t.head_sha === sha && t.workflow_id === 'ci.yml' && !/^(ci|acceptance\b|dev$)/.test(t.name));
if (!mine.length) return { state: 'none' };
const latest = Math.max(...mine.map(t => t.run_number));
const jobs = mine.filter(t => t.run_number === latest);