Um noch mal etwas dazu auszuholen...
openHAB ist ja schon eine Weile verfügbar (ich nutze es seit Version 1.0, das war 2012). Damals gab es (außer die Bedienoberfläche) keine UI, alles war per Textkonfiguration einzustellen. um Bindings zu installieren, verschob man die *.jar Datei in den addons Ordner.
Diese Vorgehensweise war simpel und für Leute, die im Kaufhaus vor einem VC-20 gestanden haben, um sich wie Bolle zu freuen, dass der eigene Name über den Monitor hüpfte

auch völlig verständlich.
Mit openHAB2 wollten die Entwickler aber eine "für Ungeübte/Nicht-ITler" geeignete Lösung schaffen, also musste eine UI zur Administration her und am besten sollte, wo möglich, alles "ganz ohne Konfiguration" vollautomatisch funktionieren. Und in Teilen hat das auch geklappt.
Die Form der Konfiguration in Textdateien war aber für die Autokonfiguration denkbar unpraktisch, zu viele komplexe semantische Regeln. Unterm Strich kostet sowas nur viel Rechenzeit, sowohl beim Schreiben als auch beim Lesen. Deshalb baut openHAB das Datenmodell intern mittels JSON auf. Wenn man in den Textdateien Änderungen vornimmt, so erkennt openHAB die Änderung und liest die Daten neu ein, da das jeweils nur einmal beim Start und/oder bei Änderungen passiert, ist der Zeitverlust hier nicht kritisch.
JSON an sich ist eigentlich eine ganz nette Form, die Daten zu bearbeiten, aber auch nicht so wirklich anwenderfreundlich... also hat man sich mit openHAB3 entschlossen, in der UI das yaml Format zu nutzen (das ist sehr dicht an JSON dran, es ist trivial, zwischen beiden Formaten zu konvertieren)
Um aber nicht alle alten Hasen vor den Kopf zu stoßen. gibt es die ursprüngliche Form der Konfiguration weiterhin.
Ich könnte mir vorstellen, dass man irgendwann dahin kommt, das alte Format vollständig mit yaml zu ersetzen, aber noch ist davon nichts zu lesen
Die strikte Trennung der beiden Konfigurationsarten bereitet praktisch allen neuen Anwendern Kopfzerbrechen, auch, weil lange Zeit die Doku fast überall das Textformat zeigte. Das findet momentan aber ein großer Umbruch statt, nachdem rlkoshak (engl. Forum) endlich ein paar Mitstreiter gefunden hat, die mit helfen, die Doku auf Vordermann zu bringen.
Ganz grundsätzlich kann man sich aber merken: openHAB wird niemals von sich aus im Dateisystem im Zweig $OPENHAB_CONF etwas schreiben (und bis auf wenige Ausnahmen sollte man das auch nicht erzwingen - z.B. ein Kamerabild über Jetty - den openHAB Webserver - ausliefern wäre so eine Ausnahme)
openHAB wird also sämltliche Konfigurationen unterhalb $OPENHAB_CONF beim Start und bei Änderungen in den internen Speicher einlesen aber als nur lesbar markieren. Umgekehrt kann in $OPENHAB_CONF nichts auftauchen, was über die UI konfiguriert wurde. Das mag auf den ersten Blick umständlich/verwirrend wirken, ist aber ein notwendiger Kompromiss, um zumindest hier abwärtskompatibel zu bleiben.
openHAB4.3.3 stable in einem Debian-Container (bookworm) (Proxmox 8.3.5, LXC), mit openHABian eingerichtet