ci: gate current release validation

This commit is contained in:
Hermes Agent
2026-09-01 03:02:01 +00:00
parent e615d6c764
commit a5c78cbfe1
7 changed files with 58 additions and 1 deletions
+35
View File
@@ -0,0 +1,35 @@
#!/usr/bin/env python3
"""Validate that CI runs Claro's current release gates, not only legacy smoke tests."""
from pathlib import Path
import sys
ROOT = Path(__file__).resolve().parents[1]
WORKFLOW = ROOT / ".forgejo" / "workflows" / "ci.yml"
REQUIRED_COMMANDS = [
"./claro validate",
"python3 tools/validate_typecheck_diagnostics.py",
"python3 tools/validate_version_convention.py",
]
def main() -> int:
if not WORKFLOW.exists():
print(f"Missing CI workflow: {WORKFLOW.relative_to(ROOT)}")
return 1
text = WORKFLOW.read_text(encoding="utf-8")
missing = [command for command in REQUIRED_COMMANDS if command not in text]
if missing:
print("CI workflow is missing current release validation commands:")
for command in missing:
print(f" - {command}")
print("Add them to .forgejo/workflows/ci.yml so regressions are caught before release.")
return 1
print("CI workflow validation complete")
return 0
if __name__ == "__main__":
sys.exit(main())