Aias00 opened a new issue, #8017: URL: https://github.com/apache/shenyu/issues/8017
## Description Follow-up to the plugin orchestration review against master `34f2ed036` and design PR #8007 (`f2839049c`). Parent proposal: #7993. Owning implementation/design task: #8000. Related tasks: #7996, #7999, #8001. This issue refines the existing work breakdown; it does not assert that GRAPH execution is already implemented or that the proposed design has been accepted. HTTP/RPC API aggregation and parallel plugin execution remain out of scope. ## Problem The newly added PluginInventoryCollector reads ShenyuWebHandler.getPlugins(), which currently describes the live legacy list. Once GRAPH is separate, that list alone cannot describe installed plugin implementations, an active graph plan, or the mode handling traffic. A diagnostics bundle may otherwise present a valid but inactive legacy path as the effective execution configuration. ## Code and design evidence - [inventory reads webHandler.getPlugins](https://github.com/apache/shenyu/blob/34f2ed036/shenyu-web/src/main/java/org/apache/shenyu/web/diagnostics/PluginInventoryCollector.java) - [effective configuration digests](https://github.com/apache/shenyu/blob/34f2ed036/shenyu-web/src/main/java/org/apache/shenyu/web/diagnostics/EffectiveConfigDigestCollector.java) - [bounded diagnostic collection](https://github.com/apache/shenyu/blob/34f2ed036/shenyu-web/src/main/java/org/apache/shenyu/web/diagnostics/DiagnosticBundleService.java) ## Task List - Extend existing diagnostics rather than add a parallel unbounded collector stack. - Distinguish installed catalog, enabled legacy ordering, configured executor mode and active graph identity/revision/readiness. - Label inactive candidates/rejection separately from the plan actually handling traffic. - Preserve existing redaction, byte/time budgets and optional dependency behavior. - Avoid per-request or unbounded revision/node metric labels; describe consistency of observed snapshots. ## Acceptance criteria - Bundles accurately report LEGACY-only, ready GRAPH, rejected candidate with an old active plan, and GRAPH-not-ready deployments. - Installed and active plugin sets are not conflated. - Redaction/budget tests cover graph definitions and identifiers; no secrets or arbitrary request conditions leak. - Existing legacy diagnostics remain usable without graph runtime/configuration. ## Dependencies and sequencing Resolve the contract portion in #7994 / PR #8007 before depending implementation hardens this assumption. Deliver code and integration coverage under #8000 and the related tasks above. Existing issue dependencies remain in effect; this issue adds a focused review requirement rather than a duplicate full implementation task. -- 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]
