fix(dashboard): remove localStorage cache entirely
- mergeCachedResults() deleted — no more hidden cache layer - startAgentResearch() / startCellResearch() — no longer save to localStorage - load() — pure API/JSON driven, no localStorage clearing logic - Page now shows exactly what API returns — easier to verify fixes
This commit is contained in:
@@ -161,7 +161,6 @@ async function load(){
|
||||
agents.forEach(a=>{for(const[m,s] of Object.entries(a.evaluations)){modelScores[m]=(modelScores[m]||0)+s;}});
|
||||
allModels=Object.keys(modelScores).filter(m=>modelScores[m]>0).sort();
|
||||
|
||||
mergeCachedResults();
|
||||
renderTable();
|
||||
}
|
||||
|
||||
@@ -294,32 +293,6 @@ function setProgress(pid,percent,label){
|
||||
wrap.classList.remove('hidden'); txt.textContent=label; bar.style.width=percent+'%';
|
||||
}
|
||||
|
||||
function mergeCachedResults(){
|
||||
try{
|
||||
const store=JSON.parse(localStorage.getItem('__researchResults')||'{}');
|
||||
for(const[agent,rec] of Object.entries(store)){
|
||||
if(!reportData.agents[agent]){
|
||||
reportData.agents[agent]={name:agent,evaluations:{},info:[],best_model:'',best_score:0};
|
||||
}
|
||||
for(const r of (rec.models||[])){
|
||||
const shortM=modelShort(r.model);
|
||||
// Only fill gaps — never override existing DB scores
|
||||
const existing=reportData.agents[agent].evaluations[shortM];
|
||||
if(existing===undefined||existing===0){
|
||||
reportData.agents[agent].evaluations[shortM]=r.score;
|
||||
}
|
||||
if(r.score>reportData.agents[agent].best_score){
|
||||
reportData.agents[agent].best_model=shortM;
|
||||
reportData.agents[agent].best_score=r.score;
|
||||
}
|
||||
if(!allModels.includes(shortM)) allModels.push(shortM);
|
||||
if(!allAvailableModels.some(m=>modelShort(m)===shortM)) allAvailableModels.push(shortM);
|
||||
}
|
||||
}
|
||||
allModels.sort();
|
||||
}catch(e){}
|
||||
}
|
||||
|
||||
function renderTable(){
|
||||
const agents=Object.values(reportData.agents).filter(a=>Object.values(a.evaluations).some(s=>s>0));
|
||||
let html='<table><thead><tr><th>Agent</th>';
|
||||
@@ -405,9 +378,6 @@ async function startAgentResearch(){
|
||||
html+='</tbody></table>';
|
||||
$('agentResults').innerHTML=html;
|
||||
$('agentProgressText').textContent='Done! Best score: '+Math.round(best);
|
||||
const store=JSON.parse(localStorage.getItem('__researchResults')||'{}');
|
||||
store[agent]={models:results,ts:Date.now()};
|
||||
localStorage.setItem('__researchResults',JSON.stringify(store));
|
||||
$('agentStartBtn').disabled=false;
|
||||
$('evolveAgentBtn').disabled=false;
|
||||
}
|
||||
@@ -463,11 +433,6 @@ async function startCellResearch(){
|
||||
updateCell(agent,result.model,result.score);
|
||||
$('cellResults').innerHTML='<table class="result-table"><tbody><tr onclick="openDetail(\''+agent+'\',\''+result.model+'\')"><td>'+result.model+'</td><td>'+Math.round(result.score)+'</td></tr></tbody></table>';
|
||||
$('cellProgressText').textContent='Done! Score: '+Math.round(result.score);
|
||||
const store=JSON.parse(localStorage.getItem('__researchResults')||'{}');
|
||||
if(!store[agent]) store[agent]={models:[],ts:Date.now()};
|
||||
store[agent].models=store[agent].models.filter(m=>m.model!==result.model);
|
||||
store[agent].models.push(result);
|
||||
localStorage.setItem('__researchResults',JSON.stringify(store));
|
||||
}
|
||||
|
||||
load().catch(e=>$('matrix').innerHTML='Error: '+e);
|
||||
|
||||
Reference in New Issue
Block a user