ci: remove GitHub mirror workflows and dead Gitea manual workflows

Gitea (git.copse.top) is the only CI/CD control plane; GitHub is a
read-only mirror whose Actions are being disabled in repository settings.

- Delete all 11 `.github/workflows/*.yml` (stale copies of the old design).
- Delete unused Gitea manual workflows `ci.yml`, `test.yml`,
  `publish-pypi.yml`, `apply-supabase-profile-migrations.yml`
  (0-1 historical runs, no remaining target).
- Fold the full `python -m pytest` tree and `tests/run_all.py` into
  `release-quality-gate.yml`, which previously only ran the curated
  release profile; update the `run_quality_gate.py` comment accordingly.
- Port `reset-staging-account.yml` to Gitea: `runs-on: xiaoxin`, bounded
  exact-SHA checkout, `refs/heads/staging` only, `staging-mutation`
  concurrency, same email/confirmation/host/port/user/path assertions.
- Repoint frontend workflow tests at `.gitea/workflows/`, drop the
  GitHub-only assertions, add coverage for the new reset workflow, and
  remove `tests/test_supabase_profile_migration_workflow.py`.
- Update AGENTS.md §6.8, README.md, and deploy/README.md to the current
  production/mirror facts and document the staging account reset.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VawU7Xfd5jS9wUEXz1XYmS
This commit is contained in:
Jesse_Chen
2026-09-02 04:02:04 +00:00
co-authored by Claude Fable 5.1
parent 1a3e14e726
commit fb69e43c90
25 changed files with 208 additions and 1586 deletions
@@ -1,36 +0,0 @@
from pathlib import Path
ROOT = Path(__file__).resolve().parents[1]
WORKFLOW = ROOT / ".github" / "workflows" / "apply-supabase-profile-migrations.yml"
def test_profile_migration_workflow_is_manual_and_uses_vps_env_without_printing_secrets() -> None:
text = WORKFLOW.read_text(encoding="utf-8")
assert "workflow_dispatch:" in text
assert "PRODUCTION_SSH_PRIVATE_KEY" in text
assert "SUPABASE_DB_URL" in text
assert "DATABASE_URL" in text
assert "docker run --rm -i postgres:16-alpine" in text
assert "set +x" in text
assert "cat \"$SQL_FILE\" |" in text
def test_profile_migration_workflow_includes_chart_library_and_birth_time_profile_migrations() -> None:
text = WORKFLOW.read_text(encoding="utf-8")
assert "20260718050000_profiles_service_role_upsert_grants.sql" in text
assert "20260718060000_profiles_service_role_least_privilege.sql" in text
assert "20260718070000_profiles_service_role_upsert_id.sql" in text
assert "20260718080000_profiles_service_role_account_upsert_selects.sql" in text
assert "20260718100000_repair_missing_chart_profiles.sql" in text
assert "20260718102000_recover_missing_profile_rows.sql" in text
assert "20260718103000_profile_birth_time_declaration_grants.sql" in text
assert "20260718104000_chart_profiles_upsert_id_grant.sql" in text
def test_profile_migration_workflow_does_not_reference_missing_sql_files() -> None:
text = WORKFLOW.read_text(encoding="utf-8")
assert "20260718010000_recover_missing_profile_rows.sql" not in text
assert "20260718020000_profiles_service_role_upsert_grants.sql" not in text