- 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>
34 lines
1.3 KiB
Markdown
34 lines
1.3 KiB
Markdown
# 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:
|
|
|
|
1. Harden `generalFunctions/nrmse` with:
|
|
- 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
|
|
|
|
2. Rewire rotatingMachine to consume NRMSE per metric:
|
|
- `flow` model drift
|
|
- `power` model drift
|
|
- pressure-quality drift as node-specific plausibility/redundancy assessment
|
|
|
|
3. 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.js` and rotatingMachine drift wiring to return to legacy flow-only drift behavior.
|