Hello Fineract developers, I found a separate reproducible calculation defect in DefaultPaymentPeriodsInOneYearCalculator.calculatePortionOfRepaymentPeriodInterestChargingGrace(). This is independent of FINERACT-2809.
Minimal case: repaymentPeriodStartDate = 2026-01-01 scheduledDueDate = 2026-01-15 interestChargedFromLocalDate = 2026-01-08 frequency = WEEKS repaidEvery = 2 MathContext = DECIMAL64 Actual grace fraction: 2 Expected: 7 / 14 = 0.5 The same dates represented as DAYS with repaidEvery = 14 produce 98. The helper multiplies by repaidEvery where a fraction of the full interval requires division. Full report, proposed patch and regression test: https://gist.github.com/kadyrbekovhamit-cyber/757b38a445df3819c819a343167c2c45 Verified against develop e4474a0f4a4c65a75e7758e47db1fd277e5fcfef on JDK 25 through the project's Gradle build. Six of nine tests fail on the original calculator; all nine pass with the correction. The tests call the actual public calculator without mocked date or interval helpers. Spotless and main/test Checkstyle also pass. The affected source file is identical in tag 1.15.0. There is a call site in AbstractCumulativeLoanScheduleGenerator, but I have not yet demonstrated a specific end-to-end API loan schedule or customer monetary impact. Could you confirm whether this should receive a separate Jira ticket, or point me to an existing one? I can then prepare the conforming PR. Best regards, Xamit Kadirbekov GERO Research
