Commit Graph
14 Commits
Author SHA1 Message Date
m1saka c6615faa49 fix: extend proxy timeout for Office rendering 2026-10-17 00:52:20 +08:00
m1saka 602917698a feat: add safe backup management and theme preferences
Add snapshot usage and protected cleanup, preserve unsaved profile edits, avoid holding SQL connections during snapshot deletion, and fix download filenames. Include regression tests and API documentation.
2026-10-17 00:36:21 +08:00
m1saka 09e202796f docs: synchronize documentation with current implementation 2026-10-16 11:37:18 +08:00
m1saka a8ba3d74dc feat(workspace): add text editing and image previews 2026-10-15 23:10:13 +08:00
m1saka 7aa540af04 fix(auth): recover refresh rotations and configure session lifetime 2026-10-15 17:22:03 +08:00
m1saka 22a5f64edc fix: delete instance data and remove legacy shared workspace support 2026-10-15 10:55:21 +08:00
m1saka f6fc681a68 fix: normalize default arm64 v8 image platform 2026-10-15 09:50:30 +08:00
m1saka 56c8f76e32 feat: redesign responsive console and fix restore regressions 2026-10-15 01:08:55 +08:00
m1saka 3bf197206a fix: prune missing image indexes and align instance creation payload 2026-10-14 19:37:52 +08:00
m1saka a2dd6ee27d refactor!: separate runtime releases from panel source 2026-10-14 15:05:10 +08:00
m1saka 20635ffaec feat: build runtime releases from pinned Git branch commits 2026-10-14 14:25:27 +08:00
m1saka 9a71772771 Harden image admission, resource recovery and session renewal
Add exact-image compatibility policy, experimental admission, paginated build history and shared reauthentication checks. Preserve uncertain Docker creation records, bound frontend resource waits and renew runtime sessions proactively.

Lazy-load and split Monaco, add regression and opt-in live Docker fault tests, and record full race and real-browser acceptance results.
2026-10-14 13:41:54 +08:00
m1saka 66abb76318 Fix audit findings: lock architecture, security, deployment hardening
Close all 14 findings from the codebase audit (1 high, 5 medium, 8 low):

- Locking: replace the global API and workspace mutexes with per-instance
  and per-user keyed locks (new internal/api/locks.go) so a slow restore,
  upgrade or transfer no longer blocks unrelated users or instances; move
  Docker I/O out of the build queue and invalidate concurrent image-index
  observations with a generation counter; serialize instance deletion
  behind in-flight creation.
- Security: equalize login timing for unknown usernames, periodically
  purge expired sessions/refresh tokens/lock rows, URL-encode orphan IDs
  in the frontend, upgrade vitest 3.x->5.x to clear 3 npm audit
  vulnerabilities (2 critical RCE).
- Deployment: add a -healthcheck mode probing /healthz (used by Dockerfile
  HEALTHCHECK and compose), make ADMIN_PASSWORD optional in compose with
  removal guidance after first start, exclude test scripts from the image,
  and cap panel resources (cpus: 2, pids_limit: 512).
- Reliability: check rows.Err() on admin listing loops, surface intent
  polling errors without sticking, disable close during in-flight create.

Verified: go build/vet, full go test -race -count=1 ./..., frontend
tsc build + 32 tests, npm audit 0, compose config, real-container
healthcheck.
2026-10-13 20:59:28 +08:00
m1saka 85332bbc56 Initial commit: DSH Web Manager 2026-10-13 09:34:47 +08:00