docs(maquette): plus de permissions par charge — un seul interrupteur de décharge
Troisième passe de Patrick, et elle enlève encore. Le tableau « qui peut être servi par la batterie » n'a pas lieu d'être : décider en général qui mérite d'être servi n'est pas un réglage d'installateur, c'est un arbitrage — et il reviendra à Héos (l'optimiseur MILP) ou à une décision par le prix, quand l'un ou l'autre existera. Offrir la question à la main aujourd'hui figerait dans un écran ce qui doit se calculer. Reste UN interrupteur : bloquer la décharge pendant la recharge du véhicule. C'est le seul cas qu'aucun rang ne peut exprimer — la nuit il n'y a pas de surplus à répartir, donc aucune position dans une file ne dit « ne vide pas la batterie dans la voiture ». Le CSS des lignes de permission est retiré avec elles, plutôt que laissé mort dans la feuille. Trois passes, et l'écran n'a fait que rétrécir : un stepper de rang qui doublonnait la liste, une colonne de permission qui doublonnait le rang, puis le tableau entier. Ce qui reste est ce qu'aucun autre mécanisme ne sait dire. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_016vrTVifar2GN5rtUh89Wkq
This commit is contained in:
parent
47495e48f6
commit
77f29b3f3b
@ -212,19 +212,6 @@
|
||||
/* ── batterie ───────────────────────────────────────────────────────── */
|
||||
.newf{font-size:10.5px;color:#ff9d6b;background:rgba(255,157,107,.1);border:1px solid rgba(255,157,107,.34);
|
||||
border-radius:20px;padding:2px 8px;font-weight:600;float:right;margin-top:-2px}
|
||||
.perm{display:flex;align-items:center;gap:10px;background:var(--card2);border:1px solid var(--line);
|
||||
border-radius:11px;padding:10px 11px;margin-bottom:7px}
|
||||
.perm .ic{width:24px;height:24px;border-radius:7px;display:grid;place-items:center;font-size:13px;flex:none;
|
||||
background:rgba(255,255,255,.06)}
|
||||
.perm .nm{flex:1;min-width:0}
|
||||
.perm .nm b{display:block;font-family:'Poppins';font-weight:600;font-size:12.5px}
|
||||
.perm .nm span{font-size:10.2px;color:var(--muted2)}
|
||||
.src{display:flex;gap:5px;flex:none}
|
||||
.sbtn{font-size:10px;font-family:'Poppins';font-weight:600;border-radius:7px;padding:5px 8px;
|
||||
border:1px solid var(--line2);background:var(--panel);color:var(--muted2);cursor:pointer}
|
||||
.sbtn.on{border-color:var(--green);color:var(--green);background:rgba(53,201,138,.1)}
|
||||
.sbtn.no{border-color:rgba(224,122,122,.4);color:var(--red);background:rgba(224,122,122,.08)}
|
||||
|
||||
.tl{margin-top:10px;background:var(--card2);border:1px solid var(--line);border-radius:11px;padding:12px 12px 10px}
|
||||
.tl .bar{position:relative;height:26px;border-radius:7px;overflow:hidden;
|
||||
background:linear-gradient(90deg,#0f3242 0%,#123c4f 34%,#16506a 50%,#123c4f 66%,#0f3242 100%)}
|
||||
@ -1093,34 +1080,22 @@
|
||||
|
||||
<!-- a. BLOCAGES PAR INTENTION -->
|
||||
<div class="field">
|
||||
<label>Qui peut être servi PAR la batterie
|
||||
<span class="newf">à créer · Source par charge</span><br>
|
||||
<small>la décharge seulement — l'ordre de charge, c'est le rang</small></label>
|
||||
|
||||
<div class="perm">
|
||||
<div class="ic">🚿</div>
|
||||
<div class="nm"><b>Eau chaude</b><span>rang 2 · relay-router</span></div>
|
||||
<div class="src"><span class="sbtn no">Non</span></div>
|
||||
<label>Décharge <span class="newf">à créer · enableDischarging</span></label>
|
||||
<div class="stepper">
|
||||
<div class="lab">Bloquer la décharge pendant la recharge du véhicule<small>la maison continue
|
||||
d'être servie ; seule la voiture ne l'est pas</small></div>
|
||||
<div class="ctl"><span class="sw"></span></div>
|
||||
</div>
|
||||
<div class="perm">
|
||||
<div class="ic">🔥</div>
|
||||
<div class="nm"><b>PAC banc</b><span>rang 3 · sg-ready</span></div>
|
||||
<div class="src"><span class="sbtn on">Oui</span></div>
|
||||
</div>
|
||||
<div class="perm">
|
||||
<div class="ic">🚗</div>
|
||||
<div class="nm"><b>Simulated wallbox</b><span>rang 4 · evcharger</span></div>
|
||||
<div class="src"><span class="sbtn no">Non</span></div>
|
||||
</div>
|
||||
|
||||
<div class="info"><b>Un seul réglage ici, et il ne concerne que la DÉCHARGE.</b>
|
||||
« Charger l'eau chaude avant la batterie » ne se règle pas ici : c'est le <b>rang</b>, et il n'a
|
||||
pas besoin d'un second réglage qui dirait la même chose autrement.<br><br>
|
||||
Ce qui reste est d'une autre nature : <b>la nuit, il n'y a pas de surplus à répartir</b>, donc
|
||||
aucun rang ne peut exprimer « ne vide pas la batterie dans la voiture ». C'est une permission
|
||||
de source, pas une position dans une file. Le contrat porte déjà
|
||||
<code>Source { Solar, GridSource }</code> — il manque le troisième terme, et le droit de le
|
||||
refuser charge par charge.</div>
|
||||
<div class="info"><b>Un seul interrupteur, et c'est le seul cas qu'aucun rang ne peut
|
||||
exprimer.</b> « Charger l'eau chaude avant la batterie » se règle par le <b>rang</b> — il n'a
|
||||
pas besoin d'un second réglage qui dirait la même chose autrement. Mais <b>la nuit, il n'y a
|
||||
pas de surplus à répartir</b> : aucune position dans une file ne dit « ne vide pas la batterie
|
||||
dans la voiture ».<br><br>
|
||||
<b>Pas de tableau de permissions charge par charge.</b> Décider en général qui mérite d'être
|
||||
servi par la batterie n'est pas un réglage d'installateur : c'est un arbitrage, et il
|
||||
reviendra à <b>Héos</b> (l'optimiseur MILP) ou à une décision par le prix, quand l'un ou
|
||||
l'autre existera. Offrir la question à la main aujourd'hui figerait dans un écran ce qui doit
|
||||
se calculer.</div>
|
||||
</div>
|
||||
|
||||
<!-- b. CHARGE DIFFÉRÉE -->
|
||||
@ -1203,6 +1178,10 @@
|
||||
<li><b>Le rang n'est PAS sur cet écran</b>, et c'est volontaire : il se règle par glisser-déposer
|
||||
dans la liste des charges, comme pour toutes les autres. Un second réglage de rang ici dirait la
|
||||
même chose autrement, et les deux finiraient par diverger.</li>
|
||||
<li><b>Pas de permission par charge non plus.</b> Le seul interrupteur de décharge couvre le cas
|
||||
que le rang ne sait pas dire ; l'arbitrage fin — qui mérite d'être servi par la batterie, et
|
||||
quand — reviendra à <b>Héos</b> ou à une décision par le prix. Un écran ne doit pas figer ce qui
|
||||
doit se calculer.</li>
|
||||
<li><b><code>batteryLevelConsideration</code> fait aujourd'hui l'INVERSE de ce que le rang
|
||||
permettra.</b> Sous le seuil, le budget est <i>annulé</i> — la batterie passe donc avant, et
|
||||
l'ECS ne reçoit rien. Si le rang arrive, il faut dire lequel des deux gagne, sinon deux réglages
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user