Files
EVOLV/manuals/node-red/messages-and-editor-structure.md
znetsixe 6a6c04d34b 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>
2026-03-04 21:07:04 +01:00

28 lines
1.1 KiB
Markdown

# Node-RED Messages and Editor/Runtime Structure (EVOLV Summary)
Sources:
- Messages: https://nodered.org/docs/user-guide/messages
- Edit dialog and node definition: https://nodered.org/docs/creating-nodes/edit-dialog
## Message Shape
- Standard message object is usually `msg`.
- `msg.payload` is the default value channel.
- `msg.topic` is used for routing/intent labeling.
## EVOLV Topic Routing
- EVOLV runtime wrappers route commands by `msg.topic` in `src/nodeClass.js`.
- Keep topic names stable unless a migration is defined (flow compatibility).
## Editor/Runtime Parity
- In `.html`, `RED.nodes.registerType(... defaults ...)` defines persisted config fields.
- Runtime parser in `src/nodeClass.js` must read and normalize the same fields.
- If a field is added/renamed in editor defaults, update runtime mapping and tests in the same change.
## Multi-Output Node Rule
- Runtime `node.send([out1, out2, out3])` must align with declared `outputs` in `.html`.
- If output meaning is `process`, `dbase`, `parent`, maintain stable index mapping across all message paths.