6.3 KiB
Graph Report - controlpanel_user (2026-10-13)
Corpus Check
- 60 files · ~48,609 words
- Verdict: corpus is large enough that graph structure adds value.
- Unclassified: 38 file(s) not represented in the graph (top: .ttf 16, .eot 6, .woff 6)
Summary
- 181 nodes · 263 edges · 14 communities (12 shown, 2 thin omitted)
- Extraction: 100% EXTRACTED · 0% INFERRED · 0% AMBIGUOUS · INFERRED: 1 edges (avg confidence: 0.85)
- Token cost: 0 input · 0 output
Graph Freshness
- Built from commit:
f99af903 - Run
git rev-parse HEADand compare to check if the graph is stale. - Run
graphify update .after code changes (no API cost).
Community Hubs (Navigation)
- khanegiSettingCatalog.ts
- formatValueForSave
- resolveSwitchChecked
- normalizeSettingRow
- superAdminSettingKeys.ts
- isSettingVisible
- UiConfigPage.vue
- defaultKhanegiUiConfig.ts
- LayoutVariantsEditor.vue
- khanegiLayoutVariants.ts
- ensureSchemes
- applySharedNavSample
- syncBottomNavOrder
- normalizeMainWalletProductsValue
God Nodes (most connected - your core abstractions)
touch()- 7 edgesensureSchemes()- 7 edgesformatValueForSave()- 7 edgesgetKhanegiNavSample()- 6 edgesmergeKhanegiLayoutVariants()- 6 edgessyncBottomNavOrder()- 6 edgespersistConfig()- 6 edgesapplyKhanegiNavSample()- 5 edgesmergeLayoutThemes()- 5 edgesmergeLayoutElement()- 5 edges
Surprising Connections (you probably didn't know these)
applySharedNavSample()--calls-->syncBottomNavOrder()[EXTRACTED] src/pages/UiConfigPage.vue → src/pages/UiConfigPage.vue Bridges community 12 → community 11load()--calls-->applySharedNavSample()[EXTRACTED] src/pages/UiConfigPage.vue → src/pages/UiConfigPage.vue Bridges community 11 → community 10formatValueForSave()--calls-->normalizeMainWalletProductsValue()[EXTRACTED] src/config/khanegiSettingCatalog.ts → src/config/khanegiSettingCatalog.ts Bridges community 1 → community 13formatValueForSave()--calls-->resolveSwitchChecked()[EXTRACTED] src/config/khanegiSettingCatalog.ts → src/config/khanegiSettingCatalog.ts Bridges community 1 → community 2
Import Cycles
- None detected.
Communities (14 total, 2 thin omitted)
Community 0 - "khanegiSettingCatalog.ts"
Cohesion: 0.06 Nodes (25): ACTIVATE_DEACTIVATE_SWITCH_KEYS, conditionalOrderEnabledSetting, HIDDEN_LEGACY_SETTING_KEYS, KEY_HELP_FALLBACK, KEY_LABEL_FALLBACK, KEY_TYPE_FALLBACK, MAIN_WALLET_PRODUCTS_DEFAULT, PARTNER_SERVER_URLS_MAX (+17 more)
Community 1 - "formatValueForSave"
Cohesion: 0.47 Nodes (6): formatSupportMessengers(), formatValueForSave(), isSupportMessengerType(), normalizeTimeValue(), parseSupportMessengers(), parseSupportMessengersDraft()
Community 2 - "resolveSwitchChecked"
Cohesion: 0.29 Nodes (7): isActivateDeactivateSwitch(), isReferralRequired(), isSwitchOn(), referralRequiredToString(), resolveSwitchChecked(), switchToString(), switchValueFromChecked()
Community 3 - "normalizeSettingRow"
Cohesion: 0.47 Nodes (6): helpText(), normalizeSettingRow(), resolveSettingCanEdit(), resolveSettingDescription(), resolveSettingFieldType(), resolveSettingTitle()
Community 6 - "UiConfigPage.vue"
Cohesion: 0.05 Nodes (35): ref_ant_design_icons_vue, ref_api, ref_components, ref_stores, ref_theme, ref_vue_router, accentStyle, activePreviewColors (+27 more)
Community 7 - "defaultKhanegiUiConfig.ts"
Cohesion: 0.15 Nodes (18): ref_config, applyKhanegiNavSample(), cloneJson(), createDefaultKhanegiUiConfig(), getKhanegiBottomNavChoices(), getKhanegiNavSample(), KhanegiNavItem, mapLegacyNavItems() (+10 more)
Community 8 - "LayoutVariantsEditor.vue"
Cohesion: 0.15 Nodes (18): ref_ant_design_vue, ref_vue, addOption(), addTheme(), DraftKind, draftOf(), drafts, elementAt() (+10 more)
Community 9 - "khanegiLayoutVariants.ts"
Cohesion: 0.23 Nodes (14): applyKhanegiLayoutVariants(), createDefaultKhanegiLayoutVariants(), defaultThemes(), element(), isLayoutVariantId(), isRecord(), KhanegiLayoutVariants, LAYOUT_OPTION_KEY (+6 more)
Community 10 - "ensureSchemes"
Cohesion: 0.39 Nodes (8): buildSavePayload(), ensureSchemes(), load(), onColorEdit(), persistConfig(), save(), selectPreset(), syncAdvancedJson()
Community 11 - "applySharedNavSample"
Cohesion: 0.33 Nodes (6): applyAdvancedJson(), applySharedNavSample(), onSidebarDragEnd(), onSidebarDragOver(), onSidebarDrop(), syncSidebarNavOrder()
Community 12 - "syncBottomNavOrder"
Cohesion: 0.40 Nodes (5): onBottomDragEnd(), onBottomDragOver(), onBottomDrop(), onBottomSlotMenuChange(), syncBottomNavOrder()
Community 13 - "normalizeMainWalletProductsValue"
Cohesion: 0.67 Nodes (3): formatMainWalletProductIds(), normalizeMainWalletProductsValue(), parseMainWalletProductIds()
Knowledge Gaps
- 75 isolated node(s):
props,OptionKind,DraftKind,groups,kindOptions(+70 more) These have ≤1 connection - possible missing edges or undocumented components. (Counts symbols only; 101 node(s) total have ≤1 connection when file, concept and rationale nodes are included.) - 2 thin communities (<3 nodes) omitted from report — run
graphify queryto explore isolated nodes.
Suggested Questions
Questions this graph is uniquely positioned to answer:
- Why does
formatValueForSave()connectformatValueForSavetokhanegiSettingCatalog.ts,resolveSwitchChecked,normalizeMainWalletProductsValue? High betweenness centrality (0.000) - this node is a cross-community bridge. - Why does
ensureSchemes()connectensureSchemestoapplySharedNavSample,UiConfigPage.vue? High betweenness centrality (0.000) - this node is a cross-community bridge. - What connects
props,OptionKind,DraftKindto the rest of the system? 75 weakly-connected nodes found - possible documentation gaps or missing edges. - Should
khanegiSettingCatalog.tsbe split into smaller, more focused modules? Cohesion score 0.058823529411764705 - nodes in this community are weakly interconnected. - Should
UiConfigPage.vuebe split into smaller, more focused modules? Cohesion score 0.046511627906976744 - nodes in this community are weakly interconnected. - Should
LayoutVariantsEditor.vuebe split into smaller, more focused modules? Cohesion score 0.14736842105263157 - nodes in this community are weakly interconnected.