Files
EVOLV/wiki/findings/open-issues-2026-03.md
znetsixe 7ded2a4415
Some checks failed
CI / lint-and-test (push) Has been cancelled
docs: consolidate scattered documentation into wiki
Move architecture/, docs/ content into wiki/ for a single source of truth:
- architecture/deployment-blueprint.md → wiki/architecture/
- architecture/stack-architecture-review.md → wiki/architecture/
- architecture/wiki-platform-overview.md → wiki/architecture/
- docs/ARCHITECTURE.md → wiki/architecture/node-architecture.md
- docs/API_REFERENCE.md → wiki/concepts/generalfunctions-api.md
- docs/ISSUES.md → wiki/findings/open-issues-2026-03.md

Remove stale files:
- FUNCTIONAL_ISSUES_BACKLOG.md (was just a redirect pointer)
- temp/ (stale cloud env examples)

Fix README.md gitea URL (centraal.wbd-rd.nl → wbd-rd.nl).
Update wiki index with all consolidated pages.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-07 17:08:35 +02:00

3.3 KiB

title, created, updated, status, tags
title created updated status tags
Open Issues — EVOLV Codebase 2026-03-01 2026-04-07 evolving
issues
backlog

Open Issues — EVOLV Codebase

Issues identified during codebase scan (2026-03-12). Create these on Gitea when ready.


Issue 1: Restore diffuser node implementation

Labels: enhancement, node Priority: Medium

The nodes/diffuser/ directory contains only .git, LICENSE, and README.md — no implementation. There was a previous experimental version. Needs:

  • Retrieve original diffuser logic from user/backup
  • Rebuild to current three-layer architecture (wrapper .js + src/nodeClass.js + src/specificClass.js)
  • Use require('generalFunctions') barrel imports
  • Add config JSON in generalFunctions/src/configs/diffuser.json
  • Register under category 'EVOLV' with appropriate S88 color
  • Add tests

Blocked on: User providing original diffuser logic/requirements.


Issue 2: Relocate prediction/ML modules to external service

Labels: enhancement, architecture Priority: Medium

TensorFlow-based influent prediction code was removed from monster node (was broken/incomplete). The prediction functionality needs a new home:

  • LSTM model for 24-hour flow prediction based on precipitation data
  • Standardization constants: hours (mean=11.504, std=6.922), precipitation (mean=0.090, std=0.439), response (mean=1188.01, std=1024.19)
  • Model was served from http://127.0.0.1:1880/generalFunctions/datasets/lstmData/tfjs_model/
  • Consider: separate microservice, Python-based inference, or ONNX runtime
  • Monster node should accept predictions via model_prediction message topic from external service

Related files removed: monster_class.js methods get_model_prediction(), model_loader()


Issue 3: Modernize monster node to three-layer architecture

Labels: refactor, node Priority: Low

Monster node uses old-style structure (dependencies/monster/ instead of src/). Should be refactored:

  • Move dependencies/monster/monster_class.jssrc/specificClass.js
  • Create src/nodeClass.js adapter (extract from monster.js)
  • Slim down monster.js to standard wrapper pattern
  • Move monsterConfig.jsongeneralFunctions/src/configs/monster.json
  • Remove modelLoader.js (TF dependency removed)
  • Add unit tests

Note: monster_class.js is ~500 lines of domain logic. Keep sampling_program(), aggregation, AQUON integration intact.


Issue 4: Clean up inline test/demo code in specificClass files

Labels: cleanup Priority: Low

Several specificClass files have test/demo code after module.exports:

  • pumpingStation/src/specificClass.js (lines 478-697): Demo code guarded with require.main === module — acceptable but could move to test/ or examples/
  • machineGroupControl/src/specificClass.js (lines 969-1158): Block-commented test code with makeMachines() — dead code, could be removed or moved to test file

Issue 5: DashboardAPI node improvements

Labels: enhancement, security Priority: Low

  • Bearer token now relies on GRAFANA_TOKEN env var (hardcoded token was removed for security)
  • Ensure deployment docs mention setting GRAFANA_TOKEN
  • dashboardapi_class.js still has console.log calls (lines 154, 178) — should use logger
  • Node doesn't follow three-layer architecture (older style)