const sleep=ms=>new Promise(r=>setTimeout(r,ms)); const propsOf = el => { for (const k of Object.keys(el)) if (k.startsWith('__reactProps$')) return el[k]; return null; }; const fire = (el) => { let t = el; for (let i=0;i<8&&t;i++){const q=propsOf(t); if(q&&typeof q.onClick==='function'){q.onClick({target:t,currentTarget:t,stopPropagation(){},preventDefault(){},nativeEvent:{},button:0,detail:1});return true;} t=t.parentElement;} return false; }; const total = () => { for (const el of document.querySelectorAll('*')) if (el.children.length===0 && (el.textContent||'').trim().startsWith('全部 (')) return (el.textContent||'').trim(); return null; }; const btns = []; for (const x of document.querySelectorAll('button,span,i')) { const t=(x.innerText||x.title||'').trim(); if (t && t.length<8 && x.offsetParent!==null && /清除|刷新|错误|停止/.test(t)) btns.push(t); } let cl=null; for (const x of document.querySelectorAll('button,span,div')) { const t=(x.innerText||x.title||'').trim(); if (t==='清除错误' && x.offsetParent!==null) { cl=x; break; } } let fired=false; if (cl) { fired = fire(cl); await sleep(2000); } const afterClear = total(); await eda.pcb_Drc.check(); const seq=[]; for (let i=0;i<8;i++){ await sleep(2500); seq.push(total()); } return {btns:[...new Set(btns)], fired, afterClear, seq};