{% extends "base.html" %} {% block title %}Health — Cairn Dashboard{% endblock %} {% block content %}

Health

Probes the same graph-layer helpers as cairn doctor on: {{ db_path }}

Database

{{ health.db_size_bytes | filesize }}

Retention

{% if health.tool_metrics_rows is none %}

unknown

no tool_metrics table

{% else %}

{{ health.tool_metrics_rows }} rows

{% if health.tool_metrics_rows > health.tool_metrics_max_rows %} over cap {% endif %} {% endif %}

tool_metrics cap {{ health.tool_metrics_max_rows }} rows · events ≤ {{ health.events_max_rows }} · build_runs ≤ {{ health.build_runs_max_rows }}

{% if health.tool_metrics_max_age_seconds is none %}

no age bound

{% else %}

age bound {{ health.tool_metrics_max_age_seconds }}s

{% endif %}

Index freshness

{% if health.last_build_age %}

{{ health.last_build_age }}

last build {{ health.last_build_at }}

{% else %}

never

no build_runs recorded

{% endif %}

Embedding backend

{{ health.embed_backend }}

{% if health.hash_fallback %} hash fallback {% else %} model backend {% endif %}

Vector index

{{ health.ann_configured }}{% if not health.ann_backend_enabled %} (unavailable){% endif %}

{{ health.ann_embedding_rows }} embeddings · model {{ health.ann_model }}

{% if health.ann_index_exists is none %}

no embeddings to index yet

{% elif health.ann_index_exists %}

vec0 index: {{ health.ann_index_rows }} rows

{% else %}

no vec0 index built

{% endif %}

Reranker

{% if health.reranker_available %}

available

{% else %}

unavailable

{% endif %}
{% endblock %}