Skip to content

chore: Test other app change (DO NOT MERGE. DELETE AFTER ENG-2152)#4265

Closed
mcstepp wants to merge 2 commits intomainfrom
test-other-app-change
Closed

chore: Test other app change (DO NOT MERGE. DELETE AFTER ENG-2152)#4265
mcstepp wants to merge 2 commits intomainfrom
test-other-app-change

Conversation

@mcstepp
Copy link
Collaborator

@mcstepp mcstepp commented Nov 6, 2025

What does this PR do?

Fixes # (issue)

If there is not an issue for this, please create one first. This is used to tracking purposes and also helps us understand why this PR exists

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • Chore (refactoring code, technical debt, workflow improvements)
  • Enhancement (small improvements)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • This change requires a documentation update

How should this be tested?

  • Test A
  • Test B

Checklist

Required

  • Filled out the "How to test" section in this PR
  • Read Contributing Guide
  • Self-reviewed my own code
  • Commented on my code in hard-to-understand areas
  • Ran pnpm build
  • Ran pnpm fmt
  • Ran make fmt on /go directory
  • Checked for warnings, there are none
  • Removed all console.logs
  • Merged the latest changes from main onto my branch with git pull origin main
  • My changes don't cause any responsiveness issues

Appreciated

  • If a UI change was made: Added a screen recording or screenshots to this PR
  • Updated the Unkey Docs if changes were necessary

@linear
Copy link

linear bot commented Nov 6, 2025

@changeset-bot
Copy link

changeset-bot bot commented Nov 6, 2025

⚠️ No Changeset found

Latest commit: fa42a74

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@vercel
Copy link

vercel bot commented Nov 6, 2025

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

Project Deployment Preview Comments Updated (UTC)
dashboard Ready Ready Preview Comment Nov 6, 2025 5:57pm
engineering Ready Ready Preview Comment Nov 6, 2025 5:57pm

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Nov 6, 2025

📝 Walkthrough

Walkthrough

This PR extends the CI/CD pipeline to detect changes in the Planetfall app and conditionally run its tests. It adds a Planetfall filter to the change-detection workflow (excluding Markdown and text files), creates a dedicated test workflow for Planetfall, integrates the test job into the PR workflow, and includes a test file to verify correct workflow triggering.

Changes

Cohort / File(s) Summary
CI/CD Workflow - Change Detection
.github/workflows/job_detect_changes.yaml
Added planetfall output to workflow_call outputs and build job outputs; added planetfall path filter watching apps/planetfall/**/!(*.md|*.txt) and apps/planetfall/!(*.md|*.txt)
CI/CD Workflow - Test Job
.github/workflows/job_test_planetfall.yaml
New workflow created to test Planetfall; checks out repository, runs setup-node action, and executes pnpm turbo build @unkey/planetfall`` on self-hosted runner with CI=1
CI/CD Workflow - PR Integration
.github/workflows/pr.yaml
Added test_planetfall job to PR workflow with conditional gating based on change detection output; mirrors pattern of existing app-specific test jobs
Test Verification
apps/docs/test-change.txt
Added single-line test message to verify Planetfall workflow does not run on non-Planetfall changes

Estimated code review effort

🎯 2 (Simple) | ⏱️ ~10 minutes

  • Changes follow established patterns already present in the codebase for other apps (logdrain, api, etc.)
  • Homogeneous structure across files (repetitive YAML configuration)
  • No complex logic or conditional branching to evaluate
  • Straightforward addition of filters and workflow job definitions

Possibly related issues

  • [APPS] [P1] Planetfall Workflow #4160: Directly modifies Planetfall GitHub workflows to add path filters for apps/planetfall and propagate planetfall change output for gating the test job.

Possibly related PRs

Suggested labels

Core Team, Papercut

Pre-merge checks and finishing touches

❌ Failed checks (1 warning)
Check name Status Explanation Resolution
Description check ⚠️ Warning The PR description is entirely a blank template with no actual content filled in. No issue number is specified, no testing instructions are provided, and no checklist items are completed. Fill in the PR description with: a summary of what this test PR verifies, the related issue (ENG-2152), specific testing steps, and mark the relevant checklist items as completed.
✅ Passed checks (2 passed)
Check name Status Explanation
Title check ✅ Passed The title indicates this is a test/temporary PR marked 'DO NOT MERGE. DELETE AFTER ENG-2152', which relates to the workflow changes for testing Planetfall detection across different apps.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
✨ Finishing touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Post copyable unit tests in a comment
  • Commit unit tests in branch test-other-app-change

📜 Recent review details

Configuration used: CodeRabbit UI

Review profile: CHILL

Plan: Pro

📥 Commits

Reviewing files that changed from the base of the PR and between 534661a and fa42a74.

📒 Files selected for processing (4)
  • .github/workflows/job_detect_changes.yaml (3 hunks)
  • .github/workflows/job_test_planetfall.yaml (1 hunks)
  • .github/workflows/pr.yaml (1 hunks)
  • apps/docs/test-change.txt (1 hunks)
