Migrate to new Gitea instance (gitea.wbd-rd.nl)
- 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>
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
# Top 10 Production Priorities (Round 2, Availability-First)
|
||||
|
||||
Context:
|
||||
- Generated after implementing the first top-10 and follow-up items `IMP-20260219-011/012/013`.
|
||||
- Focus remains: keep runtime up, prefer degraded/null outputs over hard failures.
|
||||
|
||||
## Priority List
|
||||
|
||||
1. Fix measurement outlier toggle corruption.
|
||||
- Why: toggling replaces the outlier config object with a boolean, breaking later config reads.
|
||||
- Evidence: `nodes/measurement/src/specificClass.js:509`.
|
||||
|
||||
2. Fix rotating machine pressure-difference unit request API mismatch.
|
||||
- Why: `difference('Pa')` no longer matches container API; requested unit is ignored, risking incorrect efficiency basis.
|
||||
- Evidence: `nodes/rotatingMachine/src/specificClass.js:856`, `nodes/generalFunctions/src/measurements/MeasurementContainer.js:436`.
|
||||
|
||||
3. Guard reactor PFR state indexing at boundary conditions.
|
||||
- Why: known edge behavior can overrun index mapping near exact reactor length and destabilize updates.
|
||||
- Evidence: `nodes/reactor/src/specificClass.js:326`.
|
||||
|
||||
4. Make dashboard template resolution fail-soft.
|
||||
- Why: missing template currently throws and aborts dashboard generation path.
|
||||
- Evidence: `nodes/dashboardAPI/src/specificClass.js:91`.
|
||||
|
||||
5. Make dashboard input path skip invalid children instead of throwing.
|
||||
- Why: missing child source/config currently throws; should warn and continue in availability-first mode.
|
||||
- Evidence: `nodes/dashboardAPI/src/nodeClass.js:55`.
|
||||
|
||||
6. Harden shared config merge semantics for arrays/types.
|
||||
- Why: recursive merge mutates destination and treats arrays as objects, risking config drift.
|
||||
- Evidence: `nodes/generalFunctions/src/helper/configUtils.js:77`.
|
||||
|
||||
7. Fix machineGroupControl child position source path.
|
||||
- Why: reads `positionVsParent` from `general` instead of `functionality`, causing inconsistent routing metadata.
|
||||
- Evidence: `nodes/machineGroupControl/src/specificClass.js:53`.
|
||||
|
||||
8. Accept numeric-string measurement payloads safely.
|
||||
- Why: measurement node currently ignores numeric strings common in PLC/edge integrations.
|
||||
- Evidence: `nodes/measurement/src/nodeClass.js:167`.
|
||||
|
||||
9. Fix reactor editor save wiring mismatch.
|
||||
- Why: editor save hook references the wrong node helpers, risking mis-saved position settings.
|
||||
- Evidence: `nodes/reactor/reactor.html:133`.
|
||||
|
||||
10. Replace raw `structuredClone` usage with compatibility-safe clone strategy.
|
||||
- Why: runtime portability risk across constrained Node-RED deployments.
|
||||
- Evidence: `nodes/settler/src/specificClass.js:34`, `nodes/settler/src/specificClass.js:45`.
|
||||
|
||||
## Implementation Status
|
||||
|
||||
- Implemented on 2026-02-19 in current session.
|
||||
- Verification: tests passed for `generalFunctions`, `measurement`, `reactor`, `rotatingMachine`, `dashboardAPI`, `machineGroupControl`, `settler`, `pumpingStation`, `valve`, `valveGroupControl`, `monster`.
|
||||
- Follow-up architectural items are tracked in `.agents/improvements/IMPROVEMENTS_BACKLOG.md`.
|
||||
Reference in New Issue
Block a user