Skip to content

fix(ci): P0 PR hygiene — block low-quality submissions#36

Merged
howardpen9 merged 2 commits into
mainfrom
chore/p0-pr-hygiene
Jul 16, 2026
Merged

fix(ci): P0 PR hygiene — block low-quality submissions#36
howardpen9 merged 2 commits into
mainfrom
chore/p0-pr-hygiene

Conversation

@howardpen9

Copy link
Copy Markdown
Owner

Summary

Implements the P0 contribution-quality gates:

  • scripts/validate.py: HTTPS-only URLs; reject utm_* / referral query params; duplicate name/URL; notes ≤360 chars + marketing ban phrases; status: active requires maintainer verify; operator_submitted cannot be active.
  • scripts/build_provider_tables.py: --check (full drift) and --check-pr (block hand-edited README tables; allow yaml-only PRs).
  • CI (pr-validate.yml): also runs on README paths; full history + PR_BASE_SHA for the PR check.
  • RouteScope (Add RouteScope — unified AI API gateway #25): moved into data/providers.yaml as unverified + operator_submitted, plain HTTPS (no tracking URL); READMEs regenerated.
  • Docs: CONTRIBUTING.md, PR template, data/schema.md.

Branch protection on main already requires the validate status check.

Test plan

  • python -m scripts.validate exits 0
  • python -m scripts.build_provider_tables --check exits 0
  • CI green on this PR
  • Confirm required check name matches validate under branch protection

Harden contribution quality before human review: expand validate.py with
HTTPS/no-tracking URLs, duplicate detection, notes limits, and status
honesty rules; add README table --check-pr so hand-edits fail CI; fix
RouteScope (#25) into providers.yaml without affiliate params.
Give coding agents a single decision tree and hard CI rules so submissions
stop hand-editing READMEs / pasting marketing copy. Maintainer close
template points resubmitters at the same playbook.
@howardpen9
howardpen9 merged commit 70dfbe5 into main Jul 16, 2026
2 checks passed
@howardpen9
howardpen9 deleted the chore/p0-pr-hygiene branch July 16, 2026 16:04
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