Problem description
With release-plan.yaml deployed across all repositories (cf. #342), we need CI gates to enforce release management rules on PRs to main. Currently, validation is manual and inconsistent across repositories.
Part of #191 (Develop automation support in support of release management). See PR #338 for the full implementation plan.
Proposed solution
Implement the C1 validation workflow (Step 1 of the release workflow) for PRs on main:
-
Core CI Gates (validates all PRs to main)
- Formatting and schema correctness
- Version consistency:
info.version: "wip" pattern on main
- Server URL pattern enforcement per CAMARA rules
- APIs with
target_api_status: alpha+ must exist and pass validation
-
Mutual Exclusivity Enforcement
- Metadata-only PRs: May only modify
release-plan.yaml
- Implementation PRs: May modify all files except metadata
- Mixed PRs: Blocked and must be split
- CI validates metadata changes against target status
-
Status-aware Validation
- Validate adherence to CAMARA guidelines based on
target_release_type and target_api_status
- Raise non-blocking warnings for issues preventing promotion to next stage
- Block modifications to APIs targeting already-released public versions
-
PR Validation Workflow (.github/workflows/pr-validation-main.yml)
- Parallel validation jobs with summary aggregation
- Results posted as PR comments
- Performance target: < 3 minutes
Dependencies
Success criteria
- CI workflow runs successfully on test repository
- Mutual exclusivity rules enforced
- Performance target met (< 3 minutes)
Milestone
Target completion: End of January 2026 (Spring26 M3)
Problem description
With
release-plan.yamldeployed across all repositories (cf. #342), we need CI gates to enforce release management rules on PRs to main. Currently, validation is manual and inconsistent across repositories.Part of #191 (Develop automation support in support of release management). See PR #338 for the full implementation plan.
Proposed solution
Implement the C1 validation workflow (Step 1 of the release workflow) for PRs on main:
Core CI Gates (validates all PRs to main)
info.version: "wip"pattern on maintarget_api_status: alpha+must exist and pass validationMutual Exclusivity Enforcement
release-plan.yamlStatus-aware Validation
target_release_typeandtarget_api_statusPR Validation Workflow (
.github/workflows/pr-validation-main.yml)Dependencies
release-plan.yaml)Success criteria
Milestone
Target completion: End of January 2026 (Spring26 M3)