rymghosn commented on PR #6282:
URL: https://github.com/apache/fineract/pull/6282#issuecomment-5992513142

   
   @adamsaghy Good question: they overlap, but this isn't a duplicate. I've 
reworked the two so they complement each other instead of contradicting each 
other:
   
   - **#6255** handles a user who holds only `<TASK>_CHECKER` and calls the 
action endpoint with **no** matching pending entry. They get a 403 telling them 
to approve a pending entry instead of the generic "User has no authority" 
message. It also stops a maker from resubmitting an identical pending change.
   - **#6282 (this PR)** handles the same checker-only user when the 
**identical** maker submission is already pending. The call approves that entry 
through the normal `approveEntry` path, with the same checker-permission and 
same-maker rules.
   
   Both use the same matching key: action, entity, resource id, sub-resource id 
and request payload, status `AWAITING_APPROVAL`. Because of the payload match, 
a checker can only approve exactly the change they submitted. Commands without 
a resource id are never matched.
   
   I've rebased onto the latest `develop`, narrowed the lookup to maker-checker 
enabled tasks, and dropped the fallback that guessed the resource from 
loan/savings/client/group ids. I also added an integration test in 
`MakercheckerTest`: a maker's activation is queued, the checker-only user's 
activation with a different date is refused, and the identical activation 
approves it. The description now explains how this PR relates to #6255.
   
   
   Could you please re-review? Thanks!
   


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