From 74eac1c2b4a45120242b85509534752ac13b4ad8 Mon Sep 17 00:00:00 2001 From: Damen Knight Date: Mon, 9 Feb 2026 05:15:35 -0800 Subject: [PATCH] Add issue templates and CI test workflow - Bug report, feature request, and model support issue templates - GitHub Actions workflow runs pytest on Python 3.11/3.12/3.13 (non-blocking) Co-Authored-By: Claude Opus 4.6 --- .github/ISSUE_TEMPLATE/bug_report.yml | 59 ++++++++++++++++++++++ .github/ISSUE_TEMPLATE/config.yml | 5 ++ .github/ISSUE_TEMPLATE/feature_request.yml | 46 +++++++++++++++++ .github/ISSUE_TEMPLATE/model_support.yml | 44 ++++++++++++++++ .github/workflows/tests.yml | 29 +++++++++++ 5 files changed, 183 insertions(+) create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yml create mode 100644 .github/ISSUE_TEMPLATE/config.yml create mode 100644 .github/ISSUE_TEMPLATE/feature_request.yml create mode 100644 .github/ISSUE_TEMPLATE/model_support.yml create mode 100644 .github/workflows/tests.yml diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml new file mode 100644 index 0000000..94c6e4c --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -0,0 +1,59 @@ +name: Bug Report +description: Something isn't working as expected +labels: ["bug"] +body: + - type: markdown + attributes: + value: | + Thanks for reporting a bug! Please fill out the sections below so we can reproduce and fix it. + + - type: input + id: model + attributes: + label: Model + description: Which model were you using? + placeholder: e.g. qwen3:30b-a3b, devstral-small2, llama4-maverick + validations: + required: true + + - type: input + id: client + attributes: + label: Client + description: What client is talking to Filthy Tool Fixer? + placeholder: e.g. aider, OpenCode, curl, custom script + + - type: textarea + id: what-happened + attributes: + label: What happened? + description: Describe the bug. What did you expect vs. what actually happened? + validations: + required: true + + - type: textarea + id: reproduce + attributes: + label: Steps to reproduce + description: Minimal steps or a curl command to reproduce the issue. + render: bash + + - type: textarea + id: logs + attributes: + label: Relevant logs + description: Paste any relevant log output or response headers (X-FilthyLLM-* headers are especially helpful). + render: text + + - type: input + id: version + attributes: + label: Version + description: Filthy Tool Fixer version or commit hash + placeholder: e.g. v0.3.0, abc1234 + + - type: textarea + id: environment + attributes: + label: Environment + description: Any other relevant details (OS, Ollama version, hardware, etc.) diff --git a/.github/ISSUE_TEMPLATE/config.yml b/.github/ISSUE_TEMPLATE/config.yml new file mode 100644 index 0000000..0fa1ac5 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/config.yml @@ -0,0 +1,5 @@ +blank_issues_enabled: false +contact_links: + - name: Question / Discussion + url: https://github.com/filthyrake/filthy-tool-fixer/issues + about: For general questions, open a blank issue with the "question" label diff --git a/.github/ISSUE_TEMPLATE/feature_request.yml b/.github/ISSUE_TEMPLATE/feature_request.yml new file mode 100644 index 0000000..09f1db6 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yml @@ -0,0 +1,46 @@ +name: Feature Request +description: Suggest a new feature or improvement +labels: ["enhancement"] +body: + - type: markdown + attributes: + value: | + Have an idea for Filthy Tool Fixer? We'd love to hear it. + + - type: textarea + id: problem + attributes: + label: What problem does this solve? + description: Describe the use case or pain point this feature would address. + validations: + required: true + + - type: textarea + id: solution + attributes: + label: Proposed solution + description: How do you think this should work? Include any specifics about behavior, configuration, etc. + validations: + required: true + + - type: textarea + id: alternatives + attributes: + label: Alternatives considered + description: Have you considered any workarounds or alternative approaches? + + - type: dropdown + id: area + attributes: + label: Area + description: Which part of the project does this relate to? + options: + - Validation / Schema + - Retry / Rescue / Repair + - Model Escalation + - Context Condensing + - Profiles + - New Model Support + - API / Endpoints + - Deployment / Configuration + - Other diff --git a/.github/ISSUE_TEMPLATE/model_support.yml b/.github/ISSUE_TEMPLATE/model_support.yml new file mode 100644 index 0000000..d5d6a10 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/model_support.yml @@ -0,0 +1,44 @@ +name: Model Support +description: Request support for a new model or report model-specific issues +labels: ["enhancement", "help wanted"] +body: + - type: markdown + attributes: + value: | + Want to see a new model supported, or have tuning notes for an existing one? + + - type: input + id: model-name + attributes: + label: Model name + description: The full model name as used with Ollama + placeholder: e.g. mistral-large:123b-q4_K_M + validations: + required: true + + - type: dropdown + id: request-type + attributes: + label: Request type + options: + - New model support + - Existing model needs tuning + - Model profile bug + validations: + required: true + + - type: textarea + id: details + attributes: + label: Details + description: | + For new models: link to the model, parameter count, architecture (dense/MoE), and any tool-calling notes you have. + For tuning: describe what's failing and what you've tried. + validations: + required: true + + - type: textarea + id: test-results + attributes: + label: Test results + description: If you've tested the model, share what worked and what didn't (tool calling accuracy, common failure modes, etc.) diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml new file mode 100644 index 0000000..d04186a --- /dev/null +++ b/.github/workflows/tests.yml @@ -0,0 +1,29 @@ +name: Tests + +on: + push: + branches: [main] + pull_request: + branches: [main] + +jobs: + test: + runs-on: ubuntu-latest + strategy: + fail-fast: false + matrix: + python-version: ["3.11", "3.12", "3.13"] + + steps: + - uses: actions/checkout@v4 + + - name: Set up Python ${{ matrix.python-version }} + uses: actions/setup-python@v5 + with: + python-version: ${{ matrix.python-version }} + + - name: Install dependencies + run: pip install -e ".[dev]" + + - name: Run tests + run: pytest tests/ -v