data2dsl

Ticket 097: Reduce CC in adapter normalizers

Goal and scope

Reduce cyclomatic complexity to <=15 (regix cc_max) in the adapter normalizers flagged by the health findings:

Approach: shared observation/evidence/value helpers extracted into data2dsl_adapter_parts/common.py (observation_envelope, evidence_entry, error_observation, unsupported_observation, numeric_value, temperature_value, set_value) plus per-module metric dispatch and evidence builders. Public signatures and the observation/v0 envelope shape are unchanged.

src/data2dsl_batch.py (compare_batch CC 45, format_markdown_report CC 21) is outside this ticket’s allowedPaths and remains for a follow-up slice.

Acceptance criteria

Changelog