iloveeyjafjalla opened a new issue, #6759:
URL: https://github.com/apache/rocketmq-dashboard/issues/6759

   ### Studio Version
   
   branch: `rocketmq-studio` @ `a92c2314` (the revision this was verified on)
   
   ### Runtime Environment
   
   The repository's own stack (backend on 8888 against its MySQL). No RocketMQ 
cluster involved: the rows live in Studio's own audit table.
   
   ### Describe the Bug
   
   `GET /api/audit-logs` puts two keys on every entry that the feed's contract 
does not have, both always `null`:
   
   ```json
   {
     "id": 195,
     "gmtCreate": null,
     "gmtModified": null,
     "timestamp": "2026-10-15T21:45:27",
     "operator": "system",
     "operationType": "DELETE_ALERT_RULE",
     "resourceType": "ALERT_RULE",
     "target": "11",
     "clusterId": null,
     "detail": null,
     "result": "SUCCESS",
     "errorMessage": null
   }
   ```
   
   `docs/api-spec.md` §13.1 lists the response as `AuditRecord` with exactly 
ten fields — `id`, `timestamp`, `operator`, `operationType`, `resourceType`, 
`target`, `clusterId`, `detail`, `result`, `errorMessage` — and the console 
reads none of the two extra ones (`grep -rn "gmtCreate\|gmtModified" 
web/src/pages/ops/audit.tsx web/src/pages/ops/AuditRiskInsights.tsx` returns 
nothing).
   
   ### Root Cause
   
   `AuditRecordVO extends BaseEntity`, and `BaseEntity` declares `id`, 
`gmtCreate`, `gmtModified`. The audit query fills the ten fields the feed 
renders and never selects the two bookkeeping columns, so Lombok's accessors 
serialize them as an always-null pair. `id` is part of the contract; the two 
stamps are not.
   
   A client that validates the response against the documented shape (or treats 
a `null` creation time as "unknown") sees a field that can never carry a value 
on this endpoint.
   
   ### Expected Behavior
   
   The audit feed serializes the ten documented fields and nothing else. The 
`gmtCreate` / `gmtModified` columns stay in the table for the views that do 
populate them; only this view's wire shape changes.
   


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