Skip to content

ci(gates): protect main with quality gates#2

Merged
IvanLi-CN merged 1 commit into
mainfrom
th/sw2303-quality-gates
May 10, 2026
Merged

ci(gates): protect main with quality gates#2
IvanLi-CN merged 1 commit into
mainfrom
th/sw2303-quality-gates

Conversation

@IvanLi-CN
Copy link
Copy Markdown
Owner

@IvanLi-CN IvanLi-CN commented May 10, 2026

Summary

  • Add .github/quality-gates.json as the repo-local source of truth for protected main gates.
  • Stabilize the required GitHub Actions context as Build and add merge_group support.
  • Convert release automation away from direct main writes; version updates must land as signed PRs before publishing.
  • Document the quality-gate spec and maintainer-facing policy.

Verification

  • python3 -m json.tool .github/quality-gates.json
  • python3 /Users/ivan/.style-playbook-skills/skills/style-topic-quality-gates/scripts/check_quality_gates.py --repo-root . --declaration .github/quality-gates.json --allow-unchecked-branch-protection
  • python3 YAML parse for .github/workflows/*.yml
  • git diff --check
  • cargo fmt -- --check
  • cargo clippy --all-targets --all-features -- -D warnings
  • cargo test

References

  • Specs: docs/specs/b7k2m-repo-quality-gates/SPEC.md
  • Solutions: -
  • Project Docs: README.md, .github/quality-gates.json

Notes

This fixes the root cause that allowed PR #1 to merge: GitHub had no branch protection on main and no repository rulesets.

Signed-off-by: Ivan Li <ivanli2048@gmail.com>
@IvanLi-CN IvanLi-CN force-pushed the th/sw2303-quality-gates branch from 9f5c2f3 to 714a153 Compare May 10, 2026 13:32
@IvanLi-CN IvanLi-CN merged commit d55dc15 into main May 10, 2026
1 check passed
@IvanLi-CN IvanLi-CN deleted the th/sw2303-quality-gates branch May 10, 2026 13:36
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant