Skip to content
This repository was archived by the owner on Jul 12, 2026. It is now read-only.

Commit 76af02e

Browse files
authored
Merge pull request #14 from SL-Mar/claude/assess-gamma-quality-qhC6n
Add CI/CD pipeline, documentation, and project cleanup
2 parents 16d3b0d + dde9283 commit 76af02e

84 files changed

Lines changed: 18586 additions & 1678 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.git-branches-guide.md

Lines changed: 62 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,62 @@
1+
# QuantCoder Branch Guide
2+
3+
## Quick Switch Commands
4+
5+
```bash
6+
# Switch to stable production (1.0)
7+
git checkout main
8+
9+
# Switch to improved testing (1.1)
10+
git checkout beta
11+
12+
# Switch to cutting edge (2.0) ⭐
13+
git checkout gamma
14+
```
15+
16+
## Branch Mapping
17+
18+
| Local Branch | Version | Remote Branch |
19+
|--------------|---------|---------------|
20+
| `main` | 1.0.0 | `origin/main` |
21+
| `beta` | 1.1.0-beta.1 | `origin/refactor/modernize-2025` |
22+
| `gamma` | 2.0.0-alpha.1 | `origin/claude/refactor-quantcoder-cli-JwrsM` |
23+
24+
## Common Operations
25+
26+
### Check current branch
27+
```bash
28+
git branch
29+
```
30+
31+
### Pull latest changes
32+
```bash
33+
git pull
34+
```
35+
36+
### Push your changes
37+
```bash
38+
git push
39+
# Git knows where to push based on tracking
40+
```
41+
42+
### See all branches
43+
```bash
44+
git branch -vv
45+
# Shows local branches with tracking info
46+
```
47+
48+
## Package Info
49+
50+
- **main**: Uses `quantcli` package
51+
- **beta**: Uses `quantcli` package (improved)
52+
- **gamma**: Uses `quantcoder` package (new)
53+
54+
## Why Different Remote Names?
55+
56+
The remote uses technical naming for system requirements.
57+
Your local names are clean and user-friendly.
58+
**This is normal and a Git best practice!**
59+
60+
---
61+
62+
**Need help?** See `docs/BRANCH_VERSION_MAP.md`

.github/workflows/ci.yml

Lines changed: 114 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,114 @@
1+
name: CI
2+
3+
on:
4+
push:
5+
branches: [main, master, develop, gamma, beta, "feature/*", "claude/*"]
6+
pull_request:
7+
branches: [main, master, develop, gamma, beta]
8+
9+
jobs:
10+
lint:
11+
name: Lint & Format
12+
runs-on: ubuntu-latest
13+
steps:
14+
- uses: actions/checkout@v4
15+
16+
- name: Set up Python
17+
uses: actions/setup-python@v5
18+
with:
19+
python-version: "3.11"
20+
21+
- name: Install dependencies
22+
run: |
23+
python -m pip install --upgrade pip
24+
pip install ruff black
25+
26+
- name: Check formatting with Black
27+
run: black --check --diff .
28+
29+
- name: Lint with Ruff
30+
run: ruff check .
31+
32+
type-check:
33+
name: Type Check
34+
runs-on: ubuntu-latest
35+
steps:
36+
- uses: actions/checkout@v4
37+
38+
- name: Set up Python
39+
uses: actions/setup-python@v5
40+
with:
41+
python-version: "3.11"
42+
43+
- name: Install dependencies
44+
run: |
45+
python -m pip install --upgrade pip
46+
pip install -e ".[dev]"
47+
48+
- name: Run mypy
49+
run: mypy quantcoder --ignore-missing-imports
50+
51+
test:
52+
name: Test (Python ${{ matrix.python-version }})
53+
runs-on: ubuntu-latest
54+
strategy:
55+
fail-fast: false
56+
matrix:
57+
python-version: ["3.10", "3.11", "3.12"]
58+
59+
steps:
60+
- uses: actions/checkout@v4
61+
62+
- name: Set up Python ${{ matrix.python-version }}
63+
uses: actions/setup-python@v5
64+
with:
65+
python-version: ${{ matrix.python-version }}
66+
67+
- name: Install dependencies
68+
run: |
69+
python -m pip install --upgrade pip
70+
pip install -e ".[dev]"
71+
pip install pytest-cov pytest-mock
72+
python -m spacy download en_core_web_sm
73+
74+
- name: Run tests
75+
run: pytest tests/ -v --cov=quantcoder --cov-report=xml
76+
77+
- name: Upload coverage
78+
uses: codecov/codecov-action@v3
79+
if: matrix.python-version == '3.11'
80+
with:
81+
files: ./coverage.xml
82+
fail_ci_if_error: false
83+
84+
security:
85+
name: Security Scan
86+
runs-on: ubuntu-latest
87+
steps:
88+
- uses: actions/checkout@v4
89+
90+
- name: Set up Python
91+
uses: actions/setup-python@v5
92+
with:
93+
python-version: "3.11"
94+
95+
- name: Install dependencies
96+
run: |
97+
python -m pip install --upgrade pip
98+
pip install pip-audit
99+
100+
- name: Run pip-audit
101+
run: pip-audit --require-hashes=false || true
102+
103+
secret-scan:
104+
name: Secret Scanning
105+
runs-on: ubuntu-latest
106+
steps:
107+
- uses: actions/checkout@v4
108+
with:
109+
fetch-depth: 0
110+
111+
- name: TruffleHog Secret Scan
112+
uses: trufflesecurity/trufflehog@main
113+
with:
114+
extra_args: --only-verified

