gilles
|
d1b0290e3b
|
feat(apt): analyse des dépôts APT (lecture seule) (tâche 4)
- template repositories (deb lines + deb822), non destructif
- analyzeRepositories (TDD) : composants, repos, détection Proxmox
enterprise/no-subscription, warnings (pve_enterprise_without_subscription,
pve_repo_missing) + notes Debian/Ubuntu composants manquants
- route POST /machines/:id/apt-repositories ; api analyzeRepositories
- popup config : bloc « Dépôts APT » (composants + warnings + notes)
Analyse uniquement (modification = action validée séparée, future). tsc 0 · 113 tests · build OK.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-06 18:41:11 +02:00 |
|
gilles
|
e3e824185f
|
feat(probe): sonde enrichie CPU/RAM/disques + recommandations de profils (tâche 4)
- template machine-probe : lscpu Model name + nproc, MemTotal, lsblk disques
- parseProbe étendu (cpuModel/cpuCores/memoryBytes/disks) + buildRecommendations
(KVM/QEMU → vm_guest_tools) ; tests TDD
- runProbe persiste cpu/mem/disks dans machine_hardware ; /probe renvoie recommendations
- popup Sonde affiche cpu/ram/disks + profils conseillés
tsc 0 · 110 tests · build OK.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-06 18:36:49 +02:00 |
|
gilles
|
c390addadb
|
feat(metrics): machine_metrics_simple — CPU/RAM/disque live par machine (tâche 4)
- template machine-metrics (loadavg/nproc, /proc/meminfo, df -B1) non destructif
- parseMetrics (TDD) → cpu load/cores, mémoire kB→B + %, filesystems, warnings >=90%
- collectMetrics (SSH léger) persiste machine_metrics_latest ; getLatestMetrics (sans SSH)
- routes GET /machines/:id/metrics + POST /metrics/collect ; api latestMetrics/collectMetrics
- section Hardware : bloc métriques live (CPU/RAM/disques + alertes) + bouton Collecter
→ comble le gap « Health » de la tâche 3
tsc 0 · 108 tests · build OK.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-06 17:01:45 +02:00 |
|
gilles
|
58abebf687
|
feat(ui): ajout machine OS/type, section Hardware, identité app (tâche 3)
- AddMachineModal : sélecteurs OS + Type machine ; createMachine accepte
osFamily/machineKind (manuel prioritaire, "Autre/auto" → détection os-release)
- section Hardware sur la tuile + panneau détail : os/type/virt/arch/gpu/réseau
depuis machine_hardware (sonde) via GET /machines/:id/hardware
- identité : favicon.svg (serveur + LED Gruvbox), favicon.ico, apple-touch-icon,
PWA 192/512, site.webmanifest ; liens + theme-color dans index.html
tsc 0 · 104 tests · build OK.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-06 14:07:46 +02:00 |
|
gilles
|
2b684da9cd
|
feat(api): profil machine éditable, sonde, et réglages globaux apt-cacher-ng
- machines : updateMachine (PATCH /machines/:id) + POST /machines/:id/probe
(sonde synchrone → faits + proposition de correction) ; MachineView expose
machineKind/virtualization ; CreateMachineInput accepte aptProxyMode persistent
- app_settings (clé/valeur, migration 0006) + service appSettings :
défaut apt-cacher-ng (mode + url) ; applyProxyToAllMachines
- routes /settings : GET, PUT /apt-proxy, POST /apt-proxy/apply-all
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-06 07:53:47 +02:00 |
|
gilles
|
c3584f4ec8
|
feat: routes HTTP Hono (machines, refresh, actions, executions)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
|
2026-06-05 04:13:15 +02:00 |
|