fix: resolve LINE level experiments to individual ASINs using salesData so calculation works for product lines

This commit is contained in:
Christian Vidal Wolf
2026-02-21 19:26:45 +01:00
parent c2d516dbfc
commit 249dc0c749
4 changed files with 63 additions and 36 deletions
+5 -3
View File
@@ -10,7 +10,10 @@ import { SalesRecord, FilterState, AggregatedData, AdsRecord, TrafficRecord, For
import { queryGemini } from './services/geminiService';
import { ChartIcon, TableIcon, UploadIcon, DownloadIcon, CloseIcon, TrendingIcon, MegaphoneIcon } from './components/Icons';
import { loadSalesData, saveSalesData, clearSalesData, loadAdsData, saveAdsData, clearAdsData } from './services/storage';
import { getActiveExperimentsForASINs } from './services/experiments';
import {
listExperiments,
getActiveExperiments,
} from './services/experiments';
// Lazy load heavy components for better initial performance
const DataGrid = lazy(() => import('./components/DataGrid'));
@@ -258,8 +261,7 @@ const App: React.FC = () => {
const handleExperimentsFetch = useCallback(async () => {
try {
const allAsins: string[] = Array.from(new Set(rawData.map(r => String(r.asin).toUpperCase())));
const expMap = await getActiveExperimentsForASINs(allAsins);
const expMap = await getActiveExperiments(rawData);
setExperimentMap(expMap);
console.log('[App] Loaded experiments for', expMap.size, 'ASINs');
} catch (error) {