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.
This commit is contained in:
commit
12d2179c20
150 files changed
+26263
No files matched your search
@@ -0,0 +1,228 @@
|
||||
sunfish-a16-rom — Spec Kit beginner guide + pre-plan briefing for ChatGPT
|
||||
Generated: 2026-08-09
|
||||
Project path: /home/aventura/Workspaces/sunfish-a16-rom
|
||||
Constitution: 0.1.5
|
||||
Active feature (.specify/feature.json): specs/001-development-environment
|
||||
|
||||
================================================================================
|
||||
1) WHAT HAPPENED WHEN WE "CREATED" THE PROJECT
|
||||
================================================================================
|
||||
|
||||
In this project we did NOT use the SSYSTEMS command /speckit.project-create.
|
||||
|
||||
We used upstream Spec Kit:
|
||||
|
||||
specify init --here --integration cursor-agent --script sh
|
||||
|
||||
That command:
|
||||
|
||||
- created .specify/ (scripts, templates, workflows, memory/constitution template)
|
||||
- installed Cursor skills under .cursor/skills/speckit-*
|
||||
- those skills are what appear in Cursor as /speckit-plan, /speckit-tasks, etc.
|
||||
|
||||
So yes: initializing a Spec Kit project is what "brings" the other /speckit-*
|
||||
commands into Cursor for THAT workspace.
|
||||
|
||||
Important:
|
||||
- Open the sunfish-a16-rom folder in Cursor (not buildout-saar) so those
|
||||
skills are available.
|
||||
- /speckit-taskstoissues is GitHub-only — do NOT use it (we use Gitea later).
|
||||
- We already wrote constitution + specs/001-003 manually. We do NOT need to
|
||||
re-run /speckit-specify to create 001.
|
||||
|
||||
================================================================================
|
||||
2) TYPICAL UPSTREAM ORDER (generic Spec Kit)
|
||||
================================================================================
|
||||
|
||||
For a brand-new feature from scratch, the usual order is:
|
||||
|
||||
1. /speckit-constitution → project principles (once / rare)
|
||||
2. /speckit-specify → create specs/NNN-name/spec.md from a prompt
|
||||
3. /speckit-clarify → optional: ask structured questions
|
||||
4. /speckit-plan → create plan.md (+ design artifacts)
|
||||
5. /speckit-tasks → create tasks.md checklist
|
||||
6. /speckit-checklist → optional quality checklist
|
||||
7. /speckit-analyze → optional consistency report
|
||||
8. /speckit-implement → execute tasks
|
||||
9. /speckit-converge → later: find remaining work
|
||||
|
||||
You do NOT need every optional step every time.
|
||||
|
||||
================================================================================
|
||||
3) ORDER FOR THIS PROJECT (sunfish-a16-rom) — RIGHT NOW
|
||||
================================================================================
|
||||
|
||||
Already done:
|
||||
[x] specify init (skills installed)
|
||||
[x] custom constitution written (do NOT overwrite with generic /speckit-constitution
|
||||
unless you intentionally re-seed — our constitution is already project-specific)
|
||||
[x] specs 001, 002, 003 written
|
||||
[x] feature.json → 001-development-environment
|
||||
[x] design frozen at constitution 0.1.5
|
||||
|
||||
Recommended next commands (only for feature 001):
|
||||
|
||||
A. (optional) /speckit-clarify
|
||||
Use if you want the agent to ask remaining ambiguities about 001 only.
|
||||
Many ambiguities were already closed in chat — can skip.
|
||||
|
||||
B. /speckit-plan
|
||||
Generates specs/001-development-environment/plan.md from the existing
|
||||
spec.md + constitution. NO VM required.
|
||||
|
||||
C. /speckit-tasks
|
||||
Generates tasks.md from the plan. NO VM required.
|
||||
|
||||
D. (optional) /speckit-analyze or /speckit-checklist
|
||||
|
||||
E. /speckit-implement
|
||||
THIS is when rom-dev01 should exist (SSH working). Implementation of 001
|
||||
assumes the VM is already provisioned outside this project.
|
||||
|
||||
Then later, switch feature and repeat plan→tasks→implement for:
|
||||
002 → 003 → …
|
||||
|
||||
How to switch feature later (when 001 is done):
|
||||
- edit .specify/feature.json:
|
||||
{ "feature_directory": "specs/002-axp-reference-capture" }
|
||||
- or use /speckit-specify only when creating a NEW feature number (004+)
|
||||
- do NOT re-specify 001/002/003
|
||||
|
||||
================================================================================
|
||||
4) WHAT EACH COMMAND DOES (short)
|
||||
================================================================================
|
||||
|
||||
/speckit-constitution Seed/update constitution from template — SKIP for now
|
||||
(ours is already custom 0.1.5)
|
||||
|
||||
/speckit-specify Create a NEW feature spec from a prompt
|
||||
(we already have 001–003)
|
||||
|
||||
/speckit-clarify Ask clarifying questions before plan
|
||||
|
||||
/speckit-plan Write implementation plan (plan.md)
|
||||
|
||||
/speckit-tasks Break plan into tasks.md
|
||||
|
||||
/speckit-checklist Generate validation checklists
|
||||
|
||||
/speckit-analyze Cross-check spec/plan/tasks consistency
|
||||
|
||||
/speckit-implement Execute tasks against the real system/repo
|
||||
|
||||
/speckit-converge Find leftover work after partial implementation
|
||||
|
||||
/speckit-taskstoissues DO NOT USE (GitHub-specific)
|
||||
|
||||
================================================================================
|
||||
5) PRE-PLAN BRIEFING FOR CHATGPT — FEATURE 001
|
||||
================================================================================
|
||||
|
||||
Please review this briefing and return:
|
||||
- anything missing/dangerous in the 001 plan approach
|
||||
- suggested plan.md section outline
|
||||
- P1 vs P2 sequencing recommendations
|
||||
- explicit "do not do" list for Cursor when running /speckit-plan and later
|
||||
/speckit-implement
|
||||
|
||||
--- PROJECT FACTS ---
|
||||
|
||||
Name: sunfish-a16-rom
|
||||
Goal: LineageOS 23.2 / Android 16 custom ROM for Pixel 4a (sunfish), aiming at
|
||||
AXP.OS Pro functionality with deliberate substitutions (Magisk→KernelSU,
|
||||
backup→NeoBackup external, etc.)
|
||||
|
||||
Meta repo (this Spec Kit tree): eventually Gitea sunfish-a16-rom
|
||||
Companion repos later: sunfish-rom-manifest, sunfish-rom-build, sunfish-rom-patches
|
||||
|
||||
Laptop role: Cursor Remote SSH, adb/fastboot, rsync, thin client
|
||||
Build host: rom-dev01 (Ubuntu 24.04) — created OUTSIDE this project via
|
||||
SSYSTEMS Salt/PVE by the human. Spec Kit must NOT create the VM.
|
||||
|
||||
001 starts ONLY when rom-dev01 already exists with:
|
||||
- Ubuntu 24.04
|
||||
- public IPv4, SSH works
|
||||
- saltenv=base already applied by SSYSTEMS
|
||||
|
||||
Sizing to plan around (do not assume more):
|
||||
6 vCPU / 52 GB RAM / 2 TB disk / 32 GB swap
|
||||
→ conservative build parallelism later (003), not in 001 yet
|
||||
|
||||
001 IN SCOPE (ROM host environment):
|
||||
- android-build user/workspace
|
||||
- Android/Lineage build packages, git, git-lfs, repo, ccache
|
||||
- /srv/rom layout (sources, artifacts, logs, tooling, reference)
|
||||
- private Gitea (bind/tunnel; not world-exposed)
|
||||
- four repos: sunfish-a16-rom, sunfish-rom-manifest, sunfish-rom-build,
|
||||
sunfish-rom-patches
|
||||
- off-VM backup/mirror of those Git repos (laptop/Borg/etc.)
|
||||
- Ansible + Semaphore (P2; smoke playbook OK first)
|
||||
- Spec Kit meta repo available on host
|
||||
- Cursor Remote SSH + rsync artifacts workflow docs
|
||||
- guest isolation posture docs/config (public NIC only; UIs not world-open)
|
||||
[human already accepted keeping this in 001]
|
||||
|
||||
001 OUT OF SCOPE:
|
||||
- Proxmox / pm-test01 / choosing public IP / company Salt VM creation
|
||||
- Lineage sync/build (003)
|
||||
- AXP capture / NeoBackup phone backup (002)
|
||||
- microG/Phonesky/KernelSU/hardening
|
||||
|
||||
P1 vs P2 in 001:
|
||||
P1: SSH + android-build + toolchain + /srv/rom + docs for thin-client workflow
|
||||
(enough to unlock 003 later)
|
||||
P2: Gitea + four repos + off-VM mirror + Ansible/Semaphore + isolation polish
|
||||
|
||||
Priority for ChatGPT review of the future plan.md:
|
||||
- Must not invent PVE/qm/Salt SSYSTEMS steps
|
||||
- Must not require Ansible on the laptop
|
||||
- Must not put .repo/out/ccache on the laptop
|
||||
- Must keep Gitea/Semaphore off public Internet by default
|
||||
- Must include off-VM git backup
|
||||
- Must use account android-build (not hard-code laptop username)
|
||||
- First LOS build remains manual later (003); 001 only prepares the host
|
||||
|
||||
Authoritative files for Cursor when planning:
|
||||
- .specify/memory/constitution.md (0.1.5)
|
||||
- specs/001-development-environment/spec.md
|
||||
- AGENTS.md
|
||||
- docs/axp-pro-parity.md and docs/hardening-backlog.md are NON-NORMATIVE
|
||||
|
||||
Suggested plan.md outline for /speckit-plan to produce:
|
||||
1. Summary / goals
|
||||
2. Assumptions (VM pre-exists)
|
||||
3. Non-goals
|
||||
4. Host layout (/srv/rom, android-build home)
|
||||
5. Package/toolchain set (LOS build deps)
|
||||
6. ccache defaults for 6 vCPU / 52 GB
|
||||
7. Gitea install + access model (SSH tunnel)
|
||||
8. Initial empty repos + push meta Spec Kit tree
|
||||
9. Off-VM backup/mirror procedure
|
||||
10. Ansible + Semaphore minimal bootstrap
|
||||
11. Isolation/firewall/DNS guest posture (docs + config)
|
||||
12. Laptop workflow (Remote SSH, rsync, adb/fastboot)
|
||||
13. Acceptance mapping to FR/SC in spec.md
|
||||
14. Handoff criteria to start 002/003
|
||||
|
||||
Please critique this outline and list concrete plan bullets Cursor should include
|
||||
or avoid.
|
||||
|
||||
================================================================================
|
||||
6) AFTER CHATGPT ANSWERS
|
||||
================================================================================
|
||||
|
||||
Human brings ChatGPT feedback into Cursor, then runs:
|
||||
|
||||
/speckit-plan
|
||||
|
||||
(optionally paste ChatGPT constraints as $ARGUMENTS)
|
||||
|
||||
Then:
|
||||
|
||||
/speckit-tasks
|
||||
|
||||
Implement only when rom-dev01 SSH works.
|
||||
|
||||
================================================================================
|
||||
END
|
||||
================================================================================
|
||||
Reference in new issue
Block a user