# Integrated application data/model path - 2026-10-02 User request: finish application implementation, stop asking for repeated hardware confirmations and adding standalone diagnostic samplers. No actuator permission is implied by that development request. Confirmed EV allocation remains 161.44 kWh / 39 kW each direction, with SDL reserve already excluded. ## Implemented in the existing application - Native ManagerNetzfahrplanV4DatenTrait: 30-second acquisition of configured numeric sources; durable private app-owned outbox; original timestamps, no new Modbus polls; acknowledged per-plant batches with retries/backoff. Cursor advances only after exact dataset/acceptedThrough acknowledgement. Batches bounded below the existing portal's 1 MiB body limit. No credentials in data payload or reports. - Existing device proxy now forwards /planner-v4/measurements through the existing authentication, plant binding, licence check and separate V4 rate limiter. Device route cannot modify the dataset mapping or issue a trial grant. - Existing V4 database stores immutable versioned source mappings and observations. Same-time conflicts reject the whole batch; repeated identical data is idempotent. No writes to portal/users/legacy measurement databases. - Existing V4 worker aggregates physical load using original source times. Virtual EV/SDL filter outputs are not load inputs. Solar terminal variant counts signed terminal power once. Small unobserved parts remain quantified, never zero-filled. This configured formula remains an estimate, not independent AC/DC certification. - Application profile training actually runs daily/weekly. Models are immutable, bootstrap/holdout status explicit. Incumbent replacement requires a causal holdout when available. Existing data and model versions are not relabelled. - Three corrected load variants (daily robust profile, last-day profile, weekday/weekend profile) are paired with the existing PV families 3/13/23. They are tagged physical-profile-v1; they are NOT claimed to be the old trained load algorithms under a new data name. Automatic future family registry work and economic replay are still distinct from this load-profile implementation. - Selecting corrected_profile in the existing GUI/setting now actually changes the load entering the existing optimizer. Missing trained data cannot silently fall back to the contaminated legacy household series. - A current SDL request is an explicitly labelled PERSISTENCE SCENARIO for the shadow economic calculation, not a published future schedule. Missing/stale SDL is not zero. This is not a robust/full SDL production-dispatch policy. - GUI now exposes dataset/source selection, records, usable equivalent hours, model version, validation and real training cadence. Existing normal portal app.js/index files are not changed. ## Deployment package Server: commissioning/deploy_application.py --plant --apply Rebuild/test V4 with Python 3.11, portal routing tests, consistent SQLite backup, replace ONLY V4 and portal, configure the new per-plant dataset. No automatic forecast-source switch and no control grant. Atomic file-bind replacement requires portal recreation, not a simple restart. Additive DB rollback retains new data. Default invocation without --apply validates source manifests only. Test host: /srv/agent/netplan-v4-application-build/install.php inside Symcon. Installs a DATA-ONLY patch of the currently installed passive manager (not the unreleased controller-trial candidate), reloads EMS, configures acquisition and imports up to 48h of the existing 23-source observer as a delivery backlog. Original observer and old raw journals remain intact. Existing separate observers are NOT automatically stopped by this initial installer; consolidation should follow confirmed native batch acceptance. No new root diagnostic category. An asynchronous module registration may require one repeat, handled explicitly. Dataset lihrenmoos-physical-v1: minimum coverage 95%, longest unsupported portion 10s, at least 24 equivalent usable hours, 28-day profile history. The 95% rule is an explicit modelling policy, not a statement that missing energy was measured. Insufficient data remains collecting; no promised time to good forecasts. All original acquisition thresholds remain unchanged. ## Tests and honest limits Host tests use existing isolated QA dependencies; native tests mock IPS/HTTP and use temporary files. Real container and kernel tests occur on the user-run deploy commands, not during preparation. No services/modules/settings/devices were modified by this development session. Still NOT a complete production commissioning: the corrected profile-to-local feedback/dispatch integration, full automatic cost replay, independent long-term outbox/server retention and staged live/failure acceptance remain open. The trial code from previous commits remains gated and is not included in the data-only native installation. No accountingEvidenceId/device watchdog proof is fabricated. This release is an integrated application build, NOT a claim that the full original multi-plant production scope is done. No main/beta release is authorized by tests alone.