| Commit message (Collapse) | Author | Age | Files | Lines | |
|---|---|---|---|---|---|
| * | newOS4 course: post-exec review fixes (telemetry detail sanitize, skill-sync ↵ | Agando | 2026-10-18 | 1 | -0/+1 |
| | | | | | retry, atlas check) | ||||
| * | newOS4: interactive AI course (terminal module, portal, atlas, telemetry, ↵ | Agando | 2026-10-18 | 1 | -0/+323 |
| | | | | | daily maintenance+cron) + free store card | ||||
| * | auto: 2026-07-29_20:45 changes | Agando | 2026-10-15 | 1 | -1/+7 |
| | | |||||
| * | auto: 2026-07-29_20:45 changes | Agando | 2026-10-08 | 1 | -6/+424 |
| | | |||||
| * | newOS4 v4.6.18: nginx dav trailing-slash semantics | Agando | 2026-10-02 | 1 | -4/+20 |
| | | | | | | | | | | | | Discovered by dav-health-check.sh E2E (10/10 pass now): - nginx dav module REQUIRES trailing slash on MKCOL (no-slash → 409) and on directory DELETE (no-slash → 409/404); existing dir + slash MKCOL → 405 (the real 'already exists' signal) - _normalizeRemotePath now PRESERVES trailing slashes (collection ops) - _ensureDir MKCOLs with trailing slash - _deleteFile retries with slash on 409/404 (collection delete) - health-check expectations corrected (405 = existing, slash required) | ||||
| * | newOS4 webdav path fix + WebX11 resilience package (2026-10-02) | Agando | 2026-10-02 | 1 | -26/+85 |
| | | | | | | | | | | | | | | | | | | | | | Root cause fixes (mindtech incident): - webdav.js: _normalizeRemotePath strips full URLs/space prefixes, applied to all request entry points + _absoluteUrl for MOVE/COPY Destinations - _ensureDir: __list__ existence fast-path (kills MKCOL 409 storms) - dashboard-files.js: updateFilesJson parses __list__ autoindex (no more '#' entries), ensureSpaceExists only re-inits on genuine 404 - 20-test regression suite: scripts/test-webdav-paths.mjs Resilience: - dav-auth-check.py: server-side WebDAV write auth microservice (nginx auth_request on 8904) — anonymous/wrong-token writes now 401 - fail2ban-telegram.py: ban alerts + auto-unban for known space users - backup-spaces.sh: daily hardlink snapshots, 14-day retention - space-health-check.py: junk dirs / myfiles.json / version drift / session sanity → Telegram alerts - dashboard-files.js: visible 503 error panel with Retry + auto-retry - v4.6.16: main.html + module-loader LATEST_VER aligned (was drifted) | ||||
| * | newOS4 v4.6.15: reentrant print-capture stack, AI tail -f block, read-only ↵ | Agando | 2026-09-29 | 2 | -18/+22 |
| | | | | | sed in safeRead, security test harness (21 checks) | ||||
| * | auto: 2026-07-29_20:45 changes | Agando | 2026-08-06 | 1 | -310/+718 |
| | | |||||
| * | feat: add kanban module to newOS4 — todo/doing/done board with priorities | Agando | 2026-07-29 | 1 | -0/+190 |
| | | |||||
| * | auto: 2026-07-09_06:00 changes | Agando | 2026-07-09 | 6 | -347/+2089 |
| | | |||||
| * | auto: 2026-07-02_06:00 changes | Agando | 2026-07-02 | 2 | -1/+1240 |
| | | |||||
| * | auto: 2026-06-23_06:00 changes | Agando | 2026-06-23 | 1 | -3/+6 |
| | | |||||
| * | auto: 2026-06-22_18:00 changes | Agando | 2026-06-22 | 5 | -10/+923 |
| | | |||||
| * | auto: 2026-06-19_18:01 changes | Agando | 2026-06-19 | 1 | -6/+37 |
| | | |||||
| * | auto: 2026-06-18_18:00 changes | Agando | 2026-06-18 | 1 | -1/+11 |
| | | |||||
| * | auto: 2026-06-18_06:00 changes | Agando | 2026-06-18 | 5 | -13/+62 |
| | | |||||
| * | auto: 2026-06-17_06:01 changes | Agando | 2026-06-17 | 2 | -2/+16 |
| | | |||||
| * | auto: 2026-06-16_06:00 changes | Agando | 2026-06-16 | 1 | -0/+167 |
| | | |||||
| * | auto: 2026-06-15_06:00 changes | Agando | 2026-06-15 | 1 | -44/+156 |
| | | |||||
| * | auto: 2026-06-13_18:00 changes | Agando | 2026-06-13 | 1 | -0/+2363 |
| | | |||||
| * | auto: 2026-06-11_18:00 changes | Agando | 2026-06-11 | 1 | -190/+996 |
| | | |||||
| * | auto: 2026-06-10_18:00 changes | Agando | 2026-06-10 | 1 | -11/+39 |
| | | |||||
| * | auto: 2026-06-10_06:00 changes | Agando | 2026-06-10 | 1 | -0/+76 |
| | | |||||
| * | auto: 2026-06-09_18:00 changes | Agando | 2026-06-09 | 1 | -6/+84 |
| | | |||||
| * | auto: 2026-06-09_06:00 changes | Agando | 2026-06-09 | 6 | -18/+379 |
| | | |||||
| * | auto: 2026-06-08_18:00 changes | Agando | 2026-06-08 | 4 | -9/+386 |
| | | |||||
| * | auto: 2026-06-06_18:01 changes | Agando | 2026-06-06 | 1 | -0/+42 |
| | | |||||
| * | auto: 2026-06-06_06:00 changes | Agando | 2026-06-06 | 5 | -14/+288 |
| | | |||||
| * | auto: 2026-06-04_06:00 changes | Agando | 2026-06-04 | 1 | -2/+75 |
| | | |||||
| * | auto: 2026-06-03_06:00 changes | Agando | 2026-06-03 | 1 | -43/+106 |
| | | |||||
| * | auto: 2026-06-02_18:00 changes | Agando | 2026-06-02 | 2 | -133/+666 |
| | | |||||
| * | auto: 2026-06-01_18:00 changes | Agando | 2026-06-01 | 1 | -4/+23 |
| | | |||||
| * | auto: 2026-06-01_06:00 changes | Agando | 2026-06-01 | 1 | -2/+6 |
| | | |||||
| * | auto: 2026-05-30_18:00 changes | Agando | 2026-05-30 | 1 | -2/+12 |
| | | |||||
| * | auto: 2026-05-30_06:00 changes | Agando | 2026-05-30 | 2 | -0/+281 |
| | | |||||
| * | auto: 2026-05-28_18:00 changes | Agando | 2026-05-28 | 15 | -57/+179 |
| | | |||||
| * | auto: 2026-05-27_06:00 changes | Agando | 2026-05-27 | 6 | -11/+1427 |
| | | |||||
| * | auto: 2026-05-26_06:00 changes | Agando | 2026-05-26 | 1 | -2/+298 |
| | | |||||
| * | auto: 2026-05-25_18:02 changes | Agando | 2026-05-25 | 13 | -0/+2911 |