<feed xmlns='http://www.w3.org/2005/Atom'>
<title>newos4/modules/test/test-world-model-save.js, branch main</title>
<subtitle>newOS4 - the browser terminal that runs WebX11 user spaces</subtitle>
<id>https://newos.webx11.duckdns.org/newos4/atom?h=main</id>
<link rel='self' href='https://newos.webx11.duckdns.org/newos4/atom?h=main'/>
<link rel='alternate' type='text/html' href='https://newos.webx11.duckdns.org/newos4/'/>
<updated>2026-10-23T12:39:45+00:00</updated>
<entry>
<title>fix(newos4): unmeasured skills are untracked, world-model writes verified, skill audit</title>
<updated>2026-10-23T12:39:45+00:00</updated>
<author>
<name>Agando</name>
<email>roduccomm@gmail.com</email>
</author>
<published>2026-10-23T12:39:45+00:00</published>
<link rel='alternate' type='text/html' href='https://newos.webx11.duckdns.org/newos4/commit/?id=940bf43ba5cbed2d0a9afa4c70ffbc3df5cb3f90'/>
<id>urn:sha1:940bf43ba5cbed2d0a9afa4c70ffbc3df5cb3f90</id>
<content type='text'>
External review packet (os4-external-review-v4.6.51.html) triaged against the code:
2 findings confirmed and fixed, 4 could not be reproduced and were recorded as such.

- module-memory-graph.js: getStaleSkills() treated a missing lastUsed as 999 days
  unused, so skill-audit recommended archiving every skill (22 of 22). Skills with no
  usage telemetry are now collected by getUntrackedSkills() and never counted stale.
  Live: "Stale: 0" + "Untracked: 22 (no usage telemetry — NOT stale)".
- module-world-model.js: _saveToVFS() ignored fsWriteJSON()'s return value and promoted
  whatever a truthy read returned. Now write -&gt; read-back -&gt; byte compare -&gt; promote,
  with every return checked. Regression test modules/test/test-world-model-save.js
  (red on the old code: promoted=true with errs=[]; green now).
- scripts/newos4-skill-audit.py: 5 mechanical probes (version x3, read_file paging +
  context budget, selection symbols, required scripts, extKeys) + skill presence;
  exits non-zero on drift. 7/7 pass today. Weekly job cb6bc2a16216 runs it Mondays.

Not reproduced (recorded in admin/docs/newos4-external-review-verification-2026-10-23.md):
world_model_query empty-payload throw (live call returns JSON), pipes-as-command-names,
ls skills empty (23 entries via fs.readDir), ~66 agent dirs (4 live).
</content>
</entry>
</feed>
