Portfolio Intelligence Platform operator view · observability and the measurement contract
Market: live News: half-open LLM: closed

System status · the measurement contract, live · last CI run #212 at 08:40 all gates green

Eval harness pass rate (golden set v7)
96.5 %
threshold ≥ 95 % · ok
Cost per advisor request, p95 (today)
CHF 0.31
budget ≤ 0.40 · ok
Latency per advisor request, p95
14.2 s
budget ≤ 20 s · ok
Module-boundary violations (import-linter)
0
no LLM call outside the gateway · ok

Circuit breakers every external call

DependencyStateFails/10mFallback
Market price APIclosed0snapshot
News APIhalf-open4last ingestion
LLM API (gateway)closed1fallback model · then pause insights
timeouts: 3 s / 5 s / 30 s · retries: 3 with backoff · degraded mode announced in the UI

Token spend today LLM gateway

daily budget 06h13h
Extraction (ResearchAgent)184 k tokensCHF 2.10
Advisor requests (31)199 k tokensCHF 3.42
Eval harness run62 k tokensCHF 0.71

CI gates, run #212 main branch

Unit tests, deterministic services128 / 128
Reference vectors (perf / risk / opt)42 / 42
Module boundaries (import-linter)0 violations
Eval harness (prompt v12, model pinned)96.5 % ≥ 95 %
Cost budget per request (replay)p95 0.31 ≤ 0.40
Threat checks (prompt-injection set)21 / 21 blocked
Last failed gate: run #207 — eval 93.8 % after prompt v11 → change rejected, rolled back (a contract that never fails has never been tested).
1Basic observability of cost and latency per request is mandatory (§5); budgets are CI-gated fitness functions (M2).
2Eval harness as a CI gate with accuracy and failure modes, not "it works" (§4.3, M5).
3Threat model incl. prompt injection via news; basic hardening (M5).
SKETCH 6/7 · wireframe, not a specification