Prevent Object Mutation - correct solution with a console error message. WHY?

Tell us what’s happening:

A very confusing behavior in the challenge. After following the instruction on what to do, the console displayed the following error message:

TypeError: Cannot assign to read only property 'PI' of object '#<Object>'

I wasted quite sometime trying to figure out why, until I found in another forum post that the the code will pass as it is, in spite of the console error message.

I would really appreciate it if anyone can help and explain why this is so. Is this a challenge test error that need to be corrected? Or is it something else.

Your code so far

function freezeObj() {
  "use strict";
  const MATH_CONSTANTS = {
    PI: 3.14
  // change code below this line

  // change code above this line
  try {
  } catch( ex ) {
const PI = freezeObj();

Your browser information:

User Agent is: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_14_5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/75.0.3770.100 Safari/537.36.

Link to the challenge:

After playing around try portion of the code. I now realize that the error message is actually good – the the code in try failed to change the now immutable PI.

Those who will be doing this challenge for the first time (as I would have had), would really appreciate an explanatory statement within the instruction.