docs: document multi-key support and shared connection model

This commit is contained in:
2026-08-14 11:01:32 -06:00
parent 733bc2b4f9
commit 35481bf387
2 changed files with 3 additions and 1 deletions
+1 -1
View File
@@ -28,7 +28,7 @@ npm test # unit tests (node:test + tsx)
## Configure
Per-key settings: base URL (default `http://localhost:9292`), optional API key, and the model / GPU / metric to watch. The model and GPU dropdowns are populated live from the instance.
Per-key settings: base URL (default `http://localhost:9292`), optional API key, and the model / GPU / metric to watch. The model and GPU dropdowns are populated live from the instance. Each action instance is independent, so you can place several In-Flight Monitor keys (one per model) and several GPU Graph keys (one per GPU × metric) on the same profile. All keys share a single connection to the configured llama-swap instance, which is re-established automatically if you change the base URL or API key on any key.
## Marketplace
@@ -1804,6 +1804,8 @@ export class GpuGraph extends SingletonAction<GpuSettings> {
- [ ] **Step 3: Verify it typechecks**
> **Post-implementation note (approved final-review fix):** the final shipped actions key all per-key state on `ev.action.id` in a `Map` (per `stateFor(action)`), because a `SingletonAction` instance is shared by every key of that UUID — the instance-field version above clobbered state across multiple keys. See commit `ccbf74c`. The runtime's `ensureConnections` also rebuilds the shared feed/poller when a key's base URL or API key changes. The logic described here (states, pulse lifecycle, render-on-change, press-to-open) is unchanged; only state ownership moved from instance fields to per-key Map entries.
Run: `npm run build`
Expected: build succeeds.