- 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>
28 lines
1.1 KiB
Markdown
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.
|