Files
shanxia2.0/web-admin/graphify-out/GRAPH_REPORT.md
T
2026-05-24 10:42:11 +08:00

17 KiB

Graph Report - src (2026-05-24)

Corpus Check

  • Large corpus: 596 files · ~326,544 words. Semantic extraction will be expensive (many Claude tokens). Consider running on a subfolder, or use --no-semantic to run AST-only.

Summary

  • 1524 nodes · 1912 edges · 42 communities detected
  • Extraction: 78% EXTRACTED · 22% INFERRED · 0% AMBIGUOUS · INFERRED: 417 edges (avg confidence: 0.8)
  • Token cost: 0 input · 0 output

Community Hubs (Navigation)

God Nodes (most connected - your core abstractions)

  1. get() - 164 edges
  2. WebSocketClient - 26 edges
  3. push() - 20 edges
  4. withFullscreenLoading() - 17 edges
  5. MenuProcessor - 16 edges
  6. VersionManager - 15 edges
  7. handleDynamicRoutes() - 15 edges
  8. TableCache - 14 edges
  9. StorageCompatibilityManager - 12 edges
  10. StorageConfig - 10 edges

Surprising Connections (you probably didn't know these)

  • handleBatchDelete() --calls--> withFullscreenLoading() [INFERRED] views/basic-info/customer/index.vue → utils/fullscreen-loading.ts
  • handleUnauthorizedResponse() --calls--> fetchRefreshToken() [INFERRED] utils/http/index.ts → api/auth.ts
  • fetchLeaveList() --calls--> get() [INFERRED] api/leave.ts → views/production/process-route/index.vue
  • fetchLeaveDetail() --calls--> get() [INFERRED] api/leave.ts → views/production/process-route/index.vue
  • fetchSampleReceptionCheckItemList() --calls--> get() [INFERRED] api/sample-reception-check-item.ts → views/production/process-route/index.vue

Communities

Community 0 - "Community 0"

Cohesion: 0.01 Nodes (85): fetchActiveRegions(), fetchCategoryList(), fetchCategoryParameters(), fetchCellProductPriceList(), fetchCellProductSpecList(), fetchCellProductTypeList(), fetchCellSampleTypeList(), fetchChannelAgreementPrices() (+77 more)

Community 1 - "Community 1"

Cohesion: 0.03 Nodes (60): fetchBatchGenerateProtocolNos(), fetchBatchGenerateSampleCodes(), fetchBatchIssueProtocolNos(), fetchBatchIssueSampleCodes(), fetchCollectionProtocolNoList(), fetchCreateCollectionProtocolNo(), fetchCreateSampleCode(), fetchDeleteCollectionProtocolNo() (+52 more)

Community 2 - "Community 2"

Cohesion: 0.04 Nodes (31): fetchGetUserInfo(), clickTab(), handleTouchEnd(), setTransition(), IframeRouteManager, RouteRegistry, useCommon(), setupAfterEachGuard() (+23 more)

Community 3 - "Community 3"

Cohesion: 0.03 Nodes (22): fetchAllConsumablePacks(), fetchAllConsumables(), fetchAllConsumableStockLogs(), fetchAllOutputTypes(), fetchAllProcessCategories(), fetchAllProcesses(), fetchAllReagents(), fetchAllReagentStockLogs() (+14 more)

Community 4 - "Community 4"

Cohesion: 0.04 Nodes (40): fetchDeptTree(), fetchPostBoundUserIds(), FireworkSystem, reload(), formatUserLabel(), loadDeptData(), onPersonSelectChange(), subscribeTokenRefresh() (+32 more)

Community 5 - "Community 5"

Cohesion: 0.04 Nodes (33): fetchCollectionRegionList(), fetchCreateCollectionRegion(), fetchCreateHospital(), fetchDeleteCollectionRegion(), fetchDeleteHospital(), fetchHospitalList(), fetchUpdateCollectionRegion(), fetchUpdateHospital() (+25 more)

Community 6 - "Community 6"

Cohesion: 0.04 Nodes (23): fetchAttachmentDownloadUrl(), fetchOrderAdjusts(), fetchOrderDetail(), fetchOrderItems(), fetchOrderList(), fetchPriceVersionDetail(), fetchSystemConfig(), handleReceptionAttachmentDownload() (+15 more)

Community 7 - "Community 7"

Cohesion: 0.05 Nodes (39): fetchAccessLogList(), fetchCleanRoomList(), fetchCreateAccessLog(), fetchCreateCleanRoom(), fetchCreateSite(), fetchDeleteAccessLog(), fetchDeleteCleanRoom(), fetchDeleteSite() (+31 more)

Community 8 - "Community 8"

Cohesion: 0.06 Nodes (21): auditorDisplay(), dash(), expressName(), formatYm(), formatYmd(), sampleTypeName(), siteName(), unitName() (+13 more)

Community 9 - "Community 9"

Cohesion: 0.06 Nodes (11): collectIds(), useSettingsHandlers(), useSettingsPanel(), useSettingsState(), RoutePermissionValidator, useCeremony(), useTheme(), TableCache (+3 more)

Community 10 - "Community 10"

Cohesion: 0.09 Nodes (8): getDefaultLanguage(), checkStorageCompatibility(), StorageConfig, getSystemStorage(), getSysVersion(), StorageKeyManager, StorageCompatibilityManager, validateStorageData()

Community 11 - "Community 11"

Cohesion: 0.09 Nodes (29): base64ToBytes(), bytesToBase64(), decryptJson(), deriveKey(), encryptJson(), fromBase64Url(), hexToBytes(), sha256Hex() (+21 more)

Community 12 - "Community 12"

Cohesion: 0.06 Nodes (8): fetchMaterialList(), fetchMaterialOptions(), fetchMaterialStockLogList(), fetchQcThirdPartyCompanyList(), fetchQcThirdPartyCompanyOptions(), fetchResearchDonationAuditList(), fetchResearchDonationDetail(), fetchResearchDonationList()

Community 13 - "Community 13"

Cohesion: 0.11 Nodes (8): disableDevTools(), handleLock(), handleUnlock(), isMobile(), toLogin(), logOut(), systemUpgrade(), VersionManager

Community 14 - "Community 14"

Cohesion: 0.18 Nodes (1): WebSocketClient

Community 15 - "Community 15"

Cohesion: 0.1 Nodes (16): fetchCreateMenu(), fetchDeleteMenu(), fetchMenuTree(), fetchUpdateMenu(), postorder(), preorder(), applyTreeExpand(), handleAdd() (+8 more)

Community 16 - "Community 16"

Cohesion: 0.1 Nodes (8): fetchGetMenuList(), fetchGetMenuCodes(), fetchLogin(), fetchRefreshToken(), MenuProcessor, useAppMode(), useAuth(), buildWebEncryptedLoginBody()

Community 17 - "Community 17"

Cohesion: 0.1 Nodes (13): fetchEthnicList(), addSample(), applyDonationBundleToForm(), confirmBatchTransportApply(), createEmptyTransport(), ensureDonationProtocolNoInOptions(), ensureEthnicOptionInList(), handleOpenForAdd() (+5 more)

Community 18 - "Community 18"

Cohesion: 0.12 Nodes (15): addCopyButton(), highlightCode(), insertLineNumbers(), isBlockProcessed(), markBlockAsProcessed(), processBlock(), setupHighlightDirective(), setupRippleDirective() (+7 more)

Community 19 - "Community 19"

Cohesion: 0.14 Nodes (17): fetchCreateUser(), fetchDeleteUser(), fetchResetPassword(), fetchUpdateUser(), fetchUserDetail(), formatUserDeptDisplay(), handleAdd(), handleDelete() (+9 more)

Community 20 - "Community 20"

Cohesion: 0.12 Nodes (12): fetchApproveTask(), fetchBusinessAllTasks(), fetchCompletedTasks(), fetchDesignerData(), fetchInstanceDetail(), fetchMyInstances(), fetchPendingTasks(), fetchProcessDefList() (+4 more)

Community 21 - "Community 21"

Cohesion: 0.16 Nodes (10): useTable(), useTableImpl(), getColumnChecks(), useTableColumns(), createErrorHandler(), createSmartDebounce(), defaultResponseAdapter(), extractPagination() (+2 more)

Community 22 - "Community 22"

Cohesion: 0.2 Nodes (2): ComponentLoader, RouteTransformer

Community 23 - "Community 23"

Cohesion: 0.27 Nodes (14): useChart(), useChartComponent(), useChartOps(), colourBlend(), getCssVar(), getDarkColor(), getLightColor(), handleElementThemeColor() (+6 more)

Community 24 - "Community 24"

Cohesion: 0.17 Nodes (12): fetchCreateCustomer(), fetchCustomerList(), fetchDeleteCustomer(), fetchUpdateCustomer(), handleAdd(), handleBatchDelete(), handleDelete(), handleReset() (+4 more)

Community 26 - "Community 26"

Cohesion: 0.2 Nodes (2): fetchQcMaterialList(), fetchQcMaterialOptions()

Community 28 - "Community 28"

Cohesion: 0.39 Nodes (6): isIgnorableScriptError(), normalizeErrorMessage(), registerPromiseErrorHandler(), registerResourceErrorHandler(), scriptErrorHandler(), setupErrorHandle()

Community 29 - "Community 29"

Cohesion: 0.36 Nodes (1): TableHeightCalculator

Community 30 - "Community 30"

Cohesion: 0.33 Nodes (2): logApiCryptoBootInfo(), maskSecret()

Community 31 - "Community 31"

Cohesion: 0.29 Nodes (2): fetchLeaveDetail(), fetchLeaveList()

Community 32 - "Community 32"

Cohesion: 0.47 Nodes (3): isPaymentDueWithinWarnWindow(), parsePaymentDueYmd(), startOfLocalDay()

Community 33 - "Community 33"

Cohesion: 0.33 Nodes (2): fetchSampleReceptionCheckItemList(), fetchSampleReceptionCheckItemsActive()

Community 34 - "Community 34"

Cohesion: 0.33 Nodes (2): fetchQcThirdPartyItemList(), fetchQcThirdPartyItemsActive()

Community 35 - "Community 35"

Cohesion: 0.33 Nodes (2): fetchQcLabTestItemList(), fetchQcLabTestItemsActive()

Community 36 - "Community 36"

Cohesion: 0.33 Nodes (2): fetchQcTaskDetail(), fetchQcTaskList()

Community 38 - "Community 38"

Cohesion: 0.53 Nodes (4): isEtaTodayOrEarlier(), parseEtaLocalDate(), sampleReceptionRowClassName(), startOfLocalDay()

Community 39 - "Community 39"

Cohesion: 0.5 Nodes (2): focusInput(), handleKeydown()

Community 40 - "Community 40"

Cohesion: 0.67 Nodes (2): if(), logSidebarMenu()

Community 41 - "Community 41"

Cohesion: 0.5 Nodes (1): fetchStorageEntrySmsList()

Community 42 - "Community 42"

Cohesion: 0.5 Nodes (1): fetchSampleSmsNotificationList()

Community 43 - "Community 43"

Cohesion: 1.0 Nodes (2): getSettingDefaults(), resetToDefaults()

Community 45 - "Community 45"

Cohesion: 1.0 Nodes (2): defaultAvatarPathByRole(), resolveUserAvatarUrl()

Knowledge Gaps

  • Thin community Community 14 (28 nodes): WebSocketClient, .calculateReconnectDelay(), .clearAllTimers(), .clearConnectionTimers(), .clearTimer(), .close(), .closeCurrentSocketForReconnect(), .connect(), .connectionStatusText(), .constructor(), .destroyInstance(), .flushMessageQueue(), .getInstance(), .getReadyStateText(), .handleClose(), .handleConnectionTimeout(), .handleError(), .handleMessage(), .handleOpen(), .init(), .isWebSocketConnected(), .reconnect(), .resetHeartbeat(), .send(), .startHeartbeat(), .startPing(), .log(), index.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 22 (17 nodes): ComponentLoader, .constructor(), .createEmptyComponent(), .createErrorComponent(), .load(), .loadIframe(), .loadLayout(), .load(), RouteTransformer, .extractFirstSegment(), .handleFirstLevelRoute(), .handleIframeRoute(), .handleNormalRoute(), .isFirstLevelRoute(), .transform(), ComponentLoader.ts, RouteTransformer.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 26 (10 nodes): fetchBatchStockInQcMaterial(), fetchBatchStockOutQcMaterial(), fetchCreateQcMaterial(), fetchDeleteQcMaterial(), fetchQcMaterialList(), fetchQcMaterialOptions(), fetchStockInQcMaterial(), fetchStockOutQcMaterial(), fetchUpdateQcMaterial(), qc-material.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 29 (8 nodes): TableHeightCalculator, .calculate(), .calculateOffset(), .calculatePaginationOffset(), .constructor(), .getHeaderHeight(), useTableHeight(), useTableHeight.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 30 (7 nodes): App.vue, main.ts, refreshButtonAutoIcons(), refreshPanelTitleIcons(), logApiCryptoBootInfo(), maskSecret(), console.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 31 (7 nodes): fetchCreateLeave(), fetchDeleteLeave(), fetchLeaveDetail(), fetchLeaveList(), fetchSubmitLeave(), fetchUpdateLeave(), leave.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 33 (6 nodes): fetchCreateSampleReceptionCheckItem(), fetchDeleteSampleReceptionCheckItem(), fetchSampleReceptionCheckItemList(), fetchSampleReceptionCheckItemsActive(), fetchUpdateSampleReceptionCheckItem(), sample-reception-check-item.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 34 (6 nodes): fetchCreateQcThirdPartyItem(), fetchDeleteQcThirdPartyItem(), fetchQcThirdPartyItemList(), fetchQcThirdPartyItemsActive(), fetchUpdateQcThirdPartyItem(), qc-third-party-item.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 35 (6 nodes): fetchCreateQcLabTestItem(), fetchDeleteQcLabTestItem(), fetchQcLabTestItemList(), fetchQcLabTestItemsActive(), fetchUpdateQcLabTestItem(), qc-lab-test-item.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 36 (6 nodes): fetchCompleteQcTask(), fetchQcTaskDetail(), fetchQcTaskList(), fetchStartQcTask(), fetchUpdateQcTaskAttachments(), qc-task.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 39 (5 nodes): focusInput(), handleKeydown(), if(), search(), index.vue Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 40 (4 nodes): if(), logSidebarMenu(), index.vue, SidebarSubmenu.vue Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 41 (4 nodes): fetchGenerateStorageEntrySms(), fetchStorageEntrySmsList(), fetchToggleStorageEntrySmsNotified(), storage-entry-sms-notification.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 42 (4 nodes): fetchGenerateSms(), fetchSampleSmsNotificationList(), fetchToggleSmsNotified(), sample-sms-notification.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 43 (3 nodes): getSettingDefaults(), resetToDefaults(), setting.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 45 (3 nodes): defaultAvatarPathByRole(), resolveUserAvatarUrl(), user-avatar.ts 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 get() connect Community 0 to Community 1, Community 2, Community 3, Community 4, Community 5, Community 6, Community 7, Community 8, Community 12, Community 15, Community 16, Community 17, Community 19, Community 20, Community 24, Community 26, Community 31, Community 33, Community 34, Community 35, Community 36, Community 41, Community 42? High betweenness centrality (0.287) - this node is a cross-community bridge.
  • Why does push() connect Community 4 to Community 0, Community 6, Community 9, Community 13, Community 14, Community 17? High betweenness centrality (0.121) - this node is a cross-community bridge.
  • Why does fetchGetLatestUpgradeLog() connect Community 0 to Community 13? High betweenness centrality (0.041) - this node is a cross-community bridge.
  • Are the 163 inferred relationships involving get() (e.g. with collectLeafFacilityNodesInTreeOrder() and buildTreePathLabelFromFlat()) actually correct? get() has 163 INFERRED edges - model-reasoned connections that need verification.
  • Are the 19 inferred relationships involving push() (e.g. with collectLeafFacilityNodesInTreeOrder() and fetchAllPagedRecords()) actually correct? push() has 19 INFERRED edges - model-reasoned connections that need verification.
  • Are the 16 inferred relationships involving withFullscreenLoading() (e.g. with .close() and handleSubmit()) actually correct? withFullscreenLoading() has 16 INFERRED edges - model-reasoned connections that need verification.
  • Should Community 0 be split into smaller, more focused modules? Cohesion score 0.01 - nodes in this community are weakly interconnected.