diff --git a/.github/workflows/dead-code.yml b/.github/workflows/dead-code.yml new file mode 100644 index 0000000..0bfdcd4 --- /dev/null +++ b/.github/workflows/dead-code.yml @@ -0,0 +1,17 @@ +name: Dead code + +on: + pull_request: + push: + branches: [main] + +jobs: + vulture: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + with: + python-version: '3.12' + - run: python -m pip install vulture==2.16 + - run: vulture runtime scripts tests --min-confidence 90 diff --git a/AGENTS.md b/AGENTS.md new file mode 100644 index 0000000..25276ad --- /dev/null +++ b/AGENTS.md @@ -0,0 +1,4 @@ +# Code cleanup + +- Install `requirements-dev.txt` and run `vulture runtime scripts tests --min-confidence 90` after Python removals. Pull-request CI runs the same check. +- For cross-file removals, refresh Graphify and inspect callers before deleting. Verify current source and framework registrations. diff --git a/requirements-dev.txt b/requirements-dev.txt new file mode 100644 index 0000000..33ddc29 --- /dev/null +++ b/requirements-dev.txt @@ -0,0 +1,2 @@ +-r requirements.txt +vulture==2.16 diff --git a/tests/test_jev.py b/tests/test_jev.py index c348969..896d317 100644 --- a/tests/test_jev.py +++ b/tests/test_jev.py @@ -23,7 +23,7 @@ class Answer: def __init__(self, **values): self.values = values - def model_dump(self, mode="python"): return self.values + def model_dump(self, mode="python"): return self.values # noqa: vulture - required interface class Primitive: