mirror of
https://github.com/kuhyx/testsAndMisc.git
synced 2026-11-11 19:34:03 +01:00
Prep for a Ulefone Armor X12 Pro (MediaTek MT6765) that has not arrived, validated read-only against the Pixel 6a that has. Partition discovery never hardcodes boot vs init_boot. It reads /dev/block/by-name/, derives the slot scheme from observed _a suffixes, and picks the ramdisk carrier by preference order init_boot then boot over what is actually present. The AOSP launch-version rule explains why that ordering is right; the code consults the filesystem, not the API level. One path therefore serves both a Pixel (no init_boot, falls to boot_a) and a 13-launch MediaTek device (init_boot_a taken). Patching the wrong one yields a phone that will not boot. Classification refuses rather than guesses: ULEFONE needs a positive MediaTek signal AND a vendor match, with no "not a Pixel therefore Ulefone" fallback. Carrier lock is always reported UNDETERMINED, because sys.oem_unlock_allowed, ro.oem_unlock_supported and settings global oem_unlock_allowed read identically whether a device is carrier-locked or merely has the toggle off; asserting a negative would wrongly rule out a path. No flashing script, deliberately. Automating irreversible partition writes defeats the confirmation steps that catch a wrong partition or missing slot suffix. Three bugs found by running the code rather than only linting it: - SIGPIPE: `adb version | head -1` under pipefail exited 141 and killed 00-preflight.sh mid-run - 20-dump-stock.sh exited silently when no recon had run, because find on a nonexistent cache dir fails under set -e - the read-only static scan had a hole: stripping all quoted strings to avoid false positives on printf text also hid `adb shell "reboot bootloader"`. Now only printf/echo/cat arguments are stripped, and a negative self-test asserts the scan fails on injected commands Also narrowed a world-writable udev catch-all (idVendor=="*", MODE="0666") that granted every local process read/write access to every USB device; commented with a backup, adb connectivity re-verified afterwards. Validated: 58/58 offline fixture tests; 00-preflight.sh HOST READY (12/12); 10-recon.sh read-only against the Pixel reports PIXEL, boot_a, A/B, no init_boot, path C-or-D indeterminate, with the device unchanged afterwards. Untested and labelled as such in READY.md: the init_boot branch on real hardware, mtkclient over BROM, and the whole flash/verify sequence. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_018ReVsw7qovYkkGbqcU9tn7
25 lines
732 B
Plaintext
25 lines
732 B
Plaintext
ro.product.manufacturer=Google
|
|
ro.product.model=Pixel 6a
|
|
ro.product.name=bluejay
|
|
ro.product.device=bluejay
|
|
ro.product.first_api_level=32
|
|
ro.board.platform=gs101
|
|
ro.hardware=bluejay
|
|
ro.build.fingerprint=google/bluejay/bluejay:16/CP1A.260405.005/15001963:user/release-keys
|
|
ro.build.id=CP1A.260405.005
|
|
ro.build.version.release=16
|
|
ro.build.version.sdk=36
|
|
ro.build.version.security_patch=2026-04-05
|
|
ro.build.type=user
|
|
ro.boot.slot_suffix=_a
|
|
ro.boot.flash.locked=1
|
|
ro.boot.verifiedbootstate=green
|
|
ro.boot.vbmeta.device_state=locked
|
|
ro.boot.veritymode=enforcing
|
|
ro.boot.hardware=bluejay
|
|
ro.boot.bootloader=bluejay-16.4-14548185
|
|
ro.bootloader=bluejay-16.4-14548185
|
|
ro.carrier=unknown
|
|
gsm.sim.operator.alpha=Orange
|
|
ro.crypto.state=encrypted
|