Files
api/graphify-out/GRAPH_REPORT.md
T
2026-10-13 19:28:57 +03:30

3.9 KiB

Graph Report - controlpanel_server (2026-10-13)

Corpus Check

  • 160 files · ~67,810 words
  • Verdict: corpus is large enough that graph structure adds value.
  • Unclassified: 9 file(s) not represented in the graph (top: (none) 3, .example 2, .toml 2)

Summary

  • 53 nodes · 77 edges · 9 communities (4 shown, 5 thin omitted)
  • Extraction: 100% EXTRACTED · 0% INFERRED · 0% AMBIGUOUS
  • Token cost: 0 input · 0 output

Graph Freshness

  • Built from commit: 421415fc
  • Run git rev-parse HEAD and compare to check if the graph is stale.
  • Run graphify update . after code changes (no API cost).

Community Hubs (Navigation)

  • deploy-setting-catalog-keys.ts
  • get-user.service.ts
  • GetUserService
  • mergeKhanegiLayoutVariants
  • khanegi-layout-variants.ts
  • createDefaultKhanegiLayoutVariants

God Nodes (most connected - your core abstractions)

  1. GetUserService - 15 edges
  2. mergeKhanegiLayoutVariants() - 6 edges
  3. mergeLayoutThemes() - 5 edges
  4. mergeLayoutElement() - 5 edges
  5. isRecord() - 4 edges
  6. createDefaultKhanegiLayoutVariants() - 4 edges
  7. applyKhanegiLayoutVariants() - 4 edges
  8. isLayoutVariantId() - 3 edges
  9. defaultThemes() - 3 edges
  10. element() - 3 edges

Surprising Connections (you probably didn't know these)

  • mergeLayoutThemes() --calls--> defaultThemes() [EXTRACTED] src/get-user/khanegi-layout-variants.ts → src/get-user/khanegi-layout-variants.ts Bridges community 6 → community 3

Import Cycles

  • None detected.

Communities (9 total, 5 thin omitted)

Community 1 - "get-user.service.ts"

Cohesion: 0.10 Nodes (20): ref_nestjs_common, src_auth_tenant_host_util, src_auth_tenant_host_util_findtenantforhost, src_auth_tenant_host_util_normalizetenanthost, src_common_iran_time_util, src_common_iran_time_util_irandaysuntil, SubscriptionAlertItem, SubscriptionAlerts (+12 more)

Community 3 - "mergeKhanegiLayoutVariants"

Cohesion: 0.53 Nodes (6): applyKhanegiLayoutVariants(), isLayoutVariantId(), isRecord(), mergeKhanegiLayoutVariants(), mergeLayoutElement(), mergeLayoutThemes()

Community 5 - "khanegi-layout-variants.ts"

Cohesion: 0.40 Nodes (4): KhanegiLayoutVariants, LAYOUT_VARIANT_ID, LayoutElementConfig, LayoutThemeDef

Community 6 - "createDefaultKhanegiLayoutVariants"

Cohesion: 0.67 Nodes (3): createDefaultKhanegiLayoutVariants(), defaultThemes(), element()

Knowledge Gaps

  • 10 isolated node(s): UiSetting, SubscriptionAlertStatus, SubscriptionAlertItem, SubscriptionAlerts, LAYOUT_VARIANT_ID (+5 more) These have ≤1 connection - possible missing edges or undocumented components. (Counts symbols only; 28 node(s) total have ≤1 connection when file, concept and rationale nodes are included.)
  • 5 thin communities (<3 nodes) omitted from report — run graphify query to explore isolated nodes.

Suggested Questions

Questions this graph is uniquely positioned to answer:

  • Why does GetUserService connect GetUserService to .normalizeKhanegiAppNode, get-user.service.ts, .resolveByHost, .buildSubscriptionAlerts? High betweenness centrality (0.395) - this node is a cross-community bridge.
  • Why does applyKhanegiLayoutVariants() connect mergeKhanegiLayoutVariants to .normalizeKhanegiAppNode, get-user.service.ts, khanegi-layout-variants.ts? High betweenness centrality (0.038) - this node is a cross-community bridge.
  • Why does mergeKhanegiLayoutVariants() connect mergeKhanegiLayoutVariants to khanegi-layout-variants.ts, createDefaultKhanegiLayoutVariants? High betweenness centrality (0.005) - this node is a cross-community bridge.
  • What connects UiSetting, SubscriptionAlertStatus, SubscriptionAlertItem to the rest of the system? 10 weakly-connected nodes found - possible documentation gaps or missing edges.
  • Should get-user.service.ts be split into smaller, more focused modules? Cohesion score 0.09523809523809523 - nodes in this community are weakly interconnected.