OptimizerProtocol::getPlanParams(SurplusContext, ContexteFil) rend les params d'une requête GetPlan. Fonction pure, compilée dans le plugin mais appelée par personne : sans endpoint, rien ne change. - La prévision voyage À CÔTÉ du contexte (§11) : ContexteFil::prevision porte la sortie de EnergyArbitrator::instantanePrevision(), l'assemblage partagé avec GetForecastSnapshot. forecastDepuisInstantane() la pose sur la grille §5.2 : Wh par pas → p50W moyens (Wh × 3600 / resolutionS), case sans point = null, pv null sans courbe, weather null. - ContexteFil porte aussi trigger (sa source viendra en T3), meter.source, la PV instantanée, la limite de phase, la réserve, le domaine et la mesure par charge. - Inconnu = null ou absent, jamais 0 : contractedPowerW, pv.currentW, capacité et puissances batterie, tarif → null ; learned, comfort, group, champs réservés, force, powerLevels → absents ; borne configurée sans appareil → ni déclaration ni verrous. - meter.exportW brut (règle 8). Champs 1.0 conservés ; energyTargets dérivés par resolveDeadline (installer) et de la dérogation à cible (user-intent). Tests (loadmodel, logique pure) : 4 goldens dans data/optimizer (site sans PV ; PV + ECS relay-router + borne + SG-Ready ; prévision absente ; charge available=false figée), régénérables sous ETM_REGENERER_GOLDEN=1, plus 3 tests d'assertion. Contre-épreuves : contractedPowerW à 0, Wh non convertis, exportW net → chacune fait échouer au moins un test. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
41 lines
1.3 KiB
Plaintext
41 lines
1.3 KiB
Plaintext
HEADERS += \
|
|
$$PWD/types/loadaction.h \
|
|
$$PWD/types/decisionreason.h \
|
|
$$PWD/types/loaddescriptor.h \
|
|
$$PWD/types/surpluscontext.h \
|
|
$$PWD/types/plan.h \
|
|
$$PWD/types/drawcap.h \
|
|
$$PWD/types/ecoprogress.h \
|
|
$$PWD/types/ecotarget.h \
|
|
$$PWD/types/loadconfig.h \
|
|
$$PWD/tariff/tariffconfig.h \
|
|
$$PWD/config/loadconfigstore.h \
|
|
$$PWD/adapters/iloadadapter.h \
|
|
$$PWD/scheduler/ischeduler.h \
|
|
$$PWD/adapters/evadapter.h \
|
|
$$PWD/adapters/sgreadyadapter.h \
|
|
$$PWD/adapters/etmvariableloadadapter.h \
|
|
$$PWD/adapters/relayrouter.h \
|
|
$$PWD/scheduler/rulebasedscheduler.h \
|
|
$$PWD/scheduler/optimizerprotocol.h \
|
|
$$PWD/ratios/energyratioscalculator.h \
|
|
$$PWD/energyarbitrator.h \
|
|
$$PWD/spotmarketbuild.h \
|
|
|
|
SOURCES += \
|
|
$$PWD/types/decisionreason.cpp \
|
|
$$PWD/types/drawcap.cpp \
|
|
$$PWD/types/ecotarget.cpp \
|
|
$$PWD/types/loadconfig.cpp \
|
|
$$PWD/tariff/tariffconfig.cpp \
|
|
$$PWD/config/loadconfigstore.cpp \
|
|
$$PWD/ratios/energyratioscalculator.cpp \
|
|
$$PWD/adapters/evadapter.cpp \
|
|
$$PWD/adapters/sgreadyadapter.cpp \
|
|
$$PWD/adapters/etmvariableloadadapter.cpp \
|
|
$$PWD/adapters/relayrouter.cpp \
|
|
$$PWD/scheduler/rulebasedscheduler.cpp \
|
|
$$PWD/scheduler/optimizerprotocol.cpp \
|
|
$$PWD/energyarbitrator.cpp \
|
|
$$PWD/spotmarketbuild.cpp \
|