From 9c21aaa681adc68e9ccc1059f1f42afdf7620b23 Mon Sep 17 00:00:00 2001 From: David He <1282474+beetz12@users.noreply.github.com> Date: Thu, 8 Oct 2026 08:07:00 -0400 Subject: [PATCH] fix(skills): set pipefail before piped gates in verification-loop Phase 1 pipes the build into `tail -20`. Without pipefail the pipeline's exit status is tail's, so a failed build exits 0. Phase 2 already sets pipefail, but only after Phase 1 has run, and each phase is its own code block. Set it at the top of the Phase 1, 3 and 4 blocks, which pipe a gate into head or tail. Mirrored in pi/core. Co-Authored-By: Claude Opus 5.5 --- pi/core/skills/verification-loop/SKILL.md | 3 +++ skills/verification-loop/SKILL.md | 3 +++ 2 files changed, 6 insertions(+) diff --git a/pi/core/skills/verification-loop/SKILL.md b/pi/core/skills/verification-loop/SKILL.md index d7eb1fa23..8437833d7 100644 --- a/pi/core/skills/verification-loop/SKILL.md +++ b/pi/core/skills/verification-loop/SKILL.md @@ -22,6 +22,7 @@ Invoke this skill: ### Phase 1: Build Verification ```bash +set -o pipefail # report the build's exit status, not tail's # Check if project builds npm run build 2>&1 | tail -20 # OR @@ -44,6 +45,7 @@ Report all type errors. Fix critical ones before continuing. ### Phase 3: Lint Check ```bash +set -o pipefail # JavaScript/TypeScript npm run lint 2>&1 | head -30 @@ -53,6 +55,7 @@ ruff check . 2>&1 | head -30 ### Phase 4: Test Suite ```bash +set -o pipefail # Run tests with coverage npm run test -- --coverage 2>&1 | tail -50 diff --git a/skills/verification-loop/SKILL.md b/skills/verification-loop/SKILL.md index d7eb1fa23..8437833d7 100644 --- a/skills/verification-loop/SKILL.md +++ b/skills/verification-loop/SKILL.md @@ -22,6 +22,7 @@ Invoke this skill: ### Phase 1: Build Verification ```bash +set -o pipefail # report the build's exit status, not tail's # Check if project builds npm run build 2>&1 | tail -20 # OR @@ -44,6 +45,7 @@ Report all type errors. Fix critical ones before continuing. ### Phase 3: Lint Check ```bash +set -o pipefail # JavaScript/TypeScript npm run lint 2>&1 | head -30 @@ -53,6 +55,7 @@ ruff check . 2>&1 | head -30 ### Phase 4: Test Suite ```bash +set -o pipefail # Run tests with coverage npm run test -- --coverage 2>&1 | tail -50