Background
tests/e2e/specs/firstrun-v3.spec.ts:28 is currently test.fixme'd (PR #272). The test clicks the first non-disabled tier-card button and asserts the confirm view appears.
Symptom
Playwright resolves `.tier-card button:not([disabled])` to `Pick Lite` but reports `element is not enabled` on click. The button has no `disabled` HTML attribute, but React's `disabled={!fits}` (`firstrun.jsx:108`) sets the DOM `disabled` property — which Playwright's actionability check honors.
Why all tiers are `!fits` in the test
Even though `HAL0_DATA.host.ram.total = 128` and `HAL0_DATA.bundles[0]` is `Lite` (ram=16), the apiMock fixture's responses for `useCuratedBundles` + `useHardware` produce a configuration where `bundles.filter(b => b.ram <= ramDetected)` ends up empty.
Fix shape
Update `ui/tests/e2e/fixtures/apiMock.ts` (or wherever bundle responses are mocked) to seed at least one bundle whose `ram` ≤ the mocked host RAM. Then re-enable the test by replacing `test.fixme` → `test`.
Severity
Low — the firstrun panel itself works in the live dashboard. This is test-fixture infrastructure work, not a feature regression.
Related
Background
tests/e2e/specs/firstrun-v3.spec.ts:28is currentlytest.fixme'd (PR #272). The test clicks the first non-disabled tier-card button and asserts the confirm view appears.Symptom
Playwright resolves `.tier-card button:not([disabled])` to `Pick Lite` but reports `element is not enabled` on click. The button has no `disabled` HTML attribute, but React's `disabled={!fits}` (`firstrun.jsx:108`) sets the DOM `disabled` property — which Playwright's actionability check honors.
Why all tiers are `!fits` in the test
Even though `HAL0_DATA.host.ram.total = 128` and `HAL0_DATA.bundles[0]` is `Lite` (ram=16), the apiMock fixture's responses for `useCuratedBundles` + `useHardware` produce a configuration where `bundles.filter(b => b.ram <= ramDetected)` ends up empty.
Fix shape
Update `ui/tests/e2e/fixtures/apiMock.ts` (or wherever bundle responses are mocked) to seed at least one bundle whose `ram` ≤ the mocked host RAM. Then re-enable the test by replacing `test.fixme` → `test`.
Severity
Low — the firstrun panel itself works in the live dashboard. This is test-fixture infrastructure work, not a feature regression.
Related