feat: Add AI-driven auto-update & restructure into package
The monolithic check_updates.py has been split into the update_monitor/ package with separate modules for fetching, extraction, comparison, classification, and notification. This makes the codebase easier to navigate and test. The flat services.yaml is replaced by per-service directories under services/<name>/config.yaml, co-locating config with update scripts and AI review examples. When --auto-update is enabled, services with an auto-update.sh script get their release notes classified by a local Ollama model (using few-shot examples from review-examples/) to decide whether the update can be applied automatically or needs manual admin intervention. Results are reported in a single consolidated Matrix message. Immich is the first service with auto-update configured, using 7 real release note examples to train the classifier.
This commit is contained in:
parent
f52ff222f0
commit
f55f3d8e91
36 changed files with 2612 additions and 821 deletions
13
services/uptime-kuma/config.yaml
Normal file
13
services/uptime-kuma/config.yaml
Normal file
|
|
@ -0,0 +1,13 @@
|
|||
name: Uptime Kuma
|
||||
base_url: https://uptime.jeena.net/
|
||||
current_version_url:
|
||||
current_version_extract:
|
||||
login_socket:
|
||||
url: https://uptime.jeena.net/
|
||||
username_env: UPTIME_KUMA_USERNAME
|
||||
password_env: UPTIME_KUMA_PASSWORD
|
||||
upstream_latest_version_url: https://api.github.com/repos/louislam/uptime-kuma/releases/latest
|
||||
upstream_latest_extract:
|
||||
type: jsonpath
|
||||
value: $.tag_name
|
||||
notes: Version retrieved via authenticated Socket.IO info event.
|
||||
Loading…
Add table
Add a link
Reference in a new issue