Perhaps I'd call it "attention to the individual". Though "mercy" might also be not too far from the mark.
I think that what you are doing is fine, helping struggling students along. This is based on a general philosophy that you might consider adopting and also on a few ethical principles:
First the philosophy. I feel, when teaching, that I am responsible for every student. Not just the best, or not just the average, but every student. I can't control student actions, of course, but I can make it possible for every student to succeed - to their own standard - by adopting some practices that derive from the principles.
But, I can't neglect anyone. I can't teach to the level of the uninterested and ignore the top students, nor the opposite. I need, in fact, to find a way to challenge everyone and to assist them in meeting the challenge. No "sink or swim" in my classes, and I hope no "boring boring boring" either. Any student willing to put in effort (that isn't everyone, of course) can succeed, though perhaps not in exactly the same way.
Some ideas to guide teaching:
Every student is different. They learn differently and they need different kinds of support. One lecture does not fit all.
I'm not perfect. I make some mistakes. Sometimes I don't state things perfectly, in lecture or on exams. Sometimes I grade more harshly or leniently than is really good.
You can't assume that your students conform to some hypothetical statistical distribution. They are but a small sample from a large population and small samples can differ widely from the general case. This is especially true given the selection mechanism that gets students to your course in the first place. It isn't random selection.
You can't assume that all the students know how to learn. Some of the quite good students hit a wall when they hit their natural ability level, never having had to work very hard. Two lessons I needed to teach were how to take notes effectively, capturing the key ideas, and asking questions.
Take the fundamental position that you are a teacher, not a grader. Grading is not the core of your job.
And some ethical principles:
I must treat every student fairly. But that doesn't mean that I must treat them identically.
The grade assigned to a student should depend on the work of that student only and should not be influenced or affected by the grades given to others.
It must be possible, if not easy, for every student to succeed.
Analysis of the question at hand.
The OP's willingness to grade some students more leniently doesn't seem to me to be against the philosophy or the ethical rules as above. No other student is negatively impacted if a weaker student gets a slightly higher grade than the rubric suggests. But this rules out "grading on the curve" which is competitive grading, where one student must suffer if another benefits. I find all forms of competitive grading unethical. Not that all competition is bad, and I often encouraged competition between teams, but it didn't affect grading.
I don't find the OP's "leniency" to be ideal, however. But some of the practices described below have somewhat the same effect. If a student wants to put in the work, they can succeed, so no grade is a "gift" in the sense that it is unearned.
Some other strange, but ethical practices:
I could, in principle, make a separate contract with every student and every student could have their own unique tasks. This is hard to arrange and grade, of course, but is exactly what happens when "grades" are given for theses and dissertations. The difficulty of the tasks might be part of the negotiation. The student needs to know at the start, of course, what all the conditions are in order to preserve fairness.
Teamwork needs to fit the ethical principles. The main issue is avoiding free-riders, but also dominant personalities who refuse to let others contribute. My solution to that was to use peer evaluation, which is not peer grading. Every student in a team provided a private report detailing their own main contribution and the main contributions of at least some of their teammates. I required positive contributions, not grousing. For a pair, an evaluation of their teammate. For a large team, perhaps evaluations of their three most productive teammates. You learn something from these and it can be very unexpected. I've had good teams praise one member that I didn't think was contributing much. But their work took place outside my view, of course.
Some practices I found useful:
Cumulative grading: The course is "worth" 1000 points. Those pants are distributed over various activities such as projects and exams. Each activity has a known number of points (max) that will contribute to the final total grade. The breaks between grades is known in advance, say 900 points = A, etc. But the implication is that if you get 800 points you do "no worse" than B and might get a bit higher (B+) depending on other factors. But every student knows their worst case grade. Students got feedback on their work, mostly pointing out where it was lacking in some way. Note that a student could decide that all they wanted was a C and essentially abandon future work once they had passed that milestone. I don't think that is an advantage here, but some students had different priorities than a high grade in my course.
Rework for regrading. If an assignment is worth 200 points and a student earns less than that in my initial grading. They can redo the assignment and I'll regrade it. They can earn back up to 90% of the lost points, but not all. So, if they get 180 on the first grading, rework will get them back up to 18 points. To make this reasonable for the grader, students turn in prior work with the new and mark changes (highlighter) in the new work. Note that the high performing students had the same opportunity for rework, but seldom found it necessary. Late work was covered under this rule, so work turned in late can still earn 90% of the total for the assignment.
Exams were a bit deprecated. The usual breakdown was about 30% of the grade based on exams and the rest on projects. Late exams, etc. was never an issue. Only the final could have a serious negative effect on the grade. Some students who had very high marks prior to the final might be excused from it, receiving the grade earned up to that point.
Different exercises for different students. On a couple of occasions, not frequently, I'd offer two versions of an assignment, worth the same points. One was much harder than the other. Students could choose which to do prior to starting. I'd warn them about the difficulty difference and suggest that some of them would likely be bored with the easy one. Unsurprisingly, the really good students would accept the challenge. Example: Build a binary search tree or build a B-tree both with various requirements (insert, delete, find).
Fuzzy boundaries between grades. Generally at the end of the course, if 700 was required for a C grade then a student earning 695 (or thereabouts) would get the higher grade. (Recognizes that my grading isn't perfect.)
Final sanity check. At the end of the course I look at the distribution. If it matches what my intuition tells me that the class as a whole learned and earned, then I let it stand. I would adjust upwards a bit if it felt that I'd been too harsh overall.
Notes:
The scale of my courses was reasonable. I seldom had more than 30 in a class.
I provided round the clock communication systems so that students could ask questions whenever they arose. Every other student saw all questions and all answers. A simple email list works, with the entire class subscribed.
I was trusted by the administration, and had tenure. Complaints about me were more "too much work" rather than "unfair grading".
I may return to this as thoughts arise, but it is done, for now.