1.4 KiB
1.4 KiB
fusion_accounting_core — Cursor / Claude Context
Purpose
Foundation for the Fusion Accounting sub-module suite. Owns:
- Three security groups (User / Manager / Admin) shared across all sub-modules
- Shared-field-ownership declarations on
account.moveandaccount.reconcile.model - Runtime Enterprise-detection helper:
env['ir.module.module']._fusion_is_enterprise_accounting_installed()
What lives here
models/account_move.py— declares Enterprise-extension fields with identical schemas / relation tables. Pure schema-preservation; no business logic.models/account_reconcile_model.py— same pattern forcreated_automaticallymodels/ir_module_module.py— Enterprise-detection helperssecurity/fusion_accounting_security.xml— privilege + 3 groups + auto-assignment
Critical rules
- NEVER add business logic to the shared-field models (account_move.py here). Logic belongs in the feature sub-module that owns it (e.g. fusion_accounting_bank_rec).
- NEVER rename the relation tables for shared M2Ms. They must match Enterprise verbatim for the dual-ownership pattern to work.
- Shared fields here have NO defaults beyond what Enterprise sets. The point is preservation.
Cross-references
- Parent design:
fusion_accounting/docs/superpowers/specs/2026-04-18-fusion-accounting-enterprise-takeover-roadmap-design.md(Section 3) - Workspace conventions:
/Users/gurpreet/Github/Odoo-Modules/CLAUDE.md