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:
znetsixe
2026-03-04 21:07:04 +01:00
parent fbd9e6ec11
commit 6a6c04d34b
169 changed files with 21332 additions and 1512 deletions

View File

@@ -0,0 +1,31 @@
---
paths:
- "nodes/*/src/nodeClass.js"
---
# Telemetry Rules
## Output Port Convention
- Port 0: Process data (downstream node consumption)
- Port 1: InfluxDB telemetry payload
- Port 2: Registration/control plumbing
## InfluxDB Payload Structure
Port 1 payloads must follow InfluxDB line protocol conventions:
- **Tags**: Low-cardinality indexed fields (node name, machine type, station ID)
- **Fields**: High-cardinality values (measurements, setpoints, quality scores)
## Cardinality Rules
- **Never add high-cardinality tags** — no timestamps, UUIDs, or free-text values as tags
- Tags are for grouping/filtering; fields are for values
- New tags require review for index impact
## FlowFuse Dashboard Compatibility
- Charts use `msg.topic` for series identification (`category: "topic"`)
- Dashboard API endpoints serve pre-aggregated data
- Changes to Port 0 `msg.topic` format can break downstream dashboards
## Consistency
- Field names for the same measurement type must be consistent across all nodes
- Measurement names follow a documented naming convention
- Aggregation windows (1min, 5min, 1hr, 24hr) are standardized