| name | analyze-subcomponents |
| description | Deep-dive into a selected subcomponent (feature folder, package, native tree, or file) to identify responsibilities, dependencies, integration points, and change impact. Use when asked to understand a subsystem, plan refactors, estimate blast radius, investigate regressions, or document ownership boundaries inside this launcher codebase. |
Analyze Subcomponents
Quick Start
- Run
scripts/component_profile.sh <component-path-or-token> [repo-root].
- Load
references/subcomponent-implementation-details.md for direct per-subcomponent implementation context.
- Load
references/component-analysis-checklist.md for this repo's coupling/change checkpoints.
- Validate script output by reading the highest-coupling files directly.
Mandatory Pre-Modification Context
Before editing any subcomponent:
- Read the matching section in
references/subcomponent-implementation-details.md.
- Identify DI, navigation, manifest, storage, process, and runtime coupling using
references/component-analysis-checklist.md.
- Run
scripts/component_profile.sh for the target and at least one adjacent dependency folder or companion package.
- Describe expected blast radius before applying code changes.
Workflow
- Resolve the target component to a concrete path.
- Classify the target:
- App feature (
app/.../feature/...)
- App core infrastructure (
app/.../core/...)
- Native runtime/vendor code (
app/src/main/cpp/...)
- Patch/config/assets/build support (
patches/..., app/src/main/assets/..., Gradle files, manifest)
- Profile internals:
- File/type inventory.
- Primary declarations.
- Internal vs external imports.
- Profile coupling:
- Upstream/downstream references.
- DI registration points.
- Manifest/service/provider touchpoints when relevant.
- Report impact:
- What breaks if changed.
- What likely needs coordinated updates.
Output Contract
- Return a concise component brief with concrete paths and ownership hints.
- Include a change-impact checklist tailored to the current request.
- List high-risk interfaces first (runtime bootstrap, repositories/storage, navigation, process boundaries, JNI/native bridges).
Resources
- Script:
scripts/component_profile.sh
- Reference:
references/subcomponent-implementation-details.md
- Reference:
references/component-analysis-checklist.md