fix(fal): classify 403 balance-exhausted as insufficient_balance, not auth_failure #400
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: E2E Multi-instance | |
| # 跑 docker compose 起的真 stack(redis + postgres + 2 maxx 实例 + test-runner), | |
| # 验证 multi-instance 协调的 HTTP 端到端行为。本地代码层语义由 | |
| # tests/multiinstance/(miniredis 进程内)覆盖,这个 workflow 是真容器化补充。 | |
| on: | |
| pull_request: | |
| paths: | |
| - "cmd/maxx/**" | |
| - "internal/coordinator/**" | |
| - "internal/cooldown/**" | |
| - "internal/repository/cached/**" | |
| - "internal/core/coordinator_setup.go" | |
| - "internal/core/database.go" | |
| - "internal/repository/sqlite/proxy_request.go" | |
| - "tests/multiinstance-e2e/**" | |
| - "Dockerfile" | |
| - ".github/workflows/e2e-multiinstance.yml" | |
| push: | |
| branches: [main] | |
| jobs: | |
| multiinstance: | |
| runs-on: ubuntu-latest | |
| timeout-minutes: 20 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Build & run multi-instance stack | |
| working-directory: tests/multiinstance-e2e | |
| run: | | |
| docker compose build | |
| docker compose up --abort-on-container-exit --exit-code-from test-runner | |
| - name: Dump logs on failure | |
| if: failure() | |
| working-directory: tests/multiinstance-e2e | |
| run: | | |
| echo "===== maxx-a =====" | |
| docker compose logs maxx-a || true | |
| echo "===== maxx-b =====" | |
| docker compose logs maxx-b || true | |
| echo "===== redis =====" | |
| docker compose logs redis || true | |
| echo "===== postgres =====" | |
| docker compose logs postgres || true | |
| echo "===== test-runner =====" | |
| docker compose logs test-runner || true | |
| - name: Cleanup | |
| if: always() | |
| working-directory: tests/multiinstance-e2e | |
| run: docker compose down -v |