test(ci): admit reusable-workflow jobs in the release preflight check

d13c9f840 made the release `qualification` job call a reusable workflow,
so it declares `uses` and no `steps`. The release checkpoint test parsed
every job with required `steps`, so all four preflight cases failed with
a ZodError on main and in every PR's boundary shard. Only the inspected
release-please and merged-release jobs need steps; make the field
optional per job.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Kaoru0822 2026-10-13 09:54:44 +00:00
parent d13c9f840d
commit c0cc77766e
1 changed files with 10 additions and 7 deletions

View File

@ -651,13 +651,16 @@ it.skipIf(process.platform === "win32").each([
.object({
jobs: z.record(
z.string(),
// Jobs that call a reusable workflow declare `uses` instead of steps.
z.object({
steps: z.array(
z.object({
name: z.string().optional(),
run: z.string().optional(),
}),
),
steps: z
.array(
z.object({
name: z.string().optional(),
run: z.string().optional(),
}),
)
.optional(),
}),
),
})
@ -672,7 +675,7 @@ it.skipIf(process.platform === "win32").each([
const command = z
.string()
.parse(
workflow.jobs[job]?.steps.find(
workflow.jobs[job]?.steps?.find(
(step) =>
step.name ===
(job === "merged-release"