v0.318.0: the internal data place, partitions, an honest whole-box backup offer (R-1084), sys_drive never offered (R-1082)
gates / gates (push) Successful in 46s
gates / gates (push) Successful in 46s
felhom.eu architecture/16 §4-§6 (build B). MinAgent 0.157.0 — the internal place and the partitions appear only when agent >= 0.158.0 reports them. Tests red-proved; four parity fixtures refreshed (only the new lines). Claude-Session: https://claude.ai/code/session_012qRErfCoiTkvDK9N5XHbzb
This commit is contained in:
@@ -71,6 +71,20 @@ async function loadDisks(){
|
||||
var cands = (j.data&&j.data.attach)||[];
|
||||
if(cands.length===0){ document.getElementById('disk-list').innerHTML='<p class="form-hint">{{T "storage_attach.nincs_csatolhato_meghajto_a_csatolashoz"}}</p>'; return; }
|
||||
var html='<div class="drive-list">';
|
||||
// `16` §6 (agent ≥ 0.158.0): a disk that lists its parts offers each usable part (an ext4/xfs filesystem not yet
|
||||
// a drive) as its own card, instead of the disk's first filesystem.
|
||||
var flat=[];
|
||||
cands.forEach(function(d){
|
||||
var usable=(d.partitions||[]).filter(function(p){ return p.state==='filesystem' && p.mountable; });
|
||||
if(!d.already_mounted && d.partitions && d.partitions.length){
|
||||
usable.forEach(function(p){ flat.push({device:p.device, mount_source:p.device, fstype:p.fstype, size_bytes:p.size_bytes,
|
||||
model:(d.model?d.model:d.device)+' — '+'{{T "storage_wizard.resz_n"}}'.replace('{n}', p.number||'?')}); });
|
||||
return;
|
||||
}
|
||||
flat.push(d);
|
||||
});
|
||||
cands=flat;
|
||||
if(cands.length===0){ document.getElementById('disk-list').innerHTML='<p class="form-hint">{{T "storage_attach.nincs_csatolhato_meghajto_a_csatolashoz"}}</p>'; return; }
|
||||
cands.forEach(function(d,i){
|
||||
var title = d.model ? esc(d.model) : esc(d.device);
|
||||
var parts = [esc(d.device)];
|
||||
|
||||
Reference in New Issue
Block a user