feat(e2e): onboard to unified PR Validation flow - #297
Conversation
Adds .github/workflows/e2e-pr-validation.yaml — single thin wrapper that listens on both pull_request (auto-trigger) and issue_comment (override), delegating to the central orchestrator in atlanhq/marketplace-releases. Replaces the previous split between: - e2e-tests-feature.yaml (comment trigger — deleted) - e2e-pr-init-check.yaml (legacy pending poster — deleted) Central config entry already added on @feat/e2e-pr-validation branch. Pinned to @feat/e2e-pr-validation during dogfood. Will be flipped to @main + the `with:` block dropped once central PR (atlanhq/marketplace-releases#2003) merges. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
|
👋 Mothership PR Reviewer is ready. Comment |
✅ Snyk checks have passed. No issues have been found so far.
💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse. |
Tests Summary
Overall: ✅ All passed — view run |
🛡️ Security Gate PassedTrivy: 1 | Total: 1 CRITICAL/HIGH | All allowlisted ✅ Run: 27544805864 | Mon, 15 Jun 2026 12:05:08 GMT |
There was a problem hiding this comment.
🔍 Mothership PR Reviewer — Approve
| Score | Decision | Risk | Blocking | Critical | High |
|---|---|---|---|---|---|
| 69/100 | ✅ Approve | 🔺 Elevated | 0 | 0 | 0 |
Elevated risk — critical/high findings or weak safeguards noted below. Worth a closer look before merging.
Adds a unified E2E PR validation workflow delegating to a central reusable workflow in atlanhq/marketplace-releases. Authorization controls for the comment trigger are sound: server-side author_association (MEMBER/OWNER/COLLABORATOR) cannot be spoofed by comment body. secrets: inherit follows established repo convention (7 other workflows). One LOW note: reusable workflow is pinned to the mutable feature branch @feat/e2e-pr-validation; the file header documents the flip to @main once marketplace-releases#2003 merges — ensure that follow-through happens.
🔎 Findings (1)
🔵 LOW Reusable workflow ref is a mutable feature branch, not a SHA or @main
- Pattern:
mutable-workflow-ref-no-sha-pin - Category: defensive
- Confidence: 90%
- Location:
.github/workflows/e2e-pr-validation.yaml:54 - Reachability: GitHub Actions runner; triggered on every PR push and authorized issue_comment event
- By-design check: Acknowledged in file header as intentional temporary dogfood state; resolution path documented (flip to @main after marketplace-releases#2003 merges)
- Verifier: kept
Evidence
uses: atlanhq/marketplace-releases/.github/workflows/e2e-pr-validation-reusable.yaml@feat/e2e-pr-validation
Suggested fix: Once atlanhq/marketplace-releases#2003 merges, flip the ref from @feat/e2e-pr-validation to @main and remove the with: config_ref block, as noted in the file header.
💪 Strengths (3)
- Comment-trigger guard uses server-side
author_association(MEMBER/OWNER/COLLABORATOR) — cannot be spoofed by comment body content - Concurrency group expression correctly handles both pull_request and issue_comment contexts, preventing stale-run collisions
github.actorbot exclusion prevents accidental re-trigger loops from github-actions[bot] and atlan-ci
📊 Score Breakdown
| Dimension | Score |
|---|---|
| Test quality | 90% |
| Defensive coding | 80% |
| Open findings (impact) | 95% |
📄 Review Metadata
commit: 7481bf1, mode: standard, reviewer version: rover-v2, generated: 2026-06-15T12:18:58.783318Z, dispatch: 89678f32-f36b-41c4-9c83-245e674529f4
|
Closing per direction: this connector is not in the initial POC scope for auto-trigger E2E. The repo will continue to use the comment-trigger flow ('/trigger-dev-tenant-tests' via e2e-tests-feature.yaml) unchanged. If the connector is later added to the auto-flow rollout, a fresh onboarding PR will be opened. |
Summary
Onboards
atlanhq/atlan-mysql-appto the centralized E2E PR Validation flow (atlanhq/marketplace-releases#2003).What this PR does
.github/workflows/e2e-pr-validation.yaml.github/workflows/e2e-tests-feature.yaml.github/workflows/e2e-pr-init-check.yamlFlow after merge
E2E Validationaggregate + sticky comment with Kryptonite report links/trigger-dev-tenant-tests tenant=E2E_<NAME> tags=@pw-...cancels auto run and narrows matrix to one tenant[skip-e2e]in commit ORe2e:skiplabelHeads-up
Branch protection may still require the legacy
Playwright E2E — Feature Branchcheck. If this PR is blocked after green checks, either:Playwright E2E — Feature Branchfrom required checks in branch protection (cleaner)🤖 Generated with Claude Code