unbridled-41 commented on PR #4949:
URL: 
https://github.com/apache/rocketmq-dashboard/pull/4949#issuecomment-5777450999

   Evidence-chain audit, re-executed from a clean worktree of this branch 
(`4515d639`).
   
   **Citations re-read with `grep -n` against `1ef5d860`**
   
   `schema.sql` — user table `:18-19`, session `:32-33`, outbox `:375-376`; 
`RmqAlertNotificationOutboxMapper.java:28-29`; 
`NotificationOutboxService.java:192,321,367`; 
`RmqAlertNotificationOutbox.java:24-30` (no `gmtCreate` property); 
`AuthService.java:283,306-313,339,359-362,393-398,465-472,620-621`; 
`UserManagement.tsx:81,103-104,398,458`; `deploy/docker-compose.yml:13,86`. All 
present as described; the one wrong citation (`schema.sql:24-25` for the user 
table) was corrected to `:18-19` before this audit.
   
   **Test gap found and closed** (`test(alert)` commit `4515d639`)
   
   Only the manual-retry wrapper was asserted, while the fix stamps 
`gmt_modified` on four wrapper write paths. The delivered, retry and 
defer-until-silence paths had a bare `verify(mapper).update(any(), any())` and 
nothing else, so dropping the stamp from any of them would have taken the 
database's clock again with no test failing — and those are the paths the 
retention sweep reads. The four existing tests that already drove those paths 
now assert their set clause, via one helper. Pre-fix, each of them fails:
   
   ```
   defersDeliveryUntilTheActiveSilenceEndsTest
   Expecting actual:
     
"status=#{...},next_attempt_at=#{...},sending_started_at=#{...},claim_token=#{...}"
   to contain: "gmt_modified="
   
   dispatchesDingTalkDeliveryAndMarksTheOutboxRowDeliveredTest / 
renewsClaimWhileEmailDeliveryIsStillInFlightTest
   Expecting actual:
     
"status=#{...},delivered_at=#{...},sending_started_at=#{...},last_error=#{...},claim_token=#{...}"
   to contain: "gmt_modified="
   
   retriesDingTalkDeliveryWhenTheRobotRejectsThePayloadTest   (same)
   ```
   
   Six failures and one error in total on the reverted production files, which 
is every stamped path plus the two earlier tests.
   
   **Commands re-run**
   
   ```
   cd server && mvn -o test 
-Dtest='NotificationOutboxServiceTest,AlertSilenceServiceTest,MybatisPlusAlertRepositoryTest,SystemAlertControllerTest,AlertServiceTest,SuppressionServiceTest,NativeAlertProcessorTest,AuthServiceDatabaseTest,AuthServiceTest,AuthControllerTest'
   NotificationOutboxServiceTest 29/29, AlertServiceTest 83/83, 
AuthServiceDatabaseTest 32/32, AuthServiceTest 16/16,
   AuthControllerTest 9/9, SystemAlertControllerTest 11/11, 
NativeAlertProcessorTest 23/23,
   AlertSilenceServiceTest 12/12, MybatisPlusAlertRepositoryTest 16/16   → 231 
tests, 0 failures
   
   cd server && mvn -o test
   Tests run: 3156, Failures: 0, Errors: 17, Skipped: 0
   ```
   
   The 17 errors are the environment baseline (no MySQL: `Communications link 
failure` on `ApplicationContext` load), present on `origin/rocketmq-studio` too.
   
   **Coverage statement**
   
   All four wrapper write paths plus the two raw statements now fail a named 
test if the stamp is removed, and the insert halves are pinned by the enqueue, 
session and user tests. `rmq_studio_session.gmt_modified` stays unstamped on 
purpose — nothing reads it — which the description states so the omission is 
not read as an oversight.
   


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