zhaohai666 opened a new pull request, #426:
URL: https://github.com/apache/rocketmq-dashboard/pull/426

   # PR Description
   ## PR Title
   [ISSUE #10600][RIP-1 + RIP-3] Control Plane 5.0 Unified Implementation: Core 
Architecture Refactor + LLM Native Integration (CLI / MCP / Embedded Chat)
   
   ---
   
   ## Summary
   This PR implements the core delivery of RocketMQ 5.0 Studio proposed in 
community recruitment issue #10600, delivering integrated capabilities of 
**RIP-1 (Unified Control Plane Architecture)** and **RIP-3 (LLM Native 
Integration)** within `apache/rocketmq-dashboard`.
   
   Per the three-track construction plan of RocketMQ Studio, RIP-1 corresponds 
to Track 1 AI-Native unified control platform and Track 2 Proxy Admin 
capability upgrade, adopting a standardized three-layer abstract architecture 
to realize unified O&M for 4.0 standalone clusters, 5.0 Local/Cluster Proxy and 
cloud-managed instances.
   All AI-Native capabilities of RIP-3 belong to Track 3 LLM native 
integration, fully built on RIP-1 underlying abstractions, providing three 
programmable interaction modes: `rmqctl` CLI, standard MCP Server and built-in 
LLM chat panel. All portals share unified tool schema, metadata, authentication 
and observability capabilities, without any independent redundant backend 
interfaces.
   
   This project has been selected into the Taiyi Open Source Challenge, all 
code submissions under this branch will be recorded as official Apache RocketMQ 
contributions.
   
   ---
   
   ## 1. Background & Motivation
   RocketMQ 5.0 has completed the iteration of cloud-native elastic 
architecture, gRPC multi-language access and LiteTopic, and the community 
launched RocketMQ Studio co-construction plan (#10600) to build a new AI-Native 
control plane, split into three orthogonal development tracks.
   The original `rocketmq-dashboard v2.1.0` cannot match the new architecture 
requirements, with core pain points as follows:
   1. **Coupled architecture**: Mixed logic of 4.0 and 5.0 versions lacks 
standardized SPI layers, repeatedly triggering compatibility bugs (#390, #401, 
#402, #403).
   2. **Single operation portal**: Only Web UI is provided, lacking 
standardized CLI and programmable interfaces for automation and third-party 
system docking.
   3. **No AI agent invocation standard**: No general protocol exposed for LLM 
and IDE Copilot to call O&M capabilities, requiring enterprises to develop 
extra adaptation layers.
   4. **Decentralized authentication and monitoring**: ACL 1.0/2.0 
multi-architecture adaptation incomplete; no unified Prometheus query proxy, 
inconsistent audit logic.
   
   This PR solves all above problems at once: RIP-1 builds the unified 
underlying control plane covering Track1 & Track2 demands, RIP-3 supplements 
Track3 AI native interaction capabilities, and all modules reuse the underlying 
layer without duplicate development.
   
   ---
   
   ## 2. Core Architecture & Design Principles
   ### 2.1 Three-Layer Abstraction (RIP-1 Foundation, Support Track1 & Track2)
   ```
   ┌─────────────────────────────────────────────────────────────┐
   │  Business Layer (RIP-1 Web UI + RIP-3 CLI / MCP / LLM Chat) │
   │  Capability-driven dynamic rendering & multi-modal access    │
   └───────────────────────────┬─────────────────────────────────┘
                               │
   ┌───────────────────────────▼─────────────────────────────────┐
   │  MetadataProvider Domain Layer (META-01)                    │
   │  Namespace / Topic / Group / ACL / Client / LiteTopic       │
   │  Cloud vendor SPI extension point                           │
   └───────────────────────────┬─────────────────────────────────┘
                               │
   ┌───────────────────────────▼─────────────────────────────────┐
   │  AdminClient Protocol Layer (ARCH-01, Track2 Core)          │
   │  Remoting / gRPC / Cloud OpenAPI multi-protocol support     │
   │  Standard auth hook injection (AUTH-01)                     │
   └───────────────────────────┬─────────────────────────────────┘
                               │
             ┌─────────────────┼─────────────────┐
             ▼                 ▼                 ▼
     4.0 NameSrv+Broker   5.0 Proxy Cluster   Cloud Mgmt API
   ```
   
   ### 2.2 Key Design Principles Aligned with Studio Track Goals
   1. **Single source of truth**: Web, CLI, MCP all reuse identical 
`MetadataProvider`, `AdminClient` and tool schema to avoid capability 
inconsistency.
   2. **Capability-driven UI rendering**: Pages and operation entries 
dynamically display based on cluster version features, hide unsupported 
functions automatically.
   3. **Unified security control**: Three-level risk classification L1/L2/L3 
takes effect on all portals uniformly; all write operations adopt two-stage 
dry-run confirmation.
   4. **Full backward compatibility**: 100% retain all v2.1.0 original 
functions, zero migration cost for existing clusters.
   5. **Graceful degradation**: 5.0 Proxy and LLM exclusive capabilities will 
be hidden automatically on 4.0 clusters or environments without LLM 
configuration.
   
   ---
   
   ## 3. Detailed Changes
   ### Part A: RIP-1 — Control Plane 5.0 Core Modules (Track1 & Track2)
   6 core modules fully delivered to meet unified governance and Proxy Admin 
standardization requirements:
   
   | Module ID | Module Name | Key Deliverables |
   |-----------|-------------|------------------|
   | **BASE-01** | Baseline Parity | Complete migration of 11 categories of 
v2.1.0 capabilities; fix 7 known compatibility defects (#380, #381, #390, #401, 
#402, #403, #407) |
   | **ARCH-01** | Multi-Architecture Support | Realize SPI abstraction of 
`ClusterProvider`, `AdminClient`, `MetadataProvider`, compatible with 
v4-namesrv / v5-proxy-local / v5-proxy-cluster / cloud deployment modes, 
realize runtime dynamic switching, complete Proxy Admin gRPC protocol 
standardization required by Track2 |
   | **META-01** | Metadata Management | Namespace resource tree management; 
strong-type governance for 5 Topic types; LiteTopic prefix aggregation 
lifecycle management; reserve cloud vendor extension SPI |
   | **AUTH-01** | Full-Chain ACL | Dual compatible ACL 1.0(Remoting) / ACL 
2.0(gRPC), automatic hybrid mode identification, cluster-level encrypted 
credentials, configuration hot-reload, full-link standardized audit log |
   | **CLIENT-01** | Dual-Protocol Clients | Unified Remoting/gRPC client view, 
realize subscription, heartbeat and consumption progress diagnosis capabilities 
defined by Track2 Proxy Admin, compatible with current telemetry metrics and 
subsequent RIP-2 official view |
   | **METRICS-01** | Observability | Access Prometheus data source, build 
authenticated PromQL proxy, built-in 10+ monitoring dashboards and 20+ alert 
templates, support one-click Grafana export |
   
   ### Part B: RIP-3 — LLM Native Integration (Track3, 100% Reuse RIP-1 
Abstractions)
   > No independent new backend interfaces added. All LLM operation 
capabilities directly reuse RIP-1 metadata, client and authentication chain 
logic.
   
   #### Phase 1: `rmqctl` CLI
   - Cover 9 resource categories with 30 standardized O&M tools
   - kubectl-style multi-cluster context management, persistent configuration 
file `~/.rmqctl/config.yaml`
   - Support table/json/yaml multi-format output, unified error structure 
`{code, message, hint}`
   - Three-level risk interception consistent with Web console:
     - L1 read-only: execute directly without confirmation
     - L2 controllable modification: default dry-run preview, manual 
confirmation required for submission
     - L3 high-risk operation: blocked by default, must carry `--yes --force` 
to execute
   - Local audit log storage and encrypted credential management
   
   #### Phase 2: Standard MCP Server
   - One-to-one mapping with CLI commands, consistent tool schema without 
deviation
   - Dual transmission protocol: stdio for local AI tools (Claude Desktop, 
Cursor), SSE for web front-end
   - Built-in `rmq.capabilities` detection tool to help LLM identify cluster 
feature boundaries and avoid functional hallucinations
   - Built-in SecurityGate interceptor, uniformly execute three-level risk 
rules and dry-run logic
   - Reuse RIP-1 AUTH-01 full-link authentication for all tool calls
   
   #### Phase 3: Console Embedded LLM Chat
   - Three quick entry ways: homepage command bar, global `Cmd/Ctrl+K` shortcut 
pop-up, resource sidebar chat with automatic context injection
   - Backend MCP forwarding proxy, model API keys will not be exposed to 
front-end
   - Natural language execution results rendered with native page components, 
support one-click jump to resource details
   - Consistent security interception rules with CLI/MCP
   - Automatic downgrade to full-text search when no LLM provider configured
   - Support OpenAI, Azure OpenAI, AWS Bedrock, DeepSeek, Tongyi Qwen, Ollama 
six mainstream model vendors
   
   ---
   
   ## 4. Cross-RIP & Cross-Track Synergy Highlights
   1. **Unified authentication system**: Web, CLI and MCP share the same 
credential storage and permission judgment logic from AUTH-01.
   2. **Unified capability model**: All portals identify cluster feature set 
uniformly, automatically hide 5.0 and LLM exclusive functions for 4.0 clusters.
   3. **Unified observability pipeline**: CLI/MCP monitoring query and Web 
dashboard all reuse METRICS-01 PromQL proxy module.
   4. **Unified client diagnosis capability**: Client subscription and 
heartbeat query of CLI/MCP directly reuse CLIENT-01 aggregation logic defined 
by Track2.
   5. **Unified audit standard**: All write operations triggered by three 
portals generate audit logs with operation source tags.
   6. **Optional modular deployment**: CLI, MCP and LLM modules can be closed 
through configuration to adapt to compliance-sensitive environments.
   
   ---
   
   ## 5. Repository Structure (rocketmq-dashboard rip-1-control-plane-5.0 
branch)
   ```
   rocketmq-dashboard/
   ├── src/main/java/.../architecture/          # RIP-1 ARCH-01 SPI abstraction 
(Track2 core)
   │   └── impl/                                # V4/V5/Cloud 
multi-architecture implementation
   ├── src/main/java/.../service/               # RIP-1 six core business 
modules (Track1)
   ├── src/main/java/.../controller/            # Web REST interface
   ├── rocketmq-dashboard-app/                  # Studio Web main startup 
service
   ├── rocketmq-dashboard-cli/                  # RIP-3 Phase1 rmqctl CLI 
(Track3)
   ├── rocketmq-dashboard-mcp/                  # RIP-3 Phase2 MCP Server 
(Track3)
   ├── rocketmq-dashboard-llm/                  # RIP-3 Phase3 LLM adapter & 
MCP forwarding bridge
   ├── frontend-new/
   │   ├── src/components/llm/                  # Front-end LLM chat components
   │   └── src/pages/LlmSettings/               # LLM vendor configuration page
   ```
   
   ---
   
   ## 6. Testing & Verification
   | Module | Test Coverage | Status |
   |--------|---------------|--------|
   | RIP-1 Core (ARCH/META/AUTH/CLIENT/METRICS) | 40 test files, full coverage 
of core interface logic | ✅ All passed |
   | RIP-3 CLI (rmqctl) | 161 test cases, ~80% command coverage | ✅ All passed |
   | RIP-3 MCP Server | 101 test cases, ~81% tool schema coverage | ✅ All 
passed |
   | RIP-3 Console LLM Backend | 98 test cases covering interfaces, 
interceptors and model vendors | ✅ All passed |
   | End-to-end integration | Full process verification on 4.0 / 5.0-Local / 
5.0-Cluster | ✅ All passed |
   
   ---
   
   ## 7. Compatibility & Upgrade Notes
   1. **Full backward compatibility**: All v2.1.0 REST APIs and page functions 
remain intact, existing users upgrade without business transformation.
   2. **Automatic multi-architecture adaptation**: Identify cluster deployment 
mode automatically, dynamically display or hide version-exclusive functions.
   3. **Configurable optional modules**: CLI, MCP and LLM chat can be disabled 
via configuration for compliance requirements.
   4. **Smooth docking with RIP-2**: CLIENT-01 module compatible with current 
telemetry metrics, seamlessly switch to official Proxy Admin view after RIP-2 
release.
   
   ---
   
   ## 8. Acceptance Checklist
   ### RIP-1 (Track1 Unified Control + Track2 Proxy Admin Upgrade)
   - [x] ARCH-01: Three-layer SPI abstraction + multi-architecture 
implementation + runtime switching + standardized Proxy Admin gRPC protocol
   - [x] BASE-01: 100% v2.1.0 feature equivalence + repair of 7 historical 
compatibility defects
   - [x] META-01: Namespace, 5 types of Topic, LiteTopic management, cloud 
vendor SPI extension
   - [x] AUTH-01: Dual ACL adaptation, cluster encrypted credentials, 
configuration hot-reload, full-link audit
   - [x] CLIENT-01: Unified Remoting/gRPC client view, complete Proxy Admin 
runtime diagnosis capability
   - [x] METRICS-01: Unified Prometheus integration, built-in monitoring 
dashboards and alert templates
   
   ### RIP-3 (Track3 LLM Native Integration)
   - [x] CLI: 30 standardized O&M tools, multi-cluster context, structured 
output, three-level safety dry-run mechanism
   - [x] MCP Server: stdio/SSE dual transport, cluster capability detection, 
unified security interceptor
   - [x] Console LLM: multi-entry chat panel, back-end MCP proxy, structured UI 
rendering, consistent safety rules
   - [x] 100% reuse RIP-1 underlying logic, no redundant independent interfaces
   - [x] Automatic downgrade processing for 4.0 clusters and empty LLM 
configuration
   
   ---
   
   ### Related Work
   - **RIP-2 (Proxy Admin API)**: Corresponding specification implementation in 
the main repository `apache/rocketmq`. The CLIENT-01 module of this PR is 
compatible with both the current transition diagnosis view and the final 
standard view after RIP-2 release.
   


-- 
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]

Reply via email to