MQTT Woes using configuration.yaml

In the distant past, I had some tasmota devices reporting via MQTT. Several upgrades later, nothing of this is working. I deduce that auto configuration is not working, so I added a manual configuration:

mqtt:
  sensor:
    -  name: Tank
       state_topic: "tele/tank/SENSOR"
       value_template: "{{ value_json.DS18B20-2.Temperature }}"

I can see messages like this in the MQTT integration, and I have Mosquito as an add-on.

Message 26 received on tele/tank/SENSOR at 18:07:
{
    "Time": "2024-07-13T18:07:26",
    "DS18B20-1": {
        "Id": "0116132051EE",
        "Temperature": 31.5
    },
    "DS18B20-2": {
        "Id": "031657FC22FF",
        "Temperature": 54.2
    },
    "TempUnit": "C"
}

How do I go about debugging this?

Always use bracket notation:

value_template: "{{ value_json['DS18B20-2']['Temperature'] }}"

Your version is being parsed as a subtraction operation. There will probably be an error in the logs.

I understand you thought the problem was in the MQTT — but you can test templates in the template editor: