Commit graph

80 commits

Author SHA1 Message Date
d814b05a26 fix: Display 'TIME LOCK ACTIVE' status for auto-sync
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-29 15:24:20 +01:00
68dc16344a fix: preserve comments in config.yml when saving
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-29 14:42:33 +01:00
9a97027870 fix: remove unused out_of_sync_since variable
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-29 14:38:23 +01:00
d015794b03 feat: implement auto-sync with periodic clock nudging
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-29 14:18:10 +01:00
c0613c3682 revert 2025-07-29 12:21:54 +01:00
fcbd5bd647 clarification in this 2025-07-29 12:18:24 +01:00
89849c6e04 refactor: simplify default configuration
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-29 11:59:46 +01:00
4090fee0a6 test: Restore original config.yml after tests
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-29 11:49:22 +01:00
fb8088c704 test: add missing milliseconds field to TimeturnerOffset init
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-29 11:44:59 +01:00
c712014bb9 feat: Allow millisecond offset for timeturner
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-29 11:39:46 +01:00
a12ee88b9b feat: Force sync on config save with timeturner offset
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-29 00:13:23 +01:00
917a844874 refactor: remove empty test module from ui.rs
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-29 00:09:17 +01:00
aee69679ef fix: remove unused chrono imports
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-29 00:02:46 +01:00
80faf4db9a fix: resolve build errors by adapting to clock delta refactor
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-28 23:58:52 +01:00
cc782fcd7e feat: add EWMA clock delta and adjtimex nudge controls
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-28 23:51:27 +01:00
6a45660e03 fix: process LTC frames in background to update app state
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-28 23:43:28 +01:00
985ccc6819 fix: Enable std feature for log and remove clock history
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-28 23:39:01 +01:00
5a86493824 feat: add daemon log viewer to web UI
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-28 23:36:51 +01:00
b803de93de feat: display clock delta history in UI
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-28 23:14:31 +01:00
7bf45c43c9 feat: add daemonization with the daemonize crate
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 22:05:11 +01:00
8864bef1db fix: import DateTime and remove unused Datelike import
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 21:24:01 +01:00
060cff4089 fix: Resolve serde lifetime error in ApiStatus struct
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 21:21:41 +01:00
6ed1fc31e7 refactor: extract time calculation logic and add tests
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 21:16:38 +01:00
ec132a2840 refactor: replace systemd logger with env_logger
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 20:52:55 +01:00
4ebe8b597a fix: switch to systemd crate to resolve build failure
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 20:43:39 +01:00
2ac14c8d5b fix: Enable systemd feature to correctly initialize logger
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 20:40:18 +01:00
838082e95a fix: manually initialize systemd logger to fix build error
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 20:33:14 +01:00
b2f50be611 fix: correct systemd logger initialization for Linux builds
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 20:10:49 +01:00
183fdc0725 fix: use init_with_level for systemd logger initialization
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 20:03:45 +01:00
b1a0483d6c fix: Correct systemd logger initialization
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 19:58:51 +01:00
154c07f613 fix: update logger call and remove unused import
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 19:54:46 +01:00
12065a08c2 fix: Conditionally compile systemd features for Linux only
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 19:46:16 +01:00
b854d29015 refactor: Extract system and status logic from UI module
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 19:44:10 +01:00
1d9bc1e25e feat: add daemon mode and systemd service
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 19:42:46 +01:00
fecfed04e7 fix: remove unused imports
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 19:20:29 +01:00
777a202877 feat: add timeturner for time offsets and migrate config to YAML
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 19:16:06 +01:00
c48ef1cf3f feat: add web frontend to control the API
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 19:00:19 +01:00
19a7ac14fb test: remove non-functional manual_sync test
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 18:47:22 +01:00
03468d7568 test: fix failing manual_sync test assertion
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 18:41:46 +01:00
0a9f9c6612 fix: Add macOS support for time sync command
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 18:39:48 +01:00
ac08ffb54f test: add integration tests for API endpoints
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 17:18:41 +01:00
32b307b935 fix: Embed default config to resolve build failure
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 16:58:56 +01:00
2d6f65046a fix: run API server in LocalSet to fix spawn_local panic
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 16:55:17 +01:00
c94e1ea4b0 fix: use spawn_local to run non-Send API server task
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 16:49:35 +01:00
0325c3b570 fix: Set tokio runtime to current_thread to fix !Send errors
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 16:48:09 +01:00
8ad553aaee feat: add web API for status, sync, and configuration
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 16:44:41 +01:00
a124aae424 test: add tests for ensure_config function
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 16:31:28 +01:00
3cbe95bd6a test: add tests for serial input processing
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 16:18:17 +01:00
0b8fa0fbf8 fix: Calculate clock delta using median to resist outliers
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 16:10:40 +01:00
30fb752cbb test: add tests for UI status helpers
Co-authored-by: aider (gemini/gemini-2.5-pro-preview-05-06) <aider@aider.chat>
2025-07-21 16:06:22 +01:00