Skip to content

fix(ci): handle pr-base env name in e2e workflow dispatch#78

Merged
aspiers merged 1 commit intomainfrom
fix/e2e-pr-base-url
Apr 13, 2026
Merged

fix(ci): handle pr-base env name in e2e workflow dispatch#78
aspiers merged 1 commit intomainfrom
fix/e2e-pr-base-url

Conversation

@aspiers
Copy link
Copy Markdown
Contributor

@aspiers aspiers commented Apr 13, 2026

Summary

  • Normalise ePDS-pr-basepr-base in the e2e workflow's URL slug derivation, so manually dispatching with env_name="ePDS / ePDS-pr-base" works correctly
  • Add ePDS / pr-base to the workflow_dispatch input description
  • Document pr-base usage in AGENTS.md and e2e/README.md
  • Fix stale e2e-pr.yml filename references → e2e-tests.yml in both docs

Test plan

  • Manually dispatch e2e workflow with env_name="ePDS / pr-base" and verify it passes
  • Manually dispatch e2e workflow with env_name="ePDS / ePDS-pr-base" and verify normalisation produces correct URLs

🤖 Generated with Claude Code

Summary by CodeRabbit

Documentation

  • Updated end-to-end testing instructions with new workflow references.
  • Added support for the persistent pr-base environment format for test execution in addition to PR-specific formats.
  • Included examples for running tests in both PR and post-merge environments.

@vercel
Copy link
Copy Markdown

vercel bot commented Apr 13, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
epds-demo Ready Ready Preview, Comment Apr 13, 2026 11:35am

Request Review

@railway-app
Copy link
Copy Markdown

railway-app bot commented Apr 13, 2026

🚅 Deployed to the ePDS-pr-78 environment in ePDS

Service Status Web Updated (UTC)
@certified-app/demo ✅ Success (View Logs) Web Apr 13, 2026 at 11:36 am
@certified-app/demo untrusted ✅ Success (View Logs) Web Apr 13, 2026 at 11:36 am
@certified-app/pds-core ✅ Success (View Logs) Web Apr 13, 2026 at 11:36 am
@certified-app/auth-service ✅ Success (View Logs) Web Apr 13, 2026 at 11:35 am

@coderabbitai
Copy link
Copy Markdown

coderabbitai bot commented Apr 13, 2026

Warning

Rate limit exceeded

@aspiers has exceeded the limit for the number of commits that can be reviewed per hour. Please wait 55 minutes and 38 seconds before requesting another review.

Your organization is not enrolled in usage-based pricing. Contact your admin to enable usage-based pricing to continue reviews beyond the rate limit, or try again in 55 minutes and 38 seconds.

⌛ How to resolve this issue?

After the wait time has elapsed, a review can be triggered using the @coderabbitai review command as a PR comment. Alternatively, push new commits to this PR.

We recommend that you space out your commits to avoid hitting the rate limit.

🚦 How do rate limits work?

CodeRabbit enforces hourly rate limits for each developer per organization.

Our paid plans have higher rate limits than the trial, open-source and free plans. In all cases, we re-allow further reviews after a brief timeout.

Please see our FAQ for further information.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: ba6b19be-cce9-45f6-96d6-73a5b2bba4c1

📥 Commits

Reviewing files that changed from the base of the PR and between 7ca4e5e and d0ec8ed.

📒 Files selected for processing (3)
  • .github/workflows/e2e-tests.yml
  • AGENTS.md
  • e2e/README.md
📝 Walkthrough

Walkthrough

The PR updates the e2e GitHub Actions workflow to support a persistent Railway environment (pr-base) alongside existing PR-specific formats. This includes adding normalization logic to map ePDS-pr-base environment names to pr-base, updating workflow input descriptions, and revising documentation to reflect the new workflow file name and supported environment formats.

Changes

Cohort / File(s) Summary
GitHub Actions Workflow Configuration
.github/workflows/e2e-tests.yml
Added normalization logic to map ENV_NAME values ePDS-pr-base (case-insensitive) to pr-base before URL derivation. Updated workflow_dispatch input description to mention persistent Railway environment format ePDS / pr-base.
Documentation Updates
AGENTS.md, e2e/README.md
Updated GitHub CLI commands and instructions to reference new workflow file name (.github/workflows/e2e-tests.yml instead of e2e-pr.yml). Added example invocations for both PR and persistent pr-base environments, and expanded accepted env_name format documentation.

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

Possibly related PRs

Poem

🐰 A rabbit hops through workflows with glee,
Normalizing paths from pr-base so free,
Documentation blooms in the persistent light,
Environment names dance, oh what a sight! 🌱

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title directly and accurately summarizes the main change: handling the pr-base environment name in the e2e workflow dispatch process.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch fix/e2e-pr-base-url

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.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@aspiers aspiers force-pushed the fix/e2e-pr-base-url branch from 7ca4e5e to cae0abe Compare April 13, 2026 11:34
@railway-app railway-app bot temporarily deployed to ePDS / ePDS-pr-78 April 13, 2026 11:34 Destroyed
@coveralls-official
Copy link
Copy Markdown

coveralls-official bot commented Apr 13, 2026

Coverage Report for CI Build 24341195897

Coverage remained the same at 31.681%

