Submodule a83a85e: editor was storing numeric inputs as strings via
Node-RED's auto-form-bind, causing the stopLevel/holdLevel fields to
blank out on Done → reopen. oneditsave now explicitly parseFloats them,
and the reader helpers coerce strings for backward compatibility with
already-saved flows.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Bumps dashboardAPI submodule pointer to include the runtime datasource-uid
resolver. Templates no longer have to ship with the right uid baked in; any
Grafana instance with an influxdb datasource will now render the dashboards
correctly. Fixes the "Datasource <uid> not found" exclamation marks observed
when pushing to a fresh Grafana (e.g. the VPS).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Larger margins ensure the size-14 rim and floor captions never overlap
the topmost or bottommost threshold line in the tank.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Lines now have a minimum 3.7% gap so labels never collide with adjacent
threshold lines, regardless of how close the underlying levels are.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Canvas elements now use 'constraint: { horizontal: scale, vertical: scale }'
with percentage-based margin placement so the tank fills the card edge to
edge and stays centered as the panel resizes. Threshold labels split
left/right with a gap and at font size 14 for readability.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Tank vertically centered in canvas frame. Labels for thresholds at the
very bottom of the tank (small dryRunThresholdPercent) no longer extend
below the visible card area.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Threshold labels now sit above or below their lines (never on top) and
are centered horizontally inside the tank.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Adds .claude/settings.json with CLAUDE_CODE_EXPERIMENTAL_AGENT_TEAMS=1
so every contributor gets the `team` keyword + TeamCreate tool on clone,
without each person having to set the env var locally.
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Canvas frame stretched vertically to match the card's aspect ratio so
the tank visual fills the entire card height with no letterboxing below.
Redundant in-canvas readouts dropped.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Tank Layout visual now fills the Canvas card edge-to-edge. Each
threshold's name + value live INSIDE the tank near its line instead of
in external label columns.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Canvas card shrunk to w:6 and frame to 400 px so the basin visual fills
the card edge-to-edge. Level/Volume timeseries widen to w:14 to absorb
the freed columns. Right value labels and bottom readouts no longer clip.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Tank Layout canvas + bar gauge + Level/Volume timeseries grow to h:20
so the basin visual occupies more vertical space and reads at a glance.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Replaces Heights/Volume-Limits/Fill% stats with an integrated basin visual:
vertical bar gauge bound to live level + threshold markers, plus Canvas
showing tank zones, threshold lines, named labels, and live readouts.
Level + Volume timeseries reflow next to the basin in the renamed Basin row.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- machineGroupControl f18f3cc: fn_chart_pump_a/b/c emit -1 OFF sentinel on the
per-pump % control chart when state is off/idle/maintenance; ui_chart_pumps_ctrl
ymin=-5; new per-pump-ctrl-fanout output-coverage test + manifest update.
- pumpingStation e041877: revert canonical flow to m³/s (platform convention),
keep output m³/h for dashboard parity. No demand smoothing/hysteresis — that
belongs in a dedicated intermediate node per design review.
Also cleaned stale InfluxDB series (out-of-tree): dropped "MGC Isolated" and
"MGC — Pump Group" measurements and the category="undefined" rows in
"Machine Group" (135,416 stale rows; live untagged data preserved).
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
machineGroupControl 2af6c90, generalFunctions 5c091cd. Rendezvous lock verified
live on the isolated rig: clean monotonic 1→2 pump staging, no wait/hunt.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
- Bumps nodes/dashboardAPI submodule to slice/34-walking-skeleton@7fdab73
(credentials block for bearer token, folderUid config field, basic tests).
- Pins grafana/grafana to 11.3.0 — legacy /api/dashboards/db is the
generator target; G12 K8s-style API is out of scope (PRD constraint).
Refs #34
"description":"Modular Node-RED package containing all control and automation nodes developed under the EVOLV project.",
"keywords":[
"node-red",
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.