ruvnet/ruflo · error
Telemetry ingest error for ${deviceId}: ${error.message}
Error message
Telemetry ingest error for ${deviceId}: ${error.message} What it means
Log warning wired as onIngestionError in the IoT plugin's initialize: the telemetry ingest worker reported an error pulling/encoding vectors for a device; ingestion for that interval is skipped, other devices are unaffected.
Source
Thrown at v3/@claude-flow/plugin-iot-cognitum/src/plugin.ts:86
onDeviceOffline: (deviceId) => {
context.logger.warn(`Device offline: ${deviceId}`);
context.eventBus.emit('iot:device-offline', { deviceId });
},
onDeviceOnline: (deviceId) => {
context.logger.info(`Device back online: ${deviceId}`);
context.eventBus.emit('iot:device-online', { deviceId });
},
});
this.healthProbe.start();
const telemetryIntervalMs = (config['telemetryIntervalMs'] as number) ?? 60_000;
this.telemetryIngest = new TelemetryIngestWorker(this.coordinator, {
intervalMs: telemetryIntervalMs,
onIngestionComplete: (deviceId, vectorCount) => {
context.logger.debug(`Telemetry ingest for ${deviceId}: ${vectorCount} vectors`);
},
onIngestionError: (deviceId, error) => {
context.logger.warn(`Telemetry ingest error for ${deviceId}: ${error.message}`);
},
});
this.telemetryIngest.start();
const anomalyScanIntervalMs = (config['anomalyScanIntervalMs'] as number) ?? 300_000;
this.anomalyScan = new AnomalyScanWorker(this.coordinator, {
intervalMs: anomalyScanIntervalMs,
onAnomalyDetected: (deviceId, score) => {
context.logger.warn(`Anomaly detected on ${deviceId}: trust score ${score.toFixed(3)}`);
context.eventBus.emit('iot:anomaly-detected', { deviceId, score });
},
onScanError: (deviceId, error) => {
context.logger.warn(`Anomaly scan error for ${deviceId}: ${error.message}`);
},
});
this.anomalyScan.start();
const meshSyncIntervalMs = (config['meshSyncIntervalMs'] as number) ?? 120_000;View on GitHub (pinned to fa13ee4ad6)
Solutions
- Check the telemetry payload shape from the named device and the ingest pipeline error detail; malformed readings should be fixed at the device or parser.
Defensive patterns
Strategy: try-catch
When it happens
Trigger: Thrown at v3/@claude-flow/plugin-iot-cognitum/src/plugin.ts:86 when the library encounters an invalid state.
Common situations: See trigger scenarios.
AI-assisted analysis of ruvnet/ruflo@fa13ee4ad6 (2026-08-18).
Data as JSON: /api/errors/cd8310c18570095d.
Report an issue: GitHub.