Details

  • Coverage remained the same as the base build.
  • Patch coverage: No coverable lines changed in this PR.
  • No coverage regressions found.

Uncovered Changes

No uncovered changes found.

Coverage Regressions

No coverage regressions found.


Coverage Stats

Coverage Status
Relevant Lines: 1673
Covered Lines: 554
Line Coverage: 33.11%
Relevant Branches: 950
Covered Branches: 277
Branch Coverage: 29.16%
Branches in Coverage %: Yes
Coverage Strength: 2.79 hits per line

💛 - Coveralls

The persistent pr-base Railway environment is named "pr-base", not
"ePDS-pr-base". When manually dispatching e2e tests with
"ePDS / ePDS-pr-base" (by analogy with the PR format), the derived
URLs included an erroneous "epds-" prefix and hit 404s.

- Normalise "ePDS-pr-base" → "pr-base" in the slug derivation
- Add pr-base to the workflow_dispatch input description
- Document pr-base usage in AGENTS.md and e2e/README.md
- Fix stale e2e-pr.yml references → e2e-tests.yml

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@aspiers aspiers force-pushed the fix/e2e-pr-base-url branch from cae0abe to d0ec8ed Compare April 13, 2026 11:35
@railway-app railway-app bot temporarily deployed to ePDS / ePDS-pr-78 April 13, 2026 11:35 Destroyed
@sonarqubecloud
Copy link
Copy Markdown

Copy link
Copy Markdown

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🧹 Nitpick comments (2)
e2e/README.md (1)

150-156: Consider documenting the legacy-compatible ePDS / ePDS-pr-base input as accepted.

Line [155] documents ePDS / pr-base, but the workflow also accepts ePDS / ePDS-pr-base via normalization. Listing it here as a compatibility alias would reduce operator confusion during manual dispatches.

Suggested doc tweak
   Use the exact string you see there. Accepted formats:
   - `ePDS / ePDS-pr-<N>` — standard PR environment name.
   - `ePDS / pr-<hash>-<N>` — Railway's collision-avoidance fallback, seen
     after a close/reopen or force-push inside the env-cleanup window.
     See [Railway discussion](https://station.railway.com/questions/pr-environment-name-format-change-causin-9aaa904f).
   - `ePDS / pr-base` — the persistent post-merge backstop environment.
+  - `ePDS / ePDS-pr-base` — compatibility alias; normalized to `pr-base`.
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In `@e2e/README.md` around lines 150 - 156, Add the legacy-compatible alias `ePDS
/ ePDS-pr-base` to the accepted formats list (alongside the existing `ePDS /
pr-base`) so the README documents both canonical and normalized legacy names;
update the bullet list text where the formats are enumerated to include `ePDS /
ePDS-pr-base` and a short note that it is a compatibility alias.
.github/workflows/e2e-tests.yml (1)

520-525: Harden pr-base normalization to be fully case-insensitive.

The current condition handles "ePDS-pr-base" and "epds-pr-base" but leaves other mixed-case variants like "EPDS-pr-base" and "ePdS-pr-base" unnormalized. Lowercasing before comparison ensures all variants map deterministically to "pr-base".

Suggested hardening
-          if [[ "$ENV_NAME" == "ePDS-pr-base" || "$ENV_NAME" == "epds-pr-base" ]]; then
+          if [[ "${ENV_NAME,,}" == "epds-pr-base" ]]; then
             ENV_NAME="pr-base"
           fi
🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.github/workflows/e2e-tests.yml around lines 520 - 525, Normalize ENV_NAME
to lowercase before comparison so all mixed-case variants map to "pr-base":
create a lowercase copy (e.g. env_lc="${ENV_NAME,,}") and use that in the
condition (if [[ "$env_lc" == "epds-pr-base" ]]) then set ENV_NAME="pr-base";
reference the ENV_NAME variable and the new env_lc local when making this
change.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Nitpick comments:
In @.github/workflows/e2e-tests.yml:
- Around line 520-525: Normalize ENV_NAME to lowercase before comparison so all
mixed-case variants map to "pr-base": create a lowercase copy (e.g.
env_lc="${ENV_NAME,,}") and use that in the condition (if [[ "$env_lc" ==
"epds-pr-base" ]]) then set ENV_NAME="pr-base"; reference the ENV_NAME variable
and the new env_lc local when making this change.

In `@e2e/README.md`:
- Around line 150-156: Add the legacy-compatible alias `ePDS / ePDS-pr-base` to
the accepted formats list (alongside the existing `ePDS / pr-base`) so the
README documents both canonical and normalized legacy names; update the bullet
list text where the formats are enumerated to include `ePDS / ePDS-pr-base` and
a short note that it is a compatibility alias.

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: 446496b3-ffa3-4281-8ebb-ca20347094b2

📥 Commits

Reviewing files that changed from the base of the PR and between aad1c5e and 7ca4e5e.

📒 Files selected for processing (3)
  • .github/workflows/e2e-tests.yml
  • AGENTS.md
  • e2e/README.md

@aspiers aspiers merged commit b4add95 into main Apr 13, 2026
15 checks passed
@aspiers aspiers deleted the fix/e2e-pr-base-url branch April 13, 2026 11:41
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