🧰 Additional context used
🧠 Learnings (2)
📓 Common learnings
Learnt from: imeyer
Repo: unkeyed/unkey PR: 3755
File: .github/actions/setup-node/action.yaml:0-0
Timestamp: 2025-08-08T15:10:46.436Z
Learning: Repo: unkeyed/unkey — Preference: If imeyer comments “issue” on a PR thread, automatically open a thorough GitHub issue (Summary, Impact, Where, Observed vs Expected, Acceptance Criteria, Validation Plan, Out of Scope, References), include backlinks to the PR and comment, and assign to imeyer.
Learnt from: imeyer
Repo: unkeyed/unkey PR: 3755
File: .github/workflows/runbook-freshness-check.yaml:157-173
Timestamp: 2025-08-08T14:59:52.283Z
Learning: Repo unkeyed/unkey: When a CI/workflow fix is deferred, imeyer prefers a thorough GitHub issue be opened with sections (Summary, Impact, Where, Repro, Observed vs Expected, Acceptance Criteria, Validation Plan, Out of Scope, References) and assigned to imeyer, including backlinks to the originating PR and comment.
Learnt from: imeyer
Repo: unkeyed/unkey PR: 3755
File: .github/workflows/job_detect_changes.yaml:111-114
Timestamp: 2025-08-08T16:10:00.224Z
Learning: Repo: unkeyed/unkey — When imeyer writes “make me an issue” on a PR thread, automatically open a thorough GitHub issue (Summary, Impact, Where, Repro, Observed vs Expected, Acceptance Criteria, Validation Plan, Out of Scope, References), include backlinks to the PR and comment, and assign to imeyer.
📚 Learning: 2025-08-08T19:52:42.113Z
Learnt from: imeyer
Repo: unkeyed/unkey PR: 3765
File: .github/workflows/job_detect_changes.yaml:43-43
Timestamp: 2025-08-08T19:52:42.113Z
Learning: In the unkeyed/unkey repository, the workflows `.github/workflows/job_test_api_local.yaml` and `.github/workflows/job_test_go_api_local.yaml` should keep their Blacksmith self-hosted runners (blacksmith-4vcpu-ubuntu-2404 and blacksmith-8vcpu-ubuntu-2404 respectively) as these are performance-critical test jobs that require dedicated resources.

Applied to files:

  • .github/workflows/job_test_planetfall.yaml
🪛 actionlint (1.7.8)
.github/workflows/job_test_planetfall.yaml

9-9: label "depot-ubuntu-24.04-4" is unknown. available labels are "windows-latest", "windows-latest-8-cores", "windows-2025", "windows-2022", "windows-11-arm", "ubuntu-latest", "ubuntu-latest-4-cores", "ubuntu-latest-8-cores", "ubuntu-latest-16-cores", "ubuntu-24.04", "ubuntu-24.04-arm", "ubuntu-22.04", "ubuntu-22.04-arm", "macos-latest", "macos-latest-xl", "macos-latest-xlarge", "macos-latest-large", "macos-26-xlarge", "macos-26", "macos-15-intel", "macos-15-xlarge", "macos-15-large", "macos-15", "macos-14-xl", "macos-14-xlarge", "macos-14-large", "macos-14", "macos-13-xl", "macos-13-xlarge", "macos-13-large", "macos-13", "self-hosted", "x64", "arm", "arm64", "linux", "macos", "windows". if it is a custom label for self-hosted runner, set list of labels in actionlint.yaml config file

(runner-label)

⏰ Context from checks skipped due to timeout of 90000ms. You can increase the timeout in your CodeRabbit configuration to a maximum of 15 minutes (900000ms). (1)
  • GitHub Check: Docs
🔇 Additional comments (6)
apps/docs/test-change.txt (1)

1-1: Appropriate test artifact for workflow verification.

This test file correctly serves the PR objective to verify that documentation changes do not trigger Planetfall workflow runs. The content aligns with the path filters in job_detect_changes.yaml that exclude *.txt files from Planetfall detection.

.github/workflows/pr.yaml (1)

48-52: Job structure follows established patterns correctly.

The new test_planetfall job mirrors the structure of existing conditional test jobs (e.g., test_logdrain), with proper dependency declaration on detect_changes and correct conditional logic gating execution based on the planetfall output.

.github/workflows/job_test_planetfall.yaml (2)

10-19: Workflow structure and build steps are correct.

The workflow follows standard setup patterns: checkout → setup-node → build, with appropriate environment variable configuration for CI mode. The pnpm turbo build command correctly targets the @unkey/planetfall package.


9-9: Runner label is valid and consistently deployed across infrastructure.

The depot-ubuntu-24.04-4 label is not unknown—it appears in 26+ workflows throughout .github/workflows/, including performance-critical jobs like job_test_api_local.yaml, job_test_api_canary.yaml, and job_deploy_api_production.yaml. This is a standard, intentional infrastructure choice using Depot runners. No changes needed.

.github/workflows/job_detect_changes.yaml (2)

38-40: Workflow outputs correctly integrated.

The new planetfall output declaration and propagation follow the established pattern used by other change-detection outputs (api, dashboard, logdrain, etc.). The wiring from steps.changes.outputs.planetfall ensures the detection status flows to downstream PR workflow jobs.

Also applies to: 59-59


156-159: Change detection filters are consistent and correctly exclude documentation.

The planetfall filter paths mirror the dashboard and logdrain patterns, properly watching apps/planetfall/**/!(*.md|*.txt) to exclude markdown and text files. This correctly ensures that the documentation test file (apps/docs/test-change.txt) does not trigger Planetfall workflow runs, validating the PR's testing objective.


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.

@github-actions
Copy link
Contributor

github-actions bot commented Nov 6, 2025

Thank you for following the naming conventions for pull request titles! 🙏

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