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
45 changes: 45 additions & 0 deletions .github/workflows/codeflash-optimize.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
name: CodeFlash

on:
pull_request:
paths:
- "**"
workflow_dispatch:

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true

jobs:
optimize:
name: Optimize new code in this PR
if: ${{ github.actor != 'codeflash-ai[bot]' }}
runs-on: ubuntu-latest
env:
CODEFLASH_AIS_SERVER: prod
POSTHOG_API_KEY: ${{ secrets.POSTHOG_API_KEY }}
CODEFLASH_API_KEY: ${{ secrets.CODEFLASH_API_KEY }}
CODEFLASH_PR_NUMBER: ${{ github.event.number }}
COLUMNS: 110
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0

- name: Set up Python 3.11 for CLI
uses: astral-sh/setup-uv@v5
with:
python-version: 3.11.6

- name: Install dependencies (CLI)
run: |
uv tool install poetry
uv venv
source .venv/bin/activate
poetry install --with dev

- name: Run Codeflash to optimize code
id: optimize_code
run: |
source .venv/bin/activate
poetry run codeflash
57 changes: 57 additions & 0 deletions .github/workflows/end-to-end-test-bubblesort-pytest-no-git.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
name: end-to-end-test

on:
pull_request:
workflow_dispatch:

jobs:
bubble-sort-optimization-pytest-no-git:
runs-on: ubuntu-latest
env:
CODEFLASH_AIS_SERVER: prod
POSTHOG_API_KEY: ${{ secrets.POSTHOG_API_KEY }}
CODEFLASH_API_KEY: ${{ secrets.CODEFLASH_API_KEY }}
COLUMNS: 110
MAX_RETRIES: 3
RETRY_DELAY: 5
EXPECTED_IMPROVEMENT_PCT: 300
CODEFLASH_END_TO_END: 1
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.GITHUB_TOKEN }}

- name: Set up Python 3.11 for CLI
uses: astral-sh/setup-uv@v5
with:
python-version: 3.11.6

- name: Install dependencies (CLI)
run: |
uv tool install poetry
uv venv
source .venv/bin/activate
poetry install --with dev

- name: Remove .git
run: |
if [ -d ".git" ]; then
echo ".git directory exists!"
sudo rm -rf .git
if [ -d ".git" ]; then
echo ".git directory still exists after removal attempt!"
exit 1
else
echo ".git directory successfully removed."
fi
else
echo ".git directory does not exist. Nothing to remove."
exit 1
fi

- name: Run Codeflash to optimize code
id: optimize_code
run: |
source .venv/bin/activate
poetry run python tests/scripts/end_to_end_test_bubblesort_pytest.py
41 changes: 41 additions & 0 deletions .github/workflows/end-to-end-test-bubblesort-unittest.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: end-to-end-test

on:
pull_request:
workflow_dispatch:

jobs:
bubble-sort-optimization-unittest:
runs-on: ubuntu-latest
env:
CODEFLASH_AIS_SERVER: prod
POSTHOG_API_KEY: ${{ secrets.POSTHOG_API_KEY }}
CODEFLASH_API_KEY: ${{ secrets.CODEFLASH_API_KEY }}
COLUMNS: 110
MAX_RETRIES: 3
RETRY_DELAY: 5
EXPECTED_IMPROVEMENT_PCT: 300
CODEFLASH_END_TO_END: 1
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.GITHUB_TOKEN }}

- name: Set up Python 3.11 for CLI
uses: astral-sh/setup-uv@v5
with:
python-version: 3.11.6

- name: Install dependencies (CLI)
run: |
uv tool install poetry
uv venv
source .venv/bin/activate
poetry install --with dev

- name: Run Codeflash to optimize code
id: optimize_code
run: |
source .venv/bin/activate
poetry run python tests/scripts/end_to_end_test_bubblesort_unittest.py
40 changes: 40 additions & 0 deletions .github/workflows/end-to-end-test-coverage.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
name: Coverage E2E

on:
pull_request:
workflow_dispatch:

jobs:
end-to-end-test-coverage:
runs-on: ubuntu-latest
env:
CODEFLASH_AIS_SERVER: prod
POSTHOG_API_KEY: ${{ secrets.POSTHOG_API_KEY }}
CODEFLASH_API_KEY: ${{ secrets.CODEFLASH_API_KEY }}
MAX_RETRIES: 3
RETRY_DELAY: 5
CODEFLASH_END_TO_END: 1
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.GITHUB_TOKEN }}

- name: Set up Python 3.11 for CLI
uses: astral-sh/setup-uv@v5
with:
python-version: 3.11.6

- name: Install dependencies (CLI)
run: |
uv tool install poetry
uv venv
source .venv/bin/activate
poetry install --with dev
poetry add black # my-best-repo in end_to_end_test_coverage.py is configured to use black

- name: Run Codeflash to optimize code
id: optimize_code
run: |
source .venv/bin/activate
poetry run python tests/scripts/end_to_end_test_coverage.py
41 changes: 41 additions & 0 deletions .github/workflows/end-to-end-test-futurehouse.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: end-to-end-test

