This happened to me today (found it by mistake of course).
I was running some practice and eventually ended up with two hearts out of three left. At one point, I had a minor spelling mistake, which I corrected. At this point I was awarded half a heart (ending up the round with 2.5 hearts instead of 1.5).
I'm pretty sure this was not have been the desired behavior...hence why I'm raising this point.
Why I think this is an issue: One can easily do these minor mistakes purposefully to fill up hearts.
Sounds like you are in a test group! The way the hearts should be working for you is like this:
If you make a mistake (one that isn't multiple choice or a listen-and-type-what-you-hear) you have the option to correct your mistake to get back half of the heart you just lost.
If correcting a typo restores more than 1/2 heart, or gives you extra heart bits when you hadn't lost any to begin with, I suggest that you move your post to the Troubleshooting forum. You'll find instructions for how to do that in LauraGjovaag's link, under Where to Discuss What on Duolingo. :)
Also, Duolingo is programmed to ignore some typos but not others. I'm a little foggy on the specifics. But, If your typo contains most of the right letters and doesn't spell a different word, it will probably be accepted.
(If someone wants to fill in the other specifics that I'm forgetting, please do. :)
Looking at the discussion between uuf6429, and LauraGjovaag it looks like there is a glitch for those of us in the test group and it's restoring half a heart when no heart was lost. It's never done that for me before, but I'll go try it out.
[Edit: I just tried it on every question in Basics 1 and it didn't happen for me.]
A test (beta) group is a group of users who are selected to try a new feature or a different version of something on Duolingo. There are often several different test groups happening at the same time. After collecting data, Duolingo decides whether or not it wants to adopt those features for all of the users.
I generally think of Duolingo as one giant test group with specialized sub-groups. I've never seen this place stand still for very long. I blame in on having a very innovative group of founders who never sit still for long and who surround themselves with innovative staff. :)
There are drawbacks, like you've said.
Now that I've been here a little while, when something seems off to me, I automatically start checking the discussions to see if other people have mentioned experiencing the same thing. If not, I check in at the Troubleshooting forum.