[Task] Define the boundary between ShenYu main repo and shenyu-client-java
- Dominant language
- Java
- Stars
- 8.8k
- Forks
- 3.1k
- Avg merge
- 7d 1h
- Merged PRs (30d)
- 85
Description
### Description
## Background
ShenYu is splitting Java client-side modules into `apache/shenyu-client-java` so the client can keep JDK 8 compatibility while the main ShenYu repository can evolve admin/bootstrap/runtime independently,
including future JDK 21+ and virtual thread work.
We need a clear boundary between the two repositories to avoid duplicated logic, hidden source coupling, or unclear ownership.
## Tasks
- [ ] Inventory client-related modules currently in the main ShenYu repository.
- [ ] Inventory modules currently restored or expected in `shenyu-client-java`.
- [ ] Define which responsibilities belong to the main repo.
- [ ] Define which responsibilities belong to `shenyu-client-java`.
- [ ] Identify shared concepts that should be treated as protocol contracts rather than shared source code.
- [ ] Identify any remaining main repo dependency on client-side DTOs, constants, or utilities.
- [ ] Document the agreed boundary in a markdown document.
## Expected Output
A document covering:
- Main repo responsibilities: admin, bootstrap, gateway runtime, plugins, sync, management APIs.
- Client repo responsibilities: Java client, starters, registration SDK, beat, discovery registration, MCP client registration.
- Cross-repo contract points: registration protocol, beat protocol, discovery instance protocol, MCP registration protocol.
- Rules for future changes across the two repositories.
## Acceptance Criteria
- The document clearly states what belongs in each repo.
- The document identifies at least one owner/reviewer area for protocol changes.
- The document can be referenced by future PRs that move or modify client-related code.
### Task List
_No response_
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by inventorying client-related modules in the main ShenYu repository and comparing them with modules restored or expected in apache/shenyu-client-java. Document the ownership boundary, protocol contract points, remaining client-side dependencies, and an owner or reviewer area for protocol changes. Done means the document clearly covers both repositories and can guide future client-related PRs.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- documentation
- Issue type
- Documentation
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100