.gitignore

Lines changed: 88 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -1,17 +1,95 @@
1-
# Python virtual environments
1+
# Python bytecode and cache
2+
__pycache__/
3+
*.py[cod]
4+
*$py.class
5+
*.so
6+
.Python
7+
8+
# Distribution / packaging
9+
build/
10+
develop-eggs/
11+
dist/
12+
downloads/
13+
eggs/
14+
.eggs/
15+
lib/
16+
lib64/
17+
parts/
18+
sdist/
19+
var/
20+
wheels/
21+
*.egg-info/
22+
.installed.cfg
23+
*.egg
24+
MANIFEST
25+
*.whl
26+
27+
# Virtual Environment
28+
.venv/
229
.venv-legacy/
330
venv/
31+
ENV/
32+
env/
33+
.env/
434

5-
# Bytecode files
6-
__pycache__/
7-
*.pyc
8-
9-
# Environment variables
10-
.env
35+
# IDE and editors
36+
.vscode/
37+
.idea/
38+
*.swp
39+
*.swo
40+
*~
41+
.project
42+
.pydevproject
43+
.settings/
1144

12-
# Logs and output
45+
# Logs and output artifacts
1346
*.log
47+
logs/
48+
quantcli.log
49+
article_processor.log
50+
51+
# QuantCoder specific - user data
52+
downloads/
53+
generated_code/
54+
articles.json
55+
output.html
1456
output.*
1557

16-
# Packaging metadata
17-
*.egg-info/
58+
# Configuration and secrets (API keys)
59+
.env
60+
.env.*
61+
*.env
62+
.envrc
63+
.quantcoder/
64+
secrets.json
65+
credentials.json
66+
67+
# OS specific
68+
.DS_Store
69+
Thumbs.db
70+
71+
# SpaCy models (large binary files)
72+
*.bin
73+
74+
# Testing and coverage
75+
.pytest_cache/
76+
.coverage
77+
.coverage.*
78+
htmlcov/
79+
coverage.xml
80+
*.cover
81+
.hypothesis/
82+
.tox/
83+
.nox/
84+
85+
# Type checking
86+
.mypy_cache/
87+
.dmypy.json
88+
dmypy.json
89+
.pytype/
90+
91+
# Jupyter
92+
.ipynb_checkpoints/
93+
94+
# Local development
95+
*.local

0 commit comments

Comments
 (0)