mram
a07b6726ea
Pin compose example to v0.3.0
ci / test (push) Successful in 15s
ci / docker (push) Successful in 1m7s
ci / release (push) Successful in 15s
v0.3.0
2026-09-22 13:31:05 +02:00
mram
d2c49e52fa
Monitor: show Ollama's loaded models, their VRAM footprint, and busy state
...
The status snapshot now queries /api/ps (2s timeout so a wedged Ollama
cannot stall the channel) and the ollama line renders e.g.
'UP · llama3.1:8b (4.8 GiB VRAM) · busy'; comfy gets the busy marker
too while an image job runs.
2026-09-22 12:44:04 +02:00
mram
e98331bb9e
Pin compose example to v0.2.9
ci / test (push) Successful in 14s
ci / docker (push) Successful in 1m8s
ci / release (push) Successful in 16s
v0.2.9
2026-09-22 11:23:17 +02:00
mram
54174787d5
Fix control-pipe client race: retry CreateFile on ERROR_PIPE_BUSY
...
WaitNamedPipe can report an instance that a concurrent client (the
monitor polls status every second) grabs before our CreateFile runs;
the single-attempt Ask then failed with 'no answer from the service'.
Retry the wait+open until a 5s overall deadline.
2026-09-22 11:22:27 +02:00
mram
d259b2e96c
Add GPU_FOREIGN_UTIL_PCT: game detection via per-process GPU 3D-engine usage
...
Reads the same PDH counters as Task Manager (\GPU Engine(*)\Utilization
Percentage, locale-independent via PdhAddEnglishCounterW), which cover
graphics work under WDDM — games are caught without an exe list and the
offender is named. Windows-only; a missing or failing counter disables
the path with one log line. dwm (the desktop compositor) joins the
default ignore list.
2026-09-22 10:53:29 +02:00
mram
8fccd333aa
Env names in reload diff; monitor shows last VRAM check result; harden control channel against floods
...
- diffConfig reports the env var names (from new struct tags) instead of
Go field names, so the reload-env reply names what the user can change
- the monitor's GPU line now shows the game detector's last finding
(external holders or none) and how long ago the check ran
- control channel: 10s per-connection watchdog (abortive force-close),
cap of 32 concurrent connections, reload-env rate-limited; command
read was already capped at 4 KiB
2026-09-22 09:24:27 +02:00
mram
4bd5f34ce7
Pin compose example to v0.2.8
ci / test (push) Successful in 15s
ci / docker (push) Successful in 1m6s
ci / release (push) Successful in 15s
v0.2.8
2026-09-22 09:10:14 +02:00
mram
b9d3f91403
Monitor: hotkeys (q quit, u update now) with footer line; show GPU VRAM usage
2026-09-22 09:10:14 +02:00
mram
98d2d714ca
Add --reload-env: service re-reads and validates its config, restarts when idle if it changed
2026-09-22 09:02:25 +02:00
mram
7a6409831c
Pin compose example to v0.2.7
ci / test (push) Successful in 14s
ci / docker (push) Successful in 1m7s
ci / release (push) Successful in 16s
v0.2.7
2026-09-22 08:47:47 +02:00
mram
c7b8747d85
Fix control pipe accept loop: create instances only after a client connects; CLI force-update never touches the service log file
2026-09-22 08:43:58 +02:00
mram
09d4e81eab
Pin compose example to v0.2.6
ci / test (push) Successful in 15s
ci / docker (push) Successful in 1m6s
ci / release (push) Successful in 15s
v0.2.6
2026-09-22 08:36:36 +02:00
mram
1264afe40e
Monitor restarts itself when the service updated its binary on disk
2026-09-22 08:34:47 +02:00
mram
c95d401a36
Pin compose example to v0.2.5
ci / test (push) Successful in 14s
ci / docker (push) Successful in 1m6s
ci / release (push) Successful in 16s
v0.2.5
2026-09-22 08:32:06 +02:00
mram
f7ea30a494
Fix control pipe races: treat ERROR_PIPE_CONNECTED as success, flush+disconnect before close so replies are never discarded
2026-09-22 08:31:13 +02:00
mram
620be9d57c
Add short flags: -i (install), -r (remove), -m (monitor)
2026-09-22 08:23:40 +02:00
mram
cffb4151a6
Pin compose example to v0.2.4
ci / test (push) Successful in 14s
ci / docker (push) Successful in 1m9s
ci / release (push) Successful in 15s
v0.2.4
2026-09-22 08:19:13 +02:00
mram
16dc7fe462
Add --monitor: live status view (downstream health, GPU lock, queue) via the control channel
2026-09-22 08:17:05 +02:00
mram
a74cd49fe5
Pin compose example to v0.2.3
ci / test (push) Successful in 14s
ci / docker (push) Successful in 1m9s
ci / release (push) Successful in 15s
v0.2.3
2026-09-21 23:03:45 +02:00
mram
cc2a2cad27
Add --update-now: update trigger that only goes through the service's control channel
2026-09-21 23:03:45 +02:00
mram
f707d07fd8
Local control channel: unprivileged users can trigger --force-update via the running service
2026-09-21 23:00:38 +02:00
mram
ca33a3db82
Pin compose example to v0.2.2
ci / test (push) Successful in 16s
ci / docker (push) Successful in 1m8s
ci / release (push) Successful in 15s
v0.2.2
2026-09-21 22:34:56 +02:00
mram
507af1dbff
Managed ComfyUI picks up Comfy-Desktop shared models/input/output automatically
2026-09-21 22:34:10 +02:00
mram
45bc9fe27c
Strip ANSI escapes from managed ComfyUI output in the log; spawn child with NO_COLOR/TERM=dumb
2026-09-21 22:29:41 +02:00
mram
5b752d5637
Pin compose example to v0.2.1
ci / test (push) Successful in 14s
ci / docker (push) Successful in 1m16s
ci / release (push) Successful in 15s
v0.2.1
2026-09-21 22:19:49 +02:00
mram
b55d548c5f
install-service: grant venv base interpreter (pyvenv.cfg home) outside COMFY_DIR
2026-09-21 22:19:08 +02:00
mram
2d5be72436
--force-update reports from/to versions; elevated parent no longer claims "update applied" when nothing changed
2026-09-21 21:58:50 +02:00
mram
21e40a1774
Pin compose example to v0.2.0
ci / test (push) Successful in 14s
ci / docker (push) Successful in 1m7s
ci / release (push) Successful in 15s
v0.2.0
2026-09-21 21:47:48 +02:00
mram
bdc844872d
Install narrates itself: stop/copy/start steps and the potentially long icacls tree grant
2026-09-21 21:36:45 +02:00
mram
299b6dc0bb
Distinguish EACCES from ENOENT in the COMFY_DIR startup check
2026-09-21 21:32:45 +02:00
mram
9589e58ce6
Install opens up COMFY_DIR for the sandboxed service: ACL grant on Windows, BindPaths on Linux
2026-09-21 21:30:35 +02:00
mram
be0bb36317
Pin compose example to v0.1.10
ci / test (push) Successful in 28s
ci / docker (push) Successful in 1m15s
ci / release (push) Successful in 17s
v0.1.10
2026-09-21 21:20:49 +02:00
mram
9b267533c9
COMFY_DIR alone manages ComfyUI: derive the launch command from the standard venv layout
2026-09-21 21:18:33 +02:00
mram
6f092ddc12
Default GAME_POLL_INTERVAL to 15s: nvidia-smi polls keep the GPU awake
2026-09-21 21:10:21 +02:00
mram
0228ccc296
Pin compose example to v0.1.9
ci / test (push) Successful in 17s
ci / docker (push) Successful in 1m17s
ci / release (push) Successful in 19s
v0.1.9
2026-09-21 20:57:34 +02:00
mram
9997913929
Sync the env file at startup, not just at install: updates append new settings
2026-09-21 20:56:32 +02:00
mram
482731ed9e
Pin compose example to v0.1.8
ci / test (push) Successful in 14s
ci / docker (push) Successful in 1m11s
ci / release (push) Successful in 15s
v0.1.8
2026-09-21 17:19:16 +02:00
mram
e4bdc92ece
Game detection: foreign GPU holders take an external lock hold (GAME_PROCS, GPU_FOREIGN_VRAM_MB)
2026-09-21 17:16:56 +02:00
mram
14120bf4a4
Supervisor probes before spawning: an external server on the port is used, never fought or killed
2026-09-21 16:06:28 +02:00
mram
d7566329ae
Managed ComfyUI: COMFY_CMD starts it on demand, idle stop frees VRAM (internal/supervise)
2026-09-21 13:48:07 +02:00
mram
e43ad02fc4
Ignore staged-update leftovers next to the dev exe
2026-09-21 13:14:33 +02:00
mram
232f5b61f2
Periodic upstream health checks (HEALTH_INTERVAL, default 30s); log down/recovered transitions
2026-09-21 13:14:18 +02:00
mram
5e7a042cad
CFG_VER is always a concrete version: dev builds stamp v0.0.0, never "dev"
2026-09-21 12:42:32 +02:00
mram
14c2e30478
Clarify listener wording: Ollama-compatible clients, not Ollama-facing
2026-09-21 12:38:03 +02:00
mram
dcdb2cc72e
Pin compose example to v0.1.7
ci / test (push) Successful in 13s
ci / docker (push) Successful in 1m7s
ci / release (push) Successful in 16s
v0.1.7
2026-09-21 10:04:29 +02:00
mram
44a8e9fbdc
CFG_VER/APP_VER in the env file: invalid configs replaced, updates follow APP_VER (dev/stable/pin)
2026-09-21 09:28:29 +02:00
mram
272a3a467d
force-update: single-shot with a 30s fail-fast timeout
2026-09-21 09:09:27 +02:00
mram
cedf28a809
force-update does not require consumer URLs (ErrNoConsumer sentinel)
2026-09-21 09:05:46 +02:00
mram
e46e92bee8
Sample env carries a version marker; install appends settings missing since the writing version
2026-09-21 08:54:47 +02:00
mram
cf48796183
Install writes a fully commented sample env file when no config exists
2026-09-21 08:48:51 +02:00