Files
sunfish-admin 12d2179c20 AXP Magisk resurrection track: Speckit 009 port AXP/LOS22 to LOS23.
Ship Magisk like GOLDEN; KernelSU optional recycle only; parallel to sunfish-a16-rom standby.
2026-09-16 21:56:22 +00:00

113 lines
3.9 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Implementation Plan: AXP.OS GOLDEN reference capture
**Branch**: `002-axp-reference-capture` | **Date**: 2026-09-13 | **Spec**: [spec.md](./spec.md)
**Input**: Feature specification from `/specs/002-axp-reference-capture/spec.md`
## Summary
Identify GOLDEN vs LAB sunfish, write LAB Google factory-image emergency
rescue, capture essential live GOLDEN AXP inventory + banking flow (redacted),
and store raw artifacts under `/srv/rom/references/axp/` on `rom-dev01` while
committing only redacted docs to `sunfish-a16-rom`. Parallel: rsync existing
laptop AXP archive per `docs/axp-sunfish-preservation.md` (does not replace
live `adb`).
## Technical Context
**Language/Version**: Bash + `adb`/`fastboot` inventory scripts; Markdown docs
**Primary Dependencies**: OpenSSH to `rom-dev01`; Android platform-tools on
laptop; optional wget/curl for factory images on host
**Storage**: `/srv/rom/references/axp/` (raw); Git = redacted summaries only
**Testing**: Observational checklists (getprop/dumpsys excerpts); no unit suite
**Target Platform**: Two physical sunfish + `rom-dev01` Ubuntu 24.04
**Project Type**: Device documentation / reference capture
**Performance Goals**: N/A — correctness and non-invention of device facts
**Constraints**: Never flash GOLDEN; no secrets/APKs in Git; NeoBackup not a gate;
bootloader state measured not assumed; gaps marked “re-query GOLDEN”
**Scale/Scope**: One developer; essential inventory for `004`–`006` hard-gates
## Constitution Check
*GATE: Must pass before Phase 0 research. Re-check after Phase 1 design.*
- Independence from SSYSTEMS: yes (Gitea/host paths only)
- GOLDEN do-not-flash: enforced in docs + FR-006
- No Magisk-as-production-path invention: Magisk recorded as GOLDEN oracle only
- Secrets/APKs off Git: FR-005 / SC-005
- Prefer primary sources: Google factory images page; live `adb` over blogs
**Post-design**: Still pass — plan does not invent package versions.
## Project Structure
### Documentation (this feature)
```text
specs/002-axp-reference-capture/
├── plan.md
├── research.md
├── data-model.md
├── quickstart.md
├── contracts/ # N/A (README only)
└── tasks.md
```
### Source / artifact layout
```text
# In-repo (redacted)
docs/device-roles.md # update serials/labels + lock notes
docs/002-golden-inventory.md # essential inventory + banking flow
docs/002-lab-stock-rescue.md # LAB factory rescue
docs/axp-pro-parity.md # cross-links only (non-normative)
# On rom-dev01 (raw; not Git)
/srv/rom/references/axp/
├── archive/ # rsync from ~/Archives/AXP.OS
├── golden/ # adb pulls, APK copies, dumpsys (restricted)
├── lab/ # factory image zip + checksums
└── logs/ # capture session logs
```
## Complexity Tracking
| Violation | Why Needed | Simpler Alternative Rejected Because |
|-----------|------------|-------------------------------------|
| — | — | — |
## Phases
### P0 — Docs + archive seed (no phone required)
1. Freeze plan/research/tasks.
2. Rsync laptop `~/Archives/AXP.OS` → `/srv/rom/references/axp/archive/`.
3. Draft LAB stock rescue from current Google sunfish factory image listing;
download image+hash to `/srv/rom/references/axp/lab/` when network allows.
### P1 — Device roles + measured identity (phones required)
1. Connect GOLDEN and LAB; record serials/labels; `getprop` + fastboot lock.
2. Update `docs/device-roles.md` + `docs/002-golden-inventory.md` stubs with
measured facts only.
### P2 — Essential GOLDEN inventory + banking flow
1. Scripted `adb` collection into `/srv/rom/references/axp/golden/` (redact
before any Git paste).
2. Write banking install order from GOLDEN observation.
3. Cross-link parity matrix rows that become known.
### Gate before `003`
LAB rescue doc reviewed; GOLDEN explicitly do-not-flash; FR-006 satisfied.
**No** Lineage sync in this feature.