89 lines
4.5 KiB
Markdown
89 lines
4.5 KiB
Markdown
# AGENTS.md — AXP_Resurection
|
|
|
|
How agents must work in **this** repository (AXP Magisk resurrection track).
|
|
Global project rules live in `.specify/memory/constitution.md`. Per-feature
|
|
requirements live in `specs/*/spec.md`. Do not duplicate those documents here.
|
|
|
|
Sibling standby repo/workspace `sunfish-a16-rom` keeps the KernelSU /
|
|
split-roadmap track; do not merge those ship intents back into this tree
|
|
unless the owner explicitly asks.
|
|
|
|
## Scope
|
|
|
|
- This project is **independent of SSYSTEMS**.
|
|
- Do **not** apply SSYSTEMS `AGENTS.md`, Redmine, `r{ticket}_*` branches, company
|
|
GitLab/MR workflows, or company Spec Kit conventions.
|
|
- Do **not** modify PVE / `pm-test01` / company Salt infrastructure from this
|
|
repository. `rom-dev01` is assumed to already exist when host work begins.
|
|
|
|
## Sources of truth
|
|
|
|
Resume point: `docs/009-handoff-20261016.md` (closure
|
|
`docs/009-closure-parity-20261009.md`). Doc index: `docs/README.md`.
|
|
Next LOS sync / first project OTA zip: `docs/009-upstream-rebase-ota.md`.
|
|
Read the handoff before older remaining-work docs; many fortify/CVE/`007`
|
|
files are historical only (`docs/archive/README.md`).
|
|
|
|
1. **Constitution** (`.specify/memory/constitution.md`) — global project rules
|
|
for this Magisk-resurrection track.
|
|
2. **Feature `spec.md`** — especially `specs/009-axp-los23-port/spec.md`.
|
|
3. Upstream / primary sources for LineageOS/AOSP, GrapheneOS, AXP.OS, DivestOS,
|
|
Magisk, microG, and related projects — prefer these over secondary blogs
|
|
or guesses. KernelSU docs are reference-only here (optional recycle).
|
|
|
|
## Clone AXP first (mandatory)
|
|
|
|
This track is an **AXP.OS → LOS23/A16** resurrection (~clone). Default method:
|
|
|
|
1. Find how AXP / EXTENDROM / GOLDEN did it **before inventing a local policy**:
|
|
shipped PRO/GOLDEN zips (`payload.bin` → partition images),
|
|
`/srv/rom/references/axp/` + EXTENDROM on `rom-dev01`, GOLDEN `adb`
|
|
oracle, and real AXP product trees — **not** only Lineage-looking
|
|
`upstream_*` mirrors on disroot.
|
|
2. **Copy that method** into this tree (same flags, same packaging shape, same
|
|
virgin/activation UX where applicable).
|
|
3. Only invent or diverge when LOS 23.2, Android 16, or a newer dependency
|
|
**breaks** the AXP path — then document why and the minimal fix.
|
|
|
|
Do **not** redesign Magisk, microG, Phonesky, DNS, connectivity, hardening
|
|
package sets, or other AXP-class features “our way” for convenience.
|
|
KernelSU / ReSukiSU / SusFS (`007`) is a **parallel** track (boot worked; keep
|
|
all docs). Never mix into Magisk ship bacons. Retry on current ROM:
|
|
`docs/007-parallel-on-009.md`.
|
|
|
|
Magisk specifically: EXTENDROM `EXTENDROM_PREROOT_BOOT` (boot patch, Magisk
|
|
**not** a `PRODUCT_PACKAGE`, dormant until Additional Setup). See
|
|
`docs/009-magisk-preinstall-runbook.md`.
|
|
|
|
## Working rules
|
|
|
|
- Do not invent unresolved technical decisions; investigate them in the relevant
|
|
feature spec (or create/clarify that spec first).
|
|
- `docs/axp-pro-parity.md` and `docs/hardening-backlog.md` are non-normative
|
|
until a row is promoted into a feature `spec.md`.
|
|
- Prefer small, attributable, reversible changes.
|
|
- Never commit secrets, private keys, proprietary Google APKs, phone dumps with
|
|
credentials/identifiers, `.repo`, `out/`, or ccache.
|
|
- Large Android trees and builds belong on `rom-dev01`, not on the laptop.
|
|
- On `rom-dev01`, never leave long `mka`/`ninja` jobs attached to laptop SSH;
|
|
start them detached (`/srv/rom/artifacts/bin/rom-detach`, prefers **tmux**) and
|
|
only poll status/logs with short connections.
|
|
- **Upstream freshness (mandatory):** for KernelSU/ReSukiSU, managers, modules,
|
|
toolchains helpers, and similar moving deps, always take the **newest stable
|
|
(or newest tagged pre-release the project currently ships)** that still fits
|
|
sunfish / non-GKI 4.14 / LOS 23.2 — **not** a stale laptop cache, shallow
|
|
clone, or “whatever was already on the host”. Before any long kernel/ROM
|
|
build: `git fetch --tags`, confirm non-shallow history when version codes
|
|
depend on `rev-list`, record tag/commit + version code, and ensure manager
|
|
APK and kernel driver versions match. Lesson from `007`: a depth=1 ReSukiSU
|
|
mirror produced bogus `KSU_VERSION=30701` after a full boot rebuild.
|
|
- Keep commits and patches source-attributed; do not dump opaque megapatches.
|
|
|
|
## Spec Kit workflow
|
|
|
|
Typical order: `/speckit-specify` → `/speckit-plan` → `/speckit-tasks` →
|
|
implement. Regenerate plan/tasks after meaningful `spec.md` edits.
|
|
|
|
- Do **not** use upstream `/speckit-taskstoissues` for this project; it is
|
|
GitHub-specific. Gitea issue integration may be added separately later.
|