wyf027 opened a new pull request, #3490:
URL: https://github.com/apache/dubbo-go/pull/3490

   ## What
   
   - Add `AffinityAware` to static `RouterConfig` and preserve it when configs 
are cloned.
   - Implement `SetStaticConfig` for service- and application-scoped affinity 
routers.
   - Keep multiple static affinity rules isolated by config key and apply them 
deterministically.
   - Preserve bootstrap static rules when config center has no dynamic rule.
   - Cover valid, invalid, disabled, scope-filtered, multi-rule, and fallback 
behavior.
   
   ## Why
   
   Issue #3203 identifies static AffinityRouter configuration as an outstanding 
router gap. The affinity router supported dynamic config-center rules, but the 
static router injection path had neither affinity fields nor a 
`StaticConfigSetter` implementation.
   
   This recreates the maintainer-approved final state of #3420 on the latest 
`develop`, while omitting compatibility files that have since been removed 
upstream. The original PR cannot be reopened because its fork/head repository 
was deleted.
   
   ## User impact
   
   Applications can bootstrap service- or application-scoped affinity routing 
locally through `client.WithRouter`. Multiple rules remain independent, and an 
absent dynamic rule no longer erases static configuration.
   
   ## Validation
   
   - `GOTOOLCHAIN=go1.25.0+auto go test ./cluster/router/affinity ./global 
./cluster/router/... .`
   - `go test -race ./cluster/router/affinity`
   - `go vet ./cluster/router/affinity ./global ./cluster/router/... .`
   - `golangci-lint run ./cluster/router/affinity ./global --timeout=10m`
   - `make check-fmt`
   - `git diff origin/develop...HEAD --check`
   
   ## Documentation
   
   The previously requested website follow-up, apache/dubbo-website#3211, was 
also closed after its head repository was deleted and will need to be recreated 
separately. This PR remains a draft while that follow-up is outstanding.
   
   Refs #3203
   Supersedes #3420
   


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to