Block a user
Externalize position constants to shared enum
Break validationUtils.js (534 lines) into strategy pattern validators
Create architecture diagram (node relationship map)
Create architecture diagram (node relationship map)
Created docs/architecture.md with Mermaid diagrams showing:
- S88 hierarchy with EVOLV node mappings and color scheme
- Parent-child registration relationships (what each node accepts) -…
validationUtils.js:274 - says Sorting but returns false instead of sorting
Fixed in generalFunctions submodule.
validationUtils.js:274 - says Sorting but returns false instead of sorting
AssetLoader: unbounded cache (no max size, no TTL)
Fix softwareType case sensitivity (standardize to lowercase)
Fix softwareType case sensitivity (standardize to lowercase)
Fixed: softwareType now standardized to lowercase in ConfigManager.buildConfig(), all config JSON defaults, and childRegistrationUtils.registerChild().
[DONE] Real E2E test stack: Node-RED + InfluxDB + Grafana
[DONE] Real E2E test stack: Node-RED + InfluxDB + Grafana
MeasurementContainer.clear() does not reset chaining context
MeasurementContainer.clear() does not reset chaining context
Fixed: clear() now resets all chaining context (type, variant, position filters).
Extract base config schema to eliminate duplication across nodes
Completed
Changes
baseConfig.json- Shared schema defining general/logging/functionality/asset sectionsConfigManager.buildConfig(nodeName, uiConfig, nodeId, domainConfig)…
Extract base config schema to eliminate duplication across nodes
predict_class.js:166 - array access without bounds check
Fixed in generalFunctions submodule commit.
predict_class.js:166 - array access without bounds check
Measurement.js:116 - orphaned console.log debug line