# Research: 003-lineage-23-vanilla-build ## R1 — Manifest / branch **Decision**: Use official LineageOS `lineage-23.2` (or the wiki-documented sunfish 23.2 branch name measured at implement time). Record exact `repo init` URL/branch and `repo manifest -r` for the known-good build. **Rationale**: Constitution base = LOS 23.2 / A16; no AXP/GOS base. ## R2 — Build user / path **Decision**: Build as `android-build` on `rom-dev01`; tree under `/srv/rom/src/` (exact subdir documented at init); `CCACHE_DIR=/srv/rom/ccache`. ## R3 — Variant **Decision**: `userdebug` + LOS default/test-keys for this stage (FR-002). Release keys / AVB = later (`011`). ## R4 — Flash target **Decision**: **LAB only** (`11231JEC207477`). Owner approved unlock/wipe for first custom flash. GOLDEN never flashed. Factory zip on disk = **emergency rescue only** — owner does not want stock as a planned LAB OS; skip “Yuh on stock” experiment. ## R4b — Banking / root / Phonesky (owner 2026-09-13) - Hard-gate focus: **Yuh** (+ Swissquote as tracked); Revolut not a hard-gate. - Root: **KernelSU-Next + SusFS**; ReSukiSU only if KSU-Next fails on LAB. - Play: **AXP-style patched Phonesky/GPlay** priv-app (not XDA FakeStore-first). ## R5 — Parallelism / OOM **Decision**: Start conservative `-j` (e.g. half of vCPUs); document failure recovery (`out/` cleanup) in build notes. Measure host: ~8 vCPU / 62 GiB RAM. ## R6 — What “vanilla” excludes **Decision**: No microG, Phonesky, signature-spoof patches, KernelSU/SUSFS, Magisk, call-recording/FLAG_SECURE ports, Graphene/Divest hardening — even if present on LAB’s current iodé image (that baseline will be wiped by flash). ## R8 — Proprietary blobs **Decision (owner 2026-09-13):** Factory/Lineage-equivalent blob base, then selective **AXP sunfish** diffs and **GrapheneOS** diffs (historical sunfish A13 + transferable bits from a currently supported Pixel). No exotic blob hunting for GPS; do not overthink for `003` vanilla (factory-equivalent only).