Files
Odoo-Modules/fusion_accounting_core/graphify-out/GRAPH_REPORT.md
gsinghpal 41d0908ade changes
2026-04-24 21:04:38 -04:00

8.2 KiB

Graph Report - /Users/gurpreet/Github/Odoo-Modules/fusion_accounting_core (2026-04-22)

Corpus Check

  • 15 files · ~4,588 words
  • Verdict: corpus is large enough that graph structure adds value.

Summary

  • 66 nodes · 62 edges · 17 communities detected
  • Extraction: 87% EXTRACTED · 13% INFERRED · 0% AMBIGUOUS · INFERRED: 8 edges (avg confidence: 0.8)
  • Token cost: 0 input · 0 output

Community Hubs (Navigation)

God Nodes (most connected - your core abstractions)

  1. TestSharedFieldOwnership - 8 edges
  2. TestCoexistenceGroup - 6 edges
  3. _fusion_recompute_coexistence_group() - 6 edges
  4. TestEnterpriseDetection - 5 edges
  5. _fusion_is_enterprise_accounting_installed() - 5 edges
  6. TestSharedFieldBankStatementLine - 4 edges
  7. IrModuleModule - 4 edges
  8. post_init_hook() - 3 edges
  9. Initialize coexistence group membership based on current Enterprise install stat - 1 edges
  10. Rehome the fusion security xml-ids to fusion_accounting_core BEFORE data-load. - 1 edges

Surprising Connections (you probably didn't know these)

  • post_init_hook() --calls--> _fusion_recompute_coexistence_group() [INFERRED] /Users/gurpreet/Github/Odoo-Modules/fusion_accounting_core/init.py → /Users/gurpreet/Github/Odoo-Modules/fusion_accounting_core/models/res_users.py
  • _fusion_recompute_coexistence_group() --calls--> _fusion_is_enterprise_accounting_installed() [INFERRED] /Users/gurpreet/Github/Odoo-Modules/fusion_accounting_core/models/res_users.py → /Users/gurpreet/Github/Odoo-Modules/fusion_accounting_core/models/ir_module_module.py

Communities

Community 0 - "Community 0"

Cohesion: 0.18 Nodes (6): The recompute helper must be callable on res.users., The 'show when Enterprise absent' group must exist and have computed membership., TestCoexistenceGroup, Verify fusion_accounting_core declares the Enterprise extension fields on ac, TestSharedFieldBankStatementLine, TransactionCase

Community 1 - "Community 1"

Cohesion: 0.24 Nodes (5): IrModuleModule, Recompute the coexistence group after install state changes., Recompute the coexistence group after uninstall state changes. The MRO, Recompute the coexistence group after the lower-level uninstall., _fusion_recompute_coexistence_group()

Community 2 - "Community 2"

Cohesion: 0.22 Nodes (3): The shared M2M relation table must be named identically to Enterprise's, Verify fusion_accounting_core declares the Enterprise extension fields on ac, TestSharedFieldOwnership

Community 3 - "Community 3"

Cohesion: 0.25 Nodes (5): _fusion_is_enterprise_accounting_installed(), A user is in the group iff Enterprise accounting is NOT installed. We c, Helper should return True iff one of the known Enterprise modules is installed., Verify the helper that detects Odoo Enterprise accounting installs., TestEnterpriseDetection

Community 4 - "Community 4"

Cohesion: 0.67 Nodes (1): Rehome the fusion security xml-ids to fusion_accounting_core BEFORE data-load.

Community 5 - "Community 5"

Cohesion: 0.67 Nodes (1): Safety-net reassignment of security xml-ids to fusion_accounting_core. The actu

Community 6 - "Community 6"

Cohesion: 1.0 Nodes (2): post_init_hook(), Initialize coexistence group membership based on current Enterprise install stat

Community 7 - "Community 7"

Cohesion: 0.67 Nodes (2): AccountMove, Shared-field-ownership declarations for account.move. Per the roadmap (Section

Community 8 - "Community 8"

Cohesion: 0.67 Nodes (2): AccountReconcileModel, Shared-field-ownership for account.reconcile.model. Mirrors the single field En

Community 9 - "Community 9"

Cohesion: 0.67 Nodes (2): Coexistence group membership recomputation., ResUsers

Community 10 - "Community 10"

Cohesion: 0.67 Nodes (2): AccountBankStatementLine, Shared-field-ownership for account.bank.statement.line. Enterprise's account_ac

Community 11 - "Community 11"

Cohesion: 1.0 Nodes (0):

Community 12 - "Community 12"

Cohesion: 1.0 Nodes (0):

Community 13 - "Community 13"

Cohesion: 1.0 Nodes (0):

Community 14 - "Community 14"

Cohesion: 1.0 Nodes (1): True if any Odoo Enterprise accounting module is installed in this DB.

Community 15 - "Community 15"

Cohesion: 1.0 Nodes (1): True if a specific module is installed.

Community 16 - "Community 16"

Cohesion: 1.0 Nodes (1): Maintain the two coexistence groups based on Enterprise presence. - ``g

Knowledge Gaps

  • 25 isolated node(s): Initialize coexistence group membership based on current Enterprise install stat, Rehome the fusion security xml-ids to fusion_accounting_core BEFORE data-load., Safety-net reassignment of security xml-ids to fusion_accounting_core. The actu, Verify fusion_accounting_core declares the Enterprise extension fields on ac, Verify fusion_accounting_core declares the Enterprise extension fields on ac (+20 more) These have ≤1 connection - possible missing edges or undocumented components.
  • Thin community Community 11 (1 nodes): __init__.py Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 12 (1 nodes): __init__.py Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 13 (1 nodes): __manifest__.py Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 14 (1 nodes): True if any Odoo Enterprise accounting module is installed in this DB. Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 15 (1 nodes): True if a specific module is installed. Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 16 (1 nodes): Maintain the two coexistence groups based on Enterprise presence. - ``g Too small to be a meaningful cluster - may be noise or needs more connections extracted.

Suggested Questions

Questions this graph is uniquely positioned to answer:

  • Why does _fusion_is_enterprise_accounting_installed() connect Community 3 to Community 1? High betweenness centrality (0.232) - this node is a cross-community bridge.
  • Why does _fusion_recompute_coexistence_group() connect Community 1 to Community 9, Community 3, Community 6? High betweenness centrality (0.200) - this node is a cross-community bridge.
  • Why does TestSharedFieldOwnership connect Community 2 to Community 0? High betweenness centrality (0.151) - this node is a cross-community bridge.
  • Are the 5 inferred relationships involving _fusion_recompute_coexistence_group() (e.g. with post_init_hook() and .button_immediate_install()) actually correct? _fusion_recompute_coexistence_group() has 5 INFERRED edges - model-reasoned connections that need verification.
  • Are the 4 inferred relationships involving _fusion_is_enterprise_accounting_installed() (e.g. with .test_membership_matches_enterprise_state() and .test_helper_returns_bool()) actually correct? _fusion_is_enterprise_accounting_installed() has 4 INFERRED edges - model-reasoned connections that need verification.
  • What connects Initialize coexistence group membership based on current Enterprise install stat, Rehome the fusion security xml-ids to fusion_accounting_core BEFORE data-load., Safety-net reassignment of security xml-ids to fusion_accounting_core. The actu to the rest of the system? 25 weakly-connected nodes found - possible documentation gaps or missing edges.