name: Snapshot Admin Validation on: push: paths: - "src/quant_engine/snapshot_admin_*.py" - "tools/validate_snapshot_admin_*.py" - "tests/unit/test_snapshot_admin_*.py" - ".gitea/workflows/snapshot_admin.yml" workflow_dispatch: jobs: validate-workflow: name: "Validate Snapshot Admin Workflow" runs-on: ubuntu-latest env: PYTHONPATH: "$HOME/python_deps/snapshot:." steps: - name: Checkout Code uses: actions/checkout@v3 - name: Setup Python Environment run: | PYTHON_DEPS="$HOME/python_deps/snapshot" mkdir -p "$PYTHON_DEPS" /usr/bin/python3 -m pip install --disable-pip-version-check --quiet \ --target "$PYTHON_DEPS" pyyaml pytest echo "✓ Python dependencies installed" - name: Validate Snapshot Admin Workflow run: | python3 tools/validate_snapshot_admin_workflow_v1.py echo "✓ Snapshot admin workflow validated" - name: Run Snapshot Admin Unit Tests run: | python3 -m pytest tests/unit/test_snapshot_admin_store_v1.py tests/unit/test_snapshot_admin_web_v1.py -v echo "✓ Snapshot admin tests passed" validate-ui: name: "Validate Snapshot Admin UI" runs-on: ubuntu-latest env: PYTHONPATH: "$HOME/python_deps/ui:." steps: - name: Checkout Code uses: actions/checkout@v3 - name: Setup Python Environment run: | PYTHON_DEPS="$HOME/python_deps/ui" mkdir -p "$PYTHON_DEPS" /usr/bin/python3 -m pip install --disable-pip-version-check --quiet \ --target "$PYTHON_DEPS" pyyaml echo "✓ Python dependencies installed" - name: Validate Snapshot Admin Web UI run: | python3 tools/validate_snapshot_admin_web_v1.py echo "✓ Snapshot admin UI validated" notify-result: name: "Notify Snapshot Admin Validation Status" if: always() needs: [validate-workflow, validate-ui] runs-on: ubuntu-latest steps: - name: Report Status env: WORKFLOW_STATUS: ${{ needs.validate-workflow.result }} UI_STATUS: ${{ needs.validate-ui.result }} run: | if [ "$WORKFLOW_STATUS" = "success" ] && [ "$UI_STATUS" = "success" ]; then echo "✅ Snapshot admin validation: PASSED" exit 0 else echo "❌ Snapshot admin validation: FAILED" exit 1 fi