Skip to content

Commit 438f610

Browse files
repo: restructure, docs, workflows, security & hygiene
This commit restructures the repository, tightens docs/scripts to essentials, adds missing governance/legal/automation files, and sets up CI/CD + security scanning for a production-ready layout. Changes include: - Restructured the repository to a src-based layout. - Added essential documentation (README, SECURITY, CONTRIBUTING, etc.). - Added legal files (LICENSE, NOTICE, PRIVACY, TERMS). - Added GitHub issue and pull request templates. - Added GitHub Actions workflows for CI, linting, release, and security scanning. - Added a Makefile for developer convenience. - Added a .pre-commit-config.yaml for code quality. - Added a .gitignore to exclude unnecessary files.
1 parent 2fbf9e6 commit 438f610

38 files changed

+1943
-2728
lines changed

.github/CODEOWNERS

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# Default
2+
* @org/maintainers
3+
4+
# Critical paths
5+
/.github/ @org/platform
6+
/docs/ @org/tech-writers
7+
/legal/ @org/legal
8+
/src/ @org/maintainers @org/reviewers
9+
/tests/ @org/qa
Lines changed: 20 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -1,40 +1,38 @@
11
---
2-
name: Bug Report
2+
name: Bug report
33
about: Create a report to help us improve
4-
title: '[BUG] '
5-
labels: bug
4+
title: ''
5+
labels: ''
66
assignees: ''
7+
78
---
89

910
**Describe the bug**
1011
A clear and concise description of what the bug is.
1112

1213
**To Reproduce**
1314
Steps to reproduce the behavior:
14-
1. Run command '...'
15-
2. With parameters '....'
16-
3. See error
15+
1. Go to '...'
16+
2. Click on '....'
17+
3. Scroll down to '....'
18+
4. See error
1719

1820
**Expected behavior**
1921
A clear and concise description of what you expected to happen.
2022

21-
**Error Message**
22-
```
23-
Paste the complete error message here
24-
```
23+
**Screenshots**
24+
If applicable, add screenshots to help explain your problem.
2525

26-
**Environment:**
27-
- OS: [e.g., macOS 14.0, Ubuntu 22.04, Windows 11]
28-
- Python Version: [e.g., 3.11.0]
29-
- Tool Version: [e.g., commit hash or version]
30-
- Venice API Status: [Working/Not Working]
26+
**Desktop (please complete the following information):**
27+
- OS: [e.g. iOS]
28+
- Browser [e.g. chrome, safari]
29+
- Version [e.g. 22]
3130

32-
**Configuration:**
33-
- Are you using GitKraken CLI? [Yes/No]
34-
- Any custom configurations? [Describe]
31+
**Smartphone (please complete the following information):**
32+
- Device: [e.g. iPhone6]
33+
- OS: [e.g. iOS8.1]
34+
- Browser [e.g. stock browser, safari]
35+
- Version [e.g. 22]
3536

3637
**Additional context**
37-
Add any other context about the problem here, such as:
38-
- Screenshots
39-
- Log files
40-
- Related issues
38+
Add any other context about the problem here.
Lines changed: 5 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
---
2-
name: Feature Request
2+
name: Feature request
33
about: Suggest an idea for this project
4-
title: '[FEATURE] '
5-
labels: enhancement
4+
title: ''
5+
labels: ''
66
assignees: ''
7+
78
---
89

910
**Is your feature request related to a problem? Please describe.**
@@ -15,14 +16,5 @@ A clear and concise description of what you want to happen.
1516
**Describe alternatives you've considered**
1617
A clear and concise description of any alternative solutions or features you've considered.
1718

18-
**Use Case**
19-
Describe how this feature would be used and who would benefit.
20-
21-
**Example Usage**
22-
```bash
23-
# Example command or code showing how the feature would work
24-
python qwen_cli_integrator.py ...
25-
```
26-
2719
**Additional context**
28-
Add any other context, screenshots, or references about the feature request here.
20+
Add any other context or screenshots about the feature request here.

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 19 additions & 46 deletions
Original file line numberDiff line numberDiff line change
@@ -1,53 +1,26 @@
1-
## Description
1+
---
2+
name: Pull request
3+
about: Propose a change to the project
4+
title: ''
5+
labels: ''
6+
assignees: ''
27

3-
Please provide a brief description of the changes in this PR.
8+
---
49

5-
## Type of Change
10+
**What does this PR do?**
11+
A clear and concise description of what this PR does.
612

7-
- [ ] Bug fix (non-breaking change which fixes an issue)
8-
- [ ] New feature (non-breaking change which adds functionality)
9-
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
10-
- [ ] Documentation update
11-
- [ ] Code refactoring
12-
- [ ] Performance improvement
13-
- [ ] Test addition/update
13+
**How should this be manually tested?**
14+
A clear and concise description of how to manually test this PR.
1415

