Turing constrain on observations of deterministic functionn

I have the following model

function f(x)
    x^2
end


@model function simplemodel()
    x ~ Normal(5, 1)
    y := f(x)
    return y
end

sample(simplemodel(), NUTS(), 50) |> histogram

As can be seen it involves the deterministic function f. Now lets say that I have some observation for y = f(x), such as y=3.

What I am trying to do is to constrain the model, like this simplemodel() | (y = 3.0,).

However the results are not as I would have expected. In fact this observation does not seem to change anything on the model. I would have expected similar results as when setting simplemodel() | (x = sqrt(3.0),), after which there is only one value for y. Instead nothing happens.

Follow up question: What if my observation of y is not a single value, but a value with an uncertainty, like y = 3 \pm 0.1 = \mathcal N(3,0.1)?