{# 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. #}
{% 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 %}
| {{ 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("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 %}
{% endfor %}
{{ 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 %} |
{{ tr("Model weights are shared machine-wide; counted once above") }}
{% else %}| {{ tr("Managed root") }} | {{ managed_root }} |
|---|---|
| {{ tr("Free space") }} | {% if free_size %}{{ free_size }}{% else %}{{ tr("unknown") }}{% endif %} |
| {{ tr("Config file") }} | {{ config_path }} |
| {{ tr("Project") }} | {{ tr("Archive root") }} |
|---|---|
| {{ row.project.name }} | {% if row.root %}{{ row.root }}{% else %}{{ tr("not set") }}{% 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) }}