Probes the same graph-layer helpers as cairn doctor on:
{{ db_path }}
{{ health.db_size_bytes | filesize }}
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 %}{{ health.last_build_age }}
last build {{ health.last_build_at }}
{% else %}never
no build_runs recorded
{% endif %}{{ health.embed_backend }}
{% if health.hash_fallback %} hash fallback {% else %} model backend {% endif %}{{ 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 %}available
{% else %}unavailable
{% endif %}