Commit Graph
53 Commits
Author SHA1 Message Date
bzuccaro 973d5686fc feat: add ignore-certificate-errors option for self-signed TLS 2026-08-28 09:58:58 -06:00
bzuccaro f98043c21b fix: self-heal in-flight counts by pruning stale request ids
On a long-lived SSE connection a missed remove leaves a stale request id in
the tracker forever; llama-swap only sends a fresh snapshot on connect, so
counts drifted up and stayed stuck. The tracker now timestamps each request
id (upserts refresh it) and prunes ids not updated within 120s, on every
inflight event and on a 30s runtime interval. Removes also accept numeric
ids defensively.
2026-08-15 14:26:28 -06:00
bzuccaro 771cb81eb3 Prepare Elgato Marketplace listing: brand author, store assets, listing text
- manifest Author -> c4ch3c4d3 and repackage .streamDeckPlugin
- scripts/store-assets.mts renders real key SVGs into store PNGs (app icon 288, thumbnail + 3 gallery 1920x960)
- store-assets/listing.md: description, tags, release notes, submission checklist
2026-08-14 13:25:38 -06:00
bzuccaro 6d710b2089 docs: remove superpowers planning documents 2026-08-14 13:17:34 -06:00
bzuccaro ef4043dd4e docs: update README for usage stats display and GPU combinations 2026-08-14 13:16:07 -06:00
bzuccaro 2eef59d092 test: strengthen refcount and setConfig regression coverage 2026-08-14 13:06:26 -06:00
c4ch3c4d3 21d2e45f9e fix: refcount StatsCache keys, keep registrations across config change, and tidy GPU/usage render paths 2026-08-14 13:04:56 -06:00
c4ch3c4d3 d04eb6b524 feat: support GPU combinations on the GPU Graph action 2026-08-14 13:00:46 -06:00
c4ch3c4d3 74d0c10523 feat: add combineSeries for GPU combination aggregation 2026-08-14 12:59:41 -06:00
c4ch3c4d3 15627fc494 fix: clear the spark sampler when switching to usage display mode 2026-08-14 12:58:06 -06:00
c4ch3c4d3 e585992087 feat: add usage-stats display mode to In-Flight Monitor action 2026-08-14 12:56:45 -06:00
c4ch3c4d3 4c4ec0e8fd feat: add usage stats key renderer 2026-08-14 12:55:22 -06:00
c4ch3c4d3 f1a5f89e0f feat: expose usage stats via shared runtime StatsCache 2026-08-14 12:54:34 -06:00
c4ch3c4d3 4727bdcf46 feat: decode activity SSE events and expose tracker total 2026-08-14 12:53:40 -06:00
c4ch3c4d3 a03278645d feat: add StatsCache for shared per-model usage polling 2026-08-14 12:52:40 -06:00
c4ch3c4d3 37f7268509 feat: add usage stats parsing and fetching from /api/metrics/stats 2026-08-14 12:47:53 -06:00
bzuccaro 7f877c4efb plan: fix stats re-registration ordering after config change 2026-08-14 12:47:17 -06:00
bzuccaro 2b7764f96d Add Usage Stats + GPU Combinations implementation plan 2026-08-14 12:46:54 -06:00
bzuccaro 93570dc9ba spec: clarify All models datasource handling 2026-08-14 12:45:28 -06:00
bzuccaro e37d1360be Add Usage Stats + GPU Combinations design 2026-08-14 12:45:21 -06:00
bzuccaro ca478ee124 style: use a constant dark background for the In-Flight Monitor key 2026-08-14 12:11:07 -06:00
bzuccaro ca37a690ca fix: render in-flight count as static white (remove blink pulse) 2026-08-14 12:09:57 -06:00
bzuccaro 07fea457f1 fix: track in-flight requests by id; handle llama-swap upsert/remove events
llama-swap emits inflight events with operation 'upsert' (a single request,
re-emitted as elapsed_ms updates) and id-only 'remove' events. The decoder
ignored 'upsert' and dropped every id-only remove, so the tracker only ever
reflected the connect-time snapshot and the count got stuck (e.g. at '1').

