{# Storage: STO-01's machine total with a per-project breakdown (every component marked source or derived), the managed root and its free space, each project's archive root, and the retention rule. Every size is the service's own; the template does no arithmetic. A bucket the service could not fully measure renders as ">= size (unknown)" and is named in the total's note. Retention is manual only (owner, 2026-09-15): nothing here suggests the node cleans up on its own, and the config path names where a user edits it. #}

{{ tr("Machine total") }}

{% if machine_storage.partial %}>= {% endif %}{{ machine_storage.total_size }} {% if machine_storage.partial %}{{ tr("at least: some components could not be measured") }} ({% set names = joiner(", ") %}{% for bucket in machine_storage.buckets %}{% if bucket.partial %}{{ names() }}{{ tr(bucket.label) }}{% endif %}{% endfor %}){% endif %}

{% for bucket in machine_storage.buckets %} {% endfor %}
{{ tr("Component") }}{{ tr("Kind") }}{{ tr("Size") }}
{{ tr(bucket.label) }} {% if bucket.kind == "source" %}{{ tr("Source") }}{% else %}{{ tr("Derived") }}{% endif %} {% if bucket.partial %}>= {% endif %}{{ bucket.size }}{% if bucket.partial %} {{ tr("unknown") }}{% endif %}

{{ tr("The tapes and the model weights are the disk here; transcripts, caches and agent output are small and recomputable. Clearing a cache does not free gigabytes.") }}

{{ tr("Per project") }}

{% if machine_storage.projects %} {% for row in machine_storage.projects %} {% endfor %}
{{ tr("Project") }}{{ tr("Total") }}{{ tr("Components") }}{{ tr("Workspace") }}
{{ row.name }} {% if row.partial %}>= {% endif %}{{ row.total_size }}{% if row.partial %} ({{ tr("at least: some components could not be measured") }}: {% set names = joiner(", ") %}{% for bucket in row.buckets %}{% if bucket.partial %}{{ names() }}{{ tr(bucket.label) }}{% endif %}{% endfor %}){% endif %} {% for bucket in row.buckets %}
{{ tr(bucket.label) }} ({% if bucket.kind == "source" %}{{ tr("Source") }}{% else %}{{ tr("Derived") }}{% endif %}): {% if bucket.partial %}>= {% endif %}{{ bucket.size }}{% if bucket.partial %} {{ tr("unknown") }}{% endif %}
{% endfor %}
{% for workspace in row.workspaces %}
{{ workspace.meeting }}: {% if workspace.path %}{{ workspace.path }}{% else %}{{ tr("no workspace yet") }}{% endif %} {% if workspace.partial %}(>= {{ workspace.total_size }}){% else %}({{ workspace.total_size }}){% endif %} — {% if workspace.managed %}{{ tr("managed by clear-record, on the managed root's disk") }}{% else %}{{ tr("user-chosen, measured on its own disk") }}{% endif %}
{% endfor %}

{{ tr("Model weights are shared machine-wide; counted once above") }}

{% else %}
{{ tr("No projects yet.") }}
{% endif %}
{{ tr("Managed root") }} {{ managed_root }}
{{ tr("Free space") }} {% if free_size %}{{ free_size }}{% else %}{{ tr("unknown") }}{% endif %}
{{ tr("Config file") }} {{ config_path }}

{{ tr("Archive roots") }}

{% if archive_roots %} {% for row in archive_roots %} {% endfor %}
{{ tr("Project") }}{{ tr("Archive root") }}
{{ row.project.name }} {% if row.root %}{{ row.root }}{% else %}{{ tr("not set") }}{% endif %}
{% else %}
{{ tr("No projects yet.") }}
{% endif %}

{{ tr("Retention is manual only: clear-record never deletes tapes on its own, and the archive is the durable copy. Set the managed root in {path}; a project's archive root is edited on the project.", path=config_path) }}