v0.308.0 (R-554, held-back-able): recovery-info.txt points at the dashboard's Restore page and the recovery code; the first-boot setup wizard is deleted

Operator ruling 2026-10-12 (S27, 09 §3 decision 222). The operator approves the Hungarian text before
release. A box whose first ingestion failed now serves one bilingual waiting page and retries every
minute instead of the wizard. Own commit so the lead can hold it back.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0159rPz1ZhFKsS53msqPYxtS
This commit is contained in:
2026-10-12 15:38:28 +02:00
parent fd28d70bff
commit faef8f8a91
36 changed files with 421 additions and 1916 deletions
-59
View File
@@ -321,28 +321,6 @@
</div>
<div class="card debug-section" id="section-dr">
<div class="card-header debug-section-header" onclick="toggleSection('dr')">
<h3>DR / Telepítő varázsló</h3>
<span class="section-toggle">▶</span>
</div>
<div class="card-body debug-section-body" style="display:none">
<div class="debug-actions" style="margin-top:1rem">
<div class="debug-dr-danger">
<p style="color:var(--crit);font-weight:600">Vészhelyzet szimuláció</p>
<p class="text-muted" style="font-size:.85rem;margin-bottom:.5rem">Ez törli az ügyfél azonosítót és újraindítja a controllert setup módba. A konfigurációs fájlok megmaradnak a meghajtókon.</p>
<div class="debug-form-row">
<label>Írd be "RESET" a megerősítéshez:</label>
<input type="text" id="dr-confirm-input" class="form-control debug-confirm-input" placeholder="RESET" autocomplete="off">
<button class="btn btn-danger btn-sm" id="btn-dr-trigger" data-label="Újraindítás setup módban" onclick="triggerDR()">Újraindítás setup módban</button>
<span class="debug-result" id="btn-dr-trigger-result"></span>
</div>
</div>
</div>
</div>
</div>
<div class="card debug-section" id="section-appexport">
<div class="card-header debug-section-header" onclick="toggleSection('appexport')">
<h3>Alkalmazás Export/Import</h3>
@@ -624,43 +602,6 @@ function loadSelfUpdateStatus() {
}
function triggerDR() {
var input = document.getElementById('dr-confirm-input');
if (input.value !== 'RESET') {
var result = document.getElementById('btn-dr-trigger-result');
result.className = 'debug-result debug-result-error';
result.textContent = 'Írd be: RESET';
return;
}
var btn = document.getElementById('btn-dr-trigger');
felhomConfirm(btn, 'FIGYELEM! Ez újraindítja a controllert setup módba. Biztosan folytatod?', function () {
var result = document.getElementById('btn-dr-trigger-result');
btn.disabled = true;
btn.textContent = 'Folyamatban...';
fetch('/api/debug/dr/trigger-setup', {
method: 'POST',
headers: Object.assign({'Content-Type':'application/json'}, csrfHeaders()),
body: JSON.stringify({confirm: 'RESET'})
}).then(function(r){return r.json()}).then(function(data) {
if (data.ok) {
result.className = 'debug-result debug-result-ok';
result.textContent = 'Controller újraindulása...';
} else {
result.className = 'debug-result debug-result-error';
result.textContent = data.error || 'Hiba';
btn.disabled = false;
btn.textContent = btn.dataset.label;
}
}).catch(function(e) {
result.className = 'debug-result debug-result-error';
result.textContent = 'Hiba: ' + e.message;
btn.disabled = false;
btn.textContent = btn.dataset.label;
});
});
}
var currentLogLevel = 'DEBUG';
var currentLogSource = 'controller';
var lastLogTimestamp = '';