fix(i18n): sync config-flow translations with code, drop orphaned string#47
fix(i18n): sync config-flow translations with code, drop orphaned string#47jgus wants to merge 1 commit into
Conversation
The config flow has a model selector (CONF_MODEL) but en/fr only translated host+port and the step description omitted the model. Add the model label (Model / Modèle) and align the description. Also remove the orphaned entity.binary_sensor.charging string — the only binary sensor is 'docked' (charging is a sensor, not a binary_sensor).
Greptile SummaryThis PR syncs the three translation files with the integration's actual entities and config-flow schema — adding the missing
Confidence Score: 5/5Safe to merge — all changes are translation file corrections with no runtime code affected. The No files require special attention. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
CF["config_flow.py\nSTEP_USER_DATA_SCHEMA"] -->|"host, port, model"| SJ["strings.json\nconfig.step.user.data\nhost / port / model ✅"]
SJ -->|"content-identical"| EN["translations/en.json\nconfig.step.user.data\nhost / port / model ✅"]
SJ -->|"key-identical"| FR["translations/fr.json\nconfig.step.user.data\nhost / port / Modèle ✅"]
BP["binary_sensor.py\nNarwalDockedSensor\ntranslation_key = docked"] --> BS_DOCKED["entity.binary_sensor.docked ✅"]
BS_CHARGING["entity.binary_sensor.charging\n(orphaned — removed)"] -. "no entity" .-> X["❌ deleted from strings.json"]
SP["sensor.py"] --> SS_CS["entity.sensor.charging_state ✅"]
Reviews (1): Last reviewed commit: "fix(i18n): sync config-flow translations..." | Re-trigger Greptile |
Summary
The config flow's model selector wasn't translated, and
strings.jsoncarried aleftover translation key for an entity that doesn't exist. This aligns the
translation files with the code.
Changes
translations/en.json,translations/fr.json: add the missingmodelfield label (Model / Modèle) for the config-flow step, and update the step
description to match
strings.json(it now mentions selecting the model).strings.json: remove the orphanedentity.binary_sensor.chargingkey.The only binary sensor is
docked; charging is exposed as a regular sensor(
sensor.charging_state, translation keycharging_state), so this keymatched no entity.
Result
strings.json,translations/en.json, andtranslations/fr.jsonnow share anidentical key set, and
strings.json/en.jsonare content-identical for English— so the model selector is labelled in both English and French, and Hassfest sees
consistent translations.
Testing
pytest tests/— 168 passed.