Commit Graph

13 Commits

Author SHA1 Message Date
acidburns def09160d0 refactor lora payload timing
Bump the batch payload codec to schema v4 with separate meter-time and UTC anchors, then use meter seconds for sparse batch slotting and receiver reconstruction.

Update the current 868 MHz bench configuration, allow ACKs from configured receiver short IDs, improve AP-to-STA recovery, quiet the test build, and document the changed protocol in the README.
2026-06-30 12:19:27 +02:00
acidburns 664ff1d744 sec(sender): ACK rate-limiting, unknown device-ID rejection, fuzz tests
- Add 500 ms minimum interval between accepted ACKs to mitigate replay floods
- Reject ACK packets from unrecognised device IDs (DeviceIdMismatch)
- Add test/test_security_fuzz: negative/boundary tests for decode_batch,
  uleb128_decode, svarint_decode, lora_parse_frame entry points
2026-03-17 12:31:36 +01:00
acidburns 99aae76404 test(meter): add fault-count regression test for meter diagnosis 2026-03-16 16:32:21 +01:00
acidburns 0577464ec5 refactor: stabilize legacy-core linking and header ownership
- Make include/ the canonical declarations for data_model/html_util/json_codec and convert dd3_legacy_core header copies to thin forwarders.
- Add stable public forwarders for app_context/receiver_pipeline/sender_state_machine and update refactor smoke test to stop using ../../src includes.
- Force-link dd3_legacy_core from setup() to ensure deterministic PlatformIO LDF linking across firmware envs.
- Refresh docs (README, Requirements, docs/TESTS.md) to reflect current module paths and smoke-test include strategy.
2026-02-20 23:29:50 +01:00
acidburns b8e0733a89 test: add json stability and discovery payload coverage 2026-02-20 21:32:35 +01:00
acidburns ca2cd1880a test: add lora frame and chunk reassembly logic suite 2026-02-20 21:26:51 +01:00
acidburns cef1d184ed test: add payload codec regression suite 2026-02-20 21:22:10 +01:00
acidburns 6acb588069 refactor: move html_util into legacy core library 2026-02-20 21:17:48 +01:00
acidburns 2cfdc719c2 test: expand legacy html_util coverage 2026-02-20 21:13:48 +01:00
acidburns 9495e7e8de chore: unify HA manufacturer and add refactor guards 2026-02-18 02:25:07 +01:00
acidburns 4ff5fd1d55 Harden history device ID validation and SD download filename 2026-02-13 23:56:36 +01:00
acidburns bfcb2463c3 Harden web UI auth, input handling, and SD path validation
- Add optional Basic Auth with NVS-backed credentials and STA/AP flags; protect status, wifi, history, and download routes

- Stop pre-filling WiFi/MQTT/Web UI password fields; keep stored secrets on blank and add clear-password checkboxes

- Add HTML escaping + URL encoding helpers and apply to user-controlled strings; add unit test

- Harden /sd/download path validation (prefix, length, dotdot, slashes) and log rejections

- Enforce protocol version in LoRa receive and release GPIO14 before SD init

- Update README security, SD, and GPIO sharing notes
2026-02-13 23:56:36 +01:00
acidburns 6f308ad590 Initial commit 2026-01-20 01:39:06 +01:00