Files
shanxia2.0/web-admin/graphify-out/GRAPH_REPORT.md
T
2026-05-22 16:25:04 +08:00

18 KiB

Graph Report - src (2026-05-22)

Corpus Check

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

Summary

  • 1429 nodes · 1782 edges · 44 communities detected
  • Extraction: 78% EXTRACTED · 22% INFERRED · 0% AMBIGUOUS · INFERRED: 390 edges (avg confidence: 0.8)
  • Token cost: 0 input · 0 output

Community Hubs (Navigation)

God Nodes (most connected - your core abstractions)

  1. get() - 155 edges
  2. WebSocketClient - 26 edges
  3. push() - 20 edges
  4. withFullscreenLoading() - 16 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/system/site/index.vue → utils/fullscreen-loading.ts
  • handleBatchDelete() --calls--> withFullscreenLoading() [INFERRED] views/basic-info/collection-region/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

Communities

Community 0 - "Community 0"

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

Community 1 - "Community 1"

Cohesion: 0.03 Nodes (56): fetchBatchGenerateProtocolNos(), fetchBatchGenerateSampleCodes(), fetchBatchIssueProtocolNos(), fetchBatchIssueSampleCodes(), fetchCollectionProtocolNoList(), fetchCreateCollectionProtocolNo(), fetchCreateSampleCode(), fetchDeleteCollectionProtocolNo() (+48 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.04 Nodes (18): fetchAllConsumablePacks(), fetchAllConsumables(), fetchAllOutputTypes(), fetchAllProcessCategories(), fetchAllProcesses(), fetchAllReagents(), fetchAllSopDocuments(), fetchConsumableList() (+10 more)

Community 4 - "Community 4"

Cohesion: 0.05 Nodes (33): fetchDeptTree(), fetchPostBoundUserIds(), FireworkSystem, reload(), formatUserLabel(), loadDeptData(), onPersonSelectChange(), subscribeTokenRefresh() (+25 more)

Community 5 - "Community 5"

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

Community 6 - "Community 6"

Cohesion: 0.09 Nodes (5): handleReset(), handleSearch(), WebSocketClient, TableCache, emit()

Community 7 - "Community 7"

Cohesion: 0.05 Nodes (18): fetchAttachmentDownloadUrl(), fetchOrderAdjusts(), fetchOrderDetail(), fetchOrderItems(), fetchOrderList(), fetchPriceVersionDetail(), fetchSystemConfig(), handleReceptionAttachmentDownload() (+10 more)

Community 8 - "Community 8"

Cohesion: 0.09 Nodes (31): toLogin(), base64ToBytes(), bytesToBase64(), decryptJson(), deriveKey(), encryptJson(), fromBase64Url(), hexToBytes() (+23 more)

Community 9 - "Community 9"

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

Community 10 - "Community 10"

Cohesion: 0.08 Nodes (10): collectIds(), useSettingsHandlers(), useSettingsPanel(), useSettingsState(), RoutePermissionValidator, useCeremony(), useTheme(), themeAnimation() (+2 more)

Community 11 - "Community 11"

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

Community 12 - "Community 12"

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

Community 13 - "Community 13"

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

Community 14 - "Community 14"

Cohesion: 0.1 Nodes (19): fetchCollectionRegionList(), fetchCreateCollectionRegion(), fetchCreateHospital(), fetchDeleteCollectionRegion(), fetchDeleteHospital(), fetchHospitalList(), fetchUpdateCollectionRegion(), fetchUpdateHospital() (+11 more)

Community 15 - "Community 15"

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

Community 16 - "Community 16"

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

Community 17 - "Community 17"

Cohesion: 0.14 Nodes (9): auditorDisplay(), dash(), expressName(), formatYm(), formatYmd(), sampleTypeName(), siteName(), unitName() (+1 more)

Community 18 - "Community 18"

Cohesion: 0.19 Nodes (3): fetchGetLatestUpgradeLog(), systemUpgrade(), VersionManager

Community 19 - "Community 19"

Cohesion: 0.11 Nodes (8): fetchCollectionProtocolAuditList(), fetchCollectionProtocolDetail(), fetchCollectionProtocolList(), fetchPaymentDetailList(), fetchReceiptConfirmedList(), fetchReceiptConfirmList(), fetchRefundConfirmedList(), fetchRefundConfirmList()

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.12 Nodes (2): fetchProductionTaskDetail(), fetchProductionTaskList()

Community 23 - "Community 23"

Cohesion: 0.2 Nodes (2): ComponentLoader, RouteTransformer

Community 24 - "Community 24"

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

Community 25 - "Community 25"

Cohesion: 0.18 Nodes (11): fetchCreateCustomer(), fetchCustomerList(), fetchDeleteCustomer(), fetchUpdateCustomer(), handleAdd(), handleDelete(), handleReset(), handleSearch() (+3 more)

Community 27 - "Community 27"

Cohesion: 0.17 Nodes (3): fetchResearchDonationAuditList(), fetchResearchDonationDetail(), fetchResearchDonationList()

Community 28 - "Community 28"

Cohesion: 0.18 Nodes (3): fetchMaterialList(), fetchMaterialOptions(), fetchMaterialStockLogList()

Community 29 - "Community 29"

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

Community 31 - "Community 31"

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

Community 32 - "Community 32"

Cohesion: 0.36 Nodes (1): TableHeightCalculator

Community 33 - "Community 33"

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

Community 34 - "Community 34"

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

Community 35 - "Community 35"

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

Community 36 - "Community 36"

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

Community 37 - "Community 37"

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

Community 38 - "Community 38"

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

Community 39 - "Community 39"

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

Community 40 - "Community 40"

Cohesion: 0.33 Nodes (2): fetchQcThirdPartyCompanyList(), fetchQcThirdPartyCompanyOptions()

Community 42 - "Community 42"

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

Community 43 - "Community 43"

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

Community 44 - "Community 44"

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

Community 45 - "Community 45"

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

Community 47 - "Community 47"

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

Knowledge Gaps

  • Thin community Community 22 (17 nodes): fetchAddTaskStep(), fetchCopyTaskStep(), fetchCreateProductionTask(), fetchDeleteTaskStep(), fetchProductionTaskDetail(), fetchProductionTaskList(), fetchReorderTaskSteps(), fetchReplaceStepConsumables(), fetchReplaceStepDataCollection(), fetchReplaceStepOutputs(), fetchReplaceStepReagents(), fetchSetTaskInputs(), fetchSetTaskOutputs(), fetchUpdateProductionTask(), fetchUpdateProductionTaskStatus(), fetchUpdateTaskStep(), production-task.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 23 (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 29 (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 32 (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 33 (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 34 (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 36 (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 37 (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 38 (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 39 (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 40 (6 nodes): fetchCreateQcThirdPartyCompany(), fetchDeleteQcThirdPartyCompany(), fetchQcThirdPartyCompanyList(), fetchQcThirdPartyCompanyOptions(), fetchUpdateQcThirdPartyCompany(), qc-third-party-company.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 43 (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 44 (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 45 (3 nodes): getSettingDefaults(), resetToDefaults(), setting.ts Too small to be a meaningful cluster - may be noise or needs more connections extracted.
  • Thin community Community 47 (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 7, Community 11, Community 12, Community 13, Community 14, Community 16, Community 17, Community 18, Community 19, Community 20, Community 22, Community 25, Community 27, Community 28, Community 29, Community 34, Community 36, Community 37, Community 38, Community 39, Community 40? High betweenness centrality (0.266) - this node is a cross-community bridge.
  • Why does push() connect Community 4 to Community 0, Community 2, Community 6, Community 7, Community 10, Community 13, Community 18? High betweenness centrality (0.091) - this node is a cross-community bridge.
  • Why does fetchGetLatestUpgradeLog() connect Community 18 to Community 0? High betweenness centrality (0.042) - this node is a cross-community bridge.
  • Are the 154 inferred relationships involving get() (e.g. with buildTreePathLabelFromFlat() and alignFqPaymentDetailsForDisplay()) actually correct? get() has 154 INFERRED edges - model-reasoned connections that need verification.
  • Are the 19 inferred relationships involving push() (e.g. with fetchAllPagedRecords() and calcInstallmentDueAmounts()) actually correct? push() has 19 INFERRED edges - model-reasoned connections that need verification.
  • Are the 15 inferred relationships involving withFullscreenLoading() (e.g. with .close() and handleSubmit()) actually correct? withFullscreenLoading() has 15 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.