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

109 lines
5.8 KiB
Markdown

# Graph Report - /Users/gurpreet/Github/Odoo-Modules/fusion_accounting_migration (2026-04-22)
## Corpus Check
- 8 files · ~3,755 words
- Verdict: corpus is large enough that graph structure adds value.
## Summary
- 29 nodes · 29 edges · 10 communities detected
- Extraction: 93% EXTRACTED · 7% INFERRED · 0% AMBIGUOUS · INFERRED: 2 edges (avg confidence: 0.8)
- Token cost: 0 input · 0 output
## Community Hubs (Navigation)
- [[_COMMUNITY_Community 0|Community 0]]
- [[_COMMUNITY_Community 1|Community 1]]
- [[_COMMUNITY_Community 2|Community 2]]
- [[_COMMUNITY_Community 3|Community 3]]
- [[_COMMUNITY_Community 4|Community 4]]
- [[_COMMUNITY_Community 5|Community 5]]
- [[_COMMUNITY_Community 6|Community 6]]
- [[_COMMUNITY_Community 7|Community 7]]
- [[_COMMUNITY_Community 8|Community 8]]
- [[_COMMUNITY_Community 9|Community 9]]
## God Nodes (most connected - your core abstractions)
1. `TestSafetyGuard` - 5 edges
2. `_fusion_check_uninstall_guard()` - 5 edges
3. `IrModuleModule` - 3 edges
4. `FusionMigrationWizard` - 3 edges
5. `Verify the safety guard blocks Enterprise uninstall when migration hasn't run.` - 1 edges
6. `If the per-module migration flag is set, uninstall is allowed. Skip if` - 1 edges
7. `If account_accountant is installed and migration not run, raise.` - 1 edges
8. `Safety guard: blocks Odoo Enterprise accounting uninstall until migration runs.` - 1 edges
9. `Override to invoke the safety guard before allowing uninstall. Both thi` - 1 edges
10. `Override the lower-level uninstall path too (CLI / API uninstall). See` - 1 edges
## Surprising Connections (you probably didn't know these)
- None detected - all connections are within the same source files.
## Communities
### Community 0 - "Community 0"
Cohesion: 0.29
Nodes (5): _fusion_check_uninstall_guard(), IrModuleModule, Override to invoke the safety guard before allowing uninstall. Both thi, Override the lower-level uninstall path too (CLI / API uninstall). See, If the per-module migration flag is set, uninstall is allowed. Skip if
### Community 1 - "Community 1"
Cohesion: 0.33
Nodes (4): If account_accountant is installed and migration not run, raise., Verify the safety guard blocks Enterprise uninstall when migration hasn't run., TestSafetyGuard, TransactionCase
### Community 2 - "Community 2"
Cohesion: 0.4
Nodes (2): Safety guard: blocks Odoo Enterprise accounting uninstall until migration runs., Migration wizard skeleton. Per-feature migration logic (account.asset -> fusion
### Community 3 - "Community 3"
Cohesion: 0.5
Nodes (2): FusionMigrationWizard, Stub: Phase 0 has no migrations to run. Sub-modules extend this method
### Community 4 - "Community 4"
Cohesion: 1.0
Nodes (0):
### Community 5 - "Community 5"
Cohesion: 1.0
Nodes (0):
### Community 6 - "Community 6"
Cohesion: 1.0
Nodes (0):
### Community 7 - "Community 7"
Cohesion: 1.0
Nodes (0):
### Community 8 - "Community 8"
Cohesion: 1.0
Nodes (0):
### Community 9 - "Community 9"
Cohesion: 1.0
Nodes (1): Verify it's safe to uninstall the given modules. Returns True if all ch
## Knowledge Gaps
- **9 isolated node(s):** `Verify the safety guard blocks Enterprise uninstall when migration hasn't run.`, `If the per-module migration flag is set, uninstall is allowed. Skip if`, `If account_accountant is installed and migration not run, raise.`, `Safety guard: blocks Odoo Enterprise accounting uninstall until migration runs.`, `Verify it's safe to uninstall the given modules. Returns True if all ch` (+4 more)
These have ≤1 connection - possible missing edges or undocumented components.
- **Thin community `Community 4`** (1 nodes): `__init__.py`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 5`** (1 nodes): `__init__.py`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 6`** (1 nodes): `__init__.py`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 7`** (1 nodes): `__init__.py`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 8`** (1 nodes): `__manifest__.py`
Too small to be a meaningful cluster - may be noise or needs more connections extracted.
- **Thin community `Community 9`** (1 nodes): `Verify it's safe to uninstall the given modules. Returns True if all ch`
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_check_uninstall_guard()` connect `Community 0` to `Community 1`, `Community 2`?**
_High betweenness centrality (0.354) - this node is a cross-community bridge._
- **Why does `TestSafetyGuard` connect `Community 1` to `Community 0`?**
_High betweenness centrality (0.164) - this node is a cross-community bridge._
- **Why does `FusionMigrationWizard` connect `Community 3` to `Community 2`?**
_High betweenness centrality (0.156) - this node is a cross-community bridge._
- **Are the 2 inferred relationships involving `_fusion_check_uninstall_guard()` (e.g. with `.test_uninstall_not_blocked_when_migration_completed()` and `.test_uninstall_blocked_when_migration_pending()`) actually correct?**
_`_fusion_check_uninstall_guard()` has 2 INFERRED edges - model-reasoned connections that need verification._
- **What connects `Verify the safety guard blocks Enterprise uninstall when migration hasn't run.`, `If the per-module migration flag is set, uninstall is allowed. Skip if`, `If account_accountant is installed and migration not run, raise.` to the rest of the system?**
_9 weakly-connected nodes found - possible documentation gaps or missing edges._