From f7007115c6e73073b1f6825ebd14735dbcba4128 Mon Sep 17 00:00:00 2001 From: ak2k <19240940+ak2k@users.noreply.github.com> Date: Sun, 17 May 2026 02:18:07 -0400 Subject: [PATCH] CLAUDE.md: prescribe `make check` as the pre-push gate MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Two changes: 1. Add a Workflow bullet making `make check` the canonical pre-push gate and call out the basedpyright/pyright gotcha. The work-4byx PR's CI failed on 8 errors that local `pyright src/` reported as clean — basedpyright is stricter (reportUnknownVariableType, reportUnusedFunction, etc.) and is what CI actually runs. Running `pyright` locally is a false-positive green. 2. Update the live-smoke example from `flight fare` (deprecated) to `flight search` (the new canonical command after work-0txq). --- CLAUDE.md | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/CLAUDE.md b/CLAUDE.md index 6aaa84d..12aafd6 100644 --- a/CLAUDE.md +++ b/CLAUDE.md @@ -14,7 +14,13 @@ Our fixtures are the de facto spec. - **Install**: `uv venv && uv pip install -e .` - **Test**: `pytest tests/` (golden-file regression net, <0.1s) -- **Smoke a live search**: `flight fare JFK LHR --dep 2026-08-15 --return 2026-08-22 -n 2` +- **Pre-push gate**: `make check` — runs `ruff check`, `ruff format --check`, + `basedpyright src tests`, and `pytest`. This is what GitHub Actions runs as + the `check` job; if it passes locally, CI passes. `pyright` (vanilla) is + NOT the same tool — `basedpyright` is stricter (catches `reportUnknownVariableType`, + `reportUnusedFunction`, etc.). Running `pyright` locally is a false-positive + green; always use `make check`. +- **Smoke a live search**: `flight search JFK LHR --dep 2026-08-15 --return 2026-08-22 -n 2` - **API key**: resolved at runtime from Matrix's SPA bundle and cached at `~/.cache/flight-cli/.matrix-key` (30-day TTL). Never hardcode keys in source. Override via `FLIGHT_API_KEY` env var.