ayushcodes27 opened a new pull request, #211:
URL: https://github.com/apache/fineract-consumer-facing/pull/211

   ## What and why
   
   Preparatory refactoring for #114 as discussed with @aman-mittal:
   - Extracts direct `ClientApi`, `SavingsAccountApi`, and 
`AccountTransfersApi` calls out of `TransfersCommandServiceImpl` into a narrow 
gateway interface and implementation (`TransferFineractClient` / 
`TransferFineractClientImpl`) under `consumer.infrastructure`.
   - Preserves exact `FineractCaller` error handling and status code 
translation.
   - Adds a lightweight `getLoanPayoff(Long loanId)` method on 
`TransferFineractClient` to retrieve payoff amounts for active loans (required 
for #114).
   - Automatically shrinks the ArchUnit baseline store by 10 lines 
(`TransfersCommandServiceImpl` no longer depends directly on generated Feign 
clients).
   
   Relates to #114
   
   ## Verification
   
   - Ran unit test suite: `TransferFineractClientImplTest` (9/9 passed).
   - Ran unit test suite: `TransfersCommandServiceImplTest` (21/21 passed).
   - Ran architecture verification: `CodingConventionsArchitectureTest`, 
`CqrsArchitectureTest`, `LayeringArchitectureTest`, `ModulithArchitectureTest`, 
`NamingArchitectureTest`, `TestTierArchitectureTest` (all passed).
   - Verified ArchUnit shrink-only ratchet automatically removed 10 violation 
entries from 
`feature-classes-do-not-depend-on-the-generated-fineract-feign-clients-fd283b04.txt`.
   
   ## Screenshots
   
   Not applicable (backend refactor).
   
   ## Checklist
   
   - [x] I did not hand-edit generated files under 
`frontend/src/openapi-client/`.
   - [x] Backend code follows the feature and CQRS layout in 
[AGENTS.md](AGENTS.md#backend-conventions-consumer) (command and query sides, 
module boundaries); frontend code goes through the adapters in 
`frontend/src/app/core/adapters/`.
   - [x] I did not add entries to a lint or architecture baseline 
(suppressions, frozen violations) to get the build passing.
   - [x] User-facing strings use translation keys.
   - [x] I added or updated tests appropriate to this change, or explained why 
tests were not needed.
   - [x] UI workflow changes include suitable e2e coverage, including 
real-backend testing where relevant.
   - [x] Commits are signed — see [Signing your 
commits](CONTRIBUTING.md#signing-your-commits) in CONTRIBUTING.md.
   - [x] I followed the [AI-assisted contributions 
guidance](CONTRIBUTING.md#ai-assisted-contributions).
   - [x] If this adds a feature or changes what a consumer can see or do, I 
raised it on 
[[email protected]](https://lists.apache.org/[email protected])
 first, or it is a bug fix, refactor or test change, where that does not apply.
   


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