Add agentic SDLC conformance check pipeline (ROSA-730) - #788
Conversation
|
Important Review skippedReview was skipped due to path filters ⛔ Files ignored due to path filters (2)
CodeRabbit blocks several paths by default. You can override this behavior by explicitly including those paths in the path filters. For example, including ⚙️ Run configurationConfiguration used: Repository: openshift/coderabbit/.coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Adds a Konflux pipeline template that validates ROSA-730 agentic SDLC standards on every PR to subscriber repos. The check is non-blocking (not in required_status_checks) but reports a visible red X when repos are non-conformant. The pipeline runs three tasks: 1. clone-repository: uses the Konflux catalog git-clone task 2. check-file-existence: verifies CLAUDE.md, .pre-commit-config.yaml, .codecov.yml, CONTRIBUTING.md, DEVELOPMENT.md, TESTING.md, .claude/settings.json, and golangci.yml 3. check-content-validation: verifies CLAUDE.md has required sections, codecov patch coverage >= 50%, pre-commit includes gitleaks + golangci-lint + file hygiene hooks, and docs are not stubs The template is generated during `make boilerplate-update` with the operator name substituted from config/config.go. Tested on openshift/deadmanssnitch-operator PR openshift#337. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
cd9d9d1 to
c5e09fc
Compare
|
/lgtm |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: clcollins, tnierman The full list of commands accepted by this bot can be found here. The pull request process is described here DetailsNeeds approval from an approver in each of these files:
Approvers can indicate their approval by writing |
Summary
make boilerplate-update— the operator name is substituted fromconfig/config.gorequired_status_checks)What it checks
File existence (parallel task)
CLAUDE.md,.pre-commit-config.yaml,.codecov.ymlCONTRIBUTING.md,DEVELOPMENT.md,TESTING.md.claude/settings.json(conditional onCLAUDE.mdexisting)golangci.yml(in boilerplate convention dir or repo root)Content validation (parallel task)
CLAUDE.mdhas required sections (build commands, architecture/overview).codecov.ymlpatch coverage target >= 50%.pre-commit-config.yamlincludes gitleaks, golangci-lint, file hygiene hooksFiles changed
boilerplate/openshift/golang-osd-operator/agentic-sdlc-check-pull-request.yaml.tmpl__OPERATOR_NAME__placeholdersboilerplate/openshift/golang-osd-operator/update.tekton/PipelineRun during boilerplate updateHow it works
make boilerplate-update, the template is rendered with the operator name and written to.tekton/<operator>-agentic-sdlc-check-pull-request.yamlgit-clone:0.1task for cloning, andquay.io/konflux-ci/git-cloneimage for the check stepsPrior art
Tested and validated on openshift/deadmanssnitch-operator#337 — clone succeeds, both check tasks correctly report failures for missing ROSA-730 artifacts, pipeline shows red X without blocking merge.
Test plan
required_status_checks, so/lgtm+/approvestill mergemake boilerplate-updateon a subscriber repo to verify template generationROSA-730
🤖 Generated with Claude Code