The issue occurs because the django-jalali-date package incorrectly detects 1404 instead of 1403 as a leap year because it is using the algorithmic method.
The package provides two methods for leap year calculation:
Algorithmic: Based on a fixed rule, which can sometimes be inaccurate.
Astronomical: More precise, following actual Jalali calendar rules.
To fix this, locate the JavaScript file of the package and modify the leap year calculation: and change the method from algorithmic to astronomical.