| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | fix(newos4): dashboard shows the real world model and stops dying after 10 s ↵ | Agando | 2026-10-22 | 1 | -11/+31 |
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (v4.6.51) Two defects, both verified live before/after: 1. The World Model panel always said "Not synthesized yet". The page had a renderer for data.worldModel and _collectDashboardData() never set it -- the model was right there in WorldModelModule._model. Now collected and mapped to the renderer's exact keys (model has modules.loaded/skills.count/memory.nodes, the page reads modules/skills/memoryNodes), plus changesSinceLastSnapshot and the recent-error sample, with an honest "not synthesized" fallback. 2. The page discarded any payload older than 10 s and its own 5 s auto-refresh then showed "Cannot connect to newOS4". Stale payloads are now rendered with their age ("Data as of 1:20:14 AM - 3m ago"), labelled amber past 5 min. Also: the Refresh button wrote a localStorage key nobody read -> the terminal now listens for it and re-collects (page says "No terminal tab answered" when no terminal tab is open); storage events repaint instantly; the dead /api/dashboard fetch (404 on all three paths, 5 s stall) is gone; `dashboard --watch` / `--stop` re-collects every 5 s; header says the data is this browser's instance. Verified v4.6.51: panel rows "Synthesized 34s ago / v4.6.51 / 46-22 / 136-3 / 1 nodes 0 edges / OK / none recorded"; 130 s-old payload still renders with "- 3m ago" and no banner (previously "Cannot connect"); storage event moves the footer 13s -> 0s; watch timer advances the payload, --stop clears it; mobile 360/390 px all OK; 0 console errors. | ||||
| * | newOS4: interactive AI course (terminal module, portal, atlas, telemetry, ↵ | Agando | 2026-10-18 | 1 | -2/+10 |
| | | | | | daily maintenance+cron) + free store card | ||||
| * | newOS4 v4.6.15: reentrant print-capture stack, AI tail -f block, read-only ↵ | Agando | 2026-09-29 | 1 | -3/+22 |
| | | | | | sed in safeRead, security test harness (21 checks) | ||||
| * | fix: parse per-call captured output for unknown-cmd error (race-free under ↵ | Agando | 2026-09-29 | 1 | -3/+0 |
| | | | | | Promise.all) | ||||
| * | newOS4 v4.6.14: race-safe AI loop guard (depth counter), cover _capture* ↵ | Agando | 2026-09-29 | 1 | -2/+7 |
| | | | | | entry points, structured JSON tool error | ||||
| * | newOS4 v4.6.13: typo suggestion bar (one-tap fix), consistent unknown-cmd ↵ | Agando | 2026-09-29 | 1 | -13/+41 |
| | | | | | messages, AI loop guard | ||||
| * | newOS4: Ctrl+C/Esc stops tail -f follow; security whitelist gains sed | Agando | 2026-09-29 | 1 | -7/+22 |
| | | |||||
| * | fix: add kanban to packages.json, update cache version to 2026-07-29 | Agando | 2026-07-29 | 1 | -1/+1 |
| | | |||||
| * | auto: 2026-07-09_06:00 changes | Agando | 2026-07-09 | 1 | -58/+233 |
| | | |||||
| * | auto: 2026-06-24_06:01 changes | Agando | 2026-06-24 | 1 | -0/+55 |
| | | |||||
| * | auto: 2026-06-23_18:00 changes | Agando | 2026-06-23 | 1 | -0/+2 |
| | | |||||
| * | auto: 2026-06-23_06:00 changes | Agando | 2026-06-23 | 1 | -24/+144 |
| | | |||||
| * | auto: 2026-06-22_18:00 changes | Agando | 2026-06-22 | 1 | -5/+5 |
| | | |||||
| * | auto: 2026-06-18_18:00 changes | Agando | 2026-06-18 | 1 | -10/+32 |
| | | |||||
| * | auto: 2026-06-18_06:00 changes | Agando | 2026-06-18 | 1 | -1/+15 |
| | | |||||
| * | auto: 2026-06-17_06:01 changes | Agando | 2026-06-17 | 1 | -39/+58 |
| | | |||||
| * | auto: 2026-06-16_06:00 changes | Agando | 2026-06-16 | 1 | -2/+11 |
| | | |||||
| * | auto: 2026-06-14_06:00 changes | Agando | 2026-06-14 | 1 | -30/+81 |
| | | |||||
| * | auto: 2026-06-13_18:00 changes | Agando | 2026-06-13 | 1 | -13/+47 |
| | | |||||
| * | auto: 2026-06-10_18:00 changes | Agando | 2026-06-10 | 1 | -16/+54 |
| | | |||||
| * | auto: 2026-06-10_06:00 changes | Agando | 2026-06-10 | 1 | -3/+3 |
| | | |||||
| * | auto: 2026-06-09_18:00 changes | Agando | 2026-06-09 | 1 | -1/+1 |
| | | |||||
| * | auto: 2026-06-09_06:00 changes | Agando | 2026-06-09 | 1 | -7/+30 |
| | | |||||
| * | auto: 2026-06-08_18:00 changes | Agando | 2026-06-08 | 1 | -3/+3 |
| | | |||||
| * | auto: 2026-06-07_18:00 changes | Agando | 2026-06-07 | 1 | -1/+1 |
| | | |||||
| * | auto: 2026-06-06_18:01 changes | Agando | 2026-06-06 | 1 | -2/+6 |
| | | |||||
| * | auto: 2026-06-06_06:00 changes | Agando | 2026-06-06 | 1 | -11/+339 |
| | | |||||
| * | auto: 2026-06-05_18:01 changes | Agando | 2026-06-05 | 1 | -0/+4 |
| | | |||||
| * | auto: 2026-06-04_06:00 changes | Agando | 2026-06-04 | 1 | -1/+4 |
| | | |||||
| * | auto: 2026-06-02_18:00 changes | Agando | 2026-06-02 | 1 | -2/+5 |
| | | |||||
| * | auto: 2026-06-02_06:00 changes | Agando | 2026-06-02 | 1 | -46/+71 |
| | | |||||
| * | auto: 2026-06-01_18:00 changes | Agando | 2026-06-01 | 1 | -6/+64 |
| | | |||||
| * | auto: 2026-06-01_06:00 changes | Agando | 2026-06-01 | 1 | -14/+44 |
| | | |||||
| * | auto: 2026-05-31_06:00 changes | Agando | 2026-05-31 | 1 | -10/+87 |
| | | |||||
| * | auto: 2026-05-30_06:00 changes | Agando | 2026-05-30 | 1 | -3/+62 |
| | | |||||
| * | auto: 2026-05-29_18:01 changes | Agando | 2026-05-29 | 1 | -1/+129 |
| | | |||||
| * | auto: 2026-05-28_18:00 changes | Agando | 2026-05-28 | 1 | -7/+19 |
| | | |||||
| * | auto: 2026-05-28_06:02 changes | Agando | 2026-05-28 | 1 | -0/+50 |
| | | |||||
| * | auto: 2026-05-27_06:00 changes | Agando | 2026-05-27 | 1 | -114/+338 |
| | | |||||
| * | auto: 2026-05-26_06:00 changes | Agando | 2026-05-26 | 1 | -7/+18 |
| | | |||||
| * | auto: 2026-05-25_18:02 changes | Agando | 2026-05-25 | 1 | -0/+1362 |