Bugikorjaukset ja tietoturvaparannukset: broadcast lag, busy-reititys, rate limiting, gamification-validointi, XSS, base64, DOM-vuoto
Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -2066,7 +2066,7 @@
|
||||
div.style.color = '#a5d6ff';
|
||||
div.innerHTML = ` ✓ ${model} <span style="color:#8b949e">${tokGen} tok | ${durMs}ms | ${tokS} tok/s</span>`;
|
||||
term.appendChild(div);
|
||||
while (term.children.length > 50) term.removeChild(term.firstChild);
|
||||
while (term.children.length > 50 && !term.firstChild.querySelector('.stream-content')) term.removeChild(term.firstChild);
|
||||
term.scrollTop = term.scrollHeight;
|
||||
|
||||
document.querySelectorAll('.avatar-card').forEach(c => c.classList.remove('active'));
|
||||
@@ -2192,7 +2192,7 @@
|
||||
div.className = 'terminal-line';
|
||||
div.innerHTML = `<span class="terminal-prompt">$</span> kpn run ${model} <span style="color:#8b949e">"${promptShort}"</span>`;
|
||||
term.appendChild(div);
|
||||
while (term.children.length > 50) term.removeChild(term.firstChild);
|
||||
while (term.children.length > 50 && !term.firstChild.querySelector('.stream-content')) term.removeChild(term.firstChild);
|
||||
term.scrollTop = term.scrollHeight;
|
||||
}
|
||||
}
|
||||
@@ -2453,10 +2453,17 @@
|
||||
if (msg.includes('[Coder]') && msg.includes('model') && msg.includes('tallennettu')) { setStep('step-model', 'done', '100%'); }
|
||||
if (msg.includes('[Coder]') && msg.includes('Rakennetaan')) { setStep('step-build', 'active'); }
|
||||
if (msg.includes('[Coder]') && msg.includes('Malli ladattu')) {
|
||||
// Malli on valmis — merkataan kaikki vaiheet valmiiksi (myös cache-hitillä)
|
||||
// Malli on valmis — merkataan kaikki vaiheet valmiiksi
|
||||
setStep('step-wasm', 'done');
|
||||
setStep('step-tokenizer', 'done');
|
||||
setStep('step-model', 'done', 'cache');
|
||||
|
||||
const pctSpan = document.getElementById('step-model-pct');
|
||||
if (pctSpan && pctSpan.textContent.includes('100%')) {
|
||||
setStep('step-model', 'done', '100%');
|
||||
} else {
|
||||
setStep('step-model', 'done', 'cache');
|
||||
}
|
||||
|
||||
setStep('step-build', 'done');
|
||||
setStep('step-ready', 'done');
|
||||
}
|
||||
@@ -2519,7 +2526,9 @@
|
||||
coderWsReady = true;
|
||||
|
||||
if (pendingCodePrompt) {
|
||||
sendCodeToHub(pendingCodePrompt);
|
||||
setTimeout(() => {
|
||||
sendCodeToHub(pendingCodePrompt);
|
||||
}, 800);
|
||||
pendingCodePrompt = null;
|
||||
}
|
||||
} catch(e) {
|
||||
|
||||
Reference in New Issue
Block a user