on:
pull_request:
workflow_dispatch:

jobs:
futurehouse-structure:
runs-on: ubuntu-latest
env:
CODEFLASH_AIS_SERVER: prod
POSTHOG_API_KEY: ${{ secrets.POSTHOG_API_KEY }}
CODEFLASH_API_KEY: ${{ secrets.CODEFLASH_API_KEY }}
COLUMNS: 110
MAX_RETRIES: 3
RETRY_DELAY: 5
EXPECTED_IMPROVEMENT_PCT: 10
CODEFLASH_END_TO_END: 1
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.GITHUB_TOKEN }}

- name: Set up Python 3.11 for CLI
uses: astral-sh/setup-uv@v5
with:
python-version: 3.11.6

- name: Install dependencies (CLI)
run: |
uv tool install poetry
uv venv
source .venv/bin/activate
poetry install --with dev

- name: Run Codeflash to optimize code
id: optimize_code
run: |
source .venv/bin/activate
poetry run python tests/scripts/end_to_end_test_futurehouse.py
41 changes: 41 additions & 0 deletions .github/workflows/end-to-end-test-init-optim.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: end-to-end-test

on:
pull_request:
workflow_dispatch:

jobs:
init-optimization:
runs-on: ubuntu-latest
env:
CODEFLASH_AIS_SERVER: prod
POSTHOG_API_KEY: ${{ secrets.POSTHOG_API_KEY }}
CODEFLASH_API_KEY: ${{ secrets.CODEFLASH_API_KEY }}
COLUMNS: 110
MAX_RETRIES: 3
RETRY_DELAY: 5
EXPECTED_IMPROVEMENT_PCT: 300
CODEFLASH_END_TO_END: 1
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.GITHUB_TOKEN }}

- name: Set up Python 3.11 for CLI
uses: astral-sh/setup-uv@v5
with:
python-version: 3.11.6

- name: Install dependencies (CLI)
run: |
uv tool install poetry
uv venv
source .venv/bin/activate
poetry install --with dev

- name: Run Codeflash to optimize code
id: optimize_code
run: |
source .venv/bin/activate
poetry run python tests/scripts/end_to_end_test_init_optimization.py
41 changes: 41 additions & 0 deletions .github/workflows/end-to-end-test-tracer-replay.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: end-to-end-test

on:
pull_request:
workflow_dispatch:

jobs:
tracer-replay:
runs-on: ubuntu-latest
env:
CODEFLASH_AIS_SERVER: prod
POSTHOG_API_KEY: ${{ secrets.POSTHOG_API_KEY }}
CODEFLASH_API_KEY: ${{ secrets.CODEFLASH_API_KEY }}
COLUMNS: 110
MAX_RETRIES: 3
RETRY_DELAY: 5
EXPECTED_IMPROVEMENT_PCT: 10
CODEFLASH_END_TO_END: 1
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.GITHUB_TOKEN }}

- name: Set up Python 3.11 for CLI
uses: astral-sh/setup-uv@v5
with:
python-version: 3.11.6

- name: Install dependencies (CLI)
run: |
uv tool install poetry
uv venv
source .venv/bin/activate
poetry install --with dev

- name: Run Codeflash to optimize code
id: optimize_code
run: |
source .venv/bin/activate
poetry run python tests/scripts/end_to_end_test_tracer_replay.py
41 changes: 41 additions & 0 deletions .github/workflows/end-to-end-topological-sort-test.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
name: end-to-end-test

on:
pull_request:
workflow_dispatch:

jobs:
topological-sort-optimization:
runs-on: ubuntu-latest
env:
CODEFLASH_AIS_SERVER: prod
POSTHOG_API_KEY: ${{ secrets.POSTHOG_API_KEY }}
CODEFLASH_API_KEY: ${{ secrets.CODEFLASH_API_KEY }}
COLUMNS: 110
MAX_RETRIES: 3
RETRY_DELAY: 5
EXPECTED_IMPROVEMENT_PCT: 5
CODEFLASH_END_TO_END: 1
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.GITHUB_TOKEN }}

- name: Set up Python 3.11 for CLI
uses: astral-sh/setup-uv@v5
with:
python-version: 3.11.6

- name: Install dependencies (CLI)
run: |
uv tool install poetry
uv venv
source .venv/bin/activate
poetry install --with dev

- name: Run Codeflash to optimize code
id: optimize_code
run: |
source .venv/bin/activate
poetry run python tests/scripts/end_to_end_test_topological_sort.py
31 changes: 31 additions & 0 deletions .github/workflows/mypy.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Mypy Type Checking for CLI

on:
push:
branches:
- main
pull_request:

jobs:
type-check-cli:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v4
with:
fetch-depth: 0
token: ${{ secrets.GITHUB_TOKEN }}

- name: Install uv
uses: astral-sh/setup-uv@v5
with:
version: "0.5.30"

- name: install poetry as a tool
run: uv tool install poetry

- name: install dependencies
run: uvx poetry install --with dev

- name: Run mypy on allowlist
run: uvx poetry run mypy --non-interactive --config-file pyproject.toml @mypy_allowlist.txt
Loading
Loading