fix(config): default the spool cap to 20 MB per database #42

Closed
mariusz.pacek wants to merge 0 commits from mariusz.pacek/feat/gateway-main AGit into master
pull from: mariusz.pacek/feat/gateway-main
Owner

Gateway config file outside the jar (D3) with fail-fast validation, Main/Gateway assembly of all devices, writer, poller, watchdog (30 min) and HTTP, end-to-end test against MockModbusServer and a stub Influx, baseline removed with modbus4j/influxdb-java/guava/lombok (D2, D4, D5, D8), unit passes the config path with RestartSec=60. KEEP OPEN until the Pi has gateway.json and the new unit: merging changes what master deploys. 🤖 Generated with Claude Code

Gateway config file outside the jar (D3) with fail-fast validation, Main/Gateway assembly of all devices, writer, poller, watchdog (30 min) and HTTP, end-to-end test against MockModbusServer and a stub Influx, baseline removed with modbus4j/influxdb-java/guava/lombok (D2, D4, D5, D8), unit passes the config path with RestartSec=60. KEEP OPEN until the Pi has gateway.json and the new unit: merging changes what master deploys. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
mariusz.pacek added 6 commits 2026-10-24 02:36:02 +00:00
The baseline packaged its config in the jar (D3). The gateway reads JSON from a path given on the command line; disabled devices are not validated, and the minimum pause of Modbus links is required.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Gateway builds every part from the config and closes them in reverse, flushing the spool once more after the pollers stop. It refuses to start with no device or with a critical device that is not enabled.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
Asserts the POMPA point keeps exactly the 8 legacy field names with their values, heat_pump is written, and /health and /snapshot answer. MockModbusServer becomes public to be used from another package.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
The gateway replaces it: its own Modbus core drops modbus4j, the JDK-based writer drops influxdb-java and guava, lombok was only used by the baseline. Fixes D4 and D5; the logging and the one-point-per-poll writer fix D2 and D8. The jar keeps its name and now starts home.gateway.Main.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
A watchdog exit must not hammer the controller, which takes one client at a time. README describes the config file.

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
fix(config): default the spool cap to 20 MB per database
CI / Backend tests (Maven / Java 21) (push) Successful in 49s
d6531054ec
The review found that draining a large spool rewrites a lot on the Pi's
SD card; 20 MB still holds days of readings during an outage.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
mariusz.pacek added 1 commit 2026-10-24 02:56:58 +00:00
Merge master into feat/gateway-main
CI / Backend tests (Maven / Java 21) (push) Failing after 34s
daa8de3235
# Conflicts:
#	src/test/java/home/gateway/adapters/modbus/MockModbusServer.java
mariusz.pacek added 1 commit 2026-10-24 02:57:51 +00:00
test(config): compare the default blocks with the production list
CI / Backend tests (Maven / Java 21) (push) Successful in 51s
6f2f7cdfa0
The block count changed when 4011 was added; comparing with
PRODUCTION_BLOCKS keeps the test about the default, not a number.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
mariusz.pacek added 1 commit 2026-10-24 03:21:19 +00:00
Merge master into feat/gateway-main
CI / Backend tests (Maven / Java 21) (push) Successful in 53s
39b682f2ff
mariusz.pacek added 1 commit 2026-10-24 07:19:04 +00:00
Merge remote-tracking branch 'origin/master' into feat/gateway-main
CI / Backend tests (Maven / Java 21) (push) Successful in 1m20s
7402a1d6a2
mariusz.pacek closed this pull request 2026-10-24 07:58:45 +00:00

Pull request closed

Please reopen this pull request to perform a merge.
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: mariusz.pacek/home-pump#42