The tracker now keys in-flight state by request id (snapshot/add replace by
id; remove deletes by id), and the decoder normalizes 'upsert' to 'add' and
extracts the id from bare removes.
2026-08-14 12:08:02 -06:00
bzuccaro a805195c49 Show in-flight request count + activity spark on In-Flight Monitor key
The key now renders the live request count (large) when a model is active,
plus a 1Hz count-trend sparkline of the last 60s in a bottom strip. IDLE/
LOADING/OFF/OFFLINE states unchanged. History lives in per-key state with
a sampler cleared on disappear.
2026-08-14 11:20:51 -06:00
bzuccaro 5a6ad54b08 Add In-Flight Monitor count + activity spark design 2026-08-14 11:19:20 -06:00
bzuccaro 35481bf387 docs: document multi-key support and shared connection model 2026-08-14 11:01:32 -06:00
bzuccaro 733bc2b4f9 fix: support multiple keys per action and harden runtime/parsing 2026-08-14 10:59:25 -06:00
bzuccaro 7e3377f932 docs: add README; verify plugin install and packaging 2026-08-14 10:53:26 -06:00
bzuccaro 17c8ef885f feat: wire entry point, manifest, property inspectors, and assets 2026-08-14 10:52:13 -06:00
bzuccaro c0e1ab8303 fix: show NO MODEL placeholder instead of OFFLINE when unconfigured 2026-08-14 10:51:02 -06:00
bzuccaro 966ccede3a docs: make NO MODEL placeholder reachable in inflight action 2026-08-14 10:50:50 -06:00
bzuccaro 2ff7d55739 feat: implement inflight monitor and GPU graph actions 2026-08-14 10:49:50 -06:00
bzuccaro 325722f072 docs: restore plan code fence balance after datasource note 2026-08-14 10:49:06 -06:00
bzuccaro f45b29fcaf fix: satisfy JsonObject constraints for settings types 2026-08-14 10:47:38 -06:00
bzuccaro 06eb23bd6a docs: fix CfgSettings/DataSourceItem to satisfy JsonObject in plan 2026-08-14 10:47:20 -06:00
bzuccaro 8818dac640 feat: add shared runtime and PI datasource handlers 2026-08-14 10:46:42 -06:00
bzuccaro 55e260c31b feat: add SVG key renderers for inflight and GPU graph actions 2026-08-14 10:44:06 -06:00
bzuccaro 79917cd054 feat: add SSE event feed for llama-swap api/events 2026-08-14 10:43:03 -06:00
bzuccaro b54eeeadc4 feat: add SSE parser and in-flight request tracker 2026-08-14 10:42:17 -06:00
bzuccaro c6d50f6daf fix: import LlamaSwapConfig from util in metrics poller 2026-08-14 10:41:28 -06:00
bzuccaro 23cf6d168a docs: import LlamaSwapConfig from util in poller plan 2026-08-14 10:41:17 -06:00
bzuccaro 7dba134863 feat: add metrics poller with ring buffers and GPU aggregates 2026-08-14 10:41:04 -06:00
bzuccaro 28cc34dc59 feat: add llama-swap HTTP client 2026-08-14 10:40:09 -06:00
bzuccaro 52b56dcd58 feat: add Prometheus metrics parser for llama-swap GPU series 2026-08-14 10:39:26 -06:00
bzuccaro 953be547f0 feat: add shared util helpers and config 2026-08-14 10:38:42 -06:00
bzuccaro fde5fc75af docs: correct shorten truncation expectation to verified output 2026-08-14 10:38:35 -06:00
bzuccaro 032ca6b2b7 docs: fix shorten test to use a name within the 14-char limit 2026-08-14 10:37:20 -06:00
bzuccaro 0af264ce5b docs: require Stream Deck 7.1+ for Nodejs 24 runtime 2026-08-14 10:36:31 -06:00
bzuccaro c60eef3b2e fix: use tsx test runner discovery and ignore build output 2026-08-14 10:34:31 -06:00
bzuccaro 2f5c5e33b0 chore: scaffold llama-watch Stream Deck plugin 2026-08-14 10:33:48 -06:00