You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
See the `quality-gates` skill for the full hard gate procedure. While the gate runs, `tmp/hard-gate.txt`shows `STATUS: IN_PROGRESS` — wait for the process to exit. Check the exit code. If non-zero — for ANY reason — STOP. Do not merge. Only merge when exit code 0.
58
+
See the `quality-gates` skill for the full async polling procedure. Poll `grep "STATUS:" tmp/hard-gate.txt`every 5 minutes. Only non-zero exit code— for ANY reason — is a blocker. Do not merge. Only merge when exit code 0.
The hard gate writes output incrementally to `tmp/hard-gate.txt`. While it runs, the file shows `STATUS: IN_PROGRESS` — the gate has not finished yet. **Never interpret `IN_PROGRESS` as a pass or failure.** Wait for the process to exit, then check the exit code (`echo $?`):
86
+
The gate runs in background and writes progress incrementally to `tmp/hard-gate.txt` after each step.
-**`STATUS: BLOCKED`** — gate finished with exit code non-zero. Read `tmp/hard-gate.txt` to identify all failures, fix them, and **re-run the gate from the start**.
98
+
-**`STATUS: IN_PROGRESS`** — gate is still running. Check the step counter (lines like `Step N/M`) to verify progress. If the step number advanced since the last check, the gate is making progress — continue waiting and poll again in 5 minutes. If the step counter has not advanced after multiple polling cycles (>15 minutes with no progress), investigate the detailed log section in `tmp/hard-gate.txt` for the currently running command. **Keep polling** until `IN_PROGRESS` changes to `PASS` or `BLOCKED`.
99
+
100
+
**Never interpret `IN_PROGRESS` as a pass or failure.** Only `PASS` and `BLOCKED` are terminal states.
101
+
102
+
### After Completion
84
103
85
-
-**Exit code 0** → `STATUS: PASS` — proceed to merge.
86
-
-**Exit code non-zero** → `STATUS: BLOCKED` — read `tmp/hard-gate.txt` to identify what to fix, then re-run. Repeat until exit code 0.
104
+
When the gate finishes, check the exit status:
105
+
- If any step shows `BLOCKED` in the summary, read the detailed log to identify the failure, fix all problems, and re-run from the start.
106
+
- Exit code 0 and `STATUS: PASS` means proceed to merge.
87
107
88
108
The hard gate runs: format → build → tests with coverage → coverage verification → lint on changed projects. See `docs/developer/guides/tools.md` for detailed step descriptions, thresholds, and output format examples.
See the `quality-gates` skill for the full procedure. While the gate runs, `tmp/hard-gate.txt` shows `STATUS: IN_PROGRESS` — the gate has not finished yet. Wait for the process to exit, then check the **exit code** (`echo $?`). If non-zero — for ANY reason — STOP. Do not merge. Do not mark the task as done. Read the output file only to identify what to fix, not to decide whether the failure applies to you. Re-run until exit code 0, then proceed to merge.
194
+
See the `quality-gates` skill for the full async polling procedure. The gate runs in background and writes progress to `tmp/hard-gate.txt`. Poll every 5 minutes: `grep "STATUS:" tmp/hard-gate.txt`. Only `PASS` and `BLOCKED` are terminal states — `IN_PROGRESS` means keep polling. If non-zero exit code — for ANY reason — STOP. Do not merge. Do not mark the task as done. Read the output file only to identify what to fix. Re-run until exit code 0, then proceed to merge.
0 commit comments