feat(scanner): add Android/Gradle ecosystem support - #31
Merged
Conversation
Detect Android/Gradle projects by build.gradle(.kts) and reclaim each module's build/ (compiled output) and .gradle/ (per-project cache). Every Gradle module carries its own marker, so the root project and each subproject become their own project root — one `build` rule covers all module outputs without enumerating module names. No SDK PruneRoot needed: the Android SDK ships no build.gradle, so it never roots a context. React Native android/build attributes to node first in table order; the android scanner still covers deeper module builds the RN rules omit. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_013SX3vRs78zFYA2kTRZAtg6
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #15
요약
Android(Gradle) 프로젝트의 로컬 빌드 아티팩트를 스캔·정리한다.
EcoAndroid상수를 실제 스캐너로 채운다.build.gradle/build.gradle.kts마커build/(safe/build,gradle clean대상) ·.gradle/(safe/cache, per-project)설계 판단
build규칙 하나로 모든 모듈 output 커버(모듈명 열거 불필요).app/build를 따로 등록하지 않음.build.gradle이 없어 프로젝트 컨텍스트가 생기지 않음 → Flutter 같은 SDK 소스 오탐이 원천적으로 없음(실측: SDK 하위 검출 0건).android/build는 테이블 순서상 node의 RN 규칙이 먼저 매치. android 스캐너는 RN 규칙이 다루지 않는 더 깊은 모듈 빌드(android/app/build)를 보완.~/.gradle/caches·AVD·NDK는 Global Caches 스캐너 담당, 여기서 재등록하지 않음.검증
~/workspace스캔: 8건 364MB 정확 검출(멀티모듈 cookiecut 포함)build/는 protection 레이어가protected로 걸러 삭제 대상에서 제외(2단 방어 실측 확인)문서
docs/ecosystems.md: Supported 표implemented, dedup 순서, Android 섹션 신설🤖 Generated with Claude Code