Run only the smoke test for content-only PRs - #695
Merged
Conversation
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Staging Submissions PreviewThis PR's content is pushed to the staging submissions realm: https://realms-staging.stack.cards/submissions/ Changed folders:
Updated at 2026-08-05 05:45:41 UTC for commit |
Contributor
There was a problem hiding this comment.
Pull request overview
This PR optimizes CI runtime by conditionally running a reduced “smoke tier” of the live tests for PRs that only change catalog content (e.g., listings, taxonomy instances, screenshots), while keeping the full live-test suite for app-code changes and for pushes to main.
Changes:
- Add a “Decide test scope” step that classifies PRs as content-only vs full-suite based on changed file paths.
- When classified as content-only, set
LIVE_TEST_FILTERto run only the real-catalog-app smoke test plus the base-field-specs sanity check.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
The live-test job takes ~28 minutes, and ~17 of those are the mock-realm acceptance suites (browse / create / install / remix / use). Those suites exercise
catalog-app/**,commands/**, andtests/**against fixture-built realms — listing content cannot change their outcome, since catalog-app never imports listing folders. Yet most PRs to this repo are pure listing submissions.This adds a scope decision to the live-test job:
LIVE_TEST_FILTERto run just the real-catalog-app smoke test plus the base-field-specs sanity check. The smoke test renders the actual realm serving the PR's content, so it is the test that guards shipped content — and the realm must still fully index everything before it runs, so catastrophic content breakage still fails the job. Expected duration: ~10 minutes instead of ~28.catalog-app/,commands/,fields/,tests/,.github/, or at the repo root (conservative default for unclassified files), and every push tomain— so a misclassified path is caught right after merge at the latest.LIVE_TEST_FILTERis the QUnit filter passthrough added to the host'stestem-live.jsin cardstack/boxel#5693. Until that merges, the env var is ignored and the full suite runs — the two changes are safe to land in either order.Classifier checked against recent history: #683 (listing submission) and #688 (listing quality pass) → smoke tier; #690 and #694 (test/app changes) → full suite. This PR itself touches
.github/, so its own CI run exercises the full-suite branch of the decision.🤖 Generated with Claude Code