• Stefy Lanza (nextime / spora )'s avatar
    Fix payment schema migrations to match the code (SQLite + MySQL) · 9ab81894
    Stefy Lanza (nextime / spora ) authored
    Several payment code paths referenced database schema that no migration ever
    created, so they failed at runtime:
    
    - distributed_locks: created the table used by PaymentScheduler._acquire_lock /
      _release_lock (it was referenced but never defined anywhere).
    - email_notification_queue: the queue code uses context_json + retry_count, but
      the table was defined with recipient_email/subject/body. Redefined the table
      to match the code.
    - crypto_consolidation_queue: WalletConsolidator writes user_id/from_address/
      to_address/amount, but the table had total_balance/address_count. Redefined to
      match the code.
    - payment_methods.gateway: the base DatabaseManager schema creates
      payment_methods without a gateway column, so the migration's CREATE TABLE IF
      NOT EXISTS was a no-op and the column (read by the renewal processor) was
      missing. Added an idempotent ALTER.
    
    Added cross-DB helpers (_table_exists/_column_exists work on both SQLite via
    PRAGMA and MySQL via INFORMATION_SCHEMA). The two transient queue tables hold
    only regenerable rows, so a legacy-shape table is dropped and recreated rather
    than ALTERed column-by-column (avoids fragile cross-dialect constraint changes);
    the gateway add is a plain additive ALTER guarded by _column_exists.
    Co-Authored-By: 's avatarClaude Opus 4.8 <noreply@anthropic.com>
    9ab81894
Name
Last commit
Last update
aisbf Loading commit data...
config Loading commit data...
docs Loading commit data...
static Loading commit data...
templates Loading commit data...
tests Loading commit data...
.gitignore Loading commit data...
AI.PROMPT Loading commit data...
API_EXAMPLES.md Loading commit data...
BUILD_DEPLOY.md Loading commit data...
CHANGELOG.md Loading commit data...
DEBUG_GUIDE.md Loading commit data...
DOCUMENTATION.md Loading commit data...
ENDPOINTS.md Loading commit data...
KILO_OAUTH2.md Loading commit data...
LICENSE.txt Loading commit data...
MANIFEST.in Loading commit data...
MISSING_ENDPOINTS.md Loading commit data...
PYPI.md Loading commit data...
QUICK_START_PAYMENT.md Loading commit data...
README.md Loading commit data...
RUNPOD_IMPLEMENTATION_PLAN.md Loading commit data...
SUBSCRIPTION_PRICING_FEATURE.md Loading commit data...
TODO.md Loading commit data...
TORRC_SETUP.md Loading commit data...
aisbf.sh Loading commit data...
build.sh Loading commit data...
chatgpt-api-implementation-guide.md Loading commit data...
clean.sh Loading commit data...
cli.py Loading commit data...
codex-oauth-implementation-guide.md Loading commit data...
main.py Loading commit data...
main.py.bak Loading commit data...
minio-archive-plan.md Loading commit data...
pyproject.toml Loading commit data...
requirements.txt Loading commit data...
screenshot.png Loading commit data...
setup.py Loading commit data...
start_proxy.sh Loading commit data...
verify_release.sh Loading commit data...