diff options
| author | Agando <roduccomm@gmail.com> | 2026-11-02 21:15:28 +0100 |
|---|---|---|
| committer | Agando <roduccomm@gmail.com> | 2026-11-02 21:15:28 +0100 |
| commit | 3b894c31c456592a21b36a7696423ad0936edab7 (patch) | |
| tree | 3f23f9a313d351dff0740de90aef56a9cca4d8f9 /modules/test/test-webdav-sizes.js | |
| parent | 35ca5324ca5a0b3e1e6f02663e1e44d6e06e50ba (diff) | |
fix(newos4): memory-graph loads stop rewriting user data; unknown sizes say unknown
Three follow-ups from the merge review, each with the assertion that pins it.
module-memory-graph.js
- _normalizeEdges no longer mutates stored weights. It capped legacy 'failed' edges
from 0.8 to 0.2 in memory, and the next debounced save made that permanent - an
irreversible migration of the user's graph with no schema version. The cap moved to
_effectiveWeight(), which ranking (showStats "Strongest relationships"), the session
view and prune() now use; the stored record is left exactly as written.
- config.json is stamped version: 2 so a future format change can migrate deliberately.
ext/webdav.js
- the two fallback parsers emit size: null instead of 0. They cannot see the size
column, and 0 rendered as "0 B" - the same "every file looks empty" symptom as the
parseInt bug fixed in e639c2d, one regex miss away.
- _formatSize(null) renders '—' (unknown) rather than '0 B'; 0 still renders '0 B'.
module-aiassist.js
- the lock timeout now says what to do: "AI is still busy with another turn (waited Ns).
Wait for it to finish, or run 'ai-stop' and retry - the running turn's lock is left
alone." It used to be a dead-end string.
Tests: test-memory-graph 39 (T6.4 rewritten to the read-time contract: stored weight
stays 0.8, effective 0.2, success unaffected), test-webdav-sizes 28 (A14d null -> '—').
maintain 26/26, live v4.6.141: _effectiveWeight 0.2 with the edge object unchanged,
_formatSize(null) '—', '0 B' still '0 B'.
Diffstat (limited to 'modules/test/test-webdav-sizes.js')
| -rw-r--r-- | modules/test/test-webdav-sizes.js | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/modules/test/test-webdav-sizes.js b/modules/test/test-webdav-sizes.js index 68cb90b..9085f23 100644 --- a/modules/test/test-webdav-sizes.js +++ b/modules/test/test-webdav-sizes.js @@ -229,6 +229,7 @@ const said = (out, re) => out.some(o => re.test(o.msg)); // for a 3 GB file) and must not print 'NaN MB' for a missing size. ok('A14a 2 GiB renders as GB', WebDAVModule.prototype._formatSize.call(null, 2 * 1024 * 1024 * 1024) === '2.0 GB', WebDAVModule.prototype._formatSize.call(null, 2 * 1024 * 1024 * 1024)); ok('A14b undefined does not render NaN', WebDAVModule.prototype._formatSize.call(null, undefined) === '—', WebDAVModule.prototype._formatSize.call(null, undefined)); + ok('A14d null renders as unknown, not 0 B', WebDAVModule.prototype._formatSize.call(null, null) === '—', WebDAVModule.prototype._formatSize.call(null, null)); ok('A14c 0 bytes is still B', WebDAVModule.prototype._formatSize.call(null, 0) === '0 B', WebDAVModule.prototype._formatSize.call(null, 0)); console.log('test-webdav-sizes: ' + passes + ' passed, ' + fails + ' failed'); |