base red: RowBadgeSpinnerDensityTests' argument table is nonisolated (from #33120)

Merged
LA
3d ago
+1-1

Summary

feat-cmux-next tip does not compile its CmuxNextAppTests target (STATUS 8645), from #33120:

Packages/macOS/CmuxNext/Tests/CmuxNextAppTests/RowBadgeSpinnerDensityTests.swift:32:6: error: main actor-isolated static property 'cases' cannot be accessed from outside of the actor (in macro expansion @Test:16:30)

The suite is @MainActor, so its static let cases is main-actor isolated. @Test(arguments: 0..<cases.count) reads it from the macro's nonisolated argument expansion.

Fix

static let cases becomes nonisolated static let cases. The value is a constant array of (SidebarDensity, SidebarMinimalMode); both are public nonisolated Sendable CaseIterable enums, so reading it from any isolation is safe. The repo uses the same pattern for @Test(arguments:) tables, for example Tests/CmuxNextActionsTests/EqualizeAndInterfaceScaleKeysTests.swift:11. No other change.

Observed / Not run

  • Observed: the diff is the one-line change above; the enum declarations are nonisolated and Sendable.
  • Not run: the fleet compile (cmux-ci compile-check --app --package CmuxNext --recipe-version 2 --ref 45112a704dc8c10b41b196ce9218c0e2e0f9d131) is not yet run; its result follows in a comment. The tests themselves were not run.

Changelog

none