Commit Graph

2 Commits

Author SHA1 Message Date
Alexander Whitestone
07caf9eb8e [CI] Add repo-native validation for deploy, cron, and shell changes (#289)
Some checks failed
Architecture Lint / Linter Tests (pull_request) Successful in 28s
Smoke Test / smoke (pull_request) Failing after 27s
Architecture Lint / Lint Repository (pull_request) Failing after 16s
PR Checklist / pr-checklist (pull_request) Successful in 12m6s
**Fixes pre-existing syntax errors caught by the new validation:**
- bin/quality-gate.py: unterminated f-string literal (line 216)
- scripts/quality_gate_integration.py: unterminated string literal (lines 58, 144)
- scripts/cron_audit.py: unterminated string literal (line 176)
- scripts/token-tracker.py: global DB_PATH declared after use (line 177)

**New CI pipeline proof tests:**
- tests/test_ci_validation.py: 14 tests proving the pipeline catches broken
  shell (bash -n), Python (py_compile), JSON, YAML, and cron files before
  they reach main. Includes both positive (valid files pass) and negative
  (broken files fail) fixtures.

**Workflow enhancements (.gitea/workflows/validate-config.yaml):**
- Added explicit  syntax check for all shell scripts
- Added  schema validation (required keys: jobs, name, schedule)
- Added  job running the proof test suite
- Made shellcheck non-fatal () since bash -n is the baseline gate

**Documentation:**
- README.md: new 'CI Validation' section documenting what is checked,
  how to run tests locally, and linking to the workflow files

Closes #289
2026-04-22 02:06:50 -04:00
9a8d620163 feat: quality gate pipeline validation (#623)
Some checks failed
Architecture Lint / Linter Tests (pull_request) Successful in 13s
Smoke Test / smoke (pull_request) Failing after 11s
Validate Config / YAML Lint (pull_request) Failing after 14s
Validate Config / JSON Validate (pull_request) Successful in 14s
Validate Config / Python Syntax & Import Check (pull_request) Failing after 44s
Validate Config / Shell Script Lint (pull_request) Failing after 24s
Validate Config / Cron Syntax Check (pull_request) Successful in 5s
Validate Config / Deploy Script Dry Run (pull_request) Successful in 3s
Validate Config / Playbook Schema Validation (pull_request) Successful in 8s
PR Checklist / pr-checklist (pull_request) Failing after 3m54s
Architecture Lint / Lint Repository (pull_request) Has been cancelled
Validate Config / Python Test Suite (pull_request) Has been cancelled
Validates JSONL/JSON pipeline outputs for:
- Schema correctness
- Content quality (non-empty, not duplicated)
- Toxicity detection
- Dedup hash management with auto-cleanup

Usage:
  python3 bin/quality-gate.py validate data.jsonl
  python3 bin/quality-gate.py score data.jsonl
  python3 bin/quality-gate.py stats
  python3 bin/quality-gate.py cleanup

Closes #623
2026-04-17 05:53:33 +00:00