Remove readme_preview fetch and total_entries from tree view
readme_preview was still being fetched (a git show per page load)
after the sidebar block that rendered it was removed. total_entries
was also dropped as unneeded display information.

Assisted-by: Claude Sonnet 4.6 via Claude Code
change nqoknplpxoyrswrkoqrpqpnmzwtwwsuy
commit 227167e9c3c9e9a26f0f787760f888a3091c25db
author Alpha Chen <alpha@kejadlen.dev>
date
parent npxolrtp
diff --git a/quire-server/src/quire/web/handlers/tree.rs b/quire-server/src/quire/web/handlers/tree.rs
index 51fa9d8..42ce017 100644
--- a/quire-server/src/quire/web/handlers/tree.rs
+++ b/quire-server/src/quire/web/handlers/tree.rs
@@ -65,9 +65,7 @@ async fn tree_at_path(quire: Quire, repo: String, path: String) -> Response {
         bookmark: tree_data.bookmark,
         sha_short: tree_data.sha_short,
         entries: tree_data.entries,
-        total_entries: tree_data.total_entries,
         head_commit: tree_data.head_commit,
-        readme_preview: tree_data.readme_preview,
     };
     render(&tmpl)
 }
@@ -76,9 +74,7 @@ struct TreeData {
     bookmark: String,
     sha_short: String,
     entries: Vec<TreeEntry>,
-    total_entries: usize,
     head_commit: Option<PathCommit>,
-    readme_preview: Option<String>,
 }
 
 fn read_tree_data(reader: &RepoView<'_>, path: &str) -> Option<TreeData> {
@@ -124,8 +120,6 @@ fn read_tree_data(reader: &RepoView<'_>, path: &str) -> Option<TreeData> {
         bo.cmp(&ao).then(an.cmp(bn))
     });
 
-    let total_entries = raw.len();
-
     let mut entries: Vec<TreeEntry> = Vec::new();
 
     if !path.is_empty() {
@@ -177,28 +171,10 @@ fn read_tree_data(reader: &RepoView<'_>, path: &str) -> Option<TreeData> {
         })
     };
 
-    let readme_preview = {
-        let readme_git_path = if path.is_empty() {
-            "HEAD:README.md".to_string()
-        } else {
-            format!("HEAD:{}/README.md", path)
-        };
-        reader.run(&["show", &readme_git_path]).map(|content| {
-            let trimmed = content.trim().to_string();
-            if trimmed.len() > 400 {
-                format!("{}…", &trimmed[..400])
-            } else {
-                trimmed
-            }
-        })
-    };
-
     Some(TreeData {
         bookmark,
         sha_short,
         entries,
-        total_entries,
         head_commit,
-        readme_preview,
     })
 }
diff --git a/quire-server/src/quire/web/templates.rs b/quire-server/src/quire/web/templates.rs
index 426aef2..53a25c6 100644
--- a/quire-server/src/quire/web/templates.rs
+++ b/quire-server/src/quire/web/templates.rs
@@ -381,9 +381,7 @@ pub struct TreeTemplate {
     /// Short commit hash for HEAD.
     pub sha_short: String,
     pub entries: Vec<TreeEntry>,
-    pub total_entries: usize,
     pub head_commit: Option<PathCommit>,
-    pub readme_preview: Option<String>,
 }
 
 impl TreeTemplate {
diff --git a/quire-server/templates/tree.html b/quire-server/templates/tree.html
index 8368a60..69e7bec 100644
--- a/quire-server/templates/tree.html
+++ b/quire-server/templates/tree.html
@@ -19,8 +19,6 @@
         <span class="change-head">{{ self.sha_head() }}</span><span class="change-tail">{{ self.sha_tail() }}</span>
       </span>
     </span>
-    <span class="repo-meta-dot">·</span>
-    <span class="repo-meta-item">{{ total_entries }} entries</span>
   </div>
 </header>
 
@@ -110,7 +108,6 @@
     <div class="side-block side-block--last">
       <div class="side-block-title">This directory</div>
       <div class="tree-stats">
-        <div class="tree-stat-row"><span class="tree-stat-label">entries</span><span>{{ total_entries }}</span></div>
         {% if self.dir_count() > 0 %}
         <div class="tree-stat-row"><span class="tree-stat-label">directories</span><span>{{ self.dir_count() }}</span></div>
         {% endif %}