v1.2 Lane E: VerifiedModel agent verify-status gating (fail_open|fail… #10
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: live-network smoke | ||
|
Check failure on line 1 in .github/workflows/live-network.yml
|
||
| # Manual-trigger only. These tests do real Arweave uploads via Turbo, consume | ||
| # real credits from a funded wallet, and wait on Arweave indexing | ||
| # propagation. They're the gate maintainers run before a release to catch | ||
| # regressions in the network layer (upload + fetch + multi-gateway + the | ||
| # optional ar.io Verify 4th check) — the path the standard mocked + integration | ||
| # suites can't exercise. | ||
| # | ||
| # Required secret to actually upload: | ||
| # ARIO_MLFLOW_LIVE_WALLET_JSON — Solana id.json array OR Arweave RSA JWK. | ||
| # | ||
| # Optional secret to also exercise the ar.io attestation 4th check: | ||
| # ARIO_MLFLOW_LIVE_ARIO_VERIFY_URL — base URL of an ar.io Verify gateway. | ||
| # | ||
| # Without the wallet secret the tests skip cleanly with a "wallet unfunded" | ||
| # message rather than failing — useful when a contributor triggers the | ||
| # workflow to sanity-check the env. | ||
| on: | ||
| workflow_dispatch: | ||
| permissions: | ||
| contents: read | ||
| jobs: | ||
| live: | ||
| runs-on: ubuntu-latest | ||
| timeout-minutes: 30 | ||
| steps: | ||
| - uses: actions/checkout@v4 | ||
| - name: Set up Python | ||
| uses: actions/setup-python@v5 | ||
| with: | ||
| python-version: "3.12" | ||
| cache: pip | ||
| - name: Install plugin + test extras + sklearn | ||
| run: | | ||
| python -m pip install --upgrade pip | ||
| pip install -e ".[test]" scikit-learn | ||
| - name: Stage wallet from secret (if provided) | ||
| if: ${{ secrets.ARIO_MLFLOW_LIVE_WALLET_JSON != '' }} | ||
| env: | ||
| WALLET_JSON: ${{ secrets.ARIO_MLFLOW_LIVE_WALLET_JSON }} | ||
| run: | | ||
| umask 077 | ||
| mkdir -p "$HOME/.ario-mlflow" | ||
| printf '%s' "$WALLET_JSON" > "$HOME/.ario-mlflow/ci-wallet.json" | ||
| echo "ARIO_MLFLOW_ARWEAVE_WALLET=$HOME/.ario-mlflow/ci-wallet.json" >> "$GITHUB_ENV" | ||
| - name: Forward ar.io Verify URL (if provided) | ||
| if: ${{ secrets.ARIO_MLFLOW_LIVE_ARIO_VERIFY_URL != '' }} | ||
| run: echo "ARIO_MLFLOW_ARIO_VERIFY_URL=${{ secrets.ARIO_MLFLOW_LIVE_ARIO_VERIFY_URL }}" >> "$GITHUB_ENV" | ||
| - name: Report environment | ||
| run: | | ||
| python -c "import mlflow, ario_mlflow; print('mlflow', mlflow.__version__, '| ario_mlflow', ario_mlflow.__version__)" | ||
| test -f "$ARIO_MLFLOW_ARWEAVE_WALLET" && echo "wallet staged" || echo "no wallet secret — funded tests will skip" | ||
| - name: Run live-network smoke | ||
| env: | ||
| ARIO_MLFLOW_LIVE_NETWORK: "1" | ||
| run: pytest tests/test_live_network.py -v -s --tb=short | ||