PYTHON ?= python3 PIP ?= $(PYTHON) -m pip HOST ?= 127.0.0.1 PORT ?= 7860 FIGMENT_SMOKE_TIMEOUT_SECONDS ?= 8 .PHONY: install test run run-hosted-demo build-fts audit-claims evidence-gates smoke-model-route smoke-local-model-route local-4b-evidence local-asr-evidence install: $(PIP) install --upgrade pip $(PIP) install -r requirements.txt -r requirements-dev.txt test: $(PYTHON) -m pytest run: $(PYTHON) app.py run-hosted-demo: FIGMENT_MODE=hosted MODEL_STACK=omni_native MODEL_BACKEND=hosted_omni AUDIO_BACKEND=omni_native ENABLE_AUDIO_INTAKE=true \ $(PYTHON) -c 'from app import build_app; build_app().queue().launch(server_name="$(HOST)", server_port=$(PORT))' build-fts: @if [ -f scripts/build_fts.py ]; then \ $(PYTHON) scripts/build_fts.py; \ else \ echo "scripts/build_fts.py not available yet; skipping FTS build."; \ fi audit-claims: $(PYTHON) scripts/audit_submission_claims.py evidence-gates: $(PYTHON) scripts/evidence_gate_status.py --markdown; status=$$?; test $$status -eq 0 -o $$status -eq 2 smoke-model-route: PYTHON_DOTENV_DISABLED=true FIGMENT_MODE=canned MODEL_STACK=omni_native MODEL_BACKEND=canned AUDIO_BACKEND=none \ FIGMENT_SMOKE_ALLOW_NETWORK=false FIGMENT_SMOKE_TIMEOUT_SECONDS=$(FIGMENT_SMOKE_TIMEOUT_SECONDS) \ $(PYTHON) scripts/smoke_model_route.py smoke-local-model-route: FIGMENT_MODE=local MODEL_BACKEND=llama_cpp AUDIO_BACKEND=none FIGMENT_SMOKE_ALLOW_NETWORK=true FIGMENT_SMOKE_TIMEOUT_SECONDS=$(FIGMENT_SMOKE_TIMEOUT_SECONDS) \ $(PYTHON) scripts/smoke_model_route.py local-4b-evidence: PYTHON_DOTENV_DISABLED=true $(PYTHON) scripts/run_local_4b_evidence.py --base-url "$${LLAMA_BASE_URL:-http://127.0.0.1:8001/v1}" local-asr-evidence: PYTHON_DOTENV_DISABLED=true $(PYTHON) scripts/run_local_asr_evidence.py