{% extends "base.html" %} {% block title %}{{ source.name }} — LynxManager{% endblock %} {% block content %}

{{ source.name }}

type: {{ source.type }}
{% if source.locked %} 🔒 locked {% endif %} {% if source.drift_severity == "critical" %} drift: critical {% elif source.drift_severity == "warning" %} drift: warning {% endif %}
Status
{% if source.path %}
Path
{{ source.path }}
{% endif %} {% if source.chunk_count is not none %}
Chunks
{{ source.chunk_count }}
{% endif %} {% if source.last_commit %}
Last commit
{{ source.last_commit[:12] }}
{% endif %} {% if source.last_update %}
Last update
{{ source.last_update }}
{% endif %}
Drift
{% if source.drift_severity %} {{ source.drift_severity }} {% else %} none {% endif %}
{% if source.graph %}
Graph layer
Nodes
{{ source.graph.nodes }}
Edges
{{ source.graph.edges }}
{% if source.graph.files_indexed is not none %}
Files indexed
{{ source.graph.files_indexed }}
{% endif %} {% if source.graph.last_update %}
Last graph update
{{ source.graph.last_update }}
{% endif %}
{% else %}
Graph layer not enabled. Set graph.enabled = true in the source config to activate call/import graph tools.
{% endif %}
Rebuild index
Runs manager.update("{{ source.name }}", force=True)
{% if source.locked %}
⚠ Another process is writing to this source's ChromaDB (probably lynx serve). Stop it before triggering a build from the UI — concurrent writers will corrupt the index.
{% endif %}
{% endblock %}