Skip to content

Run Minitest in 4 parallel processes in CI - #12114

Merged
nbudin merged 1 commit into
mainfrom
ci-parallel-minitest
Oct 7, 2026
Merged

nbudin merged 1 commit into
mainfrom
ci-parallel-minitest

Conversation

@nbudin

@nbudin nbudin commented Oct 6, 2026

Copy link
Copy Markdown
Contributor

What

Runs Minitest in 4 parallel processes in CI. Minitest was the slowest job (about 290s of tests, on one process of a 4-core runner); with this the suite takes ~42-77s locally on 4 workers instead of 269s serial, with the same result (1893 tests, 4101 assertions, 0 failures).

  • test/test_helper.rb: PARALLEL_WORKERS=N (N > 1) turns on Rails' process parallelization. It's opt-in, so a plain rails test is unchanged. Each worker writes its own Cobertura report to coverage/worker-N/coverage.xml.
  • .github/workflows/ci.yml: the Minitest job sets PARALLEL_WORKERS: 4, and the existing coverage report job merges minitest-coverage/coverage.xml plus minitest-coverage/worker-*/coverage.xml with scripts/merge_coverage.rb (no new merge step).
  • agent-docs/testing.md: how to run in parallel locally, including the macOS workaround (the pg gem segfaults on fork unless PGGSSENCMODE=disable OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES is set; Linux CI isn't affected).

Coverage is unchanged

I checked that nothing is lost: running the same code serially and in parallel, then merging with scripts/merge_coverage.rb, gives 12,993 of 16,179 covered lines in both, with 0 lines lost or gained (compared per file and line). Two details worth knowing:

  • SimpleCov's own exit-time merge isn't reliable with forked workers (it can run before the workers finish), so each worker writes its own report instead.
  • The main process's coverage.xml has to be included in the merge: class bodies, field definitions and other things that run when the app loads are only counted there (e.g. 218 of the 228 covered lines of convention_type.rb). Merging only the workers' reports undercounts by about a third.

To check on this PR

This is the first time it runs on Linux CI. I'd look at the Minitest job's time, that its tests pass, and that the "Test coverage report" job's merged numbers match recent runs on main (about 65.5% overall).

🤖 Generated with Claude Code

https://claude.ai/code/session_013mDr1nhgyzST2iPzCzMcCd

Minitest was the slowest CI job (about 290s of tests on one process of a
4-core runner). PARALLEL_WORKERS=4 runs it across all four cores: locally
the same 1893 tests (same assertions, same result) take 42-77s instead of
269s.

Each worker writes its own Cobertura report (coverage/worker-N), rather
than merging with the others as the run exits, which races the workers
finishing. The main process's coverage.xml holds what loading the app
covered, so the existing coverage report job merges it and the workers'
reports with scripts/merge_coverage.rb. Merged that way, the coverage is
line-for-line identical to a single-process run (12,993 of 16,179 lines
in both, none lost or gained across all files).

Parallel runs are opt-in (PARALLEL_WORKERS), so a plain `rails test` is
unchanged; the macOS fork crash workaround is in agent-docs/testing.md.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013mDr1nhgyzST2iPzCzMcCd
@nbudin nbudin added tech debt github_actions Pull requests that update GitHub Actions code labels Oct 6, 2026
@github-actions

github-actions Bot commented Oct 6, 2026

Copy link
Copy Markdown
Contributor

Code Coverage Report: Only Changed Files listed

Package Base Coverage New Coverage Difference
app/controllers/application_controller.rb 🟢 75.21% 🟢 80.34% 🟢 5.13%
app/controllers/calendars_controller.rb 🔴 0% 🟢 100% 🟢 100%
app/controllers/concerns/redirect_with_authentication.rb 🔴 0% 🔴 42.86% 🟢 42.86%
app/controllers/csv_exports_controller.rb 🔴 47.46% 🟢 100% 🟢 52.54%
app/controllers/graphql_controller.rb 🟢 86.05% 🟢 87.21% 🟢 1.16%
app/controllers/oauth_sessions_controller.rb 🔴 44% 🟢 100% 🟢 56%
app/controllers/registrations_controller.rb 🔴 0% 🟢 85% 🟢 85%
app/controllers/sitemaps_controller.rb 🔴 0% 🟢 100% 🟢 100%
app/controllers/sns_notifications_controller.rb 🔴 0% 🟢 96.67% 🟢 96.67%
app/controllers/stripe_account_controller.rb 🔴 0% 🟢 100% 🟢 100%
app/controllers/stripe_webhooks_controller.rb 🔴 0% 🟢 100% 🟢 100%
app/graphql/concerns/context_accessors.rb 🟢 90% 🟢 95% 🟢 5%
app/graphql/concerns/order_entry_inputs.rb 🔴 22.22% 🟢 88.89% 🟢 66.67%
app/graphql/concerns/scheduled_value_inputs.rb 🔴 28.57% 🟢 100% 🟢 71.43%
app/graphql/intercode_schema.rb 🟠 61.84% 🟢 85.53% 🟢 23.69%
app/graphql/money_helper.rb 🟠 60% 🟢 100% 🟢 40%
app/graphql/mutations/base_mutation.rb 🟢 81.03% 🟢 89.66% 🟢 8.63%
app/graphql/mutations/create_order.rb 🔴 35.71% 🟢 100% 🟢 64.29%
app/graphql/mutations/create_signup_ranked_choice.rb 🟠 62.5% 🟢 91.67% 🟢 29.17%
app/graphql/mutations/create_signup_request.rb 🟠 57.14% 🟢 90.48% 🟢 33.34%
app/graphql/mutations/create_user_con_profile.rb 🔴 32% 🟢 100% 🟢 68%
app/graphql/mutations/create_user_signup.rb 🟠 51.72% 🟢 93.1% 🟢 41.38%
app/graphql/mutations/merge_users.rb 🟠 50% 🟢 100% 🟢 50%
app/graphql/mutations/submit_order.rb 🟠 52.63% 🟢 100% 🟢 47.37%
app/graphql/mutations/update_convention.rb 🔴 30.43% 🟢 100% 🟢 69.57%
app/graphql/mutations/withdraw_user_signup.rb 🟠 60% 🟢 100% 🟢 40%
app/graphql/sources/signup_choice.rb 🔴 0% 🟢 100% 🟢 100%
app/graphql/sources/simulated_skip_reason.rb 🔴 0% 🟢 100% 🟢 100%
app/graphql/sources/waitlist_position.rb 🔴 0% 🟢 100% 🟢 100%
app/graphql/types/date_type.rb 🟠 71.43% 🟢 100% 🟢 28.57%
app/graphql/types/json.rb 🟢 77.78% 🟢 88.89% 🟢 11.11%
app/javascript/AppRoot.tsx 🔴 6.12% 🔴 8.16% 🟢 2.04%
app/javascript/Authentication/AccountFormContent.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/Authentication/DeviseForgotPasswordPage.tsx 🔴 0% 🟢 85.19% 🟢 85.19%
app/javascript/Authentication/DeviseSignInPage.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/Authentication/DeviseSignUpPage.tsx 🔴 0% 🟢 95.92% 🟢 95.92%
app/javascript/Authentication/EditUser.tsx 🔴 0% 🟢 86.05% 🟢 86.05%
app/javascript/Authentication/OAuthCallback.tsx 🔴 0% 🟢 96.77% 🟢 96.77%
app/javascript/Authentication/PasswordConfirmationInput.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/Authentication/PasswordInputWithStrengthCheck.tsx 🔴 0% 🟢 82.35% 🟢 82.35%
app/javascript/Authentication/ResetPassword.tsx 🔴 0% 🟢 96% 🟢 96%
app/javascript/Authentication/SignInButton.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/Authentication/SignOutButton.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/Authentication/SignUpButton.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/Authentication/UserFormFields.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/Authentication/authenticationManager.ts 🔴 16.33% 🟢 100% 🟢 83.67%
app/javascript/Authentication/openid.ts 🔴 33.33% 🟢 100% 🟢 66.67%
app/javascript/Authentication/queries.generated.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/Authentication/useAfterSessionChange.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/Authentication/useAuthorizationRequired.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/Authentication/useSignInContext.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/AuthenticityTokensContext.tsx 🔴 33.33% 🟢 100% 🟢 66.67%
app/javascript/BuiltInFormControls/AdminNotes.tsx 🔴 0% 🟢 87.5% 🟢 87.5%
app/javascript/BuiltInFormControls/EmailAliasInput.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/BuiltInFormControls/EventCategorySelect.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/BuiltInFormControls/GraphQLAsyncSelect.tsx 🔴 0% 🔴 37.5% 🟢 37.5%
app/javascript/BuiltInFormControls/InPlaceEditor.tsx 🟢 91.67% 🟢 93.75% 🟢 2.08%
app/javascript/BuiltInFormControls/MarkdownInput.tsx 🔴 0% 🟠 66.67% 🟢 66.67%
app/javascript/BuiltInFormControls/MaximumEventProvidedTicketsOverrideEditor.tsx 🔴 0% 🔴 2.63% 🟢 2.63%
app/javascript/BuiltInFormControls/RoomSelect.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/BuiltInFormControls/ScheduledValueEditor.tsx 🔴 29.51% 🔴 42.62% 🟢 13.11%
app/javascript/BuiltInFormControls/UserConProfileSelect.tsx 🔴 0% 🔴 42.86% 🟢 42.86%
app/javascript/BuiltInFormControls/selectDefaultQueries.generated.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/BuiltInForms/FileUploadForm.tsx 🔴 0% 🟢 80% 🟢 80%
app/javascript/BuiltInForms/RunFormFields.tsx 🔴 0% 🟢 89.19% 🟢 89.19%
app/javascript/CmsAdmin/CmsFilesAdmin/FileInputWithPreview.tsx 🔴 45.45% 🟢 86.36% 🟢 40.91%
app/javascript/CmsAdmin/CmsFilesAdmin/FilePreview.tsx 🔴 0% 🔴 44.44% 🟢 44.44%
app/javascript/CmsAdmin/CmsPartialsAdmin/mutations.generated.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventAdmin/$id.ts 🔴 0% 🟢 94.74% 🟢 94.74%
app/javascript/EventAdmin/AdminNotesRoute.ts 🔴 0% 🟢 85.71% 🟢 85.71%
app/javascript/EventAdmin/CategorySpecificEventAdmin.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventAdmin/CreateMultipleRunsRoute.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventAdmin/DroppedEventAdmin.tsx 🔴 0% 🟢 95.24% 🟢 95.24%
app/javascript/EventAdmin/EditRun.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventAdmin/EditRunModal.tsx 🔴 0% 🟢 86.67% 🟢 86.67%
app/javascript/EventAdmin/EventAdminEditEvent.tsx 🔴 0% 🟢 91.18% 🟢 91.18%
app/javascript/EventAdmin/EventAdminRow.tsx 🔴 0% 🟢 96.3% 🟢 96.3%
app/javascript/EventAdmin/EventAdminRunsTable.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventAdmin/InputBuilders.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventAdmin/NewEvent.tsx 🔴 0% 🟢 93.1% 🟢 93.1%
app/javascript/EventAdmin/NewRun.tsx 🔴 0% 🟠 54.84% 🟢 54.84%
app/javascript/EventAdmin/ProspectiveRunSchedule.tsx 🔴 0% 🟢 86.44% 🟢 86.44%
app/javascript/EventAdmin/RecurringEventAdmin.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventAdmin/RecurringEventSection.tsx 🔴 0% 🟢 95.83% 🟢 95.83%
app/javascript/EventAdmin/RestoreEventRoute.ts 🔴 0% 🟢 83.33% 🟢 83.33%
app/javascript/EventAdmin/ScheduleMultipleRunsModal.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventAdmin/SingleRunEventAdminList.tsx 🔴 0% 🟢 88.89% 🟢 88.89%
app/javascript/EventAdmin/SingleRunRoute.ts 🔴 0% 🟢 91.67% 🟢 91.67%
app/javascript/EventAdmin/buildRunInputFromFormData.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventAdmin/create.ts 🔴 0% 🟢 90% 🟢 90%
app/javascript/EventAdmin/drop.ts 🔴 0% 🟢 87.5% 🟢 87.5%
app/javascript/EventAdmin/getFormForEventCategory.ts 🔴 0% 🟢 90% 🟢 90%
app/javascript/EventAdmin/loaders.ts 🔴 20% 🔴 40% 🟢 20%
app/javascript/EventAdmin/mutations.generated.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventAdmin/useEventAdminCategory.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventAdmin/useEventCategorySelection.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventAdmin/useEventFormWithCategorySelection.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventProposals/$id/admin_notes.ts 🔴 0% 🟢 87.5% 🟢 87.5%
app/javascript/EventProposals/$id/route.ts 🔴 0% 🟢 88.89% 🟢 88.89%
app/javascript/EventProposals/$id/transition.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventProposals/CreateEventProposalModal.tsx 🔴 0% 🟢 90.24% 🟢 90.24%
app/javascript/EventProposals/EditEventProposal.tsx 🔴 0% 🟢 95.24% 🟢 95.24%
app/javascript/EventProposals/EventProposalForm.tsx 🔴 0% 🟢 94.74% 🟢 94.74%
app/javascript/EventProposals/EventProposalStatusUpdater.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventProposals/ProposeEventButton.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventProposals/mutations.generated.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventProposals/route.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventRatings/RatingsHelp.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/EventCatalog/EventCatalogNavTabs.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/EventCatalog/EventList/EventCard.tsx 🔴 0% 🟢 98.18% 🟢 98.18%
app/javascript/EventsApp/EventCatalog/EventList/EventListCategoryDropdown.tsx 🔴 0% 🟢 88% 🟢 88%
app/javascript/EventsApp/EventCatalog/EventList/EventListEvents.tsx 🔴 0% 🟢 92.86% 🟢 92.86%
app/javascript/EventsApp/EventCatalog/EventList/EventListFilterableFormItemDropdown.tsx 🔴 0% 🔴 27.27% 🟢 27.27%
app/javascript/EventsApp/EventCatalog/EventList/EventListMyRatingSelector.tsx 🔴 0% 🟢 80% 🟢 80%
app/javascript/EventsApp/EventCatalog/EventList/EventListSortDropdown.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/EventCatalog/EventList/getSortedRuns.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/EventCatalog/EventList/index.tsx 🔴 0% 🟢 82.14% 🟢 82.14%
app/javascript/EventsApp/EventPage/CreateModeratedSignupModal.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/EventPage/RunCapacityGraphBucket.tsx 🟠 66.67% 🟠 72.22% 🟢 5.55%
app/javascript/EventsApp/EventPage/WithdrawMySignupModal.tsx 🔴 14.29% 🟢 97.44% 🟢 83.15%
app/javascript/EventsApp/EventPage/buildSignupOptions.ts 🟢 88.89% 🟢 98.41% 🟢 9.52%
app/javascript/EventsApp/EventPage/sortBuckets.ts 🟠 64.29% 🟢 92.86% 🟢 28.57%
app/javascript/EventsApp/EventPage/useSectionizedFormItems.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/MySignupQueue/NextRoundInfoBox.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/MySignupQueue/RankedChoiceUserSettings.tsx 🔴 0% 🟢 95.77% 🟢 95.77%
app/javascript/EventsApp/MySignupQueue/SignupQueueMessages.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/MySignupQueue/UserSignupQueue.tsx 🔴 0% 🟢 80% 🟢 80%
app/javascript/EventsApp/MySignupQueue/UserSignupQueueItem.tsx 🟠 51.16% 🟢 90.7% 🟢 39.54%
app/javascript/EventsApp/MySignupQueue/index.tsx 🔴 0% 🟢 92.31% 🟢 92.31%
app/javascript/EventsApp/MySignupQueue/queries.generated.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/RunList/RunListEventRun.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/RunList/index.tsx 🔴 0% 🟢 81.91% 🟢 81.91%
app/javascript/EventsApp/ScheduleApp.tsx 🔴 0% 🟢 75.9% 🟢 75.9%
app/javascript/EventsApp/ScheduleGrid/AvailabilityBar.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/ScheduleGrid/AvailabilityUtils.tsx 🔴 48% 🟢 76% 🟢 28%
app/javascript/EventsApp/ScheduleGrid/CategoryLegend.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/ScheduleGrid/ConventionDayTabContainer.tsx 🔴 0% 🟢 88.89% 🟢 88.89%
app/javascript/EventsApp/ScheduleGrid/FakeEventRun.tsx 🔴 0% 🟢 88.89% 🟢 88.89%
app/javascript/EventsApp/ScheduleGrid/FullnessLegend.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/ScheduleGrid/LayoutConstants.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/ScheduleGrid/PersonalScheduleFiltersBar.tsx 🔴 0% 🟠 65.85% 🟢 65.85%
app/javascript/EventsApp/ScheduleGrid/RefreshButton.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/ScheduleGrid/RunDetails.tsx 🔴 0% 🟠 73.08% 🟢 73.08%
app/javascript/EventsApp/ScheduleGrid/RunDisplay.tsx 🔴 0% 🟢 95.24% 🟢 95.24%
app/javascript/EventsApp/ScheduleGrid/Schedule.ts 🔴 0% 🟢 95.28% 🟢 95.28%
app/javascript/EventsApp/ScheduleGrid/ScheduleBlock.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/ScheduleGrid/ScheduleGrid.tsx 🔴 0% 🟢 88.89% 🟢 88.89%
app/javascript/EventsApp/ScheduleGrid/ScheduleGridConfig.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/ScheduleGrid/ScheduleGridContext.tsx 🔴 0% 🟢 97.14% 🟢 97.14%
app/javascript/EventsApp/ScheduleGrid/ScheduleGridEventRun.tsx 🔴 0% 🟢 88.89% 🟢 88.89%
app/javascript/EventsApp/ScheduleGrid/ScheduleGridExtendedCounts.tsx 🔴 0% 🟢 93.55% 🟢 93.55%
app/javascript/EventsApp/ScheduleGrid/ScheduleGridHeaderBlock.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/ScheduleGrid/ScheduleGridHour.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/ScheduleGrid/ScheduleGridLayout.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/ScheduleGrid/ScheduleGridRowHeader.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/ScheduleGrid/ScheduleLayout/ColumnReservation.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/ScheduleGrid/ScheduleLayout/ColumnReservationSet.ts 🔴 0% 🟢 92.06% 🟢 92.06%
app/javascript/EventsApp/ScheduleGrid/ScheduleLayout/ScheduleLayoutBlock.ts 🔴 0% 🟢 84.95% 🟢 84.95%
app/javascript/EventsApp/ScheduleGrid/SignupStatusBadge.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/ScheduleGrid/StylingUtils.ts 🔴 0% 🟢 93.94% 🟢 93.94%
app/javascript/EventsApp/ScheduleGrid/getCapacityThresholds.ts 🔴 0% 🟠 66.67% 🟢 66.67%
app/javascript/EventsApp/ScheduleGrid/getFullnessClass.ts 🔴 0% 🟢 93.33% 🟢 93.33%
app/javascript/EventsApp/ScheduleGrid/index.tsx 🔴 0% 🟢 93.75% 🟢 93.75%
app/javascript/EventsApp/ScheduleGrid/queries.generated.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/ScheduleGrid/useLayoutForTimespan.ts 🔴 0% 🟢 91.67% 🟢 91.67%
app/javascript/EventsApp/TeamMemberAdmin/ProvidableTicketTypeSelection.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/TeamMemberAdmin/ProvideTicketUtils.ts 🔴 0% 🟢 90.91% 🟢 90.91%
app/javascript/EventsApp/TeamMemberAdmin/TicketingStatusDescription.tsx 🔴 0% 🟠 71.43% 🟢 71.43%
app/javascript/EventsApp/conventionDayUrls.ts 🔴 0% 🟢 97.22% 🟢 97.22%
app/javascript/EventsApp/queries.generated.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/runTimeFormatting.ts 🟢 82.76% 🟢 86.21% 🟢 3.45%
app/javascript/EventsApp/teamMembersForDisplay.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/EventsApp/useFilterableFormItems.ts 🔴 0% 🟢 92% 🟢 92%
app/javascript/EventsApp/useMergeCategoriesIntoEvents.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/FormAdmin/$id/edit/section/$sectionId/NewFormItemModal.tsx 🔴 0% 🟢 88.52% 🟢 88.52%
app/javascript/FormAdmin/FormEditorContexts.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/FormAdmin/FormItemUtils.ts 🔴 24% 🟢 95% 🟢 71%
app/javascript/FormAdmin/ItemEditors/FormItemIdentifierInput.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/FormAdmin/buildNewFormItem.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/FormPresenter/ItemDisplays/FormItemDisplay.tsx 🔴 0% 🔴 21.43% 🟢 21.43%
app/javascript/FormPresenter/ItemDisplays/FreeTextItemDisplay.tsx 🔴 0% 🔴 23.08% 🟢 23.08%
app/javascript/FormPresenter/ItemFilters/FormItemFilter.tsx 🔴 0% 🔴 23.08% 🟢 23.08%
app/javascript/FormPresenter/ItemFilters/MultipleChoiceItemFilter.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/FormPresenter/ItemInputs/AgeRestrictionsInput.tsx 🔴 0% 🟢 85% 🟢 85%
app/javascript/FormPresenter/ItemInputs/CaptionLegend.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/FormPresenter/ItemInputs/DateItemInput.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/FormPresenter/ItemInputs/EventEmailInput.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/FormPresenter/ItemInputs/FormItemInput.tsx 🔴 44.44% 🟢 88.89% 🟢 44.45%
app/javascript/FormPresenter/ItemInputs/FreeTextItemInput.tsx 🟠 67.86% 🟢 92.86% 🟢 25%
app/javascript/FormPresenter/ItemInputs/MultipleChoiceItemInput.tsx 🔴 1.37% 🟢 98.61% 🟢 97.24%
app/javascript/FormPresenter/ItemInputs/PermissionDisclosures.tsx 🔴 10.71% 🔴 42.86% 🟢 32.15%
app/javascript/FormPresenter/ItemInputs/RegistrationPolicyItemInput.tsx 🔴 7.14% 🟠 71.43% 🟢 64.29%
app/javascript/FormPresenter/ItemInputs/RequiredIndicator.tsx 🟠 66.67% 🟢 100% 🟢 33.33%
app/javascript/FormPresenter/ItemInputs/TimeblockPreferenceCell.tsx 🔴 0% 🟢 92.31% 🟢 92.31%
app/javascript/FormPresenter/ItemInputs/TimeblockPreferenceItemInput.tsx 🔴 0% 🟢 95.45% 🟢 95.45%
app/javascript/FormPresenter/ItemInputs/TimespanItemInput.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/FormPresenter/ItemInteractionTracker.tsx 🟢 90.91% 🟢 100% 🟢 9.09%
app/javascript/FormPresenter/Layouts/FormBody.tsx 🟠 57.58% 🟢 81.82% 🟢 24.24%
app/javascript/FormPresenter/Layouts/FormFooter.tsx 🔴 0% 🟠 67.74% 🟢 67.74%
app/javascript/FormPresenter/Layouts/FormHeader.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/FormPresenter/Layouts/FormPresenter.tsx 🔴 0% 🟢 88.89% 🟢 88.89%
app/javascript/FormPresenter/Layouts/FormProgress.tsx 🔴 0% 🟢 81.82% 🟢 81.82%
app/javascript/FormPresenter/Layouts/FormSection.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/FormPresenter/SectionTraversalContext.tsx 🔴 0% 🟠 66.67% 🟢 66.67%
app/javascript/FormPresenter/StaticTextItem.tsx 🔴 0% 🟠 66.67% 🟢 66.67%
app/javascript/FormPresenter/TimeblockTypes.ts 🔴 0% 🟢 83.33% 🟢 83.33%
app/javascript/FormPresenter/TimeblockUtils.ts 🔴 0% 🟠 71.74% 🟢 71.74%
app/javascript/FormPresenter/TimespanItemUtils.ts 🔴 8.33% 🔴 41.67% 🟢 33.34%
app/javascript/FormPresenter/index.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/FormPresenter/useAutocommitFormResponseOnChange.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/GeneratedIdUtils.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/Gravatar.tsx 🟠 66.67% 🟢 100% 🟢 33.33%
app/javascript/Models/Form.ts 🔴 45.45% 🟠 54.55% 🟢 9.1%
app/javascript/Models/FormItem.ts 🔴 16% 🔴 18% 🟢 2%
app/javascript/Models/deserializeFormResponse.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/PlainTextDisplay.tsx 🔴 0% 🟠 71.43% 🟢 71.43%
app/javascript/RegistrationPolicy/PreventNoPreferenceSignupRow.tsx 🟠 75% 🟢 91.67% 🟢 16.67%
app/javascript/RegistrationPolicy/RegistrationPolicy.ts 🟠 72.73% 🟢 81.82% 🟢 9.09%
app/javascript/RegistrationPolicy/RegistrationPolicyBucket.ts 🟠 66.67% 🟢 93.33% 🟢 26.66%
app/javascript/RenderingUtils.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/ScheduledValueUtils.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/SignupRoundUtils.ts 🔴 13.33% 🟢 86.67% 🟢 73.34%
app/javascript/SignupRoundsAdmin/MaximumEventSignupsPreview.tsx 🔴 0% 🟢 82.05% 🟢 82.05%
app/javascript/SignupRoundsAdmin/RankedChoiceSignupDecisionsPage.tsx 🔴 9.88% 🟢 95.18% 🟢 85.3%
app/javascript/SignupRoundsAdmin/describeSignupRound.tsx 🔴 0% 🟠 66.67% 🟢 66.67%
app/javascript/SortableUtils.tsx 🟠 50% 🟢 100% 🟢 50%
app/javascript/Store/ApplyCouponControl.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/Cart/CartContents.tsx 🔴 0% 🟢 93.75% 🟢 93.75%
app/javascript/Store/Cart/coupon_applications/$id.ts 🔴 0% 🟠 75% 🟢 75%
app/javascript/Store/Cart/coupon_applications/route.ts 🔴 0% 🟢 91.67% 🟢 91.67%
app/javascript/Store/Cart/index.tsx 🔴 0% 🟢 95.56% 🟢 95.56%
app/javascript/Store/Cart/order_entries/$id.ts 🔴 0% 🟢 92.86% 🟢 92.86%
app/javascript/Store/CouponAdmin/CouponForm.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/CouponAdmin/EditCouponModal.tsx 🔴 0% 🟢 97.22% 🟢 97.22%
app/javascript/Store/CouponAdmin/NewCouponModal.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/CouponAdmin/buildCouponInput.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/CouponAdmin/mutations.generated.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/CouponAdmin/queries.generated.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/CurrencySelect.tsx 🟢 90% 🟢 100% 🟢 10%
app/javascript/Store/InPlaceMoneyEditor.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/MoneyInput.tsx 🔴 3.45% 🟢 100% 🟢 96.55%
app/javascript/Store/OrderAdmin/$id.tsx 🔴 0% 🟠 58.82% 🟢 58.82%
app/javascript/Store/OrderAdmin/AdminOrderEntriesTable.tsx 🔴 0% 🟢 80% 🟢 80%
app/javascript/Store/OrderAdmin/AdminOrderForm.tsx 🔴 0% 🟢 92.86% 🟢 92.86%
app/javascript/Store/OrderAdmin/EditOrderModal.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/OrderAdmin/NewOrderModal.tsx 🔴 0% 🟢 81.58% 🟢 81.58%
app/javascript/Store/OrderAdmin/cancel.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/OrderAdmin/coupon_applications/$couponApplicationId.ts 🔴 0% 🟢 88.89% 🟢 88.89%
app/javascript/Store/OrderAdmin/coupon_applications/route.ts 🔴 0% 🟢 91.67% 🟢 91.67%
app/javascript/Store/OrderAdmin/index.tsx 🔴 0% 🔴 35.9% 🟢 35.9%
app/javascript/Store/OrderAdmin/mark_paid.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/OrderAdmin/order_entries/$orderEntryId.ts 🔴 0% 🟢 92.86% 🟢 92.86%
app/javascript/Store/OrderAdmin/order_entries/route.ts 🔴 0% 🟢 90.91% 🟢 90.91%
app/javascript/Store/OrderAdmin/queries.generated.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/OrderHistory.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/OrderPaymentModal.tsx 🔴 0% 🟢 97.06% 🟢 97.06%
app/javascript/Store/OrderSummary.tsx 🔴 0% 🟢 97.37% 🟢 97.37%
app/javascript/Store/ProductAdmin/$id.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/ProductAdmin/AdminProductCard.tsx 🔴 0% 🟢 85.71% 🟢 85.71%
app/javascript/Store/ProductAdmin/AdminProductVariantEditRow.tsx 🔴 0% 🟢 83.33% 🟢 83.33%
app/javascript/Store/ProductAdmin/AdminProductVariantsTable.tsx 🔴 0% 🟢 77.78% 🟢 77.78%
app/javascript/Store/ProductAdmin/EditAdminProductCard.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/ProductAdmin/EditPricingStructureModal.tsx 🔴 0% 🟢 91.67% 🟢 91.67%
app/javascript/Store/ProductAdmin/EditProductForm.tsx 🔴 0% 🟢 96% 🟢 96%
app/javascript/Store/ProductAdmin/EditingProductTypes.ts 🔴 0% 🟠 50% 🟢 50%
app/javascript/Store/ProductAdmin/PricingStructureForm.tsx 🔴 0% 🟢 83.87% 🟢 83.87%
app/javascript/Store/ProductAdmin/PricingStructureInput.tsx 🔴 0% 🟠 75% 🟢 75%
app/javascript/Store/ProductAdmin/index.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/ProductAdmin/mutations.generated.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/ProductAdmin/queries.generated.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/ProductOrderForm.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/ProductPage.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/adminProductFields.generated.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/buildMoneyInput.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/buildProductInput.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/describeCoupon.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/describePricingStructure.tsx 🔴 0% 🟢 90.77% 🟢 90.77%
app/javascript/Store/mutations.generated.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/Store/sortProductVariants.ts 🔴 9.09% 🟢 90.91% 🟢 81.82%
app/javascript/Store/useSubmitOrder.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/Tables/ChoiceSetFilter.tsx 🟠 62.5% 🟠 67.86% 🟢 5.36%
app/javascript/Tables/ColumnSelector.tsx 🟠 72.73% 🟢 77.27% 🟢 4.54%
app/javascript/Tables/FilterUtils.ts 🔴 16.07% 🟠 58.93% 🟢 42.86%
app/javascript/Tables/TableHeader.tsx 🟢 87.5% 🟢 100% 🟢 12.5%
app/javascript/Tables/TableUtils.ts 🟠 66.67% 🟢 77.78% 🟢 11.11%
app/javascript/Tables/TimestampCell.tsx 🔴 41.67% 🟢 83.33% 🟢 41.66%
app/javascript/Tables/useReactRouterReactTable.tsx 🟠 63.64% 🟢 97.73% 🟢 34.09%
app/javascript/TimeUtils.ts 🟠 69.81% 🟢 88.68% 🟢 18.87%
app/javascript/Timespan.ts 🟢 85.37% 🟢 87.8% 🟢 2.43%
app/javascript/TimespanUtils.ts 🔴 35% 🟠 75% 🟢 40%
app/javascript/UIComponents/BlockPartial.tsx 🔴 0% 🔴 44.12% 🟢 44.12%
app/javascript/UIComponents/ScheduledValuePreview.tsx 🔴 0% 🟢 91.36% 🟢 91.36%
app/javascript/URLUtils.ts 🔴 0% 🟢 83.33% 🟢 83.33%
app/javascript/UserConProfiles/ConvertToEventProvidedTicketModal.tsx 🔴 0% 🟢 89.47% 🟢 89.47%
app/javascript/UserConProfiles/EditUserConProfile.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/UserConProfiles/UserConProfileAdminDisplay.tsx 🔴 0% 🔴 34.38% 🟢 34.38%
app/javascript/UserConProfiles/UserConProfileForm.tsx 🔴 0% 🟢 100% 🟢 100%
app/javascript/UserConProfiles/buildFormStateFromData.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/UserConProfiles/mutations.generated.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/UserConProfiles/queries.generated.ts 🔴 0% 🟢 100% 🟢 100%
app/javascript/formatMoney.ts 🔴 0% 🟢 88.89% 🟢 88.89%
app/javascript/parseCmsContent.tsx 🔴 40% 🔴 44% 🟢 4%
app/javascript/parsePageContent.tsx 🔴 4.42% 🟢 94.69% 🟢 90.27%
app/javascript/parseResponseErrors.tsx 🔴 0% 🟠 57.14% 🟢 57.14%
app/javascript/scrollToLocationHash.ts 🔴 0% 🔴 33.33% 🟢 33.33%
app/javascript/setupI18Next.ts 🟠 65.52% 🟢 89.66% 🟢 24.14%
app/javascript/useAsyncFetcher.ts 🔴 0% 🔴 39.13% 🟢 39.13%
app/javascript/useAsyncFunction.ts 🟢 93.75% 🟢 94.74% 🟢 0.99%
app/javascript/useIntercodeApolloClient.ts 🔴 13.89% 🟢 90.28% 🟢 76.39%
app/jobs/receive_sns_email_delivery_job.rb 🔴 0% 🟠 66.67% 🟢 66.67%
app/jobs/sync_email_forwarding_for_domain_job.rb 🟢 80% 🟢 100% 🟢 20%
app/liquid_drops/bucket_availability_drop.rb 🔴 0% 🟢 77.78% 🟢 77.78%
app/liquid_drops/run_availability_drop.rb 🔴 0% 🟠 70.59% 🟢 70.59%
app/models/concerns/event_email.rb 🟠 54.05% 🟢 75.68% 🟢 21.63%
app/models/concerns/names.rb 🟠 62.5% 🟢 93.75% 🟢 31.25%
app/models/coupon.rb 🟠 66.67% 🟠 70.37% 🟢 3.7%
app/models/email_route.rb 🟢 79.31% 🟢 96.55% 🟢 17.24%
app/models/event.rb 🟢 80.41% 🟢 88.66% 🟢 8.25%
app/models/event_proposal/timeblock_preference.rb 🔴 0% 🟢 100% 🟢 100%
app/models/form_item.rb 🟢 90.91% 🟢 94.55% 🟢 3.64%
app/models/registration_policy.rb 🟢 98.7% 🟢 98.72% 🟢 0.02%
app/models/root_site.rb 🟠 59.38% 🟢 87.5% 🟢 28.12%
app/models/search_result.rb 🔴 0% 🟢 100% 🟢 100%
app/models/signup.rb 🟢 89.71% 🟢 89.86% 🟢 0.15%
app/models/signup_request.rb 🟢 95.45% 🟢 96.3% 🟢 0.85%
app/models/team_member.rb 🟢 82.14% 🟢 85.71% 🟢 3.57%
app/models/user.rb 🟢 88.89% 🟢 96.3% 🟢 7.41%
app/models/user_con_profile.rb 🟠 68.14% 🟠 70.8% 🟢 2.66%
app/notifiers/orders/cancelled_notifier.rb 🟢 86.67% 🟢 93.33% 🟢 6.66%
app/policies/application_policy.rb 🟢 93.94% 🟢 94.74% 🟢 0.8%
app/policies/coupon_application_policy.rb 🔴 0% 🟢 100% 🟢 100%
app/policies/coupon_policy.rb 🔴 0% 🟢 100% 🟢 100%
app/policies/department_policy.rb 🟠 50% 🟢 88.89% 🟢 38.89%
app/policies/email_route_policy.rb 🟠 66.67% 🟢 100% 🟢 33.33%
app/policies/event_rating_policy.rb 🟢 78.57% 🟢 100% 🟢 21.43%
app/policies/notification_template_policy.rb 🟠 50% 🟢 100% 🟢 50%
app/policies/order_entry_policy.rb 🟢 80% 🟢 100% 🟢 20%
app/policies/order_policy.rb 🟢 94.87% 🟢 97.37% 🟢 2.5%
app/policies/ranked_choice_decision_policy.rb 🔴 0% 🟢 100% 🟢 100%
app/policies/ranked_choice_user_constraint_policy.rb 🔴 0% 🟢 100% 🟢 100%
app/policies/signup_change_policy.rb 🟠 66.67% 🟢 100% 🟢 33.33%
app/policies/signup_ranked_choice_policy.rb 🔴 0% 🟢 100% 🟢 100%
app/policies/signup_round_policy.rb 🔴 0% 🟢 100% 🟢 100%
app/policies/user_activity_alert_policy.rb 🟢 77.78% 🟢 100% 🟢 22.22%
app/policies/user_con_profile_policy.rb 🟢 91.55% 🟢 100% 🟢 8.45%
app/presenters/form_response_presenter.rb 🟢 88.46% 🟢 94.23% 🟢 5.77%
app/presenters/run_availability_presenter.rb 🔴 0% 🟢 100% 🟢 100%
app/presenters/tables/conventions_table_results_presenter.rb 🔴 0% 🟢 100% 🟢 100%
app/presenters/tables/coupons_table_results_presenter.rb 🔴 0% 🟢 100% 🟢 100%
app/presenters/tables/email_routes_table_results_presenter.rb 🔴 0% 🟢 100% 🟢 100%
app/presenters/tables/event_proposals_table_results_presenter.rb 🔴 0% 🟢 100% 🟢 100%
app/presenters/tables/events_table_results_presenter.rb 🟠 57.63% 🟢 100% 🟢 42.37%
app/presenters/tables/form_items.rb 🔴 0% 🟢 100% 🟢 100%
app/presenters/tables/orders_table_results_presenter.rb 🔴 0% 🟢 100% 🟢 100%
app/presenters/tables/ranked_choice_decisions_table_results_presenter.rb 🔴 0% 🟢 100% 🟢 100%
app/presenters/tables/runs_table_results_presenter.rb 🔴 0% 🟢 100% 🟢 100%
app/presenters/tables/signup_changes_table_results_presenter.rb 🟢 79.31% 🟢 100% 🟢 20.69%
app/presenters/tables/signup_requests_table_results_presenter.rb 🔴 0% 🟢 100% 🟢 100%
app/presenters/tables/signups_table_results_presenter.rb 🟠 67.16% 🟢 100% 🟢 32.84%
app/presenters/tables/table_results_presenter.rb 🟢 77.88% 🟢 100% 🟢 22.12%
app/presenters/tables/user_con_profiles_table_results_presenter.rb 🔴 0% 🟢 100% 🟢 100%
app/presenters/tables/users_table_results_presenter.rb 🔴 0% 🟢 100% 🟢 100%
app/services/autoscale_servers_service.rb 🔴 0% 🟢 100% 🟢 100%
app/services/cancel_order_service.rb 🔴 0% 🟢 100% 🟢 100%
app/services/cms_content_loaders/conflict_policies/update.rb 🔴 0% 🟢 100% 🟢 100%
app/services/cms_content_loaders/conflict_policy.rb 🔴 0% 🟠 66.67% 🟢 66.67%
app/services/cms_content_storage_adapters/base.rb 🟠 72.6% 🟢 83.56% 🟢 10.96%
app/services/cms_content_storage_adapters/cms_files.rb 🟠 58.82% 🟠 64.71% 🟢 5.89%
app/services/cms_content_storage_adapters/cms_layouts.rb 🟢 88.24% 🟢 100% 🟢 11.76%
app/services/cms_content_storage_adapters/cms_partials.rb 🟢 88.24% 🟢 100% 🟢 11.76%
app/services/cms_content_storage_adapters/pages.rb 🟢 88.24% 🟢 100% 🟢 11.76%
app/services/concerns/split_ticket_order.rb 🔴 0% 🟢 100% 🟢 100%
app/services/connect_stripe_account_service.rb 🔴 0% 🟢 100% 🟢 100%
app/services/delete_ticket_service.rb 🔴 0% 🟢 96.15% 🟢 96.15%
app/services/email_forwarding_router.rb 🟠 58.42% 🟢 97.85% 🟢 39.43%
app/services/export_cms_content_set_service.rb 🔴 0% 🟢 100% 🟢 100%
app/services/forward_email_via_ses_service.rb 🔴 0% 🟢 98.57% 🟢 98.57%
app/services/hosting_service_adapters.rb 🔴 0% 🟢 100% 🟢 100%
app/services/hosting_service_adapters/base.rb 🔴 0% 🟢 80% 🟢 80%
app/services/hosting_service_adapters/fly.rb 🔴 0% 🟢 88.51% 🟢 88.51%
app/services/hosting_service_adapters/instance.rb 🔴 0% 🟢 100% 🟢 100%
app/services/hosting_service_adapters/instances_state.rb 🔴 0% 🟢 100% 🟢 100%
app/services/load_cms_content_set_service.rb 🟢 97.5% 🟢 100% 🟢 2.5%
app/services/merge_users_service.rb 🟢 96.25% 🟢 100% 🟢 3.75%
app/services/receive_sns_email_delivery_service.rb 🔴 0% 🟢 88.33% 🟢 88.33%
app/services/setup_user_con_profile_service.rb 🔴 0% 🟢 100% 🟢 100%
app/services/submit_order_service.rb 🟢 87.1% 🟢 93.55% 🟢 6.45%
app/services/sync_forward_email_service.rb 🔴 0% 🟢 92.86% 🟢 92.86%
app/services/turnstile_verification_service.rb 🔴 0% 🟢 89.66% 🟢 89.66%
config/initializers/cors.rb 🔴 47.06% 🟢 94.12% 🟢 47.06%
config/initializers/doorkeeper.rb 🟢 87.5% 🟢 90.63% 🟢 3.13%
Overall Coverage 🟢 58.25% 🟢 66.4% 🟢 8.15%

Minimum allowed coverage is 0%, this run produced 66.4%

@nbudin
nbudin merged commit cd7c256 into main Oct 7, 2026
38 of 39 checks passed
@nbudin
nbudin deleted the ci-parallel-minitest branch October 7, 2026 13:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

github_actions Pull requests that update GitHub Actions code tech debt

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant