- Add fallback to official npm/PyPI registries when Chinese mirrors fail
- Fix dev workflow mirror host (127.0.0.1 -> 100.78.131.124)
- Add error handling and diagnostics to build steps
- Fix iPhone UI: make download/delete buttons always visible on mobile
- Add .dockerignore to reduce build context size
- Clone from local Gitea instead of actions/checkout
- Build with legacy builder (DOCKER_BUILDKIT=0) for Docker mirror support
- Use npm China mirror (registry.npmmirror.com) in Dockerfile
- Combined npm install+build in single RUN step
- Removed stale proxy env vars
- Rewrite terminal.py to use asyncssh instead of pty/fork
- Add SSH key pair for dashboard container auth
- Mount SSH key and add SSH config vars in docker-compose
- Install openssh-client in Dockerfile
- Add asyncssh to requirements.txt