mirror of
https://github.com/BigBodyCobain/Shadowbroker.git
synced 2026-07-05 03:47:54 +02:00
Add contributor map and align backend version
This commit is contained in:
@@ -0,0 +1,76 @@
|
||||
# Contributor Map
|
||||
|
||||
ShadowBroker is a monorepo. The fastest way to contribute is to pick one
|
||||
surface, keep the change small, and run the matching test slice before opening
|
||||
a pull request.
|
||||
|
||||
## Main Areas
|
||||
|
||||
| Area | Path | Stack | Start here when |
|
||||
| --- | --- | --- | --- |
|
||||
| Web dashboard | `frontend/` | Next.js, React, MapLibre | Changing UI behavior, map layers, panels, client-side API code, or tests |
|
||||
| Backend API | `backend/` | FastAPI, Python | Changing API routes, data shaping, local auth gates, or feed orchestration |
|
||||
| Desktop app | `desktop-shell/` | Tauri, TypeScript, Rust | Changing packaged desktop runtime behavior or native bridge code |
|
||||
| Privacy core | `privacy-core/` | Rust | Changing low-level cryptographic or privacy primitives |
|
||||
| Deployment | `docker-compose*.yml`, `helm/`, `.github/` | Docker, Helm, GitHub Actions | Changing packaging, CI, images, or cluster deployment |
|
||||
| Agent package | `openclaw-skills/` | Python skill package | Changing OpenClaw/agent integration helpers |
|
||||
|
||||
## Low-Risk First Contributions
|
||||
|
||||
- Documentation fixes that make setup, architecture, or operations clearer.
|
||||
- Small frontend utilities with focused tests under `frontend/src/__tests__/`.
|
||||
- Isolated UI components outside the large map shell.
|
||||
- Version or metadata consistency fixes across package manifests.
|
||||
- Backend tests that document existing behavior without changing live-data paths.
|
||||
|
||||
## Areas That Need Extra Care
|
||||
|
||||
These paths are security-sensitive or operationally sensitive and have explicit
|
||||
owners in `.github/CODEOWNERS`:
|
||||
|
||||
- `backend/auth.py`
|
||||
- `backend/services/mesh/`
|
||||
- `backend/services/fetchers/`
|
||||
- `.github/workflows/`
|
||||
- Docker Compose, Helm, and CI/deploy files
|
||||
- `frontend/src/i18n/`
|
||||
|
||||
Changes there are welcome, but expect stricter review and a stronger test plan.
|
||||
|
||||
## Large Files To Avoid For First PRs
|
||||
|
||||
Some files are intentionally central and carry a lot of historical behavior.
|
||||
Avoid broad edits in these until you have a narrow bug or test target:
|
||||
|
||||
- `frontend/src/components/MaplibreViewer.tsx`
|
||||
- `frontend/src/components/MeshTerminal.tsx`
|
||||
- `frontend/src/components/SettingsPanel.tsx`
|
||||
- `frontend/src/components/NewsFeed.tsx`
|
||||
- `backend/main.py`
|
||||
- `backend/routers/ai_intel.py`
|
||||
- `backend/routers/mesh_public.py`
|
||||
|
||||
Prefer extracting or testing a small behavior around them instead of rewriting
|
||||
the file.
|
||||
|
||||
## Test Slices
|
||||
|
||||
Run the smallest relevant check locally, then expand if the change touches a
|
||||
shared contract.
|
||||
|
||||
```bash
|
||||
# Backend targeted tests
|
||||
(cd backend && uv sync --frozen --group dev)
|
||||
(cd backend && uv run pytest tests/path/to_test.py -q)
|
||||
|
||||
# Frontend targeted tests
|
||||
(cd frontend && npm ci)
|
||||
(cd frontend && npx vitest run src/__tests__/path/to_test.ts)
|
||||
|
||||
# Full PR checks from CONTRIBUTING.md
|
||||
pytest backend/tests/
|
||||
(cd frontend && npx vitest run)
|
||||
```
|
||||
|
||||
If a change touches live-data APIs, fetchers, or unattended deployments, also
|
||||
review `docs/production-hardening.md` and note the result in the PR template.
|
||||
Reference in New Issue
Block a user