Skip to content

Commit 5c3a907

Browse files
authored
Merge pull request #7 from T-Crypt/JJF1Y39-housekeeping
2 parents 57b26a5 + ca5c5a2 commit 5c3a907

2 files changed

Lines changed: 18 additions & 3 deletions

File tree

‎.github/workflows/verify.yml‎

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -25,6 +25,21 @@ jobs:
2525
run: node smoke/ui-primitives.mjs
2626
- name: app shell and view model
2727
run: node smoke/shell.mjs
28+
- name: collector boots and serves (headless)
29+
run: |
30+
set -euo pipefail
31+
python3 collector/speculum.py --port 18792 &
32+
pid=$!
33+
trap 'kill "$pid" 2>/dev/null || true' EXIT
34+
for i in $(seq 1 20); do
35+
curl -sf http://127.0.0.1:18792/api/snapshot >/dev/null && break
36+
sleep 0.5
37+
done
38+
curl -sf http://127.0.0.1:18792/api/snapshot | python3 -m json.tool
39+
tmp=$(mktemp)
40+
timeout 2 curl -sN http://127.0.0.1:18792/api/stream > "$tmp" || true
41+
head -n 2 "$tmp"
42+
rm -f "$tmp"
2843
2944
windows:
3045
runs-on: windows-latest

‎README.md‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ The deck holds twelve panels:
6363

6464
| Panel | Shows |
6565
|---|---|
66-
| **KPI** | ten metrics in four groups: Throughput (decode rate — which names the model it tracks, requests/min), Latency (first token, time per token, p95), Cache (hit rate, re-ingest tax, MTP acceptance), Capacity (VRAM, queue depth). Each carries a 60-min sparkline and a delta against 15 min ago. |
66+
| **KPI** | ten metrics in four groups: Throughput (decode rate, which names the model it tracks, and requests/min), Latency (first token, time per token, p95), Cache (hit rate, re-ingest tax, MTP acceptance), Capacity (VRAM, queue depth). Each carries a 60-min sparkline and a delta against 15 min ago. |
6767
| **Throughput** | rolling decode tok/s, one trace per engine, 15 min to 30 d. Ranges past 1 h read from the history database. |
6868
| **GPU & host** | meters for temperature, utilisation, power draw and VRAM, with warn/crit ticks from the real power limit and VRAM total. Device readouts (SM and memory clock, fan, PCIe) plus host CPU, RAM, load and top processes. |
6969
| **Context** | one bar per live session: prompt tokens against the model window, ticks at 75 % and 90 %. |
@@ -154,7 +154,7 @@ port = 9091 # default http://127.0.0.1:9090
154154
url = "http://127.0.0.1:8090" # default http://127.0.0.1:8080
155155
```
156156

157-
NInfer has no port of its own: it rides the proxy llama-swap reports in `/running`, so fixing `[llama_swap]` is enough. Ports configured here are skipped by discovery, so they are never mistaken for a separate engine.
157+
NInfer has no port of its own: it uses the proxy that llama-swap reports in `/running`, so fixing `[llama_swap]` is enough. Ports configured here are skipped by discovery, so they are never mistaken for a separate engine.
158158

159159
## Demo mode
160160

@@ -226,7 +226,7 @@ node smoke/shell.mjs # real app.js shell,
226226
python3 -m http.server 8792 # → http://localhost:8792/?demo
227227
```
228228

229-
The UI files are ES modules, so `node --check` does not apply to them. The smoke scripts import and run them, which serves as the parse-and-run check.
229+
The UI files are ES modules, so `node --check` does not apply to them. The smoke scripts import and run them, which is the parse-and-run check.
230230

231231
The two `test_hostinfo.py` skips are platform gates: the `/proc` backend runs on Linux and the Win32 ctypes backend runs only on Windows. On a Linux box the Windows path is read, not executed, so its numbers stay unverified until you run the suite on Windows.
232232

0 commit comments

Comments
 (0)