Skip to content

feat(mapper): add JVM role mapping#20

Merged
vincentkoc merged 1 commit into
openclaw:mainfrom
mbelinky:codex/jvm-role-mapping
May 16, 2026
Merged

feat(mapper): add JVM role mapping#20
vincentkoc merged 1 commit into
openclaw:mainfrom
mbelinky:codex/jvm-role-mapping

Conversation

@mbelinky
Copy link
Copy Markdown
Contributor

@mbelinky mbelinky commented May 16, 2026

Summary

  • Add role-oriented JVM feature slices for Gradle Java sources.
  • Classify Java files from code evidence: annotations, imports, inheritance/interfaces, and method return types.
  • Cover generic roles such as web entrypoints, services, persistence boundaries, external clients, configuration, framework components, and extension boundaries.

Why

Gradle source groups are useful but broad. Evidence-based JVM role features give review runs smaller, more meaningful slices without relying on project-specific naming conventions.

Validation

  • pnpm typecheck
  • pnpm test -- src/mapper.test.ts
  • pnpm lint
  • pnpm build
  • Local dry-run against a Java/Gradle repository confirmed additional JVM role features are produced while existing Gradle source/test groups remain

Red-team notes

  • This avoids filename-only role heuristics.
  • Framework components require concrete code evidence such as external inherited/implemented/returned types.
  • Plain URI/config-style imports do not trigger external-client classification by themselves.
  • Same-project imports are identified from actual Java package declarations, so broad namespace projects are not confused with external libraries that share the first one or two package segments.
  • Local same-project types with names like Command do not trigger framework-component classification.
  • This does not add framework-specific support for any one robotics, web, or mobile ecosystem.

@mbelinky mbelinky force-pushed the codex/jvm-role-mapping branch from 27deb4a to d250af8 Compare May 16, 2026 17:18
@vincentkoc vincentkoc force-pushed the codex/jvm-role-mapping branch from d250af8 to a4623c9 Compare May 16, 2026 17:26
@vincentkoc vincentkoc marked this pull request as ready for review May 16, 2026 17:27
@vincentkoc vincentkoc merged commit afce50a into openclaw:main May 16, 2026
3 checks passed
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.

2 participants