[Design] De-emphasize AIDL: rebalance docs + generalize the AIDL-specific schema fields
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 0
- Forks
- 0
- PR merge metrics
- No merged PRs in 30d
Description
Status: IN-DISCOVERY (reopened 2026-06-09)
The directions below are provisional and under active design review — not locked. A software-architect design pass is in progress on the broader anchoring strategy (epic #41), which this issue is the narrow slice of. Do not build against this yet.
Provisional direction (under review)
- Docs rebalance — candidate to do first, no schema change. Lead with generic internal-class hooking via
classEntry.anchors[]; add non-AIDL worked examples (a class anchored by a stable string literal; a method anchored by signature / superclass ref); present AIDL/Binder as one special case among several, not the canonical shape. Spans docs in all three repos. - Schema field generalization — defer to the v3 bump (#19). Namespace the Binder-specific fields under a
binder:{}sub-object (aidl_descriptor, the stub/callback role, method-levelaidl_txn), drop theaidl_*entries from theclassKindenum sokindis generic again, keepanchors[]as the documented default. Breaking change (example map + docs use these fields) → rides the2 → 3migrator. - Deeper strategic concern → epic #41. "We're too dependent on API-exposed surfaces (AIDL/Binder/Receivers) and can't reliably identify arbitrary deep minified classes — where most of the interesting logic actually lives" is the real problem. #41 owns the anchoring-strategy rethink; this issue is its immediate docs/field slice. The architect pass is designing #41 end-to-end.
Background
The schema bakes AIDL in as first-class (classKind: aidl_stub|aidl_callback, methodEntry.aidl_txn, classEntry.aidl_descriptor) even though the generic mechanism — classEntry.anchors[] + sources[].tool provenance — already exists. The AIDL fields are a Binder/IPC specialization; aidl_descriptor is really just one kind of anchor, while aidl_txn is genuinely Binder-specific (so it gets namespaced honestly under binder:, not renamed to a fake-generic term). We over-fixated only because the worked example app is an AIDL service.
Candidate work items (pending the design)
- Docs rebalance — generic-anchor-first, non-AIDL worked examples (maps + frida + xposed docs)
- Schema:
binder:{}namespacing + generickindenum (at v3, #19) - Feeds the #41 epic (anchor any deep minified class)
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Read the provisional direction, the generic classEntry.anchors[] fields, and the current AIDL-specific schema fields, then compare the maps, Frida, and Xposed documentation. Resolve scope through epic #41 and the v3 migrator in #19 before changing anything; done means an approved design and an updated generic-first documentation/schema plan.
Written by the indexing model from the issue text.
Assessment
- Domain
- backend-api-design, documentation
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Quiet
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100