ADJCJH's picture
Sync ProofFrame public Space after upload helper
a7f491e verified
Raw
History Blame Contribute Delete
4.11 kB
name: CI
on:
pull_request:
push:
branches:
- main
- "feature/**"
jobs:
verify:
runs-on: ubuntu-latest
steps:
- name: Check out repository
uses: actions/checkout@v7
- name: Set up Python
uses: actions/setup-python@v6
with:
python-version: "3.11"
cache: pip
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install -e ".[dev,integrations]"
- name: Integration readiness
run: python scripts/check_integrations.py
- name: Genblaze SDK contract
run: python scripts/genblaze_contract_check.py
- name: Lint
run: ruff check .
- name: Tests
run: pytest
- name: API smoke
run: |
uvicorn proofframe.app:app --host 127.0.0.1 --port 8088 > /tmp/proofframe-uvicorn.log 2>&1 &
echo $! > /tmp/proofframe-uvicorn.pid
for i in {1..30}; do
curl -fsS http://127.0.0.1:8088/api/health && break
sleep 1
done
python scripts/api_smoke.py --base-url http://127.0.0.1:8088
kill "$(cat /tmp/proofframe-uvicorn.pid)"
- name: Docker smoke
run: python scripts/docker_smoke.py
- name: Secret scan
run: python scripts/secret_scan.py
- name: Public claim lint
run: python scripts/claim_lint.py
- name: Live credential handoff
run: python scripts/live_env_handoff.py
- name: Final env wizard
run: python scripts/final_env_wizard.py --check-only
- name: B2 key scope checklist
run: python scripts/b2_key_scope_checklist.py
- name: Devpost form kit
run: python scripts/devpost_form_kit.py
- name: Devpost submission checklist
run: python scripts/devpost_submission_checklist.py
- name: Judge brief
run: python scripts/judge_brief.py
- name: Judge crosswalk
run: python scripts/judge_crosswalk.py
- name: Judge evidence index
run: python scripts/judge_evidence_index.py
- name: Judge decision brief
run: python scripts/judge_decision_brief.py
- name: Devpost event snapshot
run: python scripts/devpost_event_snapshot.py --validate-committed
- name: Agent handoff consistency
run: python scripts/agent_handoff_check.py
- name: Public Space upload dry run
run: python scripts/public_space_upload.py
- name: Public Space sync
run: |
for attempt in 1 2 3; do
python scripts/public_space_sync.py && exit 0
echo "Public Space sync failed on attempt ${attempt}; retrying after 30s..."
sleep 30
done
python scripts/public_space_sync.py
- name: Demo storyboard
run: python scripts/demo_storyboard.py
- name: Public video check
run: python scripts/public_video_check.py
- name: Final video publish kit
run: python scripts/final_video_publish_kit.py
- name: Sponsor fit audit
run: python scripts/sponsor_fit_audit.py
- name: Demo readiness
run: python scripts/demo_readiness.py
- name: Recording assets
run: python scripts/recording_assets.py
- name: Award readiness
run: python scripts/award_readiness.py --min-score 75
- name: Final submission control
run: python scripts/final_submission_control.py
- name: Final closeout status
run: python scripts/final_closeout_status.py
- name: Final operator brief
run: python scripts/final_operator_brief.py
- name: Final launch plan
run: python scripts/final_launch_plan.py
- name: Submission audit
run: python scripts/submission_audit.py
- name: Devpost submission preview
run: python scripts/devpost_submission_preview.py
- name: Devpost submission receipt
run: python scripts/devpost_submission_receipt.py
- name: Submission bundle
run: python scripts/submission_bundle.py