pilichoumao opened a new issue, #6610:
URL: https://github.com/apache/rocketmq-dashboard/issues/6610
### Before Creating the Bug Report
- [x] Searched open issues and PRs for mock alert import envelope limits.
- [x] This defect is in RocketMQ Studio.
- [x] Reproduced on current rocketmq-studio sources.
### Studio Version
rocketmq-studio at 779b8c0e7aed2396d3cc72743dcd544ea48e9ae6, web demo/mock
mode.
### Runtime Environment
Ubuntu 24.04 ECS; Node 20.20.2, Vitest/jsdom, actual opsService and
AlertsPage sources.
### Connected RocketMQ Cluster
None: only demo/mock mode is affected. The real backend already enforces the
limit.
### Describe the Bug
The mock importAlertRulesTransfer service directly maps and appends the
imported rules. Empty documents report successful import of zero rules and
documents with 201 rules are accepted. The backend envelope requires version 1,
the current domain, an array and 1..200 rules. AlertsPage checks
version/domain/array but not the count, so its file upload reaches this
mismatch.
### Steps to Reproduce
1. Enable Studio demo mode and open Cluster Alerts.
2. Upload {"version":1,"domain":"CLUSTER","rules":[]}.
3. Observe successful import of zero rules.
4. Upload a valid envelope with 201 rules; the mock inventory accepts them.
### What Did You Expect to See?
Reject unsupported envelopes and rule counts outside 1..200 before changing
inventory, consistently with the server. Keep real API delegation and
legitimate 1/200 rule imports unchanged.
### What Did You See Instead?
ECS service regressions: baseline 2 failures/16 passes, prototype 18 passes.
Two regressions through actual AlertsPage file upload and the actual mock
service failed on baseline and passed with the envelope guard. This does not
claim a bypass in the production backend.
### Additional Context
Proposed small bug fix: validate version/domain/array/count at the mock
service boundary before constructing or appending rows; cover invalid
envelopes, unchanged inventory, 1/200 positive boundaries, detached returned
rows, real API delegation and the file-upload failure path. Use the existing
generic import failure UI; no new UI strings or dependencies.
--
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]