Metric

Admina Score

The Admina Score is the headline metric on the dashboard — a live-runtime composite (0–100) that answers a single question: right now, how well is this Admina instance actually governing the traffic it sees? It is not a marketing number and not a static checklist — it is recomputed on every read from the proxy's current state.

Live runtime 0–100 GET /api/dashboard/score Recomputed per request

What it measures

The Admina Score is a weighted sum of five independent governance signals. Each signal is a boolean or proportional check against the proxy's current runtime state — not a stored value, and not a promise about future behaviour.

87/100
Example live score
Data Residency +25
Interactions Audited +25
EU AI Act Coverage +25
No Recent Attacks +15
Forensic Chain Valid +10
Total 100

Formula

Implemented in proxy/api/dashboard.py::_compute_governance_score.

# pseudocode
score  = 0
score += 25  # data residency (proxy is enforcing)
score += 25  # interactions audited (forensic box has events)
score += round(eu_ai_act_compliance_score / 100 * 25)  # up to +25
score += 15  # no blocked attacks in last 24h
score += 10  # forensic chain past GENESIS
# → 0 <= score <= 100

The five components

Data Residency

+25
SignalThe governance proxy is running and enforcing residency rules
Formula+25 whenever the proxy is up (residency enforcement is always-on in proxy mode)
How to improveEnable domains.data_sovereignty.residency in admina.yaml; configure the allowed zones; set block_outbound: true.

Interactions Audited

+25
SignalForensic black box is active with at least one recorded event
Formula+25 when forensic_box.record_count > 0, else 0
How to improveEnsure MinIO is reachable and forensic_store: minio is set; send at least one request through /mcp or /api/v1/audit to seed the chain.

EU AI Act Coverage

+25
SignalLatest EU AI Act assessment is close to full Article 9–15 coverage
FormulaProportional to the latest assessment: round(compliance_score / 100 × 25)
How to improveRun POST /api/compliance/classify with your system description; then address gaps surfaced by the gap analysis (risk management, data governance, logging, transparency, human oversight, accuracy/robustness).

No Recent Attacks

+15
SignalZero blocked attacks observed in the last 24 hours
Formula+15 if metrics.requests_blocked == 0, else 0
How to improveA zero here is good — it means no malicious traffic has been detected and blocked in the window. If the score dropped to 0, inspect the blocked-action events in the live feed.

Forensic Chain Valid

+10
SignalSHA-256 hash chain has moved past its genesis (i.e. the chain is real and verifiable)
Formula+10 when forensic_box.chain_head != "GENESIS", else 0
How to improveSend real governed traffic through the proxy so the forensic logger appends at least one record past GENESIS.

Admina Score vs OISG Score

Admina surfaces two 0–100 scores on the dashboard. The Admina Score (this page) is a live runtime composite. The OISG Score is a static capability assessment. They answer different questions and should be read together.

→ Full side-by-side comparison, a 2×2 interpretation matrix (high/low × high/low), and scenario-based guidance on which score to consult first: Admina Score vs OISG Adequacy.

API response

curl http://localhost:8080/api/dashboard/score \
  -H "X-API-Key: $ADMINA_API_KEY"
{
  "score": 87,
  "max_score": 100,
  "breakdown": {
    "data_residency": 25,
    "interactions_audited": 25,
    "eu_ai_act_coverage": 22,
    "no_recent_attacks": 15,
    "forensic_chain_valid": 10
  },
  "computed_at": "2026-04-27T09:30:00Z"
}