1.3 KiB
1.3 KiB
Contributing to ScreenJob
Development Setup
- Use Python 3.11+.
- Install dependencies:
pip install -r requirements.txt
- Create
.envwith required keys:OPENAI_API_KEYSCREENJOB_TOKEN
Branch and PR Workflow
- Create a feature branch from
main. - Keep changes focused and modular.
- Add or update tests for behavior changes.
- Run checks locally before opening a PR:
pytest -q
- Open a PR with:
- problem statement
- approach summary
- test evidence
Code Guidelines
- Favor small, single-purpose functions.
- Keep runtime and API behavior deterministic where possible.
- Preserve backward compatibility for external API contracts unless explicitly changing versioned behavior.
- Use clear error messages and structured outputs.
- Do not commit secrets, API keys, or runtime artifacts.
Testing Expectations
- Unit tests for new logic paths.
- API tests for request/response contract changes.
- Regression coverage for bug fixes.
Security and Safety
- Treat safety checks as part of core behavior.
- Do not bypass auth/token requirements in server code.
- Restrict file access to intended directories (for artifacts/endpoints).
Reporting Issues
Use issues for:
- reproducible bugs
- security concerns (with minimal sensitive detail)
- feature requests with concrete use cases