Fix lint debt and make CI gates honest
- 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:
@@ -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.
|
||||
|
||||
Reference in New Issue
Block a user