Skip to content

Latest commit

 

History

History
53 lines (42 loc) · 3.1 KB

PR_GA.md

File metadata and controls

53 lines (42 loc) · 3.1 KB

General Availability (GA) Requirements for a Pull Request

  1. Code Quality

    • The PR must pass all automated tests (unit, integration, end-to-end) without any failures.
    • The code must follow the project's coding standards and guidelines.
    • There must be no high or critical severity issues reported by static code analysis tools.
    • Code must be thoroughly reviewed and approved by at least one colleague.
  2. Documentation (if applicable)

    • Comprehensive documentation must be included or updated as part of the PR.
    • Changes should be reflected in the user guides, developer guides, and API documentation as appropriate.
    • Clear and concise inline comments must be present in the code where necessary.
  3. Testing

    • All new features or bug fixes must include corresponding unit tests.
    • Integration tests must be added or updated to cover the changes.
    • Performance and load testing results must be provided if the changes impact performance.
    • Regression testing must be performed to ensure existing functionality is not broken.
  4. Backward Compatibility

    • The PR must not introduce breaking changes unless absolutely necessary, and such changes must be well-documented.
    • If breaking changes are introduced, a clear migration path or instructions must be provided for users.
  5. Security

    • The code must be free of known security vulnerabilities.
    • Security impact assessments must be conducted for new features or significant changes.
    • Any new dependencies introduced must be vetted for security risks.
  6. Performance

    • The changes must not degrade the performance of the application, unless well justified, the impact is assessed, and approved by the stakeholders.
    • Performance benchmarks should be provided, demonstrating that the new code performs within acceptable limits.
  7. Feature Completeness

    • The features or bug fixes introduced by the PR must be complete and fully functional.
    • A feature under development must be gated by a feature flag of the "dev-preview" type, disabled by default.
    • A technological preview feature must be gated by a feature flag of the "tech-preview" type, disabled by default.
    • All acceptance criteria specified in the related issue or task must be met.
  8. User Interface (if applicable)

    • UI changes must be consistent with the design guidelines.
    • Usability tests must be conducted to ensure the changes enhance the user experience.
  9. Deployment and Configuration

    • Any required changes to deployment scripts or configuration files must be included in the PR.
    • The PR must ensure that the application can be deployed without manual intervention beyond what is documented.
  10. Legal and Compliance

    • The PR must adhere to all relevant legal and compliance requirements, such as licensing and data protection regulations.
    • Any third-party dependencies must comply with the project's licensing policies.
  11. Release Notes (if applicable)

    • A summary of changes must be provided for inclusion in the release notes.
    • Any known issues or limitations must be clearly documented.