edk12564 opened a new pull request, #5744:
URL: https://github.com/apache/fineract/pull/5744

   JIRA: FINERACT-2501
   
   Description
   According to 
[FINERACT-2501](https://issues.apache.org/jira/browse/FINERACT-2501), 
deduplication numbers in Feign client methods are unstable. More on this below.
   
   The Problem
   
   Fineract uses Swagger/OpenAPI to auto-generate Feign client methods from our 
endpoints. Since many endpoints share the same method name (e.g., 
retrieveAll()), Swagger appends a deduplication number to create unique 
operationIds. For example, retrieveAll35() for 
SavingsProductsApiResource.retrieveAll().
   
   These deduplication numbers are unstable. When a new endpoint with a 
duplicate name is added, the numbers can shift. In my testing, after adding a 
new dummy retrieveAll() endpoint, retrieveAll35() no longer pointed to 
SavingsProductsApiResource. It actually shifted to retrieveAll36().
   
   Since we hardcode these deduplicated method names in our Cucumber tests, any 
shift will silently call the wrong API, breaking tests.
   
   Changes
   
   Added operationIds to Accounting, Products, SMS, Transfers, Reporting, 
Tellers and Cashiers, Progressive Loans, Groups, Centers and Shares domains.
   
   Does not overlap with @Ambika-Sony on Savings, Loans, Infrastructure, 
Organization, User Management. Completed my half of operationId additions. So 
far ~50% of all endpoints in Fineract have operationIds. 
   
   Results
   
   Compilation/Build are successful.
   
   <img width="849" height="18" alt="Screenshot 2026-04-06 at 7 56 36 PM" 
src="https://github.com/user-attachments/assets/c3e36b4d-45c4-4277-b5ef-2ecfcce6ff7d";
 />
   <img width="1245" height="189" alt="Screenshot 2026-04-06 at 7 56 05 PM" 
src="https://github.com/user-attachments/assets/a5ec5bb5-a70b-4fe0-9e49-fd66b8ed9411";
 />
   
   ## Checklist
   
   Please make sure these boxes are checked before submitting your pull request 
- thanks!
   
   - [ ] Write the commit message as per [our 
guidelines](https://github.com/apache/fineract/blob/develop/CONTRIBUTING.md#pull-requests)
   - [ ] Acknowledge that we will not review PRs that are not passing the build 
_("green")_ - it is your responsibility to get a proposed PR to pass the build, 
not primarily the project's maintainers.
   - [ ] Create/update [unit or integration 
tests](https://fineract.apache.org/docs/current/#_testing) for verifying the 
changes made.
   - [ ] Follow our [coding 
conventions](https://cwiki.apache.org/confluence/display/FINERACT/Coding+Conventions).
   - [ ] Add required Swagger annotation and update API documentation at 
fineract-provider/src/main/resources/static/legacy-docs/apiLive.htm with 
details of any API changes
   - [ ] [This PR must not be a "code 
dump"](https://cwiki.apache.org/confluence/display/FINERACT/Pull+Request+Size+Limit).
 Large changes can be made in a branch, with assistance. Ask for help on the 
[developer mailing list](https://fineract.apache.org/#contribute).
   
   Your assigned reviewer(s) will follow our [guidelines for code 
reviews](https://cwiki.apache.org/confluence/display/FINERACT/Code+Review+Guide).
   


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