UX-08 2c review: unit settings anchor to inverters, plainer texts
- messages.setting() for one inverter in the list reads “Inverter rating” for inverter-b (inverters.max_w), so the config panel files per-unit reasons under `inverters`, where the value is changed. - The tariff card and plausibility reasons name “Distribution, levies and VAT” (price_taxes_eur_kwh) again. - The wrong-direction reasons say "safety stop", the sign_disagree_w option says what it protects, and the roster, price-entity, integrator_max_w and capacity_kwh texts read more plainly. - NL: stuurprint -> stuurmodule, "De piekbeperking". Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -1653,7 +1653,7 @@ check("a flat setpoint_entity left set BESIDE a declared roster is refused. It "
|
||||
"names an actuator the roster does not, so nothing would ever write it - "
|
||||
"a site running quietly smaller than its own configuration, which is the "
|
||||
"'silently a different config' outcome this card ranks below a refusal",
|
||||
_why(_p_flat, "but the “Inverter list” (inverters) has"))
|
||||
_why(_p_flat, "but the “Inverter list” (inverters) is also filled in"))
|
||||
_p_dup = validate_startup_config(_opts(setpoint_entity="", inverters=[
|
||||
dict(name="twin", setpoint_entity="number.sp_a", max_w=A_RATING),
|
||||
dict(name="twin", setpoint_entity="number.sp_b",
|
||||
@@ -1739,8 +1739,8 @@ check("the fixture actually desynchronises the two lists, or the two checks "
|
||||
check("⚠️ RULE 5 NAMES THE UNIT THE NUMBER CAME OFF. The weakest cap is "
|
||||
"inverter-c's 1000 W; it sits at caps index 1, and `_unit_label(opts, 1)` "
|
||||
"is inverter-B. The refusal says inverter-c",
|
||||
_why(_p_skew, "(max_w) for inverter-c is 1000 W")
|
||||
and not _why(_p_skew, "(max_w) for inverter-b is 1000 W"))
|
||||
_why(_p_skew, "for inverter-c (inverters.max_w) is 1000 W")
|
||||
and not _why(_p_skew, "for inverter-b (inverters.max_w) is 1000 W"))
|
||||
# ⚠️ MAINT-05 MOVED RULE 6's SUBJECT, AND THIS CHECK MOVED WITH IT. It used to
|
||||
# assert the refusal named inverter-b, because rule 6 graded the FIRST entry
|
||||
# with a usable cap - `Controller.maint_unit` was `inverters[0]` and the shaping
|
||||
@@ -1754,15 +1754,15 @@ check("⚠️ RULE 6 TOO, AND SINCE MAINT-05 IT IS THE WEAKEST PACK IT NAMES. "
|
||||
"inverter-c's 1000 W sits at caps index 1, and `_unit_label(opts, 1)` is "
|
||||
"inverter-B - so a caps index leaking into a roster index would say "
|
||||
"inverter-b here. The refusal says inverter-c, with inverter-c's number",
|
||||
_why(_p_skew, "(maintenance_charge_w) is 3000 W, but the “Inverter rating” (max_w) for "
|
||||
"inverter-c is 1000 W")
|
||||
and not _why(_p_skew, "(maintenance_charge_w) is 3000 W, but the “Inverter rating” (max_w) for "
|
||||
_why(_p_skew, "(maintenance_charge_w) is 3000 W, but the “Inverter rating” for "
|
||||
"inverter-c (inverters.max_w) is 1000 W")
|
||||
and not _why(_p_skew, "(maintenance_charge_w) is 3000 W, but the “Inverter rating” for "
|
||||
"inverter-b"))
|
||||
check("...and it is no longer graded against the FIRST usable cap at all, which "
|
||||
"is the behaviour change MAINT-05 makes here: inverter-b's 2000 W was the "
|
||||
"pre-card answer and appears nowhere in the maintenance refusal now",
|
||||
not _why(_p_skew, "(maintenance_charge_w) is 3000 W, but the “Inverter rating” (max_w) for "
|
||||
"inverter-b is 2000 W"))
|
||||
not _why(_p_skew, "(maintenance_charge_w) is 3000 W, but the “Inverter rating” for "
|
||||
"inverter-b (inverters.max_w) is 2000 W"))
|
||||
check("...and the counterfactual, so this is not a check that would pass on a "
|
||||
"validator that named nothing: the OLD expressions still evaluate, on "
|
||||
"this same config, to the wrong names",
|
||||
|
||||
Reference in New Issue
Block a user