{% extends "base.html" %} {% block title %}Audit{% endblock %} {% block body %}

Audit & attestation

Guardrail decisions stream into an immutable JSONL audit timeline. You can generate an Ed25519 attestation token over the latest event and verify it cryptographically against the studio's public key.

{% if error %}
Error: {{ error }}
{% endif %}

Audit timeline ({{ events | length }} event{{ "" if events | length == 1 else "s" }})

{% if events %}
{% for ev in events %}{{ ev | tojson }}
{% endfor %}
{% else %}

No audit events yet — run the guardrail simulator to populate the timeline.

{% endif %}

Ed25519 attestation

{% if token %}
{{ token }}
{% endif %}
{% if verified %}
Signature verified. Decoded claims:
{{ verified | tojson(indent=2) }}
{% endif %}
{% endblock %}