Skip to content

Index opted-in Android vendor source and cover Java/AIDL language cases - #15

Open
mixxer wants to merge 3 commits into
mainfrom
fix/android-platform-language-coverage
Open

mixxer wants to merge 3 commits into
mainfrom
fix/android-platform-language-coverage

Conversation

@mixxer

@mixxer mixxer commented Sep 28, 2026 •

Copy link
Copy Markdown
Owner

Changes

  • Index project-root Android vendor implementation source opted in through codegraph.json include, including Git-ignored source, while keeping nested vendor dependencies, other dependency/build directories, and explicit excludes out.
  • Detect included source additions, changes, and deletions through the Git fast path. Clean status checks use recorded size/mtime before reading include-only candidates; paths reported by Git or the dirty ledger still receive content checks.
  • Preserve qualified nested names in Java generic inheritance in both wasm and native extraction. Preserve main's existing Java enum constant body support.
  • Preserve Java package wildcard imports and apply Java access checks in both optimized and fallback resolution paths. Respect same-package Java access and implicit public visibility through nested interfaces; retain valid cross-package public calls and reject private/package-private calls.
  • Recognize annotated AIDL return methods in AIDL and HAL declaration scans.
  • Bump extraction version to recommend re-indexing affected projects and run the Android regressions in native CI.

Branch reconciliation

Replayed the original intended patch onto downstream main after integrating upstream b635dd467f0578926a9c01a37b9d28d2b26689f1. The PR now contains three commits and 12 changed files, rather than the unrelated 58-commit/60-file history. Enum changes already present on main were retained.

The original head is preserved at backup/pr15-20261008-77c6515.

Validation

  • Independently reproduced and fixed all three P2 findings: nested dependencies for three include patterns, implicit-public nested Java interfaces, and unnecessary source reads on clean status checks.
  • Final head: 809a7d95. Both PR CI and push CI completed successfully. Node 22/24 each passed 536 files / 6,632 tests (16 files / 356 tests skipped); native kernel/AOSP passed 31 files / 1,442 tests.
  • Final local Node 24 portable suite: 536 files / 6,640 tests passed (16 files / 348 tests skipped).
  • Broader native regressions: 37 files / 1,460 tests passed. Follow-up Java import/access regressions: 10 files / 1,017 tests passed in each of wasm and native modes.
  • CI exposed a Java package wildcard import regression; it was independently reproduced and corrected. The optimized access-check path was also reproduced and covered.
  • npm run build, offline cargo check, native release build, and git diff --check passed.
  • The upstream integration baseline CI also completed successfully.

The status optimization still enumerates/stats included paths. As with sync(), an ignored file whose bytes change while both size and mtime are preserved needs a forced re-index. This PR makes no claims about the unrelated decompiled vendor corpus.

@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Sep 28, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review ✅ Completed 2026-09-28T07:30:37.945564Z 77c6515 PR opened
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: 77c6515d09

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread src/extraction/index.ts Outdated
Comment thread src/resolution/name-matcher.ts Outdated
Comment thread src/extraction/index.ts
@mixxer
mixxer force-pushed the fix/android-platform-language-coverage branch from 77c6515 to 1524c11 Compare October 8, 2026 11:48

mixxer commented Oct 8, 2026

Copy link
Copy Markdown
Owner Author

Thanks for the review. I independently reproduced and fixed all three P2 findings, added regressions for the nested vendor exclusions, implicit-public nested Java interfaces, and clean-status source reads, and replied to/resolved the three threads.

The original patch has been reconciled onto current main: this PR is now three commits / 12 files and has no merge conflicts. The old head is preserved on backup/pr15-20261008-77c6515.

Final head: 809a7d95. CI also exposed a Java package wildcard import regression; that was reproduced and fixed, with access checks covered in both optimized and fallback resolution paths. At this exact head, both PR CI and push CI completed successfully: Node 22/24 each passed 536 files / 6,632 tests, and native kernel/AOSP passed 31 files / 1,442 tests. Main's upstream integration CI also passed.

The status fix avoids content reads for unchanged include-only candidates, while retaining content checks for Git/dirty-ledger candidates. Included paths still require enumeration/stat checks.

This branch has not been deployed

No deployments
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant