Vendune
src/translations/README.mdView on GitHub ↗

Durable catalogue translation jobs

routes.rs owns authorized creation, paginated reads and resume/cancel. worker.rs leases and translates one product per step. fields.rs extracts/validates only human text without changing links or structure. apply.rs checks product revisions and commits at most 50 drafts under configuration/job/product locks. mod.rs wires HTTP routes and worker exports. All state is tenant-scoped PostgreSQL data from migration 028. HTTP and MCP delegate to the same native handlers.

See international commerce for provider setup, language inheritance, endpoints, tested failure cases and precise limits. translations.py tests all three provider wire adapters using a loopback fixture, restart, conflict, idempotency and cross-tenant/permission rejection; no paid calls.