05651e4aca
backend-ci / typecheck (push) Successful in 21s
backend-ci / test (push) Successful in 23s
backend-ci / lint (push) Successful in 25s
backend-ci / build (push) Successful in 1m18s
backend-ci / push (push) Successful in 1m37s
backend-ci / secrets-scan (push) Successful in 5s
backend-ci / sast (push) Successful in 9s
backend-ci / fs-scan (push) Successful in 12s
HARBOR_HOST is configured as a Gitea Actions *variable*, not a secret. Gitea (like GitHub) keeps the two stores separate — secrets.X resolves to empty if X is a variable. Every prior CI failure on the push job (docker/login-action exit 1, curl exit 6, docker login falling back to registry-1.docker.io, the recent empty-check) was the same root cause: secrets.HARBOR_HOST was always empty. Switch the env binding to vars.HARBOR_HOST and drop the protocol- strip defensive code that was added based on a wrong premise — the value (harbor.tehriehldeal.com) is already a clean bare hostname. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>