- Delete .mcp.json + .claude/rules/repo-mem.md; drop .repo-mem from .gitignore - Remove repo-mem / substrate_score / repo_search references from all .md - Move 15 EVOLV skills from .agents/skills/ to .claude/skills/ so they are auto-discovered by the Claude Code harness and invokable via the Skill tool - Retire .agents/skills/evolv-orchestrator (duplicate of the subagent at .claude/agents/evolv-orchestrator.md); orchestrator lives as a subagent only - Drop OpenAI-format agent yaml metadata from each skill (not needed for CC) - Update CLAUDE.md, CONTRACTS.md, AGENTS.md to point at the new locations and disambiguate skills (.claude/skills/) vs subagents (.claude/agents/) - Fix CLAUDE.md tick-loop wording (opt-in per-node, not a fixed 1000ms) - Widen .claude/rules/ paths frontmatter so node-architecture and telemetry rules trigger on more relevant files; add frontmatter to flow-layout rule - Bump CONTRACTS.md review date to 2026-05-19; add step 7 to the contract- change workflow (review example flows when topic usage changes) - Bump nodes/generalFunctions pin (Home.md substrate_score reference removed) Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
32 lines
1.2 KiB
Markdown
32 lines
1.2 KiB
Markdown
---
|
|
paths:
|
|
- "nodes/*/src/nodeClass.js"
|
|
- "nodes/*/src/specificClass.js"
|
|
- "nodes/*/src/output/**"
|
|
- "nodes/generalFunctions/src/outputUtils/**"
|
|
---
|
|
|
|
# Telemetry Rules
|
|
|
|
Output port convention (Port 0/1/2) is documented in `.claude/rules/node-architecture.md`. This file covers only the Port 1 payload shape and downstream contracts.
|
|
|
|
## 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
|