Files
EVOLV/.agents/decisions/DECISION-20260224-nrmse-hardening-and-metric-profiles.md

34 lines
1.3 KiB
Markdown
Raw Permalink Normal View History

# 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.