name: Jyotish Skill CI (manual) on: workflow_dispatch: jobs: validate: runs-on: xiaoxin timeout-minutes: 30 env: GITEA_SHA: ${{ gitea.sha }} steps: - name: Checkout current Gitea revision run: | set -euo pipefail git init . git remote remove origin 2>/dev/null || true git remote add origin https://git.copse.top/root/Jyotisha.git git fetch --no-tags origin "$GITEA_SHA" git checkout --detach --force "$GITEA_SHA" - name: Verify runner toolchain run: | set -euo pipefail python3 --version node --version npm --version docker version - name: Install and validate env: NEXT_PUBLIC_SUPABASE_URL: https://ci-placeholder.supabase.co NEXT_PUBLIC_SUPABASE_ANON_KEY: ci-placeholder run: | set -euo pipefail python3 -m venv .venv export PATH="$PWD/.venv/bin:$PATH" python -m pip install --upgrade pip python -m pip install -r requirements.txt -r requirements-dev.txt npm ci --prefix frontend ruff check scripts/run_quality_gate.py tests/test_varga_bphs.py tests/test_ashtakavarga_invariants.py tests/test_cli_smoke.py tests/test_yoga_rules_integrity.py python -m py_compile scripts/*.py jyotish_vedic/*.py mcp_server.py python scripts/run_quality_gate.py --profile quick --skip-yoga-logic --skip-frontend-runtime python scripts/commercial_privacy_artifact_scan.py --json npm test --prefix frontend npm run lint --prefix frontend npm run build --prefix frontend python -m build