- Update all submodule URLs from gitea.centraal.wbd-rd.nl to gitea.wbd-rd.nl - Add settler as proper submodule in .gitmodules - Add agent skills, function anchors, decisions, and improvements - Add Docker configuration and scripts - Add manuals and third_party docs - Update .gitignore with secrets and build artifacts - Remove stale .tgz build artifact Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1.3 KiB
1.3 KiB
Decision: Harden NRMSE and Use Metric Profiles in RotatingMachine
- Date: 2026-02-24
- Scope:
nodes/generalFunctions/src/nrmse/*,nodes/rotatingMachine/src/specificClass.js
Context
Drift analytics were previously single-path and flow-focused with weak input safeguards in NRMSE.
Requirement: make NRMSE architecturally robust and apply it across multiple measurements in rotatingMachine.
Decision
Adopt a metric-profile drift architecture:
- Harden
generalFunctions/nrmsewith:
- strict validation for malformed inputs
- timestamp-aware alignment support
- per-metric state
- configurable rolling window and EWMA long-term trend
- point-based API (
assessPoint) while retaining legacy calls
- Rewire rotatingMachine to consume NRMSE per metric:
flowmodel driftpowermodel drift- pressure-quality drift as node-specific plausibility/redundancy assessment
- Expose drift and confidence outputs per metric in node output payload.
Consequences
- Drift computations are deterministic and safer under bad inputs.
- RotatingMachine confidence now reflects multiple measurement channels.
- Output schema expands with power/pressure drift fields.
Rollback Notes
- Revert
errorMetrics.jsand rotatingMachine drift wiring to return to legacy flow-only drift behavior.