setIsOpenPositionsOpen(false)}
+ positions={openPositions}
+ activeRound={activeRound}
+ />
+
{/* Mobile sticky predict action bar — visible only on small screens */}
{!isLoading && isRoundActive && (
{
}, []);
useEffect(() => {
+ // Load education content when the page mounts.
+ // eslint-disable-next-line react-hooks/set-state-in-effect
fetchData();
}, [fetchData]);
diff --git a/vitest.config.ts b/vitest.config.ts
index 077083d..f7c4e40 100644
--- a/vitest.config.ts
+++ b/vitest.config.ts
@@ -1,12 +1,15 @@
-import { defineConfig } from 'vitest/config';
-import react from '@vitejs/plugin-react';
-
-export default defineConfig({
- plugins: [react()],
- test: {
- environment: 'jsdom',
- globals: true,
- setupFiles: ['./src/test/setup.ts'],
- exclude: ['**/node_modules/**', '**/dist/**', '**/e2e/**', '**/cypress/**', '**/.{idea,git,cache,output,temp}/**'],
- },
-});
+import { defineConfig } from 'vitest/config';
+import react from '@vitejs/plugin-react';
+
+export default defineConfig({
+ plugins: [react()],
+ test: {
+ environment: 'jsdom',
+ globals: true,
+ setupFiles: ['./src/test/setup.ts'],
+ // Several legacy suites mock the same modules with different export shapes.
+ // Keep file execution isolated and deterministic in the CI suite.
+ fileParallelism: false,
+ exclude: ['**/node_modules/**', '**/dist/**', '**/e2e/**', '**/cypress/**', '**/.{idea,git,cache,output,temp}/**'],
+ },
+});