Files
ghatreh_user/graphify-out/GRAPH_REPORT.md
T
2026-09-28 14:52:43 +03:30

5.8 KiB

Graph Report - ghatreh_user (2026-09-28)

Corpus Check

  • 598 files · ~506,942 words
  • Verdict: corpus is large enough that graph structure adds value.
  • Unclassified: 51 file(s) not represented in the graph (top: .less 25, .eot 6, .ttf 6)

Summary

  • 196 nodes · 413 edges · 11 communities (10 shown, 1 thin omitted)
  • Extraction: 93% EXTRACTED · 7% INFERRED · 0% AMBIGUOUS · INFERRED: 27 edges (avg confidence: 0.85)
  • Token cost: 0 input · 0 output

Graph Freshness

  • Built from commit: 1ac50951
  • 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)

  • useTvMonitorPage
  • ref_utils
  • index.vue
  • productPrice.ts
  • forceReconnect
  • api/products.ts
  • priceSocket.ts
  • connect
  • useProductsPageData.ts
  • AuthPriceStream
  • initPriceRealtimeChannel

God Nodes (most connected - your core abstractions)

  1. useTvMonitorPage() - 28 edges
  2. connect() - 15 edges
  3. getProductBaseBuyPrice() - 10 edges
  4. touchStreamActivity() - 9 edges
  5. runFallbackPoll() - 9 edges
  6. bindStreamEvents() - 9 edges
  7. forceReconnect() - 9 edges
  8. maybeShowNetworkAlert() - 8 edges
  9. disconnect() - 8 edges
  10. applyProductsList() - 8 edges

Surprising Connections (you probably didn't know these)

  • connect() --calls--> AuthPriceStream [EXTRACTED] src/utils/priceSocket.ts → src/utils/priceSocket.ts Bridges community 9 → community 7
  • connect() --calls--> resolveStreamUrl() [EXTRACTED] src/utils/priceSocket.ts → src/utils/priceSocket.ts Bridges community 10 → community 7
  • forceReconnect() --calls--> clearReconnectTimer() [EXTRACTED] src/utils/priceSocket.ts → src/utils/priceSocket.ts Bridges community 7 → community 4
  • connect() --calls--> touchStreamActivity() [EXTRACTED] src/utils/priceSocket.ts → src/utils/priceSocket.ts Bridges community 1 → community 7
  • connect() --calls--> stopFallbackPolling() [EXTRACTED] src/utils/priceSocket.ts → src/utils/priceSocket.ts Bridges community 6 → community 7

Import Cycles

  • None detected.

Communities (11 total, 1 thin omitted)

Community 0 - "useTvMonitorPage"

Cohesion: 0.09 Nodes (33): ref_api, ref_assets, ref_moment, ref_moment_jalaali, ref_vueuse_core, bankCoinRank(), floorTvToman(), formatTvPrice() (+25 more)

Community 1 - "ref_utils"

Cohesion: 0.23 Nodes (15): ref_composables, ref_store, ref_utils, applyAppNotificationFromStream(), applyLastFromStream(), applySettingsFromStream(), applyUnreadCountFromStreamPayload(), bindStreamEvents() (+7 more)

Community 2 - "index.vue"

Cohesion: 0.19 Nodes (15): ref_components, ref_vue, coinColumns, extraTickerLoop, loopNews(), loopTicker(), marqueeCopies(), newsDuration() (+7 more)

Community 3 - "productPrice.ts"

Cohesion: 0.19 Nodes (25): applyPriceOffsetPercent(), buyCashFee(), cashFeeOptions(), colleagueSideUnit(), getColleagueSourcedUnitPrice(), getProductBaseBuyPrice(), getProductBaseSellPrice(), getProductBuyPrice() (+17 more)

Community 4 - "forceReconnect"

Cohesion: 0.21 Nodes (16): bindBrowserNetworkListeners(), forceReconnect(), isPageVisible(), maybeShowNetworkAlert(), notifyPriceLastFetchFailed(), onBrowserOffline(), onBrowserOnline(), onPageShow() (+8 more)

Community 5 - "api/products.ts"

Cohesion: 0.15 Nodes (5): ref_models, TvServerTime, CountPInventory, PInventory, Product

Community 6 - "priceSocket.ts"

Cohesion: 0.16 Nodes (12): ref_ant_design_vue, ref_views, clearFallbackPollTimer(), clearPriceNetworkAlert(), getPriceSourceStaleMs(), isMobileDevice(), isRealPriceOutage(), onTvBoard() (+4 more)

Community 7 - "connect"

Cohesion: 0.36 Nodes (10): clearConnectingLifecycle(), clearReconnectTimer(), connect(), disconnect(), disconnectSourceOnly(), handleStreamLost(), markConnectingLifecycle(), scheduleReconnect() (+2 more)

Community 8 - "useProductsPageData.ts"

Cohesion: 0.12 Nodes (31): applyProductsList(), applyProductsListFromSocket(), applySocketProductList(), changeProductsTab(), flagOff(), flagOn(), initialized, initProductsPageData() (+23 more)

Community 10 - "initPriceRealtimeChannel"

Cohesion: 0.60 Nodes (5): initPriceRealtimeChannel(), isPriceWebSocketEnabled(), isTruthySetting(), resolveStreamPath(), resolveStreamUrl()

Knowledge Gaps

  • 13 isolated node(s): initialized, productsActiveKey, productsTypeItems, productsFirstItems, productsItems (+8 more) These have ≤1 connection - possible missing edges or undocumented components. (Counts symbols only; 37 node(s) total have ≤1 connection when file, concept and rationale nodes are included.)
  • 1 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 AuthPriceStream connect AuthPriceStream to priceSocket.ts, connect? High betweenness centrality (0.035) - this node is a cross-community bridge.
  • Why does runFallbackPoll() connect priceSocket.ts to ref_utils, forceReconnect? High betweenness centrality (0.019) - this node is a cross-community bridge.
  • Are the 13 inferred relationships involving useTvMonitorPage() (e.g. with isBankCoin() and isGoldBar()) actually correct? useTvMonitorPage() has 13 INFERRED edges - model-reasoned connections that need verification.
  • What connects initialized, productsActiveKey, productsTypeItems to the rest of the system? 13 weakly-connected nodes found - possible documentation gaps or missing edges.
  • Should useTvMonitorPage be split into smaller, more focused modules? Cohesion score 0.09309309309309309 - nodes in this community are weakly interconnected.
  • Should useProductsPageData.ts be split into smaller, more focused modules? Cohesion score 0.11931818181818182 - nodes in this community are weakly interconnected.