Problem
Heavy add-or-update work must run outside the web request. A Celery task should run the same logic as before, using the correct user context.
Acceptance Criteria
Implementation Notes
- Use
weblate.utils.celery.app and trail=False on @app.task if you want to match the current pattern.
- Reuse
BoostComponentService.process_all for each (lang_code, submodules) pair.
References
src/boost_weblate/endpoint/tasks.py
Problem
Heavy add-or-update work must run outside the web request. A Celery task should run the same logic as before, using the correct user context.
Acceptance Criteria
boost_add_or_update_taskis registered on Weblate’s Celery app.add_or_updatemap, version, optional extensions, anduser_id.User, builds anAuthenticatedHttpRequestwith that user, and runsBoostComponentServiceper language.Implementation Notes
weblate.utils.celery.appandtrail=Falseon@app.taskif you want to match the current pattern.BoostComponentService.process_allfor each(lang_code, submodules)pair.References
src/boost_weblate/endpoint/tasks.py