Fix lint debt and make CI gates honest
CI / skip-ci-check (pull_request) Successful in 19s
CI / secret-scan (pull_request) Successful in 19s
CI / python-ci (pull_request) Successful in 2m38s

- ruff: fix all 328 errors (autofix + manual); move config to [tool.ruff.lint]
- mypy: fix all errors (annotations, nullable-column guards, stale kwargs
  in weekly report caller)
- black: reformat src/tests so black --check passes
- CI: remove `|| true` from ruff/black/mypy/pytest steps in both
  .gitea and .github workflows; install project deps and add mypy
  step in gitea python-ci so gates actually run
- docs: move 14 root status/guide markdown files into docs/, update links
This commit is contained in:
2026-07-26 15:41:07 -04:00
parent 6e5e69ed10
commit 5df21d82f4
42 changed files with 518 additions and 602 deletions
+64
View File
@@ -0,0 +1,64 @@
# 🆓 Free Testing Quick Reference
## TL;DR: You can test everything for $0
### Already Working (PR1 ✅)
- **Price data**: `yfinance` (free, unlimited)
- **Unit tests**: Mocked data in `tests/` (15 passing tests)
- **Coverage**: 87% without any paid APIs
### For PR2 (Congressional Trades) - FREE Options
#### Best Option: House Stock Watcher 🌟
```bash
# No API key needed, just scrape their public JSON
curl https://housestockwatcher.com/api/all_transactions
```
- **Cost**: $0
- **Rate limit**: None (reasonable scraping)
- **Data**: Live congressional trades (House + Senate)
- **Quality**: Community-maintained, very reliable
#### Backup: Quiver Quantitative Free Tier
```bash
# Sign up for free at quiverquant.com
# Add to .env:
QUIVERQUANT_API_KEY=your_free_key
```
- **Cost**: $0
- **Rate limit**: 500 API calls/month (enough for testing)
- **Data**: Congress + Senate trades + insider trades
### Testing Strategy (Zero Cost)
```bash
# 1. Unit tests (always free, use mocks)
make test
# 2. Integration tests with fixtures (real data shape, no network)
pytest tests/ -m integration
# 3. Live smoke test with free APIs
python scripts/fetch_house_watcher_sample.py # We'll build this in PR2
```
### What You DON'T Need to Pay For
❌ QuiverQuant Pro ($30/mo) - free tier is enough for dev/testing
❌ Financial Modeling Prep paid tier - free tier works
❌ Any paid database hosting - SQLite works great locally
❌ Any cloud services - runs 100% locally
### When You MIGHT Want Paid (Way Later)
- Production-grade rate limits (thousands of requests/day)
- Historical data >2 years back
- Multiple concurrent users on a dashboard
- Commercial use (check each API's terms)
**For personal research? Stay free forever. 🎉**
---
See `docs/06_free_testing_data.md` for full details.