Files
AXP-Resurection/specs/008-call-rec-flag-secure/research.md
T
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

2.3 KiB

Research: 008-call-rec-flag-secure

Decision: Call-rec = AXP GOLDEN / EXTENDROM native model

Decision: Port EXTENDROM F_CALLREC (same behaviour as AXP GOLDEN), not Magisk Dialer RRO.

GOLDEN evidence: LAB dump already has extendrom_call_recording=1 in .local-artifacts/002-golden/20260915-spoofing-phonesky/settings/secure-*.txt.

Mechanism (/srv/rom/references/extendrom/er.sh):

  1. Overlay Dialer config.xml: call_recording_enabled=true, call_recording_audio_source=4.
  2. Settings DO: category + legal info + switch extendrom_call_recording.
  3. Controllers: ER_CallRecPreferenceController / ER_CallRecInfo → Settings.Secure.ER_ALLOW_ANY_CALL_REC.
  4. Settings.java: ER_ALLOW_ANY_CALL_REC = "extendrom_call_recording".
  5. Dialer CallRecorder.canRecordInCurrentCountry(): if Secure int == 1, return true before country XML map.

Secure key (product): extendrom_call_recording (GOLDEN-compatible). Do not invent allow_call_recording_any_region for call-rec.

Alternatives rejected:

  • Magisk static RRO of call_record_states.xml — always-on, not native ROM, no DO parity with GOLDEN.
  • Blind A11 overlay-only without Dialer Java gate — may no-op on A16.

Decision: FLAG_SECURE = AOSP disable_secure_windows + DO

Decision: Do not invent a second frameworks hook. LOS 23.2 / A16 already has Settings.Secure.DISABLE_SECURE_WINDOWS wired through WindowManagerService → WindowState.isSecureLocked(). Ship a Developer Options switch (preference key allow_flag_secure_override) that writes disable_secure_windows.

Constraint: WMS applies the setting only on debuggable builds (ro.debuggable). LAB userdebug is in scope; user retest before release.

Alternatives rejected: Magisk services.jar dex patchers as shipping mechanism.

Decision: Packaging = vendor/sunfish-a16 apply like 005

Idempotent script under patches/008-call-rec-flag-secure/, EXTENDROM/er.sh attribution for call-rec.

Decision: Combined feature directory

One Spec Kit feature absorbs roadmap 008 + 009.

Decision: No Magisk artifacts in the repo

Owner-supplied Magisk zips were temporary agent aids only; removed from the working tree. Implementation references EXTENDROM + GOLDEN dumps + A16 source inventory.