Backups Validation - Progress and Firmware Fingerprint Date: 2026-07-14 Status: approved Scope This validation closes the Backups Stage 1 UX revision and the Backups Stage 2 package/fingerprint base that were implemented before Restore or Import. It covers read-only operations only. Not included: - Restore backup package - Import firmware from connected ESP32 - OTA - Provisioning - Fleet Management - Edge OS Device - Chip: ESP32-D0WD revision 1 - MAC: "2c:bc:bb:75:f2:74" - Flash ID: "16405e" - Flash size: 4 MB / "4,194,304" bytes - Connection: Web Serial over HTTPS - Baudrate: "115200" Complete Flash Read Result: passed. - Operation: local complete device backup download - Size: "4,194,304" bytes - SHA-256: "a9ea663ba7afc32f90e73bf25d4e535aeeb182e9285ec5e7c974e4cc67d58600" - UI global progress: monotonic from start to completion - UI partial progress: reset by block with block labels - Final state: "Completed" The SHA-256 differs from the existing server backup SHA-256 "ca965603a5c02668e63721b34c05fba0dc2494e3050edcb36b1c621bcafe785a". This is expected when mutable NVS/device state changes between captures. The firmware fingerprint exists to compare reusable firmware regions independently from device-specific state. Partition Read Result: passed. - Partition: "app0" - Offset: "0x10000" - Size: "1,310,720" bytes / "0x140000" - SHA-256: "d79d4b3db73b490429122d64e076dedecf3c3a198497374ce3a8fa4b575fd948" - Matches persisted backup region SHA-256: yes Firmware Fingerprint Result: passed. Current persisted backup values: - Device Backup SHA-256: "ca965603a5c02668e63721b34c05fba0dc2494e3050edcb36b1c621bcafe785a" - Firmware Fingerprint SHA-256: "4ee0ccd14c1d85ed814cfe8067e6834bec7081a1bf5005768a087cd2e8e6283f" - Firmware Fingerprint size: "4,096,000" bytes - Repository matches: "1" Included in the firmware fingerprint: - bootloader - partition table - app partitions - reusable filesystem partitions Excluded by default: - NVS - OTA data - coredump - device-state regions - diagnostic regions - sensitive regions Metadata JSON Result: passed. Local single-file capture metadata now exposes top-level: - "sha256" - "sizeBytes" The existing "files[]" array remains present for detailed file-level metadata. Device Integrity Result: passed. Manual physical validation confirmed: - ESP32 resets correctly. - Firmware boots normally. - Complete flash read did not modify flash contents. - Partition read/download did not modify flash contents. Decision Backups Stage 1 read-only operations and Backups Stage 2 package/fingerprint base remain approved. The project may proceed to planning Compare with repository and Import firmware from connected ESP32. Restore backup package is still explicitly out of scope.