FastAPI orchestrator (health/sources/estimates/orders/jobs per docs/04), adaptive router (compliant methods only, no bypass tiers), pipeline (sourcing->extraction->structuring/dedup->fusion->QA with per-field provenance, drops < confidence target), live connectors GLEIF/Brreg/Companies House (PRH/CVR/Bolagsverket gated to level-0 until terms verified). sources.yaml registry. infra/docker-compose + Caddyfile for the VPS. FlareSolverr/stealth/proxy/fake-account paths intentionally NOT carried over (CLAUDE.md §1). py_compile clean. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
22 lines
551 B
Python
22 lines
551 B
Python
"""
|
|
Worker entrypoint. In production this drains a queue of order jobs and runs the
|
|
compliant pipeline. For now it exposes a CLI to run a single job locally.
|
|
python -m workers.run <order_id>
|
|
"""
|
|
from __future__ import annotations
|
|
|
|
import asyncio
|
|
import sys
|
|
|
|
from workers.pipeline import run_job
|
|
|
|
|
|
async def _main() -> None:
|
|
order_id = sys.argv[1] if len(sys.argv) > 1 else "demo"
|
|
result = await run_job(order_id, {"markets": ["NO", "GB"], "confidence": 90})
|
|
print(result["metrics"])
|
|
|
|
|
|
if __name__ == "__main__":
|
|
asyncio.run(_main())
|