import sys

from app.workers.celery_app import celery_app

expected = {
    "app.workers.discovery.daily_global_scan_task",
    "app.workers.ingest.ingest_security_task",
    "app.workers.ingest.ingest_universe_task",
    "app.workers.peer_groups.recompute_universe_task",
    "app.workers.recompute.recompute_security_task",
    "app.workers.token_cleanup.prune_expired_revoked_tokens_task",
}

registered = set(celery_app.tasks.keys())

print("Registered StockLab tasks:")
for task in sorted(registered & expected):
    print(" ", task)

print("Expected:", len(expected))
print("Registered:", len(registered & expected))

missing = expected - registered

if missing:
    print("MISSING:")
    for task in sorted(missing):
        print(" ", task)
    sys.exit(1)

print("CELERY TASK REGISTRY: PASS")
