mirror of
https://github.com/rcourtman/Pulse.git
synced 2026-10-24 04:33:17 +00:00
Restore two storage-recovery notes this rebuild dropped
The original PR 2435 branch carried a stale copy of storage-recovery.md and deleted main's History touch-inspection and pool-to-disk ownership notes, which are unrelated to this change. The squashed rebuild inherited the deletion; this puts both notes back so the change only adds its own coverage clause.
This commit is contained in:
@@ -6316,3 +6316,35 @@ This changes no collector, health thresholds, history policy or server identity.
|
||||
`frontend-modern/src/components/Storage/__tests__/DiskList.test.tsx` exercises
|
||||
snapshot replacement, in-place reconciliation, missing evidence, target changes
|
||||
and fault/recovery using the real keyed renderer.
|
||||
|
||||
Touch inspection in the existing pool and physical-disk History charts selects
|
||||
an actual stored reading rather than substituting the latest sample on focus.
|
||||
Page pan/cancel and multi-contact gestures do not imply a selected observation;
|
||||
browser-owned scrolling remains available. This changes no source target, API,
|
||||
units, collection, retention, access or recovery boundary. The production
|
||||
disk/pool fixture `frontend-modern/browser-tests/history-touch.cjs` and mounted
|
||||
`HistoryChart.test.tsx` regressions verify presentation/input behaviour only,
|
||||
not live appliance collection or recovery success.
|
||||
|
||||
### Pool-to-physical-disk ownership in Storage details
|
||||
|
||||
`storagePoolDetailPresentation.ts` must scope inferred ZFS device and UnRAID
|
||||
array/cache-group membership to the owning host. An explicit disk parent equal
|
||||
to the canonical pool ID or its retained resource reference remains a direct
|
||||
association. Otherwise, matching canonical host parents establishes scope;
|
||||
conflicting parents cannot be overridden by names, paths or group labels.
|
||||
When canonical parents are unavailable, only a complete matching native
|
||||
Proxmox instance/node pair establishes scope. `storageAdapters.ts` retains that
|
||||
instance alongside the native node. Display names and unscoped hostnames alone
|
||||
are insufficient. Unknown ownership must not present another host's SMART,
|
||||
temperature, counters or topology counts as this pool's evidence.
|
||||
|
||||
ZFS device matching compares full identifiers with only the optional `/dev/`
|
||||
prefix normalized, not arbitrary suffixes or invented partition associations.
|
||||
This is read-only presentation: no collector, canonical server identity,
|
||||
metrics target, health threshold, persistence or recovery authority changes.
|
||||
`storagePoolDiskOwnership.test.ts`, the mounted
|
||||
`StoragePoolDetail.ownership.test.tsx` and `browser-tests/pool-ownership.cjs`
|
||||
cover repeated paths/groups, direct children, scoped legacy snapshots, missing
|
||||
ownership and live target replacement. Synthetic presentation proof does not
|
||||
establish native appliance, installation or recovery acceptance.
|
||||
|
||||
Reference in New Issue
Block a user