d98cd55b9988962241c13f6c42a62aa0f982d6d3
- Migrate 5 OWL components from deprecated useService("rpc") to useService("orm") for Odoo 19
- Fix _paginate() signature mismatch across 6 controllers (dual calling convention)
- Fix taxonomy API serializers referencing non-existent fields (icon, difficulty)
- Fix branding controller validate_token() called with wrong arguments
- Add .sudo() to exam template/question model access under auth='none'
- Restore missing encoach_core files (security groups, permissions seed, core models)
- Create encoach_api shared controller utilities module
- Add Entity list/form/search views and menu items
- Add Taxonomy (Subjects/Domains/Topics) views and menu items
- Fix deprecated XML group expand="0" patterns across 15 view files
- Remove stale model references from adaptive __init__.py and access CSV
- Update .gitignore to exclude local dev artifacts
Tested: 97% pass rate (64/66 tests) across UI navigation, CRUD, and API endpoints.
Made-with: Cursor
EnCoach Backend — v2
Branching Workflow
This repo is connected to the staging server via a Git post-receive hook. All deployment is automatic — but only after code review approval.
How to contribute
- Never push directly to
main— branch protection will block it. - Create a feature or fix branch:
git checkout -b feature/your-feature-name - Develop, commit, and push your branch:
git push origin feature/your-feature-name - Open a Pull Request on Gitea targeting
main. - Request review from devops (Talal).
- Once approved and merged, the staging server rebuilds and redeploys automatically.
Environment
The .env file is not committed. It lives only on the staging server at /opt/encoach/backend-v2/.env.
Contact the team lead if you need a local copy of the environment variables.
Required files (push with your code)
Dockerfile— used by the staging server to build the container imagedocker-compose.yml— defines the backend service (port mapping, env vars, etc.)
Pipeline test Mon Mar 30 19:42:50 +04 2026
Description
Languages
Python
34.8%
C
31.4%
JavaScript
27.9%
TypeScript
1.6%
SCSS
1.4%
Other
2.8%