aboutsummaryrefslogtreecommitdiff
path: root/help.html
diff options
context:
space:
mode:
Diffstat (limited to 'help.html')
-rw-r--r--help.html20
1 files changed, 20 insertions, 0 deletions
diff --git a/help.html b/help.html
index 2ab9bfa..a464d5f 100644
--- a/help.html
+++ b/help.html
@@ -1689,6 +1689,26 @@ listmods</pre>
<h2>📋 Changelog</h2>
<div class="version-item">
+ <div class="v-header"><span class="v-num">v4.6.88–90 — October 2026</span>
+ <span class="v-date">one phantom entry, three bugs</span></div>
+ <ul>
+ <li><strong>A directory listing invented a <code>sys</code> entry.</strong> <code>ls</code>
+ injects the virtual <code>/sys</code> — but it tested the <em>argument</em> instead of the
+ result, so after <code>cd _agents</code> the listing showed <code>sys</code> inside
+ <code>_agents</code>, and a follow-up <code>list_files('_agents/sys')</code> failed with
+ "Directory not found". The listing lied; the resolver was right. Injection now happens only
+ for the root directory.</li>
+ <li><strong><code>tree</code> crashed on the root listing.</strong> The same virtual entry was
+ pushed into the walk and then dereferenced, throwing
+ <code>Cannot read properties of undefined</code> mid-output — a partial tree, which is where
+ two different file counts came from.</li>
+ <li><strong>The file counts now agree.</strong> The world model's walk descended into the
+ synthetic <code>/sys</code> subtree, so it reported 146 files in 114 directories for a store
+ that holds 44 in 15. It skips virtual entries now, and matches an independent walk exactly.</li>
+ </ul>
+ </div>
+
+ <div class="version-item">
<div class="v-header"><span class="v-num">v4.6.86–87 — October 2026</span>
<span class="v-date">audit honesty, static assets</span></div>
<ul>