I can go deeper on this part:
I wonder why a score of +4.82 is a blunder while a score of +0.62 is "decent"
As others have mentioned, CP scores being positive or negative reflect the computer eval being in favor of white or black respectively, with ex. +3 being an advantage the equivalent of 3 pawns for white.
However, you may come to notice that the "judgement" on the move (
blunder are the standard ones, with other chess programs defining others, like
decent) is not always the same even if the difference in CP values—the CP loss or CPL—is the same. For example, if your move as white takes the CP score from
-200, the move may be called a blunder, but if it takes you from
-800, the move may be called an inaccuracy.
The reason for this is because judgements are made based on win probability, as @SecretAgentMan's answer alludes to. I've been working on interpreting the Lichess source code lately, and you can actually see for yourself here and here the source code that "judges" a move. Your question was not specific to Lichess, but LucasR likely does something quite similar internally. The Lichess algorithm goes like this:
a. If either
score is a mate score (ex.
#-5, black mates in 5), set its
+100 if it's mate for white, or
-100 if it's mate for black (not applicable)
scores by 100 to get
cp values (ex.
c. Cap both
cps to be within the range
[-1000, 1000] (already done)
cp_after using the following formula. As of a few weeks ago, Lichess updated to use this formula, which was determined experimentally by analyzing user games:
2 / (1 + exp(-0.00368208 * cp.value)) - 1 (ex. ~
-0.3684 -> ~
winning_chances to be within in the range
[-1, 1] (already done)
delta, the loss in
wc) with respect to
delta = wc_before - wc_after; or for
delta = wc_after - wc_before (ex. ~
Judge the move. If
delta >= 0.3, the move is a
delta >= 0.2, it's a
delta >= 0.1, it's an
inaccuracy, else the move gets no judgement. (Ex.
0.4419 >= 0.3, so this move was a
Hope this is insightful even though it might not address the main question you were asking.
Further reading: Here's a OneDrive link to a spreadsheet where I manually calculate average CPL, a metric shown by Lichess after analyzing a game. It was part of some personal investigation into a weird bug in their code.