The repository already ships 70 stdlib unittest cases under tests/, but
.github/workflows/build.yml only builds PyInstaller binaries and images,
so a regression never fails a PR. This adds a tiny Tests workflow that
installs requirements.txt and runs `python -m unittest discover -s tests`
on pushes to main, on every pull request and on demand.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
The workflow was validated on a pull request in the fork (all jobs green,
multi-arch manifest pushed to GHCR). Drop the debug-only bits: the
pull_request trigger, the PUSH_IMAGE guard and the pr-<number> tag.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Add a `docker` job to the existing build workflow that builds both image
variants (Dockerfile and Dockerfile.warp) with Buildx and pushes them to
ghcr.io/<owner>/amnezia-panel on pushes to main and on v* tags.
The image name is derived from the repository owner, so forks publish to
their own namespace without any edit. Tags follow the scheme already used
on Docker Hub: latest, <branch>, semver (v1.6.0 / 1.6 / 1) and sha-<short>;
the WARP variant gets the same tags with a -warp suffix.
Docker Hub publishing is untouched. The binary build and release jobs are
unchanged.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>