15-
## Related Issue
16+
**Any background context you can provide?**
17+
A clear and concise description of any background context.
1618

17-
Fixes #(issue number)
19+
**What are the relevant tickets?**
20+
A clear and concise description of any relevant tickets.
1821

19-
## Changes Made
22+
**Screenshots**
23+
If applicable, add screenshots to help explain your problem.
2024

21-
- Change 1
22-
- Change 2
23-
- Change 3
24-
25-
## Testing
26-
27-
Describe how you tested your changes:
28-
29-
```bash
30-
# Example test commands run
31-
pytest tests/
32-
python qwen_cli_integrator.py venice generate --prompt "test"
33-
```
34-
35-
## Checklist
36-
37-
- [ ] My code follows the project's style guidelines
38-
- [ ] I have performed a self-review of my own code
39-
- [ ] I have commented my code, particularly in hard-to-understand areas
40-
- [ ] I have made corresponding changes to the documentation
41-
- [ ] My changes generate no new warnings
42-
- [ ] I have added tests that prove my fix is effective or that my feature works
43-
- [ ] New and existing unit tests pass locally with my changes
44-
- [ ] Any dependent changes have been merged and published
45-
- [ ] No API keys or secrets are included in the code
46-
47-
## Screenshots (if applicable)
48-
49-
Add screenshots to help explain your changes.
50-
51-
## Additional Notes
52-
53-
Any additional information or context about the PR.
25+
**Additional context**
26+
Add any other context about the problem here.

.github/workflows/ci.yml

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
name: ci
2+
on:
3+
push:
4+
branches: [main]
5+
pull_request:
6+
jobs:
7+
test:
8+
runs-on: ubuntu-latest
9+
strategy:
10+
matrix: { python-version: ["3.10", "3.11", "3.12"] }
11+
steps:
12+
- uses: actions/checkout@v4
13+
- uses: actions/setup-python@v5
14+
with: { python-version: ${{ matrix.python-version }} }
15+
- run: pip install -U pip
16+
- run: pip install -e ".[dev]" || pip install -e .
17+
- run: PYTHONPATH=src DISABLE_NLP=1 pytest -q --maxfail=1 --disable-warnings --cov --cov-report=xml
18+
- uses: codecov/codecov-action@v4
19+
if: always()
20+
with: { files: coverage.xml, fail_ci_if_error: false }

.github/workflows/codeql.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
name: codeql
2+
on:
3+
push: { branches: [main] }
4+
pull_request:
5+
schedule: [{ cron: "0 3 * * 1" }]
6+
jobs:
7+
analyze:
8+
uses: github/codeql-action/.github/workflows/codeql.yml@v3
9+
with:
10+
languages: "python"

.github/workflows/gitleaks.yml

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,10 @@
1+
name: gitleaks
2+
on: [push, pull_request]
3+
jobs:
4+
scan:
5+
runs-on: ubuntu-latest
6+
steps:
7+
- uses: actions/checkout@v4
8+
- uses: gitleaks/gitleaks-action@v2
9+
with:
10+
args: "--redact --verbose"

.github/workflows/lint.yml

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
name: lint
2+
on: [push, pull_request]
3+
jobs:
4+
lint:
5+
runs-on: ubuntu-latest
6+
steps:
7+
- uses: actions/checkout@v4
8+
- uses: actions/setup-python@v5
9+
with: { python-version: "3.12" }
10+
- run: pip install -U pip
11+
- run: pip install ruff mypy pre-commit
12+
- run: ruff check .
13+
- run: mypy --ignore-missing-imports .
14+
- run: pre-commit run --all-files

.github/workflows/release.yml

Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
name: release
2+
on:
3+
push:
4+
tags: ["v*.*.*"]
5+
jobs:
6+
build-publish:
7+
permissions: { contents: write, id-token: write }
8+
runs-on: ubuntu-latest
9+
steps:
10+
- uses: actions/checkout@v4
11+
- uses: actions/setup-python@v5
12+
with: { python-version: "3.12" }
13+
- run: pip install -U pip build twine
14+
- run: python -m build
15+
- uses: softprops/action-gh-release@v2
16+
with:
17+
files: |
18+
dist/*

.github/workflows/scorecard.yml

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
name: scorecard
2+
on:
3+
branch_protection_rule:
4+
schedule: [{ cron: "0 4 * * 1" }]
5+
push: { branches: [main] }
6+
jobs:
7+
analysis:
8+
uses: ossf/scorecard/.github/workflows/analysis.yml@main
9+
permissions:
10+
security-events: write
11+
id-token: write
12+
contents: read

0 commit comments

Comments
 (0)