# newOS4 changelog Generated from git history by `scripts/build-changelog.py` — do not edit by hand between the markers. ## v4.6.146 — 2026-11-05 _Touches modules (3), README.md (2), main.html (1), LICENSE (1) · docs 2, project 1_ - `One dashboard — port billing/API keys, 301 the duplicate` `8bf70f9` - `Publishable README, MIT licence, security policy` `447be4b` - `Clone instructions in the README; publisher sets gitweb owner/description` `350e1d0` ## v4.6.145 — 2026-11-02 _Touches modules (2), main.html (1) · fix 1_ - `Stop offering a Telegram widget where it cannot work` `532e2ff` ## v4.6.144 — 2026-11-02 _Touches modules (3), main.html (1) · fix 1_ - `One session writer for every login path; expire dead credentials` `2421eb4` ## v4.6.143 — 2026-11-02 _Touches modules (6), main.html (1) · fix 1_ - `Read_file pages were silently truncated; delegation no longer invents "completed"` `b380ec8` ## v4.6.141 — 2026-11-02 _Touches modules (7), main.html (1) · fix 1_ - `Memory-graph loads stop rewriting user data; unknown sizes say unknown` `8eaf114` ## v4.6.140 — 2026-11-02 _Touches modules (6), main.html (1) · fix 1_ - `WebDAV listing sizes + pull, and five MemoryGraph defects` `e639c2d` ## v4.6.139 — 2026-11-02 _Touches modules (4), main.html (1) · fix 1_ - `Delegated agent runs no longer serialise; a waiter can't steal a lock` `7491c34` ## v4.6.138 — 2026-11-02 _Touches modules (4), main.html (1) · fix 1, review 1_ - `Chat() threw on every tool-using turn and never returned its answer` `8a9333b` - `Guard chat()'s return and tool-turn survival` `af28b5b` ## v4.6.137 — 2026-11-02 _Touches modules (6), help.html (1), main.html (1), modules-index.json (1) · release 1_ - `Configurable tool budgets, per-model defaults, real tool telemetry` `32608bc` ## v4.6.136 — 2026-11-02 _Touches scripts (4), modules (3), main.html (1) · release 4_ - `No model-class gate; free allowance becomes $0.10/day` `a7cbc19` - `R5 stale-artefact rule + dashboard queues a decision once` `89910fd` - `Ingest report-like chat messages into the feedback queue` `b7fef93` - `Chat plane on the dashboard + honest triage ranking` `9f0b042` ## v4.6.135 — 2026-10-30 _Touches modules (6), data (6), course (2), help.html (1) · release 1, docs 1, project 1_ - `Register `test` / `[` so chains decide locally instead of asking a model (v4.6.135)` `4472c81` - `Regenerate after the metering and shell commits (73 entries)` `4fca1c9` - `Untrack cron/API runtime state, keep it on disk` `8555cd4` ## v4.6.132 — 2026-10-29 _Touches modules (4), CHANGELOG.md (1), data (1), main.html (1) · fix 1_ - `Shell tokenises command lines quote-aware everywhere (v4.6.132)` `3b1773c` ## v4.6.131 — 2026-10-29 _Touches modules (8), scripts (3), help.html (1), main.html (1) · fix 1_ - `Pipe stage quoting, maintain ordering, help cost row, plan status (v4.6.131)` `2c6c218` ## v4.6.130 — 2026-10-29 _Touches modules (5), main.html (1) · fix 1_ - `Js keeps its string literals — dispatcher forwards the raw command line (v4.6.130)` `161372f` ## v4.6.128 — 2026-10-29 _Touches modules (2), help.html (1), main.html (1) · fix 1_ - `Js console handles promise rejections + Node-builtin hint (v4.6.128)` `75c5113` ## v4.6.119 — 2026-10-27 _Touches scripts (6), modules (4), CHANGELOG.md (3), guide.html (2) · release 3, fix 2_ - `if test …` was always false and `for` items never globbed` `e575ee8` - `Generate the changelog from git and keep it current in maintenance` `22bb505` - `Link the changelog in and deep-link each board fix to its build` `b26bfb8` - `Tag builds, feed the changelog to machines, fail maintenance when it ages` `782b3db` - `Apply the GLM-5.3 review to the changelog pipeline` `f3b2664` ## v4.6.118 — 2026-10-27 _Touches modules (5), main.html (1) · fix 1_ - `Send num_ctx to Ollama, and make one auto-connect failure read as one line` `3bba2c2` ## v4.6.116 — 2026-10-27 _Touches modules (7), main.html (1) · fix 1, review 1_ - `Piped grep searched the working directory instead of its input` `8b9c826` - `Prove the mixed-batch loop ceiling stops an agent at 9 identical calls` `b09fea8` ## v4.6.115 — 2026-10-27 _Touches modules (7), main.html (1) · release 1_ - `The script runner runs scripts — control flow, variables, globs, redirects, stdin` `5cf5010` ## v4.6.110 — 2026-10-27 _Touches modules (4), main.html (1) · fix 1_ - `The loop guard reads the config it documents` `5425e66` ## v4.6.109 — 2026-10-27 _Touches modules (6), main.html (1) · fix 1_ - `Agent registration is absolute-path and honest about what it stored` `5058d3b` ## v4.6.108 — 2026-10-27 _Touches modules (5), main.html (1) · fix 1_ - `Help names the owner of an undocumented command; loop lessons leave /skills` `243a766` ## v4.6.107 — 2026-10-27 _Touches modules (8), main.html (1) · fix 1_ - `Bound one turn's tool context, honest skill-create, quarantine a corrupt memory graph` `d4d80f0` ## v4.6.106 — 2026-10-27 _Touches modules (7), main.html (1) · fix 1_ - `Name the real Ollama failure, bound auto-connect, fix the review findings` `1f07ef9` ## v4.6.105 — 2026-10-27 _Touches modules (6), main.html (1) · fix 1_ - `Connect to Ollama on first use, honest write_file, list_files sees /sys` `d6c5cb9` ## v4.6.104 — 2026-10-27 _Touches modules (5), main.html (1) · fix 1_ - `Never overwrite a directory node; ls honours a path after its flags` `ec9d523` ## v4.6.103 — 2026-10-27 _Touches modules (6), data (2), scripts (2), main.html (1) · fix 1, project 1_ - `Rollback keeps scaffolding, checkpoints cannot collide, tests gate the build` `07544cd` - `Point the predictor closure at the shipped commit` `a5f1b92` ## v4.6.102 — 2026-10-27 _Touches modules (4), main.html (1) · fix 2_ - `Print the checkpoint name actually saved (auto)` `c768584` - `Regression test for checkpoint name round-trip (auto)` `2be415c` ## v4.6.101 — 2026-10-27 _Touches modules (5), main.html (1) · release 1, fix 1_ - `Cut/copy in Files, paste into WebDAV (Issue D2)` `dca2c3b` - `Checkpoint() returns resolved name (auto)` `f7249ff` ## v4.6.99 — 2026-10-26 _Touches modules (4), main.html (1) · fix 1_ - `Four phone-test defects — no preview close, single-file share, dead-end fullscreen, silent WebDAV move` `2023728` ## v4.6.95 — 2026-10-26 _Touches modules (4), main.html (1) · release 1_ - `Mobile download/share UX — deferred blob revoke, multi-select, Web Share, 44px targets` `6ef379f` ## v4.6.94 — 2026-10-26 _Touches scripts (7), modules (3), help.html (1), main.html (1) · release 5, docs 1_ - `Review dashboard, public guide, terminal commands (v4.6.94)` `de37884` - `Open the Agent tab on the queue, guide out of empty states, cleaner directives` `db25ef0` - `Preview a plan or report in a modal before deciding` `85133ab` - `Reconstruct _docs/decisions-2026-10-23.md — two feedback reports referenced a file that did not exist` `1d8f658` - `Filter network-class auto reports at ingest — count, don't file` `a976c35` - `Autonomous first-pass reviewer — decide what is provable, leave the rest` `0446064` ## v4.6.91 — 2026-10-23 _Touches modules (3), help.html (1), main.html (1) · release 1_ - `Context window warns at 80% and says what trimming dropped (v4.6.91)` `227ee77` ## v4.6.90 — 2026-10-23 _Touches modules (4), help.html (1), main.html (1) · fix 1_ - `The virtual /sys entry leaked into listings, trees and counts (v4.6.88-90)` `dc0114a` ## v4.6.87 — 2026-10-23 _Touches modules (2), help.html (1), main.html (1) · fix 1_ - `Audit names broken refs instead of counting documentation (v4.6.86-87)` `f57108f` ## v4.6.85 — 2026-10-23 _Touches modules (4), help.html (1), main.html (1) · fix 1_ - `The audit stops inventing '999d unused' (v4.6.85)` `497cd96` ## v4.6.84 — 2026-10-23 _Touches modules (4), help.html (1), main.html (1) · fix 1_ - `World_model_query default path parses again (v4.6.83-84)` `a05f696` ## v4.6.82 — 2026-10-23 _Touches modules (2), help.html (1), main.html (1) · fix 1_ - `Skill-create stops mangling what the agent wrote (v4.6.82)` `c532594` ## v4.6.81 — 2026-10-23 _Touches modules (3), api (1), help.html (1), main.html (1) · fix 1_ - `OutboxResult scoped, markdown mime, old reply path retired (v4.6.81)` `72a94ea` ## v4.6.80 — 2026-10-23 _Touches modules (3), _docs (2), api (2), main.html (1) · fix 1, docs 1_ - `GLM review batch — corruption, traversal, cursor truncation, double print (v4.6.78-80)` `dd234ab` - `Chat bridge in AGENTS.md, changelog v4.6.72-80, contract deltas` `3c35556` ## v4.6.77 — 2026-10-23 _Touches modules (4), main.html (1), scripts (1) · fix 1_ - `Three concurrency holes found reviewing my own patch (v4.6.77)` `7e8bf4c` ## v4.6.76 — 2026-10-23 _Touches modules (3), main.html (1) · fix 1_ - `Agent read gets its own chat cursor (v4.6.76)` `df0b5e4` ## v4.6.75 — 2026-10-23 _Touches modules (2), skills (2), main.html (1) · fix 1_ - `Skill points at the served contract URL, not a VFS path (v4.6.75)` `83b399d` ## v4.6.74 — 2026-10-23 _Touches skills (3), modules (2), main.html (1) · docs 1_ - `Seed a chatting-with-hermes skill (v4.6.74)` `020f519` ## v4.6.73 — 2026-10-23 _Touches modules (4), _docs (2), help.html (1), main.html (1) · release 1, docs 1_ - `Hermes command, auto-poll, chat_hermes tool, token reset (v4.6.73)` `cfbc835` - `Update brief for the agent, v4.6.57 to v4.6.73` `6163429` ## v4.6.70 — 2026-10-23 _Touches modules (4), api (4), help.html (1), main.html (1) · release 2_ - `On-demand worker labels and a server-canonical predictor store (v4.6.70)` `e1d1167` - `Token-scoped chat endpoints, contract, host CLI, old POST retired (v4.6.71 phase B)` `fde3ce3` ## v4.6.67 — 2026-10-23 _Touches modules (3), help.html (1), main.html (1) · fix 1_ - `Grep, head and tail take every path argument (v4.6.67)` `8ab3972` ## v4.6.65 — 2026-10-23 _Touches skills (3), modules (2), main.html (1) · docs 1_ - `Merge the two shell-composition skills into one seeded skill (v4.6.65)` `bfa1ffa` ## v4.6.64 — 2026-10-23 _Touches modules (4), help.html (1), main.html (1) · fix 1_ - `An invalid grep pattern returns a message, not an exception (v4.6.64)` `b45f13f` ## v4.6.63 — 2026-10-23 _Touches modules (4), help.html (1), main.html (1) · release 1_ - `Agent status says never-scheduled vs waiting; `guides` command (v4.6.63)` `1615b27` ## v4.6.62 — 2026-10-23 _Touches modules (3), help.html (1), main.html (1) · fix 1_ - `Tokenised body-aware skill search for load_skills (v4.6.62)` `3194d1c` ## v4.6.61 — 2026-10-23 _Touches modules (6), help.html (1), main.html (1) · fix 1_ - `One error counter for errors/dashboard/world-model (v4.6.61)` `36450fa` ## v4.6.58 — 2026-10-23 _Touches modules (4), help.html (1), main.html (1) · fix 1_ - `Refuse shell composition, wc takes multiple paths (v4.6.58)` `24d189d` ## v4.6.57 — 2026-10-23 _Touches modules (6), main.html (1) · fix 1_ - `Predictor arithmetic, deployed-source viewer, ls text output (v4.6.57)` `bece3bc` ## v4.6.56 — 2026-10-23 _Touches modules (5), downloads (1), help.html (1), main.html (1) · fix 1_ - `Measure predictor accuracy over paired predictions (v4.6.56)` `e3157bb` ## v4.6.55 — 2026-10-23 _Touches modules (6), api (5), data (3), scripts (3) · fix 1, release 1_ - `Empty-pipeline crash, stacks in reports, frame in digest + dashboard (v4.6.55)` `2855c63` - `Fix ledger + norm clustering — the loop now knows what a fix was worth` `eec18ba` ## v4.6.54 — 2026-10-23 _Touches modules (3), data (2), downloads (2), main.html (1) · fix 1, project 1_ - `Define VirtualFS.emptyTrash() — empty-trash threw since 2026-10-18` `563a9be` - `Archive the delta-sync probe report (test artifact)` `235ab7c` ## v4.6.53 — 2026-10-23 _Touches data (9), api (7), modules (7), scripts (5) · release 3, fix 2, project 1_ - `Idempotent ingest, admin-gated reads, honest counts (v4.6.52-53)` `d86d508` - `Maintenance agent channel — triage engine, two-way replies, cron` `8a2abfb` - `Unmeasured skills are untracked, world-model writes verified, skill audit` `6a30129` - `Drop the one-off delta-sync probe row` `1a3dc45` - `Dashboard triage + thread panels, mobile layout, gate error.php` `0f5fdbd` - `Operator steering queue for the maintenance jobs` `c117065` ## v4.6.51 — 2026-10-22 _Touches modules (4), downloads (1), main.html (1), course (1) · fix 1, docs 1_ - `Dashboard shows the real world model and stops dying after 10 s (v4.6.51)` `c54ca24` - `Clear the help.html command backlog, and make it detectable` `8fc4e01` ## v4.6.50 — 2026-10-22 _Touches modules (5), main.html (1) · release 1_ - `World-model-ask answers with the LLM, grounded in the model (v4.6.50)` `6ddaadd` ## v4.6.49 — 2026-10-22 _Touches modules (4), main.html (1) · fix 1_ - `Coreutils flags + loop-guard arg key, both found by the agent's live run (v4.6.49)` `7f3508b` ## v4.6.47 — 2026-10-21 _Touches modules (3), main.html (1) · fix 1_ - `GLM review follow-ups for AI read/context (v4.6.47)` `3fed8df` ## v4.6.46 — 2026-10-21 _Touches modules (3), main.html (1) · release 1_ - `AI paged file reads, durable tool traces, 12k context budget, read/tool/verify prompt rules (v4.6.46)` `44d023d` ## v4.6.45 — 2026-10-21 _Touches modules (7), main.html (1) · fix 1_ - `Download link uses the user's space; WebDAV share copies verified file links; preview fullscreen+share; files->WebDAV upload button (v4.6.45)` `8e7b3c5` ## v4.6.44 — 2026-10-18 _Touches modules (3), main.html (1), scripts (1) · fix 1_ - `Stop agent accumulation on reload — stable role ids + boot reconciliation` `9034ff3` ## v4.6.40 — 2026-10-18 _Touches modules (7), api (1), main.html (1) · project 1_ - `Review fixes (bug diagnostics, trash tree, dir paste, stale capture, preview)` `05257d7` ## v4.6.38 — 2026-10-18 _Touches modules (3), main.html (1) · project 1_ - `Auto-file fatal errors with 3/day quota (A5)` `dd73eee` ## v4.6.37 — 2026-10-18 _Touches modules (4), api (3), downloads (1), main.html (1) · project 2_ - `Bug-report pipeline (report.php, bug command, HTML generator, telemetry-loop fix)` `ea96355` - `Regenerate course atlas (adds bug command)` `923bdbd` ## v4.6.36 — 2026-10-18 _Touches modules (2), main.html (1) · project 1_ - `Fix CourseModule print-capture swallowing all command output` `3686850` ## v4.6.35 — 2026-10-18 _Touches modules (3), main.html (1) · project 1_ - `File manager multi-select + safe paste/rename/delete (Part B)` `7823821` ## v4.6.34 — 2026-10-18 _Touches modules (3), main.html (1) · project 1_ - `Running tool ledger in the prompt (D4)` `2f84d27` ## v4.6.33 — 2026-10-18 _Touches modules (3), main.html (1) · project 1_ - `Progress-based turn budget (D3)` `b777a5a` ## v4.6.31 — 2026-10-18 _Touches modules (3), main.html (1) · project 1_ - `Tool-result memo cache with epoch invalidation (D2)` `fe6d198` ## v4.6.30 — 2026-10-18 _Touches modules (4), main.html (1) · project 1_ - `Per-agent session isolation (D1)` `1c02f4c` ## v4.6.29 — 2026-10-18 _Touches modules (4), main.html (1) · project 1_ - `Progress-aware loop guard + agent attribution` `29de5fe` ## v4.6.28 — 2026-10-18 _Touches course (6), course.html (2), scripts (2), main.html (1) · project 4_ - `Cache-bust course.js after review fixes` `2c2461f` - `Exclude auto-open from lesson_open telemetry, add session counts, filter synthetic sids` `9457e6c` - `Weekly telemetry report script + Monday 09:00 cron` `3bf3694` - `Fix P0 content errors + completion/mobile/keyboard UX (review A)` `486b10b` ## v4.6.27 — 2026-10-18 _Touches course (20), scripts (8), modules (5), api (2) · project 3_ - `Interactive AI course (terminal module, portal, atlas, telemetry, daily maintenance+cron) + free store card` `1bc6369` - `First daily lesson generated, atlas 345 commands, modules-index refreshed` `7221eeb` - `Post-exec review fixes (telemetry detail sanitize, skill-sync retry, atlas check)` `ccbf471` ## v4.6.26 — 2026-10-17 _Touches data (3), modules (2), downloads (2), scripts (2) · project 2_ - `2026-07-29_20:45 changes` `e55f2fe` - `Floating-ui-designer v3 — repair 12 escape-mangled JS sites, rebuild 344-cmd registry (124->344), quoting/import/preset UX fixes; add Node harness + registry generator; floating-ui skill JSON de-piped` `bb41664` ## v4.6.25 — 2026-10-08 _Touches data (3), modules (2), api (1), main.html (1) · project 1_ - `2026-07-29_20:45 changes` `eb7462a` ## v4.6.18 — 2026-10-02 _Touches modules (2), main.html (1), scripts (1) · project 1_ - `Nginx dav trailing-slash semantics` `89c5beb` ## v4.6.16 — 2026-10-02 _Touches modules (2), main.html (1), scripts (1) · project 1_ - `NewOS4 webdav path fix + WebX11 resilience package (2026-10-02)` `d3e5af7` ## v4.6.10 — 2026-10-01 _Touches modules (55), skills (36), downloads (32), data (11) · project 11, fix 4, release 2_ - `2026-07-09_06:00 changes` `97db1b5` - `2026-07-29_20:50 changes — gunes sponsorluk page, bunq payment modal, AI platforms, news W30` `8dbbab4` - `Add kanban module to newOS4 — todo/doing/done board with priorities` `4a3012a` - `Register kanban in module-loader, bump to v4.6.11` `aee87f5` - `Add kanban to packages.json, update cache version to 2026-07-29` `c1b96f7` - `2026-07-29_20:45 changes` `79f682c` - `Tail -n/-N flags + live follow mode (-f) with test harness` `1692f20` - `Exact-delta assertions for tail -f follow/stop semantics` `5f17863` - `Sed command (s///, /pat/d, Nd, -i, -n, pipe input) + help entries` `d8c63a9` - `Ctrl+C/Esc stops tail -f follow; security whitelist gains sed` `69f1fc5` - `Rebuilt bundles with tail -f and sed` `ec02916` - `Typo suggestion bar (one-tap fix), consistent unknown-cmd messages, AI loop guard` `2cf0d3d` - `Race-safe AI loop guard (depth counter), cover _capture* entry points, structured JSON tool error` `8f2fb31` - `Parse per-call captured output for unknown-cmd error (race-free under Promise.all)` `212c05d` - …and 4 more commit(s) in this build ## before v4.6.10 — 2026-07-02 _Touches modules (317), skills (161), backups (49), downloads (40) · project 47_ - `2026-05-25_18:02 changes` `aa7bb1a` - `2026-05-26_06:00 changes` `f37a1a8` - `2026-05-27_06:00 changes` `d632dbc` - `2026-05-28_06:02 changes` `c8c4089` - `2026-05-28_18:00 changes` `0407f24` - `2026-05-29_06:01 changes` `685a33d` - `2026-05-29_18:01 changes` `2fb6b53` - `2026-05-30_06:00 changes` `79e9df7` - `2026-05-30_18:00 changes` `69d6d95` - `2026-05-31_06:00 changes` `5128c54` - `2026-06-01_06:00 changes` `c9a346a` - `2026-06-01_18:00 changes` `ac50dcf` - `2026-06-02_06:00 changes` `b086c2b` - `2026-06-02_18:00 changes` `6ad20b8` - …and 33 more commit(s) in this build