Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
13 changes: 11 additions & 2 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,17 @@ jobs:
env:
CARGO_TERM_COLOR: always
CARGO_INCREMENTAL: "0"
# The Snowflake recorder is never built or run in CI.
RECORDER: "0"
# `uv run` would otherwise sync the default groups, recorder included.
UV_NO_SYNC: "1"
# The append-only guard compares recorded results with the pull request base or the
# previous main commit.
EVIDENCE_BASE: ${{ github.event.pull_request.base.sha || github.event.before || 'origin/main' }}
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- uses: astral-sh/setup-uv@v5
with:
version: "0.12.3"
Expand All @@ -36,8 +45,8 @@ jobs:
shared-key: verify
- name: Install Python
run: uv python install 3.12
- name: Install development tools
run: uv sync --locked
- name: Install development tools without the recorder
run: uv sync --locked --no-group recorder
- name: Run static checks
run: make check-ci
- name: Run tests
Expand Down
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -29,3 +29,7 @@ __pycache__/
/.agents/skills/
/.claude/skills/
/.opencode/skills/

# Derived evidence work files
/evidence/pending/
/evidence/audit/
3 changes: 3 additions & 0 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,9 @@
- Everything that could be weakened to make a failing case pass (comparator tolerances, required
edge-case inputs, known divergences) lives in one reviewed policy file. There are no per-case or
per-rule overrides elsewhere.
- Tests that need a result use DuckDB stand-ins written to temporary directories and marked as
test fixtures. Never commit a stand-in under `evidence/results`; the evidence guard rejects any
result the recorder did not write.
- When a case fails, either fix the rule or make it refuse. Never widen a rule to raise the
conversion rate.

Expand Down
Loading
Loading