From f7f356fbd5883f0b204619f1db3ea4eec38d7c57 Mon Sep 17 00:00:00 2001 From: PedroHMCosme Date: Tue, 14 Jul 2026 22:24:02 -0300 Subject: [PATCH] refactor(gateway): ponytail F2 - drop dead metadata, unreachable variant fallback, redundant except member --- ingestor/adapters/nats_consumer.py | 2 +- ingestor/engines/write.py | 5 ++--- tests/unit/engines/test_write.py | 1 - 3 files changed, 3 insertions(+), 5 deletions(-) diff --git a/ingestor/adapters/nats_consumer.py b/ingestor/adapters/nats_consumer.py index d0f9960..189220d 100644 --- a/ingestor/adapters/nats_consumer.py +++ b/ingestor/adapters/nats_consumer.py @@ -39,7 +39,7 @@ class NatsWriteConsumer: async def _handle(self, msg) -> None: try: payload = json.loads(msg.data) - except (ValueError, UnicodeDecodeError) as e: + except ValueError as e: # includes JSONDecodeError and UnicodeDecodeError preview = msg.data[:200] self.logger.error(f'NatsWriteConsumer dropped malformed JSON ({e}): {preview!r}') return diff --git a/ingestor/engines/write.py b/ingestor/engines/write.py index 7bf8f68..2f90d64 100644 --- a/ingestor/engines/write.py +++ b/ingestor/engines/write.py @@ -64,14 +64,12 @@ class WriteEngine(SientiaMonitoring): logger: Logger, notification_handler: NotificationHandler, metrics_controller: MetricsController, - metadata: dict | None = None, write_timestamp: bool = True, write_quality: bool = True, min_pause_s: float = 0.0, ): self.pool = pool self.sink = sink - self.metadata = metadata or {} self.write_timestamp = write_timestamp self.write_quality = write_quality self.min_pause_s = min_pause_s @@ -130,7 +128,8 @@ class WriteEngine(SientiaMonitoring): } def _variant_type(self, data_type: str) -> ua.VariantType: - return _VARIANT_TYPES.get(data_type.strip().lower(), ua.VariantType.String) + # direct index: unknown dtypes already became ConversionError in to_typed_value + return _VARIANT_TYPES[data_type.strip().lower()] def _build_datavalue(self, cmd: dict, typed_value) -> ua.DataValue: variant = ua.Variant(typed_value, self._variant_type(cmd['data_type'])) diff --git a/tests/unit/engines/test_write.py b/tests/unit/engines/test_write.py index d888ee7..6fc1963 100644 --- a/tests/unit/engines/test_write.py +++ b/tests/unit/engines/test_write.py @@ -15,7 +15,6 @@ def make_engine(**kwargs): logger=MagicMock(), notification_handler=MagicMock(), metrics_controller=AsyncMock(), - metadata={}, **kwargs, ) eng.emit_metric = AsyncMock()