Thank you for your interest in contributing to the Space Telemetry Operations project! This document provides guidelines for contributing to this mission-critical space systems project.
This project adheres to professional standards expected in aerospace and defense environments. Please be respectful, collaborative, and security-conscious in all interactions.
- Never commit sensitive data, credentials, or classified information
- Follow NIST SP 800-53 security guidelines
- Report security vulnerabilities privately through GitHub Security Advisories
- Ensure all contributions maintain security posture
-
Fork and Clone
git clone https://github.com/yourusername/space-telemetry-ops.git cd space-telemetry-ops -
Set up Development Environment
# Copy environment template cp .env.example .env # Start development services docker compose -f infra/docker/docker-compose.yml up -d
-
Create Feature Branch
git checkout -b feature/your-feature-name
-
Make Changes
- Follow coding standards (see .vscode/settings.json)
- Add comprehensive tests
- Update documentation
- Ensure security compliance
-
Test Your Changes
# Run all tests pytest tests/ -v # Run security scan bash scripts/run_trivy.sh # Generate SBOM bash scripts/gen_sbom.sh
-
Commit and Push
git add . git commit -m "feat: add your feature description" git push origin feature/your-feature-name
-
Create Pull Request
- Use the provided PR template
- Include mission impact assessment
- Ensure all checks pass
- Use type hints for all functions
- Follow PEP 8 style guidelines
- Use docstrings (Google style)
- Handle all exceptions appropriately
- Include comprehensive error logging
- Use strict TypeScript mode
- Follow Prettier formatting
- Use ESLint for code quality
- Implement proper error boundaries
- Input validation on all user data
- Secure error handling (no information leakage)
- Proper authentication/authorization
- Audit logging for security events
- Unit tests for all business logic
- Integration tests for API endpoints
- Security tests for authentication/authorization
- Performance tests for critical paths
- Boundary condition testing
- Update README.md if needed
- Document API changes in OpenAPI specs
- Update architecture diagrams
- Include inline code comments for complex logic
- Ensure changes don't affect system availability
- Consider impact on real-time telemetry processing
- Test graceful failure modes
- Implement proper monitoring and alerting
- Automated CI/CD checks must pass
- Security scan must show no critical issues
- Code review by at least one maintainer
- Mission impact assessment if applicable
- Final approval by project lead
For questions about contributing, please:
- Check existing documentation
- Search existing issues
- Create a new issue with the question label
- For security concerns, use GitHub Security Advisories