ci: bump actions/checkout from 5.1.0 to 7.0.1 #175
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: validate | |
| on: | |
| push: | |
| pull_request: | |
| permissions: | |
| contents: read | |
| concurrency: | |
| group: validate-${{ github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| validate: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 10 | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - uses: actions/setup-python@ece7cb06caefa5fff74198d8649806c4678c61a1 # v6 | |
| with: | |
| python-version: "3.11" | |
| - name: Compile Python sources | |
| run: python3 -m compileall -q scripts tests bench | |
| - name: Validate pattern data | |
| run: | | |
| python3 -c "import json; json.load(open('data/patterns.json')); json.load(open('data/learned.json'))" | |
| - name: Compile all regexes | |
| run: | | |
| python3 - <<'EOF' | |
| import json, re | |
| d = json.load(open("data/patterns.json")) | |
| for p in d["patterns"]: | |
| re.compile(p["rx"], re.I) | |
| print(f"{len(d['patterns'])} patterns, {len(d['lexicon'])} lexicon terms OK") | |
| EOF | |
| - name: Scorer smoke test | |
| run: | | |
| python3 - <<'EOF' | |
| import sys | |
| sys.path.insert(0, "scripts") | |
| import slopscore | |
| data = slopscore.load_patterns() | |
| slop = ("I'm beyond excited to announce our game-changing platform! " | |
| "It's not just a tool — it's a testament to our incredible " | |
| "journey. Let's dive in! Agree? 👇 #ai #growth #startup #future") | |
| human = ("We raised $4.2M. It took 18 months, and for the first six " | |
| "of them the demo crashed on stage more often than it ran.") | |
| s1 = slopscore.score_text(slop, data)["ai_likelihood"] | |
| s2 = slopscore.score_text(human, data)["ai_likelihood"] | |
| print(f"slop={s1} human={s2}") | |
| assert s1 > 60, f"slop sample under-scored: {s1}" | |
| assert s2 < 30, f"human sample over-scored: {s2}" | |
| EOF | |
| - name: Full test suite | |
| run: python3 -m unittest tests.test_all | |
| - name: Plugin mirror in sync | |
| run: python3 scripts/build_plugin.py --check | |
| - name: Single-file bundle in sync | |
| run: python3 scripts/build_bundle.py --check | |
| - name: False-positive regression | |
| run: python3 scripts/calibrate.py --selftest | |
| - name: Predictability probe self-test | |
| run: python3 scripts/predictability.py --selftest | |
| - name: Final-review and benchmark contracts | |
| run: | | |
| python3 scripts/register.py --selftest | |
| python3 bench/validate_corpus_registry.py | |
| python3 bench/make_charts.py --check | |
| - name: Validate repository graphics | |
| run: | | |
| python3 scripts/check_svg.py assets/engine.svg | |
| python3 scripts/check_svg.py assets/demo.svg | |
| - name: SKILL.md frontmatter present | |
| run: | | |
| head -1 SKILL.md | grep -q '^---$' | |
| grep -q '^name: zero-slop' SKILL.md | |
| grep -q '^description:' SKILL.md | |
| website: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 10 | |
| defaults: | |
| run: | |
| working-directory: website | |
| steps: | |
| - uses: actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1 # v7.0.1 | |
| - uses: actions/setup-node@a0853c24544627f65ddf259abe73b1d18a591444 # v5 | |
| with: | |
| node-version: "22.13.0" | |
| cache: npm | |
| cache-dependency-path: website/package-lock.json | |
| - run: npm ci | |
| - run: npm audit --audit-level=high | |
| - run: npm run lint | |
| - run: npm test |